java處理加密文件---RSA加密和解密

openkk 12年前發布 | 42K 次閱讀 Java Java開發

 public class RSA {
 public static void main(String []args)throws Exception
    {
  String ptext = "he";
  //獲取公鑰生成參數
  KeyPairGenerator kpg = KeyPairGenerator.getInstance("RSA");
  kpg.initialize(1024);
  KeyPair keyPair = kpg.genKeyPair();

RSAPublicKey publicKey = (RSAPublicKey) keyPair.getPublic(); RSAPrivateKey privateKey = (RSAPrivateKey) keyPair.getPrivate();

System.out.println("公共碼"+publicKey.getModulus().toString());

byte[] ptexts = ptext.getBytes("UTF8"); BigInteger m = new BigInteger(ptexts); BigInteger c = m.modPow(publicKey.getPublicExponent(), publicKey.getModulus()); System.out.println("密文"+c);

//System.out.println("d:"+privateKey.getPrivateExponent());

System.out.println("私密碼"+privateKey.getModulus());

BigInteger jm=c.modPow(privateKey.getPrivateExponent(), privateKey.getModulus()); System.out.println("解碼數據"+jm);

byte[] mt =jm.toByteArray();

System.out.print("解碼結果"); for(int i=0;i<mt.length;i++){ System.out.print((char)mt[i]); }

}

}</pre>

 本文由用戶 openkk 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!