Escribe para buscar…

Hash

Esta página todavía no se ha traducido — se muestra en su idioma original:Català

Introducció

Farem servir el mòdul integrat hashlib per utilitzar diferents algorismes de hash a Python.

Comencem:

uv init hash

Ús

Hi ha un mètode constructor amb nom per a cada tipus de hash.

Tots retornen un objecte hash amb la mateixa interfície senzilla.

Per exemple, utilitza sha256() per crear un objecte de hash SHA-256. Ara pots alimentar aquest objecte amb valors de tipus bytes (normalment bytes) fent servir el mètode update.

En qualsevol moment li pots demanar el resum (digest) de la concatenació de les dades que li hagis passat fins ara amb els mètodes digest() o hexdigest().

python
import hashlib

m = hashlib.sha256()
m.update(b"El ")
m.update(b"Gattopardo")

print(m.digest())
print(m.hexdigest())

Per permetre el multithreading, el GIL de Python s’allibera mentre es calcula un hash al qual se li passen més de 2047 bytes de dades d’una sola vegada en el constructor o en el mètode .update.

El resultat és:

b'\x13\xdc\x9c3\xedc\xbe\x86\xd3\x9f\x99\xd8\xac\x1d\xb9=\xf6"\x13\x80\xbf\\K\x923\x8a\x8ee\xb6\x86BL'
13dc9c33ed63be86d39f99d8ac1db93df6221380bf5c4b92338a8e65b686424c

És el mateix resultat que tenim amb OpenSSL:

shell
echo -n "El Gattopardo" | openssl dgst -sha256
SHA2-256(stdin)= 13dc9c33ed63be86d39f99d8ac1db93df6221380bf5c4b92338a8e65b686424c

Estás leyendo una vista previa.

Inicia sesión con Google para leer la página completa. Una cuenta de Google incluye 5 páginas gratuitas en total; el alumnado y el profesorado leen las páginas de su curso sin límite.

Iniciar sesión