Skip to main content

At the heart of most cryptosystems is the cipher—the algorithm that transforms plaintext (normally referred to as P) into ciphertext (normally referred to as C) and vice versa. Ciphers are generally divided into two major categories:

  • Block ciphers operate on fixed-size chunks of data, encrypting one block at a time. To encrypt messages longer than a block, various modes of operation are used to process sequential blocks securely.

  • Stream ciphers encrypt data one bit or byte at a time, generating a keystream that is combined with the plaintext, often using an XOR operation. Stream ciphers are well-suited for real-time applications like secure voice or video transmission, where data is processed continuously rather than in fixed-size segments.

Understanding these fundamental concepts is essential before examining specific encryption techniques, because the same principles—strong key management, open and peer-reviewed algorithms, resistance to cryptanalysis, and careful choice of cipher type—apply across both historical and modern systems.