概要
現在の暗号技術が、どのような目的に向けて発展しているのかを説明する。軽量暗号、ゼロ知識証明、秘密計算、完全準同型暗号、しきい値暗号、耐量子暗号を整理する。
現代の暗号は、単に通信内容を隠すだけではない。
プライバシー保護、分散システム、クラウド利用、量子コンピュータへの備えなど、「何を守りたいのか」によって使う技術が変わってくる。
この記事で扱うこと
- 最新暗号技術を、目的別に整理する考え方。
- 軽量暗号がIoTや組込み機器で重要になる理由。
- ゼロ知識証明、秘密計算、完全準同型暗号の役割。
- 耐量子暗号が必要になる背景。
- NISTの耐量子暗号標準と、移行期のハイブリッド構成。
用途から見るこれからの暗号技術
- 守る対象が広がる
古典暗号では「読まれないこと」が中心だった。
しかし現代では、通信内容を隠すだけでなく、本人性の確認、改ざん検知、秘密を見せない証明、データを隠したままの計算、量子コンピュータへの備えなど、暗号の役割が広がっている。
目的別に見ると、次のように整理できる。
技術 主な目的 軽量暗号 IoTや組込み機器など、制約のある環境を守る。 ゼロ知識証明 秘密を見せずに、条件を満たすことを示す。 秘密計算 データを隠したまま、複数者で計算する。 完全準同型暗号 暗号化したデータのまま計算する。 しきい値暗号 鍵や権限を分散し、単独悪用を防ぐ。 耐量子暗号 量子コンピュータを想定して備える。
軽量暗号
- 制約のある機器向けの暗号
軽量暗号は、処理能力、メモリ、電力に制約がある機器で使いやすい暗号技術となる。
IoT機器、センサー、組込み機器では、一般的なサーバーやPCと同じように重い暗号処理を行うことが難しい場合がある。
そのため、限られた環境でも安全性と効率を両立する方式が求められる。 - Ascon
NISTは、制約のあるデバイス向けの軽量暗号としてAscon系列を標準化している。
Asconは、AEAD、ハッシュ、XOFなどを含む軽量暗号のファミリとして整理されている。
AESが適さない小型機器や低消費電力環境での選択肢として理解すると分かりやすい。
ゼロ知識証明
- 秘密を見せずに正しさを示す
ゼロ知識証明は、秘密情報そのものを明かさずに、「ある条件を満たしている」ことを証明する技術となる。
例えば、パスワードを直接見せずに、正しいパスワードを知っていることだけを示すような考え方に近い。
ブロックチェーン、プライバシー保護、本人確認などの分野で応用が進んでいる。 - 何がうれしいか
通常、正しさを確認するには根拠となる情報を見せる必要がある。
しかし、見せた情報そのものが機密である場合、確認と秘匿が衝突する。
ゼロ知識証明は、この衝突を解くための技術として重要になる。
秘密計算と完全準同型暗号
- 秘密計算
秘密計算は、複数の参加者がそれぞれのデータを隠したまま、共同で計算結果を得る技術となる。
例えば、複数の組織が個別のデータを直接公開せずに、合計値や統計値だけを求めたい場合に使える。
データを持ち寄ることが難しい場面で、プライバシーを保ちながら分析する考え方につながる。 - 完全準同型暗号
完全準同型暗号は、暗号化したデータを復号せずに計算できる暗号方式となる。
通常は、計算するために一度データを復号する必要がある。
しかし完全準同型暗号では、暗号文のまま計算し、最後に復号すると、平文で計算した結果と対応する値が得られる。実用上は計算コストが課題になるが、クラウド上でデータを隠したまま処理する考え方として重要になる。
しきい値暗号と秘密分散
- 鍵を一人に持たせない
しきい値暗号や秘密分散は、秘密情報や鍵を複数の断片に分け、一定数以上が集まったときだけ復元できるようにする考え方となる。
例えば、5人のうち3人以上が協力したときだけ鍵を使えるようにする。
これにより、1人の鍵漏えいや不正操作だけで全体が破られるリスクを下げられる。 - 実務での意味
管理者権限、署名鍵、暗号資産の秘密鍵、重要な復旧鍵などでは、単独の人や単独のシステムにすべてを持たせない設計が重要になる。
しきい値署名やマルチパーティ承認は、暗号技術と運用統制を組み合わせた考え方として理解できる。
耐量子暗号
- なぜ必要か
現在広く使われているRSAや楕円曲線暗号は、大規模な量子コンピュータが実現した場合、危険になると考えられている。
これは、量子コンピュータ上のショアのアルゴリズムによって、素因数分解や離散対数問題が効率的に解ける可能性があるためとなる。
そのため、量子コンピュータに対しても安全と考えられる公開鍵暗号へ移行する必要がある。 - NISTの耐量子暗号標準
NISTは2024年に、耐量子暗号の標準として、ML-KEM、ML-DSA、SLH-DSAを公開した。
標準 主な用途 もとになった方式 ML-KEM 鍵共有・鍵カプセル化 CRYSTALS-Kyber ML-DSA デジタル署名 CRYSTALS-Dilithium SLH-DSA ハッシュベース署名 SPHINCS+ さらに2025年には、HQCが追加の耐量子暗号アルゴリズムとして選定され、標準化作業の対象になっている。
移行期のハイブリッド構成
- いきなり置き換えない
既存のRSAやECCをすぐに完全廃止して、すべてを耐量子暗号だけに置き換えるのは現実的ではない。
そのため移行期には、従来の鍵交換と耐量子暗号を組み合わせるハイブリッド構成が使われることがある。
例えば、従来のECDHEで得た共有値と、ML-KEMで得た共有値をKDFで混ぜてセッション鍵を作る。流れとしては、次のように考えると分かりやすい。
- 従来方式で共有値を作る。
- 耐量子暗号でもう一つ共有値を作る。
- 2つの共有値をKDFで混ぜる。
- 得られた値をセッション鍵として使う。
材料 例 役割 従来方式の共有値 ECDHEなど 既存環境との互換性を保つ。 耐量子方式の共有値 ML-KEMなど 量子計算機を想定した備えを加える。 KDF 鍵導出関数 複数の共有値からセッション鍵を作る。 - Harvest Now, Decrypt Later
攻撃者が今の暗号通信を保存しておき、将来の量子コンピュータで復号しようとする考え方を、Harvest Now, Decrypt Later と呼ぶことがある。
長期間秘密にしたい情報では、量子コンピュータが実用化してから対策するのでは遅い場合がある。
そのため、早めに暗号資産を棚卸しし、移行計画を立てることが重要になる。
違いを整理する
| 比較する項目 | 整理するポイント |
|---|---|
| 耐量子暗号と量子暗号 | 耐量子暗号は通常のコンピュータで動くアルゴリズム、量子暗号は量子物理を使う鍵配送などを指す。 |
| 暗号化とゼロ知識証明 | 暗号化は内容を隠す技術、ゼロ知識証明は秘密を見せずに正しさを示す技術。 |
| 秘密計算と完全準同型暗号 | 秘密計算は複数者で隠したまま計算し、完全準同型暗号は暗号化したまま計算する。 |
| 標準化済みと候補 | 標準化された方式と、選定済みだが標準化作業中の方式を区別する。 |
実務とのつながり
- 暗号資産の棚卸し
どこでRSA、ECC、TLS、証明書、署名鍵を使っているかを把握する必要がある。 - ライブラリ更新
耐量子暗号は標準化や実装が進んでいる途中の領域もあるため、信頼できるライブラリと標準に追従する必要がある。 - 長期保存データ
医療、金融、政府、研究情報など、長く秘密にする必要があるデータでは、早めの移行検討が重要になる。
まとめ
- 最新暗号は、秘匿だけでなく、証明、共同計算、鍵分散、将来耐性まで役割が広がっている。
- 軽量暗号は、IoTや組込み機器など制約のある環境で重要になる。
- ゼロ知識証明、秘密計算、完全準同型暗号は、データを見せずに確認・計算するための技術となる。
- 耐量子暗号では、ML-KEM、ML-DSA、SLH-DSAがNIST標準として公開され、移行計画が重要になっている。
参考文献
- National Institute of Standards and Technology, FIPS 203, Module-Lattice-Based Key-Encapsulation Mechanism Standard
- National Institute of Standards and Technology, FIPS 204, Module-Lattice-Based Digital Signature Standard
- National Institute of Standards and Technology, FIPS 205, Stateless Hash-Based Digital Signature Standard
- National Institute of Standards and Technology, SP 800-232, Ascon-Based Lightweight Cryptography Standards
- National Institute of Standards and Technology, NIST Selects HQC as Fifth Algorithm for Post-Quantum Encryption