ビットコインの技術

【漫画】ビットコインの仕組みを図解で分かりやすく解説【初心者向け】

1月 11, 2024

【漫画】ビットコインの仕組みを図解で分かりやすく解説【初心者向け】
フィアット

ビットコインは今までにはない仕組みを使っていると聞いたけど、どういうことだろう?

ビットコインは特定の国や銀行が管理をしていない、新しい形のお金です。

従来の通貨とは全く異なる性質があり、世界各国で開発が進んでいます。

この記事ではビットコインの仕組みについて、漫画と図解入りで分かりやすく紹介するよ。

バッジャー君
東晃慈

監修者:東晃慈

2014年の黎明期からビットコイン関連事業に取り組む国内業界の草分け的存在の一人。
Diamond Hands共同創業者/YouTubeチャンネル「ビットコイナー反省会」運営

【漫画】ビットコインの仕組みを分かりやすく解説【初心者向け】

【漫画】ビットコインの仕組みを分かりやすく解説【初心者向け】
フィアット

ビットコインは、「ビットコイン株式会社」みたいな、1つの企業が運営しているわけではないんだね!

ここからはビットコインの仕組みについて、1つずつ分かりやすく解説するよ。

バッジャー君
  • 中央管理者が存在しない分散型ネットワーク
  • 改ざんが難しいブロックチェーン技術
  • 取引が公開されている

中央管理者が存在しない分散型ネットワーク

中央管理者が存在しない分散型ネットワーク

ビットコインは中央銀行や企業などの中央管理者が存在しない、分散型ネットワークを使用しています。
※分散型…中央集権型(1か所に権力が集中する)の反対の意味で用いられる

分散型ネットワークのビットコインには、多くのコンピューターがインターネットを通じてつながっています。
世界中に散らばる1万以上のノード(コンピューター)が、ビットコインの取引を検証する仕組みです。

ビットコインの分散型ネットワーク

  • 誰のものでもないネットワーク
    →全ての参加者が共同で運営しており、一部の人や組織だけですべてをコントロールすることはできない
  • 誰でも参加できる
    →ビットコインのネットワークは誰でも自由に参加・脱退できる
  • 共同で決定する
    →ネットワークのルール変更には多くのノードの合意が必要。また、1つのノードが故障してもネットワーク全体は正しく動作し続ける
フィアット

管理者がいないって、1つの大企業がまとめ役をしてくれる訳ではないんだよね?

ルールを守らない人もいそうだし、本当にうまくいくのかな。

ビットコインのネットワークでは、ルールに違反する行為をすれば報酬が得られないし、ルールに従った上でネットワークに貢献すれば報酬がもらえるんだ。

ルールを守るインセンティブ(動機)があることも、ビットコインがうまく機能している理由の1つだよ。

バッジャー君

改ざんが難しいブロックチェーン技術

改ざんが難しいブロックチェーン技術

ブロックチェーンはデジタルデータを記録する技術で、「ブロック」と呼ばれるデータの集まりが「チェーン」のようにつながっています
複数の取引記録が各ブロックに含まれており、それぞれが時間順に連結されています。

一度ブロックに記録されたデータは改ざんするのが非常に困難です。

データ改ざんが難しい理由(一例)

  • 分散型ネットワーク
    世界中のコンピューター(ノード)が運営しており、各ノードがブロックチェーンのコピーを持っているため、1つのノードが改ざんされても他のノードに影響が出ない
  • ハッシュ値の利用
    →データを変換した不規則な文字列。データが少しでも変わるとハッシュ値も大きく変わるため、改ざんを検出できる
  • コンセンサスメカニズム(プルーフ・オブ・ワーク/PoW)
    新しいブロックを生成するのは計算の難易度が非常に高い上に、ブロックを追加するにはネットワークの大部分の合意が必要

1つのデータを改ざんするためには、連なる全てのブロックを改ざんしないといけないんだ。

ビットコインは他にも複数の技術が組み合わせられていて、改ざんは限りなく困難と言えるよ。

バッジャー君
フィアット

誰かが勝手に取引の記録を書き換えることはできない仕組みなんだね!

取引が公開されている

取引が公開されている

ビットコインのネットワークでは全ての取引が公開されており、インターネットに接続できる環境があれば誰でも閲覧可能です。
過去の取引を追跡できる透明性があり、従来の金融システムとは異なる特徴と言えます。

