java - 在通过 httpClient 发送到服务提供商之前从“es-staging.crt”证书签署 Xml
问题描述
我es-staging.crt
从我正在使用其服务的服务提供商那里获得了文件。我需要使用此es-staging.crt
证书发送签名的 xml。我不知道如何实现它。
如何用java语言解决这个问题?
我已经通过 java 代码阅读了证书信息,如下所示。
String cerPath = "E:/configDirectory/es-staging.crt";
fileInputStream = new FileInputStream(new File(cerPath));
CertificateFactory certificateFactory = CertificateFactory.getInstance("X.509");
x509Certificate = (X509Certificate) certificateFactory.generateCertificate(fileInputStream);
publicKey = x509Certificate.getPublicKey();
expiryDate = x509Certificate.getNotAfter();
System.out.println("public key : "+publicKey);
System.out.println("expiryDate : "+expiryDate);
System.out.println("--> Subject: " + x509Certificate.getSubjectDN().getName());
System.out.println("--> Issuer: " + x509Certificate.getIssuerDN().getName());
我只有这个es-staging.crt
证书。
解决方案
您不能使用 X509 公钥签署文档。您需要访问私钥。
推荐阅读
- php - 使用 json_encode() 时如何添加空格和换行符?
- apache-kafka - kafka-connect:在连接器接收器 cassandra 的分布式配置中出现错误
- vue.js - Nuxt 添加参数无需页面且无需重新加载页面
- javascript - 功能无法识别
- angularjs - 在生成 AngularJS 项目的构建时获取 Uglifying source .tmp/concat/scripts/scripts.js 失败
- python - 在 Windows 10 上使用 django 连接到远程 mysql
- c# - 将所有非字母字符从一个字符串移动到 char 数组
- c++ - 如何结束图形 GUI 并执行控制台功能(QT)?
- python-3.x - 在 Pyaudio 中检测哨子
- r - 为什么“write.dat”(R)将数据文件保存在文件夹中?