Unkeyed cryptographic
Skein
A SHA-3 competition finalist designed by Bruce Schneier, Niels Ferguson, Stefan Lucks, Doug Whiting, Mihir Bellare, Tadayoshi Kohno, Jon Callas, and Jesse Walker (2008). Built on the Threefish tweakable block cipher in a Matyas-Meyer-Oseas-style mode (UBI: Unique Block Iteration). NIST picked Keccak over Skein in 2012, but Skein remains a well-studied conservative alternative.
At a glance
| Output | 256, 512, or 1024 bits (variable, XOF-style) |
|---|---|
| Internal state | 256, 512, or 1024 bits (matched to output) |
| Rounds | 72 (Skein-512), 80 (Skein-1024) |
| Internal cipher | Threefish (256 / 512 / 1024 bit blocks) |
| Status | SHA-3 finalist; no practical break; little production use |
Threefish + UBI
Threefish is a tweakable block cipher with 64-bit-word ARX rounds (add, rotate, XOR). The UBI mode chains Threefish encryptions with the tweak encoding both the chaining info and a domain separator. UBI handles fixed-length hashing, MACs, KDFs, XOFs, and tree hashing all under one umbrella , one of the design’s nicer properties.
Why Skein lost to Keccak
Both were excellent SHA-3 candidates. NIST’s stated reasons for picking Keccak were a more conservative cryptographic margin and a construction (sponge) structurally distinct from SHA-2 , deliberate diversification in case SHA-2 was broken later. Skein was the software-performance favorite and had stronger 64-bit CPU numbers than Keccak.
Where it shows up
- OpenPGP , supported hash algorithm.
- Some research libraries , reference implementations exist in C, Rust, Go.
- SHAvite-3 / Skein hash analyses , academic comparisons of SHA-3 finalists.