El cifrado simétrico (también conocido como cifrado de clave privada o cifrado de clave secreta) consiste en utilizar la misma clave para el cifrado y el descifrado.
Generalidades sobre sistemas de clave secreta.
Se incluyen en esta familia el conjunto de algoritmos diseñados para cifrar un mensaje utilizando una única clave conocida por los dos interlocutores, de manera que el documento cifrado sólo puede descifrarse conociendo dicha clave secreta. Algunas de las características más destacadas de este tipo de algoritmos son las siguientes:
Algoritmo DES (Data Encryption Standard).
DES es un algoritmo de cifrado escogido como un estándar FIPS en los Estados Unidos en 1976, y cuyo uso se propagó ampliamente por todo el mundo. DES permite bloques de texto ordenados de 64 bits, claves privadas de 56 bits, tiene 16 interacciones, se generan 16 subclaves de 48 bits una para cada interacción.
Actualmente DES se considera un algoritmo inseguro, y no debe utilizarse. Su ventaja es que es uno de los sistemas más empleados y extendidos, por tanto es de los más probados, pero no es seguro. Implementación sencilla y rápida.
Tiene un listado de inconvenientes como por ejemplo:
- No se permite una clave de longitud variable, es decir, no se puede aumentar para tener una mayor seguridad.
- Es vulnerable al criptoanálisis diferencial, aunque solo es un ataque teórico.
- La longitud de clave de 56 bits es demasiado corta, y por tanto vulnerable.
- Actualmente DES ya no es un estándar, debido a que en 1999 fue roto.
Modos de cifra en bloque.
Es una unidad de cifrado de clave simétrica que opera en grupos de bits de longitud fija, llamados bloques, aplicándoles una transformación invariante.
Para cifrar mensajes más largos que el tamaño del bloque, se utiliza un modo de operación.
Algoritmo IDEA (International Data Encryption Algorithm).
Es un cifrador por bloques. Fue un algoritmo propuesto como reemplazo del DES. Es utilizado para cifrar textos con un tamaño de bloque de 64 bits, utilizando una llave de 128 bits. IDEA consiste de ocho transformaciones idénticas (cada una llamada ronda) y una transformación de salida, llamada media ronda.
El proceso para cifrar y para descifrar es el mismo, solo cambian las llaves de ronda, en total 52 de 16 bits cada una.
Generación de las llaves:
- Se divide la llave original en 8 partes de 16 bits cada una.
- Las primeras 6 partes son las llaves k1 a k6 de izquierda a derecha respectivamente, utilizadas en la primer ronda de IDEA.
- Las ultimas dos partes ser´an las llaves K7 y K8.
- Las otras 44 llaves son generadas de realizar un corrimiento circular a la izquierda de 25 bits sobre la llave original.
Desifrado:
Algoritmo AES (Advanced Encryption Standard)
Es uno de los algoritmos más seguros y más utilizados hoy en día. El algoritmo se basa en varias sustituciones, permutaciones y transformaciones lineales, ejecutadas en bloques de datos de 16 bytes.
Estas operaciones se repiten varias veces, llamadas "rondas“. Basado en esta estructura de bloque de AES, el cambio de un solo bit, ya sea en la clave, o en los bloques de texto simple y claro, resulta en un bloque de texto cifrado/encriptado completamente diferente.
El AES utiliza una estructura de bucle para realizar repetidamente reordenamientos de datos, o permutaciones. El bucle reemplaza una unidad de datos con otra para datos de entrada. La rutina de cifrado utiliza la misma clave para cifrar y descifrar los datos, y aplica esa clave a los bloques de datos de longitud fija.
Ejemplo en una base de datos:
No hay comentarios:
Publicar un comentario