
Welcome to the introductory module on Cryptology. This room covers the transition from manual, "classical" encryption methods to the foundational terminology used in modern cybersecurity. Understanding these concepts is essential for both the designer (cryptographer) and the breaker (cryptanalyst).
Cryptology is the overarching scientific discipline concerned with secure communication in the presence of adversaries. It is bifurcated into two distinct, yet complementary fields:
• Cryptography: The art and science of designing ciphers (encryption algorithms) to ensure the confidentiality and integrity of information.
• Cryptanalysis: The analytical study of ciphers to identify weaknesses, recover secret keys, or reconstruct original messages without authorized access.
Historically, these tasks were performed by hand or using simple mechanical devices (Classical Cryptology). In the modern era, they rely on complex mathematical algorithms and high-performance computing (Modern Cryptology).
To navigate the world of secure communications, you must master the following standard terminology: Term Definition Plaintext The original, intelligible message intended for protection.
| Ciphertext | The unintelligible, encrypted result produced after applying a cipher and key |
|---|---|
| Cipher | The algorithm or mathematical function used to perform encryption/decryption |
| Key | A secret parameter that controls the specific output of the cipher |
| Alphabet | The set of symbols permitted in the plaintext or ciphertext (e.g., A-Z) |
<aside> 💡
Kerckhoffs' Principle A fundamental tenet of professional cryptography is that the security of a system should reside solely in the secrecy of the key, not the secrecy of the algorithm.
</aside>
Classical ciphers are categorized based on how they transform the plaintext into ciphertext:
3.1 Substitution Ciphers These replace units of plaintext with different symbols. • Examples: Caesar, Vigenère, Enigma. • Mechanism: The identity of the character changes, but its position remains the same.
3.2 Transposition Ciphers These retain the original characters but scramble their positions within the message. • Examples: Scytale, Columnar Transposition. • Mechanism: The position of the character changes, but its identity remains the same.
3.3 Composed Ciphers The most secure classical systems often combine both substitution and transposition to create a more complex transformation. • Example: The ADFGVX cipher, which uses a substitution step followed by a transposition step.
The keyspace is the set of all possible keys that can be used with a specific cipher. The keyspace size determines the cipher's resistance to a "brute-force" attack (trying every possible key).
• Case Study: The Caesar Cipher ◦ Logic: A simple integer shift where each letter moves $n$ positions in the alphabet. ◦ Keyspace Size: For the 26-letter English alphabet, the keyspace is $\{0, 1, \dots, 25\}$, totaling 26 possible keys. ◦ Security Assessment: Because 26 is a very small number $\approx 2^{5}$, this cipher is trivial to break by modern standards.
Modern cryptanalysis requires a more granular understanding of how substitution is applied: • Monoalphabetic: Uses a single, fixed mapping for the entire message (e.g., Caesar). • Polyalphabetic: The mapping changes based on the letter's position, often using a keyword. • Homophonic: Maps one plaintext letter to multiple possible ciphertext symbols to flatten frequency distributions (e.g., Zodiac Killer ciphers). • Polyphonic: Maps multiple plaintext letters to the same ciphertext symbol. This creates ambiguity during decryption, requiring contextual analysis to recover the original text.
When classifying a cipher's structure, we analyze the "size" of the units processed:
6.1 Graphic Classification (Plaintext Side) • Monographic: Encrypts one letter at a time (e.g., Caesar). • Bigraphic: Encrypts pairs of letters (digrams) simultaneously (e.g., Playfair cipher).
6.2 Partite Classification (Ciphertext Side) • Monopartite: Each plaintext unit results in one ciphertext symbol. • Bipartite: Each plaintext unit results in two ciphertext symbols (e.g., the first step of ADFGVX).