Class ASN1EvidenceRecordTimeStampSequenceVerifier
java.lang.Object
eu.europa.esig.dss.evidencerecord.common.validation.EvidenceRecordTimeStampSequenceVerifier
eu.europa.esig.dss.evidencerecord.asn1.validation.ASN1EvidenceRecordTimeStampSequenceVerifier
public class ASN1EvidenceRecordTimeStampSequenceVerifier
extends EvidenceRecordTimeStampSequenceVerifier
Verifies ArchiveTimeStampSequence for an ASN.1 Evidence Record
-
Field Summary
Fields inherited from class EvidenceRecordTimeStampSequenceVerifier
evidenceRecord -
Constructor Summary
ConstructorsConstructorDescriptionASN1EvidenceRecordTimeStampSequenceVerifier(ASN1EvidenceRecord evidenceRecord) Default constructor to instantiate an ASN.1 evidence record verifier -
Method Summary
Modifier and TypeMethodDescriptionprotected booleancheckHashTreeValidity(ArchiveTimeStampObject archiveTimeStamp, ArchiveTimeStampChainObject archiveTimeStampChain) This method verifies whether theArchiveTimeStampObjectand its hash-tree is valid relatively the parentArchiveTimeStampChainObjectprotected DSSMessageDigestcomputeTimeStampHash(ArchiveTimeStampObject archiveTimeStamp) Computes hash onarchiveTimeStampelement provided thearchiveTimeStampChain's attributesprotected DSSMessageDigestcomputeTimeStampSequenceHash(ArchiveTimeStampChainObject archiveTimeStampChain) Computes hash of currentArchiveTimeStampSequenceElementprotected DataObjectDigestBuildergetDataObjectDigestBuilder(DSSDocument document, ArchiveTimeStampChainObject archiveTimeStampChain) ReturnsDataObjectDigestBuildercorresponding to the current implementationprotected ASN1ArchiveTimeStampSequenceDigestHelperThis method returns a helper class containing supporting methods for digest computation in relation to an archive-time-stamp-sequenceprotected List<byte[]> getLastTimeStampSequenceHashList(DSSMessageDigest lastTimeStampSequenceHash, List<DSSDocument> detachedDocuments) Returns a list of hashes computed on a given previous time-stamp sequence hashprotected DSSDocumentgetMatchingDocument(Digest digest, ArchiveTimeStampChainObject archiveTimeStampChain, DSSMessageDigest lastTimeStampSequenceHash, List<DSSDocument> detachedContents) This method returns a document with matchingDigestfrom a provided list ofdetachedContentsprotected List<ReferenceValidation> validateArchiveTimeStampSequenceDigest(List<ReferenceValidation> referenceValidations, DSSMessageDigest lastTimeStampSequenceHashes) This method is used to verify presence of ArchiveTimeStampSequence digests within the reference validation list.protected List<ReferenceValidation> validateMasterSignatureDigest(List<ReferenceValidation> referenceValidations, DigestAlgorithm digestAlgorithm, DSSMessageDigest lastTimeStampSequenceHash) This method is used to verify presence of master signature digests within the reference validation list.Methods inherited from class EvidenceRecordTimeStampSequenceVerifier
computeDigestValueGroupHash, createEmptyReference, digestMatch, ensureReferenceValidationOfType, ensureReferenceValidations, getDocumentDigest, getHashTree, getMatchingDocument, getMatchingManifestEntry, getReferenceValidations, validateAdditionalDigest, validateArchiveDataObjects, validateArchiveTimeStampDigest, verify
-
Constructor Details
-
ASN1EvidenceRecordTimeStampSequenceVerifier
Default constructor to instantiate an ASN.1 evidence record verifier- Parameters:
evidenceRecord-ASN1EvidenceRecordXML evidence record to be validated
-
-
Method Details
-
getDataObjectDigestBuilder
protected DataObjectDigestBuilder getDataObjectDigestBuilder(DSSDocument document, ArchiveTimeStampChainObject archiveTimeStampChain) Description copied from class:EvidenceRecordTimeStampSequenceVerifierReturnsDataObjectDigestBuildercorresponding to the current implementation- Specified by:
getDataObjectDigestBuilderin classEvidenceRecordTimeStampSequenceVerifier- Parameters:
document-DSSDocumentdocument to build digest forarchiveTimeStampChain-ArchiveTimeStampChainObjectof the current hashtree- Returns:
DataObjectDigestBuilder
-
getMatchingDocument
protected DSSDocument getMatchingDocument(Digest digest, ArchiveTimeStampChainObject archiveTimeStampChain, DSSMessageDigest lastTimeStampSequenceHash, List<DSSDocument> detachedContents) This method returns a document with matchingDigestfrom a provided list ofdetachedContents- Overrides:
getMatchingDocumentin classEvidenceRecordTimeStampSequenceVerifier- Parameters:
digest-Digestto checkarchiveTimeStampChain-ArchiveTimeStampChainObjectdefines configuration for validationlastTimeStampSequenceHash-DSSMessageDigesthash of the last archive time-stamp sequencedetachedContents- a list ofDSSDocuments- Returns:
DSSDocumentif matching document found, NULL otherwise
-
checkHashTreeValidity
protected boolean checkHashTreeValidity(ArchiveTimeStampObject archiveTimeStamp, ArchiveTimeStampChainObject archiveTimeStampChain) Description copied from class:EvidenceRecordTimeStampSequenceVerifierThis method verifies whether theArchiveTimeStampObjectand its hash-tree is valid relatively the parentArchiveTimeStampChainObject- Overrides:
checkHashTreeValidityin classEvidenceRecordTimeStampSequenceVerifier- Parameters:
archiveTimeStamp-ArchiveTimeStampObjectarchiveTimeStampChain-ArchiveTimeStampChainObject- Returns:
- TRUE if the validation succeeds, FALSE otherwise
-
computeTimeStampHash
Description copied from class:EvidenceRecordTimeStampSequenceVerifierComputes hash onarchiveTimeStampelement provided thearchiveTimeStampChain's attributes- Specified by:
computeTimeStampHashin classEvidenceRecordTimeStampSequenceVerifier- Parameters:
archiveTimeStamp-ArchiveTimeStampObjectto compute hash on- Returns:
DSSMessageDigest
-
computeTimeStampSequenceHash
protected DSSMessageDigest computeTimeStampSequenceHash(ArchiveTimeStampChainObject archiveTimeStampChain) Description copied from class:EvidenceRecordTimeStampSequenceVerifierComputes hash of currentArchiveTimeStampSequenceElement- Specified by:
computeTimeStampSequenceHashin classEvidenceRecordTimeStampSequenceVerifier- Parameters:
archiveTimeStampChain-ArchiveTimeStampChainObjectto compute hash for- Returns:
DSSMessageDigest
-
validateArchiveTimeStampSequenceDigest
protected List<ReferenceValidation> validateArchiveTimeStampSequenceDigest(List<ReferenceValidation> referenceValidations, DSSMessageDigest lastTimeStampSequenceHashes) Description copied from class:EvidenceRecordTimeStampSequenceVerifierThis method is used to verify presence of ArchiveTimeStampSequence digests within the reference validation list. If entry is not present, creates one, when applicable- Overrides:
validateArchiveTimeStampSequenceDigestin classEvidenceRecordTimeStampSequenceVerifier- Parameters:
referenceValidations- a list ofReferenceValidationslastTimeStampSequenceHashes-DSSMessageDigest- Returns:
- an updated list of
ReferenceValidations
-
validateMasterSignatureDigest
protected List<ReferenceValidation> validateMasterSignatureDigest(List<ReferenceValidation> referenceValidations, DigestAlgorithm digestAlgorithm, DSSMessageDigest lastTimeStampSequenceHash) Description copied from class:EvidenceRecordTimeStampSequenceVerifierThis method is used to verify presence of master signature digests within the reference validation list. If entry is not present, creates one, when applicable- Overrides:
validateMasterSignatureDigestin classEvidenceRecordTimeStampSequenceVerifier- Parameters:
referenceValidations- a list ofReferenceValidationsdigestAlgorithm-DigestAlgorithmused by the hashtreelastTimeStampSequenceHash-DSSMessageDigestif present- Returns:
- an updated list of
ReferenceValidations
-
getLastTimeStampSequenceHashList
protected List<byte[]> getLastTimeStampSequenceHashList(DSSMessageDigest lastTimeStampSequenceHash, List<DSSDocument> detachedDocuments) Description copied from class:EvidenceRecordTimeStampSequenceVerifierReturns a list of hashes computed on a given previous time-stamp sequence hash- Overrides:
getLastTimeStampSequenceHashListin classEvidenceRecordTimeStampSequenceVerifier- Parameters:
lastTimeStampSequenceHash-DSSMessageDigestof the previous ArchiveTimeStampSequencedetachedDocuments- a list of detachedDSSDocuments- Returns:
- a list of byte arrays
-
getEvidenceRecordRenewalDigestBuilderHelper
This method returns a helper class containing supporting methods for digest computation in relation to an archive-time-stamp-sequence
-