小编JK_*_*des的帖子

如何使用 Java 在 itext 中 PAdES BASELINE LT & LTA?

我正在使用 itext7 处理 pdf 签名,目前需要支持所有 PAdES 签名级别:BB、BT、B-LT、B-LTA https://ec.europa.eu/digital-building-blocks/wikis/display/ ESIGKB/电子签名的 BT-LT 和 LTA 级别是什么

我的问题是如何使用 itext 创建 B-LT 签名?我用以下代码创建了 BB 和 BT:

signer.signDetached(
                new BouncyCastleDigest(),
                customExternalSignature,
                new Certificate[]{clientX509Certificate},
                null,
                null,
                tsaClient,
                0,
                PdfSigner.CryptoStandard.CADES);
Run Code Online (Sandbox Code Playgroud)

然后我想添加 B-LTA 级别,所以我使用了此代码https://github.com/mkl-public/testarea-itext7/blob/master/src/main/java/mkl/testarea/itext7/signature/AdobeLtvEnabling。 java 检查添加 BASELINE-LTA 级别,但将此逻辑应用到我的签名 adobe 后说它是 BASELINE-LT

在此输入图像描述

这产生了两个问题:

  1. AdobeLtvEnabling 中的此实现是否是添加 PAdES 级别 B-LT 的正确方法?
  2. 这是添加 B-LTA 级别的正确方法吗?
//This method extend B-T signature to B-LT
private byte[] addLt(final byte[] signed) throws IOException, GeneralSecurityException {
        final ByteArrayOutputStream out = new ByteArrayOutputStream();
        try (InputStream resource = new …
Run Code Online (Sandbox Code Playgroud)

java itext digital-signature itext7 pades

3
推荐指数
1
解决办法
945
查看次数

标签 统计

digital-signature ×1

itext ×1

itext7 ×1

java ×1

pades ×1