日本取引所グループのブロックチェーン実証実験にみる先駆者の悩みと「インピーダンス・ミスマッチ」

zu1

性能は低くないが、取引所の基幹系には足りず

日本取引所グループは、2種類のブロックチェーン技術(分散型台帳技術)を評価した報告書を2016年8月30日に公開しました(プレスリリース、報告書PDF)。証券取引所へのブロックチェーン技術の適用の可能性について専門家が検討した内容を25ページにわたり記したものです。

報告書では、証券取引所という複雑で要求が厳しい情報システムの要件とブロックチェーン技術(分散型台帳技術)の現状との間には、ギャップがあることを指摘しています。この報告書からは

従来とは設計思想が異なるインフラを活用するときの不整合、いわば一種の「インピーダンス・ミスマッチ」を読み取ることができると思います。

インピーダンス・ミスマッチという用語の本来の意味は、交流回路でインピーダンスの不整合があると損失が出てしまう現象を指す言葉です。情報システム分野では、オブジェクト指向で設計したプログラムと、リレーショナルモデルに基づくデータベース管理システムとの間の設計思想の不整合と、その結果から生じるプログラミングの手間や処理効率のような何らかのコスト(損失)の比喩業現としてインピーダンス・ミスマッチという言葉を使ってきた経緯があります。今回のコラムでは、オブジェクトモデルとリレーショナルモデルの間の不整合とは異なる種類の不整合について述べていることから、カッコ付きでこの言葉を使っています。

今回の報告書は2件の実証実験をもとにしています。一つはHyperLedger、もう一つはEthereum系のブロックチェーン技術を適用したものです。報告書では主に定性的な所見を記していて、実証実験の内容や実験結果のデータそのものは掲載されていないことには注意が必要です。

下の図は報告書から引用したもので、「金融市場が求めるDLTの構成」(DLT: 分散型台帳技術)と題されています。ビットコインのブロックチェーンと、証券取引所のような金融市場が求める要件との間には乖離があることを示しています。

金融市場が求めるDLTの構成

金融市場が求めるDLTの構成
出展:日本取引所グループ「2種類のブロックチェーン技術(分散型台帳技術)を評価した報告書

一方、下の表はブロックチェーン技術/分散型台帳技術のメリットを考察したもので、「クライアントサーバ型のITシステムとDLTのコスト比較」と題されています。アプリケーション開発コストの差は大きな差がありませんが、ハードウェアと商用ソフトウェアパッケージの購入費、保守コストを削減できる可能性があると結論づけています。

クライアントサーバ型のITシステムとDLTのコスト比較

クライアントサーバ型のITシステムとDLTのコスト比較
出展:日本取引所グループ「2種類のブロックチェーン技術(分散型台帳技術)を評価した報告書

報告書の中で筆者の目にとまった不整合、「インピーダンス・ミスマッチ」を挙げると、性能、管理者ノードの存在、ファイナリティをめぐる議論、改ざん不可能性をめぐる議論、スマートコントラクトの扱い、といったところが目につきます。今回のコラムでは性能、管理者ノードの存在、ファイナリティの3項目について記します。

性能に関しては「ハイトラフィックテストを実施したところ、秒間で数十〜百件程度のスループットが上限になった」と記しています。この数字は、おそらく大多数のトランザクション処理システムの要件を満たすはずです。

例えば以前のコラム記事住信SBIネット銀行のブロックチェーン実証実験でわかったこととは?で紹介した住信SBIネット銀行による実証実験では「1時間あたり9万トランザクション」、つまり秒間で平均25トランザクションの性能を確認して

「銀行の基幹系に使える」

と結論付けています。

今回の報告書では、この秒間数十〜数百件程度のスループットでは証券取引所の取引そのものの実装には使えず、ポストトレードでの適用では可能性があると結論づけています。

実のところ、ブロックチェーン上の仮想通貨の取引を扱っている仮想通貨取引所のシステムでも、顧客の注文をさばくのは従来型の情報システムです。ブロックチェーンの外側の取引なので「オフチェーン取引」と呼びます。取引所ごとの独自の情報システムがオフチェーンで顧客の注文を受け付け、その結果をある時間間隔でブロックチェーンと同期させているのが、仮想通貨取引所の仕組みです。

