Esempio di codice Python che calcola l'hash di un file con l'algoritmo sha256 e lo confronta con una stringa data

Autore:[Antonio Gallonetto]

Calcolare l’hash di un file è particolarmente utile per verificarne l’integrità. Se sappiamo quale dovrebbe essere il suo valore hash e andiamo a calcolarlo, nel caso nel quale i valori non corrispondano sappiamo che il file è stato modificato.

L’algoritmo sha256 è tra i più diffusi.

Un esempio di un piccolo programma in Python che verifica l’integrità di un file attraverso questo algoritmo può essere il seguente

import hashlib
from pathlib import Path
fileToCalcHash = input("Inserisci nome del file da calcolare l'hash sha256: ")
fileToCalcHash=fileToCalcHash.rstrip()
pFile = Path(fileToCalcHash)
pFile=pFile.absolute()
calc_string = input("Inserisci l'hash da verificare: ")
with open(pFile,"rb") as f:
    myFileRead = f.read()
    calc_hash = hashlib.sha256(myFileRead).hexdigest();
if calc_hash.upper()==calc_string.upper():
	print("L'hash calcolato e quello inserito sono uguali")
else:
	print("L'hash inserito e quello del file non corrisponde")
        
print("Esecuzione Terminata")

La spiegazione del sorgente è la seguente: