课程设计要求:
编写RSA算法的加解密程序,运行并验证。
(1)编程实现判断整数为素数和求模逆及模幂的算法:对于随机产生的一个正整数,使用Miller-Rabin素性检验算法判断输入的整数是否为素数;输入两个正整数,使用扩展的欧几里德算法判断两个整数互素并求出一个整数关于另一个整数的逆元;输入指数、底数和模数,使用快速指数算法完成模幂运算。
(2)将(1)中的算法整合实现RSA加解密算法:完成p和q的选取,公私钥的产生,以及对输入明文的加密和对密文的解密。
(3)要求实验报告中有对应的原理概述、算法分析、程序设计过程(包含调试记录)、程序源代码、程序验证记录和程序设计总结。
实验条件:
(1)主要设备: 586或更高机型,256MB或更高的内存,40G或更大的硬盘。
(2)主要软件: