cryptopals challange @ http://cryptopals.com/