An Introduction to Methods for the Solution of Ciphers