ch10数字签名和认证协议.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ch10数字签名和认证协议

第十章 数字签名与认证协议;?M进行签名: SigK(x,k)=(?,?), 其中,?=?k(modp), ?=(x- ? ?)k-1(modp-1) 对x, ??Fp*和??Zp-1,验证签名定义为 Ver(x, ?,?)=真(true)???????x(modp) 对EIGamal签名方案安全性的讨论: 若Oscar在不知道a的情况下企图伪造一个给定消息x的签名: Sigoscar(x,k)=(?,?) (1)Oscar先选定一个?,然后企图找?,这样,他就必须解一个关于未知数?的方程: ??????x(modp) 这个方程是一个已知无可行解法的难处理问题!;(2)Oscar先选定一个? ,使其满足: ??????x(modp),于是, ????-??x(modp),这样,他就必须计算离散对数 log?(?-??x)=?,这自然是难处理的问题! (3)若两者?, ?都被 Oscar首先选定,然后企图解出一个随机消息x,使得??????x(modp),于是Oscar利用这种方式也不能伪造随机消息的签名。 (4) Oscar同时选择?, ?和x来伪造签名问题: 假设i和j是整数,0=I=p-2,0=j=p-2,且(j,p-1)=1,先完成下列计算: ???i?j(modp) ??-?j-1(modp-1) x=-?ij-1(modp-1) (其中j-1是用模p-1来计算的); 可以证实(?, ?)是一个消息x的有效签名: 例子:假设p=467,?=2和?=132,它们为Bob公开的签名方案中的参数。Oscar利用这些参数伪造对一随机信息x的签名: 选择i=99和j=179,那么j-1(modp-1)=151,计算出下列的x,?, ?: ; 那么(117,41)是消息331的一个有效签名。验证: 因此,这个伪造的签名有效! (5)其他类型的伪造签名: Oscar依据Bob已签名的消息来做伪签名。假设(?, ?) 是一个消息x的有效签名,那么Oscar可以用此来伪签其它 消息: 设h,i,j为整数,0=h,i,j=p-2且 ,计算; (其中 是模p-1算出) 然后可验证出 因此 , 为假消息 的一个有效签名 讨论两个问题: (1)用EIGamal方案计算一个签名时,使用的随机数k为什么不能泄露? (2)若Bob用相同的值来签名不同的两份消息,Oscar能否攻破这个体制?;2 数字签名标准; 注:1*.DSS的使用涉及到Smart卡的使用,要求短的签名。DSS以一个巧妙的方法修改了EIGamal方案,使得签名160bits消息产生一个320bit的签名,但是计算使用了512比特的模p. 2*.要求 在整个签名算法中,如果计算了一个值 ,程序自动拒绝,并且产生一个新的随机值计算新的签名,事实上, 的发生概率大约为2-160. ;3*. DSS是一个产生签名比验证签名快得多的方案,验证签名太慢! 4*. Smart卡的应用!!Smart卡有有限的处理能力,但是能与计算机进行通信。人们企图设计一种让Smart卡仅作小量运算的签名方案。该方案必须完成签名、验证签名两部分,而且方便安全。 用DSS签名的例子: 假设取q=101,p=78*9+1=7879,3为F7879的一个本原 元,所以能取?=378(mod7879)=170为模p的q次单位根。 假设a=75,那么???a(mod7879)=4567.现在, 假设Bob想签 名一个消息x=1234,且他选择了随机值k=50,可算得 k-1(mod101)=99,签名算出: ?=(17050(mod7879)(mod101) =2518(mod101)=94;?=(1234+75*94)99(mod101)=97 签名为(1234,94,97)。 验证: ?-1=97-1(mod101)=25 , e1=1234*25(mod101)=45,e2=94*25(mod101)=27 (17045*456727(mod7

文档评论(0)

junjun37473 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档