Interface GenericCadesSignature
- All Superinterfaces:
Signature<org.bouncycastle.asn1.cms.Attribute>,SignatureObject
- All Known Implementing Classes:
CadesSignature,CadesSignatureInformation,CadesSimpleSignatureInformation,IdCounterSignature
public interface GenericCadesSignature extends Signature<org.bouncycastle.asn1.cms.Attribute>
Esta interface representa uma assinatura digital. Esta interface é estendida pela classe
CadesSignature. De acordo com o DOC-ICP-15 - * 6.1.3,
uma assinatura digital é um tipo de assinatura eletrônica que utiliza
um par de chaves criptográficas associado a um certificado digital.-
Method Summary
Modifier and Type Method Description byte[]getArchiveTimeStampHashValue(String hashAlgorithmName)byte[]getArchiveTimeStampHashValue(String hashAlgorithmName, Time timeReference)org.bouncycastle.asn1.cms.AttributegetEncodedAttribute(String attributeId)Obtém a codificação do primeiro atributo com este identificador na assinatura.SignatureModeCAdESgetMode()Retorna o modo de assinaturabyte[]getSigAndRefsHashValue(String algorithm)Utiliza o algoritmo indicado para realizar o resumo criptográfico das seguintes informações em ordem: - Valor da assinatura - Carimbo do tempo da assinatura - Referências de certificados completa - Referências de dados de validação completa - Referências de certificados de atributo completas* - Referências de dados de validação de certificados de atributo completa* Os ultimos iténs indicados com * são opicionais e podem ou não estar presentes.StringgetSignaturePolicyHashValue()Retorna o valor de hash da políticaStringgetSignaturePolicyIdentifier()Obtém o identificador da PA (Política de Assinatura) utilizada nesta assinatura.StringgetSignaturePolicyUri()Obtem a URI da LPA que contém a política de assinatura da assinaturabyte[]getSignatureValueHash(String algorithm)Utiliza o algoritmo indicado para realizar o resumo criptográfico da assinatura.org.bouncycastle.cms.SignerInformationgetSignerInformation()booleanisExternalSignedData()Verifica se o dado assinado é externo à assinatura.booleanverify(X509Certificate signerCertificate, SignatureReport sigReport, List<PbadException> exceptions, boolean isIcpBr)Verifica a integridade da assinatura.Methods inherited from interface br.ufsc.labsec.signature.conformanceVerifier.common.Signature
addUnsignedAttribute, getAlgorithmOid, getAttributeList, getCounterSignatures, getEncodedAttribute, getFormat, getSignedAttributeList, getUnsignedAttributeList, replaceUnsignedAttribute
-
Method Details
-
getSignaturePolicyIdentifier
Obtém o identificador da PA (Política de Assinatura) utilizada nesta assinatura.- Returns:
- identificador da PA utilizada por esta assinatura.
- Throws:
PbadException
-
getEncodedAttribute
org.bouncycastle.asn1.cms.Attribute getEncodedAttribute(String attributeId) throws SignatureAttributeNotFoundExceptionObtém a codificação do primeiro atributo com este identificador na assinatura. Se o atributo for do tipo CAdES, oattributeserá um OID, se for do tipo XAdES, será o nome de uma tag- Parameters:
attributeId- O OID de identificação do atributo- Returns:
- A codificação específica do atributo
- Throws:
SignatureAttributeNotFoundException
-
verify
boolean verify(X509Certificate signerCertificate, SignatureReport sigReport, List<PbadException> exceptions, boolean isIcpBr) throws VerificationExceptionVerifica a integridade da assinatura.- Parameters:
signerCertificate- certificado do assinante.- Returns:
true, se a integridade da assinatura estiver válida.- Throws:
VerificationException
-
isExternalSignedData
boolean isExternalSignedData()Verifica se o dado assinado é externo à assinatura.- Returns:
true, se há algum dado assinado que é externo a assinatura.
-
getSignatureValueHash
Utiliza o algoritmo indicado para realizar o resumo criptográfico da assinatura.- Parameters:
algorithm- identificador do algoritmo de resumo criptográfico.- Returns:
- bytes do resumo criptográfico da assinatura.
- Throws:
PbadExceptionNoSuchAlgorithmException
-
getSigAndRefsHashValue
Utiliza o algoritmo indicado para realizar o resumo criptográfico das seguintes informações em ordem: - Valor da assinatura - Carimbo do tempo da assinatura - Referências de certificados completa - Referências de dados de validação completa - Referências de certificados de atributo completas* - Referências de dados de validação de certificados de atributo completa* Os ultimos iténs indicados com * são opicionais e podem ou não estar presentes. Os outros dados devem necessáriamente estar presentes para que se possa obter o resumo criptográfico.- Parameters:
algorithm- O algoritmo a ser utilizado para o resumo- Returns:
- Os bytes do resumo criptográfico
- Throws:
PbadExceptionNoSuchAlgorithmException
-
getMode
Retorna o modo de assinatura- Returns:
- O modo da assinatura
- Throws:
SignatureModeException
-
getSignaturePolicyUri
String getSignaturePolicyUri()Obtem a URI da LPA que contém a política de assinatura da assinatura- Returns:
- A URI da LPA
-
getSignaturePolicyHashValue
String getSignaturePolicyHashValue()Retorna o valor de hash da política- Returns:
- O valor de hash da política
-
getArchiveTimeStampHashValue
byte[] getArchiveTimeStampHashValue(String hashAlgorithmName) throws PbadException, NoSuchAlgorithmException -
getArchiveTimeStampHashValue
byte[] getArchiveTimeStampHashValue(String hashAlgorithmName, Time timeReference) throws PbadException, NoSuchAlgorithmException -
getSignerInformation
org.bouncycastle.cms.SignerInformation getSignerInformation()
-