An incomplete guide to ciphers