基于RSA的数字签名改进方案.docVIP

  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文档。上传文档
查看更多
基于RSA的数字签名改进方案   摘要:该文在RSA数字签名的基础上,设计了两种改进方案,有效的解决了隐藏消息的问题,防止了不经意的信息泄露。这两种数字签名方案都是概率数字签名方案,因而安全性提高,具有多项式安全性。   关键词:数字签名;哈希函数;多项式安全性   中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2008)33-1345-02   Modified Digital Signature Scheme Based on RSA   JIA Jie,XU Ci-wen   (College of Science,Central University for Nationalities,Beijing 100081,China)   Abstract: Based on the RSA digital signature,the paper proposed two kinds of modified schemes,which overcome the weakness of message lost when not pay attention.Because they are probabilistic digital signature schemes,they can secure for polynomial.   Key words: digital signature;hash function;polynomial secure   1 引言   在公钥密码学中,密钥是由公开密钥和私有密钥组成的密钥对。在数字签名系统中,发送方首先用自己的私钥对某消息产生数字签名,当接收方接收到这个消息和其对应的数字签名后,利用发送方的公钥来证实这个签名的正确性。从表面上看,数字签名与公钥加密是公钥和私钥的运作顺序不同。实际上,数字签名与公钥加密一样也是用单向陷门函数确保其安全性。本质上,大数分解困难问题和离散对数困难问题等各种计算困难问题的存在是安全的数字签名方案存在的根本。数学签名的应用面很广,因具有“不可否认性”的特性,可以达到对称密钥密码所不能达到的功能。在实际应用中,公开密钥的数学签名技术可用来发展公开密钥基础设施以及数字认证。公钥密码的概念不仅仅体现于密码系统,数字签名也是公钥密码技术的一个重要组成部分。   Difie和Helman[1]首先提出了数字签名的概念。数字签名必须提供一种称为不可否认性的服务。所谓数字签名的不可否认性是指:签名的接收方能够证实发送方的身份,发送方不能否认其曾签署过的签名,任何人不能伪造和篡改签名。正是由于数字签名具有的独特功能和实际用途,使得它在网络通信中具有重要的作用。   2 RSA数字签名方案   第一个数字签名方案是由Rivest,Shamir和Adleman这三位密码学家首先提出的[2]。RSA密码体制用到了初等数论中的一个重要定理―欧拉定理,其安全性依赖于大整数的因数分解的困难性。其用作数字签名的方案如下[3]:   设A为签名人,任意选取两个大素数p和q,计算n=pq,φ(n)=(p-1)(q-1),随机选择整数eφ(n),满足gcd(e,φ(n))=1;计算整数d,满足ed=1modφ(n)。p,q和φ(n)保密,A的公钥为(n,e),私钥为d。   签名:对于消息m(mn),计算s=md mod n,则签名为(m,s),并将其发送给接收人或验证人。   验证:接收人或验证人收到签名(m,s)后,利用A的公钥,计算m=se mod n,检查m=m是否成立。如果成立,则签名正确,否则,签名不正确。   事实上,若签名正是A所签,则有m=se mod n=(md)e mod n=m ed mod n=m。   分析:在该签名方案中,任何人都可以用A的公钥进行解密,不具备加密功能,只起到鉴别签名人身份的目的。如果消息mn,时,可用哈希函数h进行压缩,计算s=(h(m))dmod n,接收方或验证方收到(m,s)后,先计算 m=se mod n,然后检查 m=h(m)是否成立,即可鉴别签名是否正确。在这里,m只起到一种支撑的作用,没有实质性的意义。如果m包含重要的信息,不能泄露,那么签名还需要进行加密处理,再传送。基于此,设计了下面的基于RSA的数字签名改进方案。   3 改进的数字签名方案   首先假设系统的初始化过程如上,A为签名人,A产生的公钥为(n,e),私钥为d。则改进的方案如下:   改进方案一:   签名:① 所签消息m   ② 产生随机填充的伪随机数:r   ③ 计算s1=m?r[4]   ④ 计算摘要值h=H(s1)   ⑤ 产生签名s≡hd mod n   ⑥ 输出:(s1

文档评论(0)

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

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

版权声明书
用户编号:8073070133000003

1亿VIP精品文档

相关文档