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 Details

    • getSignaturePolicyIdentifier

      String getSignaturePolicyIdentifier() throws PbadException
      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 SignatureAttributeNotFoundException
      Obtém a codificação do primeiro atributo com este identificador na assinatura. Se o atributo for do tipo CAdES, o attribute 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 VerificationException
      Verifica 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

      byte[] getSignatureValueHash​(String algorithm) throws PbadException, NoSuchAlgorithmException
      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 CounterSignatureException
      Obté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

      byte[] getSigAndRefsHashValue​(String algorithm) throws PbadException, NoSuchAlgorithmException
      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
      Throws:
      PbadException
      NoSuchAlgorithmException
    • getArchiveTimeStampHashValue

      byte[] getArchiveTimeStampHashValue​(String hashAlgorithmName, Time timeReference) throws PbadException, NoSuchAlgorithmException
      Throws:
      PbadException
      NoSuchAlgorithmException
    • getSignerInformation

      org.bouncycastle.cms.SignerInformation getSignerInformation()