چرا بیتکوین با کامپیوترهای کوانتومی قابل هک نیست
در پی نشر خبر دستیابی گوگل به تکنولوژی کامپیوترهای کوانتومی یا همان رسیدن به Quantum Supremacy نگرانیهای زیادی از بابت تهدیدات متوجه دنیای ارزهای دیجیتال ایجاد شده و حتی عدهای سقوط اخیر قیمت بیتکوین را به همین دلیل میدانند.
در مقالهای منتشر شده در سال ۲۰۱۳ توسط Vitalik Buterin (خالق اتریوم) در سایت BitcoinMagazine:
Satoshi’s Genius: Unexpected Ways in which Bitcoin Dodged Some Cryptographic Bullets
با پرداختن به جزییات فنی، گفته شده: به دلیل استفاده از «آدرس کیف پول» به عنوان تابعی یک طرفه از «کلید عمومی» و عدم افشای «کلید عمومی» در «خروجی تراکنش های بیتکوین» امکان دستیابی به «کلید خصوصی» برای استفاده از بیتکوینهای «خرج نشده» توسط کامپیوترهای کوانتومی تقریبا غیر ممکن است.
با کمی بررسی و در نظر داشتن قانون مور (Moore’s Law، که به آن در تمامی مقالات مرتبط اشاره شده) میتوانیم با دقت بیشتری بفهمیم که دقیقا غیر ممکن تا چه وقتی؟
به گفتهی Financial Times توان پردازشی کامپیوتر کوانتومی گوگل که مختص حل مسئلهی «تشخیص واقعا تصادفی بودن یک سیستم تولید کنندهی اعداد تصادفی» است حاوی ۵۳ کیوبیت (کوانتوم بیت) است.
در سایت Bitcoin.it که مرجع اولیه و اصلی فنی مقالات مربوط به بیتکوین است در مقالهی پردازش کوانتومی و ارتباط آن با بیتکوین آورده شده که برای شکستن قفل یک «کلید عمومی» از نوع ECDSA (الگوریتم مورد استفادهی بیتکوین) و دستیابی به «کلید خصوصی» آن که در واقع هک شدن یک کیف پول بیتکوین محسوب میشود نیاز به یک کامپیوتر کوانتومی با حدود ۱۵۰۰ کیوبیت میباشد و همچنین طبق استانداردهای رمزنگاری موسوم به ECRYPT II این امکان تا سال ۲۰۳۰ الی ۲۰۴۰ وجود ندارد.
نکته اینجاست که حتی اگر بشر در آن زمان به این تکنولوژی دست یابد باز هم امکان هک کردن یک کیف پول بیتکوین وجود ندارد، برای بررسی بیشتر این موضوع و درک مطلب بیان شده توسط آقای بوترین در مقالهی مذکور، به نحوهی عملکرد تراکنشهای بیتکوین و نحوهی استفادهی آنها از «کلید عمومی» و فلسفهی وجود «آدرس کیف پول» میپردازم.
در هر تراکنش بیتکوین که شامل چند «ورودی» و چند «خروجی» است، مشخص میشود که بیتکوینها از کجا آمده و به کجا میروند. به اینصورت که فرد صاحب کیف پول با ارجاع به آدرس تراکنش بیتکوینهای دریافتی و موجود خود (که هنوز آنها را خرج نکرده، Unspent Transaction Output) به عنوان «ورودی تراکنش» جدید خود و در «خروجی تراکنش» جدید خود با قید مبلغ و «آدرس کیف پول» های دریافت کننده، اقدام به خرج آنها میکند و با استفاده از «کلید خصوصی» خود، «ورودیهای» تراکنش جدید را امضا میکند تا مالکیت آنها را اثبات کند. همچنین جهت فراهم شدن امکان صحت سنجی این امضاها توسط سایرین و اثبات کامل این ادعا باید «کلید عمومی» خود را در هر «ورودی» درج کند (و این به منزلهی لو رفتن این کلید است).
همانطور که مشاهده میکنید ساتوشی با در نظر داشتن این ریسک و فراهم شدن امکان شکستن قفل این کلید توسط کامپیوترهای کوانتومی در آینده، طراحی بیتکوین را طوری انجام داده که در آن «آدرس کیف پول» به عنوان مانع لو رفتن «کلید عمومی» در «خروجی» تراکنشها قید میشوند و صاحبان کیف پول فقط در هنگام خرج کردن بیتکوین، «کلید عمومی» متناظر با «آدرس» قید شده در «خروجی» تراکنشهای قبلی را لو میدهند. نکتهی بسیار مهم اینجاست که در هر تراکنش کل موجودی کیف پول (با آدرسهای متعدد) خرج میشود و بابت مبلغ مابقی موجودی که کاربر نمیخواهد به گیرنده بدهد، باید آدرس جدیدی (موسوم به Change Address) که خود مالک آن است را به عنوان گیرندهی دیگر آن مبلغ مشخص نماید.
نکتهی بعدی این است که بعد از ایجاد تراکنش و انتشار آن در شبکه تا زمان افزوده شدن به بلاکچین معمولا حدود ۱۰ دقیقه فرصت هست تا با داشتن «کلیدهای عمومی» لو رفته در تراکنش در انتظار انجام، عملیات کوانتومی و هک انجام شود و از موجودی آن در تراکنش دیگری استفاده شود و این تراکنش جدید باید زودتر از تراکنش قبلی در شبکه توسط Minerها به بلاکچین اضافه شود و احتمال وقوع این رخداد نزدیک به صفر است و در عمل اتفاق نخواهد افتاد.
شاید بپرسید که خوب اگر یک کامپیوتر کوانتومی ۱۵۰۰ کیوبیتی بتواند یک کلید بیتکوین را هک کند احتمالا یک کامپیوتر کوانتومی قویتر میتواند آدرس را هم هک کرده و به «کلید عمومی» تبدیل کند. این موضوع نیز درست است اما با توجه به اینکه در مقالات فوق عنوان شده از تاریخ اولین هک «کلید عمومی» بیتکوین تا تاریخ در دسترس قرار گرفتن این تکنولوژی دههها فاصله خواهد بود، لذا مجددا دههها زمان میبرد تا بشر به تکنولوژی فراتر از ۱۵۰۰ کیوبیت دست پیدا کند تا به طور همزمان هم آدرسهای موجود در شبکه را به «کلید عمومی» تبدیل کند و هم «کلید عمومی» پیدا شده را هک کند. که این یعنی این اتفاق شاید کمی زودتر از سال ۲۱۴۰ بیافتید، تاریخی که در آن پیشبینی میشود جایزهی (Reward) شبکه تمام شده و کل ۲۱ میلیون بیتکوین استخراج میشود و Miner ها باید با اتکای به کارمزد تراکنشها به فعالیت خود ادامه دهند و این بزرگترین تهدید بیتکوین است.
مطلبی دیگر از این انتشارات
آیا در فیلم هیس، شیرین نعیمی باید قصاص میشد؟!
مطلبی دیگر از این انتشارات
کسب درآمد دلاری از سایت گرافیک ریور ! - قسمت اول
مطلبی دیگر از این انتشارات
چطور با برنامه نویسی آشنا شدم