ビットコインアドレスは重複するのか?

レポート「アルトコイン図鑑」では30種類以上のコインの概要と見通しを解説(詳しく)

ビットコインアドレスは重複するのか?

ビットコインのアドレスにについては、最初は非常に不思議だった。このアドレスというのも、だれか中央機関が発行すわけでもなく、単に、勝手に自分で作る。

たとえばあなたのパソコンでアドレス生成ソフトを走らせれば、アドレスは1000でも2000でも作ることが出来る。そして、その勝手につくったアドレス宛てにビットコインを送金できて、実際にそこにビットコインは送られる。

これは感覚的にはとても不思議だ。

例えば、いまつくったアドレス。 16bjdtVb32azd5Tdybxoz7366wDjFspPdn といったものだが、これは、まさにいまつくった。これにビットコインを送金することができる。

現在は作ったばかりなので、からで残高はゼロだが、いくらかおくればクレジットされる。勝手につくったアドレスに送って機能するというのは面白い。

そしてこのアドレスのプライベートキーは私しか知らないわけなので、このアドレスにおくられたビットコインは、原理的には他のだれかが勝手に使うことはできない。

なぜ、各自が勝手にアドレスを生成しても、大丈夫なのか?

ある人が作ったアドレスと、まったく同じものを誰かが作成した場合どうなるのか?

これはアドレスの衝突(コリジョン)ということになる。もしあるアドレスとまったく同じアドレスを、別の誰かが作成することに成功して、同じプライベートキーが発見された、そのアドレスのコインを自由につかうことができる。

その可能性はあるのか?

ビットコインの場合、アドレスの空間は2の256乗である。これは信じられないほど大きい。どのくらい大きいかというと、観測可能な宇宙の素粒子の総量が10の80乗程度といわれる。これは、ビットコインのアドレス空間と、ほぼ同じくらいの量になる*1。

要するに、宇宙に存在する素粒子の量くらいの数のアドレスがあるということで、そのなかから同じものを発見するのは不可能にちかい。

ただ、コンピュータは、完全にランダムな数列を作ることはむずかしい。多くのコンピュータにおける乱数は擬似的な乱数だ。仮にウォレットプログラムの乱数に問題があり、十分にランダムでない状況で、大量のアドレスを生成しつづけた場合、衝突は起こりえるのか?

という話を昨日してたのであるが、専門家が試算をしてみてくれたが、それでも大丈夫そうである。もし、その擬似乱数の振る舞いが完全に特定できたとしても、それでも、地球上にある砂の数くらいのアドレスを当たらないといけないようだ。

*1   2^256≒10^77

 

・おしらせ
ビットコイン研究所の有料版サロンでは、平易な言葉で最近の技術や業界事情などについて解説するレポートを毎週配信しています。

暗号通貨について、もっと知りたい、勉強をしたいというかたに情報を提供しています。サロン内では疑問点も質問できます。

一度登録いただけると100本以上の過去レポートが読み放題で、大変お得です。レポート一覧がこちらのページありますので、よろしければいちど目をとおしてみてください。
(詳細情報)

Ledger Nano S - The secure hardware wallet