تماس با ما
 
بدان
 
امروز پنجشنبه ، ۱۳۹۹/۱۲/۱۴
 
کلیه مقالات

بررسی پروتکل های اجماع در Blockchain برای شبکه های IoT

A Survey on Consensus Protocols in Blockchain for IoT Networks

بررسی پروتکل های اجماع در Blockchain برای شبکه های IoT:

چکیده :

موفقیت blockchain به عنوان فناوری اساسی برای رمزنگاری ارز امکان استفاده در سایر حوزه های برنامه را نیز فراهم کرده است.

مهمترین مزیت blockchain برای استفاده احتمالی آن در سایر حوزه ها ، مکانیسم های امنیتی ذاتی آن و مصونیت در برابر حملات مختلف است.

یک blockchain برای توافق در مورد هر داده جدید به یک روش اجماع متکی است.

بسیاری از روشهای اجماع که در حال حاضر برای blockchain ارزهای مختلف رمزنگاری شده مورد استفاده قرار می گیرند ، به قدرت محاسباتی بالایی احتیاج دارند و بنابراین برای سیستم های محدود کننده منابع مناسب نیستند.

در این مقاله ، ما روشهای مختلف اجماع مبتنی بر blockchain را که برای منابع و شبکه های محدود اینترنت اشیاء کاربرد دارند ، مورد بحث و بررسی قرار می دهیم

یک شبکه IoT معمولی از چندین دستگاه تشکیل شده است که قابلیت محاسبات و ارتباطات محدود دارند.

اغلب این دستگاه ها نمی توانند محاسبات فشرده را انجام دهند و برای پهنای باند گرسنه می شوند.

بنابراین ، ما در مورد اقدامات احتمالی که می تواند برای کاهش قدرت محاسباتی و زمان همگرایی برای روش های اساسی اجماع مورد استفاده قرار گیرد ، بحث می کنیم.

ما همچنین در مورد برخی از گزینه های دیگر برای blockchain عمومی مانند blockchain خصوصی و tangle صحبت می کنیم ، همراه با پذیرش احتمالی آنها برای شبکه های IoT.

علاوه بر این ، ما روش های موجود اجماع را که اجرا شده است مرور می کنیم و امکان استفاده از آنها برای تحقق شبکه IoT مبتنی بر blockchain را بررسی می کنیم.

برخی از چالش های تحقیق باز نیز مطرح شده است.

مقدمه:

ما شاهد گسترش برنامه های کاربردی اینترنت اشیاء (IoT) در خانه ها ، دفاتر ، محله ها و شهرها هستیم.

اتخاذ فناوریهای مبتنی بر IoT برای تأثیرگذاری بر بخشهای مختلف زندگی روزمره ما از جمله انرژی ، تولید ، حمل و نقل هوشمند و شهرهای هوشمند تأثیر بسیاری دارد.

با استقرار هر چه بیشتر خودمختار سیستمهای IoT در مقیاس بزرگ ، تضمین امنیت ، در دسترس بودن و محرمانه بودن داده ها ، دستگاه ها و شبکه ها به شدت بحرانی می شوند [1].

برای تحقق یک شبکه IoT کاملاً مستقل ، سنسورها و دستگاه های مختلف (به طور کلی به عنوان "گره" شناخته می شوند) در یک شبکه IoT باید با روشی توزیع شده با یکدیگر ارتباط برقرار کنند.

این امر به مکانیسمی احتیاج دارد که گره های مختلف در یک شبکه IoT می توانند در مورد اعتبار هر اطلاعات ارتباطی توافق کنند.

یکی از بهترین راهها برای رسیدن به این هدف ، استفاده از یک روش اجماع است.

روش های مختلف اجماع وجود دارد که با استفاده از آنها گره های مختلف می توانند بدون مشارکت یک کنترل کننده مرکزی به یک تصمیم مشترک برسند [2].

روشهای اجماع به طور معمول نیاز به قابلیت های محاسباتی و ارتباطی بالایی دارند.

برخی وجود دارد که تقاضا کمتری دارند ، با این وجود تضمین های دقیقی در مورد ویژگی های عملکرد ارائه نمی دهند [3].

در مورد قابلیت های محاسباتی و ارتباطی دستگاه های IoT ، آنها معمولاً سیستم عامل محاسبات جاسازی شده کم مصرف هستند و قادر به انجام حداقل وظایف خود هستند.

بیشتر دستگاه های IoT جاسازی شده مجهز به میکروکنترلرهای 8 بیتی یا 16 بیتی با رم و ظرفیت ذخیره سازی بسیار کمی هستند و می توانند از طریق اترنت یا ارتباطات بی سیم کم مصرف مانند IEEE 802.15.4 به اینترنت وصل شوند [4].

این محدودیتهای منابع ، اجرای مستقیم پروتکل های اجماع سنتی در شبکه های IoT را دشوار می کند.

فن آوری های جدید مانند blockchain [3] و tangle [5] که از روش های اجماع برای پذیرش داده های جدید استفاده می کنند ، بسته به شرایط و محدودیت های دستگاه ها و شبکه های مختلف IoT ، امکان سفارشی سازی دارند.

در این مقاله به بررسی چگونگی عملکرد blockchain می پردازیم و استدلال می شود كه اجرای كامل blockchain (مانند بیت کوین و سایر ارزهای رمزنگاری شده) برای دستگاه ها و شبکه های IoT با استفاده مجدد از منابع غیر عملی است.

اگرچه blockchain از عملیات هش بسیار محاسباتی برای ارزهای رمزنگاری استفاده می کند ، چنین عملیاتی برای سیستم های غیر بحرانی ضروری نیست زیرا سیستم های محدودکننده منابع ممکن است مایل به تجارت برخی از سطح یکپارچگی داده ها برای پس انداز در محاسبات و مصرف انرژی باشند.

برای غلبه بر این مشکل ، blockchain های زنجیره ای خصوصی که امکان مشارکت کاربران معتبر را فراهم می کنند و در دسترس عموم نیستند ، پیشنهاد شده است.

این پیاده سازی های blockchain از روش های اجماعی استفاده می کنند که برای حل مشکلات هش به قدرت محاسباتی زیادی احتیاج ندارند.

با این حال ، از آنجا که آنها خصوصی هستند ، فقط کاربران معتبر می توانند به آنها دسترسی پیدا کنند.

ما جوانب مثبت و منفی اجرایهای مختلف را با هم مقایسه می کنیم و در مورد کاربرد آنها در شبکه های IoT بحث می کنیم.

ما برخی از چالش های تحقیقاتی را که برای استقرار گسترده شبکه های IoT مبتنی بر blockchain مورد نیاز است ، برجسته می کنیم.

بقیه مقاله به شرح زیر سازماندهی شده است.

در بخش دوم ، ما به طور خلاصه بحث می کنیم که blockchain چیست.

در بخش سوم ، بحث می کنیم که الزامات شبکه های IoT و همچنین محدودیتهای فناوریهای فعلی چیست.

در بخش چهارم ، ما به نحوه ایجاد blockchain برای شبکه های IoT با اصلاحات مناسب انگیزه می دهیم.

در بخش V ، روشهای مختلف اجماع را مورد بحث قرار می دهیم.

در بخش ششم ، ما به اجرای برنامه های موجود در blockchain می پردازیم و در مورد جوانب و منفی آنها بحث می کنیم.

در بخش VII ، برخی از چالش های تحقیق باز را مطرح می کنیم.

نتیجه گیری در آخرین بخش آورده شده است.

II- نمای کلی از بلاکچین:

یک blockchain یک پایگاه داده توزیع شده و مقاوم در برابر دستکاری است که هیچ موجودیتی آن را کنترل نمی کند ، اما همه قابل اشتراک و دسترسی هستند.

رکورد های جدید (به نام بلوک) تا زمانی که بلوک جدید توسط همه افراد در شبکه تأیید شود می توان به بلوک های موجود اضافه شد.

همچنین ، پس از ثبت بلوک ، اصلاح یا پاک کردن آنها امکان پذیر نیست.

Blockchains به گونه ای طراحی شده است که در شبکه غیرقابل اعتماد با اشخاص مخالف کار می کند.

با استفاده از الگوریتم های هش امن و پیچیده و محاسباتی فشرده ، blockchain به یکپارچگی داده ها دست می یابد که مانع از بین رفتن یا دستکاری داده ها و عدم اعتبار اطلاعات می شود.

این الگوریتم های فشرده محاسبه بخشی از اثبات کار است که روشی برای اجماع است که با استفاده از آن گره های مختلف در یک شبکه می توانند با داده های جدید توافق کنند یا ناهنجاری را تشخیص دهند.

با این حال ، روش های اجماع دیگری نیز وجود دارد که نیاز به محاسبات قابل توجهی پایین تر و سربار شبکه دارند که در بخش V به بررسی آنها خواهیم پرداخت.

اثبات کار یک روش اجماع گران قیمت است.

در این روش ، گره های مختلف در یک blockchain سعی می کنند به طور خاص یک عملکرد هش رمزنگاری ، SHA-256 را حل کنند.

SHA-256 یک هش با اندازه ثابت و ثابت 256 بیتی تولید می کند.

فرایند یافتن بلوک بعدی از طریق حل این مشکل هش معدنکاری نامیده می شود و به کاربرانی که این کار را انجام می دهند ماینر گفته می شود.

بلوک حل شده شامل معاملات ، هش بلوک قبلی ، عدم استفاده و مهر زمان است.

بعد از اینکه یک معدنکار مقدار معتبر معتبر پیدا کرد که این مشکل را حل می کند ، بلوک حل شده خود را منتشر می کند تا سایر معدنچیان از آن آگاه شوند.

در مرحله بعد ، سایر معدنچیان با استفاده از اطلاعات بلوک و اطلاعات مربوط به ادعای آن ، به عنوان ورودی برای عملکرد SHA-256 ، بلوک ادعا شده را تأیید می کنند.

اگر خروجی آن کمتر از مقدار مورد نظر باشد ، معدنکار آن را به عنوان یک بلوک معتبر قبول می کند و تمام تلاش خود را برای حل آن بلوک پس می گیرد و برای پیدا کردن بلوک بعدی حرکت می کند [6].

انگیزه کارگران معدن برای تأیید یک بلوک جلوگیری از صرف وقت و منابع محاسباتی در یک بلوک در حال حاضر حل شده است.

از طرف دیگر ، برای معدنچیان بسیار مهم است که کسی را پیدا کند که ضمن اعتبار یک بلوک جدید ، بلوک بعدی را پیدا کند.

آنچه ماینرها را از پذیرش یک بلوک جدید بدون تأیید اعتبار و استخراج بلوک بعدی خودداری می کند این است که هر زمان که blockchain یک بلوک نامعتبر را تشخیص دهد ، آن بلوک و تمام بلوک های ساخته شده بر روی آن را دور می کند.

وقتی بلوک های بیشتری روی آن ساخته شود ، یک بلوک اعتبار بیشتری می یابد.

این امر به عنوان تأیید در صفحه اصلی زنجیره های رمزنگاری شناخته شده است.

پس از تأیید چندین بار ، یک بلوک و معاملات موجود در آن قابل قبول تلقی می شود.

Blockchain تمام تراکنش های داده را در بلوک های زنجیر دار ذخیره می کند ، یعنی یک بلوک شامل چندین تراکنش است که توسط یک نشانگر هش به بلوک های قبلی مرتبط است [7].

این زنجیره تا بلوک اول استخراج شده در بلاکچین ادامه دارد که در بلاکچین بیت کوین توسط Satoshi Nakamoto استخراج شده است و بلوک Genesis نامیده می شود.

این معماری تغییر معاملات در کلوچین را غیرممکن می کند زیرا برای تغییر یک تراکنش ، لازم است کلیه بلوک های ساخته شده در آن معامله را در کمتر از 10 دقیقه تغییر دهید.

این تغییر ممکن است با بیش از نیمی از قدرت هش در جهان امکان پذیر باشد.

به عبارت دیگر ، برای افزودن یک بلوک به blockchain ، معدنکار باید مقدار مشخصی از عدم وجود برای هر بلوک را پیدا کند به گونه ای که مقدار هش آن بلوک کمتر از یک مقدار هدف خاص باشد.

این فرآیند از نظر ریاضی سخت و وقت گیر است زیرا تنها با جستجوی نیروی بی رحمانه می توان انجام داد و کارگران معدن باید برای دستیابی به مقدار هدف ، مقادیر مختلفی از موارد غیر تصادفی را امتحان کنند.

با این حال ، مخالفان می توانند با به دست آوردن کنترل بیش از 25٪ از قدرت محاسبات از طریق حمله ای که به عنوان استخراج معدن خودخواهانه انجام می شود ، بر عملکرد blockchain ارزهای رمزپایه مانند بیت کوین تأثیر بگذارند.

