公開鍵暗号 — 2つの鍵で、鍵配送問題を解く

上級の解説は準備中のため、上級の内容を表示しています。

概要 — まず全体をつかむ

初級では「2つの鍵・南京錠」で捉えました。上級では、安全性の根拠・鍵交換・将来の脅威へ。

詳細 — 1段階ずつ追う

何が「難しい」ので安全なのか

公開鍵暗号は、「片方向は簡単だが、逆は極めて難しい」数学に依ります。

  • RSA — 大きな数の素因数分解の困難さ
  • 楕円曲線(ECC) — 楕円曲線上の離散対数の困難さ。同じ強度を短い鍵で(省電力・高速)
  • 鍵長と強度 — RSA-2048 ≒ ECC-224 程度、のように対応づく

「公開鍵から秘密鍵を計算できない」のは、この問題が現実的な時間で解けないから、が根拠です。

鍵交換と実運用

公開鍵は「暗号化」以外に、鍵交換署名にも使います。

  • 鍵交換(DH/ECDHE) — 互いの公開値から、同じ共通鍵を安全に作る
  • ハイブリッドの必然 — 公開鍵は遅いので、共通鍵(セッション鍵)を渡す用途に限り、本体は共通鍵で
  • 前方秘匿性 — 使い捨ての鍵交換(ECDHE)で、後に長期鍵が漏れても過去を守る
  • 署名にも同じ鍵ペア — 秘密鍵で署名、公開鍵で検証(別記事)
アニメーション『ディフィー・ヘルマン鍵交換』を開く
A盗聴者(公開路)B
  • A秘密の数 a を持つ。公開値だけを送る
  • 盗聴者(公開路)公開路を流れる値は全部見えるが、秘密 a・b は見えない
  • B秘密の数 b を持つ。公開値だけを送る
AとBが公開値だけを交換し、各自の秘密と混ぜて『同じ共有秘密』に到達します。「▶ 再生」または「次へ」で進めてください。
0 / 7

⚠️ 危殆化と実装

  • 量子計算(Shor) — RSA/ECCを効率的に破りうる → 耐量子暗号(PQC) への移行が進む
  • 弱い乱数/パラメータ — 素数生成や曲線選定の不備で破られる
  • サイドチャネル — 計算時間・消費電力から秘密鍵が漏れる
  • 「今盗んで後で解読」(harvest-now, decrypt-later) — 暗号化通信を保存し、将来の量子で解く懸念。対抗の本命はPQC(耐量子鍵交換)(前方秘匿性は長期鍵の漏洩には有効だが、記録済みのECDHE自体を量子で解かれるのは防げないため、この脅威にはPQCが要る)

関連する知識

理解度チェック

そのまま解けます(成績は保存されません)。無料アカウントを作ると、学習の記録と進捗の山登りが始まります。

1. 十分な規模の量子コンピュータが素因数分解や離散対数を効率的に解いてRSAやECCを破りうるとされる、そのアルゴリズムの名前を答えよ。

2. RSAと楕円曲線暗号(ECC)が安全性の根拠にしている「難しい問題」の組み合わせで近いのは?

3. 将来、公開鍵暗号の多くを破りうるとされる技術は?

4. 公開鍵暗号は処理が重いため、共通鍵(セッション鍵)を安全に渡す用途に限って使い、本体データは共通鍵で暗号化する。この組み合わせを何と呼ぶか?

5. 使い捨ての鍵交換(ECDHE)で得られる「前方秘匿性(forward secrecy)」の説明として正しいのは?

6. 署名に公開鍵ペアを使うとき、鍵の使い方として正しいのは?

7. 「今は暗号化通信を保存しておき、将来の量子コンピュータで後から解読する」脅威(harvest-now, decrypt-later)への本命の対抗策は?

8. 暗号方式そのものでなく、計算時間や消費電力といった実装の副次的な漏れから秘密鍵を推定する攻撃を、カタカナで何と呼ぶか。