Menu

Generatore di hash

Genera all'istante hash MD5, SHA-1, SHA-256, SHA-384 e SHA-512.

Di Nethanel Bar, Co-founder & CEO

Ultimo aggiornamento

Vuoi imparare a programmare sul serio?

Coddy ti insegna facendoti scrivere codice vero nel browser: lezioni interattive, feedback immediato e aiuto dall'AI quando ti blocchi.

Cos'è un generatore di hash?

Un generatore di hash calcola un *hash*, cioè un'impronta breve e di lunghezza fissa di un input. L'impronta cambia drasticamente anche per un solo carattere di differenza, per questo gli hash servono a verificare l'integrità dei file, a controllare se due valori sono uguali senza confrontarli per intero, a costruire sistemi indirizzati per contenuto (Git usa SHA-1/SHA-256) e come mattoni di protocolli di sicurezza più grandi.

Una buona funzione di hash crittografica ha tre proprietà: è *deterministica* (stesso input → stesso hash), *unidirezionale* (non puoi risalire all'input dall'hash) e *resistente alle collisioni* (è impraticabile trovare due input con lo stesso hash). Gli algoritmi moderni come SHA-256 e SHA-512 le soddisfano tutte e tre; quelli più vecchi come MD5 e SHA-1 sono *compromessi* e non vanno usati per confronti legati alla sicurezza.

L'hashing *non* è crittografia. La crittografia è reversibile con una chiave; l'hashing è unidirezionale per progettazione. L'hashing *non* è nemmeno un sistema per salvare le password: le password richiedono un *hash per password* come bcrypt, scrypt o Argon2, che rende di proposito costoso l'attacco a forza bruta.

