Calcolatrice del codice hash CRC-32
Pubblicato: 17 febbraio 2025 alle ore 18:11:29 UTC
Calcolatrice del codice hash che utilizza la funzione hash CRC-32 (Cyclic Redundancy Check 32 bit) per calcolare un codice hash in base all'input di testo o al caricamento di un file.CRC-32 Hash Code Calculator
Cyclic Redundancy Check (CRC) è un codice di rilevamento degli errori comunemente utilizzato per rilevare modifiche accidentali ai dati grezzi. Sebbene non sia tecnicamente una funzione hash crittografica, CRC-32 è spesso definito hash per la sua capacità di produrre un output di dimensione fissa (32 bit) da un input di lunghezza variabile.
Informazioni complete: non ho scritto l'implementazione specifica della funzione hash utilizzata in questa pagina. Si tratta di una funzione standard inclusa nel linguaggio di programmazione PHP. Ho solo creato l'interfaccia web per renderla pubblicamente disponibile qui per comodità.
Informazioni sull'algoritmo hash CRC-32
Non sono un matematico, ma proverò a spiegare questa funzione hash con una semplice analogia. A differenza di molte delle funzioni hash crittografiche, non è un algoritmo particolarmente complicato, quindi probabilmente andrà bene ;-)
Immagina di inviare una lettera per posta, ma temi che possa danneggiarsi prima di arrivare al destinatario. In base al contenuto della lettera, calcoli un checksum CRC-32 e lo scrivi sulla busta. Quando il destinatario riceve la lettera, può anche calcolare il checksum e vedere se corrisponde a quanto hai scritto. In caso affermativo, la lettera non è stata danneggiata o modificata durante il tragitto.
Il modo in cui CRC-32 lo fa è un processo in quattro fasi:
Passaggio 1: aggiungere un po' di spazio extra (imbottitura)
- Il CRC aggiunge un po' di spazio extra alla fine del messaggio (come quando si imballano le arachidi in una scatola).
- Ciò aiuta a individuare più facilmente gli errori.
Fase 2: Il righello magico (il polinomio)
- Il CRC-32 utilizza uno speciale "righello magico" per misurare i dati.
- Immagina questo righello come uno schema di rilievi e scanalature (questo è il polinomio, ma non preoccuparti di questa parola).
- Il "righello" più comune per CRC-32 è uno schema fisso.
Fase 3: Spostamento del righello (Processo di divisione)
- Ora CRC fa scorrere il righello sul messaggio.
- In ogni punto controlla se le protuberanze e le scanalature sono allineate.
- Se non sono allineati, il CRC ne prende nota (ciò avviene tramite un semplice XOR, ad esempio accendendo o spegnendo degli interruttori).
- Continua a far scorrere e a spostare gli interruttori finché non raggiunge la fine.
Fase 4: il risultato finale (il checksum)
- Dopo aver fatto scorrere il righello sull'intero messaggio, otterrai un piccolo numero (lungo 32 bit) che rappresenta i dati originali.
- Questo numero è come un'impronta digitale unica per il messaggio.
- Questo è il checksum CRC-32.
La versione presentata nella pagina è la funzione CRC-32 originale, che è quella da utilizzare per una migliore compatibilità con altri sistemi.
Ho anche delle calcolatrici per le altre varianti: