更新crypto.signText创建的分离签名中的原始数据

时间:2010-10-22 10:21:22

标签: digital-signature pkcs#7

我使用crypto.signText方法获得了BASE64编码文本。但该剂量不包含签名数据的原件。

任何人都可以告诉我如何更新该编码文本以将数据附加到其中。

1 个答案:

答案 0 :(得分:1)

完成。

CMSSignedData csd = new CMSSignedData(byteArr);

if (csd.getSignedContent() == null) {
            byte[] contentBytes;
            if (!isIE) {
                contentBytes = data.getBytes();
            } else {
                //UnicodeLittleUnmarked = Sixteen-bit Unicode Transformation Format, little-endian byte order 
                contentBytes = data.getBytes("UnicodeLittleUnmarked");
            }
            CMSProcessable cmsProcesableContent = new CMSProcessableByteArray(contentBytes);
            csd = new CMSSignedData(cmsProcesableContent, byteArr);
        }