0% found this document useful (0 votes)
26 views52 pages

CH 02

cryptography unit 2

Uploaded by

Stanly
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
26 views52 pages

CH 02

cryptography unit 2

Uploaded by

Stanly
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 52

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 = DK(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 Time required at 1 Time required at 106


Alternative 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 5.4  1018 years
years
168 2168 = 3.7  1050 2167 µs = 5.9  1036 5.9  1030 years
years
26 characters 26! = 4  1026 2  1026 µs = 6.4  1012 6.4  106 years
(permutation) years
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"
Monoalphabetic Cipher
 rather than just shifting the alphabet
 could shuffle (jumble) the letters arbitrarily
 each plaintext letter maps to a different random
ciphertext letter
 hence key is 26 letters long

Plain: abcdefghijklmnopqrstuvwxyz
Key : DKVQFIBJWPESCXHTMYAUOLRGZN

Plaintext: ifwewishtoreplaceletters
Ciphertext: WIRFRWAJUHYFTSDVFSFUUFYA
Monoalphabetic Cipher
Security
 now have a total of 26! ≈ 4 x 1026keys
 with so many keys, might think is secure
 but would be !!!WRONG!!!
 problem is language characteristics
Language Redundancy and
Cryptanalysis
 human languages are redundant
 eg "th lrd s m shphrd shll nt wnt"
 letters are not equally commonly used
 in English E is by far the most common letter

followed by T,R,N,I,O,A,S
 other letters like Z,J,K,Q,X are fairly rare
 have tables of single, double & triple letter
frequencies for various languages
English Letter Frequencies
Use in Cryptanalysis
 key concept - monoalphabetic substitution
ciphers do not change relative letter frequencies
 discovered by Arabian scientists in 9 th century
 calculate letter frequencies for ciphertext
 compare counts/plots against known values
 if caesar cipher look for common peaks/troughs

peaks at: A-E-I triple, NO pair, RST triple

troughs at: JK, X-Z
 for monoalphabetic must identify each letter

tables of common double/triple letters help
Example Cryptanalysis
 given ciphertext:
UZQSOVUOHXMOPVGPOZPEVSGZWSZOPFPESXUDBMETSXAIZ
VUEPHZHMDZSHZOWSFPAPPDTSVPQUZWYMXUZUHSX
EPYEPOPDZSZUFPOMBZWPFUPZHMDJUDTMOHMQ
 count relative letter frequencies (see text)
 guess P & Z are e and t
 guess ZW is th and hence ZWP is the
 proceeding with trial and error finally get:
it was disclosed yesterday that several informal but
direct contacts have been made with political
representatives of the viet cong in moscow
Playfair Cipher
 not even the large number of keys in a
monoalphabetic cipher provides security
 one approach to improving security was to
encrypt multiple letters
 the Playfair Cipher is an example
 invented by Charles Wheatstone in 1854,
but named after his friend Baron Playfair
Playfair Key Matrix
 a 5X5 matrix of letters based on a keyword
 fill in letters of keyword (sans duplicates)
 fill rest of matrix with other letters
 eg. using the keyword MONARCHY

M O N A R
C H Y B D
E F G I/J K
L P Q S T
U V W X Z
Encrypting and Decrypting
 plaintext is encrypted two letters at a time
1. if a pair is a repeated letter, insert filler like 'X’
2. if both letters fall in the same row, replace
each with letter to right (wrapping back to start
from end)
3. if both letters fall in the same column, replace
each with the letter below it (again wrapping to
top from bottom)
4. otherwise each letter is replaced by the letter
in the same row and in the column of the other
letter of the pair
Example playfair cipher
 Key: monarchy
 Plaintext: instruments

The Playfair Cipher Encryption Algorithm:


The Algorithm consists of 2 steps:

1. Generate the key Square(5×5):


• The key square is a 5×5 grid of alphabets
that acts as the key for encrypting the M O N A R
plaintext. Each of the 25 alphabets must
be unique and one letter of the alphabet C H Y B D
(usually J) is omitted from the table (as the
table can hold only 25 alphabets). If the
E F G I/J K
plaintext contains J, then it is replaced by L P Q S T
I. (I/J)
U V W X Z
• The initial alphabets in the key square are
the unique alphabets of the key in the
order in which they appear followed by the
remaining letters of the alphabet in order.
2. Algorithm to encrypt the plain text: The plaintext is split into pairs of two
letters (digraphs). If there is an odd number of letters, a Z is added to the last
letter.

For example:

PlainText: "instruments"
After Split: 'in' 'st' 'ru' 'me' 'nt' 'sz‘

1. Pair cannot be made with same letter. Break the letter in single and add a
bogus letter to the previous letter.

Plain Text: “hello”


After Split: ‘he’ ‘lx’ ‘lo’
Here ‘x’ is the bogus letter.

2. If the letter is standing alone in the process of pairing, then add an extra bogus
letter with the alone letter

Plain Text: “helloe”


AfterSplit: ‘he’ ‘lx’ ‘lo’ ‘ez’
Here ‘z’ is the bogus letter.
Rules for Encryption:

•Ifboth the letters are in the same column: Take the letter below each
one (going back to the top if at the bottom).
For example:

Plaintext: "me" Encrypted Text: cl Encryption: m -> c , e -> l

•Ifboth the letters are in the same row: Take the letter to the right of
each one (going back to the leftmost if at the rightmost position).
For example:

Plaintext : "st" Encrypted Text: tl Encryption: s -> t , t -> l

•If neither of the above rules is true: Form a rectangle with the two
letters and take the letters on the horizontal opposite corner of the
rectangle.
For example:

Plaintext: "nt" Encrypted Text: rq Encryption: n -> r , t -> q


Example:

Plain Text: "instrumentsz"

Encrypted Text: gatlmzclrqtx


Example:

Using "playfair example" as the key (assuming that I and J are


interchangeable), construct the table and encrypt the message "hide the
gold in the tree stump”.

Solution:

(repeated/
omitted
letters in
red)

The message "hide the gold in the tree stump" is to convert it to the pairs of
letters "HI DE TH EG OL DI NT HE TR EX ES TU MP" (with the null "X" used to
separate the repeated "E"s).

Then Encrypted text is: "BM OD ZB XD NA BE KU DM UI XM MO UV IF",


which may be restructured as "BMODZ BXDNA BEKUD MUIXM MOUVI F" for
ease of reading the cipher text.
Security of Playfair Cipher
 security much improved over monoalphabetic
 since have 26 x 26 = 676 digrams
 would need a 676 entry frequency table to
analyse (verses 26 for a monoalphabetic)
 and correspondingly more ciphertext
 was widely used for many years

eg. by US & British military in WW1
 it can be broken, given a few hundred letters
 since still has much of plaintext structure
Polyalphabetic Ciphers
 polyalphabetic substitution ciphers
 improve security using multiple cipher alphabets
 make cryptanalysis harder with more alphabets
to guess and flatter frequency distribution
 use a key to select which alphabet is used for
each letter of the message
 use each alphabet in turn
 repeat from start after end of key is reached
Hill Cipher

 Hill cipher is a polygraphic substitution cipher based on linear


algebra.Each letter is represented by a number modulo 26. Often
the simple scheme A = 0, B = 1, …, Z = 25 is used, but this is not an
essential feature of the cipher. To encrypt a message, each block of
n letters (considered as an n-component vector) is multiplied by an
invertible n × n matrix, against modulus 26. To decrypt the
message, each block is multiplied by the inverse of the matrix used
for encryption.
 The matrix used for encryption is the cipher key, and it should be
chosen randomly from the set of invertible n × n matrices (modulo
26).
Hill Cipher
 Examples:
 Input : Plaintext: ACT Key: GYBNQKURP
Output : Ciphertext: POH
 Input : Plaintext: GFG Key: HILLMAGIC
Output : Ciphertext: SWK
 We have to encrypt the message ‘ACT’
(n=3).The key is ‘GYBNQKURP’ which
can be written as the nxn matrix:
Hill Cipher

We have to encrypt the message ‘ACT’


(n=3).The key is ‘GYBNQKURP’ which can
be written as the nxn matrix:

The message ‘ACT’ is written as vector:

The enciphered vector is given as 


Ciphertext is: POH
Vigenère Cipher
 simplest polyalphabetic substitution cipher
 effectively multiple caesar ciphers
 key is multiple letters long K = k1 k2 ... kd
1
 ith
letter specifies ith alphabet to use
 use each alphabet in turn
 repeat from start after d letters in message
 decryption simply works in reverse
Example of Vigenère Cipher
 write the plaintext out
 write the keyword repeated above it
 use each key letter as a caesar cipher key
 encrypt the corresponding plaintext letter
 eg using keyword deceptive
key: deceptivedeceptivedeceptive
plaintext: wearediscoveredsaveyourself
ciphertext:ZICVTWQNGRZGVTWAVZHCQYGLMGJ

(d=3+w=22)%26=(25=Z) , (e=4+e=4)%26=(8=I) and so


on......
Aids
 simple aids can assist with en/decryption
 a Saint-Cyr Slide is a simple manual aid

a slide with repeated alphabet

line up plaintext 'A' with key letter, eg 'C'

then read off any mapping for key letter
 can bend round into a cipher disk
 or expand into a Vigenère Tableau
Security of Vigenère Ciphers
 have multiple ciphertext letters for each
plaintext letter
 hence letter frequencies are obscured
 but not totally lost
 start with letter frequencies

see if look monoalphabetic or not
 if not, then need to determine number of
alphabets, since then can attach each
Kasiski Method
 method developed by Babbage / Kasiski
 repetitions in ciphertext give clues to period
 so find same plaintext an exact period apart
 which results in the same ciphertext
 of course, could also be random fluke
 eg repeated “VTW” in previous example
 suggests size of 3 or 9
 then attack each monoalphabetic cipher
individually using same techniques as before
Autokey Cipher
 ideally want a key as long as the message
 Vigenère proposed the autokey cipher
 with keyword is prefixed to message as key
 knowing keyword can recover the first few letters
 use these in turn on the rest of the message
 but still have frequency characteristics to attack
 eg. given key deceptive
key: deceptivewearediscoveredsav
plaintext: wearediscoveredsaveyourself
ciphertext:ZICVTWQNGKZEIIGASXSTSLVVWLA
One-Time Pad
 if a truly random key as long as the message is
used, the cipher will be secure
 called a One-Time pad
 is unbreakable since ciphertext bears no
statistical relationship to the plaintext
 since for any plaintext & any ciphertext there
exists a key mapping one to other
 can only use the key once though
 problems in generation & safe distribution of key
Transposition Ciphers
 now consider classical transposition or
permutation ciphers
 these hide the message by rearranging
the letter order
 without altering the actual letters used
 can recognise these since have the same
frequency distribution as the original text
Rail Fence cipher
 write message letters out diagonally over a
number of rows
 then read off cipher row by row
 eg. write message (“meet me after the toga
party”) out as:
m e m a t r h t g p r y
e t e f e t e o a a t
 giving ciphertext
MEMATRHTGPRYETEFETEOAAT
Row Transposition Ciphers
 a more complex transposition
 write letters of message out in rows over a
specified number of columns
 then reorder the columns according to
some key before reading off the rows
Key: 3 4 2 1 5 6 7
Plaintext: a t t a c k p
o s t p o n e
d u n t i l t
w o a m x y z
Ciphertext: TTNAAPTMTSUOAODWCOIXKNLYPETZ
Encryption
•In a transposition cipher, the order of the alphabets is re-arranged to obtain the cipher-text.
•The message is written out in rows of a fixed length, and then read out again column by
column, and the columns are chosen in some scrambled order.
•Width of the rows and the permutation of the columns are usually defined by a keyword.
•For example, the word HACK is of length 4 (so the rows are of length 4), and the
permutation is defined by the alphabetical order of the letters in the keyword. In this case,
the order would be “3 1 2 4”.
•Any spare spaces are filled with nulls or left blank or placed by a character (Example: _).
•Finally, the message is read off in columns, in the order specified by the keyword.
Product Ciphers
 ciphers using substitutions or transpositions are
not secure because of language characteristics
 hence consider using several ciphers in
succession to make harder, but:

two substitutions make a more complex substitution

two transpositions make more complex transposition

but a substitution followed by a transposition makes a
new much harder cipher
 this is bridge from classical to modern ciphers
Rotor Machines
 before modern ciphers, rotor machines were
most common complex ciphers in use
 widely used in WW2

German Enigma, Allied Hagelin, Japanese Purple
 implemented a very complex, varying
substitution cipher
 used a series of cylinders, each giving one
substitution, which rotated and changed after
each letter was encrypted
 with 3 cylinders have 263=17576 alphabets
Steganography
 an alternative to encryption
 hides existence of message

using only a subset of letters/words in a
longer message marked in some way

using invisible ink

hiding in LSB in graphic image or sound file
 has drawbacks

high overhead to hide relatively few info bits
Different Types of Steganography

1.Text Steganography − There is steganography in text files, which entails


secretly storing information. In this method, the hidden data is encoded into the
letter of each word.

2. Image Steganography − The second type of steganography is image


steganography, which entails concealing data by using an image of a different
object as a cover. Pixel intensities are the key to data concealment in image
steganography.
Since the computer description of an image contains multiple bits, images are
frequently used as a cover source in digital steganography.
The various terms used to describe image steganography include:
•Cover-Image - Unique picture that can conceal data.
•Message - Real data that you can mask within pictures. The message may be in
the form of standard text or an image.
•Stego-Image − A stego image is an image with a hidden message.
•Stego-Key - Messages can be embedded in cover images and stego-images with
the help of a key, or the messages can be derived from the photos themselves.
Different Types of Steganography

3. Audio Steganography − It is the science of hiding data in sound. Used


digitally, it protects against unauthorized reproduction. Watermarking is a
technique that encrypts one piece of data (the message) within another (the
"carrier"). Its typical uses involve media playback, primarily audio clips.

4. Video Steganography − Video steganography is a method of secretly


embedding data or other files within a video file on a computer. Video (a
collection of still images) can function as the "carrier" in this scheme. Discrete
cosine transform (DCT) is commonly used to insert values that can be used to
hide the data in each image in the video, which is undetectable to the naked eye.
Video steganography typically employs the following file formats: H.264, MP4,
MPEG, and AVI.

5. Network or Protocol Steganography − It involves concealing data by using


a network protocol like TCP, UDP, ICMP, IP, etc., as a cover object.
Steganography can be used in the case of covert channels, which occur in the
OSI layer network model.
Steganography Examples Include

•Writing with invisible ink


•Embedding text in a picture (like an artist hiding their initials in a painting
they’ve done)
•Backward masking a message in an audio file (remember those stories of
evil messages recorded backward on rock and roll records?)
•Concealing information in either metadata or within a file header
•Hiding an image in a video, viewable only if the video is played at a
particular frame rate
•Embedding a secret message in either the green, blue, or red channels of
an RRB image

Steganography can be used both for constructive and destructive purposes.


For example, education and business institutions, intelligence agencies, the
military, and certified ethical hackers use steganography to embed
confidential messages and information in plain sight.
Summary
 have considered:

classical cipher techniques and terminology

monoalphabetic substitution ciphers

cryptanalysis using letter frequencies

Playfair cipher

polyalphabetic ciphers

transposition ciphers

product ciphers and rotor machines

stenography

You might also like