El cifrado es fundamental para la seguridad general de Internet. Hay diferentes sistemas de encriptación en uso hoy en día, pero generalmente todos funcionan codificando datos con la ayuda de un algoritmo matemático, encriptando la información en un código.
Uno de los estándares de cifrado más comunes en la actualidad es el Estándar de cifrado avanzado (AES). Es una variante del cifrado de bloques Rijndael y está disponible en tres tamaños de clave: 128, 192 y 256 bits.
Entonces, ¿qué es el cifrado AES-256 y cómo funciona?
¿Qué es AES?
AES es un estándar de cifrado de datos ampliamente adoptado que se usa en todo el mundo. Es el estándar federal utilizado por el gobierno de los Estados Unidos y ofrece seguridad y protección significativas.
AES es un tipo de cifrado simétrico , que utiliza la misma clave para cifrar y descifrar sus datos. Esencialmente, tanto el remitente como el receptor requieren la misma clave para descifrar los datos. El cifrado simétrico es más rápido, aunque es un poco menos seguro que el cifrado asimétrico.
¿Qué es un cifrado de bloque?
Para comprender cómo funciona AES-256, es importante comprender los cifrados de bloque. Un bloque simplemente significa una unidad de información dividida antes de ser encriptada. AES estándar utiliza un tamaño de bloque de 128 bits.
Para visualizar, 16 bytes multiplicados por 8 bits te dan 128 bits en cada bloque. Entonces, sin importar el tamaño de la clave, el tamaño del bloque sigue siendo el mismo. AES ha sufrido bastantes ataques pero aún no ha sido descifrado.
AES-256 es la versión más segura, aunque requiere una mayor potencia informática. Dada la amenaza inminente de la criptografía poscuántica , muchos consideran que AES-256 es resistente a la cuántica, lo que significa que no se espera que las computadoras cuánticas descifren el cifrado.
¿Cómo afecta el tamaño del bloque a la seguridad?
El tamaño del bloque también tiene un efecto indirecto sobre la seguridad del cifrado. Esencialmente, cuanto más grande es el bloque, más datos se pueden cifrar sin que se dupliquen. Pero, si el tamaño del bloque es demasiado pequeño, puede afectar el uso seguro del cifrado.
Un cifrado de bloque está destinado a ser una permutación pseudoaleatoria, lo que simplemente significa que si las entradas son diferentes, las salidas también deberían diferir automáticamente. AES utiliza principalmente un tamaño de bloque de 128 bits, donde los datos se dividen en una matriz de 4x4 que contiene 16 bytes.
Sin embargo, aunque el tamaño del bloque no afecta directamente la seguridad del cifrado, sí afecta la seguridad del modo. Todos los cifrados de bloque generalmente se implementan en diferentes modos de operación, por lo que la seguridad de cada modo depende de dos elementos: la seguridad del cifrado de bloque en sí y la seguridad del modo cuando el cifrado de bloque se reemplaza con una permutación pseudoaleatoria.
Esencialmente, cuantos más datos procese dentro de un modo de operación, más expone el modo, ya que el tamaño de bloque más pequeño da como resultado un aumento en la probabilidad de éxito opuesto. Con el tiempo, partes de la permutación, que están ocultas, siguen quedando expuestas y finalmente revelan la permutación completa.
Entonces, si tiene un cifrado de bloque de N bits y sabe que no es diferente de una permutación pseudoaleatoria de N bits, la seguridad de su cifrado se verá afectada si lo usa en un modo de operación. Para asegurarse de que la seguridad del modo no se vea afectada, es mejor usar un tamaño de bloque más grande.
¿Cómo cifra AES-256 sus datos?
El concepto básico del cifrado es que el cifrado reemplaza cada unidad de información por otra, dependiendo de la clave de seguridad. Por ejemplo, AES-256 completa 14 rondas de cifrado, lo que lo hace increíblemente seguro.
Los pasos implican dividir los datos en bloques, reemplazar diferentes bytes, cambiar filas y mezclar columnas, para codificar la información por completo. Al final del proceso, el resultado es un conjunto de caracteres completamente aleatorio que no tendrá sentido para nadie si no tiene la clave de descifrado.
AES-256 es el más largo y también el nivel más fuerte de encriptación que ofrece. Para poner las cosas en perspectiva, un pirata informático necesitaría probar 2256 combinaciones discretas, cada una con un total de 78 dígitos, para romper el cifrado.
En esencia, ¡el número es mayor que el número de estrellas en el universo! Esto lo hace impermeable a los ataques de fuerza bruta y es el estándar de encriptación más poderoso del mundo.
Aplicaciones de AES-256