Contact

Tools  /  Security  /  SHA-256 Hash Generator

SHA-256 Hash Generator

SHA-256 with a live proof-of-work mining demo (the real double-SHA-256 Bitcoin uses), a multi-file checksum-list verifier, and a straight answer on why it is still the right choice -- and why raw SHA-256 is still the wrong choice for passwords.

What this tool does

Computes SHA-256 from text or a file, a real proof-of-work mining demo using the exact double-SHA-256 construction Bitcoin mining actually performs, a checksum-list verifier for matching an uploaded file against a SHASUMS-style list of published hashes, and a self-check against the official standard test vectors. This is a focused, SHA-256-specific companion to this site's general Hash Generator -- here for the two things that make SHA-256 worth a dedicated page: it is the hash doing real economic work inside Bitcoin mining right now, and it is still, a decade after SHA-1 broke, the hash everyone reaches for by default -- except for one specific job it was never designed for.

Why SHA-256 is still the standard

No practical collision attack has ever been demonstrated against SHA-256. It has been the standard signature hash for TLS certificates since browsers and CAs finished retiring SHA-1 in 2017, it is the default hash behind most software download checksums and Docker image digests, and it is the proof-of-work hash securing the Bitcoin network. The only theoretical dent is Grover's algorithm, a quantum-computing result that would roughly halve SHA-256's effective security margin from 256 bits to 128 bits of work -- still comfortably secure, and only relevant once large-scale quantum computers exist, which they currently don't.

Proof-of-work: SHA-256 doing real work

Bitcoin mining is, mechanically, a brute-force search for a number (a nonce) that makes SHA-256(SHA-256(block data + nonce)) -- applying the hash twice, called SHA-256d -- start with enough zero bits to be below a target threshold. There's no shortcut: the only way to find one is to keep trying nonces until you get lucky, which is exactly what makes it *proof* of work -- producing a valid one is provably expensive, and verifying it is instant. The demo on this page runs the real SHA-256d construction client-side at a small, demo-scale difficulty (a handful of leading hex zeros, rather than Bitcoin's real-world difficulty of roughly 19+ leading zero bits and climbing), so you can watch the actual search happen in your browser.

Verifying a checksum list

Most software downloads publish a SHASUMS256.txt- style file: one SHA-256 hash and a filename per line, produced by sha256sum. Paste that whole file in and upload the file you downloaded -- this tool matches it by filename and tells you immediately whether the bytes you actually got match what the publisher signed off on, which is the entire point of publishing a checksum in the first place.

Why SHA-256 is still the wrong tool for passwords

This is the detail most "use SHA-256, it's the strong one" advice skips: raw SHA-256, salted or not, is still a bad way to store a password. SHA-256 is deliberately fast -- gigahashes per second on commodity GPU hardware -- which is exactly the property you want for verifying a file and exactly the property you don't want for a password, because it means an attacker who steals your hash database can brute-force every short or common password in a database in hours. Password storage needs a hash that's deliberately *slow* and memory-hard -- Argon2id (the current recommendation), scrypt, or bcrypt -- or at minimum PBKDF2 with a high iteration count, never a bare general-purpose hash like SHA-256, SHA-1, or MD5.

Self-check against FIPS 180-4 and RFC 4231

FIPS 180-4 publishes the official SHA-256 test vectors and RFC 4231 publishes the official HMAC-SHA256 test vectors -- computed live here via the browser's native Web Crypto implementation and checked against the published values.

Privacy

Everything, including the mining demo, runs entirely in your browser via the native Web Crypto API. Nothing is uploaded.

Frequently asked questions

Is SHA-256 safe to use for passwords?
No -- not even salted. SHA-256 is deliberately fast, which lets an attacker who steals a password database brute-force it at billions of guesses per second on a GPU. Use a slow, memory-hard algorithm built for passwords instead: Argon2id, scrypt, or bcrypt.
What is SHA-256d and why does the mining demo use it?
SHA-256 applied twice in a row -- SHA-256(SHA-256(data)). This is the exact construction Bitcoin uses for its proof-of-work mining and its block/transaction hashes, so the demo here reproduces the real algorithm, just at a much smaller demo-scale difficulty than the real network.
Has SHA-256 ever been broken?
No practical collision has ever been demonstrated. The only known theoretical weakening comes from Grover's algorithm on a large-scale quantum computer, which would roughly halve its effective security margin -- still a comfortable 128-bit equivalent, and not a threat with hardware that exists today.
How does the checksum-list verifier work?
Paste a multi-line SHASUMS-style file (one SHA-256 hash and filename per line, the standard sha256sum output format), upload the file you actually downloaded, and it's matched by filename against the list and compared byte-for-byte to the hash you computed locally.
Why does Bitcoin mining need to be this expensive?
There is no shortcut to finding a nonce that produces a hash below the target -- the only method is brute-force search. That built-in cost is the whole point: producing a valid proof-of-work is provably expensive, while verifying one someone else found is instant, which is what secures the network against cheap rewrites of its history.
How is this different from the main Hash Generator?
The main Hash Generator covers nine algorithms side by side for quick comparison. This tool goes deep on SHA-256 specifically: a real proof-of-work mining demo, a checksum-list verifier, and the FIPS 180-4/RFC 4231 self-check -- depth on one algorithm rather than breadth across several.
Is anything I hash, mine, or verify here sent anywhere?
No. Every computation, including the mining demo, runs entirely in your browser using the native Web Crypto API -- this tool has no server component.
Theme Accent