Class SignaturePolicyIdentifier
java.lang.Object
br.ufsc.labsec.signature.conformanceVerifier.xades.attributes.signed.SignaturePolicyIdentifier
- All Implemented Interfaces:
SignatureAttribute<Element>
public class SignaturePolicyIdentifier extends Object implements SignatureAttribute<Element>
O atributo SignaturePolicyIdentifier define um conjunto de regras para a
criação e validação de uma assinatura.
Esquema do atributo SignaturePolicyIdentifier retirado do ETSI TS 101 903:
<xsd:element name="SignaturePolicyIdentifier" type="SignaturePolicyIdentifierType"/>
<xsd:complexType name="SignaturePolicyIdentifierType">
<xsd:choice>
<xsd:element name="SignaturePolicyId" type="SignaturePolicyIdType"/>
<xsd:element name="SignaturePolicyImplied"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="SignaturePolicyIdType">
<xsd:sequence>
<xsd:element name="SigPolicyId" type="ObjectIdentifierType"/>
<xsd:element ref="ds:Transforms" minOccurs="0"/>
<xsd:element name="SigPolicyHash" type="DigestAlgAndValueType"/>
<xsd:element name="SigPolicyQualifiers"
type="SigPolicyQualifiersListType" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="SigPolicyQualifiersListType">
<xsd:sequence>
<xsd:element name="SigPolicyQualifier" type="AnyType"
maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
-
Field Summary
Fields Modifier and Type Field Description protected String
digestMethodId
O método de cálculo de hash da políticaprotected boolean
hasImpliedPolicy
static String
IDENTIFIER
protected byte[]
sigPolicyHash
O valor de hash da PAprotected String
sigPolicyId
O identificador da políticaprotected String
sigPolicyUrl
A URL da políticaprotected SignatureVerifier
verifier
Objeto de verificador -
Constructor Summary
Constructors Constructor Description SignaturePolicyIdentifier(AbstractVerifier verifier, Integer index)
Deve-se utilizar este construtor no momento de validação do atributo.SignaturePolicyIdentifier(String sigPolicyId, String digestMethodId, byte[] policyHash, String policyUrl)
Cria o atributo SignaturePolicyIdentifier a partir dos parâmetros necessários para a criação do atributo.SignaturePolicyIdentifier(String sigPolicyId, org.bouncycastle.asn1.ASN1ObjectIdentifier digestIdentifier, byte[] policyHash, String policyUrl)
SignaturePolicyIdentifier(String sigPolicyId, org.bouncycastle.asn1.x509.AlgorithmIdentifier digestIdentifier, byte[] policyHash, String policyUrl)
SignaturePolicyIdentifier(Element attributeEncoded, SignaturePolicyInterface signaturePolicyInterface)
Constrói um objetoSignaturePolicyIdentifier
-
Method Summary
Modifier and Type Method Description String
getDigestMethodId()
Obtém o OID do algoritmo de resumo criptográfico usado para gerar o resumo criptográfico da assinatura.Element
getEncoded()
Retorna o atributo codificadoString
getIdentifier()
Retorna o identificador do atributoString
getLpaUrl()
Retorna a URL da LPAString
getSignaturePolicyHashValue()
Retorna o valor de hash da políticaString
getSignaturePolicyId()
Retorna o identificador da políticabyte[]
getSigPolicyHash()
Obtém o valor do resumo criptográfico obtido da política assinatura.String
getSigPolicyId()
Obtém o OID da política de assinatura.String
getSigPolicyUrl()
Obtém a URL que indica onde a politica de assinatura pode ser encontrada.boolean
hasImpliedPolicy()
boolean
isSigned()
Informa se o atributo é assinado.boolean
isUnique()
Verifica se o atributo deve ter apenas uma instância na assinaturavoid
validate()
Valida o atributo de acordo com suas regras específicas
-
Field Details
-
IDENTIFIER
- See Also:
- Constant Field Values
-
sigPolicyHash
protected byte[] sigPolicyHashO valor de hash da PA -
sigPolicyId
O identificador da política -
sigPolicyUrl
A URL da política -
digestMethodId
O método de cálculo de hash da política -
verifier
Objeto de verificador -
hasImpliedPolicy
protected boolean hasImpliedPolicy
-
-
Constructor Details
-
SignaturePolicyIdentifier
public SignaturePolicyIdentifier(AbstractVerifier verifier, Integer index) throws SignatureAttributeExceptionDeve-se utilizar este construtor no momento de validação do atributo. O parâmetroindex
deve ser usaddo no caso em que há mais de um atributo do mesmo tipo. Caso contrário, ele deve ser zero.- Parameters:
verifier
- Usado para criar e verificar o atributo.index
- Índice Usado para selecionar o atributo.- Throws:
SignatureAttributeException
- Exceção no documento
-
SignaturePolicyIdentifier
-
SignaturePolicyIdentifier
-
SignaturePolicyIdentifier
public SignaturePolicyIdentifier(String sigPolicyId, String digestMethodId, byte[] policyHash, String policyUrl)Cria o atributo SignaturePolicyIdentifier a partir dos parâmetros necessários para a criação do atributo.- Parameters:
sigPolicyId
- Identificador da política de assinaturadigestMethodId
- Identificador do algoritmo de resumo criptográfico usado para gerar o resumo criptográfico da assinaturapolicyHash
- Valor do resumo criptográfico obtido da política assinaturapolicyUrl
- URL que indica onde a política de assinatura pode ser encontrada
-
SignaturePolicyIdentifier
public SignaturePolicyIdentifier(Element attributeEncoded, SignaturePolicyInterface signaturePolicyInterface) throws SignatureAttributeExceptionConstrói um objetoSignaturePolicyIdentifier
- Parameters:
attributeEncoded
- O atributo codificado- Throws:
SignatureAttributeException
- Exceção no documento
-
-
Method Details
-
getIdentifier
Retorna o identificador do atributo- Specified by:
getIdentifier
in interfaceSignatureAttribute<Element>
- Returns:
- O identificador do atributo
-
validate
Valida o atributo de acordo com suas regras específicas- Specified by:
validate
in interfaceSignatureAttribute<Element>
- Throws:
SignatureAttributeException
-
getEncoded
Retorna o atributo codificado- Specified by:
getEncoded
in interfaceSignatureAttribute<Element>
- Returns:
- O atributo em formato de nodo XML
- Throws:
SignatureAttributeException
-
getSignaturePolicyId
Retorna o identificador da política- Returns:
- O identificador da política
-
getSigPolicyHash
public byte[] getSigPolicyHash()Obtém o valor do resumo criptográfico obtido da política assinatura.- Returns:
- O valor de hash da política
-
getSigPolicyId
Obtém o OID da política de assinatura.- Returns:
- O identificador da política
-
getSigPolicyUrl
Obtém a URL que indica onde a politica de assinatura pode ser encontrada.- Returns:
- A URL da política
-
getDigestMethodId
Obtém o OID do algoritmo de resumo criptográfico usado para gerar o resumo criptográfico da assinatura.- Returns:
- O algoritmo de cálculo de hash
-
isSigned
public boolean isSigned()Informa se o atributo é assinado.- Specified by:
isSigned
in interfaceSignatureAttribute<Element>
- Returns:
- Indica se o atributo é assinado
-
getLpaUrl
Retorna a URL da LPA- Returns:
String
-
getSignaturePolicyHashValue
Retorna o valor de hash da política- Returns:
- O valor de hash da política
-
hasImpliedPolicy
public boolean hasImpliedPolicy() -
isUnique
public boolean isUnique()Verifica se o atributo deve ter apenas uma instância na assinatura- Specified by:
isUnique
in interfaceSignatureAttribute<Element>
- Returns:
- Indica se o atributo deve ter apenas uma instância na assinatura
-