Interface GenericCadesSignature
- All Superinterfaces:
Signature<org.bouncycastle.asn1.cms.Attribute>
,SignatureObject
- All Known Implementing Classes:
CadesSignature
,CadesSignatureInformation
,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)
CounterSignatureInterface
getCounterSignature(X509Certificate signerCertificate)
Obtém a contra assinatura do detentor do certificado passado como parâmetroList<CounterSignatureInterface>
getCounterSignatures()
Retorna todas as contra assinaturas anexadas a uma assinatura, se não existir contra assinaturas é retornado nullorg.bouncycastle.asn1.cms.Attribute
getEncodedAttribute(String attributeId)
Obtém a codificação do primeiro atributo com este identificador na assinatura.SignatureModeCAdES
getMode()
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.String
getSignaturePolicyHashValue()
Retorna o valor de hash da políticaString
getSignaturePolicyIdentifier()
Obtém o identificador da PA (Política de Assinatura) utilizada nesta assinatura.String
getSignaturePolicyUri()
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.SignerInformation
getSignerInformation()
boolean
isExternalSignedData()
Verifica se o dado assinado é externo à assinatura.boolean
verify(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, getAttributeList, getEncodedAttribute
-
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, oattribute
será 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:
PbadException
NoSuchAlgorithmException
-
getCounterSignature
CounterSignatureInterface getCounterSignature(X509Certificate signerCertificate) throws CounterSignatureExceptionObtém a contra assinatura do detentor do certificado passado como parâmetro- Parameters:
signerCertificate
- Certificado do contra assinante que se deseja obter a contra assinatura- Returns:
- Uma contra assinatura
- Throws:
CounterSignatureException
-
getCounterSignatures
List<CounterSignatureInterface> getCounterSignatures()Retorna todas as contra assinaturas anexadas a uma assinatura, se não existir contra assinaturas é retornado null- Returns:
- A lista de contra assinaturas
-
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:
PbadException
NoSuchAlgorithmException
-
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()
-