بلاکچین چیست؟
دوره بنیادین ارزهای دیجیتال- جلسه دوم
بلاکچین چیست؟
بلاکچین شبکهای از بلوکها میباشد که توسط زنجیرهایی به یکدیگر متصل شدهاند. وقتی از واژه بلاکچین استفاده میکنیم، در واقع در مورد دو حرف بلاک (به معنی بلوک) یا همان اطلاعات دیجیتالی و چین (به معنی زنجیر) که همان بانک اطلاعاتی عمومی است صحبت میکنیم.
بلوکها در بلاکچین از قطعات اطلاعاتی دیجیتالی تشکیل شدهاند، این اطلاعات بهخصوص شامل سه بخش زیر میباشند:
- بلوکها اطلاعات تراکنشها مانند تاریخ، زمان و حجم دلاری آخرین معامله.
- بلوکها، اطلاعاتی را در مورد طرفین تراکنش ثبت میکند. یک بلاک برای خرید شما از وبسایت آمازون نام شما را در کنار نام این شرکت در لیست اطلاعات تراکنشی ثبت مینماید. بهجای استفاده از نام واقعی شما، پرداخت شما با اطلاعاتی به نام “امضای دیجیتال” که مختص به شما هستند ثبت و ذخیره میگردند. این امضاهای دیجیتال مانند یک نام کاربری برای کاربر میباشند.
- بلوکها اطلاعاتی را ذخیره میکنند که با اطلاعات ذخیرهشده در دیگر بلوکها متفاومت میباشند. همان طور که من و شما نام متمایزی برای مشخص شدن خود داریم، هر بلوک نیز کدهای خاص و منحصربهفردی با نام هَش (Hash)در خود ذخیره میکنند که باعث تمایز آن بلوک از دیگر بلوکهای شبکه میشود. هَشها کدهای رمزنگاری شدهای هستند که با استفاده از الگوریتمهای پیچیده ریاضی ساخته شدهاند. فرض کنید که یک پرداخت در وبسایت آمازون انجام دادهاید، اما در حین پرداخت پول، متوجه میشوید که نیاز به یک محصول دیگر دارید. در این صورت اطلاعات تراکنش جدید شما مشابه اطلاعات تراکنش قبلی خواهد بود و این تفاوت در هَش (Hash) خود باعث تمایز بلوکها از یکدیگر خواهد شد.
بلوکی که در مثال بالا به آن اشاره کردیم تنها یک تراکنش از سایت آمازون را ثبت کرد. بلوکها در شبکه بلاکچین کمی متفاوتتر هستند، هر بلوک میتواند تا 1 مگابایت اطلاعات را در خود ذخیره کند. این برابر با جمع کردن اطلاعات چندهزار تراکنش در یک بلاک خواهد بود.
برای دیدن جلسه آموزش قبلی لینک را دنبال نمایید.
برای دیدن جلسه آموزشی بعدی لینک را دنبال نمایید.
بیشتر بدانید...
بلاکچین چگونه کار میکند؟
هنگامی که یک بلوک اطلاعات جدیدی را در خود ثبت کند، به شبکه بلاکچین خواهد پیوست. همان طور که از نام بلاکچین برمیآید، این شبکه مجموعهای از بلوکهایی است که سفتوسخت به یکدیگر متصل شدهاند. برای اضافه شدن یک بلوک به شبکه بلاکچین، چهار اتفاق باید رخ دهد:
- یک تراکنش باید صورت بگیرد. بیایید با مثال قبلی در مورد خرید سریع شما از سایت آمازون ادامه بدهیم. پس از اینکه بر روی گزینههای موجود کلیک کردید و مقادیر مدنظر هر کدام را وارد نمودید، در نهایت تصمیمگیری میکنید و یک خرید انجام میدهید. همان طور که در بالا اشاره کردیم، بلوکها، اطلاعات هزاران تراکنش را گردآوری میکنند، و اطلاعات پرداخت شما به آمازون نیز در کنار اطلاعات هزاران پرداخت دیگر دستهبندی خواهد شد.
- تراکنشی که انجام دادید باید مورد تأیید قرار گیرد. پس از تکمیل پرداخت، تراکنش شما مورد تأیید قرار خواهد گرفت. مانند دیگر مراکز ثبت اطلاعات مانند کمیسیون معاملات اوراق بهادار، ویکیپدیا یا حتی کتابخانه محلی شما که شخصی مسئول تأیید اطلاعات میباشد، در بلاکچین این وظیفه برعهده شبکهای از کامپیوترها میباشد. زمانی که شما خرید خود را از آمازون تکمیل نمودید، این شبکه کامپیوتری بهسرعت بهدنبال تأیید اطلاعات تراکنش شما میرود. اطلاعاتی از قبیل جزئیات پرداخت انجامشده، زمان پرداخت، حجم دلاری پرداخت و طرفین معامله همگی در کسری از ثانیه مورد بررسی قرار میگیرند.
- این تراکنشها باید در یک بلوک ذخیرهسازی شوند. پس از این که اطلاعات شما به دقت مورد تأیید واقع شدند، چراغ سبزی برای ذخیره شدن در بلوک دریافت میکنند. حجم دلاری تراکنش، امضای دیجیتال شما و امضای دیجیتالی آمازون همگی در این بلوک ذخیرهسازی میشوند. در آنجا اطلاعات تراکنش شما به صدها یا هزاران اطلاعات مشابه میپیوندد.
- به بلوک جدید باید یک هَش (Hash) اعطا شود. مثل هر فرشته که بالهایی برای پرواز دارد، هر بلوک هم برای اضافه شدن به شبکه نیازمند یک کد اختصاصی و شناساییکننده تحت عنوان هَش میباشد. به هر بلوک علاوه بر هَش اختصاصی خود، هَش بلوک قبلی نیز اضافه میشود. پس از اینکه هَشها به بلوک اضافه شدند، این بلوک میتواند به شبکه بلاکچین متصل شود.
زمانی که این بلوک به شبکه اضافه میگردد، بهطور عمومی برای همه (و شما) در دسترس و قابل مشاهده خواهد بود.
اگر نگاهی به بلاکچین بیت کوین بیاندازید میتوانید به اطلاعات تراکنشها دسترسی داشته باشید. اطلاعاتی از قبیل زمان، مکان ذخیرهسازی رخداد “تحت عنوان Height” و شخص اضافهکننده آن بلاک به بلاکچین قابل رؤیت خواهند بود.
آیا (اطلاعات) بلاکچین خصوصی میباشد؟
هرکسی میتواند به محتویات داخل بلاکچین دسترسی داشته باشد، اما استفادهکنندگان میتوانند انتخاب کنند که کامپیوتر خود را نیز به شبکه بلاکچین با عنوان گِرِه (Node) متصل نمایند.
با انجام دادن این کار، کامپیوتر شخص یک کپی از تمامی اطلاعات بلاکچین دریافت میکند. اطلاعاتی که در زمان اضافهشدنِ هر بلوک به شبکه، بهصورتِ خودکار بهروزرسانی خواهند شد.
هر کامپیوتر در شبکه بلاک چین دارای یک نسخه کپیشده از اطلاعات بلاکچین میباشد. این بدین معنی است که هزاران – و در مورد بیت کوین – میلیونها کپی از اطلاعات یک بلاکچین در بین خیل عظیمی از دستگاهها وجود دارد.
با وجود اینکه کپیهای موجود از بلاکچین کاملا یکسان میباشند، اما پخش کردن صحیح این اطلاعات بدون دستکاری در شبکه کار دشواری میباشد.
در بلاکچین، تنها دستکاری اطلاعات یک حساب یا یک رویداد کافی نیست. زیرا برای تغییر کامل آن اطلاعات، باید این اطلاعات در تمام نسخههای بلاکچینی که در تمامی این دستگاهها ذخیرهسازی شده است مورد دستکاری قرار گیرد. به همین دلیل است که بلاکچین را دفتر کل پخش شده مینامند.
با نگاهی به بلاکچین بیت کوین، متوجه میشوید که شما دسترسی به اطلاعات هویتی افرادی که مشغول به انجام معاملات و تراکنشها میباشند ندارید. با این وجود این تراکنشها در شبکه بلاکچین وضعیت کاملاً محرمانهای نیز ندارند. اطلاعات در دسترس شما از کاربران شامل امضای دیجیتال شخصی یا نام کاربری او میشود.
آیا بلاکچین امن است؟
تکنولوژی بلاکچین برای مشکلات امنیتی و اطمینانی راهحلهای زیادی را در نظر گرفته است. در وهله اول، باید اشاره کنیم که بلوکهای جدید بهصورت خطی و براساس زمان اضافهشدنشان به شبکه ذخیرهسازی میشوند.
به همین سبب، بلوکهای جدید همواره به انتهای شبکه اضافه میشوند. اگر نگاهی به بلاکچین بیت کوین بیاندازید، شاهد موقعیت قرارگیری هر بلوک در شبکه خواهید بود، که به این موقعیت قرارگیری اصطلاحاً ارتفاع (Height) گفته میشود.
پس از این که بلوک به آخر زنجیره بلاکچین اضافه شد، ایجاد تغییر در محتویات آن بلوک بسیار مشکل خواهد بود. دلیل سخت بودن این تغییر نیز اختصاص داشتن یک کُد هَش بهخصوص بهازای هر بلوک است.
این هَش در هر بلوک در کنار هَش بلوک قبلی خود قرار میگیرد. کُدهای هَش توسط معادلات ریاضیاتیای ساخته میشوند که اطلاعات دیجیتال را تبدیل به رشتهای از اعداد و حروف میکند. اگر اطلاعات موجود در هر بلوک به هر نحوی تغییر کنند، کُد هَش نیز تغییر خواهد کرد.
همین تغییر کُد هَش نکتهای مهم در امنیت شبکه بلاکچین است. فرض کنید که یک هکر قصد ویرایش اطلاعات تراکنش مالی بین شما و آمازون را داشته باشد و آن را بهشکلی که شما در آن دو بار پول پرداخت کردهاید تغییر دهد. بلافاصله پس از ویرایش عدد حجم دلاری معامله، کُد هَش بلوک عوض میشود. اما کُد هَش بلوک بعدی در همان عدد قبلی خود ثابت میماند و هکر نیاز دارد تا اطلاعات بلوک بعدی را نیز ویرایش کرده تا ردپای خود را گم کند.
پس از تغییر اطلاعات بلوک جدید، باید بهسراغ تغییر دادن اطلاعات بلوک بعدی برود. این چرخه تا آخر ادامه خواهد داشت. برای ایجاد یک تغییر کوچک در یک بلوک، هکر نیازمند ایجاد تغییرات اطلاعاتی در تکتک بلوکهای حاضر در شبکه بلاکچین خواهد بود.محاسبه دوباره تمامی هَشها نیازمندِ توانِ پردازشی بسیار عظیم و تقریباً ناممکنی خواهد بود. بهبیان دیگر، زمانی که یک بلوک به شبکه افزوده میشود تغییر دادن آن بسیار سخت و حذف کردن آن از شبکه تقریباً ناممکن میشود.
برای برطرف کردن مشکل اطمینان، شبکه بلاکچین تستهایی را برای کامپیوترهایی که خواهان ورود به شبکه هستند قرار داده است.این تستها که با نام “تستهای اجماع” شناخته میشوند، از کاربران میخواهند تا خود را پیش از عضو شدن در شبکه بلاکچین ثابت کنند.یکی از مشهورترین این تستها که توسط شبکه بیت کوین نیز مورد استفاده قرار میگیرد سیستم اثبات کار نام دارد. در سیستم اثبات کار، کامپیوترها باید با حل مسائلی محاسباتی و پیچیده ثابت کنند که بهکار مشغول هستند. اگر کامپیوتری در حل یکی از این مسائل موفق شود، واجد شرایط ورود به شبکه بلاکچین میشود.
اما پروسه اضافه کردن بلوکها به شبکه بلاکچین که در دنیای رمز ارزها از آن تحت عنوان “استخراج کردن (Mining)” نام برده میشود کار سادهای نمیباشد. در واقع، تا ژانویه 2020، احتمال حل کردن تنها یکی از این مسائل 1 در 15.000 میلیارد میباشد. برای حل این مسائل، کامپیوترها باید هزینههای زیادی از لحاظ قدرت پردازشی و انرژی مصرفی (یعنی مصرف پول) صرف نمایند.
سیستم اثبات کار جلوی حملات هکرها را نمیگیرد، اما بهنحوی این حملات را بیفایده میکند. اگر هکری بخواهد حملهای به شبکه بلاکچین ترتیب دهد، نیاز دارد تا کنترل قدرت پردازشی بیش از 50 درصد از شبکه بلاکچین را در دست بگیرد تا بتواند تأثیر مورد نظرش را بر شبکه و دیگر استفادهکنندگان از آن اعمال کند.با توجه بهاندازه عظیم شبکه بلاکچین بیت کوین، این نوع حملات که به حملات 51 درصد مشهورند ارزش تلاش انجام شده را ندارند و البته امکان رخ دادن این حملات نیز تقریباً غیرممکن است.