Codes, Ciphers, and Cryptography-Ch 3.1

1 / 33

# Codes, Ciphers, and Cryptography-Ch 3.1 - PowerPoint PPT Presentation

Codes, Ciphers, and Cryptography-Ch 3.1. Michael A. Karls Ball State University. Substitution and Permutation Ciphers. In Chapter 1 we looked at various examples of monoalphabetc substitution ciphers. A convenient way to describe these ciphers is via permutations !. Functions.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

## PowerPoint Slideshow about 'Codes, Ciphers, and Cryptography-Ch 3.1' - thetis

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

### Codes, Ciphers, and Cryptography-Ch 3.1

Michael A. Karls

Ball State University

Substitution and Permutation Ciphers
• In Chapter 1 we looked at various examples of monoalphabetc substitution ciphers.
• A convenient way to describe these ciphers is via permutations!
Functions
• A function f is a rule that assigns to each element x in a set A exactly one element, called f(x), in a set B.
• Notation: f: A  B; y = f(x)

f

x

f(x)

B

A

One-to-One Function
• We say a function f: AB is one-to-one (1-1) if f(x1)  f(x2) whenever x1 x2.

f

0

1

3

4

6

5

5

A

B

f is 1-1

Onto Function
• We say f: AB is onto if given y in B, there is an element x in A such that f(x) = y.

g

1

1

4

2

5

A

B

g is onto

“Neither” Function
• Not all functions are 1-1 or onto!

h

0

1

1

4

2

5

A

B

h is neither 1-1 nor onto

Example 1: Some functions!
• (a) f: AB where A = (- 1, 1), B = [0, 1), and f(x) = x2.
• f(1) = 12 = 1
• f(2) = 22 = 4
• f(-2) = (-2)2 = 4
• f is onto, not 1-1
Example 1: Some functions!
• (b) f: AB where A = {books in library}, B = {possible call numbers}, and f is the rule “call number on book spine”.
• f is 1-1, but not onto (different books have different call numbers).
Example 1: Some functions!
• (c) Permutations: Let A = Zn and B = Zn where Zn = {0, 1, 2, … , n}. Then a 1-1, onto function f: ZnZn is called a permutation.
• Example: Z6 = {0, 1, 2, 3, 4, 5}.  is the permutation given by the table below.
• Notation: instead of (x), we use x – it will be useful later!
Cycle Notation
• We can use cycle notation to describe a permutation!
• A cycle is a process that repeats itself.
• As an example,  in Example 1(c) would be written as

 = (012)(3)(45),

a 3-cycle, followed by a 1-cycle, followed by a 2-cycle.

• Here,

(012) represents the cycle 0120

(3) represents the cycle 33

(45) represents the cycle 454.

• Notice that the cycles of  are disjoint, i.e. no symbol appears in more than one cycle.
Cycle Notation
• Fact 1: Every permutation can be written as a product of disjoint cycles.
Cycle Notation
• Example 2: Write the permutation : Z6Z6 given by (01)(2453) in table form.
• Solution:
• x (01)(2453) x

0  1  1

1  0  0

2  2  4

3  3  2

4  4  5

5  5  3

Cycle Notation
• Example 2 (cont.)
• Thus, the table form of the permutation  = (01)(2453) is given by:
Operations on Permutations
• Given two permutations : ZnZn and : ZnZn, we can form new permutations!
• Given a permutation , the inverse of  is the permutation -1 defined by:

x = y^(-1) if and only if y = x.

x

y

-1

B

A

Operations on Permutations
• Example 3: For Example 1(c), -1 is given by the table below.
• Therefore, -1 = (021)(3)(45) in cycle form.
Operations on Permutations
• Note: If  is a 1-cycle or a 2-cycle, then -1 = .

If  = (x1 x2 … xn), then -1 = (x1 xn … x2).

• “Proof”:

For  = (1234), we have 12341.

For -1, we have 14321, which is (1432) in cycle notation.

Operations on Permutations
• Given permutations : ZnZn and : ZnZn, the product is the permutation obtained by applying  first, then .
• Notation: x = (x).
Operations on Permutations
• Example 4: Find  if  = (012)(3)(45) and  = (01)(2453).
• Solution:
• x (012)(3)(45) x (01)(2453) (x)

0  11  1  0  0

1  22  2  2 4

2  00  0  1 1

3  33  3  3 2

4  44  5  5 3

5  55  4  4 5

Thus,  = (0)(1432)(5) (or we could write (1432)).

Operations on Permutations
• Fact 2: The inverse of a product of permutations is given by ()-1 =  -1 -1.
Operations on Permutations
• Example 5: Let  and  be as in the last example.
• Then  = (0)(1432)(5), so it follows from the Note above that ()-1 = (0)(1234)(5).
• Now, -1 = (021)(3)(45) and -1 = (01)(2354), so by Fact 2,

()-1 = -1-1 = (01)(2354) (021)(3)(45).

• Check that we get the same result!
Operations on Permutations
• Example 5(cont.)
• x (01)(2354) x^(-1) (021)(3)(45) (x^(-1))^(-1)

0  1  0

1  0  2

2  3  3

3  5  4

4  2  1

5  4  5

• Thus, -1-1= (0)(1234)(5), so

()-1 = -1-1 for this example!

Substitution Ciphers (Revisited)
• By labeling the letters A, B, C, … , Y, Z as 0, 1, 2, … , 24, 25, any substitution cipher is equivalent to some permutation : Z26Z26.
• Usually we just write the letters instead of the numbers!
Substitution Ciphers (Revisited)
• Example 6: Use the substitution cipher:

 = (APHITX)(BERC)(DNZFVM)(GJKWLOYQSU)

to encipher the plaintext “BSUMATH”.

• x (APHITX)(BERC)(DNZFVM)(GJKWLOYQSU) x

B  B  E  E  E

S  S  S  S  U

U  U  U  U  G

Substitution Ciphers (Revisited)
• Example 6 (cont.)
• x (APHITX)(BERC)(DNZFVM)(GJKWLOYQSU) x

M  M  M  D  D

A  P  P  P  P

T  X  X  X  X

H  I  I  I  I

• Thus, “BSUMATH” is encrypted as “EUGDPXI”.
Permutation Ciphers
• Another way to make a cipher with a permutation is to use a fixed-length permutation to rearrange blocks of text of the same length.
• We illustrate this method with the next example!
Permutation Ciphers
• Example 7 (a permutation cipher)
• First, choose a permutation of the numbers 1-9.

For example,  = (147)(238956).

• Next, break up plaintext into blocks of length 9:
• this is a form of a transposition cipher
Permutation Ciphers
• Example 7 (a permutation cipher)
• First, choose a permutation of the numbers 1-9.

For example,  = (147)(238956).

• Next, break up plaintext into blocks of length 9:
• this is a fo|rm of a tran|sposition| cipherabc
Permutation Ciphers
• For Example 7, the ciphertext is
• SIFASHTOI FOARTMRNA SOOITPSNI HPBARICCE
Permutation Ciphers
• Remark: The cipher in Example 7 is known as a stream cipher.
• Such ciphers can be used for high speed encryption with computers.
• Flaw: The Friedman Test can be used to guess it is a transposition cipher.