- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 中间人攻击 gx gy sk=(gy’)x sk’=(gx’)y gx’ gy’ sk=(gx)y’ sk’=(gy)x’ x’, y’ sk sk’ x y Alice Bob Oscar 2. ElGamal密码体制 (1) ElGamal密码体制的原理 密钥产生过程: 首先选择一素数p以及小于p的随机数x, g是p的本原根,计算y≡gx mod p。以(y, g, p)作为公开密钥,x作为秘密密钥。 加密过程: 明文消息M,随机选一整数 kp-1,计算C1≡gk mod p,C2≡ykM mod p,密文为C=(C1,C2)。 解密过程: 因为 (2) 利用椭圆曲线实现ElGamal密码体制 首先选取一条椭圆曲线,并得Ep(a,b),将明文消息m通过编码嵌入到曲线上得点Pm,再对点Pm做加密变换。 取Ep(a,b)的一个点G,Ep(a,b)和G作为公开参数。 用户A选nA作为秘密钥,并以PA=nAG作为公开钥。任一用户B若想向A发送消息Pm,可选取一随机正整数k,产生以下点对作为密文: Cm={kG,Pm+kPA} A解密时,以密文点对中的第二个点减去用自己的秘密钥与第一个点的倍乘,即 Pm+kPA-nAkG=Pm+k(nAG)-nAkG=Pm 攻击者若由Cm得到Pm,就必须知道k。而要得到k,只有通过椭圆曲线上的两个已知点G和kG,这意味着必须求椭圆曲线上的离散对数,因此不可行。 椭圆曲线实现ElGamal密码体制 4. B向A发送消息Pm,可选取一随机正整数1?k ? ord(G)-1,产生密文: Cm={kG, Pm+kPA} 5. A解密: Pm+kPA-nAkG=Pm+k(nAG)-nAkG=Pm 1. p3大素数,Zp, E。G?E, G的阶足够大。p,E,G公开。 2. 随机选取整数nA,1?nA ?ord(G)-1, 计算PA= nA G作为公开的加密密钥, nA是保密的解密密钥。 3. 明文空间为 C1≡gk mod p, C2≡ykM mod p密文C=(C1,C2) 例 取p=751,Ep(-1,188),即椭圆曲线为y2≡x3-x+188,Ep(-1,188)的一个生成元是G=(0,376),A的公开钥为PA=(201,5)。 假定B已将欲发往A的消息嵌入到椭圆曲线上的点Pm=(562,201) B选取随机数k=386 kG=386(0,376)=(676,558) Pm+kPA=(562,201)+386(201,5)=(385,328) 密文: {(676,558),(385,328)}。 椭圆曲线ElGamal密码体制: 1. 安全性基于椭圆曲线上的离散对数的难解性 加密算法是概率算法 不能抵御选择密文攻击。 安全性高: 攻击有限域上的离散对数可用指数积分法,运算复杂度为 。 对ECC上离散对数攻击并不有效。 攻击ECC上离散对数问题的方法只有大步小步法,复杂度为 。pmax是ECC形成的交换群的阶的最大素因子,因此ECC上的密码体制比基于有限域上离散对数问题的公钥体制更安全 3. 椭圆曲线密码体制的优点 (2) 密钥量小 由攻击两者的算法复杂度可知,在实现相同的安全性能条件下,椭圆曲线密码体制所需的密钥量远比基于有限域上的离散对数问题的公钥体制的密钥量小。 (3) 灵活性好 有限域GF(q)一定的情况下,其上的循环群就定了。而GF(q)上的椭圆曲线可以通过改变曲线参数,得到不同的曲线,形成不同的循环群。因此,椭圆曲线具有丰富的群结构和多选择性。 本章总结 三类难解问题: 大数分解问题,有限域上的离散对数,椭圆曲线上的离散对数 RSA,Rabin公钥密码体制 ElGamal 公钥密码体制,Diffie-Hellman密钥交换协议 椭圆曲线上的密码体制: ElGamal 公钥密码体制,Diffie-Hellman密钥交换协议 作业 1.在RSA密码体制中,已知素数p =3,q =11,公钥e=7,试计算私钥d并给出对明文m=5的加密和解密过程。 2.在ElGamal密码体制中,设素数p =71,本原元g=7: ① 如果接收者B的公钥为yB=3,发送者A随机选择整数k=2,求明文m=30所对应的密文。 ②
文档评论(0)