- Published on
ビットコインは、なぜ「無駄な計算」を続けるのか?
- Authors

- Name
- yutaro

Xで、ビットコインの計算能力を紹介する興味深い投稿を見かけました。
その数字は、1秒間に978エクサハッシュ。日本の数え方なら約9.8垓回もの計算です。
あまりに大きな数字で実感が湧きませんが、僕が面白いと思ったのは、その大きさよりも別のことでした。
ビットコインは、これほど膨大な計算で、いったい何をしているのでしょうか。
何も生み出さない計算に意味はあるのか
ビットコインのネットワークでは、世界中の専用コンピューターが、同じ種類の計算を何度も繰り返しています。
新しい薬を開発するわけでも、天気を予測するわけでもありません。ただひたすらに、決められた条件を満たす答えを探しているのです。
しかも、この計算には大量の電力と高価な設備が必要です。「無駄ではないか」と思われているのも無理はないでしょう。
しかしこの計算には、重要な役割があります。
ビットコインの取引記録を、後から簡単に書き換えられないようにすることです。
例えば、銀行の取引記録は銀行が管理しています。僕たちはその記録が正しく保管され、勝手に変更されないことを信用しています。
一方、ビットコインにはすべての取引記録を管理する銀行や運営会社が存在しません。では、誰がその記録を守るのでしょうか。
ビットコインの取引はいくつかまとめられ、帳簿の新しい1ページのように記録されていきます。この帳簿は、世界中の多くのコンピューターがそれぞれ全く同じ写しを持ち、共有しています。
ただし、だからと言って、誰もが好き勝手にページを追加できるわけではありません。新しいページを追加するにはコンピューターで何度も計算を試し、決められた条件に合う答えを見つける必要があります。
具体的には数字を変えながら同じ計算を繰り返し、条件を満たす結果が出るまで挑戦します。答えを見つけるには膨大な回数を試す必要がありますが、見つかった答えと計算に使った数字がほかの参加者に共有されれば、受け取った側は同じ計算を一度行うだけで条件を満たしているか確認できます。
この仕組みを「プルーフ・オブ・ワーク(作業の証明)」と呼びます。
そして、この帳簿にはもう一つ特徴があります。それぞれのページが前のページとつながっていることです。
仮に誰かが過去のページに書かれた取引をこっそり変更したとします。すると、その後のページとのつながりが崩れてしまいます。
そのため、書き換えた記録をほかの参加者に受け入れさせるには、そのページ以降の計算をすべてやり直し、ページ同士をつなぎ直す必要があります。
しかもやり直している間も、ほかのコンピューターは元の帳簿に新しい取引を記録し、ページを増やし続けています。
つまり過去の記録を書き換えるには、膨大な計算をやり直したうえで、増え続ける元の帳簿に追いつく必要があるのです。
巨大な数字だけでは語れない強さ
もちろん、これで不正が絶対に不可能になるわけではありません。
特定の主体がネットワーク全体の計算能力の過半数を握ると、過去の取引を覆す攻撃がしやすくなります。いわゆる「51%攻撃」です。
ただし特定の主体が膨大な計算能力を持っていたとしても、何でもできるわけではありません。
なぜなら、取引の記録が共通のルールに従っているかを、それぞれの参加者が独立して確認しているからです。いくら大量の計算をしても、ルールに違反した記録まで正しいものとして認めさせることはできません。
こうして膨大な計算によって記録の書き換えを難しくし、共通のルールによって不正な記録を受け入れない仕組みが成り立っています。
誰かが「この記録は正しい」と約束する代わりに、記録を不正に書き換えようとする人に対して、現実の設備、電力、そして時間という負担を求める。
ビットコインは、デジタルの世界の取引履歴を、現実の物理的なコストと結び付けました。
膨大な計算の答えそのものに価値があるのではありません。その答えを見つけるために、膨大な労力が必要であることに意味があるのです。
僕はそこにこそ、ビットコインのネットワークの強さがあると思っています。