導入
「銀行の残高」は、ふつう銀行のサーバー1か所で管理されています。もしそのサーバーが書き換えられたり止まったりしたら、私たちは残高を証明できません。ブロックチェーンは、この「1か所で管理する」を逆転させ、同じ台帳(記録)を世界中の大勢が全員で持ち合う仕組みです。
説明
台帳(ledger)とは「誰が誰にいくら送ったか」といった取引の記録帳のこと。ふつうのシステムは中央の管理者が1冊だけ持ちます。ブロックチェーンでは、参加者全員が同一の台帳のコピーを持ち、新しい取引はネットワーク全体で共有・検証されます。
graph TB
subgraph central["中央集権型(従来)"]
S[(中央サーバー<br/>台帳は1冊)]
A1[利用者A] --> S
A2[利用者B] --> S
A3[利用者C] --> S
end
subgraph dist["分散型(ブロックチェーン)"]
N1[(ノード1<br/>台帳コピー)] --- N2[(ノード2<br/>台帳コピー)]
N2 --- N3[(ノード3<br/>台帳コピー)]
N3 --- N4[(ノード4<br/>台帳コピー)]
N4 --- N1
N1 --- N3
end
台帳を持つ1台1台のコンピュータを ノード(node) と呼びます。この形にすると、こんな性質が生まれます。
- 改ざんに強い … 1台の台帳を書き換えても、他の大多数と食い違えば「不正」と分かる。多数派の記録が正とみなされる。
- 止まりにくい(ゼロダウンタイム) … 一部のノードが落ちても、他のノードが台帳を持っているのでネットワークは動き続ける。
- 管理者がいらない(非中央集権) … 特定の会社や国に依存せず、ルール(プロトコル)だけで動く。
この「みんなで同じ台帳を検証しながら持ち合う」ことこそ、ブロックチェーンの出発点です。
やってみよう
身の回りの「1か所で管理されているもの」(銀行残高・成績・SNSの投稿)を思い浮かべ、それが「全員でコピーを持ち合う」形になったら何が変わるか(良い点・困る点)を考えてみましょう。