- 9
- 0
- 约小于1千字
- 约 7页
- 2017-08-14 发布于安徽
- 举报
密码学实验报告
学院名称 : 通信与信息工程学院 实验名称 : RSA密码算法实现
【实验名称】
RSA密码算法实现
【实验目的】
了解公钥密码体制的基本思想。
掌握公钥密码算法RSA,并体会其设计思想。
学会分析RSA算法的安全性。
【实验原理及步骤】
实验原理:
RSA 的安全性依赖于大数分解。公钥和私钥都是两个大素数( 大于 100 个十进制位)的函数。据猜测,从一个密钥和密文推断出明文的难度等同于分解两个大素数的积。
密钥对的产生。选择两个大素数,p 和 q 。计算:
n = p × q
然后随机选择加密密钥 e,要求 e 和 ( p - 1 ) × ( q - 1 ) 互质。最后,利用 Euclid 算法计算解密密钥 d, 满足
e × d = 1 ( mod ( p - 1 ) × ( q - 1 ) )
其中 n 和 d 也要互质。数 e 和 n 是公钥,d 是私钥。两个素数 p 和 q 不再需要,应该丢弃,不要让任何人知道。
加密信息 m(二进制表示)时,首先把 m 分成等长数据块 m1 ,m2,..., mi ,块长 s,其中 2^s ≤ n, s 尽可能的大。对应的密文是:
ci = mi^e ( mod n )
解密时作如下计算:
mi = ci^d ( mod n )RSA算法以两个大素数
原创力文档

文档评论(0)