اگرچه این حمله نمی تواند تغییر ناپذیری blockchain بیت کوین را به خطر اندازد ، اما می تواند درآمد مخالفان را افزایش دهد.

الف - مثال مصور:

شکل 1 یک بلاکچین از 4 بلوک را نشان می دهد که هر یک از آنها شامل تعداد Block ، یک (عدد تصادفی) Nonce ، داده ها ، هش بلوک قبلی (به عنوان مثال ، Prev) و هش بلوک جریان (یعنی هش) است.

از آنجا که هیچ بلوکی قبل از بلوک 1 وجود ندارد ، هش قبلی روی همه 0 تنظیم شده است.

با شناختن تعداد بلوک ، داده ها و هش های قبلی ، هدف از یافتن نتیجه ای است که هش از همه کمتر از یک مقدار هدف باشد ، یعنی SHA-256 (Block #؛ Nonce؛ Data؛ Prev) مقدار هدف:

فرض کنید nonce found 42345 همانطور که در بلوک 1 نشان داده شده است.

مقدار هدف نشانگر سطح دشواری اثبات کار است.

به عبارت دیگر ، این مقدار هدف حکم می کند که خروجی 256 بیتی از عملکرد هش با تعداد معینی صفر متوالی شروع می شود.

در تصویر نشان داده شده است که همه هش ها با سه 0 شروع می شوند.

برای بلوک 2 ، همان فرآیند برای بدست آوردن عدم حضور با تعداد بلاک جدید و داده ها تکرار می شود.

همچنین ، Prev با Hash از بلوک قبلی به روز می شود.

باز هم ، ما مشاهده می کنیم که یک نتیجه متفاوت است و Hash با سه نتیجه 0 پیاپی شروع می شود.

لازم به ذکر است ، با کاهش مقدار هدف ، مشکل پیدا کردن عدم افزایش می یابد.

B- Blockchain خصوصی:

برخی از لینک های زنجیره ای طراحی شده توسط شرکت های مختلف برای برنامه های خاص با دسترسی محدود به عموم وجود دارد.

شناخته شده ترین بلاک های خصوصی بخشی از پروژه هایپرلدگر است که همکاری بسیاری از شرکت های مشهور و میزبان بنیاد لینوکس است.

دسترسی به این بلاکچین ها یا شرکت در پروتکل اجماع آنها مجاز و وابسته به شخص ثالث است.

بنابراین ، blockchain های خصوصی تا حدی متمرکز شده اند که مغایر با ایده اصلی عدم تمرکز blockchain و به طور کامل توزیع شده است.

با این حال ، این بلاکچین ها نیازهای محاسباتی کمتری دارند و زمان پاسخگویی سریعتر در شبکه وجود دارد که آنها را برای برنامه های IoT مطلوب تر می کند.

در برخی از بلاکچین های خصوصی ، برخی از گره ها دسترسی کاملی به تمام بلوک های ذخیره شده در blockchains دارند.

بنابراین ، بلوک های زنجیره ای خصوصی ، اطلاعات بیشتری را که مطابق مطلوب شرکت ها هستند ، حفظ حریم خصوصی می کنند.

به دلیل استفاده از پروتکل های رمزنگاری شبیه به blockchain های عمومی ، بلوک های زنجیره ای خصوصی نسبت به بانکهای اطلاعاتی سنتی ایمن تر هستند.

با این حال ، آنها به اندازه blockchain های عمومی که پروتکل های فشاری محاسباتی مانند اثبات کار دارند ، ایمن نیستند.

بنابراین ، امکان دستکاری داده های ذخیره شده در کلکسیون های خصوصی وجود دارد.

لازم به ذکر است که برخی از بلاکچین ها تا حدی خصوصی به نام blockchains کنسرسیوم وجود دارد.

در حالی که یک blockchain کاملاً خصوصی توسط یک شرکت واحد کنترل می شود ، کلک های زنجیره ای کنسرسیوم توسط چندین موسسه اداره می شوند که همگی مستقیماً در پروتکل اجماع شرکت می کنند.

تابلوهای زنجیره ای خصوصی می توانند از روش های مختلف اجماع مانند تحمل گسل بیزانس ، اثبات زمان سپری شده و اثبات سهام استفاده کنند که در بخش V مورد بحث قرار گرفته است.

بلاکچین های خصوصی و عمومی در شکل 2 با یکدیگر مقایسه می شوند.

III- IOT: اهمیت و محدودیت ها:

ما شاهد استفاده از شبکه های IoT در برنامه های مختلف داخلی ، صنعتی و نظامی هستیم.

ویژگی مشترک این شبکه های IoT این است که آنها از چندین حسگر و محرک تشکیل شده اند که دستگاه هایی با محدودیت منابع هستند که قادر به برقراری ارتباط بدون دخالت انسان هستند.

علاوه بر این دستگاه ها ، اشخاص شبکه دیگری نیز وجود دارند که سنسورها و محرک ها را به زیرساخت های شبکه ستون فقرات متصل می کنند.

اینها روترها ، سوئیچ ها ، جمع کننده ها و زیرساخت های ابری هستند که شامل سرورهای مجازی و انبارداری هستند - همه این موارد الزامات اولیه برای تهیه و اشتراک منابع را دیکته می کنند.

این الزامات شامل عضویت گروهی پویا و قابل اثبات در دستگاه ها ، تأیید صحت و یکپارچگی داده ها ، استحکام در برابر تک نقطه خرابی ، عملیات سبک وزن از نظر منابع و ارتباط کم با تأخیر است [9].

الف - خانه های هوشمند:

نمونه ای از شبکه IoT:

یکی از اولین استفاده های IoT ، اتوماسیون خانه ها و شهرهایی است که به عنوان خانه های هوشمند و شهرهای هوشمند یاد می شوند.

یک خانه هوشمند شامل ایجاد یک شبکه محلی متشکل از دستگاه های هوشمند مختلف ، سنسورها و کنتورهای داخل یک خانه است.

این شبکه از هر کجا برای ساکنان خانه از طریق اینترنت قابل دسترسی است.

یكی از اصلی ترین موانع تحقق این هدف ، امنیت داده های ذخیره شده و ذخیره شده در این شبکه در برابر اعمال شرورانه ای است كه می خواهند با خانه شخصی ویران شوند.

در یک شبکه خانگی هوشمند ، مقدار قابل توجهی از داده وجود دارد که در میان گره های مختلف رد و بدل می شود.

کنتورهای برق باید به تمام وسایل برقی موجود در خانه دسترسی داشته باشند.

مجبور است برای شارژ و تخلیه با خودروی هوشمند تعامل داشته باشد (در زمان اوج ، ممکن است از انرژی ذخیره شده در خودرو به عنوان پشتیبان تقاضای برق استفاده شود).

سیستم HVAC باید با ترموستات و سیستم های پیش بینی هوا ارتباط برقرار کند.

به همین ترتیب ، آتش نشانی سیگنال هایی را از آشکارسازهای دود دریافت می کند.

تمام این اتصالات ، از جمله ساکنان باید از راه دور به دستگاهها دسترسی پیدا کنند ، اگر داده ها به روشی مطمئن نیاز به تبادل داشته باشند.

علاوه بر این ، در یک خانه هوشمند ، نیاز به ذخیره تمام داده های ارتباطی در بین دستگاه ها و وضعیت فعلی هر دستگاه و سنسور برای تجزیه و تحلیل و تصمیم گیری بهتر وجود دارد.

به عنوان مثال ، داده های تاریخی به همراه عادت مصرف برق ساکن می توانند برای تصمیم گیری ها و توصیه های مربوط به صرفه جویی در مصرف انرژی استفاده شوند.

همچنین برخی از خانه های هوشمند می توانند بر اساس مشاهدات تاریخی پارامترهای دستگاه را بیاموزند و سازگار کنند.

در چنین مواردی ، سیاهههای مربوط به سیستم در یادگیری دقیق ، ساختن مدل ، تحلیل پیش بینی و تصمیم گیری بسیار مؤثر است.

لازم به تأکید نیست که داده های ذخیره شده باید در برابر حملات دستکاری داده مصون باشند.

با گسترش مفهوم خانه های هوشمند ، می توان از یک شهر هوشمند به عنوان شبکه بزرگی که به خانه های مختلف هوشمند ، سیستم های حمل و نقل هوشمند ، شبکه های هوشمند هوشمند ، وسایل نقلیه هوشمند و غیره وصل می شود ، تصور کرد.

ایمن سازی چنین شبکه بزرگی یک نگرانی بزرگتر است زیرا هرگونه آسیب پذیری در هر یک از شبکه های کوچکتر می تواند برای اجرای حملات بزرگتر با خسارات قابل توجه به اثرات آبشار مورد سوء استفاده قرار بگیرد.

در مقایسه با یک خانه هوشمند ، الزامات یک شهر هوشمند دقیق تر است و حتی به پیوندهای ارتباطی ایمن تر و پروتکل های ذخیره و تبادل داده نیاز دارد.

اگرچه بسیاری از فن آوری های رقیب وجود دارد که سعی در ایجاد ارتباطات ایمنی و ذخیره سازی داده ها در خانه های هوشمند در برابر حملات دارند ، اما blockchain احتمالاً امیدوار کننده ترین است.

در یک blockchain ، داده به دلیل پروتکل های اجماع اساسی تغییر ناپذیر است.

بنابراین ، حملات دستکاری بر روی داده های منتقل شده یا ذخیره شده از طریق یک گره به خطر افتاده قابل قبول نیستند و اکثر گره ها باید برای یک حمله موفقیت آمیز به خطر بیفتند.

مناسب بودن blockchain برای شبکه های IoT در بخش چهارم به تفصیل مورد بحث قرار گرفته است.

ب- فن آوری ها و محدودیت های فعلی IoT:

بسیاری از راه حل های IoT موجود به پارادایم متمرکز سرویس دهنده-مشتری متکی هستند که از طریق اینترنت به سرورهای ابری متصل هستند.

اگرچه این راه حل ها با توجه به رشد شبکه های IoT برای روزهای امروزی مناسب هستند ، اما تقاضای راه حل های جدید برای ایجاد غیر متمرکزتر شبکه وجود دارد [11].

یکی از راه حل های پیشنهادی ایجاد شبکه های حسگر بی سیم بزرگ به صورت همتا (P2P) است.

با این حال ، این راه حل به اندازه کافی به الزامات حفظ حریم خصوصی و امنیتی شبکه های IoT نمی پردازد [12] ، [13] ، [14].

در زیر برخی از چالش های اصلی برای اجرای IoT موجود است که باید برای استقرار در مقیاس بزرگ اتخاذ شود.

- هزینه بالا:

اکثر راه حل های IoT فعلی به ابرهای متمرکز و مزارع سرور احتیاج دارند که هزینه های بالایی را برای استقرار و نگهداری تحمیل می کنند.

همچنین ، این الزامات نیاز به واسطه هایی دارد که زیرساخت ها را متمرکزتر و پرهزینه تر می کند.

- نگهداری:

جدا از هزینه بسیار بالا مربوط به نگهداری میلیون ها دستگاه هوشمند در شبکه ، استفاده از به روزرسانی های نرم افزاری لازم برای همه این دستگاه ها بار سنگینی خواهد بود.

- حریم خصوصی:

برای استقرار گسترده شبکه های IoT ، کاربران باید در مورد حریم خصوصی و ناشناس بودن داده های خود اطمینان حاصل کنند.

برخی از شرکت ها به برخی از مقامات (یعنی دولت ها ، تولید کنندگان یا ارائه دهندگان خدمات) اجازه دسترسی و کنترل دستگاه های کاربران را می دهند.

- امنیت:

راه حل های IoT موجود از کدهای منبع بسته استفاده می کند که شفافیت لازم را برای کاربران فراهم نمی کند.

اجرای IoT در آینده نیاز به استفاده از کدهای منبع باز دارد تا همه کاربران بتوانند نرم افزار را حفظ و به روز کنند و این امر حساسیت کمتری نسبت به فعالیت های مخرب داشته باشد.

علاوه بر این ، پیاده سازی های فعلی IoT مستعد نقطه شکست هستند.

اگر یک سرور ابری با نقص فیزیکی یا نرم افزاری روبرو شود ، ممکن است بر کل عملکرد شبکه تأثیر بگذارد [15].

همچنین ، نقض در دستگاه منفرد متصل به یک سرور یا ابر می تواند با ارسال پیام های مخرب به سایر دستگاه ها ، نشت داده های شخصی یا دستکاری در داده های جمع آوری شده با کل سیستم از بین برود حملات انکار سرویس (DoS) را خراب کند. [16] ، [17] ، [18] ، [19].

داده های جمع آوری شده از دستگاه های مختلف توسط سیستم های واسطه ای که می توانند داده ها را دستکاری کنند ، ذخیره ، پردازش و ارسال می شوند.

علاوه بر این ، کانال های بی سیم مورد استفاده برای پخش داده ها غیر قابل اعتماد هستند که باعث می شود شبکه در معرض حملات جنجالی قرار گیرد [20].

تجزیه و تحلیل دقیق تر نقض امنیتی احتمالی در شبکه های IoT در [21] و [22] بررسی شده است.

از طرف دیگر ، کلیه اجرای blockchain دارای شبکه غیرمتمرکز است که برخی از محدودیت های فعلی IoT مانند هزینه و نگهداری بالا را از بین می برد.

علاوه بر این ، روش های اجماع ذاتی مورد استفاده در پیاده سازی های مختلف blockchain می توانند مسائل مربوط به حفظ حریم خصوصی و امنیتی را در شبکه های IoT که در بخش V بررسی شده اند ، برطرف سازند.

IV- BLOCKCHININ برای شبکه های IOT:

با توجه به الزامات دقیق شبکه های IoT ، به نظر می رسد که blockchain برای هر دو من مناسب است) امنیت شبکه در برابر حملات دستکاری که داده های ذخیره شده را هدف قرار می دهند و ب) تهیه یک بستر ایمن برای همه دستگاه های شبکه برای برقراری ارتباط با یکدیگر [23] ، [24]

