高騰するビットコイン…開発者に疑われた中島聡がその成り立ちを解説

 

分散通貨システムとは、Paypal や銀行のような会社抜きに、分散型の「電子元帳」でデジタル通貨を管理しようというアイデアで、利用者はデジタル情報(0と1の集まり)で表現されたデジタル通貨さえ持っていれば、どこででも使える、というアイデアです。こうすることにより、Paypal のような「管理者」(もしくは金融機関)を排除し、はるかに低コストで通貨の交換ができることになります。

アイデア自体は素晴らしいのですが、分散システムならではの欠点があります。デジタル通貨の二重使用を防止することが非常に難しいのです。分散システムは、それぞれのサーバーに「電子元帳」のコピーが存在するため、一つのコピーに生じた変更を他のコピーに伝搬する仕組みがありますが、その伝搬の遅延を悪用すれば、二重使用が出来てしまうのです。

例えば、分散システムが S1 から S10 の10個のサーバーで構築されていた場合、S1 には(100ドルしか持っていない) A さんの口座から100ドルを(なんらかの対価の代金として) B さんの口座に移し、S2 には A さんの口座から100ドルを C さんの口座に移すという指示をほぼ同時に出した場合、実際には100ドルしか持っていない A さんが200ドル送金することを許してしまうことになるのです。

もちろん、こんな不整合は S1 上の「電子元帳」への変更と、S2 上の「電子元帳」への変更を後に融合しようとした時に発見できますが、その時には、A さんはすでに B さんと C さんから100ドルのお金に対する対価を受け取ってしまっていれば、後の祭りです。

Satoshi Nakamoto は、従来型のシステムは、それぞれのサーバーに置かれた「電子元帳」の変更が簡単すぎるのが問題だという点に着目したのです。簡単すぎるために、同時期に別々のサーバーにアクセスされると、「電子元帳」間の不整合(同じ通貨が二度使われてしまうなどの状態)が簡単に生じてしまうのです。

そこで、Satoshi Nakamoto は、「電子元帳」への取引の追加を「ものすごく難しく(=計算量を多く)」することにより、この問題を解決しました。それも単に計算量が多いだけでなく、運にも左右される仕組みになっているため(膨大な計算をして、正しい追加の方法を「発見」しなければならないようになっています)、ユーザーからアクセスされたサーバーが単体で出来るものではなく、(分散システムを構築する)他のサーバーに協力を仰がなければならないように設計したのです。

つまり、「特定のデジタル通貨の所有者が、A さんから B さんに移る」という事実を「電子元帳」に記録するためには、(分散システムを構築する)サーバーすべてが協力しなければ、それが出来ない仕組みになっているのです。

print
いま読まれてます

  • 高騰するビットコイン…開発者に疑われた中島聡がその成り立ちを解説
    この記事が気に入ったら
    いいね!しよう
    MAG2 NEWSの最新情報をお届け