Los hashes criptográficos se utilizan en la vida cotidiana, como en firmas digitales, códigos de autenticación de mensajes, detección de manipulación, huellas dactilares, sumas de verificación (verificación de integridad de mensajes), tablas hash, almacenamiento de contraseñas y mucho más. También se utilizan para enviar mensajes a través de la red por motivos de seguridad o almacenar mensajes en bases de datos.
Hay muchas funciones hash definidas en el hashlib biblioteca en Python. Este artículo trata sobre la explicación y el funcionamiento del hash MD5.
Esta función hash acepta una secuencia de bytes y devuelve valor hash de 128 bits , normalmente se utiliza para comprobar la integridad de los datos, pero tiene problemas de seguridad. Funciones asociadas:
- encode(): convierte la cadena en bytes para que sea aceptable mediante la función hash. digest(): Devuelve los datos codificados en formato de bytes. hexdigest(): Devuelve los datos codificados en formato hexadecimal.
Nota:
La biblioteca md5 era una biblioteca de Python que proporcionaba una interfaz sencilla para generar hashes MD5.
Esta biblioteca ha quedado obsoleta en favor de la biblioteca hashlib, que proporciona una interfaz más flexible y segura para generar hashes.
El siguiente código demuestra el funcionamiento del hash MD5 que acepta bytes y genera resultados como bytes.
Python3
personaje en cuerda
fuerza de limpieza de caché de npm
# Python 3 code to demonstrate the> # working of MD5 (byte - byte)> import> hashlib> # encoding techcodeview.com using md5 hash> # function> result> => hashlib.md5(b> 'techcodeview.com'> )> # printing the equivalent byte value.> print> ('The byte equivalent of> hash> is> : ', end> => '')> print> (result.digest())> |
powershell menor o igual a
>
>
Producción:
The byte equivalent of hash is : b'xf1xe0ix~xcetSx1dx11%Yx94hq'>
Explicación : El código anterior ocupa bytes y puede ser aceptado por la función hash. La función hash md5 lo codifica y luego, usando digest(), se imprime una cadena codificada equivalente en bytes.
El siguiente código demuestra cómo tomar una cadena como entrada y salida equivalente hexadecimal del valor codificado.
Python3
shreya ghoshal
# Python 3 code to demonstrate the> # working of MD5 (string - hexadecimal)> import> hashlib> # initializing string> str2hash> => 'techcodeview.com'> # encoding techcodeview.com using encode()> # then sending to md5()> result> => hashlib.md5(str2hash.encode())> # printing the equivalent hexadecimal value.> print> ('The hexadecimal equivalent of> hash> is> : ', end> => '')> print> (result.hexdigest())> |
mapa_desordenado c++
>
>
Producción:
The hexadecimal equivalent of hash is : f1e069787ece74531d112559945c6871>
Explicación : El código anterior toma una cadena y la convierte en el equivalente en bytes usando encode() para que pueda ser aceptada por la función hash. La función hash md5 lo codifica y luego, usando hexdigest(), se imprime una cadena codificada equivalente hexadecimal.