Introduction
Whirlpool is a 512-bit cryptographic hash function designed by Vincent Rijmen (co-designer of AES) and Paulo S. L. M. Barreto in 2000. It is standardized as ISO/IEC 10118-3 and was adopted by the NESSIE and Streebog projects in Europe. If you need to compute a Whirlpool digest in the browser without installing OpenSSL, this whirlpool hash generator does it with a WebAssembly implementation that runs entirely client-side. No data leaves your device.
What this tool does
- Computes the Whirlpool hash of any input text and returns a 128-character lowercase hex string.
- Uses the hash-wasm WebAssembly implementation, which is faster than pure JavaScript ports.
- Processes input as UTF-8 bytes, matching the behavior of OpenSSL and reference implementations.
- Updates the hash in real time as you type.
- Loads the WASM module asynchronously on first use, then caches it for instant subsequent hashes.
- Runs entirely client-side with no network requests.
How this tool works
Type or paste text into the input field. The tool dynamically imports the hash-wasm package, which loads a WebAssembly binary compiled from the reference Whirlpool C implementation. The WASM module loads asynchronously on first use (usually under a second), then stays cached in memory so subsequent hashes are instant. The input is encoded as UTF-8 bytes and fed to the Whirlpool compression function, which produces a 512-bit digest rendered as 128 hex characters.
The output matches what you would get from OpenSSL's dgst -whirlpool command and from the reference implementation published with the ISO standard. There is no seed or salt parameter because Whirlpool is a plain hash function; if you need a keyed hash, use the HMAC Generator with a Whirlpool-capable library.
How Whirlpool works
Whirlpool is named after the Whirlpool galaxy (M51). It was designed by Vincent Rijmen and Paulo S. L. M. Barreto and first published in 2000. The current version (Whirlpool-T, often just called Whirlpool) was finalized in 2003 and standardized as ISO/IEC 10118-3:2004.
The design borrows from AES. Whirlpool uses a 512-bit block size and a 512-bit output, with a compression function based on the Miyaguchi-Preneel construction. The internal state is an 8x8 byte matrix, and the round function uses the same SubBytes, ShiftColumns, MixRows, and AddRoundKey transformations as AES, but scaled up to the 512-bit state. The S-box is the same as AES. The number of rounds is 10.
Whirlpool was one of the five hash functions selected by the NESSIE project (New European Schemes for Signatures, Integrity, and Encryption) in 2003. It was also evaluated by the Japanese CRYPTREC project. The Russian Streebog hash function (GOST R 34.11-2012) is partly inspired by Whirlpool.
Whirlpool is not as widely deployed as SHA-256 or SHA-512, but it appears in some cryptographic libraries (OpenSSL, Bouncy Castle, Crypto++) and in systems that wanted a non-NIST alternative during the SHA-3 competition. There are no known practical attacks on the full Whirlpool hash.
How to use this tool
- Type or paste the text you want to hash into the input field.
- The tool loads the Whirlpool WASM module on first use (usually under a second).
- The 128-character hex hash appears in the output field. Copy it with the Copy button.
- Edit the input and the hash updates in real time.
Real-world examples
Reproducing an OpenSSL Whirlpool digest
A developer has a script that runs openssl dgst -whirlpool on a file and wants to verify the digest from a browser-based tool. They paste the file contents into this tool and confirm the 128-character hex output matches the OpenSSL result. This works because both use the same Whirlpool-T variant standardized in ISO/IEC 10118-3.
Non-NIST hash for a content-addressed store
A team building a content-addressed storage system wants to avoid NIST curves and hashes for policy reasons. They pick Whirlpool as the digest function because it was designed in Europe and standardized by ISO, not NIST. They use this tool to compute test digests during development and verify their storage layer addresses content correctly.
Cross-checking a Bouncy Castle hash
A Java developer uses Bouncy Castle's WhirlpoolDigest in a service and needs to verify the output from a browser tool. They hash the same input string in both places and confirm the 128-character hex digests match. This validates that their Bouncy Castle configuration uses the Whirlpool-T variant rather than the original Whirlpool-0.
Comparison with similar methods
| Method | Complexity | Typical use |
|---|---|---|
| Whirlpool (ISO/IEC 10118-3) | 512-bit, AES-like, 10 rounds | NESSIE, non-NIST deployments |
| SHA-512 (FIPS 180-4) | 512-bit, Merkle-Damgard | TLS, PGP, general purpose |
| SHA-3-512 (FIPS 202) | 512-bit, Keccak sponge | NIST SHA-3 standard |
| BLAKE2b (RFC 7693) | 512-bit, HAIFA | Fast modern hash, faster than MD5 |
Limitations or considerations
Whirlpool is not in the Web Crypto API, so this tool uses the hash-wasm package which loads a WebAssembly binary on first use. The WASM module is about 6 KB gzipped. Whirlpool is slower than BLAKE2b and SHA-512 on most platforms because of its 10-round AES-like compression function. There is no known practical attack on Whirlpool, but it has received less cryptanalytic attention than SHA-2 and SHA-3. For new systems, SHA-256, SHA-512, SHA-3, or BLAKE2 are more common choices. Whirlpool is appropriate when you specifically need ISO/IEC 10118-3 compatibility or a non-NIST hash.
Frequently asked questions
Is Whirlpool standardized?
Yes. Whirlpool is standardized as ISO/IEC 10118-3:2004. It was also selected by the European NESSIE project and evaluated by the Japanese CRYPTREC project. It is not a NIST or FIPS standard, which is why it is sometimes chosen by systems that want a non-US hash function.
What is the difference between Whirlpool-0, Whirlpool-T, and Whirlpool?
Whirlpool-0 is the original 2000 version. Whirlpool-T is the 2003 revision with a tweaked S-box and diffusion matrix. Whirlpool (no suffix) usually refers to Whirlpool-T, which is the ISO standard version. This tool implements Whirlpool-T, matching OpenSSL and Bouncy Castle.
Is Whirlpool faster than SHA-512?
Usually not. Whirlpool uses a 10-round AES-like compression function that is slower than SHA-512's Merkle-Damgard construction on most platforms. BLAKE2b is faster than both. Whirlpool is chosen for standardization or policy reasons, not for speed.
Can I use Whirlpool for password hashing?
No. Whirlpool is a fast hash function with no salt or work factor. Use bcrypt, Argon2, or scrypt for password hashing. Whirlpool is appropriate for file integrity, content addressing, and digital signatures where the input is not attacker-controlled.
Conclusion
Whirlpool is a 512-bit ISO-standard hash function with an AES-like internal design. This tool computes it in the browser using a WebAssembly implementation and matches OpenSSL and Bouncy Castle output. For most new systems, SHA-256, SHA-512, SHA-3, or BLAKE2 are more common choices, but Whirlpool is the right pick when you need ISO/IEC 10118-3 compatibility. For other 512-bit hashes, try the SHA-512, SHA-3, or BLAKE2b tools.