ブロックチェーンの課題と可能性~BBc-1(Beyond Blockchain One)から学ぶブロックチェーン開発

第1回 ブロックチェーンを取り巻く現状と課題

この記事を読むのに必要な時間:およそ 3 分

(2)存在性の証明

次に「過去にあったトランザクションの証拠を抹消できず,かつ,過去になかったトランザクションの証拠を捏造できない」ことが必要になります。このことは,デジタル署名だけでは実現できません。記録が署名ごと消される場合も想定されるからです。

ビットコインでは,ブロックのダイジェストを次に続くブロックの中に埋め込むという「ハッシュチェーン」の構造に加え,⁠プルーフ・オブ・ワーク(proof-of-work,POW;作業証明⁠⁠」によって存在性の証明を実現しています。すなわち,ブロックのダイジェストには規定以下の数値でなければならないという条件を付してあります。暗号学的ハッシュ関数によって求められるダイジェストは,元のデータが1ビットでも違うと全然違う値になりますが,元のデータをどう構成すればどのようなダイジェストの値を求められるかは一切分かりません。ダイジェストの規定値が小さければ小さいほど,その分条件を満たすために莫大な回数の試行をしなければならなくなります。過去のデータを改変すると,積み上がった作業証明と同じだけの計算コストをかけてダイジェストを求め直さなければならないので,過去に遡れば遡るほど改ざんが困難になるというわけです。

とはいえ,ダイジェストは誰でも計算できるので,こうした方法では,実は必要な計算力さえ入手できれば,誰でも改ざんが可能だということがいえます。

(3)唯一性の合意

ブロックチェーンを誰にも止めさせないためには,参加者の自発的・自律的な動作によって物事が進行するように設計する必要があります。すると,時によって互いに矛盾する2つのトランザクションが同時に投入されてしまうようなことも起き得ます。

このことに対して,⁠矛盾する2つのトランザクションが投入された場合,⁠いずれ)関与する全員が同じ片方を選んで歴史の中に位置づける」機能が必要となります。

括弧書きで「いずれ」とあるのは,ブロックチェーンで採用されている「ナカモト・コンセンサス⁠⁠,すなわち,作業証明のコストが最も多く払われている歴史を有効とする(典型的には最も長いハッシュチェーンを選ぶことになる⁠⁠,という仕組みが実時間では動作しないからですし,また,いつでも合意が覆りうるためです。ナカモト・コンセンサスは,不特定多数による合意の実現という,原理的には不可能なことに対する現実的な解といえます。しかし,不可能に対して挑戦するような設計そのものを見直す必要があるのではないかと私は感じています。

表1にビットコインの場合の機能階層を整理してみました。

表1 ビットコインの場合の機能階層

機能実現の仕方
唯一性の合意ナカモト・コンセンサス
存在性の証明作業証明付きハッシュチェーン
正当性の保証UTXO構造

ブロックチェーンの課題

では,このように設計されているブロックチェーンの課題には,どんなものがあるのでしょうか。

使用されている暗号技術が技術の発展に伴って古くなり,強度が相対的に下がってしまう,という点はよく指摘されます。それは確かに大きな問題でしょう。とはいえ,設計の根本的な考え方を変えずに対処できるので,問題としては本質的ではないようにも思います。

それでは,本質的な課題にはどんなものがあるのでしょうか。次に狭義のブロックチェーンの課題を列挙してみましょう。

(1)実時間性

ビットコインの場合,平均10分に1回の割合でブロックが生成されます。10分が長いことが問題なのではなく,⁠平均」の部分に実時間性の課題があります。3分でブロックができることもあれば,1時間経ってもできないこともあるのです。

(2)秘匿性

不特定の第三者による検証が可能だということは,トランザクションの秘匿性に課題があることを示しています。

(3)スケーラビリティ

ブロックチェーンでは原理的に全員が同じ処理を行うため,参加ノードを増やすことでは要求の拡大に対応できません。

(4)進化のガバナンス

全員が一丸となっていなければならないので,一部で新しいアイデアを試すことができません。となると,実地で新しい仕様をテストしながら技術を進化させることが困難になります。

(5)インセンティブ不整合性

市場で通貨が暴落すると,十分な利益を得られなくなったマイナーが撤退します。マイナーが撤退すると,ブロックチェーンを十分な改ざん耐性をもって維持できなくなりますし,最悪,システムが止まってしまいます。通貨の暴落によりすべてのアプリケーションが止まってしまうのだとすれば,ブロックチェーンを公共性の高い応用に使うことはできません。

プライベートな台帳技術の課題

以上のような狭義のブロックチェーンの課題を解決するために,プライベートなネットワークで台帳を維持するという考え方が生まれ,多くの技術が開発・公開されてきました。しかし,これらの技術については,ブロックチェーンの元々の重要な性質である改ざん耐性が失われているのではないかという疑いの目で見る必要があると思っています。

例えば,プライベートな台帳を設計する際,実時間性の課題に対処するために,ハッシュチェーンの構造は残すとしても,作業証明については省くとします。すると,ダイジェストの連鎖は高速に再計算可能ですので,この仕組みは改ざん可能になってしまいます。

また,作業証明を課したとしても,ネットワークの参加者が少なければ,比較的入手しやすい規模の大きな計算力を得ることで改ざんや意図的な操作が可能になってしまいます。そうした事態は,パブリックなブロックチェーンであるMonacoinなどですら,現実に発生しています。分散台帳は規模が大きいことにより改ざんから守られていますので,規模が小さなプライベートレッジャーで改ざん耐性を実現することは困難だといえます。

次回は,これらの課題に対する私たちの取り組みである,BBc-1(Beyond Blockchain One)について,開発の経緯を紹介します。

著者プロフィール

斉藤賢爾(さいとうけんじ)

1964年京都市生まれ(生まれただけ)。

一般社団法人ビヨンドブロックチェーン代表理事。慶應義塾大学SFC研究所 上席所員・環境情報学部 講師(非常勤)。

2000年よりP2Pやデジタル通貨を含む「インターネットと社会」の研究に従事。30年以内(2048年まで)にこの世から「お金」の概念を消し去ることが当面の目標。

みかんとSFが大好物。

Twitter:https://twitter.com/ks91020