انجمن توسعه قرارداد هوشمند

Proof of Coverage: هلیوم (Helium) و الگوریتم اجماع اثبات پوشش

در این نوشته قصد دارم Proof of coverage، الگوریتم اجماع اختصاصی رمزارز هلیوم بررسی کنم. سعی میکنم با توجه مقالات و توضیحات منتشر شده توسط تیم هلیوم و منابع دیگر به توضیح پیدایش، هدف، کاربردها، الگوریتم اجماع POC و نحوه کارکرد، استخراج، نحوه توزیع پاداش، سوددهیی و رقبا هلیوم بپردازم. این موضوع و مفاهیمش رو در منابع فارسی ندیدم جایی توضیحش باشه و بعضی کلمات مثلا چالش شونده رو از خودم به کار بردم اگر جایی فکر میکند چیزیو اشتباه بیان کردم ممنون میشم اطلاع بدین.

هلیوم ( Helium ) چیست

هلیوم یک شبکه وایرلس گسترده غیرمتمرکز قدرت گرفته از بلاکچین برای اینترنت اشیا است. در سال 2019 بعد از 6 سال آماده سازی، برای اولین بار شبکه اصلی اش راه اندازی شد. نود های شبکه دارای هات اسپات هایی که ترکیبی از دستگاه های وایرلس مودم روتر و ماینر های بلاکچین هستند. ماینر ها با توکن HNT با توجه به پارامتر های مختلفی پاداش خود را دریافت میکنند.

هلیوم توسط تیم بسیار با تجربه ای با بک گراند و سوابق درخشان با هدف فراهم کردن امکان ارتباط دستگاه ها بوسیله اینترنت اشیا در شبکه ای غیرمتمرکز و برطرف کردن کمبود ها و نقص های فعلی زیرساخت های موجود، 8 سال پیش در ابتدای مورد توجه قرارگرفتن مفهوم کلی اینترنت اشیا بوجود آمده است. هلیوم شبکه خودش رو “شبکه مردم” یا “The People’s Network” نامیده!

در حال حاضر برای اتصال به شبکه هلیوم و میزبانی نیاز به خریداری هات اسپات از یکی از 12 ارائه دهنده دستگاه همکار هلیوم هستند. از برند های محبوب تر این مودم ها میشود به Bobcat و FreedomiFi که تنها ارائه دهنده هات اسپات 5G هست اشاره کرد. هر دیتگاه میتواند تا محدوده ای بالغ بر 10 کیلومتر را تحت شرایطی پوشش دهد! بعضا از عنوان LongFi هم در این مورد استفاده میشود. هات اسپات ها از فضایی که از لحاظ فرکانس مشکل قانون گذاری ندارد و برای عموم ازاد هست استفاده میکنند و البته قانون گذاری و مقررات رادیویی هر کشور در این زمینه متفاوت است. هلیوم از الگوریتم اجماع Proof-of-Coverage استفاده میکند که بر اساس پروتکل HoneyBadger BFT که برای ارتباط نود ها زمانی که شرایط غیرقابل اطمینان است، ساخته شده.

الگوریتم Proof-of-Coverage

این الگوریتم از مشخصه های فرکانس رادیویی استفاده میکند تا اثبات هایی که برای شبکه هلیوم و کاربرانش بامعنا میباشند را تولید کند. بلاکچین بصورت مداوم هات اسپات ها را با مکانیسمی بنام “PoC Challenge” چک میکند. داده های اثبات های مداوم در شبکه بلاکچین هلیوم ذخیره میشود که تایید قطعی از پوشش وایرلسی هست که توسط هات اسپات هلیوم ساخته شده است.

