Felipe Almeida Lessa | 21 Sep 04:53 2011
Picon

[ANNOUNCE] skein-0.1: Skein, a family of cryptographic hash functions. Includes Skein-MAC as well.

Hello!

I'm pleased to announce the first version of the skein package [1]!
Skein is a family of fast secure cryptographic hash functions [2].
The skein package provides high-level bindings (using crypto-api [3])
to the optimized Skein C library.  Currently we support Skein as a
hash function and also Skein as a message authentication code (MAC).
The code is well-documented with examples and has many known answer
tests (KATs).  It currently lives on patch-tag [4].

Hackage will be build the docs soon enough.  Meanwhile, here's a short example:

Prelude> :s -XOverloadedStrings
Prelude> :m Crypto.Skein Crypto.Classes Data.ByteString.Char8 Data.Serialize
Prelude Crypto.Skein Crypto.Classes Data.ByteString.Char8
Data.Serialize> encode (hash' "Haskell" :: Skein_512_512)
"b\227\213t\170\GS\131w\151\240\160\183\205\US\169\138\&6\239\215\156\227\SI\234\142P\132\182\SOH\180t\203b\147\190\DLE{\168\214\DC1\238\232y\168\161s\207\172\216\a\202\130c$\SYN\asD<\151\201D\138A\SUB"
Prelude Crypto.Skein Crypto.Classes Data.ByteString.Char8
Data.Serialize> encode (skeinMAC' "secretkey" "Haskell" ::
Skein_512_512)
"_i>.Z\129\ENQ\217L\t9BZ\220\163c&9#\135\234A{\181\&2*\149\STX\216_\DC43\bF\189\196D\r
;\208\EOT}\ENQY\147\232\244e/;4\212!\224\US\138\138\234q=1\129\244"

Enjoy! =D

[1] http://hackage.haskell.org/package/skein
[2] http://swww.skein-hash.info/
[3] http://hackage.haskell.org/package/crypto-api
[4] https://patch-tag.com/r/felipe/skein/

--

-- 
Felipe.

Gmane