گام 1 – بلاکچین و زنجیرۀ بلوکی چیست؟
معنی کلمه بلاکچین
معنی کلمۀ بلاکچین، یا بِلاکچِین (Blockchain)، زنجیرۀ بلوکی است (Block به معنی بلوک و Chain به معنی زنجیره).
میتوان گفت بلاکچین، نسل جدیدی از محل ذخیرهسازی اطلاعات میباشد. همانطور که یک فِلَش مِموری و یا یک هارد اِکستِرنال و یا یک سرویس ذخیرهسازی ابری (Cloud Storage، مانند گوگل درایو، iCloud و …) برای ذخیرهسازی اطلاعات استفاده میشوند، از بلاکچین هم برای نگهداری اطلاعات و دادهها استفاده میگردد. اما با تفاوتهای اساسی و بسیار!
بلاکچین زنجیرهای از بلوکهای دیجیتال است که دادهها را در یک دفتر کلِ قابل مشاهده برای عموم نگهداری میکند.
تاریخچۀ اطلاعات و اعتبار آنها توسط گِرِههای کامل بیتکوین (کامپیوترهای مجهز به نرمافزار بیتکوین Bitcoin Full Nodes) در سراسر جهان تأیید میشود که هر کدام یک کپیِ کامل از تاریخچه بلاکچین را نگهداری میکنند.
از آنجایی که تراکنشها توسط یک بلاکچینِ «عمومی» ایمن میشوند، برای تأییدِ واقعی بودنِ داراییهای شما یا تقلبی نبودن تراکنشهای شما، نیازی به اعتماد به یک واسطه (مانند بانک) وجود ندارد. تنها مواردی که شما نیاز دارید بدانید اینها هستند:
- اطلاعات بلاکچین توسط عموم کاربرانش قابل مشاهده است.
- تراکنشهای بلاکچین به شکل عمومی تایید میگردند.
- با فرمولهای ریاضی، برنامهریزی و امن شده است.
- رمزنگاریشده است.
بلاکچین یا همان دفتر
سادهترین تعریفی که میتوانم برای بلاکچین به کار ببرم این است: بلاکچین یک دفتر یادداشت است که برای ثبت دائمی اطلاعات از آن استفاده میشود. اما چطور؟ ابتدا بیائیم برخی از ویژگیهای این دفتر را بررسی کنیم:
- هر صفحه از این دفتر یادداشت گنجایش مشخص و محدودی برای نوشتن اطلاعات دارد. همانند صفحات یک دفتر کاغذیِ معمولی که بیشتر از یک تعداد کلمه نمیتوان در هر صفحهاش نوشت.
- افراد میتوانند به نوبت، یک صفحۀ پر شده از اطلاعات را به دفتر اضافه کنند.
- اولین صفحه از این دفتر را خودِ ابداعکننده و مخترع آن، داخل این دفتر قرار میدهد.
- هر صفحه دارای یک شماره یا رمز میباشد. مثلا فرض کنید اولین صفحۀ این دفتر دارای شماره یا رمز ۲۰۰۸ میباشد.
- هر صفحه دارای یک برچسب زمانی است (تاریخ و ساعتی که صفحه در آن زمان، با موفقیت به دفتر اضافه میشود).
- رمز هر صفحه، طبق یک فرمول یا دستورالعمل (الگوریتم)، تبدیل به رمزِ صفحۀ بعد میشود. فرض میکنیم فرمول این است: «رمزِ قبلی ضرب در ۲ و منهای ۱۰۰۰».
- اطلاعات ثبت شده در این دفتر را همگان میتوانند ببینند.
- هر فردی در هر کجای دنیا نیز میتواند از تمام صفحاتِ این دفتر یک نسخۀ کپی، روی کامپیوتر خود دانلود و نگهداری کند. این افراد به شکل داوطلبانه اقدام به نگهداریِ نسخههای تکثیر شده مینمایند.
- هر اطلاعات جدیدی که در این دفتر ثبت گردد، همزمان در تمام دفاترِ تکثیر شده نزد افرادِ نگهدارنده نیز ثبت و به روز میگردد.
- هر فردی که بخواهد صفحۀ جدیدی به این دفتر اضافه نماید باید بتواند شماره یا رمز صفحه خود را از طریق فرمولی که به آن اشاره کردم محاسبه و اثبات نماید تا اجازۀ اضافه کردن صفحه جدید به ایشان داده شود. این محاسبه از طریق همان فرمول ریاضی و به کمک شماره یا رمزِ اولین صفحه (همان ۲۰۰۸) امکان پذیر است.
- تایید اعتبارِ اطلاعاتِ داخل هر صفحهٔ جدید توسط اکثریتِ حاضر و ناظر بر دفتر، انجام میپذیرد.
- تغییر اطلاعاتِ ثبت شده در این دفتر غیر ممکن است. به عبارت دیگر، اطلاعات و سوابقِ ثبت شده، برگشت ناپذیر است.
- افراد برای استفاده از این دفتر نیازی به ارائۀ نام، نام خانوادگی، ایمیل، شماره موبایل یا اطلاعات هویتیِ دیگر ندارند و فقط با یک کلید عمومیِ شبیه به یک رمز (مثلاً bc1vb6c5b8xc4vb765xc3vbcx8v765) برای دیگران قابل شناسایی هستند و برای همین، افراد تا جایی که خودشان بخواهند، میتوانند ناشناس باقی بمانند تا حریم خصوصی شان حفظ گردد.
- انتقال اطلاعات بین افراد به شکل فرد به فرد (P2P) انجام میگیرد. یعنی افراد برای انتقال اطلاعات بین یکدیگر نیاز به فرد یا سازمانِ واسطه ندارند. (در انتهای این گام، یک مثال در این خصوص آوردهام).
- هر فرد دارای یک امضای دیجیتالِ بسیار محرمانه به نام کلید خصوصی است که آن هم شبیه به یک رمز میباشد. به طور مثال: ۸rtt7v4pio8uy9u7rtwe574a54cz521vc2nm1bn26r5g (و البته خیلی طولانی تر!).
همانطور که شاهد هستید، بلاکچین نتیجۀ تلاش دانشمندان کامپیوتر، رمزنگاران و ریاضی دانان است. نمی خواهم موضوع را برایتان پیچیده کنم اما برای اینکه متوجه شویم چرا از سال ۲۰۰۸ میلادی تا به امروز، افراد زیادی به این فناوری اعتماد کردهاند بهتر است این مطالب را با حوصله ادامه دهیم. البته باید بدانید که ساز و کار اصلیِ یک بلاکچین، بسیار پیچیده تر از مثال سادهای است که در ادامه خواهید دید.
بلاکچین، یا زنجیره بلوکی، یک فناوری نوین است که به عنوان یک دفتر کل توزیع شده و غیرمتمرکز عمل میکند. این فناوری به کاربران امکان میدهد تا اطلاعات را به صورت امن و شفاف ذخیره کنند و انتقال دهند. بلاکچین از بلوکهای دیجیتالی تشکیل شده است که هر بلوک شامل مجموعهای از تراکنشها است. این بلوکها به ترتیب زمانی به یکدیگر متصل میشوند و یک زنجیره بلوکی را تشکیل میدهند.
یک مثال ساده شده برای بلاکچین
فرض کردیم که شماره صفحه اول ۲۰۰۸ است.
اگر شخصی بخواهد صفحه دومی را با اطلاعاتی که رویش نوشته، به این دفتر اضافه کند باید رمز صفحه دوم را محاسبه کند. پس طبق فرمولی که قبلا مثال زدم، ۲۰۰۸ را در عددِ ۲ ضرب میکند (میشود ۴۰۱۶) و سپس منهای ۱۰۰۰ میکند (میشود ۳۰۱۶). پس این شخص، رمز ۳۰۱۶ را روی صفحه دوم مینویسد و آن را به دفتر اضافه مینماید.
شخصی دیگر بعد از نوشتن یک سری اطلاعات روی صفحۀ سوم، میخواهد آن را به دفتر اضافه کند. پس طبق فرمول، ۳۰۱۶ را در ۲ ضرب میکند (میشود ۶۰۳۲) و سپس منهای ۱۰۰۰ میکند (میشود ۵۰۳۲). این شخص، رمز ۵۰۳۲ را روی صفحه سوم مینویسد و آن را به دفتر اضافه میکند. و این کار همینطور ادامه پیدا میکند و هر شخصی در دنیا میتواند صفحهای جدید را به این دفتر اضافه نماید.
این ساز و کارِ محاسبۀ رمز طبق یک فرمول یا اصطلاحاً رمزنِگاری (Cryptography) باعث میشود که هر فردی نتواند به راحتی، یک صفحه به این دفتر اضافه نماید.
نهایتا باید بدانید که این صفحات نه به شکل کاغذی بلکه در قالب فایلهای کامپیوتری به نام بلوک (Block تلفظ: بِلاک) ذخیره میگردند. و از آنجا که این بلوکهای حاویِ اطلاعات، همانند صفحات یک دفتر و مثل حلقههای زنجیر، به ترتیب و پشت سر هم قرار میگیرند، از اصطلاحِ زنجیرۀ بلوکی یا بلاکچین برای این نوع دفتر استفاده میگردد.
چه نوع اطلاعاتی مناسبِ ذخیرهسازی در بلاکچین است؟
شاید این پرسش برایتان پیش آید که از این دفتر با این ساز و کارِ پیچیده، برای ذخیرهسازیِ چه اطلاعاتی میتوان استفاده کرد. اگر دوباره به ویژگیهای این دفتر نگاه کنیم میبینیم که این نوع دفتر یا بهتر بگوئیم، بلاکچین، برای ثبت اطلاعاتی مناسب است که نیاز به تغییر آن نداشته باشیم مثلا ثبت اطلاعاتِ تَراکُنِشهای مالی و جابجایی پول بین افراد در یک بانک یا یک کشور یا سراسر دنیا. وقتی شما خودتان مبلغی را به حساب کسی واریز میکنید، این یک تراکنش و جابجاییِ قطعی است که میتواند روی بلاکچین ثبت گردد و اطلاعاتِ این تَراکُنِش (شامل شماره حساب فرستنده و شماره حساب گیرنده و مبلغ و زمان انجام) نیز نیازی به تغییر در آینده ندارد. پس بلاکچین، محل خوبی برای ذخیرهسازی چنین اطلاعاتی است.
یا مثلا تاریخ تولد هر انسان که قاعدتاً هیچوقت تغییر نخواهد کرد.
البته در مورد ثبت تاریخ تولد، این ایراد وجود دارد که ممکن است همان موقع که تاریخ تولد یک نوزاد توسط یک کارمند یا پرستار در بلاکچین ثبت میگردد، به اشتباه یا از روی عمد، چند روز جلوتر یا عقبتر ثبت شود! این مشکل هنوز در دنیا حل نشده و به همین جهت، برای ثبت اطلاعاتی از این دست که نیاز به صداقت یا اعتماد بالایی دارد و یا میبایست نهایتا توسط یک فردِ واسط ثبت گردد، استفاده از بلاکچین فعلا توصیه نشده است.
برخی ویژگیهای فناوری بلاکچین
- توزیع شده و غیرمتمرکز و فاقد یک مالکِ مرکزی است. یعنی همه میتوانند تمام اطلاعات آن را روی کامپیوتر خود دانلود و نگهداری کنند.
- شفاف است.
- اطلاعات ثبت شده در آن غیر قابل دستکاری/تغییر است.
- غیر قابل هَک است یعنی امکان تقلب در آن وجود ندارد.
- حریم شخصی افراد را حفظ میکند.
- نقل و انتقال اطلاعات در آن سریع است.
- هزینههای انجام تراکنش بسیار ناچیز و در برخی بلاکچینها در حد نزدیک به صفر دلار است.
- سرقت هویت در آن امکان ندارد.
- قابلیت استفاده در سطح جهانی دارد (تنها با دسترسی به یک اینترنت ساده).
- تورم و خلق پولِ بی رَویه در آن قابل کنترل است.
- جهانی شدن کسبوکارها را آسان میکند.
- دادههای ذخیره شده در آن گم، خراب، پاک، دزدیده، سانسور و یا هک نمیشوند.
- دارای امکان پیادهسازیِ قراردادهای هوشمند یا قراردادهای خوداجراشونده (Smart Contract) است.
- دارای امکان راهاندازی بلاکچینهای خصوصی برای دولتها یا سازمانها است.
فناوری دفتر کل توزیع شده یا DLT
همانطور که تا الان یاد گرفتیم، این دفتر میتواند مثل یک دفتر کل حسابداری (Ledger تلفظ: لِجِر) برای ثبت اطلاعاتِ تراکنشهای مالی عمل نماید. از طرف دیگر به دلیل اینکه این دفتر یا پایگاه داده (دِیتابِیس Database) اشتراکی و در دسترس همگان است و در بین کامپیوترهای مختلف قابل توزیع و نگهداری و میزبانی است به آن دفتر کل توزیع شده (Distributed Ledger) نیز میگویند. فناوری دفتر کل توزیع شده (Distributed Ledger Technology – DLT)، پایه و اساس بلاکچین است.
ساتوشی ناکاموتو
من هم مثل شما وقتی اولین بار با این دو کلمه برخورد کردم اولین حسم این بود که احتمالاً نام یک شخص یا شرکت ژاپنی است. در اصل اولین بار در سال ۲۰۰۸ میلادی (۱۳۸۷ شمسی) بلاکچین توسط فرد یا گروهی ناشناس با نام مستعار ساتوشی ناکاموتو (Satoshi Nakamoto) طراحی و تعریف شد تا از آن به عنوان دفترکلِ تراکنشهای یک پول اینترنتی (که نامش را بیتکوین Bitcoin گذاشتند) استفاده کنند.
این فرد یا گروه در آن سال، با تنظیم یک فایل که همان سند مشخصات فنیِ فناوری بلاکچین (دفتر کل توزیع شده) بود، و ارسال آن به ایمیلهای اعضای بخشِ رمزنگاریِ سایت metzdowd.com اعلام وجود کردند. وبسایت bitcoin.org نیز قبلتر توسط ساتوشی یا همکارش شروع به کار کرده بود!
یک تراکنش سادۀ بیتکوین چطور اتفاق میافتد؟
اکنون متوجه شدیم که اولین کاربردی که برای فناوری بلاکچین یا همان دفتر کل توزیع شده تعریف شده بود، ثبت اطلاعات تاریخ تولد افراد در جهان نبوده، بلکه ثبت اطلاعاتِ موجودی، نقل و انتقالات و تراکنشهای یک ارز اینترنتی به نام بیتکوین بوده است. از طرف دیگر یادمان مانده که در بلاکچین، انتقال اطلاعات بین افراد به شکل فرد به فرد انجام میگیرد. یعنی افراد برای انتقال اطلاعات بین همدیگر نیاز به فرد یا سازمانِ واسط (مانند بانک) ندارند.
فرض کنید دارایی بیتکوین شما در بلاکچین، ۱۰ بیتکوین میباشد که به نام شما ثبت شده است (یادآوری میکنم: نام شما در بلاکچین چیزی شبیه به این رمز یا کلید عمومی میباشد:
bc1vb6c5b8xc4vb765xc3vbcx8v765
از طرف دیگر فرض کنید کلید عمومی دوست شما نیز bc1875p4s421x3a5w98tu7ty7oui8p است و دوستتان بیتکوین ندارد. اگر شما تصمیم داشته باشید که ۲ بیتکوین به دوستتان انتقال دهید به این روش عمل میکنید:
- نرمافزار یا اَپلیکِیشن یا اَپِ مربوطه را باز میکنید.
- به قسمت ارسال میروید.
- کلید عمومی دوستتان را در قسمت دریافتکننده وارد میکنید.
- مبلغ یا تعداد را معادل ۲ بیتکوین قرار میدهید.
- این سند را با امضای دیجیتال خود، امضا میکنید.
- سند امضا شده را به بلاکچین ارسال میکنید تا در بلاکچین ثبت گردد.
- هزینه یا بهتر بگوئیم، کارمزد این ثبت را نیز پرداخت میکنید.
- منتظر میمانید تا ثبت این سند، تایید و اعلام گردد.
بعد از تاییدِ ثبت این تراکنش در بلاکچین (دفتر کل توزیع شده)، تعداد بیتکوینهای متصل به کلید عمومی شما، ۸ بیتکوین خواهد شد و تعداد بیتکوینهای متصل به کلید عمومی دوستتان، ۲ بیتکوین نشان داده میشود و تمام!
اگر دقت کنید میبینید که برای انجام این انتقال بین شما و دوستتان، به یک بانک یا مؤسسه یا شرکت یا شخص دیگری نیاز نداشتید و خودتان مستقیماً سندِ این انتقال را امضا کردید تا در بلاکچین ثبت گردد. به این نوع نقل و انتقالِ اطلاعات بین افراد که بدون واسطه انجام میپذیرد، همتا به همتا یا نظیر به نظیر یا فرد به فرد یا کامپیوتر به کامپیوتر گفته میشود (Peer-to-Peer, P2P).
تایید و ثبت تراکنش بیتکوین در بلاکچین چگونه انجام میشود؟
روشی که از طریق آن بیتکوین تولید (خلق) و وارد گردش و به بازار عرضه میشود، استخراج یا ماینینگ نام دارد. زمانی که یک بلوک حدوداً هر ۱۰ دقیقه یک بار تکمیل و به زنجیره بلوکی اضافه میشود، به ماینرها (استخراج کنندگان یا معندچی ها) مقداری بیتکوین به عنوان پاداش داده میشود. این پاداش همان بیتکوینهایی است که حدوداً هر ۱۰ دقیقه یک بار تولید و به چرخۀ بازار تزریق میگردد.
ماینرها در حقیقت افرادی هستند که کامپیوترهای مخصوصی را در اختیار بلاکچین قرار میدهند تا بلاکچین به کمکِ مجموعِ قدرتِ پردازشِ این کامپیوترها بتواند تراکنشهای انجام شده بین افراد (فرستنده و گیرنده) را تایید نماید. شما هم میتوانید با توجه به قوانین و مقررات کشوری که در آن زندگی میکنید، تعدادی از این کامپیوترهای مخصوص را در محل مناسبی روشن کرده و به اینترنت متصل نمائید و کسب درآمد غیر فعال داشته باشید. (درآمد غیر فعال آن دسته از درآمدهایی است که شما نیازی به صرف وقت و فعالیت روزانه برای آن ندارید. نمونههایی از درآمد غیر فعال عبارت است از گرفتن اجاره، گرفتن سود بانکی یا سود سرمایهگذاری، استخراج رمزارز و…)
اینکه چرا به این افراد در زبان انگلیسی Miner یا معدنچی میگویند میتواند موضوعی برای تحقیق و جستجو و مطالعه برای شما عزیزان باشد. میتوانید از قسمت جستجوی منوی بالای همین سایت نیز استفاده نمائید. من هم مثل همیشه آماده پاسخگویی هستم.
فکر میکنم اکنون آماده شدهاید تا با هم یک گام دیگر برداریم و به گام دوم یعنی بیتکوین و رمزارز برویم.