# Substitution Cipher Tool

The tool to encrypt/decrypt messages with simple substitution cipher given as key. It is also useful for manual cryptanalysis of substitution cipher - when you have message written in English alphabet partially decrypted with automatic tool and want to tweak the key.

This simple tool allows you to encode and decode messages with simple substitution cipher. For cipher breaker, see Substitution cipher breaker. For those who forgot, you can read cipher description and some considerations on strength of the cipher below the calculator.

According to Wikipedia, in cryptography, a substitution cipher is a method of encrypting by which units of plaintext are replaced with ciphertext, according to a fixed system; the "units" may be single letters (the most common), pairs of letters, triplets of letters, mixtures of the above, and so forth. The receiver deciphers the text by performing the inverse substitution.

Simple substitution is the substitution of single letters separately. The substitution key is usually represented by writing out the alphabet in some order. The Caesar cipher is the form of simple substitution cipher. For example, its ROT2 key can be presented as CDEFGHIJKLMNOPQRSTUVWXYZAB. This means that A is replaced with C, B with D, and so on.

Number of all possible keys for simple substitution cipher is factorial of 26 (26!). However, you can break it if you have enough ciphered text to use frequency analysis or stochastic optimization algorithm (check out our Substitution cipher breaker). The cipher does not change language letter frequencies (it is said to be monoalphabetic), unlike, for example, polyalphabetic Vigenère cipher, so it is considered to be rather weak.

Paste text into field, fill the key, choose "encode" if you have pasted clear text or "decode" if you have pasted ciphered text, and press "Calculate". Traditionally, punctuation and spaces are removed to disguise word boundaries and text is written in blocks of letters, usually five. This option is supported for encoding as well.

## Comments