RSA数字签名系统的设计与实现.doc

  1. 1、本文档共38页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE \* MERGEFORMAT38 RSA数字签名系统设计与实现 上海电力学院 《应用密码学》课程设计 题  目: RSA数字签名系统的设计与实现                       院  系:  计算机科学与技术            专业年级:  信息安全 2010            学生姓名:   范晓宁    学号: 指导教师:     田秀霞           2013年1月 8日 目录 1、开发环境与工具……………………….2 2、设计原理(算法工作原理)………….3 3、系统功能描述与软件模块划分……….4 4、设计核心代码………………………….4 5、设计结果及验证……………………….9 6、软件使用说明…………………………15 7、参考资料………………………………15 8、设计体会………………………………16 9、附录:代码……………………………17 1、开发环境与工具流程图 1)32位windows7操作系统 2)内存4GB 3)调试程序VC++6.0 4) 2、设计原理(算法工作原理) 在数字签名技术出现之前,曾经出现过一种“数字化签名”技术,简单地说就是在手写板上签名,然后将图像传输到电子文档中,这种“数字化签名”可以被剪切, 然后粘贴到任意文档上,这样非法复制变得非常容易,所以这种签名的方式是不安全的。数字签名技术与数字化签名技术是两种截然不同的安全技术,数字签名与用 户的姓名和手写签名形式毫无关系,它实际使用了信息发送者的私有密钥变换所需传输的信息。对于不同的文档信息,发送者的数字签名并不相同。没有私有密钥, 任何人都无法完成非法复制。从这个意义上来说,“数字签名”是通过一个单向函数对要传送的报文进行处理得到的,用以认证报文来源并核实报文是否发生变化的 一个字母数字串。 现在的信息化时代下,信息的安全与否就显得尤为重要,用RSA进行数字签名具有很高的安全性。本程序要完成可以实现对已知明文的加密和摘要已经对摘要进行RSA加密算法(即数字签名),还要实现对密文解密,和对数???签名解密得到明文的摘要,看是否与解密的明文的摘要相同,如果相同说明文件没有被人改过,否则文件已经被修改了。 RSA加密算法,依赖于大素数,公钥是公开的,而私钥是必威体育官网网址的,通过某种安全的渠道传输,公钥(e,n);私钥(d,n) RSA的算法涉及三个参数,n、e、d。 其中,n是两个大质数p、q的积,n的二进制表示时所占用的位数,就是所谓的密钥长度。 e1和e2是一对相关的值,e1可以任意取,但要求e1与(p-1)*(q-1)互质;再选择e2,要求(d*e)mod((p-1)*(q-1))=1。 (e,n),(d,n)就是密钥对。其中 (e,n)为 HYPERLINK /view/355291.htm \t _blank 公钥,(d,n)为私钥。[ MD5的作用是让大容量信息在用 HYPERLINK /view/7626.htm \t _blank 数字签名软件签署私人 HYPERLINK /view/934.htm \t _blank 密钥前被压缩成一种必威体育官网网址的格式(就是把一个任意长度的字节串变换成一定长的十六进制数字串)。 3、系统功能描述与软件模块划分 本程序实现了3个功能: 随机有哪些信誉好的足球投注网站大素数,随机生成公钥和私钥; 用私钥对任意长度的明文签名; 用公钥对签名验证 软件分为5个模块: 1-对明文加密 2-对明文摘要 3-对明文签名 4-对密文解密 5-对签名验证 4、设计核心代码 要对指定的明文进行加密,必须要有公钥和密钥,而此的基础是随机产生两个素数、求公钥和私钥: int chose() //从指定素数中随机产生两个素数 { int temp; int sourse[43]= { 17,19,23,29,31,37,41,43, 47,53,59,61,67,71,73,79,83,89, 97,101,103,107,109,113,127,131,137,139, 149,151,157,163,167,173,179,181,191,193, 197,199,211 }; srand((int)time(NULL)); temp=sourse[rand()%43]; return temp; } unsigned int ask_e(unsigned

文档评论(0)

xingyuxiaxiang + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档