ビットコインの仕組み
ビットコインを始めとする仮想通貨は、私たちの身近な存在になりつつあります。しかし、全体の仕組みを大まかに理解するのは簡単ではありません。
そこで、仕組み全体の概要を、用語とともに確認します。
【1】ビットコインとは
・管理方法
・発行数量・単位
【2】送金方法
・秘密鍵、公開鍵、アドレス
・ブロックとブロックチェーン
・マイニングとPoW
・ライトニングネットワーク
・ウォレット
【3】取引所での売買
・価値の源泉
【4】まとめ
【5】関連記事一覧
ビットコインとは
ビットコインとは、2009年に誕生した世界初の仮想通貨です。
その基礎となった論文(ホワイトペーパー)は、2008年にサカモトサトシによって公開され、後の仮想通貨は、その斬新な技術を基礎として開発されています。
用語:サカモトサトシ
ナカモトサトシはビットコインの論文を公開した人物とされていますが、素性は分かっていません。発表から数年後にはビットコイン開発から外れ、情報発信もしなくなりました。
仮想通貨が世の中に何千種類もあるのは、ビットコインのプログラムが全て公開されているからです。技術がある人がそれを参考にすれば、新規の仮想通貨開発が可能となります。
管理方法
管理方法も、独特です。例えば銀行口座の場合、銀行に管理システムがあり、私たちは自分の口座情報だけ閲覧できます(他人の口座を覗けません)。そして、送金手続きをすれば、銀行が手配してくれます(下図)。
銀行で何かトラブルが発生すると、大勢が入出金等できなくなり大騒ぎとなります。
一方、ビットコインは管理方法が異なり、全権を持った中心的なサーバーは存在せず、全てのコンピュータ(ノードと呼ばれます)が対等な立場でシステムに参加しています(下図)。
このため、特定のノードが故障しても、他のノードが全てのプログラムを持っていますので、システムが止まることはありません。
故障したノードの所有者は、新品にプログラムをインストールすれば、今までと同じように使うことができます(自分のビットコインも、元通りになります)。
用語:ノード
システムを構成するコンピュータ一つ一つを、ノードと呼びます。
用語:peer to peer
中心的なサーバーが存在せず、全てのノードが対等な仕組みを peer to peer(ピアツーピア、P2P)と呼びます。
発行数量・単位
ビットコインの総発行数量は、2,100万BTCです(BTCは数量の単位)。この記事の執筆時点で、1,900万BTC弱が発行済となっており、残りはマイニング報酬として少しずつ世の中に出てきます。
なお、実際に流通している数量は1,900万BTC弱よりもずっと少なく、発行済数量のうち何割かは使用不可能になっていると言われることがあります。
この理由は、いくつかあります。
- 秘密鍵をなくした
- 保有している人が亡くなり、遺族に引き継がれていない など
全員が適切に管理できるわけではないので、今後も使用不可能になる数量は徐々に増えていくと予想できます。
下のリンク先記事は2013年のものですが、7,500BTCを保管したPCを捨ててしまい、秘密鍵を別途保管していなかったので、ゴミ処理場でPCを探すプロジェクトを実行した、という報道です。
この記事を書いた時点で1BTC=500万円ですから、7,500BTCというと375億円になります。
【リンク】ビットコイン情報が詰まったハードディスクを探す!(BBC)
何ともったいない…という感想ですが、彼がもらった当時、ビットコインは価値がほとんどない「ゲームの点数」的な扱いだったため、この惨事になってしまったようです。
送金方法
では、送金方法に移りましょう。これを確認すると、ビットコインの概念がおおよそ分かります。
送金において解決すべき問題は、いくつもあります。例えば、私たちがワードで文書を作成し、メール添付で送信したとしましょう。その文書は相手に届きますし、私たちはその文書を引き続き利用できます。
すなわち、コピーされて全く同じ文書が誕生しました。
ビットコインでこれが可能になると、価値がなくなってしまいます。自分が1BTCを持っていて、それを送信したら、相手に届くと同時に自分の手元から消滅することが必要です。
その他、本当は持っていないけれど持っているフリをして送金したり、他人のものを勝手に送信したりする行為も、排除しなければなりません。
ビットコインの送信システムは、これを可能にしています。
秘密鍵、公開鍵、アドレス
ここでは、送金の仕組みを理解し、仮想通貨を安全に使うためのキーワードを確認します。
用語:秘密鍵
特定のビットコインについて、その所有者だけが知っている情報です。送金時、秘密鍵を使って送金情報を暗号化します。また、秘密鍵を使って公開鍵を作成しますが、公開鍵を使って秘密鍵を特定することはできません。
用語:公開鍵
秘密鍵によって暗号化された送金情報は、その秘密鍵によって作られた公開鍵で復号(暗号を解くこと)できます。公開鍵は、全世界に公開されます。また、公開鍵を使って、アドレスが作られます。
用語:アドレス
ビットコインアドレス(アドレス)は、銀行口座番号に相当する情報です。公開鍵によって作られます。
この関係を図にしますと、以下の通りです。
すなわち、送金に際して最重要なのは秘密鍵です。秘密鍵があれば、それに対応するビットコインをどこにでも自由に送金できます。逆に言えば、秘密鍵がなければ、送金できません。
稀に、ビットコインの盗難が報道されることがありますが、それは秘密鍵が盗まれたことが原因です。
このため、いかにして秘密鍵を盗まれないように安全を確保するかが、とても大切です。
ブロックとブロックチェーン
ここから、送金方法の具体的な方法解説になります。
送金要請は世界中から断続的に出てきます。銀行システムなら、中央管理者が1件1件個別対応して管理すれば十分ですが、中心機関が存在しないビットコインの場合、工夫が必要です。
そこで採用されたのが、ブロックチェーンと呼ばれる考え方です。
ノードは、世界中から寄せられる送金要請について一つ一つ確認します。確認には、公開鍵を使って、暗号化された送金依頼情報を復号する方法が使われます。
公開鍵で復号できれば、それに対応する秘密鍵によって作られた正当な送金依頼ですし、復号できなければ、正当でないので不採用です。
こうして、正当な送金依頼情報をまとめていきます。この作業でまとめた情報の塊を「ブロック」と呼びます。
ただし、特定のノードが確認しただけの送金依頼情報ですから、もしかして確認ミスが起きているかもしれません(あるいは、詐欺をしようとしているかもしれません)。そこで、他のノードによるチェックも受けます。
こうして、世界中のノードからOKをもらったら、そのブロックは採用されて送金が実行されます。
送金が実行されると、そのブロックは確定済み情報として、それ以前に確定したブロックの塊につなげます。このブロックのつながりがチェーンのように見えることから、ブロックチェーンと呼ばれます。
イメージ図は、以下の通りです。
そして、ブロックを作ったノードには、報酬としてビットコインが配布されます。
用語:ブロックとブロックチェーン
ノードによってまとめられた送金依頼情報のまとまりをブロックと呼び、過去から現在までの一連のブロックをまとめてブロックチェーンと呼びます。
マイニングとPoW
次は、どのノードがブロックを作る権利を得るか?という話です。
世の中には無数のノードが存在し、それぞれが送金依頼情報をまとめてブロックを作成します(どの送金依頼を採用するかというのは、ノードが自由に選べます)。
そして、自分が作ったブロックが採用されればビットコインをもらえるのですから、全てのノードが、自分のブロックを採用してほしいと期待します。
そこで、特別な計算競争をして、最速で解いたノードが作ったブロックを採用します。これがマイニングです。
計算の内容ですが「ある適当な文字列等を、あらかじめ決められた方程式(ハッシュ関数)に代入すると特定の答え(ハッシュ値)になるが、その文字列等は何でしょう?」という問題を解きます。
この適当な文字列等は、ノンス(nonce)・送金要請情報・1つ前のブロックのハッシュ値の3つで構成されます。送金要請情報と1つ前のハッシュ値は固定ですから、ノンスに適当な文字列を入れることになります。
用語:ノンス
マイニング競争において、各ノードが探し求めている適当な文字列。条件を満たすノンスを最初に見つけたノードが勝者となる。
用語:ハッシュ関数
マイニングにおいて使用される方程式
用語:ハッシュ値
ハッシュ関数にノンス等を代入して求められる値。
正解のノンスを見つけるには、適当な文字列をひたすらハッシュ関数に代入して計算し続けます。
そして、最初に条件を満たすハッシュ値を見つけられたら、マイニングに勝利したことになります。
その後、計算競争に負けたノードは、勝利したノードが作ったブロックに不正や誤りがないか確認します。こうして、計算競争に投入された計算力の過半数がOKと認めれば、そのブロックが正式採用されます。
この、計算力を元にして採用ブロックを決める仕組みを、PoW(プルーフ・オブ・ワーク)と呼びます。
仮に、詐欺的な送金依頼情報を故意に採用させようとする場合、PoWに投入される計算力の過半数を準備しなければなりません。このため、マイニングに参加するノードが増えれば増えるほど、詐欺行為は困難になります。
用語:PoW(プルーフ・オブ・ワーク)
マイニングの方式の一つ。各ノードの計算力を使って、送金要請の正当性を確認している。
ブロックの分岐
なお、この方法で採用されるブロックを決める場合、「正解を見つけたノードがほぼ同時に複数存在する」という例が生じます。
ビットコインはP2P方式ですから、どちらのノードを採用すべきかを決める上位機関はありません。
そこで、同時に正解を見つけたノードは、それぞれ自分の正当性を主張してブロックをブロックチェーンにつなげます。すなわち、ブロックチェーンが分岐しますが、最終的に採用されるブロックは1つのみです。
この判定は、マイニングに参加しているノードによって決められます。
ブロックチェーンが分岐した後にブロックを作ったノードは、どちらのブロックチェーンに接続するか決めます。そして、最終的に長いブロックチェーンを作った側が採用され、短い側は存在しなかったことにされます。
下の図は、この様子を示しています。
せっかくマイニングに成功しても、存在がなかったことにされてしまうと報酬は得られません(送金もなかったことにされます)。
そこで、ブロックが一時的に分岐する場合、後続組は「どちらの分岐が勝つか?」と懸命に考えることになります。
この問題があるので、取引所等のホームページを確認すると「送金が有効になるまでに必要なブロック数は〇個です」という趣旨の表記が書いてあります。採用されるブロックが確定するのを待つ、ということです。
送金手数料
ちなみに、銀行送金等と同様、送金は無料ではありません。
ノードがブロック候補を作成する際、どの送金要請を採用するか(または、採用しないか)というのは、ノードの自由に任されています。そして、マイニングに成功したノードが得る報酬は、下の2種類です。
- マイニングの成功報酬
- 手数料
そこでノードは、手数料が大きい送金要請から順に採用していきます。
では、手数料は誰が負担するかですが、送金を依頼した人です。そして、手数料をいくらにするかというのは、送金を依頼した人が自由に決められます。
このため、手数料をゼロにして依頼を出しても、送金されずに放置される可能性があります。手数料が安すぎても、同様のリスクがあります。
そこで、安すぎない大きさの設定が重要になります。
ビットコインキャッシュの誕生
以上の通り、ビットコインを送金するには、適切な手数料設定が必要です。しかし、2017年、送金するために数千円以上が必要になるという事態が発生しました。
これは、送金依頼の件数と比較して、ビットコインの能力が全く追い付いていなかったために発生した現象です。
各ノードはブロックを作りますが、その大きさは1MBまでと決められており、そして、ブロックはおよそ10分ごとに作られます。すなわち、可能な送金件数の上限が小さすぎたことが原因です。
この問題の解決方法として、最終的に2つの案が激しく対立しました。
- 案1:セグウィット、ライトニングネットワークの採用
- 案2:ブロックサイズの巨大化
結局、この2つは妥協点を見出させず、案2を支持するグループはビットコインから分裂(ハードフォーク)して新しい仮想通貨を誕生させました。これがビットコインキャッシュです。
ライトニングネットワーク
送金能力不足の問題に対し、ビットコインが選んだ速度強化方法はライトニングネットワークです。
用語:ライトニングネットワーク
ブロックチェーンに記録しないで送金する方法。ブロックが作られる時間(10分程度)を待つ必要がないので、高速送金が可能となる。
この方法の概要は、以下の通りです。まず、送金する側と送金を受ける側の2者で、「ペイメントチャネル」と呼ばれる仕組みを作ります。
これはブロックチェーン上になく、2者間の同意のみで作成可能です。そしてペイメントチャネルでの送金記録は、ペイメントチャネルを解消するときにブロックチェーンに記載します。
(すなわち、ペイメントチャネルを維持する限り、ブロックチェーンに記載されません。)
では、この2者間以外の第三者に送金する場合には、改めてペイメントチャネルを設定する必要があるでしょうか。必要があるとするなら、高速送金のたびに設置せねばならず、煩雑です。
そこで、ペイメントチャネルのネットワークを利用します。
下の図は、AとBの間でペイメントチャネル(〇印)があり、BとCの間にもあるけれど、AとCの間にはないということを示しています。
この図で、AからCに1BTCを送金します。
まず、CはBから1BTCもらい、そして、BはAから1BTCをもらいます。こうすれば、Bを経由してAからCに送金したのと同じ効果を得られます。このネットワークを使うことによって、世界中に送金可能です。
下は、ペイメントチャネルとネットワークの現状を示したものです(Lightning Network Explorerから引用)。網の目のように送信網が築かれている様子が分かります。
この記事を執筆した時点で、ペイメントチャネル数は32,990件、ノード数は7,214件となっています。
ウォレット
以上、ビットコインの仕組みを概観しましたが、ウォレットについても確認しましょう。
用語:ウォレット
仮想通貨を保管する仕組み。ウォレットとは「財布」という意味。
ビットコインには、ウォレットというシステムはありません。しかし、それぞれの送金情報に所有者の認識番号(UTXO)が記載されています。
送受信が活発になると、自分のUTXOが付与された送金情報が、ブロックチェーン上に多数生じることになります。
そして、ウォレットで残高を調べる際は、自分のUTXOが付与された送金情報をブロックチェーン上で探して集計して表示します。
ホットウォレットとコールドウォレット
なお、ウォレットという場合、大きく分けて2種類が存在します。ホットウォレットとコールドウォレットです。
用語:ホットウォレット
インターネットに接続した状態で保管する方法。送金したいときに即座に実行できるメリットがある一方、インターネット経由のハッキングで盗難に遭う可能性がゼロではない。
ホットウォレットの例は、アプリです。スマートフォンで管理するという意味ですので、常にインターネットに接続されていると言えます。
用語:コールドウォレット
インターネットから隔離した状態で保管する方法。インターネット経由のハッキングに強いメリットがある一方、送金するにはインターネットへの再接続が必要で、手間がかかる。
コールドウォレットの具体例としては、ペーパーウォレット(紙に秘密鍵とアドレスを印刷する方法)があります。ただし、紙ですので紛失や焼失等に注意が必要です。
また、ハードウェアウォレットもあります。これは、仮想通貨保管に特化したハードウェアで、他のデータを保管できないので、ウィルスに感染するリスクがありません。
ただし、秘密鍵をなくすと、二度と使えなくなるので注意が必要です。
現在の日本の取引所では、顧客資産である仮想通貨はコールドウォレットで管理されていますので、安全度が高くなっています。
日常生活においては、全てをコールドウォレットで管理すると使い勝手が良くないので、日常的に使うくらいの少額はホットウォレットで管理し、普段使わない分についてはコールドウォレットで管理するのが現実的と言えそうです。
取引所での売買
私たちが実際にビットコインに触れるのは、取引所内での売買が多いです。そこで、取引所での扱いを確認しましょう。
取引所でビットコインを買えば残高が増えますし、売れば減ります。
しかし、その情報をブロックチェーンに登録しようとすると、送金手数料が高くついてしまいます(件数も膨大なので、ブロックチェーンへの登録は困難でしょう)。
そこで、取引所内でシステムを構築し、売買記録は全て取引所内で記録されます。
そして、顧客が出金要請をした際に、指定のアドレスに送金します(すなわち、ブロックチェーンに記載します)。
この際、手数料を取られることがありますが、それは取引所の収入になるのではなく、マイナー(マイニングをする人)に支払う手数料となります。
価値の源泉
最後に、価値の源泉はどこにあるか?を確認します。取引所で売買するということは、ビットコインに価格がついているということです。電子データの塊に過ぎないのに、価格がついているのはなぜでしょうか。
これを確認するために、円や米ドルなどの通貨を先に確認しましょう。
管理通貨制度
現代社会の通貨制度は、管理通貨制度です。すなわち、発行のために金や銀などの貴金属を準備する必要はなく、各国の中央銀行が自由に通貨を発行できます。
これにより、不景気になればたくさんのお金を銀行等に供給し、好景気が行き過ぎれば市中からお金を回収して景気の過熱を抑え、比較的自由に政策調整ができます。
しかし、政府や中央銀行の運営が不適切で国民の信頼を失うと、通貨の信頼も失われます。
と言いますのは、単なる紙に過ぎない紙幣をお金だと信じている理由は、国や中央銀行がそれをお金と定義していて、国民はそれを信頼しているからです。
国への信頼が失われると、通貨も価値を失います。ただし、第二次世界大戦後、少なくとも先進国においては、通貨が価値を失ってハイパーインフレーションになったという例はありません。
金本位制
管理通貨制度の前は、金本位制が採用されていました。すなわち、国家は金(きん)の保有量の範囲内でお金を発行できるという制度です。
金を基準としていれば金本位制、銀なら銀本位制、金銀の両方なら金銀複本位制となります。
日本でも、金本位制の時代がありました。下の金貨は、明治時代に発行されたものです(日本コインオークションから引用)。
金本位制の場合、通貨自体に価値がありますので、政府等の信用を必要としません。
利用者の信頼
以上、円や米ドルなどの通貨を概観しました。ビットコインを始めとする仮想通貨の場合、国や中央銀行による信用付けや価値の強制はありませんし、金銀で作られているわけでもありません。
では、どこから価値が出てくるのか?ですが、利用者による信頼が価値を直接生み出しています。
この信頼は、円や米ドルのような安定感を得るまでには至っていません(ビットコインを「怪しい何か」と思っている人は、まだ大勢いることでしょう)。
このため、ビットコインを始めとした仮想通貨の価値を円や米ドル等で表現すると、大きく乱高下することになります。
この値動きは投機的なトレードにとって都合が良いですから、投機家が集まってきて、さらに値動きが激しくなることもあるでしょう。
よって、利用者から安定した信頼感を得られるようになったら、価格も落ち着いてくる可能性があります。
なお、仮想通貨の数は何千もありますので、中には利用者の信頼を得られず(または、失って)事実上消滅した仮想通貨も存在します。脚光を浴びている仮想通貨ですが、安泰とはいかないことが分かります。
まとめ
以上、ビットコインの概要を確認しました。
従来から存在している銀行システム等とは全く異なる方法で維持管理されており、また、価値がある理由も、円や米ドル等と異なることが分かります。
今後のビットコインの推移は不明ですが、少なくとも、ブロックチェーン技術は私たちの生活に必要不可欠な存在になると見込まれています。
仮想通貨については、種類がとても多くなりましたので、生存競争が激しくなる可能性があります。一喜一憂せず将来性を考えながら選んで、少しずつ売買して楽しめば良さそうです。