Página 1 de 2
Salida UTF-8 en OpenSSL
Publicado: Lun Oct 25, 2010 5:09 pm
por Alex Noria
Hola:
Es posible indicarle a OpenSSL que la salida que va a producir sea en codificación UTF-8 ?
Gracias por la ayuda.
Re: Salida UTF-8 en OpenSSL
Publicado: Lun Oct 25, 2010 6:18 pm
por mauricio
Hola...
No que yo sepa, pero... ¿tienes algún problema con la salida?...
Saludos
Re: Salida UTF-8 en OpenSSL
Publicado: Lun Oct 25, 2010 6:36 pm
por Alex Noria
Gracias por responder Mauricio:
Después de muchos intentos fallidos me di cuenta que en Windows de forma predeterminada los archivos generados son bajo codificación 1252 Europeo Occidental y esa era la razón por la cuál fallaba la validación del sello en el validador del SAT. Cambié manualmente la codificación a UTF-8 unicode, (Esto mediante Visual Studio de momento) de los archivos certificado.pem y la cadenaoriginal.txt. Es por eso que estoy investigando cómo hacerlo de forma automatizada.
Gracias ... saludos
Re: Salida UTF-8 en OpenSSL
Publicado: Lun Oct 25, 2010 6:52 pm
por Dado
Se que para ENTRADAS de cadenas si puedes especificar utf8, por ejemplo :
openssl enc -base64 "UTF8:esto es una cadena"
pero seria cosa de ver para salida, puedes especificar a que salida te refieres?
Re: Salida UTF-8 en OpenSSL
Publicado: Lun Oct 25, 2010 6:56 pm
por Alex Noria
Me refiero por ejemplo para extraer el pem:
openssl pkcs8 -inform DER -in certificado.key -passin pass:a0123456789 -out certificado.pem
Después de estar cómo loco intentando validar, me di cuenta que en Windows el certificado.pem está bajo codificación 1252 Europeo occidental, y cuando generaba el sello lógicamente me generaba uno incorrecto. Lo cambié manualmente con un editor (Visual Studio) a utf-8 y voila funcionó.
Gracias.
Re: Salida UTF-8 en OpenSSL
Publicado: Mar Oct 26, 2010 10:00 am
por Alex Noria
Programáticamente convertí la cadena original a UTF-8, y realizé una prueba con el certificado.pem y sello.txt codificados en 1252-Europeo occidental y si validó bien el sello. De todas formas para dormir tranquilo estoy investigando cómo convertir la salida de OpenSSL a UTF-8 directamente estos dos archivos (certificado.pem y sello.txt). Seguimos pendientes ...
Gracias.
Re: Salida UTF-8 en OpenSSL
Publicado: Mar Oct 26, 2010 10:35 am
por Dado
Alex Noria escribió:Programáticamente convertí la cadena original a UTF-8, y realizé una prueba con el certificado.pem y sello.txt codificados en 1252-Europeo occidental y si validó bien el sello. De todas formas para dormir tranquilo estoy investigando cómo convertir la salida de OpenSSL a UTF-8 directamente estos dos archivos (certificado.pem y sello.txt). Seguimos pendientes ...
Gracias.
Pero espera, el certificado.pem y el sello.txt estan codificado en BASE64 y solo puede incluir los siguientes caracteres :
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/ (son 64 caracteres)
NUNCA van a incluir letras acentuadas o eñes o ningun caracter raro, solo los que se muestran
Estos dos archivos (certificado.pem y sello.txt) NO DEPENDEN de UTF8 o el 1252-Europeo, la cadena original ESA SI depende de la codificacion UTF8 o 1252-Europeo.
Ampliando mas la informacion :
El certificado y el sello son DATOS BINARIOS pero para poderla representar en el XML se convierten a BASE64 usando solo el alfabeto y los numeros 0..9
PEM significa Privacy Enhanced Mail que fue desarrollado principalmente para encriptar DATOS BINARIOS con letras y poderlas enviar por correo
Re: Salida UTF-8 en OpenSSL
Publicado: Mar Oct 26, 2010 10:40 am
por Alex Noria
Gracias dado por tomarte el tiempo:
¿ En sintesis ya no debo hacer nada más ?
Espero tu respuesta. Gracias.
Re: Salida UTF-8 en OpenSSL
Publicado: Mar Oct 26, 2010 10:55 am
por Dado
Alex Noria escribió:Gracias dado por tomarte el tiempo:
¿ En sintesis ya no debo hacer nada más ?
Espero tu respuesta. Gracias.
Si ya valido tu sello ya puedes dormir tranquilo, ya tienes la parte mas importante "en el bolsillo" el famoso sello digital.
Re: Salida UTF-8 en OpenSSL
Publicado: Mar Oct 26, 2010 10:59 am
por Alex Noria
jum Ese famoso sello erggg
Muchas gracias dado.