بیت کوین سیستم پول الکترونیکی همتا به همتا

وایت پیپر بیت کوین
این مقاله رو با بقیه به اشتراک بذار:
زمان مطالعه: 13 دقیقه

آخرین به‌روزرسانی: ۲۲ آذر ۱۳۹۹

بیت کوین اولین رمزارز شناخته شده در دنیا است. رمزارز بیت کوین نوعی پول الکترونیکی همتا به همتا( فرد به فرد) است که در پرداخت‌های آنلاین امکان ارسال مستقیم پول، ارز و منابع مالی از شخصی به شخص دیگر را بدون نیاز به یک موسسه مالی فراهم می‌کند. امضاهای الکترونیک بخشی از این راه‌حل رمزنگاری هستند؛ اما اگر شخص سومی مانع از دوبار خرج کردن شود، سودهای اصلی گم می‌شوند. راه‌حلی که ما برای مشکل دو بار خرج کردن ارائه می‌کنیم استفاده از شبکه همتا به همتا است. شبکه مهرهای زمانی( برچسب‌های زمانی)، با استفاده از فرایند رمزنگاری شبکه‌‌های بلاک‌چین‌‌ که تامین‌کننده امنیت شبکه هستند تراکنش‌ را انجام می‌دهد. به فرایند رمزنگاری شبکه‌های بلاکچین با هدف امنیت شبکه، هشینگ یا هش کردن می‌گویند. زمانی‌که شبکه مهرهای زمانی تراکنش را انجام دهد، این مهرهای زمانی به سمت یک سود زنجیره‌ای بر پایه هش‌ که نشانه اثبات انجام کار است، هدایت می‌شوند. بدون اثبات انجام دوباره کار، ساخت رکوردی که تغییر نکند، امکان‌پذیرنیست.

بزرگترین زنجیره نه تنها به عنوان اثبات توالی رخدادهای مشاهده شده خدمات‌رسانی می‌کند بلکه ثابت‌کننده استخراج کوین از بزرگترین استخر با قدرت سی‌پی‌یو (CPU) است. به همان اندازه شبکه گسترده‌ای با قدرت سی‌پی‌یو توسط گره‌هایی (نودهایی) کنترل شده‌اند که برای حمله به شبکه همکاری نمی‌کنند؛ این نودها بزرگترین زنجیره را مدیریت خواهند کرد و از هکرها سبقت می‌گیرند. این شبکه به خودی خود ساختاری مینیمال دارد. پیام‌ها در بهترین پایه‌ها پخش می‌شوند و گره‌ها می‌توانند دوباره به شبکه وارد شوند یا آن را ترک کنند. پذیرش بزرگترین زنجیره اثبات کار نشان می‌دهد زمانی که گره‌ها وجود ندارند چه اتفاقی افتاده است.

فهرست مطالب وایت پیپر بیت کوین

مقدمه

تجارت از طریق اینترنت، به شکل انحصاری از اعتماد به خدمات موسسات مالی نشات می‌گیرد. موسسات مالی از دیرباز به عنوان شخص سوم معتمدی در فرآیند پرداخت‌های الکترونیک حضور داشته‌اند. با این که عملکرد این سیستم برای بیشتر تراکنش‌ها به اندازه کافی خوب است، باز هم ضعف‌های ذاتی مدل بر پایه اعتماد در این سیستم وجود دارد. تراکنش‌های قطعی به خاطر آنکه موسسات مالی نمی‌توانند از اختلافات واسطه‌گری جلوگیری کنند، غیر ممکن به نظر می‌رسند. هزینه افزایش واسطه‌گری، هزینه‌های تراکنش را افزایش می‌دهد. محدودیت در حداقل سایز تراکنش به حذف امکانات برای تراکنش‌های معمولی می‌انجامد و هزینه‌های کاهش توانایی‌ها برای ایجاد پرداخت‌های قطعی به خدمات قطعی گسترش می‌یابد. با امکانات قطعی، نیاز به اعتماد بیشتر می‌شود و بازرگانان باید نسبت به مشتری‌هایشان محتاط باشند چون زحمتی که آن‌ها برای دریافت اطلاعات زیاد می‌کشند، بیشتر از چیزی است که به آن نیاز دارند.

در این فرایند، درصد مطمئنی از تقلب‌های غیر قابل اجتناب پذیرفته شده هستند. با این که امکان اجتناب از این هزینه‌ها و پرداخت‌های غیر مطمئن با استفاده از ارزهای فیزیکی وجود دارد، ولی مکانیزمی برای ایجاد پرداخت بدون وجود یک کانال ارتباطی معتمد وجود ندارد.

چیزی که سیستم پرداخت الکترونیک به آن نیاز دارد، سیستمی بر پایه رمزنگاری به جای استفاده از سیستم پرداخت بر پایه اعتماد است. بهتر است دو شخص مشتاق به معامله مستقیم، بدون آنکه  نیازی به شخص سومی باشد، با یکدیگر معامله کنند. تراکنش‌هایی که از نظر محاسباتی غیر بازگشت هستند می‌توانند از فروشنده‌ها دربرابر تقلب محافظت کنند. مکانیزم‌های تکراری نگه‌دارنده اطلاعات و پرداخت قطعی، می‌تواند به سادگی برای حمایت از خریداران اجرایی شود. در این مقاله ما راه حلی را برای مشکل دوبار خرج کردن ارائه می‌کنیم. این راه‌حل بهره‌مندی از سرور مهر زمانی توزیع‌شده و همتا به همتا است. با این روش اثبات محاسباتی بر اساس ترتیب زمانی تراکنش‌ها تولید می‌شود. تا زمانی که صداقت مجموعه گره‌های کنترل شده در قدرت CPU بیشتر از هر گروه مشترک گره‌های هکر باشد، سیستم امن است.

تراکنش‌ها

ما یک کوین الکترونیک را به عنوان زنجیره‌ای از امضاهای دیجیتالی تعریف می‌کنیم. هر کسی که بخواهد کوین خود را به دیگری منتقل کند، از طریق یک امضای دیجیتالی، هش تراکنش قبلی، کلید عمومی مالک بعدی و اضافه کردن این مراحل به انتهای کوین، تراکنش را انجام می‌دهد. دریافت‌کننده کوین با تایید امضاهای دیجیتالی می‌تواند زنجیره مالکیت را تضمین کند.

بیت کوین

مشکلی که در اینجا وجود دارد این است که گیرنده نمی‌تواند مالکی را که کوین خود را دو بار خرج نکرده، تایید کند. راه‌حل رایج معرفی مقام مسئول معتمد یا ساخت دوباره کوین است. یکی از رایج‌ترین راه‌حل‌ها برای جلوگیری از دو بار خرج شدن هر تراکنش، چک کردن آن‌ها در محل ابتدایی آن است. پس از هر تراکنش، کوین باید به ضرابخانه برگردد تا تبدیل به کوین تازه‌ای شود. کوین‌هایی که مستقیم از ضرابخانه خارج می‌شوند قابل اعتماد هستند و نسبت به دو بار خرج شدن آن‌ها شکی نیست؛ ولی مشکلی که در این راه‌حل وجود دارد این است که سرنوشت تمام پول‌های سیستم به شرکت تولیدکننده سکه یا همان ضرابخانه بستگی دارد. هر تراکنشی در ضرابخانه به حالت اولیه انجام می‌شود، درست مانند عملیاتی که بانک انجام می‌دهد.

ما به روشی نیاز داریم که صاحبان کوین‌ها با استفاده از آن بدانند مالکان سابق، تراکنش‌های قبلی را امضا نکرده‌اند. به منظور رسیدن به اهداف‌مان، تنها اولین تراکنش را حساب می‌کنیم؛ بنابراین برای‌مان مهم نیست در آینده تلاش‌هایی برای دو بار خرج‌ شدنش انجام شود. تنها راه تایید عدم وجود یک تراکنش، آگاهی نسبت به تمام تراکنش‌هاست. در مدلی که کوین بر پایه‌ ضرابخانه ساخته می‌شد، ضرابخانه از همه تراکنش‌ها آگاه بود و تصمیم می‌گرفت کدام یک اول انجام شود. برای انجام این روش بدون یک مرجع معتمد، باید تراکنش‌ها اعلام عمومی شوند و ما به سیستمی برای شرکت‌کنندگان موافق نیاز داریم که در تاریخچه‌ای منفرد دستورالعمل دریافت می‌کنند. گیرندگان باید زمان هر تراکنش را ثابت کرده و گره‌های موافق باید ابتدا دریافت شوند.

سرور مُهر زمانی

روش‌مان را در ابتدا با سرور مهر زمانی ارائه می‌کنیم. سرور مهر زمانی، با دریافت هش از یک بلوک مهر زمانی اجرایی می‌شود و سپس اقدام به انتشار گسترده هش می‌کند، مانند نشر در روزنامه یا پستی در سیستم جهانی اینترنت.

وایت پیپر بیتکوین

مهر زمانی داده‌هایی را که باید وجود داشته باشند در بستر زمان و با هدف دریافت هش، اثبات می‌کند. هر مهر زمانی، شامل مهر زمانی قبلی در هش می‌شود و زنجیره‌ای را با افزودن تقویت‌کننده زمانی که پیش از آن وجود داشته‌اند، می‌سازد.

الگوریتم اثبات انجام کار بیت کوین

برای انجام سرور مهر زمانی توزیع شده بر پایه همتا به همتا، باید از سیستم اثبات انجام کار مشابه هش‌کش آدام بک استفاده کرد. این سیستم بهتر از روزنامه یا پست‌های اینترنتی است. اثبات انجام کار شامل اسکن برای ارزش در زمانی می‌شود که هش صورت گرفته معادل صفر بیت است. مانند اتفاقی که برای SHA-256 می‌افتد و هش با عدد صفر بیت شروع می‌شود. متوسط کاری که لازم است نمایی در عدد صفر بیت می‌باشد که می‌توان آن را با قرار دادن در یک هش مفرد تایید کرد. برای شبکه مهر زمانی، با افزودن یک واحد به بلوک تا زمانی که ارزش به دست آمده از هش بلوک صفر بیت شود، اثبات انجام کار را اجرایی می‌کنیم. وقتی تلاش‌های CPU به قدری گسترش یافت که اثبات انجام کار راضی‌کننده شد، بلوک نمی‌تواند بدون کار دوباره تغییر کند. بنابراین بلوک‌های بعدی زنجیره‌های پس از آن را تشکیل می‌دهند. وقتی بلاکی تغییر می‌کند همه بلوک‌های پس از آن نیز دوباره اجرا می‌شوند.

بیتکوین

اثبات انجام کار همچنین مشکل تعیین نمایندگی را در اغلب تصمیم‌گیری‌ها برطرف می‌کند. اگر اکثریت بر پایه هر آدرس آی‌پی تنها یک رای وجود داشت، آن وقت ممکن بود هر کسی که بیشتر از یک آدرس آی‌پی دارد، در تصمیم‌گیری‌ها اختلال ایجاد کند. اثبات انجام کار اساساً بر مبنای یک سی‌پی‌یو، یک رای، صورت می‌گیرد. اغلب تصمیم گیری‌ها به طولانی‌ترین زنجیره مربوط می‌شود که بیشترین سرمایه‌گذاری اثبات انجام کار در آن انجام شده است. اگر اکثر قدرت سی‌پی‌یو با گره‌های صادق کنترل شده باشد، زنجیره صادق به سرعت رشد می‌کند و از رقیب‌هایش پیشی می‌گیرد. برای اصلاح بلوک قبلی، هکر مجبور است اثبات انجام کار را در بلوک مورد نظر و همه بلوک‌های پس از آن اعمال کند. سپس آن را بررسی کرده و از گره‌های صادق گذر کند. در ادامه به شما نشان خواهیم داد که احتمال آنکه مهاجمان سایبری بتوانند از بلوک‌ها گذر کنند با افزایش بلوک‌های بعدی کاهش می‌یابد. با هدف جبران افزایش سرعت سخت‌افزار و تفاوت در اجرای زمانی گره‌ها، بلوک‌ها به طور متوسط در هر ساعت به طور مشخصی حرکت می‌کنند. در چنین شرایطی اثبات انجام کار دیگر سخت نخواهد بود.

شبکه

در ادامه، گام‌های اجرایی کردن شبکه‌ها با یکدیگر را مرور می‌کنیم:

۱- تراکنش‌های جدید در همه گره‌ها منتشر می‌شوند.

۲- هر گره از تراکنش‌های جدید، در یک بلوک جمع می‌شود.

۳- هر گره، با یافتن سختی اثبات کار برای بلوک کار می‌کند.

۴- وقتی که یک گره اثبات انجام کار را پیدا کرد، در بلوکی با همه گره‌ها منتشر می‌شود.

۵-گره‌ها بلوک‌ را در صورتی می‌پذیرند که همه تراکنش‌ها ارزشمند باشد و پیش از این خرج نشده باشند.

۶- گره‌ها با ساخت بلوک جدید در زنجیره، استفاده از هش در بلوک پذیرفته شده، بر پذیرش‌شان در بلوک پافشاری می‌کنند.

گره‌ها، همیشه بلندترین زنجیره را به عنوان زنجیره درست در نظر می‌گیرند و برای گسترش آن تلاش می‌کنند. اگر دو گره با اشکال مختلف در بلوک بعدی منتشر شود، بعضی از گره‌ها اطلاعات اولی را دریافت می‌کنند و برخی دیگر اطلاعات دومی را می‌پذیرند. در مواقعی که این اتفاق می‌افتد، گره‌ها با اولین اطلاعاتی که دریافت کرده‌اند کار می‌کنند ولی اطلاعات دیگری را هم که دریافت شده ذخیره می‌کنند زیرا امکان طولانی شدن زنجیره دوم وجود دارد. از آنجا که گره‌ها با توجه به طولانی بودن زنجیره تصمیم به درستی یا نادرستی آن می‌گیرند؛ بلوکی را دنبال می‌کنند که زنجیره‌ای طولانی دارد. وقتی اثبات انجام کار، زنجیره‌ای طولانی پیدا کند، همان را ادامه می‌دهد. چون گره‌ها شاخه طولانی‌تر را ادامه می‌دهند، با مشاهده شاخه بلندتر بر روی آن کار می‌کنند.

در انتشار تراکنش جدید دسترسی به همه گره‌ها لازم نیست. به محض آنکه نودها به اندازه کافی گسترش یابند، بلوک‌ جدیدی تولید می‌شود. توزیع و انتشار بلوک همچنین عملیات ارسال پیام را بر عهده دارد. اگر یک گره توسط بلوک دریافت نشود، به بلوک بعدی درخواست می‌دهد و آن را نسبت به وضعیتش آگاه می‌سازد.

اشتیاق

اولین تراکنش در یک بلوک به صورت قراردادی تراکنشی خاص است. این تراکنش با یک کوین جدید که توسط سازنده بلوک ایجاد شده، شروع می‌شود. این مسئله، اشتیاقی برای گره‌ها به وجود می‌آورد تا از شبکه حمایت کنند و روشی را برای توزیع ابتدایی کوین‌ها در محاسبات فراهم می‌کند. در موضوع ما، زمان سی‌پی‌یو و الکتریسیته توسعه می‌یابد. انگیزه‌ها همچنین می‌توانند با هزینه‌های تراکنش‌ها سنجیده شود. اگر ارزش خروجی تراکنش کمتر از ارزش ورودی آن باشد، تفاوت در هزینه تراکنش به ارزش محتوای بلوک در تراکنش اضافه می‌شود. زمانی‌که یک عدد تعیین شده در چرخه ورودی کوین‌ها وارد شود، اشتیاق در تمامی هزینه‌های تراکنش منتقل می شود و تورم به صفر می‌رسد.

اشتیاق ممکن است گره‌ها را تشویق به صادق ماندن کند. اگر هکری طماع باشد و بتواند به بیش از یک قدرت سی‌پی‌یو با همه گره‌های صادقانه حمله کند؛ باید بین استفاده از اموال مردم با سرقت پرداخت‌های قبلی‌شان، استفاده از کوین‌های نسل جدید یا فریب مردم یکی را انتخاب کند. او باید روشی سودمند برای بازی با قوانین پیدا کند. قوانین به هکر کمک می‌کند تا سود بیشتری از کوین‌های جدید نسبت به هر شخص دیگری به دست آورد. در نتیجه ارزش بیشتری نسبت به نادیده گرفتن سیستم و اعتبار اموالش پیدا خواهد کرد.

بازیابی فضای دیسک

هنگامی که آخرین تراکنش در یک کوین به اندازه کافی در بلوک‌ها قرار گرفت، تراکنش‌‌های قبل از آن قادرند در فضای دیسک ذخیره شوند. برای برخورداری از امکانات شکستن هش بلوک، تراکنش‌های هش شده در یک درخت مرکل قرار می‌گیرند. این درخت فقط یک ریشه دارد که شامل هش بلوک می‌شود. بلوک‌های قدیمی می‌توانند با کوتاهی شاخه‌های درخت تجمیع شوند. همه هش‌ها نمی‌توانند فروخته شوند.

بیت کوین

