Class TimeStamp<Encod>
java.lang.Object
br.ufsc.labsec.signature.conformanceVerifier.cades.attributes.TimeStamp<Encod>
- All Implemented Interfaces:
SignatureAttribute<Encod>, Comparable<TimeStamp<Encod>>
- Direct Known Subclasses:
DocTimeStampAttribute, TimeStampToken
public abstract class TimeStamp<Encod>
extends Object
implements Comparable<TimeStamp<Encod>>, SignatureAttribute<Encod>
Representa um carimbo do tempo
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected org.bouncycastle.asn1.cms.ContentInfoConteúdo do carimboprotected int -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddUnsignedAttribute(SignatureAttribute<org.bouncycastle.asn1.cms.Attribute> attribute) Adiciona um atributo não-assinadoprotected org.bouncycastle.tsp.TimeStampTokenConstrói umTimeStampTokena partir do contentInfo.intCompara dois objetos desta classeprotected CadesSignatureContainerTransforma um ContentInfo (carimbo do tempo) em uma assinaturaprotected abstract byte[]getAttributeHash(String hashAlgorithmId) Calcula o hash do atributoRetorna a lista de atributos do carimboorg.bouncycastle.asn1.cms.ContentInfoObtém oContentInfo, que pertence ao BouncyCastle e permite um acesso mais detalhado à estrutura do carimbo do tempoorg.bouncycastle.asn1.cms.AttributegetEncodedAttribute(String attributeId) org.bouncycastle.asn1.cms.AttributegetEncodedAttribute(String identifier, Integer index) Retorna um objeto do atributo desejadoabstract StringObtém o identificador do atributoObtém a data do carimbo do tempoprotected abstract booleanisAttributeHashValid(String hashAlgorithm, byte[] expected) voidremoveUnsignedAttribute(String attributeId, int index) Remove um atributo não-assinadovoidreplaceUnsignedAttribute(SignatureAttribute<org.bouncycastle.asn1.cms.Attribute> attribute, Integer index) Substitui um atributo não assinado qualquer, útil quando é necessário adicionar mais atributos em um carimbo de tempo por exemploabstract voidvalidate(TimeStampReport report, boolean containsRefsTimestamp, boolean containsArchiveTimestamp) Faz a validação do atributoMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface SignatureAttribute
getEncoded, getValue, isSigned, isUnique, validate
-
Field Details
-
contentInfo
protected org.bouncycastle.asn1.cms.ContentInfo contentInfoConteúdo do carimbo -
index
protected int index
-
-
Constructor Details
-
TimeStamp
public TimeStamp()
-
-
Method Details
-
getTimeReference
Obtém a data do carimbo do tempo- Returns:
- A data do carimbo do tempo
- Throws:
TimeStampException- Exceção em caso de erro durante a manipulação do carimbo
-
buildTimeStampToken
Constrói umTimeStampTokena partir do contentInfo.- Returns:
- O
TimeStampTokencriado - Throws:
TimeStampException
-
getEncodedAttribute
public org.bouncycastle.asn1.cms.Attribute getEncodedAttribute(String identifier, Integer index) throws SignatureAttributeException Retorna um objeto do atributo desejado- Parameters:
identifier- O identificador do atributoindex- Índice do atributo- Returns:
- Um objeto do atributo desejado
- Throws:
SignatureAttributeException
-
getEncodedAttribute
public org.bouncycastle.asn1.cms.Attribute getEncodedAttribute(String attributeId) throws SignatureAttributeException - Throws:
SignatureAttributeException
-
addUnsignedAttribute
public void addUnsignedAttribute(SignatureAttribute<org.bouncycastle.asn1.cms.Attribute> attribute) throws SignatureAttributeException Adiciona um atributo não-assinado- Parameters:
attribute- Identificador do atributo a ser adicionado- Throws:
SignatureAttributeException
-
removeUnsignedAttribute
public void removeUnsignedAttribute(String attributeId, int index) throws SignatureAttributeException Remove um atributo não-assinado- Parameters:
attributeId- Identificador do atributo a ser removidoindex- Índice do atributo- Throws:
SignatureAttributeException
-
replaceUnsignedAttribute
public void replaceUnsignedAttribute(SignatureAttribute<org.bouncycastle.asn1.cms.Attribute> attribute, Integer index) throws PbadException, SignatureAttributeException Substitui um atributo não assinado qualquer, útil quando é necessário adicionar mais atributos em um carimbo de tempo por exemplo- Parameters:
attribute- O atributo que foi atualizadoindex- O indice do atributo em relação aos seus similares, ou seja, se há três carimbos do tempo da assinatura e o segundo vai ser atualizado o indice é 1- Throws:
PbadExceptionSignatureAttributeException
-
contentInfoToSignatureContainer
Transforma um ContentInfo (carimbo do tempo) em uma assinatura- Returns:
- O carimbo como uma assinatura CAdES
-
getContentInfo
public org.bouncycastle.asn1.cms.ContentInfo getContentInfo()Obtém oContentInfo, que pertence ao BouncyCastle e permite um acesso mais detalhado à estrutura do carimbo do tempo- Returns:
- O
ContentInfodo carimbo
-
compareTo
Compara dois objetos desta classe- Specified by:
compareToin interfaceComparable<Encod>- Parameters:
otherTimeStamp- O objeto a ser comparado- Returns:
- Indica se os dois objetos são iguais
-
getAttributeList
-
getAttributeHash
protected abstract byte[] getAttributeHash(String hashAlgorithmId) throws PbadException, NoSuchAlgorithmException Calcula o hash do atributo- Parameters:
hashAlgorithmId- O algoritmo utilizado- Returns:
- O valor de hash do atributo
- Throws:
PbadException- Exceção em caso de erro durante o cálculoNoSuchAlgorithmException
-
isAttributeHashValid
-
getIdentifier
Obtém o identificador do atributo- Specified by:
getIdentifierin interfaceSignatureAttribute<Encod>- Returns:
- O identificador do atributo
-
validate
public abstract void validate(TimeStampReport report, boolean containsRefsTimestamp, boolean containsArchiveTimestamp) throws SignatureAttributeException, CertificateAttributeException Faz a validação do atributo- Parameters:
report- O relatório de verificação do carimbo- Throws:
SignatureAttributeExceptionCertificateAttributeException
-