我遇到了 X.509 证书 DN 解析问题。生成的 CSR 格式如下:
/C=/ST=/L=/O=/OU=/CN=
CA 签发的签名证书格式如下:
C=USA, ST=NJ, L=test, O=Google, OU=Adwords, CN=test
我需要 Java 中的实用程序类,最好是采用这些符号中的任何一种并将 DN 规范化为标准格式的标准,以便我可以比较 CSR 和 X.509 证书数据以确定 DN 是否匹配。
任何帮助,将不胜感激。
我遇到了 X.509 证书 DN 解析问题。生成的 CSR 格式如下:
/C=/ST=/L=/O=/OU=/CN=
CA 签发的签名证书格式如下:
C=USA, ST=NJ, L=test, O=Google, OU=Adwords, CN=test
我需要 Java 中的实用程序类,最好是采用这些符号中的任何一种并将 DN 规范化为标准格式的标准,以便我可以比较 CSR 和 X.509 证书数据以确定 DN 是否匹配。
任何帮助,将不胜感激。
要解析 CA 颁发的 X509 证书,可以使用以下 java api: java.security.cert.X509Certificate
代码片段:
extractX509DN(X509Certificate cert) {
String domainName;
domainName = cert.getSubjectDN().getName();
}
同样,您可以使用 api 中的其他方法来提取所需证书的详细信息。
要解析原始 CSR,您可以使用BouncyCastle提供的 api 。我找到了一个方便的教程,您可能可以使用它来理解解析 CSR 所涉及的方法:
浏览上面的链接,了解以下功能:
public CSRInfo parseCSR (String csr);
您的答案在上述代码片段的第 76 行。