Sat. Nov 26th, 2022

Este manual sobre criptografía lo ayudará a comprender los encriptados que son necesarios para la seguridad de los dispositivos modernos de IoT.

Los seres humanos han compartido información a través de grandes distancias en forma escrita durante milenios. Pero cuando los mensajes escritos son interceptados, y el texto es leído claramente por un enemigo, un político enojado puede iniciar una guerra, o un general competente puede perder una batalla. Así que la necesidad de encriptación ha existido siempre que haya ejércitos para liderar y alianzas para forjar.

Todo ese tiempo, los humanos hicieron mejoras incrementales. Un gran desarrollo en el campo de la criptografía ocurrió justo antes de la Segunda Guerra Mundial, cuando los ingenieros crearon un código inquebrantable y los británicos lo rompieron posteriormente. Pero la criptografía realmente encontró sus pies en la era de la computadora con la invención del algoritmo Diffie-Hellman.

Cifrados simples

La forma más sencilla para que los escolares compartan un secreto es con un cifrado de sustitución. Este método simplemente cambia un carácter por otro carácter o símbolo. El remitente del mensaje ofuscaría el significado cambiando los caracteres en el mensaje para un carácter / símbolo predeterminado. El receptor del mensaje usaría un libro de códigos coincidente para determinar el símbolo original.

Las tres cifras de sustitución se muestran arriba, cada una simplemente reemplaza una letra del alfabeto con otra letra / símbolo.

Este método tiene varios defectos. Por ejemplo, si el código tiene una longitud suficiente, un analista puede realizar lo que se conoce como análisis de n-gramas o análisis de frecuencia. El idioma inglés tiene reglas de ortografía y gramática que hacen que las letras y combinaciones de letras aparezcan con una frecuencia predecible. Una vez que alguien introduce el mensaje secreto en una computadora, pueden comenzar a adivinar qué letras del mensaje secreto corresponden a las letras del texto original.

A continuación se incluyen el análisis de frecuencia y el análisis de 2 gramos del Nuevo Diccionario de Oxford (sin caracteres extranjeros o especiales) y el "Libro de la Selva" de Rudyard Kipling. Un criptógrafo que descifra un mensaje secreto podría inferir que el carácter más común es e, y el menos utilizado es q, x o z, etc.

Análisis de frecuencia y n-gramas para "El libro de la selva" y el "Diccionario de Oxford"

Pero hay un problema más grande. Una vez que un enemigo descifra un solo mensaje, puede descifrar todos los mensajes que usan este código.

Utilizo este ejemplo infantil para ilustrar tres puntos:

  • Tanto el remitente como el receptor deben acordar cómo codificar / decodificar el mensaje secreto
  • Se puede descifrar un mensaje secreto de suficiente extensión que se basa en las mismas sustituciones. En nuestro ejemplo, el esquema de cifrado debe cambiarse como mínimo cada 26 letras.
  • Un sistema de criptografía debe proporcionar secreto hacia adelante. De modo que si un mensaje es descifrado, otros mensajes no pueden ser.

Código Enigma

Los alemanes resolvieron esta limitación con su uso de la máquina Enigma. Dentro había un teclado de máquina de escribir, una serie de rotores y una pantalla iluminada. Los rotores eran cifrados electromecánicos de sustitución con cables que conectaban 27 entradas a 27 salidas. Cada vez que un usuario presionaba una tecla, corría una corriente eléctrica a través de los rotores que conectaban la tecla a la luz. Entonces el rotor giraría en una nueva posición. Un usuario podría presionar la misma tecla una y otra vez, y cada vez crearía una conexión diferente a una nueva luz.

En resumen, las reglas de encriptación no cambiaron cada 27 letras; Las reglas de cifrado cambiaron con cada pulsación de tecla. El receptor simplemente configuraría todo a la inversa, conectaría el mensaje recibido y sacaría el mensaje secreto.

Máquina de enigma cortesía del Museo de la Ciencia y Tecnología de "Leonardo da Vinci" [CC BY-SA 4.0]. Imagen de Alessandro Nassiri.

Este fue un esquema absolutamente brillante que tomó varios gobiernos y millones de horas-hombre en el transcurso de varios años para resolverlo. Y eso implicó capturar la máquina y un libro de códigos de los alemanes.

¿Los problemas que la máquina Enigma no resolvió? Hubo algo de secreto hacia adelante, una vez que los Aliados habían descubierto un código, solo tenían los códigos para los mensajes de un solo día. Pero en una situación ideal, un código roto llevaría a un solo mensaje comprometido. Además, los alemanes aún tenían que compartir los libros de códigos físicos de un lugar a otro, lo que significa que los libros podrían ser interceptados o copiados por espías.

La belleza de la asimetría

A Whitfield Diffie y Martin Hellman se les ocurrió una ingeniosa realización. Las mismas propiedades de multiplicación que permiten los números de multiplicación en cualquier orden permiten la multiplicación de números en diferentes ubicaciones. El artículo que sigue a este explica el algoritmo Diffie Hellman y la aritmética modular en detalle. Pero esencialmente el remitente y el destinatario calculan la mitad de un problema matemático, intercambian su respuesta con el otro y luego completan el cálculo.

Lo que le quedan al remitente y al destinatario es un número que se puede usar para codificar / decodificar un mensaje secreto. La información que se comparte se conoce como clave pública, y cuando se multiplica por una clave privada, crea un secreto compartido. La clave privada de un usuario se multiplica por la clave pública del otro.

Esta disposición permite que los secretos se creen a plena vista de un enemigo, y el enemigo no puede hacer nada con la información.

¿Que sigue?

Los siguientes dos artículos cubrirán el intercambio de Diffie-Hellman, así como la criptografía de curva elíptica y Diffie Hellman de curva elíptica.

By Maria Montero

Me apasiona la fotografía y la tecnología que nos permite hacer todo lo que siempre soñamos. Soñadora y luchadora. Actualmente residiendo en Madrid.