zkFMI
English

よくある質問

短い答えと、それぞれの根拠があるページへの案内。

基本

トークンはあるか

ない。トークンも販売もなく、ここにあるものはどれも投資対象ではない。リポジトリは MIT ライセンスの研究コードである。ノードが差し入れ、不正行為があれば没収される保証金(bond)は、配備する側が決める。単位も配備する側が選ぶ。コードが持つのは相対的な重みだけである。

zkFMI はブロックチェーンか

決済層は、専用の非 EVM Avalanche L1 として動く。AvalancheGo が合意を担い、RPCChainVM プロトコル越しに Rust 製の仮想機械を起動する。市場(QOMM、OCLOB)はどのチェーンの上にもない。7 ノードの秘密計算(MPC)であり、その結果として指図を発行する。DeKYX、DeCCP、Aethel は、ホスト側が組み込む決定的な状態機械である。つまり「ブロックチェーン」と呼べるのは構成要素の一つだけである。この設計は、指図をそのまま検証できる台帳であれば、どの台帳の上でも決済できる。全体構成を参照。

ここでの「ゼロ知識」は具体的に何を意味するか

既存の非 PQC 経路は Pedersen commitment、範囲・積・等価証明、Triptych 系の note 所属証明を使う。数量の保存、非負の残額、数量と価格の積、二重使用を検証する。公開出力や時刻などの周辺情報は残る。新しい PQC 研究ではハッシュと符号に基づく協調証明へ進んでいるが、実用 note と市場全体は未完成である。DeFMIPQCを参照。

誰が作っていて、どこかに配備されているか

コードは github.com/zkFMI で公開している。1 台の Linux ホストの上で、端から端まで動いた(検証者 5、MPC 参加者 7、板のコンテナ 7)。独立した組織をまたいだ運用、WAN 上での運用、実資産を使った運用は、まだ行っていない。現状を参照。

設計上の選択

なぜ EVM のコントラクトや Solana のプログラムではなく、専用の Avalanche VM か

検証器の算術が、それらの実行環境に収まらないからである。EVM バイトコードで ed25519 のスカラー乗算を 1 回行うと、計測で 302,401 gas かかった。Solana には ristretto255 の syscall はあるが、スカラー体の syscall がない。そのため one-of-many 検証器の多項式評価は、群の大きさ 64 で計算量の上限を超える。Subnet-EVM の precompile は可能だった。しかしそれでは、他に誰も見ていないチェーンの上で、曲線のコードが合意層のバグの原因になり得る。ネイティブの Rust VM なら、検証器は監査対象の crate の中に留まる。実行層の比較を参照。

より速い TEE(信頼実行環境)を使わないのはなぜか

TEE を使うと、CPU 製造者の attestation(正当性の証明)鍵、エンクレーブの実装、マイクロアーキテクチャのサイドチャネルが信頼境界に加わる。この市場の前提は、注文の流れをどの当事者にも預けないことである。脅威モデルは、Tesseract 型の設計と対比してそう明記している。安全性を参照。

なぜ 7 ノードか。3 ノードが組むと何ができるか

閾値 T=2 の 7 ノードは、過半数が正直であること(honest majority)を前提にした Shamir 秘密分散の設定である。この設定で不正な参加者(malicious)に対する安全性を持たせるコストは、壁時計時間で約 1.2× である。3 ノードが共謀すれば、すべての秘密を復元できる。これは隠さず明記している。7 はまた、頑健な復元に一歩足りない数でもある。n ≥ 4t+1、つまり 9 ノードなら、復号器だけで出力の到達を保証できる。これは実装し、計測済みである。ノードを 2 つ増やすコストは、参加する機関を 2 つ増やすことである。説明責任を参照。

なぜ SNARK ではなくシグマ・プロトコルか

