我正在寻找一个将获得RSA私钥并返回正确的RSA公钥的Java函数?

或者,是否有一个函数可以告诉我们RSA PrivateKey/PublicKey是否有效?

最佳答案

如果将私钥作为RSAPrivateCrtKey对象,则可以获得公共(public)指数和模块化指数。

然后,您可以像这样创建公钥:

RSAPublicKeySpec publicKeySpec = new java.security.spec.RSAPublicKeySpec(modulus, exponent);
try {
     KeyFactory keyFactory = KeyFactory.getInstance("RSA");

     PublicKey publicKey = keyFactory.generatePublic(publicKeySpec);
} catch (Exception e) {
     e.printStackTrace();
}

10-01 06:59