Cadena de hash

Una cadena de hash  es el resultado de aplicar secuencialmente una función hash criptográfica a una determinada cadena. En seguridad informática, se utiliza una cadena hash para replicar muchas contraseñas de un solo uso a partir de una sola clave o contraseña . Las cadenas hash se utilizan para implementar el no repudio aplicando datos para registrar el historial de su existencia.

Definición

Una cadena de hash  es el resultado de aplicar secuencialmente una función hash criptográfica a una cadena .

Por ejemplo,

da una cadena hash de longitud 4, que a menudo se denota como

Aplicaciones

Lamport [1] sugirió usar cadenas hash como un esquema de protección de contraseña en un entorno inseguro. El servidor que necesita proporcionar autenticación puede almacenar una cadena hash en lugar de la contraseña de texto sin formato , lo que evita que la contraseña sea robada durante la transmisión al servidor o directamente desde el servidor. Por ejemplo, el servidor comienza almacenando un registro proporcionado por el usuario. Cuando un usuario desea autenticarse, envía una cadena al servidor . El servidor evalúa la cadena y verifica que coincida con el registro almacenado en el servidor. Luego, el servidor almacena el registro para una autenticación posterior.

Un atacante que haya interceptado no podrá reproducir y transmitir al servidor el inicio de la cadena al acceder al servidor, ya que el servidor ahora está esperando . Debido a la propiedad de irreversibilidad de las funciones hash criptográficas, un atacante no podrá revertir la función hash y obtener el comienzo de la cadena. En este ejemplo, el usuario puede autenticarse 1000 veces antes de que se agote la cadena. Cada vez que el valor del hash transmitido es diferente, la intercepción de un hash no permitirá la reautenticación.

Cadenas hash binarias

Las cadenas hash binarias se usan comúnmente junto con los árboles hash . Una cadena hash binaria toma los valores de un par de hash como entrada, los une y aplica una función hash a la cadena resultante, produciendo así un tercer hash.

El diagrama muestra un árbol hash que consta de 8 nodos de hoja y una cadena hash para la tercera hoja. Para reconstruir una cadena hash, además de los propios valores hash, debe conocer el orden de concatenación (izquierda o derecha, 1 o 0).

Véase también

Notas

  1. L. Lamport, "Autenticación de contraseña con comunicación insegura", Comunicaciones de ACM 24.11 (noviembre de 1981), págs. 770-772. [1] [2]