بگذارید کمبودهای مدلهای فعلی و اینکه چه وعدههای blockchain را به الگوی IoT می آوریم ، بحث کنیم.

A- Client-Server vs P2P Model:

بیشتر شبکه های IoT که در حال حاضر استفاده می شوند مبتنی بر مدل سرور مشتری است که در آن همه دستگاه ها از طریق سرورهای ابری شناسایی شده ، تصدیق شده و به هم متصل می شوند که نیاز به مقدار بسیار زیادی از توانایی پردازش و ظرفیت ذخیره سازی دارند.

علاوه بر این ، تمام ارتباطات بین این دستگاه ها حتی اگر دستگاه های نزدیک به هم باشند باید از طریق اینترنت عبور کنند.

اگرچه چنین مدلی برای شبکه های IoT کوچک عملی است ، اما مقیاس خوبی ندارد.

علاوه بر این ، هزینه ایجاد تعداد زیادی از پیوندهای ارتباطی ، حفظ ابرهای متمرکز و شبکه سازی کلیه تجهیزات ، برای شبکه های IoT در مقیاس بزرگ قابل توجه است.

جدا از هزینه ها ، اتکا به سرورهای ابری باعث می شود تا معماری مستقل از نقطه ضعف باشد.

علاوه بر این ، دستگاه های IoT باید در برابر حملات اطلاعاتی و دستکاری جسمی مصون باشند.

اگرچه برخی از روشهای موجود دستگاه های IoT را ایمن می سازند ، اما برای دستگاههای IoT محدود به منابع با قدرت محاسبات محدود پیچیده و مناسب نیستند [9].

B- Blockchain برای منابع محدود شبکه IoT:

Blockchain یک شبکه همتا را ایجاد می کند که هزینه توزیع و نگهداری ابرهای متمرکز ، مراکز داده و تجهیزات شبکه را با توزیع نیازهای محاسباتی و ذخیره سازی در بین کلیه دستگاه های درون شبکه کاهش می دهد.

این الگوی ارتباطی تنها مسئله شکست را حل می کند.

Blockchain با استفاده از الگوریتم های رمزنگاری ، نگرانی های مربوط به حریم خصوصی شبکه های IoT را برطرف می کند.

همچنین با استفاده از لیدرهای مقاوم در برابر دستکاری ، مشکلات قابلیت اطمینان در شبکه های IoT را حل می کند [9].

علیرغم سازوکارهای داخلی که تضمین کننده یکپارچگی داده ها در سیستم های مبتنی بر blockchain است ، اجرای آن در شبکه های محدود شده IoT به دلایل زیر چالش برانگیز است.

اول ، محاسبه هش رمزنگاری به عنوان بخشی از روش اجماع ، محاسباتی است و سیکل های CPU عظیم را می طلبد.

دوم ، پیوندهای ارتباطی می توانند به تنگنا در تحویل معاملات به دیگران و گرفتن مجوزهای آنها تبدیل شوند.

در سیستم بی سیم محدود با تداخل ، وقتی همه دستگاه های IoT مجبورند برای پیوندهای رادیویی مشترک به رقابت بپردازند ، این مشکل حتی بیشتر می شود.

سوم ، شبکه های IoT متشکل از دستگاه های زیادی هستند که باید خیلی سریع و در همه زمان ها با یکدیگر ارتباط برقرار کنند.

این امر مستلزم اضافه کردن تعداد زیادی از بلوک های حاوی تعداد زیادی تراکنش در بلاک چین در هر ثانیه است که به روش های اجماع با تأخیر کم نیاز دارد.

به طور معمول ، سیستم های IoT با محدودیت منابع از انعطاف پذیری در الزامات عملکردی خود برخوردار هستند و آماده تجارت برخی از صحت داده ها برای صرفه جویی در محاسبات و مصرف انرژی هستند.

یکی از راه های دستیابی به این هدف ، آرامش اثبات کار به منظور کاهش نیازهای محاسبات است.

روش دیگر می تواند عدم حفظ همه بلوک ها باشد زیرا با افزایش تعداد بلوک ها ، به ذخیره بیشتری نیاز است.

در عوض ، آخرین بلوک l می تواند زنجیر شود و تمام محاسبات را می توان در آخرین بلوک های l انجام داد.

اگرچه چنین تکنیکی سطح یکپارچگی داده ها را که معمولاً توسط ارزهای رمزنگاری ارائه می شود ، حاصل نمی کند ، با این وجود تضمین می کند سطح حفاظت از داده کاهش می یابد.

روش های دیگر برای توانمندسازی blockchain برای شبکه های IoT با استفاده مجدد استفاده از روش های اجماع است که نیازهای محاسباتی قابل توجهی پایین تر ، سربار شبکه و همگرایی سریعتر دارند.

این روش ها در مرحله بعدی مورد بحث قرار می گیرد.

V- روشهای سازگاری:

چندین روش به خوبی تثبیت شده وجود دارد که توسط آنها گره های مختلف در یک شبکه blockchain می توانند در مورد یک بلوک جدید به اجماع برسند.

یک سیستم مبتنی بر blockchain به همان اندازه مطمئن و مستحکم است به عنوان روش اساسی اجماع آن.

شناخته شده ترین روش اجماع اثبات کار است (که در بخش II مورد بحث قرار می گیرد) که توسط بیت کوین استفاده می شود.

اثبات اثبات کار رویکرد مؤثر برای ارزهای رمزنگاری شده طی سالهاست.

با این حال ، به دلیل محاسبات زیاد و پهنای باند مورد نیاز ، به نظر نمی رسد برای شبکه های IoT عملی باشد.

بنابراین ، ما سایر روشهای اجماع موجود را ارائه می دهیم و در مورد امکان استفاده از آنها در شبکه IoT مبتنی بر blockchain بحث می کنیم.

سپس ، کلیه پروتکل های اجماع مورد بحث را در جدول I مقایسه می کنیم.

پروتکل های اجماعی که برای شبکه های IoT کاربرد ندارند یا صرفاً یک روش اجماع عمومی هستند ، مختصراً مورد بحث قرار می گیرند.

الف - اثبات کار (PoW):

برخی از روش های اجماع وجود دارد که بر اساس اثبات کار است.

در مورد بعدی بحث می شود.

1) اثبات ظرفیت (PoC):

اثبات ظرفیت مشابه PoW است اما به جای اینکه به قدرت محاسباتی معدنچیان بستگی داشته باشد ، به ظرفیت دیسک سخت آنها متکی است.

بنابراین ، از نظر استخراج ASICs که در PoW استفاده می شود ، به طور قابل ملاحظه ای مقرون به صرفه تر است.

در PoC ، کارگران معدن مجبورند مجموعه داده های عظیمی را که به عنوان توطئه ها شناخته می شود ، ذخیره کنند تا فرصتی برای معدنکاری بلوک بعدی بگیرند.

بنابراین ، با ذخیره قطعات بیشتر ، یک معدنچی احتمال بیشتری برای حل بلوک بعدی خواهد داشت [2].

زمان ایجاد بلوک در PoC 4 دقیقه است.

PermaCoin و SpaceMint دو ارز رمزپایه هستند که از PoC استفاده می کنند.

گذشته از تأخیر زیاد ، این روش برای شبکه های IoT جایی که دستگاه ها دارای ظرفیت ذخیره محدود هستند ، انتخاب منطقی نیست.

2) اثبات زمان سپری شده (شاعر):

اثبات زمان سپری شده روشی اجماعی است که توسط اینتل ارائه شده و مشابه PoW اما با مصرف انرژی قابل توجهی کمتر است.

در این روش ، کارگران معدن مجبور هستند یک مشکل هش مشابه با PoW را حل کنند.

اما ، به جای رقابت بین معدنچیان برای حل بلوک بعدی ، معدنکار برنده به طور تصادفی بر اساس زمان انتظار تصادفی انتخاب می شود.

معدنچی برنده کسی است که تایمر اول منقضی می شود.

تأیید صحت اجرای تایمر با استفاده از یک محیط اجرای مطمئن (TEE) مانند برنامه نگهبانی نرم افزار Intel (SGX) انجام می شود [25].

کاهش محتویات محاسباتی شاعران ، آن را دوستانه IoT می کند.

علاوه بر این ، تاخیر کم و توان زیاد آن باعث می شود شبکه های IoT مطلوب باشد.

نقطه ضعف اصلی این رویکرد وابستگی آن به اینتل است که با فلسفه اساسی blockchain کاملاً غیرمتمرکز در تضاد است.

B- اثبات سهام (PoS):

این شیوه رایج ترین اجماع در کلک های زنجیره ای است که پس از اثبات کار برای ارزهای رمزپایه استفاده می شود.

این روش مشابه اثبات کار است اما با تفاوت معنی داری.

برای حل بلوک بعدی در مسابقه بین گره ها القا نمی شود.

به جای رقابت بین گره ها برای حل بلوک بعدی ، یک گره با قرعه کشی برای حل بلوک بعدی انتخاب می شود.

گره ای که بلوک بعدی را معدن کند ، بر اساس سهم متناسب آن در شبکه انتخاب می شود که از نظر میزان رمزگذاری آن ثروت آن است.

گره انتخاب شده به جای حل یک مشکل پیچیده هش ، از یک امضای دیجیتال برای اثبات مالکیت خود بر سهام استفاده می کند.

در نتیجه ، این روش به قدرت محاسباتی بالایی احتیاج ندارد.

در این روش ، تمام سکه ها (یعنی رمزنگاری) از روز اول در دسترس هستند و هیچ پاداش معدن یا ایجاد سکه وجود ندارد و کارگران معدن فقط با مبلغ معامله پاداش می گیرند [2].

اگرچه این روش الزامات محاسباتی اثبات کار را از بین می برد ، اما مشکلات جدیدی را ایجاد می کند.

این روش به گره هایی با بیشترین میزان سهام وابسته است که به نوعی باعث می شود blockchain متمرکز شود.

علاوه بر این ، مشکل دیگری به نام "هیچ چیز در معرض خطر" وجود ندارد که به وضعیتی که گره انتخاب شده در صورت رفتار بد هیچ چیزی برای از دست دادن ندارد ، وجود دارد.

بنابراین ، هیچ چیز مانع از ایجاد یک گره نمی شود ، به عنوان مثال ، ایجاد دو مجموعه بلوک جدید برای به دست آوردن پاداش بیشتر برای هزینه های معاملات.

با این وجود برخی از اصلاحات برای مقابله با این مشکلات در این روش اعمال می شود.

اگرچه ، این روش به طور قابل توجهی الزامات محاسباتی اثبات کار را کاهش داده است ، اما هنوز برای شبکه های محدود شده IoT از نظر منابع رایج نیست.

علاوه بر این ، این روش و انواع آن (که در زیر مورد بحث قرار می گیرد) مبتنی بر مفاهیم پولی (سهام) است که در شبکه های IoT وجود ندارد.

1) اثبات تفصیلی سهام (DPoS):

این روش مبتنی بر اثبات روش اجماع سهام است.