سربرگ یک بلوک بدون تراکنش‌ حدود 80 بایت است. اگر بلوک‌ها هر ۱۰ دقیقه به وجود بیایند، ۸۰ بایت در هر سال 80* 6* 24* 365 = 4.2 مگابایت می‌شود. با سیستم‌های کامپیوتری که به طور معمول در سال 2008 با 2 گیگابایت رم به فروش می‌رسد و از قانون مور پیروی می‌رود، این رقم رشد بیشتری در هر سال خواهد داشت و 1.2 گیگابایت در هر سال رشد می‌کند. حافظه داخلی نباید به مشکل تبدیل شود، حتی اگر سربرگ‌های بلوک فضای کافی داشته باشند.

ساده‌سازی تایید پرداخت

ممکن است پرداخت‌ها بدون اجرایی شدن در یک شبکه کامل از گره‌‌ها تایید شود. تنها چیزی که کاربر به آن نیاز دارد، نگهداری یک کپی از سربرگ‌های بلوکی با بلندترین زنجیره اثبات انجام کار است. او می‌تواند از شبکه گره‌ها استعلام بگیرد تا قانع شود بلندترین گره متعلق به اوست و شاخه مرکل مرتبط با تراکنش در بلوک مهر زمان را در اختیار گرفته است. کاربر نمی‌تواند تراکنش‌ها را برای خود اندازه بگیرد ولی با قرار دادن آن‌ها در جایگاه زنجیره، توانایی تماشای گره شبکه را دارد. کاربر می‌تواند شبکه‌ای از گره‌ها را بپذیرد و بلوک‌ها پس از تایید شبکه پذیرفته شده به زنجیره اضافه شود.

بیت کوین

تا وقتی شبکه گره‌های صادقانه کنترل شده باشند و تایید انجام شود، شبکه ارزشمند خواهند بود. با این حال، این شبکه نسبت به حمله هکرها آسیب‌پذیرتر است. شبکه گره‌ها می‌تواند تراکنش‌های خودش را تایید کند. ساده‌سازی روشی است که به هکرها آزادی عمل می‌دهد و آن‌ها می‌توانند قدرت شبکه را با دستکاری اطلاعات تراکنش‌ها کاهش دهند. یکی از استراتژی‌های حمایتی در مقابل اقدامات هکرها، اخطارهای پذیرش در شبکه گره‌ها است. وقتی یک بلوک نامعتبر کشف می‌شود، توسط نرم‌افزاری که کاربر تمام بلوک‌ها را دانلود کرده و اخطار تراکنش‌ها، ناهماهنگی‌ها را تایید می‌کند. به احتمال زیاد تجارت‌ها با دریافت پرداخت‌های مکرر،‌ کماکان می‌خواهند گره‌ها را اجرا کنند زیرا این روش به استقلال در امنیت و تایید سریعتر منجر می‌شود.

میزان ترکیب و تفکیک

اگرچه مدیریت کوین‌ها به شکل مستقل امکان‌پذیر است، ممکن است تراکنش‌ها برای هر انتقال جداگانه‌ای سنگین تمام شود. هدف از تفکیک و ترکیب ارزش‌ در تراکنش‌ها، استفاده از ورودی‌ها و خروجی‌های چندگانه است. ممکن است ورودی‌‌های یکسان از یک تراکنش قبلی بزرگتر یا ترکیب ورودی‌های چندگانه مقادیر کوچکتری شود و در بیشتر دو ورودی: یک پرداخت وجود دارد و در تغییرات برگشت به ارسال‌کننده فرستاده می‌شود.

وایت پیپر بیتکوین

در این گزارش متوجه می‌شویم که هر تراکنش‌ کجاست و چگونه به تراکنش‌های دیگری بستگی دارد. این تراکنش‌ها، به تراکنش‌های دیگری بستگی دارند و نمی‌توانیم این مسئله را یک مشکل ببینیم. در اینجا نیازی به تاریخچه تراکنش‌ها و یک کپی مستقل نیست.

حریم خصوصی بیت کوین

