A substitution cipher is a cipher that maps each symbol in the plaintext to a symbol according to a permutation of the alphabet. A breakpoint is a location in the ciphertext where the cipher changes.