SIGNATURE_POLICY_HASH_DATA
Hash (codificado en base64) para la política de firma utilizando el algoritmo de viafirma para digest (por defecto SHA-1), o lista con hash como primer elemento y algoritmo de resumen en el segundo.
Este parámetro no es obligatorio, si no se indica, la plataforma tratará de acceder a la url del documento informada en SIGNATURE_POLICY_URI y calculará el hash de la política automáticamente.
Si no se informa URI o sabemos que ésta no es accesible desde el servidor de viafirma platform, entonces informamos el parámetro éste parámetro.
Podríamos indicar este dato de varias formas:
Calculando el hash, usando SHA-1, y colocarlo en base 64
Java
Policy policy = new Policy();
//SOLO HASH
policy.addParameter(PolicyParams.SIGNATURE_POLICY_HASH_DATA.getKey(), "M97XDPtxhg1Tv6qBNYcM8mEl0OE=");
.Net
policy policy = PolicyUtil.newPolicy(typeFormatSign.XADES_EPES_ENVELOPED, typeSign.ENVELOPED);
PolicyUtil.AddParameter(policy, PolicyParams.SIGNATURE_POLICY_HASH_DATA,"M97XDPtxhg1Tv6qBNYcM8mEl0OE=.");
Calculando el hash usando un algoritmo de digest distinto a SHA-1 y colocarlo en base 64
El primer elemento sería como el anterior, calculando el hash usando el algoritmo que luego se deberá informar en el segundo elemento. En ese segundo elemento se informaría el algoritmo con el que se ha calculado el hash previo, el valor a utilizar sería algo como DigestMethod.SHA256.name() o el algoritmo que corresponda de este enum DigestMethod.
Los posibles valores vienen definidos en la clase DigestMethod y son los siguientes:
- SHA1
- SHA256
- SHA384
- SHA512
Java
Policy policy = new Policy();
//HASH + ALGORITHM
List<String> hashData = new ArrayList<String>();
hashData.add("RT97dsfttxhg2Tv5qHNYcN45mAlasE0=");
hashData.add(DigestMethod.SHA256.name());
policy.addParameter(PolicyParams.SIGNATURE_POLICY_HASH_DATA.getKey(), hashData);
.Net
policy policy = PolicyUtil.newPolicy(typeFormatSign.XADES_EPES_ENVELOPED, typeSign.ENVELOPED);
//HASH + ALGORITHM
List<String> hashData = new List<String>();
hashData.Add("RT97dsfttxhg2Tv5qHNYcN45mAlasE0=");
hashData.Add("SHA256");
PolicyUtil.AddParameter(policy, PolicyParams.SIGNATURE_POLICY_HASH_DATA, hashData");
results matching ""
No results matching ""