通过java读取PKCS7和.p12文件证书信息(subjectDN,vaildstartfrom,ValildTo..)
Reading PKCS7 and .p12 file certificate information(subjectDN,vaildstartfrom,ValildTo..) through java
我正在尝试使用 java 实现数字证书有效性实用程序。如果证书采用 .cert、.cer 格式,我可以读取证书信息(subjectDN、Issure 信息、有效性等),但无法从 .p7b 和 .p12 证书格式中读取证书信息。我已经使用 BouncyCastle 安全提供程序来读取 .p7b 和 .p12 证书内容,但无法获得该安全提供程序可能是我在这方面遗漏了。我正在参考在线资源以对此有所了解,但没有获得 this.Could 的指南,请有人对此提出建议。
我建议,如果您要查找 p12 证书的有效性,可以按以下方式完成:
try {
Security.addProvider(new BouncyCastleProvider());
KeyStore keyStore = KeyStore.getInstance("pkcs12");
InputStream input = new FileInputStream("pathToYourP12");
keyStore.load(input, "password");
certFromKeyStore = (X509Certificate)keyStore.getCertificate("keyStoreAllias");
certFromKeyStore.checkValidity();
}
catch(Exception e)
{
// catch exception like if no valid p12 existing at the location, invalid password, or any other exception should get catch properly.
}
我正在尝试使用 java 实现数字证书有效性实用程序。如果证书采用 .cert、.cer 格式,我可以读取证书信息(subjectDN、Issure 信息、有效性等),但无法从 .p7b 和 .p12 证书格式中读取证书信息。我已经使用 BouncyCastle 安全提供程序来读取 .p7b 和 .p12 证书内容,但无法获得该安全提供程序可能是我在这方面遗漏了。我正在参考在线资源以对此有所了解,但没有获得 this.Could 的指南,请有人对此提出建议。
我建议,如果您要查找 p12 证书的有效性,可以按以下方式完成:
try {
Security.addProvider(new BouncyCastleProvider());
KeyStore keyStore = KeyStore.getInstance("pkcs12");
InputStream input = new FileInputStream("pathToYourP12");
keyStore.load(input, "password");
certFromKeyStore = (X509Certificate)keyStore.getCertificate("keyStoreAllias");
certFromKeyStore.checkValidity();
}
catch(Exception e)
{
// catch exception like if no valid p12 existing at the location, invalid password, or any other exception should get catch properly.
}