احتمالاً تاکنون اسمِ بلاک چین (Blockchain) به گوشتان خورده است. این تکنولوژی همانند یک دفترِ کل، تمامِ تراکنشهای بیت کوین را درونِ خود ذخیره میکند. درواقع اساسِ بیت کوین بر پایۀ این تکنولوژی بنا شده است. در این مقاله با زبانی ساده و غیرفنی فناوری بلاک چین را توضیح خواهیم داد.
اصلاً چرا بیت کوین به وجود آمد؟
دوستِ شما علی دراثنای سفر با شما تماس میگیرد و درخواست پول میکند.
برای سادگی بحث فرض کنید کارتِ بانکی و کامپیوتر وجود ندارد و کارها همگی توسط انسان انجام میشود. به بانک مراجعه میکنید و درخواست میکنید ۱۰۰۰ دلار بهحساب علی منتقل شود. مسئولِ باجه به دفترش نگاه میکند تا موجودی حسابِ شما را چک کند. بله موجودی بهاندازۀ کافی دارید و عمل انتقالِ پول با موفقیت انجام میشود. مسئول باجه تراکنش را در دفترِ خود ثبت میکند.
به علی زنگ میزنید و واریزِ پول را خبر میدهید تا هر وقت خواست به بانک مراجعه و پول را برداشت کند.
اینجا شما و علی به بانک بهعنوان یک واسطِ مطمئن اعتماد میکنید و بر اساسِ این اعتماد مدیریت پولهایتان را به بانک واگذار میکنید. اینجا هیچ جابهجایی فیزیکی پول در کار نیست. تمامِ چیزی که لازم است دفترِ موجودی است که کنترلِ آن بر عهدۀ بانک است؛ و این دقیقاً مشکل سیستمهای بانکی است. برای برقراری اعتماد بین دو نفر به یک نفر سوم وابسته میشویم. سالهاست که این سیستمِ مالی در بانکها وجود داشته و دارد!
ممکن است بپرسید مشکل کجاست؟
اگر هرج و مرج به وجود آید، اوضاع اقتصاد خراب شود، بانکها در معرض ورشکستگی قرار گیرند و جنگ و شرایط فوقالعاده به وجود آید آیا بازهم میتوان به پابرجا بودن نظامهای بانکی امید داشت؟ آیا چنین بلبشویی زمینه را برای سوءاستفادۀ افراد سودجو فراهم نمیکند؟ آیا شخصِ ثالثی که به او اعتماد داشتید در شرایط بحرانی نیز قابلِ اعتماد هست؟ چه میشود اگر دفتر موجودیِ حسابها در آتش بسوزد؟ یا هنگام انتقال پول رقمِ اشتباهی در دفتر ثبت شود. یا اصلاً از روی عمد اختلالاتی در این سیستم به وجود آید. داستان بلوکه شدن پول در برخی از موسسات مالی یک نمونه از همین بلبشوها است که چهبسا خودِ شما هم قربانیِ آن باشید.
آیا سیستمی وجود دارد که بدون واسطه بتوان پول منتقل کرد؟
سوالِ خوبی است ولی سوالِ بهتر این است که منظور از انتقالِ پول چیست؟ آیا صرفاً ثبتِ تراکنشها در یک دفترِ مالی است؟ چرا خودمان این کار را انجام ندهیم؟ بلاک چین در پاسخ به همین سوال خلق شد. در این روش دفترِ کل توسطِ خودِ کاربرانی که از سیستم استفاده میکنند کنترل میشود. اینجا بهجای یک نفر کلِ اعضای شبکه به دفتر دسترسی دارند. حساب و کتابها برای همه بهصورت شفاف وجود دارد؛ اما چگونه این کار صورت میگیرید؟ ملزومات چنین سیستمی وجودِ افرادِ بیشتری چون شما و دوستتان علی است که نمیخواهند به بانک و سایر سیستمهای واسط وابسته باشند. چند نفر کافی است؟ حداقل سه نفر. فرض کنید ۱۰ نفر پیدا شدهاند که نمیخواهند به هیچ نهادی وابسته باشند. این افراد بعد از توافقات اولیه به موجودی حساب و جزئیات تراکنشهای یکدیگر دسترسی دارند بدون اینکه شناختی از هویت هم داشته باشند.
هر یک از این افراد در شروعِ کار یک پوشۀ خالی دارند. بعدها جزئیاتِ تراکنشها در یک برگۀ کاغذ به این فولدر اضافه میشود. (برای سادگیِ بحث بهجای بلوک از برگۀ کاغذ استفاده کردهایم). تمامِ افراد با یک قلم و کاغذ آمادۀ ثبتِ تراکنشها هستند. فرض کنید شمارۀ ۲ میخواهد ۱۰ دلار به شمارۀ ۹ منتقل کند. او درخواستش را با صدای بلند به بقیۀ نفرات اعلام میکند. من میخواهم ۱۰ دلار بهحساب شمارۀ ۹ منتقل کنم. لطفاً همه این تراکنش را در دفتر خود ثبت کنید.
تمامِ اعضا، موجودی شمارۀ ۲ (فرستندۀ پول) را بررسی میکنند اگر کافی بود تراکنش را در برگۀ خود ثبت میکنند. اکنون تراکنش با موفقیت انجام شده است.
با گذشتِ زمان افرادِ بیشتری مایل به انتقال پول هستند. هرکسی که میخواهد پول منتقل کند درخواستش را با صدایِ بلند به بقیۀ اعلام میکند تا در برگۀ خود ثبت کنند. این کار آنقدر ادامه پیدا میکند تا ظرفیتِ برگه پر شود. فرض کنید هر برگه ظرفیتِ ثبت ۱۰ تراکنش را دارد. با ثبتِ دهمین تراکنش ظرفیتِ آن پر میشود و دیگر جایی برای ثبتِ تراکنشهای بیشتر وجود ندارد.
در این حالت لازم است تا برگ دیگری به پوشه اضافه شود و ثبت تراکنشها از سر گرفته شود. اما تکلیفِ برگۀ قبلی که ظرفیتش پرشده چه میشود؟
قبل از بایگانی برگه لازم است آن را با کدی موردِ پذیرشِ همۀ اعضای سیستم مهر و موم کنید. این کار باعث میشود محتویات برگه تغییر نکند یا اگر تغییر کرد از درجۀ اعتبار ساقط شود. به فرایند تولیدِ این کد اصطلاحاً ماینینگ (mining) گفته میشود که اینجا برای سادگیِ بیشتر از واژۀ «مهر و موم کردن» استفاده میکنیم. خب ببینیم صفحه چطور مهر و موم میشود؟
ماشینِ جادویی
یک ماشین با دیوارهای ضخیم تجسم کنید. شما از مکانیزم داخلیِ این ماشین اطلاعی ندارید. فقط میتوانید به ورودی به آن بدهید و یک خروجی تحویل بگیرید. جعبهای از سمتِ چپ وارد دستگاه میکنید و از سمتِ راست جعبۀ متفاوتی تحویل میگیرید. اسمِ این ماشین در اصطلاحِ برنامه نویسی Hash Function یا تابعِ هش است. چون نمیخواهیم فنی صحبت کنیم از همان واژۀ «ماشینِ جادویی» استفاده میکنیم.
فرض کنید شما عددِ ۴ را از سمتِ چپ وارد ماشین میکنید. در سمتِ راست چیز کاملاً متفاوتی مثلاً dcbea دریافت خواهید کرد. اینکه ماشین چگونه این خروجی را تولید میکند معلوم نیست. این یک فرایندِ یکطرفه است؛ یعنی صرفاً از روی خروجیِ dcbea نمیتوان متوجه شد که ورودیِ آنچه بوده است. ولی این را میدانید که هر وقت عددِ ۴ را به ماشین بدهید همین خروجیِ یکسان را دریافت میکنید.
hash(4) == dcbea
بیایید یک عددِ دیگر به ورودی بدهیم. مثلاً ۲۶
این بار رشتۀ جدیدِ ۹۴c8e را دریافت میکنیم.
یک سوال: چه عددی از سمتِ چپ واردِ ماشین کنم تا در سمتِ راست رشتهای با سه کاراکتر صفر در ابتدای آن دریافت کنم؛ مثلاً ۰۰۰ab, 00098, 000fa و … .
مگر نگفتیم ماشین یکطرفه است؟ پس چطور میشود به این سوال پاسخ داد؟ یکراه هست و آن این است که اعدادِ مختلف را به ورودی بدهیم تا به خروجیِ موردنظر (عددی با سه صفر در ابتدایِ آن) برسیم. این همان کاری است که ماینرها انجام میدهند. بله ماینرها برای این کار جایزه (پول) میگیرند. جلوتر توضیح میدهیم.
بالاخره با تلاشِ و آزمون خطای فراوان بالاخره مقدارِ مناسبی برای ورودی پیدا خواهیم کرد.
قطعاً این کار دشوار و زمانبر است. ولی بررسی صحت و سقمِ این ادعا که عدد ۷۲۵۳۳ خروجی ۰۰۰ca را تولید میکند کارِ سادهای است. درواقع مهمترین ویژگی ماشین جادویی این است که با داشتنِ یک خروجی بهسختی میتوان ورودیِ متناظر را تشخیص داد ولی با داشتنِ ورودی و خروجی بهراحتی میتوان تأیید کرد که آیا ورودی به خروجی تبدیل میشود یا نه.
این ماشین چگونه برگۀ تراکنشها را مهروموم میکند؟
برگۀ تراکنش را یک جعبۀ سیاه حاویِ عدد ۲۰۸۹۳ در نظر بگیرید. حالا از خودتان بپرسید «با اضافه کردن چه عددی به درون این جعبه میتوانم مقداری را در خروجی تولید کنم که در ابتدایش سه رقمِ صفر وجود داشته باشد.» اینکه مدام در مثالها از «سه صفر» صحبت میکنیم برای درکِ آسانتر تابعِ هَش است وگرنه فرایند هشینگ در بیت کوین بسیار پیچیدهتر از این حرفهاست.
اینجا نیز دقیقاً همان سناریوی قبلی را داریم. باید اینقدر عددهای مختلف بهجای علامت سوال قرار دهیم تا نهایتاً به خروجیِ موردنظر برسیم. خلاصه بعد از هزاران بار تلاش به عددِ ۲۱۱۹۱ خواهیم رسید که خروجیِ موردنظر ما را تولید میکند. این عدد بهعلاوۀ عدد ۲۰۸۹۳ وقتی به ماشین داده میشود خروجیای تولید میکند که در ابتدای آن سه رقمِ صفر وجود دارد؛ همان چیزی که دنبالش بودیم.
با این حساب، عدد ۲۱۱۹۱ برای مهر کردن ۲۰۸۹۳ به کار میرود. برای مهر و موم کردن برگه تراکنشها، برچسبی با عددِ ۲۱۱۹۱ روی آن میچسبانیم. مادامی که این برچسب روی برگه وجود داشته باشد یعنی مهر و موم شده است.
عددِ محاسبه شده برای مهر در فرهنگِ بیت کوین ماینینگ اصطلاحاً Proof of Work (اثباتِ کار) گفته میشود. این عدد نشان میدهد که برای محاسبۀ آن تلاشی صورت گرفته است. ما برای سادگیِ بحث از «شمارۀ مهر» استفاده میکنیم. هرکسی بخواهد بداند که محتویات برگه تغییر کرده یا نه کافی است محتویاتِ برگه بهعلاوۀ شمارۀ مهر را به ماشین بدهد و خروجی را بررسی کند. اگر کلمهای با سه صفر در ابتدا ظاهر شد یعنی محتویات برگه دستنخورده است و اگر چیزی خلافِ این بود میتوانید برگه را دور بیندازید چون اطلاعاتِ آن دستکاریشده و دیگر اعتباری ندارد. از همین مکانیزم برای مهر کردن تمام برگهها استفاده میکنیم.
مثل قبل باید دنبالِ عددی باشیم که با اضافه شدن به تراکنشهای صفحه و ارسال به ماشین، خروجی مدنظر ما را تولید کند (کلمهای با سه صفر در ابتدا). بعد از مهر شدن صفحه اگر کسی بخواهد محتوای آن را تغییر دهد خروجی ماشین تغییر میکند چون شمارۀ مهر به دیگر افرادِ شبکه اجازه میدهد سلامتِ برگه را امتحان کنند. حالا که با فرایند مهر کردن آشنا شدید سراغ ادامۀ بحثمان برویم. بهمحض پایان یافتنِ ظرفیتِ برگه، همۀ اعضا شروع میکنند به محاسبۀ شمارۀ مهر. هرکسی توانست شمارۀ مهر را زودتر کشف کند آن را به بقیه اعلام میکند.
دیگر اعضای شبکه صحتِ مهر را تأیید میکنند. اگر درست بود با آن شماره برگه را مهر و در پوشۀ خود قرار میدهند. ولی چه میشود اگر یکی از اعضای شبکه مثلاً شماره ۷ شمارۀ اشتباهی را تولید کند که به تأیید بقیۀ اعضای سیستم نرسد؟ چنین حالتی محتمل است.
- ممکن است تراکنشهایی که در شبکه اعلام شده را اشتباه شنیده باشد؛
- ممکن است تراکنش را اشتباه در برگۀ خود ثبت کرده باشد؛
- یا ممکن است عمداً برای تقلب تراکنشی را اشتباه ثبت کرده باشد.
خلاصه به هر دلیلی باشد آن برگه دیگر اعتبار ندارد و شمارۀ ۷ هیچ راهی جز دور انداختن آن و برداشتن یک نسخۀ کپی از سایر اعضای شبکه ندارد. این شخص تا زمانی که آن برگه را در پوشۀ خود قرار ندهد قادر به ثبت تراکنشهای بیشتر نخواهد بود و درواقع دیگر عضوی از شبکه نیست.
یک سوال: چه دلیلی وجود دارد که اعضای شبکه برای محاسبۀ شمارۀ مهر، زمان و منابع مصرف کنند؟ چرا منتظر نمیمانند یک نفر دیگر محاسبه را انجام داده و به آنها اعلام کند؟
سوالِ خوبی است. هر عضوی از شبکۀ بلاک چین به خاطرِ عضویت و گسترشِ این شبکه میتواند شانس خود را برای برنده شده مقداری پول امتحان کند؛ اما چطور؟ اولین کسی که شمارۀ مهر را کشف کند مقداری پول از طرفِ سیستم دریافت میکند. این جایزه بهعنوان یک مشوق است؛ چون بالاخره فردی که عدد را استخراج کرده منابعِ سیستم و برق مصرف کرده است. این اساسِ وجودِ بیت کوین است؛ یعنی سیستمی که به خاطرِ عضویت و فعالیتِ در آن به شما پاداش میدهد. این پاداش مشوقی برای رشدِ شبکه و ارتقای ارزش بیت کوین است. هر چه افراد بیشتری از بیت کوین استفاده کنند ارزشِ بیت کوین بالاتر میرود و انگیزه برای پول در آوردن از آن بیشتر خواهد شد. وقتی دیگران درآمد ماینرها را میبینند مشتاق عضویت در شبکه میشوند و این دوباره باعث رونق سیستم خواهد شد.
این چرخه همینطور ادامه پیدا میکند…بعد از محاسبۀ شمارۀ مهر و بایگانی صفحه، همۀ اعضای شبکه با یک برگۀ سفید شروع به ثبتِ تراکنشها میکنند؛ و دوباره نوبتِ بعد هرکسی فرصت دارد شانسش را برای جایزۀ بعدی امتحان کند. هر چه توانِ پردازش سیستم بالاتر باشد یافتنِ پاسخ در مدتزمان کمتری میسر است و این شانسِ موفقیت شما را افزایش میدهد. به همین خاطر قدرتِ تجهیزات بیت کوین ماینینگ حرفِ اول را میزند. قطعاً شخصی که از یک سوپرکامپیوتر برای استخراج بیت کوین استفاده میکند از شما که با یک سیستمِ معمولی این کار را انجام میدهید شانسِ موفقیتِ بیشتری دارد.
به لحاظ فنی صفحه بلوکی از تراکنشها و فولدر زنجیرهای از صفحات (بلوکها) است. این یعنی زنجیرۀ بلوکها؛ یعنی بلاک چین (Blockchain). البته هنوز یکچیزی این وسط مبهم است. فرض کنید داخلِ فولدر ۵ صفحۀ مهره شده داریم. چه میشود اگر صفحۀ دوم را به نفعِ خودم ویرایش کنم؟ احتمالاً پاسختان این است که دیگر اعضای شبکه با شمارۀ مهری که در اختیار دارند میتوانند به دستکاریشده صفحه پی ببرند. حرفتان درست ولی اگر شمارۀ جدیدی نیز برای مهر کردن صفحه پیدا کردم و آن صفحه را با آن شماره مهر زدم چه؟ برای جلوگیری از تغییرِ بلوکها (صفحات) مکانیزم بهتری لازم است که در ادامه توضیح خواهیم دادم.
چگونه از بلوکها محافظت میشود؟
پیشتر گفتیم دو جعبه داریم که یکی حاویِ عددِ ۲۰۸۹۳ و دیگری خالی است که باید شما محاسبه کنید. در حالتِ واقعی برای محاسبۀ شمارۀ مهر، سه جعبه نیاز است؛ دوتایشان پر و یکی خالی که باید شما محاسبه کنید. وقتی محتویات این سه جعبه به ماشین وارد میشود خروجی مورد انتظار تولید خواهد شد. محتویات یکی از جعبه که حاویِ تراکنشهای صورت گرفته است. جعبۀ دومی حاوی شمارۀ مهر است و در اینجا جعبۀ سومی تعریف شده که حاوی خروجی ماشین برای صفحۀ قبلی است؛ یعنی کدِ هشِ بلوکِ قبلی.
با این ترفند هر صفحهای به صفحۀ قبلی خود وابسته میشود؛ بنابراین اگر کسی بخواهد صفحهای را تغییر دهد باید محتویات و شمارۀ مهرِ بقیۀ صفحاتی که بعدازآن میآید را نیز تغییر دهد تا سازگاری همۀ صفحات حفظ شود و آب از آب تکان نخورد. دقیقاً مثل دومینو؛ اگر یکی از قطعات را عقبتر ببرید باید تمام قطعاتی که بعدازآن میآید را نیز عقبتر برانید تا بازی به هم نخورد. در مثالِ ما اگر یکی از ۱۰ نفر بخواهد صفحهای را تغییر دهد باید تمامِ صفحات بعدی را تغییر دهد و برای هرکدام شمارۀ مهرِ جدیدی طراحی کند. این کار گرچه برای شبکهای با ۱۰ نفر عضو چندان سخت نیست ولی برای شبکۀ عظیمِ بیت کوین با میلیونها کاربر و بلوکِ زنجیر شده تقریباً غیرممکن است. فقط در یک صورت بیت کوین ناامن خواهد شد؛ زمانی که بیش از نصفِ کاربرانش ناتو از آب درآیند؛ یعنی مثلاً بهجای ۱ نفر ۶ نفر از ۱۰ نفر اختلالگر شوند. این را اصطلاحاً مشکل ۵۱% میگویند. ولی معمولاً چنین اتفاقی نمیافتد. ویکیپدیا بر مبنای اعتماد ساخته شده و به موفقیت هم رسید. بلاک چین نیز بر همین اساس ساخته شده و تا امروز بهدرستی در حالِ فعالیت است.
اگر پیگیر اخبار ارزهای دیجیتال باشید، حتما نام «فناوری بلاک چین» به گوشتان خورده است. در واقع، این تکنولوژی، یک سیستم ثبت گزارشات و اطلاعات است که به صورت همزمان، دادههایی در آن ثبت و اصلاح میشوند. پیچیدگی این فناوری آن را به گزینهای غیر قابل نفوذ و با امنیت بالا تبدیل کرده است. در این قسمت از خانه سرمایه، سفری کوتاه اما پرماجرا به قلب بلاکچین خواهیم داشت. با ما همراه باشید.
چرا امکان هک یا خرابکاری در فناوری بلاک چین وجود ندارد؟
اجازه بدهید این موضوع را در قالب یک مثال برایتان روشن کنیم. تصور کنید دو نفر میخواهند از طریق اینترنت با هم تراکنش انجام دهند.
هر کدام از آنها یک کلید خصوصی و یک کلید عمومی در اختیار دارند.
هدف اصلی این کلیدها ایجاد یک مرجع هویت دیجیتالی ایمن است که بر اساس ترکیبی از کلیدهای رمزنگاری شدهی عمومی و خصوصی ایجاد میشود. این هویت مطمئن، بخش اصلی تکنولوژی بلاک چین را تشکیل میدهد. کلیدهای عمومی و خصوصی – هر دو با هم – یک امضای دیجیتالی را فراهم میکنند که ابزاری مفید برای صدور و کنترل مالکیت به حساب میآیند.
تعیین هویت خوب است اما کافی نیست
کنترل مالکیت برای ایمنسازی روابط دیجیتالی، گزینهای خوب به شمار میرود اما هرگز کافی نیست. با وجود آنکه کنترلها مسئله اهراز هویت را حل کردهاند اما هنوز هم نیاز به ابزاری برای تایید تراکنشها و مجوزها احساس میشد. در «Blockchain» این کار با یک «شبکه توزیع شده» آغاز میشود.
شبکه توزیع شده چیست و چگونه کار میکند؟
اجازه بدهید با یک مثال، شبکه توزیع شده را بهتر توضیح دهیم. تصور کنید که شما یک کلکسیون دارید و فکر میکنید یکی از اشیای گرانبهایتان گم شده است. به همین دلیل به سراغ دوربینهای مدار بسته میروید تا سر از کار ماجرا در بیاورید. پس از مشاهده ماجراهایی که توسط این دوربینها ثبت شدهاند شما مطمئن میشوید که آن چیز گرانبها واقعا ناپدیده گشته است.
حالا شما برای اثبات ادعای خود شواهدی بصری دارید. بخش عمده ارزش فناوری بلاکچین بیت کوین، شبکه بزرگ آن است. در این شبکه، «اعتبارسنجها» (validators) از تایید ریاضی همانند دوربینها استفاده میکنند و بر سر اینکه همگی شاهد یک رخداد بودهاند به توافق میرسند. نکته مهم آن است که اندازه شبکه در ایمن ساختن آن نقش بسیار مهمی دارد.
سیستم ثبت اطلاعات در بلاک چین چگونه کار میکند؟
زمانی که کلیدهای رمزنگاری شده با این شبکه ترکیب میشوند، شکل بسیار مفیدی از تعاملات دیجیتال پدیدار میشود. فناوری «Blockchain» به فرد A اجازه میدهد تا از کلید خصوصی خود برای ضمیمه کردن اطلاعات مربوط به تراکنش – مثلا در مورد بیت کوین، مبلغی از این کریپتوکارنسی ارسال میشود – با کلید عمومی شخص B استفاده کند.
این اطلاعات با هم بخشی از یک «بلاک» را تشکیل میدهند. هر بلاک شامل یک «امضای دیجیتالی»، «زمانسنج» و اطلاعات مربوط است. در گام بعدی این بلاک بین تمام اعضای شبکه (گرهها یا نودها) پخش میشود.
اما چرا میلیونها کامپیوتر مجهز به دوربین، در انتظار ثبت وقایع مربوط به کلکسیون هستند؟ به عبارت دیگر، چطور میتوان چنین قدرت محاسباتی را جهت تأمین امنیت شبکه فراهم کرد؟
راهحل این مساله «ماینینگ» یا «استخراج» است. در فرآیند «Blockchain» از منافع شخصی هر فرد برای کمک به نیاز عمومی استفاده میشود. هر فرد، بخش کوچکی از توان محاسباتی خود را ارائه میدهد تا به شبکه خدمتی کند و در نتیجه آن میتواند پاداش بگیرد.
نیمنگاهی به سازوکار فناوری بلاک چین
هنگامی که یک بلاک، داده جدیدی را ذخیره میکند، به «Blockchain» اضافه میشود. در واقع، این تکنولوژی از چندین بلاک تشکیل شده است که به هم متصل شدهاند. برای اینکه یک بلاک به فناوری بلاک چین اضافه شود، باید چهار اتفاق رخ بدهد:
1- در ابتدا باید معاملهای انجام شود
مثلا شما پس از کلیکی سریع روی گزینه خرید، وارد مرحله بعدی میشوید و با اندکی قضاوت، خرید خود را قطعی میکنید.
2- معامله باید تایید گردد
پس از انجام خرید، باید تراکنش شما تایید شود. همانند دیگر پروسههای ثبت اطلاعات مثل «کمیسیون بورس اوراق بهادار»، «ویکی پدیا» یا «کتابخانهها» شخصی مسئول بررسی اطلاعات جدید است.
در مورد فناوری بلاک چین، این وظیفه در اختیار شبکهای از کامپیوترها قرار دارد. در بیشتر موارد، این شبکهها از هزاران کامپیوتر – در خصوص بیت کوین در حدود ۵ میلیون – در سراسر جهان تشکیل شدهاند.
زمانی که شما خرید خود را آنلاین انجام میدهید، شبکهای از کامپیوترها به دنبال چک کردن این هستند که تراکنش شما به شیوهای که انتخاب کردهاید اتفاق افتاده است یا خیر. در واقع آنها جزئیات خرید را – مانند زمان معامله، مقدار مبلغ و شرکتکنندگان – تایید میکنند.
3- باید تراکنشها در یک بلاک ذخیره شوند
بعد از اینکه تراکنش شما به صورت دقیق تایید شد، رنگ آن سبز میشود. مبلغ معاملهتان، امضای دیجیتالی شما و امضای دیجیتالی شرکت آنلاینی که از آن خرید کردید، همگی در یک بلاک ذخیره میشوند و این معامله به صدها یا هزاران معامله همانند آن خواهد پیوست.
4- کد هش ساخته میشود
هر یک از بلاکها چیزی به نام «هش» دارند. یک هش، رشتهای از کارکترها است که در هر بلاک با یک تابع ریاضی خاص به دست میآید و توسعه دهندگان آن را مشخص میکنند. کوچکترین تغییر در اطلاعات یک بلاک، هش آن را بهطور کلی تغییر میدهد.
زمانی که تمام تراکنشهای بلاک تایید شدند، کد شناسایی منحصر به فردی به آن اختصاص داده میشود که همان هش است. در «Blockchain» هش بلاکهای بعدی، شامل هش بلاک قبلی هم هستند.
هنگامی که این بلاک جدید به بلاک چین اضافه میشود، برای عموم (و حتی شما) قابل مشاهده خواهد بود. در آن هنگام به اطلاعاتی مثل دادههای معامله، زمان، مکان و اینکه چه کسی آن بلاک را به فناوری بلاکچین افزوده است، دسترسی خواهید داشت.
آیا Blockchain یک تکنولوژی خصوصی است؟
هر کسی میتواند محتویات بلاکها را ببیند و کاربران میتوانند کامپیوترهای خود را به شبکه بلاک چین متصل کنند. برای انجام این کار، کامپیوتر آنها یک کپی از بلاک را دریافت میکند و هر زمان که یک بلاک جدید اضافه شد، به طور خودکار بهروزرسانی میشود.
مانند سرویس خبری فیس بوک که هر زمان پست جدیدی ارسال میشود، به طور اتوماتیک بهروزرسانی را انجام میدهد. هر رایانه در شبکه بلاک چین، برای خود یک کپی از بلاک را دارد؛ یعنی از یک بلاک، هزاران کپی – در خصوص بیت کوین، میلیونها کپی – پیدا میشود.
اگر چه همه نسخههای بلاک، یکسان هستند؛ اما گسترش این اطلاعات در سراسر شبکه کامپیوترها، دستکاری اطلاعات را دشوارتر میکند. با وجود فناوری بلاک چین، حسابی منفرد و قطعی از رویدادها وجود ندارد که بتوان آن را دستکاری کرد و اگر هکری بخواهد در شبکه دستکاری انجام دهد، باید هر کپی از بلاک را تغییر دهد.
اما اگر نگاهی به بلاک بیت کوین بیندازید متوجه میشوید که شما نمیتوانید اطلاعات مربوط به کاربران در حال انجام معاملات را شناسایی کنید. درست است که معاملات روی بلاکها بهطور کامل ناشناس نیستند، اما اطلاعات شخصی در خصوص کاربران به امضای دیجیتالی یا نام کاربریشان محدود میشود.
آیا شبکه بلاک چین، امن است؟
تکنولوژی «Blockchain» مسائل مربوط به امنیت و اعتماد را به چندین روش پیش میبرد. اول اینکه بلاکهای جدید همیشه به صورت خطی و بر اساس تاریخشان ذخیره میشوند؛ یعنی آنها همیشه به «انتهای» بلاک چین اضافه میشوند.
اگر نگاهی به بلاک بیت کوین بیندازید، خواهید دید که هر بلاک دارای موقعیتی در زنجیره است که «height» نامیده میشود. جالب است بدانید که از فوریه ۲۰۱۹، ارتفاع بلاکها به ۵۶۲،۰۰۰ رسیده است.
پس از اضافه شدن یک بلاک به انتهای بلاک چین، بازگرداندن و تغییر محتوای بلاک بسیار دشوار میشود. چون هر بلاک، شامل هش خودش و هش بلاک قبل از آن نیز خواهد بود. همانطور که با هم گفتیم، کدهای هش به وسیله تابعی ریاضی ایجاد میشوند که اطلاعات دیجیتالی را به رشتهای از اعداد و حروف تبدیل میکند.
اگر این اطلاعات به هر نحوی ویرایش شوند، کد هش نیز تغییر پیدا میکند. به همین دلیل است که این مساله برای امنیت شبکه بسیار اهمیت دارد. اجازه بدهید مثالی برایتان بزنیم. تصور کنید هکری تلاش میکند تا تراکنش خریدتان در سایتی آنلاین را تغییر دهد تا مجبور شوید دو بار هزینه خرید خود را پرداخت کنید.
به محض ویرایش مقدار مبلغ معاملهتان، هش بلاک تغییر پیدا خواهد کرد. بلاک بعدی در این زنجیره هنوز هش قبلی را در خود دارد و هکرها باید آن بلاک را به منظور پوشاندن کار خود بهروزرسانی کنند.
با انجام این کار، هش بلاک تغییر پیدا میکند و همینطور هشهای بعدی و بعدی. بنابراین، برای تغییر یک بلاک، هکر باید هر بلاک پس از آن را نیز دربلاک چین تغییر دهد.
محاسبه دوباره همه این هشها، به قدرت محاسباتی بسیار زیاد و غیر قابل تصوری نیاز دارد. به عبارت دیگر، با افزودن یک بلاک به بلاک چین، ویرایش آن بسیار دشوار و حذف آن غیر ممکن میشود.
شبکههای بلاک چین با هدف ایجاد اعتماد، تعدادی تست را برای کامپیوترهایی که قصد اتصال به شبکه و اضافه شدن زنجیره بلاک دارند اجرا میکنند. این تستها که «مدلهای اجماع» (consensus models) نامیده میشوند باید پیش از مشارکت کاربران در شبکه «Blockchain» اجرا شوند تا کاربران خودشان را به شبکه ثابت کنند.
آیا تکنولوژی میتواند روی کریپتوکارنسیها تاثیر بگذارد؟
«Blockchain» اساس شکلگیری ارزهای دیجیتالی مانند بیت کوین است. ارزهایی مانند دلار آمریکا تحت نظارت و تایید مرجعی مرکزی که معمولا بانک یا دولت است، قرار دارند. اگر بانک یک کاربر منحل شود یا در کشوری با دولت ناپایدار زندگی کند، ارزش پول آنها در معرض خطر قرار میگیرد.
بیت کوین به دلیل این مشکلات به وجود آمد. با گسترش عملیات ارز دیجیتال بیت کوین در سراسر شبکه کامپیوترها، فناوری بلاک چین به آنها و دیگر کریپتوکارنسیها این امکان را میدهد تا بدون نیاز به یک مرجع مرکزی فعالیت کنند.
این کار نه تنها ریسک را کاهش میدهد بلکه بسیاری از هزینههای پردازش و تراکنش را حذف میکند. گذشته از این، کشورهایی که ارز ناپایداری دارند میتوانند از ارزهای دیجیتال به عنوان ارزی باثباتتر و کاربردیتر استفاده کرده و با شبکهای گستردهتر از افراد و موسسات هم در داخل و هم در سطح بینالمللی فعالیت کنند.
تکنولوژی Blockchain چه مزیتها و نقطههای ضعفی دارد:
با وجود تمام پیچیدگیهای این تکنولوژی، پتانسیل فناوری بلاک چین تقریبا بدون محدودیت است. این فناوری با راهاندازی شکلی غیر متمرکز در نگهداری و ثبت سوابق باعث افزایش امنیت، کاهش هزینهها و خطای کمتر شده است.
حتی شاید این تکنولوژی، کاربردهایی فراتر از آنچه گفته میشود داشته باشد. با این وجود، ما به سراغ چند مورد از مزیتها و معایب آشکار این فناوری میرویم:
مزایای فناوری بلاک چین:
- بهبود دقت و صحت از طریق حذف دخالتهای انسانی در فرایند تایید
- کاهش هزینهها با حذف تاییدیه شخص ثالث
- غیر متمرکز بودن آن، دست کاری و مداخله را دشوارتر میکند
- معاملهها ایمن، خصوصی و کارآمد هستند
- سازوکار تکنولوژی آن شفاف است
معایب فناوری بلاک چین:
- ماینینگ بیت کوین بسیار هزینهبر است
- تعداد تراکنشها در هر ثانیه اندک هستند
- از آن در فعالیتهای غیرقانونی استفاده شده است
- قابلیت هک شدن
خلاصهای از آنچه با هم در فناوری بلاک چین گفتیم:
- «Blockchain» نوعی سیستم ثبت گزارشات است که اطلاعات مرتبط با معاملات را در خود ذخیره میکند.
- هر تراکنش، باعث ایجاد یک هش میشود.
- هش، رشتهای از اعداد و حروف است.
- معاملات به ترتیبی که اتفاق میافتند وارد شبکه میشوند.
- هش یک معامله نه تنها به معاملات فعلی بلکه به هش معاملات قبلی نیز بستگی دارد.
- تغییری کوچک در یک تراکنش، یک هش جدید را ایجاد میکند.
- بلاک چین در بسیاری از کامپیوترها گسترش مییابد و هرکدام از آنها یک کپی از بلاک را در اختیار دارند.
- به این کامپیوترها، «نود» گفته میشود.
- نودها مسئول بررسی و اطمینان از عملکرد درست هشها هستند.
- اگر یک تراکنش توسط اکثریت نودها تایید شود آنگاه وارد یک بلاک میشود.
- هر بلاک به بلاک قبلی خود نیز اشاره دارد و همگی باهم فناوری بلاک چین را تشکیل میدهند.
- بلاکها هر ۱۰ دقیقه یک بار بهروزرسانی میشود.
نظر شما چیست؟
در مورد میزان امنیت بلاکچین چه نظری دارید؟ به نظرتان این فناوری تا چه زمانی میتواند پاسخگوی نیازهای معاملهگران ارزهای دیجیتال باشد؟

















