برخلاف PoS که مستقیم دموکراتیک است ، این روش نماینده دموکراتیک است [3] ، بدین معنی که تمام ذینفعان رأی می دهند که برخی گره ها را به عنوان شاهد و نماینده انتخاب کنند.

شاهدان برای ایجاد بلوک های جدید مسئول و پاداش می گیرند.

نمایندگان وظیفه حفظ شبکه و پیشنهاد تغییراتی از قبیل اندازه بلوک ، هزینه تراکنش یا میزان پاداش را دارند.

در هر دور از انتخابات ، N شاهد با بیشترین آرا انتخاب می شوند.

N به گونه ای تعریف شده است که حداقل 50٪ از ذینفعان رای دهنده معتقدند عدم تمرکز کافی وجود دارد.

لازم به ذکر است که تعداد شاهدانی که هر یک از ذینفعان به آن رأی می دهند ، حداقل باید برابر با تعداد مورد نظر خود برای شاهد عدم تمرکز باشد.

در DPoS ، مکانیسم های داخلی برای کشف و رأی گیری نماینده یا شاهد بدخواه وجود دارد [2] ، [26] ، [27].

Bitshares ، یک رمزنگاری ، از DPoS استفاده می کند که نشان داده است به طور قابل توجهی توان و تأخیر را در مقایسه با PoS بهبود می بخشد ، اما با هزینه ساختن blockchain متمرکز تر است.

این دستگاه قادر به پردازش 100000 معاملات در هر ثانیه (TPS) است.

علاوه بر این ، یک بلوک در 1.5 ثانیه به طور متوسط ​​و حداکثر در 3 ثانیه به بلاکچین اضافه می شود [2] ، [26] ، [27].

اگرچه این ویژگی ها DPoS را برای شبکه های IoT بسیار جذاب می کند ، اما اصلی ترین تنگنای DPoS در شبکه های IoT وابستگی آن به مفاهیم پولی (سهام) برای انتخاب شاهد و نمایندگان است.

2) اثبات اجاره شده سهام (LPoS):

Leamed Proof of Stake مانند PoS کار می کند اما با پیشرفت هایی همراه است.

LPoS تلاش می کند تا مشکل مرکزیت را در PoS حل کند.

این گره ها را با تعادل کم می توانند با افزودن گزینه لیزینگ در تأیید بلوک شرکت کنند.

لیزینگ به صاحبان ثروت با تراز بالاتر اجازه می دهد تا برای مدت زمان مشخصی به گره هایی با مانده های پایین ، بودجه خود را اجاره دهند.

مبلغ اجاره ای در طول قرارداد اجاره دارایی ها در اختیار دارندگان ثروت خواهد بود ، با این وجود شانس حل بلوک برای گره ها با تعادل کم را افزایش می دهد.

وقتی این گرهها یک بلوک را حل کنند ، پاداش را به طور متناسب با دارندگان ثروت به اشتراک می گذارند.

این رویکرد باعث می شود blockchain با ساخت غیر متمرکزتر آن امن تر شود [28].

متأسفانه ، LPoS در زمینه IoT مفید نیست زیرا مبتنی بر مفاهیم پولی است که لزوماً برای شبکه IoT کاربرد ندارد.

3) اثبات اهمیت (PoI):

اثبات اهمیت اهمیت یک نسخه اصلاح شده از PoS است که در عوض در نظر گرفتن تعادل تنها گره ها برای تعیین گره برنده بعدی برای حل بلوک بعدی ، فاکتورهای بیشتری از جمله اعتبار گره را در نظر می گیرد که توسط یک سیستم خاص تعریف شده و عملکرد مشخص شده است. تعداد معاملات به آن گره یا از آن رخ داده است.

بنابراین ، این روش اجماع فعالیت شبکه تولید گره را در نظر می گیرد که از توازن تنها گره ها کارآمدتر باشد. [29]

NEM cryptocurrency از PoI برای اجماع استفاده می کند.

PoI بازده زیادی دارد و تأخیر نسبتاً کم دارد.

علاوه بر این ، نیازی به هزینه های کلیدی محاسباتی یا شبکه ای نیست.

این ویژگی ها PoI را برای شبکه های IoT مطلوب می کند.

با این حال ، PoI مانند سایر روشهای مبتنی بر PoS ، به مفاهیم پولی نیز وابسته است.

4) اثبات فعالیت (PoA):

اثبات فعالیت روشی ترکیبی از اجماع است که براساس اثبات کار و اثبات سهام انجام می شود [3].

اول ، معدنچیان سعی می کنند یک تابع هش را در یک رقابت حل کنند تا بلوک بعدی را نیز در اثبات کار پیدا کنند.

با این حال ، بلوک حل شده فقط حاوی یک سرصفحه و آدرس معدنچی بدون هیچگونه معامله است.

سپس ، معاملات به بلوک افزوده می شود و مطابق عنوان عنوان حل شده ، گروهی از معتبرین برای دستیابی به اجماع ، بلوک جدید را امضا می کنند.

این مرحله با استفاده از اثبات سهام انجام می شود.

این روش در مقابل حملات ایمن تر است اما می تواند تاخیر بالاتری را تجربه کند که ممکن است برای برنامه های IoT حساس به تأخیر قابل قبول نباشد.

5) کاسپر:

Casper یک پروتکل اجماع مبتنی بر PoS برای انتقال روش اجماع اتریوم از PoW به PoS است.

این یک پوشش روی زنجیره PoW موجود در Ethereum است [30].

با کاهش تعداد سهام مهاجم ، از حمله "هیچ چیز در خطر" جلوگیری می کند.

به عنوان قاعده انتخاب زنجیره ای در کاسپر ، از اصول سنگین مشاهده شده حریص (GHOST) استفاده می شود.

GHOST به عنوان جایگزینی برای طولانی ترین قاعده زنجیره ای استفاده شده در بیت کوین بیت کوین ارائه شده است.

در شبکه های blockchain به دلیل تأخیر در شبکه ، امکان چنگال وجود دارد.

در این موارد ، طولانی ترین زنجیره به عنوان زنجیره اصلی انتخاب می شود و سایر شاخه ها نیز نادیده گرفته می شوند.

در پروتکل GHOST ، در هر چنگال ، سنگین ترین زیر درخت که در چنگال ریشه دارد در زنجیره انتخاب می شود [31] ، [32].

این روش مزایای قابل توجهی برای ارزهای رمزنگاری از نظر امنیتی و تأخیر ایجاد می کند.

با این حال ، آنها برای مقابله با چالش های IoT در مقایسه با روش PoS ساده لوحی کافی نیستند.

6) اثبات سوختگی (PoB):

اثبات سوزاندن سوخت بر پایه سکه های سوزان است که به ارسال سکه به آدرس غیرقابل بازگشت است.

کارگران معدن در اولویت حل بلوک بعدی با توجه به میزان سکه ای که آنها سوزانده اند [2].

اگرچه این روش برای طراحی ارزهای رمزنگاری عملی است ، اما برای برنامه های IoT مناسب نیست زیرا این روش وابسته به وجود یک چارچوب پولی و سوزاندن سکه ها است که هیچکدام از آنها ذاتی در یک شبکه IoT نیست.

رمزنگاری به نام Slimcoin از PoB استفاده می کند.

ج- روشهای توافق بیزانس:

این روشهای اجماع مبتنی بر مسئله ژنرالهای بیزانس است.

خلاصه اینکه ، این مشکل با یک روش اجماع بین ژنرالهای بیزانس در مورد استراتژی حمله روبرو می شود با این فرض که ممکن است برخی از ژنرال ها خیانتکار باشند و سعی کنند اقدامات خیانتکارانه ای انجام دهند تا جلوی ژنرال های وفادار به یک اجماع و تسخیر شهر را بگیرد.

سناریوی این مشکل در شکل 3 نشان داده شده است.

موارد زیر روش های اجماع مبتنی بر توافق بیزانس است.

1) تحمل گسل بیزانس عملی (PBFT):

در این روش ، همه گره ها باید در فرایند رای گیری شرکت کنند تا بلوک بعدی اضافه شود و اجماع هنگامی حاصل می شود که بیش از دو سوم همه گره ها در مورد آن بلوک به توافق برسند.

PBFT می تواند رفتارهای مخرب را تا یک سوم همه گره ها تحمل کند تا به طور عادی انجام شود.

به عنوان مثال ، در سیستمی با یک گره مخرب ، حداقل باید 4 گره وجود داشته باشد تا به یک اجماع صحیح برسیم.

در غیر این صورت ، اجماع حاصل نمی شود.

در این روش ، اجماع سریعتر و اقتصادی تر به اثبات می رسد.

همچنین ، برای شرکت در فرآیند اجماع نیازی به داشتن دارایی های مشابه اثبات سهام (2) نیست.

این روش برای blockchain های خصوصی مانند پروژه های Hyperledger که توسط شخص ثالث کنترل می شوند ، مناسب است.

با این حال ، به دلیل مقیاس پذیری محدود و تحمل نسبتاً کم نسبت به فعالیت های مخرب ، بهترین گزینه برای زنجیره های مجاز و عمومی نیست.

PBFT دارای توان بالا ، تأخیر کم و سربار محاسباتی کم است - همه اینها برای شبکه های IoT مطلوب هستند.

با این حال ، سرور بالای شبکه آن را برای شبکه های بزرگ غیرقابل مقیاس می سازد ، بنابراین می تواند فقط برای شبکه های IoT کوچک استفاده شود.

2) تحمل تقصیر بیزانس (dBFT):

تحمل گسل بیزانس تفویض قوانین مشابه PBFT را دنبال می کند ، اما برای اضافه کردن یک بلوک که باعث مقیاس پذیری آن می شود ، نیازی به مشارکت همه گره ها نیست.

در dBFT ، بعضی از گره ها به عنوان نماینده گره های دیگر انتخاب می شوند و طبق برخی از قوانین ، پروتکل اجماع مشابه PBFT را دنبال می کنند [3].

رمزنگاری به نام NEO از این روش اجماع استفاده می کند.

شکل- 3- مشکل بیزانس با 3 ژنرال.

PBFT تنها می تواند فعالیت های مخرب را با کمتر از 1/3 گره تحمل کند.

در این مثال ، ژنرال 3 خائن است که می تواند در صورت داشتن نظرات متفاوت با ارسال تصمیمی متفاوت از تصمیمات خودشان ، ژنرال های وفادار را به نتیجه برساند.

در اینجا ، ژنرال وفادار 1 تصمیم به حمله می گیرد و ژنرال وفادار 2 تصمیم به عقب نشینی می دهد.

خائن عمومی 3 از فرصت ایجاد شده از تضاد عقاید ژنرالهای وفادار استفاده می کند و دو پیام مختلف حاوی یک تصمیم را بر خلاف تصمیمات خود برای آنها ارسال می کند.

بنابراین ، براساس پیامهای دریافت شده ، ژنرال 1 تصمیم به عقب نشینی و ژنرال 2 تصمیم به حمله می گیرد.

این روش دارای بسیاری از ویژگی های مطلوب شبیه به PBFT است.

با این حال ، میانگین تاخیر آن برای ایجاد بلوک 15 ثانیه است که برای یک شبکه IoT قابل قبول نیست.

3) پروتکل اجماع ستاره ای (SCP):

پروتکل اجماع ستاره ای خدمات مالی خرد را روی سکوی blockchain ارائه می دهد.

این پیشنهاد توسط Mazieres با استفاده از یک نوع PBFT به نام تحمل گسل بیزانس فدرال (FBFT) به عنوان ستون فقرات انجام شد [33].

در FBFT ، گره های متعلق به گروه های تلاقی (یعنی فدراسیون ها) پروتکل اجماع محلی را در بین اعضای خود اجرا می کنند [34].

این روش غیر متمرکز است و برای عموم آزاد است که به همه امکان می دهد در پروتکل اجماع شرکت کنند.

این تاخیر بسیار کم شبیه به معاملات وب (حداکثر چند ثانیه) دارد.

این اولین روش اجماع مبتنی بر توافق بیزانس است که حداکثر آزادی انتخاب را در میان ترکیب های مختلف سایر شرکت کنندگان برای اعتماد به نفس برای دستیابی به اجماع فراهم می کند.

SCP از طریق برش های سهمیه به استحکام می رسد.

quorum مجموعه ای از گره ها است که در پروتکل اجماع شرکت می کند و یک قطعه quorum زیر مجموعه آن است که به یک گره در روند توافق خود کمک می کند.

تصمیمات مربوط به اعتماد فردی که توسط شرکت کنندگان در blockchain گرفته می شود ، یک قطعه سهمیه را ایجاد می کنند ، و برش های کوئوروم کل شبکه را به روشی مشابه متصل می کنند زیرا شبکه های همکار اینترنت را با اتصال به یکدیگر ایجاد می کنند.

