java.lang.Object
eu.europa.esig.dss.signature.SignatureRequirementsChecker
This class is used to verify if the signature can be created according to the provided requirements
in a
CertificateVerifier instance-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final eu.europa.esig.dss.spi.validation.CertificateVerifierCertificateVerifier to be used for certificates validationprotected final AbstractSignatureParameters<?> The signature parameters used for signature creation/extension -
Constructor Summary
ConstructorsConstructorDescriptionSignatureRequirementsChecker(eu.europa.esig.dss.spi.validation.CertificateVerifier certificateVerifier, AbstractSignatureParameters<?> signatureParameters) Default constructor -
Method Summary
Modifier and TypeMethodDescriptionvoidassertCertificateChainValidForCLevel(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Checks whether acrosssignaturesthe corresponding certificate chains require revocation data for C-level augmentationvoidassertCertificateChainValidForLTLevel(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Checks whether acrosssignaturesthe corresponding certificate chains require revocation data for LT-level augmentationvoidassertCertificateChainValidForXLLevel(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Checks whether acrosssignaturesthe corresponding certificate chains require revocation data for XL-level augmentationprotected voidassertCLevelIsHighest(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Checks whether acrosssignaturesthe C-level is highest and C-level augmentation can be performedvoidassertExtendToCLevelPossible(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Verifies whether extension ofsignaturesto C-level is possiblevoidassertExtendToLTALevelPossible(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Verifies whether extension ofsignaturesto LTA-level is possiblevoidassertExtendToLTLevelPossible(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Verifies whether extension ofsignaturesto LT-level is possiblevoidassertExtendToTLevelPossible(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Verifies whether extension ofsignaturesto T-level is possiblevoidassertExtendToXLevelPossible(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Verifies whether extension ofsignaturesto X-level is possiblevoidassertExtendToXLLevelPossible(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Verifies whether extension ofsignaturesto XL-level is possibleprotected voidassertHasNoEmbeddedEvidenceRecords(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Checks whether acrosssignaturesthe T-level is highest and T-level augmentation can be performedprotected voidassertLTLevelIsHighest(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Checks whether acrosssignaturesthe LT-level is highest and LT-level augmentation can be performedvoidassertSignaturesValid(Collection<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Verifies cryptographical validity of the signaturesvoidassertSigningCertificateIsValid(eu.europa.esig.dss.model.x509.CertificateToken certificateToken) This method verifies whether the provided certificate token is acceptable for a signature creation against the providedsignatureParametersvoidassertSigningCertificateIsValid(Collection<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) This method verifies a signing certificate for a collection of the givensignaturesprotected voidassertTLevelIsHighest(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Checks whether acrosssignaturesthe T-level is highest and T-level augmentation can be performedprotected voidassertXLevelIsHighest(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Checks whether acrosssignaturesthe X-level is highest and X-level augmentation can be performedprotected voidassertXLLevelIsHighest(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Checks whether acrosssignaturesthe XL-level is highest and XL-level augmentation can be performedprotected voidcheckCLevelIsHighest(eu.europa.esig.dss.spi.signature.AdvancedSignature signature, eu.europa.esig.dss.spi.validation.status.SignatureStatus status) Verifies whether thesignaturehas maximum B-, T- or LT-levelprotected voidcheckHasEmbeddedEvidenceRecords(eu.europa.esig.dss.spi.signature.AdvancedSignature signature, eu.europa.esig.dss.spi.validation.status.SignatureStatus status) Verifies whether thesignaturehas an embedded evidence recordprotected voidcheckLTLevelIsHighest(eu.europa.esig.dss.spi.signature.AdvancedSignature signature, eu.europa.esig.dss.spi.validation.status.SignatureStatus status) Verifies whether thesignaturehas maximum B-, T- or LT-levelprotected voidcheckTLevelIsHighest(eu.europa.esig.dss.spi.signature.AdvancedSignature signature, eu.europa.esig.dss.spi.validation.status.SignatureStatus status) Verifies whether thesignaturehas maximum B- or T-levelprotected voidcheckXLevelIsHighest(eu.europa.esig.dss.spi.signature.AdvancedSignature signature, eu.europa.esig.dss.spi.validation.status.SignatureStatus status) Verifies whether thesignaturehas maximum B-, T- or LT-levelprotected voidcheckXLLevelIsHighest(eu.europa.esig.dss.spi.signature.AdvancedSignature signature, eu.europa.esig.dss.spi.validation.status.SignatureStatus status) Verifies whether thesignaturehas maximum X-levelprotected eu.europa.esig.dss.spi.validation.CertificateVerifierGets CertificateVerifier to be used for validation context verificationbooleanhasALevelOrHigher(eu.europa.esig.dss.spi.signature.AdvancedSignature signature) Checks if the signature has A-levelbooleanhasEmbeddedEvidenceRecords(eu.europa.esig.dss.spi.signature.AdvancedSignature signature) Checks if the signature has embedded evidence recordsbooleanhasLTALevelOrHigher(eu.europa.esig.dss.spi.signature.AdvancedSignature signature) Checks if the signature has LTA-levelbooleanhasLTLevelOrHigher(eu.europa.esig.dss.spi.signature.AdvancedSignature signature) Checks if the signature has LTA-levelbooleanhasXLevelOrHigher(eu.europa.esig.dss.spi.signature.AdvancedSignature signature) Checks if the signature has LTA-levelbooleanhasXLLevelOrHigher(eu.europa.esig.dss.spi.signature.AdvancedSignature signature) Checks if the signature has LTA-levelprotected eu.europa.esig.dss.spi.validation.ValidationAlerterinitValidationAlerter(eu.europa.esig.dss.model.x509.CertificateToken certificateToken) Initializes the validation alerter for certificate validationprotected eu.europa.esig.dss.spi.validation.ValidationAlerterinitValidationAlerter(Collection<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Initializes the validation alerter for signature validation
-
Field Details
-
certificateVerifier
protected final eu.europa.esig.dss.spi.validation.CertificateVerifier certificateVerifierCertificateVerifier to be used for certificates validation -
signatureParameters
The signature parameters used for signature creation/extension
-
-
Constructor Details
-
SignatureRequirementsChecker
public SignatureRequirementsChecker(eu.europa.esig.dss.spi.validation.CertificateVerifier certificateVerifier, AbstractSignatureParameters<?> signatureParameters) Default constructor- Parameters:
certificateVerifier-CertificateVerifiersignatureParameters-AbstractSignatureParameters
-
-
Method Details
-
assertSigningCertificateIsValid
public void assertSigningCertificateIsValid(eu.europa.esig.dss.model.x509.CertificateToken certificateToken) This method verifies whether the provided certificate token is acceptable for a signature creation against the providedsignatureParameters- Parameters:
certificateToken-CertificateToken
-
assertSigningCertificateIsValid
public void assertSigningCertificateIsValid(Collection<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) This method verifies a signing certificate for a collection of the givensignatures- Parameters:
signatures- a collection ofAdvancedSignatures to verify signing-certificate for
-
initValidationAlerter
protected eu.europa.esig.dss.spi.validation.ValidationAlerter initValidationAlerter(eu.europa.esig.dss.model.x509.CertificateToken certificateToken) Initializes the validation alerter for certificate validation- Parameters:
certificateToken-CertificateTokenrepresenting the signing-certificate to be validated- Returns:
ValidationAlerter
-
initValidationAlerter
protected eu.europa.esig.dss.spi.validation.ValidationAlerter initValidationAlerter(Collection<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Initializes the validation alerter for signature validation- Parameters:
signatures- collection ofAdvancedSignatures to be validated- Returns:
ValidationAlerter
-
getCertificateVerifier
protected eu.europa.esig.dss.spi.validation.CertificateVerifier getCertificateVerifier()Gets CertificateVerifier to be used for validation context verification- Returns:
CertificateVerifier
-
assertExtendToTLevelPossible
public void assertExtendToTLevelPossible(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Verifies whether extension ofsignaturesto T-level is possible- Parameters:
signatures- a list ofAdvancedSignatures
-
assertTLevelIsHighest
protected void assertTLevelIsHighest(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Checks whether acrosssignaturesthe T-level is highest and T-level augmentation can be performed- Parameters:
signatures- a list ofAdvancedSignatures
-
checkTLevelIsHighest
protected void checkTLevelIsHighest(eu.europa.esig.dss.spi.signature.AdvancedSignature signature, eu.europa.esig.dss.spi.validation.status.SignatureStatus status) Verifies whether thesignaturehas maximum B- or T-level- Parameters:
signature-AdvancedSignatureto be verifiedstatus-SignatureStatusto fill in case of error
-
hasLTLevelOrHigher
public boolean hasLTLevelOrHigher(eu.europa.esig.dss.spi.signature.AdvancedSignature signature) Checks if the signature has LTA-level- Parameters:
signature-AdvancedSignatureto be validated- Returns:
- TRUE if the signature has LTA-level, FALSE otherwise
-
assertExtendToLTLevelPossible
public void assertExtendToLTLevelPossible(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Verifies whether extension ofsignaturesto LT-level is possible- Parameters:
signatures- a list ofAdvancedSignatures
-
assertLTLevelIsHighest
protected void assertLTLevelIsHighest(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Checks whether acrosssignaturesthe LT-level is highest and LT-level augmentation can be performed- Parameters:
signatures- a list ofAdvancedSignatures
-
checkLTLevelIsHighest
protected void checkLTLevelIsHighest(eu.europa.esig.dss.spi.signature.AdvancedSignature signature, eu.europa.esig.dss.spi.validation.status.SignatureStatus status) Verifies whether thesignaturehas maximum B-, T- or LT-level- Parameters:
signature-AdvancedSignatureto be verifiedstatus-SignatureStatusto fill in case of error
-
hasLTALevelOrHigher
public boolean hasLTALevelOrHigher(eu.europa.esig.dss.spi.signature.AdvancedSignature signature) Checks if the signature has LTA-level- Parameters:
signature-AdvancedSignatureto be validated- Returns:
- TRUE if the signature has LTA-level, FALSE otherwise
-
assertCertificateChainValidForLTLevel
public void assertCertificateChainValidForLTLevel(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Checks whether acrosssignaturesthe corresponding certificate chains require revocation data for LT-level augmentation- Parameters:
signatures- a list ofAdvancedSignatures
-
assertCertificateChainValidForCLevel
public void assertCertificateChainValidForCLevel(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Checks whether acrosssignaturesthe corresponding certificate chains require revocation data for C-level augmentation- Parameters:
signatures- a list ofAdvancedSignatures
-
assertCertificateChainValidForXLLevel
public void assertCertificateChainValidForXLLevel(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Checks whether acrosssignaturesthe corresponding certificate chains require revocation data for XL-level augmentation- Parameters:
signatures- a list ofAdvancedSignatures
-
assertExtendToCLevelPossible
public void assertExtendToCLevelPossible(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Verifies whether extension ofsignaturesto C-level is possible- Parameters:
signatures- a list ofAdvancedSignatures
-
assertCLevelIsHighest
protected void assertCLevelIsHighest(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Checks whether acrosssignaturesthe C-level is highest and C-level augmentation can be performed- Parameters:
signatures- a list ofAdvancedSignatures
-
checkCLevelIsHighest
protected void checkCLevelIsHighest(eu.europa.esig.dss.spi.signature.AdvancedSignature signature, eu.europa.esig.dss.spi.validation.status.SignatureStatus status) Verifies whether thesignaturehas maximum B-, T- or LT-level- Parameters:
signature-AdvancedSignatureto be verifiedstatus-SignatureStatusto fill in case of error
-
hasXLevelOrHigher
public boolean hasXLevelOrHigher(eu.europa.esig.dss.spi.signature.AdvancedSignature signature) Checks if the signature has LTA-level- Parameters:
signature-AdvancedSignatureto be validated- Returns:
- TRUE if the signature has LTA-level, FALSE otherwise
-
assertExtendToXLevelPossible
public void assertExtendToXLevelPossible(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Verifies whether extension ofsignaturesto X-level is possible- Parameters:
signatures- a list ofAdvancedSignatures
-
assertXLevelIsHighest
protected void assertXLevelIsHighest(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Checks whether acrosssignaturesthe X-level is highest and X-level augmentation can be performed- Parameters:
signatures- a list ofAdvancedSignatures
-
checkXLevelIsHighest
protected void checkXLevelIsHighest(eu.europa.esig.dss.spi.signature.AdvancedSignature signature, eu.europa.esig.dss.spi.validation.status.SignatureStatus status) Verifies whether thesignaturehas maximum B-, T- or LT-level- Parameters:
signature-AdvancedSignatureto be verifiedstatus-SignatureStatusto fill in case of error
-
hasXLLevelOrHigher
public boolean hasXLLevelOrHigher(eu.europa.esig.dss.spi.signature.AdvancedSignature signature) Checks if the signature has LTA-level- Parameters:
signature-AdvancedSignatureto be validated- Returns:
- TRUE if the signature has LTA-level, FALSE otherwise
-
assertExtendToXLLevelPossible
public void assertExtendToXLLevelPossible(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Verifies whether extension ofsignaturesto XL-level is possible- Parameters:
signatures- a list ofAdvancedSignatures
-
assertXLLevelIsHighest
protected void assertXLLevelIsHighest(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Checks whether acrosssignaturesthe XL-level is highest and XL-level augmentation can be performed- Parameters:
signatures- a list ofAdvancedSignatures
-
checkXLLevelIsHighest
protected void checkXLLevelIsHighest(eu.europa.esig.dss.spi.signature.AdvancedSignature signature, eu.europa.esig.dss.spi.validation.status.SignatureStatus status) Verifies whether thesignaturehas maximum X-level- Parameters:
signature-AdvancedSignatureto be verifiedstatus-SignatureStatusto fill in case of error
-
hasALevelOrHigher
public boolean hasALevelOrHigher(eu.europa.esig.dss.spi.signature.AdvancedSignature signature) Checks if the signature has A-level- Parameters:
signature-AdvancedSignatureto be validated- Returns:
- TRUE if the signature has A-level, FALSE otherwise
-
assertExtendToLTALevelPossible
public void assertExtendToLTALevelPossible(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Verifies whether extension ofsignaturesto LTA-level is possible- Parameters:
signatures- a list ofAdvancedSignatures
-
assertHasNoEmbeddedEvidenceRecords
protected void assertHasNoEmbeddedEvidenceRecords(List<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Checks whether acrosssignaturesthe T-level is highest and T-level augmentation can be performed- Parameters:
signatures- a list ofAdvancedSignatures
-
checkHasEmbeddedEvidenceRecords
protected void checkHasEmbeddedEvidenceRecords(eu.europa.esig.dss.spi.signature.AdvancedSignature signature, eu.europa.esig.dss.spi.validation.status.SignatureStatus status) Verifies whether thesignaturehas an embedded evidence record- Parameters:
signature-AdvancedSignatureto be verifiedstatus-SignatureStatusto fill in case of error
-
hasEmbeddedEvidenceRecords
public boolean hasEmbeddedEvidenceRecords(eu.europa.esig.dss.spi.signature.AdvancedSignature signature) Checks if the signature has embedded evidence records- Parameters:
signature-AdvancedSignatureto be validated- Returns:
- TRUE if the signature has an embedded evidence record, FALSE otherwise
-
assertSignaturesValid
public void assertSignaturesValid(Collection<eu.europa.esig.dss.spi.signature.AdvancedSignature> signatures) Verifies cryptographical validity of the signatures- Parameters:
signatures- a collection ofAdvancedSignatures
-