Hardware FixRecommendedDevice not working? Your driver may be the problemCheck updates for common hardware issues.Fix DriversOctober DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsClean PCRecommendedOne scan can reveal what keeps slowing WindowsLook for cleanup and repair opportunities.Run Scan×
Skip to content
World desk5 min

Webhook Signing Algorithms Compared: HMAC-SHA256, RSA, and Ed25519

HMAC shares a secret; RSA and Ed25519 separate private signing from public verification. Learn why exact signed bytes, headers, formats, and timestamp rules matter.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

HMAC-SHA256, RSA, and Ed25519 can all authenticate webhook messages, but they use different key-trust models. HMAC shares one secret between sender and verifier; RSA and Ed25519 let the sender keep a private signing key while receivers verify with a public key. In every case, correct verification depends on following the provider’s exact protocol—not just choosing an algorithm name.

How the three signing methods differ

A webhook signature lets a receiver check that a message matches one produced by a party with the required signing key. The central distinction is who holds that key and what the protocol signs.

As an Amazon Associate I earn from qualifying purchases.

Method Key model What the verifier can do Implementation point
HMAC-SHA256 Sender and receiver share a secret. Anyone holding the secret can verify a MAC and create a valid one. Use the exact secret, signed bytes, digest encoding, and a constant-time comparison.
RSA Sender signs with a private key; receiver verifies with the corresponding public key. A receiver with only the public key can verify but cannot sign. Specify the padding scheme and hash as well as RSA; the name alone is incomplete.
Ed25519 Sender signs with a private key; receiver verifies with the corresponding public key. A receiver with only the public key can verify but cannot sign. Use the provider’s specified key serialization and signature format.

What each option means in practice

HMAC-SHA256: simple trust, shared authority

HMAC-SHA256 is a message authentication code built using a shared secret and SHA-256. Because every verifier needs that secret, each verifier also has the ability to produce valid MACs. This can be a good fit when the provider and receiver can distribute and protect the same secret, but it matters when deciding which systems or teams should be trusted with verification credentials. RFC 9421 defines HMAC-SHA256 over a signature base; GitHub’s webhook scheme uses the webhook secret to derive a digest from payload contents. GitHub’s validation guide recommends the `X-Hub-Signature-256` header and identifies the older HMAC-SHA1 header as legacy.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

RSA: separate signing and verification keys

With RSA signatures, the sender holds the private signing key and the receiver can be given only the public verification key. “RSA” does not fully identify the cryptographic operation: both padding and digest must match the provider’s profile. RFC 9421 includes an RSA PKCS#1 v1.5 profile with SHA-256. Separately, RFC 7518 requires an RSA key size of at least 2048 bits for its defined RSA PKCS#1 v1.5 SHA-2 JWS algorithms; that is a specification requirement, not a benchmark or a universal guarantee about every RSA-based webhook scheme. RFC 7518

#1 Best Overall
Yubico - Security Key C NFC - Basic Compatibility - Multi-Factor authentication (MFA) Security Key and passkey, Connect via USB-C or NFC, FIDO Certified
  • POWERFUL SECURITY KEY: The Security Key C NFC is the essential physical passkey for protecting your digital life from phishing attacks. It ensures only you can access your accounts.
  • WORKS WITH 1000+ ACCOUNTS: Compatible with Google, Microsoft, and Apple. A single Security Key C NFC secures 100 of your favorite accounts, including email, password managers, and more.
  • FAST & CONVENIENT LOGIN: Plug in your Security Key C NFC via USB-C and tap it, or tap it against your phone (NFC) to authenticate. No batteries, no internet connection, and no extra fees required.
  • TRUSTED PASSKEY TECHNOLOGY: Uses the latest passkey standards (FIDO2/WebAuthn & FIDO U2F) but does not support One-Time Passwords. For complex needs, check out the YubiKey 5 Series.
  • BUILT TO LAST: Made from tough, waterproof, and crush-resistant materials. Manufactured in Sweden and programmed in the USA with the highest security standards.

Ed25519: public-key signatures with a defined format