Cosa imparerai generando hash

  • Una funzione di hash trasforma qualsiasi input, corto o lungo, in un output di lunghezza fissa (per esempio SHA-256 produce sempre 256 bit = 64 caratteri esadecimali).
  • Lo stesso input produce sempre lo stesso hash. Anche la modifica di un solo bit produce un hash completamente diverso (l'*effetto valanga*).
  • MD5 e SHA-1 non sono più resistenti alle collisioni: vanno bene per checksum non legati alla sicurezza, ma non per firme, certificati o qualsiasi cosa che riguardi la fiducia.
  • Non salvare le password con un semplice SHA-256. Usa un hash per password (bcrypt, scrypt, Argon2) che include un salt ed è volutamente lento.

Come generare un hash passo dopo passo

  1. Incolla il tuo input

    Incolla qualsiasi testo: una stringa, un frammento JSON, una chiave di licenza. L'hash si aggiorna mentre scrivi.

  2. Scegli l'algoritmo

    Scegli MD5, SHA-1, SHA-256, SHA-384 o SHA-512. SHA-256 è la scelta predefinita più sicura per checksum di uso generale.

  3. Leggi il risultato

    L'hash viene mostrato in esadecimale minuscolo. Passa al maiuscolo o copia il valore negli appunti.

  4. Confronta due hash se serve

    Incolla un hash noto (da una pagina di download, da un commit Git, da un file di checksum) e lo strumento ti dirà se il tuo corrisponde.

Riferimento rapido degli algoritmi di hash

Gli algoritmi che vedrai più spesso, con la dimensione dell'output e il livello di sicurezza attuale. SHA-1 è specificato nella RFC 3174; la famiglia SHA-2 è in NIST FIPS 180-4.

AlgoritmoDimensione outputStato / dove lo trovi
MD5128 bit / 32 caratteri hexCompromesso: va bene solo per checksum non di sicurezza
SHA-1160 bit / 40 caratteri hexCompromesso: solo cronologia Git e sistemi legacy
SHA-256256 bit / 64 caratteri hexStandard: TLS, Git moderno, blockchain
SHA-384384 bit / 96 caratteri hexUsato nelle suite TLS che preferiscono la famiglia SHA-2
SHA-512512 bit / 128 caratteri hexRobusto: a volte più veloce di SHA-256 su hardware a 64 bit
bcrypt / scrypt / Argon2variabileHash per *password*: usa questi per le password, non SHA-x

Esempi di hash da provare

Stesso algoritmo, piccola modifica all'input

Input A

hello world

SHA-256(A)

b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9

Input B

Hello world

SHA-256(B)

4ae7c3b6ac0beff671efa8cf57386151c06e58ca53a78d83f36107316cec125f

Una sola lettera maiuscola cambia completamente l'hash. È l'*effetto valanga*, la proprietà che rende gli hash utili per rilevare le modifiche.

Verificare il checksum di un download

Checksum pubblicato
SHA256: 3a7bd3e2360a3d290dd0b1aef6a04e9b… ubuntu.iso
Procedura

Calcola lo SHA-256 del file che hai scaricato e confrontalo con il valore dell'editore. Se corrispondono, il file non si è corrotto durante il trasferimento e non è stato manomesso.

I download di immagini di sistemi operativi, runtime di linguaggi e release firmate pubblicano di solito uno SHA-256 accanto al file. Controllalo sempre prima di installare.

MD5 per la deduplicazione non legata alla sicurezza

Input

user@example.com

MD5

b58996c504c5638798eb6b511e6f49af

Gravatar usa MD5(email) come chiave dell'avatar. Per questo MD5 va bene, perché è un identificativo non segreto, ma non usarlo mai dove contano le collisioni o gli attacchi di preimmagine.

Errori comuni con gli hash

  • Salvare le password degli utenti con un semplice SHA-256. Usa un hash per password (bcrypt, scrypt, Argon2) con un salt per ogni utente e un fattore di costo voluto.
  • Fidarsi di MD5 o SHA-1 per confronti legati alla sicurezza nel 2026. Sono entrambi compromessi: calcolare collisioni è ormai alla portata di tutti.
  • Confrontare un hash esadecimale con == dopo aver modificato una delle stringhe. Togli gli spazi e uniforma maiuscole e minuscole prima del confronto.
  • Dimenticare che lo stesso input produce *sempre* lo stesso hash: è proprio questo il punto. Non fare "hash due volte" aspettandoti più casualità; otterrai solo un secondo hash deterministico.
  • Usare un hash quando in realtà serve la crittografia. Gli hash sono unidirezionali e non si possono invertire.

Domande frequenti sul generatore di hash

Cos'è una funzione di hash?
Una funzione di hash prende un input di qualsiasi lunghezza e produce un output di lunghezza fissa chiamato hash. Lo stesso input produce sempre lo stesso hash; anche una minima modifica all'input produce un hash completamente diverso.
MD5 è ancora sicuro da usare?
MD5 è compromesso per gli scopi crittografici: trovare collisioni è facile. Resta accettabile per checksum non legati alla sicurezza (deduplicazione di file, chiavi di cache, Gravatar) ma mai per firme, certificati o salvataggio di password.
Che differenza c'è tra SHA-256 e SHA-512?
Fanno entrambi parte della famiglia SHA-2. SHA-256 produce un output di 256 bit; SHA-512 un output di 512 bit. SHA-512 può essere addirittura più veloce su hardware a 64 bit. Oggi SHA-256 è la scelta predefinita più comune nei protocolli.
Come faccio l'hash di una password?
Non usare direttamente SHA-256. Usa un hash per password pensato apposta, bcrypt, scrypt o Argon2, con un salt per ogni utente e un fattore di costo regolabile. Sono volutamente lenti per rendere costosi gli attacchi a forza bruta.
Posso invertire un hash?
No, le funzioni di hash sono unidirezionali per progettazione. L'unico modo per recuperare l'originale è provare input e controllare se il loro hash corrisponde. Ecco perché salt e hashing lento sono importanti per le password.
Questi hash vengono generati in locale?
Sì. Il generatore di hash di Coddy usa la Web Crypto API nel tuo browser. Il tuo input non lascia mai il tuo computer.

Scopri di più

Altri strumenti per sviluppatori

Illustrazione dei linguaggi di programmazione di Coddy

Impara a programmare con Coddy

INIZIA