比例道

月に1回更新します

ビットコインの本質と欠点の簡単な解説

ビットコインの解説文書はたくさんあるが、どれもブロックチェインとハッシュの説明に枚数を割きすぎていて、肝心のビットコインの本質が見えにくくなっている。本質が見えにくいので欠点も見えてこない。本稿では、ブロックチェインとハッシュの説明をばっさり削って、ビットコインの本質だけを簡単にしかしていねいに解説したい。そして本質から見えてくるビットコインの欠点についても述べる。

ビットコインの本質を理解するのにブロックチェインの知識は実は必要ない。本質を理解すれば自然にブロックチェインの概念が導き出されるからだ。しかしハッシュの知識は必要だ。ハッシュについて知らない人は、wikipediaや他の文献を参照されたい。wikipediaのハッシュの解説は正確だが分かりにくいので、分からないと思ったら他の文献を探してほしい。きっとあなたにぴったりの分かる文献がネットのどこかにある。

ここからが本論だ。ビットコインを使った取引は、ある量のビットコインの所有権がAさんからBさんへ移ったという情報(この情報を以降は取引情報と呼ぶ)で表される。取引情報が正当なものであることを確かめるために、ハッシュを用いる。取引情報のハッシュ値が事前に定めた規則正しい数字の並びを含んでいる(このことを以降はハッシュ値がきれいと呼ぶ)とき、その取引情報は正当であると確かめられる。取引情報のハッシュ値をそのまま計算したのでは、ハッシュ値はまずきれいにならないので、乱数を取引情報に足してハッシュ値がきれいになるようにする。乱数をうまく探せば、その乱数を足した取引情報のハッシュ値はきれいになる。この乱数を探すことをマイニングと呼ぶ。乱数を探し出したマイナー(マイニングする人)には褒美にビットコインが与えられる。つまり、新規に取引が発生しなければマイニングすることはできない。

ビットコインで不正をしようとする悪者は取引情報を改ざんする。AさんからBさんへ所有権が移ったという取引情報を、Aさんから悪者へ所有権が移ったように変造する。変造したままだとハッシュ値が変わってきれいにならないので、乱数を選びなおしてハッシュ値をきれいにする。元の真正な取引情報の乱数探しは多くのマイナー達が分業して行うが、変造取引情報の乱数探しは悪者のみの手で行わなくてならないので計算量的に困難な作業になる。これで根気のない悪者はふるい落とされる。根気のある悪者は時間をかけて乱数探しを続け、いつかきれいなハッシュ値をもたらす乱数を見つけるかもしれない。しかしそれはビットコインのルール「互いに矛盾する取引情報が複数あったら、最も長い取引情報を真正なものとみなす」ではじかれる。長い取引情報とは何か。実はビットコインは取引の情報を削除するということはせず、最初から現在まで延々記録するのだ。最初のビットコインの持ち主がAさんだとして、それをBさんへ渡すとAさんからBさんへ渡した取引情報が生成される。そのときマイニングが行われ、取引情報のハッシュ値をきれいにする乱数が探し出される。次にBさんがCさんへビットコインを渡すと、先の取引情報にBさんがCさんに渡したという内容を足した取引情報が生成され、それについてもマイニングが行われ、取引情報のハッシュ値をきれいにする新たな乱数が探し出される。そしてCさんからDさんへ、DさんからEさんへと延々取引情報は追加され続け、その都度乱数が探し出される。先の悪者の話に戻ると、悪者はAさんからBさんへ渡したという取引情報をAさんから悪者へ渡したという取引情報に変造して、それを正しいものに見せかける乱数を自ら探し出して変造取引情報を完成させるが、悪者が変造取引情報を完成したころには、真正の取引情報はCさんDさんの辺りか、もっと先の方まで伸びている。なぜなら真正の方はたくさんのマイナーが力を合わせて乱数探しをするので、悪者より速く処理が終わるからだ。真正の方が長いので悪者の変造取引情報は信用されない.このような処理とルールにより、取引情報が次から次へと生成され続ける限り、悪者が不正をするのはとても困難になる。ここまで読んだ人は「ビットコインはよく考えられているなあ」「ビットコインは信用できる」と思うだろう。そして世の中の解説記事はたいていここで終わっている。しかし、事はそう甘くはないのである。

