My implementation of the crypto challenge.