If you're seeing this message, it means we're having trouble loading external resources on our website.

Si estás detrás de un filtro de páginas web, por favor asegúrate de que los dominios *.kastatic.org y *.kasandbox.org estén desbloqueados.

Contenido principal

Cifrado y llaves públicas

Mia Epner, quien trabaja en seguridad para una agencia nacional de inteligencia de los EUA, explica cómo la criptografía permite la transferencia segura de datos en línea. Este video explica el cifrado de 256 bits, llaves públicas y privadas, SSL & TLS y HTTPS. 

¿Quieres unirte a la conversación?

¿Sabes inglés? Haz clic aquí para ver más discusiones en el sitio en inglés de Khan Academy.

Transcripción del video

(música) - Hola, mi nombre es Mia Gil Epner. Soy titulada en Informática por UC Berkeley y trabajo para el Departamento de Defensa donde mi trabajo es intentar mantener segura la información. El Internet es un sistema público y abierto, todos nosotros enviamos y recibimos información por medio de redes y conexiones compartidas. Incluso sabiendo que es un sistema abierto intercambiamos muchos datos privados, "cosas" como números de tarjetas de crédito información bancaria, contraseñas y correos electrónicos. Entonces, ¿cómo se mantiene secreta todo esta información privada? La información de cualquier tipo puede mantenerse secreta por medio de un proceso denominado cifrado, codificando o modificando el mensaje para esconder el texto original. Así, el descifrado es el proceso de decodificación del mensaje para hacerlo de nuevo comprensible. Es una idea simple y se lleva haciendo desde hace siglos. Uno de los primeros métodos conocidos de cifrado es el cifrado César, denominado así por haber sido usado por Julio César, un general y mandatario de Roma, que cifraba sus órdenes y mensaje militares para asegurarse de que, si un mensaje era interceptado por sus enemigos, serían incapaces de comprenderlo. El cifrado César en un algoritmo que sustituye cada letra del mensaje original con una letra que le sigue a un determinado número de pasos de distancia adelante en el alfabeto. Si el número es únicamente conocido por el emisor y el receptor, entonces es llamado la clave. La clave permite al receptor desbloquear el mensaje secreto. Por ejemplo, si tu mensaje original es "Hello", entonces, utilizando el algoritmo de cifrado César con una clave de cinco, el mensaje cifrado sería éste: (sonido de teclas) (melodía) Para descifrar el mensaje, el receptor simplemente utilizaría la clave para dar la vuelta al proceso. Pero hay un problema importante con el cifrado César. Cualquiera puede romper la seguridad del mensaje cifrado probando cada una de las posibles claves. En el alfabeto inglés, hay solo 26 letras, lo que quiere decir que únicamente necesitas intentarlo, como mucho con 26 claves para descifrar el mensaje. De hecho, probar las 26 posibles claves no es muy difícil. Podría costarte, como mucho, una hora hacerlo. Vamos a hacerlo un poco más difícil. En vez de desplazar cada letra con un número fijo, vamos a desplazar cada letra con una cantidad distinta. En este ejemplo, con una clave de longitud 10, se muestra cuantas posiciones debe ser desplazada para cifrar un mensaje más largo. (ruido de teclado) Adivinar esta clave sería realmente difícil. Utilizando una clave de cifrado de longitud 10 habría 10.000 millones de posibles claves (soluciones). Evidentemente, esto es mucho más de lo que cualquier humano podría resolver nunca, costaría mucho siglos. Sin embargo, en la actualidad, a un computador medio le costaría unos pocos segundos intentar los 10.000 millones de posibilidades. Así, en el mundo moderno, donde los "chicos malos" están armados con computadoras en vez de lapiceros ¿cómo se puede cifrar mensajes de forma tan segura que resulte demasiado difícil romper el cifrado? Ahora, demasiado difícil ("too hard") significa que hay demasiadas posibilidades para probar (computar) en una cantidad razonable de tiempo. La comunicaciones seguras en la actualidad están cifradas utilizando claves de 256 bits. Esto significa que la computadora de un "chico malo" que interceptará tu mensaje necesitaría probar este gran número de posibles opciones para descubrir la clave y romper la seguridad del mensaje. (sonidos de computadora/robot) Incluso aunque tuvieras cientos de miles de supercomputadoras y cada uno de ellos fuera capaz de intentar mil billones de claves cada segundo. Tomaría billones de billones de años probar todas las posibilidades solo para romper un único mensaje protegido con un cifrado de 256 bits. Por supuesto, los chips de las computadoras doblan su velocidad y reducen su tamaño a la mitad cada año, al menos. Si este ritmo exponencial de progreso continúa, los problemas que hoy son imposibles serán abordables solo dentro de unos pocos cientos de años, en el futuro, y los 256 bits no serán suficientes para garantizar la seguridad. De hecho, ya hemos tenido que incrementar la longitud de la clave estándar para seguir la velocidad de las computadoras La buena noticia es que, usar una clave más larga no hace el proceso de cifrado más difícil y, sin embargo, aumenta exponencialmente el número de alternativas a probar para romper un cifrado. Cuando el emisor y el receptor comparten la misma clave para cifrar y descifrar un mensaje, se denomina cifrado simétrico. En el cifrado simétrico -como en el caso del cifrado César- la clave secreta debe acordarse previamente. por las dos personas de forma privada. Esto es estupendo para las personas pero el Internet es público y abierto, de forma que es imposible para dos computadoras reunirse en privado para acordar una clave secreta. En su lugar, las computadoras utilizan claves asimétricas. Una clave pública puede ser intercambiada con cualquiera y una clave privada no se comparte. La clave pública es usada para cifrar datos y cualquiera puede utilizarla para crear un mensaje secreto, pero el secreto solo será descifrado por una computadora con acceso a la clave privada. Cómo funciona exige conocimientos matemáticos en los que nos entraremos ahora. Piensa de esta manera: imagina que tienes un buzón personal donde cualquiera puede depositar correo pero necesita una llave para hacerlo. Ahora, tú podrías hacer muchas copias de la llave y enviárselas a tus amigos o, simplemente, dejarla disponible públicamente. Tu amigo, o un extraño, puede usar la clave pública para acceder a la ranura de depósito y dejar un mensaje pero solo tú puedes abrir el buzón con tu llave privada para acceder a los mensajes secretos que has recibido. Tú puedes enviar de forma segura un mensaje de vuelta para tu amigo utilizando la llave pública de su(s) buzón(es). De esta manera, las personas pueden intercambiar de forma segura mensajes sin necesidad de acordar en ningún momento una clave privada. La criptografía de clave pública es el fundamento de todo el intercambio seguro de mensajes en el Internet abierto, incluyendo los protocolos de seguridad conocidos como SSL y TLS que nos protegen cuando estamos navegando en la web. Tu computadora utiliza esto hoy. Cada vez que ves el pequeño candado o las letras https en la barra de dirección de tu navegador, significa que tu computadora está usando cifrado de clave pública para intercambiar información de forma segura con el sitio web en el que estás. (música) Cuantas más y más personas accedan a internet más y más datos privados serán transmitidos y la necesidad de mantener seguros esos datos será aún más importante. Y conforme las computadoras sean más y más rápidas tendremos que desarrollar nuevas formas de hacer más difícil a las computadoras romper el cifrado. Esto es lo que hago en mi trabajo, y está cambiando siempre. (música)