Ed25519 is an asymmetric signature scheme: the sender signs with a private key, and receivers can verify with the public key. RFC 9421 applies Ed25519 to the signature base without a prehash function and specifies a 64-octet signature. That output size describes the format, not comparative security or speed. Svix and Standard Webhooks document Ed25519 for webhook signing. RFC 9421 · Svix verification guide

Why the protocol matters more than the label

A provider’s signing contract defines the actual scheme: which bytes are signed, whether metadata is included, how headers are named, how keys and signatures are encoded, what timestamp policy applies, and how keys rotate. Two integrations that both say “RSA,” for example, may be incompatible if they use different padding or hash profiles.

Rank #2
Yubico - YubiKey 5C NFC - Multi-Factor authentication (MFA) Security Key and passkey, Connect via USB-C or NFC, FIDO Certified - Protect Your Online Accounts
  • POWERFUL SECURITY KEY: The YubiKey 5C NFC is the most versatile physical passkey, protecting your digital life from phishing attacks. It ensures only you can access your accounts
  • WORKS WITH 1000+ ACCOUNTS: Compatible with popular accounts like Google, Microsoft, and Apple. A single YubiKey 5C NFC secures 100+ of your favorite accounts, including email, password managers, and more
  • FAST & CONVENIENT LOGIN: Plug in your YubiKey 5C NFC via USB and tap it, or tap it against your phone (NFC), to authenticate. No batteries, no internet connection, and no extra fees required
  • MOST SECURE PASSKEY: Supports FIDO2/WebAuthn, FIDO U2F, Yubico OTP, OATH-TOTP/HOTP, Smart card (PIV), and OpenPGP. That means it’s versatile, working almost anywhere you need it
  • PRIMARY & SPARE KEYS: Just like having a spare house key, we recommend buying two YubiKeys - one for daily use and one as a spare. That way you’ll never get locked out of your accounts

Signed input can include more than the request body. GitHub documents a digest derived from payload contents. Standard Webhooks signs the message ID, timestamp, and body together, and distinguishes `v1` HMAC from `v1a` Ed25519 identifiers. Its documentation also specifies key serialization. Standard Webhooks specification

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

How to verify a webhook signature safely

  1. Read the provider’s signing contract. Identify the documented algorithm or full profile, header names, signed-input construction, signature encoding, key format, timestamp rules, and rotation behavior. Do not substitute a generic implementation for those details.
  2. Keep the original request body bytes. Verify before parsing and reserializing JSON. A change in whitespace, escaping, or field representation changes the bytes and can invalidate a signature. Standard Webhooks warns that even a stray space can cause verification to fail.
  3. Construct exactly the documented signed input. Include metadata such as a message ID or timestamp only where the provider specifies it, and preserve its required ordering and encoding.
  4. Verify with the matching key and profile. For HMAC, compute the expected MAC from the configured shared secret. For RSA, use the specified padding and digest with the public key. For Ed25519, use the provider’s required key format and library-compatible representation.
  5. Compare and enforce freshness as required. Compare HMAC values in constant time; GitHub explicitly warns, “Never use a plain == operator.” If the signed protocol includes a timestamp, check that it falls within the provider’s allowed freshness window. Signing the timestamp binds it to the message and helps limit replay, but freshness checking is still needed.
  6. Only process the delivery after validation. Treat a failed signature or stale timestamp according to the provider’s guidance; do not treat an unverified payload as an authenticated event.

Common reasons verification fails

  • The body was transformed: JSON was parsed and serialized again, or middleware changed the bytes before verification.
  • The wrong input was signed: the implementation omitted or reordered a message ID, timestamp, or other required component.
  • The format does not match: a `sha256=` prefix, hexadecimal digest, version identifier such as `v1` or `v1a`, or key serialization was handled incorrectly.
  • The cryptographic profile differs: RSA padding or digest does not match, or the configured public key is not the one associated with the signing private key.
  • The secret or key is stale or wrong: configuration does not reflect the provider’s current key or rotation state.
  • The timestamp is outside the accepted window: check the clock, timestamp parsing, and freshness policy as well as signature construction.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Which should you use?