در مدل بایگانی‌های بانکداری سنتی، سطحی از حریم خصوصی وجود دارد که دسترسی به اطلاعات را محدود می کند. محدودیت دسترسی به اطلاعات تنها شامل افراد معامله‌کننده نمی‌شود، بلکه موسسات مالی و سیستم‌هایی که بر پایه اعتماد بنا شده‌اند نیز اطلاعات زیادی را دریافت نمی‌کنند. با این همه، ضرورت اعلام عمومی تمامی تراکنش‌ها مانع از انجام این روش می‌شود. حریم خصوصی در معاملات از اهمیت فوق‌العاده‌ای برخوردار است. یکی از راه‌های حفظ حریم خصوصی، نگهداری اطلاعات در مکان دیگری با کلیدهای عمومی ناشناس است. مردم می‌توانند تراکنش انجام شده یک شخص به شخص دیگر را بینند، ولی آن‌ها به اطلاعات مربوط به تراکنش دسترسی نخواهند داشت. این موضوع درست مشابه اطلاعاتی است که توسط صرافی‌های بورس منتشر می‌شوند، اطلاعاتی که زمان و حجم معاملات مستقل را بدون افشای نام معامله‌کنندگان عمومی می‌کنند.

بیت کوین

برای اینکه هر تراکنش به مالک مشترکی ارتباط پیدا نکند، باید از یک جفت کلید جدید به عنوان دیوار حفاظتی اضافی استفاده کرد. با این همه، برای تراکنش‌هایی که ورودی‌های چندگانه دارند ارتباط اجتناب‌ناپذیر است؛ چون واضح است که ورودی‌های این تراکنش‌ها فقط یک مالک دارد. خطر تراکنش‌هایی با ورودی چندگانه در این است که با مشخص شدن صاحب کلید، دیگر تراکنش‌های مربوط به آن شخص نیز قابل شناسایی است.

محاسبات

ما سناریویی را مطرح کردیم که هکرها سعی دارند زنجیره‌های جایگزین را سریعتر از زنجیره اعتماد تولید کنند. حتی اگر این مسئله را امکان‌پذیر در نظر بگیریم، سیستم تغییرات اختیاری را قبول نمی‌کند و هکر هرگز نمی‌تواند ایجاد ارزش کند یا از هیچ درآمد به دست آورد. نودها تراکنش‌های غیر قابل اعتماد را به عنوان پرداخت نمی‌پذیرند و نودهای معتبر هیچ‌وقت بلوکی را که حاوی تراکنش‌های غیرقابل اعتماد باشد را قبول نمی‌کند. تنها کاری که هکر می‌تواند انجام دهد تغییر یکی از تراکنش‌های خود برای بازگشت پولی است که خرج کرده.

رقابت میان زنجیره‌های معتبر و هکر زنجیره‌ای را می‌توان به عنوان گشت تصادفی دوجمله‌ای توصیف کرد. موفقیت در اجرای زنجیره معتبر افزایش آن به اندازه یک بلوک است که با +۱ نشان داده می‌شود و شکست در رقابت میان زنجیره‌های معتبر و هکر زنجیره‌ای، افزایش یک بلوک متعلق به هکر است که به کاهش زنجیره‌های معتبر و شکاف به اندازه یک بلوک می‌انجامد که آن را با -۱ نشان می‌دهند.

احتمال موفقیت یک هکر با وجود کمبودها، مشابه مسئله نابودی قمارباز است. قمارباز باید با اعتبار نامحدود می‌بازد و تمام تلاشش را می‌کند تا به نقطه‌ای برسد که هیچ بدهی‌ای ندارد. با محاسبات و بررسی احتمالات متوجه می‌شویم که او هیچوقت به نقطه صفر نمی‌رسد یا نمی‌تواند زنجیره معتبر را به دست آورد. در ادامه با محاسبات این موضوع را توضیح می‌دهیم:

بیت کوین

p= احتمال یافتن بلوک بعدی توسط یک نود معتبر

q= احتمال یافتن بلوک بعدی توسط هکر

qz= احتمال اینکه هکر با وجود عقب بودن چند بلاک به بلوک‌های معتبر برسد

 qz={ 1 if p≤q

q/ pz if pq}

فرض می‌کنیم p بزرگتر از q است؛ برهمین اساس، تعداد بلوک‌هایی که هکر لازم دارد تا به زنجیره معتبر برسد، افزایش می‌یابد و احتمال آنکه هکر بتواند به بلوک بعدی برود به صورت نمایی کاهش پیدا می‌کند. اگر شرایط برای هکر مناسب نباشد، از زنجیره عقب می‌ماند و هر چه هکر از زنجیره عقب‌تر بماند، شانس رسیدن به نقطه صفر برای او خیلی کم و ناچیز خواهد شد. اکنون زمانی را بررسی می‌کنیم که دریافت کننده‌ی یک تراکنش جدید باید صبر کند تا بتواند به اندازه کافی از عدم امکان تغییر تراکنش توسط فرستنده اطمینان به دست آورد. فرض ما این است که فرستنده هکری است که قصد دارد دریافت کننده را مدتی در مورد پرداخت فریب دهد. هکر بعد از گذشت زمان کوتاهی بازگشت پرداخت را به سمت خود (آدرس خود) تغییر می‌دهد. گیرنده در چنین شرایطی اخطاری را دریافت می‌کند، اما فرستنده امیدوار است اخطار خیلی دیر به گیرنده فرستاده شده و عملیات فریب به خوبی پیش رفته باشد.