ブロックチェーンは価値を記録して公知にするために作られた仕組みであって、高頻度の取引の処理のために作られたわけではありません。非常にハイトラフィックなシステムをつくる場合には、オフチェーンの情報システムとブロックチェーンを組み合わせる設計に落ち着くものと予想されます。

管理者ノードを設けるか否か

報告書ではアクセス制御や管理者ノードの必要性について触れています。システム運用では「誰かが監督責任を取らなければならず、その責任を果たすにはシステムに対して特権的な存在(管理者)が必要である」という考え方が、常識としてあります。

この常識は、ビットコインのブロックチェーンには当てはまりません。ビットコインを筆頭とする仮想通貨テクノロジーでは、特定の人間や組織が特権的な権限を有していないことが、そのテクノロジーが支持される大きな理由になっているのです。

とはいうものの、エンタープライズ用途に向けて開発されたブロックチェーン技術では、特権モードの管理者やノードのような存在を求められる可能性は高いと言えます。「管理者ノードに対する考え方」は、ブロックチェーンの情報システム活用では大きなチェックポイントの一つになるでしょう

ファイナリティを技術面と業務面に分けて議論

ファイナリティは議論が多い分野です。技術的な議論として、ビットコインのようなPoW(Proof of Work)に基づくブロックチェーンの場合、チェーンの分岐(フォーク)の可能性は時間とともに確率ゼロに向かって急速に収束していきますが、しかしながら厳密に確率ゼロになることはありません。このことを指して、決済の結果が厳密に確定しているとは言えないという指摘があります(以前のコラム記事「7年間無停止運転の実績と“ゆるさ”が共存しているブロックチェーン」参照)。

今回の報告書では、合意形成アルゴリズムとしてビットコインが用いるPoW(Proof of Work)ではなく、分散システム向けに開発されたPBFT(Practical Byzantine Fault Tolerance)を用いることでシステムを高速にでき、かつファイナリティを確保できるとしています。

ファイナリティの議論には、純粋に技術的な議論と、資金決済の業務との整合性の観点で見た議論とがありますが、今回の報告書では両者をきちんと分離して議論しています。報告書には資金決済の業務に求められるファイナリティとブロックチェーンの特性がうまく噛み合うようにするためのアイデアを複数記しています。こうしたアイデアの指摘は貴重だと思います。ブロックチェーン技術を業務に適用した情報システムをつくる上では、こうしたアイデアを考えて評価し、うまくいくパターン発見していく試行錯誤が必要になるでしょう。

不整合をどう乗り越えるか

新技術、特に汎用技術として登場した新技術と、既存システムの要件との間で起こる不整合は、実は珍しいことではありません。

リレーショナルモデルに基づくデータベース管理システム(リレーショナルデータベース)は、いまでこそ情報システムでは当たり前のように使われている技術ですが、登場した頃には「リレーショナルデータベースは基幹業務ではなく、情報分析用としての可能性がある」といった見方が主流でした。情報システム産業がリレーショナルデータベースを使いこなすようになるまでには、10年以上の歳月が必要でした。

リレーショナルデータベースが現在の地位を得た背景には、プロダクトの機能強化やコンピュータの性能向上もありますが、開発者人口の増加、それに利用技術の普及が大きかったと思います。リレーショナルデータベースを用いた設計のパターンが見出されて普及するまでには、長年にわたる人々の努力が必要だったのです。

ブロックチェーン技術を使いこなすには、おそらく「ブロックチェーンに欠けている機能を強化したプロダクトをつくる」というアプローチだけでは難しいだろうと想像しています。開発者人口の増加と熟練、設計パターンの発見と定着、こうしたプロセスが必要になるのではないでしょうか。

報告書でも、内容は「あくまで現時点のもの」であり、将来的な技術革新や利用技術の進展で状況が変わる可能性があることにも触れています。最新のブロックチェーン技術に取り組み、現状の情報システムとブロックチェーンの現時点における「インピーダンス・ミスマッチ」を具体的に指摘してくれた報告書の作者たちに敬意を表したいと思います。