PDBox подписывает документ с помощью cmsSignatureJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 PDBox подписывает документ с помощью cmsSignature

Сообщение Anonymous »

Я пытаюсь подписать PDF-документы с помощью PdfBox и cmsSignature.
Но мой код всегда возвращает PDF-файл с поврежденной подписью: «Документ был изменен или поврежден с момента его подписания»< /p>
Я использую PdfBox 2.0.29
Мне нужно, чтобы подпись была добавлена ​​в PDF-файл и чтобы подпись была действительна, не так ли? возможно?
public ResponseEntitysignPdf(@RequestParam String pdfPath,@RequestParam String cmsSignature64){
try{
//DecodeCMSsignaturefromBase64
byte[] cmsSignature=java.util.Base64.getDecoder().decode(cmsSignature64);

//LoadthePDFdocument
Path pdfFilePath=Path.of(pdfPath);
if(!Files.exists(pdfFilePath)){
return ResponseEntity.badRequest().body("PDFfilenotfoundat:"+pdfPath);
}

File inputFile=pdfFilePath.toFile();
PDDocument document=PDDocument.load(inputFile);

//Createanewsignature
PDSignature signature=new PDSignature();
signature.setFilter(PDSignature.FILTER_ADOBE_PPKLITE);
signature.setSubFilter(PDSignature.SUBFILTER_ADBE_PKCS7_DETACHED);
signature.setReason("QualifiedCertification");
signature.setLocation("");
signature.setSignDate(Calendar.getInstance());
signature.setContents(newbyte[8192]);

//Addthesignaturefieldwithaspecificname
signature.setName("DetachedSignature");
document.addSignature(signature);

//Prepare the external signature
ExternalSigningSupport externalSigning=document.saveIncrementalForExternalSigning(new FileOutputStream(inputFile));

//Write the detached CMSsignature to the PDF
externalSigning.setSignature(cmsSignature);

//Save and close the document
document.close();

return ResponseEntity.ok("PDF signed successfully:"+pdfFilePath.toString());
}catch(Exceptione){
e.printStackTrace();
return ResponseEntity.status(500).body("Error while signingPDF:"+e.getMessage());
}
}


Подробнее здесь: https://stackoverflow.com/questions/792 ... ssignature
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • PDBox подписывает документ с помощью cmsSignature
    Anonymous » » в форуме JAVA
    0 Ответы
    18 Просмотры
    Последнее сообщение Anonymous
  • SyncFusion подписывает PDF-документ с отметкой времени из внешнего источника
    Anonymous » » в форуме C#
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous
  • SyncFusion подписывает PDF-документ с отметкой времени из внешнего источника
    Anonymous » » в форуме C#
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • SyncFusion подписывает PDF-документ с отметкой времени из внешнего источника
    Anonymous » » в форуме C#
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • SyncFusion подписывает PDF-документ с отметкой времени из внешнего источника
    Anonymous » » в форуме C#
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous

Вернуться в «JAVA»