بیت کوین: سیستم ارز الکترونیکی جفت به جفت.
ساتوشی ناکاموتو -
satoshin@gmx.com -
http://www.bitcoin.org(مترجمان: بنکباب ، گروندیلو ، مکیلا)
خلاصه. یک سیستم پول الکترونیکی کاملاً همتا به همسالان امکان می دهد که پرداخت های آنلاین بطور مستقیم از شخص ثالث به شخص دیگری انجام شود بدون اینکه از طریق یک موسسه مالی اقدام به انجام آن کنید. امضاهای دیجیتال چنین راه حلی را ارائه می دهند ، اما هنگامی که شخص ثالث مورد اعتماد برای جلوگیری از پرداخت مضاعف لازم است ، علاقه خود را از دست می دهند. ما یک راه حل برای مشکل پرداخت دو برابر با استفاده از شبکه همتا ارائه می دهیم. زمان شبکه با استفاده از یک تابع هش ، معاملات را مهر می کند و آنها را به یک زنجیره مداوم اثبات کار (اثر انگشت) تبدیل می کند و رکوردی را ایجاد می کند که بدون انجام مجدد اثبات کار قابل تغییر نیست. طولانی ترین زنجیره (از اثر انگشت) نه تنها به عنوان اثبات پیشرفت وقایع مشاهده شده بلکه به عنوان اثبات این امر ناشی از بزرگترین گروه بندی قدرت محاسباتی است. تا زمانی که اکثر قدرت محاسباتی (CPU) توسط گره های غیر همکاری برای حمله به شبکه کنترل شود ، آنها طولانی ترین حمله کننده های زنجیره ای و برابری را تولید می کنند. خود شبکه فقط نیاز به یک ساختار کاهش یافته دارد. پیام ها در بهترین حالت پخش می شوند ، و گره ها می توانند شبکه را ترک کنند یا به دلخواه خود بپیوندند و طولانی ترین زنجیره اثبات کار را هنگام بازگشت به عنوان شواهدی از اتفاقاتی که در غیاب آنها رخ داده است بپذیرند.
1. معرفی
تجارت اینترنتی امروزه تقریباً به طور انحصاری به مؤسسات مالی بستگی دارد که به عنوان اشخاص ثالث مورد اعتماد برای پردازش پرداختهای الکترونیکی عمل می کنند. اگرچه این سیستم برای بسیاری از معاملات نسبتاً مناسب عمل می کند ، اما هنوز هم از نقاط ضعف ذاتی مدل اعتماد مبتنی بر آن رنج می برد. معاملات کاملاً برگشت ناپذیر واقعاً امکان پذیر نیست ، زیرا موسسات مالی باید میانجیگری درگیری را مدیریت کنند. هزینه این واسطه گر باعث افزایش هزینه های معاملات می شود ، در عمل حداقل اندازه معاملات را محدود می کند و از امکان انجام معاملات ارزان قیمت کوچک جلوگیری می کند. عدم امکان پرداخت غیرقابل برگشت برای خدمات غیر قابل برگشت هزینه بالاتری نیز به همراه دارد. با امکان معکوس کردن معاملات ، نیاز به اعتماد افزایش می یابد. بازرگانان باید نسبت به مشتریان خود محتاط باشند و برای کسب اطلاعات بیشتر از حد ضروری آنها را آزار دهند. مقدار مشخصی از کلاهبرداری به عنوان اجتناب ناپذیر پذیرفته شده است. با استفاده از ارز فیزیکی می توان از این همه هزینه های پرداخت و عدم قطعیت جلوگیری کرد ، اما هیچ مکانیسمی برای پرداخت از طریق یک سیستم ارتباطی بدون استفاده از شخص ثالث قابل اعتماد وجود ندارد.
آنچه ما نیاز داریم یک سیستم پرداخت الکترونیکی است که بر اساس شواهد رمزنگاری به جای یک مدل مبتنی بر اعتماد است ، که به دو طرف اجازه می دهد مستقیماً بدون مراجعه به معامله بپردازند. به یک شخص ثالث مورد اعتماد معاملات غیرقابل استفاده از طریق رایانه ، فروشندگان را از تقلب احتمالی محافظت می کند ، و یک سیستم حساب کاربری سپردن به راحتی می تواند برای محافظت از خریداران اجرا شود. در این سند ، ما با استفاده از یک سرور تمبر زمان توزیع شده در حالت همتا به همتا ، راه حلی برای مشکل دو برابر هزینه ارائه می دهیم تا مدارک رایانه ای را برای ترتیب زمانی معاملات انجام دهید. این سیستم تا زمانی امن است که گره های صادقانه در کنار هم ، قدرت محاسبات بیشتری را نسبت به گروهی از گره های همکاری برای انجام حمله کنترل کنند.
2. معاملات
ما یک قسمت الکترونیکی را به عنوان زنجیره ای از امضاهای دیجیتال تعریف می کنیم. هر مالک با امضای دیجیتالی اثری از معامله قبلی و همچنین کلید عمومی مالک جدید و اضافه کردن آنها در انتهای قطعه ، این قطعه را به دیگری منتقل می کند. هر ذینفع می تواند امضاها را بررسی کند تا زنجیره مالکیت را تأیید کند.
کاغذ سفید 1
البته مسئله این است كه ذینفع نمی تواند تأیید كند كه یكی از مالكین قبلی یك قسمت "هزینه دو برابر" نداشته است. یک راه حل مشترک معرفی یک مرجع قابل اعتماد یا نعناع مرکزی است که می تواند هر معامله را تأیید کند تا از "هزینه های مضاعف" جلوگیری شود. پس از هر معامله ، سکه ها باید به Hôtel des Monnaies برگردانده شود ، که یک سکه جدید ایجاد می کند ، و فقط سکه ها به طور مستقیم از H destel des Monnaies در نظر گرفته می شوند که دو بار خرج نشده است. مشکلی که برای این راه حل وجود دارد این است که سرنوشت کل سیستم پولی بر شرکتی است که Mint را اداره می کند و این که همه معامله ها باید از طریق آنها انجام شود ، مانند یک بانک.
ما به روشی احتیاج داریم تا ذینفع بتواند بداند صاحبان قبلی معاملات قبلی را امضا نکرده اند یا خیر. برای این ، قدیمی ترین معامله باید موردی باشد که لازم است ، لازم نیست نگران تلاش های بعدی برای خرج کردن سکه تکراری باشیم. تنها راه تأیید عدم وجود معامله قبلی ، آگاهی از کلیه معاملات است. در مدل مبتنی بر نعناع ، دومی از کلیه معاملات آگاه بود و بنابراین تصمیم گرفت که کدام یک در اول باشد. برای انجام همان کار بدون شخص ثالث ، معاملات باید به صورت عمومی اعلام شوند [1] ، و ما به یک سیستم نیاز داریم تا همه شرکت کنندگان در مورد تاریخ واحدی از ترتیبی که معاملات در آن دریافت می کنند توافق کنند. . ذینفع به اثبات نیاز دارد که در هر زمان معامله ، اکثر گره ها توافق دارند که اولین بار دریافت شده است.
3. سرور تمبر زمان
اساس راه حل پیشنهادی یک سرور تمبر زمانی است. یک سرور تمبر اثر انگشت مجموعه ای از عناصر را نشان می دهد و این اثر انگشت را مانند یک روزنامه یا یک پیام در یک صفحه منتشر می کند. forum یوزنت [2-5]. تمبر زمان ثابت می کند که داده ها وجود داشته اند ، تا در اثر اثر در نظر گرفته شود. هر علامت تایم شامل علامت زمانی قبلی در اثر انگشت خود است و یک زنجیره تشکیل می دهد ، که هر عنصر جدید موارد قبلی را تأیید می کند.
کاغذ سفید 2
4- اثبات کار
برای اجرای یک سرور تمبر زمانی که در یک شبکه همتا توزیع می شود ، لازم است از یک سیستم مبتنی بر اثبات کار مانند سیستم Hashcash Adam Back [6] استفاده شود ، نه اینکه یک گزارش یا پیغام موجود باشد. forum دانلود مستقیم. اثبات کار نیاز به جستجوی مقداری دارد که اثر انگشت آن ، به عنوان مثال با استفاده از SHA-256 محاسبه شود ، با تعداد مشخصی از بیت ها در 0 شروع می شود. کار مورد نیاز برای استفاده به صورت نمایی به تعداد بیت های 0 مورد نیاز بستگی دارد و می تواند با انجام یک محاسبه اثر انگشت تنها تأیید می شود.
برای شبکه زمان بندی خود ، اثبات کار را با افزایش متغیر در بلوک پیاده سازی می کنیم تا زمانی که مقداری را با یک بیت کافی در 0 پیدا کنیم. هنگامی که تلاش محاسبه لازم برای به دست آوردن اثبات کار انجام شد ، دیگر نمی توان بلوک را بدون تکرار این تلاش برای محاسبه اصلاح کرد. از آنجا که بلوک های جدید پس از آن زنجیر شده اند ، تلاش محاسبه لازم برای اصلاح یک بلوک شامل تمام تلاش محاسبه لازم برای اصلاح همه بلوک های زیر است.
کاغذ سفید 3
اثبات کار مشکل انتخاب نمایندگی آرا را حل می کند. اگر اکثریت مبتنی بر آراء اختصاص یافته توسط آدرس IP باشند ، ممکن است توسط کسی که قادر به ارائه آدرسهای زیادی به وی باشد ، رأی داده شود. اثبات کار اساساً مبتنی بر توان محاسباتی (پردازنده ، یک صدا) است. تصمیم اکثریت با طولانی ترین زنجیره ارائه می شود ، تصمیمی که بیشترین اثبات محاسبات کار را می طلبد. اگر اکثر قدرت محاسباتی شبکه توسط گره های صادق کنترل شود ، زنجیره قانونی با سرعت بیشتری پیشرفت می کند و زنجیره های رقابت را از هم دور می کند. برای اصلاح یک بلوک قدیمی ، یک مهاجم مجبور می شود اثبات کار برای بلوک اصلاح شده و تمام بلوک های بعدی را مجدداً محاسبه کند ، تا کارهایی را که توسط گره های صادقانه انجام می شود ، بدست آورد. بعداً نشان خواهیم داد که احتمالاً یک مهاجمی که قدرت محاسباتی کمتری داشته باشد با استفاده از هر بلوک جدید اضافه می شود ، بصورت نمایی کاهش می یابد.
به منظور جبران بهبود توان محاسباتی سخت افزار و تغییر علاقه در گره های شبکه عامل ، دشواری اثبات کار با میانگین تعداد بلوک های موجود در ساعت تعیین می شود. اگر این بلوک ها خیلی سریع تولید شوند ، مشکل افزایش می یابد.
5. شبکه
مراحل انجام شده برای بهره برداری از شبکه به شرح زیر است:
معاملات جدید به همه گره ها پخش می شود.
هر گره معاملات جدید را در یک بلوک قرار می دهد.
هر گره برای رفع اثبات کار در بلوک خود کار می کند.
وقتی یک گره اثبات کار را می یابد ، این بلوک را به همه گره ها پخش می کند.
گره ها فقط در صورت قبول بودن تمام معامله های موجود در آن ، بلوک را می پذیرند.
گره ها با استفاده از یک بلوک جدید در زنجیره ، پذیرش این بلوک را ابراز می کنند ، این بلوک جدید دارای ردپای قبلی نسبت به بلوک پذیرفته شده است.
گره ها همیشه طولانی ترین زنجیره را یک زنجیره قانونی می دانند و برای گسترش آن تلاش می کنند. اگر دو گره دو نسخه مختلف از بلوک بعدی را همزمان پخش کنند ، بعضی از گره ها ابتدا یک یا دیگری را دریافت می کنند. در این شرایط ، هر یک ابتدا روی بلوک دریافت شده کار می کند ، اما در صورت طولانی ترین طول ، شاخه دیگر را نگه می دارد. این پیوند در صورت یافتن اثبات بعدی کار شکسته می شود و یک شاخه از دیگری طولانی تر می شود. گره هایی که در آن زمان در شاخه دیگر کار می کردند برای یک طولانی تر تغییر می کنند.
توزیع معاملات جدید نیازی به رسیدن به همه گره ها ندارد. از لحظه ای که به گره کافی برسند ، در هیچ زمان خود را در یک بلوک پیدا نمی کنند. پخش بلوک تحمل از دست دادن پیام ها را تحمل می کند. اگر یک گره بلوکی را دریافت نکند ، هنگام دریافت بلوک بعدی ، وقتی متوجه شود که یک گم شده وجود دارد ، آن را درخواست می کند.
6. انگیزه
طبق قرارداد ، اولین معامله بلوک یک معامله خاص است که قسمت جدیدی را که متعلق به خالق بلوک است ایجاد می کند. این گرهها را به مشارکت در شبکه ترغیب می کند و توزیع اولیه پول را امکان پذیر می سازد ، زیرا هیچ مرجعی متمرکز برای انجام این کار وجود ندارد. این افزودن منظم از یک مقدار ثابت پول ، تقریباً تلاش کارگران را برای اضافه کردن طلا در گردش تقریب می دهد. در مورد ما ، تلاش شامل محاسبه قدرت و زمان است.
مشوق نیز می تواند توسط هزینه های معامله تأمین شود. اگر مقدار خروجی یک معامله کمتر از مقدار ورودی آن باشد ، تفاوت با هزینه های معاملاتی است که به ارزش تشویقی بلوک حاوی این معامله اضافه می شود. هنگامی که مقدار از پیش تعیین شده پول وارد گردش شد ، انگیزه ممکن است صرفاً براساس هزینه های معامله به تأمین اعتبار منتقل شود و تورمی ایجاد نکند.
انگیزه می تواند گره ها را به صادق ماندن ترغیب کند. اگر یک مهاجم حریص وسیله ای برای به دست آوردن توان محاسباتی بیشتر از همه گره های صادقانه داشته باشد ، می تواند با جمع آوری پرداخت و یا استفاده از توان خود برای تولید پول جدید ، بین افراد متقلب را انتخاب کند. او باید بازی کردن این بازی جالب تر باشد ، که به وضوح از او طرفداری می کند زیرا از آن زمان او پول بیشتری را از همه گره های دیگر ایجاد می کند ، نه اینکه سیستم و ارزش ثروت خودش را تضعیف کند.
7. فضای دیسک را ذخیره کنید
هنگامی که آخرین معامله برای یک قسمت در بلوکهای کافی دفن شود ، معاملات گذشته برای ذخیره فضای دیسک حذف می شوند. برای اجازه دادن به این امر بدون اعتبار دادن ردپای بلوک ، معاملات در یک درخت مرکل [7] [2] [5] خلاصه می شود ، که فقط ریشه در ردپای بلوک درج شده است. بلوک های قدیمی را می توان با بریدن شاخه های درخت فشرده کرد. برداشت های متوسط نیازی به ذخیره ندارند.
وزن یک هدر بلاک بدون معامله تقریباً 80 بایت وزن دارد. اگر فرض کنیم بلوک ها هر 10 دقیقه یکبار تولید می شوند ، این نشان دهنده 80 بایت * 6 * 24 * 365 = 4.2MB در سال است. در سال 2008 ، سیستم های رایانه ای با ظرفیت 2 گیگابایت حافظه رم فروخته شد ، و ، قانون مور با پیش بینی رشد 1.2 گیگابایت در سال ، بنابراین ذخیره سازی نباید مشکل ایجاد کند ، حتی اگر همه آنها - هدرهای بلوک باید در RAM نگه داشته شوند.
8- تأیید پرداخت ساده
تأیید پرداختها بدون کارکردن یک گره کامل از شبکه امکان پذیر است. کاربر فقط باید یک نسخه از سربرگترین طولانی ترین زنجیره شواهد را نگه داشته باشد ، که می تواند از طریق نمایش داده ها در گره های شبکه دریافت کند تا زمانی که راضی شود طولانی ترین زنجیره را داشته باشید ، سپس شاخه را از درخت مرکل که معامله را با بلوکی که در آن تمبر شده است پیوند دهید ، بازیابی کنید. کاربر نمی تواند خود معامله را تأیید کند ، اما با پیوند دادن به جای خود در زنجیره ، می تواند ببیند که یک گره در شبکه آن را پذیرفته است ، و بلوک های زیر بیشتر تایید شبکه را تأیید می کنند.
به این ترتیب ، تا زمانی که گره های صادقانه شبکه را کنترل کنند ، تأیید قابل اطمینان است ، اما اگر شبکه توسط یک مهاجم با قدرت محاسبه بیشتری به خطر بیفتد آسیب پذیرتر است. گرچه گره های شبکه می توانند معاملات خود را تأیید کنند ، اما روش های ساده شده را می توان با معاملات جعلی توسط مهاجم فریب داد ، مادامی که وی وسیله ای برای تجاوز از توان محاسباتی شبکه داشته باشد. یک استراتژی برای محافظت از خود در برابر چنین حملاتی می تواند دریافت هشدار از گره های شبکه هنگام شناسایی یک بلوک نامعتبر باشد ، از نرم افزار کاربر بخواهید که بلاک کامل و تراکنش های مشکوک را بارگیری کند تا ناسازگاری را بررسی کند. شرکت هایی که پرداخت مکرر دریافت می کنند ، مطمئناً از اجرای گره های خود برای امنیت بیشتر مستقل و تأیید سریعتر بهره مند می شوند.
9. ترکیب و تقسیم ارزش
اگرچه پردازش سکه ها به طور جداگانه امکان پذیر است ، تولید یک تراکنش متفاوت برای هر سکه در طول انتقال غیر عملی است. برای استفاده از ترکیب و تقسیم پول ، معاملات شامل چندین ورودی و خروجی هستند. به طور معمول ، یک ورود واحد از یک معامله بزرگ قبلی وجود دارد ، یا چندین ورودی که مبلغ کمتری را ترکیب می کنند و حداکثر دو خروج دارند: یکی برای پرداخت و دیگری برای بازگشت ارز در صورت وجود ، به فرستنده.
لازم به ذکر است که پراکندگی ، هنگامی که یک معامله به چندین معامله بستگی دارد و خود این معاملات به معاملات بسیار بیشتری بستگی دارد ، مشکلی نیست. هرگز نیازی به بازیابی تاریخچه کامل معامله نیست.
10. محرمانه بودن
سیستم بانکی سنتی با محدود کردن دسترسی به اطلاعات به اشخاص مربوطه و شخص ثالث مورد اعتماد ، میزان محرمانه بودن را تضمین می کند. نیاز به انتشار کلیه معاملات این روش را مستثنی نمی کند ، اما با قطع جریان اطلاعات به سطح دیگری می توان محرمانه بودن را بدست آورد: با ناشناخته نگه داشتن کلیدهای عمومی. می توان دید که شخصی مبلغ مشخصی را به شخص دیگری می فرستد ، اما بدون هیچ ارتباطی با افراد. این شبیه به سطح اطلاعات موجود در بازارهای بورس است ، جایی که تاریخ و میزان هر یک از صرافی ها "دوره" عمومی است ، اما بدون آنکه هویت طرفین را فاش کند.
به عنوان یک مانع اضافی ، می توانید برای هر تراکنش از یک جفت کلید جدید استفاده کنید تا از ارتباط با یک مالک مشترک جلوگیری کنید. یک رابطه خاص با معاملات چند ورودی اجتناب ناپذیر است ، که لزوماً نشان می دهد که ورود آنها متعلق به همان مالک است. واقعه ترس از اینکه اگر مالک یکی از کلیدها فاش شود ، پیوندها اجازه افشای سایر معاملات همان مالک را می دهند.
11. محاسبات
پرونده مهاجم را در نظر بگیرید که سعی در ایجاد زنجیره جایگزین سریعتر از زنجیره قانونی دارد. حتی اگر موفقیت آمیز باشد ، این سیستم را در برابر تغییرات دلخواه ، مانند ایجاد پول از هوای نازک یا تخصیص پول که هرگز متعلق به مهاجم نبود ، در معرض آسیب قرار نمی دهد. گره ها معاملات نامعتبر را به عنوان پرداخت قبول نمی کنند و گره های صادقانه هرگز بلوکی را که حاوی یکی از این معاملات است ، نمی پذیرند. یک مهاجم فقط می تواند یکی از معاملات خود را اصلاح کند تا بتواند پولی را که صرف کرده است بازیابی کند.
مسابقه بین زنجیره مشروع و زنجیره مهاجم می تواند به عنوان یک مسیر تصادفی باینری مشخص شود. واقعه موفقیت ، طولانی تر شدن زنجیره مشروع است ، سرب آن را با 1+ افزایش می دهد ، و واقعه شکست طولانی تر شدن زنجیره مهاجم است و تاخیر آن را با -1 کاهش می دهد.
احتمال ابتلا به یک مهاجم مشابه مشکل خراب کردن بازیکن است. تصور کنید بازیکنی با اعتبار نامحدود ، در منفی شروع کنید و قادر باشید تعداد نامحدودی بازی را انجام دهد تا سعی کند به نقط حریف برسد. احتمال اینکه او به آنجا برسد ، یا اینکه یک مهاجم موفق به گرفتن زنجیره مشروع شود ، به شرح زیر محاسبه می شود:
p = احتمال اینکه یک گره صادق بلوک بعدی را پیدا کند
q = احتمال اینکه مهاجم بلوک بعدی را پیدا کند
qz = احتمال اینکه مهاجم موفق به گرفتن زنجیره با بلوک های تأخیر Z شود
با توجه به فرضیه p> q ، بسته به تعداد بلوک هایی که مهاجم باید بگیرد ، احتمال بصورت نمایی کاهش می یابد. با احتمال مخالفت با او ، اگر اوایل اوقات شانس خوش شانسی نداشته باشد ، هرچه عقب بماند ، احتمالش کم خواهد شد.
اکنون ما به زمانی علاقه مندیم که گیرنده معامله جدید باید صبر کند تا اطمینان حاصل کند که صادرکننده قادر به تغییر معامله نخواهد بود. ما فرض می کنیم که مبداء مهاجمی است که می خواهد گیرنده را باور کند که برای مدت مشخصی به او پرداخت شده است ، پس از آن آرزو می کند تا معامله را برای بازیابی پول معامله پس از تاخیر معینی اصلاح کند. وقتی این اتفاق می افتد از گیرنده هشدار داده می شود ، اما فرستنده امیدوار است خیلی دیر شود.
گیرنده یک جفت کلید جدید ایجاد می کند و کلید عمومی را کمی قبل از امضا به فرستنده می دهد. این امر مانع از آن می شود که فرستنده از قبل با کار روی آن یک بلاکچین تهیه کند تا اینکه پیشرفت کافی را بدست آورد و در آن زمان معامله را انجام دهد. پس از انجام معامله ، صادرکننده صادرکننده شروع به کار بر روی یک زنجیره جایگزین حاوی نسخه اصلاح شده از معامله می کند.
گیرنده منتظر می ماند تا معامله به یک بلوک اضافه شود و تا زمان بلوک های z به دنبال آن اضافه نشود. او نمی داند پیشرفت مهاجم دقیقاً چیست ، اما با فرض اینکه بلوک های مشروع مدت زمان متوسط پیش بینی شده در هر بلوک را تولید کرده اند ، پیشرفت بالقوه مهاجم یک توزیع پواسون است. با ارزش پیش بینی شده:
برای به دست آوردن این احتمال که مهاجم هنوز هم می تواند به دست آورد ، ما چگالی پواسون را برای هر مقدار پیشرفتی که او با این احتمال که از این نقطه بدست می آورد ، می توان ضرب کرد:
با تنظیم مجدد برای جلوگیری از ادامه کار برای همیشه ...
به کد C تبدیل شد ...
#عبارتند از
Double AttackerSuccessProbability (دو برابر q ، int z)
{
دو برابر p = 1.0 - q؛
double lambda = z * (q / p)؛
مبلغ دو برابر = 1.0؛
int i، k؛
برای (k = 0؛ k <= z؛ k ++)
{
ماهی دو برابر = exp (-lambda)؛
برای (من = 1 ؛ من <= k ؛ من ++)
ماهی * = لامبدا / i؛
جمع - = ماهی * (1 - قدرت (q / p ، z - k))؛
}
مبلغ برگشتی؛
}
با انجام برخی از آزمایشات ، مشاهده می کنیم که احتمال با توجه به z بصورت نمایی کاهش می یابد:
Q = 0.1
Z = 0P = 1.0000000
Z = 1P = 0.2045873
Z = 2P = 0.0509779
Z = 3P = 0.0131722
Z = 4P = 0.0034552
Z = 5P = 0.0009137
Z = 6P = 0.0002428
Z = 7P = 0.0000647
Z = 8P = 0.0000173
Z = 9P = 0.0000046
z = 10 p = 0.0000012
Q = 0.3
Z = 0P = 1.0000000
Z = 5P = 0.1773523
z = 10 p = 0.0416605
z = 15 p = 0.0101008
z = 20 p = 0.0024804
z = 25 p = 0.0006132
z = 30 p = 0.0001522
z = 35 p = 0.0000379
z = 40 p = 0.0000095
z = 45 p = 0.0000024
z = 50 p = 0.0000006
راه حل هایی برای P کمتر از 0.1٪…
P <0.001
q = 0.10 z = 5
q = 0.15 z = 8
q = 0.20 z = 11
q = 0.25 z = 15
q = 0.30 z = 24
q = 0.35 z = 41
q = 0.40 z = 89
q = 0.45 z = 340
12. نتیجه
ما یک سیستم تراکنش الکترونیکی را پیشنهاد کرده ایم که مبتنی بر اعتماد نیست. ما با یک چارچوب معمول از قطعات ساخته شده از امضاهای دیجیتالی شروع به کار کردیم ، که کنترل قدرتمندی از آن را فراهم می کند ، اما بدون راهی برای جلوگیری از هزینه های مضاعف ناقص است. برای حل این مشکل ، ما یک شبکه همتا را با استفاده از اثبات کار برای ضبط یک گزارش معاملات عمومی پیشنهاد دادیم که اگر گره های صادقانه اکثر قدرت محاسبات را کنترل کنند ، سریعاً با محاسبه غیرقابل دسترسی می شوند. این شبکه به دلیل سادگی بدون ساختار ، مقاوم است. گره ها با هماهنگی بسیار کمی با هم کار می کنند. آنها نیازی به احراز هویت ندارند ، زیرا پیام ها به گیرنده خاصی ارسال نمی شوند و فقط در بهترین حالت باید تحویل شوند. گره ها می توانند در صورت تمایل به شبکه بپیوندند و به آن بپیوندند ، اثبات زنجیره کار را اثبات آنچه اتفاق افتاده است ، بپذیرند. آنها با استفاده از توان محاسباتی خود ، با ابراز موافقت خود با توجه به بلوک های معتبر در حین کار برای گسترش آنها ، و رد بلوک های نامعتبر با امتناع از کار روی آنها رای می دهند. کلیه قوانین و مشوق های لازم با این سازوکار اجماع قابل استفاده است.
پیوند به بیرون
[1] دبلیو دای ، "b-money" ،
http://www.weidai.com/bmoney.txt، 1998.
[2] H. Massias ، XS Avila و J.-J. Quisquater ، "طراحی یک سرویس زمان سنجی ایمن با حداقل اعتماد به نفس" ، در بیستمین سمپوزیوم تئوری اطلاعات در بنلوکس ، مه 20.
[3] S. هابر ، WS استورنتا ، "چگونه می توان زمان را برای چاپ یک سند دیجیتال ،" در مجله رمزنگاری ، جلد 3 ، شماره 2 ، صفحات 99-111 ، 1991.
[4] D. Bayer، S. Haber، WS Stornetta، "بهبود کارآیی و قابلیت اطمینان چاپ زمان دیجیتال" ، در Sequences II: Methods در ارتباطات ، امنیت و علوم رایانه ، صفحات 329-334 ، 1993.
[5] S. هابر ، WS استورنتا ، "نامهای امن برای رشته های بیت" ، در مجموعه مقالات چهارمین کنفرانس ACM در مورد امنیت رایانه و ارتباطات ، صفحات 4-28 ، آوریل 35.
[6] A. برگشت ، "Hashcash - انکار معیار خدمات ،"
http://www.hashcash.org/papers/hashcash.pdf، 2002.
[7] RC مرکل ، "پروتکل برای رمزنگاری کلید عمومی" ، در چاپ. 1980 سمپوزیوم امنیت و حفظ حریم خصوصی ، انجمن کامپیوتر IEEE ، صفحات 122-133 ، آوریل 1980.
[8] دبلیو فلر ، "مقدمه ای بر تئوری احتمال و کاربردهای آن" ، 1957.