X509Certificate的DN:在一些常用的lib中可用的任何解析器?

时间:2014-03-02 13:21:58

标签: java parsing x509certificate bouncycastle

同样,问题出现了如何从主题的DN中获取CN。

有些人建议“手动”分解DN。但是,我总是想知道当“,”,“=”,“CN =”之类的东西是右手(价值)方的一部分时会发生什么......甚至是允许的?

使用Java和BouncyCastle从DN获取CN的最可靠和最合理的方法是什么?是不是有“String getAttribute(String)”方法?我只是读了https://www.ietf.org/rfc/rfc1779.txt的一部分,它定义了关键字符的正确“转义”。是否有任何RFC1779解析器?我找到了https://github.com/apache/cordova-android/blob/master/framework/src/com/squareup/okhttp/internal/tls/DistinguishedNameParser.java例如。 BC,Java SE或其他maven模块中是否包含任何有用的东西?

1 个答案:

答案 0 :(得分:2)

解决方案是使用

new javax.naming.ldap.LdapName(
    X509Certificate.getSubjectX500Principal().getName())
    .getRdns()

提示:RFC2253