Cosa fa questo strumento
Calcola l'hash SHA-512 di qualsiasi testo o file nel tuo browser, restituendo un digest esadecimale di 128 caratteri. SHA-512 fa parte della famiglia SHA-2 (FIPS 180-4), progettata dalla NSA e pubblicata nel 2001 accanto a SHA-256. Produce un output a 512 bit e opera su parole 64 bit, il che gli dà un vantaggio di velocità misurabile su SHA-256 su CPU 64 bit quando si hashano grandi quantità di dati.
Quando SHA-512 è la scelta giusta
- Firme ad alta sicurezza. Alcuni regimi di conformità (NIST SP 800-131A tier di forza superiore, certi usi governativi) preferiscono o richiedono digest ≥384 bit. SHA-512 lo soddisfa.
- Integrità di file di grandi dimensioni. Su hardware 64 bit, SHA-512 è tipicamente 1,3–1,6× più veloce di SHA-256 per input di diversi gigabyte. La dimensione di digest più grande non danneggia; il throughput aiuta.
- Schemi di hashing di password che usano internamente SHA-512. Il formato
$6$dicrypt(3)è basato su SHA-512. Nota: quello schema non è un sostituto a bcrypt/Argon2 — è lento solo per il suo numero di iterazioni, non per la sua primitiva. - HMAC-SHA-512 per l'autenticazione di messaggio dove l'output più grande riduce le preoccupazioni sul birthday-bound a livello di costruzione di keying.
- Hash troncati tramite SHA-512/256 o SHA-512/224. Quando vuoi un output della dimensione di SHA-256 ma la velocità di SHA-512 su hardware 64 bit, le varianti di troncatura FIPS ti danno esattamente quello.
Quando preferire SHA-256
- Universalità. Ogni sistema accetta SHA-256; molti sistemi più vecchi o embedded non accettano SHA-512.
- La dimensione di output conta. Colonne di database, campi URL, fingerprint di certificati — SHA-256 è metà dei byte.
- Hardware 32 bit. SHA-256 è più veloce su CPU 32 bit e sulla maggior parte dei microcontroller; le operazioni su parole 64 bit di SHA-512 devono essere emulate.
Quando SHA-512 non è lo strumento giusto
- Archiviazione password. Usa bcrypt, scrypt o Argon2. SHA-512 da solo è troppo veloce — non importa che sia più grande; la CPU/GPU ne calcola ancora centinaia di milioni al secondo.
- Derivazione diretta di chiave da una password. Usa HKDF o PBKDF2-SHA-512, non SHA-512 nudo.
- MAC di un messaggio arbitrario. Usa HMAC-SHA-512. SHA-512 nudo di
key || messageè vulnerabile ad attacchi length-extension.
Vettori di test
Dalla suite di riferimento SHA-512:
- Stringa vuota
""→cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e "abc"→ddaf35a193617abacc417349ae20413112e6fa4e89a97ea20a9eeee64b55d39a2192992a274fc1a836ba3c23a3feebbd454d4423643ce80e2a9ac94fa54ca49f"abcdefghbcdefghicdefghijdefghijkefghijklfghijklmghijklmnhijklmnoijklmnopjklmnopqklmnopqrlmnopqrsmnopqrstnopqrstu"→8e959b75dae313da8cf4f72814fc143f8f7779c6eb9f7fa17299aeadb6889018501d289e4900f7e4331b99dec4b5433ac7d329eeb6dd26545e96e55b874be909
Note
Perché 128 caratteri? SHA-512 produce 512 bit = 64 byte = 128 caratteri hex. Il doppio della lunghezza visiva di un digest SHA-256.
Attacco length-extension — cos'è? Dato SHA-512(secret || message) e la lunghezza di secret, un attaccante può calcolare SHA-512(secret || message || padding || extension) senza conoscere secret. Per questo le costruzioni MAC naive non sono sicure; HMAC è stato progettato specificamente per evitarlo.
Perché il mio SHA-512 differisce da sha512sum? Newline finale. Stessa risposta degli altri algoritmi: echo -n o usa il selettore di file.
Strumenti correlati
- Generatore di hash — tutti e cinque gli hash affiancati
- SHA-256 — metà della dimensione di digest, stesso livello di sicurezza, più universalmente supportato
- SHA-1 — deprecato, tenuto per git e checksum legacy
- Base64 — codifica il digest binario per il trasporto