Advertisements

headerup to 320x100 / 728x90

HMAC-SHA384 Generator

Generate an HMAC-SHA384 code for enterprise-grade message authentication and PCI-friendly signatures.

Secret:
Input
Loading editor...
Output

Output will appear here...

Advertisements

content bottomup to 300x250

What is HMAC-SHA384 Generator

Last reviewed:

HMAC (Hash-based Message Authentication Code) combines a cryptographic hash with a secret key to verify both the integrity and authenticity of a message.

HMAC-SHA384 Generator computes the RFC 2104 HMAC of a message with a shared secret and the SHA-384 hash function, returning a 96-character hexadecimal signature.

HMAC-SHA384 is specified by multiple enterprise and government profiles (including some PCI and NSA Suite B variants) that require an HMAC output longer than 256 bits.

Why use it

  • Meet signing requirements that specify HMAC-SHA384 explicitly.
  • Produce 384-bit MACs for high-assurance logging and audit trails.
  • Match reference vectors from FIPS, NSA Suite B, or enterprise crypto guides.
  • Fill HS384 slots in JSON Web Tokens.
  • Pair with ECDSA P-384 for matched security levels.

Features

  • 96-character HMAC-SHA384 hex output
  • Matches OpenSSL and Node.js output
  • Ideal for JWT HS384 and NSA Suite B integrations
  • Runs entirely in the browser
  • Supports any UTF-8 payload and key

How to use HMAC-SHA384 Generator

  1. Paste the message. Enter the canonical string-to-sign into the input panel.
  2. Enter the secret. Paste the shared secret into the Secret field.
  3. Copy the signature. The 96-character HMAC-SHA384 hex digest updates live — copy it and paste into your header.

Example (before/after)

Message + key

message: ecdsa-p384-payload
key: sha384-sign-key

HMAC-SHA384 hex digest

4abf23f93a1f7b8f4d0c1a08e23a1b96ec57a6c0d5ad35d66db9e8f1e45aa43c6f8c1a3e7d70e98b07f3d2b7c0b1b6de

Common errors

Assuming HMAC-SHA384 is SHA3

SHA-384 is from the SHA-2 family, not SHA-3.

Fix: Pick HMAC-SHA3-384 if your spec calls for the SHA-3 variant.

Truncating the hex output

The 96-character digest can wrap awkwardly in terminals.

Fix: Use the copy button to keep the full hex string intact.

Wrong canonicalization

Header order, casing, and whitespace in the canonical string change the HMAC.

Fix: Exactly reproduce the spec's canonicalization before signing.

FAQ

Is HMAC-SHA384 stronger than HMAC-SHA256?

It offers a wider output and is paired with ECDSA P-384 at matched security levels. In practice HMAC-SHA256 is already ample for most APIs.

What length does it produce?

384 bits (96 hex characters).

Where is it used?

NSA Suite B, some PCI deployments, and JWT HS384 all use HMAC-SHA384.

Does it match OpenSSL?

Yes. `openssl dgst -sha384 -hmac <key>` returns the same digest.

Is the signing done locally?

Yes. Your payload and secret stay in your browser.

Can I feed binary input?

Convert binary to base64 or hex first; the input panel expects UTF-8.