الگوریتم تندرمینت چیست؟
بسیاری از مردم معتقدند که ساختار شبکه های بلاک چین موجود باید تغییر کند زیرا این الگوریتم ها بسیار قدیمی و ناامن هستند. یکی از مواردی که منجر به تغییر قابل توجهی در مکانیسم بلاک چین می شود، تغییر روش هایی است که گره ها برای رسیدن به توافق یا الگوریتم های اجماع استفاده می کنند. در این مقاله می خواهیم در مورد به اصطلاح زیرساخت یا پروتکل صحبت کنیم الگوریتم Tendermint من صحبت می کنم برای درک بهتر این آالگوریتم tendermint چیست و چگونه کار می کند، تا پایان مقاله با ما همراه باشید.
الگوریتم ترندمینت در ارز دیجیتال چیست؟
الگوریتم اجماع Tendermint یک الگوریتم اجماع برای ارزهای دیجیتال است که برای حل مشکل امنیت شبکه و اطمینان از اجرای صحیح تراکنش های بین کاربران استفاده می شود. در این الگوریتم، گروهی از گره های شبکه به عنوان اعضای کاندید برای تولید بلوک ها انتخاب می شوند. سپس یکی از این گره ها به عنوان گره اصلی انتخاب می شود که وظیفه تولید بلوک بعدی را بر عهده دارد. گره های دیگر نیز محاسباتی را برای تأیید اعتبار بلوک تولید شده توسط گره پایه انجام می دهند. اگر اکثر گره ها از اعتبار بلوک مطمئن باشند، بلوک در شبکه تایید شده و به تاریخچه بلوک های قبلی اضافه می شود.
در الگوریتم Tendermint از رمزنگاری برای اطمینان از امنیت و حفظ حریم خصوصی تراکنش ها استفاده می شود. همچنین این الگوریتم از فناوری بلاک چین استفاده می کند که تمامی تراکنش ها و تغییرات شبکه را ثبت و ذخیره می کند. استفاده از الگوریتم Tendermint در ارزهای دیجیتال باعث افزایش امنیت و شفافیت در شبکه های بلاک چین شده و بستری قابل اعتماد برای تراکنش های مالی و غیر مالی ایجاد می کند.
هدف از الگوریتم tendermint چیست؟
Tendermint از توسعه دهندگان می خواهد که روی لایه برنامه تمرکز کنند و برنامه های غیرمتمرکز بسازند. این پلت فرمی را فراهم می کند که جدا از شبکه و لایه های اجماع بلاک چین است، بنابراین آنها روی دو لایه دیگر به طور همزمان عمل نمی کنند.
چگونه با الگوریتم Tendermint کار کنیم؟
Tendermint از یک ساختار مدولار استفاده می کند که دارای اجزای نرم افزاری مستقل است، برخلاف ساختار یکپارچه. این ویژگی امکان تغییر بخشی از برنامه را بدون ایجاد تغییرات قابل توجه در کل سیستم فراهم می کند. این راه حل با توجه به الگوریتم تحمل خطا بیزانس به دست آمده است. الگوریتم اثبات سهام BFT بر مشکل گسل بیزانسی با استفاده از یک مدل نیمه همزمان غلبه می کند. این بدان معنی است که اعتباردهنده ها نیازی به اجرای همزمان ندارند، یعنی. همزمان. اعتبارسنجی به طور مرتب انجام می شود و در صورت بروز خطا همان قسمت اصلاح می شود.
الگوریتم Tendermint برای کار بر مفروضات طراحی متکی است. این پروتکل از یک ماشین حالت ساده به شرح زیر پیروی می کند. ماشین حالت اصطلاحی از علم کامپیوتر است که یک ماشین می تواند چندین حالت داشته باشد. توجه داشته باشید که این دستگاه در هر زمان تنها می تواند یک حالت داشته باشد. این مفهوم در بلاک چین به این معنی است که وقتی یک گره از یک حالت قبلی پیروی می کند و یک فرآیند را اجرا می کند، آخرین مرحله را به همین ترتیب تکمیل می کند.
این پروتکل از طریق اعتبارسنجی پیاده سازی می شود. وظایف آنها شامل پیشنهاد و رأی گیری در مورد بلوک های جدید است. هر بلوک پیشنهادی برای رای گیری در صف قرار می گیرد. اگر در طول رای گیری به شبکه اضافه نشود، پروتکل به دور بعدی منتقل می شود. گره بعدی باید یک بلوک برای آن عدد (ارتفاع) ارائه دهد. برای افزودن موفقیت آمیز یک بلوک به زنجیره، دو دور رای گیری لازم است. این دو مرحله را پیش رای گیری و پیش الزام آور می نامند. یک بلوک زمانی به شبکه اضافه می شود که بیش از دو سوم اعتبارسنجی ها قبلاً آن را تکمیل کرده باشند.
هنگامی که بیش از دو سوم اعتباردهندگان به یک بلوک رای میدهند، تیم Tendermint آن را یک هنگ مینامد. هر اقدام مقدماتی باید توسط هنگ در همان سطح تعیین شود. در برخی موارد، اعتبار سنجی ها ممکن است نتوانند در این فرآیند شرکت کنند. دلیل ممکن است آفلاین یا کندی شبکه باشد. پروتکل Tendermint اجازه می دهد تا این گره نادیده گرفته شود. از آنجایی که Tendermint یک الگوریتم اجماع نیمه همزمان است، گرهها میتوانند منتظر بمانند تا یک بلوک کامل از پیشنهادات را قبل از رفتن به مرحله بعدی دریافت کنند.
Tendermint با این فرض که کمتر از یک سوم اعتباردهنده ها بازیگران بدی هستند یا در بهترین حالت یک خطای بیزانسی هستند، امنیت شبکه را تضمین می کند. به عنوان مثال، الگوریتم Tendermint به گره ها اجازه نمی دهد تا بلوک های دیگر و مخالف را در یک ارتفاع اعمال کنند. این پروتکل از روش قفل استفاده می کند. هنگامی که یک اعتبارسنجی یک بلوک را از قبل تعیین می کند، آن بلوک را قفل می کند. پس از ممنوعیت، آنها باید در همان بلوکی که از آن ممنوع شده بودند، پیش رای دهند. فقط در صورتی که وام دهنده برنامه ریزی شده ما از حالت قفل خارج شود و بتواند بلوک جدیدی را برای آن بلوک در دوره بعدی هنگ از قبل تعیین کند.
در کدام پروژه ها از نعناع استفاده می شود؟
برخی از پروژه ها از الگوریتم Tendermint و کیت توسعه Cosmos در سیستم خود استفاده می کنند، برخی دیگر نمونه هایی هستند که در اکوسیستم Cosmos پیاده سازی شده اند. این پروژه ها شامل شبکه هایی مانند Terra، Oasis، Regen Network، IRISnet و Binance Dex است. همانطور که گفته شد، برخی از پروژه ها نمونه هایی از مدل شبکه اصلی اکوسیستم Cosmas هستند. یکی از معروف ترین این پروژه ها اتریوم است. این شبکه Ethermint نام دارد.
فناوری استفاده شده در این تبدیل Hard Spoon است. مکانیسم اجماع PoW از اتریوم حذف شده است و دارندگان اتر ارز دیجیتال فوتون را برای پرداخت هزینه های شبکه Cosmos دریافت خواهند کرد. توسعه دهندگان اتریوم به راحتی می توانند قراردادهای هوشمند خود را به موتور جدید انتقال دهند. این مکانیسم میتواند به کاربران یک دید کلی از پیادهسازی اتریوم ۲ کاسپر بدهد.
الگوریتم Tendermint و اجزای آن
Tendermint را میتوان نرمافزاری دانست که بهطور ایمن و پیوسته اجرا میشود و همان برنامه را روی رایانههای مختلف اجرا میکند. ایمن به این معنی است که اگر یک سوم دستگاه ها از کار بیفتند، Tendermint به کار خود ادامه می دهد. تداوم همچنین به معنای حالتی است که در آن ماشین ها موقعیت و تراکنش را می بینند و محاسبه می کنند.
نعنا از دو قسمت اصلی تشکیل شده است. یکی قسمت یا هسته مرکزی Tendarmint، موتور اجماع و پروتکل شبکه همتا به همتا، و دیگری رابط کاربری Tendarmint است که به آن رابط برنامه بلاک چین می گویند. در ادامه به جای بلاکچین API از مخفف ABCI استفاده می کنیم.
ممکن است چندین سوکت ارتباطی بین ABCI و یک برنامه وجود داشته باشد. هسته tendermint سه مسیر ارتباطی از ABCI به برنامه ایجاد می کند. یکی برای اعتبارسنجی تراکنش ها پس از انتشار در ممپول، دیگری برای موتور اجماع و بلوک های اجرایی پیشنهادی، و دیگری برای درخواست ها و اطلاعات وضعیت برنامه است.
هسته Tendermint
از آنجایی که مکانیسم اجماع مورد استفاده اثبات سهام است، گره ها در مرحله اول به طور تصادفی انتخاب می شوند. انتخاب بر اساس Round Robin است، به این معنی که همه گره ها دارای نوبت هستند. هر چه سهام یک گره بیشتر باشد، شانس انتخاب آن بیشتر است.
گره انتخاب شده باید یک بلوک ارائه دهد. در صورت موافقت سایر گرهها، بلوک بلافاصله به زنجیره اضافه میشود و برخلاف سایر شبکهها، نیازی به منتظر ماندن برای اعتبارسنجی تراکنش نیست. هسته tendermint تضمین می کند که تراکنش ها با نظم خاصی در همه دستگاه ها قرار می گیرند. این بخش یک موتور اجماع BFT بلاکچین و شبکه همتا به همتا است. به طور خلاصه، هسته tendermint مسئول به اشتراک گذاری بلوک ها و تراکنش ها بین گره ها و ایجاد نظم متعارف و تغییرناپذیر تراکنش ها در بلاک چین است.
رابط ABCI
Tendermint با استفاده از یک ساختار مدولار، لایه کاربردی را از لایه های اجماع و شبکه جدا کرده است. بنابراین کسانی که قصد ایجاد اپلیکیشن را دارند می توانند بدون در نظر گرفتن لایه های دیگر اپلیکیشن خود را راه اندازی کنند. این ممکن است برای کاربران نهایی یا کاربران عادی هیجان انگیز نباشد، اما برای توسعه دهندگانی که می توانند برنامه های کاربردی خود را بدون نیاز به راه اندازی کل شبکه بسازند، بسیار مهم است. یکی دیگر از ویژگی های متمایز Tendermint این است که توسعه دهندگان می توانند از هر زبان برنامه نویسی برای تراکنش و ساخت برنامه ها و اتصال به هسته Tendermint و در نهایت بلاک چین از طریق رابط کاربری ABCI استفاده کنند.
رابط ABCI شامل سه نوع اصلی پیام است که از هسته به لایه برنامه (لایه برنامه) ارسال می شود.
پیام DeliverTX: هر تراکنش در بلاک چین با این پیام برچسب گذاری می شود. برنامه باید هر تراکنش ورودی را با یک پیام DeliverTX تأیید کند، پس از آن هر تراکنش تأیید شده باید وضعیت برنامه را به روز کند. این کار، به عنوان مثال، با به روز رسانی پایگاه داده UTXO یا ذخیره مقادیر کلیدی انجام می شود.
پیام CheckT: این پیام مشابه پیام قبلی است، اما فقط برای تایید تراکنش ها استفاده می شود. هسته Tendermint Mempool ابتدا اعتبار تراکنش ها را با یک پیام CheckTX بررسی می کند و در صورت صحیح بودن آنها را برای همتایان خود ارسال می کند.
تعهد: این پیام برای محاسبه رمزگذاری در برنامه حالت فعلی و اضافه کردن آن به هدر بلوک بعدی استفاده می شود. یکی از مزایای این ویژگی این است که توسعه مشتریان سبک تر و ایمن تر را آسان تر می کند. زیرا اثبات هش مرکل را می توان با تأیید هش بلوک و محدودیت امضا تأیید کرد.
مزایا و معایب الگوریتم Tendermint چیست؟
مزایای حراج
- عملکرد بالا (معاملات به سرعت تایید می شوند)
- مقیاس پذیری افقی (با استفاده از سیستم منطقه بندی)
- پشتیبانی از تمامی زبان های برنامه نویسی
- صرفه جویی در منابع محاسباتی در مقایسه با PoW
معایب مناقصه
- انگیزه پایین افراد با سپرده کم
- حبس طولانی سرمایه