نخست روشن میکنیم چه چیزی قرار است حل شود. کپینشدنِ پول، با کپینشدنِ داده یک مسئله نیست؛ همین تفاوت ما را به امضا، تاریخچه و قواعد مشترک میرساند.
مطالب مرتبط: ندارد
مفاهیم این بخش: پروتکل، شبکهٔ همتابههمتا، دارایی، دوبارهخرجکردن، تاریخچهٔ مشترک، وایتپیپر، بلاک پیدایش، هویت مستعار، ساتوشی
هدف توضیح: تفکیک قواعد بیتکوین از نرمافزار و اشخاص و توضیح مسئلهٔ اصلی بدون اتکا به شعار.
وقتی میگوییم «بیتکوین»، از یک دارایی حرف میزنیم یا یک شبکه؟
این نام در سه معنای مرتبط استفاده میشود. «پروتکل» قواعدی است که پیامها و انتقالهای معتبر را مشخص میکند؛ «شبکه» مجموعهٔ رایانههایی است که با این قواعد ارتباط دارند؛ و «بیتکوین» بهعنوان دارایی، مقداری است که اختیار خرجکردنش با شرایط ثبتشده در دفتر مشترک تعیین میشود. شبکه پول را مانند یک فایل از دستگاهی به دستگاه دیگر جابهجا نمیکند؛ سابقهٔ خرجشدن و شرایط خرج بعدی را بررسی میکند. ساختار دفتر بیتکوین
برای روشنشدن تفاوت، بستهشدن یک برنامهٔ کیف پول به معنی بستهشدن شبکه نیست؛ همانطور که خرابی برنامهٔ ایمیل، خود قواعد ارتباط ایمیلی را حذف نمیکند. بیتکوین کور نیز نرمافزاری برای مشارکت در این سامانه است، نه نام یک بانک که صاحب همهٔ بیتکوینها باشد. کد آن قابل بررسی و مشارکت عمومی است. بنابراین هنگام شنیدن «بیتکوین مشکل دارد» باید پرسید مشکل در دارایی، نرمافزار، خدمت واسطه یا ارتباط شبکه است. توسعهٔ باز بیتکوین
چرا کپیکردن یک فایل پولی به دوبارهخرجکردن میانجامد؟
کپی دیجیتال معمولاً چیزی از نسخهٔ قبلی کم نمیکند. اگر پول صرفاً فایلی با عبارت «این مقدار متعلق به من است» بود، میشد نسخههایی از آن را برای دو نفر فرستاد. امضای دیجیتال میتواند نشان دهد یک پیام با کلید مجاز امضا شده، اما بهتنهایی ثابت نمیکند همان دارایی قبلاً جای دیگری خرج نشده است. برای این کار، دریافتکنندگان باید دربارهٔ سابقهٔ خرجها توافق کنند. مسئلهٔ دوبارهخرجکردن همین است. مسئله و طرح راهحل در وایتپیپر
مثلاً دو دستور ناسازگار را تصور کنید که هر دو یک موجودی مشخص را کامل مصرف میکنند. لازم نیست یکی امضای جعلی داشته باشد؛ ممکن است صاحب کلید هر دو را امضا کرده باشد. طرح بیتکوین، انتشار تراکنشها و ثبت آنها در زنجیرهای مبتنی بر اثبات کار است تا یک تاریخچهٔ پذیرفتهشده شکل بگیرد. پس «امضا درست است» و «این پرداخت با تاریخچه سازگار است» دو بررسی متفاوتاند؛ اولی جای دومی را نمیگیرد.
بلاکچین چگونه دفتر مشترک میسازد و چرا تغییرناپذیری مطلق نیست؟
بلاکچین دنبالهای از بلاکهاست که هرکدام به بلاک پیشین پیوند رمزنگارانه دارند. گرهٔ اعتبارسنج فقط زنجیرهٔ دارای قواعد معتبر را میپذیرد؛ تعداد زیاد بلاکهای نامعتبر، آنها را معتبر نمیکند. اگر دو شاخهٔ معتبر موقتاً رقابت کنند، معیار انتخاب، کار انباشتهٔ بیشتر است؛ نه رأیگیری با تعداد حسابها یا صرفاً شمار بلاکها. اعتبارسنجی و شاخههای زنجیره
دو معدنکار ممکن است تقریباً همزمان بلاک بسازند. در این وضعیت، یک پرداخت میتواند در شاخهای دیده شود که بعداً کنار گذاشته میشود. به همین دلیل ثبت در یک بلاک را نباید «تضمین ریاضیِ بازنگشتن در هر شرایطی» نامید. اضافهشدن کار روی تاریخچه، بازنویسی آن را دشوارتر میکند. تصویر مناسب، دفتری با سازوکار پرهزینهٔ بازنویسی و قواعد بررسی عمومی است؛ نه سنگی که هیچ رخدادی قادر به تغییر نوشتهاش نیست. این تمایز بعداً برای فهم تأیید پرداخت ضروری میشود. نقش استخراج در تاریخچه
وایتپیپر و بلاک پیدایش چه تفاوتی دارند و کدام تاریخها مستندند؟
وایتپیپر، متن توضیح یک طرح است؛ بلاک پیدایش، نقطهٔ آغاز زنجیرهٔ اصلی. پیام معرفی مقاله با نام ساتوشی ناکاموتو در آرشیو فهرست رمزنگاری، تاریخ ۳۱ اکتبر ۲۰۰۸ دارد. بنابراین معرفی ایده و آغاز زنجیره را نباید یک رویداد واحد دانست. آن پیام شاهد انتشار مقاله است، نه مدرک هویت حقوقی نویسنده. پیام اصلی معرفی
زمان ثبتشدهٔ بلاک پیدایش به ۳ ژانویهٔ ۲۰۰۹ مربوط است. دادهٔ آن اشارهای به تیتر روزنامهٔ تایمز دربارهٔ نجات دوبارهٔ بانکها دارد. وجود این متن قابل بررسی است؛ نتیجهگیری قطعی دربارهٔ همهٔ انگیزههای نویسنده از آن، تفسیر است. ویکی جامعه زمینهٔ تاریخی را توضیح میدهد، اما مرجع قواعد نیست. شرح تاریخی پیدایش کد بیتکوین کور نیز دادهٔ پیدایش و استثنای مهم آن را نشان میدهد: خروجی ۵۰ بیتکوینیِ تراکنش پیدایش قابل خرج نیست. این حکم را نباید به هر پرداخت بعدی به همان مقصد تعمیم داد. تعریف پیدایش در کد
برای فهم بیتکوین لازم است بدانیم ساتوشی چه کسی بوده است؟
برای نسبتدادن مقاله به نامی که زیر آن منتشر شده، سند داریم؛ آن نام بهتنهایی هویت واقعی یک فرد یا گروه را اثبات نمیکند. خواندن ایمیل اصلی به ما میگوید چه طرحی با چه نامی معرفی شده، نه اینکه چه کسی امروز اختیار تغییر موجودیها را دارد. در این درس، داستانهای انتساب هویت یا مقدار دارایی منتسب به ساتوشی، جای واقعیت اثباتشده نمینشینند. سند معرفی با نام ساتوشی
اعتبار یک قاعده نیز از شهرت نویسنده به دست نمیآید. نرمافزار باز قابل بررسی و تغییر است، اما تغییر یک نسخه با پذیرفتهشدن آن در شبکه یکی نیست. فرایند مشارکت در نرمافزار نتیجهٔ آموزشی این تفکیک آن است که ادعای «خالق چنین خواسته، پس اکنون قاعده همین است» کافی نیست: باید قاعدهٔ پیادهشده و پذیرش آن را بررسی کرد. تاریخ، قصد نویسنده و رفتار سامانه سه نوع پرسش با سه نوع شاهد متفاوتاند.
هویت مستعار چه فرقی با ناشناسبودن کامل دارد؟
در هویت مستعار، فعالیت به شناسهای مثل یک آدرس مرتبط است، بدون آنکه نام واقعی الزاماً در همان رکورد نوشته شده باشد. ناشناسبودن کامل ادعای قویتری است: نتوان آن فعالیت را به شخص نسبت داد. بیتکوین چنین تضمین عمومیای نمیدهد. سابقهٔ زنجیره عمومی است و اطلاعات بیرون از زنجیره میتواند یک آدرس یا پرداخت را به شخص متصل کند. حریم خصوصی در بیتکوین
مثلاً اگر کسی مقصد دریافت را کنار نام خود منتشر کند، خواننده دیگر برای پیوند آن مقصد با نام، به شکستن رمزنگاری نیاز ندارد. رسید، زمان خرید یا اطلاعات یک ارائهدهندهٔ خدمت هم میتواند به تحلیل کمک کند. این به معنی معلومبودن هویت همهٔ کاربران نیست؛ همچنین هر حدس تحلیلی، اثبات مالکیت نیست. نکتهٔ پایه این است که «نام من در تراکنش نوشته نشده» با «هیچکس نمیتواند ارتباطی پیدا کند» فرق دارد. جزئیات مدیریت این پیوندها در بخش حریم خصوصی بررسی میشود.
بیتکوین و ساتوشی چه نسبتی دارند و موجودی با عرضه چه فرقی دارد؟
بیتکوین و ساتوشی دو واحد برای بیان یک مقدارند: هر بیتکوین برابر با ۱۰۰٬۰۰۰٬۰۰۰ ساتوشی است. پس ۰٫۰۰۱ بیتکوین و ۱۰۰٬۰۰۰ ساتوشی دو دارایی متفاوت نیستند. «عرضه» به کل واحدها در یک تعریف مشخص اشاره میکند؛ «موجودی» مقدار منتسب به یک کیف پول یا مجموعهای مشخص از شرایط خرج است. تعریف واحد نباید با شمارش دارایی یک نفر اشتباه شود. تعریف واحد در بیتکوین کور
برای مثال آموزشی، اگر یک مقدار در دو برنامهٔ مشاهدهگر نمایش داده شود، دارایی دو برابر نشده است؛ دو صفحه ممکن است همان سابقه را نشان دهند. عوضکردن نمایش از بیتکوین به ساتوشی نیز فقط عدد ظاهری را بزرگ میکند. برای یادگیری لازم نیست یک بیتکوین کامل تصور کنیم: واحد کوچکتر اجازه میدهد همان مقدار را بدون اعشار بنویسیم. هنگام خواندن هر عدد، ابتدا بپرسید واحد چیست و عدد دربارهٔ کل سامانه است یا یک مجموعهٔ مشخص.
استفاده از بیتکوین چه مسئولیتهایی را به کاربر منتقل میکند؟
در نگهداری شخصی، کاربر باید دسترسی به ابزار خرجکردن و امکان بازیابی آن را حفظ کند. در نگهداری نزد واسطه، انجام برداشت به عملکرد همان واسطه وابسته میشود. هیچکدام را نباید صرفاً با تصویر یک «موجودی» در صفحه یکی دانست. همچنین شبکه، مرکز پشتیبانیای ندارد که پرداخت معتبرِ اشتباه را با درخواست تلفنی پس بگیرد؛ بازپرداخت گیرنده، انتقالی جداگانه است. مسئولیت نگهداری و پرداخت
برای شروع یادگیری، سه پرسش عملی کافی است: چه کسی میتواند امضا کند، در صورت از دسترفتن دستگاه چه چیزی لازم است، و مقصد دریافت چگونه تأیید شده است؟ اینها پرسشهای طراحی و مسئولیتاند، نه دعوت به جابهجایی پول. مثلاً دانستن رمز ورود یک برنامه لزوماً به معنی داشتن ابزار بازیابی کیف پول نیست. هدف مرحلهٔ اول، تشخیص مرز مسئولیت خود و ارائهدهندهٔ خدمت است؛ جزئیات انتخاب کیف پول و نسخهٔ پشتیبان در بخشهای بعد میآید. اجزای یک کیف پول
چرا پول نقد دیجیتال مسئلهای جدا از پرداخت اینترنتی است؟
پرداخت اینترنتی میتواند دستور تغییر دفتر یک مؤسسه باشد. مؤسسه فقط پیامرسان نیست: دریافتکننده برای تشخیص موجودی و خرجشدن آن به ثبت مؤسسه تکیه میکند. مسئلهٔ پول نقد دیجیتال این است: آیا دو نفر میتوانند از راه دور پرداخت کنند، بیآنکه مدیر مرکزی مرجع ضروریِ ثبت هر انتقال باشد؟ ساتوشی در نوشتهٔ فوریهٔ ۲۰۰۹، وابستگی به پایگاه دادهٔ مرکزی برای جلوگیری از خرج دوباره را جدا از مسئلهٔ امضای دیجیتال توضیح میدهد. این نوشته شاهد هدف اعلامشدهٔ طراح است، نه اثبات داوریهای اقتصادی او. توضیح اولیهٔ مسئلهٔ اعتماد
آزمایش فکری فرضی: در یک گروه، دفتر موجودی فقط نزد میناست. با خاموشی دستگاه مینا، بررسی ثبت نهایی متوقف میشود. اگر فقط تصویر دفتر را میان اعضا پخش کنیم، هنوز باید معلوم شود چه کسی حق تغییر آن را دارد. بنابراین مشکل صرفاً «آدم بد» نیست؛ اختیار تعیین وضعیت و وابستگی به دسترسبودن یک مرجع هم جزئی از طراحی است. حذف آن مرجع مستلزم سازوکاری برای رسیدگی به پیامهای ناسازگار است، نه فقط تکثیر دفتر. نقش مرجع مرکزی در ثبت خرجها
بیتکوین این کار را با انتشار تراکنشها، بررسی قواعد و ساخت تاریخچهٔ مبتنی بر اثبات کار دنبال میکند. وابستگی به گزارش یک حسابدار، جای خود را به امکان بررسی و فرضهایی دربارهٔ رمزنگاری، ارتباط شبکه و کار مهاجمان میدهد. «بینیاز از اعتماد» را نباید «بینیاز از هر فرض» خواند. همچنین ثبت معتبر پرداخت، تحویل کالا یا وفای گیرنده به قولش را ثابت نمیکند؛ دفتر فقط مسئلهٔ انتقال را بررسی میکند. طرح و حدود مسئله در مقالهٔ اولیه
هشکش و بیمانی چه آورده بودند و بیتکوین چه چیزهایی را به هم پیوند داد؟
بیتکوین از کنار هم گذاشتن چند سازوکار قابل فهم میشود. در مقالهٔ ۲۰۰۲ آدام بک، هشکش (Hashcash) ابزاری برای پرهزینهکردن سوءاستفاده از خدماتی مانند ایمیل است: ساخت یک گواه کار محاسباتی میخواهد، اما بررسی آن ارزانتر است. این عدمتقارن مفید است؛ گیرنده لازم نیست به ادعای فرستنده دربارهٔ زحمتش اعتماد کند. بااینحال، گواه تلاش بهتنهایی دفتر مالکیت و ترتیب پرداختها نیست. مقالهٔ اصلی هشکش
در پیشنهاد ۱۹۹۸ وی دای، بیمانی (b-money)، هویتهای مبتنی بر کلید، پیامهای امضاشده و حسابداری مشترک دیده میشود. نسخهٔ نخست نگهداری حسابها توسط همه را فرض میکند، اما خود نویسنده فرض کانال پخش همگام و مختلنشدنی را غیرعملی میخواند. نسخهٔ دوم حسابداری را به گروهی از خدمتدهندگان میسپارد و برای مهار تخلف آنها سازوکار تعهد و وثیقه پیشنهاد میکند. این متن یک طرح است؛ نباید آن را شبکهای با همان سازوکار بیتکوین معرفی کرد. متن اصلی بیمانی
آزمایش فکری فرضی: دو گیرنده، دو پرداخت ناسازگار و دو گواه محاسباتی معتبر میبینند. صرفِ «هر دو نفر زحمت کشیدهاند» تعیین نمیکند کدام سابقه پذیرفته شود. در بیتکوین، اثبات کار به بلاکی متصل است که به بلاک پیشین اشاره میکند؛ شاخهها تاریخچههای رقیب میسازند و کار انباشته معیار انتخاب میان تاریخچههای معتبر میشود. پاداش ساخت بلاک نیز مشارکت در همین سازوکار را تشویق میکند. ترکیب زنجیره، اثبات کار و مشوق در مقاله
پیام معرفی سال ۲۰۰۸ صریحاً میگوید همان کاری که به ایجاد سکه مربوط است، شبکه را در برابر خرج دوباره پشتیبانی میکند. پس نکتهٔ آموزشی، رابطهٔ میان اجزاست: گواه کار، ترتیب تاریخچه و انگیزهٔ مشارکت به یکدیگر متصل شدهاند؛ شمردن نام اختراعهای پیشین، این رابطه را توضیح نمیدهد. پیام اصلی معرفی بیتکوین
«بینیاز از اجازه» یعنی هرکس در عمل دسترسی و توان برابر دارد؟
بینیازی از اجازه یعنی برای پیوستن به پروتکل، مرجع مرکزیِ صدور عضویت وجود ندارد. گره با یافتن همتا و تبادل پیامهای پروتکل ارتباط میگیرد؛ ارتباط با یک همتا، گواه اجازه از مدیر کل شبکه نیست. البته طرف مقابل میتواند ارتباط را نپذیرد و رسیدن به همتای دیگر همچنان به مسیر ارتباطی نیاز دارد. بنابراین «دروازهٔ عضویت مرکزی نداریم» با «هیچ مانعی بر سر راه ارتباط نیست» فرق دارد. کشف و اتصال به همتاها
دسترسی عملی به ابزار، پهنای باند، فضای ذخیرهسازی، زمان و توان یادگیری وابسته است. اعتبارسنجی مستقل نیز کاری واقعی است: نرمافزار باید داده دریافت کند و قواعد را بررسی کند. گره سبک میتواند بخشی از این کار را به دیگران بسپارد، ولی آن وابستگی را باید شناخت. در اینجا عمداً یک مشخصات سختافزاری همیشگی تعیین نمیکنیم؛ نیازها با نرمافزار و شیوهٔ اجرا تغییر میکنند. نقش گره کامل و هزینههای اجرای آن
آزمایش فکری فرضی: نرگس ارتباط پایدار دارد و تاریخچه را خودش بررسی میکند؛ بهرام فقط هنگام دسترسی به اینترنت از برنامهای متصل به سرور استفاده میکند. هیچیک برای پذیرفتهشدن قواعد تراکنشش به کارت عضویت شبکه نیاز ندارد، اما توان مشاهده و بررسی آنها یکسان نیست. اگر سرور برنامهٔ بهرام قطع شود، این رخداد بهتنهایی توقف بیتکوین را ثابت نمیکند؛ ممکن است فقط مسیر دسترسی او قطع شده باشد. این نتیجه از تفاوت ارتباط مستقیم و اتکا به خدمت واسطه به دست میآید. گرهها و خدمترسانی به کاربران سبک
برای سنجیدن ادعای دسترسی، سه پرسش جدا بپرسید: آیا مقررات پروتکل عضویت میخواهد؟ آیا پیام من به شبکه میرسد؟ آیا میتوانم پاسخ دریافتی را مستقل بررسی کنم؟ پاسخ مثبت به یکی، پاسخ دو پرسش دیگر را تعیین نمیکند.
غیرمتمرکزبودن دربارهٔ کدام اختیار است و قواعد چگونه تغییر میکنند؟
«غیرمتمرکز» وقتی روشن است که بگوییم کدام اختیار میان چه کسانی پخش شده است. میتوان توزیع نگهداری کلیدها، بررسی مستقل، ساخت بلاک، مسیرهای ارتباطی و توسعهٔ نرمافزار را جدا پرسید. این تقسیمبندی ابزار تحلیل است، نه رتبهبندی رسمی شبکه. مثلاً در سناریویی فرضی، هزار گره روی رایانههای یک مدیر، هزار تصمیمگیر مستقل نیستند؛ همان تعداد گره نزد افراد مستقل هم بهتنهایی دربارهٔ توزیع توان استخراج چیزی نمیگوید. باید وابستگی مشترک را جستوجو کرد، نه فقط دستگاهها را شمرد.
برای تغییر قواعد نیز چند عمل متفاوت داریم: نوشتن پیشنهاد، پیادهسازی، انتشار نرمافزار و انتخاب اجرای آن. نگهدارندگان بیتکوین کور اختیار ادغام تغییر در مخزن همان پروژه را دارند؛ این اختیار با نصب خودکار روی دستگاه دیگران یکسان نیست. نقش نگهدارندگان پروژه فرایند پیشنهادهای بهبود نیز تصریح میکند که ثبت یک پیشنهاد، بیانگر پذیرش عمومی یا توصیهٔ همگانی به اجرای آن نیست. جایگاه پیشنهاد در فرایند بهبود
آزمایش فکری فرضی: گروهی نرمافزاری با یارانهٔ اضافی منتشر میکند. گرهٔ تابع قواعد قبلی، بلاک دارای یارانهٔ اضافی را رد میکند؛ شمار دانلودها یا توان محاسباتی سازنده، نتیجهٔ بررسی را عوض نمیکند. اما آن گره هم نمیتواند دیگران را مجبور به همکاری کند. اجرای قواعد ناسازگار میتواند به جدایی تاریخچهها برسد. کنترل سقف پاداش در پیادهسازی
از این مثال نتیجه نمیشود هر فرد بر تصمیم همه حق وتو دارد. او میتواند برای خودش چیزی را نپذیرد؛ ادامهٔ یک شبکهٔ مشترک به سازگاری رفتار دیگران هم نیاز دارد. تعبیر «رأی اکثریت» بدون مشخصکردن موضوع رأی، واحد شمارش و روش اجرا، این مسئله را پنهان میکند. وزن در ساخت تاریخچه، اختیار نامحدود بازنویسی قواعد نیست.
مثال توضیحی: سه تمایز به روشنشدن پایهها کمک میکند: امضای معتبر و سازگاری با تاریخچه دو بررسی جدا هستند؛ معرفی مقاله در ۲۰۰۸ و زمان ثبتشدهٔ بلاک پیدایش در ۲۰۰۹ دو رویدادند؛ نمایش موجودی به ساتوشی هم فقط واحد نمایش را عوض میکند، نه مقدار دارایی را.



