Class PDFSingleSignatureValidatorImpl
java.lang.Object
se.swedenconnect.sigval.pdf.verify.impl.PDFSingleSignatureValidatorImpl
- All Implemented Interfaces:
PDFSingleSignatureValidator
Implements verification of a PDF signature, validating the actual signature and signing certificates
- Author:
- Martin Lindström (martin@idsec.se), Stefan Santesson (stefan@idsec.se)
-
Constructor Summary
ConstructorsConstructorDescriptionPDFSingleSignatureValidatorImpl(se.idsec.signservice.security.certificate.CertificateValidator certificateValidator) ConstructorPDFSingleSignatureValidatorImpl(se.idsec.signservice.security.certificate.CertificateValidator certificateValidator, TimeStampPolicyVerifier timeStampPolicyVerifier) ConstructorPDFSingleSignatureValidatorImpl(se.idsec.signservice.security.certificate.CertificateValidator certificateValidator, PDFSignaturePolicyValidator pdfSignaturePolicyValidator, TimeStampPolicyVerifier timeStampPolicyVerifier) Constructor -
Method Summary
Modifier and TypeMethodDescriptionse.idsec.signservice.security.certificate.CertificateValidatorReturns the certificate validator used to validate certificatesverifyDocumentTimestamps(List<org.apache.pdfbox.pdmodel.interactive.digitalsignature.PDSignature> documentTimestampSignatures, byte[] pdfDocument) Verifies document timestampsvoidverifyPadesProperties(org.bouncycastle.cms.SignerInformation signer, ExtendedPdfSigValResult sigResult) Verifies the PAdES properties of this signatureverifySignature(org.apache.pdfbox.pdmodel.interactive.digitalsignature.PDSignature signature, byte[] pdfDocument, List<PDFDocTimeStamp> documentTimestamps, PDFSignatureContext signatureContext) Verifies the signature on a PDF document
-
Constructor Details
-
PDFSingleSignatureValidatorImpl
public PDFSingleSignatureValidatorImpl(se.idsec.signservice.security.certificate.CertificateValidator certificateValidator) Constructor- Parameters:
certificateValidator- the validator used to verify signing certificate chains
-
PDFSingleSignatureValidatorImpl
public PDFSingleSignatureValidatorImpl(se.idsec.signservice.security.certificate.CertificateValidator certificateValidator, TimeStampPolicyVerifier timeStampPolicyVerifier) Constructor- Parameters:
certificateValidator- the validator used to verify signing certificate chainstimeStampPolicyVerifier- verifier validating time stamps to a defined policy
-
PDFSingleSignatureValidatorImpl
public PDFSingleSignatureValidatorImpl(se.idsec.signservice.security.certificate.CertificateValidator certificateValidator, PDFSignaturePolicyValidator pdfSignaturePolicyValidator, TimeStampPolicyVerifier timeStampPolicyVerifier) Constructor- Parameters:
certificateValidator- the validator used to verify signing certificate chainspdfSignaturePolicyValidator- verifier of the signature results according to a defined policytimeStampPolicyVerifier- verifier validating time stamps to a defined policy
-
-
Method Details
-
verifySignature
public ExtendedPdfSigValResult verifySignature(org.apache.pdfbox.pdmodel.interactive.digitalsignature.PDSignature signature, byte[] pdfDocument, List<PDFDocTimeStamp> documentTimestamps, PDFSignatureContext signatureContext) throws Exception Verifies the signature on a PDF document- Specified by:
verifySignaturein interfacePDFSingleSignatureValidator- Parameters:
signature- PDF signaturepdfDocument- PDF documentdocumentTimestamps- document timestamps of the signed PDF documentsignatureContext- signature context data- Returns:
- Signature validation result
- Throws:
Exception- on errors during signature validation
-
verifyDocumentTimestamps
public List<PDFDocTimeStamp> verifyDocumentTimestamps(List<org.apache.pdfbox.pdmodel.interactive.digitalsignature.PDSignature> documentTimestampSignatures, byte[] pdfDocument) Verifies document timestamps- Specified by:
verifyDocumentTimestampsin interfacePDFSingleSignatureValidator- Parameters:
documentTimestampSignatures- list of PDF signatures holding document timestampspdfDocument- the PDF document bytes of the PDF document containing the document timestamps- Returns:
- list of PDF document timestamp objects
PDFDocTimeStamp
-
getCertificateValidator
public se.idsec.signservice.security.certificate.CertificateValidator getCertificateValidator()Returns the certificate validator used to validate certificates- Specified by:
getCertificateValidatorin interfacePDFSingleSignatureValidator- Returns:
- certificate validator
-
verifyPadesProperties
public void verifyPadesProperties(org.bouncycastle.cms.SignerInformation signer, ExtendedPdfSigValResult sigResult) Verifies the PAdES properties of this signature- Parameters:
signer- SignerInformation of this signaturesigResult- signature result object for this signature
-