Cifrados simples: descripción de códigos y cifrados populares

Tabla de contenido:

Cifrados simples: descripción de códigos y cifrados populares
Cifrados simples: descripción de códigos y cifrados populares
Anonim

La necesidad de cifrar la correspondencia surgió en el mundo antiguo y aparecieron los cifrados de sustitución simples. Los mensajes encriptados determinaron el destino de muchas batallas e influyeron en el curso de la historia. Con el tiempo, la gente inventó métodos de encriptación cada vez más avanzados.

Código y cifrado son, por cierto, conceptos diferentes. El primero significa reemplazar cada palabra en el mensaje con una palabra clave. La segunda es encriptar cada símbolo de información usando un algoritmo específico.

Después de que las matemáticas comenzaran a codificar información y se desarrollara la teoría de la criptografía, los científicos descubrieron muchas propiedades útiles de esta ciencia aplicada. Por ejemplo, los algoritmos de decodificación han ayudado a desentrañar idiomas muertos como el antiguo egipcio o el latín.

Esteganografía

La esteganografía es más antigua que la codificación y el cifrado. Este arte existe desde hace mucho tiempo. Literalmente significa "escritura oculta" o "escritura cifrada". Aunque la esteganografía no cumple del todo con las definiciones de un código o cifrado, su objetivo es ocultar información a los extraños.ojo.

Esteganografía o criptografía
Esteganografía o criptografía

La esteganografía es el cifrado más simple. Las notas tragadas cubiertas de cera son ejemplos típicos, o un mensaje en una cabeza rapada que se esconde debajo del cabello crecido. El ejemplo más claro de esteganografía es el método descrito en muchos libros de detectives en inglés (y no solo), cuando los mensajes se transmiten a través de un periódico, donde las letras se marcan discretamente.

La principal desventaja de la esteganografía es que un extraño atento puede notarlo. Por lo tanto, para evitar que el mensaje secreto se lea fácilmente, se utilizan métodos de encriptación y codificación junto con la esteganografía.

ROT1 y cifrado César

El nombre de este cifrado es ROTate 1 letra hacia adelante, y muchos escolares lo conocen. Es un cifrado de sustitución simple. Su esencia radica en el hecho de que cada letra se cifra desplazando alfabéticamente 1 letra hacia adelante. A -> B, B -> C, …, Z -> A. Por ejemplo, encriptamos la frase "nuestro Nastya llora fuerte" y obtenemos "general Obtua dspnlp rmbsheu".

El cifrado ROT1 se puede generalizar a un número arbitrario de compensaciones, luego se llama ROTN, donde N es el número por el cual se debe cambiar el cifrado de letras. De esta forma, el cifrado se conoce desde la antigüedad y se denomina "cifrado César".

Disco cirílico para el cifrado de César
Disco cirílico para el cifrado de César

El cifrado César es muy simple y rápido, pero es un cifrado de permutación simple simple y, por lo tanto, es fácil de descifrar. Al tener tal desventaja, solo es adecuado para bromas infantiles.

Cifrados transposicionales o de permutación

Estos tipos de cifrados de permutación simples son más serios y se usaban activamente no hace mucho tiempo. Durante la Guerra Civil Estadounidense y la Primera Guerra Mundial, se utilizó para enviar mensajes. Su algoritmo consiste en reorganizar las letras en lugares: escribir el mensaje en orden inverso o reorganizar las letras en pares. Por ejemplo, codifiquemos la frase "El código Morse también es un cifrado" -> "akubza ezrom - hedgehog rfish".

Con un buen algoritmo que determinaba permutaciones arbitrarias para cada carácter o grupo de ellos, el cifrado se volvió resistente al descifrado simple. ¡Pero! Solo a su debido tiempo. Dado que el cifrado se descifra fácilmente mediante la simple fuerza bruta o la coincidencia del diccionario, hoy en día cualquier teléfono inteligente puede manejar su descifrado. Por lo tanto, con la llegada de las computadoras, este cifrado también pasó a la categoría de los niños.

Código Morse

El ABC es un medio de intercambio de información y su tarea principal es hacer que los mensajes sean más fáciles y comprensibles para su transmisión. Aunque esto es contrario a lo que pretende el cifrado. Sin embargo, funciona como los cifrados más simples. En el sistema Morse, cada letra, número y signo de puntuación tiene su propio código, compuesto por un grupo de guiones y puntos. Al enviar un mensaje usando el telégrafo, los guiones y los puntos representan señales largas y cortas.

Cirílico y latín en código Morse
Cirílico y latín en código Morse

Telégrafo y código Morse… Morse fue el primero en patentar "su" invento en 1840, aunque dispositivos similares se habían inventado en Rusia e Inglaterra antes que él. Pero a quién le importa ahora… Telégrafo y alfabetoEl código Morse tuvo un gran impacto en el mundo, permitiendo la transmisión casi instantánea de mensajes a distancias continentales.

Sustitución monoalfabética

Los códigos ROTN y Morse descritos anteriormente son ejemplos de fuentes monoalfabéticas de reemplazo. El prefijo "mono" significa que durante el cifrado, cada letra del mensaje original se reemplaza por otra letra o código del único alfabeto de cifrado.

