rainbow online example cryptographic chart security hash cryptography

security - online - ¿Cuál es la diferencia entre hash salado y noncing?



sha1 (3)

He leído sobre estos dos temas, y parece que no puedo comprender la diferencia entre los hash de salazón y de no-curación.


Una sal es un valor aleatorio no secreto que se utiliza para garantizar que el mismo texto sin formato no coincida sistemáticamente con el mismo valor de salida; se usa para prevenir ataques de precomputación como Rainbow Tables .

Un nonce ("número usado una vez") es un valor, típicamente generado aleatoriamente, asociado a un mensaje en un esquema criptográfico, y debe ser único dentro de un alcance específico (como un intervalo de tiempo dado o una sesión). Normalmente se usa para prevenir ataques de repetición .

Nonces y las sales son similares y sirven para fines relacionados, pero no son idénticos. Ambos son típicamente generados aleatoriamente, no son secretos, y sirven para prevenir ataques que de otro modo serían posibles contra el sistema. Se diferencian principalmente en el contexto en el que se usan y en las consecuencias de las repeticiones: una sal duplicada no es importante, pero una combinación duplicada puede tener consecuencias nefastas.


nonce = número utilizado una vez. Si generas una sal única para cada bit de datos que has hashing, entonces es esencialmente un nonce también.


Hashing es un proceso de una sola vía a diferencia del cifrado (utilizando una clave que podemos descifrar). El tamaño fijo y los ligeros cambios en los datos producen un valor hash completamente nuevo. Es como una huella digital. Ejemplo: MD5, MD6, SHA-1, SHA-2, etc.

El almacenamiento de la contraseña en la base de datos con formato hash tampoco es seguro con las tablas Rainbow, los ataques de diccionario y la fuerza bruta (las GPU pueden calcular miles de millones de hash por segundo). Para evitar estos problemas, necesitamos usar Salt .

Se usa un Sal (número aleatorio) para que la misma contraseña no siempre genere la misma clave. es decir, simplemente se agrega una sal para hacer que una contraseña común sea poco común.

A Salt es algo que agregamos a nuestro hash para evitar los ataques de arcoíris utilizando tablas rainbow que básicamente son tablas de búsqueda enormes que convierten hash en contraseñas de la siguiente manera:

dffsa32fddf23safd -> passwordscrete f32ksd4343fdsafsj ->

Así que los piratas informáticos pueden encontrar esta tabla arcoiris, para evitar este problema debemos almacenar el hash con la combinación de contraseña y sal.

hash= hashFunction(passowrd+salt)

Un Nonce ( N umber usado una sola vez ) no necesita ser secreto o aleatorio, pero no debe reutilizarse con la misma clave. Esto se usa para prevenir ataques de reproducción (también conocido como ataque de reproducción).