Skip to content

Generatore Hash SHA-384 (Hash TLS Suite B)

Genera hash SHA-384 online — output hex a 96 caratteri, immune alle estensioni di lunghezza, conforme a NSA Suite B. Abbinato con AES-256-GCM in TLS. Tutto l'hashing gira nel tuo browser tramite Web Crypto API.

Niente tracciamento Funziona nel browser Gratuito
Tutto l'hashing viene eseguito localmente nel tuo browser. Nessun dato viene trasmesso a un server.
Algoritmo
Revisionato per la correttezza SHA-384 rispetto ai vettori di test NIST FIPS 180-4; inquadramento Suite B verificato rispetto a CNSSP-15 e documentazione CNSA Suite — Team di Ingegneria Go Tools · May 28, 2026

Cos'è SHA-384?

SHA-384 è una funzione hash crittografica a 384 bit della famiglia SHA-2, pubblicata da NIST nel 2001 come parte di FIPS 180-2. È architetturalmente una variante troncata di SHA-512: entrambi gli algoritmi usano aritmetica a parole da 64 bit identica, 80 round di compressione e blocchi di input da 1024 bit — le sole differenze sono il vettore di inizializzazione (IV) e il fatto che SHA-384 scarta gli ultimi 128 bit dell'output a 512 bit di SHA-512, producendo 384 bit (96 caratteri esadecimali).

Perché il troncamento conta crittograficamente: SHA-256 è vulnerabile agli attacchi di estensione di lunghezza — dato SHA-256(messaggio), un attaccante può calcolare SHA-256(messaggio || padding || estensione) senza conoscere il messaggio originale, riprendendo il calcolo dell'hash dallo stato interno trapelato. SHA-384 elimina questa superficie di attacco: il troncamento scarta 128 bit di stato interno, quindi l'hash a 384 bit pubblicato non contiene abbastanza informazioni per riprendere il calcolo SHA-512. Questo rende SHA-384 grezzo (senza wrapping HMAC) sicuro per le costruzioni in cui l'output dell'hash può essere esposto agli avversari.

Ruolo NSA Suite B e TLS: SHA-384 era obbligatorio da NSA Suite B (CNSSP-15, 2005) per la classificazione TOP SECRET. È l'algoritmo hash nella suite crittografica ECDHE-ECDSA-AES256-GCM-SHA384, che è la suite crittografica TLS 1.2 standard per i sistemi conformi a Suite B e rimane ampiamente distribuita nelle reti governative, finanziarie e di difesa degli Stati Uniti. La CNSA Suite dell'NSA (2015) ha mantenuto SHA-384 insieme a SHA-256, e SHA-384 appare nell'elenco degli algoritmi di firma di TLS 1.3 (ecdsa_secp384r1_sha384).

Prestazioni: Sull'hardware a 64 bit SHA-384 e SHA-512 girano a velocità identica — entrambi usano operazioni a parole da 64 bit esclusivamente. Sono tipicamente più veloci di SHA-256 (che usa operazioni a parole da 32 bit e richiede più passaggi per lo stesso input) sui moderni processori x86-64 e ARM64.

Questo strumento calcola SHA-384 interamente nel tuo browser tramite crypto.subtle.digest('SHA-384', ...) dalla Web Crypto API. L'output è bit per bit identico a quello che sha384sum, openssl dgst -sha384 o Python's hashlib.sha384() producono.

Quando usare SHA-384: suite crittografiche TLS che richiedono la conformità Suite B, HMAC-SHA-384 per TLS 1.2 PRF, derivazione di chiavi HKDF-SHA-384, impronta di documenti classificati e qualsiasi contesto in cui è richiesta l'immunità alle estensioni di lunghezza senza wrapping HMAC. Quando non usare SHA-384: checksum generici e uso quotidiano dell'integrità — SHA-256 è la scelta standard per quelli, con supporto libreria più semplice e compatibilità universale con gli strumenti.

// Hash text using Web Crypto API (SHA-384)
async function sha384(text) {
  const data = new TextEncoder().encode(text);
  const hash = await crypto.subtle.digest('SHA-384', data);
  return Array.from(new Uint8Array(hash))
    .map(b => b.toString(16).padStart(2, '0'))
    .join('');
}

