viernes, 2 de noviembre de 2007

Criptografía simétrica o de clave secreta

En la criptografía simétrica o de clave secreta se emplea la misma clave para cifrar y descifrar, con lo que sólo la pueden conocer los interlocutores. Por tanto, hemos de transmitir la clave o ponernos de acuerdo en ella.
Existen dos grandes bloques de cifradores simétricos, los cifradores flujo y los cifradores bloque.

Cifradores Flujo:
La transformación cambia. Partimos de una clave maestra (simétrica) y a partir de ella, generamos para cada instante de tiempo las claves adecuadas.
Con este tipo de sistemas disminuye la redundancia (regularidad del texto).
El cifrador Vernam puede considerarse un cifrador de flujo.
Existen dos tipos de cifradores flujo:

          • Cifrador Síncrono
          • Cifrador Autosincronizante
Los autosincronizantes resultan más interesantes porque no es necesario enviar la señal de sincronización en la transmisión. Su funcionamiento está basado en la generación cuidadosa de secuencias pseudoaleatorias mediante registros de desplazamiento LFSR, aprovechando la propiedad de que todos los LFSR cumplen las condiciones de Golomb siempre que utilicemos un polinomio primitivo (los cuales están tabulados).
Sin embargo todavía debemos ir más lejos y buscar la máxima complejidad lineal (cantidad de registros que necesita un LFSR para generar una secuencia), debido a que un cirador de flujo realizado con un LFSR con L registros, puede criptoanalizarse (romperse) conociendo sólo 2L bits de la secuencia pseudoaleatoria. Para ello es útil el algoritmo de Berlekamp-Massey.

Ejemplos de cifrado de flujo:
  • GSM ( A5/1 - A5/2 ):
    Se generan 2 flujos de información que transmportan voz y datos (información de control necesaria debida a que la potencia y el retardo son variables). Además se realiza un acceso múltiple, primero por división en frecuencia y después por división en el tiempo. La trama (114 bits) dura aproximadamente 4 ms.
    El algoritmo A8 es el encargado de generar los bits de la clave, partiendo de un valor que reside en el SIM del teléfono. Kc es en principio de 64bits, aunque se ha demostrado que no se usan 8; con lo cual nos queda una Kc de 56bits.Se emplean 3 LFSR que hay que inicializar con 100 golpes de reloj.
    El algoritmo A3 se encarga de la autenticación del móvil.
    El sistema funciona igual en ambos sentidos. En la estación base se genera un número aleatorio que se transmite en claro al teléfono móvil.
    El sistema de cifrado se basa en el criptosistema alemán comp128, puesto que A3 y A8 son implementaciones de éste..
    Como se puede comprobar por toda la información disponible, GSM se considera roto.
  • RC4:
    Se trata de un algoritmo de cifrado simétrico. Tiene una clave de longitud variable entre 1 y 256 octetos. Se trata de un generador pseudoaleatorio de bytes muy sencillo de implementar. Se realiza un intercambio de bytes que depende de la clave.
Cifradores Bloque:
La transformación que se hace al cifrar es siempre la misma, obtenemos el mismo texto cifrado frente al mismo texto en claro, puesto que la clave no cambia.
La robustez de estos sistemas radica en que es público el método empleado para la generación de el texto cifrado, pero no el por qué de su implementación concreta.

Ejemplos de cifrado bloque:
  • DES:
    Se rompió hace dos años por fuerza bruta con equipos creados expresamente para ello. En su lugar se emplea la variante 3DES que todavía se considera segura.
    El tamaño de bloque es de 64bits tanto para el texto en claro como para el cifrado, igual para el tamaño de clave.
    El algoritmo consta de 17 iteraciones.
    Modos de funcionamiento:
    • ECB - Electronic Code Book
    • CBC - Cipher Block Chaining
    • CFB - Cipher FeedBack
    • OFB - Output FeedBack: Requiere un vector de inicialización (IV)
    • PBC - Plaintext Block Chaining
    • PFB - Plaintext FeedBack
  • AES:
    Es el más empleado actualmente, siendo el sustituto habitual del DES. Está basado en el algoritmo Rijndael (son sus creadores).
    Las longitudes de la clave posibles para el sistema AES son 128, 192 y 512.

Existe un blog llamado "Apuntes de seguridad de la información" que trata sobre estos temas, centrando especialmente su atención en temas legislativos.

No hay comentarios: