ビットコインを支えるブロックチェーンをざっくり解説

標準

仮想通貨は、人から人へと転々流通することが想定されています。

しかし、仮想通貨のような電子データを移転する場合(つまり仮想通貨を使って支払いをする場合)、やっかいな問題が2つあります。

1つは、本人が間違いなく送金したことをどのようにチェックするのかという問題。もう1つは、使用済みの仮想通貨を他の人への支払いにも使用すること(二重使用)をどのように防止するのかという問題です。

いずれも通貨として使用する以上、絶対に解決しなければならない問題です。

仮想通貨の1つであるビットコインが注目される理由は、これらの問題に対する解決方法を提示したことにあります。

◆1つめの問題―なりすまし、改ざんの防止

解決すべき1つめの問題は、本人が間違いなく送金したことをどのようにチェックするのかという問題です。

具体的には、「なりすまし」「改ざん」の防止です。

第三者が本人の名を騙って送金したり(なりすまし)、送金データの内容(送金金額など)を勝手に書き換えたり(改ざん)することが横行するようでは、安心して仮想通貨を利用することができません。

ビットコインは、これらの問題の解決方法として「電子署名」という方法を採用しています。

電子署名の仕組みを説明しようとすると、「公開鍵暗号」や「暗号学的ハッシュ関数」などに触れざるを得ませんが、長くなるのでやめておきましょう。

とにかく、ビットコインを送金する場合、「電子署名」が行われます。しかも、その送金には電子署名が本物かどうかをチェックするための「鍵」も一緒に埋め込まれるという親切仕様。

実際の作業は、送金先アドレス、送金金額、パスワードを入力して、送金ボタンをクリックするだけなのですが、裏ではこんな処理が行われているわけです。

そして、送られてきた「鍵」による「電子署名」のチェックが完了すれば、その送金が確かに本人によるものであることが明らかになります。そうなれば、本人は後になって送金の事実を否認することはできません。また、このチェックにより、データの内容が改ざんされていないこともわかります。

◆2つめの問題―二重使用の防止

硬貨や銀行券のような「モノ」については、使用してしまえば(つまり相手に渡してしまえば)、手元には何も残りません。

これに対し、仮想通貨は電子データという「情報」であるため、使用済みの仮想通貨をコピーして、別の取引にも使用することが原理的には可能です。これが「二重使用」の問題です。

100BTC(「BTC」=ビットコインの単位)しか持っていないAさんが、BさんとCさんそれぞれに対して同時に100BTCを送金した場合、どちらの送金が優先するのかがわからなくなります。また、仮想通貨が簡単にコピーされると、不正な仮想通貨が世に溢れて価値がなくなってしまいます。

そのため、二重使用は絶対に防がなければなりません。

「どのような方法で二重使用の有無をチェックするのか」という問題については、ビットコインを入出金するときには「取引記録」(「AからBに100BTCを送金した」といった記録)が作成されるので、この取引記録の入出金の対応関係をみれば、二重使用の有無をチェックすることができます。

問題は、「誰が二重使用の有無をチェックするのか」ということです。

不動産の場合であれば、国の機関(登記所)が登記により二重譲渡のないことを保証してくれますが、ビットコインの場合はどうでしょうか?

結論からいえば、取引記録のチェックを行うのは、ビットコインの利用者全員です。

ビットコインの取引記録は、①まず利用者のうちの1人がこれをチェックし、②その結果を利用者全員が検証するというプロセスを経ることになっています。

「そんなのアリ?」と思われるかもしれませんが、それをアリにしたのがビットコインの画期的なところです。

その具体的なプロセスは次のとおりです。

前述のとおり、ビットコインを送金するときには「取引記録」が作成されますが、この取引記録は、ビットコインの利用者全員に公開されます(公開される取引記録は個人を識別することが困難になるように加工されています)。

「公開」といっても、誰かが管理するサーバにアップロードされるのではなく、インターネット上でつながった個々の利用者から利用者へと転々と伝わる方法(P2P方式)で公開されます。P2P方式は、「スカイプ」(Skype)でも使われている技術ですね。

さて、取引記録を受け取った利用者は不正の有無をチェックすることになります。

しかし、当然のことながらそのチェックは無償で行われるわけではありません。不正の有無をチェックするためには膨大な計算が必要となるため、何らかのインセンティブが必要です。

そこで、最初に取引記録のチェックを完了した人には、報酬として新しいビットコインが発行されることとされています。

ビットコインを発行するのは、人や会社などの発行主体ではなく、プログラムされたビットコインシステムそのものです。つまり、ビットコインシステムに「最初に取引記録のチェックを完了した人に新しいビットコインを発行しなさい」というプログラムが組み込まれているわけです。

ビットコインで儲けようと考えている利用者は、この報酬としてのビットコインを獲得するため、専用のコンピュータを使って熾烈な計算競争を行います。まるで一攫千金を狙って金鉱に群がる「採掘者」。そう、彼らは「採掘者」と呼ばれています。

この計算競争では、取引記録に不正がないことを示す「計算結果」に最初にたどり着いた採掘者が勝者となります。勝者となった採掘者は、チェックの完了したいくつかの「取引記録」に加え、膨大な計算をした証拠(Proof of Work)である「計算結果」を1つの「ブロック」に格納した上で、この「ブロック」を利用者全員に公開します。

そして、この「ブロック」を受け取った利用者は、採掘者の行ったチェックの内容が正しいかどうかを検証します。

「いやいや、専用のコンピュータを使い、しかも膨大な計算を経てやっとこさ弾き出された計算結果を、普通の利用者がどうやって検証しろと?」と思われるかもしれません。

しかし、取引記録のチェックには膨大な計算を必要とする一方で、その計算結果が正しいかどうかの検証については、専用のコンピュータを持たない利用者でも比較的簡単に行える仕組みとなっています。しかも、この検証は、利用者のソフトウェアが自動的に行ってくれるので、利用者が電卓をたたいて計算をする必要もありません。

利用者全員の計算能力の過半数(51%以上)により、採掘者の行ったチェックの内容が正しいと判断されれば、その新しい「ブロック」は、直前の「ブロック」の後ろに接続されます。

これに対し、不正な取引記録が含まれたブロックは、利用者の検証により排除され、ブロックチェーンに接続されずに廃棄されます。報酬としてのビットコインも没収されてしまいます。

このプロセスが約10分ごとに延々と繰り返され、「ブロック」と「ブロック」とが「チェーン」のように接続されてゆくことにより、ある時点における取引記録の存在とその正確性が保証されます

この仕組みこそがビットコインを支える「ブロックチェーン」です。

ブロックの構造とブロックチェーン

ブロックの構造とブロックチェーン

◆残された課題

独創的で画期的なビットコインですが、課題も残されています。

代表的なものとして、「ブロックチェーンの分岐」「51%攻撃」があります。

まず、「ブロックチェーンの分岐」です。

P2P方式で情報を共有しようとする場合、世界中のすべての利用者が完全に同時にその情報を共有することはできません。

そうすると、複数の採掘者が正しい計算結果をほぼ同時に導き出してしまい、どちらも正しいブロックとしてネットワーク上に公開されてしまうことが発生し得ます。

その結果、ブロックチェーンが分岐し、2つの異なるチェーンができてしまうことになります。

この場合、ビットコインシステムでは、最も長く伸びたチェーンを有効なものとして取り扱うというルールとなっています(チェーンの長さに一定の差がついたら、短いチェーンは捨てられ、捨てられたチェーンを構成するブロックの採掘者は報酬を受け取ることができなくなります)。

「は?そんなルールでいいの?」と思われるかもしれませんが、より多くの人が選んだほうを正統なものとするわけですから、ある意味では非常に「民主的」な方法ではありますよね。

したがって、利用者としては、自分の送金データの含まれたチェーンが最も長く伸びたであろうと判断できるまで待たなければなりません。具体的には、自分の送金データの含まれたブロックの後ろにブロックが最低でも6個以上接続されるまで、つまり送金処理をしてから60分以上は待つ必要があります。

もっとも、これは、「ブロックが6個以上接続されれば、そのチェーンが他のチェーンに追い越される(他のチェーンのほうが長く伸びてしまう)確率が限りなく低くなる」というものであって、100%確実というものではありません。

これを問題視し、改善しようと奮闘している企業もあります。

また、「51%攻撃」という課題もあります。

ブロックチェーンの維持が採掘者を含むビットコイン利用者の計算能力に委ねられていることに起因する課題です。

もし「全体の過半数の計算能力」を備える「採掘者」が登場した場合、あるいは複数の「採掘者」が結託して「全体の過半数の計算能力」を占めるようになった場合、取引記録のチェックや検証の過程で不正を働き、正しい取引記録がブロックチェーンに組み込まれることを妨害したり、二重使用を正当化したりすることが可能となります(51%攻撃)。

51%攻撃により行うことのできる不正は限られているものの、システムへの信頼が低下することは間違いありません。

このような懸念に対しては、システムへの信頼が低下し、ビットコインの価値が暴落するような事態は、独占者にとっても不利益なことであるため、莫大な投資と電気料金などのコストをかけてまで51%攻撃を仕掛けることはないだろうといわれていますが、やはり不安は残ります。

◆まとめ

いくつかの課題を残しつつも、ビットコインは電子データの移転に伴う2つの問題に対する解決方法を提示しました。

このような革新的な仕組みは、中本哲史(Satoshi Nakamoto)と名乗る正体不明の人物による論文「Bitcoin:A Peer-to-Peer Electronic Cash System」(https://bitcoin.org/bitcoin.pdf)がきっかけとなっています。まったくとんでもない仕組みを思いついたものだなあ…。

我ながら呆れるほどの文系脳であるがゆえに、数学や暗号理論を応用した画期的な仕組みに驚嘆しつつ、夜な夜な仮想通貨やブロックチェーンの関連記事・論文などを読みあさっているおかげで寝不足気味の筆者からは以上です。

本ブログ及びこれに関連する法律相談等については、下記URLからお問い合わせください。
http://kondo-law.com/contact/

  • このエントリーをはてなブックマークに追加