Pencil-paper safe cryptography

Here we discuss the cryptosystems which played an important role in various battles and the world wars. These were considered secure against humans with only pencil and paper.

To get started, one can consider the following resources:

S. No.Books/Lecture notes/python implementation
1Enigma Cryptanalysis - Gaurish Korpal (AUD, July 2015)
2The code book : how to make it, break it, hack it, crack it - Simon Singh (Delacorte Press, 2002)
3Lectures on Cryptography: Classical ciphers - Szabolcs Tengely (Debrecen, 2020)
4Introduction to Cryptography with Open-Source Software (first three chapters) - A. McAndrew (CRC Press, 2011)
5Classical Cryptosystems - David R. Kohel and Minh Van Nguyen (SageMath reference manual, 2007–08)
6Sage Interactions - Cryptography - A. Feaver et al. (SageMath Wiki, August 2019)
7pycipher: classical ciphers implemented in Python - J. Lyons et al.

Substitution ciphers

Posted on August 29, 2021

Substitution is a function which uses a set of rules to transform elements of a sequence into a new sequence using a set of rules which “translate” from the original sequence to its transformation. The easiest substitution is given when each character is replaced by exactly one other character. This encryption can be broken with statistical methods because in every language characters appear with a particular probability.

Transposition ciphers

Posted on September 19, 2021

Permutation of a set $X$ is a bijective function $\sigma : X \to X$ that for each element $x \in X$ assigns a unique value $\sigma(x) \in X$. A transposition is a permutation of two elements and any permutation is also a product of transpositions.