¿Qué es el cifrado de extremo a extremo?
Dado que usamos mucho la correspondencia digital en nuestra vida diaria, el tema candente del "cifrado de extremo a extremo" aparece en las noticias de vez en cuando. Pero, ¿qué es el cifrado de extremo a extremo y en qué se diferencia de otros tipos de cifrado?
Analicemos este método de cifrado y veamos por qué es tan importante.
¿Qué es el "cifrado de extremo a extremo"?
El cifrado de extremo a extremo es una forma de proteger las comunicaciones de miradas indiscretas. Si envía un mensaje en Internet a otra persona sin el cifrado adecuado, las personas que observen su conexión podrán ver lo que está enviando. Esto se conoce como ataque man-in-the-middle .
Como tal, los servicios de mensajería a veces emplean encriptación de extremo a extremo (E2EE) para proteger a sus usuarios. Algunos de los principales servicios de mensajería instantánea utilizan E2EE para evitar que la gente espíe a sus usuarios.
Para lograrlo, el servicio implementa un método que permite a los usuarios encriptar sus mensajes automáticamente. Antes de que alguien envíe un mensaje, lo encriptan usando lo que se llama una "clave". Esta clave hace que el mensaje sea ilegible, por lo que los fisgones no pueden ver lo que dice.
Cuando el mensaje llega al dispositivo del destinatario, la aplicación usa una clave para desenredar el mensaje en lo que dijo originalmente. Ahora el destinatario puede leer lo que dice el mensaje y los piratas informáticos se mantienen fuera de la ecuación.
¿En qué se diferencia E2EE de otros tipos de cifrado?
Puede estar confundido en cuanto a cómo este método de cifrado es diferente a otros métodos. En verdad, la mecánica real detrás de E2EE es similar a otros tipos de cifrado. Sin embargo, la principal diferencia es la respuesta a esta pregunta: ¿quién posee las claves de cifrado?
Cuando usa un servicio con encriptación que no es E2EE, puede enviar mensajes a su amigo usando una clave que le dio el servicio. Esto es excelente para evitar que los piratas informáticos miren sus comunicaciones, pero significa que las personas que operan el servicio que está utilizando pueden leer técnicamente lo que envía.
Es como si usaras una aplicación de mensajería para hablar con tu amigo y los desarrolladores que diseñaron la aplicación te dijeran a ambos que usaran la clave "APPLE" para cifrar tus datos. Claro, los hackers al azar no pueden leer lo que dices, pero los desarrolladores saben que estás usando APPLE como clave. Esto significa que pueden descifrar sus mensajes a medida que los envía y leer todo lo que dice.
Cuando una empresa utiliza este tipo de cifrado, se convierte en un problema de confianza. ¿Confías en que la empresa que administra la aplicación de mensajería hará la vista gorda y te permitirá hablar en privado? ¿O usarán la llave de APPLE para abrir su seguridad y leer todos los detalles jugosos?
Este no es un problema para E2EE. Como es de esperar del "extremo a extremo" en su nombre, E2EE funciona permitiendo que cada usuario genere sus propias claves de cifrado en su dispositivo. De esta manera, nadie, ni siquiera los desarrolladores de aplicaciones de mensajería, puede desencriptar los mensajes sin tomar físicamente su dispositivo.
Es por eso que E2EE es tan popular y por qué algunas aplicaciones de correo electrónico seguro lo utilizan. Los usuarios no necesitan confiar en una empresa sin rostro. Tienen todo lo que necesitan para realizar el cifrado ellos mismos.
Hay algunas formas de lograr esto, pero el "cifrado de clave pública" y el "intercambio de claves Diffie-Hellman" son algunos de los métodos más conocidos.
Lograr E2EE con cifrado de clave pública
Cuando un programa utiliza cifrado de clave pública, cada usuario del servicio obtiene dos claves. La primera es su clave pública, y esta se puede ver y entregar libremente a cualquier persona. Sin embargo, vale la pena señalar que la clave pública solo puede cifrar datos; no se puede utilizar para descifrarlo.
Cada usuario también obtiene una clave privada, que nunca se comparte y permanece permanentemente en su dispositivo. La clave privada está diseñada para que la clave privada pueda descifrar cualquier dato cifrado con la clave pública. Sin embargo, también debe tener en cuenta que la clave privada solo puede descifrar datos; nunca se usa para cifrarlo.
Cuando dos personas quieren hablar entre sí, intercambian claves públicas. Luego usan la clave pública de la otra persona para encriptar sus mensajes. Una vez que una clave pública lo cifra, solo puede ser descifrado correctamente por la clave privada del destinatario, que nunca sale de su dispositivo.
Un ejemplo no técnico de cifrado de clave pública
Para tener una mejor idea de cómo funciona este sistema, imagine que Bob y Alice quieren hablar entre ellos. Para lograrlo, compran una caja de seguridad de una empresa de seguridad algo excéntrica.
Así es como funciona.
Una caja de seguridad se puede deslizar con una tarjeta de "candado" o "desbloqueo" para bloquearla o desbloquearla. Cada usuario tiene una tarjeta de "bloqueo" y "desbloqueo" única para usar en la caja de seguridad. Además, puede solicitar una copia de la tarjeta de "bloqueo" de una persona específica a la empresa, pero nunca puede solicitar la tarjeta de "desbloqueo" de otra persona.
Bob tiene dos cartas: BOB LOCK y BOB UNLOCK. Alice también tiene su propio juego de cartas, ALICE LOCK y ALICE UNLOCK.
Si Bob cierra la caja de seguridad y desliza la tarjeta BOB LOCK, la caja de seguridad se bloqueará sola. Permanecerá bloqueado, incluso si Bob pasa la tarjeta BOB LOCK por segunda vez. La única forma de desbloquearlo es deslizando BOB UNLOCK. Las tarjetas de desbloqueo de ninguna otra persona funcionarán.
Ahora, digamos que Bob quiere enviarle un mensaje a Alice. Necesita pedir una copia de una de las tarjetas de bloqueo de Alice a la compañía de cajas de seguridad para hacer esto. La compañía permite esto porque no puede usar una tarjeta de bloqueo para entrar en una caja de seguridad. Solo puedes usarlo para bloquear uno.
Bob pide una tarjeta ALICE LOCK. Luego le escribe una carta a Alice, la pone en la caja fuerte y luego pasa la tarjeta ALICE LOCK. La caja de seguridad está bien cerrada y solo se puede desbloquear si se pasa una tarjeta ALICE UNLOCK. La propia tarjeta de desbloqueo de Bob es inútil.
Ahora, Bob puede enviarle la caja de seguridad a Alice. Incluso si alguien interesado en la carta pidiera su propia tarjeta ALICE LOCK y secuestrara la caja, no puede abrirla. Solo una tarjeta ALICE UNLOCK puede desbloquearla, y Alice es la única propietaria de dicha tarjeta.
Alice recibe la caja de seguridad de Bob, usa su tarjeta ALICE UNLOCK para abrirla y lee la carta. Si Alice quería devolver un mensaje, puede solicitar y usar una tarjeta BOB LOCK para devolver la caja de seguridad. Ahora, solo la tarjeta BOB UNLOCK puede abrirlo, que solo Bob tiene.
Lograr E2EE con el intercambio de claves Diffie-Hellman
Si dos personas quieren lograr E2EE en una red insegura, hay una forma de compartir claves de cifrado a simple vista y no ser pirateadas.
Para hacer esto, ambas partes primero acuerdan una clave compartida. Esta clave se comparte abiertamente, y el sistema de intercambio de claves Diffie-Hellman asume que los piratas informáticos descubrirán cuál es esta clave.
Sin embargo, ambos lados generan una clave privada en sus propios dispositivos. Luego agregan esta clave privada a la compartida, luego envían su clave combinada al destinatario. Cuando reciben la clave combinada del destinatario, la agregan a su clave privada para obtener una clave secreta compartida que se utilizará para el cifrado.
Un ejemplo no técnico del intercambio de claves Diffie-Hellman
Si volvemos a Bob y Alice, digamos que usan esta técnica para compartir información. Primero, ambos están de acuerdo en un número compartido, digamos el número tres. Esto se hace públicamente, por lo que un fisgón puede, en teoría, escuchar este número.
Luego, Bob y Alice eligen un número en privado. Digamos que Bob elige el número ocho y Alice elige cinco. Luego, agregan su número elegido al número compartido acordado y le dan a la otra persona el resultado.
- Bob toma la clave compartida (3) y su clave privada (8) y obtiene 11 (8 + 3). Le da el número 11 a Alice.
- Alice toma la clave compartida (3) y su clave privada (5) y obtiene 8 (5 + 3). Ella le da el número 8 a Bob.
Este intercambio también se hace en público, por lo que, nuevamente, un fisgón puede ver potencialmente que Bob compartió 11 y Alice compartió 8.
Una vez que se comparte, cada lado agrega lo que recibió con su número privado. Esto da como resultado que ambos lados obtengan el mismo número debido a que una suma con solo una suma no se preocupa por el orden.
- Bob recibe el número combinado de Alice (8), le suma su número privado (8) y obtiene 16. (8 + 8)
- Alice recibe el número combinado de Bob (11), le agrega su propio número privado (5) y obtiene 16. (11 + 5)
- Ambas partes pueden cifrar mensajes utilizando la clave "16", que nadie más que Bob y Alice conoce.
Por supuesto, en este ejemplo, un pirata informático podría descifrar este código muy fácilmente. Todo lo que necesitan es la clave compartida, la clave que Bob envía y la clave que envía Alice, todas las cuales se envían a plena luz del día.
Sin embargo, los programadores que implementan el intercambio de claves Diffie-Hellman implementarán ecuaciones complejas que son difíciles de aplicar por ingeniería inversa para los piratas informáticos y seguirán dando el mismo resultado sin importar en qué orden se ingresen los números.
De esa manera, los piratas informáticos se quedan perplejos acerca de lo que generó los números mientras Bob y Alice conversan de manera segura usando la clave compartida.
Envío de datos de forma segura mediante E2EE
Si no desea confiar en que las empresas no miren sus datos, no tiene por qué hacerlo. Con los métodos E2EE, nadie puede ver sus mensajes hasta que lleguen a salvo a su destino.
Si toda esta charla sobre el cifrado te ha hecho querer reforzar la seguridad de tu computadora, ¿sabías que hay varias formas de cifrar tu vida diaria?
Haber de imagen: Steve Heap / Shutterstock.com