再びビットコインの安全性について
最近カンボジアのある詐欺団が12万ビットコインをアメリカ政府に押収されたというニュースがネット中に広まりました。多くの人がこのニュースを読んだときの第一反応は「ビットコインはまだ安全なのか?」であり、「ビットコインは終わった」と考える人もいます。
私の何人かの友人がこの質問を私に尋ね、記事の下のコメントでも読者がこの問題に言及しています。
この問題について、ウーが書いた記事「カンボジアの詐欺団の大物の12万ビットコイン:アメリカ政府にどう押収されたのか?」(全文は文末の参考リンクを参照)が比較的明確に説明しています。
記事の内容を要約すると、大体以下のようになります:
彼が保管していたビットコインのウォレットの秘密鍵は生成時に明らかな脆弱性があり、この脆弱性の根源は乱数のランダム性が不十分であることです。または、ウォレットの保有者がオフチェーンで秘密鍵に関する情報をアメリカ政府に握られている可能性もあります。
もし保有者自身が情報を漏らしたのであれば、問題は保有者自身にあり、秘密鍵の安全性とは関係ありません。
もし秘密鍵自体の安全性が不足しているのであれば、それは秘密鍵を生成するウォレットソフトウェアに問題があるということです:その乱数のランダム性が不十分である-------この点は私たちが注目すべきです。
理論的には、現在の計算システムが生成する乱数は真の乱数ではなく、擬似乱数です。ただし、技術の進歩に伴い、人々はこれらの数をできるだけ真のランダムに近づけるための多くの方法を発明しました。
もし鍵の生成に使用される乱数があまりにも「擬似」すぎると、攻撃者に明らかな脆弱性を残し、鍵が何であるかを推測され、ウォレット内のコインを盗まれることになります。
私が以前ブロックチェーン会社で働いていたとき、会社のエンジニアが一度遊びで特殊なツールを使って吉祥数字を含む大量のイーサリアムウォレットアドレスを生成し、多くの同僚に配りました。
このようなウォレットは、その鍵が真のランダム数に近い「乱数」で生成されていないため、その鍵は非常に安全ではなく、簡単に破られる可能性があります。
それにもかかわらず、いくつかの同僚は本当にその中にイーサリアムを入れ、送金に使用しました。彼らはもちろんこれらのウォレットが安全でないことを知っていましたが、それでも送金に使用しました。これは純粋に楽しみのためであり、特に外部の人に自慢するためです。
さらに、秘密鍵のランダム性がどれほど重要かを説明するために、もっと一般的な例を挙げることができます。
私たちは皆、電子メールアカウントを申請したことがあります。メールアカウントを申請する際、私たちは自分でパスワードを設定する必要があります。通常、多くのメールサービスはパスワードを最低8文字にし、大文字と小文字、特殊記号、数字の組み合わせを要求します。
この方法でパスワードを設定すれば、一般的には桁数が多いほど、攻撃されにくくなります。
しかし、誰かがこのルールを守らず、すべての桁を同じ文字や数字、特殊文字に設定し、さらに自分のパスワード設定の習慣を無意識に漏らしてしまった場合、攻撃者がそのメールアカウントを破るのは容易になります。
もし読者の中にこのエコシステムに早くから参加していたユーザーがいれば、次のような記憶があるかもしれません:
初期のウォレットは、シードフレーズ(秘密鍵)を生成する際に、ユーザーにマウスを使って画面上をランダムにスクロールさせることを要求していました。これは、ユーザーのランダムな行動を通じて鍵のランダム性を高めるためのものでした。
現在、多くのウォレットはこのような要求をしなくなりました。なぜなら、より良い体験とより良い乱数取得方法があるからです。
したがって、一般的には、大手で老舗のウォレットブランドを使用している場合、それらが生成する秘密鍵は比較的安全であり、普通のユーザーはあまり心配する必要はありません。
実際、技術派のプレイヤーにとっては、物理的方法を使って強いランダム性を持つ鍵を自分で生成することもできるので、さらに安心です。
要するに、このケースは単なる個別の事例であり、反映される問題はビットコインのメカニズム自体の安全性の問題ではなく、人為的操作の問題やウォレットソフトウェアの問題です。
全体的に見て、ビットコイン、イーサリアム、さらには一般的に厳密に暗号学に基づいて生成されたウォレットは依然として安全です。














