2012-11-06 190 views
3

我在使用X.509证书DN解析时遇到问题。的CSR生成的形式为:X509证书CSR DN解析

/C =/ST =/L =/O =/OU =/CN =

CA颁发的签名的证书的形式为:

C = USA,ST = NJ,L =测试,O = Google,OU = Adwords,CN =测试

我需要Java中的实用程序类,最好是标准的东西,它会采用这些符号中的任意一种,一个标准格式,因此我可以比较CSR和X.509证书数据以确定DN是否匹配。

任何帮助,将不胜感激。

回答

2

为了解析由CA签发的X509证书,您可以使用以下的Java API: java.security.cert.X509Certificate

代码片段:

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

同样,你可以用在其他方法api提取您需要的证书的详细信息。

对于解析原始CSR,您可以使用BouncyCastle提供的apis。我发现了一个方便的教程,你也许可以用它来了解参与解析CSR的方法:

Parse CSR Code Snippet

经过上面的链接,了解以下功能:

public CSRInfo parseCSR (String csr); 

你答案在于上面的代码片段的第76行。