این بخش ویژگیهای طراحی کلیدی بافته شده در Hyperledger Fabric را نشان میدهد که به قول خود مبنی بر یک راهحل بلاک چین سازمانی جامع و در عین حال قابل سفارشیسازی عمل میکند
Table of contents [Show]
تعاریف دارایی امکان مبادله تقریباً هر چیزی با ارزش پولی را در شبکه فراهم می کند، از غذاهای کامل گرفته تا اتومبیل های عتیقه و معاملات آتی ارز.
اجرای کد زنجیره ای از ترتیب تراکنش تقسیم می شود، سطوح مورد نیاز اعتماد و تأیید را در انواع گره ها محدود می کند و مقیاس پذیری و عملکرد شبکه را بهینه می کند.
دفتر کل غیرقابل تغییر و مشترک، کل تاریخچه تراکنش را برای هر کانال رمزگذاری میکند و شامل قابلیت جستجوی SQL مانند برای حسابرسی کارآمد و حل اختلاف است.
کانالها و مجموعههای دادههای خصوصی، تراکنشهای چندجانبه خصوصی و محرمانه را امکانپذیر میکنند که معمولاً توسط مشاغل رقیب و صنایع تحت نظارت که داراییها را در یک شبکه مشترک مبادله میکنند، مورد نیاز است.
عضویت مجاز یک شبکه بلاک چین قابل اعتماد را فراهم می کند، که در آن شرکت کنندگان می دانند که همه تراکنش ها می توانند توسط تنظیم کننده ها و حسابرسان مجاز شناسایی و ردیابی شوند.
یک رویکرد منحصر به فرد برای اجماع، انعطاف پذیری و مقیاس پذیری مورد نیاز برای شرکت را امکان پذیر می کند.
دارایی ها می توانند از دارایی های ملموس (املاک و سخت افزار) تا نامشهود (قراردادها و مالکیت معنوی) متغیر باشند. Hyperledger Fabric توانایی اصلاح دارایی ها را با استفاده از تراکنش های کد زنجیره ای فراهم می کند.
داراییها در Hyperledger Fabric بهعنوان مجموعهای از جفتهای کلید-مقدار نشان داده میشوند که تغییرات وضعیت بهعنوان تراکنشها در دفتر کل کانال ثبت میشود. دارایی ها را می توان به صورت باینری و/یا JSON نشان داد.
Chaincode نرمافزاری است که یک دارایی یا داراییها را تعریف میکند و دستورالعملهای تراکنش را برای اصلاح دارایی (ها) تعریف میکند. به عبارت دیگر، این منطق تجارت است. Chaincode قوانینی را برای خواندن یا تغییر جفتهای کلید-مقدار یا سایر اطلاعات پایگاه داده وضعیت اعمال میکند. توابع Chaincode در برابر پایگاه داده وضعیت فعلی دفتر اجرا می شوند و از طریق یک پیشنهاد تراکنش آغاز می شوند. اجرای کد زنجیرهای منجر به مجموعهای از نوشتههای کلید-مقدار (مجموعه نوشتن) میشود که میتواند به شبکه ارسال شود و در دفتر کل در همه همتایان اعمال شود.
می توانید دوره آموزش هایپرلجر فابریک را تهیه کنید.
دفتر کل رکورد متوالی و مقاوم در برابر دستکاری تمام انتقالات حالت در پارچه است. انتقال حالت نتیجه فراخوانی کد زنجیره ای (“معاملات”) ارائه شده توسط طرف های شرکت کننده است. هر تراکنش منجر به مجموعهای از جفتهای کلید-مقدار دارایی میشود که به عنوان ایجاد، بهروزرسانی یا حذف به دفتر کل متعهد میشوند.
دفتر کل از یک زنجیره بلوکی (“زنجیره”) برای ذخیره رکورد تغییرناپذیر و توالی شده در بلوک ها و همچنین یک پایگاه داده وضعیت برای حفظ وضعیت فعلی بافت تشکیل شده است. در هر کانال یک دفتر کل وجود دارد. هر همتا یک کپی از دفتر کل را برای هر کانالی که عضو آن است نگهداری می کند.
پیشنهاد ویژه: آموزش بلاکچین
Hyperledger Fabric از یک دفتر کل غیرقابل تغییر بر اساس هر کانال و همچنین کد زنجیره ای استفاده می کند که می تواند وضعیت فعلی دارایی ها را دستکاری و تغییر دهد (یعنی به روز رسانی جفت های کلید-مقدار). یک دفتر کل در محدوده یک کانال وجود دارد – می توان آن را در کل شبکه به اشتراک گذاشت (با فرض اینکه هر شرکت کننده در یک کانال مشترک فعالیت می کند) – یا می تواند خصوصی شود تا فقط مجموعه خاصی از شرکت کنندگان را شامل شود.
در سناریوی دوم، این شرکت کنندگان یک کانال مجزا ایجاد می کنند و در نتیجه معاملات و دفتر خود را جدا/تفکیک می کنند. به منظور حل سناریوهایی که میخواهند شکاف بین شفافیت کامل و حریم خصوصی را پر کنند، کد زنجیرهای را میتوان فقط روی همتاهایی نصب کرد که برای انجام خواندن و نوشتن نیاز به دسترسی به حالتهای دارایی دارند (به عبارت دیگر، اگر یک کد زنجیرهای روی همتا نصب نشده باشد. ، نمی تواند به درستی با دفتر کل ارتباط برقرار کند).
هنگامی که زیرمجموعهای از سازمانها در آن کانال باید دادههای تراکنش خود را محرمانه نگه دارند، از مجموعه دادههای خصوصی (مجموعه) برای جداسازی این دادهها در یک پایگاه داده خصوصی استفاده میشود که منطقاً جدا از دفتر کل کانال است که فقط برای زیرمجموعه مجاز سازمانها قابل دسترسی است.
بنابراین، کانالها تراکنشها را از شبکه گستردهتر خصوصی نگه میدارند در حالی که مجموعهها دادهها را بین زیر مجموعههای سازمانها در کانال خصوصی نگه میدارند.
برای مبهم کردن بیشتر داده ها، مقادیر درون کد زنجیره ای را می توان با استفاده از الگوریتم های رمزنگاری رایج مانند AES قبل از ارسال تراکنش ها به سرویس سفارش و الحاق بلوک ها به دفتر کل رمزگذاری کرد (قسمتی یا کلی). هنگامی که داده های رمزگذاری شده در دفتر کل نوشته شد، تنها توسط کاربری که کلید مربوطه را در اختیار دارد که برای تولید متن رمز استفاده شده است، می تواند رمزگشایی شود.
برای جزئیات بیشتر در مورد چگونگی دستیابی به حریم خصوصی در شبکه بلاک چین، به مبحث Private Data مراجعه کنید.
Hyperledger Fabric زیربنای یک شبکه تراکنشی است که در آن همه شرکت کنندگان دارای هویت شناخته شده هستند. زیرساخت کلید عمومی برای تولید گواهیهای رمزنگاری که به سازمانها، اجزای شبکه، و کاربران نهایی یا برنامههای مشتری مرتبط هستند، استفاده میشود. در نتیجه، کنترل دسترسی به داده ها را می توان در شبکه گسترده تر و در سطوح کانال دستکاری و کنترل کرد. این مفهوم “مجاز” از Hyperledger Fabric، همراه با وجود و قابلیتهای کانالها، به رسیدگی به سناریوهایی که حفظ حریم خصوصی و محرمانه بودن نگرانیهای اساسی است کمک میکند.
برای اطلاعات بیشتر به مبحث مدل امنیتی مراجعه کنید.
در فناوری دفتر کل توزیع شده، اجماع اخیراً مترادف با یک الگوریتم خاص، در یک تابع واحد شده است. با این حال، اجماع فراتر از توافق صرف بر سر ترتیب تراکنشها را شامل میشود، و این تمایز در Hyperledger Fabric از طریق نقش اساسی آن در کل جریان تراکنش، از پیشنهاد و تایید، تا سفارش، اعتبارسنجی و تعهد، برجسته میشود. به طور خلاصه، اجماع به عنوان تأیید دایره کامل صحت مجموعه ای از تراکنش های متشکل از یک بلوک تعریف می شود.
اجماع در نهایت زمانی حاصل می شود که ترتیب و نتایج تراکنش های یک بلوک با بررسی معیارهای خط مشی صریح مطابقت داشته باشد. این بررسیها و توازنها در طول چرخه حیات یک تراکنش انجام میشوند و شامل استفاده از سیاستهای تأیید برای تعیین اینکه کدام اعضای خاص باید یک کلاس تراکنش خاص را تأیید کنند، و همچنین کدهای زنجیرهای سیستم برای اطمینان از اجرا و حفظ این خطمشیها است. قبل از تعهد، همتایان از این کدهای زنجیرهای سیستم استفاده میکنند تا مطمئن شوند که تأییدیههای کافی وجود دارد و از موجودیتهای مناسب مشتق شدهاند. علاوه بر این، قبل از الحاق هر بلوک حاوی تراکنش به دفتر کل، یک بررسی نسخهسازی انجام میشود که طی آن با وضعیت فعلی دفتر موافقت یا موافقت میشود. این بررسی نهایی در برابر عملیات خرج مضاعف و سایر تهدیداتی که ممکن است یکپارچگی دادهها را به خطر بیندازند، محافظت میکند و اجازه میدهد تا توابع در برابر متغیرهای غیراستاتیک اجرا شوند.
علاوه بر انبوهی از تأیید، اعتبار و بررسی نسخهسازی که انجام میشود، تأیید هویت مداوم نیز در همه جهات جریان تراکنش انجام میشود. لیستهای کنترل دسترسی بر روی لایههای سلسله مراتبی شبکه پیادهسازی میشوند (سرویس سفارش به کانالها)، و بارها بهطور مکرر امضا، تأیید و احراز هویت میشوند که یک پیشنهاد تراکنش از اجزای مختلف معماری عبور میکند. در نتیجه، اجماع صرفاً محدود به ترتیب توافق شده مجموعه ای از معاملات نیست. بلکه یک توصیف کلی است که به عنوان یک محصول جانبی از راستیآزماییهای مداومی که در طول سفر معامله از پیشنهاد به تعهد صورت میگیرد، به دست میآید.