How to use the SHA-384 hash generator
- Paste the content into Text to hash.
- Set Input is to Text (UTF-8), Hex bytes or Base64 bytes to match what you pasted.
- Pick an Output:
hexfor checksums and logs,HEXfor uppercase, orBase64for SRI and many APIs. - Optionally type a secret in HMAC key (optional) to get HMAC-SHA-384 instead of a plain hash.
- Read the Input size line to confirm how many bytes were hashed, then copy the digest.
What it does and when to use it
The most common reason to need SHA-384 today is Subresource Integrity. When a page loads a script or stylesheet from a CDN, an integrity="sha384-…" attribute tells the browser to refuse the file if even one byte has changed. SHA-384 is the size most CDNs and SRI generators use by default. You will also meet SHA-384 in TLS cipher suite names, in code-signing, and in some government systems that require a digest longer than 256 bits.
To compare an SRI value from a vendor with your own, paste both into the hash comparator. For a shorter digest use the SHA-256 generator, and for the full 512 bits the SHA-512 generator.
How it works
Your input becomes bytes (UTF-8 for text), and the hash-wasm library computes SHA-384 as specified in FIPS 180-4, running as WebAssembly in your browser. Internally it is the SHA-512 machine: 1,024-bit blocks, 80 rounds, eight 64-bit words of state. It starts from its own eight initial values and outputs only the first six words, which is 384 bits. The Base64 option encodes those 48 bytes as exactly 64 characters with no padding. With an HMAC key, the hash is wrapped as described in RFC 2104.
Worked examples
Hex test vector. abc hashes to cb00753f45a35e8bb5a03d699ac65007272c32ab0eded1631a8b605a43ff5bed8086072ba1e7cc2358baeca134c825a7, the value given for SHA-384 in the standard’s examples.
The same digest for SRI. With Output set to Base64, abc gives ywB1P0WjXou1oD1pmsZQBycsMqsO3tFjGotgWkP/W+2AhgcroefMI1i67KE0yCWn. A file containing exactly abc would therefore use integrity="sha384-ywB1P0WjXou1oD1pmsZQBycsMqsO3tFjGotgWkP/W+2AhgcroefMI1i67KE0yCWn".
HMAC-SHA384. Message what do ya want for nothing? and key Jefe produce af45d2e3764840…cfab21649, matching RFC 4231 test case 2.
Limits and tips
- The text box hashes text as UTF-8. That is right for JavaScript and CSS files, but binary files such as fonts or images must be hashed as bytes, not pasted.
- The file hash calculator does not offer SHA-384, so for a large text file, paste its contents here or use
openssl dgst -sha384 -binary file | openssl base64 -Aon the command line. - Upper and lower case matter in Base64. Copy it exactly.
Frequently asked questions
How do I write an SRI integrity attribute?
Why does the browser reject my SRI hash?
How is SHA-384 related to SHA-512?
Is SHA-384 safe to use?
Sources
- FIPS 180-4, Secure Hash Standard (SHS) — NIST, accessed 2026-10-07
- Subresource Integrity — W3C, accessed 2026-10-07
- RFC 4231, HMAC-SHA identifiers and test vectors — IETF, accessed 2026-10-07
How do we know nothing is uploaded? Test it yourself on the privacy proof page.