هایپرلجر فابریک (Hyperledger Fabric)، پلتفرمی برای راه حلهای دفتر کل توزیعشده است که مبتنی بر معماری مدولار بوده و درجات بالایی از محرمانگی، انعطافپذیری و مقیاسپذیری را ارائه میکند. جالب است بدانید که این پلتفرم برای انواع کاربردهای صنعتی و خدمات بلاکچینی مانند پیگیری و ردیابی زنجیرههای تأمین، امور مالی تجارت، وفاداری و پاداشها و همچنین تسویه داراییهای مالی مناسب میباشد.
در این مقاله قصد داریم تا شما را با هایپرلجر فابریک، نحوه کار و ویژگیهای منحصربهفرد آن آشنا کنیم اما قبل از شروع این مبحث، به منظور درک بهتر، ابتدا به طور خلاصه مفهوم بلاکچین را مرور کرده و سپس به موضوع اصلی میپردازیم. اگر شما هم به این موضوع علاقهمند هستید تا انتهای این مقاله همراه ما باشید و چنانچه بعد از پایان مقاله، همچنان پرسش یا ابهامی در این زمینه داشتید، میتوانید در بخش کامنتها، سؤالات خود را با ما مطرح نمایید.
بلاکچین چیست؟
به منظور درک بهتر، مفهوم بلاکچین را از سه جنبه متفاوت توضیح خواهیم داد.
۱) دفتر کل توزیع شده (Distributed Ledger)
در قلب یک شبکه بلاکچین یک دفتر کل توزیع شده قرار دارد که تمام تراکنشهایی را که در شبکه انجام میشود، ثبت میکند. همانطور که میدانید، تمرکززدایی و همکاری، ویژگیهای قدرتمندی هستند که منعکسکننده شیوه مبادله کالاها و خدمات کسبوکارها در دنیای واقعی میباشند. جالب است بدانید که یکی از ویژگیهای خاص دفتر کل بلاکچین، غیرمتمرکز بودن آن است، زیرا یک نسخه یکسان از آن در اختیار تمام شرکتکنندگان شبکه قرار دارد.
علاوه بر غیرمتمرکز و مشارکتی بودن، اطلاعات ثبت شده در شبکه با استفاده از تکنیکهای خاص، رمزگذاری میشوند. بهطوریکه بعد از اضافه شدن یک تراکنش به دفتر کل، دیگر امکان تغییر و دستکاری آن وجود ندارد. این ویژگی «تغییرناپذیری» نامیده میشود. جالب است بدانید که تغییرناپذیری، شناسایی منشأ اطلاعات را ساده کرده و در نتیجه، شرکتکنندگان میتوانند مطمئن باشند که اطلاعات پس از ثبت در شبکه تغییر نمیکنند. به همین دلیل، گاهی اوقات از بلاکچینها به عنوان سیستمهای اثبات نام برده میشود.
۲) قرارداد هوشمند (Smart Contracts)
یک شبکه بلاکچین از قراردادهای هوشمند برای دسترسی کنترلشده به دفتر کل و پشتیبانی از بهروزرسانی مداوم اطلاعات و فعال کردن مجموعهای از عملکردهای دفتر کل استفاده میکند.
قراردادهای هوشمند نه تنها یک مکانیسم کلیدی برای کپسوله کردن اطلاعات و ساده نگهداشتن آنها در سراسر شبکه هستند، بلکه میتوانند به گونهای نوشته شوند که به شرکتکنندگان اجازه دهند تا جنبههای خاصی از تراکنشها را به صورت خودکار اجرا کنند.
به عنوان مثال، فرض کنید که یک قرارداد هوشمند برای تعیین هزینه حمل و نقل یک کالا نوشته شده است و در آن هزینه، بسته به سرعت رسیدن کالا متغیر میباشد. بنابراین، در این قرارداد با شرایط توافق شده توسط هر دو طرف، هزینه حمل و نقل بسته به سرعت ارسال کالا، به طور خودکار پرداخت میشود.
۳) اجماع (Consensus)
به فرآیند همگام نگهداشتن تراکنشهای دفتر کل در سراسر شبکه «اجماع» میگویند. از طریق این فرایند اطمینان حاصل میشود که دفتر کل فقط زمانی بهروزرسانی میشود که تراکنشها توسط شرکتکنندگان مناسب تأیید شوند. نکته جالب توجه این است که در هنگام بهروزرسانی دفترکل، تراکنشها به ترتیب تأیید، بهروزرسانی میشوند.
بهطورکلی برای درک بهتر مباحث بعدی کافی است بلاکچین را به عنوان یک سیستم تراکنش مشترک و تکراری که از طریق قراردادهای هوشمند به روزرسانی شده و به طور مداوم از طریق یک فرآیند مشترک با نام اجماع هماهنگ میشود، در نظر بگیرید.
هایپرلجر فابریک چیست؟
بنیاد لینوکس، پروژه «Hyperledger» را در سال ۲۰۱۵ برای پیشبرد فناوریهای بلاکچین بین صنعتی راهاندازی کرد. در این پروژه به جای اعلام یک استاندارد بلاکچین، رویکردی مشترک برای توسعه فناوریهای بلاکچین از طریق یک فرآیند اجتماعی با حقوق مالکیت معنوی وجود دارد.
هایپرلجر فابریک یکی از پروژههای بلاکچینی در «Hyperledger» است که مانند سایر فناوریهای بلاکچین، دارای دفتر کل بوده و از قراردادهای هوشمند استفاده میکند. در واقع، هایپرلجر فابریک، سیستمی است که شرکتکنندگان تراکنشهای خود را توسط آن مدیریت مینمایند.
ویژگی خاصی که هایپرلجر فابریک را از برخی دیگر از سیستمهای بلاکچین جدا میکند، خصوصی (private) و دارای مجوز بودن (permissioned) آن است. اعضای یک شبکه هایپرلجر فابریک به جای استفاده از یک سیستم بدون مجوز باز که به هویتهای ناشناخته اجازه فعالیت در شبکه را میدهد، از طریق یک ارائهدهنده خدمات عضویت قابل اعتماد (Membership Service Provider) که به اختصار به آن MSP میگویند، ثبتنام انجام میدهند .
از طرف دیگر، هایپرلجر فابریک چندین گزینه قابل اتصال را ارائه میدهد که از طریق آنها میتوان دادههای دفترکل را در قالبهای متعدد ذخیره کرد، مکانیسمهای اجماع را در داخل و خارج جابجا نمود و از MSPهای مختلف نیز پشتیبانی کرد.
نکته حائز اهمیت این است که هایپرلجر فابریک توانایی ایجاد کانال (Channel) دارد. این پلتفرم از طریق کانال، به گروهی از شرکتکنندگان اجازه میدهد تا یک دفتر کل معاملات جداگانه ایجاد کنند. این ویژگی برای شبکههایی مهم است که در آن برخی از شرکتکنندگان ممکن است رقیب یکدیگر باشند و به عنوان مثال نمیخواهند دیگران از قیمت ویژهای که به برخی از شرکتکنندگان میدهند، اطلاع داشته باشند. بنابراین، اگر دو شرکتکننده یک کانال تشکیل دهند، فقط خود آنها و نه هیچ شخص دیگری، کپی دفتر کل آن کانال را در اختیار دارد. در ادامه، برخی از ویژگیهای یک هایپرلجر فابریک را به تفصیل توضیح خواهیم داد.
هایپرلجر فابریک دارای یک زیر سیستم دفتر کل است که از دو جزء تشکیل شده است: حالت جهانی (World State) و لاگ تراکنش (Transaction Log). بهطورکلی میتوان گفت که هر شرکتکننده یک کپی از دفتر کل هر شبکه هایپرلجر فابریک که عضو آن است را در اختیار دارد.
جزء «حالت جهانی»، وضعیت دفتر کل را در یک مقطع زمانی معین توصیف میکند. در واقع، این جزء، پایگاه داده دفتر کل است. از طرف دیگر، جزء «لاگ تراکنش»، تمام تراکنشهایی را که منجر به ارزش فعلی «حالت جهانی» شدهاند را ثبت مینماید. در واقع، این جزء، مسئول بهروزرسانی تاریخچه است. بنابراین، دفتر کل ترکیبی از پایگاه داده حالت جهانی و تاریخچه لاگ تراکنش است.
۲) قراردادهای هوشمند (Smart Contracts)
قراردادهای هوشمند هایپرلجر فابریک به صورت چینکد (Chaincode) نوشته میشوند و زمانی که آن برنامه نیاز به تعامل با دفتر کل داشته باشد، توسط یک برنامه خارج از بلاکچین فراخوانی میشود. در بیشتر موارد، چینکد فقط با مؤلفه پایگاه داده دفتر کل (حالت جهانی) و نه با لاگ تراکنش تعامل دارد. بهتر است است بدانید که چینکد را میتوان در چندین زبان برنامهنویسی پیادهسازی کرد. در حال حاضر زبانهای برنامهنویسی Go، Node.js وJava از این قابلیت پشتیبانی میکنند.
۳) حریم خصوصی (Privacy)
شرکتکنندگان در یک شبکه کسب و کار B2B ممکن است نسبت به میزان اطلاعاتی که به اشتراک میگذارند بسیار حساس باشند اما ممکن است در سایر شبکهها، مسئله حفظ حریم خصوصی، نگرانی مهمی نباشد. بهطورکلی میتوان گفت که هایپرلجر فابریک از شبکههایی پشتیبانی میکند که در آنها حفظ حریم خصوصی (با کمک کانال ها) یک نیاز عملیاتی کلیدی است.
۴) اجماع (Consensus)
بهطورکلی میتوان گفت که تراکنشها باید به ترتیبی که انجام میشوند در دفتر کل ثبت شوند، حتی اگر تراکنشها بین مجموعههای مختلفی از شرکتکنندگان در شبکه قرار گرفته باشد. برای اینکه این اتفاق بیفتد، باید ترتیب تراکنشها مشخص شود و روشی برای رد تراکنشهایی که به اشتباه (یا به شکل مخرب) در دفتر کل درج شدهاند، در نظر گرفته شود.
«اجماع» یک حوزه تحقیقاتی مهم در علوم کامپیوتر است و راههای زیادی برای دستیابی به آن وجود دارد که هر کدام دارای مبادلات متفاوتی هستند. برای مثال، PBFT (تحمل خطای بیزانس عملی) میتواند مکانیزمی برای کپی فایلها فراهم کند تا حتی در صورت خرابی نیز کپی فایلها حفظ و نگهداری شود. بهطورکلی میتوان گفت که هایپرلجر فابریک به گونهای طراحی شده است که به آغازکنندگان شبکه (Network Starters) اجازه میدهد مکانیسم توافقی را انتخاب کنند که به بهترین شکل نشاندهنده روابطی است که بین شرکتکنندگان وجود دارد.
مزایای هایپرلجر فابریک
۱) متن باز بودن (Open Source)
پلتفرم هایپرلجر فابریک یک چارچوب بلاکچین متن باز است که توسط بنیاد لینوکس میزبانی میشود و دارای یک جامعه فعال و رو به رشد از توسعهدهندگان است.
۲) دارای مجوز یا مجاز بودن (Permissioned)
شبکههای هایپرلجر فابریک «مجاز» هستند. منظور از این عبارت این است که هویت همه اعضای شرکتکننده در شبکه مشخص و همگی احراز هویت شدهاند. این مزیت به ویژه در صنایعی از جمله مراقبتهای بهداشتی، زنجیره تأمین، بانکداری و بیمه که در آنها نباید دادهها در اختیار نهادهای ناشناخته قرار گیرند، مفید است. به عنوان مثال، یک شرکت بیمه در یک شبکه بلاکچین هایپرلجر به منظور حفظ حریم خصوصی مشتری خود میتواند دادههای ادعای مشتری را تنها با اشخاص مجاز به اشتراک بگذارد.
۳) حاکمیت و کنترل دسترسی (Governance and Access Control)
شبکههای هایپرلجر فابریک از کانالهایی تشکیل شدهاند که یک «زیر شبکه» خصوصی از ارتباط بین دو یا چند عضو خاص هستند. در این کانالها، اعضای شبکه میتوانند تراکنشهای خود را به صورت خصوصی و محرمانه انجام دهند. بنابراین، هر تراکنش در شبکه بلاکچین در یک کانال اجرا میشود که همه اعضای آن کانال، باید احراز هویت شده و مجاز به انجام تراکنش در آن کانال باشند. بهطورکلی میتوان گفت که این ویژگی یک لایه اضافی از «کنترل دسترسی» به وجود میآورد و زمانی مفید است که اعضا بخواهند اطلاعات خود را از سایر افراد یا رقبا مخفی کنند.
۴) کارایی (Performance)
هایپرلجر فابریک برای پشتیبانی از موارد استفاده در سطح سازمانی ساخته شده و از تراکنشهای سریع پشتیبانی میکند. از آنجا که هایپرلجر یک بلاکچین دارای مجوز است، نیازی به حل «تحمل خطای بیزانس» که منجر به کندتر شدن عملکرد در هنگام اعتبارسنجی تراکنشها میشود، ندارد.
هایپرلجر فابریک چگونه کار میکند؟
شبکه هایپرلجر فابریک متشکل از سازمانها (یا اعضای) منحصربهفردی است که در شبکه با یکدیگر تعامل دارند. به عنوان مثال، منظور از یک سازمان، یک بانک در شبکهای متشکل از مؤسسات مالی و یا یک شریک حمل و نقل در یک شبکه زنجیره تأمین است. از دیدگاه هایپرلجر فابریک، هر سازمان دارای یک مرجع صدور گواهی (Certificate Authority) و یک یا چند نود همتا (Peer Node) است. شبکه فابریک همچنین دارای یک سرویس سفارش (Ordering Service) است که توسط همه سازمانهای شبکه به اشتراک گذاشته میشود و به پردازش تراکنشهای شبکه کمک میکند. در زیر در مورد هر یک از این مفاهیم و اجزاء بیشتر توضیح خواهیم داد.
یک سازمان در یک شبکه توسط روت سرتیفیکیت (Root Certificate) مخصوص آن سازمان تعریف میشود. علاوه بر این، در این سازمان، کاربران و سایر اجزا (مانند نودهای همتا) نیز با گواهیها شناسایی میشوند. جالب است بدانید که این گواهیها از روت سرتیفیکیت گرفته میشوند و اطمینان میدهند که سایر سازمانها در شبکه میتوانند کاربر را با سازمان خود مرتبط کنند. از طرف دیگر، این گواهیها نوع مجوز را برای هر نهاد در شبکه مشخص میکنند. به عنوان مثال یک سازمان ممکن است فقط دسترسی از نوع خواندن داشته باشد اما نهاد دیگر بتواند غیر از خواندن، سند را نیز ارسال کند.
روت سرتیفیکیت یک سازمان، در مرجع صدور گواهی (CA) هایپرلجر فابریک ذخیره میشود. مرجع صدر گواهی، برای کاربران یک سازمان نیز گواهی صادر میکند و سایر عملیات مرتبط را نیز انجام میدهد. یک CA از اجزای مختلفی استفاده میکند و میتواند با کمک روشهای مختلفی از یک ماژول امنیتی سخت افزار (HSM) برای محافظت از روت سرتیفیکیت استفاده نماید.
از طرف دیگر، یک سازمان، یک یا چند نود همتا را به عنوان اجزایی برای انجام عملیات خود ایجاد میکند. به طور خاص، یک نود همتا، تراکنشهای پیشنهادی در شبکه را تأیید و کد قرارداد هوشمند (که در هایپرلجر فابریک به آن چینکد میگویند) را ذخیره و اجرا میکند. علاوه بر این، نود همتا یک نسخه از دفتر کل را نیز برای دسترسی ذخیره مینماید. معمولاً کلاینتهای هایپرلجر فابریک با نودهای همتا تعامل میکنند تا دفتر کل را خوانده و چینکد جدید به شبکه اضافه کنند یا تراکنش جدید پیشنهاد دهند.
در نهایت، یک شبکه هایپرلجر فابریک شامل یک سرویس سفارش است که توسط همه اعضای شبکه به اشتراک گذاشته میشود. سرویس سفارش، اطمینان حاصل میکند که تراکنشهای جدید در شبکه به درستی در بلاکهای جدید دارای تأییدیههای مناسب قرار میگیرند. سپس سرویس سفارش دهنده، بلاک جدیدی از تراکنشها را در اختیار نودهای همتا در هر سازمان قرار میدهد و نودهای همتا با این بلاک جدید، نسخه دفتر کل خود را بهروزرسانی میکنند.
کاربرد هایپرلجر فابریک در صنعت
۱) زنجیره تأمین (Supply Chain)
زنجیرههای تأمین شامل شبکههای جهانی و توزیعشده از تأمینکنندگان، تولیدکنندگان و خردهفروشان هستند. شبکههای هایپرلجر فابریک میتوانند فرآیندهای زنجیره تأمین را با افزایش شفافیت و قابلیت ردیابی تراکنشهای درون شبکه بهبود بخشند. در شبکه هایپرلجر فابریک، شرکتهایی که به دفتر کل دسترسی دارند میتوانند دادههای تغییرناپذیر را مشاهده کنند که این موضوع، خطر کلاهبرداری و جعل را کاهش میدهد.
۲) تجارت و انتقال دارایی (Trading and Asset Transfer)
تجارت، مستلزم همکاری بسیاری از سازمانها مانند واردکنندگان، صادرکنندگان، بانکها، شرکتهای حمل و نقل و ادارات گمرک است. کنسرسیومهای مالی و تجاری با استفاده از هایپرلجر فابریک به راحتی میتوانند یک شبکه بلاکچین ایجاد کنند که در آن، همه طرفها میتوانند اسناد مربوط به معاملات را به صورت الکترونیکی و بدون نیاز به یک مرجع مرکزی، پردازش کنند.
۳) بیمه (Insurance)
سالانه میلیاردها دلار هزینه صرف کلاهبرداری در صنعت بیمه میشود اما جالب است بدانید که با استفاده از Hyperledger Fabric، شرکتهای بیمه میتوانند به دادههای تراکنش ذخیره شده در دفتر کل به منظور شناسایی ادعاهای تکراری یا جعلی مراجعه کنند. علاوه بر این، فناوری بلاکچین با کمک قراردادهای هوشمند میتواند امکان خودکارسازی بازپرداختها از طرف مقصر به شرکت بیمه یا بالعکس را فراهم کند.
جمعبندی
هایپرلجر فابریک، یک چارچوب بلاکچین متن باز و دارای مجوز است که در سال ۲۰۱۵ توسط بنیاد لینوکس راهاندازی شده است. بهطور قطع میتوان گفت که هایپرلجر فابریک، یکی از ابزارهای کاربردی و مفید برای سازمانها و شرکتهایی است که قصد دارند از بلاکچین در صنعت خود استفاده کنند. در واقع، این چارچوب قابلیتهای بلاکچین را تغییر داده و امکانات و ابزارهای زیادی را به آن اضافه میکند که میتواند تجربه به مراتب بهتری را برای کاربران فراهم نماید.