获取认证文件的指纹信息

Cos*_*sio 2 java sha1 certificate fingerprint x509

有没有办法获取认证文件的指纹信息?例如,我有我的certRSA.cert,如果我用Windows 7打开它,我们可以看到证书的所有信息(算法,发行者,主题,有效性,公钥,密钥的使用,FINGERPRINT ......).在java中,我将cert作为java对象(x509Certificate):

X509Certificate certRSA = X509Certificate.getInstance(CertRSA_data);
Run Code Online (Sandbox Code Playgroud)

然后我们可以获得公钥:

PublicKey pubKeyUser = certRSA.getPublicKey();
Run Code Online (Sandbox Code Playgroud)

ZZ Coder上面公开的代码(如何在Java中检索/计算X509证书的指纹?)非常好,但它计算指纹,我想要的是获取这些信息(与我们获取公钥信息的方式相同,证书的发行人或其他项目,不计算.有没有办法做到这一点?任何评论都非常感谢.非常感谢.

mkl*_*mkl 5

我要的是得到这个信息(相同的方式,我们可以得到的公开密钥信息,或发行人或其他物品)的证书,而不是计算.

无法获得指纹的原因就像您可以获得公钥或发行者一样,指纹不是那些值,它不是证书的一部分.公钥和发行者是其中的一部分,因此,仅需要从证书中读取,但指纹不是其中的一部分,因此必须进行计算.

证书的微软的表现是有点误导,因为它呈现的指纹,如果它是包含在证书中,但实际上微软已经计算指纹了.这是特别令人误解,因为证书实际上有很多指纹,而微软只显示它似乎在内部使用,即SHA-1指纹指纹.