OpenSSL - PowerPoint PPT Presentation

1 / 26
About This Presentation
Title:

OpenSSL

Description:

Es un robusto juego de herramientas que ayudan a su sistema a implementar el ... Posee una completa API cuya documentaci n puede encontrarse ejecutando man 3 ssl. ... – PowerPoint PPT presentation

Number of Views:210
Avg rating:3.0/5.0
Slides: 27
Provided by: lourdeslpe
Category:

less

Transcript and Presenter's Notes

Title: OpenSSL


1
OpenSSL
SEGURIDAD EN REDES TELEMÁTICAS Alhareth
Dawood Curso 2003/2004
2
OpenSSL
  • OpenSSL es un proyecto de software desarrollado
    por OpenSource. Es un robusto juego de
    herramientas que ayudan a su sistema a
    implementar el
  • Secure Sockets Layer (SSL)
  • Transport Layer Security (TLS).
  • una librería de criptografía.

3
OpenSSL
  • OpenSSL es importante para cualquiera que esté
    planeando usar cierto nivel de seguridad en su
    máquina Linux
  • Debido a que se trata de software open-source,
    usted puede descargarlo libremente, a diferencia
    de los paquetes comerciales SSL que requieren la
    licencia/pago del software.

4
OpenSSL
  • El paquete OpenSSL contiene
  • c_rehash es un guión perl que revisa todos los
    ficheros de un directorio y añade enlaces
    simbólicos apuntando a sus valores aleatorios
    (hash values).
  • El programa OpenSSL es una herramienta que usa
    desde el intérprete de comandos las funciones
    criptográficas de la librería crypto de OpenSSL.

5
OpenSSL
  • La librería ssl de OpenSSL
  • implementa los protocolos Secure Sockets Layer
    (Capa de Conectores de Red Segura) (SSL v2/v3)
  • Transport Layer Security (Capa de Transporte
    Segura) (TLS v1).
  • Posee una completa API cuya documentación puede
    encontrarse ejecutando man 3 ssl.

6
OpenSSL
  • La librería crypto de OpenSSL
  • implementa una amplia gama de los algoritmos
    criptográficos usados en varias normas de
    Internet.
  • Los servicios facilitados por esta librería son
    usados por las implementaciones OpenSSL de SSL,
    TLS y S/MIME.
  • también están siendo utilizados para implementar
    SSH, OpenPGP y otros estándares criptográficos.

7
OpenSSL
  • OpenSSL permite crear canales encriptados para
    comunicaciones seguras
  • Esos canales encriptados se pueden usar por otras
    aplicaciones que pueden ser
  • Navegadores Web usando Https
  • OpenSSH para la transferencia segura de ficheros
    y acceso remoto a maquinas.

8
SSL
  • OpenSSL contiene una librería llamada libssl que
    implementa ssl v.2 y ssl v.3
  • SSL Secure Sockets Layer (Capa de Sockets
    Seguros) es un protocolo propietario desarrollado
    por Netscape
  • SSL implementa una capa entre el nivel de
    transporte y el nivel de aplicación
  • SSL puede proteger cualquier protocolo que este
    construido sobre sockets

9
SSL
10
SSL
  • SSL ofrece
  • Cifrado de datos
  • Autentificación de servidores
  • Integridad de mensajes
  • Autentificación opcional de usuario
  • SSL se basa en
  • Criptografía de claves simétricas y asimétricos
  • Códigos de autentificación de mensajes (MACs)
  • Certificados digitales x.509

11
Arquitectura de SSL

12
HandShacke protocol
  • HandShacke protocol es el encagado de la
    negociaicon de los parámetros de una sesión
  • El cliente y el servidor se intercambian
    certificados digitales X.509 para probar su
    identidad
  • Estos certificados se verifican comprobando la
    validez de las fechas Y la firma de una
    autoridad de certificación de confianza.
  • Se encarga de abrir y cerrar las conexiones
  • Se negocian un algoritmo de cifrado de mensajes
    con clave simétrica Y una función hash (para la
    integridad de los mensajes ).

13
Alert Protocol
  • Alert Protocol es un protocolo de alerta que se
    usa para señalar un error o condición de
    precaución a la otra entidad en su comunicación.
  • Algunas circunstancias excepcionales
  • Mensajes no esperados
  • MAC incorrecto
  • Error de descompresión
  • Error de negociación
  • Certificado corruptos o caducados

14
ChangeCipherSpec Protcol
  • El protocolo ChangeCipherSpec se utiliza para
    cambiar entre un algoritmo de cifrado (llamados
    estrategias en la especificación)y otro.
  • Se podría usar por ejemplo en transacciones
    HTTP criticas en cualquier momento cuando uno de
    los dos interlocutores estima que la seguridad
    puede estar comprometida es posible volver a
    negociar la utilización de una nueva
    especificación de seguridad.

15
Record Protcol
  • Record Protcol es la capa inferior del
    protocolo SSL
  • Encapsula todos los mensajes proporcionando un
    formato común para los mensajes de alerta, de
    cambio de especificación de cifrado, de
    handshaking y de datos de usuario.
  • Envía bloques de datos, llamados registros entre
    el cliente y el servidor.

16
Record Protcol
  • Record Protocol cifra los datos ,existen los
    siguientes cifrados
  • Firmas Digitales
  • SSL usa firma RSA en la q se cifra una estructura
    de 36 bytes usando una clave privada
  • o bien firmas DSS que activan un algoritmo de
    firmas digitales sobre una estructura de 20 bytes
  • Cifrado de bloques
  • Se transforman bloques de datos en claro en
    bloques de datos cifrados

17
Record Protcol
  • Cifrado de Flujos
  • Se aplica un XOR (OR exclusivo) al flujo de datos
    con un flujo cifrado obtenido por un generador
    seguro en el ámbito criptográfico
  • Cifrado de Clave Publica
  • Se cifra un bloque de datos mediante una función
    que usa una clave públicamente disponible (no
    privada a la sesión) y el descifrado se realiza
    usando una clave privada complementaria

18
Aplicaciones OpenSSL
  • algunas de las aplicaciones en una maquina linux
    o BSD que usan un canal encriptado OpenSSL
  • Navegador web
  • https (http sobre ssl)
  • Transferencia de ficheros
  • scp(cp sobre ssl)
  • sftp( ftp sobre ssl)
  • Acceso remoto
  • slogin( rlogin o telnet sobre ssl)
  • ssh( rsh sobre ssl)

19
https
  • https es un unció protocolo que simplemente
    corresponde a la combinación de httpssl
  • El cliente web genera una petición de conexión
    http y usa las APIs de OpenSSL para empaquetarla
    para su envió mediante TCP\IP
  • SSL ofrece una fase de negociación un
    handshacking seguro para inciar conexionesTCP\IP

20
https
  • Después de la fase de negociación el único rol de
    OpenSSL consiste en cifrar y descifrar el flujo
    binario
  • eso implica q toda la información tanto la
    petición http como la respuesta es totalmente
    cifrada además del url solicitado por el cliente
  • así como todos los datos devueltos por el
    servidor al cliente

21
https
  • el protocolo lthttpsgt usa el puerto 443
  • el protocolo lthttpgt usa el puerto 80
  • Dado que http y https son protocolos distintos y
    usan puertos distintos
  • En un sistema puede haber servidores seguros
    (usando https)y inseguros (usando http)
  • Con eso se puede suministrar cierta información a
    todos los usuarios sin usar seguridad(http) y
    ofrecer otro tipo de información de forma
    segura(https)

22
OpenSSH
  • OpenSSH es un proyecto desarrollado
    principalmente por el Proyecto OpenBSD, y su
    primera integración en un sistema operativo fue
    en OpenBSD 2.6
  • Ha sido desarrollado con la idea de remplazar
    aplicaciones de telnet ftp rlogin ya que estos
    programas envían la información como texto plano
    sin ningún tipo de encriptación
  • Existen dos variedades del protocolo SSH que son
    incompatibles SSH 1 y SSH 2. La más antigua,

23
OpenSSH
  • el protocolo SSH 1, se encuentra en dos
    subvariedades el protocolo 1.3 y el protocolo
    1.5.
  • El protocolo SSH 1 usa un simple CRC para la
    integridad de los datos
  • La segunda variedad principal de SSH es el
    protocolo SSH 2. SSH 2 se inventó para evitar los
    problemas de patentes relacionados con RSA
    (problemas que ya no existen puesto que la
    patente ya ha caducado)
  • OpenSSH tiene soporte para ambas. Las dos usan el
    algoritmo de criptografía asimétrica RSA

24
Características de OpenSSH
  • Proyecto de Código Abierto
  • Licencia Libre
  • Cifrado Fuerte (3DES, Blowfish)
  • Reenvío por X11 (cifra el tráfico de X Window
    System)
  • Reenvío por Puertos (canales cifrados por
    protocolos de legado)
  • OpenSSH, tiene soporte para el protocolo SSH 1.3
    , SSH 1.5 , SSH 2.0

25
Características de OpenSSH
  • Reenvío por Agente (ingreso único)
  • Soporte para cliente y servidor de SFTP en los
    protocolos SSH1 y SSH2.
  • Pases de Ticket de Kerberos y AFS en la maquina
    remota
  • Autenticación Fuerte (Clave Pública, Contrasña de
    un sólo uso y Autenticación con Kerberos)
  • Compresión de datos

26
OpenSSH
  • En una sesion SSH sobre SSL hay dos partes
  • Un programa cliente q reside en la maquina local
    del usuario
  • ssh remplaza rsh y telnet
  • slogin remplaza a rlogin
  • sftp remplaza a ftp
  • Un programa servidor que debe ejecutarse en el
    host remoto
  • sshd remplaza el servidor telnet
  • Sftp-server remplaza a ftp-server
Write a Comment
User Comments (0)
About PowerShow.com