Seguridad Informática
6. Cifrado (Criptografía)
6.5. TLS y SSL
TLS (Transport Layer Security - Seguridad de la capa de transporte) y SSL (Secure Sockets Layer - Capa de Sockets Seguros) se mencionan a menudo cuando se habla de la seguridad de Internet y del sitio web.
Para hacer las cosas aún más confusas para los legos, estos términos a menudo se usan indistintamente y no son lo mismo.
Pero, ¿Cómo funcionan realmente TLS y SSL? ¿Hay alguna diferencia que debamos tener en cuenta?. Vamos a tratar de responder esas preguntas.
SSL:
El procedimiento que se lleva acabo para establecer una comunicación segura con SSL es el siguiente:
1) El cliente (browser) envía un mensaje de saludo al Server “ClientHello”.
2) El server responde con un mensaje “ServerHello”.
3) El server envía su certificado.
4) El server solicita el certificado del cliente.
5) El cliente envía su certificado: si es válido continúa la comunicación si no, se detiene o sigue la comunicación sin el certificado del cliente.
6) El cliente envía un mensaje “ClientKeyExchange” solicitando un intercambio de claves simétricas si es el caso.
7) El cliente envía un mensaje “CertificateVerify” si se ha verificado el certificado del server, en caso de que el cliente este en estado de autenticado.
8) Ambos (cliente y server) envían un mensaje “ChangeCipherSpec” que significa el comienzo de la comunicación segura.
9) Al término de la comunicación ambos envían el mensaje “finished” con lo que termina la comunicación segura, este mensaje consiste en un intercambio del HASH de toda la conversación, de manera que ambos están seguros que los mensajes fueron recibidos intactos.
La versión más reciente de SSL es la v3, existen otro protocolo parecido a SSL solo que es desarrollado por IETF que se denomina TLS y difiere en que usa un conjunto un poco mas amplio de algoritmos criptográficos. Por otra parte existe también SSL plus, un protocolo que extiende las capacidades de SSL y tiene por mayor característica que es interoperable con RSA, DSA/DH y CE (Criptografía Elíptica).
TLS:
SSL | TSL | |
---|---|---|
Cifrado | Ofrece soporte para el paquete de cifrado Fortezza. | Ofrece soporte para cifrado RC4, Triple DES, AES, IDEA. |
Mensajes de Alerta | Mensaje de alerta "Sin certificado". | Diferentes mensajes de alerta según la situación |
Protocolo de Registro | Utiliza MAC (Código de autenticación de mensajes). | Utiliza HMAC (código de autenticación de mensajes basado en hash). |
Proceso de Handshake | El cálculo de hash incluye el secreto maestro y el pad. | Los hashes se calculan sobre el mensaje de protocolo de enlace. |
Mensaje de Autenticación | Método ad-hoc para adjuntar detalles clave y datos de la aplicación. |
Adjuntar detalles clave y datos de la aplicación a través de HMAC. |
¿ Que es la Fortezza Cripto Card ?
Actualmente, la NSA está trabajando con empresas (como "VLSI") para desarrollar productos comerciales que implementen algoritmos de Fortezza. VLSI está diseñando un chip "Regente" que agrega algoritmos DES y RSA. La NSA también apoya el desarrollo comercial de chips de tarjetas inteligentes con capacidad de algoritmo Fortezza.
IPsec -Internet Protocol SECcurity.
Es un conjunto de protocolos cuya función es asegurar las comunicaciones sobre el Protocolo de Internet (IP) autenticando y/o cifrando cada paquete IP en un flujo de datos. IPsec también incluye protocolos para el establecimiento de claves de cifrado.
IPSEC combina encriptaciones asimétricas y simétricas para brindar seguridad y mantener la velocidad.
Utiliza IKE protocol (Internet Key Exchange -Intercambio de claves de Internet) para lograr el cifrado.
La mayoría de los otros protocolos de seguridad funcionan en la capa de aplicación de la comunicación de red. Una ventaja importante de IPsec es que, debido a que opera a nivel de red en lugar de a nivel de aplicación, puede encriptar un paquete completo de IP.
Lo hace con dos mecanismos:
Encabezado de autenticación (AH): Coloca una firma digital en cada paquete, protegiendo su red y sus datos de la interferencia de terceros => Integridad. Un AH significa que el contenido de un paquete de datos no puede modificarse sin detección, y también permite la verificación de identidad entre los dos extremos de una conexión IPSec.
Observación: Si en el encabezado IP se implementara un cifrado para dar privacidad, los routers podrían saber origen/destino :-).
Carga de Seguridad Encapsulada (ESP): Mientras que el AH evita la manipulación de un paquete, el ESP garantiza que la información dentro del paquete esté encriptada y no pueda leerse =>Privacidad. Se utilizan un encabezado ESP, un tráiler y un bloque de autenticación para cifrar la carga útil completa de un paquete.
Para Windows hay varios artículos que indican como implementar o bien habilitar esta característica.Ventajas
Como IPSec opera en la capa de red, los cambios solo deben realizarse en el sistema operativo en lugar de las aplicaciones individuales.
IPSec es completamente invisible en su funcionamiento, por lo que es la opción ideal para las VPN.
El uso de AH y ESP garantiza los niveles más altos posibles de seguridad y privacidad.
Desventajas
IPSec es más complicado que los protocolos de seguridad alternativos y más difícil de configurar.
Se requieren claves públicas seguras para IPSec. Si su clave se ve comprometida o tiene una gestión deficiente de la clave, puede experimentar problemas.
Para la transmisión de paquetes de pequeño tamaño, IPSec puede ser una forma ineficiente de encriptar datos.