13
Ejemplo Certificado Digital
2. SSL
15
Definiciones
SSL: Secure Sockets Layer, capa de sockets seguros.
Establece un canal seguro en el nivel de transporte entre dos partes.
Ofrece privacidad en las comunicaciones al utilizar cifrado con llave simétrica y usa códigos de autentificación de mensajes.
16
Historia
Originalmente desarrollado por Netscape Communications Corporation, a mediados de los 90.
La versión 2 del protocolo fue la primera en ser ampliamente utilizada.
La versión 3, actualmente en uso otorga un mayor número de características, mayor eficiencia y flexibilidad.
17
Tipos de SSL
Existen 2 tipos de uso del protocolo SSL:
SSL del Servidor:Autentifica que una dirección web pertenece a quien dice ser.
SSL del Cliente:Autentifica que la persona que está al otro lado de la conexión es quien dice ser.
18
Funcionamiento SSL
SSL del Servidor es el más usado, por eso será explicado:
El servidor web debe entregar la llave pública de su certificado digital.
Antes de aceptar esta llave pública, se debe revisar que el certificado esté firmado por una autoridad de confianza.
19
Funcionamiento
Calculo del Hash del certificado (llave pública del CA).
Verificación de que el certificado se encuentra válido.
Comparar URL con la que viene en el certificado.
20
Funcionamiento
Se extrae la llave pública del certificado.
Se genera la llave simétrica (aleatoria).
Se encripta la llave simétrica con la llave pública del servidor (certificado) y se envía.
Servidor recibe la llave y la decodifica con su llave privada.
Comunicación puede comenzar con cifrado simétrico.
21
Resumen
El navegador generó una clave simétrica aleatoria y luego la cifró utilizando la llave pública del servidor, el hecho que el servidor web pueda descifrar la clave simétrica y por ende participar en la conversación, le dice al navegador que él es el servidor real, pues es el único nodo en todo el universo que posee la llave privada capaz de descifrar los datos encriptados con la llave pública, necesaria para desempaquetar la clave simétrica
3. OpenSSL
23
Definición
Esfuerzo conjunto para desarrollar una implementación robusta, de nivel comercial, con todas las características y de tipo Open Source de los protocolos Secure Sockets Layer (SSL v2/v3), y Transport Layer Security (TLS v1), además de bibliotecas con propósitos criptográficos.
24
Definición
Principal diferencia con un paquete SSL se puede ver claramente en el slogan del proyecto:
¿Porque comprar un paquete SSL como una caja negra, cuando puede obtener una abierta y gratis?
25
Protocolo TSL
Forma superior de SSL v3 con funciones criptográficas fortalecidas
Es considerado el estándar a utilizar para comercio electrónico.
Protocolo de Seguridad del Nivel de Transporte (TSL), y protocolo Seguridad a Nivel de Transporte inalámbrico (Wireless Transport Layer Security, WTLS) son descendientes directos del SSL.
26
Instalación
Actualmente viene como un paquete en la mayoría de las distribuciones Linux.
Directorio por defecto de instalación:/var/ssl
Archivo de configuración:/usr/lib/ssl/openssl.cnf
Utilidades y otras librerías:/usr/lib/ssl
27
Uso de OpenSSL
a.) Creación de Certificados Digitales.
b.) Instalación de Certificados Digitales.
c.) Manejo de Certificados Digitales:- Generar y Firmar Certificados
– Revocar Certificados
– Renovar un Certificado
– Visualizar un Certificado
Uso OpenSSL
29
Creación
Primer paso: Crear un Certificado Raíz:openssl req -new -x509 -keyout private/cakey.pem -out cacert.pem -days 3650.
Genera 2 partes:Llave (RSA PRIVATE KEY) private/cakey.pemCertificado (CERTIFICATE) cecert.pem
Proteger el Certificado de posibles ataques o robos y utilizarlo solo para firmar otros certificados.
30
Creación
Existen 2 archivos que llevan un registro sobre los certificados creados:
index.txt el cual ahora debe encontrarse vacío
serial debe contener el valor 01
31
Instalación
Se debe instalar el certificado creado como certificado raíz, en el cual se confía.
Almacenar solo la parte del certificado:openssl x509 -in cacert.pem -out cacert.crt
Poner cacert.crt en el servidor web, para que pueda ser descargado e instalado.
Disponer de más de un método de obtener el certificado.
Manejo de Certificados
33
Generar y Firmar
openssl req new keyout newreq.pem out newreq.pem days 365
Crea una clave privada y una solicitud de certificado ( newreq.pem ).
Usar un nombre común (Common Name):Dirección web para autentificar página.Nombre usuario para autentificar correos de ese usuario.
34
Generar y Firmar
Para firmar la solicitud anterior:openssl ca -policy policy_anything -out newcert.pem -infiles newreq.pem
Transforma cacert.pem en el certificado newcert.pem.
Se crea un archivo en el directorio newcerts/
Los archivos index.txt y serial serán actualizados.
35
Revocar
Actualizar base de datos de Certificados:openssl revoke newcert.pem
Actualizar lista de Certificados Revocados:openssl ca gencrl out crl/sopac-ca.crl
Esta lista de Certificados Revocados (CRL) también debe estar disponible en el servidor web.
36
Renovar
Un usuario envía su certificado antiguo o crea uno nuevo usando su llave privada.
También es posible obtener el nombre en index.txt de acá se obtiene el serial xx y se obtiene el archivo certxx.pem.
Realizar el proceso manualmente para asegurarse de las fechas.
37
Renovación
openssl ca policy policy_anyting out newcert.pem infiles newreq.pem -startdate [now] eddate [end_date]
Reemplazar los valores [now] y [end_date] con los valores correctos.
38
Visualizar
Se puede tener un certificado en forma encriptada, para leerlo:Openssl x509 in newcert.pem noout text
39
Comentarios Finales
Index.txt: este archivo contiene información de los certificados manejados por OpenSSL, todas las entradas del archivo están marcadas con R de revocado, V de válido y E de expirado.
40
Comentarios Finales
Posee compatibilidad con distintos aplicaciones de uso masivo como por ejemplo: Apache, protocolos de correo como IMAPS o POP, Microsoft Key Manager y para correo electrónico seguro, donde puede funcionar con certificados mime, ser utilizado con el Outlook, Netscape Messenger y varios otros clientes de correo.
Página anterior | Volver al principio del trabajo | Página siguiente |