
量子コンピュータとビットコイン
近い将来、量子コンピュータがビットコイン(BTC)をはじめとする暗号資産(仮想通貨)のセキュリティに大きな影響を及ぼす可能性があると指摘される中、システムエンジニアでビットコイン起業家のベン・シグマン氏は8日、「徹底的な調査の結果、大きな付随的被害なしに、量子コンピュータ問題を解決できる可能性が高い」と主張。技術的側面からリスクと対策について解説した。
量子コンピュータは、量子力学の原理を活用し、従来のコンピュータとは全く異なる仕組みで計算を行うため、その処理能力が飛躍的に進化すると期待されている。その膨大な処理能力によって、仮想通貨を支える暗号技術を突破することが可能になるのではないかと危惧されている。具体的なリスクとしては、量子コンピュータが公開鍵から秘密鍵を導出してしまう可能性が議論されている。
シグマン氏は、ビットコインの送金方式別に量子コンピュータに対する耐性を説明した。
- P2PK(Pay to Public Key):公開鍵に支払う方式
- P2PKH(Pay to Public Key Hash): 公開鍵のハッシュを使って支払う
- P2WPKH(Pay to Witness Public Key Hash):Witness(証明データ)を使い Public Key Hashに支払う方式、SegWitで導入
この中で、現在最も脆弱なのは、公開鍵を使って送金するP2PKだ。公開鍵が最初から直接ブロックチェーン上で「公開」されるため、量子コンピュータの「Shorのアルゴリズム」を使って、秘密鍵が導き出される可能性がある。
2010年3月までにマイニングされた約170万BTCがこの方式を使用しているが、そのうちの95%は移動しておらず、おそらく今後も移動することはないと見られている。
シグマン氏は解決策として、P2PKアドレスからの移動を1ブロックあたり1BTCに制限する「砂時計」のアプローチを提案している。この制限下では、量子コンピュータがマイニングするのには120年かかるという。
関連:ビットコイン・仮想通貨への量子コンピューター脅威、実現は「数十年先」 アナリスト指摘
安全な形式
シグマン氏によると、P2PKHとP2WPKH、またTaprootなどのアドレス方式は、公開鍵をハッシュ化して保存するため、本質的に脆弱でない。量子攻撃には公開鍵を必要とするからだ。
公開鍵がブロックチェーン上に公開される「送金時」が量子攻撃のリスクとなるが、それ以外の時はセキュリティを心配する必要はない。ただし、残額の全額を送金しなかった場合には脆弱性が高まるため、「お釣り」用に新しいアドレスを作成することが重要になっている。
サトシ・ナカモトが推奨したように、毎回アドレスを使い捨てにし、再利用しないことで量子耐性を備えることができる。
ビットコインのオフチェーン送金システムであるライトニングネットワークを使用する場合、公開鍵はユーザー同士の支払い専用経路であるチャネルを閉じる時のみに公開されるため、通常の運用では量子耐性を持っている。チャネル閉鎖時のリスクは、設定の変更で軽減できるとシグマン氏は述べた。
メムプール(mempool=未確認トランザクションのプール)では、ビットコイン取引のブロードキャストから確認までの短い間、公開鍵が公開されているため、理論上は量子コンピュータが公開鍵を解析して資金を別のアドレスに送る「量子リダイレクト攻撃」が可能だ。しかし、この攻撃は非常に高速な量子コンピュータを必要とするため、現実的ではないとシグマン氏は言う。
長期的な解決策としては、レート制限の導入や取引の確認時間の短縮、量子コンピュータに耐性のある新しい暗号署名方式を採用したアドレス形式を提案した。
関連:仮想通貨の暗号技術への影響は? グーグル 量子コンピューターチップ「Willow」を発表
量子耐性アドレスと今すぐできる対策
ビットコインは、これまでに以下のような署名方式のアップデートを行なってきた。
- 2009年: P2PK、およびP2PKH
- 2012年: CheckSequenceVerify
- 2015年: BIP 65
- 2017年: SegWit
- 2021年: Taproot
シグマン氏は、今後、ビットコインが量子耐性(ポストクオンタム:Post-Quantum)のあるアドレス(P2PQH)を導入する可能性に言及。それには、UTXO(未使用のビットコイン資金)を移動するなど大きな変更を伴うため、ブロックサイズの一時的な拡大が必要になる可能性もあるという。
今すぐ私たちが実行可能な量子コンピュータへの対応策として、同氏は以下を挙げた。
- パニックに陥らないこと、量子コンピュータへの恐怖を利用しようとする疑わしいトークンを購入しないこと
- 同じアドレスを再利用しないウォレットを選ぶこと
- LedgerやTrezorのようなハードウェアウォレットを使用している場合、製造元に「新しい送金ごとに新しいアドレスを生成する」機能をデフォルトで有効にするよう要請する
- すべてのUTXOを新しいアドレスに移動する。(ビットコインを普通預金口座と当座預金口座に分けるイメージ)
シグマン氏は、送金ごとに新たなアドレスを自動生成するウォレットとして以下を推奨している。
- Sparrow Wallet
- Electrum Wallet
- Wasabi Wallet
- BlueWallet
- Blockstream Green Wallet
- Phoenix Wallet
関連:ビットコイン開発者 量子コンピュータ対策のハードフォークを提案