Página 2 de 2

Re: Necesito ayuda con la generacion de DigestValue y SignatureValue

Publicado: Mar Ago 23, 2022 4:33 pm
por Dado
Paso 3 y 4. Sacar el digest sha1, firmarlo, convertir la firma de binario a base64

Se puede hacer paso por paso, pero aqui te doy un super tip de como hacerlo con una sola linea, el nodo <body> debe estar grabado en un archivo de texto llamado canonizado.txt

Código: Seleccionar todo

openssl dgst -sha1 -sign certificado.pem canonizado.txt | openssl enc -base64 -A > sello.txt
Se genera el archivo sello.txt con el sello digital, este es el valor de <ds:SignatureValue>

Código: Seleccionar todo

Xc0uHJ/S6jPDkBWLd76P6ZWUkkAmviRHs9tRcdwY8rhsCUfnURQml6UHkSnDEv/t5nUQEjOq91lRuxlEhLPfaYtH5QK5qpkqn7LrhRBI0yXoZipDezJ470j9IxcIlasfaKSRTPcoDHlvP1p+KalAtSUmGEoGaC+EVuPt7f5eSJZ0n4co3F3FdrzD9ZMh1zKs5SPmu5JeCehCDD3uXQAUeDqH//5HuuOyVIzkB9SD/opikBWCI3YjpFvQZowJyx42Gfr1YUqSMuuF6gkzzaUAEqz+5BZhoyqSbeLV3W3+bnV3hJqQTB8G7d56U9CkEz/Hm8QXyD3DupC+0s2Qg1jrIQ==
________________________
pd. Se que debe ser sha1 porque asi esta definido en la firma :
Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1

Re: Necesito ayuda con la generacion de DigestValue y SignatureValue

Publicado: Mar Ago 23, 2022 4:38 pm
por Dado
Hasta ahi lo que tengo, revisando nuevamente el ejemplo veo que no piden el numero de serie ni ningun otro dato del X509

Haz pruebas :)

Re: Necesito ayuda con la generacion de DigestValue y SignatureValue

Publicado: Mar Ago 23, 2022 4:46 pm
por jorgesolano92
Excelente mi amigo, voy a hacer pruebas con esto que me comentas, una cosa, en el paso donde te saltas el digest, como lo puedo obtener sin saltarme ese paso? sería colocando solo

Código: Seleccionar todo

openssl dgst -sha1 -sign certificado.pem canonizado.txt > sello.txt
Sin la otra parte?

Te agradezco que me hayas respondido y explicado paso por paso!

Re: Necesito ayuda con la generacion de DigestValue y SignatureValue

Publicado: Mar Ago 23, 2022 4:51 pm
por Dado
Oh! es cierto, si necesitas el SHA1 para ponerlo en el nodo <ds:DigestValue>

Código: Seleccionar todo

openssl dgst -sha1 canonizado.txt >sha1.txt
Te da como resultado un archivo sha1.txt asi :

Código: Seleccionar todo

SHA1(canonizado.txt)= 9495b7a510267f1cad60cb0082f3b3d5bbf2eb6a
Solo quitale lo de SHA1(canonizado.txt)

Re: Necesito ayuda con la generacion de DigestValue y SignatureValue

Publicado: Mar Ago 23, 2022 4:57 pm
por jorgesolano92
Vale vale, voy a hacer todas las pruebas que pueda jejeje con esto me has despejado bastante la mente, muchas gracias nuevamente por la ayuda!