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

Flowchain: Ledger توزیع شده برای شبکه های IoT به نظیر به همتا و معاملات داده در زمان واقعی طراحی شده است.

Flowchain: A Distributed Ledger Designed for Peer-to-Peer IoT Networks and Real-time Data Transactions.

Flowchain: Ledger توزیع شده برای شبکه های IoT به نظیر به همتا و معاملات داده در زمان واقعی طراحی شده است.

چکیده.

در این مقاله یک سیستم رهبری توزیع شده به نام Flowchain برای شبکه های همسالان و معاملات داده در زمان واقعی ارائه شده است.

ویژگی مهم Flowchain یک بلوک مجازی است که یک طراحی ساختار داده جدید blockchain را برای بهبود ساختار blockchain Satoshi و ارائه معاملات در زمان واقعی فراهم می کند.

Flowchain قصد دارد به سیستم blockchain برای اینترنت اشیا (IoT) بپردازد.

بسیاری از سیستم های blockchain ، از جمله blockchain Satoshi ، برای تسهیل معاملات ارزی همتا به همتا در نظر گرفته شده اند.

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

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

بنابراین ، Flowchain از Flowcoin برای رفع چنین چالشهای فنی استفاده می کند.

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

Flowchain یک مدل تبادل داده امن و در زمان واقعی برای IoT فراهم می کند و باعث حفظ حریم خصوصی اطلاعات می شود.

1- مقدمه: Blockchain برای اینترنت اشیاء (IoT) یک "جعبه سیاه" را در نظر گرفته است.

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

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

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

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

Blockchain برای IoT دومین چالش است.

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

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

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

Flowchain یک مکانیزم جدید به نام بلوک های مجازی ارائه می دهد تا چنین معاملات در زمان واقعی را انجام دهد.

2- ساختار داده های Flowchain: همانطور که در شکل 1 نشان داده شده است ، بیت کوین ، یک cryptocurrency که اغلب به آن مراجعه می شود ، از یک سیستم پایگاه داده توزیع شده به نام blockchain استفاده می کند [1].

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

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

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

Flowchain از پروتکل و الگوریتم آکورد استفاده می کند ، یک فناوری هش توزیع شده (DHT) فناوری که در سال 2001 توسط MIT منتشر شده است.

WoT

سیتی یک چارچوب نرم افزاری غیرمجاز IoT را برای دستگاه IoT همتا و متقابل ارائه داده است [3].

در نتیجه ، Flowchain از WoT استفاده می کند.

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

Flowchain شامل یک ساختار ساختار داده جدید blockchain و یک سیستم cryptocurrency برای محاسبات مطمئن برای نزدیک شدن به تبادل داده ایمن مورد نیاز IoT است.

ساختار داده پیشنهادی blockchain به Virtual Blocks گفته می شود و هدف آن ارائه معاملات داده های زمان واقعی است.

همانطور که در شکل 3 نشان داده شده است ، ویژگی های مهم طراحی ساختار داده Flowchain به شرح زیر است.

- پنج دستگاه IoT دارای N1 تا N5 هستند و هر دستگاه در شبکه همتا به یک گره است.

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

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

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

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

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

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

بر این اساس ، Flowchain از سیستم اثبات کار استفاده نمی کند [4].

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

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

3- معدن و دشواری: Flowcoin یک پایگاه داده توزیع شده از طریق همتا است که داده های معامله ای را ذخیره می کند.

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

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

اگرچه Flowchain و Bitcoin از همان الگوریتم هش SHA-256 استفاده می کنند ، Flowchain از الگوریتم استخراج معادن بسیار متفاوتی برخوردار است.

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

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

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

علاوه بر این ، عملکردهای هش سخت حافظه [5] ، مانند Argon2 [6] ، در دستگاه های IoT قابل استفاده نیستند.

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

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

علاوه بر این ، برای کاهش پیچیدگی نسبت به حفظ بلوک های معتبر و نامعتبر ، Flowchain یک اجرای O (1) را پیشنهاد می کند که به موجب آن تنها یک بلوک جدید که اخیراً استفاده شده است (MRU) حفظ می شود.

بلوک MRU تنها بلوک معتبر در شعبه در نظر گرفته شده است.

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

با استفاده از این الگوریتم O (1) می توان مسئله پیچیدگی را برطرف کرد.

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

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

لیست 2- الگوریتم بلوک MRU Flowchain.

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

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

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

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

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

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

لیست 3- جدول دشواری معادن.

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

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

4- Flowcoin: محاسبات قابل اعتماد به همتا.

Flowcoin ، سیستم رمزنگاری Flowchain ، مسئول معاملات در زمان واقعی و ضبط داده های قابل اعتماد است.

Flowchain قابلیت داده های سریال و جریان داده های مورد نیاز IoT را فراهم می کند.

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

بنابراین ، Flowcoin یک عنصر مهم طراحی Flowchain است زیرا محاسبات قابل اعتماد به همتا را پیاده سازی می کند.

هر قطعه داده توسط یک تابع هش دو برابر SHA-256 به "کلید" داده مربوطه تبدیل می شود. داده های تکه شامل داده های خرد شده و کلید داده است.

سپس ، Flowchain داده های تکه را به گره "جانشین" داده تکه از حلقه Chord منتقل می کند.

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

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

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

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

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

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

گره جانشین به عنوان N نشان داده شده است.

لیست 4- الگوریتم انتقال داده Flowcoin.

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

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

بنابراین ، N 'شناسه معاملات و داده های تکه را در یک بلوک معتبر ذخیره می کند.

الگوریتم در لیست 5 نشان داده شده است.

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

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

بنابراین ، این طرح به تضمین امنیت داده کمک می کند.

Flowchain با تمایز از روند معامله بیت کوین [7] ، از فرآیند "معادن انتقال - تأیید-تأیید" استفاده می کند و نه روند معمولی "معامله-معدن کاری"

همانطور که در شکل (7) نشان داده شده است ، در فرآیند (6) ، داده ها را پس از ثبت معامله در دفترچه توزیع شده ، به قسمت انتهایی منتقل می کند.

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

معامله قبلی که گفته شد فقط در صورت تأیید موفقیت آمیز توسط شبکه همتا به یک همکار تبدیل می شود.

در پایان ، هنگامی که نقطه نهایی درخواست تصویب آن می کند ، Flowcoin معامله را به عنوان یک معامله تأیید شده تشخیص می دهد.

بنابراین ، روند معامله Flowchain یک مدل "تأیید معامله-تأیید-تأیید" را نشان می دهد.

این مکانیسم مهمترین عنصر طراحی Flowchain است.

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

علاوه بر این ، همانطور که در فرآیند (11) در شکل 7 نشان داده شده است ، N "txID" را پس از تکمیل درخواست تأیید نقطه انتهایی تأیید می کند.

سپس ، Flowchain یک ارز Flowcoin را به N اعطا می کند.

توجه داشته باشید که N 'می تواند با تکمیل شغل های تأیید بیشتر ، ارز بیشتری را برای Flowcoin بدست آورد.

با این روش ، Flowcoin Flowchain را قادر می سازد تا یک روش استخراج [8] از معادن سهام برای معدن بلوک های جدید را تشکیل دهد.

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

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

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

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

Flowcoin یک سیستم محاسباتی cryptocurrency و قابل اعتماد با سه ویژگی اصلی است: - مدل داده های قطعه برای اطمینان از امنیت داده ها. - رمزنگاری شبکه IoT به همتا. - مدل "معدن-معامله-تأیید-تأیید" برای ارائه معاملات در زمان واقعی.

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

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

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

5. نتیجه گیری ها.

Flowchain از blockchain اختصاصی IoT استفاده می کند و سیستم Flowcoin را برای رمزنگاری IoT به همتا و محاسبات قابل اعتماد پیاده سازی می کند.

یک دستگاه IoT می تواند با پیوستن و تکمیل شغل های "تأیید" ، "سکه" را واریز کند.

برای ارائه قابلیت های سری زمانی و داده های جریان ، Flowchain از مفهوم Virtual Block نیز استفاده می کند.

در حال حاضر ، پروژه منبع باز Flowchain در GitHub در دسترس است.

علاوه بر این ، Flowchain به دستگاه های IoT MediaTek LinkIt Smart 7688 IoT منتقل شده و وارد مرحله اثبات مفهوم عملی شده است.

کار آینده:

Flowchain از یک سیستم ضد سهام برای تعیین قابلیت اطمینان دستگاه استفاده می کند.

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

شبکه همتا به همسالان منابع مربوط به گره ای را که قصد پیوستن به شبکه را دارد اعتبار می کند.

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