大規模なメルトダウン
もしビットコインの暗号学的な健全性に重大な欠陥が発見されたらどうなるだろうか? システムと全員の資産の完全な崩壊を防ぐ方法はあるだろうか?
一つの方法としては、非匿名アドレスの自主的な登録簿を作成し、公開で共有・検証することが考えられる。そうすれば、もし重大な欠陥が生じた場合(例えば誰かが因数分解問題を解いたなど)、新しいシステムで使える全員の資産の記録が残る(不正なトランザクションが発生していなかった最後の時点について全員が合意できると仮定して)。もちろん、匿名のままでいることを選択した人々(したがって登録簿にアドレスを含めなかった人々)は資産が消滅することになるが、残念ながらそのリスクは匿名性の代償ということになるだろう。
いや、中央集権的なレジストリではない。それを管理する「機関」はない。ユーザーが合意するだけのものだ。BCの他のすべてのルールと同様に。BCが取引を行うのと同じように、分散的かつ公開されている。
アマル、認める:あなたのことを誤解していた! デジタル通貨は政府がコントロールできないので、長く合法ではいられないのではないかと心配しているだけだ。(違法にされた日にはシャンパンを開けるべきだ。それはビットコインが成功した証だから。) その時点で、あなたのレジストリも閉鎖されるだろう。そして、その機関にアドレスを提供したすべての人が困ったことになる。
ビットコインに重大な欠陥が見つかり、別のシステムに切り替える十分な時間がない場合、資産の損失に対してできることはないと思う。
それでも仮に、あなたがコインを無限に生成する方法を発見したとしよう。あなたの目標は、その秘密からできるだけ長く利益を得ることだ。だから、不正を行う力を持つ人でさえ、デジタル不換通貨の崩壊は望まないだろう。そして、旧通貨が崩壊する前に、偽のお金をより良い通貨に交換するだろう。しかし、いわゆる「本物の」お金にも同じことが言えると思う。ただし、デジタル通貨のアルゴリズムを欺く頭脳を持つ人は、少なくともその天才に対する報酬を得る。一方、政府/中央銀行の「印刷機」にアクセスできる人は、単なるクズであることに対して報酬を得ているのだ。
大規模なメルトダウンからの復旧方法に関する同様の質問への回答がこちらだ。https://www.bitcoin.org/smf/index.php?topic=191.msg1585#msg1585
もしSHA-256が完全に破られた場合、問題が始まる前の正直なブロックチェーンが何であったかについて合意に達し、それを固定して新しいハッシュ関数で継続できると思う。
もしハッシュの崩壊が徐々に進むなら、新しいハッシュへ秩序立てて移行できる。ソフトウェアは、特定のブロック番号以降、新しいハッシュを使い始めるように組んでおけばいい。その時までに全員がアップグレードする必要がある。ソフトウェアは古いブロックの新しいハッシュを保存して、同じ古いハッシュを持つ別のブロックが使用されないようにすることができる。
サトシ、
SHAが破られた場合(確かにより可能性の高い崩壊シナリオだ)、それは確かに解決策になるだろう。なぜなら、署名によって正当な資金保有者を認識できるからだ(秘密鍵はまだ安全だ)。
だが、何かが起きて署名が破られたら(整数の素因数分解が解かれるとか、量子コンピューターとか?)、最後の有効なブロックについて合意しても、意味がなくなる。
楕円曲線暗号が破られることが心配なら、ビットコインに大きな資産を保管しないことだ。実際の(物理的な)ウォレットが盗まれることが心配なら、数日分の買い物に必要な以上の現金を持ち歩かないのと同じだ。
ちなみに:楕円曲線暗号が破られるよりも先に、海水から金原子を経済的に分離する方法が見つかると思う(そしてどちらも今後25年以内にはありそうにないと思う)。
だが、何かが起きて署名が破られたら(整数の素因数分解が解かれるとか、量子コンピューターとか?)、最後の有効なブロックについて合意しても、意味がなくなる。
突然起きたのなら、そのとおりだ。徐々に進むなら、もっと強い方式へまだ移行できる。アップグレードしたソフトウェアを初めて動かすと、ソフトウェアが、新しいもっと強い署名アルゴリズムで、手持ちの資金をすべて署名し直す。(より強力な署名で自分自身に送金するトランザクションを作成することにより)
インターネット上で使われている暗号ソフトのほぼすべては、トラップドア関数を利用している。2つの数を掛け合わせるのは簡単だが、その積だけが手元にあって、元の2つの因数を簡単に求めることはできない。今のところ、ほとんどの人間が知っている方法は、ひたすら全部の数を試す以外にないんだ。もし誰かがもっと短時間で済むうまい方法を見つけたら、私みたいな普通の人間でも、何かのソフトでその方法を使ってHTTPSのトラフィックを復号する、なんてことが簡単にできてしまうだろう。
ハッシュは少し違うが、考え方は同じだ。ハッシュを逆向きに辿って入力候補を特定することはできず、ひたすらありそうな入力を試してハッシュを比較するしかない。
どれも完璧じゃないけど、bitcoinは長年受け入れられてきた他の多くのソフトでも使われている既存の手法を利用しているだけだ。根本的な欠陥が見つかったとしたら、その時心配すべきはbitcoinなんかじゃないだろうな 😊
いや、中央集権的なレジストリではない。それを管理する「機関」はない。ユーザーが合意するだけのものだ。BCの他のすべてのルールと同様に。BCが取引を行うのと同じように、分散的かつ公開されている。
なるほど、分かった。😊