لازم به ذکر است که سهمیه ها توسط گره های درگیر در معاملات انتخاب می شوند.

SCP از دو مرحله تشکیل شده است:

پروتکل نامزدی و پروتکل رای گیری.

ابتدا پروتکل نامزدی اجرا می شود.

در این مرحله ، مقادیر جدیدی به نام مقادیر نامزد برای توافق پیشنهاد می شوند.

این مقادیر به تمام گره های موجود در حد نصاب فرستاده می شوند و هر یک از آنها درمورد ارزش های نامزد ، به یک مقدار واحد رأی می دهند.

در پایان فرآیند ، ارزشهای یکدست برای آن شکاف انتخاب می شوند.

سپس ، پروتکل رای گیری آغاز می شود که شامل رأی گیری فدراسیون می شود تا مقادیر بدست آمده در پروتکل نامزدی را بپذیرد یا آن را قطع کند.

سرانجام ، آراء مربوط به شکاف فعلی نهایی می شود و رأی های متوقف شده حذف می شوند.

در شرایطی که گره ها برای سقط جنین یا ارتکاب یک ارزش نمی توانند به اجماع برسند ، یک رأی با ارزش بالاتر آغاز می شود که می تواند به عنوان اجرای جدید پروتکل رای گیری در نظر گرفته شود [33] ، [35].

توان بالا و نیازهای محاسباتی کم این روش برای شبکه های IoT مطلوب است.

اگرچه زمان تاخیر نسبتاً کم است ، اما به ترتیب میلی ثانیه نیست که برای شبکه های IoT لازم باشد.

اگر می توان با کاهش سربار شبکه (که O (N) است) تأخیر این روش را کاهش داد ، این روش می تواند انتخاب مناسبی برای شبکه های IoT باشد.

4) موج دار:

Ripple ، مشابه Stellar ، از روش اجماع FBFT استفاده می کند.

پیشنهاد شده است تا زمان تأخیر blockchain ها کاهش یابد [36].

در این روش غیر متمرکز ، هر معدنچی از یک زیر مجموعه قابل اعتماد از گره ها در شبکه بزرگتر استفاده می کند تا به یک اجماع برسد.

دو نوع گره در شبکه وجود دارد:

گره های سرور که مسئول پروتکل اجماع و گره های مشتری هستند که فقط وجوه را منتقل می کنند.

هر گره سرور شامل یک لیست گره منحصر به فرد (UNL) است.

گره های داخل UNL برای دستیابی به اجماع در مورد معاملات جدید استفاده می شوند.

هنگامی که 80٪ از گره های داخل UNL بر سر معامله توافق کنند ، اجماع حاصل می شود.

پروتکل اجماع ریپل برای دستیابی به اجماع در مورد معاملات جدید ، هر چند ثانیه توسط همه گره ها اجرا می شود.

ریپل می تواند تا 20٪ گره های معیوب را در UNL تحمل کند [37].

این روش بیشتر برای مقاصد پولی مورد استفاده قرار می گیرد تا معاملات بدون هزینه بازپرداخت انجام شود.

این ویژگی دارای ویژگی های مشابه Stellar است که در صورت کاهش زمان تأخیر آن به ترتیب میلی ثانیه ، آن را به عنوان کاندیدای خوب شبکه های IoT تبدیل می کند.

5) طرحی:

Tendermint متعلق به خانواده ای از پروتکل های اجماع بیزانس است که می توانند میزبان حالات خودسرانه برنامه باشند [39].

این یک روش اجماع مجاز است [37].

برخلاف PBFT که هر گره از قدرت رای گیری برابر برخوردار است ، در گره های Tendermint قدرت رای گیری متفاوتی وجود دارد که متناسب با سهام آنهاست [34].

بنابراین می توان آن را به عنوان یک روش اجماع ترکیبی مبتنی بر PBFT و PoS در نظر گرفت.

Tendermint می تواند فعالیت های مخرب را از حداکثر یک سوم کل قدرت رای گیری بیزانس تحمل کند [40].

شرکت کنندگان در پروتکل Tendermint معتبر نامیده می شوند که بلوک معاملات را پیشنهاد می کنند و به نوبه خود به آنها رأی می دهند.

روند رای گیری شامل دو مرحله است:

پیش رأی دادن و پیش تعهد.

هنگامی که بیش از دو سوم اعتبارگرها در همان دور پیش از این اقدام به یک بلوک کردند ، بلوکی به بلاکچین اضافه می شود.

برخلاف PBFT ، معتبرها بر اساس PoS با قفل سکه های خود انتخاب می شوند و معتبرترین مجازات ها مجازات می شوند [42].

بنابراین ، این روش به مفاهیم پولی مانند PoS متکی است که لزوماً برای شبکه های IoT کاربرد ندارد.

با توجه به مقیاس پذیری بالا ، توان بالا و تأخیر کم ، در صورتی که مفهوم پولی با معیارهای دیگری جایگزین شود ، می توان این روش را برای شبکه های IoT ایجاد کرد.

6) ByzCoin:

ByzCoin یک اجماع بیزانس است که از یک پروتکل امضای جمعی به نام CoSi [43] برای انجام معاملات بیت کوین در عرض چند ثانیه استفاده می کند و PBFT را مقیاس پذیر می کند.

همچنین PBFT را اصلاح می کند تا با حمایت از عضویت پویا متناسب با PoW مانند بیت کوین ، یک blockchain عمومی را فعال کند.

در این روش از یک پروتکل ارتباطی با ساختار درخت استفاده می شود که باعث کاهش چشمگیر پنهان کاری بیت کوین می شود.

با این حال ، در برابر حملات DoS آسیب پذیر است [44].

این روش دارای بازده بالاتر از شبکه پی پال با تأخیر تأیید 15-20 ثانیه است [44].

اگرچه مقیاس پذیری و توان این روش برای شبکه های IoT مطلوب است ، تأخیر آن فراتر از حد قابل قبول شبکه های IoT است.

علاوه بر این ، PoW استفاده شده در این روش شبیه به بیت کوین است [44] که مجدداً مناسب دستگاه های IoT نیست.

D- روشهای مبتنی بر VRF:

در روش های مبتنی بر عملکرد تصادفی قابل تأیید (VRF) ، اعضای کمیته بطور تصادفی برای شرکت در پروتکل اجماع انتخاب می شوند [45].

الگورند و Dfinity دو روش هستند.

1) الگورند:

الگوراند یک اجرای بلاکچین جدید و غیر مجاز است که از پروتکل اجماع خالص سهام (PPoS) ساخته شده با توافق بیزانس استفاده می کند [46].

الگورند به عنوان یک رمزنگاری جدید برای رفع محدودیت های اجرای موجود پیشنهاد شده است:

عدم تمرکز ، مقیاس پذیری و امنیت.

اکثر پیاده سازی های موجود در blockchain تا حدی متمرکز شده اند. یعنی در یک شبکه بیت کوین ، کاربران دارای بالاترین توان هش شبکه را کنترل می کنند.

با این حال ، در الگورند ، هر بلوک توسط کمیته منحصر به فردی از کاربران که بطور تصادفی توسط VRF ها با روشی خصوصی و غیر تعاملی با استفاده از کلید خصوصی کاربران و اطلاعات عمومی از blockchain انتخاب می شوند ، تأیید می شود.

بنابراین ، کاملاً غیرمتمرکز است.

این انتخاب براساس وزن کاربران تعیین شده با توجه به میزان پول در حساب آنها است.

این مرحله براساس اثبات سهام (47) است.

پس از انتخاب اعضای کمیته ، کمیته با استفاده از یک پروتکل توافقنامه بیزانس به نام BA؟

پروتکل های تحمل خطای بیزانس موجود ، نیاز به مجموعه ای ثابت از سرورها دارند که زودتر از آنها مشخص شود ، این امر باعث می شود آنها در برابر حملات سیبیل آسیب پذیر باشند ، جایی که یک مخالف نام مستعار زیادی ایجاد می کند تا روی پروتکل توافق بیزانس تأثیر بگذارد.

علاوه بر این ، آنها به تعداد زیادی از کاربران مقیاس نمی دهند.

با این حال ، BA؟ خطر حملات Sybil را از بین می برد و می تواند به دلیل اولین قدم موجود در الگورند برای میلیون ها کاربر مقیاس داشته باشد.

کارشناسی؟ می تواند تا 1/3 از کاربران دارای وزنه برداری (1/3 از پول متعلق به کاربران) را تحمل کند تا مانند سایر روشهای مبتنی بر BFT مخرب باشند.

با این حال ، به دلیل استفاده از VRF های تصادفی انتخاب شده در مرحله اول ، مخالفان نمی دانند تا زمانی که شروع به شرکت در BA کنند ، به کدام کاربر حمله کنند؟ که امنیت پروتکل اجماع را به میزان قابل توجهی افزایش می دهد [47].

اشکال اصلی الگورند این است که تصادفی مورد استفاده در تولید دانه های VRF می تواند توسط یک طرفدار مغرضانه باشد.

برای رفع این کمبود ، از یک مکانیزم نگاه به عقب برای اطمینان از همزمانی قوی و دانه های بی طرف استفاده می کند.

با این حال ، این باعث می شود شبکه در برابر حمله "هیچ چیز در معرض خطر" قرار نگیرد [48].

زمان تاخیر الگوراند کمتر از یک دقیقه با نهایی بودن معاملات حدود یک دقیقه است.

این ویژگی برای رمزنگاری بسیار مطلوب است.

به عنوان مثال ، در شبکه بیت کوین برای رشد یک زنجیره توسط یک بلوک حدود 10 دقیقه زمان لازم است و برای اطمینان از نهایی بودن معاملات (معامله بر روی یک زنجیره معتبر) باید 6 بلوک صبر کنید.

امکان چنگال در الگورند نیز وجود ندارد [46] ، [47].

اگرچه الگوراند افق روشنی را برای اهداف مالی مطرح می کند ، اما فاقد چندین ویژگی برای موفقیت در شبکه های IoT است.

الگورند برای تعیین اینکه آیا آنها برای شرکت در پروتکل اجماع انتخاب شده اند ، نیازی به برقراری ارتباط بین کاربران ندارد.

همچنین برای محاسبه پازل های رمزنگاری شده ، منابع محاسباتی فرض نمی شود.

این خصوصیات در کنار عدم تمرکز ، مقیاس پذیری بالا و امنیت بالا از ویژگی های جذاب الگورند برای IoT است.

با این حال ، یک شبکه IoT به تأخیر کمتر از ثانیه (به ترتیب میلی ثانیه) نیاز دارد.

علاوه بر این ، هیچ مفهوم پولی در یک شبکه IoT برای تعریف سهام و تعیین وزن وجود ندارد.

2) Dfinity:

blockfain Dfinity یک پروتکل اجماع چهار لایه را ارائه می دهد که می تواند برای شبکه های مجاز استفاده شود یا با روش های مقاومت سیبیل (مثلاً اثبات کار یا اثبات مشارکت) برای شبکه های غیر مجاز و زوج استفاده شود.

مهمترین ویژگی Dfinity حاوی چراغ تصادفی غیر متمرکز است که به عنوان VRF ها برای تولید خروجی تصادفی به عنوان دانه عمل می کند.

این پروتکل جدید VRF بر اساس یک طرح امضایی آستانه دوستانه DKG منحصر به فرد ، غیر تعاملی و دوستانه استوار است که مشکل سکه مغرضانه و مشکل "هیچ چیز در معرض خطر" را که در الگورند وجود دارد حل می کند.

اجماع Dfinity نیز در برابر حملات خودخواه معدنکاری مصون است [49].

Dfinity پس از دو تأیید می تواند در مورد یک بلوک جدید به توافق برسد و نهایی بودن معاملات.

مشابه الگورند ، این تأخیر زیاد برای برنامه های IoT قابل قبول نیست.

E- روش های مبتنی بر خرد کردن:

Shading در حال تقسیم سرنوشت معاملات پردازش در بین گروههای کوچکتر و کوچکتر به نام shards است [48].

این روش ها در ابتدا برای رفع مشکلات مقیاس پذیری در blockchain پیشنهاد شده است.

Shards به طور موازی کار می کنند تا عملکرد کلوچین (پردازش معاملات بیشتر در هر دور اجماع) را به حداکثر برساند و با برش دادن سربارهای مختلف شبکه blockchain از جمله ارتباطات ، محاسبه ها و سربرگ های ذخیره سازی.

روش های جدیدترین روش سایه بان در زیر بحث شده است.

1) RSCoin:

RSCoin یک چارچوب cryptocurrency است که برای رمزنگاری بانکی مرکزی برای حفظ کنترل کامل بر عرضه پولی با استفاده از مجموعه توزیع شده از مقامات به نام mintettes (گره های معتبر) پیشنهاد شده است.

این روش از رویکرد مبتنی بر سایه زنی استفاده می کند تا ضمن حفظ قابلیت مقیاس پذیری شبکه ، سیستم های بانکی سنتی (با عرضه پولی متمرکز) از طریق شبکه توزیع شده شفاف تر شود.

Danezis و Meiklejohn ادعا می کنند که چارچوب آنها از هزینه های مضاعف جلوگیری می کند [50].

با این حال ، پروتکل متعهد دو فاز آن ، تحمل تقصیر بیزانسی نیست و مستعد حملات دو برابری توسط یک مخالف تبانی است [48].

علاوه بر این ، این چارچوب همانطور که ادعا می شود غیرمتمرکز است زیرا از یک منبع اطمینان تصادفی برای خرد کردن متکی است.

اگرچه این فریم ورک دارای تأخیر بسیار کمی (به ترتیب میلی ثانیه) و توان زیاد [50] است ، اما برای شبکه های IoT کاربرد ندارد.

بیشتر متمرکز و مبتنی بر عرضه پولی متمرکز است که جایی در یک شبکه IoT ندارد.

2) الاستیکو:

این اولین پروتکل اجماع مبتنی بر سایه زنی است که برای بلاکچین های عمومی و غیر مجاز پیشنهاد شده است که از ترکیبی از پروتکل اجماع بیزانس کلاسیک (به عنوان مثال ، PBFT) و اثبات کار برای بهبود blockchain بیت کوین استفاده می کند.

این شبکه را به کمیته های کوچکتر تقسیم می کند که مجموعه معاملات را جدا می کنند.

تعداد کمیته ها در کل توان محاسباتی شبکه تقریباً بصورت خطی رشد می کند.

هر کمیته شامل تعداد کمی از گره ها است که با استفاده از اجماع کلاسیک بیزانس به توافق بر سر مجموعه معاملات خود (بخش) می پردازند.

در هر دور از اجماع ، این کمیته ها با استفاده از کمترین بیت های PoW که توسط هر گره حل معمای PoW بر اساس تصادفات دوره اجماع حاصل از آخرین وضعیت blockchain به دست آمده است ، انتخاب می شوند.

اگرچه این روش می تواند باعث تأخیر و کارآیی blockchain بیت کوین شود ، اما با چندین محدودیت روبرو است:

(i) هنوز از ارتباطات گسترده ای که برای شبکه های IoT مشکل ساز است رنج می برد.

(ب) اتفاقی که در هر دوره اجماع به کار می رود می تواند توسط یک طرف مقابل تعصب داشته باشد که روند انتخاب کمیته را به خطر می اندازد.

(iii) در حالی که هر گره وظیفه تأیید یک زیر مجموعه از معاملات (یک بخش) را دارد ، اما هنوز هم باید همه بلوک ها را به گره های دیگر پخش کرده و کل دفترخانه را که مربوط به خطوط ارتباطی و دستگاه های IoT با محدودیت منابع نیست ، ذخیره کند.

(IV) فقط می تواند تا 1/4 گره معیوب را تحمل کند [48].

متأسفانه ، الاستیکو به چند دلیل برای اجرای IoT عملی به نظر نمی رسد:

(i) ضمن بهبود زمان تاخیر بیت کوین ، تأخیر هنوز به اندازه کافی برای شبکه های IoT است.

(ii) ارتباطات بسیار بزرگی دارد.

(iii) مورد نیاز ذخیره سازی حداقلی نیست.

(IV) هنوز مسائل امنیتی وجود دارد.

3) OmniLedger:

OmniLedger یک پیاده سازی blockchain مجاز و عمومی است که از VRF ها استفاده می کند و با یک پروتکل اجماع مبتنی بر ByzCoin به نام ByzCoinX استفاده می کند.

این پیشنهاد توسط Kokoris-Kogias et.al.to ارائه شده است تا به برخی از محدودیت های الاستیکو ، خصوصاً تأخیر و مقیاس پذیری بپردازد.

ByzCoinX به منظور افزایش تحمل آن در برابر حملات DoS ، قسمت PBFT ByzCoin را بهبود می بخشد.

در طی هر دوره اجماع ، فرایند انتخاب کمیته توسط VRF ها به روشی مشابه الگوریتم قرعه کشی الگوراند انجام می شود.

این کمیته ها در مورد یک زیر مجموعه از معاملات (یک بخش) به اجماع می رسند.

مشابه الاستیکو ، فقط تا 4/4 گره معیوب را تحمل می کند.

هنگامی که کمتر از 1/8 گره معیوب وجود داشته باشد ، این روش می تواند به تأخیر نسبتاً کم (کمتر از 10 ثانیه) برسد [52].

گذشته از تأخیر نامطلوب این پروتکل برای شبکه های IoT و مسائل امنیتی آن ، این روش یک سرور ارتباطی بزرگی را ایجاد می کند که در دستگاه های IoT دارای محدودیت منابع قابل اجرا نیست.

در پروتکل اجماع OmniLedger ، هر کمیته برای هر بلوک معامله باید با همه گره ها ارتباط برقرار کند.

علاوه بر این ، ارتباط اصلی دیگری نیز هنگام تولید بذر تصادفی برای VRF وجود دارد [48].

با این حال ، OmniLedger فراهم می کند سربار ذخیره سازی کم از آنجا که معتبر لازم نیست تاریخچه کامل معاملات را که به نفع دستگاه های IoT است ذخیره کند [52].

4) RapidChain:

RapidChain برای حل محدودیتهای موجود در روشهای اجماع مبتنی بر خرد کردن از جمله سربار ارتباطی ، امنیت ، مقیاس پذیری و تأخیر پیشنهاد شده است.

بر خلاف سایر روش های مبتنی بر خرد کردن که تحمل محدود به گسل های بیزانس دارند ، می تواند تا یک سوم از گره های معیوب را تحمل کند و هیچ گونه راه اندازی قابل اعتماد نداشته باشد.

RapidChain اولین blockchain عمومی است که سایه بان کامل را ارائه می دهد:

ارتباطات ، محاسبه و ذخیره سازی سربار.

این روش با رفع نیاز به میزان خطی ارتباطات برای هر تراکنش ، تاخیر و توان را به میزان قابل توجهی افزایش می دهد.

در این پروتکل نیازی به معاملات شایعات به کل شبکه نیست که ارتباط اصلی را بهبود می بخشد [48].

خرد شدن کامل مورد استفاده در این روش برای دستگاههای محدود شده IoT برای مشارکت در پروتکل اجماع بسیار مطلوب است.

علاوه بر این ، RapidChain از توان بالایی برخوردار است (پردازش 7،380 معاملات در هر ثانیه در شبکه ای با 4000 گره).

اما ، تأخیر آن برای تأیید معاملات برای شبکه های IoT مناسب نیست (8.7 ثانیه برای 4000 گره).

اگر تأخیر این روش بهبود یابد ، می تواند گزینه ارزشمندی برای شبکه های IoT باشد [48].

F- قایق:

Raft یک روش اجماع مبتنی بر رای گیری است که پیشنهاد شده است تا الگوریتم Paxos برای سیستم های عملی قابل فهم تر و قابل اجرا باشد.

الگوریتم Paxos سعی می کند در شرایط خاصی برای مسئله ژنرالهای بیزانس مشکل سازگاری را حل کند.

Raft به راندمان مشابه Paxos [39] ، [53] می رسد.

Raft و Paxos الگوریتم های تحمل گسل غیر بیزانس هستند.

در حالی که پروتکل های آنها شبیه به الگوریتم های BFT است ، آنها فقط می توانند 50٪ گره ها را تحمل کنند ، در حالی که الگوریتم های بیزانس می توانند گره های فاسد دلخواه (از جمله مخرب) را تحمل کنند.

از دو مرحله تشکیل شده است:

انتخابات رهبر و تکرار ورود به سیستم.

رهبر مسئول سفارش معاملات است.

در صورت عدم موفقیت یک رهبر ، مرحله انتخاب رهبر با استفاده از یک زمان بندی تصادفی برای هر سرور اجرا می شود.

وقتی یک رهبر انتخاب می شود ، مرحله تکثیر ورود به سیستم آغاز می شود.

در این مرحله ، رهبر ورود به سیستم را از مشتریان پذیرفته و معاملات را پخش می کند تا نسخه خود را از گزارش معاملات انجام دهد [39] ، [54].

Corda و Quorum دو پیاده سازی blockchain هستند که از Raft به عنوان روش اجماع خود استفاده می کنند [34].

این روش دارای توان بالا و تأخیر کمی است.

با این حال ، کارآیی و عملکرد آن به گره رهبر وابسته است که یک تسلط مطلق در سیستم را اشغال می کند.

بنابراین ، اگر گره رهبر به صورت مخرب آلوده شود ، کل سیستم از بین می رود.

این گره ها نمی تواند گره های مخرب را تحمل کند و می تواند 50٪ گره خرابی را تحمل کند.

از آنجا که تأمین گره رهبر بسیار مهم است ، توان عملکرد با عملکرد آن گره محدود است.

به دلیل امنیت پایین و توان محدود ، برای شبکه های IoT چندان مناسب نیست.

G- Tangle:

Tangle یک فناوری جدید برای دفترهای توزیع شده است که توسط Iota cryptocurrency پیشنهاد شده است.

Tangle نیازی به پروتکل اجماع پیچیده ، وقت گیر و محاسباتی ندارد.

همچنین از بلوک برای ذخیره معاملات استفاده نمی کند.

هر معامله به خودی خود یک بلوک منحصر به فرد است که برای اضافه شدن به دفترچه باید دو معاملات قدیمی را تأیید کند.

Tangle از Graphic Acyclic Graphed (DAG) استفاده می کند که در آن هر معامله به دو معامله قدیمی مرتبط است که توسط آن تأیید شده است.

بعد از اینکه یک معامله دو معامله قدیمی را تصویب کرد ، از طریق اثبات کار به دفتر کار اضافه می شود.

چارچوب درهم و برهم در شکل 4 نشان داده شده است.

گره های نکته ، که توسط مربع های جامد سیاه مشخص شده اند ، معاملات جدیدی هستند که منتظر تأیید هستند.

معاملات مصوب توسط میادین سفید نشان داده شده است.

توجه داشته باشید ، هر معامله به دو معامله قدیمی مرتبط است.

با توجه به طراحی منحصر به فرد از tangle ، این یک چارچوب سریع ، بی نهایت مقیاس پذیر است که باعث می شود آن را برای شبکه های IoT مناسب تر کند.

علاوه بر این ، Tangle هیچ هزینه معامله ای ندارد که مطلوب برای شبکه IoT باشد.

برخلاف بسیاری از کاربردهای blockchain ، tangle از ظهور رایانه های کوانتومی به دلیل طراحی منحصر به فرد خود مصون است.

چالش اصلی درمورد درهم و برهم کردن نحوه انتخاب دو معامله قدیمی برای تصویب است.

در مورد چگونگی انتخاب این دو گره که برای دستگاههای محدودکننده منبع در یک شبکه IoT بسیار مطلوب است ، هیچ قاعده ای اعمال نمی شود.

با این حال ، معاملات انتخابی نباید یکسان یا متناقض باشند.

برای انتخاب بین معاملات متضاد ، tangle الگوریتمی به نام الگوریتم انتخاب نوک را چندین بار اجرا می کند تا بفهمد کدام یک از این دو معامله قابل قبول تر است که به طور غیر مستقیم توسط نکته انتخاب شده تأیید شود.

بر خلاف چارچوب های blockchain ، طراحی tangle امکان بررسی موازی را امکان پذیر می کند که زمان انتظار لازم برای استخراج بلوک های قبلی مانند blockchain را از بین می برد و فرصتی برای تأیید معاملات بیشتر در زمان کوتاه تر فراهم می کند.

اگرچه درهم و برهم بسیار امیدوارکننده است و ادعا می کند برای رفع موانع موجود برای عدم تمرکز شبکه های IoT resourcecposed [5] ، با بسیاری از چالش های اجرای ، بخصوص برای برنامه های IoT مقابله می کند.

اجرای فعلی tangle ، Iota ، تمام اهداف ادعا شده از tangle را ارائه نمی دهد.

یکی از چالش های کاربرد tangle در شبکه های IoT محدودیت ذخیره سازی است.

دستگاههای محدود شده توسط IoT قادر به ذخیره کل درهم و برهم نیستند.

برخی از راه حلها از جمله عکس برداری خودکار و مشتری swarm برای رفع این مشکل در نقشه راه توسعه Iota پیشنهاد شده است [57].

