Cryptography Tools
SHAKE128 Generator
Generate SHAKE128 output from UTF-8 text. Choose 16, 32, 64, or 128 output bytes to match the length required by a protocol.
✓ Every tool runs in your browser. We do not upload your input or output.
Keyboard shortcuts
Ctrl/⌘ + Enter: process
Ctrl/⌘ + Shift + F: full screen
Esc: exit full screen
Ctrl/⌘ + F in editor: search
How to use
- Enter the exact UTF-8 text to process.
- Choose the required output length in bytes.
- Run the tool and compare its hex output with a SHAKE128 reference using that length.
- Copy the result together with the chosen byte count.
Examples
Produce a 32-byte test value
Changing the output length changes the amount of output requested.
Release manifest v3.1
64 hexadecimal characters at 32 bytes
Specify the requested output length
SHAKE128 is an extendable-output function in the SHA-3 standard. Unlike a fixed-output hash, it can provide different output lengths from the same input. This page offers four useful byte counts and presents the selected output as lowercase hexadecimal text. Thirty-two bytes create 64 hex characters. When a protocol says SHAKE128, look for its required output length as well; without that detail, two implementations may display different amounts of data.
The editor content becomes UTF-8 bytes and is processed locally in a Web Worker. The tool does not parse the text as JSON or normalize whitespace. SHAKE128 is not interchangeable with SHA3-256 or SHAKE256, even if you choose a matching output size. Use a keyed construction when you need message authentication rather than relying on an unkeyed digest. The NIST SHA-3 standard defines SHAKE128 as an extendable-output function.
The first bytes of a shorter SHAKE128 result match the corresponding prefix of a longer result for the same input. Still, the requested length is part of a protocol contract. Record it explicitly so another implementation knows how many bytes to consume.
Frequently asked questions
Is SHAKE128 a fixed-length hash?
No. It is an extendable-output function; you choose how many bytes to read.
Why does length matter for comparisons?
Both systems must request the same output length and use the same input bytes.
Is SHAKE128 the same as SHA3-256?
No. They have different domain separation and output behavior.
Can I choose an arbitrary length here?
This interface offers 16, 32, 64, and 128 bytes to keep requests bounded.