lunes, 31 de enero de 2011

Analizando SSL ( I de III): Historia

SSL o Secure Sockets Layer es un protocolo que proporciona una comunicación segura al incorporar cifrado mediante el empleo de criptografía.
Historia


SSL 1.0, 2.0, 3.0 


SSL fue desarrollado originalmente por Netscape. La versión 1.0 no fue publicada, la versión 2.0 se publicó en 1995 pero contenía  puntos débiles en la seguridad que llevó a ser substituida por la versión 3.0 en 1996.


Primeras claves débiles y avance hacia TLS


Algunas primeras implementaciones de SSL podían usar claves simétricas con un máximo de sólo 40-bit debido a las restricciones del gobierno de los Estados Unidos sobre la exportación de tecnología criptográfica. Dicho gobierno impuso una clave de 40-bit lo suficientemente pequeña para ser “rota” por un ataque de fuerza bruta por las agencias de seguridad nacional que desearan leer el tráfico cifrado, a la vez que representaban un obstáculo para atacantes con menos medios. Una limitación similar se aplicó a Lotus Notes en versiones para la exportación. Después de varios años de controversia pública, una serie de pleitos, y el reconocimiento del gobierno de Estados Unidos de cambios en la disponibilidad en el mercado de 'mejores' productos criptográficos producidos fuera del país, las autoridades relajaron algunos aspectos de las restricciones de exportación. La limitación de claves de 40-bit en su mayoría ha desaparecido. Las implementaciones modernas usan claves de 128-bit (o más) para claves de cifrado simétricas


TLS 1.0 (SSL 3.1)


En 1999 se introdujeron nuevas mejoras y pasó a denominarse TLS (Transport Layer Security). Se describió en RFC 2246 . y es un estándar IETF y es generalmente usado en protocolos HTTPS, SSH, y otros tipos de comunicaciones cifradas. Ya se puede considerar un protocolo robusto. Actualmente los navegadores ya implementan el soporte para TLS y la utilizan como primera opción. SSL 2.0 está descartado al considerarse vulnerable y sólo se utiliza SSL 3.0 en caso de que el servidor web no sea capaz de completar al handshake TLS del navegador.


TLS 1.1 (SSL 3.2) 


Aparece en abril de 2006 RFC 4346 
TLS 1.1 clarifica algunas ambigüedades y añade cierto número de recomendaciones. TLS 1.1 es muy similar a TLS 1.0. La principal razón de esta nueva versión es un formato modificado para cifrado RSA anterior al uso de 'master secret', que es parte del mensaje de intercambio de claves del cliente (si se usa RSA), para usar PKCS#1 versión 2.1, en detrimento de PKCS#1 versión 1.5 en TLS 1.0. La razón de dicho cambio es para protegerse contra ataques descubiertos por Daniel Bleichenbacher que podían lanzarse contra servidores TLS 1.0, usando PKCS#1 versión 1.5, que podrían fallar de diferentes formas dependiendo de si el formato descifrado fuera correcto o no. Éste también incluye recomendaciones para evitar ataques remotos programados. TLS 1.1 es la última versión aprobada del protocolo TLS


TLS 1.2 (SSL 3.3) 


Versión más reciente de TLS que añade más suites de cifrado a las que ya incorpora TLS 1.1. A fecha de enero de 2011 sólo IE8 bajo Windows 7 y Opera soportan TLS 1.2











No hay comentarios:

Publicar un comentario