RC5 tiene tamaño variable
de bloques (32, 64 o 128
bits), con tamaño de clave
(entre 0 y 2040 bits) y
número de vueltas (entre 0
y 255). La combinación
sugerida originalmente era:
bloques de 64 bits, claves
de 128 bits y 12 vueltas.
IDEA.- International Data Encryption
Algorith
•
En criptografía, International Data
Encryption Algorithm o IDEA (del
inglés, algoritmo internacional de
cifrado de datos) es un cifrador por
bloques diseñado por Xuejia Lai y
James L. Massey de la Escuela
Politécnica Federal de Zúrich y
descrito por primera vez en 1991.
Fue un algoritmo propuesto como
reemplazo del DES (Data Encryption
Standard) . IDEA fue una revisión
menor de PES (Proposed Encryption
Standard, del inglés Estándar de
Cifrado Propuesto), un algoritmo de
cifrado anterior. Originalmente IDEA
había sido llamado IPES (Improved
PES, del inglés PES Mejorado).
•
•
•
•
•
•
•
•
•
•
•
•
•
IDEA opera con bloques de 64 bits usando una clave de 128 bits y consiste de ocho
transformaciones idénticas (cada una llamada un ronda) y una transformación de salida (llamada
media ronda). El proceso para cifrar y descifrar es similar. Gran parte de la seguridad de IDEA deriva
del intercalado de operaciones de distintos grupos — adición y multiplicación modular y Oexclusivo (XOR) bit a bit — que son algebraicamente "incompatibles" en cierta forma.
IDEA utiliza tres operaciones en su proceso con las cuales logra la confusión, se realizan con grupos
de 16 bits y son:
Operación O-exclusiva (XOR) bit a bit (indicada con un ⊕ azul)
Suma módulo 216 (indicada con un verde)
Multiplicación módulo 216+1, donde la palabra nula (0x0000) se interpreta como 216 (indicada con
un rojo)
(216 = 65536; 216+1 = 65537, que es primo)
Después de realizar 8 rondas completas viene una 'media ronda'
Este algoritmo presenta, a primera vista, diferencias notables con el DES, que lo hacen más
atractivo:
El espacio de claves es mucho más grande: 2128 ≈ 3.4 x 1038
Todas las operaciones son algebraicas
No hay operaciones a nivel bit, facilitando su programación en alto nivel
Es más eficiente que los algoritmos de tipo Feistel, porque a cada vuelta se modifican todos los bits
de bloque y no solamente la mitad.
Se pueden utilizar todos los modos de operación definidos para el DES
CAST
•
•
CAST-128 es un cifrador de 12 o 16 rondas
que se basa en la red de Feistel con bloques
de 64 bits y tamaños de clave entre 40 y 128
bits (pero con solo incrementos de 8 bits). Las
16 rondas completas se usan cuando la clave
tiene un tamaño mayor de 80 bits. Incluye
unas largas S-Boxes de 8x32 bits basadas en
funciones bent, rotaciones dependientes de
clave, adición y sustracción modular y
operaciones XOR. Hay tres tipos alternativos
de funciones de ronda, pero son de
estructura similar y se diferencian sólo en la
elección del tipo exacto de operación (XOR,
adición o sustracción) en varios puntos.
CAST, CAST-128 está disponible globalmente
con licencias para usos comerciales y no
comerciales libres de regalías.
Blowfish
Blowfish codificador de bloques simétricos,
diseñado por Bruce Schneier en 1993 e incluido
en un gran número de conjuntos de codificadores
y productos de cifrado. Usa bloques de 64 bits
y claves que van desde los 32 bits hasta 448
bits. Es un codificador de 16 rondas Feistel y
usa llaves que dependen de las Cajas-S.
Tiene una estructura similar a CAST-128, el
cual usa Cajas-S fijas.
El diagrama muestra la acción de Blowfish.
Cada línea representa 32 bits. El algoritmo
guarda 2 arrays de subclaves: El array P de
18 entradas y 4 cajas-S de 256 entradas.
Una entrada del array P es usada cada
ronda, después de la ronda final, a cada
mitad del bloque de datos se le aplica un
XOR con uno de las 2 entradas del array P
que no han sido utilizadas.
La función divide las entrada de 32 bits en 4
bloques de 8 bits, y usa los bloques como
entradas para las cajas-S. Las salidas deben
estar en módulo 232 y se les aplica un XOR
para producir la salida final de 32 bits
Descargar

Diapositiva 1