RSA算法演示实验
了解RSA运算的算法
了解RSA算法的实现方法
掌握RSA运算的基本原理
1.RSA算法
RSA公开密钥密码体制。所谓的公开密钥密码体制就是使用不同的加密密钥与解密密钥,是一种“由已知加密密钥推导出解密密钥在计算上是不可行的”密码体制。非常好用。
在公开密钥密码体制中,加密密钥(即公开密钥)PK是公开信息,而解密密钥(即秘密密钥)SK是需要保密的。加密算法E和解密算法D也都是公开的。虽然秘密密钥SK是由公开密钥PK决定的,但却不能根据PK计算出SK。正是基于这种理论,1978年出现了著名的RSA算法,它通常是先生成一对RSA 密钥,其中之一是保密密钥,由用户保存;另一个为公开密钥,可对外公开,甚至可在网络服务器中注册。为提高保密强度,RSA密钥至少为500位长,一般推荐使用1024位。这就使加密的计算量很大。为减少计算量,在传送信息时,常采用传统加密方法与公开密钥加密方法相结合的方式,即信息采用改进的DES或IDEA对话密钥加密,然后使用RSA密钥加密对话密钥和信息摘要。对方收到信息后,用不同的密钥解密并可核对信息摘要。
RSA算法是第一个能同时用于加密和数字签名的算法,也易于理解和操作。RSA是被研究得最广泛的公钥算法,从提出到现在的三十多年里,经历了各种攻击的考验,逐渐为人们接受,普遍认为是目前最优秀的公钥方案之一。
2. RSA算法安全性
RSA的安全性依赖于大数分解,但是否等同于大数分解一直未能得到理论上的证明,因为没有证明破解 RSA就一定需要作大数分解。假设存在一种无须分解大数的算法,那它肯定可以修改成为大数分解算法。目前,RSA 的一些变种算法已被证明等价于大数分解。不管怎样,分解n是最显然的攻击方法。现在,人们已能分解多个十进制位的大素数。因此,模数n 必须选大一些,因具体适用情况而定
1.操作系统
操作机: Windows_7
操作机默认用户名: administrator 密码:123456
2.实验工具
信息安全综合实验系统
步骤1:RSA算法字符串的加解密
1.1打开信息安全综合实验系统
1.2打开“RSA理论学习”,如图
1.3打开“RSA实例”,进行实验操作;
1.4选择密钥长度为128、256、512或者1024比特。这里我们选择密钥长度为:128。点击“GetPQ”按钮,得到两个大素数。
1.5点击“GetN”按钮,得到一个由两个大素数的积构成的大整数;
1.6点击“GetDE”按钮,得到公钥和私钥;
1.7在明文对话框中输入需要加密的明文字符串.
这里我们输入“
hongya
”
点击“获得明文ASCII”按钮可得到明文密的ASCII码;
1.8输入分块长度,或者通过点击“推荐值”按钮直接获得,这里我们点击“推荐值”进行操作;
1.9点击“加密”按钮可获得加密后的密文,点击“解密”按钮可获得解密后的明文;
1.10反复使用RSA实例,通过输入不同大小的分片,了解密文长度的变化,这里我们输入分块长度为16;
1.11反复使用RSA实例,通过输入不同安全参数,了解RSA密码系统的性能与参数关系;
实验完毕。
1.【填空题】请使用本实验“RSA实例”,特点选择密钥长度为“256”,明文为“hongyatest”,输入分块长度为“18”,获得明文ASCII,请将获得的明文ASCII码的后四位写出7374
答案解析:
正确答案:7374
1.【单选题】RSA密钥至少为500位长,一般推荐使用多少位?
32
64
128
256
答案解析:
正确答案:C
2.【单选题】在公开密钥密码体制中,下面为公开信息的是?
公开密钥
加密算法
解密算法
以上都是
答案解析:
正确答案:D
3.【单选题】下面属于非对称密钥的是?
AES
MD5
SHA-1
以上都不是
答案解析:
正确答案:D
4.【单选题】在公开密钥密码体制中,下面为秘密信息的是?
解密密钥
加密算法
公开密钥
解密算法
答案解析:
正确答案:A
5.【单选题】下面属于对称密钥的是?
DES
AES
SHA-1
以上都是
答案解析:
正确答案:D