A substitution cipher encrypts plaintext by replacing occurrences of one byte with another byte for all possible bytes. A basic example would be Caesar cipher, for which a key of 1 means A gets replaced by B, B gets replaced by C, etc.