ビットコインSV-マークル証明規格を公表:開発者とユーザーにとっての意義を解説

Alex Speirs 150 x 150
By Jamie McKane Published: 6月 17, 2021
BSV Merkle Proof Standard Published

CoinGeekチューリッヒカンファレンスでの重大発表の一つとして、ビットコインSV技術基準委員会(TSC)よりマークル証明の標準化フォーマットが発表されました。

イベントでのプレゼンテーションで、nChainの最高技術責任者 (CTO)でありTSC議長であるスティーブ・シャダーズ氏とTwo Hop Ventures創設者およびTSC創設メンバーであるアレックス・ファウヴェル氏により、マークル証明標準化フォーマットが公開査読プロセスを終え OpenBSVライセンスのもと公開されたことが発表されました。

これはビットコインSV開発者とユーザーの両方にとっての重大ニュースであり、BSV決済における相互運用性を拡大し、簡易決済検証(SPV)サービスをブロックチェーン上で構築するための安定した信頼性の高いプラットフォームの提供を可能にします。SPVとはビットコインSVの核心的機能にとって不可欠な構成をなすものであり、サトシ・ナカモトによって2008年に発行されたホワイトペーパーで描かれた当初のビットコインに最も近い形のブロックチェーンとなっています。ホワイトペーパーでは、SPVの運用によってユーザーがビットコインのフルノードを用いずとも支払いの受け取りと認証を実行できるものとしています。

技術基準委員会は、成長を続けるビットコインSVエコシステムにおける相互運用の改善を目指し、アプリケーションをまたいで運用できる共通規格の策定に開発者や関係者と取り組んでいます。TSCは規格を定めることはなく、ビットコインSVの相互運用性を高め普及を加速するための技術基準の策定における枠組みとプロセスを提供するのみとなっています。

「TSCの役割は、規格のあり方を決定することではありません。、業界が自ら規格のあり方を決めていくことを支援するために存在しているのです。」とシャダーズ氏は述べています。

マークル証明 の標準化フォーマットは、委員会による全体的かつオープンな標準化プロセスを経て、構想、起稿、内部査読および公開査読を終えて一般での採用に向けて公表されました。

 

マークル証明とSPV上での機能

マークル証明の標準化フォーマットのメリットを理解するには、まず簡易決済検証(SPV)に対してこれが持つデータ構造の重要性を理解する必要があります。SPVは、販売者やユーザーがブロックチェーン全体をダウンロードせずともビットコインSVトランザクションを検証することを可能にします。代わりに、信頼できるノードからそのトランザクションを含むビットコインブロックのブロックヘッダーを受け取ることになります。このブロックヘッダーにはそのブロック内のすべてのトランザクションのハッシュであるマークルルートが含まれています。

ビットコイントランザクションはバイナリーツリーと同様に機能するマークルツリーデータ構造に格納されますが、構造内のリーフは各トランザクションのハッシュで構成され、ツリーのルート(つまりマークルルート)まで各レイヤーの隣接ノードとともにハッシュ化されていきます。したがってマークルルートは、そのビットコインブロック内に格納されているすべてのトランザクションのプルーフを含んでおり、このプルーフおよびトランザクションIDまたはハッシュを用いてブロックチェーン上でのトランザクションの存在を判断できるのです。

この検証における技術的特性は、ビットコインSVのユーザーが他人からのトランザクションを受領するために安全にSPVの「ライトノード」を軽量かつ低価格なハードウェアで実行することが可能であることを意味し、それらのトランザクションの有効性についてブロックチェーン全体を参照することなく検証できることになります。

「ビットコインブロックヘッダーを除き、マークル証明はビットコインにおける根本的なデータ構造の最たるものと言えるでしょう。トランザクションがブロックに紐付いているものであることを証明できるのがマークル証明です。つまり、マイナーがトランザクションを認証したことを証明するものであり、マークル証明の当事者間でのやり取りにおける活用事例は様々なものが考えられます。」とシャダーズ氏はBitcoin Associationに対して語ります。

「これはピアツーピアのやりとりにおいて大変重要なものとなります。なぜなら、このやり取りの一部はマークル証明付きの情報のやり取りとなるため、多彩なウォレットでサポートされる必要があるからです。したがって、異なる方法で実装されてしまうと、サービスに使用する際その都度新たな方法を検討しなければならなくなります。」

マークル証明標準化フォーマットの公表により、こうした重要な証明が多彩なサービスとユーザーの間で共有され、ウォッレットやSPVノードと互換性があることが保証されます。こうして、プロセス全体でのトランザクション認証がより自動的かつアクセシブルなものとなります。

 

技術基準の重要性

