Professional Documents
Culture Documents
Substitution algorithms hide the plaintext and dissipate high letter frequencies Transposition algorithms scramble text Many good algorithms combine both techniques
Amount of secrecy needed should determine the amount of labor appropriate for encryption/decryption. Set of keys and enciphering algorithm should be free from complexity. Implementation should be simple Errors in ciphering should not propogate. Size of ciphertext should be no larger than the size of the plaintext
Three Examples:
DES (data encryption standard) RSA (Rivest-Shamir-Adelman) AES (Advanced Encryption Standard)
Symmetric requires one secret key that is used for encryption AND decryption (e.g. Caesar cipher might use a key of 3 to indicate shift by 3) As long as key remains secret, authentication is provided Problem is key distribution; if there are n users, we need n * (n-1)/2 unique keys
Block cipher encrypts a group of plaintext symbols as one block (e.g. columnar transposition)
Stream Block High diffusion Immunity to insertation of symbols
Advantages
disadvantages
Cryptanalysis
Ciphertext Only requires analysis using probabilities, distributions, and characteristics of the available ciphertext, plus any publicly known information Full or Partial Plaintext knows some plaintext and ciphertext (C & P in C = E(P) ); only needs to determine the algorithm; can use probable plaintext analysis Ciphertext of Any Plaintext analyst can insert data into plaintext to be encrypted
Cryptanalysis
Algorithm and Ciphertext analyst runs the algorithm on massive amounts of plaintext to try and match one with the ciphertext and deduce the senders encryption key Ciphertext and Plaintext try and determine the encryption key Weaknesses cryptanalysis often succeeds because of human error and/or carelessness
Count frequencies
In English, look for repeated letters (ss, ee, tt, ff, ll, mm, oo) If ciphertext contains spaces, look for one, two, three letter words (a, I, of, to, in, it, is, be, as, at, so, we, he, by, or, on, do, if, me, my, up, an, go, no, us, am, the, and) Tailor table of frequencies to message you are trying to decipher (e.g. military messages omit pronouns and articles) Be willing to guess and use experience If the frequency of the ciphertext matches frequency table, the cipher is transpositon
j,k,q,x,z have frequency less than 1% e should have frequency greater than 10% (19% in German) Italian has 3 letters with frequency > 10% and 9 letters with frequency < 1%
Taken from Appendix B of The Code Book by Simon Singh, Doubleday, 1999.