Descifrar cifrados de sustitución simples no es difícil, y este es su principal inconveniente. Se resuelven mediante enumeración simple o análisis de frecuencia. Por ejemplo, se sabe que las letras más utilizadas del idioma ruso son “o”, “a”, “i”. Por lo tanto, se puede suponer que en el texto cifrado las letras que aparecen con mayor frecuencia significan "o", "a" o "y". Según estas consideraciones, el mensaje se puede descifrar incluso sin una búsqueda en la computadora.

Se sabe que María I, reina de Escocia entre 1561 y 1567, utilizó un cifrado de sustitución monoalfabético muy complejo con varias combinaciones. Sin embargo, sus enemigos pudieron descifrar los mensajes, y la información fue suficiente para sentenciar a muerte a la reina.

cifrado de Gronsfeld o sustitución polialfabética

Los cifrados simples son declarados inútiles por la criptografía. Por lo tanto, muchos de ellos han sido mejorados. El cifrado Gronsfeld es una modificación del cifrado César. Este método es mucho más resistente a la piratería y radica en que cada carácter de la información codificada se cifra mediante uno de los diferentes alfabetos, que se repiten cíclicamente. Se puede decir que esta es una aplicación multidimensional.el cifrado de sustitución más simple. De hecho, el cifrado de Gronsfeld es muy similar al cifrado de Vigenère que se analiza a continuación.

Algoritmo de cifrado ADFGX

Este es el cifrado más famoso de la Primera Guerra Mundial utilizado por los alemanes. El cifrado recibió su nombre porque el algoritmo de cifrado llevó a todos los cifrados a la alternancia de estas letras. La elección de las letras en sí estaba determinada por su conveniencia cuando se transmitían por líneas telegráficas. Cada letra en el cifrado está representada por dos. Veamos una versión más interesante del cuadrado ADFGX que incluye números y se llama ADFGVX.

A D F G V X
A J Q A 5 H D
D 2 E R V 9 Z
F 8 Y Yo N K V
G U P B F 6 O
V 4 G X S 3 T
X M L Q 7 C 0

El algoritmo de elevación al cuadrado de ADFGX es el siguiente:

  1. Elige n letras al azar para columnas y filas.
  2. Construyendo una matriz N x N.
  3. Ingrese el alfabeto, los números y los caracteres dispersos aleatoriamente en las celdas de la matriz.

Hagamos un cuadrado similar para el idioma ruso. Por ejemplo, creemos un cuadrado ABCD:

A B B G D
A E/E N b/b A Yo/Y
B M V/F G/D З D
B Sh/Sh B L X Yo
G R M O Yu P
D F T T S U

Esta matriz se ve extraña porque una fila de celdas contiene dos letras. Esto es aceptable, el significado del mensaje no se pierde. Se puede restaurar fácilmente. Cifre la frase "Cifrado compacto" usando esta tabla:

1 2 3 4 5 6 7 8 9 10 11 12 13 14
Frase K O M P A K T N S Y Ш & F R
Cifrado bw gv gb dónde ag bw bd ab dg infierno wa infierno bb ja

Por lo tanto, el mensaje cifrado final se ve así: "bvgvgbgdagbvdbabdgvdvaadbbga". Por supuesto, los alemanes llevaron a cabo una línea similar a través de varias cifras más. Y al final resultó muy estable.para descifrar el mensaje encriptado.

Cifrado Vigenère

Este cifrado es un orden de magnitud más resistente al descifrado que los monoalfabéticos, aunque es un cifrado de reemplazo de texto simple. Sin embargo, debido al robusto algoritmo, durante mucho tiempo se consideró imposible de piratear. La primera mención de ella se remonta al siglo XVI. Vigenère (diplomático francés) es erróneamente acreditado como su inventor. Para comprender mejor lo que está en juego, considere la tabla de Vigenère (cuadrado de Vigenère, tabula recta) para el idioma ruso.

Mesa Vigenère con alfabeto ruso
Mesa Vigenère con alfabeto ruso

Empecemos a codificar la frase "Kasperovich se ríe". Pero para que el cifrado tenga éxito, se necesita una palabra clave, que sea "contraseña". Ahora comencemos con el cifrado. Para ello, escribimos la clave tantas veces que el número de letras de la misma corresponda al número de letras de la frase encriptada, repitiendo la clave o cortando:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Frase: K A С P E R O B & M С M E E T С Yo
Clave P A R O L b P A R O L b P A R O L

Ahora, usando la tabla de Vigenère, como en el plano de coordenadas, estamos buscando una celda que sea la intersección de pares de letras, y obtenemos: K + P=b, A + A=B, C + P=C, etc.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Cifrado: b B B Yu С N Yu G Escuela F E Y X F G A L

Obtenemos que "Kasperovich se ríe"="bvusnyugschzh eykhzhgal".

Descifrar el cifrado de Vigenère es muy difícil porque el análisis de frecuencia necesita saber la longitud de la palabra clave para funcionar. Entonces, el truco consiste en arrojar al azar la longitud de la palabra clave e intentar descifrar el mensaje secreto.

