Hash & HMAC Generator
Generate cryptographic hashes (SHA-1, SHA-256, SHA-512) and HMAC signatures for your text data.
Use it to verify that a download matches a published checksum, to check a webhook or API signature against an HMAC you compute from a shared secret, or to compare how each algorithm transforms the same input.
All hashing runs locally in your browser, so the text and secret you enter are never sent to a server.
Configuration
Hash and HMAC Generator
Hash functions and HMAC signatures are used to verify integrity, compare data, sign webhook payloads, and debug authentication flows. This tool helps generate common SHA hashes and HMAC values in the browser from text input.
Common use cases
- Verify file or payload integrity: Compare expected and actual hash values during debugging.
- Debug webhook signatures: Recreate HMAC values from a payload and shared secret.
- Generate test fixtures: Prepare sample hashes for documentation, tests, or API examples.
Security note
Plain hashes are not suitable for storing passwords without a dedicated password hashing algorithm and salt. HMAC secrets and production payloads should be handled carefully and should not be shared in public examples.
Articles for this tool
JWT Security Deep Dive: Attack Vectors, JWKS, and Production Best Practices
A thorough guide to JWT security — covering the alg:none attack, algorithm confusion, key management with JWKS, token revocation strategies, and a production-ready security checklist.
Hashing, Salt, and HMAC: A Developer's Guide to Secure Data Handling
Learn how SHA-256, bcrypt, and Argon2 work, why salting passwords is non-negotiable, when to use HMAC vs. plain hashing, and practical implementation patterns in JavaScript, Python, and Go.
Encoding vs Hashing vs Encryption: The Difference and When to Use Each
Base64 encoding, SHA-256 hashing and encryption are constantly confused, yet serve completely different purposes. A comparison table, concrete examples, and the right choice for each use case.
Recent Articles
CREATE TABLE Reference: MySQL vs PostgreSQL vs SQLite Types & Constraints
A cross-database CREATE TABLE (DDL) reference with cheat sheets for data types, auto-increment keys (AUTO_INCREMENT / IDENTITY / rowid), foreign key ON DELETE behavior, and the CHECK constraint that MySQL silently ignores.
How CREATE TABLE Generation From a Visual Table Design Works | DDL Builder
A look inside DDL Builder, which turns a visually designed table into CREATE TABLE statements and an ER diagram. Covers the MySQL/PostgreSQL/SQLite type-mapping rules and the column-inference algorithm used for JSON samples.
GitHub Actions needs Design Patterns: Speed Up CI, Avoid the Anti-Patterns
A pattern reference for GitHub Actions job dependencies (needs). Covers diamond-shaped fan-out, concurrency cancellation, fail-fast tradeoffs, matrix-plus-needs gotchas, and reusable workflows, with copy-paste YAML examples.
SQL JOIN Types: Complete Reference to INNER, LEFT, RIGHT & FULL
A reference for SQL JOIN types (INNER/LEFT/RIGHT/FULL/CROSS/SELF) with a cheat sheet and row-count walkthroughs. Covers why one-to-many joins duplicate rows, the WHERE-vs-ON NULL trap, and how to write multi-table joins.
Case Converter: camelCase, snake_case & kebab-case — 9 Styles at Once
Convert identifiers between camelCase, PascalCase, snake_case, CONSTANT_CASE, kebab-case and more — all nine styles side by side. Handles acronym runs like HTTPServer, digits, and bulk multi-line conversion.
LLM API Cost Calculator: Compare Claude, GPT & Gemini Pricing Side by Side
Paste a prompt, set the expected output tokens, and compare per-request API costs across Claude, GPT and Gemini models. Covers input/output pricing structure, auto-updated price tables, and estimate limits.