Cryptography · Cluster

Symmetric Ciphers

Block and stream cipher design.

  1. 01 Why a Feistel Round Function Need Not Be Invertible The two-branch construction that turns any function into a permutation, why decryption reuses the encryption circuit, and what the halved diffusion rate costs. foundational · Mar 22, 2025
  2. 02 The AES State Matrix: Byte Ordering, ShiftRows, and MixColumns How sixteen key bytes map onto a four-by-four matrix, why the row shift moves different distances, and what MixColumns does to a column as a polynomial. foundational · Aug 9, 2023
  3. 03 Key Schedules: Why Subkeys Cannot Be Independent The key expansion that derives a round key from a short master key, the nonlinearity it must add, and the related-key and slide attacks that punish weak expansion. foundational · Aug 20, 2026
  4. 04 Constructing an S-Box: Field Inversion and Differential Uniformity Why the AES substitution table is an inverse map in GF(2^8) followed by an affine transform, and how differential uniformity bounds the best characteristic. intermediate · Oct 12, 2026
  5. 05 Diffusion and Branch Numbers in Block Cipher Design How the wide-trail strategy counts active S-boxes across rounds, why a branch number of five bounds a four-round characteristic, and where the bound stops applying. intermediate · Dec 26, 2025
  6. 06 ARX Ciphers: Carry Chains as the Only Nonlinearity Why modular addition provides nonlinearity in add-rotate-xor designs, how carries propagate as a probabilistic process, and why diffusion is measured in bits. intermediate · Dec 25, 2023
  7. 07 LFSR Keystream Generators and the Linearity That Must Be Broken Why a shift register with linear feedback is a perfect pseudorandom generator and a useless cipher, and how combining several of them buys nonlinearity. intermediate · May 27, 2024
  8. 08 Differential and Linear Cryptanalysis as Trail Counting The two classical attacks reduce to finding high-probability differentials and high-bias linear approximations, and both are bounded by the same active S-box count. advanced · Apr 28, 2026
  9. 09 Constant-Time AES: Removing the Secret-Dependent Table Lookup Why a 256-byte S-box leaks key bits through cache behaviour, and how bit-slicing and vector permutes replace the lookup without changing the cipher. advanced · Jan 23, 2025
  10. 10 Tweakable Block Ciphers and the Cost of Sector Independence How a public tweak makes one key behave like many, why the tweak must enter before the first round, and what XTS and Threefish give up to get it. advanced · Feb 13, 2026