QuantovaがCardanoスマートコントラクト向けにポスト量子署名検証の導入を提案
CIP-0206候補はPlutusにML-DSAとSLH-DSAの検証関数を追加する想定。提案は審査中で、実装にはハードフォークが必要となる。
By SongMarketCap
Quantovaは、Cardanoのスマートコントラクト基盤であるPlutusに、ポスト量子デジタル署名の検証関数を二つ追加することを提案した。
この提案は10月15日に提出され、Cardano Improvement Proposalの審査過程でCIP-0206という候補指定を受けた。現在も技術レビューが継続中で、これらの関数はネットワークには導入されていない。
Plutus向けの二つの署名標準
CIP-0206は、ML-DSAとSLH-DSAの検証関数を提案している。これら二つのアルゴリズムは、U.S. National Institute of Standards and TechnologyによりFIPS 204およびFIPS 205として標準化されている。
これらのアルゴリズムは異なる暗号手法に基づいている。ML-DSAは格子に関する数理問題に基づき、SLH-DSAはハッシュ関数を用いる。Plutusのコントラクトがいずれの手法で生成された署名も検証できるよう、両方式のサポートを行うことをQuantovaは提案している。
提案された各関数は、公開鍵、メッセージ、署名を受け取る。スマートコントラクトは、その結果を用いて実行前に要求される署名が有効かどうかを判定できる。
Quantovaは、マルチシグネチャによるトレジャリーやブロックチェーンブリッジなどを想定用途として挙げている。この提案はスマートコントラクト内での検証に関するものであり、Cardanoのユーザーが現在ウォレット取引の承認に用いている鍵や署名そのものを変更するものではない。
署名サイズとパフォーマンステスト
検討事項の一つは、提案された署名がトランザクション内で必要とする領域の大きさである。提案によれば、ML-DSA-65の署名は3,309バイト、公開鍵は約1,952バイトを占有する。SLH-DSA-SHA2-128sのバリアントでは、署名は7,856バイト、公開鍵は32バイトとなる。
両方式の署名はいずれも、提案で言及されているトランザクションサイズの上限内に収まるが、利用可能な領域の相当な割合を消費し得る。その上限を引き上げる場合は、Cardanoのコンセンサス規則とは別個の変更が必要となる。
提案の議論に参加するメンバーからは、署名検証のベンチマークも共有されている。Quantovaは、ML-DSA-65の検証に約64マイクロ秒、SLH-DSAの各バリアントで130から330マイクロ秒程度と報告した。別のレビュアーは、Ed25519を含む既存のCardanoの暗号関数について個別の測定結果を公開した。
これらの数値は、異なるマシンやライブラリを用いて得られたものだ。提案された関数のコストモデルを確立するには、Plutus環境でのさらなるテストが必要となる。
Quantovaはまた、検証プロセス向けのリファレンスコードとテストケースも提供した。10月17日の更新で、同社は有効な署名、改変されたメッセージ、不一致の鍵などを含む31個のテストベクターのセットを報告した。
[NEWSBREAK]
レビューと別個のウォレット提案
CIP-0206は、CPS-0027で提起された「どのポスト量子署名方式をPlutusのビルトインとして導入すべきか」という問いに応えるものだ。CIPの編集者は、暗号の専門家やPlutusのコントリビューターに対し、この提案とその性能要件のレビューを招請している。
これらの関数とコストモデルの追加は、ネットワークのコンセンサスに関わるPlutusのエバリュエーターに影響を与えるため、ハードフォークを要する。提案では、実装作業をCardanoのレジャーおよびPlutusのメンテナーに割り当てている。起動日程は発表されていない。
別の候補であるCIP-0197は、HDウォレットに対するポスト量子保護を扱っている。CIP-0206がスマートコントラクト内での署名検証に焦点を当てる一方で、CIP-0197は既存のウォレット鍵とゼロ知識証明を用いるアプローチを検討している。
Intersect’s Technical Steering Committeeは、Input Outputの研究者とともにポスト量子暗号を議題とする11月4日のディスカッションも発表した。このイベントはより広範なテーマを扱っており、特定の議題としてCIP-0206は挙げられていない。