公開される取引内容は送金元と送金先のアドレス、送金額や送金日時で、個人名が表示されることはありません

フィアット

取引が公開されることで、どんなメリットがあるんだろう?

例えば、自分が被災地に寄付したビットコインが、目的地のウォレットアドレスに届いているかを確認できるし、送り先のアドレスがビットコインを移動する様子も確認できるよ。

また、従来の金融システムで起こり得る「中央集権的な管理者による勝手な流用や不正利用」も防げるんだ。

バッジャー君

【図解】ビットコインのマイニングの仕組み

【図解】ビットコインのマイニングの仕組み
フィアット

ビットコインには「マイニング」という仕組みがあると聞いたけど…。

マイニングをざっくり言うと、ビットコインのネットワーク上で行われる取引を確認して、ブロックチェーンに正しく書き込むことだよ。

マイニングに参加する人々は「マイナー」と呼ばれていて、ビットコインネットワークの安全性を保つ役割を果たしているんだ。

バッジャー君

最初に承認したマイナーが報酬をもらえる

ビットコインのマイニングとは

マイニングを行うマイナーは、高い計算能力を持つコンピュータを使ってマイニングをします。
ブロック中のナンスを変更しながらハッシュ計算を繰り返し、最初にターゲット以下のハッシュ値を見つけたマイナーは、ブロックをブロックチェーンに追加します。

※ナンス:一度だけ使われる数
※ハッシュ値:作成したブロックを元にハッシュ計算して得られる不規則な値

その報酬として得られるのが、新しく生成されたビットコインや取引手数料分のビットコインです。
報酬システムがあることで、マイナーがビットコインネットワークに貢献する動機(インセンティブ)が生まれ、ネットワークの安全が保たれます

マイニングの流れ

  • 取引の収集
    →ネットワーク上で行われた未確認の取引を集める
  • 取引の検証
    →送金元が十分なビットコインを持っているか、以前に同じビットコインが使われていないかなどを検証
  • ブロックの形成
    →検証した取引をデータの塊としてまとめる
  • ブロックをブロックチェーンに追加
    →条件に合った数値を見つけるまで大量に計算し続ける
    ※最初に数値を見つけたマイナーは、新しく生成されたビットコインや取引手数料を受け取れる
フィアット

マイニングは、1日に何度も行われているのかな?

10分に1回のペースで新しいブロックが生まれているよ。

1日に約144ブロックが生成される計算だね。

バッジャー君

発行上限は2100万枚

発行上限は2100万枚

ビットコインにはあらかじめ発行上限が設けられており、2100万枚を超えるビットコインが作られることはありません。
発行上限があるため、法定通貨で見られる過剰発行によるインフレ(通貨の価値が下がること)を抑えられます

発行量に上限があるので金のような希少性を持ち、価値が保たれると考えられています。

フィアット

でも、マイナーは新しく生成されるビットコインがあるからマイニングをするんだよね?

発行上限いっぱいになったら、誰もマイニングをしなくなる可能性もあるのかな。

2100万枚に達した後も、マイナーは取引手数料による報酬を得られるよ。

将来的にビットコインの使用が増えて、取引手数料の総額が増えれば、マイニングを行うのに十分な動機が保たれるかもしれないね。

バッジャー君
フィアット

ふむふむ。ちなみに、ビットコインは今どれくらい発行されているの?

すでに1900万枚以上が発行されているよ。

バッジャー君
フィアット

え!もう大半が発行されているんだね。

じゃあ、もうすぐ新しいビットコインの発行は終わっちゃうのかな?

半減期ごとに発行ペースが減る

半減期ごとに発行ペースが減る

ビットコインには、新規発行のペースが減少する「半減期」が設けられています。
ビットコインの半減期が訪れると、新しいビットコインが作られるペースが半分になる仕組みです。

半減期は約4年ごとに訪れており、自動的に発生するように設計されています。

半減期による影響

  • インフレの防止
    →新しいビットコインの発行ペースが徐々に減り、通貨の価値が長期的に安定する
  • マイナーへの影響
    →マイニングによる報酬が半分に減るため、マイニングを撤退するマイナーが増える可能性がある
    →「マイナーが保有中のビットコインを売却することで、ビットコインの価格に影響が出る」と考える人もいる
  • 市場への影響
    →ビットコインの供給量が減るため、「希少性が上がるため価格に影響が出る」と考える人もいる
フィアット

最初はマイニング報酬が50BTCで、半減期を迎えるたびに報酬が減っているんだね。

2024年の半減期を迎えたら、マイニング報酬は3.125BTCになるってことかぁ。

ちなみに、最後のビットコイン半減期は2140年頃だと予想されているよ。

ビットコインは全部で33回の半減期を迎えるんだ。

バッジャー君
フィアット

2140年!長い時間をかけて、残りのビットコインが少しずつ生成されるんだね。

【中級者向け】ビットコインの仕組みを深掘り

【中級者向け】ビットコインの仕組みを深掘り
フィアット

ビットコインの仕組みについて、もう少し深く知りたいな。

ここからは、ビットコインの有識者である大石哲之氏の著書「ビットコインはどのようにして動いているのか?」を参考に、できるだけ分かりやすく解説するよ。

バッジャー君

ビザンチン将軍問題

これまでのコンピュータサイエンスにおいて、非中央集権型のネットワークの開発に立ちはだかっていたのは「ビザンチン将軍問題」でした。
ビザンチン将軍問題とは、「中央管理者がいないシステムで1つの合意をしようと思った時に、嘘の情報を流す人がいると正しく合意形成ができない」という状態を指しています。

中央管理者がいる場合、嘘の情報が流れても管理者が対応できますが、中央管理者不在の場合はそうもいきません。
しかし、ビットコインは現実的・実用的な仕組みでビザンチン将軍問題の解決方法を示しています。

ビザンチン将軍問題

ビザンチン将軍問題(例題)

  • 5人の武将がおり、外国の侵略に対して「攻撃」「防御」のどちらを行うかを多数決で意思決定する
  • 足並みがそろわないと外国に侵略される
  • 全員で顔を合わせて多数決はできない
  • 自分の意思を伝令で伝えたり、他の武将の意思を伝令から聞いたりできる

☆5人の中には敵国に買収された裏切者がおり、多数決の混乱を企てている

上記画像の場合、裏切者のEは

・攻撃派のA・B宛ての伝令→「Eは攻撃派」
・防御派のC・D宛ての伝令→「Eは防御派」

と伝えたんだ。

攻撃派のAとBは、「Eが攻撃派だからA・B・Eの3人で多数になるから、攻撃に決まりだな」と騙されてしまい、AとBだけが出陣してしまったんだ。

バッジャー君
フィアット

うーん、裏切者がいる状態で、顔も合わせずに正しく多数決をとることなんてできるのかな?

絶対的な中央のリーダーというか、運営元がいないとダメな気がするけど。

難しいように思えるけど、解決策はあるよ。

他の武将の意思を聞いたうえで、今度は、「誰が何を言っていたか」という情報を交換し合うんだ。

例えば、武将Aは「A・B・Eは攻撃派、C・Dは防御派」という情報を他の武将に伝える感じだね。

バッジャー君
フィアット

確かに、その方法なら裏切者Eがおかしなことを言っているって分かりそうだね!

でも、この話がビットコインとどうつながってくるのかな?

今度は、武将をコンピュータに置き換えて考えてみよう。

中央の管理システムがない場合、悪意を持ったコンピュータがいると、「二重支払い」などの問題が発生するんだ。

バッジャー君

二重支払い問題

二重支払い問題

悪意のあるコンピュータによるウソの典型例は「二重支払い」です。

例えば送り主A(所持金:1BTC)が、以下のような行動をとっている状態が挙げられます。

「俺Aだけど、今から1BTCをBさんに送るね」

「俺Aだけど、今から1BTCをCさんに送るね」

フィアット

1BTCしか持っていないのに、コンピュータの情報を改ざんして同じ支払いを2回しているんだね!

さっきの武将の例と違って、実際のコンピュータは通信が途切れることもあるし、参加するコンピュータの数も膨大だし、どうすればいいんだろう。

デジタル通貨においては、中央管理者がいないと二重支払いを防ぐのは難しいと考えられていたよ。

だけど、ビットコインの仕組みなら、世界中のコンピュータ間でたった1つの正しい合意ができるんだ。

バッジャー君

二重支払いを防ぐ方法

二重支払いを防ぐ方法

ビットコインは過去の記録を全て記録した巨大なデータベース(ブロックチェーン)を参照し、二重支払いがないか確認しています。

ブロックチェーンには全てのコンピュータが行った全ての取引が記録されており、過去の取引と矛盾がないかどうか突き合わせを行っています。

フィアット

なあんだ、データベースを作っておけばいいんだね、簡単じゃん。

…あれ?でも管理者がいないのに、そんなデータベースをどうやって作るんだろう?

それぞれのコンピュータが、自分のところにデータベースのコピーを持っておき、それぞれをメンテするんだよ。

バッジャー君
フィアット

そんなことできるの?それぞれが持つデータベースの内容が同じになるなんて、誰が保証できるんだろう。

それに、誰がどんな権限を持って、データベースを更新するの?しかも、ウソが含まれちゃうかもしれないよ?

すべてのコンピュータが共同して、ビザンチン将軍問題の「合意」ができれば、合意がデータベースになるよ。

合意のデータを作るために、「マイニング」が重要な役割を果たすんだ。

バッジャー君

【仕組みを深掘り】ビットコインのブロックチェーンを維持する方法

【仕組みを深掘り】ビットコインのブロックチェーンを維持する方法
フィアット

ビットコインの巨大なデータベース(ブロックチェーン)はどんな仕組みで動いているのかな?

全てのコンピュータが合意できる、唯一のデータベースなんだよね?

専門用語が入るからちょっと難しいんだけど、できるだけかみ砕いて説明するよ。

まずはマイニングを深く知るのに欠かせない「ハッシュ関数」から説明させてね。

バッジャー君

ハッシュ関数

ハッシュ関数

ハッシュ関数とは「入力されたデータを、決まった長さの不規則な文字列で返す関数」のことで、ビットコインの仕組みに大きく関わっています。

ハッシュ関数

  • 決まった長さの出力(ハッシュ値)を返す
  • 同じ入力を入れると同じ出力が出てくる。誰が入れても同じ
  • 違う入力を入れると違う出力が出てくる。違う入力から同じハッシュ値はできない
  • ハッシュ値をもとに、何が入力されていたかを推測するのは困難(何兆分の1とか、そういうレベルでは全く表せないくらい難しい)
フィアット

謎の文字列のハッシュ値から、元々の入力にたどり着くのは天文学的に無理!って感じなんだね。

次に、ビットコインがハッシュ関数の性質を使って、改ざんできないデータの連鎖を作っている仕組みを見てみよう。

バッジャー君

ハッシュ値の仕組みで改ざんを防ぐ

ハッシュ値の計算を大変なものにする(PoWの導入)

ブロックチェーンが絶対に改ざんされないように、ハッシュ関数を間に挟むことでブロック同士を強烈に関連付けさせます

ブロックチェーンの仕組みの考え方

  • ブロック1の取引データをまとめて、ハッシュ関数に入れて、ハッシュ値を得る
  • 直前のブロック1のハッシュ値と、ブロック2の取引情報を足した物を、ハッシュ関数に入れてハッシュ値を得る
  • 直前のブロック2のハッシュ値と、ブロック3の取引情報を足した物を、ハッシュ関数に入れてハッシュ値を得る
  • ハッシュ値を並べる
フィアット

新しいブロックを作る時に、1つ前のハッシュ値を混ぜ込んでいるんだね!

例えば、ブロック1の取引データをほんの少し改ざんしただけでも、ハッシュ値がまるで変わってしまうんだ。

この仕組みは改ざんに対して驚くほど強い耐性があるんだよ。

バッジャー君
フィアット

でも、1個改ざんしてバレるなら、それ以降も全部改ざんしていけばいいんじゃない?

考案者のサトシナカモトは、さらに巧妙なアイデアを考えたんだ。

改ざんするのにものすごいコンピューターパワーが必要になるように、ハッシュ値の計算を一層大変なものにしたんだよ。

バッジャー君

ハッシュ値の計算を大変なものにする(PoWの導入)

ハッシュ値の計算を大変なものにする(PoWの導入)

ハッシュ値の計算に、さらに骨が折れる仕組みを導入したのがPoW(Proof of Work/仕事の証明)です。

ハッシュ値の計算の時に、nonce(ナンス)というパラメーターを加えています。
ナンスは約43億通りあり、試行錯誤をひたすら繰り返さなければなりません。

