بلاکچین چیست؟ آشنایی با ساختار، کاربردها و امنیت آن
وقتی یک تراکنش دیجیتال انجام می شود، باید مشخص باشد چه کسی آن را ثبت می کند، اعتبارش چگونه بررسی می شود و سابقه آن کجا نگهداری خواهد شد. در بسیاری از سامانه ها، این مسئولیت بر عهده یک سازمان مرکزی است. بلاکچین روشی برای نگهداری سوابق مشترک میان اعضای یک شبکه ارائه می دهد که در آن، پذیرش اطلاعات جدید تابع قواعد مشخص است.
برای شناخت این فناوری، باید از تصویر رایج زنجیره بلوک ها فراتر برویم و ببینیم اطلاعات چگونه ثبت می شوند، اعضای شبکه چه نقشی دارند و امنیت آن به چه شرایطی وابسته است.
بلاکچین چیست؟
مفهوم دفتر کل مشترک به زبان ساده
بلاکچین نوعی دفتر ثبت دیجیتال است که اطلاعات را در مجموعه هایی به نام بلوک نگهداری می کند. هر بلوک با استفاده از یک شناسه رمزنگاری به بلوک قبلی متصل می شود و زنجیره ای از سوابق را می سازد. نسخه هایی از این سوابق میان رایانه های مشارکت کننده در شبکه نگهداری می شوند.
برای درک دفتر کل مشترک، چند شرکت را در نظر بگیرید که باید سابقه جابه جایی یک محموله را دنبال کنند. اگر هر شرکت دفتر جداگانه ای داشته باشد، ممکن است درباره زمان تحویل یا وضعیت محموله اختلاف پیش بیاید. یک دفتر مشترک می تواند سابقه مورد توافق را در اختیار اعضای مجاز قرار دهد.
در بلاکچین، اضافه شدن اطلاعات به این دفتر طبق قواعد شبکه انجام می شود. البته ثبت یک داده به معنای اثبات درستی آن در دنیای واقعی نیست. اگر وضعیت محموله از ابتدا اشتباه وارد شود، بلاکچین به تنهایی نمی تواند آن اشتباه را تشخیص دهد.
غیرمتمرکز بودن بلاکچین به چه معناست؟
غیرمتمرکز بودن یا Decentralization یعنی اختیار نگهداری سوابق، بررسی تراکنش ها و تصمیم گیری درباره شبکه، به یک مرجع واحد وابسته نباشد. در شبکه ای مانند بیت کوین، نودهای کامل می توانند اطلاعات را مستقل بررسی کنند و تراکنش یا بلوک ناسازگار با قواعد خود را نپذیرند. در نتیجه، یک شرکت یا مدیر مشخص نمی تواند به تنهایی موجودی کاربران یا سابقه تراکنش ها را تغییر دهد.
با این حال، پخش شدن اطلاعات روی چند رایانه به تنهایی نشانه غیرمتمرکز بودن نیست. اگر تمام آن رایانه ها تحت کنترل یک سازمان باشند، داده ها توزیع شده اند، اما اختیار همچنان متمرکز است. برای ارزیابی تمرکززدایی باید دید چه کسانی شبکه را اداره می کنند، تولید بلوک چقدر میان مشارکت کنندگان تقسیم شده و تغییر قواعد چگونه پذیرفته می شود.
همه بلاکچین ها نیز به یک اندازه غیرمتمرکز نیستند. در شبکه های خصوصی، اختیار عضویت و تایید اطلاعات می تواند در دست یک سازمان یا گروه محدود باشد. بنابراین غیرمتمرکز بودن یک ویژگی با درجات متفاوت است و نباید آن را به تمام شبکه های بلاکچینی به یک شکل نسبت داد.
#ارتباط بلاکچین با ارزهای دیجیتال چیست؟
یکی از کاربردهای اصلی بلاکچین، ثبت تراکنش های ارزهای دیجیتال است. در شبکه ای مانند بیت کوین، این سوابق مشخص می کنند دارایی چگونه منتقل شده و کدام مبالغ هنوز قابل خرج کردن هستند. اعضای شبکه با بررسی تراکنش ها طبق قواعد مشترک، از پذیرفته شدن انتقال های نامعتبر، مانند دوباره خرج کردن یک دارایی، جلوگیری می کنند.
برای مثال، وقتی بیت کوین ارسال می کنید، کیف پول درخواست انتقال را ایجاد و امضا می کند. پس از بررسی و قرار گرفتن تراکنش در یک بلوک پذیرفته شده، انتقال در سابقه شبکه ثبت می شود. بنابراین کیف پول ابزار مدیریت کلیدها و ارسال درخواست است و بلاکچین، بستر ثبت سوابق تراکنش هاست.
این رابطه به معنای وجود یک بلاکچین جدا برای هر ارز دیجیتال نیست. بعضی دارایی ها، مانند بیت کوین، ارز بومی شبکه خود هستند. برخی دیگر به صورت توکن روی یک شبکه موجود ایجاد می شوند. برای نمونه، تتر روی چند شبکه عرضه می شود و انتقال آن در هر شبکه، تابع قواعد و کارمزد همان شبکه است.
ساختار بلاکچین از چه اجزایی تشکیل شده است؟
بلوک و هش چه نقشی دارند؟
بلوک، مجموعه ای از اطلاعات ثبت شده در شبکه است. در بلاکچین های رمزارزی، این اطلاعات معمولا شامل تراکنش ها و داده های لازم برای بررسی آن هاست. هر بلوک همچنین به بلوک قبلی ارجاع می دهد تا ترتیب سوابق مشخص باشد.
این ارتباط با کمک هش برقرار می شود. هش، خروجی یک تابع ریاضی است که داده ورودی را به رشته ای با طول مشخص تبدیل می کند. می توان آن را مانند اثر انگشت دیجیتال داده در نظر گرفت؛ تغییر کوچکی در ورودی، خروجی متفاوتی ایجاد می کند. هش ابزار تشخیص تغییر است و نباید آن را با رمزگذاری برای مخفی کردن اطلاعات اشتباه گرفت.
وقتی یک بلوک به هش بلوک قبلی ارجاع می دهد، تغییر سوابق قبلی قابل تشخیص می شود. البته همین اتصال به تنهایی امنیت شبکه را تامین نمی کند. قواعد اعتبارسنجی و سازوکار اجماع نیز در پذیرش سوابق نقش دارند.
نود چیست و چه اطلاعاتی را بررسی می کند؟
نود یا گره، رایانه ای است که نرم افزار شبکه را اجرا می کند و با دیگر اعضا ارتباط دارد. وظیفه و مقدار اطلاعات نگهداری شده به نوع نود بستگی دارد. برای مثال، نود کامل داده های لازم را دریافت می کند و تراکنش ها و بلوک ها را طبق قواعد شبکه بررسی می کند.
این بررسی می تواند شامل اعتبار امضای دیجیتال، مجاز بودن خرج دارایی و رعایت محدودیت های فنی بلوک باشد. اگر اطلاعات با قواعد شبکه سازگار نباشد، نود کامل آن را معتبر نمی شناسد.
نود کامل لزوما تولیدکننده بلوک نیست. ساخت بلوک، بسته به طراحی شبکه، می تواند بر عهده ماینرها یا اعتبارسنج ها باشد. این تفکیک کمک می کند نقش نگهداری و بررسی اطلاعات را با نقش پیشنهاد بلوک جدید اشتباه نگیریم.
بلاکچین چگونه تراکنش ها را ثبت و تایید می کند؟
از امضای تراکنش تا انتشار در شبکه
وقتی از کیف پول خود ارز دیجیتال ارسال می کنید، ابتدا یک درخواست تراکنش ساخته می شود. این درخواست، بسته به شبکه، اطلاعاتی مانند مقصد، مقدار انتقال و کارمزد را در بر می گیرد. کیف پول با استفاده از کلید خصوصی، تراکنش را امضا می کند تا شبکه بتواند مجاز بودن درخواست را بررسی کند. کلید خصوصی در این فرایند برای دیگران ارسال نمی شود.
سپس تراکنش به شبکه فرستاده می شود. نودهای دریافت کننده، آن را طبق قواعد شبکه بررسی می کنند و در صورت معتبر بودن، به دیگر نودها انتقال می دهند. در بسیاری از شبکه ها، تراکنش پیش از ورود به بلوک در فهرست تراکنش های در انتظار قرار می گیرد. بنابراین نمایش وضعیت ارسال شده در کیف پول، به تنهایی به معنای ثبت نهایی انتقال نیست.
#نقش سازوکار اجماع در تایید و ثبت بلوک جدید
برای ثبت تراکنش ها، شبکه باید درباره ترتیب و سابقه معتبر آن ها به توافق برسد. سازوکار اجماع، قواعد رسیدن به این توافق را مشخص می کند. در شبکه های مبتنی بر اثبات کار مانند بیت کوین، ماینرها برای ساخت بلوک معتبر توان محاسباتی صرف می کنند. در شبکه های مبتنی بر اثبات سهام، اعتبارسنج ها با سپرده گذاری دارایی و طبق قواعد شبکه در پیشنهاد و تایید بلوک ها مشارکت دارند.
تراکنش های انتخاب شده در یک بلوک قرار می گیرند و بلوک پیشنهادی برای بررسی در شبکه منتشر می شود. نودها فقط بلوکی را می پذیرند که با قواعد شبکه سازگار باشد؛ ساخته شدن بلوک به تنهایی برای معتبر بودن آن کافی نیست.
قرار گرفتن تراکنش در بلوک نیز در همه شبکه ها به معنای نهایی شدن فوری نیست. در بیت کوین، اضافه شدن بلوک های بعدی معمولا احتمال برگشت سابقه را کمتر می کند. بعضی شبکه های دیگر، مرحله مشخصی برای نهایی شدن دارند. به همین دلیل، زمان تایید و تعداد تاییدهای مورد نیاز میان شبکه ها و سرویس های دریافت کننده متفاوت است.
#تفاوت بلاکچین عمومی و خصوصی چیست؟
دسترسی به اطلاعات و مجوز مشارکت
تفاوت اصلی بلاکچین عمومی و خصوصی، به این برمی گردد که چه کسانی اجازه ورود به شبکه، مشاهده اطلاعات و مشارکت در بررسی تراکنش ها را دارند.
در شبکه های عمومی مانند بیت کوین، مشاهده سوابق و اجرای نود برای عموم امکان پذیر است. مشارکت در تولید بلوک نیز تابع قواعد فنی و اقتصادی شبکه است و به دریافت مجوز از یک شرکت مشخص وابسته نیست. البته عمومی بودن سوابق به معنای نمایش نام و هویت واقعی تمام کاربران نیست. تراکنش ها معمولا با آدرس های دیجیتال دیده می شوند.
در بلاکچین خصوصی، یک سازمان یا گروه مشخص تعیین می کند چه کسانی عضو شوند و هر عضو چه اختیاراتی داشته باشد. برای مثال، چند شرکت حمل ونقل می توانند شبکه ای ایجاد کنند که فقط اعضای تاییدشده اجازه ثبت یا بررسی اطلاعات محموله ها را داشته باشند.
این تفاوت بر شیوه مدیریت و میزان تمرکز شبکه اثر می گذارد. بلاکچین خصوصی می تواند کنترل دسترسی بیشتری فراهم کند، اما اعتماد به مدیران و اعضای مجاز در آن پررنگ تر است. بنابراین استفاده از بلاکچین به تنهایی به معنای غیرمتمرکز بودن کامل یک سامانه نیست.
بلاکچین چه کاربردهایی دارد؟
##انتقال دارایی و اجرای قرارداد هوشمند
یکی از کاربردهای اصلی بلاکچین، ثبت و انتقال دارایی دیجیتال میان آدرس هاست. برای مثال، هنگام انتقال تتر روی یک شبکه، تراکنش در سوابق همان شبکه ثبت می شود و وضعیت آن را می توان از طریق مرورگر بلاکچین بررسی کرد. این سابقه، امکان پیگیری انتقال را فراهم می کند. هرچند نمایش موجودی در حساب صرافی به پردازش داخلی آن پلتفرم نیز وابسته است.
بعضی شبکه ها علاوه بر انتقال دارایی، امکان اجرای قرارداد هوشمند را دارند. قرارداد هوشمند برنامه ای است که روی بلاکچین اجرا می شود و در صورت برقرار بودن شرایط تعریف شده، عملیات مشخصی انجام می دهد. برای نمونه، یک برنامه وام دهی می تواند دریافت وثیقه و آزادسازی آن پس از بازپرداخت را طبق کد مدیریت کند. البته اجرای خودکار به معنای بی خطا بودن برنامه یا حذف تمام واسطه ها و ریسک ها نیست.
ثبت سوابق و رهگیری اطلاعات
بلاکچین می تواند برای نگهداری سابقه مشترک میان چند سازمان نیز استفاده شود. در زنجیره تامین، برای مثال، تولیدکننده، شرکت حمل ونقل و توزیع کننده می توانند مراحل جابه جایی کالا را ثبت کنند تا اعضای مجاز به سابقه قابل پیگیری دسترسی داشته باشند.
کاربرد دیگر، ثبت اثر انگشت دیجیتال اسناد است. به جای ذخیره کل یک مدرک روی بلاکچین، می توان هش آن را ثبت کرد و بعد بررسی کرد که نسخه ارائه شده با نسخه ثبت شده مطابقت دارد یا نه. این روش به تشخیص تغییر سند کمک می کند، اما به تنهایی اصالت محتوای آن یا هویت صادرکننده را ثابت نمی کند.
امنیت بلاکچین چگونه تامین می شود؟
چرا دستکاری سوابق دشوار است؟
امنیت بلاکچین به ترکیب چند عامل وابسته است: اتصال بلوک ها با هش، بررسی مستقل اطلاعات توسط نودها و سازوکار اجماع. اگر کسی اطلاعات یک بلوک قدیمی را تغییر دهد، هش آن نیز تغییر می کند و ارتباط آن با بلوک های بعدی ناسازگار می شود. برای پذیرفته شدن این سابقه جدید، تغییر نسخه ذخیره شده روی یک رایانه کافی نیست. سابقه پیشنهادی باید قواعد پذیرش شبکه را نیز پشت سر بگذارد.
در شبکه های بزرگ، جایگزین کردن سوابق تاییدشده می تواند به توان محاسباتی یا سرمایه قابل توجهی نیاز داشته باشد. با این حال، میزان مقاومت به طراحی شبکه و نحوه توزیع قدرت میان مشارکت کنندگان بستگی دارد. اگر بخش بزرگی از توان تولید یا تایید بلوک در اختیار یک مهاجم قرار بگیرد، احتمال حملاتی مانند بازنویسی بخشی از تراکنش های اخیر یا جلوگیری از ثبت بعضی تراکنش ها افزایش پیدا می کند. بنابراین تغییرناپذیری سوابق را باید در چارچوب شرایط امنیتی هر شبکه در نظر گرفت.
تفاوت امنیت شبکه با امنیت کیف پول و برنامه ها
ممکن است بلاکچین بدون اختلال کار کند، اما کاربر به دلیل افشای عبارت بازیابی، ورود به سایت جعلی یا امضای یک درخواست مخرب، دارایی خود را از دست بدهد. در چنین حالتی، مشکل از دسترسی غیرمجاز به کلیدها یا مجوزهای کاربر است و لزوما به معنای هک شدن خود بلاکچین نیست.
قراردادهای هوشمند، پل های انتقال دارایی و صرافی ها نیز ریسک های جداگانه دارند. خطای برنامه نویسی یا ضعف در مدیریت دسترسی می تواند باعث زیان شود، حتی اگر تراکنش ها طبق قواعد شبکه ثبت شده باشند. در نتیجه، امنیت زیرساخت بلاکچین را نباید تضمینی برای امنیت تمام خدمات و دارایی های روی آن دانست.
محدودیت های بلاکچین چیست؟
سرعت، هزینه و حریم خصوصی
ثبت اطلاعات در بلاکچین به پردازش، انتشار و بررسی آن در شبکه نیاز دارد. ظرفیت هر شبکه محدود است و وقتی تعداد درخواست ها افزایش پیدا می کند، ممکن است زمان انتظار یا کارمزد بیشتر شود. البته سرعت و هزینه در همه بلاکچین ها یکسان نیست و به طراحی شبکه و میزان استفاده از آن بستگی دارد.
شفافیت نیز همیشه به معنای حفظ حریم خصوصی نیست. در بسیاری از شبکه های عمومی، آدرس ها، مبالغ و مسیر انتقال دارایی قابل مشاهده اند. اگر یک آدرس به هویت فرد مرتبط شود، بخشی از فعالیت مالی او نیز ممکن است قابل ردیابی باشد. به همین دلیل، استفاده از آدرس دیجیتال به تنهایی ناشناس بودن را تضمین نمی کند.
چرا بلاکچین برای هر مسئله ای مناسب نیست؟
بلاکچین زمانی می تواند ارزش بیشتری ایجاد کند که چند طرف به سابقه مشترک نیاز داشته باشند و نخواهند کنترل آن را به یک مرجع واحد بسپارند. اگر یک سازمان به تنهایی اطلاعات را ثبت و مدیریت می کند و سایر کاربران نیز به آن اعتماد دارند، پایگاه داده معمولی ممکن است انتخاب ساده تر و کم هزینه تری باشد.
همچنین اصلاح یا حذف اطلاعات در بسیاری از بلاکچین ها به سادگی ویرایش یک رکورد در سامانه متمرکز نیست. این ویژگی برای حفظ سابقه مفید است، اما در ثبت داده های شخصی، اصلاح اشتباهات و اجرای الزامات حذف اطلاعات، محدودیت ایجاد می کند. بنابراین انتخاب بلاکچین باید بر اساس نیاز واقعی به اشتراک سوابق، شیوه مدیریت و هزینه اجرا انجام شود.
# جمع بندی
بلاکچین روشی برای نگهداری سوابق مشترک است که اطلاعات را در بلوک های مرتبط ثبت می کند. هش، امضای دیجیتال، بررسی نودها و سازوکار اجماع در کنار یکدیگر به حفظ اعتبار این سوابق کمک می کنند. ارزهای دیجیتال یکی از کاربردهای اصلی آن هستند، اما این فناوری برای اجرای قراردادهای هوشمند و رهگیری اطلاعات نیز استفاده می شود.
ارزش هر بلاکچین به طراحی و نیاز کاربران آن بستگی دارد. میزان غیرمتمرکز بودن، امنیت، هزینه و حریم خصوصی در شبکه ها متفاوت است. بنابراین برای شناخت یک شبکه، باید بررسی کنیم چه کسانی آن را اداره می کنند، اطلاعات چگونه تایید می شوند و چه محدودیت هایی دارد. استفاده از بلاکچین به تنهایی، درستی داده های ورودی یا امنیت تمام خدمات روی آن را تضمین نمی کند.
