Cryptography and
Network Security
    Chapter 2
        Fourth Edition
     by William Stallings
Lecture slides by Lawrie Brown
Chapter 2 – Classical Encryption
          Techniques
Many savages at the present day regard their
 names as vital parts of themselves, and
 therefore take great pains to conceal their real
 names, lest these should give to evil-disposed
 persons a handle by which to injure their
 owners.
 —The Golden Bough, Sir James George Frazer
     Symmetric Encryption
 or conventional /  private-key / single-key
 sender and recipient share a common key
 all classical encryption algorithms are
  private-key
 was only type prior to invention of public-
  key in 1970’s
 and by far most widely used
      Some Basic Terminology
   plaintext - original message
   ciphertext - coded message
   cipher - algorithm for transforming plaintext to ciphertext
   key - info used in cipher known only to sender/receiver
   encipher (encrypt) - converting plaintext to ciphertext
   decipher (decrypt) - recovering ciphertext from plaintext
   cryptography - study of encryption principles/methods
   cryptanalysis (codebreaking) - study of principles/
    methods of deciphering ciphertext without knowing key
   cryptology - field of both cryptography and cryptanalysis
Symmetric Cipher Model
                 Requirements
 two requirements for secure use of
 symmetric encryption:
     a strong encryption algorithm
     a secret key known only to sender / receiver
 mathematically have:
      Y = EK(X)
      X = D K( Y )
 assume encryption algorithm is known
 implies a secure channel to distribute key
                 Cryptography
 characterize cryptographic system by:
     type of encryption operations used
       • substitution / transposition / product
     number of keys used
       • single-key or private / two-key or public
     way in which plaintext is processed
       • block / stream
               Cryptanalysis
 objective to recover key not just message
 general approaches:
     cryptanalytic attack
     brute-force attack
        Cryptanalytic Attacks
 ciphertext only
     only know algorithm & ciphertext, is statistical,
      know or can identify plaintext
 known plaintext
     know/suspect plaintext & ciphertext
 chosen plaintext
     select plaintext and obtain ciphertext
 chosen ciphertext
     select ciphertext and obtain plaintext
 chosen text
     select plaintext or ciphertext to en/decrypt
             More Definitions
 unconditional security
     no matter how much computer power or time
      is available, the cipher cannot be broken
      since the ciphertext provides insufficient
      information to uniquely determine the
      corresponding plaintext
 computational security
     given limited computing resources (eg time
      needed for calculations is greater than age of
      universe), the cipher cannot be broken
                     Brute Force Search
    always possible to simply try every key
    most basic attack, proportional to key size
    assume either know / recognise plaintext
 Key Size (bits)     Number of Alternative             Time required at 1            Time required at 106 
                               Keys                      decryption/µs                  decryptions/µs
32                   232  = 4.3  109         231 µs         = 35.8 minutes       2.15 milliseconds
56                   256  = 7.2  1016        255 µs         = 1142 years         10.01 hours
128                  2128  = 3.4  1038       2127 µs        = 5.4  1024 years   5.4  1018 years
168                  2168  = 3.7  1050       2167 µs        = 5.9  1036 years   5.9  1030 years
    26 characters    26! = 4  1026           2  1026 µs = 6.4  1012 years      6.4  106 years
    (permutation)
      Classical Substitution
             Ciphers
 where letters of plaintext are replaced by
  other letters or by numbers or symbols
 or if plaintext is viewed as a sequence of
  bits, then substitution involves replacing
  plaintext bit patterns with ciphertext bit
  patterns
             Caesar Cipher
 earliest known substitution cipher
 by Julius Caesar
 first attested use in military affairs
 replaces each letter by 3rd letter on
 example:
  meet me after the toga party
  PHHW PH DIWHU WKH WRJD SDUWB
                 Caesar Cipher
 can define transformation as:
  a b c d e f g h i j k l m n o p q r s t u v w x y z
  D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
 mathematically give each letter a number
  a b c d e f g h i j  k  l  m  n  o  p  q  r  s  t  u  v  w  x  y  z
  0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
 then have Caesar cipher as:
  c = E(p) = (p + k) mod (26)
  p = D(c) = (c – k) mod (26)
      Cryptanalysis of Caesar
             Cipher
 only have 26 possible ciphers
     A maps to A,B,..Z
 could simply try each in turn
 a brute force search
 given ciphertext, just try all shifts of letters
 do need to recognize when have plaintext
 eg. break ciphertext "GCUA VQ DTGCM"