in Android i use below code to convert String to RSA private key. this code work when i use this site for String private key
https://www.devglan.com/online-tools/rsa-encryption-decryption
but when i use this site , my code dose not work.
https://8gwifi.org/RSAFunctionality?keysize=1024
my code in Android studio is :
public static PrivateKey stringToPrivateKey(String privateKeyString)
{
try {
if (privateKeyString.contains("-----BEGIN PRIVATE KEY-----") || privateKeyString.contains("-----END PRIVATE KEY-----"))
privateKeyString = privateKeyString.replace("-----BEGIN PRIVATE KEY-----", "").replace("-----END PRIVATE KEY-----", "");
if (privateKeyString.contains("-----BEGIN RSA PRIVATE KEY-----") || privateKeyString.contains("-----END RSA PRIVATE KEY-----"))
privateKeyString = privateKeyString.replace("-----BEGIN RSA PRIVATE KEY-----", "").replace("-----END RSA PRIVATE KEY-----", "");
privateKeyString.trim();
privateKeyString = privateKeyString.replaceAll("\\s+","");
privateKeyString = privateKeyString.replaceAll("\\r+","");
privateKeyString = privateKeyString.replaceAll("^ | $|\\n ", "");
byte[] keyBytes = Base64.decode(privateKeyString, Base64.DEFAULT);
PKCS8EncodedKeySpec spec = new PKCS8EncodedKeySpec(keyBytes);
KeyFactory keyFactory = KeyFactory.getInstance(RSA);
return keyFactory.generatePrivate( spec);
} catch (NoSuchAlgorithmException | InvalidKeySpecException e) {
e.printStackTrace();
}
}
with second link Error is in this line
keyFactory.generatePrivate( spec);