هایپر لجر (hyperledger) چیست؟
فهرست مطالب
مقدمه
برای آشنایی با هایپر لجر (Hyperledger) بهتر است با نقل قولی از برایان بهلندورف (Brian Behlendorf)، مدیر اجرایی هایپر لجر، بحث را شروع کنیم:
هایپر لجر یک پروژه منبع باز برای منفعت رساندن به یک اکوسیستم مبتنی بر راهکارها و کاربران خود است که بر موارد استفاده مرتبط با بلاکچین که بین چندین بخش صنعتی کار میکنند، متمرکز شده است.
اگر این جمله برایتان بیمعنا به نظر میرسد، دلیلی برای نگرانی وجود ندارد؛ چون همه چیز در مورد هایپر لجر و موضوعات مرتبط با این مفهوم، در ادامه مطلب با جزئیات و مثالهای مختلف بیان میشود تا به شما در فهم بهتر آن کمک کند.
پیش از اینکه به شما بگوییم هایپر لجر چیست، شاید بهتر باشد بگوییم چه چیزی نیست. چون با وجود این همه پلتفرم بلاکچین در حوزه تکنولوژی و فناوری اطلاعات، گیج شدن چندان اتفاق عجیبی نیست. برای همین برای شروع ببینیم هایپر لجر چه چیزی نیست:
- یک ارز دیجیتال نیست
- یک بلاکچین نیست
- یک شرکت نیست
هایپر لجر چیست؟
هایپر لجر یک پروژه چتری است که تحت مدیریت بنیاد لینوکس انجام میشود. نودجیاس (NodeJS)، الجوین (Alljoyn)، درونکد (Dronecode) بعضی از پروژههای مثالی هستند که با «Linux Way» برای ایجاد جامعهای از توسعهدهندگان که روی پروژههای منبع باز کار میکنند مطابقت یافتهاند و به این ترتیب حلقهای را حفظ میکنند که در آن یک تکه کد به صورت مداوم اصلاح و باز توزیع میشود.
پروژه Hyperledger توسط بنیاد لینوکس توسعه داده شد. در حقیقت به جای اینکه کسبوکارها خود شخصا به حل مشکلاتشان با استفاده از بلاک چین بپردازند، هایپرلجر بلاک چینهای اختصاصیای برای هر حوزه ساخته و به نیازهای هر یک پاسخ میدهد.
از آنجا که هر کسب و کاری در نوع خودش منحصربهفرد است، اپلیکیشنهایی که به سمت این کسب و کارها متمایل هستند، لازم است که مطابق قواعد شخصی توسعه یابند. این بر خلاف اتریوم است که تمایل دارد توسعهدهندگان را مجبور کند اپلیکیشنهای خود را حول پروتکلهای عمومی بسازند.
پروژه هایپر لجر با تعداد کمی از توسعهدهندگان در اواخر سال 2015 شروع شد. این توسعهدهندگان از بخشهای مختلفی مثل علوم داده، صنعت، بانکداری و امثال این آمده بودند و همه یک هدف مشترک در ذهن داشتند. آن هدف چیزی نبود جز ایجاد دسترسی بیشتر به بلاکچین به عنوان یک تکنولوژی برای توسعهدهندگان و صنایع مختلف. این پروژه با آزمایش تعامل بین اپلیکیشنها و شبکههای بلاک چین امن آغاز شد.
چرا به هایپر لجر نیاز داریم؟
با آزمایشهای سخت، توسعهدهندگان متوجه شدند که در شبکههای بلاکچین، که در آنها نودهای اعتبار سنج(Validating nodes) لازم است هر تراکنش را معتبر سازند (Validating) و همزمان شبکه را نیز بگرداند، از لحاظ مقیاسپذیری انرژی بسیار زیادی میطلبد. علاوه بر این، تراکنشهایی که یک معیار محرمانه بودن و خصوصیبودن به آنها اضافه شده، روی بلاکچینهای عمومی، به دلیل معیارهای فرسایندهای که برای اطمینان از یکپارچگی یک تراکنش ایجاد شدهاند، نمیتوانند اجرا شوند.
فرض کنید باب در هند زندگی میکند و میخواهد از آلیس که در سوئیس زندگی میکند شکلات بخرد. از آنجا که آنها دوست قدیمی هستند، آلیس تصمیم میگیرد که شکلاتها را به باب با یک تخفیف سخاوتمندانه بفروشد. نکته در اینجا این است که آلیس محصولات خود را به تعدادی از بازارهای دیگر نیز عرضه میکند و همچنان از آنها میخواهد که با قیمتهای استاندارد از او خرید کنند. علاوه بر این، برای رسیدن محصول از آلیس به باب چندین شخص ثالث لازم هستند تا تراکنش را کامل کنند.
این اشخاص ثالث ممکن است برخی از جنبههای دیگر محصول، مانند بیمه کیفیت، تأییدیه حمل و نقل، تأییدیه پرداخت و مواردی بیش از این را تأیید کنند. اما آنها نیازی به دانستن در مورد معامله خاص بین باب و آلیس ندارند.
هایپر لجر چطور کار میکند؟
با همه این حرفها، در شبکه مبتنی بر هایپر لجر اوضاع به کلی متفاوت است!
اشخاص ثالثی که به انجام معامله کمک میکنند، فقط میتوانند مقدار دقیق اطلاعات مورد نیاز خود را به کمک اجازه گرفتن و قانونگذاریهای مربوطه در شبکه به دست آورند.
فرض کنیم آلیس و باب تراکنش خاص خودشان را روی یک شبکه مبتنی بر هایپر لجر انجام میدهند، در این مورد آلیس میتواند باب را از طریق یک اپ دنبال کند که برای آن هم به یک سرویس عضویت نیاز است. بعد از اینکه عضویت معتبر شود، این دو کاربر به هم متصل میشوند و نتایج ایجاد میشود. در این توافقنامه دوطرفه، نتایج باید یکسان باشد تا مورد تأیید قرار بگیرد. اما در تراکنشهای دیگر با چندین طرف، قواعد بیشتری میتواند به کار گرفته شود. این تراکنشهای تولیدی حالا به یک کلود عمومی برای سفارش گذاشتن ارسال میشود و مطابق آن به لجرهای مرتبط منتقل میشود.
تغییرات قابل توجه در هایپر لجر
تمام این کارها به واسطه معماری ماژولار هایپر لجر امکانپذیر شده که باعث میشود امکاناتی مثل توافق عمومی مانند یک ابزار نصب و راهاندازی (Plug-and-play) کار کند. در این معماری، قابلتوجهترین تغییرات را میتوان در همتاها یا کاربران یک شبکه دید.
همتاها به دو بخش مجزای زمان اجرایی و سه گروه مجزا از هم تفکیک شدهاند. این سه گروه شامل موارد زیر میشوند:
- انجامدهنده ( ): این همتاها فقط تراکنشهای معتبری را که از مکانیسم توافق به لجرهای مرتبط برگشته باشند، مینویسند. کاربران انجامدهنده مانند تأییدگران روی شبکه فعالیت میکنند؛ اما با محدودیتهایی کمتر از آنها.
- تأییدگر (Endorser): این کاربران مسئول انتقال تراکنشهای مخصوص شبکه خود هستند و مانع تراکنشهای غیرقابل اعتماد و غیرمشخص میشوند. در حالی که انجامدهندگان میتوانند با توجه به محدودیتهای شبکه، خود تأییدگر باشند یا نباشند، تمام تأییدگران به عنوان انجامدهنده نیز فعالیت میکنند.
- توافقگران (Consenters): این کاربران مسئول اجرای توافق جمعی شبکه هستند. آنها شبکه کاملاً متفاوتی را، برخلاف انجامدهندگان و تأییدگران که روی شبکه یکسانی فعالیت دارند، میگردانند. توافقگران مسئول معتبر ساختن تراکنشها و تصمیم گرفتن در این مورد هستند که تراکنش به کدام لجر انجام شود.
پروژههای هایپر لجر
اگر به یاد بیاورید، گفتیم که هایپر لجر یک پروژه چتری است. این یعنی چندین پروژه دیگر زیر این پروژه تعریف شدهاند. اینها شامل پروژههای زیر میشوند:
- هایپر لجر فابریک (Hyperledger Fabric): در شبکههای زنجیرۀ عرضه به شکل گسترده مورد استفاده قرار میگیرد.
- هایپر لجر ساوتوث (Hyperledger Sawtooth): ساتوس یک پلتفرم ماژولار برای اجرای بلاکچینها است که نوآوریهای فنی را برای شرکتها و کسب و کارها فراهم میکند تا درباره پلتفرم خود تصمیمات مستقل بگیرند.
- هایپر لجر بارو (Hyperledger Burrow): برای اجرای قراردادهای هوشمند اتریوم در شبکه هایپرلجر مورد استفاده قرار میگیرد.
- هایپر لجر ایروها (Hyperledger Iroha): در بهینهسازی اپلیکیشنهای موبایل با کمک بلاک چین کاربرد دارد.
- هایپرلجر ایندی (Hyperledger Indy): یک سرویس پایگاه داده جهت مدیریت هویت به صورت غیرمتمرکز برای کسب و کارها ارائه میدهد.
حالا که میدانیم یک هایپر لجر چیست، به این سؤالها میرسیم که چرا در صنعت تکنولوژی اطلاعات امروزی مورد نیاز است؟ و چگونه عمل میکند؟ اجازه بدهید آن را با معروفترین شبکههای بلاکچین، یعنی بیت کوین و اتریوم مقایسه کنیم.
پارامتر | بیت کوین | اتریوم | هایپر لجر |
ارز دیجیتال | بیت کوین | اتر | با مجوز |
شبکه | عمومی | عمومی | با مجوز |
توافق | گواهی کار (PoW) | Ethash | متغییر |
قرارداد هوشمند | ندارد | دارد (سالیدیتی) | دارد (چینکد) |
زبان | C++ | Golang/java | Golang/python |
سخن پایانی
هایپر لجر یک پروژه چتری است؛ یعنی چندین پروژه دیگر که بیان گردید، زیر این پروژه تعریف میشوند. طبق گفته مدیر اجرایی هایپر لجر، این پروژه یک پلتفرم منبع باز برای منفعت رساندن به یک اکوسیستم مبتنی بر راهکارها و کاربران خود است که بر موارد استفاده مرتبط با بلاکچین که بین چندین بخش صنعتی کار میکنند، متمرکز شده است.
در شبکه مبتنی بر هایپر لجر، کاربرانی که مستقیماً در معامله دخیل هستند به هم متصل شده و فقط لجرهای آنها همراه با معامله بهروزرسانی میشود. اشخاص ثالثی که به انجام معامله کمک میکنند، فقط میتوانند مقدار دقیق اطلاعات مورد نیاز خود را به کمک اجازه گرفتن و قانونگذاریهای مربوطه در شبکه به دست آورند.
دیدگاه خود را ثبت کنید