我正在尝试使用签名哈希对PDF进行签名。
我的情况:
将PDF哈希发送到服务->> <<-服务返回给我的哈希签名
我的代码:
public static void CreateBlankSignature(string unsignedPdf, string tempPdf, byte[] sig)
{
using (PdfReader reader = new PdfReader(unsignedPdf))
{
using (FileStream os = File.OpenWrite(tempPdf))
{
PdfStamper stamper = PdfStamper.CreateSignature(reader, os, '\0');
PdfSignatureAppearance appearance = stamper.SignatureAppearance;
appearance.Location = mylocation ;
appearance.Reason = myReason ;
appearance.SetVisibleSignature(new iTextSharp.text.Rectangle(36, 748, 144, 780), 1, fieldName);
IExternalSignatureContainer external = new ExternalBlankSignatureContainer(PdfName.ADOBE_PPKMS, PdfName.ADBE_PKCS7_SHA1);
MakeSignature.SignExternalContainer(appearance, external, 8192);
}
}
EmbedSignature(tempPdf, unsignedPdf, sig);
}
public static void EmbedSignature(string tempPdf, string signedPdf, byte[] signedBytes)
{
using (PdfReader reader = new PdfReader(tempPdf))
{
using (FileStream os = File.OpenWrite(signedPdf))
{
IExternalSignatureContainer external = new MyExternalSignatureContainer(signedBytes);
MakeSignature.SignDeferred(reader, fieldName, os, external);
}
}
}
但是我有这个错误:BER解码时遇到错误
我该怎么办?