Diffie-Hellman Example s Users alice bob who wish to swap keys Agree on prime p=353 and a=3 Select random secret keys a chooses x=97 B chooses xp=233 Compute public keys yA=3mod353=40 Alice) yB=3mod353=248 (Bob) Compute shared session key as 97 KAB=yB. mod 353=245 mod 353= 160(Alice KAB=yA mod 353 =40 mod353=160(Bob) 0(0 ash mfy@ustc.edu.cn 现代密码学理论与实践 11/54
mfy@ustc.edu.cn 现代密码学理论与实践 11/54 Users Alice & Bob who wish to swap keys Agree on prime p=353 and α =3 Select random secret keys: ◦ A chooses xA=97, ◦ B chooses xB=233 Compute public keys: ◦ yA=3 97 mod 353 = 40 (Alice) ◦ yB=3 233 mod 353 = 248 (Bob) Compute shared session key as: KAB= yB xA mod 353 = 24897 mod 353 = 160 (Alice) KAB= yA xB mod 353 = 40233 mod 353 = 160 (Bob)
Dfle- Hellman密钥交换协议 本协议不能抵抗中间人攻击 User A User B Generate random XA<g Calculate YA=aA mod q Generate andom Xr< q Calculate YB=a B mod g; B Calculate Calculate K=(YAB mod q K=(YBHA mod g Figure 10.8 Diffie-Hellman Key exchange mfy@ustc.edu.cn 现代密码学理论与实践 12/54
mfy@ustc.edu.cn 现代密码学理论与实践 12/54 本协议不能抵抗中间人攻击
Dfle的公钥密码体制概念 1976年, Whitfield diffie和 Martin hellman 提出这样的设想:每个用户A有一加密密钥ka, 不同于解密密钥ka,可将加密密钥ka公开,ka 保密,要求k的公开不影响ka的安全。若B要向 A秘密发送明文m,可查A的公开密钥ka,加密 得密文C=Eam) A收到C后用只有A才拥有的解密密钥ka对C 进行解密得m=Dka(C) 0实用方案的发展依赖于单向陷井函数 0(0 ash mfy@ustc.edu.cn 现代密码学理论与实践 13/54
mfy@ustc.edu.cn 现代密码学理论与实践 13/54 ◦ 1976年,Whitfield Diffie和Martin Hellman 提出这样的设想:每个用户A有一加密密钥ka, 不同于解密密钥ka ’,可将加密密钥ka公开,ka ’ 保密,要求ka的公开不影响ka ’的安全。若B要向 A秘密发送明文m,可查A的公开密钥ka,加密 得密文C=Eka(m) A收到C后用只有A才拥有的解密密钥ka ’对C 进行解密得m=Dka’(C). ◦ 实用方案的发展依赖于单向陷井函数
9.2公开密钥密码体制的基本原理 对称密码体制的问题 。加密能力与解密能力是捆绑在一起的 。密钥更换、传递和交换需要可靠信道,密钥分发困难 0如有N用户,则需要C=N(N-1)/2个密钥,n=1000时, C(1000,2)≈500000,密钥管理困难 无法满足不相识的人之间通信的保密要求 不能实现数字签名 非对称密码体制的基本特点 加密能力与解密能力是分开的 0密钥分发简单 需要保存的密钥量大大减少,N个用户只需要N个密钥 。可满足不相识的人之间保密通信 可以实现数字签名 0(0 ash mfy@ustc.edu.cn 现代密码学理论与实践 14/54
mfy@ustc.edu.cn 现代密码学理论与实践 14/54 对称密码体制的问题 ◦ 加密能力与解密能力是捆绑在一起的 ◦ 密钥更换、传递和交换需要可靠信道,密钥分发困难 ◦ 如有N用户,则需要C=N(N-1)/2个密钥,n=1000时, C(1000, 2)≈500000, 密钥管理困难 ◦ 无法满足不相识的人之间通信的保密要求 ◦ 不能实现数字签名 非对称密码体制的基本特点 ◦ 加密能力与解密能力是分开的 ◦ 密钥分发简单 ◦ 需要保存的密钥量大大减少,N个用户只需要N个密钥 ◦ 可满足不相识的人之间保密通信 ◦ 可以实现数字签名
9.2.1公开密钥密码体制 丶公钥算法依赖于一个加密密钥和一个与之相关的不 同的解密密钥,算法有如下特点: 。仅根据密码算法和加密密钥来确定解密密钥在计算上是 不可行的 0两个密钥的任何一个都可用来加密,另一个用来解密 公钥密码体制的组成 0明文:算法的输入,可读信息或数据 加密算法:对明文进行各种转换 。公钥和私钥:算法的输入,分别用于加密和解密 密文:算法的输出,依赖于明文和密钥 解密算法:根据密文和密钥,还原明文 ter Science& Technologs ash mfy@ustc.edu.cn 现代密码学理论与实践 15/54
mfy@ustc.edu.cn 现代密码学理论与实践 15/54 公钥算法依赖于一个加密密钥和一个与之相关的不 同的解密密钥,算法有如下特点: ◦ 仅根据密码算法和加密密钥来确定解密密钥在计算上是 不可行的 ◦ 两个密钥的任何一个都可用来加密,另一个用来解密 公钥密码体制的组成 ◦ 明文:算法的输入,可读信息或数据 ◦ 加密算法:对明文进行各种转换 ◦ 公钥和私钥:算法的输入,分别用于加密和解密 ◦ 密文:算法的输出,依赖于明文和密钥 ◦ 解密算法:根据密文和密钥,还原明文