2009-11-20 4 views
0

Acrobat 9를 사용하여 자체 서명 된 인증서를 사용하여 PDF에 서명 한 다음 서명 한 후에 PDF를 편집하면 Acrobat에서 문서에 유효한 서명이 있음을 알리지만 문서에도 서명되지 않은 변경 사항이 있음을 알립니다. 그런 다음 PDF에 다시 서명하고 서명 패널을 보면 유효한 서명이있는 첫 번째 서명 된 개정판이 표시되고 첫 번째 개정판에 서명 한 후 변경 사항을 적용한 다음 유효한 서명이있는 두 번째 서명 된 개정판을 표시합니다.리비전을 사용하여 PDF의 디지털 서명이 무효화되는 것을 방지하려면 어떻게해야합니까?

iTextSharp를 사용하여 해당 동작을 복제하려고합니다. 코드에서는 PDF를 만들고 서명합니다. 그런 다음 PDF를 편집하고 다시 서명합니다. Acrobat에서 문서를 열면 두 버전이 모두 표시되지만 첫 번째 버전은 문서가 변경되었으므로 잘못된 서명으로 표시됩니다. 내가 수집 할 수있는 것으로부터, 나는 iTextSharp가 그 문서 안의 첫 번째 개정판이 아닌 전체 문서에 서명하고 있다고 생각한다. Append 매개 변수를 PdfStamper 및 PdfSignatureAppearance 생성자에서 모두 true로 설정했지만 효과가없는 것 같습니다.

Acrobat을 사용하여 원하는 결과를 얻을 수 있으므로 iTextSharp를 올바르게 사용하지 않는다고 가정합니다. 누구든지 이것에 대해 밝힐 수 있습니까?

답변

1

기존 PDF를 완전히 다시 작성하지 말고 업데이트해야합니다. 업데이트를 사용하려면 다음 속성을 true로 설정하십시오.

PdfReader reader; 
... 
reader.Appendable = true; 
0

어도비는 내가 생각한 레이어를 사용합니다. PDF의 각 개정은 아마도 다른 레이어에 배치 된 다음 서명됩니다. iText가 레이어를 지원하면 비슷한 방식으로 레이어를 처리 할 수 ​​있습니다.

관련 문제