Thursday 29 October 2014
2.1 Transposition ciphers
Tihs esnetnec ie snrcytpew diht a rtasnpsoiitoc nihpe.r
By the way, the key is . Learn to decipher in the video.
Related reading: Rosen p. 294
Exercise 2.1 Decipher the message given above (in the green theory box).
Exercise 2.2 Write down the decryption key for the following transposition encryption key .
2.2 Advanced Encryption Standard (AES)
Modern ciphers combine two principles: diffusion and confusion. Cæsar’s cipher and many other classic ciphers only perform substitution of letters or blocks of letters. This gives confusion, but no diffusion. A transposition cipher on the other hand, does diffusion and no substitution. Neither one suffices on its own.
Iterative Ciphers use the following procedure iterates the same round function with different round keys. The round function combines substitution and transposition, and iteration makes the two closely entangled.
AES is a symmetric cipher, standardised by NIST. It is an iterative cipher where the round function combines
- Shift Rows (ShiftRows) — transposition
- Substitute Bytes (SubBytes) — non-linear substitution
- Mix Columns (MixCol) — linear substitution
- Add the key (mod 2) (AddRoundKey) — keyed transform
Remark 1 We do not yet have all the mathematical foundations required by AES. This week we work with matrix algebra over the field for prime. In AES we need matrix algebra over a field with 256 elements, but is not a field. We will learn next week how to construct a field with 256 elements.
2.3 More on matrices and numbers
Remember 1 Remember that the inverse of a matrix is the unique matrix with the property that , where is the identity matrix.
The identity matrix has all zeros except on the main diagonal which is all one.
Problem 2.1 Consider the matrix over :
Find .
Exercise 2.3 Find the inverse matrices over for
You can use Gaussian ellimination in the same way as you would over the reals.
Exercise 2.4 Find the inverse matrices over for
You can use Gaussian ellimination in the same way as you would over the reals.
Exercise 2.5 Write recursive algorithms to take a number and
- ... write it as a string in binary representation.
- ... write it as a string using Base .