信息安全试验3 基于RSA的公钥加密.docx
《信息安全试验3 基于RSA的公钥加密.docx》由会员分享,可在线阅读,更多相关《信息安全试验3 基于RSA的公钥加密.docx(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、基于RSA的公钥加密一、实习目的1理解公钥密码算法,熟悉常用密码算法:RSA、椭圆曲线密码体制;2以RSA加密算法为例,掌握公钥密码算法加解密过程的实现。二、实习内容1基本要求以RSA为例,利用java中的相关类实现对指定字符串的加解密。2实现提示(1) 可以利用java中的KeypairGenerator类创建公钥密钥对,工厂类KeypairGenerator的静态方法getInstance()可以获得KeypairGenerator类型对象。(2) 方法getInstance()的参数为字符串类型,指定加密算法的名称如:RSA。(3) 利用工厂类Cipher的对象创建密码器。同样的,get
2、Instance()的参数为字符串类型,指定加密算法的名称。(4) JSDK1.2中只是实现了RSA密钥创建,没有实现RSA算法,因此需要安装其他加密软件提供者的软件包,才能直接使用Cipher类执行加解密。(5) RSA算法是使用整数进行加密运算的,RSA的公钥中包含两个信息:公钥对应的整数e和用于取模的整数n。对于明文m计算密文的公式是me mod n。java中的BigInteger类中定义的modPow()方法可以计算me mod n。(6) RSA的私钥中包含两个信息:私钥对应的整数d和用于取模的整数n。计算明文的公式是:Ce mod n。三、算法分析和流程图RSA算法是一种非对称密
3、码算法,所谓非对称,就是指该算法需要一对密钥,使用其中一个加密,则需要用另一个才能解密。RSA的算法涉及三个参数,n、e1、e2。其中,n是两个大质数p、q的积,n的二进制表示时所占用的位数,就是所谓的密钥长度。e1和e2是一对相关的值,e1可以任意取,但要求e1与(p-1)*(q-1)互质;再选择e2,要求(e2*e1)mod(p-1)*(q-1)=1。(n,e1),(n,e2)就是密钥对。其中(n,e1)为公钥,(n,e2)为私钥。RSA加解密的算法完全相同,设A为明文,B为密文,则:A=Be2 mod n;B=Ae1 mod n;(公钥加密体制中,一般用公钥加密,私钥解密)e1和e2可以
4、互换使用,即:A=Be1 mod n;B=Ae2 mod n;RSA的安全性依赖于大数分解,但是否等同于大数分解一直未能得到理论上的证明,因为没有证明破解RSA就一定需要作大数分解。假设存在一种无须分解大数的算法,那它肯定可以修改成为大数分解算法。 RSA 的一些变种算法已被证明等价于大数分解。不管怎样,分解n是最显然的攻击方法。人们已能分解多个十进制位的大素数。因此,模数n必须选大一些,因具体适用情况而定。a四、测试数据和预期结果1 不能加密汉字2 改为数字 英语后五、源程序import java.security.*;import java.security.spec.*;import j
5、avax.crypto.*;import javax.crypto.spec.*;import javax.crypto.interfaces.*;import java.security.interfaces.*;import java.math.*;import java.io.*; public class DEC_RSA public static void main(String args) throws ExceptionBufferedReader in=new BufferedReader(new InputStreamReader(new FileInputStream(En
6、c_RSA.dat);String ctext=in.readLine();BigInteger c=new BigInteger(ctext);FileInputStream f=new FileInputStream(Skey_RSA_priv.dat); ObjectInputStream b=new ObjectInputStream(f);RSAPrivateKey prk=(RSAPrivateKey)b.readObject();BigInteger d=prk.getPrivateExponent();BigInteger n=prk.getModulus();System.o
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 信息安全试验3 基于RSA的公钥加密 信息 安全 试验 基于 RSA 加密
限制150内