En criptografía , SAFER ( Secure and Fast Encryption Routine ) es el nombre de una familia de cifradores de bloques diseñados principalmente por James Massey (uno de los diseñadores de IDEA ) para Cylink Corporation. Su primera variante se publicó en 1993, y otras variantes se publicaron hasta aproximadamente el año 2000. Los primeros diseños SAFER K y SAFER SK comparten la misma función de cifrado , pero difieren en el número de rondas y el esquema de claves . Las versiones más recientes , SAFER+ y SAFER++ , se presentaron como candidatas al proceso AES en 1998 y al proyecto NESSIE en 2000, respectivamente. Todos los algoritmos de la familia SAFER no están patentados y están disponibles para su uso sin restricciones.
SAFER K y SAFER SK

El primer cifrado SAFER fue SAFER K-64 , publicado por Massey en 1993, con un tamaño de bloque de 64 bits . La sigla "K-64" indica un tamaño de clave de 64 bits. Existía cierta demanda de una versión con una clave mayor de 128 bits , y al año siguiente Massey publicó una variante que incorporaba un nuevo esquema de clave diseñado por el Ministerio del Interior de Singapur : SAFER K-128 . Sin embargo, tanto Lars Knudsen como Sean Murphy encontraron pequeñas debilidades en esta versión, lo que impulsó un rediseño del esquema de clave sugerido por Knudsen; estas variantes se denominaron SAFER SK-64 y SAFER SK-128 respectivamente , donde "SK" significa "Esquema de clave reforzado", aunque las preguntas frecuentes de RSA informan que "un chiste dice que SK en realidad significa 'Detengan a Knudsen', una sabia precaución en el diseño de cualquier cifrado de bloques". [ 1 ] Se publicó otra variante con un tamaño de clave reducido, SAFER SK-40 , para cumplir con las restricciones de exportación de 40 bits .
Todos estos cifrados utilizan la misma función de ronda, que consta de cuatro etapas, como se muestra en el diagrama: una etapa de mezcla de claves, una capa de sustitución, otra etapa de mezcla de claves y, finalmente, una capa de difusión. En la primera etapa de mezcla de claves, el bloque de texto plano se divide en ocho segmentos de 8 bits, y se añaden subclaves mediante la suma módulo 256 (denotada por un "+" en un cuadrado) o XOR (denotada por un "+" en un círculo). La capa de sustitución consta de dos cajas S , cada una la inversa de la otra, derivadas de las funciones de exponenciación discreta (45 x ) y logaritmo (log 45 x ). Tras una segunda etapa de mezcla de claves, se encuentra la capa de difusión: un nuevo componente criptográfico denominado transformada pseudo-Hadamard ( PHT ). (La PHT también se utilizó posteriormente en el cifrado Twofish ).
SAFER+ y SAFER++
Existen dos miembros más recientes de la familia SAFER que han introducido cambios en la rutina de cifrado principal, diseñada por los criptógrafos armenios Gurgen Khachatrian (Universidad Americana de Armenia) y Melsik Kuregian en colaboración con Massey.
- SAFER+ (Massey et al., 1998) se presentó como candidato para el Estándar de Cifrado Avanzado y tiene un tamaño de bloque de 128 bits. El cifrado no fue seleccionado como finalista. Bluetooth utiliza algoritmos personalizados basados en SAFER+ para la derivación de claves (denominados E21 y E22) y la autenticación como códigos de autenticación de mensajes (denominados E1). El cifrado en Bluetooth no utiliza SAFER+. [ 2 ]
- SAFER++ (Massey et al., 2000) se presentó al proyecto NESSIE en dos versiones: una de 64 bits y otra de 128 bits.
Véase también
Referencias
- Alex Biryukov , Christophe De Cannière, Gustaf Dellkrantz: Criptoanálisis de SAFER++. CRYPTO 2003: 195-211
- Lars R. Knudsen : Un análisis detallado de SAFER K. J. Cryptology 13(4): 417-436 (2000)
- James L. Massey: SAFER K-64: Un algoritmo de cifrado por bloques orientado a bytes. Cifrado rápido de software 1993: 1-17
- James L. Massey: SAFER K-64: Un año después. Cifrado rápido de software 1994: 212-241
- James Massey, Gurgen Khachatrian, Melsik Kuregian, Nominación de SAFER+ como algoritmo candidato para el Estándar de Cifrado Avanzado (AES)
- Massey, JL, "Anuncio de un esquema de claves reforzado para el cifrado SAFER", 9 de septiembre de 1995.
- James Massey, Gurgen Khachatrian, Melsik Kuregian, "Nominación de SAFER++ como algoritmo candidato para los nuevos esquemas europeos de firmas, integridad y cifrado (NESSIE)", presentado en el Primer Taller Abierto de NESSIE, noviembre de 2000.
- Gurgen Khachatrian, Melsik Kuregian, Karen Ispiryan, James Massey, "Análisis diferencial del algoritmo SAFER++" – Segundo taller NESSIE, Egham, Reino Unido, 12-13 de septiembre de 2001.
- Lars R. Knudsen , Una debilidad en el esquema de claves de SAFER K-64. CRYPTO 1995: 274-286.
- Lars R. Knudsen , Thomas A. Berson , "Diferenciales truncados de SAFER". Cifrado rápido de software 1996: 15-26
- Nominación de SAFER+ como algoritmo candidato para el Estándar de Cifrado Avanzado (AES), documento presentado por Cylink Corporation al NIST, junio de 1998.
- Karen Ispiryan "Alguna familia de permutaciones de coordenadas para SAFER++" CSIT, 17-20 de septiembre de 2001, Ereván, Armenia
- ↑ "3.6.7 ¿Qué otros cifrados por bloques existen?", Preguntas frecuentes de RSA Laboratories sobre la criptografía actual, versión 4.1 , RSA Security, 2000
- ↑ Janssens, Sil (09-01-2005). Estudio preliminar: Seguridad Bluetooth (PDF) (Informe). Archivado del original (PDF) el 13-05-2005 . Recuperado el 27-02-2007 .
Enlaces externos
- Cifrados de 256 bits - Implementación de referencia SAFER y código derivado
- Descripción de SAFER+ por John Savard
- Descripción de SAFER K y SAFER SK por John Savard
- Entrada de SCAN para SAFER K
- Entrada de SCAN para SAFER SK
- La candidatura de SCAN para SAFER+
- Entrada de SCAN para SAFER++ (noviembre de 2000)
- Anuncio del nuevo calendario de turnos (SAFER SK)
- SAFER SK-128 en Common Lisp portátil
- Cifrados de bloques
