ML-KEMとは

えむえるけむ

米国のNISTが2024年8月にFIPS 203として標準化した、格子に基づく鍵カプセル化メカニズム(KEM)。Module-Lattice-Based Key-Encapsulation Mechanism の略で、CRYSTALS-Kyberをもとにしている。小さな誤りを加えた連立一次方程式から秘密を求めるModule-LWE問題の難しさに安全性の根拠を置き、量子コンピュータでも効率よく解けないと考えられている。ML-KEM-512、ML-KEM-768、ML-KEM-1024の3つのパラメータセットがある。TLSなどで、ECDHEの鍵交換を置き換えたり、組み合わせたりするために使われる。

「ML-KEM」は、3分野の7問の練習問題に出てきます(暗号技術の基礎と応用, ハードウェアセキュリティの最新動向, 量子コンピュータのハードウェアなど)。

この用語の分野: 暗号技術の基礎と応用

鍵カプセル化メカニズムとは

KEMは、鍵の生成、カプセル化、カプセル化の解除の3つの操作からなります。送り手は受け手の公開鍵でカプセル化を行い、ランダムな共有の秘密と、それを包んだ暗号文を得て、暗号文を送ります。受け手は秘密鍵でカプセル化を解除し、同じ共有の秘密を得ます。ディフィー・ヘルマン鍵交換と違い、送り手は長く使う自分の鍵の対を用意する必要がありません。

サイズの目安

ML-KEM-768では、公開鍵(カプセル化鍵)が1,184バイト、暗号文が1,088バイト、共有の秘密が32バイトです。楕円曲線の鍵交換X25519の公開値は32バイトなので、送るデータはずっと大きくなります。一方、計算そのものは軽く、楕円曲線の鍵交換と比べても遅くないとされています。

ハイブリッドでの利用

新しい方式への不安に備えて、X25519とML-KEM-768の共有の秘密を両方とも鍵の導出に入れるハイブリッド鍵交換(X25519MLKEM768など)が、2025年時点でTLS 1.3で使われ始めています。どちらか一方が安全なら、できる鍵は守られます。

ML-KEMの練習問題に挑戦

ML-KEMのような鍵カプセル化メカニズム(KEM)の使い方の説明として、正しいものはどれか。

  1. A送り手が自分の秘密鍵で共有の秘密に署名して送り、受け手は送り手の公開鍵でその署名を検証して秘密を受け取る
  2. B送り手は受け手の公開鍵から共有の秘密とそれを包んだ暗号文を作り、受け手は秘密鍵で同じ秘密を取り出す
  3. C送り手と受け手が同じ共通鍵をあらかじめ持ち、その鍵でメッセージを直接暗号化する
答えと解説を見る

正解:B. 送り手は受け手の公開鍵から共有の秘密とそれを包んだ暗号文を作り、受け手は秘密鍵で同じ秘密を取り出す

KEMは、鍵の生成、カプセル化、カプセル化の解除の3つの操作からなります。送り手は受け手の公開鍵でカプセル化を行い、ランダムな共有の秘密と、それを包んだ暗号文を同時に得て、暗号文だけを送ります。受け手は秘密鍵でカプセル化を解除して同じ共有の秘密を得て、その後はこれをもとにした鍵で共通鍵暗号を使います。KEMは鍵を共有するための仕組みなので、相手の認証には、ML-DSAなどの署名を別に使います。

耐量子計算機暗号への移行の途中で使われる、X25519(楕円曲線を使うディフィー・ヘルマン鍵交換)とML-KEMを組み合わせたハイブリッド鍵交換の考え方として、正しいものはどれか。

  1. A2つの方式で得た共有の秘密を両方とも鍵の導出に入れ、どちらか一方が安全である限り、できる鍵が安全であるようにする
  2. B2つの方式のうち、ハンドシェイクで先に終わった方の共有の秘密だけを使い、もう一方は捨てる
  3. CML-KEMは量子コンピュータが実現するまでは使わず、実現したときに自動で切り替わるように、両方を用意しておく
答えと解説を見る

正解:A. 2つの方式で得た共有の秘密を両方とも鍵の導出に入れ、どちらか一方が安全である限り、できる鍵が安全であるようにする

ML-KEMは新しい方式で、実装の誤りや新しい攻撃が見つかるおそれを、まだ十分には否定できません。一方、X25519は量子コンピュータには弱いものの、古典のコンピュータに対する安全性には長い実績があります。ハイブリッド鍵交換では、両方の共有の秘密をつなげて鍵導出関数に入れるので、攻撃者は両方を破らないと鍵を得られず、今記録された通信を将来の量子コンピュータで解読されることも防げます。2025年時点で、この組み合わせ(X25519MLKEM768など)がTLS 1.3で使われ始めています。

よくある質問

ML-KEMで署名はできますか?

できません。ML-KEMは鍵を共有するための仕組みです。耐量子計算機暗号の署名には、同じく2024年8月に標準化されたML-DSA(FIPS 204)やSLH-DSA(FIPS 205)を使います。

量子鍵配送(QKD)と同じものですか?

違います。ML-KEMは数学の問題の難しさに基づき、ふつうのコンピュータとネットワークでそのまま動きます。量子鍵配送は、光子などの量子の性質を使って鍵を共有する技術で、専用の装置と通信路が必要です。

解説の中の「ML-KEM」

「ML-KEM」が出てくる問題(7問)

  1. ML-KEMのような鍵カプセル化メカニズム(KEM)の使い方の説明として、正しいものはどれか。
  2. 耐量子計算機暗号への移行の途中で使われる、X25519(楕円曲線を使うディフィー・ヘルマン鍵交換)とML-KEMを組み合わせたハイブリッド鍵交換の考え方として、正しいものはどれか。
  3. ML-KEM-768の公開鍵は1,184バイト、暗号文は1,088バイトで、楕円曲線の鍵交換X25519の公開値は32バイトである。ML-KEM-768の公開鍵の大きさが、X25519の公開値の何倍かとして、正しいものはどれか。
  4. ML-KEMのカプセル化の解除では、受け取った暗号文を秘密鍵で復号した結果から暗号文をもう一度作り、受け取った暗号文と一致するかを比べる。この部分の実装の注意として、正しいものはどれか。
  5. 耐量子計算機暗号(ポスト量子暗号、PQC)の説明として正しいものはどれか。
  6. 米国のNISTが2024年8月に公表した耐量子計算機暗号の標準と、その種類の組み合わせとして正しいものはどれか。
  7. 格子に基づく耐量子計算機暗号では、次数 n = 256 の多項式の掛け算を何度も行う。係数どうしをすべて掛け合わせる素朴な方法では約 n² 回、数論変換(NTT)を使う方法では約 n log₂ n 回の掛け算が必要とすると、NTTを使うことで掛け算の回数がおよそ何分の1になるかとして、最も近いものはどれか。

暗号技術の基礎と応用の参考書を探す PR

Amazonの検索結果へのリンクです。Amazonのアソシエイトとして、半導体教室は適格販売により収入を得ています。

この用語が出てくる比較

関連する用語

耐量子計算機暗号 ハッシュ関数 共通鍵暗号 ディフィー・ヘルマン鍵交換 TLS マイコン(マイクロコントローラ) ショアのアルゴリズム RSA暗号 楕円曲線暗号 デジタル署名

用語集の一覧へ