1 / 33

Codes, Ciphers, and Cryptography-Ch 3.1

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.

thetis
Télécharger la présentation

Codes, Ciphers, and Cryptography-Ch 3.1

An Image/Link below is provided (as is) to download presentation 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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Codes, Ciphers, and Cryptography-Ch 3.1 Michael A. Karls Ball State University

  2. 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!

  3. 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

  4. 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

  5. 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

  6. “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

  7. 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

  8. 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).

  9. 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!

  10. 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.

  11. Cycle Notation • Fact 1: Every permutation can be written as a product of disjoint cycles.

  12. 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

  13. Cycle Notation • Example 2 (cont.) • Thus, the table form of the permutation  = (01)(2453) is given by:

  14. 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

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

  16. 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.

  17. Operations on Permutations • Given permutations : ZnZn and : ZnZn, the product is the permutation obtained by applying  first, then . • Notation: x = (x).

  18. 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)).

  19. Operations on Permutations • Fact 2: The inverse of a product of permutations is given by ()-1 =  -1 -1.

  20. 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!

  21. 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!

  22. 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!

  23. 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

  24. 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”.

  25. 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!

  26. 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

  27. 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

  28. Permutation Ciphers

  29. Permutation Ciphers

  30. Permutation Ciphers

  31. Permutation Ciphers

  32. Permutation Ciphers • For Example 7, the ciphertext is • SIFASHTOI FOARTMRNA SOOITPSNI HPBARICCE

  33. 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.

More Related