gpt4 book ai didi

java - 数字签名 : sample code for verification and for extracting certification information

转载 作者:搜寻专家 更新时间:2023-10-31 19:58:10 25 4
gpt4 key购买 nike

我使用第三方工具来验证签名并从签名中获取证书详细信息(如序列号、CA 等)。此实用程序的问题在于它已获得许可并且只能在某些机器上运行。

我可以使用简单的 java 或 .net 代码验证数据签名吗?(而不是使用付费应用程序)。我没有从签名数据中提取证书信息的私钥。

或者,如果我有 pfx 文件,有人可以建议使用 java 或 .net 提取证书详细信息的示例代码。来自签名数据。

数据使用非对称加密进行签名。

最佳答案

从证书中提取详细信息:

  1. 制作一个保存证书数据的字符串。只需确保它有 -----BEGIN CERTIFICATE----- 开始和 -----END CERTIFICATE----- 结束。
  2. 现在在 Java 中使用以下代码提取证书详细信息。



InputStream inStream = new ByteArrayInputStream(certString.toString().getBytes("UTF-8"));
BufferedInputStream bis = new BufferedInputStream(inStream);
CertificateFactory cf = CertificateFactory.getInstance("X.509");
证书 cert = cf.generateCertificate(bis);
X509Certificate xCert = (X509Certificate)cert;

System.out.println("证书类型:"+cert.getType());
System.out.println("公钥:\n"+cert.getPublicKey());
尝试{
System.out.println("签名算法"+xCert.getSigAlgName());
System.out.println("IssuerDN : "+xCert.getIssuerDN());
System.out.println("序列号:"+xCert.getSerialNumber());
System.out.println("SubjectDN : "+xCert.getSubjectDN());
}catch(异常表达式){
:
}

关于java - 数字签名 : sample code for verification and for extracting certification information,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6148746/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com