Class TimeStampVerifier
java.lang.Object
br.ufsc.labsec.signature.conformanceVerifier.cades.AbstractVerifier
br.ufsc.labsec.signature.conformanceVerifier.cades.attributes.TimeStampVerifier
- All Implemented Interfaces:
TimeStampVerifierInterface
public class TimeStampVerifier extends AbstractVerifier implements TimeStampVerifierInterface
Responsável pela verificação de carimbos do tempo
-
Field Summary
Fields inherited from class br.ufsc.labsec.signature.conformanceVerifier.cades.AbstractVerifier
certPath, component, exceptions, mandatedAttributes, ocspRespList, ocspServerCertificate, optionalAttributes, prohibitedAttributes, proofOfExistence, signature, signerCert
-
Constructor Summary
Constructors Constructor Description TimeStampVerifier(CadesSignatureComponent cadesSignatureComponent)
Construtor do verificador de carimbos do tempo -
Method Summary
Modifier and Type Method Description void
addAttribute(String attributeId, AttributeParams params)
Cria e adiciona um atributo na lista de atributos não assinadosvoid
addValidationData(CadesSignature signature)
Adiciona novos certificados e CRLs ao SignatureIdentityInformation da assinatura de acordo com a presença dos atributos CertificateValues e RevocationValuesList<org.bouncycastle.cert.X509AttributeCertificateHolder>
getSignatureAttributeCertificateValues(CadesSignature signature)
List<Certificate>
getSignatureCertificateValues(CadesSignature signature)
Retorna a lista de certificados do atributo IdAaEtsCertValuesSignatureIdentityInformation
getSignatureIdentityInformation()
SignaturePolicyInterface
getSignaturePolicy()
Retorna a política de assinatura da assinatura que contém o carimbo do tempoList<CRL>
getSignatureRevocationValues(CadesSignature signature)
Retorna a lista de CRLs do atributoIdAaEtsRevocationValues
Time
getTimeStampGenerationTime()
Retorna o horário do carimboList<Exception>
getValidationErrors()
Retorna a lista dos erros que ocorreram na última validaçãovoid
removeAttribute(String attributeId, int index)
Remove um atributo da lista de atributos não-assinadosboolean
setTimeStamp(byte[] timeStamp, String timeStampIdentifier, List<String> mandatedAttributes, List<String> optionalAttributes, List<String> prohibitedAttributes, Time timeReference, Time currentTimeReference)
Inicializa umTimeStampVerifier
boolean
setTimeStamp(org.bouncycastle.tsp.TimeStampToken timeStampToken, String identifier, List<String> mandatedAttributes, List<String> optionalAttributes, List<String> prohibitedAttributes, Time timeReference, Time currentTimeReference)
void
setupValidationData(TimeStampReport report)
Inicializa os dados de validação dos atributos antes de validar a assinaturaboolean
verify(SignatureReport report)
Valida os atributos do carimbo do tempoMethods inherited from class br.ufsc.labsec.signature.conformanceVerifier.cades.AbstractVerifier
buildCertPath, checkTimeStampAlgorithmsConstraints, getCadesSignatureComponent, getCertPath, getCurrentTimeReference, getOcspList, getOcspServerCertificate, getParams, getSignature, getSignerCert, getTimeReference, getTimeStampPriorityList, getTSTimeReference, hasProofOfExistence, initialize, initialize, initialize, initialize, isTimeStamp, setComponent, setCurrentTimeReference, setOcsps, setOcspServerCertificate, setSignerCert, setTimeReference, verifyAttributesInMandatedList, verifyConformity, verifyOnlyUnmandatedAttributes
-
Constructor Details
-
TimeStampVerifier
Construtor do verificador de carimbos do tempo- Parameters:
cadesSignatureComponent
- Componente de assinatura CAdES
-
-
Method Details
-
setTimeStamp
public boolean setTimeStamp(byte[] timeStamp, String timeStampIdentifier, List<String> mandatedAttributes, List<String> optionalAttributes, List<String> prohibitedAttributes, Time timeReference, Time currentTimeReference)Inicializa umTimeStampVerifier
- Specified by:
setTimeStamp
in interfaceTimeStampVerifierInterface
- Parameters:
timeStamp
- Carimbo a ser verificadomandatedAttributes
- Lista de atributos obrigatórios no carimbo de tempooptionalAttributes
- Lista de atributos opcionais no carimbo de tempoprohibitedAttributes
- Lista de atributos proibidos no carimbo de tempotimeReference
- Referência do tempo, onde é permitido o uso de prova de existência por outros carimbos.currentTimeReference
- Referência do tempo atual, independente de provas de existência fornecida por outros carimbos.timeStampIdentifier
- Identificador do carimbo do tempo- Returns:
- Indica se a inicilização foi realizada com sucesso
-
setTimeStamp
public boolean setTimeStamp(org.bouncycastle.tsp.TimeStampToken timeStampToken, String identifier, List<String> mandatedAttributes, List<String> optionalAttributes, List<String> prohibitedAttributes, Time timeReference, Time currentTimeReference)- Specified by:
setTimeStamp
in interfaceTimeStampVerifierInterface
-
getSignatureIdentityInformation
- Specified by:
getSignatureIdentityInformation
in interfaceTimeStampVerifierInterface
-
addValidationData
public void addValidationData(CadesSignature signature) throws CertificateException, CRLException, IOExceptionAdiciona novos certificados e CRLs ao SignatureIdentityInformation da assinatura de acordo com a presença dos atributos CertificateValues e RevocationValues- Parameters:
signature
- A assinatura CAdES- Throws:
CertificateException
- Ocorre esta exceção quando for encontrado algum erro no certificadoIOException
- Ocorre esta exceção quando for encontrado algum erro no arquivo de entrada/saídaCRLException
-
getSignatureCertificateValues
Retorna a lista de certificados do atributo IdAaEtsCertValues- Parameters:
signature
- A assinatura CAdES- Returns:
- A lista de certificados presente no atributo da assinatura CertificateValues
-
getSignatureAttributeCertificateValues
public List<org.bouncycastle.cert.X509AttributeCertificateHolder> getSignatureAttributeCertificateValues(CadesSignature signature) -
verify
Valida os atributos do carimbo do tempo- Specified by:
verify
in interfaceTimeStampVerifierInterface
- Specified by:
verify
in classAbstractVerifier
- Parameters:
report
- O relatório de verificação do carimbo- Returns:
- Indica se o carimbo é válido
- Throws:
NotInICPException
-
getValidationErrors
Retorna a lista dos erros que ocorreram na última validação- Specified by:
getValidationErrors
in interfaceTimeStampVerifierInterface
- Returns:
- A lista de erros
-
getSignaturePolicy
Retorna a política de assinatura da assinatura que contém o carimbo do tempo- Specified by:
getSignaturePolicy
in classAbstractVerifier
- Returns:
- A política de assinatura
-
addAttribute
Cria e adiciona um atributo na lista de atributos não assinados- Specified by:
addAttribute
in interfaceTimeStampVerifierInterface
- Parameters:
attributeId
- O identificador do atributoparams
- Os parâmetros do atributo
-
removeAttribute
Remove um atributo da lista de atributos não-assinados- Specified by:
removeAttribute
in interfaceTimeStampVerifierInterface
- Parameters:
attributeId
- O identificador do atributoindex
- A posição na assinatura do atributo a ser retirado
-
setupValidationData
public void setupValidationData(TimeStampReport report) throws CertificateException, IOException, CRLExceptionInicializa os dados de validação dos atributos antes de validar a assinatura- Specified by:
setupValidationData
in interfaceTimeStampVerifierInterface
- Parameters:
report
- A estrutura de relatório para inserção dos dados de validação- Throws:
CertificateException
IOException
CRLException
-
getTimeStampGenerationTime
Retorna o horário do carimbo- Specified by:
getTimeStampGenerationTime
in interfaceTimeStampVerifierInterface
- Returns:
- O horário do carimbo
-
getSignatureRevocationValues
Retorna a lista de CRLs do atributoIdAaEtsRevocationValues
- Parameters:
signature
- A assinatura que contém o atributo- Returns:
- A lista de CRLs
-