シグマ・プロトコルの応答 z = k + c·w は、witness の w について一次式(アフィン)である。だから w の share(分割片)を持つ 7 ノードがそれぞれ自分の分を計算し、Lagrange 補間で合わせれば、通常の検証器が受理する証明になる。その間、どのノードも w を持たない。汎用の SNARK にはこの構造がない。協調型 SNARK は、証明者の計算全体を MPC の中で動かすことになる。代価は、MPC を commitment の群のスカラー体の上で動かさなければならないことである。これで通信量は 2.00×、壁時計時間は 1.07× になる。束縛を参照。

見積に数秒もかかるのはなぜか。それは問題か

MPC は 70 ラウンドあり、各ラウンドがネットワークの往復である。そのため見積には、同一都市圏で 0.6 s、ノードが二つの大陸に分かれると 26 s かかる。問題になるかどうかは、その間に価格が動くかで決まる。UniswapX で計測すると、26 s の間の価格のずれは、その市場が 1 ブロックの中に既に持っている価格の散らばりと同じ大きさだった。これは、入手できる中で最も条件の厳しい基盤での値である。配置の選び方を参照。

耐量子か

署名と鍵交換のハイブリッド実装、既存の古典的な note 証明、新規ネットワークの PQC 証明研究を区別する。ハッシュ・符号ベースの協調証明から限定した台帳更新まで実行した研究記録はある。実用 PQC note の完全な関係、市場との接続、構成全体の耐量子安全性は未完成である。耐量子化の現在地を参照。

プライバシーと監督

規制当局や監査人は何を見られるか

選択的開示を三つの粒度で実装している。一つ目は、commitment にしたフィールドを一つだけ、他は開かずに開くこと。二つ目は、ウォレットの一つの scope(銘柄、四半期、mandate などの範囲)を、名指しした監査人に閲覧鍵として渡すこと。この鍵で、その scope に届いた note は読めるが、使うことはできない。三つ目は、照合の陳述である。誰も単独では持たない合計について、定足数が組み立てる。閲覧の付与には署名があり、受領者を名指しする。だから、あるべきでない場所で鍵が見つかれば、どの付与から漏れたかまで遡れる。実装していないのは、実際の監督者の鍵の儀式と、法的要請の手続きである。DeFMI規制を参照。

市場は探りを入れてメイカーの値付け規則を知ることができるか

部分的にできる。暗号はこれを防がない。確定した価格を返すことこそ、このプロトコルの存在理由だからである。計測では、探りの結果と在庫の相関は約 0.53 で、探りの予算を増やしても大きくならない。大きくなるのは確信度である。したがって主体ごとの上限が決めるのは、在庫の像を得られるかどうかではなく、像をどれだけ頻繁に更新できるかである。勝った見積の公開は、MPC の中で引いた差分プライバシーの予算の下で行う。配置QOMM を参照。

note による決済は実際どれほど匿名か

実際の匿名性は候補の選び方、他の利用者の活動、時刻、市場と予約の周辺情報に依存する。過去の ring 実験は特定の合成トラフィックに対する観察者の結果であり、現在の方式で一定の匿名性を保証するものではない。資産候補群の大きさだけから実効匿名集合を主張することもできない。公開情報と限界を参照。

決済層は誰が取引したかを知るか

note 経路では候補群、nullifier、出力 commitment、暗号文などを検証する。現在の Triptych 系証明は支出秘密を送金者に渡さず、nullifier を公開の所有者鍵と同じ値にしない。ただし、送金者は自分の送金内容を知り、市場や予約を含む周辺情報から関連付けられる可能性は残る。nullifier の仕組みを参照。

note でも加法準同型を使うのか?

非 PQC の note では使う。note は資産の管理単位であり、数量を隠す Pedersen commitment とは別の層である。入力と出力の数量保存には加法準同型性と証明を使い、所有権と二重使用も検査する。具体例

nullifier や出力 note は公開してよいのか?

公開するのは commitment、受取人向け暗号文、nullifier、証明である。数量と秘匿用乱数、復号鍵、支出鍵は秘密である。公開 note のコピーだけでは支出できないが、同じ取引の出力や時刻は見える。公開用の形式と、取引全体の追跡不能性は別である。公開と秘密の境界

日本では秘密鍵を自由に保管できるのか?

自己資産の鍵の自己保管と、事業者が顧客資産を移転できる鍵管理は区別する。MPC の分割鍵でも、関係事業者が共同で移転できるかが問題になる。証券などの資産分類や、保管者の業態でも要件が変わる。一次資料と設計上の論点

比較

ダークプールや、Renegade、P2DEX、Rialto のような MPC DEX と何が違うか

それらも秘密の注文を照合する。MPC の中で行うものもある。だから、秘密の注文の照合そのものを新しいとは主張しない。OCLOB が試している違いは次の点である。バッチではなく連続で処理すること。数量が可変で、部分約定も複数回の約定もあること。受付順を、内容を開く前に 5-of-7 で確定すること。公開する板は価格帯別の合計だけであること。照合の後に署名なしで決済できること。QOMM の違いは二つある。監査の対象が回路の正しさではなく、市場機構(最良執行)であること。そして、同じ未開封の commitment を決済まで運ぶことである。先行研究を参照。

J.P. Morgan の Prime Match と比べてどうか

Prime Match は本番稼働しており、速い。ただし、ハブにいる銀行が semi-honest(手順は守るが中身は見る)であることを信頼し、結果を第三者が監査することはできない。QOMM には semi-honest な当事者がなく、監査できる最良執行の証明を作る。速さでは、どう見ても QOMM が勝ることはない。両方の面を明記している。先行研究を参照。

中央銀行の実証のような「DLT 上の DvP」か

DLT 上の DvP は、価格が公開であることを前提にする。ここでは価格は commitment のままである。quote proof がそれを最小値と示し、定足数が署名し、指図が運び、台帳の積の証明が消費する。一度も開かない。ネッティング、当座貸越限度、ウォーターフォール、更改(novation)の構成は標準的な FMI のもので、数値の代わりに commitment を置いている。DeFMI を参照。

これは清算機関(CCP)や CSD を置き換えるか

置き換えない。二者の間でトークンを同時に交換することは、更改(novation)ではない。DeCCP は更改、ネッティング、証拠金、ウォーターフォールを提供する構成要素だが、状態機械であって、免許を受けた清算機関ではない。日本の振替制度の下では、DeFMI は振替口座簿そのものにはなれない。口座簿の写しを持ち、正本と照合する。どちらも「主張してはいけない」一覧に載っている。規制を参照。

実務

QOMM なしで zkPI と DeFMI を使えるか

使える。移転を決める主体なら、ファンド管理者、担保エンジン、銀行の制裁審査、名義管理者など、どれでも型付きの指図を発行できる。最初の製品として勧めるのは、ファンドの申込・解約である。市場以外の業務システムを参照。

今日いちばん小さく動かせるものは何か

どのリポジトリでも cargo test --locked --workspace を実行し、次に zkPI のテストベクタを検証する。検証者 5 台の Avalanche ゲートには、Linux と、明示的に指定した AvalancheGo が必要である。始め方を参照。

本番に行くには何が必要か

次のものが必要である。どの当事者も単独では開けない決済権限。閾値の算術の上だけでなく、実際に独立した運営者。認証付きの記憶域に永続化した状態の世代。本物の認証と鍵管理。秘密計算が正しかったことを検証者が検証できる証明。法的 finality(決済の法的な確定)。それぞれについて、いま何があるかを併記して列挙している。現状今後の計画を参照。

なぜ文書の多くが、できないことについて書いているのか

理由は二つある。システムが何をするかという主張は、何をしないかという主張と並べて初めて意味を持つ。そして、設計上の決定の大半は、外れた予測から生まれた。この研究の進め方を参照。