گیرنده یک جفت کلید جدید تولید می‌کند و کلید عمومی را قبل از امضا در اختیار فرستنده قرار می‌دهد. با این کار مانع آماده‌سازی زنجیره‌ای از بلوک‌ها پیش از زمان مقرر توسط فرستنده می‌شود.گیرنده باید این روش را به طور مداوم ادامه دهد و دست از تلاش‌هایش برندارد تا وقتی که به اندازه کافی خوش شانس باشد و بتواند تا جایی که می‌تواند جلو بیفتد، سپس در آن لحظه تراکنش را اعمال کند. زمانی که تراکنش ارسال شد، فرستنده‌ متقلب کارش را بر روی  زنجیره‌ موازی که حاوی نسخه‌ی جایگزین تراکنش است، آغاز می‌کند.

گیرنده تا وقتی منتظر می‌ماند که تراکنش به یک بلوک اضافه و تعداد z بلوک به آن متصل شود. او از پیشرفتی که هکر به وجود آورده هیچ اطلاعی ندارد؛ اما پیش‌بینی‌ می‌کند زمان متوسط بلوک‌های معتبر بر حسب هر بلوک چه مقدار بوده است.

  • پتانسیل پیشرفت احتمالی هکر با توزیع پواسون (Poisson)، با ارزش مورد انتظار خواهد بود:

بیتکوین

  • برای دریافت احتمال رسیدن هکر به بلوک‌های معتبر، تراکم پواسون را  برای هر مقدار پیشرفت که هکر توانسته انجام دهد،‌ تکثیر می‌کنیم:

وایت پیپر بیتکوین

  • مرتب‌سازی معادله با هدف جلوگیری از جمع شدن با دنباله بی‌نهایت

بیت کوین

  • تبدیل به زبان برنامه‌نویسی سی
  • برخی نتایج را اجرا می‌کنیم و می‌توانیم احتمال را به شکل نمایی با z مشاهده کنیم.
  • برطرف کردن مشکل P کمتر از 0.1 %

نتیجه گیری

هدف ما ارائه سیستمی برای تراکنش‌های الکترونیکی بدون اتکا به اعتماد است. کارمان را با چهارچوب معمولی ارزهایی شروع می‌کنیم که با امضاهای دیجیتالی ساخته‌ شده‌اند. این سیستم بر روی مالکیت‌های قبلی کنترل قدرتمندی دارد اما روشی نیست که به طور کامل جلوی دوبار خرج شدن را بگیرد. برای حل این مشکل، شبکه همتا به همتا را با استفاده از اثبات انجام کار پیشنهاد کردیم. این روش تاریخچه‌ای از تراکنش‌ها را ثبت و آن را عمومی می‌کند. اگر نودهای معتبر توسط قدرت سی‌پی‌یو کنترل شود، هکر قادر به محاسبه نخواهد بود. این شبکه پایدار و غیر ساختاری است. نودها در این شبکه با هماهنگی کمی کار می‌کنند. نودها تا زمانی که پیام‌ها مکان مشخصی هدایت نمی‌شوند، نیازی به شناسایی ندارند. نودها می‌توانند در شبکه در رفت و آمد باشند به این معنا که می‌توان نودها را از شبکه حذف یا به آن اضافه کرد. پذیرش زنجیره اثبات کار نشان می‌دهد که چه اتفاقی در بلاک افتاده است. آن‌ها به قدرت CPU رای می‌دهند تا بر روی بلوک‌های معتبر تاکید کنند. این پذیرش با تلاش برای گسترش بلوک‌های معتبر و کاهش بلوک‌های نامعتبر انجام می‌شود. در نهایت، هر قانون و اشتیاقی لازم باشد توسط مکانیسم توافق جمعی یا همان الگوریتم اجماع اعمال می‌شود.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *