Advertisement
Guest User

Untitled

a guest
Sep 19th, 2019
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.75 KB | None | 0 0
  1. public class DecryptKey {
  2. //before you proceed, you need to ensure your public key is PKCS8 since that is what can be read natively in java.
  3. //If your key begins with-----BEGIN CERTIFICATE-----,
  4. // the it is ssleay and you need to convert it using the openssl command below
  5. //openssl pkcs8 -topk8 -inform pem -in public.key -outform pem -nocrypt -out pkcs8-public-key.pem
  6. //TODO You can you phpsecLib lib but it doesn't support some Library
  7. //opnssl work fine
  8. final private static String RSA_PRIVATE_KEY =
  9. -----BEGIN PUBLIC KEY-----
  10. MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzTrKt2Y7HqQpt8w379Sl
  11. 79mjXGJ+CF+ridXpnAKoKyN8LH1NkI08UyWEHKbtCBl4iCsy8ayr4RAkWDKzeb8p
  12. ZEmdOg3cHKyFT6NdUEDc0FGpgKWY6GycJUrY+1S5O256M/NRSw02mUpyYIpGjq1z
  13. 2zfu4GWIPg24hyI4YrAVI90mknIyXduerLH30XdwnKTevwhkQ4cP+xeYLVDduodc
  14. pcVaSXcwBvIbwVWS7szTxNGX0qyDlmJoK6YtTZ4FJp6BK6iyD+Fpnt9Fld8d62o2
  15. WjAtjpc8w81kIwwykojCDv9cb2qhwryS63qlcPhgpxcpDXINBHxcONHtHSWKEb0t
  16. 2wIDAQAB
  17. -----END PUBLIC KEY-----;
  18.  
  19.  
  20.  
  21.  
  22. public static byte[] decrypt(String key) throws Exception {
  23. String privKeyPEM = RSA_PRIVATE_KEY.replace("-----BEGIN PRIVATE KEY-----\n", "");
  24. privKeyPEM = privKeyPEM.replace("-----END PRIVATE KEY-----", "");
  25. byte [] encoded = Base64.decode(privKeyPEM, Base64.DEFAULT);
  26.  
  27. PKCS8EncodedKeySpec keySpec = new PKCS8EncodedKeySpec(encoded);
  28. KeyFactory kf = KeyFactory.getInstance("RSA");
  29. PrivateKey privKey = kf.generatePrivate(keySpec);
  30.  
  31. Cipher cipher = Cipher.getInstance("RSA/ECB/PKCS1Padding", "BC");
  32. cipher.init(Cipher.DECRYPT_MODE, privKey);
  33.  
  34. byte[] decodedStr = Base64.decode(key, Base64.DEFAULT);
  35. byte[] plainText = cipher.doFinal(decodedStr);
  36.  
  37. return plainText;
  38. }
  39. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement