我很难仅从文档和源代码中找出 Esig DSS java 套件。(eu.europa.esig.dss.* 树)
我们连接到瑞典银行 ID 以签署 PDF 和简单的纯文本。响应是带有签名字段和 OCSP 响应的 SOAP XML。
最终目标是将这两个部分组合成一个对象“有效签名”,该对象可以嵌入到 PDF 中(使用 DSS 和 PDFbox)。
BankID Soap 字段的内容似乎具有适合 DSS 工具的格式:
签名可以加载
DSSDocument sigDoc = new InMemoryDocument(xmlSignature)
SignedDocumentValidator documentValidator = SignedDocumentValidator.fromDocument(sigDoc);
// ...
AdvancedSignature advancedSignature = documentValidator.getSignatures().get(0);
并且可以读取 OCSP 响应
ExternalResourcesOCSPSource source = new ExternalResourcesOCSPSource(ocspBytes);
BasicOCSPResp basicOCSPResp = source.getContainedOCSPResponses().get(0);
我可以从对象中打印出各种信息,查找嵌入式证书等,因此格式看起来是合法的。
问题:如何从 ExternalResourcesOCSPSource 获取有效的 OCSPToken?
我一直在兜圈子,试图将两者组合成一个 AdvancedSignature(如果这是我可以用来嵌入 PDF 的话)。