مشکل دیگر درهم و برهم زدن این است که هر کس کنترل بیش از یک سوم قدرت برهم زننده را به دست آورد ، می تواند آن را ناامن و آسیب پذیر کند.

به عنوان یک اقدام پیشگیرانه ، Iota گره ای به نام "هماهنگ کننده" را با استفاده از توان هش در یک نقطه بوجود می آورد.

با این حال ، این می تواند به عنوان تمرکز درهم و برهم درک شود.

ح- مقایسه روشهای مختلف اجماع:

از روش های اجماع فوق در اجرای مختلف بلاکچین استفاده شده است.

روش اجماع ستون فقرات اجرای blockchain است.

بنابراین ، بسیاری از ویژگی ها و ویژگی های عملکرد یک اجرای blockchain به روش اجماع مورد استفاده بستگی دارد [53].

محققان بیشتر پروتکل های اجماع جدید را بر اساس الزامات رمزنگاری پیشنهاد می کنند.

مهمترین ویژگی برای cryptocurrency توان بالا و امنیت است در حالی که برای شبکه های IoT ، تأخیر کم مهمترین ویژگی است.

در یک شبکه IoT عملی ، یک معامله باید در عرض چند میلی ثانیه یا کمتر انجام شود.

در جدول I ، تمام روشهای اجماع ذکر شده برای تأیید کاربرد آنها در شبکه IoT مقایسه شده است.

مناسب ترین روش های اجماع برای شبکه های IoT با ذرات سیاه پیچیده بیان می شود ، روش های اجماع جزئی مناسب با نیمه مشکوک سیاه و سفید مشخص می شوند ، و روش های قابل اجرا برای شبکه های IoT با هیچ یک از سیاهههای پیچیده مشخص نمی شوند.

VI- نمای کلی از اجرای BLOCKCHAIN:

برای دستیابی به شبکه IoT مبتنی بر blockchain ، مناسب ترین چارچوب باید طراحی و مستقر شود.

یکی از گزینه ها اجرای یک چارچوب جدید و استفاده از روش مورد نظر اجماع است که به اعتقاد ما بهترین برنامه مورد نیاز IoT است.

گزینه دیگر استفاده از یک چارچوب از قبل تعریف شده است.

در این بخش برخی از چارچوب های موجود را برای اجرای یک سیستم blockchain و کاربرد عملی آنها نسبت به یک برنامه IoT مرور می کنیم.

ما جنبه های مختلفی از این پیاده سازی ها را بررسی می کنیم ، از جمله روش اجماع آنها ، کاربردهای آنها ، اجازه یا مجاز بودن ، خصوصی بودن یا عمومی بودن.

همه این ویژگی ها بر ویژگی های یک چارچوب blockchain به همراه قابلیت مقیاس پذیری ، عملکرد و در دسترس بودن آن تأثیر می گذارد.

مقیاس پذیری به اندازه یک شبکه blockchain و تعداد کاربرانی که می توانند پشتیبانی کنند اشاره دارد.

عملکرد به تأخیر و توانایی اشاره دارد که برای شبکه های IoT بسیار مهم است.

تأخیر میزان زمانی است که گره ها به یک اجماع می رسند.

با تاخیر در عدم تمرکز چارچوب blockchain می توان تأخیر کم داشت.

توان ، تعداد معاملات است که می تواند در واحد زمان پردازش شود.

در دسترس بودن به قابلیت دسترسی گره ها به یک نسخه از دفترچه توزیع شده اطلاق می شود [3].

پیاده سازی های مختلف blockchain خصوصی در بخش VI-A ارائه شده است.

یکی از چارچوب های شناخته شده برای اجرای یک سیستم مبتنی بر blockchain خصوصی ، چارچوب Hyperledger است.

Hyperledger یک پروژه مشترک است که توسط بنیاد لینوکس آغاز شده و توسط بسیاری از شرکت ها از جمله IBM ، Intel ، Cisco ، Hitachi و غیره توسعه یافته است.

این پروژه شامل پروژه های مختلفی از جمله پارچه ، چوب ، پارچه ، ایندی ، آهو و آبرسان است.

blockchain IBM برای IoT یکی دیگر از پیاده سازی های خصوصی blockchain است.

به عنوان بخشی از سیستم مبتنی بر blockchain ، در مورد افراد مشهور بحث می کنیم:

اتریوم و بیت کوین در بخش VI-B ما همچنین از پیاده سازی های فن آوری های جایگزین برای blockchain از جمله بند ناف و iota در بخش VI-C استفاده می کنیم.

ما امیدوار کننده ترین چارچوب ها را برای برنامه های IoT در بخش VI-D مقایسه می کنیم.

الف - Blockchains خصوصی:

پارچه هایپرلدگر:

Hyperledger Fabric یک اجرای مجاز است که بطور گسترده توسط شرکتها مورد استفاده قرار می گیرد.

این روش از یک روش اجماع قابل توافق استفاده می کند که بر اساس نیازهای ویژه برنامه تعریف شده است.

متداول ترین روش اجماع آن PBFT است.

بر خلاف بیت کوین و اتریوم که blockchain های عمومی هستند ، این فریم ورک blockchain خصوصی در صدها میلی ثانیه به اجماع می رسد [58].

چنین تاخیر کم برای ساخت شبکه های IoT مبتنی بر blockchain بسیار مهم است.

با اجازه ، این blockchain توسط یک سازمان خاص کنترل می شود که به گره های خاص امکان پیوستن به blockchain ، دسترسی به دیتابیس و شرکت در پروتکل اجماع را می دهد.

این چارچوب از کد زنجیره ای طراحی شده به زبان Go پشتیبانی می کند که نسخه ویژه ای از قراردادهای هوشمند است [59].

قرارداد هوشمند یک نرم افزار خود اجرا است که به زبان برنامه نویسی نوشته شده است و به کاربران امکان می دهد اسکریپت های خود را برای انتقال دارایی های مالی ، محصولات یا خدمات بین طرف های مختلف و بدون واسطه برنامه ریزی کنند [60].

اگرچه تأخیر کم این پیاده سازی یک مزیت قابل توجه برای شبکه های IoT است ، اما همچنان یک blockchain خصوصی است و بنابراین فاقد ویژگی های مفید blockchain های عمومی مانند توزیع کامل با ذخیره سازی داده های بسیار ایمن و غیرقابل تغییر است.

علاوه بر این ، سربار شبکه برای این چارچوب با افزایش تعداد گره ها بطور قابل توجهی افزایش می یابد و باعث می شود تعداد پیام های ارتباط یافته با پروتکل PBFT افزایش یابد.

این مانع از استفاده از پارچه هایپرلدگر در برنامه های در مقیاس بزرگ مشابه با بلاک های عمومی می شود.

پارچه هایپرلدر از چندین نهاد تشکیل شده است که زنجیره ای را حفظ می کنند:

سیاست همسالان ، سفارش دهنده ، کد زنجیره ای و کد زنجیره ای.

همسالان وظیفه تأیید و انجام درخواستها توسط گره های درون شبکه را دارند.

اعتبار بلوک های جدید نیز بر عهده همسالان است.

سفارش دهنده کلیه درخواستهای استناد فراخوان به نام معاملات را از گره ها دریافت می کند ، بلوکی از این معاملات ایجاد می کند ، آنها را برای تأیید صحت به همسالان می فرستد و نسخه های این دفترچه را اضافه می کند.

این درخواست های فراخوانی ابتدا توسط یک یا چند نفر از همسالان مربوطه که مطابق با سیاست تعریف شده در کد زنجیره ای اختصاص داده شده ، تأیید می شوند.

پس از آن ، این درخواست ها برای پردازش بیشتر به سفارش دهنده ارسال می شود.

انواع مختلفی از پیام ها را می توان در کد زنجیره ای تعریف کرد که توسط آنها گره ها درخواست های مختلفی را به همسالان ارائه می دهند.

بیشترین پیام های استفاده شده برای کد زنجیره ای ، پرس و جو و فراخوانی است.

پرس و جو در حال آشنا شدن با وضعیت فعلی دفتر است که مانند درخواست مقدار فعلی یک متغیر اختصاص داده شده به یک گره است.

Invoke درخواست تغییر در دفترچه را دارد ، مانند تغییر مقدار متغیر اختصاص داده شده به یک گره [61].

Hyperledger Sawtooth:

Hyperledger Sawtooth که توسط Intel پیشنهاد شده است ، یک بستر مدولار برای پیاده سازی دفترچه های توزیع شده برای ذخیره سوابق دیجیتالی مناسب برای استفاده سازمانی است.

این از اثبات زمان سپری شده با استفاده از برنامه افزودنی نگهبان نرم افزار اینتل (SGX) به عنوان یک محیط اجرای مطمئن برای دستیابی به اجماع استفاده می کند.

این پلت فرم اجازه می دهد تا مقیاس گسترده ای از هر دو لیدر مجاز و بدون مجوز داشته باشد ، و دارای ویژگی هایی از قبیل جریان مستقیم داده ها ، امنیت سخت افزاری و بار مشتری در سطح شرکت باشد که آن را برای دستگاه های IoT مناسب می کند [62].

با این حال ، این چارچوب هنوز در مقیاس بزرگ پیاده سازی نشده و از نظر قابلیت های عملکردی آن کاملاً آزمایش شده است.

همچنین به دلیل عدم وجود سازوکارهای امنیتی از طرف Intel توصیه نمی شود که برای کاربردهای حساس در امنیت استفاده شود.

هایپرلدگر ایندی:

Hyperledger Indy یک چارچوب دفتر توزیع شده است که به طور خاص برای هویت های غیر متمرکز طراحی شده است تا از نقض هویت دیجیتالی در اینترنت جلوگیری کند.

این نرم افزار با استفاده از اثبات دانش صفر (ZKP) برای جلوگیری از آشکار شدن غیرقابل توصیف ویژگی های هویت است.

این یک blockchain مجاز اما با دسترسی جهانی به ویژگی های آن است.

برای اعتبارسنجی بلوک های جدید ، از رویکردی به نام Plenum استفاده می کند که در آن مجموعه ای از گره های معتبر پروتکل تحمل گسل بیزانس اصلاح شده ، با افزایشی را اجرا می کنند [25].

هیچ جنبه چشمگیر Hyperledger Indy وجود ندارد که آن را برای یک شبکه IoT جذاب کند.

هایپرلدگر ایرا:

Hyperledger Iroha یک پیاده سازی ساده است که در توسعه برنامه های کاربردی تلفن همراه از فناوری blockchain متمرکز است [62].

در C ++ توسعه یافته است و از یک روش جدید اجماع به نام سومراجی استفاده می کند که یک الگوریتم اجماع تحمل پذیر گسل بیزانس است.

در این چارچوب ، ذخیره سازی داده و همگام سازی به صورت غیرفعال انجام می شود [25].

در Iroha ، به هر شرکت کننده اجازه دسترسی به کل تاریخچه داده ها داده نمی شود.

شرکت کنندگان می توانند با گرفتن مجوز و احراز هویت ، به داده ها از طریق پرس و جو دسترسی پیدا کنند [63].

هایپرلدگر بروو:

Hyperledger Burrow یک blockchain مجاز است که از روش اجماع Tendermint برای دستیابی به اجماع استفاده می کند [64].

این نخستین بار توسط شرکتی به نام Monax طراحی شده است.

طراحی آن براساس دستگاه مجازی Ethereum (EVM) انجام شده است.

این یک دستگاه پیمانکاری هوشمند با هدف کلی برای برنامه های صنعت متقابل است و یک چارچوب بهینه برای یک صنعت واحد نیست [25].

اشکال اصلی این اجرای این است که اگر یک سوم یا بیشتر تعداد معتبر آفلاین شوند ، ممکن است شبکه متوقف شود [63].

IBM Watson IoT:

بر اساس پروژه پارچه Hyperledger ، IBM Watson IoT یک چارچوب خصوصی blockchain برای شبکه های IoT است که توسط IBM پیشنهاد شده است [65].

گرچه برای شبکه های IoT در مقیاس کوچک بسیار مناسب است ، مقیاس پذیری همچنان اشکال اصلی آن است.

هر شرکت کننده قابلیت راه حل کامل تا 10 مسیر (IoT به اتصالات Blockchain) را دارد که حداکثر 1 معامله در هر ثانیه در هر مسیر دارد.

B- Blockchains عمومی:

بیت کوین:

cryptocurrency ، بیت کوین ، خوب می داند ، از یک چارچوب عمومی blockchain مجاز استفاده نمی کند.

بدون مجوز ، به هر گره اجازه می دهد بدون هیچ مجوزی در پروتکل اجماع و بلوک های مین شرکت کند.