ビットコインには技術的な欠点がひとつ、地球環境に関わる欠点がひとつ、そして道義的な欠点がひとつあるのだ。それぞれ解説しよう。

まず技術的な欠点だが、それは決済のコストがスケーラブルではないので、ビットコインの取引が増えたら、やがて破たんすることである。何か商取引が行われて新たな取引情報が生成されたら、マイニングを行い乱数探しが完了するまで、その取引情報は正当なものと認められないことを思い出して欲しい。今はまだビットコインで決済できる店が少ないし、使う人も少ないので、取引情報の増加率は小さい。今マイニングしているメンバーだけで、なんとか乱数探しが間に合っている。ところがコンビニでビットコインの利用が可能になって、ビットコインの利用者が増えたらどうだろうか。今の何千倍、何万倍という取引情報が発生することになる。それら全てについて乱数探しをするにはマイナーの数が足りない。コンビニでコーヒー1杯買うのに、決済が完了するまでレジの前で5時間待たされるなんてことが普通に起こるようになるのだ。そしてそれは実際に起こった。去年の12月のことだ。まだコンビニで使えるようになってもいないのに、決済に4時間半かかるようになってしまった。これではこの先使い物になるはずがない。

次は地球環境に関わる問題だ。これはもうたいていの人が分かっていると思う。ビットコインの乱数探しのときは、乱数を作っては取引情報のハッシュ値を計算しすることを、きれいなハッシュ値になるまで繰り返す。ハッシュ値の計算はCPUで行うと遅いため、GPUカードを用いる。いちばんよく使われているGPUカードがnVidiaGeForce GTX 1080だ。この消費電力が約180W。個人のマイナーはこのGPUカードを1枚から数十枚使う。組織でマイニングしている場合はこのGPUカードを数千から数万枚使う。1万枚使っているとすると、消費電力は180×10000=1800000W=1800kWだ。巨大なオフィスビルの空調の消費電力を遥かに超える。今世界には組織でマイニングしている連中が数十、個人でマイニングしているマイナーが数万人いる。マイニングにかかる電力は想像を絶する。それらの消費電力は大半が火力発電でまかなわれている。発電の基礎データはココを参照のこと。組織でマイニングしている連中は中国に多く、中国は石炭で発電している。こんなことをしたら地球温暖化を助長するだけだ。それなのに巷のパソコン雑誌には個人でのマイニングを勧めるような記事が氾濫している。なんと無責任なことだろうか。

最後に道義的な欠点だ。ビットコインの発案者サトシ・ナカモトを始め、仮想通貨の発案者は、仮想通貨を社会に発表する前に、自分の分をしこたまため込んでから行うのだ。社会に発表した後、仮想通貨が実際の通貨に変換できるようになったら、しこたまため込んだ自分の分を現金に変えてしまう。どれだけ自分の分をためこんでおくかは発案者の自由だ。こんなことが許されて、まともな経済活動と言えるだろうか。小学生でも分かる。「まともな訳ないだろう」と。

欠点だけ挙げて、建設的な意見を言わないのは私の主義に反するので、どうしたら良いかは言っておく。道義的な欠点は、仮想通貨の発行を公正でオープンな機関が行えば解決できるだろう。しかし、公正でオープンな機関というのはそうそうない。国の政府であっても、中国政府とかだったら、自分の分をしこたまため込んでから仮想通貨を発行することを平気でしてしまう。信用できるのは日本政府とか欧州の政府とか米国政府くらいか。技術的な欠点と地球環境的な欠点を解決するのははっきり言って難しい。ビットコインのセキュリティはマイニングに時間がかかることに依存しているからだ。マイニングを軽くしてしまうと、不正をする機会を増やしてしまう。消費電力を少なくするためにマイニングのアルゴリズムを軽くしても同じことが起こる。かなり大きな技術的ブレイクスルーがないと解決は難しいだろう。

現在は上に挙げたような状況なので、ビットコインや仮想通貨への正しい対応は「しばらく関わらない」というのが正しい。道義的な問題があるのだから、マイニングに個人が手を出すのもお勧めできない。悪党に手を貸すのと同じだからだ。