PoC Challenge ، چالش های اثبات پوشش

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

  • Challenger (چالشگر): هات اسپاتی که چللح را میسازد و ارسال میکند. هات اسپات ها به طور متوسط یک بار در هر 300 بلاک چلنج ارسال میکنند.

  • Transmitter (انتقال دهنده): مخابره کننده یا Chalengee یا چالش شونده نیز میتواند نامیده شود. این هات اسپات هدف چالش میباشد و مسئول انتقال داده چلنج به هات اسپات های مجاور (شاهد ها) برای ثبت شاهد میباشد.

  • Witness (شاهد): هات اسپات هایی که از لحاظ جغرافیایی به چالش شونده نزدیک هستند و وجود هات اسپات چالش شونده در چلنج را بعد از اینکه به انها منتقل شد گزارش میکنند و در واقع شهادت میدهند :smiley:

عملیات چالش با جزئیات بیشتر

هات اسپات ها در حال حاضر مجاز هستند حدودا یک چلنج اثبات در هر 300 بلاک انجام دهند. آنها پس از انجام این کار را انجام مقداری توکن HNT (توکن شبکه هلیوم) را به عنوان پاداش دریافت می کنند. چالش گر ابتدا یک کلید عمومی و خصوصی زودگذر میسازد تا در چالش استفاده شود. کلید عمومی و خصوصی SHA256 هر دو همراه با هش بلاک فعلی به عنوان یک درخواست PoC ذخیره میشوند. اگر درخواست معتبر باشد و توسط بلاکچین تایید شود، هش بلاکی که رسید در آن ظاهر میشود با هش کلید عمومی زودگذر و هویت و اطلاعات چالشگر برای ایجاد آنتروپی قابل تایید ترکیب میشود. سپس یک عدد رندوم از طریق این انتروپی ایجاد میشود و برای انتخاب یک هات اسپات رندوم از کل شبکه (نه لزوما مودم های نزدیک چالش شونده) استفاده میشود. وقتی بسته چالش ساخته شد، به انتقال دهنده از طریق شبکه همتا به همتا هلیوم منتقل میشود. چالش شونده مورد هدف، بسته چالش را دریافت میکند و بیرونی ترین لایه را بوسیله کلید خصوصی و کلید عمومی زودگذر این چالش رمزگشایی میکند. (کلید عمومی زودگذر در بسته PoC نمایش داده میشود و هات اسپات دریافت کننده بلاکچین را برای دریافت PoC فعال SHA256 مربوطه کلید عمومی بررسی میکند و سریعا نتیحه را به بسته در شبکه هلیوم منتقل میکند. هر تعدادی از هات اسپات های نزدیک به چالشگر از لحاظ جغرافیایی، این داده را دریافت میکنند و به عنوان شاهد وجود چالش شونده را اثبات خواهند کرد.

پاداش دهی در PoC

بصورت کلی دو متغیر برای پاداش دهی وجود دارد. تعداد شاهدین در مدل HIP15 و تعداد هات اسپات ها در هر فضای 6 ضلعی تعریف شده در HIP17

  • HIP15: برای هر چرخه چالش، هر پاداش بین هات اسپات هایی که در فرایند نقش داشته اند تقسیم میشود. اگر هات اسپاتی در این چرخه به عنوان شاهد نقش داشته باشد، سهم 5.31% از پاداشی که به انتقال دهنده ها داده میشود خواهد داشت. برای مثال اگر 5 هات اسپات شاهد در یک چالش موفق شرکت داشته باشند، هر هات اسپات 1/5 از 5.31% از پاداش در نظر گرفته شده برای چالش را نصیب میشود. برای هر انتقال دهنده، هرچه تعداد شاهدان بیشتر باشد، پاداش انتقال دهنده بیشتر خواهد بود.

  • HIP17:

اگر تعداد هات اسپات های هر منطقه از هدف تراکمی مورد نظر بیشتر شود، شاهد کمتر پاداش میگیرد . نقشه هر منطقه و فواصلی که بصورت 6 ضلعی در سایت هلیوم مشخص شده تراکم مورد نظر برای هر منطقه جغرافیایی را نشان میدهد. در نمودار مشاهده میکنید که هر محدوده جغرافیایی هدف تراکمی خود را دارد و با بیشتر شدن تعداد ماینر ها و و در واقع شاهد ها از تعداد مشخصی، درآمد چالش شونده افزایش پیدا نمیکند و درآمد شاهد ها کم میشود! در این مثال عدد 4 برای تراکم هدف منطقه در نظر گرفته شده. در مثال زیر ماینر های با موقعیت خوب به رنگ سبز و نقاط با تراکم بیش از نیاز قرمز شده اند.

توزیع پاداش

در دو جدول زیر نحوه توزیع پاداش ها پس انجام یک فرایند چالش Poc با جزئیات ذکر شده.

نوع پاداش توضیح
PoC چالشگر به هر هات اسپاتی که یک چالش Poc معتبر ایجاد کند و رسید را به بلاکچین ارسال کند داده میشود
PoC چالش شونده (انتقال دهنده) به هات اسپاتی که چالش ر با موفقیت پشت سر میگذارد داده میشود که با نام Beacon شناخته میشود
شاهدین بین شاهد هایی که تایید انجام دادند تقسیم میشود
گروه اجماع بصورت مساوی بین هات اسپات هایی که خارج از چرخه چالش عضو گروه اجماع هستند و مسئولیت تایید ماین بلاک ها را دارند داده میشود
امنیت به تیم هلیوم و سرمایه گذارانی که توکن های امنیتی را هولد میکنند داده میشود
انتقال داده شبکه در هر چرخه به هات اسپات هایی که انتقال داده انجام میدهند داده میشود
نوع پاداش درصد توکن HNT دریافت شده
PoC چالشگر .95% 32.53427
PoC چالش شونده (انتقال دهنده) 5.31% 181.849446
شاهدین 21.24% 727.397784
گروه اجماع 6% 205.4796
توکن های امنیتی 34% 1164.3844
انتقال داده شبکه Up to 32.5% Up to 1113.0145
Total 100% 3424.66

تایید اثبات

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

پروتکل اجماع هلیوم:

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

  • بدون نیاز به اجازه: هر هات اسپات مطابق با قوانین اجماع و مشخصه های شبکه باید بتواند بصورت آزادانه در شبکه هلیوم شرکت کند.
  • طراحی کاملا غیرمتمرکز: هیچ مشوق و انگیزه ای برای استفاده از عواملی مثل مصرف کم انرژی برای استقرار سخت افزار بیشر از حد نیاز و متمرکز شدن در یک نقطه وجود ندارد
  • بر اساس کار مفید: دستیابی به اجما شبکه باید مفید و قابل استفاده مجدد برای شبکه باشد. در سیستم های مبتنی بر توافقی مثل بیتکوین، کار هایی که برای دستیابی به اجما انجام ملشود فقط برای یک بلوک خاص معتبر است. در مقابل، در سیستم اجماع هلیوم باید کار هایی انجام شود که علاوه بر ایمن سازی شبکه بلاکچین، برای شبکه مفید و قابل استفاده باشد.
  • نرخ بالای تراکنش های تایید شده: پروتکل باید بتواند به تعداد زیادی تراکنش در ثانیه دست یابد و هنگامی که تراکنش توسط بلاکچین مشاهده شد، تایید شده منظور میگردد. کاربرانی که داده های دستگاه را از طریق شبکه هلیوم ارسال می کنند ، نمی توانند زمان های طولانی حل و فصل بلاک را که معمولاً در سایر بلاک چین ها وجود دارد را متحمل شوند.

HoneyBadger BFT

پروتکل اجماع هلیوم بر اساس توزیعی از پروتکل HoneyBadgerBFT (HBBFT) نوشته شده است. HBBFT بر اساس مجموعه ای از تحقیقات است که در ابتدا توسط اندرومیلر در دانشگاه Illinois اغاز شد.

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

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

انتخابات گروه اجماع

یک گروه اجماع جدید (CG) یکبار در هر دوره انتخاب می شود. در حال حاضر 40 عضو برای هر گروه اجماعی انتخاب شده اند ، همانطور که در متغیر زنجیره ای num_consensus_members تعریف شده است. انتخاب گروه منتخب و جریمه های در نظر گرفته شده خود به تنهای داستان طولانی دارد که در گیت هاب پروژه توضیح داده شده است!

رقبا

نودل نتورک (Nodle Network)، بزرگ تر از هلیوم!

شبکه نودل نتورک با شعار اتصال و امن کردن یک شبکه اینترنت اشیا با انرژی کم و استفاده از موبایل بجای مودم هات اسپات میباشد! در حال حاضر شبکه نودل 5 میلیون کاربر فعال روزانه در مقابل حدود 100 هزار شبکه هلیوم دارد. تعداد دستگاه های متصل شده به نودل نتورک در مجموع دو سال و نیم حدود 63 میلیون میباشد و 550 هزار نفر نود فعال در هر نیم ساعت وجود دارد. نقاط سمت چپ تصویر کاربران نودل را در مقابل هلیوم سمت راست نشان میدهد! برا اتصال به شبکه نودل نیاز به خرید ماینر نیست و با یک موبایل اندروید یا اپل میتوان متصل شد!

سوددهی استخراج هلیوم:

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

helium. plus/earnings-calculator

خلاصه و جمع بندی:

به طور خلاصه عملکرد PoC بدین شکل سازی میشود: شبکه بلاکچین حدودا هر 300 بلاک یک بار، ماینر هات اسپات شما را انتخاب میکند و تا چک کند آنجا هستی. سپس ماینر هات اسپاتی در جایی از دنیا بصورت رندوم انتخاب میشود و از دستگاه شما درخواست میکند وجود خود در آن لوکیشن را به من اثبات کن لطفا. ماینر شما با ارسال سیگنال رادیویی به اطراف، از ماینر های هات اسپات اطراف خود درخواست میکند شهادت بدهید من اینجا هستم. هات اسپات های های شاهد لوکیشن ماینر هات اسپات شما را تایید میکنند. چالش Poc تکمیل میشود و عوامل شرکت کننده در چالش پاداش میگیرند.

هلیوم احتمالا اولین تیمی هست که از 8 سال پیش روی این ایده سرمایه گذاری و کارکرده و نوآوری ها و هدف والایی که دنبال میکنند واقعا شایسته تقدیر هست! چند ماهی هست که با این پروژه آشنا شدم و در کامیونیتی های هلیوم حضور دارم و ارتباطات جالبی با نهنگ های هلیوم که در بین انها افراد ایرانی هم هست پیدا کردم! متاسفانه تاکنون نود ای در کشورمون روشن نشده اما خوشحال میشم اگه اطلاعات بیشتری در این زمینه و یا تلاش ها برای اجرای این پروژه دارید به اشتراک بگذارید. همچنین رپوزتوری ای در گیت هاب هلیوم با عنوان چگونه هات اسپات هلیوم خودمون رو بسازیم دیدم و ایده ساخت مودم شخصی بجای خرید مودم های 600 دلار به بالای هلیوم هم جالب بود. مطالب زیادی برای اضافه کردن بود اما خیلی طولانی میشد. امیدوارم مفید بوده باشه و لذت برده باشید. ممنون از همراهیتون.

منابع:

http://whitepaper.helium.com/

https://explorer.helium.com/txns/qmJF48v8ZlEfsPg_7jc2CrsLlOvgC7w-pvB_BWQAoOk

https://nodle.io/

2 Likes

مطلب ارسالی تون خیلی کامل و جامع بود .ممنونم. :+1: :+1: :+1:

1 Likes

خواهش میکنم لطف دارید

1 Likes