Data Communication and Networking CH
Data Communication and Networking CH
Cryptography
30.1
Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
30-1 INTRODUCTION
Let us introduce the issues involved in cryptography. First, we need to define some terms; then we give some taxonomies.
30.2
30.3
30.4
30.5
Note
In symmetric-key cryptography, the same key is used by the sender (for encryption) and the receiver (for decryption). The key is shared.
30.6
30.7
30.8
30.9
30.10
30.11
Note
30.12
Example 30.1
The following shows a plaintext and its corresponding ciphertext. Is the cipher monoalphabetic?
Solution The cipher is probably monoalphabetic because both occurrences of Ls are encrypted as Os.
30.13
Example 30.2
The following shows a plaintext and its corresponding ciphertext. Is the cipher monoalphabetic?
Solution The cipher is not monoalphabetic because each occurrence of L is encrypted by a different character. The first L is encrypted as N; the second as Z.
30.14
Note
30.15
Example 30.3
Use the shift cipher with key = 15 to encrypt the message HELLO.
Solution We encrypt one character at a time. Each character is shifted 15 characters down. Letter H is encrypted to W. Letter E is encrypted to T. The first L is encrypted to A. The second L is also encrypted to A. And O is encrypted to D. The cipher text is WTAAD.
30.16
Example 30.4
Use the shift cipher with key = 15 to decrypt the message WTAAD.
Solution We decrypt one character at a time. Each character is shifted 15 characters up. Letter W is decrypted to H. Letter T is decrypted to E. The first A is decrypted to L. The second A is decrypted to L. And, finally, D is decrypted to O. The plaintext is HELLO.
30.17
Note
30.18
30.19
Example 30.5
Encrypt the message HELLO MY DEAR, using the key shown in Figure 30.8.
Solution We first remove the spaces in the message. We then divide the text into blocks of four characters. We add a bogus character Z at the end of the third block. The result is HELL OMYD EARZ. We create a three-block ciphertext ELHLMDOYAZER.
30.20
Example 30.6
Using Example 30.5, ELHLMDOYAZER. decrypt the message
Solution The result is HELL OMYD EARZ. After removing the bogus character and combining the characters, we get the original message HELLO MY DEAR.
30.21
30.22
30.23
30.24
30.25
30.26
30.27
30.28
30.29
30.30
Note
AES has three different configurations with respect to the number of rounds and key size.
30.31
30.32
30.33
30.34
30.35
30.36
30.37
30.38
30.39
30.40
Note
In RSA, e and n are announced to the public; d and F are kept secret.
30.41
Example 30.7
Bob chooses 7 and 11 as p and q and calculates n = 7 11 = 77. The value of F = (7 1) (11 1) or 60. Now he chooses two keys, e and d. If he chooses e to be 13, then d is 37. Now imagine Alice sends the plaintext 5 to Bob. She uses the public key 13 to encrypt 5.
30.42
30.43
Example 30.8
Jennifer creates a pair of keys for herself. She chooses p = 397 and q = 401. She calculates n = 159,197 and F = 396 400 = 158,400. She then chooses e = 343 and d = 12,007. Show how Ted can send a message to Jennifer if he knows e and n.
30.44
30.46
Example 30.9
Let us give a realistic example. We randomly chose an integer of 512 bits. The integer p is a 159-digit number.
30.47
30.48
Alice wants to send the message THIS IS A TEST which can be changed to a numeric value by using the 0026 encoding scheme (26 is the space character).
30.49
Bob can recover the plaintext from the ciphertext by using P = Cd, which is
Note
30.51
Example 30.10
Let us give a trivial example to make the procedure clear. Our example uses small numbers, but note that in a real situation, the numbers are very large. Assume g = 7 and p = 23. The steps are as follows: 1. Alice chooses x = 3 and calculates R1 = 73 mod 23 = 21. 2. Bob chooses y = 6 and calculates R2 = 76 mod 23 = 4. 3. Alice sends the number 21 to Bob. 4. Bob sends the number 4 to Alice. 5. Alice calculates the symmetric key K = 43 mod 23 = 18. 6. Bob calculates the symmetric key K = 216 mod 23 = 18. The value of K is the same for both Alice and Bob; gxy mod p = 718 mod 23 = 18.
30.52
30.53
30.54