我有一个要求,其中我必须使用jar文件中的IKVM来制作dll。 此jar文件包含与java.security API相关的代码,即签名和验证文件。 当我试图在我的.net框架环境中执行这个dll时。
我在签名过程中遇到的例外是:
java.security.KeyStoreException: PKCS12 not found
at java.security.KeyStore.getInstance(KeyStore.java:616)
我失败的代码是:
FileInputStream fileInputStream = new FileInputStream(keyStorePath);
KeyStore keyStore = KeyStore.getInstance("PKCS12");
keyStore.load(fileInputStream, password);
在验证我的代码在以下部分失败时:
InputStream inputStream = new FileInputStream(KeyFilePath);
CertificateFactory certificateFactory = CertificateFactory.
getInstance("X.509");
X509Certificate x509Certificate = (X509Certificate) certificateFactory
.generateCertificate(inputStream);
根据我的理解,PKCS12和X.509是java的原生,不能直接使用。 如果我的理解是正确的,请告诉我并帮助我解决它。