做算法的同学的参考模板 联系客服

发布时间 : 星期六 文章做算法的同学的参考模板更新完毕开始阅读

重新产生n。

具体实现代码如下:

4 测试

⑴产生奇素数p,若Miller-Rabin检测没有通过,则继续产生下一个随机数,直至产生满足条件的奇素数p,并输出p及用小素数试除的余数。如图4-1所示:

图示 4-1

⑵输出奇素数q的过程如图4-2和4-3所示:

图示4-2

第6 页 共 11 页

图示4-3

⑶输出私钥d和加密后密文及解密后明文如图4-4所示:

图示4-4

第7 页 共 11 页

结 论

本文是在学习了相关C语言知识、密码学及相关数学知识之上进行的设计,本设计采用VC++设计系统类的实现,实现了用RSA算法对消息进行签名的加密解密算法。

RSA算法的缺点之一是计算量大,运行速度慢,本设计其中算法用到了辗转相除法,模重复平方法和平方乘算法,提高了RSA算法中的运算速度。并且选取的随机数p和q的数值偏大,也在一定程度上增强了RSA算法的可靠性。

由于本人水平有限,在程序可读性和规范性上有着一定的欠缺,而在实现功能上也显得不是很完善,需要在进一步的学习中得到提高。

参考文献

[1] 谭浩强. C程序设计[M].北京:清华大学出版,1999.12 [2] 张仕斌. 应用密码学[M].西安:西安电子科技大学出版,2009.12 [3] 陈恭亮.简明信息安全数学基础[M]. 北京:高等教育出版社, 20011.1

第8 页 共 11 页