Consenso all'uso dei cookies

SITO1 -- SITO2 -- Forum1 -- CercaGlobale -- Informativa su Cookie e Privacy


Valutazione discussione:
  • 0 voto(i) - 0 media
  • 1
  • 2
  • 3
  • 4
  • 5
Checksum veloce da Terminale
#1
Mini guida rivolta essenzialmente ai principianti, che avevo fatto per amici, e mi piacerebbe condividere.

=== Note varie ===

Cos'è un checksum?
in breve: un controllo veloce di integrità di uno o più elementi/dati che siano rimasti inalterati anche dopo vari passaggi (magari online e via cloud).
Per la versione lunga, rimando a Wiki > https://it.wikipedia.org/wiki/Checksum
che fornisce una spiegazione più ottimale.

Calcolo di un singolo checksum:
Probabilmente arrivati a questo punto quasi tutti abbiamo avuto a che fare con un controllo di un singolo file, e molto probabilmente si tratta di un file tipo ISO.
Lo metto giusto per non saltare questo passaggio.

Dopo esserci portati nella directory di interesse in cui si trova il nostro file (nomefile.iso), ci apprestiamo a dare il comando di verifica, da Terminale:
Citazione:md5sum nomefile.iso

che darà un output tipo > XXXXXXXXXXXXXXXXXXXXXXXXXXXXX nomefile.iso
La parte relativa alle varie XXX ovviamente andrà confrontata con quello del file originale, che vi verrà fornito dal sito o da altre fonti.
Se si raffrontano gli hash online e quello in locale, e coincidono, siamo a cavallo; se ci sono discrepanze, allora o il download è andato storto oppure il file originale risulta corrotto (molto più improbabile).
Naturalmente "nomefile.iso" è solo il nome di esempio che andrà sostituito dopo quello da controllare.

Algoritmi: MD5 - SHA1 - SHA256 e gli altri "fratelli":
Naturalmente MD5 è solo uno dei tanti metodi di verifica delle copie, ne esistono tanti, e molto più sicuri, ma meno veloci soprattutto in presenza di una mole significativa di dati. Gli altri sono, per elenco: SHA1, SHA256, SHA384 e SHA512; naturalmente per il dare comando bisogna sempre aggiungere la "sum" finale, cosicchè si ha: "sha1sum nomefile" - "sha256sum nomefile" - etc...
Ovviamente, in crescendo di sicurezza, crescono anche i tempi di elaborazione e verifica, e pure la lunghezza delle stringhe atte alla verifica stessa.
Se per una controllata veloce in locale gli MD5 - SHA1 vanno più che benone, in determinati campi si usa una "certificazione" di controllo più robusta, ovvero non si scende mai sotto una verifica col SHA256.
Ci sono vari esempi sull'insicurezza dei due algoritmi MD5 - SHA1 e sulla facilità della loro compromissione, basti a tale scopo dare una googlata ("md5 non sicuro" o "md5 non sicuro").

Nota:
è possibile cambiare i controlli di tutti gli esempi sopra e sotto citati con quelli di nostra scelta; md5sum è stato scelto semplicemente perchè quello di uso più comune.


=== Creazioni di SUMs ===

Creazione di un *SUM per una specifica estensione:  (per estensione)
per una verifica di vari files, in una medesima directory.
Partiamo da una situazione in cui, in una data cartella, ho varie immagini (jpg, png, gif, etc), ma mi interessa creare una lista di controllo di sole immagini ".jpg".
Ci portiamo nella cartella desiderata (comando CD) e poi diamo:
Citazione:md5sum *.jpg > md5.txt

L'output ci consegnerà un file "md5.txt" con all'interno un numero preciso di file con estensione solo ".jpg". Attenzione che il resto viene scartato, quindi niente jpeg - png - gif - etc.
Il file "md5.txt" ovviamente si creerà nella cartella di destinazione, con all'interno la sequenza di nomifile.estensione (a destra) e il loro md5 (a sinistra).

Ovviamente per cambiare obiettivo (.jpg) basta cambiare estensione nella formula sopra.

Creazione di un *SUM per tutte le estensioni:  (tutti i files)
ossia controllo di massa che letteralmente va ad elencare tutti i files presenti nella directory, indipendentemente dalle estensioni.
Da Terminale:
Citazione:md5sum *.* > md5.txt

Anche questo output consegna un file tipo "md5.txt" nella directory medesima di controllo, ma a differenza di quella precedente elenca letteralmente il nome di tutti i files presenti con accanto lo specifico md5.


=== Verifica di SUMs ===

Verifica di un codice già prestampato/presente in forma di txt o meno: (metodo A)
Talvolta capita che i file di verifica siano già compilati e scaricabili, magari con la classica nomea di "md5.txt". Tenendo presente di aver nella stessa cartella sia il TXT che il file da verificare, da Terminale dai un:
Citazione:md5sum -c md5.txt | grep -v 'OK$'

Output: se al termine non viene stampato (a schermo del Terminale) nessun messaggio il file risulterà integro. In caso contrario verranno visualizzati messaggi di errore.
E' il metodo che meno mi piace, amando seguire per filo e per segno i resoconti, come nell'esempio sotto.

Verifica di un codice già prestampato/presente in forma di txt o meno: (metodo B)
il mio preferito.
In pratica è la versione diciamo "testuale" del risultato.
Da Terminale:
Citazione:md5sum -c md5.txt

Output: in pratica appena dato il comando, da Terminale inizia a scorrere un elenco di file con accanto un ": OK" se è corrispondente (quindi è integro) oppure viene segnalato con eventualità di errori.
Il metodo migliore, anche se più lungo da elaborare, ma ti permette di verificare sia il file controllato che accanto il suo esito.
Cita messaggio
Grazie da: esabatad , Marilù


Vai al forum:


Utenti che stanno guardando questa discussione: 1 Ospite(i)