tag:xmss
目次
XMSS
XMSS (eXtended Merkle Signature Scheme) 解説
XMSSは、ハッシュ関数に基づいたデジタル署名方式であり、量子コンピュータによる攻撃に対して数学的な耐性を持つ「量子耐性署名」の代表格です。2018年にIETFによって標準化(RFC 8391)され、NIST(米国立標準技術研究所)によってもその安全性が認められています。
1. XMSSの構造:WOTS+ と Merkle Tree
XMSSは、単一の署名方式ではなく、複数の技術を組み合わせた「階層構造」を持っています。
- WOTS+ (Winternitz One-Time Signature Plus):
- XMSSの最小単位。一度しか使えない「ワンタイム署名(OTS)」です。
- 秘密鍵からハッシュ関数を何度も繰り返すことで署名を作成します。
- Merkle Tree (ハッシュ木):
- 大量の WOTS+ 公開鍵をツリー状にまとめ、その頂点(ルート)を「一つの公開鍵」として扱います。
- これにより、本来一度しか使えないOTSを、一つのアドレスで複数回(ツリーの葉の数だけ)使えるように拡張しています。
2. 最大の特徴:「ステートフル(Stateful)」な性質
XMSSを理解する上で最も重要なのが、「ステートフル(状態管理が必要)」という点です。
- インデックス管理:
- XMSSでは、ツリー内の「どのワンタイム署名を使ったか」を記録し続ける必要があります。
- 再利用の禁止:
- 同じインデックス(葉)を二度使って署名してしまうと、秘密鍵の一部が露出し、セキュリティが劇的に低下します。
- 運用の難しさ:
- ウォレットを複数のデバイスで同期する場合、どのインデックスまで使用したかを完璧に同期させる必要があり、一般的な用途では非常に高い管理能力が求められます。
3. Qubic(Lamport)との比較分析
| 項目 | XMSS (QRL等) | Lamport/Schnorr (Qubic) |
|---|---|---|
| 設計思想 | 堅牢な「金庫」 | 高速な「計算機」 |
| 状態管理 | 必須(ステートフル) | 不要(ステートレス) |
| 検証速度 | 高速 | 超高速 |
| 署名サイズ | 比較的大きい | 集約により最適化 |
| 標準化状況 | NIST標準 / RFC 8391 | 次世代のデファクトを目指す |
4. メリットとデメリット
メリット
- 極めて高い信頼性:
- 数学的な「衝突耐性」のみに依存しており、量子コンピュータでも解読は不可能とされています。
- 長期保存に最適:
- 頻繁に送金しない「貯蔵用アドレス(冷やし込み)」には、この上ない安全性を発揮します。
デメリット
- 署名回数の上限:
- ツリーの高さ(葉の数)によって、そのアドレスから送金できる回数が最初から決まっています。
- 管理リスク:
- インデックスの管理を誤ると(あるいは古いバックアップから復元してインデックスが巻き戻ると)、資産が危険にさらされます。
Related Articles
tag/xmss.txt · 最終更新: by d.azuma