Ciphers and Such!
April 2021
Introduction
In this series, I want to try to code different encryption techniques. I’ll start with substitution ciphers, and possibly end with a one-time pad or an Enigma emulator. Who knows?
Vocabulary
- ASCII: A system to represent characters in a way a computer can understand. More specifically, a system for encoding characters (letters, numbers, symbols) in decimal, binary, and hexadecimal numbers.
-
Substitution cipher: A method of encryption where each character is substituted for
another character, using either a key or a mathematical function.
Comes in 2 varieties:
- Monoalphabetic Substitution cipher: Uses a single alphabet to encrypt a message. Examples include the Caesar cipher and ROT13.
- Polyalphabetic Substitution cipher: Uses multiple alphabets to encrypt a message. Examples include the Vignère cipher and the Enigma machine.
Ciphers
- Caesar Cipher: One of the simplest and oldest ciphers. Simply a monoalphabetic substitution cipher.
- Affine Cipher: An even simpler monoalphabetic substitution cipher, where each letter only has very few encrypted equivalents.
More code can be found on this project’s GitHub repo.