有没有办法可以将通过RSAKeyPairGenerator生成的公钥私钥写入文件系统(我知道这不是一个好主意,但我需要检查是否可以这样做)?
RSAKeyPairGenerator将导致CipherParameters,我正在使用充气城堡安全提供java。
获取我的密钥的代码如下。
RSAKeyPairGenerator keyPairGenerator = new RSAKeyPairGenerator();
keyPairGenerator.init(new RSAKeyGenerationParameters(new BigInteger(
"10001", 16), new SecureRandom(), 1024, 80));
AsymmetricCipherKeyPair keys = keyPairGenerator.generateKeyPair();
CipherParameters pubKey = keys.getPublic();
CipherParameters privKey = keys.getPrivate();
答案 0 :(得分:2)
将参数转换为实际类型(打印出privKey.getClass().getName()
以找出它是什么)。 RSA私钥将是RSAPrivateCrtKeyParameters
的类型。完成后,您只需检索构成私钥的BigInteger
即可。那些应该是可序列化的。如果要在PKCS#8 / PKCS#1中对其进行编码,则应创建与JCE兼容的RSACrtPrivateKey
实例并调用getEncoded()
。