El mundo ya no es seguro. Desafortunadamente, es cierto no solo para nuestro espacio físico sino también en línea. Los piratas informáticos y otros ciberdelincuentes siempre están al acecho, buscando formas de acceder a sus datos. Esto puede ser bastante aterrador.
Asi que, ¿Cómo se aseguraría de que su información en línea permanezca segura? ¿donde quiera que estés?
La respuesta está en cifrado: la transformación de sus datos de forma legible a ilegible para protegerlo de los fisgones.
Hoy en día, el cifrado existe en varias formas para proteger sus datos en reposo y durante el tránsito. De todos los tipos disponibles, El cifrado AES es, con mucho, el más popular y ampliamente utilizado.tal que se ha convertido en el estándar universal para mantener seguras las comunicaciones y la información.
¿Qué hace que AES sea tan único y útil? ¿Cómo se asegura de proporcionar total seguridad a mis datos? Te escucho preguntar.
Para responder a estas consultas, este artículo se centra en el AES (Estándar de cifrado avanzado), su mecanismo de funcionamiento y su historia. Además, daré más detalles sobre algunos asuntos de seguridad y responderé preguntas urgentes.
¡Vamos a empezar!
¿Qué es el cifrado AES?
El cifrado estándar avanzado, conocido técnicamente como Estándar de cifrado avanzado (AES), es un cifrado seguro y rápido que mantiene sus datos lejos de miradas indiscretas.
Técnicamente, es el forma simétrica de cifrado donde solo un cifra con una sola clave y descifra los datos. Si bien esto suena simple, lo que hace que AES sea el estándar de oro es la aplicación de múltiples rondas de cifrado que hacen que el algoritmo sea imposible de penetrar.
Actualmente, AES es la único cifrado aprobado por la NSA disponible para acceso público.
Debido a su utilidad y seguridad, AES actualmente respalda numerosos sectores donde se necesita cifrado. Estos incluyen tecnologías de hardware, redes sociales, VPN, herramientas de protección de datos e incluso aplicaciones de mensajería como Signal y WhatsApp.
¿Por qué la necesidad de AES? Mirada retrospectiva rápida
Anteriormente, las encriptaciones no eran complicadas. La gente usaba trucos y técnicas simples, como cambiar las letras al siguiente alfabeto en una oración, para descifrar un mensaje. Pero a medida que se conocieron los viejos métodos, las personas tuvieron que involucrar complicaciones.
Como se ve arriba, el código parece ilegible. Pero a pesar de su aparente imposibilidad de lectura, alguien que sepa que es un código y no un galimatías probablemente lo descifraría.
A medida que las personas se vuelven más conocedoras de la tecnología, el cifrado también evolucionó y se volvió más complejo para satisfacer las demandas de los consumidores. Esto finalmente condujo a inventos interesantes como las máquinas Enigma (dispositivos de cifrado) que apareció por primera vez en 1918 cuando Arthur Scherbius (un inventor alemán) patentó su primitivo diseño.
Auge y caída del cifrado DES
Durante la década de 1970, la Oficina Nacional de Normas de los Estados Unidos (NBS) adoptó el Estándar de cifrado de datos (DES) como un medio para cifrar datos confidenciales del gobierno. DES fue un algoritmo de clave simétrica creado por IBM que funcionó bien durante algunas décadas. Sin embargo, dado el aumento de los riesgos de seguridad, la la efectividad de DES comenzó a disminuir hasta los años 90.
Una de las limitaciones de DES era que presentaba una clave de 56 bits. (Esta es una deficiencia del cifrado de 256 bits conocido con AES en la actualidad). Entonces, con más avances tecnológicos y mejores formas de descifrar los sistemas, se volvió factible atacar DES.
Él El primer hack exitoso de encriptación DES ocurrió en 1997 por Proyecto DESCHALL durante una competencia de seguridad dirigida por Rocke Verser.
Otro intento exitoso ocurrió en 1998 cuando el FEP desarrolló un rompedor DES para llevar a cabo una ataque de fuerza bruta en aproximadamente dos días. Quieto, un año después de esoElectronic Frontier Foundation, en colaboración con distribuido.net, redujo el tiempo de craqueo a solo 24 horas.
Si bien los ataques fueron costosos y no sostenibles, se hizo evidente que el reinado de DES como el cifrado número uno había terminado. Como ley de moore lo poneel aumento exponencial de la destreza informática expuso las debilidades del cifrado DES.
La llegada del cifrado AES
Dado que DES ya no era confiable, EE. UU. una vez más se dispuso a buscar un nuevo estándar de cifrado que pudieran adoptar. Esta vez, la duración de la búsqueda y evaluación de los cifrados existentes se fijó en cinco años.
En 2001 llegó la buena noticia. ÉlInstituto Nacional de Estándares y Tecnología (NIST) proclamó que había hecho una selección adecuada.
El cifrado elegido fue una herramienta desarrollada por Los criptógrafos belgas Joan Daemen y Vincent Rijmen. Era un subconjunto del cifrado en bloque de Rijndaelque tiene tamaños de clave de 128 bits, 192 bits y 256 bits junto con un tamaño de bloque de 128 bits.
Finalmente, después de muchas pruebas, el El gobierno de EE. UU. en mayo de 2002 aprobó AES como el cifrado estándar del gobierno federal; y en poco tiempo, otros países también lo adoptaron como su algoritmo de cifrado estándar.
¿Por qué se seleccionó Rijndael block Cipher para AES?
Los cifrados siempre implican dar y recibir. Aunque es posible tener un cifrado que sea más seguro que AES. Sin embargo, tendría poca viabilidad dada la larga duración para cifrar y descifrar. El cifrado RSA aborda este problema sin comprometer la eficacia del cifrado.
En esencia, el Instituto Nacional de Normas y Tecnología eligió este cifrado debido a su capacidad general, incluida su excelente rendimiento en hardware, software y es mayor seguridad y facilidad de implementación.
¿Cómo funciona el cifrado AES?
Comprender los algoritmos de encriptación, especialmente los más complicados como AES, no es fácil. Como cabría esperar de cualquier programa de computación, AES también involucra muchas matemáticas que giran en torno a códigos binarios (muchos 0 y 1) que serían difíciles de explicar.
No obstante, para facilitar las cosas, aquí hay una explicación más simple (o quizás rudimentaria) de los procesos generales que constituyen la funcionalidad AES. Espero que esto seguramente le permita tener una idea de cómo se lleva a cabo el cifrado real en las computadoras.
1. Divide la información en bloques
Tenga en cuenta que AES es un cifrado de bloque y no un cifrado de flujo. Aquí, el primer punto de acción es que los textos sin formato (información para el cifrado) se dividen en bloques de bits en lugar de poco a poco.
AES tiene un tamaño de bloque de 128 bits. Por lo tanto, divide la información en 4 x 4 columnas de 16 bytes (un byte contiene ocho bits. Por lo tanto, 16 multiplicado por 8 es igual a 128).
Por ejemplo, si tiene un mensaje que dice «tráeme un poco de agua, por favor». El bloque inicial se verá así:
Puede ver que este bloque no incluye el mensaje completo. Eso es porque la parte hasta «agua» ha llenado el primer bloque. Así, el resto del mensaje (de la “r” de “agua”) constituirá el segundo bloque. Los bloques continuarán sumando hasta que su mensaje esté completo.
Dado que este es solo un ejemplo que explica el concepto básico, centrémonos solo en el primer bloque. El proceso que se explica a continuación se aplicará también a todos los bloques posteriores. (Si tiene curiosidad por saber qué sucede, puede tomar esto como un ejercicio para encriptar los otros bloques. Eso seguramente será divertido).
2. Expansión clave
Aquí el se toma la primera clave y se utiliza para derivar otras claves adecuadas para el cifrado completo. Es un paso de cifrado AES vital. Deriva nuevas claves de 128 bits utilizando La llave de Rijndaelque es una manera fácil de producir cifrados clave.
Por ejemplo, si la clave inicial es «los niños son más inteligentes», así es como se vería antes de la expansión de la clave:
Después de la expansión de la clave (usando el programa de claves de Rijndael), el cifrado AES probablemente aparecerá así:
25 | 39 | 2i | t6 |
i0 | 9g | tu | 9g |
hora | 3i | ir | 84 |
kt | eek | p.ej | ic |
Si bien lo anterior puede parecer como si fueran caracteres arbitrarios, ese no es el caso. El programa de claves de Rijndael aplica procesos estructurados para cifrar cada una de las claves. Discutiré la utilidad de cada tecla de ronda más adelante.
3. Adición de llave redonda
Este paso marca el comienzo del cifrado AES. En esta etapa, el algoritmo combina la clave original de la fraseque anteriormente se convirtió en un bloque de 4 x 4:
+
Podemos agregue ambas frases usando cifrado XORun algoritmo utilizado para agregar cifrado.
Aunque agregar los dos bloques de texto puede parecer imposible, tenga en cuenta que AES usa código binario. Los caracteres que ves son solo un sustituto para que sea fácil de entender. Por lo general, después del cifrado, lo que obtiene después de agregar los dos bloques es un bloque diferente de un cifrado. Representemos la operación matemática así:
i4 | él | zv | 8t |
t9 | 8e | 37 | 3m |
eh | 5c | 9e | 9d |
85 | FM | 3i | yo |
4. Sustitución de bytes
Aquí, el algoritmo AES reemplaza cada byte con un código obtenido de una tabla ya predeterminada. La mesa llamada Caja S de Rijndael se parece a la siguiente tabla:
Es un sistema complicado sin una lógica específica. El algoritmo utiliza la tabla establecida para obtener el código. Por ejemplo, dj cambia a 62, h3 cambia a jb, s8 cambia a 9f, etc. Por lo tanto, después de la sustitución de bytes, el bloque de cifrado puede parecerse a la representación a continuación (tenga en cuenta que esta es solo una representación hipotética de lo que es la realidad). situación es):
ic | m4 | lg | m3 |
9g | k | 2i | kt |
85 | xi | 0e | 29 |
eso | 28 | e7 | qy |
Notará que subrayé los caracteres en la última columna de la tabla anterior, mientras que la segunda columna está en negrita. Esto será útil en los siguientes pasos.
5. Cambiar filas
Como su nombre lo indica, simplemente implica cambiando las filas del bloque obtenido del proceso de sustitución de bytes.
Mientras que la primera fila permanece intacta, la siguiente se desplaza un paso hacia la izquierda en un byte, la siguiente fila se desplaza dos pasos hacia la izquierda en dos bytes y la siguiente también se desplaza tres pasos hacia la izquierda en tres bytes. Así, dándonos:
ic | m4 | kf | m3 |
k | 2i | kt | 9g |
0e | 29 | 85 | xi |
qy | eso | 28 | e7 |
6. Mezcla de columnas
Esto implica muchas matemáticas avanzadas y es un poco complicado de explicar. Sin embargo, lo que sucede es que cada paso multiplica cada columna usando una matriz preestablecida. Esto da a luz a un nuevo bloque de código..
Para simplificar, suponga que el cálculo matemático da el siguiente resultado:
monte | k5 | 3m | nótese bien |
94 | 39 | Si | 9g |
0x | sí | 4m | n5 |
6c | b0 | 4k | qt |
7. Adición de llave redonda
Recuerda el claves logradas en el segmento clave de expansión? Es hora de hacer uso de ellos. voy a añádelo al resultado de la columna mixta:
monte | k5 | 3m | nótese bien |
94 | 39 | Si | 9g |
0x | sí | 4m | n5 |
6c | b0 | 4k | qt |
+
25 | 39 | 2i | t6 |
i0 | 9g | tu | 9g |
hora | 3i | ir | 84 |
kt | eek | p.ej | ic |
La suma de estos dos produce otro bloque de código binario, que puede representarse como:
0e | 6c | 38 | tg |
monte | p.ej | yo | 4c |
9u | 39 | coeficiente intelectual | 8g |
73 | 8e | 26 | bg |
Esto además pasa por otra ronda de modificaciones para producir otro resultado.
8. Repetición del proceso
Después del paso anterior, el proceso se repite.
Es decir, después de agregar la última clave, pasa por la fase de sustitución de bytes. A partir de ahí, vuelve al cambio de fila, moviendo cada fila hacia la izquierda un espacio, dos espacios y tres espacios, respectivamente. Una vez hecho esto, se vuelve a la etapa de mezcla de columnas y se vuelve a agregar la clave redonda.
Mencioné anteriormente que AES presenta varios tamaños de clave, incluyendo 128, 192 y 256 bits. El uso de 128 bits lo lleva a través de nueve rondas, mientras que para el de 192 bits, son once rondas. Además, para la clave de 256 bits, el número de círculos es trece.
Por lo tanto, esto significa si es de 256 bits, los datos pasarán por la sustitución de bytes, el cambio de fila, la mezcla de columnas y la suma de teclas redondas trece veces para cada…