قصد دارید بیتکوین استخراج کنید؟
در اسرع وقت برای مشاوره رایگان با شما تماس میگیریم

برای مطالعه قسمت قبل مقاله “بلاک چین چیست و چگونه کار می کند ” کلیک کنید.
یک الگوریتم اجماع در داخل یک بلاک چین مجموعه ای از قوانین در مورد نحوه اداره بلاک چین، نحوه فرموله کردن و توافق کاربران در مورد قوانین و نحوه انجام تراکنش ها است. حاکمیت جنبه مهمی برای زنجیره بلوکی است زیرا تعیین میکند که شبکه چقدر غیرمتمرکز یا متمرکز است. به عنوان مثال، الگوریتمهای اجماع بلاک چین به هر کاربری اجازه میدهد تا تغییراتی را در شبکه پیشنهاد دهد و بقیه به این پیشنهادات رأی دهند. در نسخههای تفویضی، کاربران نمایندگانی را انتخاب میکنند و از طرف دیگر کاربران، قوانین و شبکه را اداره میکنند.
برخی از نسخهها به کاربران اجازه میدهند تا بر اساس تعداد منابع (محاسبه یا مقدار ارزهای دیجیتال) که مشارکت میکنند، در حکمرانی مشارکت کنند. به عنوان مثال، در بیت کوین، ماینرها بر اساس تعداد منابع رایانه یا قدرت محاسباتی که برای پشتیبانی از شبکه و تأیید تراکنش ها مشارکت می کنند، به تغییرات رأی می دهند.
در الگوریتم اثبات کار، ماینرها برای ایجاد یک بلوک با هم رقابت می کنند و کسی که یک بلوک را با موفقیت ایجاد می کند. پس از ایجاد، با ارز دیجیتال پاداش می گیرد. ماینرها به اجازه یا رد پیشنهادهای ارتقاء ارسالی توسط سایر کاربران رأی می دهند.
اثبات کار (PoW) : این الگوریتم مبتنی بر ایده حل یک معمای پیچیده ریاضی برای ارائه یک بلوک راه حل است. به قدرت محاسباتی زیادی نیاز دارد و ماینری که برای استخراج یک بلوک معما را حل می کند و توسط بیت کوین پاداش می گیرد.
اثبات سهام (PoS) : این الگوریتم یک بلوک را تأیید می کند و سازنده بلاک بر اساس تعداد سکه های ذخیره شدخ در کیف پول انتخاب می شود. سپس برای یافتن بلوک پاداش دریافت می کنند. به عبارت دیگر، کد کامپیوتری الگوریتم، بیشترین شانس استخراج بیشتر تراکنش ها و در نتیجه بلوک را به شخصی که بیشترین مقدار سکه را در استخر اعتبارسنجی دارد، اعطا می کند. در دوره های بعدی اعتبارسنجی، شانس اعتبارسنجی انتخاب شده قبلی کاهش مییابد تا زمانی که اعتبار دهندههای دیگر نیز شانس تأیید یک بلوک را پیدا کنند.
برخی از بلاک چین ها از الگوریتم های ترکیبی برای استفاده از مزایای بیش از یک الگوریتم استفاده می کنند.
هنگامی که تراکنش ها به شبکه ارسال می شوند، هر یک باید در مدت زمان مشخصی کامل شوند. تراکنش هایی که همزمان ارسال می شوند در یک بلوک ترکیب می شوند. هش رمزنگاری برای تبدیل تراکنش ها به یک بلوک امن استفاده می شود، که سپس برای تشکیل یک زنجیره به هم متصل می شوند. یک تابع هش یا الگوریتم در این مورد استفاده می شود.
یک تابع هش رشته ورودی با هر اندازه ای را به یک خروجی رشته با طول ثابت (به نام هش) تبدیل می کند. مانند 32 بیت یا 64 بیت یا 128 بیت یا 256 بیت بسته به اینکه چه تابع هش استفاده می شود.
هش محصول فرعی رمزنگاری الگوریتم هش است که یک تابع یک طرفه است. به این معنی که نمی توان خروجی را دوباره به ورودی ها معکوس کرد. این الگوریتم همچنین یک خروجی منحصر به فرد تولید می کند. این ویژگیها برای مثال در ارز دیجیتال بیتکوین که در مکانیزم اجماع آن استفاده میشود، بسیار ضروری هستند.
خروجی به عنوان اثر انگشت دیجیتال برای مقدار مشخصی از اطلاعات عمل می کند. تراکنش ها به عنوان ورودی الگوریتم هش در ارزهای دیجیتال عمل می کنند. این الگوریتم هش که توسط آژانس امنیت ملی (NSA) در سال 2001 ایجاد شد. در بیت کوین و بسیاری از ارزهای دیجیتال دیگر استفاده می شود.
در هشینگ شروع رشته ای با هر طول ورودی، به یک رشته ثابت می رسد که مجموعه ای از اعداد و حروف است. به عنوان مثال ، فرض کنید یک الگوریتم هش را در رایانه خود نصب کرده اید و عبارت “This is a great tutorial” را تایپ می کنید. خروجی این است: 759831720aa978c890b11f62ae49d2417f600f26aaa51b3291a81621
یک تغییر کوچک در ورودی منجر به تفاوت زیادی در خروجی می شود و هر خروجی برای یک ورودی خاص منحصر به فرد است تا از برخورد جلوگیری شود. خروجی همیشه برای همان ورودی یکسان است که ثبات را تضمین می کند. به عنوان مثال، با تغییر کلمات ورودی به “this is a great tutorial” خروجی را به صورت 4bc35380792eb7884df411ade1fa5fc3e82ab2da76f76dc83e1baecf48d60018 دریافت می کنیم.
این یک تغییر بزرگ برای یک تغییر کوچک از “T” به “t” است.
بر خلاف رمزگذاری، توابع رمزنگاری برگشت ناپذیر هستند زیرا غیرممکن است که با چیزی مانند مقدار هش خروجی 4bc35380792eb7884df411ade1fa5fc3e82ab2da76f76dc83e1baecf48d60018 شروع شود .
هر بلوک جدید در زنجیره با هش کردن تراکنش های ارسالی در شبکه توسط شرکت کنندگان تشکیل می شود. به عنوان مثال، زمانی که آنها درخواست ارسال ارزهای دیجیتال یا ذخیره فایل ها را دارند. بلوک باید دارای یک شماره بلوک (تعداد آن در زنجیره)، فیلد داده، هش رمزنگاری مرتبط با آن و یک Nonce باشد.
Nonce در یک هش رمزنگاری استفاده می شود که معیار خاصی برای معتبر بودن را برآورده می کند. به عنوان مثال، فرض کنید که برای معتبر بودن خروجی هش، باید چهار صفر در لید داشته باشد. مانند موردی که در این خروجی وجود دارد:acbm010gfh1010xxx). 00001 در غیر این صورت باطل می شود. با استفاده از nonce معتبر می شود.
Nonce یک عدد تصادفی است. این باید به صورت دستی و بارها از طریق حدس و گمان تغییر کند. به طوری که وقتی به الگوریتم یا تابع هش همراه با بقیه اطلاعات بلوک وارد می شود. باید یک بلوک معتبر ارائه دهد که از قانون یا هدف پیروی می کند، به عنوان مثال با چهار صفر شروع می شود.
این در واقع همان کاری است که ماینرها در الگوریتم های اثبات کار انجام می دهند. نرم افزار ماینینگ به حدس زدن عددی که با یک شروع می شود به صورت تدریجی ادامه می دهد. این تا زمانی است که یک خروجی هش تولید کند که معیار یا هدف مشخص شده را برآورده کند، به حدس زدن ادامه می دهد.
مدت زمان انقضا که برای حدس صحیح برای یک مجموعه اطلاعات بلاک خاص نیاز است، از بلاکچینی به بلاک چین دیگر متفاوت است، بیت کوین 10 است. استخراج کننده ای که حدس درست را انجام دهد، در مورد اثبات اثبات، به ارز دیجیتال پاداش داده می شود. هنگامی که بلوک استخراج شد، به زنجیره قبلی اضافه میشود و آن را تغییرناپذیر یا غیرقابل تغییر میکند، اما همچنین از طریق کاوشگرهای بلاک چین در دسترس عموم قرار میگیرد.
در ارزهای رمزنگاری، مشکل دوبار خرج کردن با اطمینان از اینکه اولین تراکنش به تایید رسبده است به یک بلوک اضافه می شود و دیگری رد می شود، حل می شود. اگر هر دو تراکنش توسط ماینرهای مختلف به طور همزمان انتخاب شوند، تراکنشی که حداکثر تعداد تأیید را دریافت می کند به زنجیره اضافه می شود در حالی که دیگری رد می شود.
در هر بلاک چین مانند زنجیره بیت کوین، بلوک ها از 1 شروع می شوند و به n افزایش می یابند. هر بلوک حاوی اطلاعات هدر است، یعنی فیلد شماره بلوک ، فیلد اطلاعات ، فیلد nonce ، فیلد مقدار هش و فیلد قبلی. (فیلد قبلی مقدار هش بلوک قبل از آن را شرح می دهد.) به عنوان مثال، بلوک پیدایش شماره یک در هر زنجیره حاوی مقدار هش 0 و غیره خواهد بود.
یکی از مزیتهای زنجیره که منجر به تغییرناپذیر بودن بلوکها میشود این است که: اگر داده های هر بلوکی تغییر کند، به بلوک های دیگری که در شبکه هستند اطلاع داده می شود که تغییری در بلوک شماره x رخ داده است. به علاوه مجموعه جدیدی از دادهها پس از تغییر، اکنون دارای امضای جدیدی خواهند بود. یعنی این بلوک جدید به بقیه زنجیره زنجیر نمیشود و زنجیره را میشکند به طوری که تمام بلوکهای بعد از آن به زنجیره اصلی زنجیر نمیشوند. ماینرها شماره بلوک x را بهعنوان نامعتبر رد میکنند و به رکورد قبلی بلاک چین میروند که در آن همه بلوکهای دیگر به هم زنجیر شدهاند.
با این حال، تغییر اطلاعات ممکن است از طریق به روز رسانی نرم افزار و ارتقاء از طریق فرآیندی به نام فورکینگ انجام شود. ماینرها این گزینه را دارند که به نسخه جدید بروزرسانی کنند و با زنجیره جدید ادامه دهند یا به زنجیره قدیمی وفادار بمانند.
بلاک چین یک دفتر کل توزیع شده را معرفی می کند که می تواند در دستگاه های شبکه به اشتراک گذاشته شود. افراد در شبکه می توانند فایل ها و مقادیری مانند ارزهای دیجیتال را به صورت ایمن و بدون نیاز به واسطه به اشتراک بگذارند. این به معنای کاهش وقفه است و هیچ نقطه خرابی واحدی وجود ندارد.
مهمترین جنبه های بلاک چین امنیت آن است که توسط رمزنگاری تضمین می شود. مقیاس پذیری که در آن شبکه باید میلیون ها کاربر را بدون به خطر انداختن امنیت و قابلیت اطمینان در خود جای دهد و تمرکززدایی، یعنی کنترل و حاکمیت باید توسط همه افراد در شبکه و نه تعداد کمی از افراد انتخاب شود.
قوانینی که به موجب آن افراد در مورد معاملات و ایجاد زنجیره به توافق می رسند، الگوریتم یا مکانیسم های اجماع می گویند. اساس این مکانیسمها اثبات کار است که در آن افراد بر اساس میزان قدرت پردازش رایانهای که مشارکت میکنند، در مورد اینکه چه زمانی و چه زمانی تراکنشها انجام میشوند یا پردازش میشوند، توافق میکنند.