Text Hash Generator
Hash exact UTF-8 text in your browser with SHA-2 or SHA-3 and verify byte counts, salt rules, and fixed-width digests before comparison.{{ summaryTitle }}
{{ summaryLine }}
{{ resultsReady ? computation.values.digest : '—' }}
{{ digestCopyAnnouncement }}
Checksum record
Comparison guidance
Compare every hexadecimal character and confirm the reference uses {{ selectedAlgorithm.label }}{{ saltText ? ` with the same ${salt_position} salt` : ' with no salt' }}. A match confirms byte equality under that rule, not publisher identity or content safety.
Legacy algorithm
MD5 and SHA-1 remain useful for matching older published checksums, but should not be selected for new collision-resistant security designs.
The chart renderer is unavailable. Digest width remains listed in the checksum record and ledger.
| Algorithm | Input | Salt rule | Case | Digest | Copy |
|---|---|---|---|---|---|
| {{ row.algorithm }} | {{ row.input }} | {{ row.salt }} | {{ row.casing }} | {{ row.digest }} |
Introduction:
Two pieces of text can look identical and still be different data. A trailing newline, an extra space, a different Unicode character, or another byte encoding changes what a hash function receives. Hashing turns that exact byte sequence into a fixed-width digest, making byte-for-byte comparison practical without placing the original text in the comparison record.
The same byte sequence and algorithm always produce the same digest. A changed digest proves that something in the hashed input or rule changed. A matching digest is useful evidence that the compared bytes agree under the same algorithm, but it does not identify the author, certify the source, scan for malicious content, or make an untrusted reference checksum trustworthy.
| Mechanism | What it establishes | What it needs |
|---|---|---|
| Plain hash | Repeatable digest of an exact input | An agreed algorithm and byte sequence |
| Keyed message authentication code | Integrity and authenticity between parties sharing a secret | A defined keyed construction and secret key |
| Digital signature | Approval by the holder of a private signing key | A signature scheme, public key, and trust decision |
| Password hash | Credential verification with costly guessing | A slow password-hashing function, work factor, and unique salt |
SHA-2 and SHA-3 are appropriate general-purpose families for new checksum and digest work. MD5 and SHA-1 remain common in old checksum lists, but collision attacks make them unsuitable when an attacker could choose the content. Reproducing a legacy digest can be necessary for compatibility without making that algorithm a sound choice for a new security design.
A salt changes the input before hashing. That can be useful when reproducing a system that already specifies an exact salt and placement. Simply prefixing or suffixing text with a salt does not create password-grade protection, an HMAC, or encryption. Password storage needs a purpose-built, slow construction such as Argon2id, scrypt, bcrypt, or PBKDF2 with the parameters required by that system.
Digest width is not a measure of input size. SHA-256 always returns 256 bits, whether the input is empty or contains a long passage. The hexadecimal display uses four bits per character, so a 256-bit digest appears as 64 hexadecimal characters. Uppercase and lowercase change only the presentation of A through F, not the underlying value.
A hash is one-way in normal use, but short or predictable inputs can still be guessed by hashing candidates and comparing the results. Do not publish a digest as though it conceals a low-entropy secret.
How to Use This Tool:
Match the reference algorithm and exact input rule before comparing any hexadecimal characters.
- Paste the exact text, including intentional spaces and line breaks. Do not trim or retype it when the comparison depends on the original byte sequence.
- Choose the algorithm named by the reference checksum or receiving system. Use SHA-256 as the ordinary default when no compatibility requirement specifies another supported algorithm.
- Leave Salt text blank for an ordinary digest. When reproducing a specified salted rule, enter the exact salt and choose whether it comes before or after the text.
- Compare the completed digest character for character. Confirm the input byte count, digest width, salt rule, and algorithm as well as the hex string; letter case alone does not change the digest value.
Interpreting Results:
A match supports one narrow conclusion: the compared inputs produced the same digest under the same stated rule. Confidence still depends on obtaining the reference digest through a trustworthy channel. If an attacker can replace both the text and the published checksum, a match proves nothing about provenance.
- If the digest differs, check algorithm, salt placement, line endings, leading or trailing whitespace, and visually similar Unicode characters.
- Use MD5 or SHA-1 only to reproduce a legacy checksum. Do not treat a match under either algorithm as collision-resistant proof against deliberately crafted content.
- Do not use the optional salt control to design password storage. It performs one fast hash with direct concatenation and no work factor.
Technical Details:
Text hashing operates on bytes, while the editable input is a Unicode string. The exact transformation therefore includes both the optional concatenation rule and UTF-8 encoding before the selected digest algorithm is applied.
Transformation Core
| Stage | Exact behavior |
|---|---|
| Assemble text | With no salt, hash the entered text. Prefix mode hashes salt + text; suffix mode hashes text + salt. No delimiter or Unicode normalization is added. |
| Encode | Convert the assembled string to UTF-8 bytes. Every whitespace and line-break byte remains significant. |
| Digest | Apply the selected MD5, SHA-1, SHA-2, SHA-3, or RIPEMD-160 function to the complete byte sequence. |
| Present | Render the fixed-width digest as hexadecimal. Uppercase mode changes A through F after hashing; it does not recompute another value. |
| Algorithm | Digest bits | Hex characters | Use note |
|---|---|---|---|
| MD5 | 128 | 32 | Legacy checksum compatibility |
| SHA-1 | 160 | 40 | Legacy checksum compatibility |
| SHA-2-224 | 224 | 56 | SHA-2 family |
| SHA-2-256 | 256 | 64 | Practical default |
| SHA-2-384 | 384 | 96 | SHA-2 family |
| SHA-2-512 | 512 | 128 | SHA-2 family |
| SHA-3-224 | 224 | 56 | SHA-3 family |
| SHA-3-256 | 256 | 64 | SHA-3 family |
| SHA-3-384 | 384 | 96 | SHA-3 family |
| SHA-3-512 | 512 | 128 | SHA-3 family |
| RIPEMD-160 | 160 | 40 | Compatibility use |
The text field accepts up to 100,000 UTF-16 code units, and the salt field accepts up to 256. The displayed UTF-8 byte count measures the unsalted text; the salt rule reports salt bytes separately. A digest record is accepted only when its hexadecimal length exactly matches one quarter of the selected bit width.
Worked mechanism path
With no salt, lowercase hex, and SHA-2-256, the UTF-8 text The quick brown fox jumps over the lazy dog produces d7a8fbb307d7809469ca9abcb0082e4f8d5651e46d3cdb762d02d0bf37c9e592. Adding a period, newline, or salt produces a different byte sequence and therefore another digest.
Direct concatenation has no built-in field boundary. For example, different text-and-salt splits can assemble the same final string. Reproduce only a salt convention that is already defined by the system being checked.
Privacy and Security Notes:
Text and salt are hashed in the browser and are not added to the page’s URL settings. A digest may be unavailable if the browser cannot load support for the selected algorithm.
- A browser-local hash does not make sensitive text safe to paste into an untrusted or compromised device.
- A plain digest is not encryption and should not be used as a substitute for access control.
- Short secrets can be guessed even when only their hashes are exposed.
- For downloaded or signed content, obtain the reference checksum or signature through an independently trusted source.
References:
- FIPS 180-4: Secure Hash Standard, National Institute of Standards and Technology, August 2015.
- FIPS 202: SHA-3 Standard, National Institute of Standards and Technology, August 2015.
- NIST Retires SHA-1 Cryptographic Algorithm, National Institute of Standards and Technology, December 15, 2022; updated April 8, 2026.
- RFC 6151: Updated Security Considerations for MD5, Internet Engineering Task Force, March 2011.
- Password Storage Cheat Sheet, OWASP Foundation.