BLAKE2s
Calculate BLAKE2s hashes or keyed MACs from text and encoded bytes with selectable digest length, key encoding, Hex, and Base64 output. Read more
What is BLAKE2s?
BLAKE2s is the BLAKE2 variant optimized for 8-bit to 32-bit platforms and produces digests up to 256 bits. It is a distinct algorithm from BLAKE2b, not merely BLAKE2b with a shorter output. This tool supports both ordinary hashing and BLAKE2s’s built-in keyed mode.
How to use this hash calculator
- Enter text or encoded bytes.
- Select the input encoding that describes the supplied value.
- Choose an output length from 1 to 256 bits and select Hex or Base64 output.
- Leave Key empty for an ordinary digest, or enter the same secret key and key encoding expected by a keyed BLAKE2s implementation.
Output length is an algorithm parameter. Do not substitute a truncated BLAKE2s-256 string when a protocol specifies a shorter native BLAKE2s digest.
Result example
With a 256-bit output and no key, UTF-8 abc produces 508c5e8c327c14e2e1a72ba34eeb452f37458b209ed63a294d999b4c86675982. The Hex input 616263 gives the same result when Hex is selected because both inputs represent identical bytes.
Important limitations
An ordinary BLAKE2s digest is unkeyed and does not authenticate its source. In keyed mode, the key, message bytes, digest length, and encodings must match on both sides. BLAKE2s is not intended for password storage; fast general-purpose hashes allow attackers to test password guesses quickly.
RFC 7693 defines BLAKE2s, BLAKE2b, variable digest sizes, and their keyed operation.
Frequently asked questions
Why does my result differ from another tool?
Verify that the expected algorithm is BLAKE2s, then compare the digest length, exact input bytes, optional key bytes, and output encoding. BLAKE2b and BLAKE2s never become interchangeable by selecting the same displayed length.
Can I use the result to verify data?
Use the BLAKE2s File Hash tool for a local file or accessible URL. The text page should be used only when you intentionally control how text is encoded into bytes.