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

第17回 ブロックチェーンの本質的価値を改めて考える

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

前回まで,BBc-1のメイン開発者である久保健氏による詳細な解説を行ってきました。ここで,連載の最終回として再び私にバトンが渡されることになりました。

2019年1月で,Bitcoinの稼働から10年が経過しました。その間,さまざまな《ブロックチェーン技術》が派生して登場しました。しかし,この連載の初回でも説明を要したように,そもそもブロックチェーンが何のために発明され,本質的には何であるのか,といった基本的な部分の理解に未だ混乱があるようにも思えます。そのためか,市場にあふれる,ブロックチェーンを標榜する技術の多くは,あえて辛辣にいわせていただければ,単に改ざんが多少難しくなっているデータベースに過ぎないようにも見えます。

本連載の締めくくりとなる今回と次回では,現状のブロックチェーン技術が抱える課題をもう一度改めて明らかにしつつ,その解決・解消に向けた次世代の取り組みをいくつか簡単に紹介します。

Bitcoinが解こうしている問題とは

さて,そもそも,ブロックチェーンが本質的には何であり,どのような機能的な役割を担っているかを正確に捉えなければ,課題を正しく把握することすらできません。短距離走者にとって,長距離を速く走れないことは課題ではないように,役割や機能に照らして初めて課題は課題として意味を持つからです。

もう一度,ブロックチェーンの始祖であるBitcoinに立ち返ってみましょう。この技術は,どんな問題を解こうとしたのでしょうか。できあがっている技術とその運用上の考え方から逆算すると,Bitcoinは「自分が持っている金銭的資産を自由に誰かに送ることを誰にも止めさせない」ために開発されたと考えられます。

資産を持つ本人であることの確認を特定の第三者に委ねると,その第三者により本人であることを否定される恐れがあります。送金の事実についても同様に,特定の第三者が確認や承認をする仕組みにしていると,資産を送ったことがその第三者により否定されかねません。これらの恐れを避けるためには,次の2点が実現される必要があります。

  1. 送金元がその資産を持つ本人だと誰もが確認できること
  2. ひとたびシステムに送金の事実が投入・記録されたら,その記録が覆っていないことを誰もが確認できること

ブロックチェーンは,これら双方を実現するべく,デジタル署名されたトランザクションが特定の過去※1に揺るぎなく位置づけられていることが,参加する全員にとって証明可能になることを目指して設計されたと考えられます。そのためには,誰もが本人の正しい公開鍵を持っていることが前提になるため,Bitcoinをはじめとする多くのブロックチェーンでは,公開鍵に暗号学的ハッシュ関数を適用して得られたダイジェスト(の文字列表現)がアカウントの識別子となっているわけです。そうした設計の問題点は第1回で指摘しました。

そのように設計されるブロックチェーンないし同様な目的をもつ台帳技術が,どのような機能の階層を満たすべきか,第1回の表1でまとめた内容を,もう一度簡単に振り返ってみましょう。

表1 機能階層とビットコインの場合の実現の仕方

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

まず,システムに投入・記録されるトランザクションは正当である必要があります(正当性の保証)⁠ただし,どういったトランザクションが正当であるかはアプリケーションが決めます。

また,正当なトランザクションが後に抹消されていないことや,正当だがその時点では存在しなかったトランザクションが後に捏造されていないことが確認できなければなりません(存在性の証明)⁠

その上で,矛盾する2つの正当かつ存在を偽装されていないトランザクションが投入された場合は,参加する全員が同じ片方を選んで記録しなければなりません(唯一性の合意)⁠

このうち,正当性を保証したり,唯一性について合意したりする部分は,それぞれ既存の技術で実現できたり,あるいは特別な仕組みとしては不要にできます第2回での「唯一性の合意」についての議論を思いだしてください)⁠一方,存在性を証明することは,証明ではなくシステムの運用者への信用・信頼に頼ってよければ簡単なのですが,既存の技術では困難でした。