await sha384('Hello, World!');
// → '5485cc9b3365b4305dfb4e8337e0a598a574f8242bf17289e0dd6c20a3cd44a089de16ab4ab308f63e44b1170eb5f515'

Esempi SHA-384

Impronta dell'handshake della suite crittografica TLS

ECDHE-ECDSA-AES256-GCM-SHA384

Il nome della suite crittografica ECDHE-ECDSA-AES256-GCM-SHA384 è la suite crittografica Suite B canonica per le sessioni TLS TOP SECRET. Il suffisso SHA-384 si riferisce alla PRF (Pseudo-Random Function) usata nell'handshake TLS 1.2 per derivare le chiavi di sessione. Incolla questa stringa per generare l'hash SHA-384 del nome della suite stessa — un modo rapido per verificare che la tua implementazione SHA-384 sia coerente tra gli ambienti.

Derivazione di chiave HKDF-SHA-384 (TLS 1.2 PRF)

master secret || client random || server random

La PRF di TLS 1.2 (definita in RFC 5246) usa HMAC-SHA-384 per le suite crittografiche negoziate con SHA-384. Il master secret viene derivato dal pre-master secret usando P_SHA384(pre_master_secret, 'master secret' || ClientHello.random || ServerHello.random). HKDF-SHA-384 (RFC 5869) estende questo pattern per la derivazione generale delle chiavi, ed è usato anche nel key schedule di TLS 1.3 e in IKEv2 (IPsec). Incolla qualsiasi materiale seed qui per generare l'impronta SHA-384 prima di applicare HMAC.

Impronta di documento classificato NSA Suite B

CLASSIFIED//TS//SI//NF — Document ID: TSC-2026-0001

Il profilo crittografico NSA Suite B (CNSSP-15, sostituito dalla CNSA Suite nel 2018) richiedeva SHA-384 per l'integrità dei documenti TOP SECRET. I sistemi della comunità intelligence fanno l'impronta dei documenti classificati con SHA-384 per rilevare manomissioni. La stringa hex a 96 caratteri risultante viene memorizzata nel manifesto del documento insieme al payload cifrato AES-256-GCM. Incolla qui qualsiasi intestazione o ID documento per generare l'impronta SHA-384.

Autenticazione messaggi HMAC-SHA-384

POST /api/v2/transfer
Content-Type: application/json
{"amount":10000,"to":"account-XYZ"}

HMAC-SHA-384 viene usato nelle API ad alta garanzia per autenticare i corpi delle richieste. Il server calcola HMAC-SHA-384(chiave_segreta, richiesta_canonica) e include il digest hex in un'intestazione Authorization; il client riproduce il calcolo e confronta. Poiché SHA-384 è immune alle estensioni di lunghezza anche in forma grezza (non-HMAC), fornisce un margine di sicurezza extra rispetto a HMAC-SHA-256 per scenari in cui l'hash grezzo potrebbe essere esposto.

Come Generare Hash SHA-384

  1. 1

    Incolla testo o trascina un file

    Seleziona la scheda Testo e incolla qualsiasi stringa — un ID documento, il corpo di una richiesta o qualsiasi input — nel campo di input. L'hash SHA-384 si aggiorna mentre scrivi. Per i file, passa alla scheda File e trascina qualsiasi file nella zona di rilascio; il browser lo hashata localmente usando la Web Crypto API senza upload. Un indicatore di progresso appare per i file grandi (>10 MB).

  2. 2

    Copia l'hash a 96 caratteri

    Clicca il pulsante Copia accanto all'output dell'hash. La stringa hex minuscola completa a 96 caratteri va negli appunti — pronta da incollare in una configurazione TLS, un report di conformità o un'implementazione HMAC. Usa l'interruttore Maiuscolo se il tuo sistema di destinazione richiede hex maiuscolo.

  3. 3

    Confronta con un hash noto

    Passa alla scheda Confronta e incolla due hash SHA-384 affiancati. Lo strumento riporta corrispondenza o mancata corrispondenza usando il confronto a tempo costante, che non perde informazioni di timing. Utile per verificare hash di conformità Suite B, confrontare chiavi derivate HKDF-SHA-384 tra implementazioni o verificare impronte di documenti negli audit di archivi classificati.

