Interface DocumentValidator
- All Superinterfaces:
ProcessExecutorProvider<DocumentProcessExecutor>
- All Known Subinterfaces:
EvidenceRecordValidator
- All Known Implementing Classes:
AbstractASiCContainerValidator,AbstractJWSDocumentValidator,ASiCContainerWithCAdESValidator,ASiCContainerWithXAdESValidator,ASiCWithCAdESTimestampValidator,ASN1EvidenceRecordValidator,CMSDocumentValidator,DefaultEvidenceRecordValidator,DetachedTimestampValidator,JWSCompactDocumentValidator,JWSSerializationDocumentValidator,PDFADocumentValidator,PDFDocumentValidator,SignedDocumentValidator,XMLDocumentValidator,XMLEvidenceRecordValidator
-
Method Summary
Modifier and TypeMethodDescriptionRetrieves the detached evidence records found in the documentRetrieves the detached timestamps found in the documentgetOriginalDocuments(AdvancedSignature advancedSignature) This method returns the signed document(s) without their signature(s)getOriginalDocuments(String signatureId) This method returns the signed document(s) without their signature(s)Retrieves the signatures found in the document<T extends AdvancedSignature>
ValidationDataContainergetValidationData(Collection<T> signatures) Extracts a validation data for provided collection of signatures<T extends AdvancedSignature>
ValidationDataContainergetValidationData(Collection<T> signatures, Collection<TimestampToken> detachedTimestamps) Extracts a validation data for provided collection of signatures and/or timestampsvoidsetCertificateVerifier(CertificateVerifier certificateVerifier) Provides aCertificateVerifierto be used during the validation process.voidsetContainerContents(List<DSSDocument> archiveContents) Sets theListofDSSDocumentcontaining the original container content for ASiC-S signatures.voidsetDefaultDigestAlgorithm(DigestAlgorithm digestAlgorithm) This method allows to change the Digest Algorithm that will be used for tokens' digest calculation Default :DigestAlgorithm.SHA256voidsetDetachedContents(List<DSSDocument> detachedContent) Sets theListofDSSDocumentcontaining the original contents to sign, for detached signature scenarios.voidsetDetachedEvidenceRecordDocuments(List<DSSDocument> detachedEvidenceRecordDocuments) Sets aListofDSSDocumentcontaining the evidence record documents covering the signature document.voidsetEnableEtsiValidationReport(boolean enableEtsiValidationReport) This method allows to specify if the ETSI Validation Report must be generated.voidsetIncludeSemantics(boolean include) This method allows to enable/disable the semantics inclusion in the reports (Indication / SubIndication meanings) Disabled by defaultvoidsetManifestFile(ManifestFile manifestFile) Sets a relatedManifestFileto the document to be validated.voidsetSignaturePolicyProvider(SignaturePolicyProvider signaturePolicyProvider) This method allows to set a provider for Signature policiesvoidsetSigningCertificateSource(CertificateSource certificateSource) Set a certificate source which allows to find the signing certificate by kid or certificate's digestvoidsetTokenExtractionStrategy(TokenExtractionStrategy tokenExtractionStrategy) This method allows to set the token extraction strategy to follow in the diagnostic data generation.voidsetTokenIdentifierProvider(TokenIdentifierProvider tokenIdentifierProvider) Sets the TokenIdentifierProvidervoidsetValidationContextExecutor(ValidationContextExecutor validationContextExecutor) This method setsValidationContextExecutorfor validation of the preparedValidationContextDefault:eu.europa.esig.dss.validation.executor.context.DefaultValidationContextExecutor(performs basic validation of tokens, including certificate chain building and revocation data extraction, without processing of validity checks)voidsetValidationLevel(ValidationLevel validationLevel) This method allows to specify the validation level (Basic / Timestamp / Long Term / Archival).voidsetValidationTime(Date validationTime) Allows to define a custom validation timeValidates the document and all its signatures.validateDocument(DSSDocument policyDocument) Validates the document and all its signatures.validateDocument(DSSDocument policyDocument, DSSDocument cryptographicSuiteDocument) Validates the document and all its signatures, using the provided validation policy.validateDocument(ValidationPolicy validationPolicy) Validates the document and all its signatures.validateDocument(File policyFile) Validates the document and all its signatures.validateDocument(File policyFile, File cryptographicSuiteFile) Validates the document and all its signatures, using the provided validation policy.validateDocument(InputStream policyDataStream) Validates the document and all its signatures.validateDocument(InputStream policyDataStream, InputStream cryptographicSuiteStream) Validates the document and all its signatures, using the provided validation policy.validateDocument(String policyResourcePath) Validates the document and all its signatures.validateDocument(String policyResourcePath, String cryptographicSuitePath) Validates the document and all its signatures, using the provided validation policy.validateDocument(URL validationPolicyURL) Validates the document and all its signatures.validateDocument(URL validationPolicyURL, URL cryptographicSuiteURL) Validates the document and all its signatures, using the provided validation policy.Methods inherited from interface eu.europa.esig.dss.validation.executor.ProcessExecutorProvider
getDefaultProcessExecutor, setProcessExecutor
-
Method Details
-
getSignatures
List<AdvancedSignature> getSignatures()Retrieves the signatures found in the document- Returns:
- a list of AdvancedSignatures for validation purposes
-
getDetachedTimestamps
List<TimestampToken> getDetachedTimestamps()Retrieves the detached timestamps found in the document- Returns:
- a list of TimestampToken for validation purposes
-
getDetachedEvidenceRecords
List<EvidenceRecord> getDetachedEvidenceRecords()Retrieves the detached evidence records found in the document- Returns:
- a list of Evidence Records for validation purposes
-
setCertificateVerifier
Provides aCertificateVerifierto be used during the validation process.- Parameters:
certificateVerifier-CertificateVerifier
-
setValidationContextExecutor
This method setsValidationContextExecutorfor validation of the preparedValidationContextDefault:eu.europa.esig.dss.validation.executor.context.DefaultValidationContextExecutor(performs basic validation of tokens, including certificate chain building and revocation data extraction, without processing of validity checks)- Parameters:
validationContextExecutor-ValidationContextExecutor
-
setDefaultDigestAlgorithm
This method allows to change the Digest Algorithm that will be used for tokens' digest calculation Default :DigestAlgorithm.SHA256- Parameters:
digestAlgorithm-DigestAlgorithmto use
-
setTokenExtractionStrategy
This method allows to set the token extraction strategy to follow in the diagnostic data generation.- Parameters:
tokenExtractionStrategy- theTokenExtractionStrategy
-
setTokenIdentifierProvider
Sets the TokenIdentifierProvider- Parameters:
tokenIdentifierProvider-TokenIdentifierProvider
-
setIncludeSemantics
void setIncludeSemantics(boolean include) This method allows to enable/disable the semantics inclusion in the reports (Indication / SubIndication meanings) Disabled by default- Parameters:
include- true to enable the inclusion of the semantics
-
setValidationTime
Allows to define a custom validation time- Parameters:
validationTime-Date
-
setDetachedContents
Sets theListofDSSDocumentcontaining the original contents to sign, for detached signature scenarios.- Parameters:
detachedContent- theListofDSSDocumentto set
-
setDetachedEvidenceRecordDocuments
Sets aListofDSSDocumentcontaining the evidence record documents covering the signature document.- Parameters:
detachedEvidenceRecordDocuments- theListofDSSDocumentto set
-
setContainerContents
Sets theListofDSSDocumentcontaining the original container content for ASiC-S signatures.- Parameters:
archiveContents- theListofDSSDocumentto set
-
setManifestFile
Sets a relatedManifestFileto the document to be validated.- Parameters:
manifestFile- aManifestFileto set
-
setSigningCertificateSource
Set a certificate source which allows to find the signing certificate by kid or certificate's digest- Parameters:
certificateSource- the certificate source
-
setValidationLevel
This method allows to specify the validation level (Basic / Timestamp / Long Term / Archival). By default, the selected validation is ARCHIVAL- Parameters:
validationLevel-ValidationLevel
-
setEnableEtsiValidationReport
void setEnableEtsiValidationReport(boolean enableEtsiValidationReport) This method allows to specify if the ETSI Validation Report must be generated. Default : TRUE (the ETSI Validation report will be generated).- Parameters:
enableEtsiValidationReport- - TRUE if the report must be generated, FALSE otherwise
-
setSignaturePolicyProvider
This method allows to set a provider for Signature policies- Parameters:
signaturePolicyProvider-SignaturePolicyProvider
-
validateDocument
Reports validateDocument()Validates the document and all its signatures. The default constraint file is used.- Returns:
Reports: diagnostic data, detailed report and simple report
-
validateDocument
Validates the document and all its signatures. If the validation policy URL is set then the policy constraints are retrieved from this location. If null the default file is used.- Parameters:
validationPolicyURL-URL- Returns:
Reports: diagnostic data, detailed report and simple report
-
validateDocument
Validates the document and all its signatures. The policyResourcePath specifies the constraint file. If null or empty the default file is used.- Parameters:
policyResourcePath- is located against the classpath (getClass().getResourceAsStream), and NOT the filesystem- Returns:
Reports: diagnostic data, detailed report and simple report
-
validateDocument
Validates the document and all its signatures. TheFileparameter specifies the constraint file. If null or file does not exist the default file is used.- Parameters:
policyFile- contains the validation policy (xml) asFile- Returns:
Reports: diagnostic data, detailed report and simple report
-
validateDocument
Validates the document and all its signatures. The policyDataStream contains the constraint file. If null the default file is used.- Parameters:
policyDocument- contains the validation policy (xml) asDSSDocument- Returns:
Reports: diagnostic data, detailed report and simple report
-
validateDocument
Validates the document and all its signatures. The policyDataStream contains the constraint file. If null the default file is used.- Parameters:
policyDataStream- contains the validation policy (xml) asInputStream- Returns:
Reports: diagnostic data, detailed report and simple report
-
validateDocument
Validates the document and all its signatures. ThevalidationPolicycontains the constraint file. Please seeeu.europa.esig.dss.validation.policy.ValidationPolicyLoaderfor building a customizable validation policy. If null or empty the default file is used.- Parameters:
validationPolicy-ValidationPolicy- Returns:
Reports
-
validateDocument
Validates the document and all its signatures, using the provided validation policy. If cryptographic suite is set, the constraints from validation policy will be overwritten by the constraints retrieved from the cryptographic suite. When set, the cryptographic suite constraints are applied with the default behavior, using FAIL level. For a customizable cryptographic suite and its applicability context, please useeu.europa.esig.dss.validation.policy.ValidationPolicyLoader.The format of validation policy should correspond to the DSS XML Validation policy (please include 'dss-policy-jaxb' module in your classpath), unless a custom validation policy has been implemented. The format of cryptographic suite should correspond to XML or JSON schema as defined in ETSI TS 119 322 (please include 'dss-policy-crypto-xml' or 'dss-policy-crypto-json' to the classpath), unless a custom cryptographic suite has been implemented.
If the validation policy URL is set then the policy constraints are retrieved from this location. If null or empty the default file is used.
-
validateDocument
Validates the document and all its signatures, using the provided validation policy. If cryptographic suite is set, the constraints from validation policy will be overwritten by the constraints retrieved from the cryptographic suite. When set, the cryptographic suite constraints are applied with the default behavior, using FAIL level. For a customizable cryptographic suite and its applicability context, please useeu.europa.esig.dss.validation.policy.ValidationPolicyLoader.The format of validation policy should correspond to the DSS XML Validation policy (please include 'dss-policy-jaxb' module in your classpath), unless a custom validation policy has been implemented. The format of cryptographic suite should correspond to XML or JSON schema as defined in ETSI TS 119 322 (please include 'dss-policy-crypto-xml' or 'dss-policy-crypto-json' to the classpath), unless a custom cryptographic suite has been implemented.
The
policyResourcePathandcryptographicSuitePathspecify the constraint file. If null or empty the default file is used.- Parameters:
policyResourcePath-Stringpath to the validation policy file, located against the classpath (getClass().getResourceAsStream), and NOT the filesystemcryptographicSuitePath-Stringpath to the cryptographic suite file, located against the classpath (getClass().getResourceAsStream), and NOT the filesystem- Returns:
Reports: diagnostic data, detailed report and simple report
-
validateDocument
Validates the document and all its signatures, using the provided validation policy. If cryptographic suite is set, the constraints from validation policy will be overwritten by the constraints retrieved from the cryptographic suite. When set, the cryptographic suite constraints are applied with the default behavior, using FAIL level. For a customizable cryptographic suite and its applicability context, please useeu.europa.esig.dss.validation.policy.ValidationPolicyLoader.The format of validation policy should correspond to the DSS XML Validation policy (please include 'dss-policy-jaxb' module in your classpath), unless a custom validation policy has been implemented. The format of cryptographic suite should correspond to XML or JSON schema as defined in ETSI TS 119 322 (please include 'dss-policy-crypto-xml' or 'dss-policy-crypto-json' to the classpath), unless a custom cryptographic suite has been implemented.
The
Fileparameters specify the constraint file. If null the default file is used. -
validateDocument
Validates the document and all its signatures, using the provided validation policy. If cryptographic suite is set, the constraints from validation policy will be overwritten by the constraints retrieved from the cryptographic suite. When set, the cryptographic suite constraints are applied with the default behavior, using FAIL level. For a customizable cryptographic suite and its applicability context, please useeu.europa.esig.dss.validation.policy.ValidationPolicyLoader.The format of validation policy should correspond to the DSS XML Validation policy (please include 'dss-policy-jaxb' module in your classpath), unless a custom validation policy has been implemented. The format of cryptographic suite should correspond to XML or JSON schema as defined in ETSI TS 119 322 (please include 'dss-policy-crypto-xml' or 'dss-policy-crypto-json' to the classpath), unless a custom cryptographic suite has been implemented.
The
DSSDocumentparameters contains the constraint files. If null the default file is used.- Parameters:
policyDocument-DSSDocumentcontaining the validation policycryptographicSuiteDocument-DSSDocumentcontaining the cryptographic suite- Returns:
Reports: diagnostic data, detailed report and simple report
-
validateDocument
Validates the document and all its signatures, using the provided validation policy. If cryptographic suite is set, the constraints from validation policy will be overwritten by the constraints retrieved from the cryptographic suite. When set, the cryptographic suite constraints are applied with the default behavior, using FAIL level. For a customizable cryptographic suite and its applicability context, please useeu.europa.esig.dss.validation.policy.ValidationPolicyLoader.The format of validation policy should correspond to the DSS XML Validation policy (please include 'dss-policy-jaxb' module in your classpath), unless a custom validation policy has been implemented. The format of cryptographic suite should correspond to XML or JSON schema as defined in ETSI TS 119 322 (please include 'dss-policy-crypto-xml' or 'dss-policy-crypto-json' to the classpath), unless a custom cryptographic suite has been implemented.
The
InputStreamparameters contains the constraint files. If null the default file is used.- Parameters:
policyDataStream-InputStreamcontaining the validation policycryptographicSuiteStream-InputStreamcontaining the cryptographic suite- Returns:
Reports: diagnostic data, detailed report and simple report
-
getOriginalDocuments
This method returns the signed document(s) without their signature(s)- Parameters:
signatureId- the DSS ID of the signature to extract original signer data for- Returns:
- list of
DSSDocuments
-
getOriginalDocuments
This method returns the signed document(s) without their signature(s)- Parameters:
advancedSignature-AdvancedSignatureto find signer documents for- Returns:
- list of
DSSDocuments
-
getValidationData
Extracts a validation data for provided collection of signatures- Type Parameters:
T-AdvancedSignatureimplementation- Parameters:
signatures- a collection ofAdvancedSignatures- Returns:
ValidationDataContainer
-
getValidationData
<T extends AdvancedSignature> ValidationDataContainer getValidationData(Collection<T> signatures, Collection<TimestampToken> detachedTimestamps) Extracts a validation data for provided collection of signatures and/or timestamps- Type Parameters:
T-AdvancedSignatureimplementation- Parameters:
signatures- a collection ofAdvancedSignaturesdetachedTimestamps- a collection of detachedTimestampTokens- Returns:
ValidationDataContainer
-