User Rating 0.0 โ˜…โ˜…โ˜…โ˜…โ˜…
Total Usage 0 times
Is this tool helpful?

Your feedback helps us improve.

โ˜… โ˜… โ˜… โ˜… โ˜…

About

SHA-3 (Secure Hash Algorithm 3) is the latest member of the Secure Hash Algorithm family, standardized by NIST in FIPS 202 (2015). Unlike SHA-2, which uses a Merkle - Damgรฅrd construction, SHA-3 is built on the Keccak sponge function with a permutation width of 1600 bits and 24 rounds. This architectural difference provides resilience against length-extension attacks without requiring HMAC wrappers. Using this generator incorrectly - for instance, confusing SHA-3-256 with SHAKE256 or assuming SHA-3 output is interchangeable with SHA-2 - can break protocol compliance in TLS certificate pinning, blockchain address derivation, or digital forensics chain-of-custody logs.

This tool generates hashes from cryptographically secure random input via crypto.getRandomValues(), then applies the full Keccak-f[1600] permutation. Each hash is computed from 32 bytes of fresh entropy. The implementation covers all four SHA-3 fixed-length variants: 224, 256, 384, and 512 bits. Note: this tool does not implement SHAKE128/SHAKE256 (extendable-output functions), which use a different domain separation byte (0x1F vs 0x06).

sha3 hash generator keccak random hash sha-3 256 sha-3 512 cryptographic hash checksum generator

Formulas

SHA-3 is based on the Keccak sponge construction. The state is a 5 ร— 5 matrix of 64-bit lanes, totaling 1600 bits. The permutation Keccak-f[1600] applies 24 rounds of five step mappings.

b = r + c = 1600

The rate r determines how many bits are absorbed per block. For SHA-3-d:

r = 1600 โˆ’ 2 โ‹… d

Each round i โˆˆ {0, ..., 23} applies:

R = ฮน ฯ‡ ฯ€ ฯ ฮธ

Where ฮธ computes column parities and XORs them with adjacent columns. ฯ rotates each lane by a fixed offset. ฯ€ permutes lane positions. ฯ‡ is the only non-linear step: A[x] = A[x] โŠ• (ยฌA[x+1] โˆง A[x+2]). ฮน XORs a round constant into lane [0,0]. After absorbing and permuting, the output is squeezed from the first d bits of the state.

Where b = state width (1600 bits), r = rate (bits absorbed per block), c = capacity (security parameter), d = output digest length in bits, A[x] = state lane at position x.

Reference Data

VariantOutput (bits)Output (hex chars)Rate r (bits)Capacity c (bits)Security (bits)Domain ByteBlock Size (bytes)
SHA-3-2242245611524481120x06144
SHA-3-2562566410885121280x06136
SHA-3-384384968327681920x06104
SHA-3-51251212857610242560x0672
SHAKE128VariableVariable1344256min(d/2, 128)0x1F168
SHAKE256VariableVariable1088512min(d/2, 256)0x1F136
SHA-2-25625664N/A (MD)N/A (MD)128N/A64
SHA-2-512512128N/A (MD)N/A (MD)256N/A128
MD5 (broken)12832N/A (MD)N/A (MD)0 (collisions)N/A64
BLAKE2b-25625664N/A (HAIFA)N/A128N/A128
BLAKE325664N/A (Merkle)N/A128N/A64
Keccak-256 (Ethereum)2566410885121280x01136

Frequently Asked Questions

They share the same Keccak-f[1600] permutation but differ in domain separation. SHA-3-256 (FIPS 202) pads the message with byte 0x06, while the pre-standardization Keccak-256 used in Ethereum pads with 0x01. This means identical inputs produce different digests. If you need Ethereum-compatible hashes, this tool's output is not directly usable - you would need to change the domain separation byte.
Yes. Each hash is computed from 32 bytes generated by crypto.getRandomValues(), which is backed by the operating system's CSPRNG (e.g., /dev/urandom on Linux, BCryptGenRandom on Windows). The output passes NIST SP 800-22 randomness tests. However, the browser environment cannot guarantee the absence of side-channel leaks - do not use this for key generation in high-security contexts.
SHA-3-512 outputs exactly 512 bits, which is 128 hexadecimal characters. Each hex digit encodes 4 bits: 512 รท 4 = 128. If you see fewer, check if your display is truncating. The tool shows the full digest. SHA-3-256 produces 64 hex characters, SHA-3-384 produces 96, and SHA-3-224 produces 56.
Theoretically, yes. For SHA-3-256, the probability of a collision among n hashes is approximately n2 รท 2257 (birthday bound). For 1000 hashes, this is roughly 10โˆ’71 - far below the probability of a hardware bit-flip corrupting your output. In practice, collision is impossible for any quantity this tool generates.
The capacity c = 2 โ‹… d guarantees that collision resistance is d รท 2 bits and preimage resistance is d bits. A larger capacity means a smaller rate, which makes hashing slower (more blocks needed). SHA-3-512 has the largest capacity (1024 bits) and the smallest rate (576 bits), making it the slowest but most secure variant.
No. SHA-3 is a fast hash function. Password storage requires deliberately slow algorithms like Argon2id, bcrypt, or scrypt to resist brute-force attacks. A modern GPU can compute billions of SHA-3-256 hashes per second. Use these hashes for checksums, unique identifiers, commitment schemes, or random tokens - not for protecting passwords.