بلاک چین در وافع یک دفتر ثبت از تمام تراکنشهایی است که یک ارزش (value یا ارزش شامل: پول، مالکیت کالا، سهام، رای، مجوز و..) را انتقال میدهند. نسخهای از این دفتر کل در اختیار هر یک از اعضای شبکه خواهد بود. این پایگاه داده توزیع شده، ضرورت وجودی یک نهاد مرکزی برای تأیید تراکنش را برطرف میسازد.
اسم بلاک چین به ظاهر پیچیده است (گرچه میتواندخیلی پیچیده هم باشد)، اما مفهوم کلی بلاک چین ساده است. بلاک چین نوعی خاص از پایگاه داده است. برای آنکه متوجه بشویم بلاکچین چیست، ابتدا شناختن مفهوم پایگاه داده به درک بهتر آن کمک میکند. یک پایگاه داده، کلکسیونی از اطلاعات است که به صورت الکترونیکی روی یک کامپیوتر ذخیره میشود. اطلاعات یا دادهها، در ساختار جدولی ذخیره میشوند تا جستجو کردن در آن سادهتر باشد.
برنامههایی مانند اکسل برای یک نفر یا گروهی کوچک طراحی شدهاند تا مقدار محدودی اطلاعات را ذخیره کنند. در مقابل، پایگاه داده محل ذخیره مقدار قابل توجهی داده است که میتوان توسط فیلترها و ابزارات برنامه نویسی به دادهها و اطلاعات دسترسی داشت.
پایگاه دادههای بزرگ، اطلاعات را بر روی سرورها که کامپیوترهای قوی هستند ذخیره میکنند. این سرورها گاهی میتوانند از هزاران کامپیوتر تشکیل شده باشند تا توان محاسباتی و فضای کافی برای دسترسی همزمان تعداد زیادی کاربر را داشته باشند. در حالی که برنامههایی مانند اکسل و پایگاه دادهها برای دسترسی هر تعداد طراحی شدهاند، معمولاً متعلق به یک نفر یا یک شرکت است که کنترل کامل بر آن دارند.
همان طور که می دانید امروزه معمولاً انتقال پول بین دو نقطه از طریق عملی زمان بر، هزینه بر بوده و علاوه بر این تحت نظر نهاد ثالثی انجام میگیرد که این نهاد ثالث میتواند بانک فرستنده، بانک گیرنده باید که مشکلاتی از جمله بلوکه شدن، برگشت خوردن و قابل رصد بودن را نیز به همراه دارد لذا برای حل این مشکل میتوان نهاد ثالث را حذف کرد که تنها راه حل قابل اعتماد و جایگزین این مورد بلاک چین است یعنی بلاک چین درواقع مکانیزم ایجاد اعتماد در غیاب نهاد ثالث (سازمان ثبت اسناد، بانک، سازمان معاملات سهام) میباشد لذا این مورد را به عنوان کاربرد بلاک چین میشناسیم.
یکی از کلیدیترین تفاوتها میان بلاک چین و پایگاه داده، نحوه ساختار دادههاست. بلاک چین، دادهها را در گروهی تحت عنوان "بلاک" ذخیره میکند که مقداری اطلاعات در خود دارد. بلاکها فضای محدودی برای ذخیره دارند و زمانی که پر میشوند به بلاک قبلی که پر شده بود متصل میشوند. این اتصالات، زنجیرهای از بلاکها را تشکیل میدهند که به آن بلاک چین می گوییم. تمام اطلاعات جدیدی که پس از اتصال بلاک جدید وارد میشوند وارد یک بلاک جدید شده و این بلاک بعد به این زنجیره متصل میشود.
همان طور که اشاره شد، یک پایگاه داده اطلاعات را در قالب جداول ذخیره میکند ولی یک بلاک چین همان طور که از نامش پیداست، اطلاعات را به صورت تکههایی که به یکدیگر متصلاند، ذخیره میکند. این به معنی آن است که هر بلاک چین یک پایگاه داده است ولی هر پایگاه داده، بلاک چین نیست. چنین سیستمی یک جدول زمانی از دادهها در هنگام ورود را دارد که ذاتاً به معنی غیرقابل برگشت بودن آن است. زمانی که یک بلاک پر میشود، اطلاعات داخل بلوک غیر قابل تغییر میشود و با یک کلید خصوصی به یک بلوک دیگر متصل میگردد. بدین صورت زنجیرهای از بلوکها که حاوی دادهها میباشند، تشکیل یک بلاکچین میدهند.
همانند یک پایگاه داده، بلاک چین نیز نیاز به مجموعهای از کامپیوترها دارد تا اطلاعات را ذخیره کنند. بر خلاف باقی پایگاه دادهها، تمام این کامپیوترها در یک مکان و زیر یک سقف نیستند و توسط افراد مختلف کنترل میشوند. به این کامپیوترها به اصطلاح گره یا نود (Node) می گوییم. در بلاک چین هر نود یک کپی از تمام اطلاعات ذخیره شده در بلاک چین را از آغاز آن دارد. اگر یک نود مشکلی در دادههایش داشته باشد، میتواند دیگر نودها را مرجع قرار دهد و خود را اصلاح کند. بدین ترتیب هیچ تک نود نمیتواند دادههای بلاکچین را تغییر دهد.
اگر یک کاربر اطلاعات بلاک چین را دستکاری کند، تمام نودها یکدیگر را متقابلاً مرجع قرار میدهند و بدین ترتیب نود دستکاری شده با اطلاعات اشتباه را شناسایی میکنند. این سیستم به دقت و شفافیت رخدادهای داخل بلاک چین کمک میکند. برای آنکه روش کار یا اطلاعات در سیستم تغییر کند، باید اکثریت کامپیوترهای غیرمتمرکز به آن رأی مثبت دهند.
بلاک چین مسائل امنیتی مختلفی را به چند روش پاسخ میدهد. اول، بلاکهای جدید از نظر زمانی به صورت خطی وارد زنجیره میشوند. یعنی بلاکها همیشه به انتهای بلاک چین اضافه میشوند. هنگامی که یک بلاک وارد بلاک چین شود به سختی میتوان اطلاعات داخل بلاک را تغییر داد زیرا تأیید اکثریت برای آن لازم است. شاید برایتان سؤال پیش آمده که چرا تغییر دادهها در بلاک چین آنقدر سخت است؟ پاسخ در کدی به نام هش است که هر بلاک هش مخصوص به خود به همراه هش بلاک قبل و همچنین زمان دقیقی که وارد بلاکچین شده را دارد. کد هش توسط یک معادله ریاضی به وجود میآید که اطلاعات دیجیتال را به رشتهای از اعداد و حروف تبدیل میکند. اگر اطلاعات ذرهای تغییر کند کد هش نیز تغییر میکند.
تصور کنید یک هکر میخواهد اطلاعات داخل بلاک چین را تغییر دهد. اگر قرار باشد اطلاعات نود خود را تغییر دهد، با کپی بقیه نودها هماهنگ نیست و کپی هکر به عنوان غیر قابل قبول نشان گذاری شده و در نتیجه از سیستم خارج میشود. برای موفقیت در چنین نقشهای مقدار زیادی پول و کامپیوترهای مختلف لازم است تا بتواند 51% از نودهای سیستم را تشکیل دهد و زمان و منابع زیادی را صرف تغییر اطلاعات و تولید هشهای جدید کند.
تفاوت برگذاری انتخابات آنلاین عادی با بلاکچین