Dettagli Tecnici

Algoritmo: SHA-512 con IV diverso, output troncato a 384 bit
SHA-384 è strutturalmente identico a SHA-512 (FIPS 180-4 sezione 6.5). Entrambi usano 80 round di operazioni a 64 bit (funzioni Ch, Maj, Σ0, Σ1) con costanti derivate dalle radici cubiche e quadrate dei primi 80 numeri primi. Il vettore di inizializzazione (otto parole da 64 bit) differisce dall'IV di SHA-512 — l'IV di SHA-384 è derivato dalle parti frazionarie delle radici quadrate dal 9° al 16° numero primo. Dopo l'elaborazione, le prime sei parole da 64 bit delle otto parole di stato vengono prodotte in output (384 bit); le ultime due parole vengono scartate.
Output: 384 bit, 96 caratteri esadecimali
Sempre esattamente 96 caratteri esadecimali minuscoli (384 bit = 48 byte, ogni byte codificato come 2 caratteri hex). Lunghezza fissa indipendentemente dalla dimensione dell'input. La lunghezza a 96 caratteri è l'impronta immediata che distingue SHA-384 da SHA-256 (64 caratteri) e SHA-512 (128 caratteri). I 128 bit scartati — le ultime due parole di stato da 64 bit — sono ciò che rende SHA-384 resistente alle estensioni di lunghezza.
Prestazioni: identiche a SHA-512 sull'hardware a 64 bit
SHA-384 e SHA-512 eseguono la stessa sequenza di istruzioni sui processori a 64 bit. Entrambi usano blocchi di input da 1024 bit (128 byte), elaborati con rotazioni e addizioni a 64 bit. La velocità è tipicamente 500–900 MB/s in un browser usando la Web Crypto API, e 1–3 GB/s negli strumenti nativi con estensioni SHA hardware. Sull'hardware a 32 bit o senza accelerazione hardware, SHA-384/512 sono più lenti di SHA-256 a causa dell'emulazione degli interi a 64 bit.
Standard: FIPS 180-4, NSA Suite B legacy, CNSA attuale
Standardizzato in FIPS 180-2 (2001), versione attuale FIPS 180-4 (2015). Richiesto da NSA Suite B (CNSSP-15, 2005) per TOP SECRET, ancora presente nella CNSA Suite (2015). Specificato per TLS in RFC 5246 (TLS 1.2 PRF con suite crittografiche SHA-384), RFC 8446 (algoritmo di firma TLS 1.3 ecdsa_secp384r1_sha384) e RFC 5869 (HKDF). Approvato da NIST per tutti i livelli di forza di sicurezza fino al 2030 e oltre.

Best Practice

Usa SHA-384 quando l'immunità alle estensioni di lunghezza conta senza HMAC
Se il tuo protocollo espone l'output dell'hash grezzo e un attaccante potrebbe tentare di estendere il messaggio (ad es. certi schemi di URL firmati o challenge-response), SHA-384 fornisce immunità intrinseca alle estensioni di lunghezza che SHA-256 non ha. Per tutti gli altri usi con chiave, applica HMAC indipendentemente dall'hash sottostante — HMAC-SHA-256 e HMAC-SHA-384 sono entrambi sicuri, e HMAC elimina gli attacchi di estensione di lunghezza per qualsiasi variante SHA-2.
Abbina con AES-256-GCM per la conformità Suite B / CNSA
Se stai costruendo un sistema che deve essere conforme ai requisiti NSA Suite B o CNSA, l'abbinamento canonico è AES-256-GCM per la cifratura bulk e SHA-384 per l'integrità e la derivazione delle chiavi. TLS 1.2 con ECDHE-ECDSA-AES256-GCM-SHA384 è la suite crittografica di riferimento. Per TLS 1.3, l'equivalente è TLS_AES_256_GCM_SHA384 con ecdsa_secp384r1_sha384 come algoritmo di firma.
Usa HMAC-SHA-384 per MAC con chiave nei contesti TLS 1.2 PRF
La PRF di TLS 1.2 usa HMAC-SHA-384 per le suite crittografiche in cui è stato negoziato SHA-384 (RFC 5246 sezione 5). Se stai implementando o testando una PRF TLS 1.2: PRF(secret, label, seed) = P_SHA384(secret, label + seed). Non sostituire HMAC-SHA-256 in un contesto di suite crittografica SHA-384 — la negoziazione della suite crittografica determina l'hash PRF, e una mancata corrispondenza causa un fallimento dell'handshake.
Usa il confronto a tempo costante quando verifichi gli hash SHA-384 nel codice
Se stai confrontando due hash SHA-384 nel codice — verificando un'impronta di documento, controllando un MAC — usa una funzione di uguaglianza a tempo costante: Node.js crypto.timingSafeEqual(), Python hmac.compare_digest(), Go subtle.ConstantTimeCompare(). L'uguaglianza di stringhe ingenua (=== o ==) perde informazioni di timing che possono permettere a un attaccante di ricostruire l'hash atteso byte per byte. Questa è una misura critica di difesa in profondità per qualsiasi sistema di autenticazione.

