我试图通过使用java.security.spec.RSAPublicKeySpec
和java.security.KeyFactory
实例化java.security.PublicKey
。使用RSAPublicKeySpec时出现InvalidKeySpecException
但运行以下线路时:
RSAPublicKeySpec publicKeySpec = new RSAPublicKeySpec(modulus, publicExponent);
return KeyFactory.getInstance("RSA").generatePublic(publicKeySpec);
我总是从org.bouncycastle
包得到一个异常。
java.security.spec.InvalidKeySpecException: key spec not recognised
at org.bouncycastle.jcajce.provider.asymmetric.util.BaseKeyFactorySpi.engineGeneratePublic(Unknown Source)
at org.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi.engineGeneratePublic(Unknown Source)
at java.security.KeyFactory.generatePublic(KeyFactory.java:315)
... (25 more)
这让我困惑,因为RSAPublicKeySpec应该有任何关系充气城堡密码库?有人可以告诉我我的代码有什么问题吗?
你如何实例化'keyFactory'? –
啊,对不起。我正在实例化它:'keyFactory = KeyFactory.getInstance(“RSA”);' – miho