※1)
ある絶対的な日時かもしれませんし,ある事象の前/後といった相対的な時間かもしれません。

ブロックチェーンの本質的価値とは

だとすれば,ブロックチェーンの本質的な価値とは,記録が改ざんされていないと証明できることであり,より詳細に述べれば過去に位置づけられたデジタル署名を,何の権威にも依らずに正しいまたは正しくないと証明できることではないでしょうか。この点,連載初回の頃は私も整理が進んでおらず,⁠改ざん耐性」という言葉を曖昧に使っていたと思うので,改めて強調させてください。

大事なのは,改ざんが難しいことではなく,改ざんされていないと(事実上)証明できることなのです。

このことは,従来は困難であり,一般に,過去に施されたとされるデジタル署名を無条件に正しいと見なすことはできません。使われたデジタル署名の手法が技術として時代遅れになったり,秘密鍵が漏洩したりしている場合があるからです。タイムスタンプが偽造可能であることはいうまでもありません。

そうした困難を経ても過去に施された署名を正しいと証明できることはデジタル署名の「経時証明問題」⁠存在の証明問題)として知られています。

また,過去に施されなかった署名が実際に存在しないことや,偽装された過去の署名を正しくないと証明できることは「アリバイ証明問題」⁠非存在の証明問題)として知られています。アリバイ証明問題の方は「無いことを証明」しなければならないので,本質的な難しさを持ちます。

私は,ブロックチェーンを標榜する具体的な技術がこの本質的な価値を満たすものかどうかを判定するために,次のような「遺言書テスト」を提案しています。

「遺言書テスト」とは

あなたのブロックチェーンでは「遺言書」を作れますか?すなわち,本人が生前に署名したままの形で遺言書が保存されていることを,保存しているシステムを信用せずに※2)⁠利害関係のあるすべての相続人に対して証明できますか?

図1 遺言書テスト

図1 遺言書テスト

図1はこの「遺言書テスト※3)⁠を図に描いたものです。この図でいえば,⁠本人が生前に最後に署名した遺言書」として利害関係者(相続人たち)が問い合わせた際に遺言書Aを正しいと確認できることが「経時証明問題」に当たります。また,遺言書Bを正しくないと確認できることや,もし遺言書Aがそもそも存在しなかった場合に遺言書がないことを証明できることが「アリバイ証明問題」に当たります。

読者は,この「遺言書テスト」にはブロックチェーンの特徴としてよく取り沙汰されている「非中央集権」⁠分散」⁠合意」⁠ゼロダウンタイム」⁠セキュア/安全」⁠安価な情報共有」といった要素が入っていないのではないか?という疑問を抱くかもしれません。しかし,このテストに合格するためには,⁠中央」のシステムに信用・信頼を置いてはならないことは明らかです。中央に位置づけられてきた機能の内部で改ざんが行われてないことの「証明」を,外部で行えることが重要だからです。よって「非中央集権」については,本質的なところでこのテストによって試されることになります。

では,上で挙げたその他の要素についてはどうでしょうか。私は,その他の要素については,ブロックチェーンが登場する以前から課題として取り組まれていたり,解決する技術が存在していたりする,という認識が大事だと考えます。

※2)
本人の秘密鍵を取得した悪意がある相続人とシステム運用者が共謀している可能性があるため。
※3)
このテストは,法的に実用的な遺言書を作る目的ではなく,あくまで「思考実験」です。各国の法律上の「遺言書」はさまざまに異なる法的な特徴を持っており,かつ実運用上も揉めることが多く,現実にブロックチェーンで遺言書を実現することは現時点で非常に困難です。また,このテストでは,デジタル署名の検証に関しては,すべての相続人が本人の正しい公開鍵を共有していることを前提とします(こちらはこちらで難しい問題を含んでいます)⁠

著者プロフィール

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

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

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

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

みかんとSFが大好物。

Twitter:https://twitter.com/ks91020