イベントレポート

企業での活用も進む「新たなブロックチェーン」BBc-1 Core v1.0を公開 ~設計思想を一新してゼロベースで再構築

「BBc-1」完成記念発表会

 一般社団法人ビヨンドブロックチェーンは、5月22日に新たなブロックチェーン/分散型台帳技術である「BBc-1」(Beyond Blockchain One)の正式版(v1.0)を公開した。GitHub上でBBc-1のドキュメントとソースコードを入手できる。公開したBBc-1 Core v1.0は、BBc-1で定義したプロトコルのPython3による参照実装との位置付けである。オープンソースの流儀に従い、同じプロトコルの別の実装を作ることは自由だ。

 BBc-1をざっくり説明すると「ゼロから設計することで、現行ブロックチェーンの欠点を解消する」ことを目指した技術といえる。発表文では「プライベート型ブロックチェーンとパブリック型ブロックチェーンの双方の良さを合わせ持つ『ハイブリッド型』の次世代ブロックチェーン技術である」と述べる。

 BBc-1はすでに実ビジネスへの応用が進んでいる。5月22日に開催した発表会では、ビヨンドブロックチェーン代表理事の斉藤 賢爾氏および同理事で中心的な開発者である久保 健氏からの説明があり、デンソー、MUSCATスペース・エンジニアリング、アイネス総合研究所、横河電機、ゼタントらによる取り組みが進んでいることを紹介した。

ブロックチェーンの欠点を解消

 BBc-1と、Bitcoin(以下、ビットコイン)に起源をもつブロックチェーン技術との共通点は、P2Pネットワークを使うことと、電子署名によりトランザクションを検証する考え方だ。両者の違いは、ビットコインが採用した合意形成の仕組みである作業証明(Proof of Work)とナカモト・コンセンサスとは全く異なる仕組みで合意を実現することである。これにより従来のブロックチェーンの大きな特徴である「耐改ざん性」を実現でき、かつ弱点を解消できたとする。

 発表会で、代表理事の斉藤 賢爾氏はビットコインに代表されるパブリック型ブロックチェーンの課題として以下の点を挙げた。


    (a)実時間性/ファイナリティの欠如
    (b)情報の秘匿性の欠如
    (c)複数のステークホルダーが同時に合意しないとプロトコルを改訂できないというガバナンスの困難
    (d)ネイティブ通貨暴落によるシステム機能不全の懸念

 これらの課題をBBc-1では解決できたとする。なお、このようなブロックチェーン技術への問題意識については、斉藤 賢爾氏の著作『信用の新世紀 ブロックチェーン後の未来』(インプレスR&D)に詳しい。

 BBc-1で取り入れた新たな概念は、(1)ドメイン、(2)履歴交差、(3)署名要求(Sign Request)による合意、(4)関係性の表現、の各種である。以下、GitHubで公開するドキュメント「BBc-1 design document revision 1」からの引用(カギカッコ内)と、その補足というかたちで説明する。

 (1)のドメインとは「トランザクションやアセットの情報を共有する範囲」。BBc-1では複数のドメインが存在することを前提としている。ドメインは複数のノードから成るP2Pネットワークにより構成する。企業、団体、コンソーシアムのようなある目的を持った運営主体を想定した概念である。この点でプライベート型ブロックチェーン、コンソーシアム型ブロックチェーンと類似した概念といえる。

 (2)の履歴交差とは「あるドメインで登録されたトランザクションの識別子を、別のドメインのトランザクションに埋め込むことで、外部ドメイン(利害関係がないことが望ましい)にトランザクションの存在を証明してもらう考え方」である。

 説明会では、以下のような例えで履歴交差について説明した。ビットコインでは、トランザクションを誰でも閲覧できるブロックに情報を格納することで公知のものとし、二重送金を防ぐ。このやり方を、情報を公開するという意味で「新聞モデル」と呼ぶ。これに対してプライベート型ブロックチェーンは「社内報モデル」といえる。これらと比較して履歴交差を「文献モデル/古文書モデル」と呼んでいる。学術論文ではリファレンス(参考文献)というポインターで相互に参照し合い、互いの存在を証明している。また古文書も、過去の文書の引用、参照によりその存在を確認する。同様にBBc-1のトランザクションは別のドメインの別のトランザクションへのハッシュポインターが埋め込まれていて、相互に存在証明のために使われる。

 なお、履歴交差はBBc-1の複数のドメインの間で確認し合うことを想定した考え方だが、立ち上げの段階ではBBc-1のドメインが多数の中から選べる状態ではない。そこで、初期段階ではビットコインおよびEthereumのパブリック型ブロックチェーンを履歴交差のために利用する。

 (3)の署名要求による合意とは、トランザクションの関係者が署名することで合意する仕組みを提供するというもの。例えばAからBへの送金トランザクションについて、トークン発行者、A、Bの全員が署名するよう設計できる。利害関係者が、それぞれの「責任を果たす」プロトコルを目指す。発表会では、開発者の久保氏は「多大なコストをかけてマイニングをする必要はなく、正しく処理しないと損をする人(責任を負うべき人=契約の当事者)が正しさを検証すればいい」と説明した。

 ラフな例え話をするなら、今の仮想通貨分野で取り組みが進んでいるアトミックスワップ、つまり当事者同士の合意に基づく価値移転の概念を、最も基本的なレイヤーのプロトコルで実現したものといえばいいだろうか。

 (4)の関係性の表現とは、トランザクションに「別のトランザクションへのポインター」が含まれていることをいう。この関係性を使うことでDAG(有向非巡回グラフ)のような複雑な構造を表現できる。関係性を活用することで、利害関係者が複数いる複雑なトランザクションを表現、実現することが可能となるとしている。

 ここまでの説明で分かる読者には分かるだろうが、ビットコインとBBc-1とでは発想がまったく異なる。GitHubで公開された「BBcトラスト──ビヨンドブロックチェーン憲章」と題したドキュメントには、BBc-1は「CUP(未知の参加者との合意問題)を解こうとしない」という印象深い一節がある。斉藤氏は、ビットコインのナカモト・コンセンサス(確率的な合意)では合意が覆る可能性がゼロにならないことから、未知の参加者との合意問題は「解けていない」とする。合意に参加するマイナーの参加、脱退が自由で参加者数が定まらないビットコインのネットワークでは、確定的な(合意が覆る可能性がゼロになる)挙動の合意は理論上、不可能なのだという。

 合意に対する考え方を見ると、BBc-1はビットコインとは立場がまったく異なる技術といえる。ビットコインとは、不特定多数の参加者によるマイニングがネットワークを維持していること、それに合意形成が確率的であることに納得する人々の間で機能する送金プロトコルといえる。その一方、BBc-1とはビットコインの流儀に納得できない参加者であっても利用でき、参加者がそれぞれ自分の責任を果たすことを前提とした分散型台帳を作るためのプロトコルといえるだろう。日本在住の開発者たちから生まれた新たな技術であるBBc-1の今後の展開に注目したい。

星 暁雄

フリーランスITジャーナリスト。最近はブロックチェーン技術と暗号通貨/仮想通貨分野に物書きとして関心を持つ。書いてきた分野はUNIX、半導体、オブジェクト指向言語、Javaテクノロジー、エンタープライズシステム、Android、クラウドサービスなど。イノベーティブなテクノロジーの取材が好物。