java.lang.Object
br.ufsc.labsec.signature.conformanceVerifier.cades.attributes.unsigned.IdAaEtsRevocationValues
All Implemented Interfaces:
SignatureAttribute<org.bouncycastle.asn1.cms.Attribute>

public class IdAaEtsRevocationValues
extends Object
implements SignatureAttribute<org.bouncycastle.asn1.cms.Attribute>
Representa os valores de revogação (LCRs ou respostas OCSP) de uma assinatura.

Oid e esquema do atributo id-aa-ets-revocationValues retirado do documento ETSI TS 101 733 V1.8.1:

 RevocationValues ::= SEQUENCE {
        crlVals
        [0] SEQUENCE OF CertificateList OPTIONAL,
        ocspVals
        [1] SEQUENCE OF BasicOCSPResponse OPTIONAL,
        otherRevVals
        [2] OtherRevVals OPTIONAL}

 OtherRevVals ::= SEQUENCE {
        otherRevValType OtherRevValType,
        otherRevVals
        ANY DEFINED BY OtherRevValType}
 
  • Field Summary

    Fields
    Modifier and Type Field Description
    protected List<org.bouncycastle.asn1.ocsp.BasicOCSPResponse> basicOcspResponses
    Lista de respostas OCSP
    protected List<CRL> crlValues
    Lista de CRLs
    static String IDENTIFIER  
    protected org.bouncycastle.asn1.esf.OtherRevVals otherRevValues
    Outras fontes de revogação
    protected AbstractVerifier signatureVerifier
    Algoritmo de cálculo de hash
  • Constructor Summary

    Constructors
    Constructor Description
    IdAaEtsRevocationValues​(AbstractVerifier signatureVerifier, Integer index)
    Deve-se utilizar este construtor no momento de validação do atributo.
    IdAaEtsRevocationValues​(AbstractVerifier signatureVerifier, Integer index, String id)
    Construtor
    IdAaEtsRevocationValues​(Collection<CRL> crlValues, Collection<org.bouncycastle.asn1.ocsp.BasicOCSPResponse> ocspValues, org.bouncycastle.asn1.esf.OtherRevVals otherRevValues)
    Este atributo representa as fontes de revogação utilizadas para validação/verificação de uma determinada assinatura.
    IdAaEtsRevocationValues​(org.bouncycastle.asn1.cms.Attribute genericEncoding)
    Constrói um objeto IdAaEtsRevocationValues
  • Method Summary

    Modifier and Type Method Description
    protected org.bouncycastle.asn1.ocsp.BasicOCSPResponse[] buildBasicOCSPResp()
    Constrói o atributo BasicOCSPResponse
    protected org.bouncycastle.asn1.x509.CertificateList[] buildCertificateList()
    Constrói o atributo CertificateList
    protected void decode​(org.bouncycastle.asn1.cms.Attribute genericEncoding)
    Constrói um objeto IdAaEtsRevocationValues
    protected void decodeCrls​(org.bouncycastle.asn1.x509.CertificateList[] certificateList)
    Adiciona os elementos do array dado à lista de CRLs
    protected void decodeOcspResponses​(org.bouncycastle.asn1.ocsp.BasicOCSPResponse[] basicOcspResponses)
    Adiciona os elementos do array dado à lista de respostas OCSP
    protected org.bouncycastle.asn1.esf.RevocationValues decodeRevocationValuesSequence​(org.bouncycastle.asn1.ASN1Sequence revocationValuesSequence)
    Constrói um objeto RevocationValues a partir do elemento ASN.1 na assinatura
    protected org.bouncycastle.asn1.ocsp.BasicOCSPResponse[] generateBasicOCSPResponse​(org.bouncycastle.asn1.ASN1Sequence basicOcspSequence)
    Constrói o array de BasicOCSPResponse conforme o ASN1 do atributo
    protected org.bouncycastle.asn1.x509.CertificateList[] generateCrlList​(org.bouncycastle.asn1.ASN1Sequence certificateListSequence)
    Constrói o array de CertificateList conforme o ASN1 do atributo
    List<CRL> getCrlValues()
    Retorna a lista de CRLs
    org.bouncycastle.asn1.cms.Attribute getEncoded()
    Retorna o atributo codificado
    String getIdentifier()
    Retorna o identificador do atributo
    List<org.bouncycastle.asn1.ocsp.BasicOCSPResponse> getOcspValues()
    Retorna a lista de respsotas OCSP
    org.bouncycastle.asn1.esf.OtherRevVals getOtherRevValues()
    Retorna as outras fontes de revogação
    boolean isSigned()
    Informa se o atributo é assinado
    boolean isUnique()
    Verifica se o atributo deve ter apenas uma instância na assinatura
    void validate()
    Valida o atributo de acordo com suas regras específicas

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • IDENTIFIER

      public static final String IDENTIFIER
    • crlValues

      protected List<CRL> crlValues
      Lista de CRLs
    • basicOcspResponses

      protected List<org.bouncycastle.asn1.ocsp.BasicOCSPResponse> basicOcspResponses
      Lista de respostas OCSP
    • otherRevValues

      protected org.bouncycastle.asn1.esf.OtherRevVals otherRevValues
      Outras fontes de revogação
    • signatureVerifier

      protected AbstractVerifier signatureVerifier
      Algoritmo de cálculo de hash
  • Constructor Details

    • IdAaEtsRevocationValues

      public IdAaEtsRevocationValues​(AbstractVerifier signatureVerifier, Integer index) throws SignatureAttributeException
      Deve-se utilizar este construtor no momento de validação do atributo. O parâmetro index deve ser usado no caso em que há mais de um atributo do mesmo tipo. Caso contrário, ele deve ser zero.
      Parameters:
      signatureVerifier - Usado para criar e verificar o atributo
      index - Índice usado para selecionar o atributo
      Throws:
      SignatureAttributeException
    • IdAaEtsRevocationValues

      public IdAaEtsRevocationValues​(AbstractVerifier signatureVerifier, Integer index, String id) throws SignatureAttributeException
      Construtor
      Parameters:
      signatureVerifier - Usado para criar e verificar o atributo
      index - Índice usado para selecionar o atributo
      id - Identificador do atributo sendo decodificado. Os atributos IdAaEtsRevocationValues e RevocationInfoArchival podem ser decodificados da mesma forma
      Throws:
      SignatureAttributeException
    • IdAaEtsRevocationValues

      public IdAaEtsRevocationValues​(Collection<CRL> crlValues, Collection<org.bouncycastle.asn1.ocsp.BasicOCSPResponse> ocspValues, org.bouncycastle.asn1.esf.OtherRevVals otherRevValues) throws RevocationValuesException
      Este atributo representa as fontes de revogação utilizadas para validação/verificação de uma determinada assinatura.
      Parameters:
      crlValues - LCRs utilizadas no momento da validação/verificação de uma assinatura, se não existir, passar null como argumento
      ocspValues - Respostas OCSP utilizadas no momento da validação/verificação de uma assinatura, se não existir, passar null como argumento
      otherRevValues - Outras fontes de revogação, diferentes de LCRS e respostas OCSP, caso não exista passar NULL como argumento
      Throws:
      RevocationValuesException
    • IdAaEtsRevocationValues

      public IdAaEtsRevocationValues​(org.bouncycastle.asn1.cms.Attribute genericEncoding) throws SignatureAttributeException
      Constrói um objeto IdAaEtsRevocationValues
      Parameters:
      genericEncoding - O atributo codificado
      Throws:
      SignatureAttributeException
  • Method Details

    • decode

      protected void decode​(org.bouncycastle.asn1.cms.Attribute genericEncoding) throws SignatureAttributeException
      Constrói um objeto IdAaEtsRevocationValues
      Parameters:
      genericEncoding - O atributo codificado
      Throws:
      SignatureAttributeException
    • generateCrlList

      protected org.bouncycastle.asn1.x509.CertificateList[] generateCrlList​(org.bouncycastle.asn1.ASN1Sequence certificateListSequence)
      Constrói o array de CertificateList conforme o ASN1 do atributo
      Parameters:
      certificateListSequence - ASN1Sequence de listas de certificados
      Returns:
      O array de CertificateList criado
    • generateBasicOCSPResponse

      protected org.bouncycastle.asn1.ocsp.BasicOCSPResponse[] generateBasicOCSPResponse​(org.bouncycastle.asn1.ASN1Sequence basicOcspSequence)
      Constrói o array de BasicOCSPResponse conforme o ASN1 do atributo
      Parameters:
      basicOcspSequence - ASN1Sequence de repostas OCSP
      Returns:
      O array de BasicOCSPResponse criado
    • decodeRevocationValuesSequence

      protected org.bouncycastle.asn1.esf.RevocationValues decodeRevocationValuesSequence​(org.bouncycastle.asn1.ASN1Sequence revocationValuesSequence)
      Constrói um objeto RevocationValues a partir do elemento ASN.1 na assinatura
      Parameters:
      revocationValuesSequence - O conteúdo ASN.1 do atributo
      Returns:
      O objeto RevocationValues criado
    • decodeCrls

      protected void decodeCrls​(org.bouncycastle.asn1.x509.CertificateList[] certificateList) throws CertificateException, IOException, CRLException
      Adiciona os elementos do array dado à lista de CRLs
      Parameters:
      certificateList - Array composto de CRLs
      Throws:
      CertificateException - Exceção em caso de erro na codificação do certificado
      IOException - Exceção em caso de erro na codificação do certificado
      CRLException - Exceção em caso de erro na codificação do certificado
    • decodeOcspResponses

      protected void decodeOcspResponses​(org.bouncycastle.asn1.ocsp.BasicOCSPResponse[] basicOcspResponses)
      Adiciona os elementos do array dado à lista de respostas OCSP
      Parameters:
      basicOcspResponses - Array composto de respostas OCSP
    • getIdentifier

      public String getIdentifier()
      Retorna o identificador do atributo
      Specified by:
      getIdentifier in interface SignatureAttribute<org.bouncycastle.asn1.cms.Attribute>
      Returns:
      O identificador do atributo
    • validate

      public void validate() throws SignatureAttributeException
      Valida o atributo de acordo com suas regras específicas
      Specified by:
      validate in interface SignatureAttribute<org.bouncycastle.asn1.cms.Attribute>
      Throws:
      SignatureAttributeException
    • getEncoded

      public org.bouncycastle.asn1.cms.Attribute getEncoded() throws SignatureAttributeException
      Retorna o atributo codificado
      Specified by:
      getEncoded in interface SignatureAttribute<org.bouncycastle.asn1.cms.Attribute>
      Returns:
      O atributo em formato ASN.1
      Throws:
      SignatureAttributeException
    • buildBasicOCSPResp

      protected org.bouncycastle.asn1.ocsp.BasicOCSPResponse[] buildBasicOCSPResp()
      Constrói o atributo BasicOCSPResponse
      Returns:
      O atributo BasicOCSPResponse gerado
    • buildCertificateList

      protected org.bouncycastle.asn1.x509.CertificateList[] buildCertificateList() throws SignatureAttributeException
      Constrói o atributo CertificateList
      Returns:
      O atributo CertificateList gerado
      Throws:
      SignatureAttributeException
    • isSigned

      public boolean isSigned()
      Informa se o atributo é assinado
      Specified by:
      isSigned in interface SignatureAttribute<org.bouncycastle.asn1.cms.Attribute>
      Returns:
      Indica se o atributo é assinado
    • getCrlValues

      public List<CRL> getCrlValues()
      Retorna a lista de CRLs
      Returns:
      A lista de CRLs
    • getOcspValues

      public List<org.bouncycastle.asn1.ocsp.BasicOCSPResponse> getOcspValues()
      Retorna a lista de respsotas OCSP
      Returns:
      A lista de respsotas OCSP
    • getOtherRevValues

      public org.bouncycastle.asn1.esf.OtherRevVals getOtherRevValues()
      Retorna as outras fontes de revogação
      Returns:
      As outras fontes de revogação
    • isUnique

      public boolean isUnique()
      Verifica se o atributo deve ter apenas uma instância na assinatura
      Specified by:
      isUnique in interface SignatureAttribute<org.bouncycastle.asn1.cms.Attribute>
      Returns:
      Indica se o atributo deve ter apenas uma instância na assinatura