Domande Frequenti SHA-384

Perché usare SHA-384 rispetto a SHA-256?
Due motivi: immunità alle estensioni di lunghezza e conformità Suite B. SHA-384 è immune agli attacchi di estensione di lunghezza perché troncare lo stato a 512 bit di SHA-512 a 384 bit scarta 128 bit di stato interno — un attaccante che conosce SHA-384(messaggio) non può calcolare SHA-384(messaggio || estensione) senza conoscere il messaggio completo. SHA-256 è vulnerabile agli attacchi di estensione di lunghezza, ecco perché l'uso con chiave di SHA-256 richiede la costruzione HMAC. Inoltre, SHA-384 era richiesto da NSA Suite B al livello TOP SECRET e rimane prevalente nelle suite crittografiche TLS (ECDHE-ECDSA-AES256-GCM-SHA384) e nei sistemi governativi in transizione alla CNSA Suite.
SHA-384 è sicuro quanto SHA-512?
Sì, in termini di resistenza alle collisioni. SHA-384 fornisce 192 bit di resistenza alle collisioni (metà di 384 bit) rispetto ai 256 bit di SHA-512 — entrambi sono ben oltre qualsiasi attacco prevedibile. SHA-384 fornisce la stessa resistenza alle pre-immagini di SHA-512 in pratica. L'unica differenza significativa è la lunghezza dell'output: 96 caratteri hex vs 128 caratteri hex.
SHA-384 ha la stessa velocità di SHA-512?
Sì — sono letteralmente lo stesso algoritmo. SHA-384 è SHA-512 con un diverso vettore di inizializzazione (IV) e l'output troncato ai primi 384 bit. Poiché entrambi usano aritmetica a parole da 64 bit, girano a velocità identica sull'hardware a 64 bit. Curiosamente, SHA-384 e SHA-512 sono entrambi tipicamente più veloci di SHA-256 sulle macchine a 64 bit. Velocità tipica: 500–900 MB/s in un browser, comparabile agli strumenti nativi.
Quando HMAC-SHA-384 è importante rispetto a HMAC-SHA-256?
Negli handshake TLS 1.2 negoziati con suite crittografiche SHA-384, la PRF è HMAC-SHA-384 — questo è un requisito rigido del protocollo, non una scelta. Al di fuori di TLS, preferisci HMAC-SHA-384 quando: (1) stai mirando alla conformità Suite B / CNSA, (2) il sistema gestisce dati classificati oltre SECRET, o (3) vuoi un margine extra contro futuri progressi contro la sicurezza a 128 bit. Per MAC generici dove nessuno si applica, HMAC-SHA-256 è standard e ben testato nelle librerie.
Devo usare SHA-384 per l'hashing generico?
Non a meno che tu non abbia un motivo specifico. SHA-256 è il default industriale per l'integrità dei file, checksum, oggetti Git, firme JWT e impronte dei certificati — è universalmente supportato e fornisce 128 bit di resistenza alle collisioni, più che sufficienti per qualsiasi uso pratico. SHA-384 ha senso quando hai bisogno di (1) immunità alle estensioni di lunghezza senza wrapping HMAC, (2) conformità Suite B / CNSA, o (3) interoperabilità con suite crittografiche TLS che richiedono SHA-384.
Cos'è NSA Suite B e viene ancora usata?
NSA Suite B era un insieme di algoritmi crittografici approvati per proteggere le informazioni classificate degli Stati Uniti, pubblicato dall'NSA nel 2005 (CNSSP-15). Suite B richiedeva SHA-256 per SECRET e SHA-384 per TOP SECRET. Nel 2015 l'NSA ha annunciato una transizione verso la Commercial National Security Algorithm Suite (CNSA), guidata da preoccupazioni sulla crittografia post-quantistica. Tuttavia, SHA-384 è stato mantenuto nel CNSA insieme a SHA-256. Molti sistemi governativi e di difesa costruiti per la conformità Suite B usano ancora SHA-384, e le suite crittografiche TLS originariamente richieste da Suite B (come ECDHE-ECDSA-AES256-GCM-SHA384) rimangono ampiamente distribuite nelle reti governative.
Quanto è lungo un hash SHA-384?
Sempre esattamente 96 caratteri esadecimali — 384 bit divisi in 48 byte, ogni byte codificato come due caratteri hex. La lunghezza dell'output è fissa indipendentemente dalla dimensione dell'input; un messaggio da 1 byte e un file da 10 GB producono entrambi 96 caratteri hex. Confronto: SHA-256 produce 64 caratteri hex, SHA-512 produce 128 caratteri hex, MD5 produce 32 caratteri hex.
I miei dati vengono inviati a un server quando uso questo strumento?
No. SHA-384 viene calcolato interamente nel tuo browser usando la Web Crypto API (crypto.subtle.digest('SHA-384', data)). Apri DevTools → scheda Network mentre fai l'hashing — vedrai zero richieste in uscita. I file che trascini vengono letti tramite la FileReader API e hashati localmente; i byte non lasciano mai la tua macchina. Questo rende lo strumento sicuro per fare l'hash di impronte di documenti classificati, materiale di chiave privata TLS o qualsiasi altro input sensibile.

Strumenti correlati

Vedi tutti gli strumenti →

Decodificatore JWT

Strumenti di sicurezza

Decodifica token JWT online con il nostro decodificatore JWT gratis. Ispeziona intestazione, payload, firma, scadenza e attestazioni. 100% browser — token mai fuori dal dispositivo. Nessuna registrazione, nessun tracciamento.

Generatore Hash MD5 e Strumento Checksum File

Strumenti di sicurezza

Genera hash MD5, SHA-256, SHA-1 e SHA-512 online gratis. Calcola l'hash di testo o file nel browser, verifica checksum e copia i risultati. Senza registrazione.

Generatore di Password Casuali — Personalizzabile e Sicuro

Strumenti di sicurezza

Genera password casuali sicure all'istante — gratis, 100% nel tuo browser. Personalizza lunghezza e caratteri, batch fino a 50 con analisi entropia.

Generatore Hash SHA-1 (Legacy 160-bit)

Strumenti di sicurezza

Genera hash SHA-1 nel browser — output hex a 40 caratteri, senza upload. Strumento legacy per impronte Git, verifica di vecchi certificati e audit di migrazione. I dati non lasciano mai il tuo dispositivo.

Generatore Hash SHA-256 e Strumento Checksum

Strumenti di sicurezza

Genera hash SHA-256 online gratis. Calcola l'hash di testo o file nel browser, verifica checksum e copia l'output hex a 64 caratteri. Senza registrazione; i dati non lasciano mai la pagina.

Generatore Hash SHA-3 (Keccak SHA3-256)

Strumenti di sicurezza

Genera hash SHA-3 online gratis. Costruzione a spugna NIST FIPS 202 — lo standard post-SHA-2. Output SHA3-256 in 64 caratteri hex. Solo browser tramite js-sha3 caricato in modo lazy; zero upload.