به طور کلی ، یک blockchain یک دفترچه معامله غیرقابل تغییر است که در یک شبکه توزیع شده از گره های همسالان نگهداری می شود. این گره ها هر کدام یک نسخه از دفترچه را با استفاده از معاملات که توسط یک پروتکل اجماع تأیید شده اند ، به بلوک هایی که شامل هش است که هر بلوک را به بلوک قبلی متصل می کند ، حفظ می کنند.
اولین و شناخته شده ترین کاربرد blockchain ، رمزنگاری بیت کوین است ، اگرچه دیگران در پله های آن پیروی کرده اند. Ethereum ، یک رمزنگاری جایگزین ، رویکرد متفاوتی را اتخاذ کرد و بسیاری از ویژگی های مشابه بیت کوین را ادغام کرد اما اضافه کردن قراردادهای هوشمند برای ایجاد بستر برای برنامه های توزیع شده. بیت کوین و اتریوم در یک کلاس از blockchain قرار می گیرند که ما به عنوان فناوری blockchain بدون مجوز عمومی طبقه بندی می کنیم. در اصل ، اینها شبکه های عمومی هستند که برای هر کسی باز است ، جایی که شرکت کنندگان به طور ناشناس تعامل دارند.
با افزایش محبوبیت بیت کوین ، اتریوم و چند فناوری مشتق دیگر ، علاقه به استفاده از فناوری اساسی blockchain ، لجر توزیع شده و پلت فرم برنامه توزیع شده برای موارد استفاده نوآورانه تر نیز افزایش یافت. با این حال ، بسیاری از موارد استفاده از شرکت ها به ویژگی های عملکرد نیاز دارند که فن آوری های blockchain بدون مجوز قادر به ارائه (در حال حاضر) نیستند. علاوه بر این ، در بسیاری از موارد استفاده ، هویت شرکت کنندگان یک الزام سخت است ، مانند مواردی که در مورد معاملات مالی که در آن شما-مشتری-مشتری (KYC) و شستشوی ضد پول (AML) قرار دارد ، باید رعایت شود.
برای استفاده از شرکت ، باید موارد زیر را در نظر بگیریم:
- شرکت کنندگان باید شناسایی و شناسایی شوند
- شبکه ها باید مجاز باشند
- عملکرد توان بالا معامله
- تأخیر کم تأیید معامله
- حریم خصوصی و محرمانه بودن معاملات و داده های مربوط به معاملات تجاری
در حالی که بسیاری از سیستم عامل های اولیه blockchain در حال حاضر برای استفاده از شرکت ها اقتباس شده اند ، پارچه Hyperledger از ابتدا برای استفاده از شرکت ها طراحی شده است. در بخش های زیر توضیح می دهد که چگونه پارچه Hyperledger (پارچه) خود را از سایر سیستم عامل های blockchain متمایز می کند و برخی از انگیزه های تصمیمات معماری خود را توصیف می کند.
پارچه Hyperledger¶
Hyperledger Fabric یک پلتفرم توزیع شده با شرکت مجوزهای توزیع شده در سطح منبع باز (DLT) است که برای استفاده در زمینه های سازمانی طراحی شده است ، که برخی از قابلیت های تمایز کلیدی را نسبت به سایر سیستم عامل های توزیع شده محبوب یا blockchain ارائه می دهد.
یکی از نکته های اصلی تمایز این است که Hyperledger تحت بنیاد لینوکس تأسیس شد ، که خود دارای سابقه طولانی و بسیار موفق در پرورش پروژه های منبع باز تحت حاکمیت آزاد است که جوامع پایدار و قوی را رشد می دهد و اکوسیستم های رونق بخشیده است. Hyperledger توسط یک کمیته فرمان فنی متنوع اداره می شود و پروژه پارچه Hyperledger توسط مجموعه متنوعی از نگهبانان سازمان های مختلف اداره می شود. این جامعه دارای یک جامعه توسعه است که از اولین تعهدات خود به بیش از 35 سازمان و نزدیک به 200 توسعه دهنده رسیده است.
پارچه دارای معماری بسیار مدولار و قابل تنظیم است که باعث نوآوری ، تطبیق پذیری و بهینه سازی برای طیف گسترده ای از موارد استفاده از صنعت از جمله بانکداری ، امور مالی ، بیمه ، مراقبت های بهداشتی ، منابع انسانی ، زنجیره تأمین و حتی تحویل موسیقی دیجیتال می شود.
پارچه اولین بستر لجر توزیع شده برای پشتیبانی از قراردادهای هوشمند است که در زبان های برنامه نویسی با هدف عمومی مانند جاوا ، go و node. js به جای زبانهای محدود دامنه (DSL) تألیف شده است. این بدان معناست که بیشتر شرکت ها از قبل مهارت لازم برای توسعه قراردادهای هوشمند را دارند و هیچ آموزش دیگری برای یادگیری یک زبان جدید یا DSL لازم نیست.
بستر پارچه ای نیز مجاز است ، به این معنی که برخلاف یک شبکه بدون اجازه عمومی ، شرکت کنندگان به جای ناشناس و در نتیجه کاملاً غیرقابل اعتماد ، به یکدیگر شناخته می شوند. این بدان معناست که در حالی که شرکت کنندگان ممکن است کاملاً به یکدیگر اعتماد نکنند (به عنوان مثال ممکن است در همان صنعت رقبا باشند) ، می توان یک شبکه را تحت یک مدل حاکمیتی اداره کرد که از آنچه اعتماد بین شرکت کنندگان وجود دارد ساخته شده است ، مانندتوافق نامه حقوقی یا چارچوبی برای رسیدگی به اختلافات.
یکی از مهمترین تمایزات این سیستم عامل ، پشتیبانی از پروتکل های اجماع قابل پلاگین است که این پلتفرم را قادر می سازد تا به طور مؤثرتری سفارشی تر شود تا متناسب با موارد استفاده خاص و مدل های اعتماد باشد. به عنوان مثال ، هنگامی که در یک شرکت واحد مستقر می شود ، یا توسط یک مقام قابل اعتماد اداره می شود ، اجماع تحمل کاملاً بیزانس ممکن است غیر ضروری تلقی شود و یک حرکت بیش از حد بر عملکرد و توان باشد. در شرایطی مانند آن ، یک پروتکل اجماع تحمل به گسل (CFT) ممکن است بیش از حد کافی باشد ، در حالی که ، در یک مورد استفاده چند حزب ، غیر متمرکز ، یک پروتکل اجماع تحمل کننده بیزانس سنتی تر (BFT) ممکن است مورد نیاز باشد.
پارچه می تواند از پروتکل های اجماع استفاده کند که نیازی به رمزنگاری بومی برای ایجاد معدن پرهزینه یا سوخت اجرای قرارداد هوشمند ندارد. اجتناب از رمزنگاری باعث کاهش برخی از بردارهای خطرناک/حمله قابل توجه می شود و عدم وجود عملیات استخراج رمزنگاری به این معنی است که می توان این پلتفرم را تقریباً با همان هزینه عملیاتی مانند سایر سیستم توزیع شده مستقر کرد.
ترکیبی از این ویژگی های طراحی متمایز ، پارچه را به یکی از سیستم عامل های با عملکرد بهتر امروز هم از نظر پردازش معاملات و هم از نظر تأخیر در تأیید معامله ، تبدیل می کند و این امر باعث می شود حریم خصوصی و محرمانه بودن معاملات و قراردادهای هوشمند (آنچه پارچه "زنجیره ای" می نامد) را اجرا کند. آنها
بیایید این ویژگی های متمایز را با جزئیات بیشتری بررسی کنیم.
مدولار بودن ¶
پارچه Hyperledger به طور خاص برای داشتن معماری مدولار معماری شده است. این که آیا این اجماع قابل پلاگین است ، پروتکل های مدیریت هویت قابل پلاگین مانند LDAP یا OpenID Coect ، پروتکل های مدیریت کلیدی یا کتابخانه های رمزنگاری ، این پلتفرم در هسته اصلی خود طراحی شده است تا برای پاسخگویی به تنوع مورد نیاز استفاده شرکت تنظیم شود.
در سطح بالایی ، پارچه از اجزای مدولار زیر تشکیل شده است:
- یک سرویس سفارش قابل افزودنی اجماع را در مورد ترتیب معاملات ایجاد می کند و سپس بلوک هایی را برای همسالان پخش می کند.
- یک ارائه دهنده خدمات عضویت قابل جمع کردن مسئولیت ارتباط اشخاص در شبکه با هویت رمزنگاری را بر عهده دارد.
- یک سرویس شایعات همتا به همتا با سفارش سرویس به سایر همسالان ، خروجی بلوک ها را منتشر می کند.
- قراردادهای هوشمند ("کد زنجیره ای") برای انزوا در یک محیط کانتینر (به عنوان مثال داکر) اجرا می شوند. آنها را می توان به زبانهای برنامه نویسی استاندارد نوشت اما دسترسی مستقیم به دولت لجر ندارند.
- دفترچه راهنما را می توان برای پشتیبانی از انواع DBMS پیکربندی کرد.
- تأیید و اجرای سیاست اعتبار سنجی قابل تأیید است که می تواند به طور مستقل در هر برنامه پیکربندی شود.
توافق عادلانه ای در صنعت وجود دارد که هیچ "یک blockchain برای رد همه آنها" وجود ندارد. پارچه Hyperledger را می توان به روش های مختلفی برای برآورده کردن نیازهای حل متنوع برای موارد استفاده چند صنعت پیکربندی کرد.
مجوز در مقابل blockchains بدون اجازه
در یک blockchain بدون مجوز ، تقریباً هر کسی می تواند شرکت کند و هر شرکت کننده ناشناس است. در چنین شرایطی ، هیچ اعتماد غیر از این که وضعیت blockchain ، قبل از عمق مشخص ، تغییر ناپذیر است. به منظور کاهش این عدم وجود اعتماد ، blockchains بدون مجوز به طور معمول از یک رمزنگاری بومی "استخراج شده" یا هزینه های معامله استفاده می کند تا انگیزه اقتصادی برای جبران هزینه های فوق العاده شرکت در نوعی اجماع تحمل گسل بیزانس بر اساس "اثبات کار" فراهم کند (POW).
از طرف دیگر ، blockchain های مجاز ، در میان مجموعه ای از شرکت کنندگان شناخته شده ، شناسایی شده و غالباً مورد بررسی که تحت یک الگوی حاکمیتی فعالیت می کنند ، کار می کنند که دارای درجه خاصی از اعتماد هستند. یک blockchain مجاز راهی برای تأمین تعامل بین گروهی از نهادها که هدف مشترک دارند اما ممکن است به طور کامل به یکدیگر اعتماد نکنند ، فراهم می کند. با تکیه بر هویت شرکت کنندگان ، یک blockchain مجوز می تواند از پروتکل های اجماع تحمل گسل (CFT) یا تحمل گسل بیزانس (BFT) که نیازی به استخراج پرهزینه ندارند ، استفاده کند.
علاوه بر این ، در چنین زمینه ای مجوز ، خطر شرکت کننده که عمداً کد مخرب را از طریق یک قرارداد هوشمند معرفی می کند ، کاهش می یابد. اول ، شرکت کنندگان به یکدیگر و کلیه اقدامات ، اعم از ارسال معاملات برنامه ، اصلاح پیکربندی شبکه یا استقرار یک قرارداد هوشمند ، در blockchain پس از یک سیاست تأیید که برای شبکه و نوع معامله مربوطه ایجاد شده است ، در blockchain ثبت می شوند. به جای اینکه کاملاً ناشناس باشد ، شخص گناهکار را می توان به راحتی شناسایی کرد و حادثه مطابق با شرایط الگوی حاکمیت رسیدگی کرد.
قراردادهای هوشمند
یک قرارداد هوشمند یا آنچه پارچه آن را "کد زنجیره ای" می نامد ، به عنوان یک برنامه توزیع شده قابل اعتماد عمل می کند که امنیت/اعتماد خود را از blockchain و اجماع اساسی در بین همسالان بدست می آورد. این منطق تجارت یک برنامه blockchain است.
سه نکته کلیدی وجود دارد که در مورد قراردادهای هوشمند اعمال می شود ، به خصوص هنگامی که در یک سیستم عامل اعمال می شود:
- بسیاری از قراردادهای هوشمند همزمان در شبکه اجرا می شوند ،
- آنها ممکن است به صورت پویا (در بسیاری از موارد توسط هر کس) مستقر شوند ، و
- کد برنامه باید به عنوان غیر قابل اعتماد ، حتی بالقوه حتی مخرب رفتار شود.
بیشتر سیستم عامل های موجود در زمینه قرارداد هوشمند موجود ، از معماری سفارش سفارش پیروی می کنند که در آن پروتکل اجماع:
- معاملات را تأیید و سفارش می دهد و سپس آنها را به همه گره های همسالان تبلیغ می کند ،
- سپس هر همسالان معاملات را به صورت متوالی انجام می دهد.
معماری سفارش سفارش را می توان تقریباً در تمام سیستم های blockchain موجود یافت ، از سیستم عامل های عمومی/بدون مجوز مانند Ethereum (با اجماع مبتنی بر POW) گرفته تا سیستم عامل های مجاز مانند Tendermint ، Chain و Quorum.
قراردادهای هوشمند اجرای در یک blockchain که با معماری سفارش سفارش کار می کند باید تعیین کننده باشد. در غیر این صورت ، ممکن است اجماع هرگز حاصل نشود. برای پرداختن به مسئله غیر تعیین کننده ، بسیاری از سیستم عامل ها نیاز دارند که قراردادهای هوشمند به زبان غیر استاندارد یا خاص دامنه (مانند استحکام) نوشته شوند تا عملیات غیر تعیین کننده از بین برود. این امر مستلزم پذیرش گسترده است زیرا به توسعه دهندگان نیاز دارد که قراردادهای هوشمند را برای یادگیری یک زبان جدید بنویسند و ممکن است منجر به خطاهای برنامه نویسی شود.
علاوه بر این ، از آنجا که تمام معاملات به صورت متوالی توسط همه گره ها اجرا می شوند ، عملکرد و مقیاس محدود است. این واقعیت که کد قرارداد هوشمند بر روی هر گره در سیستم اجرا می شود ، خواستار اقدامات پیچیده ای برای محافظت از سیستم کلی در برابر قراردادهای بالقوه مخرب به منظور اطمینان از مقاومت در سیستم کلی است.
یک رویکرد جدید
پارچه معماری جدیدی را برای معاملات معرفی می کند که ما آن را تأیید سفارش می دهیم. این امر به مقاومت ، انعطاف پذیری ، مقیاس پذیری ، عملکرد و چالش های محرمانه که توسط مدل سفارش-سفارش با جدا کردن جریان معامله در سه مرحله روبرو می شود ، می پردازد:
- معامله را انجام دهید و صحت آن را بررسی کنید ، از این طریق آن را تأیید کنید ،
- معاملات را از طریق یک پروتکل اجماع (قابل افزودنی) سفارش دهید ، و
- قبل از تعهد آنها به دفترچه ، معاملات را علیه یک سیاست تأیید خاص برنامه تأیید کنید
این طرح به طور اساسی از الگوی سفارش سفارش در این پارچه قبل از رسیدن به توافق نهایی به سفارش خود ، معاملات را انجام می دهد.
در پارچه ، یک خط مشی تأیید خاص برنامه مشخص می کند که کدام گره های همسالان یا چه تعداد از آنها ، برای اجرای صحیح یک قرارداد هوشمند خاص باید دست و پنجه نرم کنند. بنابراین ، هر معامله فقط توسط زیر مجموعه گره های همسالان لازم برای برآورده کردن خط مشی تأیید معامله ، باید اجرا شود (تأیید شود). این امر باعث می شود که اجرای موازی عملکرد کلی و مقیاس سیستم را افزایش دهد. این مرحله اول همچنین هرگونه غیر تعیین کننده را از بین می برد ، زیرا نتایج متناقض می تواند قبل از سفارش فیلتر شود.
از آنجا که ما غیر تعیین کننده را از بین برده ایم ، پارچه اولین فناوری blockchain است که استفاده از زبانهای برنامه نویسی استاندارد را امکان پذیر می کند.
حریم خصوصی و محرمانه بودن
همانطور که بحث کردیم ، در یک شبکه blockchain بدون مجوز که از POW برای مدل اجماع خود استفاده می کند ، معاملات در هر گره انجام می شود. این بدان معناست که هیچ محرمانه بودن خود قراردادها و داده های معامله ای که پردازش می کنند وجود ندارد. هر معامله و کدی که آن را پیاده سازی می کند ، برای هر گره در شبکه قابل مشاهده است. در این حالت ، ما محرمانه بودن قرارداد و داده ها را برای اجماع تحمل گسل بیزانس که توسط POW تحویل داده شده است ، معامله کرده ایم.
این عدم محرمانه بودن می تواند برای بسیاری از موارد استفاده از مشاغل/شرکت ها مشکل ساز باشد. به عنوان مثال ، در شبکه ای از شرکای زنجیره تأمین ، برخی از مصرف کنندگان ممکن است به عنوان ابزاری برای تحکیم یک رابطه یا ترویج فروش اضافی ، نرخ های ارجح را ترجیح دهند. اگر هر شرکت کننده بتواند هر قرارداد و معامله را ببیند ، حفظ چنین روابط تجاری در یک شبکه کاملاً شفاف غیرممکن می شود - همه نرخ های ترجیحی را می خواهند!
به عنوان مثال دوم ، صنعت اوراق بهادار را در نظر بگیرید ، جایی که یک معامله گر در حال ایجاد یک موقعیت (یا دفع یکی)) نمی خواهد رقبای خود را از این امر مطلع کنند ، وگرنه آنها به دنبال این هستند که در این بازی شرکت کنند و قمار معامله گر را تضعیف کنند.
به منظور پرداختن به عدم حفظ حریم خصوصی و محرمانه بودن به منظور ارائه مورد نیاز مورد استفاده از شرکت ، سیستم عامل های blockchain رویکردهای متنوعی را اتخاذ کرده اند. همه معاملات خود را دارند.
رمزگذاری داده ها یک رویکرد برای تأمین محرمانه است. با این حال ، در یک شبکه بدون مجوز از POW به دلیل اجماع خود ، داده های رمزگذاری شده روی هر گره نشسته اند. با توجه به زمان و منابع محاسباتی کافی ، رمزگذاری می تواند شکسته شود. برای بسیاری از موارد استفاده از سازمانی ، این خطر برای به خطر انداختن اطلاعات آنها قابل قبول نیست.
اثبات دانش صفر (ZKP) حوزه دیگری از تحقیقات است که برای رفع این مشکل مورد بررسی قرار می گیرد ، تجارت در اینجا این است که در حال حاضر ، محاسبه ZKP نیاز به زمان و منابع محاسباتی قابل توجهی دارد. از این رو ، تجارت در این مورد عملکرد محرمانه بودن است.
در یک زمینه مجاز که می تواند اشکال متناوب اجماع را به دست آورد ، ممکن است رویکردهایی را کشف کند که توزیع اطلاعات محرمانه را منحصراً به گره های مجاز محدود می کند.
پارچه Hyperledger ، به عنوان یک بستر مجاز ، از طریق معماری کانال و ویژگی داده های خصوصی محرمانه را امکان پذیر می کند. در کانال ها ، شرکت کنندگان در یک شبکه پارچه ای زیر شبکه ای را ایجاد می کنند که در آن هر عضو از مجموعه خاصی از معاملات برخوردار است. بنابراین ، فقط گره هایی که در یک کانال شرکت می کنند ، به قرارداد هوشمند (کد زنجیره ای) و داده های معامله شده دسترسی دارند و حفظ حریم خصوصی و محرمانه بودن هر دو را حفظ می کنند. داده های خصوصی امکان جمع آوری بین اعضا را در یک کانال فراهم می کند ، و امکان محافظت از همان کانال ها را بدون استفاده از سربار در ایجاد و نگهداری یک کانال جداگانه فراهم می کند.
اجماع قابل انعطاف پذیر
ترتیب معاملات برای اجماع به یک مؤلفه مدولار واگذار می شود که به طور منطقی از همسالان که معاملات را انجام می دهند و دفترچه را حفظ می کنند ، جدا می شود. به طور خاص ، سرویس سفارش. از آنجا که اجماع مدولار است ، اجرای آن می تواند متناسب با فرض اعتماد به یک استقرار یا راه حل خاص باشد. این معماری ماژولار به این سکو اجازه می دهد تا برای سفارش CFT (تحمل به گسل تصادف) یا BFT (تحمل گسل بیزانس) به ابزارهای مستقر متکی باشد.
پارچه در حال حاضر اجرای سرویس سفارش CFT را بر اساس کتابخانه ETCD پروتکل RAFT ارائه می دهد. برای کسب اطلاعات در مورد خدمات سفارش دهنده در حال حاضر ، مستندات مفهومی ما در مورد سفارش را بررسی کنید.
همچنین توجه داشته باشید که اینها متقابل نیستند. یک شبکه پارچه می تواند دارای چندین سرویس سفارش دهنده باشد که از برنامه های مختلف یا الزامات برنامه پشتیبانی می کند.
عملکرد و مقیاس پذیری ¶
عملکرد یک بستر blockchain می تواند تحت تأثیر متغیرهای بسیاری از جمله اندازه معامله ، اندازه بلوک ، اندازه شبکه و همچنین منابع سخت افزاری موجود مانند CPU ، حافظه ، فضای دیسک ، دیسک و شبکه I/O قرار بگیرد.
نتیجه¶
هرگونه ارزیابی جدی از سیستم عامل های blockchain باید شامل پارچه هایپرلر در لیست کوتاه آن باشد.
در ترکیب ، قابلیت تمایز پارچه ، آن را به یک سیستم بسیار مقیاس پذیر برای blockchain های مجاز پشتیبانی می کند که از فرضیات اعتماد انعطاف پذیر پشتیبانی می کند که این پلتفرم را قادر می سازد تا از طیف گسترده ای از موارد استفاده از صنعت ، از دولت ، تا امور مالی ، تدارکات زنجیره تأمین ، مراقبت های بهداشتی و غیره پشتیبانی کند. خیلی بیشتر.
پارچه Hyperledger فعال ترین پروژه های Hyperledger است. ایجاد جامعه در اطراف این سکو به طور پیوسته در حال رشد است ، و نوآوری با هر نسخه پی در پی ، هر یک از سیستم عامل های blockchain سازمانی دیگر را به نمایش می گذارد.
تصدیق¶
قبلی از همسایگان مورد بررسی قرار گرفته است "پارچه هایپرلرگر: یک سیستم عامل توزیع شده برای blockchains مجاز" - الی آندرولاکی ، آرتم بارگر ، ویتا بورتنیکوف ، کریستین کاچین ، کنستانتینوس کریستیدیس ، آنجلو د کارو ، دیوید انیریت ، کریستوفر فریس ، ژننادی فریس ، ژنناندی لاونتمن ، یاکوو. ماویچ ، Srinivasan Muralidharan ، Chet Murthy ، Binh Nguyen ، Manish Sethi ، Gari Singh ، Keith Smith ، Alessandro Soiotti ، Chrysoula Stathakopoulou ، Marko Vukolic ، Sharon Weed Cocco ، Jason Yellick
© کپی رایت Hyperledger 2020-2022.
این کار تحت عنوان Creative Commons Attribution 4. 0 مجوز بین المللی تجدید نظر 48A3CCD7 مجوز دارد.
مدرسه فارکس معامله گر ایرانی...
ما را در سایت مدرسه فارکس معامله گر ایرانی دنبال می کنید
برچسب :
نویسنده : صالح پور مهروز
بازدید : <-PostHit->
تاريخ : سه
شنبه
29 فروردين
1402 ساعت: 18:56