如何解析java中的rsa加密私钥?

时间:2015-04-21 12:24:22

标签: java parsing rsa private-key

我正在尝试获取RSA加密私钥的模数值。我考虑使用图书馆充气城堡,但没有运气。

有人可以推荐一种方法吗?

1 个答案:

答案 0 :(得分:0)

当使用BouncyCastle 1.51从PEM文件中读取密钥时,这对我有用。

        pemParser =
            new PEMParser(Files.newBufferedReader(Paths.get("key_in_pem.pem"), StandardCharsets.UTF_8));
        Object parsedObj = pemParser.readObject();
        PEMEncryptedKeyPair pemEncKeyPair = (PEMEncryptedKeyPair) parsedObj;
            PEMDecryptorProvider pemDecryptorProvider =
                new JcePEMDecryptorProviderBuilder().build(keyPairPassword.toCharArray());
            PEMKeyPair pemKeyPair = pemEncKeyPair.decryptKeyPair(pemDecryptorProvider);
            JcaPEMKeyConverter jcaPEMKeyConverter = new JcaPEMKeyConverter().setProvider(
                BouncyCastleProvider.PROVIDER_NAME);
            keyPair = jcaPEMKeyConverter.getKeyPair(pemKeyPair);

然后,您可以使用keyPair.getPrivate()从keyPair获取私钥,并获取相应的数据。