【发布时间】:2015-08-07 07:56:47
【问题描述】:
如何使用sun 类验证 PKCS7 签名?我知道这样做不好,但由于某些原因,我不能使用任何其他外部库的 BouncyCastle。
我可以使用以下代码从 PKCS7 获取内容:
str = str.replace("-----BEGIN PKCS7-----\n", "").replace("-----END PKCS7-----", "");
PKCS7 pkcs7 = new PKCS7(Base64.decodeBase64(str.getBytes("UTF-8")));
byte[] b = new byte[pkcs7.getContentInfo().getContent().getData().available()];
pkcs7.getContentInfo().getContent().getData().getBytes(b);
String s = new String(b, "UTF-8");
return s.substring(s.indexOf("<")); //there are some strange symbols before <?xml
但我需要先验证签名。当然,我有一个证书可以做到这一点:
private X509Certificate certVerify;。
谢谢!
【问题讨论】:
标签: java security encryption digital-signature pkcs#7