github.com/aead/skein (go): Package skein implements the Skein512 hash function based on the Threefish tweakable block cipher.  Skein is a hash function family using the tweakable block cipher Threefish in Unique Block Iteration (UBI) chaining mode while leveraging an optional low-overhead argument-system for flexibility. There are three versions of Skein, each of them using the corresponding Threefish version:  Skein can be used as hash function, MAC or KDF and supports personalized, randomized (salted) and public-key-bound hashing. Furthermore Skein has some additional features (currently) not implemented here. For details see http://www.skein-hash.info/ Skein was submitted to the SHA-3 challenge.  Skein can produce hash values of any size (up to (2^64 -1) x BlockSize bytes) not only the common sizes 160, 224, 256, 384 and 512 bit.  All Skein varaiants (as far as known) secure. The Skein authors recommend to use Skein512 for most applications. Skein256 should be used for small devices like smartcards. Skein1024 is the ultra-conservative variant providing a level of security (mostly) not needed.
Keywords: cryptography|go|skein