3

我遇到了 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 是否匹配。

任何帮助,将不胜感激。

4

1 回答 1

2

要解析 CA 颁发的 X509 证书,可以使用以下 java api: java.security.cert.X509Certificate

代码片段:

    extractX509DN(X509Certificate cert) {
        String domainName;
        domainName = cert.getSubjectDN().getName();
    }

同样,您可以使用 api 中的其他方法来提取所需证书的详细信息。

要解析原始 CSR,您可以使用BouncyCastle提供的 api 。我找到了一个方便的教程,您可能可以使用它来理解解析 CSR 所涉及的方法:

解析 CSR 代码片段

浏览上面的链接,了解以下功能:

    public CSRInfo parseCSR (String csr);

您的答案在上述代码片段的第 76 行。

于 2012-11-07T07:10:18.627 回答