هایپرلجر چیست – راهکار سازمانی بلاکچین برای صنعت
بلاکچین و کسب و کارها
قبل از اینکه ببینیم هایپرلجر چیست، ابتدا مروری بر نقش بلاکچین در تحول کسب و کارها خواهیم داشت. فناوری بلاک چین با ترکیب تکنولوژی دفتر کل توزیع شده (DLT) تغییرناپذیر و قرارداد هوشمند، تعریفی دوباره به اعتماد در صنعت بخشیده و شیوه کسب و کارها را دگرگون کرده است.
یک چنین فناوری پیشرفته ای کمک می کند تا تعاملات و قراردادهایی که روزانه میان طرف های تجاری بسته می شود، از امنیت و اطمینان بیشتری برخوردار شود. تمام بندها و شرایط قراردادهای تجاری و معاملات را می توان در یک قرارداد هوشمند گنجاند تا طرفین قرارداد با امضاء آن (توافق روی state کنونی شبکه) توافق خود را اعلام کنند. به اینصورت بدون اینکه حریم خصوصی افراد آشکار شود، اطمینان بالایی بین شرکای تجاری برقرار می شود.
هایپرلجر چیست؟
پروژه هایپرلجر در اواخر سال 2015 با هدف پیشبرد فناوری های بلاکچین سازمانی، توسط تعداد کمی توسعه دهنده آغاز شد. توسعه دهندگان از بخش های مختلف صنعت از جمله علم داده (Data Science)، بانکداری، تولید و …جمع شده بودند و همه یک هدف مشترک داشتند:
“دسترسی توسعه دهندگان و صنایع مختلف به بلاک چین باید بیشتر و ساده تر شود.”
بنابراین، پروژه هایپرلجر با یک تست تعامل اپلیکیشن ها و شبکه های بلاکچین امن، شروع شد.
توجه داشته باشیم که هایپرلجر یک ارز دیجیتال، یک بلاکچین یا نام یک کمپانی نیست! به تعبیر آقای برایان بهلندورف، مدیر اجرایی Hyperledger : “هایپرلجر یک همکاری مشترک اوپن سورس بین کاربران و ارائه دهنگان راه حل های مبتنی بر هایپرلجر می باشد که تمرکز آن روی کاربردهای بلاکچین در صنعت و همچنین ایجاد تعامل بین بخش های مختلف از صنعت می باشد”.
هایپرلچر تحت لینوکس پایه گذاری شده و مانند بسیاری از پروژه های اوپن سورس تحت لینوکس، توسط جامعه اوپن سورس، دائما در سراسر جهان در حال بازبینی و بهبود می باشد. پروژه هایپرلجر توسط مدیرانی از صنایع مختلف (اقتصاد، بانکداری، اینترنت اشیاء، زنجیره تأمین، شرکت های تولیدی و واحدهای فناوری) اداره می شود.
بر خلاف اتریوم که توسعه دهندگان را وادار می کند تا اپلیکیشن های خود را بر پایه یک مجموعه پروتکل ثابت، توسعه دهند،نگرش هایپرلجر اینگونه است که مارکت های مختلف موجود در دنیا، هر کدام زنجیره خصوصی (Private Chain) خود را دارند و اپلیکیشن های هر کسب و کار منحصر بفرد با قوانین مختص خودش پیاده سازی می شوند.
چرا به هایپرلجر نیاز داریم؟
طی بررسی های دقیق، توسعه دهندگان پروژه متوجه شدند، در شبکه های بلاکچین فعلی که تمام نودها باید هر تراکنشی را اعتبارسنجی (Validate) کرده و همزمان مکانیزم اجماع (Consensus) را نیز اجرا کنند، مقیاس پذیری شبکه به شدت کاهش پیدا می کند. همچنین به خاطر اقدامات زیادی که جهت اطمینان از جامعیت (Integrity) تراکنش ها صورت می گیرد، تراکنش هایی که دارایی محرمانگی و حریم خصوصی هستند، روی شبکه های بلاکچین عمومی، قابل اجرا نیستند.
محدودیت های بلاکچین عمومی : مقیاس پذیر نبودن و پشتیبانی نشدن تراکنش های محرمانه و خصوصی
یک سناریوی ساده
فرض کنید Bob در ایران زندگی می کند و می خواهد از Alice که در سرزمین عجایب زندگی می کند یک شکلات بخرد! از آنجایی که آنها دوستان قدیمی هستند، آلیس می خواهد شکلات های خود را با یک تخفیف شگفت انگیز به باب بفروشد. نکته جالب اینجاست که آلیس محصولات خود را به مارکت های دیگر نیز می فروشد و آنها همچنان باید با نرخ استاندارد از آلیس خرید کنند. همچنین، برای ارسال محصول از آلیس به باب، به اشخاص ثالث متعددی نیاز است تا معامله صورت گیرد.
اشخاص ثالث، ممکن است لازم باشد سایر جنبه های محصول اعم از تضمین کیفیت، تأیید لجستیک، تأیید پرداخت و موارد دیگر را تأیید کنند. اما نیازی نیست آنها از تعاملی که بین آلیس و باب صورت گرفته (تخفیف شگفت انگیز) خبردار شوند.
قراردادهای محرمانه و خصوصی
اجزاء تشکیل دهنده یک شبکه هایپرلجر
افراد یا موجودیت های موجود در یک شبکه بلاکچین هایپرلجر عبارتند از:
- کاربر بلاکچین (User)
- اپراتور شبکه بلاکچین (Operator)
- توسعه دهنده بلاکچین (Developer)
- رگولاتور (Regulator)
- گواهی امنیتی (Certificate)
- دیتا سورس (Data Source)
- پلتفرم پردازشی (Proccessing platform)
نحوه عملکرد هایپرلجر
در یک شبکه بلاک چین عمومی، چون ماینرها تراکنش ها را تایید و به زنجیره اضافه می کردند، هر لجری روی شبکه، از تعامل بین آلیس و باب مطلع می شد. ولی در یک شبکه مبتنی بر هایپرلجر، قضیه کلاً متفاوت است. در این نوع شبکه، به خاطر وجود بحث مجوز و مقررات وضع شده، فقط دو طرف معامله از جزئیات آن خبردار خواهند بود. نودهای واسط یا همان اشخاص ثالث، صرفاً به انتقال تراکنش کمک نموده و فقط به اندازه ای که نیاز است اطلاعات کسب خواهند کرد.
فرض کنید تراکنش آلیس و باب روی یک شبکه مبتنی بر هایپرلجر اجرا می شود. ابتدا آلیس از طریق اپلیکیشن سامانه، باب را جستجو می کند. با پیدا شدن باب، سرویس عضویت اجرا می شود. پس از تأیید عضویت، طرفین معامله، متصل شده و نتیجه ها (results) تولید می شوند. در این توافق دو طرفه، نتیجه تولید شده باید برای هر دو طرف یکسان باشد تا تأیید صورت بگیرد. ولی در معاملات دیگر با طرفین متعدد، قوانین بیشتری قابل اعمال خواهد بود. در نهایت، تراکنش های ایجاد شده، به یک کلود اجماع (consensus cloud) ارسال می شوند تا پس از مرتب سازی، در لجرهای مربوطه قرار گیرند.
تراکنش هایپرلجر
تغییرات قابل توجه در هایپرلجر
هایپرلجر به گونه ای طراحی شده است که بتواند به عنوان یک زیرساخت واقعاً ماژولار، مقیاس پذیر و امن برای مورد استفاده قرار گیرد. معماری ماژولار (Modular Architecture) هایپرلجر باعث می شود، ویژگی هایی مانند اجماع، به صورت یک آیتم plug-and-play باشند. در یک چنین معماری، بیشترین تغییرات در نودهای شبکه دیده خواهد شد. Peer ها از لحاظ زمان اجرایی به دو قسمت و از لحاظ نقش اجرایی، به سه دسته مجزا تقسیم شده اند.
تغییرات در معماری شبکه
نودهای Committer
این نودها فقط تراکنش های معتبری که از مکانیزم اجماع به لجر های مربوطه برگردانده شده اند را می نویسند. نودهای Committer در شبکه های با محدودیت های کمتر، می توانند به عنوان Endorser عمل کنند. اما با افزایش محدودیت ها، از این شرایط کاملاً اجتناب می شود.
نودهای Endorser
این نودها وظیفه شبیه سازی تراکنش های خاص شبکه خود را بر عهده دارند و از تراکنش های غیر قطعی و غیرقابل اعتماد جلوگیری می کنند. همه endorser ها به عنوان committer عمل می کنند، درحالیکه committer ها بسته به محدودیت های شبکه، ممکن است endorser باشند.
نودهای Consenters
این نودها وظیفه اجرای اجماع شبکه را بر عهده دارند. آنها در یک زمان اجرا کاملاً متفاوت اجرا می شوند، بر خلاف Endorser ها و committer ها که در زمان یکسان اجرا می شوند. Consenters مسئول اعتبار بخشیدن به تراکنش ها و انتخاب یک دفتر کل برای ثبت معامله هستند.
پروژه های هایپرلجر
همانطور که در ابتدای مقاله گفته شد، هایپرلجر یک Umbrella Project است. درواقع هایپرلجر متشکل از یک پروژه واحد نیست، بلکه با توسعه فریمورک ها و فناوری های مختلف بلاکچین سازمانی، انواع مختلفی از هایپرلجر در این اکوسیستم تولید شده است.
این پروژه ها عبارتند از:
- هایپرلجر Fabric – کاربرد گسترده در شبکه های زنجیره تأمین
- هایپرلجر Sawtooth – کاربرد در صنعت ماهیگیری جهت ردیابی سفر ماهی ها
- هایپرلجر Burrow – کاربرد در اجرای قراردادهای هوشمند اتریوم در یک شبکه هایپرلجر
- هایپرلجر Iroha – کاربرد در بهینه سازی اپلیکیشن موبایل به کمک بلاک چین
- هایپرلجر Indy – استفاده به عنوان یک سرویس پایگاه داده هویت غیر متمرکز
هایپرلجر فابریک
پروژه هایپرلجر فایبریک (Hyperledger Fabric) با هدف ساخت اپلیکیشن های بلاکچینی با مقیاس پذیری بالا (highly scalable) و انعطاف پذیری در بحث مجوزها (permissions) توسط شرکت IBM طراحی شد. فابریک، برای توسعه راه حل هایی با معماری ماژولار در نظر گرفته شده بود. هایپرلجر، plug-and-play بودن کامپوننت ها را امکانپذیر ساخته است.
هایپرلجر فابریک، یک سیستم بلاکچین خصوصی و دارای مجوز (permissioned) است. شبکه های بلاکچین عمومی و بدون مجوز (Permissionless) مانند اتریوم، به هویت های ناشناس اجازه شرکت در شبکه را می دادند. ولی در هایپرلجر فابریک اعضا باید از طریق (Membership Service Provider) MSP ثبت نام انجام دهند.
همچنین در هایپرلجر فابریک امکان ساخت کانال ( Channel) وجود دارد. این ویژگی کمک می کند تا گروهی از شرکت کنندگان، دفتر کل معاملاتی جداگانه ای داشته باشند.
مزایای هایپرلجر فابریک
از آنجایی که هایپرلجر فایبریک یک بلاکچین مجوزدار است، از مزایای ویژه ای نسبت به سایر سیستم های بلاکچین برخوردار می باشد:
- حفاظت از داده ها و سازگاری – از مجوزها برای کسب اطمینان از مسئولیت پذیری اعضاء و کنترل حقوق دسترسی استفاده می کند.
- معاملات محرمانه – با فراهم آوردن انعطاف پذیری و امنیت برای کسب و کارها، معاملات (تراکنش ها) شفاف خواهند بود.
- بدون ارز دیجیتال – جهت اطمینان پیدا کردن از تراکنش ها نیازی به ماینینگ و محاسبات پر هزینه نیست.
- قابل برنامه ریزی – به کمک منطق نهفته در قراردادهای هوشمند، فرآیندهای کسب و کار در شبکه، خودکارسازی می شود.
مدل هایپرلجر فابریک
هایپرلجر فایبریک به واسطه ویژگی های اصلی خود که در ادامه مشاهده می شود، وعده خود یعنی بلاکچین سازمانی با قابلیت شخصی سازی را عملی کرده است.
- دارایی ها (Assets) : تبادل ارزش پولی را از طریق شبکه فعال می کند.
- کد زنجیره (Chaincode) : جدا از مرتب سازی تراکنش ها، سطوح اعتماد (trust) و تأیید (verification) مورد نیاز در انواع گره ها محدود شده و کارآیی و مقیاس پذیری شبکه، بهینه تر شده است.
- ویژگی های دفتر کل (Ledger) : کل تاریخچه تراکنش ها برای هر کانال، انکود شده و همچنین قابلیت پرس و جو (کوئری) مشابه SQL وجود دارد.
- کانال ها (Channels) : تراکنش های چند جانبه با درجه بالایی از محرمانگی و حریم خصوصی، فعال می شوند.
- امنیت و خدمات عضویت (Security & Membership Services) : در عضویت مجوزدار، شرکت کنندگان می دانند که هر تراکنشی ممکن است توسط تنظیم کننده ها (regulators) و حسابرس های مجاز (auditors)، مورد تشخیص و ردیابی قرار گیرند.
- اجماع (Consensus) : راه اندازان شبکه را قادر می سازد تا مکانیزم اجماع ای را انتخاب کنند که ارتباطات موجود بین شرکت کنندگان را به بهترین شکل ممکن نشان می دهد.
معماری هایپرلجر فابریک
- برنامه نویس بلاک چین اپلیکیشن و قراردادهای هوشمند را برنامه نویسی می کند.
- سپس برنامه نویس، اپ را روی یک سرور و قرارداد هوشمند را روی یک نود (peer) دپلوی می کند.
- کاربر رجیستر شده، با اپ ارتباط برقرار کرده و از طریق اسمارت کانترکت، عملیات ارسال درخواست (INVOKE) یا دریافت اطلاعات (QUERY) را انجام می دهد.
- قرارداد هوشمند، رویدادهای ثبت شده توسط اپلیکیشن را emit می کند.
در تصویر بالا، معماری هایپرلجر فابریک به تصویر کشیده شده است.
هایپرلجر فابریک چگونه کار می کند؟
- هایپرلجر فابریک سیستم قرارداد هوشمندی موسوم به ChainCode دارد و هر نود از شبکه در یک داکر کانتینر (Docker Container) اجرا می شود.
- رویدادها به صورت تراکنش ها سازماندهی شده و میان گیرنده های مختلف به اشتراک گذاشته می شوند.
- تراکنش ها بدون نیاز به رمز ارز انجام می شوند.
- تمام تراکنش ها امن، خصوصی و محرمانه هستند. فابریک تنها با اجماع نودها می تواند بروزرسانی شود.
- برای تضمین اینکه تنها نودهای محدود و دلخواه بتوانند محتوای یک تراکنش را مشاهده کنند، محتوای تراکنش ها رمزگذاری می شود.
- کاربران برای کسب مجوز دسترسی به سیستم، می بایست POI (Proof of Identity) خود را در سرویس عضویت، ثبت کنند.
- فابریک تراکنش ها را با سرتیفیکیت های مشتق شده غیر قابل قبول برای شرکت کننده مالک، صادر می کند.
چرخه حیات تراکنش در هایپرلجر فابریک
- اپلیکیشن از طریق SDK هایپرلجرفابریک می تواند تراکنش های Read و Write ارسال کند.
- وقتی یک پروپوزال (درخواست) از سمت اپلیکیشن ارسال می شود، نود با نقش کاربری Endorsing چین کد (ChainCode) را اجرا می کند تا پروپوزال را در نود شبیه سازی کند. سپس به State DB کوئری می زند و RWSet را می سازد.
- پس از انجام عملیات مرحله قبل، پاسخ پروپوزال (شامل RWSet) برگشت داده می شود.
- سپس یک تراکنش (شامل RWSet) ارسال می شود.
- سرویس Ordering دسته ای از تراکنش ها (بلاک) را می سازد.
- سپس بلاک ساخته شده، از سرویس Ordering دریافت می شود.
- در این مرحله، پس از اعتبارسنجی شدن تک تک تراکنش ها، کل بلاک commit می شود. این مرحله شامل اعتبارسنجی پالیسی اندورزمنت (VSCC)، اعتبارسنجی نسخه ReadSet در State DB (MVCC)، کامیت شدن بلاک به بلاکچین و کامیت شدن تراکنش های معتبر به StateDB می باشد.
در تصویر بالا، چرخه حیات یک تراکنش در شبکه هایپرلجر فابریک به تصویر کشیده شده است.
بررسی یک مسئله واقعی (Use Case)
هایپرلجر تقریباً هر نوع شبکه تجاری را می تواند میزبانی کند و به خاطر مزیت مقیاس پذیری هایپرلجر، پروژه های متعددی روی Fabric در حال توسعه هستند. به عنوان یک مثال، در این بخش قصد داریم یک راهکار مبتنی بر هایپرلجر برای حل مسئله قابلیت تبادل دارایی ها (Interoperability of Assets) را مورد بررسی قرار دهیم. این مسئله مربوط می شود به موضوع مبادله (Exchange) دارایی ها میان گروهی از افراد.
شرح مسئله
اگر سازمانی مالک 10 هزار واحد از دارایی A باشد و نیاز به 20 هزار واحد از دارایی B داشته باشد، به راهی برای مبادله دارایی A با B نیاز دارد. اگرچه بازار فعلی ممکن است لیکوئیدیتی یا همان نقدینگی (liquidity) کافی برای انجام سریع این معامله نداشته باشد، ولی بین دارایی های A و C و همچنین بین C و B، ممکن است لیکوئیدیتی های زیادی در دسترس باشد. بنابراین برای تبادل مستقیم A و B، با محدودیت مارکت مواجه هستیم. چه راهکاری برای این مسئله می توان در نظر گرفت؟
راه حل
راهکار این است که یک شبکه زنجیره ای (chain network) ، خریداران را به فروشندگان وصل می کند و بهترین تطابق (best match) برای تبادل دارایی بین این دو گروه را پیدا کرده و معامله (transaction) را اجرا می کند. بنابراین باید یک شبکه تجاری (business network) متشکل از گروهی از افراد بر روی هایپرلجر فابریک راه اندازی کرد تا دارایی ها بین خریدار و فروشنده قابل تبادل باشد.
مقایسه هایپرلجر با اتریوم
اکنون که با هایپرلجر و نحوه عملکرد آن آشنا شدیم و دلیل نیاز صنایع به هایپرلجر در زندگی امروزه را دیدیم، نوبت به مقایسه دو پلتفرم پرطرفدار هایپرلجر و اتریوم می رسد. اهداف استراتژیک هایپرلجر برای پیاده سازی راه حل های تجاری مبتنی بر بلاک چین، به شدت هایپرلجر را از بلاکچین های مبتنی بر ارز (currency based blockchains) مانند بیتکوین و اتریوم جدا می کند. شما بعد از مطالعه این بخش، می توانید تصمیم بگیرید، در هر کاربرد، کدام پلتفرم بهتر می تواند پاسخگوی نیازهای مسئله باشد.
اتریوم چیست؟
اتریوم یک شبکه بلاک چین عمومی (public) و توزیع شده (distributed) و اوپن سورس است. بلاکچین اتریوم به کمک قابلیت قرارداد هوشمند (Smart Contracts)، ساخته شدن برنامه های غیرمتمرکز (decentralized apps – DApps) روی این پلتفرم را امکانپذیر می سازد.
ویتالیک بوترین شبکه بلاکچین اتریوم را به عنوان یک افزونه (extension) از مفهوم اورجینال هسته بلاک چین (core blockchain) توسعه داد. اتریوم در واقع پروتکل های بیتکوین را برای پشتیبانی از برنامه های کاربردی ارز محور، بهبود داده است. برتری اصلی اتریوم مربوط می شود به سادگی نوشتن و استقرار قراردادهای هوشمند. اسمارت کانترکت ها در واقع تکه کدهایی هستند که در شبکه اجرا می شوند. از این رو، پلتفرم اتریوم می تواند به توسعه دهندگان کمک کند تا برنامه هایی برای ایجاد سازمان های غیرمتمرکز بنویسند.
هر کسی در سراسر جهان می تواند با بلاک چین اتریوم ارتباط برقرار کند و با راه اندازی نود در شبکه، وضعیت فعلی (current state) شبکه را حفظ کند. بنابراین، اتریوم به طور گسترده به عنوان کامپیوتر جهانی (World Computer) نیز شناخته می شود.
هایپرلجر چیست؟
به گفته برایان بهلندورف (مدیر اجرایی پروژه) “هایپرلجر یک پروژه اوپن سورس برای بهره مندی از اکوسیستمی متشکل از سرویس دهندگان و کاربران راه حل های مبتنی بر هایپرلجر می باشد. تمرکز این پروژه روی موضوعات مرتبط با بلاکچین در بخش های مختلف صنعت می باشد.”
هر کسب و کار و صنعت به واسطه شیوه خاصی که دارد و اپلیکیشن هایی که برای سرویس دهی به نیازهای آن کسب و کار باید شخصی سازی شوند، متمایز می باشد. بلاک چین اتریوم بر مبنای یک پروتکل کاملاً عمومی (generalized) کار می کند که برای هر چیزی که روی شبکه اتریوم اجرا می شود، مورد استفاده قرار می گیرد. از سوی دیگر هایپرلجر را می توان به عنوان پلتفرمی برای توسعه بلاک چینهای شخصیسازی شده با توجه به نیازهای هر کسبوکار در نظر گرفت.
هایپرلجر یک پروژه اوپن سورس و مشارکتی است که توسط بنیاد لینوکس میزبانی می شود. هایپرلجر نه ابزار است و نه یک پلتفرم مانند اتریوم. بلکه یک استراتژی کلی (umbrella strategy) است که شامل پلتفرم های متعدد برای توسعه راه حل های سازمانی است.
تفاوت های هایپرلجر و اتریوم
در این بخش، Hyperledger و Ethereum را بر اساس تفاوت های آنها و نحوه عملکرد آنها در اهداف مختلف، بررسی خواهیم کرد.
1- هدف از طراحی
اساسی ترین تمایز بین هایپرلجر و اتریوم هدف از طراحی شدن آنها است. اتریوم قراردادهای هوشمند را روی EVM برای اپلیکیشن های غیرمتمرکز جهت مصرف عموم، اجرا میکند.
از سوی دیگر، هایپرلجر از فناوری بلاک چین برای کسب و کار استفاده می کند. هایپرلجر برای پشتیبانی از سیستم پیاده سازی قابل اتصال (pluggable implementation) برای کامپوننت ها طراحی شده است که درجات بالایی از محرمانگی، انعطاف پذیری و مقیاس پذیری را ارائه می دهد. هایپرلجر دارای معماری ماژولار بوده و این موضوع انعطاف پذیری زیادی در نحوه استفاده از آن فراهم می آورد. معماری توسعه پذیر هایپرلجر راه حل های آینده نگرانه ای را برای بلاک چین های سازمانی ارائه می دهد.
2- سطح محرمانگی
طبق مثالی که در رابطه با معامله محرمانه باب و آلیس در همین مقاله ارائه شد، این معامله در اتریوم انجام پذیر نبود. چرا که اتریوم دارای یک پلتفرم شفاف بوده و اطلاعات هر تراکنش روی شبکه برای همه قابل مشاهده است.
ولی هایپرلجر تراکنش های محرمانه را امکان پذیر می سازد. یک چنین سیستمی، انعطافپذیری و امنیت را برای کسبوکارها فراهم می آورد. به اینصورت که اطلاعات تراکنشها محرمانه بوده و فقط برای اشخاصی که دارای کلیدهای رمزگذاری صحیح هستند قابل مشاهده می باشد.
3- نحوه مشارکت نودها
اتریوم یک شبکه بدون مجوز (Permissionless) است که می تواند عمومی یا خصوصی (public / private) باشد و هر کسی میتواند در هر زمانی وارد شبکه اتریوم شده و در این شبکه مشارکت داشته باشد.
هایپرلجر یک شبکه دارای مجوز (permissioned) و خصوصی (private) است که یک جامعه از پیش تعریف شده از شرکت کنندگان دارد و دسترسی به شبکه فقط برای آن افراد امکانپذیر خواهد بود. افراد برای پیوستن به یک شبکه هایپرلجر نیاز به مجوز (Permission) دارند. این شیوه مشارکت تأثیر عمیقی بر چگونگی دستیابی به اجماع (consensus) دارد.
4- مکانیزم اجماع
در اتریوم، همه گرهها (شرکت کنندگان) صرف نظر از اینکه در یک تراکنش خاص شرکت کرده باشد یا نه، باید بر سر همه تراکنشها به توافق/اجماع (consensus) برسند. در حال حاضر، مکانیزم اجماع اتریوم توسط ماینینگ (استخراج) بر اساس الگوریتم اثبات کار (PoW) صورت می گیرد. همه گره ها باید روی یک دفتر کل مشترک توافق کرده و به تمام ورودی های ثبت شده دفتر دسترسی داشته باشند.
در مقابل، هایپرلجر به گرهها اجازه میدهد بین No-op (بدون نیاز به اجماع) و PBFT (یک پروتکل توافق) یکی را انتخاب کنند که به موجب آن دو یا چند طرف میتوانند روی یک کلید بهگونهای توافق کنند که هر دو طرف روی نتیجه تأثیر بگذارند. این ویژگی مانع از تحمیل یک انتخاب کلیدی به طرفین توافقکننده، توسط اشخاص ثالث ناخواسته میشود. بنابراین، هایپرلجر کنترل دقیقی بر اجماع و دسترسی محدود به تراکنشها دارد که منجر به بهبود مقیاسپذیری کارآیی (performance scalability) و حفظ حریم خصوصی (privacy) میشود.
5- زبان برنامه نویسی قرارداد هوشمند
در اتریوم، برنامه نویسی قراردادهای هوشمند به زبان برنامه نویسی قراردادگرا و سطح بالایی به نام سالیدیتی (Solidity) نوشته می شود.
در هایپرلجر به جای قرارداد هوشمند از چین کد (chaincode) استفاده می شود. یک چین کد در واقع منطق تجاری (business logic) مورد توافق اعضای شبکه را کنترل می کند. بنابراین، chaincode ها را می توان به عنوان قرارداد هوشمند در نظر گرفت. chaincode ها به زبان برنامه نویسی Go (گولنگ) که توسط گوگل ارائه شده، نوشته می شوند.
6- رمز ارز شبکه
هایپرلجر برای انجام تراکنش ها نیازی به ارزهای دیجیتال نداشته و هیچگونه ارز دیجیتال نیتیو (native) مانند توکن اتریوم (Ether) ندارد. از این رو، هایپرلجر هیچ نیازی به ماینینگ (استخراج) ندارد. این ویژگی هایپرلجر، ایجاد یک الگوریتم اجماع مقیاس پذیر (scalable consensus) را امکانپذیر می سازد که قادر به مدیریت نرخ تراکنش (transaction rate) بالای مورد نیاز در اکثر اپلیکیشن های سازمانی است.
در مواردی که اپلیکیشن مورد نظر، نیاز به ارز دیجیتال دارد، اتریوم به خاطر داشتن ارز مخصوص به خود، می تواند انتخاب بهتری نسبت به هایپرلجر باشد. هرچند در هایپرلجر نیز در صورت لزوم، می توانید از طریق chaincode، توکنهای سفارشی مورد نیازتان را توسعه دهید. چراکه هایپرلجر نیز قابلیت برنامه نویسی داشته و می تواند از منطق تعبیه شده در chaincode برای خودکارسازی فرآیندهای تجاری در شبکه استفاده کند.
اتریوم یا هایپرلجر، کدام بهتر است؟
توسعهدهندگانی که میخواهند یک اپلیکیشن بسازند یا کسب و کاری را روی چنین پلتفرمهایی راهاندازی کنند، باید یکی از این دو مورد را انتخاب کنند. هایپرلجر و اتریوم هر دو بسیار انعطاف پذیر هستند، اما هر کدام از یک جنبه مختلف.
موتور قدرتمند قراردادهای هوشمند اتریوم آن را به یک پلتفرم عمومی برای هر نوع کاربردی تبدیل می کند. با این حال، بدون مجوز بودن عملیات و شفافیت کامل آن به قیمت از دست رفتن مقیاس پذیری کارآیی و حفظ حریم خصوصی تمام می شود.
گام بعدی : یادگیری برنامه نویسی بلاک چین
مقاله آموزش جامع هایپرلجر به اتمام رسید و امیدوارم از خواندن این مقاله لذت برده باشید! اگر در رابطه با هایپرلجر سوالی دارید، میتوانید سوال خود را در بخش نظرات درج کنید تا در اسرع وقت پاسخ داده شود. اگر تصمیم دارید اطلاعات خود را در زمینه بلاک چین افزایش دهید و وارد بازار کار بلاکچین شوید، در بوت کمپ آموزش برنامه نویسی بلاک چین با پشتیبانی، منتورینگ و انجام پروژه های واقعی، شما را همراهی خواهیم کرد. این دوره آموزشی جامع و تخصصی به شما کمک می کند که برنامه نویسی بلاک چین را عمیقاً درک کرده و به این تخصص مسلط شوید.
درباره مجید شبیری
کارشناس ارشد فناوری اطلاعات از دانشگاه صنعتی امیرکبیر. مدیر و مؤسس "علوم نوین امیرکبیر"، متخصص برنامه نویسی، شبکه، لینوکس و امنیت. از سال 84 همزمان با شروع تحصیلات دانشگاهی، وارد حوزه تخصصی مهندسی نرم افزار شدم و اکنون مشغول تحقیق، توسعه و آموزش در حوزه بلاک چین هستم و معتقدم بلاکچین به زودی فضای کسب و کارها را منقلب خواهد کرد.
نوشته های بیشتر از مجید شبیری
دیدگاهتان را بنویسید