I generated a server-side pair of public / private keys using phpseclib like
include 'Crypt/RSA.php'; $rsa = new Crypt_RSA(); $rsa->setPrivateKeyFormat(CRYPT_RSA_PRIVATE_FORMAT_PKCS1); $rsa->setPublicKeyFormat(CRYPT_RSA_PUBLIC_FORMAT_PKCS1); extract($rsa->createKey()); echo $privatekey; echo "\n\n\n"; echo $publickey;
Now I want to import the public key on the client side using the Java Bouncy Castle engine.
Here is my public key
-----BEGIN PUBLIC KEY----- MIGJAoGBAJEGAmaQejDgJaCg/B5+g68arqpMpl6jZ9+p8TBzNRIq+Ygt/n3iqz+pAtltrlRnmqSD svx0LMluw1wXezQ1pz2tTJTEhg6b69Qui0o
But I can do it. I tried to do this in several ways, but always get errors.
AsymmetricKeyParameter publicKey = (AsymmetricKeyParameter) PublicKeyFactory.createKey(b64.decodeBuffer(key)); AsymmetricKeyParameter publicKey = (AsymmetricKeyParameter) PublicKeyFactory.createKey(key.getBytes())
Besides
PEMReader pemReader = new org.bouncycastle.openssl.PEMReader (reader); PemObject pem = pemReader.readPemObject();
All of these methods generate an error.
How do I import a public key using the Java Bouncy Castle engine?
source share