Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "1 Codes, Ciphers, and Cryptography-Ch 3.1 Michael A. Karls Ball State University."— Presentation transcript:

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

2 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 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) A B x f(x) f

4 4 One-to-One Function We say a function f: A  B is one-to-one (1-1) if f(x 1 )  f(x 2 ) whenever x 1  x 2. 1 4 5 0 3 6 5 AB f f is 1-1

5 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. 1 4 5 1 2 AB g g is onto

6 6 “Neither” Function Not all functions are 1-1 or onto! 1 4 5 0 1 2 AB h h is neither 1-1 nor onto

7 7 Example 1: Some functions! (a) f: A  B where A = (- 1, 1), B = [0, 1), and f(x) = x 2. f(1) = 1 2 = 1 f(2) = 2 2 = 4 f(-2) = (-2) 2 = 4 … f is onto, not 1-1

8 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 9 Example 1: Some functions! (c) Permutations: Let A = Z n and B = Z n where Z n = {0, 1, 2, …, n}. Then a 1-1, onto function f: Z n  Z n is called a permutation. Example: Z 6 = {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! x012345 xx 120354

10 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 11 Cycle Notation Fact 1: Every permutation can be written as a product of disjoint cycles.

12 12 Cycle Notation Example 2: Write the permutation  : Z 6  Z 6 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 13 Cycle Notation Example 2 (cont.) Thus, the table form of the permutation  = (01)(2453) is given by: x012345 xx 104253

14 14 Operations on Permutations Given two permutations  : Z n  Z n and  : Z n  Z n, 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 . A B x  y  -1

15 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. x012345 x  ^(-1) 201354

16 16 Operations on Permutations Note: If  is a 1-cycle or a 2-cycle, then  -1 = . If  = (x 1 x 2 … x n ), then  -1 = (x 1 x n … x 2 ). “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 17 Operations on Permutations Given permutations  : Z n  Z n and  : Z n  Z n, the product  is the permutation obtained by applying  first, then . Notation: x  = (x  ) .

18 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 19 Operations on Permutations Fact 2: The inverse of a product of permutations is given by (  ) -1 =  -1  -1.

20 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 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 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  : Z 26  Z 26. Usually we just write the letters instead of the numbers!

23 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 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 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 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 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 28 Permutation Ciphers THISISAFO 123456789 438762195 SIFASHTOI

29 29 Permutation Ciphers RMOFATRAN 123456789 438762195 FOARTMRNA

30 30 Permutation Ciphers SPOSITION 123456789 438762195 SOOITPSNI

31 31 Permutation Ciphers CIPHERABC 123456789 438762195 HPBARICCE

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

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


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

Similar presentations


Ads by Google