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 StringdigestMethodIdO método de cálculo de hash da políticaprotected booleanhasImpliedPolicystatic StringIDENTIFIERprotected byte[]sigPolicyHashO valor de hash da PAprotected StringsigPolicyIdO identificador da políticaprotected StringsigPolicyUrlA URL da políticaprotected SignatureVerifierverifierObjeto 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 StringgetDigestMethodId()Obtém o OID do algoritmo de resumo criptográfico usado para gerar o resumo criptográfico da assinatura.ElementgetEncoded()Retorna o atributo codificadoStringgetIdentifier()Retorna o identificador do atributoStringgetLpaUrl()Retorna a URL da LPAStringgetSignaturePolicyHashValue()Retorna o valor de hash da políticaStringgetSignaturePolicyId()Retorna o identificador da políticabyte[]getSigPolicyHash()Obtém o valor do resumo criptográfico obtido da política assinatura.StringgetSigPolicyId()Obtém o OID da política de assinatura.StringgetSigPolicyUrl()Obtém a URL que indica onde a politica de assinatura pode ser encontrada.AttributeValueReportgetValue()booleanhasImpliedPolicy()booleanisSigned()Informa se o atributo é assinado.booleanisUnique()Verifica se o atributo deve ter apenas uma instância na assinaturavoidvalidate()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âmetroindexdeve 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:
getIdentifierin interfaceSignatureAttribute<Element>- Returns:
- O identificador do atributo
-
validate
Valida o atributo de acordo com suas regras específicas- Specified by:
validatein interfaceSignatureAttribute<Element>- Throws:
SignatureAttributeException
-
getEncoded
Retorna o atributo codificado- Specified by:
getEncodedin 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:
isSignedin 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:
isUniquein interfaceSignatureAttribute<Element>- Returns:
- Indica se o atributo deve ter apenas uma instância na assinatura
-
getValue
- Specified by:
getValuein interfaceSignatureAttribute<Element>
-