2016-12-15 2 views
0

IText 5의 경우 디지털 서명을 추가하는 것이 매우 쉬웠습니다. 해당 문서에 대한 링크는 다음과 같습니다. http://developers.itextpdf.com/examples/security/digital-signatures-white-paper/digital-signatures-chapter-2IText 7을 사용하여 PDF에 디지털 서명 추가

ITEXT 7에서 문서 링크를 공유 할 수 있습니까? 나는 여러 가지 방법을 시도해 보았다. 온라인에서 링크를 찾을 수 없습니다. 서명을 확인하고 서명 할 수는 있지만 추가 할 수는 없습니다.

+0

당신이 [iText를 7 자바 샘플 GitHub의 저장소]를 살펴 있었나요 (https://github.com/itext/i7js-samples)? 하위 폴더 [/publications/signatures/](https://github.com/itext/i7js-samples/tree/develop/publications/signatures)에는 iText 7에 포팅 된 백서 샘플이 들어 있습니다. – mkl

+0

정말 고마워요. 아래에 답을 적어주십시오. –

답변

2

iText 7의 디지털 서명 백서 코드 예제는 iText 7 Java samples github repository 하위 폴더 /publications/signatures/에서 찾을 수 있습니다. 간단한 C2_01_SignHelloWorld 예에서 발췌 :

public void sign(String src, String dest, 
       Certificate[] chain, 
       PrivateKey pk, String digestAlgorithm, String provider, 
       PdfSigner.CryptoStandard subfilter, 
       String reason, String location) 
     throws GeneralSecurityException, IOException { 
    // Creating the reader and the signer 
    PdfReader reader = new PdfReader(src); 
    PdfSigner signer = new PdfSigner(reader, new FileOutputStream(dest), false); 
    // Creating the appearance 
    PdfSignatureAppearance appearance = signer.getSignatureAppearance() 
      .setReason(reason) 
      .setLocation(location) 
      .setReuseAppearance(false); 
    Rectangle rect = new Rectangle(36, 648, 200, 100); 
    appearance 
      .setPageRect(rect) 
      .setPageNumber(1); 
    signer.setFieldName("sig"); 
    // Creating the signature 
    IExternalSignature pks = new PrivateKeySignature(pk, digestAlgorithm, provider); 
    IExternalDigest digest = new BouncyCastleDigest(); 
    signer.signDetached(digest, pks, chain, null, null, null, 0, subfilter); 
} 
관련 문제