3.RSA密码算法验证

3.RSA密码算法验证

ID:40491476

大小:40.02 KB

页数:4页

时间:2019-08-03

3.RSA密码算法验证_第1页
3.RSA密码算法验证_第2页
3.RSA密码算法验证_第3页
3.RSA密码算法验证_第4页
资源描述:

《3.RSA密码算法验证》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、3.RSA密码算法验证Rsa.javapackageRSA;importjava.security.*;importjava.security.interfaces.*;importjava.io.*;importjava.math.*;publicclassRsa{publicstaticvoidgenerateKey(){try{KeyPairGeneratorkpg=KeyPairGenerator.getInstance("RSA");kpg.initialize(1024);KeyPairkp=kpg.genKeyPair();PublicKeypbkey=kp.getPubl

2、ic();PrivateKeyprkey=kp.getPrivate();//保存公钥FileOutputStreamf1=newFileOutputStream("C:\Users\Administrator\workspace\Cryptology\src\RSA\RSApubkey.dat");ObjectOutputStreamb1=newObjectOutputStream(f1);b1.writeObject(pbkey);//保存私钥FileOutputStreamf2=newFileOutputStream("C:\Users\Administrator

3、\workspace\Cryptology\src\RSA\RSAprivatekey.dat");ObjectOutputStreamb2=newObjectOutputStream(f2);b2.writeObject(prkey);}catch(Exceptione){}}publicstaticvoidencrypt(Strings)throwsException{//获取公钥及参数e,nFileInputStreamf=newFileInputStream("C:\Users\Administrator\workspace\Cryptology\src\R

4、SA\RSApubkey.dat");ObjectInputStreamb=newObjectInputStream(f);RSAPublicKeypbk=(RSAPublicKey)b.readObject();BigIntegere=pbk.getPublicExponent();BigIntegern=pbk.getModulus();System.out.println("e="+e);System.out.println("n="+n);//获取明文mbyteptext[]=s.getBytes("UTF-8");BigIntegerm=newBigInteger(ptext

5、);//计算密文cBigIntegerc=m.modPow(e,n);System.out.println("密文c="+c);//保存密文Stringcs=c.toString();BufferedWriterout=newBufferedWriter(newOutputStreamWriter(newFileOutputStream("C:\Users\Administrator\workspace\Cryptology\src\RSA\RSAencrypt.dat")));out.write(cs,0,cs.length());out.close();}publics

6、taticvoiddecrypt()throwsException{//读取密文BufferedReaderin=newBufferedReader(newInputStreamReader(newFileInputStream("C:\Users\Administrator\workspace\Cryptology\src\RSA\RSAencrypt.dat")));Stringctext=in.readLine();BigIntegerc=newBigInteger(ctext);//读取私钥FileInputStreamf=newFileInputStream("C

7、:\Users\Administrator\workspace\Cryptology\src\RSA\RSAprivatekey.dat");ObjectInputStreamb=newObjectInputStream(f);RSAPrivateKeyprk=(RSAPrivateKey)b.readObject();BigIntegerd=prk.getPrivateExponent();//获取私钥参数及解密Bi

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。