stringtranslate.com

Cadena hash

Una cadena hash es la aplicación sucesiva de una función hash criptográfica a un fragmento de datos. En seguridad informática , una cadena hash es un método utilizado para producir muchas claves de un solo uso a partir de una única clave o contraseña . Para el no repudio , una función hash se puede aplicar sucesivamente a fragmentos adicionales de datos para registrar la cronología de la existencia de los datos.

Definición

Una cadena hash es una aplicación sucesiva de una función hash criptográfica a una cadena .

Por ejemplo,

da una cadena hash de longitud 4, a menudo denotada

Aplicaciones

Leslie Lamport [1] sugirió el uso de cadenas hash como un esquema de protección de contraseñas en un entorno inseguro. Un servidor que necesita proporcionar autenticación puede almacenar una cadena hash en lugar de una contraseña de texto simple y evitar el robo de la contraseña en la transmisión o el robo del servidor. Por ejemplo, un servidor comienza almacenando lo que proporciona el usuario. Cuando el usuario desea autenticarse, se lo proporciona al servidor. El servidor calcula y verifica que coincida con la cadena hash que ha almacenado. Luego, lo almacena para la próxima vez que el usuario desee autenticarse.

Un espía que vea que se ha comunicado con el servidor no podrá volver a transmitir la misma cadena hash al servidor para su autenticación , ya que el servidor ahora espera . Debido a la propiedad unidireccional de las funciones hash criptográficamente seguras , no es factible que el espía invierta la función hash y obtenga una parte anterior de la cadena hash. En este ejemplo, el usuario podría autenticarse 1000 veces antes de que se agotara la cadena hash. Cada vez, el valor hash es diferente y, por lo tanto, un atacante no puede duplicarlo.

Cadenas hash binarias

Las cadenas hash binarias se utilizan habitualmente en asociación con un árbol hash . Una cadena hash binaria toma dos valores hash como entradas, los concatena y aplica una función hash al resultado, produciendo así un tercer valor hash.

El diagrama anterior muestra un árbol hash que consta de ocho nodos de hoja y la cadena hash para el tercer nodo de hoja. Además de los valores hash en sí, el orden de concatenación (derecha o izquierda 1,0) o "bits de orden" son necesarios para completar la cadena hash.

Cadenas Winternitz

Las cadenas de Winternitz (también conocidas como cadenas de funciones [2] ) se utilizan en criptografía basada en hash . La cadena está parametrizada por elParámetro de Winternitz w(número de bits en un "dígito"d) yparámetro de seguridad n(número de bits en el valor hash, típicamente el doble de lafuerza de seguridad,[3]256 o 512). La cadena consiste envalores que son resultados de la aplicación repetida de unafunción de "cadena" unidireccionalFa una clave secretask:.La función de cadena se basa típicamente en unhash criptográfico, pero necesita ser parametrizada ("aleatorizada"[4]), por lo que implica pocas invocaciones del hash subyacente.[5]En el esquema de firma de Winternitz se utiliza una cadena para codificar un dígito delde mbits, por lo que la firma de Winternitz utiliza aproximadamentebits, su cálculo toma alrededor deaplicaciones de la función F.[3]Nótese que algunos estándares de firma (como el esquema de firma de Merkle extendido, XMSS) definenwcomo el número de valores posibles en un dígito, por lo queen XMSS corresponde aestándares (como la Firma Leighton-Micali, LMS) que definenwde la misma manera que arriba - como un número de bits en el dígito.[6]

Cadena hash vs. blockchain

Una cadena hash es similar a una cadena de bloques , ya que ambas utilizan una función hash criptográfica para crear un vínculo entre dos nodos. Sin embargo, una cadena de bloques (como la que utilizan Bitcoin y sistemas relacionados) generalmente está destinada a respaldar un acuerdo distribuido en torno a un libro de contabilidad público (datos) e incorpora un conjunto de reglas para la encapsulación de datos y los permisos de datos asociados.

Véase también

Referencias

  1. ^ L. Lamport, “Autenticación de contraseñas con comunicación insegura”, Communications of the ACM 24.11 (noviembre de 1981), pp 770-772. [1]
  2. ^ Hülsing 2013b, págs. 18-20.
  3. ^ ab Buchmann et al. 2011, pág. 2.
  4. ^ Hülsing 2013b.
  5. ^ RFC  8391
  6. ^ NIST SP 800-208, Recomendación para esquemas de firma basados ​​en hash con estado, pág. 5

Fuentes