マークル証明標準化フォーマットはTSCにより公表段階まで進められた初の規格であり、公開査読段階にたどり着くまでに大きく肉付けされる中、関係者により公表前にフィードバックが寄せられ規格の各面を大幅に改善してきました。

従来型の産業が示している通り、イノベーションと相互運用性のエコシステムを醸成する上で重要な項目となるのは規格であることをシャダーズ氏は説明しています。さらに、規格は競争原理を弱めるのではなく、むしろ競合事業者およびユーザーの両方にとってアクセシビリティを改善するものとなります。シャダーズ氏は、規格が競争原理を触発しユーザーエクスペリエンスを改善する例としてDVD産業を例に取り説明します。

「ソニー製のDVDプレイヤーを持っているところに、新しくサムスン製のDVDプレイヤーを買ったとします。2つのプレイヤーが異なるフォーマットを採用していたら、どうなるでしょう?持っているDVDのコレクションをすべて新しく買い直す必要が出てきます。規格は、こうした問題を解決するものです。」

「あらゆるウォレットが、既存のマークル証明の規格を採用できます。そうすることで、マークル証明を実装した他のウォレットと即座にやり取りできることを意味しており、こうしたことを思いつきすらしなかった人もいるかも知れません。これは、今後構築されるウォレットにも当てはまります。

こうした規格がなければ、業界はサイロ化し異なるエコシステムで溢れ返り、基幹となる技術とそれに基づき構築されたアプリケーションへの全体的なアクセシビリティを低下させることになります。マークル証明フォーマットの標準化を行うことで、 ビットコインSVコミュニティはSPVウォレットおよびデータプロバイダー間の競争とイノベーションにとって相互運用可能性が根本的な要素となることを示しました。

「SPV自体の核心的要素は、証明を内在していることであり、それがマークル証明です。この規格なしには、ウォレットに適切なSPVを実装したい誰しもがデータ構造を構築し、追随する人はそのデータ構造を採用するか互換性のないものとするかを決めることとなり、エコシステムの異なるサイロ化したSPVが生まれることになります。」とシャダーズ氏は説明します。

続けて、TSCが公表した規格はTSC委員の意見ではなくコミュニティによるインプットを反映したものであり、これらの規格公表後は一般による精読を経て更新、修正、さらにはより良いソリューションが見つかったり技術環境が変化したりする場合は廃止されることすらあることを付け加えています。

「TSCは業界とのコラボレーションありきで活動しており、TSCが調整役となってサービス実際にインプットを行うのはサービスプロバイダーや他の関係者となります。」とシャダーズ氏は話しています。

「TSCメンバーに関して、明確な線引きが必要だと考えます。TSCメンバーは技術基準制定委員として活動する場合、中立的であり調整役を担うこととなります。その上で、もちろん彼らは業界関係者であり、それぞれの関心があるため、作業部会のメンバーとしても活動できます。」

新たな要件が発生したりエコシステムが変化したりしていくに連れて、多くの規格に更新および修正の発生することがあり得るため、TSCの標準化プロセスは将来規格に更新が必要になった場合に対応できるようになっています。

「参加者には、将来起こり得る変化に対し排斥的になるのではなく、上位互換が可能になるように検討することを推奨しています。周囲の技術が変化し、規格が対応できなくなったり時代遅れになったりしてしまうことは十分ありえます。そうした場合、その規格は撤回され、新しいものに置き換わることになります。」とシャダーズ氏は話します。

「これはまさに規格の更新や改正が必要になった場合の業界のニーズを明確化するということであり、この際にはTSCだけではなく関係者によって評価されるのです。」

 

マークル証明標準化フォーマット

マークル証明標準化フォーマットの公開に伴い、 TSCの専用ウェブサイトで規格の全文をお読みいただけるようになりました。

この規格は、その技術仕様が定義するとおり効率的で相互運用可能な情報のやり取りに大きく貢献するものとして、SPVウォレットのようにユーザー間で行われるやり取りにおいてマークル証明の情報が格納されるデータ構造を規定しています。

マークル証明標準化フォーマットは2つの要素から構成されています。

  • バイナリーおよびJSONでのデータ構造フォーマットの既定
  • このフォーマットで受領されたトランザクションをマークル証明に対し検証する際に用いるアルゴリズムの説明

マークル証明の標準化フォーマットでは、SPVウォレットなどで必要となる受領時の単一トランザクションにおける単純な証明のみに対応するものとなっており、複合的な証明は将来拡充する規格において検討予定です。核となるデータ構造とは無関係でありさらなる検討が必要なため、標準化されたAPIコールの定義も省略されています。

標準化フォーマットでは、マークル証明は単一のフラグバイト、マークルツリー内のトランザクションの位置インデックス、32バイトのハッシュリストおよびトランザクションIDまたはハッシュを含む構造内に格納されます。この情報はバイナリーまたはJSON形式で格納および提供され、フラグバイトが追加機能を定義します。この標準フォーマットを用いブロックのマークル証明に対しトランザクションを検証する場合、オリジナルのトランザクションを含むかトランザクションIDのみとするか、ターゲットタイプまたは最終的な要素、証明タイプ(ブランチかツリー)、証明が複合的証明の一部であるかどうかを選ぶことができます。

マークル証明検証のプロセスも定義されており、マークルツリーのデータ構造で隣り合うものがないノードの検証と併せ、前述のフラグに関する複数のチェックが含まれたものとなっています。

内部および公開査読プロセスでは、標準化データ構造フォーマットの複雑性と既定のオプションに関するコメントがTSCに寄せられました。注目すべきことに多くの関係者は、想定される一般的なユースケース(共通データフィールドを用いての単一トランザクションの検証)はフォーマットのより複雑な面とやり取りする必要がないものであるべきだと提案しています。

この懸念に対応するため、主にJSONのユースケースについて変更が行われ、既定オプションの姿はよりシンプルなJSONオブジェクトとなりました。これにより、既定のケースでのオプション入力フィールドが隠され、規格に沿った形で代替オプションを使用できる可能性を残すこととなったことが仕様書で述べられています。

マークル証明標準化フォーマットの技術仕様の説明全文は、 TSCウェブサイトでご覧いただけます。

 

ビットコインSV規格の成り立ち

TSC初となったこの規格制定は、ビットコインSV開発者、スタートアップ、そして事業者が活動する環境を改善するコミュニティの発展にとってTSCが適切な役割を果たすことができることを示すものとなりました。マークル証明標準化フォーマットの内部および公開査読プロセスでは、柔軟性と将来を見据えた複合証明の検証のタスクへの対応能力を保ちながらも、より使いやすいデータ構造フォーマットと認証アルゴリズムを生み出すこととなりました。

TSCは、コミュニティと関係者のやり取りを可能にする複数のステップからなる深きに渡る標準化プロセスに乗っ取っています。ビットコインSVの規格に関するアイデアは誰もが提案できるもので、次の段階に進められる前に委員会により検討され、技術基準が草稿されます。

規格が草稿されると内部査読の行程に入り、規格草稿の公表に伴い起こりうる知的財産および法的事項に関する懸念の検証が行われます。これと同時にNDA(秘密保持契約)が有効となり、提案された規格は委員会および関係者との間でその秘匿性が守られます。

この査読行程が完了すると、規格は草稿フェーズへと差し戻されるか、公開査読フェーズへと進むことになります。公開査読では、関心のある誰もが規格提案に意見を述べることができ、そのすべてが検討され有効であると判断された場合、その意見が規格に織り込まれます。

この公開査読が完了して初めて、規格は公表されますがここでプロセスが終わるわけではありません。規格の公表に続き、TSCおよび関係者は十分な時間をかけて業界の反応および採用を検証し、場合によっては公表のやり直しまたは撤回を行います。

「TSCでは、規格策定プロセスを3つのフェーズで構成しています。提出フェーズである第1フェーズでは、TSC外部より標準化を望む案件が提出されます。提案は業界内外を問わず受け付けていますが、その提案が実際に活用され実際に業界において需要が高まるよう、その業界関係者であることが望まれます。」とTSC創設メンバーであるアレックス・ファウヴェル氏は説明します。

「第2フェーズでは、草稿を行います。草稿が完成したら、内部で査読を行い、知的財産の有識者がさらに検証します。必要に応じ、専門技術のある有識者による検証も行います。」

「草稿がまとめ上げられるまで数回このサイクルを経て公開となり、外部の人が意見を具申する機会を設けます。この期間は2ヶ月に渡り、得られたフィードバックを織り込みます。必要に応じてこれが公開されるのが第3フェーズです。その後業界により認められるかをモニターし、認められれば規格を推奨するか、そうでなければ残念ながら撤回となります。」

TSCはこのプロセスを活用し、ビットコインSVの発展における利便性が高く強力な規格を生み出し続けていきます。現在、公開査読フェーズにあり一般からの意見を受け付けているエンベロープ仕様も、この一例です。この仕様は、効率的な情報処理と既存および将来のデータプロトコルとの相互運用を可能にする一般用途のデータエンベロープ作成によるビットコイントランザクションにおけるデータ格納方法に関するものとなっています。

ビットコインSVにおける技術基準の策定に参加されたい方は、TSCウェブサイトから、規格の新提案、公開査読フェーズにある規格草案への意見提供、草案ロードマップへの意見提案を行うことができます