این از اثبات کار به عنوان روشی برای اجماع استفاده می کند که دارای تأخیر بالایی در حدود 10 دقیقه است و آن را برای شبکه های IoT ناکارآمد می کند.

با این حال ، ارزش جستجو دارد که آیا هنوز هم می توان از آن با اثبات آسان کار برای دستیابی به اجماع در مدت زمان کوتاه استفاده کرد.

از طرف دیگر ، این چارچوب می تواند در ترکیب با سایر روش ها مورد استفاده قرار گیرد.

یکی دیگر از چالش های مهم در استفاده از blockchain بیت کوین در شبکه های IoT ، مقیاس پذیری آن است.

اندازه متوسط ​​معاملات بیت کوین بین 400 بایت و 600 بایت است.

با توجه به اندازه بلوک هر بیت کوین که 1 مگابایت است و میانگین زمان برای حل هر بلوک 10 دقیقه است ، معماری فعلی بیت کوین اجازه می دهد 4 معاملات در ثانیه باشد که برای شبکه های IoT قابل قبول نیست.

اتریوم:

اتریوم یک چارچوب blockchain عمومی مجاز است که با استفاده از استحکام ، یک زبان سطح بالا و پیمانکار برای اجرای قراردادهای هوشمند توسعه یافته است [66].

همه گره ها برای شرکت در فرایند اجماع لازم است.

این در درجه اول با استفاده از یک اثبات اثربخشی معروف به ایتاش طراحی شده است.

این روش به دلیل استفاده از نمودار Acyclic Directed (DAG) بطور قابل توجهی از لحاظ محاسباتی فشرده تر از اثبات اصلی کار است.

این blockchain به دلیل خصوصیات ذاتی خود که می تواند قراردادهای هوشمند را فعال کند ، برای انواع مختلف برنامه ها سفارشی و پذیرفته شده است.

برنامه هایی برای مهاجرت اتریوم به کاسپر وجود دارد [3].

روند تولید بلوک آن بین 10 تا 20 ثانیه طول می کشد که بسیار کمتر از زمان تأخیر بیت کوین است اما هنوز برای اجرای شبکه IoT عملی نیست [58].

لازم به ذکر است که برخی از فریم ورک های خصوصی و مجاز blockchain نیز بر اساس blockchain Ethereum طراحی شده اند.

ج- گزینه های Blockchain:

کوردا:

Corda یک چارچوب لیدر غیرمتمرکز مجاز است که از روش اجماع قابل توجیه استفاده می کند.

در این اجرای ، گره های خاص به نام گره های اسناد رسمی مسئول پروتکل اجماع هستند.

به دلیل الزام اعتماد به دفتر اسناد رسمی برای اجماع ، تا حدی غیرمتمرکز است.

از آنجا که از یک معماری متفاوت استفاده می کند ، نمی تواند به عنوان یک چارچوب blockchain در نظر گرفته شود.

این چارچوب به طور خاص برای برنامه های مالی طراحی شده است و برای شبکه های محدود شده IoT از نظر منابع بسیار مناسب نیست [66].

Iota:

Iota یک دفترچه توزیع شده است که از Directed Acyclic Graph (DAG) به جای blockchain استفاده می کند.

این پروتکل Tangle نام دارد که در بخش V-G مورد بحث قرار گرفت.

سرعت سریع معاملات آن برای برنامه های IoT بسیار مطلوب است و اولین cryptocurrency است که به طور خاص برای برنامه های IoT طراحی شده است.

این طرح زمان معامله و سربار شبکه را با هزینه آرامش امنیت با برخی از سناریوهای حمله احتمالی به حداقل می رساند [58].

Iota هیچ هزینه معامله ای ندارد که معاملات خرد را امکان پذیر کند.

بر خلاف سایر ارزهای رمزنگاری شده که از تعدادی تأیید به عنوان نشانگر قابلیت اطمینان یک معامله استفاده می کنند ، Iota از وزن تجمعی استفاده می کند که برای هر معامله بر اساس تعداد معاملات پیوسته پیوسته با آن تعریف می شود [5].

در Iota ، تمام نشانه ها از روز اول در دسترس بوده و توسط اولین گره به نام معامله پیدایش منتشر شد.

د- مقایسه اجرایهای مختلف:

به منظور ارزیابی اینکه کدام اجرای بیشتر محدودیت های blockchain را برطرف می کند و برای شبکه های IoT قابل استفاده است ، ما شش پیاده سازی را در جدول II مقایسه می کنیم.

اجرای مطلوب blockchain برای شبکه های IoT باید دارای ویژگی های زیر باشد:

غیرمتمرکز ، نه محاسباتی ، نه شبکه فشرده ، مقیاس پذیری بالا ، توان بالا ، تأخیر بسیار کم و حفظ حریم خصوصی.

ما ایندی ، ایروا ، بررو و آی بی ام واتسون را با یکدیگر مقایسه نمی کنیم زیرا آنها در درجه اول برای اهداف خاص طراحی شده اند و لزوما برای شبکه های IoT مناسب نیستند.

علاوه بر این ، این چهارچوبها هنوز کاملاً تدوین و اجرا نشده است.

مشخصات ذکر شده در جدول II برای Hyperledger Sawtooth در تئوری ادعا شده است و آنها هنوز در شرایط گسترده تحت اجرای شرایط کاملاً آزمایش نشده اند.

علاوه بر این ، Hyperledger Sawtooth هنوز در حال آزمایش است و توصیه نمی شود اینتل برای برنامه های حساس امنیتی استفاده شود.

توان بالا و تأخیر کم پارچه Hyperledger Fabric در مقیاس های کوچک و برای شبکه های در مقیاس بزرگ رو به وخامت می رود.

مقادیر تأخیر در جدول II مقادیر متوسط ​​هستند.

بیت کوین و اتریوم فقط با توان شبکه بسیار محدود مقیاس پذیری بالایی دارند.

در چارچوب کوردا ، یک معامله جدید به بسیاری از معاملات دیگر وابسته است و اگر یک گره قبلاً معاملات قدیمی را ندیده باشد ، منجر به تأخیر بسیار قابل توجهی خواهد شد که محدودیت هایی را برای مقیاس پذیری ایجاد می کند.

با این حال ، به طور کلی ، زمان تاخیر آن بسیار کم است.

علاوه بر این ، در کاغذ سفید کوردا ادعا شده است که در برابر حملات دشمن که هنوز آزمایش و اجرا نشده است ، ایمن است.

تحمل کم چارچوب Iota در برابر فعالیتهای مخالف با استفاده از یک گره ویژه به نام هماهنگ کننده حل می شود.

VII- چالش های باز شده:

با توجه به ویژگی های منحصر به فرد blockchain ، می توان آن را برای تعدادی از حوزه ها از جمله اما محدود به شبکه IoT ، مراقبت های بهداشتی ، ذخیره داده ها ، ردیابی موجودی و امور مالی اعمال کرد.

چالش اصلی نحوه تطبیق فناوری blockchain متناسب با نیازهای خاص برنامه است.

از آنجا که هر برنامه نیازهای متفاوتی را ایجاد می کند ، اجرای جدید یا سفارشی سازی blockchain مورد نیاز است.

در حوزه IoT ، عمده چالشهای تحقیقاتی که باید مورد توجه قرار گیرد عبارتند از:

* - افزایش قابلیت مقیاس پذیری:

مقیاس پذیری به اندازه یک شبکه blockchain و تعداد کاربرانی که می توانند پشتیبانی کنند اشاره دارد.

در یک شبکه IoT عملی ، تعداد زیادی از دستگاه ها باید از طریق شبکه ارتباط برقرار کنند.

افزایش قابلیت مقیاس پذیری با استفاده از پیاده سازی های فعلی ، توان عملیاتی و تأخیر را به خطر می اندازد.

* - تضمین امنیت:

فعالیت های مخرب زیادی وجود دارد که شبکه های IoT را هدف قرار می دهند.

یک شبکه IoT عملی نسبت به همه حملات احتمالی مصونیت قاطعانه می کند.

امروزه روشهای امنیتی هنر متکی به محاسبات پیشرفته است.

بنابراین ، ایمن سازی شبکه با دستگاههای دارای محدودیت منابع قادر به انجام محاسبات سنگین کاری ، یک چالش است.

* - محافظت از حریم خصوصی داده ها:

اطلاعات ارتباطی بین نهادهای مختلف محرمانه است.

بنابراین حفظ حریم خصوصی در پیوندهای ارتباطی یک ضرورت است.

خصوصی سازی شبکه IoT مبتنی بر blockchain ، معمولاً الگوی اصلی عدم تمرکز در blockchain ها را به خطر می اندازد.

* - افزایش توان مصرفی:

در یک شبکه IoT ، تعداد زیادی دستگاه لازم است تا همزمان با یکدیگر ارتباط برقرار کنند که به یک شبکه با توان بالا نیاز دارد.

افزایش توان در اجرای فعلی معمولاً مقیاس پذیری را که مطلوب نیست کاهش می دهد.

* - کاهش تأخیر:

در یک شبکه IoT عملی ، دستگاه های مختلفی باید در زمان واقعی با یکدیگر ارتباط برقرار کنند.

بنابراین ، زمان تاخیر باید بسیار کم باشد.

کاهش تأخیر در اجرای فعلی معمولاً مقیاس پذیری را به خطر می اندازد که قابل قبول نیست.

* - کاهش نیازهای محاسباتی:

دستگاه های IoT بیشتر محدود به منابع هستند.

وضعیت فعلی پروتکل های امنیتی هنری بیشتر به محاسبات پیچیده رمزنگاری متکی است که یک وسیله برای وسایل محدود کننده منابع است.

* - غلبه بر محدودیتهای ذخیره سازی:

دستگاه های IoT محدود به منابع نمی توانند حجم عظیمی از داده را ذخیره کنند که معمولاً برای شبکه های مبتنی بر blockchain ضروری است.

این امر به این دلیل است که ، معمولاً چندین گره یا بعضی اوقات همه گره ها نیاز به کپی از blockchain دارند.

به منظور استفاده موفقیت آمیز blockchain در شبکه های IoT ، راه حل های عملی عملاً لازم است که برای شبکه های بزرگ مقیاس پذیر باشند و توانائی بالایی با تأخیر کم دارند.

علاوه بر این ، اجرای این برنامه ها باید بسیار ایمن باشد تا در برابر حملات احتمالی دفاع کرده و دستکاری شده باشد.

علاوه بر این ، پیاده سازی ها باید با دستگاه های IoT محدود شده از منابع که توانایی محاسباتی محدود و ظرفیت ذخیره سازی محدود دارند ، سازگار باشد.

هر یک از روشها و اجماع اجماع مورد بحث ، چندین مورد ذکر شده در بالا را مورد بررسی قرار می دهد.

با این وجود ، نیاز به پیاده سازی هایی وجود دارد که همه چالش های ذکر شده را برطرف می کند.

VIII- نتیجه گیری:

در این مقاله ، ما در مورد امکان استفاده از blockchain برای ایمن سازی و اطمینان از یکپارچگی داده ها در شبکه های IoT بحث کردیم.

به طور خاص ، ما روی روشهای اجماع مورد استفاده و کاربرد عملی آنها برای دستگاهها و شبکههای IoT محدود شده منابع متمرکز شده ایم.

ما در مورد جوانب مثبت و منفی روشهای فعلی اجماع مورد استفاده در اجرای blockchain بحث کردیم.

ما همچنین بحث کردیم که چگونه blockchains و tangle خصوصی می توانند جایگزین بهتری برای blockchain های عمومی برای شبکه های IoT باشند.

در میان پیاده سازی های مورد بحث blockchain ، Hyperledger Fabric ، Sawtooth ، Iota و Ethereum برای شبکه ها و برنامه های IoT امیدوار کننده تر به نظر می رسند زیرا برخی از محدودیت های موجود در blockchain را مورد توجه قرار داده اند.

هر یک از این پیاده سازی ها به برخی از محدودیت ها از جمله توان ، تأخیر ، سربار محاسباتی ، سربار شبکه ، مقیاس پذیری و حفظ حریم خصوصی پرداخته اند.

با این حال ، هیچ یک از آنها در رفع همه محدودیت ها تا حد قابل قبولی موفق نبوده اند.

ما اعتقاد داریم که برای تحقق یک شبکه IoT مبتنی بر blockchain در مقیاس بزرگ و با تأخیر کم ، باید یک چارچوب ترکیبی وجود داشته باشد که دو یا چند چارچوب از قبل موجود یا یک چارچوب موجود را که یک روش اجماع اصلاح شده را با هم ترکیب کرده است ، ایجاد کند. .