crypto_blake2
Compute a BLAKE2b or BLAKE2s digest of a string, with optional keyed MAC mode and choice of eight output lengths.
Instructions
BLAKE2 Hash Generator. Compute a BLAKE2b or BLAKE2s digest of a text string, with an optional keyed (HMAC-style) mode and a choice of eight output lengths (BLAKE2b-512/384/256/160, BLAKE2s-256/224/160/128). Use crypto_blake3 for the faster XOF-capable successor, crypto_hash for MD5/SHA-1/SHA-256/SHA-512, crypto_sha3 for SHA-3/Keccak, crypto_whirlpool for Whirlpool, or crypto_ripemd for RIPEMD; reach for BLAKE2 when you want an RFC 7693 digest faster than SHA-2 at SHA-3-level security, or a keyed MAC (used by Zcash, Nano, argon2). Runs locally on the input you provide: read-only, non-destructive, deterministic (keyed mode is deterministic too), contacts no external service, and is rate-limited (5 requests/minute for anonymous callers). Returns the digest as lowercase hex plus uppercase hex, with the resolved variant, algorithm, encoding, byte length, bit count, and keyed flag.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | Data to hash, interpreted per the encoding field. The empty string is valid. | |
| encoding | No | How to decode text into bytes before hashing: UTF-8 text (default), hex, or base64. Invalid hex/base64 is rejected. | text |
| variant | No | BLAKE2 variant and digest size. blake2b* is 64-bit-optimized (up to 512-bit); blake2s* is 8-to-32-bit-optimized (up to 256-bit). Defaults to blake2b512. | blake2b512 |
| key | No | Optional UTF-8 key. When non-empty, a keyed (MAC) digest is produced and the keyed flag becomes true; when omitted or empty, a plain unkeyed digest is returned. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| hash | No | Digest as lowercase hex. | |
| algorithm | No | Resolved variant id, e.g. blake2b512. | |
| variant | No | Human-readable variant name, e.g. BLAKE2b-512. | |
| length | No | Digest length in bytes. | |
| bits | No | Digest length in bits (length x 8). | |
| encoding | No | Resolved input encoding applied to text (text, hex, or base64). | |
| keyed | No | True when a non-empty key was supplied (keyed/MAC digest). | |
| uppercase | No | The same digest in uppercase hex. |