オープン性、常識、機敏性という最新の研究開発コンセプトを遵守し、包括的な技術ルートを採用し、高スループット、低レイテンシー、弾力性のある CBDC トランザクション処理システムの構築を模索します。
編集者注:この記事はチャイナ・フィナンシャル・マガジンに初めて掲載されたもので、著者:Yao Qian、「中国証券監督管理委員会科学技術監督局局長」
近年、世界の主要経済国の通貨当局は、中央銀行デジタル通貨(中央銀行デジタル通貨、CBDC)に関する研究開発の取り組みを継続的に強化し、多くの段階的な成果を達成しています。 「プロジェクト・ハミルトン」(Project Hamilton)は、ボストン連邦準備銀行とマサチューセッツ工科大学が共同で立ち上げたCBDCイノベーション研究プロジェクト(デジタル通貨イニシアチブ、DCI)です。この計画は数年前から行われており、2022 年 2 月 3 日、ボストン連邦準備銀行は「中央銀行デジタル通貨向けに設計された高性能決済処理システム」と題する文書を発表しました (第 1 段階の進捗状況をまとめた技術報告書)ハミルトンプログラムの。この記事は、報告書の主な内容を通じて、連邦準備銀行のデジタル通貨プロトタイプシステムを簡単に分析することを目的としています。
ハミルトンプロジェクトのフェーズ1の研究目標
ハミルトン計画の第 1 フェーズの最初の目標は、CBDC システムのパフォーマンスを調査すること、つまり、高スループット、低レイテンシー、弾力性のある CBDC トランザクション処理システムを技術的に開発することです。具体的なパフォーマンス目標には 2 つの側面が含まれます: 1 つは、トランザクションの検証、トランザクションの実行、ユーザーへのトランザクションの確認の完了を含むトランザクションの 99% を 5 秒以内に完了すること、もう 1 つは、現在の現金および銀行カードのトランザクション量と予想に応じて米国における成長率を考慮すると、このシステムは 1 秒あたり少なくとも 100,000 件のトランザクションを処理でき、その後の支払い量の増加に合わせて拡張し続けることができます。
2 番目の目的は、CBDC システムの回復力を調査することです。 CBDC に対する国民の信頼を維持するには、CBDC システムはサービスの継続性と資金の可用性を確保する必要があります。システム復元力の研究の焦点は、複数のデータセンターに障害が発生した場合に、中断のないシステム アクセスとデータ損失を保証する方法です。
3 番目の目標は、CBDC のプライバシー保護を調査することです。研究開発チームは、プライバシーを保護する最も安全な方法は、取引の開始時からデータ収集を減らすことであると考えているため、CBDC 取引システムでは取引データの保持を最小限に抑えるスキームが設計されています。
連邦準備制度のデジタル通貨プロトタイプ システム設計コイン形式: 未使用トランザクション出力 (未使用トランザクション出力、UTXO)
ハミルトン システムには、トランザクション プロセッサ、発行者、ユーザーの 3 種類の参加者がいます。トランザクションプロセッサはCBDCを記録し、指示に従って関連するトランザクションを検証して実行します。ビットコインと同様に、ハミルトンはUTXOという通貨表現を採用する予定だ。 CBDC は発行者の行動によってのみシステムに出入りすることができ、発行者はミント (mint) することでトランザクション プロセッサー内の資金を増やし、償還 (redeem) することでトランザクション プロセッサー内の資金を減らします。ユーザーは資金移動(転送)操作を実行して資金の所有権をアトミックに変更しますが、トランザクションプロセッサに保管されている資金の総量は変化せず、変化するのは資金の所有権です。ユーザーはデジタルウォレットの公開鍵/秘密鍵を使用してトランザクションを処理し、署名します。資金移動取引のプロセスでは、支払者の未使用資金が取引の入力(インプット)となり、新たな未使用資金の生成が取引の出力(出力)となります。これには、受取人の未使用資金と支払者への釣銭が含まれます。有効なトランザクションはバランスがとれている必要があります。つまり、トランザクションの入力の合計が出力の合計と等しくなければなりません。
未使用の資金は、三重項 utxo:=(v, P, sn) として定義されます。このうち、v は金額、P は負担述語 (所有者の公開鍵として理解できます)、sn はシリアル番号です。発行者のミント操作では、新しい未使用資金が作成され、トランザクション プロセッサによって保存されている UTXO セットに UTXO が追加されます。一方、償還操作では、既存の未使用資金が UTXO セットから削除され、再利用できなくなります。発行者は、新しく作成された UTXO に対して一意のシーケンス番号を選択する必要があります。これは、一様な乱数または単調増加するカウンタ値に設定できます (発行者が i 番目の UTXO を発行すると、そのシーケンス番号が i に設定されます)。
検証とUTXO圧縮の分離
ハミルトン システムでは、トランザクション プロセッサがトランザクションの正確さを検証し、入力を削除して出力を作成することによってトランザクションを実行します。検証は、トランザクション ローカル検証 (共有状態へのアクセスを必要としないトランザクション ローカル検証) と存在検証 (共有状態へのアクセスを必要とする存在検証) に分かれています。この分離のために、ハミルトニアン システムは、ユーザー トランザクションの受信とトランザクションの部分的な検証の実行専用の専用コンポーネントであるセンチネルを設計します。部分検証には、トランザクションが適切に形成されていることの検証、各入力に使用済み出力に対する有効な署名があることの確認、トランザクションのバランスが保たれていること (つまり、出力の合計が入力の合計と等しい) の確認が含まれます。トランザクションが基準を満たしている場合、Sentinel はトランザクションを存在検証を担当する実行エンジンに転送します。そうでない場合は、ユーザーにトランザクション エラーを要求するだけです。
存在確認では主に未使用資金の存在を確認します。プライバシー保護を実現するために、ハミルトン システムは、完全な utxo:= ( v、P、sn)、H はハッシュ関数であり、ハミルトニアン システムは SHA-256 アルゴリズムを使用します。 UTXO セットを UHS セットに置き換えることは、プライバシー保護に役立つだけでなく、ストレージ要件を削減し、システム パフォーマンスを向上させます。
存在を検証するには、部分的に検証されたトランザクションを、あらかじめ設定されたUTXOハッシュに適用されたトランザクションに変換する必要があり、この処理をコンパクションと呼びます。具体的には、センチネルは入力 UTXO のハッシュ値を計算し、入力 UTXO を出力セキュリティ ロックおよび値とともに使用して出力 UTXO のシリアル番号を取得し、それによって出力 UTXO のハッシュ値を計算し、 2 つのハッシュ 存在チェックと実行のために UHS を保持するトランザクション プロセッサに送信されます。
存在確認とUHS交換
トランザクションがトランザクションの部分検証と圧縮変換に合格したと仮定すると、トランザクション プロセッサは次のように UHS セットを更新します。UHS セットにすべてのトランザクションの入力 UTXO があるかどうかを確認し、入力 UTXO が欠落している場合はそれ以降の処理を中止し、そうでない場合は処理を中止します。 、処理続行;トランザクションプロセッサは、トランザクションの入力UTXOに対応するUHSをUHSセットから削除し、出力UTXOに対応する新たに作成されたUHSをUHSセットに追加する。前述の 1 回削除して 1 回追加する操作をスワップと呼びます。
高性能アーキテクチャ
高スループット、低遅延、高耐障害性のトランザクション処理を実現するために、ハミルトン プロジェクトは 2 つのアーキテクチャを設計しました。 1 つ目はアトマイザー アーキテクチャで、システムは注文サーバーを利用してすべてのトランザクションの線形履歴を作成します。 2 つ目は 2 フェーズ コミット (2PC) アーキテクチャです。このアーキテクチャでは、システムは、均一に順序付けされたトランザクション レコードを作成せずに、複数の競合のないトランザクション (つまり、同じ資金の支払いまたは受け取りを行わないトランザクション) を並行して実行します。
どちらのアーキテクチャでも、UHS によりサーバー間でのパーティショニングが可能になり、スループットとスケーリングが向上します。通常、単一のトランザクションの実行には複数のサーバーが関与し、各アーキテクチャでは、複数のサーバー間でトランザクションの一貫したアプリケーションを調整するために異なる技術が使用されます。集中型アトミック サーバー アーキテクチャは、Raft プロトコルを使用してセンチネル検証から得られるすべての更新を分類し、これらの更新をシステム全体に適用します。 2PC アーキテクチャは、分散コンセンサス ノードを使用して、アトミック トランザクションとシリアル化に必要なロックを実行します。異なる資金を使用するトランザクションは競合せず、並行して実行できます。有効なトランザクションの資金が未使用であることが確認されると、トランザクションは継続的に複数のトランザクションを実行できます。同時にバッチ処理できます。
ハミルトン計画の第一段階の実験結果
プロジェクト ハミルトンの第 1 フェーズでは、2 つの完全な計算ソース コード、つまりコード ベースが開発されました。 1 つは集中アトミック サーバー アーキテクチャのコード ベースで、1 秒あたり約 170,000 のトランザクションを処理でき、そのうちの 99% のテール遅延は 2 秒未満、そのうちの 50% のテール遅延は 0.7 秒です。 Atomic Server は複数のサーバーにまたがってシャーディングできないため、Atomic Server ステート マシンの機能はトランザクションの小さなサブセットのみに対する入力順序付けと重複排除に削減できますが、このアーキテクチャのシステム スループットは依然として制限されています。とはいえ、有効なトランザクションを強く命令する設計ではスループットが制限されます。もう 1 つは 2PC アーキテクチャのコード ベースで、1 秒あたり 170 万件のトランザクションを処理でき、そのうち 99% のトランザクションは 1 秒以内に完了でき、トランザクション末尾の遅延の 50% は 0.5 秒未満です。基本要件である 1 秒あたり 100,000 トランザクション。さらに、2PC アーキテクチャは、レイテンシーに悪影響を与えることなく、コンセンサス ノードを追加することでスループットをさらに向上させることができます。
上記のコードはオープンソース化されており、ハミルトン氏はCBDCの研究開発における協力促進を目的として、これを「オープンソース中央銀行デジタル通貨プロジェクト(OpenCBDC)」と呼ぶ予定だ。
比較分析と電子現金(E-cash)との比較
1982年、アメリカのコンピュータ科学者で暗号学者のデビッド・チャウムは「追跡不可能な決済システムのためのブラインド署名」というタイトルの論文を発表しました。この論文では、RSA アルゴリズム (RSA アルゴリズム) に基づく新しい暗号プロトコル - ブラインド署名 (ブラインド署名) が提案されています。ブラインド署名を使用して匿名で追跡不可能な電子現金システムを構築することは、最も初期のデジタル通貨理論であり、実装可能な最も初期の実験システムであり、学術コミュニティによって高く評価されています。重要なテクノロジーは 2 つあります: ランダム順序付けとブラインド署名です。ランダム照合によって生成された一意のシリアル番号はデジタル キャッシュの一意性を保証でき、ブラインド署名は匿名のデジタル キャッシュに対する銀行の信用保証を保証できます。
ハミルトン計画は、電子キャッシュと同様のアイデアを採用しています。一方で、通貨 (UTXO) の一意性は、取引ごとにシステム検証を必要とする世界的に一意のシリアル番号によって保証され、他方では、中央認証システムを採用しています。暗号化アルゴリズムにより、システムのセキュリティと攻撃防御を実現します。しかし、ハミルトンの計画は電子キャッシュの欠点を克服します。 David Chaum によって確立された E-Cash モデルでは、使用されたすべての E-Cash シリアル番号が銀行データベースに保存されます。トランザクション量が増加するにつれて、データベースはますます大きくなり、検証プロセスはますます困難になります。ハミルトン氏は、検証処理と圧縮処理を分離することでトランザクションプロセッサのストレージとコンピューティングの負荷を可能な限り軽減し、シャーディング技術と高性能アーキテクチャを利用してトランザクションパフォーマンスを大幅に向上させる計画だ。
つまり、使用済みトランザクション出力と未使用トランザクション出力は、相反する 2 つの相補的な設計概念です。後者は、前者が直面する無限のデータ拡張の問題を最適化します。これは、ビットコインが E-Cash を超える本質でもあります。
ビットコインとの比較
ビットコインと同様に、ハミルトンプロジェクトも通貨の設計にUTXOモデルを採用しています。しかし、両者の違いは次のとおりです: ビットコインのブロックチェーンはすべての UTXO 情報を保存しますが、ハミルトン プロジェクトはブロックチェーン モデルを採用していないため、通貨を簡単に追跡できず、トランザクション プロセッサーは UTXO の詳細を保存せず、UTXO ハッシュ値のみを保存します。特に、ハミルトン プロジェクトの信頼基盤は、ビットコインの分散型コンセンサス メカニズムとは完全に異なります。そのプラットフォームは、信頼できる中央組織によって管理されます。コンセンサス アルゴリズムは、システム内のパーティション サーバーの一貫性を調整するためにのみ使用されます。サードパーティの支払いに近い バックグラウンド分散システム設計。
二重支払いやノーリプレイ攻撃などの脅威を防ぐという点で、ビットコインはプルーフ・オブ・ワーク(PoW)メカニズムを採用していますが、ハミルトン計画の設計はハッシュアルゴリズムに依存しており、発行者とトランザクションシステムに大きく依存しています。 . 安全で信頼できる。具体的には、Hamilton トランザクション プロセッサでの転送ごとに、ハッシュ アルゴリズムの処理後に UTXO 出力のシリアル番号が決定されます。元のミント トランザクションからのシリアル番号がグローバルに一意である限り、後続の再帰は各 UTXO シーケンスを取得できます。の数も世界的に一意であり、過去または将来の UTXO コレクションの他のアイテムと一致しません。シリアル番号のグローバルな一意性は、技術的な詳細だけでなく、2 つの効果ももたらします。 1つは二重支出をしないことです。スワップ操作では、UTXO が使用済みとして永久にマークされます。シーケンス番号は一意であるため、UTXO は 1 回のみ使用でき、使用後に再構築することはできません。 2 つ目は、リプレイ攻撃を防ぐことです。各トランザクションはグローバルな一意性を持つ 1 つ以上の UTXO 入力に対応するため、その署名は関連するすべての入力と出力を含むトランザクション全体をカバーします。したがって、トランザクションの署名は、このトランザクション以外のUTXO(今後作成されるUTXOも含む)に対しては無効となり、トランザクションをコピーしたり、同じトランザクションを複数回実行することはできません。ハミルトン計画の設計におけるリスク ポイントは、中央機関が必ずしも信頼できるかどうかです。発行者のコインのシリアル番号は世界的に一意ですか?トランザクション プロセッサは、保存されている UHS コレクションが改ざんできないことを保証できるほど安全ですか?
つまり、ビットコインとハミルトン プロジェクトはどちらも UTXO データ モデルを使用していますが、ハミルトン プロジェクトは集中型のハッシュ登録システムを維持しているのに対し、ビットコインは分散型ブロックチェーン ハッシュ登録システムを維持しています。
その他の比較
ハミルトン プロジェクトの技術レポートでは、2018 年の国際電気通信連合 (ITU) 法定デジタル通貨フォーカス グループの第 2 回会議での著者の研究論文が引用されています。本稿は主にデジタル人民元プロトタイプシステムのレビューであり、核となるアイデアは「1つの通貨、2つの図書館、3つのセンター」の技術的枠組みである(「中国の法定デジタル通貨プロトタイプコンセプト」、『中国金融』2016年No.1参照)。 17)、そして銀行口座とデジタル通貨ウォレットの階層的な使用に基づく 2 層のビジネス構造 (「デジタル通貨と銀行口座」、「清華金融評論」、2017 年 7 号を参照)。
現在のハミルトンプロジェクトの全体構造は「ワンコイン、ワンウォレット、ワンセンター」と表現できます。 1 つの通貨は、中央銀行によって署名され発行された UTXO データ構造で表現される暗号化されたデジタル文字列であるデジタル ドルを指します。1 つのウォレットは、個人または単位のユーザーが使用するデジタル通貨ウォレットを指し、保管のキャリアでもあります。ユーザーの公開鍵と秘密鍵、1 つのセンターを指します 取引登録センターは、デジタル通貨の未使用の取引資金のハッシュ値を記録および保存し、デジタル通貨の生成、流通、消滅の全プロセスの所有権登録を完了します。
デジタル通貨の設計に関しては、どちらのプロトタイプ プロジェクトも、暗号化されたデジタル文字列の金銭的属性と中央銀行の負債の属性を強調しています。流通リンクでは、どちらのプロジェクトもウォレットを主要なキャリアとして使用し、デジタル通貨のユーザーの所有権と運用権限を強調しています。取引の確認と登録に関しては、両方のプロジェクトが取引登録センターと「オンライン金銭検出器」を設計しました。一般的に、この 2 つのプロトタイプ プロジェクトは設計コンセプトの点で類似しており、どちらも集中型暗号通貨のアイデアを採用しており、トランザクション処理は「ワンタイム暗号化」であり、デジタル通貨のセキュリティを十分に考慮しています。技術的なルートはブロックチェーン技術に限定されず、先進的なコンポーネントを吸収するだけでなく、技術的な障害となる可能性のあるポイントも排除します。 2 つのプロジェクトの違いは、ハミルトン プロジェクトの第 1 フェーズでは、仲介者の技術的役割や、ユーザーのプライバシーとコンプライアンスのバランスをどのように達成するかが検討されていなかったことです。著者が提案したデジタル通貨プロトタイプ システムは、仲介者の役割を検討および設計しました。認証センターと登録センターを分離するという設計思想は、プライバシー保護を実現するだけでなく、法規制遵守要件も満たすことができます。ハミルトンは、レイヤーごとのハッシュ計算を通じて、平文情報の代わりにトランザクション情報のハッシュを登録サーバーに保存する予定であることは言及する価値があります。これにより、システムのオーバーヘッドが削減され、プライバシー保護の考慮がより洗練されます。
エピローグ
一般に、ハミルトン計画の第 1 段階のプロトタイプ設計は完全なシステムではなく、効果的な CBDC に必要なすべての機能を備えておらず、実際のアプリケーション標準を満たすことができません。ハミルトンのフォローアップ計画では、CBDC の実装の道筋を引き続き検討し、システムのセキュリティ、監査可能性、プログラマビリティ、コンプライアンス、および相互運用性を継続的に改善し、オフライン決済機能を改善し、仲介者の役割を明確にし、CBDC に対する防御を強化します。内部攻撃、サービス拒否攻撃、および量子攻撃に抵抗する能力。ハミルトン計画は、中央銀行のデジタル通貨の開発に 2 つの重要な啓示をもたらします。
1 つはテクノロジーの包括性です。ハミルトン計画は、CBDC の設計プロセスにおいて特定の技術的ルートに限定されません。電子キャッシュ、ビットコイン、その他の暗号通貨の利点を完全に吸収し、起こり得る欠点を回避するだけでなく、分散システムの高性能で耐障害性の高いアーキテクチャ設計も効果的に吸収します。これは、CBDC 設計の選択を固定すべきではなく、考え方を特定の技術的枠組みや分野に限定する必要がないことを示しています。
2つ目はテクノロジーのオープン性です。現在、各国のCBDC実験は基本的に比較的秘密の「マンハッタンプロジェクト」であるのに対し、ハミルトンプロジェクトはオープン性、知恵、機敏性という現代の研究開発コンセプトを堅持し、第一段階のコードを積極的にオープンソース化し、 OpenCBDC プロジェクトを作成し、github public で公開します。現在、ハミルトン プロジェクトは、CBDC の研究開発を促進するためにすべての関係者と協力することを目的として、オープンソース コード ベースへの外部からの貢献を積極的に求め、新しいワーキング グループのメンバーを受け入れています。ハミルトンプロジェクトのオープンイノベーションモデルは、他国のCBDC研究開発の実践において学ぶ価値があることは間違いありません。
(この記事は著者の個人的な学術的観点を表すものにすぎません)