カタパルトスープレックス

興味がない人は無理して読まなくていいんだぜ。

ブロックチェーンとエストニアの情報連携基盤『X-Road』の違い

f:id:kazuya_nakamura:20180512101157j:plain

原文:"There is no blockchain technology in the X-Road" by Petteri Kivimäki (Nordic Institute for Interoperability Solutions)

最近、X-Road(エストニアの情報連携基盤*1 )はブロックチェーンを基盤としたテクノロジーだと説明する記事を複数見かけました。または、内部的にブロックチェーンを使っていると。それが事実なのかどうか検証したいと思います。

ブロックチェーンとは

ブロックチェーンは今年の流行語の一つで、テクノロジー分野で最もアツいとされています。ブロックチェーンは2009年に最初の暗号化通貨として立ち上がったビットコインの基盤技術として知られるようになりました。それ以来、ブロックチェーンは暗号化通貨だけでなく、様々なビジネス分野やユースケースに適応されるようになりました。

ブロックチェーンは分散化されたパブリックデータベースで、取引情報をチェーン上に保存して、改ざんから守り、データの整合性を保証します。ブロックチェーンはP2Pネットワークでそれぞれのノード(エンドポイント)は平等で全てのノードの完全なブロックチェーンのコピーが保存されます。ブロックチェーンに保存されたデータはネットワークに参加している続く全てのブロックを変更して複製されない限り、変更することはできません。この仕組みによりブロックチェーンのデータ改ざんは非常に難しいものになっています。

取引データはブロックチェーンにおいてマークル木*2の形式で保存されます。連続するブロックはお互いにリンクされ、チェーンを形成します。それぞれのブロックは、その前のブロックの暗号学的ハッシュを含み、最初のブロックからチェーン上のブロックの順序と整合性を確認することができます。この仕組みにより、チェーン上の取引データの監査と確認をすることができます。

ブロックチェーンは中央集権ではないため、新しいブロックが追加される前に参加するノードの合意が必要となります。これは合意プロトコルまたは合意機構によって行われます。最も一般的な合意機構はProof of Work (PoW) とProof of Stake (PoS)です。

X-Roadとは

X-Roadはオープンソースのデータ連携レイヤーで、組織がインターネット上でデータ連携することを可能にします。X-Roadは中央管理された情報システム間の分散統合レイヤーで安全に標準化されたサービスの提供と消費の方法を提供します。X-Roadはデータ連携をする双方の匿名性、整合性、互換性を保証します。 

サービスプロバイダー(例:基本レジストリ)とそれを消費するコンシューマー(例:Webポータル)のアイデンティティはX-Roadのオペレーターにより集中的に管理され、全てのデータ連携はデータのコンシューマーとプロバイダーの間で直接行われます。データ連携の証拠はデータ連携した双方のローカルストレージに保存されます。第三者はアクセスできません。タイムスタンプと電子署名によってX-Roadからおくらえレウデータの否認不可を保証しています。

X-Roadはバッチ処理による署名とタイムスタンプをサポートしています。バッチ処理による署名は添付を含むメッセージのために作られます。バッチによるタイムスタンプとは最後に作られたタイムスタンプから遡ってバッチ処理によって非同期に作られるタイムスタンプです。バッチ処理によるタイムスタンプはタイムスタンプサービスの負荷を削減するために利用されます。署名とタイムスタンプの両方の機能はマークル木とバッチ中にメッセージをハッシュチェーンを通じてリンクされるメッセージプロセスを元にしています。ハッシュチェーンを使うことで任意のメッセージが特定のバッチ処めいの一部だと確認することができます。しかし、異なるバッチと含まれるメッセージの間にリンクはなく、バッチ処理された全てのメッセージを全てリンクはされていません。

セキュリティーサーバーは全ての署名とタイムスタンプがバッチ処理されたメッセージをメッセージログデータベースに保存します。ログの記録はディスクに定期的に保管され、データベースからは削除されます。メッセージログのアーカイブは以前にアーカイブさたメッセージに依存し、このチェーンは異なるアーカイブファイルに続きます。これによりメッセージログのアーカイブファイルは一つのセキュリティーサーバーにあるメッセージのチェーンを構成します。つまり、メッセージのアーカイブファイルはチェーンを破ることなく変更することができなくなります。

X-Roadはブロックチェーンを基盤としているか?

ブロックチェーンは非中央化された分散データベースで、合意プロトコルを通じて更新されます。ネットワーク上の全てのノードは平等で、データベースの完全なコピーを所持します。データベースに格納されたブロックは暗号学的ハッシュ機能でリンクされます。

X-Roadのセキュリティーサーバーに格納されているメッセージログのアーカイブファイルは一つのセキュリティーサーバーで処理された全てのメッセージを含みます。メッセージは暗号学的ハッシュ機能でリンクされています。ファイルはローカルで保管され、ファイルをホスティングしているサーバーはファイルを作成する必要があります。それぞれのセキュリティーサーバーはそれぞれユニークなメッセージのチェーンを持ちます。それ以外のX-Roadのエコシステムメンバーはファイルにアクセスできません。

ブロックチェーンとX-Roadの共通点はデータをリンクする暗号化ハッシュ機能です。それ以外はあまり共通点はありません。それは目的のユースケースが異なるからです。暗号化ハッシュ機能はブロックチェーンが生まれる前から存在しました。暗号化ハッシュタグをブロックチェーンでもX-Roadでも使っていることで、X-Roadがブロックチェーンを基盤としていることにはなりません。自転車も自動車も車輪があります。しかし自動車が自転車の前にあったからといって、自動車は自転車を元にしていると言いません。ブロックチェーンとX-Roadにも同じことが言えます。

上記からX-Roadはブロックチェーンを基盤としていないと言えますし、内部的にも使っていないと言えます。

解説

この記事はThe Nordic Institute for Interoperability Solutions(略称:NIIS フィンランドとエストニアが共同で設立)がX-Roadとブロックチェーンの違いを解説したものです。

X-Roadはもともとエストニア政府が開発した情報連携プラットフォームで、MITライセンスのもとにオープンソースとして公開されています。海外でも使われていて、2018年2月にはフィンランドのX-RoadとエストニアのX-Roadが接続されました。

この記事にもありますが、X-Roadとブロックチェーンを混同する記事が日本でも見受けられます。確かにエストニアはブロックチェーンの公共サービスへの活用にも積極的ですが、その基幹システムとも言えるX-Roadは違うんですよ。

カタパルトスープレックス なかむらかずや

関連記事