# Ciphers & Codes

A tool to learn about various ciphers, and encode and decode text.

## Supported Ciphers

### Affine

A monoalphabetic substitution cipher. Each letter in the alphabet is mapped to a number, then encrypted/decrypted using a math formula, and finally converted back to a letter.

### Atbash

A simple substitution cipher originally created for the Hebrew alphabet. When used with the English alphabet, this cipher reverses the alphabet.

### Caesar

A popular substitution cipher, where the alphabet is shifted up or down a specified number of positions.

### Keyed Substitution

A monoalphabetic substitution cipher, where a keyword placed into beginning of the alphabet, and any duplicated letters are removed.

### Masonic

A geometric simple substitution cipher which exchanges letters for symbols which are fragments of a grid

### Playfair

Encrypts pairs of letters, using a 5x5 grid.

**Polybius Square**

**Polybius Square**

A cipher where each alphanumeric (a-z, 0-9) character is represented by it’s coordinates in a grid.

### Vigenère

A simple polyalphabetic substitution cipher which uses a tableau composed of each of the 26 options of the Caesar Cipher.

## 🎨 Design

Catalog of various redesigns over time as I got the itch to work on this again.