Reproduce an API example
Hash the current textarea value as UTF-8, then compare the full digest and confirm whether the protocol expects hexadecimal, Base64, an HMAC, or a signature. Use file mode for byte-exact source fixtures.
UTF-8 or file bytes · Four algorithms · Local
Calculate SHA-256, SHA-384, SHA-512, or MD5 from text or a selected file in your browser. Compare the exact input length and copy a lowercase hexadecimal or Base64 digest without sending the input to a conversion server.
input hello
digest 2cf24dba5fb0a30e…
64 hexadecimal characters256-bit output
Text to digest
Paste up to 5,000,000 UTF-16 code units of text or choose a file up to 64 MiB, select one of four algorithms, and copy the complete digest. Files are buffered whole in browser memory rather than streamed.
Loading the hash generator…
Enable JavaScript to calculate and copy digests. The algorithm and security guidance remains available below.
Deterministic byte processing
A cryptographic hash function consumes bytes and produces a fixed-size digest. SHA-256 always returns 256 bits, whether the input is an empty string, a short identifier, or a long document. Hexadecimal displays four bits per character, so a SHA-256 digest contains 64 hex characters. Base64 is a more compact representation of the same 32 digest bytes; changing the output encoding does not change the underlying hash.
Text must become bytes before it can be hashed. LiveParse encodes the current textarea value as UTF-8. That choice matters for Korean text, emoji, accented characters, and every non-ASCII code point. Browser textarea and paste handling can normalize original CR or CRLF line endings to LF before hashing. Use file mode when original newline bytes must be preserved, and establish an explicit canonicalization rule when several systems must reproduce one value.
Hashing is deliberately one-way: there is no general operation that reconstructs the source from its digest. It is still possible to guess low-entropy inputs by hashing candidates, so a digest is not a safe way to conceal a short secret. Treat hashes as comparison values, not encrypted text.
The interactive workspace accepts at most 5,000,000 UTF-16 code units in text mode. File mode accepts at most 64 MiB and reads the complete selected file into browser memory before calculating its digest. It does not stream chunks, so use a native streaming tool for larger files or repeated batch work.
Choose by security requirement
256 bits · 64 hexA broadly supported SHA-2 default for new file and data integrity workflows.384 or 512 bitsCurrent SHA-2 alternatives when a protocol or ecosystem specifies them.128 bits · 32 hexLegacy checksums only; unsuitable for certificates, signatures, or adversarial integrity.Integrity is not authenticity
If two independently obtained digests match, it is strong evidence that the compared byte sequences are identical when a modern collision-resistant algorithm such as SHA-256 is used. This is useful for detecting download corruption, comparing build artifacts, identifying cached content, and checking whether data changed. Always compare the complete digest with an exact, case-insensitive hex parser or decoded bytes rather than a visually shortened prefix.
An ordinary hash has no secret key and no publisher identity. Anyone can compute a new digest after changing the data. If a website, mirror, or network attacker can replace both a file and the checksum displayed beside it, the matching values do not establish an authentic origin. Obtain the expected digest through a trusted channel or verify a digital signature. Use HMAC with a secret key for message authentication between parties that share that key.
Passwords need a different design again. Fast hashes let an attacker test guesses extremely quickly after a database leak. Use a password-specific KDF such as Argon2id, scrypt, bcrypt, or PBKDF2 with a unique random salt, calibrated cost parameters, safe storage, and an upgrade strategy.
Specify UTF-8, newline rules, Unicode normalization, and serialization before comparing results across tools or programming languages.
Diagnose text hash mismatches →Useful, bounded jobs
Hash the current textarea value as UTF-8, then compare the full digest and confirm whether the protocol expects hexadecimal, Base64, an HMAC, or a signature. Use file mode for byte-exact source fixtures.
Create stable digests for known text fixtures. Preserve source encoding and line endings in version control so Windows and Unix checkouts do not silently change expected values.
Hash before and after normalization to show whether a formatter, serializer, newline conversion, or Unicode operation changed the underlying bytes.
Reproduce MD5 only when an existing system requires it. Do not treat a legacy match as collision-resistant proof against a malicious input.
Questions answered
A hash generator converts an input byte sequence into a fixed-length digest using a selected algorithm. The same bytes produce the same digest, while even a small byte change normally produces a very different result.
SHA-256 is a widely interoperable default for ordinary integrity checks. SHA-384 and SHA-512 are also current SHA-2 choices. Avoid MD5 when collision resistance or adversarial security matters.
Do not store passwords with a fast general-purpose hash. Use a reviewed password-hashing system built around Argon2id, scrypt, bcrypt, or PBKDF2 with a unique salt and parameters chosen for the deployment.
Text mode hashes the current textarea value as UTF-8. Browser textarea and paste handling can normalize original CR or CRLF line endings to LF, so use file mode when the source file's original newline bytes must be preserved.
No. A matching digest shows that the compared bytes match the expected digest, but an attacker who can replace both the data and an unauthenticated checksum can make them agree. Use a trusted checksum channel, digital signature, or authenticated MAC when origin matters.
No. The hashing operation runs in the current browser tab and does not send the entered text or selected file to a hashing API. Browser extensions, clipboard tools, and other software on the device remain separate privacy boundaries.
Text input is limited to 5,000,000 UTF-16 code units. Files are limited to 64 MiB and are read completely into browser memory before hashing, so this tool is not a streaming file hasher.