Thierry Boschat created PDFBOX-1614:
---------------------------------------

             Summary: Digitally sign PDFs without file system access
                 Key: PDFBOX-1614
                 URL: https://issues.apache.org/jira/browse/PDFBOX-1614
             Project: PDFBox
          Issue Type: Improvement
            Reporter: Thierry Boschat


Hi I'm using pdfbox-1.8.1 to digitally sign PDFs.

I find the sample below to handle it.

But in this example I have to use a FileInputStream however I want to do it 
only through streams (without any file system access). I tried to extends 
FileInputStream to deal with it but I failed. Any tips for me about that 
problem ?

Thanks.

File outputDocument = new File("resources/signed" + document.getName());
    FileInputStream fis = new FileInputStream(document);
    FileOutputStream fos = new FileOutputStream(outputDocument);

    int c;
    while ((c = fis.read(buffer)) != -1)
    {
      fos.write(buffer, 0, c);
    }
    fis.close();
    fis = new FileInputStream(outputDocument);

    // load document
    PDDocument doc = PDDocument.load(document);

    // create signature dictionary
    PDSignature signature = new PDSignature();
    signature.setFilter(PDSignature.FILTER_ADOBE_PPKLITE); // default filter
    // subfilter for basic and PAdES Part 2 signatures
    signature.setSubFilter(PDSignature.SUBFILTER_ADBE_PKCS7_DETACHED);
    signature.setName("signer name");
    signature.setLocation("signer location");
    signature.setReason("reason for signature");

    // the signing date, needed for valid signature
    signature.setSignDate(Calendar.getInstance());

    // register signature dictionary and sign interface
    doc.addSignature(signature, this);

    // write incremental (only for signing purpose)

    doc.saveIncremental(fis, fos);

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to