Solutions to cryptopals exercises