Generatore Hash SHA-512

Genera hash SHA-512 da qualsiasi testo

Testo di input

Esegue in locale · Sicuro per incollare segreti

Hash SHA-512

L'hash SHA-512 apparirà qui…

Cos'è l'Hashing SHA-512?

SHA-512 è una funzione hash crittografica definita nel NIST FIPS 180-4 come membro più grande della famiglia SHA-2. Accetta un input di lunghezza arbitraria e produce un message digest fisso a 512 bit (64 byte), visualizzato come stringa esadecimale di 128 caratteri. SHA-512 è utilizzato nelle firme digitali (Ed25519 usa SHA-512 internamente), nelle costruzioni HMAC, nella verifica dell'integrità dei file e nei protocolli crittografici che beneficiano di un ampio margine di sicurezza.

SHA-512 opera su blocchi da 1024 bit (128 byte) usando aritmetica a 64 bit e 80 round di compressione. I suoi otto valori hash iniziali derivano dalle parti frazionarie delle radici quadrate dei primi otto numeri primi, e le 80 costanti di round provengono dalle radici cubiche dei primi 80 numeri primi. Poiché utilizza operazioni native a 64 bit, SHA-512 è spesso più veloce di SHA-256 sui moderni processori a 64 bit, nonostante produca un digest più lungo.

SHA-384, SHA-512/224 e SHA-512/256 sono varianti troncate di SHA-512 che condividono la stessa struttura interna ma usano diversi valori hash iniziali e producono meno bit. Quando hai bisogno della massima lunghezza di digest offerta dalla famiglia SHA-2, o quando un protocollo impone specificatamente SHA-512 (come Ed25519 o certi schemi HMAC di derivazione delle chiavi), SHA-512 è la scelta corretta. Offre 256 bit di resistenza alle collisioni, in linea con SHA-3-512 e ben oltre i 128 bit di SHA-256.

Perché Usare un Generatore SHA-512 Online?

Calcolare un hash SHA-512 richiede di solito un comando da terminale o qualche riga di codice. Questo strumento basato su browser ti permette di generare digest SHA-512 istantaneamente senza installare software, passare al terminale o scrivere script usa e getta.

Calcolo istantaneo nel browser
Incolla o digita qualsiasi testo e ottieni subito l'hash SHA-512 completo di 128 caratteri. La Web Crypto API gestisce il calcolo in modo nativo, senza overhead di librerie JavaScript.
🔒
Hashing con privacy garantita
Il tuo input non lascia mai il tuo dispositivo. Tutto l'hashing viene eseguito localmente tramite la Web Crypto API integrata nel browser. Nessun dato viene trasmesso a server, registrato o conservato.
📋
Formati di output pronti alla copia
Ottieni l'hash SHA-512 in formato esadecimale minuscolo o maiuscolo con un clic. Utile quando devi confrontare checksum da gestori di pacchetti, manifesti SBOM o documentazione di sicurezza.
🔍
Nessun account o installazione
Funziona in qualsiasi browser moderno — Chrome, Firefox, Safari, Edge. Nessuna registrazione, nessuna estensione, nessuna configurazione CLI richiesta. Apri la pagina e inizia a generare hash.

Casi d'Uso del Generatore Hash SHA-512

Frontend Developer — Debug delle Firme Ed25519
Ed25519 usa SHA-512 internamente per derivare la chiave di firma e calcolare i digest dei messaggi. Genera hash SHA-512 di payload di test per verificare i valori intermedi durante l'implementazione o il debug di flussi di firma Ed25519.
Backend Engineer — Validazione HMAC-SHA512
I sistemi webhook e gli schemi di autenticazione API (OAuth 1.0a, alcuni gateway di pagamento) usano HMAC-SHA512 per la firma dei messaggi. Calcola hash SHA-512 di riferimento per verificare la tua implementazione HMAC durante lo sviluppo.
DevOps — Verifica di Artefatti e Binari
Verifica i checksum SHA-512 di binari scaricati, immagini container o firmware prima di distribuirli in produzione. Molte distribuzioni Linux forniscono checksum SHA-512 insieme alle loro immagini ISO.
QA Engineer — Validazione dei Vettori di Test FIPS 180-4
Confronta gli output SHA-512 con i vettori di test NIST del Cryptographic Algorithm Validation Program (CAVP) per confermare che la tua implementazione di hashing gestisca correttamente il padding e i casi limite.
Data Engineer — Fingerprinting di Chiavi di Grandi Dimensioni
Genera hash di chiavi composite o payload di record di grandi dimensioni con SHA-512 per creare fingerprint deterministici per la deduplicazione in pipeline di dati. L'output a 512 bit minimizza il rischio di collisioni anche su miliardi di record.
Studente — Esplorare l'Effetto Valanga
Modifica un singolo carattere nell'input e osserva come l'intero output SHA-512 di 128 caratteri cambia in modo imprevedibile. Questo dimostra la proprietà valanga che rende le funzioni hash utili in crittografia.

Confronto delle Varianti della Famiglia SHA-2

SHA-512 appartiene alla famiglia SHA-2 definita in FIPS 180-4. La tabella seguente confronta le varianti SHA-2 che condividono l'architettura interna a 64 bit di SHA-512, insieme a SHA-256 come riferimento.

VarianteDimensione DigestLunghezza HexDimensione ByteIdeale Per
SHA-256256 bits64 hex chars32 bytesTLS certificates, blockchain, JWTs, SRI
SHA-384384 bits96 hex chars48 bytesTLS 1.3 CertificateVerify, CNSA/Suite B
SHA-512512 bits128 hex chars64 bytesDigital signatures, HMAC, Ed25519, file integrity
SHA-512/224224 bits56 hex chars28 bytesSHA-512 speed on 64-bit CPUs, 224-bit output
SHA-512/256256 bits64 hex chars32 bytesSHA-512 speed on 64-bit CPUs, 256-bit output

SHA-512 vs SHA-256 vs SHA-384 vs SHA-3-512

La scelta dell'algoritmo hash dipende dai requisiti di sicurezza, dai vincoli di prestazioni e dalle specifiche del protocollo. SHA-512 offre il digest più ampio della famiglia SHA-2 ed è spesso più veloce di SHA-256 su hardware a 64 bit. Questo confronto copre le proprietà più rilevanti nella scelta tra questi algoritmi.

ProprietàSHA-512SHA-256SHA-384SHA-3-512
Digest size512 bits (128 hex)256 bits (64 hex)384 bits (96 hex)512 bits (128 hex)
Block size1024 bits512 bits1024 bits1600 bits (sponge)
Word size64 bits32 bits64 bitsN/A (sponge)
Rounds80648024
Collision resistance2^256 operations2^128 operations2^192 operations2^256 operations
Security statusSecureSecureSecureSecure
StandardFIPS 180-4FIPS 180-4FIPS 180-4FIPS 202
Web Crypto APIYesYesYesNo
64-bit optimizedYesNo (32-bit words)YesYes
Primary use todayEd25519, HMAC, file checksumsTLS, blockchain, SRITLS 1.3, CNSABackup standard

Come Funziona SHA-512 Internamente

SHA-512 elabora l'input attraverso una costruzione di Merkle–Damgård usando blocchi da 1024 bit. Inizializza otto parole di stato a 64 bit (H0–H7) dalle parti frazionarie delle radici quadrate dei primi otto numeri primi. Ogni blocco passa attraverso 80 round di mixing che usano operazioni bitwise (AND, XOR, NOT, rotazione destra, scorrimento a destra) su parole a 64 bit, combinate con 80 costanti di round derivate dalle radici cubiche dei primi 80 numeri primi.

Input: "hello world"
SHA-512: 309ecc489c12d6eb4cc40f50c902f2b4d0ed77ee511a7c7a9bcd3ca86d4cd86f
989dd35bc5ff499670da34255b45b0cfd830e81f605dcf7dc5542e93ae9cd76f
(512 bits = 64 bytes = 128 hex characters)
PassoDescrizione
PaddingAppend a 1-bit, then zeros until the message length is 896 mod 1024. Append the original length as a 128-bit big-endian integer.
Block splittingDivide the padded message into 1024-bit (128-byte) blocks.
Message scheduleExpand each 16-word (64-bit) block into 80 words using sigma functions with right-rotate and right-shift operations on 64-bit values.
CompressionProcess 80 rounds per block using Ch, Maj, and two Sigma functions with 80 round constants derived from the cube roots of the first 80 primes.
OutputConcatenate the eight 64-bit state words (H0–H7) into a 512-bit (64-byte) digest, rendered as 128 hexadecimal characters.

La dimensione delle parole a 64 bit è il differenziatore chiave rispetto a SHA-256. Sui processori a 64 bit, ogni operazione elabora il doppio dei bit per ciclo, motivo per cui SHA-512 supera spesso SHA-256 nei benchmark nonostante esegua 80 round invece di 64. L'effetto valanga garantisce che invertire un singolo bit nell'input modifichi circa il 50% di tutti i 512 bit di output.

Esempi di Codice SHA-512

SHA-512 è supportato nativamente in tutti i principali linguaggi e runtime. La Web Crypto API lo fornisce nei browser senza alcuna libreria. Gli esempi seguenti coprono i pattern più comuni, inclusa la gestione Unicode e l'hashing di file.

JavaScript (Web Crypto API)
// Works in all modern browsers and Node.js 18+
async function sha512(text) {
  const data = new TextEncoder().encode(text)
  const hashBuffer = await crypto.subtle.digest('SHA-512', data)
  const hashArray = Array.from(new Uint8Array(hashBuffer))
  return hashArray.map(b => b.toString(16).padStart(2, '0')).join('')
}

await sha512('hello world')
// → "309ecc489c12d6eb4cc40f50c902f2b4d0ed77ee511a7c7a9bcd3ca86d4cd86f989dd35bc5ff499670da34255b45b0cfd830e81f605dcf7dc5542e93ae9cd76f"

// Node.js (built-in crypto module)
const crypto = require('crypto')
crypto.createHash('sha512').update('hello world').digest('hex')
// → "309ecc489c12d6eb4cc40f50c902f2b4d0ed77ee511a7c7a9bcd3ca86d4cd86f989dd35bc5ff499670da34255b45b0cfd830e81f605dcf7dc5542e93ae9cd76f"
Python
import hashlib

# Basic SHA-512 hash
result = hashlib.sha512(b'hello world').hexdigest()
print(result)
# → "309ecc489c12d6eb4cc40f50c902f2b4d0ed77ee..."

# Hash a string with Unicode (encode to bytes first)
text = 'café ☕'
hashlib.sha512(text.encode('utf-8')).hexdigest()
# → 128-character hex string

# Hash a large file in chunks (memory-efficient)
with open('release.tar.gz', 'rb') as f:
    sha = hashlib.sha512()
    for chunk in iter(lambda: f.read(8192), b''):
        sha.update(chunk)
    print(sha.hexdigest())
Go
package main

import (
    "crypto/sha512"
    "fmt"
)

func main() {
    data := []byte("hello world")
    hash := sha512.Sum512(data)
    fmt.Printf("%x\n", hash)
    // → 309ecc489c12d6eb4cc40f50c902f2b4d0ed77ee511a7c7a9bcd3ca86d4cd86f...
}
CLI (Linux / macOS)
# Using sha512sum (Linux) or shasum (macOS)
echo -n "hello world" | sha512sum
# → 309ecc489c12d6eb4cc40f50c902f2b4d0ed77ee...  -

# macOS
echo -n "hello world" | shasum -a 512
# → 309ecc489c12d6eb4cc40f50c902f2b4d0ed77ee...  -

# Verify a file checksum
echo "309ecc48...  myfile.bin" | sha512sum -c
# → myfile.bin: OK

# Using openssl (cross-platform)
echo -n "hello world" | openssl dgst -sha512
# → SHA2-512(stdin)= 309ecc489c12d6eb4cc40f50c902f2b4...

Domande Frequenti

SHA-512 è più sicuro di SHA-256?
SHA-512 offre 256 bit di resistenza alle collisioni rispetto ai 128 bit di SHA-256, basandosi sul limite dell'attacco del compleanno pari alla metà della lunghezza del digest. Per la resistenza alla preimmagine, SHA-512 offre 512 bit contro 256 bit. Entrambi sono considerati sicuri contro tutti gli attacchi noti al 2026, ma SHA-512 fornisce un margine di sicurezza maggiore. In pratica, la resistenza alle collisioni a 128 bit di SHA-256 è già ben oltre ciò che è computazionalmente fattibile da violare.
SHA-512 è più lento di SHA-256?
Sui processori a 64 bit, SHA-512 è tipicamente più veloce di SHA-256 perché opera su parole a 64 bit native. Sui sistemi a 32 bit o embedded, SHA-512 è più lento perché ogni operazione a 64 bit deve essere emulata con più istruzioni a 32 bit. Per la maggior parte dei moderni processori desktop, server e mobile (tutti a 64 bit), SHA-512 offre un throughput uguale o superiore a SHA-256.
Qual è la differenza tra SHA-512 e SHA-512/256?
SHA-512/256 usa lo stesso algoritmo interno di SHA-512 (blocchi da 1024 bit, 80 round, parole a 64 bit) ma parte da valori hash iniziali diversi e tronca l'output a 256 bit. Questo ti offre la velocità di SHA-512 su hardware a 64 bit con un output delle dimensioni di SHA-256. SHA-512/256 resiste inoltre intrinsecamente agli attacchi di estensione della lunghezza perché la troncatura elimina lo stato interno di cui un attaccante avrebbe bisogno.
Perché Ed25519 usa SHA-512?
Lo schema di firma Ed25519 usa SHA-512 in due punti: prima per derivare lo scalare di firma a 256 bit e un prefisso nonce dal seed della chiave privata a 32 byte, poi per fare l'hash del messaggio durante la firma. SHA-512 è stato scelto perché fornisce un output a 512 bit divisibile in due metà da 256 bit, e le sue operazioni a 64 bit si allineano con l'aritmetica della curva a 255 bit di Curve25519.
SHA-512 può essere invertito per recuperare l'input originale?
No. SHA-512 è una funzione a senso unico con 512 bit di resistenza alla preimmagine. Non esiste un metodo noto per recuperare l'input più velocemente della ricerca a forza bruta su 2^512 possibilità, un numero maggiore degli atomi stimati nell'universo osservabile. Tuttavia, input brevi o prevedibili possono essere trovati usando attacchi a dizionario, motivo per cui le password devono usare KDF dedicati come bcrypt o Argon2 invece di SHA-512 grezzo.
SHA-512 è supportato nella Web Crypto API?
Sì. Tutti i browser moderni implementano SHA-512 tramite crypto.subtle.digest('SHA-512', data). Questa è la stessa API usata da questo strumento. È disponibile anche in Node.js 18+, Deno e Bun. La Web Crypto API restituisce un ArrayBuffer che si converte in stringa esadecimale mappando ogni byte alla sua rappresentazione esadecimale a due caratteri.
Quando dovrei usare SHA-512 invece di SHA-256?
Usa SHA-512 quando un protocollo lo richiede (Ed25519, certi schemi HMAC), quando hai bisogno di più di 128 bit di resistenza alle collisioni, o quando stai lavorando su hardware a 64 bit e vuoi il massimo throughput. SHA-512 è preferibile anche per i checksum di integrità dei file quando il digest più lungo è accettabile, poiché il maggiore spazio hash riduce la probabilità di collisioni accidentali in dataset molto grandi. Per la maggior parte delle applicazioni web, delle API e di TLS, SHA-256 rimane il valore predefinito standard.