Class JAdESTimestampSource
java.lang.Object
eu.europa.esig.dss.validation.timestamp.AbstractTimestampSource
eu.europa.esig.dss.validation.timestamp.SignatureTimestampSource<JAdESSignature,JAdESAttribute>
eu.europa.esig.dss.jades.validation.timestamp.JAdESTimestampSource
- All Implemented Interfaces:
TimestampSource
,Serializable
public class JAdESTimestampSource extends SignatureTimestampSource<JAdESSignature,JAdESAttribute>
Extracts timestamps from a JAdES signature
- See Also:
- Serialized Form
-
Field Summary
Fields inherited from class eu.europa.esig.dss.validation.timestamp.SignatureTimestampSource
archiveTimestamps, certificateSource, contentTimestamps, crlSource, ocspSource, refsOnlyTimestamps, sigAndRefsTimestamps, signature, signatureTimestamps, unsignedPropertiesReferences
-
Constructor Summary
Constructors Constructor Description JAdESTimestampSource(JAdESSignature signature)
Default constructor -
Method Summary
Modifier and Type Method Description protected SignatureProperties<JAdESAttribute>
buildSignedSignatureProperties()
Creates the 'signed-signature-properties' element of the signatureprotected SignatureProperties<JAdESAttribute>
buildUnsignedSignatureProperties()
Creates the 'unsigned-signature-properties' element of the signaturebyte[]
getArchiveTimestampData(String canonicalizationMethod)
Returns concatenated data for an ArchiveTimestampprotected List<TimestampedReference>
getArchiveTimestampOtherReferences(TimestampToken timestampToken)
Returns a list ofTimestampedReference
s for the given archivetimestampToken
that cannot be extracted from signature attributes (signed or unsigned), depending on its format (signedData for CAdES or, keyInfo for XAdES)protected ArchiveTimestampType
getArchiveTimestampType(JAdESAttribute unsignedAttribute)
ReturnsArchiveTimestampType
for the givenunsignedAttribute
protected List<CertificateRef>
getCertificateRefs(JAdESAttribute unsignedAttribute)
Returns a list ofCertificateRef
s from the givenunsignedAttribute
protected List<AdvancedSignature>
getCounterSignatures(JAdESAttribute unsignedAttribute)
Extracts Counter Signatures from the givenunsignedAttribute
protected List<CRLRef>
getCRLRefs(JAdESAttribute unsignedAttribute)
Returns a list of CRL revocation refs from the givenunsignedAttribute
protected List<Identifier>
getEncapsulatedCertificateIdentifiers(JAdESAttribute unsignedAttribute)
Returns a list ofIdentifier
s obtained from the givenunsignedAttribute
protected List<Identifier>
getEncapsulatedCRLIdentifiers(JAdESAttribute unsignedAttribute)
Returns a list ofIdentifier
s obtained from the givenunsignedAttribute
protected List<Identifier>
getEncapsulatedOCSPIdentifiers(JAdESAttribute unsignedAttribute)
Returns a list ofIdentifier
s obtained from the givenunsignedAttribute
protected List<TimestampedReference>
getIndividualContentTimestampedReferences(JAdESAttribute signedAttribute)
Returns a list ofTimestampedReference
s for an "individual-data-objects-timestamp" NOTE: Used only in XAdESprotected List<OCSPRef>
getOCSPRefs(JAdESAttribute unsignedAttribute)
Returns a list of OCSP revocation refs from the givenunsignedAttribute
byte[]
getSignatureTimestampData()
Returns the message-imprint data for a SignatureTimestamp (BASE64URL(JWS Signature Value))protected JAdESTimestampDataBuilder
getTimestampDataBuilder()
Returns a relatedTimestampDataBuilder
protected boolean
isAllDataObjectsTimestamp(JAdESAttribute signedAttribute)
Determines if the givensignedAttribute
is an instance of "data-objects-timestamp" element NOTE: Applicable only for XAdESprotected boolean
isArchiveTimestamp(JAdESAttribute unsignedAttribute)
Determines if the givenunsignedAttribute
is an instance of "archive-timestamp" elementprotected boolean
isAttrAuthoritiesCertValues(JAdESAttribute unsignedAttribute)
Determines if the givenunsignedAttribute
is an instance of "AttrAuthoritiesCertValues" elementprotected boolean
isAttributeCertificateRef(JAdESAttribute unsignedAttribute)
Determines if the givenunsignedAttribute
is an instance of "attribute-certificate-ref" elementprotected boolean
isAttributeRevocationRef(JAdESAttribute unsignedAttribute)
Determines if the givenunsignedAttribute
is an instance of "attribute-revocation-ref" elementprotected boolean
isAttributeRevocationValues(JAdESAttribute unsignedAttribute)
Determines if the givenunsignedAttribute
is an instance of "AttributeRevocationValues" elementprotected boolean
isCertificateValues(JAdESAttribute unsignedAttribute)
Determines if the givenunsignedAttribute
is an instance of "certificate-values" elementprotected boolean
isCompleteCertificateRef(JAdESAttribute unsignedAttribute)
Determines if the givenunsignedAttribute
is an instance of "complete-certificate-ref" elementprotected boolean
isCompleteRevocationRef(JAdESAttribute unsignedAttribute)
Determines if the givenunsignedAttribute
is an instance of "complete-revocation-ref" elementprotected boolean
isContentTimestamp(JAdESAttribute signedAttribute)
Determines if the givensignedAttribute
is an instance of "content-timestamp" element NOTE: Applicable only for CAdESprotected boolean
isCounterSignature(JAdESAttribute unsignedAttribute)
Determines if the givenunsignedAttribute
is an instance of "counter-signature" elementprotected boolean
isIndividualDataObjectsTimestamp(JAdESAttribute signedAttribute)
Determines if the givensignedAttribute
is an instance of "individual-data-objects-timestamp" element NOTE: Applicable only for XAdESprotected boolean
isRefsOnlyTimestamp(JAdESAttribute unsignedAttribute)
Determines if the givenunsignedAttribute
is an instance of "refs-only-timestamp" elementprotected boolean
isRevocationValues(JAdESAttribute unsignedAttribute)
Determines if the givenunsignedAttribute
is an instance of "revocation-values" elementprotected boolean
isSigAndRefsTimestamp(JAdESAttribute unsignedAttribute)
Determines if the givenunsignedAttribute
is an instance of "sig-and-refs-timestamp" elementprotected boolean
isSignaturePolicyStore(JAdESAttribute unsignedAttribute)
Determines if the givenunsignedAttribute
is an instance of "signature-policy-store" elementprotected boolean
isSignatureTimestamp(JAdESAttribute unsignedAttribute)
Determines if the givenunsignedAttribute
is an instance of "signature-timestamp" elementprotected boolean
isTimeStampValidationData(JAdESAttribute unsignedAttribute)
Determines if the givenunsignedAttribute
is an instance of "timestamp-validation-data" elementprotected TimestampToken
makeTimestampToken(JAdESAttribute signatureAttribute, TimestampType timestampType, List<TimestampedReference> references)
Creates a timestamp token from the providedsignatureAttribute
protected List<TimestampToken>
makeTimestampTokens(JAdESAttribute signatureAttribute, TimestampType timestampType, List<TimestampedReference> references)
Creates timestamp tokens from the providedsignatureAttribute
Methods inherited from class eu.europa.esig.dss.validation.timestamp.SignatureTimestampSource
addExternalTimestamp, createAndValidate, getAllTimestamps, getArchiveTimestampInitialReferences, getArchiveTimestamps, getContentTimestamps, getCounterSignatureReferences, getCounterSignaturesReferences, getDocumentTimestamps, getSignatureSignedDataReferences, getSignatureTimestampReferences, getSignatureTimestamps, getSignedSignatureProperties, getSignerDataReferences, getSigningCertificateTimestampReferences, getTimestampCertificateSources, getTimestampCertificateSourcesExceptLastArchiveTimestamp, getTimestampCRLSources, getTimestampedCertificateRefs, getTimestampedCertificateRefs, getTimestampedCertificateValues, getTimestampedCRLRefs, getTimestampedOCSPRefs, getTimestampedRevocationRefs, getTimestampedRevocationValues, getTimestampOCSPSources, getTimestampsX1, getTimestampsX2, getTimestampValidationData, getUnsignedPropertiesReferences, getUnsignedSignatureProperties, incorporateArchiveTimestampReferences, isTimestamped, makeTimestampTokens, makeTimestampTokensFromSignedAttributes, makeTimestampTokensFromUnsignedAttributes, populateSources, populateSources, validateTimestamps
Methods inherited from class eu.europa.esig.dss.validation.timestamp.AbstractTimestampSource
addReference, addReference, addReferences, createReferencesForCertificates, createReferencesForIdentifiers, getEncapsulatedReferencesFromTimestamps, getEncapsulatedValuesFromTimestamp, getReferencesFromTimestamp
-
Constructor Details
-
JAdESTimestampSource
Default constructor- Parameters:
signature
-JAdESSignature
-
-
Method Details
-
buildSignedSignatureProperties
Description copied from class:SignatureTimestampSource
Creates the 'signed-signature-properties' element of the signature- Specified by:
buildSignedSignatureProperties
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Returns:
SignatureProperties
-
buildUnsignedSignatureProperties
Description copied from class:SignatureTimestampSource
Creates the 'unsigned-signature-properties' element of the signature- Specified by:
buildUnsignedSignatureProperties
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Returns:
SignatureProperties
-
isContentTimestamp
Description copied from class:SignatureTimestampSource
Determines if the givensignedAttribute
is an instance of "content-timestamp" element NOTE: Applicable only for CAdES- Specified by:
isContentTimestamp
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
signedAttribute
-SignatureAttribute
to process- Returns:
- TRUE if the
unsignedAttribute
is a Data Objects Timestamp, FALSE otherwise
-
isAllDataObjectsTimestamp
Description copied from class:SignatureTimestampSource
Determines if the givensignedAttribute
is an instance of "data-objects-timestamp" element NOTE: Applicable only for XAdES- Specified by:
isAllDataObjectsTimestamp
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
signedAttribute
-SignatureAttribute
to process- Returns:
- TRUE if the
unsignedAttribute
is a Data Objects Timestamp, FALSE otherwise
-
isIndividualDataObjectsTimestamp
Description copied from class:SignatureTimestampSource
Determines if the givensignedAttribute
is an instance of "individual-data-objects-timestamp" element NOTE: Applicable only for XAdES- Specified by:
isIndividualDataObjectsTimestamp
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
signedAttribute
-SignatureAttribute
to process- Returns:
- TRUE if the
unsignedAttribute
is a Data Objects Timestamp, FALSE otherwise
-
isSignatureTimestamp
Description copied from class:SignatureTimestampSource
Determines if the givenunsignedAttribute
is an instance of "signature-timestamp" element- Specified by:
isSignatureTimestamp
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
unsignedAttribute
-SignatureAttribute
to process- Returns:
- TRUE if the
unsignedAttribute
is a Signature Timestamp, FALSE otherwise
-
isCompleteCertificateRef
Description copied from class:SignatureTimestampSource
Determines if the givenunsignedAttribute
is an instance of "complete-certificate-ref" element- Specified by:
isCompleteCertificateRef
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
unsignedAttribute
-SignatureAttribute
to process- Returns:
- TRUE if the
unsignedAttribute
is a Complete Certificate Ref, FALSE otherwise
-
isAttributeCertificateRef
Description copied from class:SignatureTimestampSource
Determines if the givenunsignedAttribute
is an instance of "attribute-certificate-ref" element- Specified by:
isAttributeCertificateRef
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
unsignedAttribute
-SignatureAttribute
to process- Returns:
- TRUE if the
unsignedAttribute
is an Attribute Certificate Ref, FALSE otherwise
-
isCompleteRevocationRef
Description copied from class:SignatureTimestampSource
Determines if the givenunsignedAttribute
is an instance of "complete-revocation-ref" element- Specified by:
isCompleteRevocationRef
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
unsignedAttribute
-SignatureAttribute
to process- Returns:
- TRUE if the
unsignedAttribute
is a Complete Revocation Ref, FALSE otherwise
-
isAttributeRevocationRef
Description copied from class:SignatureTimestampSource
Determines if the givenunsignedAttribute
is an instance of "attribute-revocation-ref" element- Specified by:
isAttributeRevocationRef
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
unsignedAttribute
-SignatureAttribute
to process- Returns:
- TRUE if the
unsignedAttribute
is an Attribute Revocation Ref, FALSE otherwise
-
isRefsOnlyTimestamp
Description copied from class:SignatureTimestampSource
Determines if the givenunsignedAttribute
is an instance of "refs-only-timestamp" element- Specified by:
isRefsOnlyTimestamp
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
unsignedAttribute
-SignatureAttribute
to process- Returns:
- TRUE if the
unsignedAttribute
is a Refs Only TimeStamp, FALSE otherwise
-
isSigAndRefsTimestamp
Description copied from class:SignatureTimestampSource
Determines if the givenunsignedAttribute
is an instance of "sig-and-refs-timestamp" element- Specified by:
isSigAndRefsTimestamp
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
unsignedAttribute
-SignatureAttribute
to process- Returns:
- TRUE if the
unsignedAttribute
is a Sig And Refs TimeStamp, FALSE otherwise
-
isCertificateValues
Description copied from class:SignatureTimestampSource
Determines if the givenunsignedAttribute
is an instance of "certificate-values" element- Specified by:
isCertificateValues
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
unsignedAttribute
-SignatureAttribute
to process- Returns:
- TRUE if the
unsignedAttribute
is a Certificate Values, FALSE otherwise
-
isRevocationValues
Description copied from class:SignatureTimestampSource
Determines if the givenunsignedAttribute
is an instance of "revocation-values" element- Specified by:
isRevocationValues
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
unsignedAttribute
-SignatureAttribute
to process- Returns:
- TRUE if the
unsignedAttribute
is a Revocation Values, FALSE otherwise
-
isArchiveTimestamp
Description copied from class:SignatureTimestampSource
Determines if the givenunsignedAttribute
is an instance of "archive-timestamp" element- Specified by:
isArchiveTimestamp
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
unsignedAttribute
-SignatureAttribute
to process- Returns:
- TRUE if the
unsignedAttribute
is an Archive TimeStamp, FALSE otherwise
-
isTimeStampValidationData
Description copied from class:SignatureTimestampSource
Determines if the givenunsignedAttribute
is an instance of "timestamp-validation-data" element- Specified by:
isTimeStampValidationData
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
unsignedAttribute
-SignatureTimestampSource
to process- Returns:
- TRUE if the
unsignedAttribute
is a TimeStamp Validation Data, FALSE otherwise
-
isCounterSignature
Description copied from class:SignatureTimestampSource
Determines if the givenunsignedAttribute
is an instance of "counter-signature" element- Specified by:
isCounterSignature
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
unsignedAttribute
-SignatureTimestampSource
to process- Returns:
- TRUE if the
unsignedAttribute
is a Counter signature, FALSE otherwise
-
isSignaturePolicyStore
Description copied from class:SignatureTimestampSource
Determines if the givenunsignedAttribute
is an instance of "signature-policy-store" element- Specified by:
isSignaturePolicyStore
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
unsignedAttribute
-SignatureTimestampSource
to process- Returns:
- TRUE if the
unsignedAttribute
is a Counter signature, FALSE otherwise
-
getIndividualContentTimestampedReferences
protected List<TimestampedReference> getIndividualContentTimestampedReferences(JAdESAttribute signedAttribute)Description copied from class:SignatureTimestampSource
Returns a list ofTimestampedReference
s for an "individual-data-objects-timestamp" NOTE: Used only in XAdES- Specified by:
getIndividualContentTimestampedReferences
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
signedAttribute
-SignatureTimestampSource
- Returns:
- a list of
TimestampedReference
s
-
isAttrAuthoritiesCertValues
Description copied from class:SignatureTimestampSource
Determines if the givenunsignedAttribute
is an instance of "AttrAuthoritiesCertValues" element- Specified by:
isAttrAuthoritiesCertValues
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
unsignedAttribute
-SignatureAttribute
to process- Returns:
- TRUE if the
unsignedAttribute
is an AttrAuthoritiesCertValues, FALSE otherwise
-
isAttributeRevocationValues
Description copied from class:SignatureTimestampSource
Determines if the givenunsignedAttribute
is an instance of "AttributeRevocationValues" element- Specified by:
isAttributeRevocationValues
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
unsignedAttribute
-SignatureAttribute
to process- Returns:
- TRUE if the
unsignedAttribute
is an AttributeRevocationValues, FALSE otherwise
-
getCertificateRefs
Description copied from class:SignatureTimestampSource
Returns a list ofCertificateRef
s from the givenunsignedAttribute
- Specified by:
getCertificateRefs
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
unsignedAttribute
-SignatureTimestampSource
to get certRefs from- Returns:
- list of
CertificateRef
s
-
getCRLRefs
Description copied from class:SignatureTimestampSource
Returns a list of CRL revocation refs from the givenunsignedAttribute
- Specified by:
getCRLRefs
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
unsignedAttribute
-SignatureTimestampSource
to get CRLRef- Returns:
- list of
CRLRef
s
-
getOCSPRefs
Description copied from class:SignatureTimestampSource
Returns a list of OCSP revocation refs from the givenunsignedAttribute
- Specified by:
getOCSPRefs
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
unsignedAttribute
-SignatureTimestampSource
to get OCSPRefs from- Returns:
- list of
OCSPRef
s
-
getEncapsulatedCertificateIdentifiers
Description copied from class:SignatureTimestampSource
Returns a list ofIdentifier
s obtained from the givenunsignedAttribute
- Specified by:
getEncapsulatedCertificateIdentifiers
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
unsignedAttribute
-SignatureTimestampSource
to get certificate identifiers from- Returns:
- list of
Identifier
s
-
getArchiveTimestampOtherReferences
protected List<TimestampedReference> getArchiveTimestampOtherReferences(TimestampToken timestampToken)Description copied from class:SignatureTimestampSource
Returns a list ofTimestampedReference
s for the given archivetimestampToken
that cannot be extracted from signature attributes (signed or unsigned), depending on its format (signedData for CAdES or, keyInfo for XAdES)- Specified by:
getArchiveTimestampOtherReferences
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
timestampToken
-TimestampToken
to get archive timestamp references for- Returns:
- list of
TimestampedReference
s
-
getEncapsulatedCRLIdentifiers
Description copied from class:SignatureTimestampSource
Returns a list ofIdentifier
s obtained from the givenunsignedAttribute
- Specified by:
getEncapsulatedCRLIdentifiers
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
unsignedAttribute
-SignatureTimestampSource
to get CRL identifiers from- Returns:
- list of
Identifier
s
-
getEncapsulatedOCSPIdentifiers
Description copied from class:SignatureTimestampSource
Returns a list ofIdentifier
s obtained from the givenunsignedAttribute
- Specified by:
getEncapsulatedOCSPIdentifiers
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
unsignedAttribute
-SignatureTimestampSource
to get OCSP identifiers from- Returns:
- list of
Identifier
s
-
getTimestampDataBuilder
Description copied from class:SignatureTimestampSource
Returns a relatedTimestampDataBuilder
- Specified by:
getTimestampDataBuilder
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Returns:
TimestampDataBuilder
-
getCounterSignatures
Description copied from class:SignatureTimestampSource
Extracts Counter Signatures from the givenunsignedAttribute
- Specified by:
getCounterSignatures
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
unsignedAttribute
-SignatureTimestampSource
containing counter signatures- Returns:
- a list of
AdvancedSignature
containing counter signatures
-
getSignatureTimestampData
public byte[] getSignatureTimestampData()Returns the message-imprint data for a SignatureTimestamp (BASE64URL(JWS Signature Value))- Returns:
- byte array representing a message-imprint
-
getArchiveTimestampData
Returns concatenated data for an ArchiveTimestamp- Parameters:
canonicalizationMethod
-String
canonicalization method to use- Returns:
- byte array
-
makeTimestampToken
protected TimestampToken makeTimestampToken(JAdESAttribute signatureAttribute, TimestampType timestampType, List<TimestampedReference> references)Description copied from class:SignatureTimestampSource
Creates a timestamp token from the providedsignatureAttribute
- Specified by:
makeTimestampToken
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
signatureAttribute
-SignatureAttribute
to create timestamp fromtimestampType
- a targetTimestampType
references
- list ofTimestampedReference
s covered by the current timestamp- Returns:
TimestampToken
-
makeTimestampTokens
protected List<TimestampToken> makeTimestampTokens(JAdESAttribute signatureAttribute, TimestampType timestampType, List<TimestampedReference> references)Description copied from class:SignatureTimestampSource
Creates timestamp tokens from the providedsignatureAttribute
- Overrides:
makeTimestampTokens
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
signatureAttribute
-SignatureAttribute
to create timestamp fromtimestampType
- a targetTimestampType
references
- list ofTimestampedReference
s covered by the current timestamp- Returns:
- a list of
TimestampToken
s
-
getArchiveTimestampType
Description copied from class:SignatureTimestampSource
ReturnsArchiveTimestampType
for the givenunsignedAttribute
- Specified by:
getArchiveTimestampType
in classSignatureTimestampSource<JAdESSignature,JAdESAttribute>
- Parameters:
unsignedAttribute
-SignatureTimestampSource
to get archive timestamp type for- Returns:
ArchiveTimestampType
-