بلاک چین چیست؟
بلاک چین چیست؟
بلاک چین (Blockchain) شبکهای است که با استفاده از تکنولوژیهای Decentralized (توزیع شده) و رمزنگاری، تاریخچه تمام تراکنشهای انجام شده با داراییهای دیجیتال مانند بیت کوین را در دفتر کلی که امکان تغییر در آن وجود ندارد و تمام اطلاعات ثبت شده در آن به صورت شفاف در اختیار کاربران قرار دارد، ذخیره میکند. شبکه بلاکچین همان چیزی است که حذف بانکها و مؤسسات مالی از تراکنشهای داراییهای دیجیتال امکان پذیر کرده است و امنیت ارزهای دیجیتال را تضمین میکند. موضوعی که باعث شده داراییهای دیجیتال طرفداران زیادی پیدا کنند. حالا استفاده از ماشین حساب ارز دیجیتال به یک عادت روزانه برای بسیاری از افراد تبدیل شود.
در تعریف بلاک چین چنین آمده است: فناوری بلاکچین ساختاری است که سوابق معاملاتی (بلاکها) را به صورت پایگاهی از دادهها به نام «زنجیره یا Chain» در شبکهای از «گرهها یا Node ها» که به صورت نظیر به نظیر (peer-to-peer) به یکدیگر متصل شدهاند، ذخیره میکند. به کل این مجموعه یک «دفتر کل دیجیتال یا digital ledger» می گویند.
اگر بخواهیم به زبان ساده بگوییم بلاک چین چیست، باید آن را به صورت زنجیرهای بلند از دادهها در نظر بگیریم. دادهها در واقع شامل تراکنشهایی هستند که در شبکه انجام میگیرند. سوابق تراکنشها در بستههایی به نام بلاک ذخیره میشوند. هر بلاک بعد از تکمیل و تأیید اطلاعات آن، به انتهای زنجیره اضافه میشود. این زنجیره از بلاکها که به آن بلاک چین می گوییم در گرهها یا نودهای شبکه ذخیره میشوند. گرهها کامپیوترهایی هستند که وظیفه ذخیره کل اطلاعات شبکه را دارند و یک نسخه از تمام دادهها در آنها ذخیره میشود.
ساختار بلاک چین به زبان ساده
هر یک از بلوک های موجود در بلاک چین از قسمت های دیجیتالی اطلاعات که شامل سه بخش است تشکیل شده اند:
۱) اطلاعات مربوط به تراکنش های شما: به عنوان مثال تاریخ، زمان و مبلغ آخرین خرید بیت کوین شما.
۲) اطلاعات شرکت کنندگان در معاملات: استفاده از امضای دیجیتال به جای نام واقعی شما، خرید شما بدون هیچ گونه اطلاعات شناسایی با استفاده از یک “امضای دیجیتال” منحصر به فرد ثبت می شود.
۳) هر بلوک اطلاعات متمایزی با دیگر بلوک ها دارد: همانطور که هریک از ما اثر انگشت داریم تا بتوانیم از یکدیگر متمایز شویم، هر بلوک کد منحصر به فردی به نام “هش” (hash) را ذخیره می کند که به ما امکان می دهد آن را از هر بلوک دیگر تشخیص دهیم. به این ترتیب بلوکهای مربوط به دو معامله با جزئیات یکسان، به دلیل کدهای منحصر به فرد آنها، از هم قابل تفکیک هستند.
بلاک چین چگونه کار می کند؟
بیایید برای درک بهتر کارکرد بلاک چین به تراکنش های بیت کوین بپردازیم. بلاک چین تمامی اطلاعات و جزییات تک تک تراکنشهای صورت گرفته با این ارز دیجیتال را در خود ذخیره میکند و اگر یک کاربر بخواهد یک بیت کوین را بیش از دو بار معامله (یعنی کلاهبرداری کند) مانع آن می شود.
هر بلوک زمانی که داده های جدید را ذخیره می کند به بلاک چین اضافه می شود. و این گونه با زنجیره ای از چندین بلوک که بهم وصل شده اند عنوان کلی بلاکچین پدید می آید برای اینکه یک بلوک به بلاک چین اضافه شود، باید چهار اتفاق رخ دهد:
۱) یک معامله باید انجام شود.
۲) پس از خرید، معامله شما باید تأیید شود. این کار را شبکه رایانه ها که بیش از هزاران رایانه هستند و در سراسر جهان گسترده اند انجام می دهند. این شبکه از طریق رایانه بررسی می کند که معامله مطابق سفارش شما انجام شده باشد.
۳) جای ذخیره هر معامله باید در دل یک بلوک باشد. پس از تأیید درستی معامله شما، اطلاعات در یک بلوک اختصاصی ثبت می شود. در آنجا، اطلاعات معامله شما در کنار بی شمار تراکنش مشابه قرار می گیرد.
۴) به هر بلوک باید هَش (کد) داده شود: پس از تأیید همه معاملات یک بلوک، باید به آن بلوک یک کد شناسایی منحصر به فرد به نام هَش داده شود. پس از گرفتن هَش اختصاصی، آن بلوک به بلاک چین اضافه می شود.
مالکیت در فضای بلاک چین چگونه تامین میشود؟
مفاهیمی مانند نام کاربری و رمز عبور که در سیستمهای معمولی متداول است، کاربردی در شبکه بلاک چین ندارد. برای اثبات مالکیت در این فضا از «رمزنگاری کلید عمومی» (Public Key Cryptography) یا «رمزنگاری نامتقارن» (asymmetric cryptography) استفاده میشود. این نوع رمزنگاری از دو کلید عمومی و خصوصی بهره میگیرد. همین ویژگی باعث امنیت بالای این روش و گسترش استفاده از آن در سیستمهای کامپیوتری و شبکههای بلاک چینی شده است.
کاربران برای اینکه قابلیت دریافت رمزارز از دیگران را داشته باشند، باید کلید خصوصی خود را ایجاد کنند. کلید خصوصی یک عدد تصادفی بسیار طولانی است که حدس زدن آن حتی با صرف صدها سال برای کسی ممکن نیست. البته اگر کلید خصوصی در اختیار کس دیگری قرار بگیرد، او میتواند با وارد کردن رمز، ادعای مالکیت و مبالغ موجود را خرج کند. بنابراین هر کس باید کلید خصوصی خود را مخفی نگه دارد.
سوالی که پیش میآید این است که طرف مقابل چگونه برای ما ارز انتقال میدهد. جواب این سوال در کلید عمومی نهفته است. کلید عمومی میتواند در اختیار دیگران قرار بگیرد. در واقع کلید عمومی به نوعی شماره حساب شما تلقی میشود. تبدیل کلید عمومی به کلید خصوصی تقریبا غیرممکن است بنابراین این روش امنیت بسیار بالایی برای کاربران ایجاد میکند.
مقیاس پذیری در بلاک چین چیست ؟
مقیاس پذیری بلاک چین، به توانایی شبکه در پاسخ به افزایش تقاضا در سیستم اشاره دارد. اگرچه بلاک چین ویژگیهای مثبتی مانند غیرمتمرکز بودن و تغییرناپذیری را دارد اما این ویژگیها در ازای پرداخت هزینه به دست آمده است. کاهش مقیاسپذیری یکی از این هزینهها است. پایگاه دادههای متمرکز برخلاف بلاک چین، توانایی انجام تراکنشها را با سرعتی به مراتب بالاتر دارند. دلیل این امر عدم نیاز این سیستمها به تایید تراکنشها توسط هزاران نفر در سرتاسر دنیا است.
اگرچه راهحلهای متفاوت زیادی برای حل این مشکل ارائه و اجرا شدهاند اما در حال حاضر راهحل کارای نهایی، برای هیچکس مشخص نیست. به نظر میرسد که راهحلهای مختلف باید مورد آزمایش قرار بگیرند تا اینکه سادهترین راهحل برای حل مشکل مقیاسپذیری به دست آید.
یک سوال اساسی در مورد مقیاسپذیری وجود دارد که دیدگاهها را به دو دسته تقسیم میکند. یک دسته معتقدند برای افزایش مقیاسپذیری شبکه، باید عملکرد خود بلاک چین را افزایش دهیم که به آن «مقیاسپذیری درونزنجیرهای» (on-chain scaling) گفته میشود. دسته دیگر معتقدند که باید اجازه دهیم تراکنشها بدون درگیری با بلاک چین اصلی انجام شوند و از این طریق مقیاسپذیری را افزایش دهیم. به این روش «مقیاسپذیری برونزنجیرهای» (off-chain scaling) میگویند.
هر یک از این روشها مزایای خودشان را دارند. راهحلهای مقیاسپذیری درون زنجیرهای میتواند شامل کاهش اندازه تراکنشها یا بهینهسازی نحوه ذخیره آنها در بلوک باشد. از طرف دیگر راهحلهای خارج از زنجیره شامل دستهبندی معاملات خارج از شبکه اصلی و اضافه کردن آنها به شبکه با تاخیر زمانی است. برخی از روشهای معروف مقیاسپذیری استفاده از «سایدچین» (Sidechain) و «کانالهای پرداخت» (Payment Channels) است.
مقیاسپذیری به چه دردی میخورد؟
دلیل ایجاد بلاک چین، جایگزینی سیستمهای متمرکز است. بلاک چین برای رقابت با این سیستمها حداقل باید به اندازه آنها مقیاسپذیر باشد. البته در عمل، برای جذب توسعهدهندگان و عموم مردم برای استفاده از این پلتفرمها، بلاک چین مجبور است مقیاسپذیری بالاتری از سیستمهای معمول ارائه کند. بنابراین نیاز است که بلاک چین سریعتر، ارزانتر و راحتتر از سیستمهای سنتی باشد.
به عنوان مثال شبکه اجتماعی را در نظر بگیرید که در بلاک چین راهاندازی شده است. اگر این شبکه تنها توانایی انتقال 10 پیام در دقیقه را داشته باشد و میلیونها کاربر در سرتاسر جهان بخواهند از این بستر استفاده کنند، پیام شما ممکن است بعد از چند روز به دست مخاطب برسد. در عمل استفاده از این سیستم هیج مبنا و منطقی ندارد.
ماینر چیست؟ چه نقشی در شبکه بلاکچین دارند؟
ماینر ها یا استخراج گران، وظیفه ایجاد بلاکهای شبکه را در فرآیندی به نام ماینینگ یا استخراج برعهده دارند. در شبکه بلاکچین هر بلاک دارای نانس و هش اختصاصی خود است. علاوه بر این هش بلاک قبلی نیز در بلاک جدید ذخیره میشود. بنابراین فرآیند استخراج یا ساخت بلاک کار سادهای نیست. خصوصاً در یک شبکه بزرگ که میلیونها بلاک در آن ذخیره میشود. ماینر ها از نرم افزارها و سخت افزارهای قدرتمند برای حل مسائل ریاضی پیچیده استفاده میکنند تا یک nonce که توانایی قبول هش را داشته باشد بسازند.
مزایای بلاک چین؛ چرا شبکه Blockchain کاربردی است؟
بلاکچین تکنولوژی است که توانسته مزایای زیادی در اختیار ارزهای دیجیتال قرار دهد و آنها را به داراییهای ارزشمندی تبدیل کند. هر یک از ارزهای دیجیتال معمولاً دارای شبکه بلاکچین مخصوص به خود است که ممکن است مزایای متفاوتی داشته باشد. با این حال همه شبکههای بلاکچین مانند بیت کوین، اتریوم، ریپل و … دارای مزایای زیر هستند:
- امنیت بالا
بیت کوین از ویژگی امضای دیجیتال برای انجام معاملات بدون تقلب استفاده میکند باعث میشود دادهای فرد توسط کاربران دیگر تغییر نکند - سیستم غیر متمرکز یا توزیع شده
به طور معمول برا انجام معاملات به تأیید مقامات نظارتی مانند دولت یا بانک نیاز دارید. اما در بلاکچین معاملات با اجماع متقابل کاربران با با سرعت و امنیت بیشتری انجام میگیرد. هیچکس صاحب شبکه بلاکچین نیست و نمیتواند به تنهایی تغییری در آن ایجاد کند. - قابلیت اتوماسیون
بلاکچین قابلیت برنامه ریز دارد و میتواند در صورت تحقق پیش شرطها به صورت خودکار اقدامات، رویدادها یا پرداختهای سیستماتیک ایجاد کند. یکی از دلیل بالا بودن فروش اتریوم کاربردهای بسیار شبکه این ارز دیجیتال در زمینه برنامه ریزی و انجام اتوماتیک بسیاری از کارها است.
معایب تکنولوژی بلاک چین
بلاک چینها برای دستیابی به مزایای گفته شده، برخی از مزایای سیستمهای قبلی را از دست دادهاند. یکی از مهمترین مسائلی که اکثر بلاک چینها با آن روبهرو هستند، مساله مقیاسپذیری است. از آنجایی که همه گرهها در شبکه باید همگام باشند، اطلاعات نمیتوانند خیلی سریع به بلاک چین اضافه شوند. بنابراین در این سیستمها به منظور حفط ویژگی غیرمتمرکز بودن شبکه، از قابلیت مقیاسپذیری آن صرف نظر شده است.
این مشکل در زمانهای اوج استفاده از شبکه، بیشتر برای کاربران قابل لمس است. بلوکها در بلاک چینها نمیتوانند اطلاعات زیادی را در خود نگهدارند و فورا به زنجیره اضافه نمیشوند. برای مثال در بیتکوین زمان ساخت هر بلوک به طور متوسط ده دقیقه است. بنابراین اگر تعداد تراکنشها بیش از حد مجاز هر بلوک باشد، بقیه تراکنشها باید منتظر بلوک بعدی باشند. حجم هر بلوک بیتکوین در حدود 1 مگابایت ذکر میشود.
ارتقای سیستمهای بلاک چین یکی دیگر از مشکلات موجود است. اگر شما نرمافزاری را برای خودتان برنامهنویسی میکنید، به دلخواه خود میتوانید هر ویژگی که دوست داشتید به آن اضافه کنید. اما در محیطی که پتانسیل حضور میلیونها کاربر را دارد، اعمال تغییرات به شدت سخت است. البته شما میتوانید برخی از پارامترهای نرمافرار گره خود را تغییر دهید اما این کار باعث دور افتادن شما از شبکه اصلی خواهد شد. در حالتی که نرم افزار بهبود یافته با سایر گرهها ناسازگار باشد، آنها از برقراری ارتباط با شما امتناع خواهند کرد.
تنها راه اعمال تغییرات در شبکه جلب نظر اکثریت اکوسیستم شبکه است. بنابراین در شبکههای بزرگ ممکن است ماهها یا سالها بحثهای فشردهای در انجمنهای بلاک چین برای اعمال تغییرات صورت بگیرد. در صورتی که شخص یا گروهی بخواهد تغییراتی خارج از توافق انجام بدهد، میتواند «هاردفورک» (Hard Fork) یا «سافتفورک» (Soft Fork) ایجاد کند.
بلاکچین و مقایسه آن با سیستم بانکداری؛ چرا بلاکچین از سیستم بانکداری بهتر است؟
در سیستم بانکداری چندین مشکل اساسی وجود دارد که در هنگام تراکنش با آن رو به رو میشوید. زمانی که شما در حال ارسال پول به دیگران هستید، سیستم بانکی کارمزد قابل توجهی از حساب شما کسر میکند. این سیستم به تمامی اطلاعات حساب دسترسی دارد و میتواند همه حسابها را تغییر دهد. متمرکز بودن سیستم به این معناست که اگر اطلاعات موجود در بانک از بین برود تمام اطلاعات موجود در حسابها نیز از بین خواهد رفت. در نهایت نیز سیستمهای بانکی، انتقال پول را کنترل میکنند و برای مثال افرادی مانند ما ایرانیان از انجام بسیاری از تراکنشهای مالی در جهان محروم میکند.
بلاک چین برتریهای زیادی در مقابل بانک دارد:
- امکان انجام تراکنش به صورت ناشناس
- پرداخت کارمزد اندک
- سیستم توزیع شده تقریباً غیر قابل هک
- شفافیت
- عدم نیاز به واسطه
- امنیت بسیار بالای شبکه
- غیر قابل تغییر
- غیر قابل از بین رفتن
- هیچکس کنترل را در دست ندارد
- امکان جابه جایی داراییها از هرجایی به هرجایی
- سرعت بالای تراکنشها