زنجیره بلوکی چیست؟
در سادهترین تعریف، زنجیره بلوکی یک پایگاه داده دیجیتالی توزیع شده است که بلوکهای دادهای آن به ترتیب زمانی سازماندهی شدهاند. زنجیره بلوکی برای ایمنسازی بلوکها از توکنهای رمزنگاریشده استفاده میکند تا امنیت بلوکها افزایش پیدا کند. همین مسئله باعث شده تا پیادهسازی این فناوری در صنایع مختلف روند انجام کارها را دقیقتر و ایمنتر کند. ایده اصلی این است که زنجیرهای بلوکی غیرمتمرکز و ایمن به کاربران اجازه دهند برای استفاده از شبکهها یا بازارها نیازی به اشخاص یا شرکتهای واسطه نداشته باشند. با این حال، کارشناسان بر این مسئله اتفاق نظر دارند که اگر این فناوری قصد داشته باشد بهطور گستردهتر مورد استفاده قرار گیرد، ابتدا باید بر مشکل بزرگی که آنرا احاطه کرده است، غلبه کند. این مشکل اصلی سهگانه زنجیره بلوکی(Blockchain Trilemma) است.
این اصطلاح اولین بار توسط ویتالیک بوترین (Vitalik Buterin)، یکی از بنیانگذاران اتریوم، مطرح شد. برای اینکه دید دقیقی در این زمینه داشته باشید، ابتدا باید درباره سه عنصر اصلی و کلیدی شکلدهنده زنجیره بلوکی، یعنی «تمرکززدایی، امنیت و مقیاسپذیری»، اطلاعات اولیه داشته باشید. سهگانه زنجیره بلوکی به این مسئله اشاره دارد که رسیدن به سطوح بهینه از هر سه ویژگی بهطور همزمان برای زنجیرههای بلوکی دشوار است، زیرا افزایش یکی از آنها باعث تضعیف عملکرد مولفههای دیگر میشود.
تمرکززدایی چیست؟
بیتکوین و شبکههای زنجیره بلوکی الگوی طراحی مشابهی دارند، زیرا هر دو بر مبنای الگوی غیرمتمرکز طراحی شدهاند. کل ساختار بهگونهای است که هیچ فرد یا سازمانی مسئول نیست و همهچیز بهمعنای واقعی کلمه غیرمتمرکز است. همین مسئله باعث شده تا لایه شبکه برای هر فردی که میخواهد از زنجیره بلوکی استفاده کند باز باشد. در نتیجه، کنترل بهجای اینکه توسط یک نهاد واحد انجام شود، بهطور کامل توزیع شده و توسط خود کاربران انجام میشود. در این حالت همه کاربران عضو شبکه به دادههای یکسانی دسترسی دارند. اگر فردی سعی کند با تغییر رکوردها به نفع خود سیستم را فریب دهد، بقیه شرکتکنندگان دادههای تحریفشده یا جعلی را تشخیص داده و آنرا تایید نخواهند کرد.
همانگونه که مشاهده میکنید، این مسئله کاملا فنی است، بنابراین اجازه دهید شبکه بیتکوین را بهعنوان یک مثال عینی مورد بررسی قرار دهیم. در شبکه بیتکوین، هیچ شخص ثالثی کنترل آن را بر عهده ندارد. این رویکرد را با الگوی سنتی که بانکها و سیستمهای مالی بر مبنای آن کار میکنند، مقایسه کنید. بانکها اعتماد بین افرادی را که در حال معامله هستند، تضمین میکنند و اطمینان میدهند که تمام سوابق بهدرستی نگهداری میشوند. با این حال، زنجیره بلوکی بیتکوین، تمام دادهها را با همه افراد در شبکه بهاشتراک میگذارد تا قبل از اضافه شدن به پایگاه داده دیجیتال، بررسی و تایید شوند. نتیجه این میشود که سیستم میتواند بدون نیاز به دخالت اشخاص ثالث به کار خود ادامه دهد و اعتبار اطلاعات را تایید کند. تمرکززدایی، امکان پدید آمدن مفهومی را که Web3 نامیده میشود بهوجود میآورد. در حال حاضر ما Web2 را داریم که اینترنتی است که روزانه از آن استفاده میکنیم. اینترنتی که شامل سایتها و برنامههای وبمحوری است که توسط شرکتها کنترل میشوند و محتوای آن توسط کاربران ساخته شده است. Web3 مرحله بعدی گذر از اینترنت سنتی است. اینترنتی که در آن فناوری زنجیره بلوکی غیرمتمرکز به افراد اجازه میدهد دادهها و زندگی آنلاین خود را کنترل کنند. با این حال، نکته قابل تاملی در مورد معماری زنجیره بلوکی وجود دارد؛ بهدلیل نحوه عملکرد سیستمهای توزیعشده که نیازمند توافق طیف گستردهای از شرکتکنندگان هستند تا اعتبار دادهها را تایید کنند، زمان انجام تراکنشها بهدلیل نوع اشتراکگذاری اطلاعات و تایید آنها زمانبر خواهد بود. توسعهدهندگان راهکار پیادهسازی زنجیرههای بلوکی مقیاسپذیر را پیشنهاد دادهاند. در این حالت، شبکه میتواند دادههای بیشتری را با سرعت بالاتری مدیریت و پردازش کند.
رویای غیرمتمرکز تنها در صورتی محقق میشود که زنجیرههای بلوکی زیرساخت ایمنی داشته باشند. اگر یک زنجیره بلوکی فاقد امنیت لازم باشد، یک کاربر فرصتطلب میتواند کنترل شبکه را در دست بگیرد و دادهها را به نفع خود تحریف کند. مشکلی که باعث میشود بخش دوم سهگانه که به آن اشاره کردیم، یعنی امنیت مخدوش شود.
امنیت در زنجیره بلوکی به چه معنا است؟
اگر زنجیره بلوکی فاقد امنیت باشد، مهم نیست که چقدر غیرمتمرکز باشد، دیگر قابل اعتماد نخواهد بود. یک شبکه زنجیره بلوکی خوب باید در برابر حملات مختلف مقاوم بوده و پایداری خود را حفظ کند. سامانههای متمرکز، امنیت خود را وامدار بسته بودن سیستم هستند. به این معنا که هر فردی که مسئول است، عملکرد زیرساخت را کنترل میکند و تضمین میکند که دادهها بدون مشکل در شبکه انتقال پیدا میکنند. با اینحال، چگونه دستیابی به چنین سطحی از امنیت برای یک سامانه غیرمتمرکز که هر فردی میتواند در آن شرکت کند، دستیافتی است؟
این موضوع بهلحاظ فنی فرآیند پیچیدهای است، اما میتوانیم به بیتکوین بهعنوان نمونهای از امنیت غیرمتمرکز زنجیره بلوکی نگاه دوبارهای داشته باشیم. زنجیره بلوکی بیتکوین از ترکیب رمزنگاری و مکانیزم اجماع شبکهای که اثبات کار (PoW) نام دارد، استفاده میکند. از منظر رمزنگاری، هر بلوک دارای نوعی امضای دیجیتال (یا هش) است. هر بلوک داده بهگونهای به بلوکهای دیگر متصل است که نمیتوان آنرا دستکاری کرد، زیرا هرگونه تغییری، هش بلوک را تغییر میدهد. به همین دلیل، هر گونه تلاش برای تغییر دادهها بهسرعت توسط بقیه اعضا شبکه شناسایی میشود.
مکانیزم اجماع PoW بخش دیگری از این پازل است که به امنیت دفتر کل ارزهای دیجیتال کمک میکند. مکانیزم کاری PoW به این صورت است که تنها اعضای شبکه میتوانند تراکنشهای جدید را تایید کرده و از طریق فعالیتی بهنام استخراج، آنها را به دفتر کل اضافه کنند. این موضوع شامل استفاده از توان محاسباتی زیاد برای حل معادلات پیچیده ریاضی است. به همین دلیل، به گروهی از کامپیوترها نیاز است که عملکردهای هشینگ مختلف را انجام دهند. این مسئله باعث میشود تا مقیاسپذیری به کندی انجام شود، زیرا مکانیزم PoW ایمن، نسبتا کند است.
هر چه تعداد شرکتکنندگان (گرهها) در شبکه بیشتر باشد، امنیت بهبود پیدا میکند؛ زیرا هر چه تعداد گرهها بیشتر باشد، کنترل سیستم برای افرادی که قصد سوءاستفاده از شبکه را دارند، سختتر میشود. افرادی که قصد دارند 51 درصد سهام شبکه را به دست گرفته و مالک آن شوند. به بیان ساده، اگر یک نهاد واحد (یا گروهی از کاربران فرصتطلب) بتواند بیش از 50 درصد از کل نرخ هش شبکه یک زنجیره بلوکی را کنترل کند، آنگاه میتوانند اجماع را نادیده بگیرد و دادههای زنجیره مثل توکنها یا خرید ارزهای دیجیتال با قیمت بالاتر را به نفع خود تغییر دهد. بهطور خلاصه، امنیت یک نیاز اساسی برای موفقیت زنجیره بلوکی است، زیرا بدون آن، هکرها میتوانند کنترل زنجیره را در دست بگیرند و آن را از درجه اعتبار ساقط کنند.
مقیاسپذیری چیست؟
مقیاسپذیری به ساخت یک زنجیره بلوکی اشاره دارد که بتواند تراکنشهای بیشتر و بیشتری را در ثانیه پردازش کند. اگر بخواهیم فناوری زنجیره بلوکی را به جامعه گستردهتری از میلیاردها کاربر گسترش دهیم، مقیاسپذیری اصل مهمی است که باید به آن دقت کنیم. این همان نقطهای است که بخش عمدهای از زنجیرههای بلوکی با آن مشکل دارند، زیرا تمرکززدایی و امنیت به اندازهای برای زنجیره بلوکی مهم و کاربردی است که تقریبا بیشتر توسعهدهندگان تمایل دارند روی آن متمرکز شوند. به بیان دقیقتر، واژه تمرکززدایی به اندازهای در این زمینه بزرگ شده که تمامی زنجیرههای بلوکی حول این محور پیادهسازی میشوند. همانگونه که اشاره کردیم، امنیت، عامل موفقیت، مفید بودن و استقبال کاربران از زنجیره بلوکی بوده است.
با این حال، با اولویت دادن به تمرکززدایی و امنیت، مقیاسپذیری به یک چالش تبدیل میشود، زیرا تعداد تراکنشهایی را که یک زنجیره میتواند انجام دهد بهشدت محدود میکند. بهطور مثال، یک سیستم پرداخت متمرکز مثل ویزا به این نکته اشاره دارد که قادر به پشتیبانی از 24000 هزار تراکنش در ثانیه است، زیرا شبکه بستهای است و فاقد مولفههایی مثل گرههای عمومی و اجماع است. گزارشی که بلومبرگ در سال 2022 منتشر کرد به این نکته اشاره دارد که از سپتامبر، بیتکوین قادر به انجام بیش از هفت تراکنش در ثانیه نبوده و اتریوم، دومین شبکه محبوب نیز محدود به 15 تراکنش در ثانیه بوده که قابل قیاس با تعداد تراکنشهایی نیست که یک سیستم پرداخت متمرکز قادر به پشتیبانی از آنها است.
سرعت انجام تراکنشهای زنجیره بلوکی بهدلیل نحوه پردازش اطلاعات توسط شرکتکنندگان مختلف که شبکه غیرمتمرکز را تشکیل میدهند و ماهیت خود مکانیزم اجماع PoW، محدود میشود. حال اگر افراد بیشتری شروع به استفاده از فناوری زنجیره بلوکی کنند بهدلیل سرعت پایینی که این شبکهها دارند، انجام تراکنشها آهسته میشود.
چرا سهگانه زنجیره بلوکی وجود دارد؟
اساسیترین راهحل برای مشکل اشارهشده، کاهش تعداد شرکتکنندگان است. در این صورت است که امکان دستیابی به مقیاسپذیری بالا و سرعت بیشتر بهوجود میآید. البته، کاهش تعداد شرکتکنندگان باعث میشود تا فرآیند تایید دادههای شبکه با شبهاتی روبهرو شود و اصل تمرکززدایی را تعضیف میکند، زیرا کنترل به تعداد کمتری از شرکتکنندگان واگذار میشود. همچنین، هرچه تعداد مشارکتکنندگان کمتر شود به همان نسبت امنیت نیز تضعیف میشود، زیرا تعداد زیاد کاربران نقش مهمی در بهبود سطح امنیت دارد. با توجه به ارتباط بین ویژگیهای مذکور و بهویژه تمرکززدایی و امنیت، طراحی یک زنجیره بلوکی کارآمد در مقیاس گسترده، فرآیند دشوار و پیچیدهای است، زیرا اگر روی یکی از ویژگیهای پافشاری کنید، دیگری تضعیف میشود. اکنون، پرسش مهم این است که چگونه باید مقیاسپذیری را بدون آسیبرساندن به تمرکززدایی، امنیت یا هر دو افزایش داد؟
حل مشکل سهگانه زنجیره بلوکی
متاسفانه هیچ راهحل طلایی برای این سهگانه وجود ندارد، اما با توجه به اهمیت حل مشکل مذکور، راهکارهای مختلفی از سوی توسعهدهندگان مورد استفاده قرار گرفته که نتایج جالب توجهی را بههمراه داشته اشت. اجازه دهید برخی از محبوبترین پیشرفتها در این زمینه را بررسی کنیم تا شاخت دقیقی از این فضا بهدست آورید.
1. شاردینگ (تقسیم کردن)
روشی برای تقسیم زنجیرههای بلوکی (یا انواع دیگر پایگاههای داده) به زنجیرههای بلوکی کوچکتر است. در این حالت، فرآیند مدیریت بخشهای خاص سادهتر میشود. مزیتی که تقسیمبندی دارد این است که اجازه میدهد زنجیرهای از تراکنشها و تعاملات در یک شبکه را بهشکل سادهتری مدیریت کرد و امنیت را نیز حفظ کرد. در این حالت، هر زنجیره بلوکی تقسیمشده، بهعنوان یک زنجیره بلوکی کوچک شناخته میشود و دفتر کل خاص خود را دارد. سپس، این بلوکهای کوچک میتوانند تراکنشهای خود را پردازش کنند، در حالی که یک زنجیره بلوکی اصلی مدیریت این زنجیرههای بلوکی کوچک را انجام میدهد. راهکار فوق مقیاسپذیری شبکه لایه یک را ارائه میکند.
2. مکانیزمهای اجماع مختلف
یکی از دلایلی که باعث پیدایش سهگانه در شبکه بیتکوین شده است، نحوه عملکرد PoW برای تضمین امنیت است. نیاز به ماینرها، الگوریتمهای رمزنگاری و مقادیر عظیمی از توان محاسباتی غیرمتمرکز، منجر به پیادهسازی یک سیستم امن، اما کند شده است. یافتن راهی متفاوت برای اطمینان از اجماع، یکی از رویکردهای حل این سهگانه است. به همین دلیل است که اتریوم از PoW به اثبات سهام (PoS) مهاجرت کرد. در زنجیرههای بلوکی PoS، شرکتکنندگانی که در تایید تراکنشها مشارکت دارند، باید توکنهای خود را بهاشتراک بگذارند (قفل کنند). در این حالت، نیازی به ماشینهایی مثل ماینینگ نیست. در این حالت، اعتبارسنجی سادهتر و در دسترستر میشود. PoS تنها یکی از رویکردهای قابل استفاده برای اجماع مقیاسپذیر است.
3. راهحلهای لایه دو
هر دو راهکار اشتراکگذاری و اجماع مختلف، بهعنوان راهحلهای لایه یک شناخته میشوند. آنها به دنبال اعمال تغییر اساسی در طراحی زیربنایی شبکه هستند. با اینحال، برخی از توسعهدهندگان به سراغ راهکار قدرتمند دیگری برای سهگانه زنجیره بلوکی رفتند که روی ساختار شبکه موجود متمرکز است. به عبارت دیگر، آنها بر این باور هستند که کلید حل این مشکل در لایه دوم قرار دارد. نمونههایی از این راهحل شامل زنجیرههای جانبی و کانالهای حالت است.
سایدچین (Sidechain) یک زنجیره بلوکی مجزا است که به زنجیره اصلی متصل میشود و بهگونهای تنظیم میشود که امکان انتقال آزادانه داراییها بین دو جریان را بهوجود میآورد. نکته مهم این است که زنجیره جانبی میتواند تحت قوانین متفاوتی عمل کند و سرعت و مقیاس بیشتری را ارائه کند. بهطور مشابه، کانالهای حالت راه دیگری برای حذف تراکنشها از زنجیره اصلی و کاهش فشار روی لایه یک هستند. یک کانال حالت بهجای یک زنجیره جداگانه، از یک قرارداد هوشمند استفاده میکند تا کاربران را قادر سازد بدون انتشار تراکنشهای خود در زنجیره بلوکی با یکدیگر تعامل داشته باشند. در روش فوق، زنجیرههای بلوکی تنها شروع و پایان کانال را ثبت میکند.
کلام آخر
همانگونه که مشاهده میکنید سهگانه زنجیره بلوکی (Trilemma) مانع از آن شده تا بتوانیم به مقیاسپذیری دست پیدا کنیم و از ظرفیتهای بالقوه زنجیره بلوکی بهعنوان یک فناوری جانشمول استفاده کنیم. اگر شبکههای زنجیره بلوکی تنها از تعداد کمی از تراکنشها در هر ثانیه پشتیبانی کنند تا تمرکززدایی و امنیت حفظ شود، در این صورت توانایی سرویسدهی به طیف گستردهای از کاربران و پاسخگویی به تراکنشها با دشواری همراه خواهد بود. با این حال، توسعهدهندگان در حال آزمایش راهحلهایی هستند تا مشکل فوق برطرف شود. از اینرو، انتظار میرود در آینده نزدیک این شبکهها بتوانند دادههای بیشتری را مدیریت و پردازش کنند.
ماهنامه شبکه را از کجا تهیه کنیم؟
ماهنامه شبکه را میتوانید از کتابخانههای عمومی سراسر کشور و نیز از دکههای روزنامهفروشی تهیه نمائید.
ثبت اشتراک نسخه کاغذی ماهنامه شبکه
ثبت اشتراک نسخه آنلاین
کتاب الکترونیک +Network راهنمای شبکهها
- برای دانلود تنها کتاب کامل ترجمه فارسی +Network اینجا کلیک کنید.
کتاب الکترونیک دوره مقدماتی آموزش پایتون
- اگر قصد یادگیری برنامهنویسی را دارید ولی هیچ پیشزمینهای ندارید اینجا کلیک کنید.
نظر شما چیست؟