7回目

情報セキュリティ
第7回
DHの鍵配送
脅威と暗号技術
セキュリティに対する脅威
盗聴
(秘密が漏れる)
脅かされる特性
暗号技術
共通鍵暗号
機密性
公開鍵暗号
改竄
(情報が書き換えられる)
正真性
一方向ハッシュ関数
なりすまし
(正しい送信者のふりをする)
認証
メッセージ認証コード
否認
(後から私じゃないと言う)
否認不可能性
デジタル署名
DH(Diffie-Hellman)の鍵配送法

鍵配送方法



共通鍵を暗
号化して送る
公開鍵暗号系を使う方法
DHの鍵配送法を使う方法
DHの鍵配送法




送信者はaをランダムに選
び yA(=ga mod p)と素数p
と原始元gを公開する。
受信者はbをランダムに選
びyB(=gb mod p)と素数p
と原始元gを公開する。
送信者はaと受信者の公
開情報yBを使って共通鍵
K=(yB )aを計算する。
受信者はbと送信者の公
開情報yAを使って、共通
鍵K=(yA )bを計算する。
公開鍵暗号系を使う方法
受信者
送信者
共
通
鍵
K
暗
号
化
公開鍵PK
暗号文c
復
号
共
通
鍵
K
秘密鍵SK
DHの鍵配送法を使う方法
送信者の
公開情報
受信者の
公開情報
素数p, 原始元g
yA(=ga mod p)
素数p, 原始元g
yB(=gb mod p)
送信者の
秘密情報
受信者の
秘密情報
a, K=(yB)a mod p
b, K=(yA)b mod p
共通鍵 K=gba mod p
共通鍵 K=gab mod p
「DH問題の難しさ」
≦「離散対数問題の難しさ」
 DH問題とは,公開情報(p,g,yA,yB)から鍵K(=gab mod p)を求める問題。
 離散対数問題とは,公開情報(p,g,yA,yB)からyA=ga mod pとyB=gb mod p
を満たす離散対数aとbを求める問題。
 離散対数問題が解ければ、DH問題は解ける。
 理由: aとbが得られれば鍵K(=gab mod p)を求めることが出来るから。
 従って、離散対数問題の方が難しい。このことを次のように書く:
「DH問題の難しさ」≦「離散対数問題の難しさ」
 DH仮説: pが大きいならばDH問題を解く効率的なアルゴリズムはない。
問題を解く
アルゴリズム
入力
p,g,yA,yB
DH問題
アルゴ
リズム
出力
K = gab mod p
離散対数問題
p,g,yA,yB
アルゴ
リズム
a (yA=ga mod p)
b (yB=gb mod p)
「DH問題の難しさ」
=「ElGamal暗号の難しさ」
ElGamal暗号を解くA
Pk=(p,g,gx)
C=(gr,mgxr)
公開情報
DH問題を解くB
(p,g,ga,gb)
m
A
公開鍵
暗号文
Aを使って
DH問題を解くB
(p,g,ga,gb)
共通鍵
m
R/m ≡ gab
gab
「DH問題の難しさ」≦「ElGamal暗号の難しさ」
gab
Bを使って
ElGamalを解くA
(p,g,gx,gr)
Rをランダム
に選ぶ
A
素数pに対し、
GF(p)は「体」
Pk=(p,g,gx)
C=(gr,mgxr)
Pk=(p,g,ga)
C=(gb,R)
B
B
gxr
mgxr/gxr ≡ m
平文
m
「DH問題の難しさ」≧「ElGamal暗号の難しさ」
「DH問題の難しさ」=「ElGamal暗号の難しさ」
高速べき乗法(多項式時間で解ける)
 y=ax mod n を高速に計算する方法
べき乗計算はElGamalやRSAで現れる
 通常の方法
 x-1(≒2k、kはxのビット数)回の掛算: ax=a×a×…×a
乗算6回≒23回
 (例)7乗: a7=a×a×a×a×a×a×a
xk-1, xk-2 ,.., x0 は0又は1
 高速ベキ乗法
 xの2進数表示: x=(xk-1, xk-2, … , x0)2
x =0ならば掛算が不
2
k-1
要なので回数は減る
=x0+2x1+2 x2+…+2 xk-1
2
k-1
 k-1回の掛算: ax=ax0×a2x1×a2 x2×…×a2 xk-1
2(k-1)回
2
k-1
k-2
k-2
 k-1回の掛算: a2 =a×a, a2 =a2×a2,…,a2 =a2 ×a2
2
2
乗算4回
 (例)7乗: a2, (a2) , a7=a×a2×a2
i
通常の方法
高速べき乗法
2k
2(k-1)
計算回数
「指数関数」
K=1024ビットでは、約10306回
kはxのビット数
「多項式」
K=1024ビットでは2046回
公開鍵暗号の歴史
 1976年DiffieとHellmanは公開鍵暗号のアイディアを発表。
 1977年MerkleとHellmanはナップサック暗号を作成。
 1978年RivestとShamirとAdlemanはRSAを発表。




RSAは現在、公開鍵暗号のデファクト標準である。
1983年RSA社はRSAアルゴリズムを特許化。
1999年DiffieとHellmanとMerkleがIEEE小林宏治記念賞を
受賞。
2000年RivestとShamirとAdlemanがIEEE小林宏治記念
賞を受賞。
2002年RivestとShamirとAdlemanがTuring賞を受賞。