【こうかいかぎあんごう】

公開鍵暗号 とは?

💡 「鍵の受け渡し問題」を解決した革命的な暗号方式
📌 このページのポイント
送信者 公開鍵で暗号化 (誰でも使える) X3$#kP9@ !mQ2&Rz7 vN%8^wL1 暗号化済み 秘密鍵で復号 (本人だけ持つ) 受信者 こんにちは 本文内容 読めた! 復号完了 公開鍵暗号方式 公開鍵は誰でも入手可能。秘密鍵を持つ受信者だけが復号できる
公開鍵で暗号化し、秘密鍵だけが復号できる
ひよこ ひよこ

なんで鍵が2つあるの?

ペンギン先生 ペンギン先生

共通鍵(1つの鍵を使い回す)の問題は「鍵をどうやって安全に渡すか」という「鍵配送問題」があること。公開鍵暗号は公開鍵を誰でも知れるようにして暗号化、復号は自分だけが持つ秘密鍵でするから、事前の安全な鍵交換が不要になる。

ひよこ ひよこ

具体的にどう使うの?

ペンギン先生 ペンギン先生

例えばHTTPS通信。サーバは公開鍵を証明書に入れて公開する。クライアントはそれで共通鍵を暗号化して送り、サーバが秘密鍵で復号して共通鍵を取得。その後は共通鍵で高速な暗号通信をする。

ひよこ ひよこ

電子署名との関係は?

ペンギン先生 ペンギン先生

公開鍵暗号を逆に使う。秘密鍵で署名して(「私が作ったことの証明」)、公開鍵で検証する。誰でも公開鍵で「本当にこの秘密鍵の持ち主が署名したか」を確認できるから改ざん検出に使える。

ひよこ ひよこ

SSH接続で公開鍵認証を使うのも同じ仕組みなの?

ペンギン先生 ペンギン先生

そうだよ。ssh-keygenで鍵ペアを作り、公開鍵をサーバに登録、秘密鍵は手元に保持する。接続時にサーバが秘密鍵の持ち主かを検証して認証する。パスワード認証よりはるかに安全だから、サーバ管理ではSSH公開鍵認証が必須とされているよ。

ひよこ ひよこ

量子コンピュータが実用化されたら公開鍵暗号は破られるの?

ペンギン先生 ペンギン先生

現在の主流であるRSAや楕円曲線暗号は、理論上は量子コンピュータショアのアルゴリズムで解読可能だよ。だからNISTが量子耐性のある「ポスト量子暗号」の標準化を進めていて、2024年に最初の標準が正式決定された。まだ実用的な量子コンピュータは存在しないけど、「今暗号化したデータを将来解読される」リスクに備えて、金融機関などは既に移行を始めているよ。

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
公開鍵暗号って出てきたら「2つのペアの鍵を使う暗号方式、公開鍵で暗号化して秘密鍵でのみ復号できる」と思えばOK!
📖 おまけ:英語の意味
「Public Key Cryptography」 = 公開鍵暗号方式
💬 1976年にWhitfield DiffieとMartin Hellmanが提唱した革命的な暗号理論。それ以前は通信前に共通鍵を安全に共有する問題(鍵配送問題)が解決されていなかった
← 用語集にもどる