amantecayolt, se traduce del nahuatl como ciencias de la tecnología ó tecnología http://www.espanolsinfronteras.com/Diccionarios/EspdeMx-DiccEspanolNahuatl-T.htm

viernes, 13 de junio de 2008

Hacer certificados x509 con openssl para windows

--tomado de http://www.codeproject.com/KB/IP/sslclasses.aspx y http://dns.bdat.net/documentos/certificados_digitales/x359.html

1.- Generar llave privada "openssl genrsa -des3 -out clientkey.pem 2048". El archivo se genera en base 64.

2.- Generar peticion "openssl req -new -key clientkey.pem -out clientrequest.csr".

3.- Generar certificado: Se puede hacer de 2 formas.

3a.-En el sitio de tu servidor /certsvr, en "Solicitar certificado" -> "Solicitud avanzada de certificado" -> "Enviar una solicitud de certificados usando un archivo cifrado de base64 CMC o PKCS #10 o una solicitud de renovación usando un archivo cifrado de base64 PKCS #7." dile donde se encuentra el archivo clientrequest.csr y descarga el archivo generado con el nombre de "clientcert_x509_codificado.cer". Este archivo esta en formato x509 codificado.

3b.- En la linea de comandos logeado en el servidor "certreq -submit -attrib "Ce
rtificateTemplate:ClientAuth" -crl -f clientrequest.csr clientcert_x509_base64.cer" . Para mas atributos http://www.microsoft.com/technet/prodtechnol/windowsserver2003/technologies/security/advcert.mspx#EK4AG en la sección "Certreq.exe INF File Structure"

* Ahora los vamos a convertir en x509 base 64 "openssl x509 -inform DER -in clientcert_x509_codificado.cer -out clientcert_x509_base64.pem"

* Y combinamos el certificado y la llave privada en un archivo. "type clientcert_x509_codificado.pem clientkey.pem >client_cert_key.pem".

* Algunos programas (Como Internet Explorer o Mozilla Firefox) necesitan que el archivo este en formato pkcs12, el cual obtenemos asi "openssl pkcs12 -export -out client_cert_key.p12 -in client_cert_key.pem -name "Mi certificado" "


Ahora si a usarlo en nuestra aplicación

No hay comentarios: