تاریخ انتشار: 12 دی 1401 | آخرین بهروزرسانی: 21 تیر 1402
زمان مطالعه:
4 دقیقه
هر چقدر دنیای بلاکچین گستردهتر و پیشرفته میشود، دانشمندان و محققان سعی میکنند، مشکلات قبلی را برطرف کنند و راهحلهای بهتری ارائه دهند. دقیقا مثل اتفاقی که برای اتریومدر حال رخداد هست و اتریوم 2 خلق شد و یا راهحل سه راهی بلاکچین برای حل برخی از مشکلات بلاکچین. یکی از مواردی که در بلاک چین نیاز به آپدیت دارد، نحوه به توافق رسیدن نودها یا به اصطلاح علمی، الگوریتم اجماع است. الگوریتم اجماع دیگری که برای بهبود زیر ساخت بلاک چین ارائه شده است الگوریتم تندرمینت (Tendermint) نام گرفته است.
برای آشنایی بیشتر با تندرمینت و اینکه چگونه با کمک الگوریتم تحمل خطای بیزانس میتوان به یک الگوریتم اجماع با بهرهوری بالا دست پیدا کرد با این نوشتار از آکادمی بیتپین همراه باشید.
تندر مینت زاییده ذهن ایثن بوکمن (Ethan Buchman) و جائه کووان (Jae Kwon) دو مهندس معمار نزم افزار بلاکچین است که در سال 2014 خلق و راهاندازی شد. به صورت کلی اگر بخواهیم به این سوال که در مینت چیست پاسخ دهیم باید بگوییم تندرمینت یک پروتکل بلاک چین است؛ که برای تکثیر و راهاندازی اپلیکیشنهای بلاکچین به وسیله ماشینها و به صورت امن و سازگار استفاده میشود.
همچنین تندرمینت به عنوان «Tendermint Core»، پروتکی که میتواند با بلاکچینهای درون یک شبکه و بلاکچینهای خارجی ارتباط برقرار کند نیز شناخته میشود. یکی از قابلیت های تندرمینت ایجاد یکپارچه از هر سیستم بلاکچینی است.
برای اینکه متوجه بشویم رابطه تندرمینت و بلاک چین به چه صورت است بیایید با یک مثال این موضوع را شرح دهیم.
یک پیتزا را تصور کنید، تندر مینت پایه یا همان خمیر پیتزا است؛ که در واقع به توسعهدهندگان اجازه میدهد برنامه های بلاکچینی متفاوتی را خلق و اختراع کنند. هنگامی که پایه یک فناوری ایجاد شود انواع رویههای مختلف را می توان به آن اضافه کرد در مورد پیتزا این رویه ها میتوانند پپرونی یا قارچ باشند و در تندر مینت بلاکچینهایی مانند کازماس خواهد بود.
تندرمینت از دو بلاک اصلی تشکیل شده است :موتور اجماع بلاک چین و رابط کاربری عمومی
موتور اجماع بلاک چین
موتور اجماع بلاک چین تضمین میکند، تراکنشهای هر ماشین با یک ترتیب ثابت ثبت شود که این امر باعث تسهیل شبکه همتابههمتا و ارائه الگوریتم اثبات سهام میشود.
رابطه کاربری عمومی (Tendermint’s Application Blockchain Interface)
با رابط برنامه بلاکچین تندرمینت (ABCI) تراکنشها را میتوان در هر زبان برنامهنویسیای پردازش کرد. بنابراین ABCI ابزاری در بلاک چین برای پیوند دادن پروتکل هسته تندرمینت (Tendermint Core) است. یعنی برنامهنویسان با هر زبان برنامه نویسی میتوانند برنامه بسازند و تراکنش ایجاد کنند و با استفاده از رابط کاربری عمومی و هسته تندمین و در آخر به بلاک چین وصل شوند.
هسته تندرمینت (Tendermint Core)
در هسته تندر مینت در ابتدا گواه اثبات سهامبه عنوان مکانیسم اجماع استفاده میشود و در آن نودها به صورت تصادفی و به صورت Round Robin انتخاب میشوند. در این روش نوبت به همه نودها میرسد اما هرچه میزان استیکینگیک گره بالاتر باشد شانس انتخاب شدن آن نیز بیشتر میشود.
هر نودی که انتخاب میشود در مرحله بعد نیاز است یک بلاک پیشنهاد دهد و در صورت تایید گرههای دیگر، بلاک به زنجیره اضافه میشود و دیگر نیازی به تاخیری بابت تایید اعتبار تراکنش نیست. همان طور که پیش از این نیز خواندید تندرمینت کور ضمانت میکند تراکنشهایی که بر روی دستگاهها انجام میشوند به یک ترتیب مشخص قرار بگیرند.
به بیان دقیق تر تندرمینتکور مسئولیت اشتراک گذاری بلوک ها و تراکنش بین گرهها در بلاک چین است.
کاربرد تندر مینت
اگر بخواهیم بدانیم از تندرمینت برای چه چیزهایی میتوان استفاده کرد باید بگوییم تندرمینت به عنوان یک موتور بلاکچین عمل میکند که برنامهنویسان و توسعهدهندگان را قادر میسازد تکنیکهای فنی پر زحمت و مشکل رمزنگاری را در بلاک چین کنار بگذارند.
از پیوند بلاکچین و هوش مصنوعی، به پول میرسیم؟
جوابت تو شماره ۱۴ ماهنامه دامیننسه!
تندرمینت چگونه کار میکند؟
برخلاف معماری یکپارچه معماری تندر مینت از اجزای مستقل استفاده میکند بنابراین میتوان بدون ایجاد تغییرات قابلتوجهی در سیستم قسمتی از برنامه را بهروزرسانی کرد. این راهحل با کمک الگوریتم تحمل خطای بیزانس به دست میآید. در این روش اعتبارسنجهای نیاز ندارند بهصورت همزمان عمل کنند و اعتبار سنجی به صورت دورهای انجام خواهد شد و اگر اشتباهی رخ داده باشد، همان قسمت را میتوان اصلاح کرد.
الگوریتم تندرمینت از یک ماشین حالت تبعیت میکند که در هر زمان میتواند یک حالت داشته باشد. اگر بخواهیم این مفهوم را در بلاکچین تعریف کنیم: اگر یک گره از حالت قبلی پیروی کند و پروسهای انجام دهد، مرحله آخر را به همان شکل تمام میشود.
اهداف تندر میت
از اهداف اصلی تندرمینت میتوان به دو مورد زیر اشاره کرد:
تجمیع لایههای بلاکچین و تهیه شبکه به عنوان پلتفرمی برای توسعه برنامههای غیر متمرکز
ایجاد تمرکز هر چه بیشتر توسعهدهندگان بر روی لایه کاربردی بلاکچین، به جای اینکه همزمان بر روی لایههای اجماع و شبکه کار کنند
الگوریتم تحمل خطای بیزانس چیست؟
الگوریتم تحمل خطای بیزانس راه حلی برای مشکلات روش اجماع بلاک چین است. در این الگوریتم شرکت کنندگان در یک فضای توزیع شده باید بتواند در یک زمان مشخص به توافق رسیده و ارتباط برقرار کنند و این در حالی است که هر کدام از آنها از اینکه آیا نودهای دیگر شبکه در رفتار و کلام خود صادق هستند یا خیر بی اطلاع هستند.
اگر گرهای در شبکه به دلخواه یا اجبار از کار بیفتد و یا اینکه هر کدام از ماشینها رفتار مخرب از خود نشان دهند خطای بیزانس حساب میشود و مدیریت آن به عنوان تحمل خطای بیزانس محسوب میشود.
گفتار پایانی!
تندرمینت به عنوان روشی برای توسعهدهندگان برای ساخت بلاک چینهای مختلف است. البته این فناوری نیاز به پیشرفت دارد و کارهای زیادی برای پیشرفت در آن میتوان انجام داد. به عنوان مثال ضمانتهای الگوریتم که درباره آن صحبت شد، به صورت رسمی تایید نشدهاند . با تغییرات معماری، میتوان ظرفیت را افزایش داد.
سوالات متداول
تندرمینت چیست؟
تندرمینت یک پروتکل بلاکچین است که برای راهاندازی و تکثیر برنامههای بلاکچینی به روشی ایمن و سازگار استفاده میشود.
تندرمینت چگونه کار میکند؟
تندرمیت از معماری ماژولار استفاده میکند و برای انجام فعالیت به زمان متکی است. در اینباره در مقاله به صورت کامل توضیح دادهایم
تیم محتوا بیتپین
تدوین و بررسی مطالب حوزه کریپتو و خلق مقالات کاربردی در حوزه ارزهای دیجیتال.
سلام حسین عزیز
از اینکه نظرات و پیشنهادات سازنده خودتون رو با ما به اشتراک میذارید، بسیار ممنونیم.
درخواست شما به تیم مربوطه ارجاع داده شد تا در صورت تایید، در آینده این بخش هم به بیت پین اضافه بشه.
به امید معاملات پرسود شما در بیت پین
سلام بخش مشاوره را اضافه کنید لطفاً و خواهشن
سلام حسین عزیز
از اینکه نظرات و پیشنهادات سازنده خودتون رو با ما به اشتراک میذارید، بسیار ممنونیم.
درخواست شما به تیم مربوطه ارجاع داده شد تا در صورت تایید، در آینده این بخش هم به بیت پین اضافه بشه.
به امید معاملات پرسود شما در بیت پین