SHA-384 Hash Generator

Vygenerujte SHA-384 hash z libovolného textu

Vstupní text

Běží lokálně · Bezpečné pro vkládání tajných údajů

SHA-384 hash

SHA-384 hash se zobrazí zde…

Co je hašování SHA-384?

SHA-384 je kryptografická hašovací funkce definovaná v NIST FIPS 180-4 jako součást rodiny SHA-2. Přijímá vstup libovolné délky a produkuje pevný 384bitový (48bajtový) výtah zprávy, obvykle zobrazovaný jako 96znakový hexadecimální řetězec. SHA-384 se hojně používá v šifrovacích sadách TLS, podpisech digitálních certifikátů a vládních systémech, které vyžadují vyšší odolnost vůči kolizím, než poskytuje SHA-256.

Interně je SHA-384 zkrácenou variantou SHA-512. Používá stejnou velikost bloku 1024 bitů, 80 kompresních kol a 64bitovou aritmetiku slov jako SHA-512, ale začíná s odlišnou sadou počátečních hodnot hashe (odvozených z 9. až 16. prvočísla) a vydává pouze prvních 384 bitů konečného stavu. Toto zkrácení znamená, že SHA-384 produkuje pro identické vstupy odlišný výtah než SHA-512, přestože sdílí stejný základní algoritmus.

Protože SHA-384 pracuje s 64bitovými slovy, běží na moderních 64bitových procesorech rychleji než SHA-256 a zároveň produkuje větší výtah. To z ní činí praktický střed: je silnější než SHA-256 (192bitová odolnost vůči kolizím oproti 128bitové) bez režijních nákladů na ukládání 128znakového hexadecimálního výstupu SHA-512. SHA-384 je výchozí hashovací funkce pro ověřovací podpisy certifikátů TLS 1.3 a je vyžadována normou NSA Suite B (nyní CNSA) pro data s označením TOP SECRET.

Proč používat online generátor SHA-384?

Generování SHA-384 hashů obvykle vyžaduje příkaz v terminálu nebo psaní kódu. Tento nástroj běžící v prohlížeči vám umožní vypočítat SHA-384 výtahy okamžitě bez instalace čehokoli nebo odesílání dat na server. Ať už potřebujete vygenerovat SRI hash pro prostředek na CDN, ověřit kontrolní součet souboru, nebo porovnat výstup SHA-384 s SHA-256 pro stejný vstup, tento nástroj vám poskytne okamžitý způsob práce se SHA-384 výtahy bez závislostí v libovolném moderním prohlížeči.

Okamžitý výpočet v prohlížeči
Vložte text a okamžitě získejte 96znakový SHA-384 hash. Web Crypto API zajišťuje výpočet nativně v prohlížeči bez externích závislostí.
🔒
Hašování se soukromím na prvním místě
Váš vstup nikdy neopustí vaše zařízení. Veškeré hašování probíhá lokálně prostřednictvím Web Crypto API — žádné serverové požadavky, žádné protokolování, žádné uchovávání dat.
📋
Výstupní formáty připravené ke kopírování
Přepínejte mezi malými a velkými hexadecimálními písmeny jedním kliknutím. Zkopírujte hash do schránky pro použití v souborech kontrolních součtů, konfiguraci nebo dokumentaci.
🔍
Bez účtu nebo instalace
Funguje v libovolném moderním prohlížeči — Chrome, Firefox, Safari, Edge. Není třeba registrace, rozšíření ani nastavení příkazové řádky.

Případy použití generátoru SHA-384 hashů

Ověřování TLS certifikátů
TLS 1.2 a 1.3 používají SHA-384 při ověřování podpisů certifikátů a v PRF (pseudonáhodné funkci). Vypočítejte SHA-384 výtahy pro ověření otisků certifikátů oproti očekávaným hodnotám při bezpečnostních auditech.
Subresource Integrity (SRI)
Generujte SHA-384 hashe pro soubory JavaScript a CSS načítané z CDN. Atribut integrity v tazích script a link používá ve většině SRI generátorů jako výchozí Base64-kódovaný SHA-384.
Vládní systémy a systémy pro splnění předpisů
CNSA (dříve NSA Suite B) nařizuje SHA-384 pro ochranu utajovaných informací. Generujte hashe k ověření integrity dokumentů v pracovních postupech pro splnění předpisů vyžadujících algoritmy FIPS 180-4.
Kontrola integrity souborů
Vypočítejte SHA-384 kontrolní součty pro obrazy firmwaru, vydání softwaru nebo konfigurační soubory. Porovnejte hash před a po přenosu ke zjištění poškození nebo manipulace.
Odvozování klíčů HMAC-SHA384
SHA-384 se páruje s HMAC pro ověřování zpráv v protokolech jako IPsec a TLS. Pomocí tohoto nástroje ověřte očekávané výstupy hashů při ladění implementací HMAC-SHA384.
Akademická cvičení z kryptografie
Studenti zkoumající rodinu SHA-2 mohou porovnat výstupy SHA-384 s SHA-256 a SHA-512 pro stejný vstup a sledovat, jak různé počáteční vektory a zkrácení produkují odlišné výtahy.

Srovnání variant rodiny SHA-2

SHA-384 patří do rodiny SHA-2 spolu s několika dalšími variantami. Níže uvedená tabulka ukazuje, jak se liší ve velikosti výtahu, délce výstupu a typických aplikacích.

VariantaVelikost výtahuDélka hexadecimálního řetězceBajtyNejlepší pro
SHA-384384 bits96 hex chars48 bytesTLS 1.2/1.3, government/CNSA, certificate signatures
SHA-256256 bits64 hex chars32 bytesTLS, blockchain, code signing, JWTs, SRI
SHA-512512 bits128 hex chars64 bytesDigital signatures, HMAC with large keys
SHA-224224 bits56 hex chars28 bytesTruncated SHA-256 — rare, specific compliance
SHA-512/256256 bits64 hex chars32 bytesSHA-512 speed on 64-bit CPUs, 256-bit output

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

Výběr mezi SHA-384 a jinými hašovacími algoritmy závisí na vašich bezpečnostních požadavcích, platformních omezeních a výkonnostních potřebách. Toto srovnání pokrývá nejrelevantnější vlastnosti.

VlastnostSHA-384SHA-256SHA-512SHA-3-384
Digest size384 bits (96 hex)256 bits (64 hex)512 bits (128 hex)384 bits (96 hex)
Internal state512 bits (8x64-bit)256 bits (8x32-bit)512 bits (8x64-bit)1600 bits (sponge)
Block size1024 bits512 bits1024 bits832 bits
Rounds80648024
Word size64 bits32 bits64 bitsN/A (sponge)
Length extensionResistantVulnerableVulnerableResistant
64-bit performanceFast (native ops)Slower (32-bit ops)Fast (native ops)Moderate
StandardFIPS 180-4FIPS 180-4FIPS 180-4FIPS 202
Web Crypto APIYesYesYesNo

Jak SHA-384 funguje interně

SHA-384 zpracovává vstup prostřednictvím stejné konstrukce Merkle–Damgård jako SHA-512. Vstup je doplněn na násobek 1024 bitů, rozdělen do bloků a každý blok prochází 80 koly míchání pomocí funkcí Ch, Maj a dvou funkcí Sigma s 64bitovou aritmetikou slov. Klíčový rozdíl od SHA-512 spočívá v počátečních hodnotách hashe: SHA-384 používá hodnoty odvozené z desetinných částí druhých odmocnin 9. až 16. prvočísla, zatímco SHA-512 používá prvních 8 prvočísel. Po zpracování všech bloků SHA-384 zkrátí 512bitový interní stav na prvních 384 bitů.

Input: "hello world"
SHA-384: fdbd8e75a67f29f701a4e040385e2e23986303ea10239211af907fcbb83578b3e417cb71ce646efd0819dd8c088de1bd
(384 bits = 48 bytes = 96 hex characters)

Zkrácení a odlišná inicializace znamenají, že SHA-384 a SHA-512 vždy produkují pro stejný vstup různé výtahy. SHA-384 je díky tomu také přirozeně odolná vůči útokům prodloužením délky, na rozdíl od SHA-256 a SHA-512, kde může útočník připojit data a vypočítat platný hash bez znalosti původní zprávy.

Ukázky kódu SHA-384

SHA-384 je nativně podporována ve všech hlavních jazycích a prostředích. Níže jsou funkční příklady, které můžete zkopírovat přímo do svých projektů.

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

await sha384('hello world')
// → "fdbd8e75a67f29f701a4e040385e2e23986303ea10239211af907fcbb83578b3e417cb71ce646efd0819dd8c088de1bd"

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

# Basic SHA-384 hash
result = hashlib.sha384(b'hello world').hexdigest()
print(result)
# → "fdbd8e75a67f29f701a4e040385e2e23986303ea10239211af907fcbb83578b3e417cb71ce646efd0819dd8c088de1bd"

# Hash a string with Unicode characters
text = 'café ☕'
hashlib.sha384(text.encode('utf-8')).hexdigest()
# → 96-character hex string

# Hash a file in chunks (memory-efficient)
with open('release.tar.gz', 'rb') as f:
    sha = hashlib.sha384()
    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")
    // SHA-384 lives in the crypto/sha512 package
    hash := sha512.Sum384(data)
    fmt.Printf("%x\n", hash)
    // → fdbd8e75a67f29f701a4e040385e2e23986303ea10239211af907fcbb83578b3e417cb71ce646efd0819dd8c088de1bd
}
CLI (Linux / macOS)
# Using sha384sum (Linux)
echo -n "hello world" | sha384sum
# → fdbd8e75a67f29f701a4e040385e2e23...  -

# macOS
echo -n "hello world" | shasum -a 384
# → fdbd8e75a67f29f701a4e040385e2e23...  -

# Using openssl (cross-platform)
echo -n "hello world" | openssl dgst -sha384
# → SHA2-384(stdin)= fdbd8e75a67f29f701a4e040385e2e23986303ea...

# Verify a file checksum
sha384sum myfile.bin > checksum.txt
sha384sum -c checksum.txt
# → myfile.bin: OK

Často kladené otázky

Jaký je rozdíl mezi SHA-384 a SHA-512?
SHA-384 a SHA-512 používají stejnou kompresní funkci, velikost bloku (1024 bitů) a počet kol (80). Liší se dvěma způsoby: SHA-384 začíná s odlišnými počátečními hodnotami hashe (odvozenými z prvočísel 9–16 místo 1–8) a vydává pouze prvních 384 bitů z 512bitového interního stavu. To znamená, že vždy produkují pro stejný vstup různé výtahy.
Je SHA-384 bezpečnější než SHA-256?
SHA-384 poskytuje 192 bitů odolnosti vůči kolizím oproti 128 bitům SHA-256, vycházeje z hranice narozeninového útoku jako poloviny délky výtahu. Pro odolnost vůči vzoru nabízí SHA-384 384 bitů oproti 256 bitům. V praxi jsou obě považovány za bezpečné pro aktuální modely hrozeb, ale SHA-384 poskytuje větší bezpečnostní rezervu pro dlouhodobou ochranu dat a je vyžadována některými vládními normami.
Proč TLS používá SHA-384 místo SHA-512?
Šifrovací sady TLS jako TLS_AES_256_GCM_SHA384 používají SHA-384, protože poskytuje dostatečnou odolnost vůči kolizím (192 bitů) při zachování přijatelné velikosti výtahů. 128znakový hexadecimální výstup SHA-512 přidává režii v handshake zprávách a řetězcích certifikátů bez proporcionálního bezpečnostního přínosu pro daný případ použití TLS. SHA-384 také odpovídá 192bitové úrovni zabezpečení cílené standardem AES-256.
Jak se SHA-384 používá v Subresource Integrity (SRI)?
SRI tagy v HTML používají formát integrity="sha384-{base64hash}" k ověření, že skripty a šablony stylů načtené z CDN nebyly pozměněny. Prohlížeč vypočítá SHA-384 hash staženého souboru a porovná ho s očekávanou hodnotou. Pokud se neshodují, prostředek je zablokován. SHA-384 je nejčastěji používaný algoritmus pro SRI, protože vyvažuje bezpečnost a velikost výtahu.
Lze SHA-384 obrátit a obnovit původní vstup?
Ne. SHA-384 je ze své podstaty jednosměrná funkce. Má 384 bitů odolnosti vůči vzoru, což znamená, že neexistuje žádná známá metoda, jak obnovit vstup ze SHA-384 výtahu rychleji než prohledáváním hrubou silou přes 2^384 možností. Krátké nebo předvídatelné vstupy (jako běžná hesla) však lze nalézt pomocí předpočítaných duhových tabulek nebo slovníkových útoků, a proto by hesla měla být hašována specializovanými algoritmy jako bcrypt nebo Argon2.
Je SHA-384 podporována v Web Crypto API?
Ano. Všechny moderní prohlížeče implementují SHA-384 prostřednictvím crypto.subtle.digest('SHA-384', data). Toto je stejné API, které používá tento nástroj. Je také dostupné v Node.js 18+ a Deno. Web Crypto API vrací ArrayBuffer, který převedete na hexadecimální řetězec mapováním každého bajtu na jeho dvoumístnou hexadecimální reprezentaci.
Kdy mám použít SHA-384 místo SHA-256?
Použijte SHA-384, když vaše bezpečnostní politika vyžaduje více než 128 bitů odolnosti vůči kolizím, když potřebujete splnění požadavků CNSA/Suite B pro utajovaná data, nebo když již používáte AES-256 a chcete odpovídající 192bitovou úroveň zabezpečení. SHA-384 také běží na 64bitových procesorech rychleji než SHA-256, protože používá nativní 64bitové operace se slovy. Pro většinu webových aplikací a obecné hašování zůstává SHA-256 standardní volbou.