そして、先頭にゼロが並んだハッシュ値が得られたら採掘成功です。
約10分に1回ごと、世界中の採掘者が数値を見つけるために一斉に計算を繰り返しており、一番はじめにハッシュ値を見つけた者だけが採掘成功とみなされます。

ビットコインのマイニングに参加する企業は億単位の高性能コンピュータ機器をそろえて参加しているし、電力コストもかかるんだ。

悪意ある人が改ざんし続けるのは、とても現実的ではないんだよ。

バッジャー君
フィアット

計算を大変なものにすることで、ビットコインのデータベースが改ざんされないようにしているんだね!

マイニング(採掘)

マイニング

マイニングを行うマイナーは、大量に0が並ぶハッシュ値が見つかるまで、ひたすらナンスを変えて計算を繰り返し続けます

ブロックの生成

  • 未確認の取引データを検証&ナンスを変更しながらハッシュ値を探す
  • 条件に合ったハッシュ値を最初に見つけた人が、取引データを記載した新しいブロックを作成できる
  • 見つけたハッシュ値を使って、ナンスとハッシュ値を含めたブロック情報を他のコンピュータに通知

※ブロックには、最初に見つけたマイナーのビットコインアドレスにビットコインを送る、という取引記録を含められる

ブロックの情報を受け取ったコンピュータ

  • 直前のブロックと、新しいブロックの情報をもとに、発見されたハッシュ値になるかどうかを検算して確認
  • ブロック内の全ての取引に不正がないかチェック
  • 問題がなければ、コンピュータは自分の保持するブロックチェーン(データベース)の末尾に、新しいブロックを加えて更新する
フィアット

コンピュータそれぞれが新しいブロックを確認して、自分の持っているブロックチェーンを各自で更新しているんだね!

ビットコインでは10分ごとに1ブロックという単位で合意を形成して、非中央集権のデータベースを維持しているんだ。

バッジャー君

悪意あるブロックができた場合

悪意あるブロックができた場合
フィアット

でも、もし新しいブロックに問題があったらどうなるんだろう?

不正な取引が含まれるブロックだった場合は、ネットワークの合意とはみなさず取り込まないよ。

バッジャー君

仮に悪意ある人がネットワークの混乱を狙い、おかしな取引を含むブロックを作成しようとすると、悪意あるブロックと正しいブロックが2つできることになります。

分岐して存在する2つのブロックのうち、正しいブロックだけがブロックチェーンに追加され、ネットワークが自動的に長くなる仕組みです。

悪事を働き続けるには、採掘全体の計算量のうち51%以上の計算力を確保し続ける必要があるんだ。

今現在、全世界の採掘に掛けられている計算力は途方もない量になっているから、51%の計算力を用意するのはとても現実的ではないんだよ。

バッジャー君
フィアット

もし乗っ取りに成功したとしても、そんなことしたらみんなビットコインを信用しなくなっちゃうし、ビットコインの価値がなくなっちゃうかもしれないね。

ものすごく大変な労力や費用をかけて悪事を働くくらいなら、その力を使ってマイニングした方が良さそうって思っちゃうな。

今回紹介した内容はビットコインのほんの一部の仕組みをざっくりと解説したものであり、ビットコイン上級者の方には物足りない内容かと思いますが、何卒ご容赦頂ければ幸いです。

【まとめ】ビットコインの仕組み【漫画&図解で解説】

【まとめ】ビットコインの仕組み【漫画&図解で解説】

ビットコインの仕組み・ポイントまとめ

  • 中央管理者が存在しない分散型ネットワーク
  • 改ざんが難しいブロックチェーン技術
  • マイニングによってビットコインのネットワークが保たれている
フィアット

ビットコインには「ビットコイン株式会社」とかがあるんじゃなくて、世界中の人や団体が自由に運営に参加できる「分散型のネットワーク」なんだね!

取引データを改ざんするのが非常に難しい上に、取引自体が世界中に公開されている仕組みなんだ。

今までの法定通貨にはなかった、新しい性質を持った通貨だよ。

バッジャー君
フィアット

ビットコインって何だか難しそうだし、よく分からないから何となく不安だったけど、他にも色々知りたいなって思ったよ。

ビットコインについて、もっと知っとこ!

Sigeru Minami

執筆者:Shigeru Minami

「知っとこ!ビットコイン図鑑」制作者。
ビットコイングッズのハンドメイド作家として活動中。

-ビットコインの技術