Sei sulla pagina 1di 3

Una función criptográfica Hash es un algoritmo matemático que transforma

cualquier bloque arbitrario de datos en una nueva serie de caracteres con una
longitud fija. Independientemente de la longitud de los datos de entrada, el valor
hash de salida tendrá siempre la misma longitud.
Según un generador online (onlinemd5.com) el hash
de la palabra Forense, calculado con SHA-1 es:
DA984D2A2EAA8ACF2289CCBC388C812EF21C97ED.
Ahora bien, si cambiamos la “F” mayúscula por una
“f” minúscula, veremos que el generador nos
arrojará un valor Hash completamente diferente:
12FCE1FCCE8913C12C37E925500AF2E03016289A.
Es de notar que ambos Hashes tienen 40 caracteres de longitud, lo cual no es
sorprendente dado que, en ambos casos, la entrada es de 7 caracteres. Sin embargo,
es aún más llamativo el hecho de que si intentamos con la frase “Computación
Forense utiliza técnicas científicas y analíticas especializadas” nos encontraremos
con que el nuevo valor Hash es: 7763D9B6D7BA36DCD90130F99670AC75FEC70A0C,
el cual también posee 40 caracteres.
Aquí hay una imagen, cortesía de
Wikimedia Commons, que ilustra
este concepto 

Ejemplos de funciones Hash


MD5
Es una función hash de 128 bits.
Como todas las funciones hash,
toma un texto o un archivo como
entrada, y arroja un valor de una longitud fija (128bits o 32 dígitos hexadecimales).
El algoritmo MD5 no sirve para cifrar un mensaje. La información original no se
puede recuperar ya que este algoritmo está no está diseñado para funcionar de
manera inversa. Es decir, su objetivo no es obtener la data original a partir de un
Hash. El uso de MD5 no es recomendable ya que es actualmente vulnerable.
SHA-1
Es parecido al famoso MD5, pero tiene un bloque de 160bits (40 dígitos
hexadecimales). La función de compresión es más compleja que la función de MD5,
por tanto, SHA-1 es más lento que MD5 porque el número de pasos son de 80 (64 en
MD5) y porque tiene mayor longitud que MD5 (160bits contra 128bits).
SHA-1 es más robusto y seguro que MD5, pero ya se han encontrado colisiones, por
tanto, actualmente esta función hash tampoco es segura utilizarla en la actualidad.
SHA-2
Las principales diferencias con SHA-1 radica en su diseño y que los rangos de salida
han sido incrementados. Dentro de SHA-2 encontramos varios tipos, el SHA-224,
SHA-256, SHA-384 y SHA-512. El más seguro, es el que mayor salida de bits tiene, el
SHA-512, que tiene 80 rondas (pasos), como el SHA-1 pero se diferencia de éste en:

 Tamaño de salida 512 por los 160 de SHA-1.


 Tamaño del bloque, tamaño de la palabra y tamaño interno que es el doble
que SHA-1.
Como ocurre con todos los cifrados y hash, cuanto más seguro, más lento su
procesamiento y uso, debemos encontrar un equilibrio entre seguridad y velocidad.

¿Para qué se utilizan los valores hash?


Los hashes criptográficos tienen una gran variedad
de usos, siendo el más común de todos el de las
contraseñas. Por ejemplo, si alguna vez olvidas tu
contraseña de algún sistema o servicio en línea,
probablemente tengas que resetearla. Cuando se
restablece una contraseña, por lo general no
recibes una clave en texto plano. Eso es debido a
que los servicio en línea no almacenan las contraseñas en texto plano, sino que lo
que almacenan es el valor hash de los caracteres que las conforman.
Para que quede claro, si recibes una contraseña en texto plano, quiere decir que el
servicio en línea que estás utilizando no está haciendo un hashing de tu contraseña.
Eso sería realmente vergonzoso.
Entonces, se pueden crear hash para contraseñas y archivos multimedia, pero ¿Para
qué otras cosas sirven las funciones criptográficas hash? Existe una muy usada en el
ambiente de Seguridad de Información y es que las empresas de antivirus utilizan las
funciones criptográficas hash para detectar malware.
Por otra parte, las funciones criptográficas hash se utilizan también para asegurar la
“integridad de los mensajes”. En pocas palabras, para estar seguros de que algunas
comunicaciones o archivos no fueron alterados de alguna forma, se pueden
examinar los hashes creados antes y después de la transmisión de los datos. Si los
dos valores hash son idénticos, significa que no ha habido ninguna alteración.

Requisitos que deben cumplir las funciones hash:


 Imposibilidad de obtener el texto original a partir de la huella digital.
 Imposibilidad de encontrar un conjunto de datos diferentes que tengan la
misma huella digital (aunque como hemos visto anteriormente es posible que
este requisito no se cumpla).
 Poder transformar un texto de longitud variable en una huella de tamaño fijo
(como el SHA-1 que es de 160bits).
 Facilidad de empleo e implementación.

Potrebbero piacerti anche