5 dic. 2012

Habemus SHA-3

La competición para seleccionar el algoritmo criptográfico de hash para reemplazar a SHA-1 y a SHA-2 ha finalizado con la elección oficial por parte del equipo NIST (National Institute of Standards and Technology) de Keccak (pronunciado"catch-ack")como el nuevo algoritmo SHA-3.

Tras seis años de proceso, se ha tomado una decisión y el algoritmo Keccak ha sido elegido como el nuevo SHA-3. Keccak es obra de Guido Bertoni, Joan Daemen, Michaël Peeter y Gilles Van Assche trabajadores de STMicroelectronics y NXP Semiconductors. Este algoritmo está basado en la presentación "On the Indifferentiability of the Sponge Construction" brindada por estos tres criptografos en en 2008 en EUROCRYPT 2008.

Las razones de la elección de este algoritmo por parte del NIST es debido a "su elegante diseño y su capacidad de funcionar correctamente en muchos y diferentes dispositivos".

El algoritmo Keccak, se basa en el término criptográfico de construcción de esponja, en este caso Keccak a partir de una entrada con longitud variable, le aplica una función F y obtiene como resultado una salida de longitud variable basado en una permutación de longitud determinada f operando en un número fijo b de bits (width). Este número de bits se obtiene de la suma de un valor r (bitrate) y de un valor c (capacity) es decir b=r+c.

El algoritmo funciona de la siguiente manera, inicialmente la cadena de entrada es rellenada con bits extras para enmascarar el mensaje inicial y dividida en bloques de bits de longitud r. Entonces los b bits de estado son inicializados a 0, momento en el cual se inicia la "construcción de esponja" en dos fases "absorbing" y "squeezing".

En la fase "absorbing", a los bloques de entrada de longitud r-bits se les aplica un XOR a los primeros r bits del estado, alternándose con la función f. Cuando todos los bloques han sido procesados, se pasa a la siguiente fase.
Llegados a la fase "squeezing", los primeros r bits del estado son devueltos como bloques de salida, alternándose con ejecuciones de la función f. El número de bloques de salida es seleccionado por el usuario.

Los últimos c bits del estado no son nunca afectados por los bloques de entrada y no resultan en la salida durante la segunda fase.
En apariencia y sin haber estudiado a fondo el algoritmo sin duda resulta impresionante y esperemos que su elección como SHA-3 se demuestre con el tiempo y su solidez como una decisión acertada.

Fuente: Cyberseguridad

0 comentarios:

Publicar un comentario

Gracias por dejar un comentario en Segu-Info
Si vas a dejar una consulta, procura tener habilitado tu perfil en Blogger o deja una forma de contacto.

Gracias por comentar!