Use the algorithm and protocol your webhook provider supports. If you control both ends, choose based on the trust boundary: a shared secret gives every verifier signing authority, while public-key verification allows receivers to verify without possessing the private signing key. Then assess operational fit—secret distribution for HMAC, or public-key distribution, serialization, and rotation for RSA or Ed25519.

Rank #3
Yubico - YubiKey 5 NFC - Multi-Factor authentication (MFA) Security Key and passkey, Connect via USB-A or NFC, FIDO Certified - Protect Your Online Accounts
  • POWERFUL SECURITY KEY: The YubiKey 5 NFC is the most versatile physical passkey, protecting your digital life from phishing attacks. It ensures only you can access your accounts
  • WORKS WITH 1000+ ACCOUNTS: Compatible with popular accounts like Google, Microsoft, and Apple. A single YubiKey 5 NFC secures 100+ of your favorite accounts, including email, password managers, and more
  • FAST & CONVENIENT LOGIN: Plug in your YubiKey 5 NFC via USB and tap it, or tap it against your phone (NFC), to authenticate. No batteries, no internet connection, and no extra fees required
  • MOST SECURE PASSKEY: Supports FIDO2/WebAuthn, FIDO U2F, Yubico OTP, OATH-TOTP/HOTP, Smart card (PIV), and OpenPGP. That means it’s versatile, working almost anywhere you need it
  • PRIMARY & SPARE KEYS: Just like having a spare house key, we recommend buying two YubiKeys - one for daily use and one as a spare. That way you’ll never get locked out of your accounts

The cited standards and provider documents define mechanics; they do not establish a universal speed, security, or adoption ranking across deployments. Compare the exact profiles and libraries in the environment where the webhook will run.

Best Value
Yubico - Security Key C NFC - Basic Compatibility - Multi-Factor authentication (MFA) Security Key and passkey, Connect via USB-C or NFC, FIDO Certified (Pack of 2)
  • The information below is per-pack only
  • POWERFUL SECURITY KEY: The Security Key C NFC is the essential physical passkey for protecting your digital life from phishing attacks. It ensures only you can access your accounts.
  • WORKS WITH 1000+ ACCOUNTS: Compatible with Google, Microsoft, and Apple. A single Security Key C NFC secures 100 of your favorite accounts, including email, password managers, and more.
  • FAST & CONVENIENT LOGIN: Plug in your Security Key C NFC via USB-C and tap it, or tap it against your phone (NFC) to authenticate. No batteries, no internet connection, and no extra fees required.
  • TRUSTED PASSKEY TECHNOLOGY: Uses the latest passkey standards (FIDO2/WebAuthn & FIDO U2F) but does not support One-Time Passwords. For complex needs, check out the YubiKey 5 Series.
Rank #4
Yubico - Security Key NFC - Basic Compatibility - Multi-Factor Authentication (MFA) Key, Connect via USB-A or NFC, FIDO Certified
  • POWERFUL SECURITY KEY: The Security Key NFC is the essential physical passkey for protecting your digital life from phishing attacks. It ensures only you can access your accounts.
  • WORKS WITH 1000+ ACCOUNTS: Compatible with Google, Microsoft, and Apple. A single Security Key NFC secures 100 of your favorite accounts, including email, password managers, and more.
  • FAST & CONVENIENT LOGIN: Plug in your Security Key NFC via USB-A and tap it, or tap it against your phone (NFC) to authenticate. No batteries, no internet connection, and no extra fees required.
  • TRUSTED PASSKEY TECHNOLOGY: Uses the latest passkey standards (FIDO2/WebAuthn & FIDO U2F) but does not support One-Time Passwords. For complex needs, check out the YubiKey 5 Series.
  • BUILT TO LAST: Made from tough, waterproof, and crush-resistant materials. Manufactured in Sweden and programmed in the USA with the highest security standards.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
Windows Errors? Fix Them Before They SpreadFree repair scan
Outdated Drivers Are Slowing You DownFree scan - exact matches

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.