- Greetings and felicitations!
**Reading**: Pfleeger, pp. 21-46; Garfinkel & Spafford, pp. 139-159, 175-179

- Puzzle of the day
- Just to get you thinking; I'll ask this one again later on to see how your thinking has changed.

- Classical
- monoalphabetic (simple substitution):
*f*(*a*) =*a*+*k*mod*n* - example: Caesar with
*k*= 3,`RENAISSANCE`->`UHQDLVVDQFH` - polyalphabetic: Vigenère,
*f*_{i}(*a*) = (*a*+*k*_{i}) mod*n* - cryptanalysis: first do index of coincidence to see if it's monoalphabetic or polyalphabetic, then Kasiski method.
- problem: eliminate periodicity of key

- monoalphabetic (simple substitution):

- Long key generation
- Running-key cipher:
*M*=`THETREASUREISBURIED`;*K*=`THESECONDCIPHERISAN`;*C*=`MOILVGOFXTMXZFLZAEQ`; wedge is that (plaintext,key) letter pairs are not random (`T`/`T`,`H`/`H`,`E`/`E`,`T`/`S`,`R`/`E`,`A`/`O`,`S`/`N`,*etc*.) - Enigma/rotor systems; wheels, 3 rotors and a reflecting one.
Go through it; UNIX uses this for
*crypt*(1) command. - Perfect secrecy: when the probability of computing the plaintext message is the same whether or not you have the ciphertext
- Only cipher with perfect secrecy: one-time pads;
*C*=`AZPR`; is that`DOIT`or`DONT`?

- Running-key cipher:
- DES
- Go through the algorithm

- Breaking UNIX
*crypt*(1)- Purely statistical attack is possible (me) but it takes gobs of ciphertext
- Known plaintext attack: that's Reeds and Weinberger's attack, with a nice suggestion by Bob Morris

You can also see this document in its native format, in Postscript, in PDF, or in ASCII text.

Send email to cs153@csif.cs.ucdavis.edu.

Department of Computer Science

University of California at Davis

Davis, CA 95616-8562