También se debe mencionar que además de una clave completamente aleatoria, se puede usar una tabla Vigenère completamente diferente. En este caso, el cuadrado de Vigenère consiste en un alfabeto ruso escrito línea por línea con un desplazamiento de uno. Lo que nos remite al cifrado ROT1. Y al igual que en el cifrado César, la compensación puede ser cualquier cosa. Además, el orden de las letras no tiene por qué ser alfabético. En este caso, la tabla en sí puede ser la clave, sin saber cuál será imposible leer el mensaje, aun conociendo la clave.

Códigos

Los códigos reales consisten en coincidencias para cadapalabras de un código separado. Para trabajar con ellos, se necesitan los llamados libros de códigos. De hecho, este es el mismo diccionario, que solo contiene traducciones de palabras en códigos. Un ejemplo típico y simplificado de códigos es la tabla ASCII, un cifrado internacional de caracteres simples.

tabla de códigos ASCII
tabla de códigos ASCII

La principal ventaja de los códigos es que son muy difíciles de descifrar. El análisis de frecuencia casi no funciona cuando son pirateados. La debilidad de los códigos es, de hecho, los propios libros. Primero, su preparación es un proceso complejo y costoso. En segundo lugar, para los enemigos se convierten en un objeto deseado y la intercepción de incluso una parte del libro te obliga a cambiar todos los códigos por completo.

En el siglo XX, muchos estados usaban códigos para transferir datos secretos, cambiando el libro de códigos después de cierto período. Y también buscaron activamente libros de vecinos y oponentes.

Enigma

Todo el mundo sabe que Enigma fue la principal máquina de cifrado de los nazis durante la Segunda Guerra Mundial. La estructura de Enigma incluye una combinación de circuitos eléctricos y mecánicos. El resultado del cifrado depende de la configuración inicial de Enigma. Al mismo tiempo, Enigma cambia automáticamente su configuración durante la operación, encriptando un mensaje de varias maneras a lo largo de toda su extensión.

A diferencia de los cifrados más simples, "Enigma" ofrecía billones de combinaciones posibles, lo que hacía casi imposible descifrar la información cifrada. A su vez, los nazis tenían preparada una determinada combinación para cada día, queutilizado en un día particular para enviar mensajes. Por lo tanto, incluso si Enigma cayó en manos del enemigo, no hizo nada para descifrar los mensajes sin ingresar la configuración correcta todos los días.

Máquina de cifrado Nazi Enigma
Máquina de cifrado Nazi Enigma

Hack "Enigma" se probó activamente durante toda la campaña militar de Hitler. En Inglaterra, en 1936, se construyó para ello uno de los primeros dispositivos informáticos (máquina de Turing), que se convirtió en el prototipo de las computadoras del futuro. Su tarea era simular el funcionamiento de varias docenas de Enigmas simultáneamente y pasar mensajes nazis interceptados a través de ellos. Pero incluso la máquina de Turing solo pudo descifrar el mensaje ocasionalmente.

Cifrado de clave pública

El más popular de los algoritmos de encriptación, que se usa en todas partes en tecnología y sistemas informáticos. Su esencia radica, por regla general, en la presencia de dos claves, una de las cuales se transmite públicamente y la segunda es secreta (privada). La clave pública se utiliza para cifrar el mensaje y la clave privada se utiliza para descifrarlo.

Algoritmo de cifrado de clave pública
Algoritmo de cifrado de clave pública

La clave pública suele ser un número muy grande que tiene solo dos divisores, sin contar uno y el número en sí. Juntos, estos dos divisores forman una clave secreta.

Consideremos un ejemplo simple. Sea la clave pública 905. Sus divisores son los números 1, 5, 181 y 905. Entonces la clave secreta será, por ejemplo, el número 5181. ¿Estás diciendo demasiado fácil? ¿Qué pasa si en el papelnúmero público será un número con 60 dígitos? Matemáticamente difícil calcular los divisores de un número grande.

Para un ejemplo más vívido, imagina que estás retirando dinero de un cajero automático. Al leer la tarjeta, los datos personales se cifran con una determinada clave pública y, por parte del banco, la información se descifra con una clave secreta. Y esta clave pública se puede cambiar para cada operación. Y no hay forma de encontrar rápidamente los divisores clave al interceptarlos.

Durabilidad de la fuente

La fuerza criptográfica de un algoritmo de cifrado es la capacidad de resistir la piratería. Este parámetro es el más importante para cualquier cifrado. Obviamente, el cifrado de sustitución simple, que puede ser descifrado por cualquier dispositivo electrónico, es uno de los más inestables.

Hoy en día, no existen estándares uniformes por los cuales sería posible evaluar la fuerza del cifrado. Este es un proceso laborioso y largo. Sin embargo, hay una serie de comisiones que han producido estándares en esta área. Por ejemplo, los requisitos mínimos para el estándar de cifrado avanzado o el algoritmo de cifrado AES desarrollado por NIST USA.

Para referencia: el cifrado Vernam es reconocido como el cifrado más resistente a la ruptura. Al mismo tiempo, su ventaja es que, según su algoritmo, es el cifrado más simple.

Recomendado: