慶應義塾大学 環境情報学部
あかこう (@_akakou)
犬でもわかる
公開鍵暗号
盗聴のリスク
インターネットでは複数のコンピュータを中継して通信をする
➔ 通信が途中で盗聴される可能性がある
2
途中で盗聴可能
暗号
特定の人物に平文(秘密)を共有したい
➔ 見ても特別な知識なしでは、読めないように変換する
3
平文
暗号文
イブは暗号文を盗聴できる
➔ 暗号文を解読できないため、
平文を盗聴できない
アリス(送信者) ボブ(受信者)
イブ(盗聴者)
共通鍵暗号方式
暗号化と復号で同じ鍵を利用する暗号方式
送信者と受信者が事前に共通鍵(秘密鍵)を共有する必要がある
4
アリス(送信者) ボブ(受信者)
①暗号化 ③復号②送信
平文
暗号文
共通鍵暗号方式の例
シーザー暗号:平文をアルファベット順に共通鍵分ずらす暗号方式
5
ABC DEF
平文 暗号文
暗号化
(s=3)
復号
(s=3)
AES:現在標準的に利用されている共通鍵暗号方式
   名前は Advanced Encryption Standardの略
暗号化と復号に使う鍵sは、
どちらも3である。
共通鍵暗号方式の問題
● 相手ごとに鍵を作成する必要がある
○ n人が相互に暗号通信するのに
必要な共通鍵数は n(n-1)/2
● 漏洩せずに共通鍵を配送することは難しい
6
公開鍵暗号方式
公開鍵という漏洩しても構わない鍵を利用する暗号方式
パターン1:秘密の共有された値を作る方式
● Diffie-Hellman 鍵共有
パターン2:公開鍵で暗号化し、秘密鍵で復号する方式
● RSA 暗号方式
● ElGamal 暗号方式
7
パターン1:秘密の共有された値を作る方式
公開鍵と秘密鍵を用いて、
同じ秘密を作成(共有)する
➔ この秘密を共通鍵暗号方式
の共通鍵として利用する
8
アリス(送信者) ボブ(受信者)
①鍵ペア※の生成 ①鍵ペアの生成
②公開鍵の交換
③秘密の
生成
③秘密の
生成
※鍵ペア:公開鍵と秘密鍵のペア
公開鍵
秘密鍵
生成された秘密
1. 受信者側が鍵ペアを作り、公開鍵を公開する
2. 送信者は公開鍵で暗号化し、受信者はそれを秘密鍵で復号する
9
パターン2:公開鍵で暗号化し、秘密鍵で復号する方式
アリス(送信者) ボブ(受信者)
①鍵ペアの生成
②公開鍵の送信
④暗号文の送信
③暗号化 ⑤復号
公開鍵
秘密鍵
平文
暗号文
公開鍵暗号の利点
● 秘密鍵の数はユーザ数の数で良い
○ n人が相互に暗号通信するのに
必要な秘密鍵数は n
● 配送する公開鍵は、漏洩しても問題がない
10

犬でもわかる公開鍵暗号