+ All Categories
Home > Documents > 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering”...

1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering”...

Date post: 15-Dec-2015
Category:
Upload: angelique-wall
View: 222 times
Download: 2 times
Share this document with a friend
102
1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691 – Chapter 9 of “Computer Security” Matt Bishopz
Transcript
Page 1: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

1CS591/Crypto chow

C. Edward ChowC. Edward Chow

Basic CryptographyBasic Cryptography

Chapters 5&2 of “Security Engineering” Ross AndersonChapter 8 of “Computer Networks” Tanenbaum

CS691 – Chapter 9 of “Computer Security” Matt Bishopz

Page 2: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

2CS591/Crypto chow

Topics to be CoveredTopics to be Covered

Introduction to CryptographySubstitution CiphersTransposition CiphersOne-Time Pads: Quantum Cryptography

Two Fundamental Cryptographic Principles

Symmetric-Key Algorithms Public-Key Algorithms Key Management: Digital Signatures

Introduction to CryptographySubstitution CiphersTransposition CiphersOne-Time Pads: Quantum Cryptography

Two Fundamental Cryptographic Principles

Symmetric-Key Algorithms Public-Key Algorithms Key Management: Digital Signatures

Page 3: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

3CS591/Crypto chow

CryptographyCryptography Greek words for “Secret Writing”. Cipher vs. Code

1. Cipher: a character-to-character or bit-to-bit transformation without regard to linguistic sturcture of the msg.

2. Code: replace one word woth another word or symbol. e.g., Navajo code WWII (chay-da-gahi-nail-tsaidi(“tortoise killer).

The art of devising ciphers is called cryptography The art of breaking ciphers is called cryptanalysis Cryptography and cryptanalysis is collectively known as

Cryptology.

Greek words for “Secret Writing”. Cipher vs. Code

1. Cipher: a character-to-character or bit-to-bit transformation without regard to linguistic sturcture of the msg.

2. Code: replace one word woth another word or symbol. e.g., Navajo code WWII (chay-da-gahi-nail-tsaidi(“tortoise killer).

The art of devising ciphers is called cryptography The art of breaking ciphers is called cryptanalysis Cryptography and cryptanalysis is collectively known as

Cryptology.

Page 4: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

4CS591/Crypto chow

CryptosystemCryptosystem

A cryptosystem is a 5-tuple (E,D,M,K,C), whereM —a set of plaintexts (some use P as symbol);K —the set of keys;C —the set of ciphertexts;E: M x K C —the set of enciphering functions;D: C x K M —the set of deciphering functions;

Caesar cipher example:M = { all sequences of Roman letters }

K = { i | i an integer such that 0 i 25 }E = { Ek | k K and m M, Ek(m)=(m+k) mod 26 }D = { Dk | k K and c C, Dk(c)=(26+c-k) mod 26 }

E.g., the word m=“HELLO” c=“KHOOR” what is k?

A cryptosystem is a 5-tuple (E,D,M,K,C), whereM —a set of plaintexts (some use P as symbol);K —the set of keys;C —the set of ciphertexts;E: M x K C —the set of enciphering functions;D: C x K M —the set of deciphering functions;

Caesar cipher example:M = { all sequences of Roman letters }

K = { i | i an integer such that 0 i 25 }E = { Ek | k K and m M, Ek(m)=(m+k) mod 26 }D = { Dk | k K and c C, Dk(c)=(26+c-k) mod 26 }

E.g., the word m=“HELLO” c=“KHOOR” what is k?

Page 5: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

5CS591/Crypto chow

Encryption Model (Symmetric-Key Cipher)

Encryption Model (Symmetric-Key Cipher)

Adapted from Tanenbaum Computer Networks Figure 8.2

Here P=M, and key is moved as subscript of functions.

Page 6: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

6CS591/Crypto chow

Basic Encryption MethodsBasic Encryption Methods

Two categories: Substitution Ciphers: each letter or group of letters is replaced

by another letter or another group of letters. It preserves the order of the plaintext symbol but disguise them.

– E.g., Caesar cipher; mono-alphabetic substitution (each letter map onto another letter; 26!=4x10^26 possible keys)

– ZHQM ZMGM ZMFM --G. JULIUS CAESAR Transposition Ciphers: Reorder the letters but do not disguise

them. – E.g., Rail Fence cipher

m=“HELLOWORLD” distribute the letter up and down between two rows from left to right; then output row-wise. HLOOL c=“HLOOLELWRD” ELWRD

Two categories: Substitution Ciphers: each letter or group of letters is replaced

by another letter or another group of letters. It preserves the order of the plaintext symbol but disguise them.

– E.g., Caesar cipher; mono-alphabetic substitution (each letter map onto another letter; 26!=4x10^26 possible keys)

– ZHQM ZMGM ZMFM --G. JULIUS CAESAR Transposition Ciphers: Reorder the letters but do not disguise

them. – E.g., Rail Fence cipher

m=“HELLOWORLD” distribute the letter up and down between two rows from left to right; then output row-wise. HLOOL c=“HLOOLELWRD” ELWRD

Page 7: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

7CS591/Crypto chow

Kerckhof’s PrincipleKerckhof’s Principle

“All crypto algorithms must be public; only the keys are secret”

--- “La Cryptographie Militaire,” J. des Sciences Militaires, vol. 9, pp.5-38, Jan. 1883 and pp. 161-191, Feb. 1883.

Trying to keep the algorithm secret (security by obscurity principle?) never works. Reasons:Logistic issue: Too much effort to invent, test, and

install new algorithm “Publish the algorithm and let academic cryptologists

to break the system. If no one succeeded in 5 years, it must be pretty solid.”

Real secrecy in the key, its length a major design issue

“All crypto algorithms must be public; only the keys are secret”

--- “La Cryptographie Militaire,” J. des Sciences Militaires, vol. 9, pp.5-38, Jan. 1883 and pp. 161-191, Feb. 1883.

Trying to keep the algorithm secret (security by obscurity principle?) never works. Reasons:Logistic issue: Too much effort to invent, test, and

install new algorithm “Publish the algorithm and let academic cryptologists

to break the system. If no one succeeded in 5 years, it must be pretty solid.”

Real secrecy in the key, its length a major design issue

Page 8: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

8CS591/Crypto chow

Key Length and Work FactorKey Length and Work Factor

2 digit key 100 combinations. 6 digit key 1 million combinations. 64 bit keys to prevent kid brother from reading your

email. 128 bit keys for routine commercial use >256 bits keep major governments at bay.

2 digit key 100 combinations. 6 digit key 1 million combinations. 64 bit keys to prevent kid brother from reading your

email. 128 bit keys for routine commercial use >256 bits keep major governments at bay.

Page 9: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

9CS591/Crypto chow

3 Variations of Cryptoanalysis or Cipher Attacks

3 Variations of Cryptoanalysis or Cipher Attacks

Ciphertext-only: cryptoanalyst has some ciphertext; no (does not know the corresponding) plaintext; no key; no E or D functions.

Known plaintext: some matched ciphertext and plaintext. (no key; may/may not know the E or D functions)

Chosen plaintext: has the ability to encrypt pieces of plaintext of his own choosing. (know the E or D function; does not know the keys used).

Ciphertext-only: cryptoanalyst has some ciphertext; no (does not know the corresponding) plaintext; no key; no E or D functions.

Known plaintext: some matched ciphertext and plaintext. (no key; may/may not know the E or D functions)

Chosen plaintext: has the ability to encrypt pieces of plaintext of his own choosing. (know the E or D function; does not know the keys used).

Page 10: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

10CS591/Crypto chow

Basic Cipher Attacks for Mono-alphetic Substitution

Basic Cipher Attacks for Mono-alphetic Substitution

Use statistical properties of natural languages. Rank of Frequency of appearance of

Unigrams (single letter): e, t, o, a, n, i etc Digrams (two-letter): th, in, er, re, an, etc Trigrams (three-letter): the, ing, and , ion, etc

Counting the frequencies of letters in ciphertext. Tentatively assign the most common one to e; next to t... Then look at the trigrams of decipher text, if “tXe” appears, it should

be “the”! Original deciphering function should be changed to map from X to h.

Similarly, what should we do if we see “thYt”? How about “aZW”?

Use statistical properties of natural languages. Rank of Frequency of appearance of

Unigrams (single letter): e, t, o, a, n, i etc Digrams (two-letter): th, in, er, re, an, etc Trigrams (three-letter): the, ing, and , ion, etc

Counting the frequencies of letters in ciphertext. Tentatively assign the most common one to e; next to t... Then look at the trigrams of decipher text, if “tXe” appears, it should

be “the”! Original deciphering function should be changed to map from X to h.

Similarly, what should we do if we see “thYt”? How about “aZW”?

Page 11: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

11CS591/Crypto chow

Cipher Attack: Guess a Probable Word Cipher Attack: Guess a Probable Word

Ciphertext from accounting firmCTBMN BYCTC BTJDS QXBNS GSTJC BTSWX CTQTZ CQVUJ QJSGS TJQZZ MNQJS VLNSX VSZJU JDSTS JQUUS JUBXJ DSKSU JSNTK BGAQJ ZBGYQ TLCTZ BNYBN QJSW

A likely word is financial. Based on two i are separated by four letters, we look for

same pattern in ciphertext. There are 12 hits, position 6, 15, 27, 31, 42, 48, 56. 66,

70, 71, 76, and 82. Only 31 and 42 has the next letter n (ana) separated by

one letter. i C and J; nT and S respectively. http://www.math.ucsd.edu/~crypto/programs.html

Ciphertext from accounting firmCTBMN BYCTC BTJDS QXBNS GSTJC BTSWX CTQTZ CQVUJ QJSGS TJQZZ MNQJS VLNSX VSZJU JDSTS JQUUS JUBXJ DSKSU JSNTK BGAQJ ZBGYQ TLCTZ BNYBN QJSW

A likely word is financial. Based on two i are separated by four letters, we look for

same pattern in ciphertext. There are 12 hits, position 6, 15, 27, 31, 42, 48, 56. 66,

70, 71, 76, and 82. Only 31 and 42 has the next letter n (ana) separated by

one letter. i C and J; nT and S respectively. http://www.math.ucsd.edu/~crypto/programs.html

Page 12: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

12CS591/Crypto chow

Mono-Alphabetic Substitution Exercises/Tools

Mono-Alphabetic Substitution Exercises/Tools

http://cs.uccs.edu/~cs591/src/alphaSub.html Chapter 5 page 74. Solve this puzzle.

CYAN RWSGKFR AN AH RHTFANY MSOYRM OYSH SMSEAC NCMAKO

How about JFK quote? XYAWO GAOOA GPEMO HPQCW IPNLG RPIXL TXLOA NNYCS YXBOY MNBIN YOBTY QYNAI

http://cs.uccs.edu/~cs591/src/alphaSub.html Chapter 5 page 74. Solve this puzzle.

CYAN RWSGKFR AN AH RHTFANY MSOYRM OYSH SMSEAC NCMAKO

How about JFK quote? XYAWO GAOOA GPEMO HPQCW IPNLG RPIXL TXLOA NNYCS YXBOY MNBIN YOBTY QYNAI

Page 13: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

13CS591/Crypto chow

Columnar Transposition CiphersColumnar Transposition Ciphers

A transposition cipher. Keyed by a phrase such as “MEGABUCK”. The letter in the key indicated the order of columns to be output. Plaintext horizontally read in, ciphertext read out column by column.

A transposition cipher. Keyed by a phrase such as “MEGABUCK”. The letter in the key indicated the order of columns to be output. Plaintext horizontally read in, ciphertext read out column by column.

Page 14: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

14CS591/Crypto chow

Breaking Transposition CipherBreaking Transposition Cipher

Check if the frequency distribution of unigrams are the same in the ciphertext. If it is, then this is a transposition cipher.

Guess the number of columns. Assume we suspect “milliondollars” appear in ciphertext Analyze keylength: Observe digrams MO, IL, LL, LA, IR,

and OS in ciphertext as wrapping around effect keylength = 8.

Analyze order of columns. If keylength is small, column pairs (k(k-1) of them) of ciphertext can be examined and see if the patterns of digrams in the deciphered text match those of the language frequency distribution.

Check if the frequency distribution of unigrams are the same in the ciphertext. If it is, then this is a transposition cipher.

Guess the number of columns. Assume we suspect “milliondollars” appear in ciphertext Analyze keylength: Observe digrams MO, IL, LL, LA, IR,

and OS in ciphertext as wrapping around effect keylength = 8.

Analyze order of columns. If keylength is small, column pairs (k(k-1) of them) of ciphertext can be examined and see if the patterns of digrams in the deciphered text match those of the language frequency distribution.

Page 15: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

15CS591/Crypto chow

One-Time PadsOne-Time Pads

The use of a one-time pad for encryption and the possibility of getting any possible

plaintext from the ciphertext by the use of some other pad.

Unbreakable Cipher. Choose long random bit string as key (same length of the text?) Use Bit XOR as E and D.Problem: How to distribute and protect the key.

Page 16: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

16CS591/Crypto chow

Quantum CryptographyQuantum Cryptography

Can be used to transfer one-time pad over networks. Here Fiber channel is assumed. Light comes as little packets called Photons Photons can be polarized using filter such as sunglass. The photons after the polarized filters will be polarized

in the direction of the filter’s axis. If the beam goes through the 2nd filter and

1. the two filters are perpendicular, no photons get through.

2. The light intensity after the 2n filter is proportion to the square of the cosine of the angle between the two filter axes.

Can be used to transfer one-time pad over networks. Here Fiber channel is assumed. Light comes as little packets called Photons Photons can be polarized using filter such as sunglass. The photons after the polarized filters will be polarized

in the direction of the filter’s axis. If the beam goes through the 2nd filter and

1. the two filters are perpendicular, no photons get through.

2. The light intensity after the 2n filter is proportion to the square of the cosine of the angle between the two filter axes.

Page 17: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

17CS591/Crypto chow

How one-time pad is sent using Quantum cryptography

How one-time pad is sent using Quantum cryptography

Alice and Bob each has two set of filters. One with vertical and horizontal filters called rectilinear basis. The other set rotate 45 degree called diagonal basis.

Alice assigns vertical as 0 and horizontal as 1; lower left to upper right as 0 and upper left to lower right as 1. Send this assignment in plain text to Bob.

Alice pick a one-time pad. 1001110010100110 Transfer them bit by bit to Bob using one of the two bases at random. See

Figure 8-5(a) Bob does not know which bases to use, he randomly pick one. See Figure

8-5(b). If he picks right, he gets correct bits. If not, he gets random bit. A photon hit a filter with 45 degree to photon’s polarization, will randomly

jump to the axis of the filter or perpendicular to that. Figure 8-5(c). Bob tells Alice the axes he used in plaintext. Alice tells him which are

right/wrong in plaintext. Figure 8-5(d). Now both have a correct bit string. Figure 8-5(e).

Trudy’s choices of bases Figure 8-5(f). Trudy’s bit pattern with Unknown bits.

Alice and Bob each has two set of filters. One with vertical and horizontal filters called rectilinear basis. The other set rotate 45 degree called diagonal basis.

Alice assigns vertical as 0 and horizontal as 1; lower left to upper right as 0 and upper left to lower right as 1. Send this assignment in plain text to Bob.

Alice pick a one-time pad. 1001110010100110 Transfer them bit by bit to Bob using one of the two bases at random. See

Figure 8-5(a) Bob does not know which bases to use, he randomly pick one. See Figure

8-5(b). If he picks right, he gets correct bits. If not, he gets random bit. A photon hit a filter with 45 degree to photon’s polarization, will randomly

jump to the axis of the filter or perpendicular to that. Figure 8-5(c). Bob tells Alice the axes he used in plaintext. Alice tells him which are

right/wrong in plaintext. Figure 8-5(d). Now both have a correct bit string. Figure 8-5(e).

Trudy’s choices of bases Figure 8-5(f). Trudy’s bit pattern with Unknown bits.

Page 18: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

18CS591/Crypto chow

Quantum CryptographyQuantum Cryptography

Page 19: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

19CS591/Crypto chow

Two Fundamental Cryptographic PrinciplesTwo Fundamental Cryptographic Principles

Redundancy: Messages must contains some redundancy. E.g., Last three bytes of encrypted packet content

are product # and quantity. Recent fired employee can capture the packet

replace the last three byte quantity field with a random number.

How redundancy can help? Freshness

Some method is needed to foil replay attacks.How to defense reply attacks? Timestamp alone?

Redundancy: Messages must contains some redundancy. E.g., Last three bytes of encrypted packet content

are product # and quantity. Recent fired employee can capture the packet

replace the last three byte quantity field with a random number.

How redundancy can help? Freshness

Some method is needed to foil replay attacks.How to defense reply attacks? Timestamp alone?

Page 20: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

20CS591/Crypto chow

Symmetric-Key AlgorithmsSymmetric-Key Algorithms

DES – The Data Encryption Standard AES – The Advanced Encryption Standard Cipher Modes Other Ciphers Cryptanalysis

DES – The Data Encryption Standard AES – The Advanced Encryption Standard Cipher Modes Other Ciphers Cryptanalysis

Page 21: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

21CS591/Crypto chow

Product CiphersProduct Ciphers

Basic elements of product ciphers.

(a) P-box. (b) S-box. (c) Product. Hardware implementation. P: permutation (transpose).

S: Substitution; 01234567 in, 24506713 out. Software implementation: through iterations called rounds

Basic elements of product ciphers.

(a) P-box. (b) S-box. (c) Product. Hardware implementation. P: permutation (transpose).

S: Substitution; 01234567 in, 24506713 out. Software implementation: through iterations called rounds

Page 22: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

22CS591/Crypto chow

Data Encryption StandardData Encryption Standard

The data encryption standard 1977/IBM (12856 bits key) for unclassified info. (a) General outline.(b) Detail of one iteration. The circled + means exclusive OR.

The data encryption standard 1977/IBM (12856 bits key) for unclassified info. (a) General outline.(b) Detail of one iteration. The circled + means exclusive OR.

Ri-1 expand to 48 bit; exclusive or with Ki

Divide into 8 groups 6bit each

Each group goes through S-Box; output is 4 bits.

Page 23: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

23CS591/Crypto chow

Triple DESTriple DES

IS8732; two keys (a) Triple encryption using DES. (b) Decryption.

Compatible with old DES. If we use the same key instead a different K2.

128 bit key2^128=3*10^38keys; evaluate one key per picoseconds it takes 10^10 years.

IS8732; two keys (a) Triple encryption using DES. (b) Decryption.

Compatible with old DES. If we use the same key instead a different K2.

128 bit key2^128=3*10^38keys; evaluate one key per picoseconds it takes 10^10 years.

Page 24: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

24CS591/Crypto chow

AES – The Advanced Encryption Standard

AES – The Advanced Encryption Standard

Rules for AES proposals

1. The algorithm must be a symmetric block cipher.

2. The full design must be public.

3. Key lengths of 128, 192, and 256 bits supported.

4. Both software and hardware implementations required

5. The algorithm must be public or licensed on nondiscriminatory terms.

http://csrc.nist.gov/CryptoToolkit/aes/rijndael/

Rules for AES proposals

1. The algorithm must be a symmetric block cipher.

2. The full design must be public.

3. Key lengths of 128, 192, and 256 bits supported.

4. Both software and hardware implementations required

5. The algorithm must be public or licensed on nondiscriminatory terms.

http://csrc.nist.gov/CryptoToolkit/aes/rijndael/

Page 25: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

25CS591/Crypto chow

AES (2)AES (2) An outline of Rijndael, by Joan Daemen and Vincent Rijmen 86 votes An outline of Rijndael, by Joan Daemen and Vincent Rijmen 86 votes

Page 26: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

26CS591/Crypto chow

AES (3)AES (3)

Creating of the state and rk arrays. Creating of the state and rk arrays.

Page 27: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

27CS591/Crypto chow

Electronic Code Book ModeElectronic Code Book Mode

The plaintext of a file encrypted as 16 DES blocks.

AES/DES are monoalphabetic substitution cipher. Same plaintext with same key in, same ciphertext out.

Cipher Attack: Just substitute 12th block with 4th block and Leslie has a Merry Christmas.

The plaintext of a file encrypted as 16 DES blocks.

AES/DES are monoalphabetic substitution cipher. Same plaintext with same key in, same ciphertext out.

Cipher Attack: Just substitute 12th block with 4th block and Leslie has a Merry Christmas.

Page 28: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

28CS591/Crypto chow

Cipher Block Chaining ModeCipher Block Chaining Mode

Use the chaining mode to defeat the above attack. C1 depends on C0. Cipher block chaining. (a) Encryption. (b) Decryption.

Use the chaining mode to defeat the above attack. C1 depends on C0. Cipher block chaining. (a) Encryption. (b) Decryption.

Page 29: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

29CS591/Crypto chow

Cipher Feedback ModeCipher Feedback Mode For terminal type application, wait for 8 characters

before sending the ciphertext is not an option. Use Character Chaining mode with a shift register. (a) Encryption. (b) Decryption.

For terminal type application, wait for 8 characters before sending the ciphertext is not an option.

Use Character Chaining mode with a shift register. (a) Encryption. (b) Decryption.

Page 30: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

30CS591/Crypto chow

Stream Cipher ModeStream Cipher Mode In previous modes, one bit Tx error messing whole block. In Stream cipher mode, early ciphertext does not involve

with later encryption and one bit Tx error one bit plaintext error

A stream cipher. (a) Encryption. (b) Decryption.

In previous modes, one bit Tx error messing whole block. In Stream cipher mode, early ciphertext does not involve

with later encryption and one bit Tx error one bit plaintext error

A stream cipher. (a) Encryption. (b) Decryption.

Page 31: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

31CS591/Crypto chow

Counter ModeCounter Mode Except electronic code book mode, previous modes

requires first decrypting all the blocks ahead the current block. Make it difficult to do random access of encrypted files. (problem is reuse attack, when same key is used.

Encryption using counter mode.

Except electronic code book mode, previous modes requires first decrypting all the blocks ahead the current block. Make it difficult to do random access of encrypted files. (problem is reuse attack, when same key is used.

Encryption using counter mode.

Page 32: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

32CS591/Crypto chow

CryptanalysisCryptanalysis Rijndael got adopted as AES . Serpent(cambridge) 2nd. http://csrc.nist.gov/CryptoToolkit/aes/rijndael/ http://www.esat.kuleuven.ac.be/~rijmen/rijndael/ Some common symmetric-key cryptographic algorithms.

Rijndael got adopted as AES . Serpent(cambridge) 2nd. http://csrc.nist.gov/CryptoToolkit/aes/rijndael/ http://www.esat.kuleuven.ac.be/~rijmen/rijndael/ Some common symmetric-key cryptographic algorithms.

Page 33: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

33CS591/Crypto chow

Public-Key AlgorithmsPublic-Key Algorithms

1976 Diffie and Hellman proposed crypto scheme with two keys; public key and private key. Requirement:Must be computationally easy to encipher/decipher

msg using these keys.Must be computationally infeasible to derive the

private key from public key.Must be computationally infeasible to determine the

private key from a chosen plaintext attack. Symmetric key exchange protocol RSA Other Public-Key Algorithms

1976 Diffie and Hellman proposed crypto scheme with two keys; public key and private key. Requirement:Must be computationally easy to encipher/decipher

msg using these keys.Must be computationally infeasible to derive the

private key from public key.Must be computationally infeasible to determine the

private key from a chosen plaintext attack. Symmetric key exchange protocol RSA Other Public-Key Algorithms

Page 34: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

34CS591/Crypto chow

Diffie-Hellman’s Symmetric Key Exchange Protocol

Diffie-Hellman’s Symmetric Key Exchange Protocol

It is based on discrete logarithm problem. Alice and Bob chooses a prime p=53 and g=17 which is not 0, 1, or

p-1=52. Alice chooses private key=5, public key=175 mod 53 =40. Bob choose private key=7, public key=177 mod 53=6. Bob would like to send msg to alice. Bob compute the shared secret key by enciphering Alice’s public key

using his private key:407 mod 53 = 38

Encipher the msg with key=38. Alice computes the shared secret key as

65 mod 53=38. Then decipher the msg with key=38.

It is based on discrete logarithm problem. Alice and Bob chooses a prime p=53 and g=17 which is not 0, 1, or

p-1=52. Alice chooses private key=5, public key=175 mod 53 =40. Bob choose private key=7, public key=177 mod 53=6. Bob would like to send msg to alice. Bob compute the shared secret key by enciphering Alice’s public key

using his private key:407 mod 53 = 38

Encipher the msg with key=38. Alice computes the shared secret key as

65 mod 53=38. Then decipher the msg with key=38.

Page 35: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

35CS591/Crypto chow

Modular ArithmeticModular Arithmetic

Page 36: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

36CS591/Crypto chow

Properties of Modular ArithmeticProperties of Modular Arithmetic

Page 37: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

37CS591/Crypto chow

Page 38: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

38CS591/Crypto chow

Fermat Theorem ExampleFermat Theorem Example

Page 39: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

39CS591/Crypto chow

Page 40: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

40CS591/Crypto chow

Totient Function PropertiesTotient Function Properties

Page 41: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

41CS591/Crypto chow

Page 42: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

42CS591/Crypto chow

Euler’s Theorem and ExamplesEuler’s Theorem and Examples

Page 43: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

43CS591/Crypto chow

RSARSA A response to Diffie Helleman challege by Ron Rivest, Adi

Sharmir, and Len Adleman at MIT. An exponentiation cipher utilizing Euler’s Theorem. Choose two prime numbers p and q. Let n = p*q. The totient (n) of n is the number of numbers less

than n with no factors in common with n. (n)=(p-1)(q-1) E.g., (10) =4; since 1,3, 7, 9 are relative prime of 10. Choose e <n; e be relative prime to (n). Find d such that e*d mod (n) = 1. The public key is (e,n), private key is (d, n). Med mod n = M (this holds if e*d mod (n) = 1) C=Me mod n M=cd mod n

A response to Diffie Helleman challege by Ron Rivest, Adi Sharmir, and Len Adleman at MIT.

An exponentiation cipher utilizing Euler’s Theorem. Choose two prime numbers p and q. Let n = p*q. The totient (n) of n is the number of numbers less

than n with no factors in common with n. (n)=(p-1)(q-1) E.g., (10) =4; since 1,3, 7, 9 are relative prime of 10. Choose e <n; e be relative prime to (n). Find d such that e*d mod (n) = 1. The public key is (e,n), private key is (d, n). Med mod n = M (this holds if e*d mod (n) = 1) C=Me mod n M=cd mod n

Page 44: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

44CS591/Crypto chow

Page 45: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

45CS591/Crypto chow

RSA: Confidentiality ExampleEncrypted using Alice’s Public key

RSA: Confidentiality ExampleEncrypted using Alice’s Public key

Let p=7 and q = 11. n=77 and (n) =60. Alice choose e=17, a relative prime to 60 private key is d=53

where e*d mod (n) =1; 17*53 mod 60 = 1 If we represent 07 as and 25 as Z, 26 as blank, then HELLO WORLD will be 07 04 11 11 14 26 22 14 17 11 03. Using

Alice public key the cipher text is: 07^17 mod 77 = 28 04^17 mod 77 = 16 11^17 mod 77 = 44 … 03^17 mod 77 = 75. Only Alice can decipher with private key 53.

Let p=7 and q = 11. n=77 and (n) =60. Alice choose e=17, a relative prime to 60 private key is d=53

where e*d mod (n) =1; 17*53 mod 60 = 1 If we represent 07 as and 25 as Z, 26 as blank, then HELLO WORLD will be 07 04 11 11 14 26 22 14 17 11 03. Using

Alice public key the cipher text is: 07^17 mod 77 = 28 04^17 mod 77 = 16 11^17 mod 77 = 44 … 03^17 mod 77 = 75. Only Alice can decipher with private key 53.

Page 46: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

46CS591/Crypto chow

RSA: Origin Authentication ExampleEncrypted using Alice’s Private keyRSA: Origin Authentication ExampleEncrypted using Alice’s Private key

Let p=7 and q = 11. n=77 and (n) =60. Alice choose e=17, private key is d=53. Public key is (17, 77).

07^53 mod 77 = 35 04^53 mod 77 = 09 11^53 mod 77 = 44 … 03^53 mod 77 = 05

Let p=7 and q = 11. n=77 and (n) =60. Alice choose e=17, private key is d=53. Public key is (17, 77).

07^53 mod 77 = 35 04^53 mod 77 = 09 11^53 mod 77 = 44 … 03^53 mod 77 = 05

Page 47: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

47CS591/Crypto chow

RSA: Confidentiality and Authentication Example

RSA: Confidentiality and Authentication Example

Encrypted using Sender’s Private key and the recipient’s public key Bob’s public key 37, private key 13. Alice’s public key 17, private key 53. Encipherment:

(07^53 mod 77)^37 mod 77 = 07 (04^53 mod 77)^37 mod 77 = 37 (11^53 mod 77)^37 mod 77 = 44 … (03^53 mod 77)^37 mod 77 = 47

Decipherment: decipher with recipient’s private key and authenticate with sender’s public key. (07^13 mod 77)^17 mod 77 = 07 (37^13 mod 77)^17 mod 77 = 04 (44^13 mod 77)^17 mod 77 = 11 … (47^13 mod 77)^17 mod 77 = 03

Encrypted using Sender’s Private key and the recipient’s public key Bob’s public key 37, private key 13. Alice’s public key 17, private key 53. Encipherment:

(07^53 mod 77)^37 mod 77 = 07 (04^53 mod 77)^37 mod 77 = 37 (11^53 mod 77)^37 mod 77 = 44 … (03^53 mod 77)^37 mod 77 = 47

Decipherment: decipher with recipient’s private key and authenticate with sender’s public key. (07^13 mod 77)^17 mod 77 = 07 (37^13 mod 77)^17 mod 77 = 04 (44^13 mod 77)^17 mod 77 = 11 … (47^13 mod 77)^17 mod 77 = 03

Page 48: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

48CS591/Crypto chow

RSA Cipher Attack/Defense ExampleRSA Cipher Attack/Defense Example

Simplified example, character as block. NO can be swapped and interpreted as ON. (Attack is on or not?)

Defense: 6 bits for block # followed by 8 bit character. The rest 1010 bits contains random data. Rearrange of blocks can be detected by checking the block # field.

This is an application of the Redundancy principle.

Simplified example, character as block. NO can be swapped and interpreted as ON. (Attack is on or not?)

Defense: 6 bits for block # followed by 8 bit character. The rest 1010 bits contains random data. Rearrange of blocks can be detected by checking the block # field.

This is an application of the Redundancy principle.

Page 49: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

49CS591/Crypto chow

RSARSA Actual RSA primes should be at least 512 bits modulus at least 1024 bits. RSA combined with hash to prevent reordering attack. An example of the RSA algorithm. Here p=3, q=11, n=33, z=(p-1)*(q-1)=20,

choose d=7, which is relative prime of z. choose e=3 where e*d mod 20 = 1. Here (3, 20) is public key. (7,20) is private key. C=Pe mod n; P=Cd mod n;

Actual RSA primes should be at least 512 bits modulus at least 1024 bits. RSA combined with hash to prevent reordering attack. An example of the RSA algorithm. Here p=3, q=11, n=33, z=(p-1)*(q-1)=20,

choose d=7, which is relative prime of z. choose e=3 where e*d mod 20 = 1. Here (3, 20) is public key. (7,20) is private key. C=Pe mod n; P=Cd mod n;

Page 50: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

50CS591/Crypto chow

Digital SignaturesDigital Signatures

Symmetric-Key SignaturesPublic-Key SignaturesMessage DigestsThe Birthday Attack

Symmetric-Key SignaturesPublic-Key SignaturesMessage DigestsThe Birthday Attack

Page 51: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

51CS591/Crypto chow

Symmetric-Key SignaturesSymmetric-Key Signatures

Digital signatures with Big Brother (BB: a central authority trust by everyone; knows everything!).

Everyone (i) carries secret key Ki to BB’s office. Alice enciphers the following data with her secret key KA

(B:Bob’s ID, RA: a random number chosen by Alice, t: timestamp, P: plaintext msg.); send it to BB.

BB deciphers with KA; encrypted the data together with a signed msg KBB(A, t, P) using B’s secret key.

Digital signatures with Big Brother (BB: a central authority trust by everyone; knows everything!).

Everyone (i) carries secret key Ki to BB’s office. Alice enciphers the following data with her secret key KA

(B:Bob’s ID, RA: a random number chosen by Alice, t: timestamp, P: plaintext msg.); send it to BB.

BB deciphers with KA; encrypted the data together with a signed msg KBB(A, t, P) using B’s secret key.

Page 52: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

52CS591/Crypto chow

Symmetric-Key Signatures: Nonrepudiation and Against Relay Attack

Symmetric-Key Signatures: Nonrepudiation and Against Relay Attack BB will not accept a msg from Alice unless it is

encrypted with KA. KBB(A, t, P) contains the proof that A sent P at time t. Against replay attack:

Against instant replay: Within some time period, Bob can check if RA has been reuse; drop those packet.

Against old replay: Based on the timestamp, Bob can discard old messages.

Disadvantage: BB needs to be trusted by everyone.BB gets to read all signed msgs.

BB will not accept a msg from Alice unless it is encrypted with KA.

KBB(A, t, P) contains the proof that A sent P at time t. Against replay attack:

Against instant replay: Within some time period, Bob can check if RA has been reuse; drop those packet.

Against old replay: Based on the timestamp, Bob can discard old messages.

Disadvantage: BB needs to be trusted by everyone.BB gets to read all signed msgs.

Page 53: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

53CS591/Crypto chow

Public-Key SignaturesPublic-Key Signatures

Digital signatures using public-key cryptography.

1991, NIST proposed Digital Signature Standard (DSS) using variant of the EL Gamal public key algorithm (discrete logarithm).

But it is too secret (NSA designed); too slow (10-40 times slower than RSA for checking signature); too new (not yet thoroughly analyzed); too insecure (fixed 512bits; later changed to 1024 bits)

Digital signatures using public-key cryptography.

1991, NIST proposed Digital Signature Standard (DSS) using variant of the EL Gamal public key algorithm (discrete logarithm).

But it is too secret (NSA designed); too slow (10-40 times slower than RSA for checking signature); too new (not yet thoroughly analyzed); too insecure (fixed 512bits; later changed to 1024 bits)

Page 54: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

54CS591/Crypto chow

Message DigestsMessage Digests Authentication without encrypting the entire msg. 4 properties of Message Digest (MD hash function: arbitrarily long plaintext

fixed-length bit string. Given P, it is easy to compute MD(P). Given MD(P), it is effectively impossible to find P. Given P no one can find P’ such that MD(P’)=MD(P). A change to the input of even 1 bit produces a very different output.

For example, Instead of KBB(A, t, P) , we have KBB(A, t, MD(P))

Digital signatures using message digests.

Authentication without encrypting the entire msg. 4 properties of Message Digest (MD hash function: arbitrarily long plaintext

fixed-length bit string. Given P, it is easy to compute MD(P). Given MD(P), it is effectively impossible to find P. Given P no one can find P’ such that MD(P’)=MD(P). A change to the input of even 1 bit produces a very different output.

For example, Instead of KBB(A, t, P) , we have KBB(A, t, MD(P))

Digital signatures using message digests.

Page 55: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

55CS591/Crypto chow

MD5MD5 Designed by Ronald Rivest 1992. 5th of a series of MD. Pre-computation Step:

First pad the msg a length of 448 bits (mod 512). Original msg is then appended with 64 bit integer; make it a multiple of 512 bits. Initialize 128-bit buffer to a fixed value.

Computation step: Take 512 bit block of input, perform 4 round of mixing, thoroughly with 128 bit

buffer (with sine function and table look up) Process continues until all input consume. The content of 128-bit buffer form

the message digest. You can access it on our CS Unix machines using OpenSSL pacckage “openssl

md5” For example, the following yield a pretty good random key:

bash-2.05a# (date; ps auxg) | openssl md57741348ddf1371aefc921d504fa51e6abash-2.05a# (date; ps auxg) | openssl md57c56744bb2440abcc2de7a492ae32d06

Designed by Ronald Rivest 1992. 5th of a series of MD. Pre-computation Step:

First pad the msg a length of 448 bits (mod 512). Original msg is then appended with 64 bit integer; make it a multiple of 512 bits. Initialize 128-bit buffer to a fixed value.

Computation step: Take 512 bit block of input, perform 4 round of mixing, thoroughly with 128 bit

buffer (with sine function and table look up) Process continues until all input consume. The content of 128-bit buffer form

the message digest. You can access it on our CS Unix machines using OpenSSL pacckage “openssl

md5” For example, the following yield a pretty good random key:

bash-2.05a# (date; ps auxg) | openssl md57741348ddf1371aefc921d504fa51e6abash-2.05a# (date; ps auxg) | openssl md57c56744bb2440abcc2de7a492ae32d06

Page 56: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

56CS591/Crypto chow

SHA-1SHA-1

Developed by NSA and blessed by NIST in FIP 180-1 It generates 160 bit message digest. Use of SHA-1 and RSA for signing nonsecret messages.

bash-2.05a# (date; ps auxg) | openssl sha144c702745bdeced27d8c01b8bcda28bb311e51f4

Developed by NSA and blessed by NIST in FIP 180-1 It generates 160 bit message digest. Use of SHA-1 and RSA for signing nonsecret messages.

bash-2.05a# (date; ps auxg) | openssl sha144c702745bdeced27d8c01b8bcda28bb311e51f4

Page 57: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

57CS591/Crypto chow

SHA-1 (2)SHA-1 (2)

(a) A message padded out to a multiple of 512 bits. (b) The output 32 bit variables. (c) The word array.

(a) A message padded out to a multiple of 512 bits. (b) The output 32 bit variables. (c) The word array.

Page 58: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

58CS591/Crypto chow

SHA1SHA1

Copy 16 work block input to w0 to w15. Scramble them to w16 to w79 with

Wi= S1(Wi-3 XOR Wi-8 XOR Wi-14 XOR Wi-16) (16 <=i<= 79) Sb(W) represent the left circular rotation of 32-bit word W by b bits. Actual step in pseudo-C code:

for (i = 0; i < 80; i++) {temp = S5(A) + fi (B, C, D) + E + Wi + Ki; E=D; D=C; C = S30

(B); B=A; A =temp;} f (B, C, D) = (B AND C) OR (NOT B AND D) ( 0<= i <=19)

f (B, C, D) = B XOR C XOR D (20 <= i <= 39) f (B, C, D) = (B AND C) OR (B AND D) OR (C AND D) (40 <= i <= 59) f (B, C, D) = B XOR C XOR D (60<= i <= 79)

At the end of 80 iterations, A-E added to H0-H4 respectively. Continue the rest of the input blocks. Work ongoing for 256, 384, 512bit hashes.

Copy 16 work block input to w0 to w15. Scramble them to w16 to w79 with

Wi= S1(Wi-3 XOR Wi-8 XOR Wi-14 XOR Wi-16) (16 <=i<= 79) Sb(W) represent the left circular rotation of 32-bit word W by b bits. Actual step in pseudo-C code:

for (i = 0; i < 80; i++) {temp = S5(A) + fi (B, C, D) + E + Wi + Ki; E=D; D=C; C = S30

(B); B=A; A =temp;} f (B, C, D) = (B AND C) OR (NOT B AND D) ( 0<= i <=19)

f (B, C, D) = B XOR C XOR D (20 <= i <= 39) f (B, C, D) = (B AND C) OR (B AND D) OR (C AND D) (40 <= i <= 59) f (B, C, D) = B XOR C XOR D (60<= i <= 79)

At the end of 80 iterations, A-E added to H0-H4 respectively. Continue the rest of the input blocks. Work ongoing for 256, 384, 512bit hashes.

Page 59: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

59CS591/Crypto chow

The Birth Day AttackThe Birth Day Attack

It takes 2m operations to attack m-bit MD. But it takes 2m/2 operations using birthday attack. Yuval

1979 paper on “how to swindle Rabin” Example: two tenure faculty up for promotion: Tom and

Dick. Tom earlier by two years. Tom asks Dept. Chair, Marilyn to write recommendation letter:

Secretary Ellen Loves Dick. She prepares two letters.

It takes 2m operations to attack m-bit MD. But it takes 2m/2 operations using birthday attack. Yuval

1979 paper on “how to swindle Rabin” Example: two tenure faculty up for promotion: Tom and

Dick. Tom earlier by two years. Tom asks Dept. Chair, Marilyn to write recommendation letter:

Secretary Ellen Loves Dick. She prepares two letters.

Page 60: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

60CS591/Crypto chow

Official Letter 1Official Letter 1

Dear Dean Smith,This [letter I message] is to give my [honest I frank] opinion of Prof. Tom

Wilson, who is [a candidate I up] for tenure [now I this year]. I have [known I worked with] Prof. Wilson for [about I almost] six years. He is an [outstanding I excellent] researcher of great [talent I ability] known [worldwide I internationally] for his [brilliant I creative] insights into [many I a wide variety of] [difficult I chal lenging] problems.

He is also a [highly I greatly] [respected I admired] [teacher I educator]. His students give his [classes I courses] [rave I spectacular] reviews. He is [our I the Department's] [most popular I best-loved] [teacher I instructor].

[In addition I Additionally] Prof. Wilson is a [gifted I effective] fund raiser. His [grants I contracts] have brought a [large I substantial] amount of money into [the I our] Department. [This money has I These funds have] [enabled I permitted] us to [pursue I carry out] many [special I important] programs, [such as I for ex ample] your State 2000 program. Without these funds we would [be unable I not be able] to continue this program. which is so [important I essential] to both of us. I strongly urge you to grant him tenure.

Dear Dean Smith,This [letter I message] is to give my [honest I frank] opinion of Prof. Tom

Wilson, who is [a candidate I up] for tenure [now I this year]. I have [known I worked with] Prof. Wilson for [about I almost] six years. He is an [outstanding I excellent] researcher of great [talent I ability] known [worldwide I internationally] for his [brilliant I creative] insights into [many I a wide variety of] [difficult I chal lenging] problems.

He is also a [highly I greatly] [respected I admired] [teacher I educator]. His students give his [classes I courses] [rave I spectacular] reviews. He is [our I the Department's] [most popular I best-loved] [teacher I instructor].

[In addition I Additionally] Prof. Wilson is a [gifted I effective] fund raiser. His [grants I contracts] have brought a [large I substantial] amount of money into [the I our] Department. [This money has I These funds have] [enabled I permitted] us to [pursue I carry out] many [special I important] programs, [such as I for ex ample] your State 2000 program. Without these funds we would [be unable I not be able] to continue this program. which is so [important I essential] to both of us. I strongly urge you to grant him tenure.

Page 61: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

61CS591/Crypto chow

Fake LetterFake Letter

Dear Dean Smith.This [letter I message] is to give my [honest I frank] opinion of Prof. Tom Wilson, who is

[a candidate I up] for tenure [now I this year]. I have [known I worked with] Tom for [about I almost] six years. He is a [poor I weak] researcher not well known in his [field I area]. His research [hardly ever I rarely] shows [insight in I understanding of] the [key I major] problems of [the I our] day.

Furthermore, he is not a [respected I admired] [teacher I educator]. His stu dents give his [classes I courses] [poor I bad ] reviews. He is [our I the Department's] least popular [teacher I instructor], known [mostly I primarily] within [the I our] Department for his [tendency I propensity] to [ridicule I embar rass] students [foolish I imprudent] enough to ask questions in his classes.

[In addition I Additionally] Tom is a [poor I marginal] fund raiser. His [grants I contracts] have brought only a [meager I insignificant] amount of money into [the I our] Department. Unless new [money is I funds are] quickly located, we may have to cancel some essential programs, such as your State 2000 program. Unfortunately, under these [conditions I circumstances] I cannot in good [consci ence I faith] recommend him to you for [tenure I a permanent position].

Dear Dean Smith.This [letter I message] is to give my [honest I frank] opinion of Prof. Tom Wilson, who is

[a candidate I up] for tenure [now I this year]. I have [known I worked with] Tom for [about I almost] six years. He is a [poor I weak] researcher not well known in his [field I area]. His research [hardly ever I rarely] shows [insight in I understanding of] the [key I major] problems of [the I our] day.

Furthermore, he is not a [respected I admired] [teacher I educator]. His stu dents give his [classes I courses] [poor I bad ] reviews. He is [our I the Department's] least popular [teacher I instructor], known [mostly I primarily] within [the I our] Department for his [tendency I propensity] to [ridicule I embar rass] students [foolish I imprudent] enough to ask questions in his classes.

[In addition I Additionally] Tom is a [poor I marginal] fund raiser. His [grants I contracts] have brought only a [meager I insignificant] amount of money into [the I our] Department. Unless new [money is I funds are] quickly located, we may have to cancel some essential programs, such as your State 2000 program. Unfortunately, under these [conditions I circumstances] I cannot in good [consci ence I faith] recommend him to you for [tenure I a permanent position].

Page 62: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

62CS591/Crypto chow

The Rest of StoryThe Rest of Story Now Ellen programs her computer to compute the 232 message digests of each

letter overnight. Chances are. one digest of the first letter will match one digest of the second letter. If not. she can add a few more options and try again during the weekend. Suppose that she finds a match. Call the "good" letter A and the "bad" one B.

Ellen now e-mails letter A to Marilyn for her approval. Letter B she keeps completely secret, showing it to no one. Marilyn, of course. approves, computes her 64-bit message digest. signs the digest. and e-mails the signed digest off to Dean Smith. Independently, Ellen e-mails letter B to the Dean (not letter A, as she is supposed to).

After getting the letter and signed message digest. the Dean runs the message digest algorithm on letter B, sees that it agrees with what Marilyn sent him, and fires Tom. The Dean does not realize that Ellen managed to generate two letters with the same message digest and sent her a different one than Marilyn saw and approved. (Optional ending: Ellen tells Dick what she did. Dick is appalled and breaks off with her. Ellen is furious and confesses to Marilyn. Marilyn calls the Dean. Tom gets tenure after all.) With MD5 the birthday attack is difficult be cause even at 1 billion digests per second, it would take over 500 years to com pute all 264 digests of two letters with 64 variants each, and even then a match is not guaranteed. Of course, with 5000 computers working in parallel, 500 years becomes 5 weeks. SHA-1 is better (because it is longer).

Now Ellen programs her computer to compute the 232 message digests of each letter overnight. Chances are. one digest of the first letter will match one digest of the second letter. If not. she can add a few more options and try again during the weekend. Suppose that she finds a match. Call the "good" letter A and the "bad" one B.

Ellen now e-mails letter A to Marilyn for her approval. Letter B she keeps completely secret, showing it to no one. Marilyn, of course. approves, computes her 64-bit message digest. signs the digest. and e-mails the signed digest off to Dean Smith. Independently, Ellen e-mails letter B to the Dean (not letter A, as she is supposed to).

After getting the letter and signed message digest. the Dean runs the message digest algorithm on letter B, sees that it agrees with what Marilyn sent him, and fires Tom. The Dean does not realize that Ellen managed to generate two letters with the same message digest and sent her a different one than Marilyn saw and approved. (Optional ending: Ellen tells Dick what she did. Dick is appalled and breaks off with her. Ellen is furious and confesses to Marilyn. Marilyn calls the Dean. Tom gets tenure after all.) With MD5 the birthday attack is difficult be cause even at 1 billion digests per second, it would take over 500 years to com pute all 264 digests of two letters with 64 variants each, and even then a match is not guaranteed. Of course, with 5000 computers working in parallel, 500 years becomes 5 weeks. SHA-1 is better (because it is longer).

Page 63: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

63CS591/Crypto chow

Management of Public KeysManagement of Public Keys

CertificatesX.509Public Key Infrastructures

CertificatesX.509Public Key Infrastructures

Page 64: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

64CS591/Crypto chow

Problems with Public-Key Encryption

Problems with Public-Key Encryption

A way for Trudy to subvert public-key encryption. A way for Trudy to subvert public-key encryption.

Page 65: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

65CS591/Crypto chow

CertificatesCertificates

A possible certificate and its signed hash. A possible certificate and its signed hash.

Page 66: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

66CS591/Crypto chow

X.509X.509

The basic fields of an X.509 certificate. The basic fields of an X.509 certificate.

Page 67: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

67CS591/Crypto chow

Public-Key InfrastructuresPublic-Key Infrastructures

(a) A hierarchical PKI. (b) A chain of certificates. (a) A hierarchical PKI. (b) A chain of certificates.

Page 68: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

68CS591/Crypto chow

Communication SecurityCommunication Security

IPsecFirewallsVirtual Private NetworksWireless Security

IPsecFirewallsVirtual Private NetworksWireless Security

Page 69: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

69CS591/Crypto chow

IPsecIPsec

The IPsec authentication header in transport mode for IPv4.

The IPsec authentication header in transport mode for IPv4.

Page 70: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

70CS591/Crypto chow

IPsec (2)IPsec (2)

(a) ESP in transport mode. (b) ESP in tunnel mode. (a) ESP in transport mode. (b) ESP in tunnel mode.

Page 71: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

71CS591/Crypto chow

FirewallsFirewalls

A firewall consisting of two packet filters and an application gateway.

A firewall consisting of two packet filters and an application gateway.

Page 72: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

72CS591/Crypto chow

Virtual Private NetworksVirtual Private Networks

(a) A leased-line private network. (b) A virtual private network.

(a) A leased-line private network. (b) A virtual private network.

Page 73: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

73CS591/Crypto chow

802.11 Security802.11 Security

Packet encryption using WEP. Packet encryption using WEP.

Page 74: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

74CS591/Crypto chow

Authentication ProtocolsAuthentication Protocols

Authentication Based on a Shared Secret Key

Establishing a Shared Key: Diffie-Hellman Authentication Using a Key Distribution

Center Authentication Using Kerberos Authentication Using Public-Key

Cryptography

Authentication Based on a Shared Secret Key

Establishing a Shared Key: Diffie-Hellman Authentication Using a Key Distribution

Center Authentication Using Kerberos Authentication Using Public-Key

Cryptography

Page 75: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

75CS591/Crypto chow

Authentication Based on a Shared Secret Key

Authentication Based on a Shared Secret Key

Two-way authentication using a challenge-response protocol. Two-way authentication using a challenge-response protocol.

Page 76: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

76CS591/Crypto chow

Authentication Based on a Shared Secret Key (2)Authentication Based on a Shared Secret Key (2)

A shortened two-way authentication protocol. A shortened two-way authentication protocol.

Page 77: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

77CS591/Crypto chow

Authentication Based on a Shared Secret Key (3)Authentication Based on a Shared Secret Key (3)

The reflection attack. The reflection attack.

Page 78: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

78CS591/Crypto chow

Authentication Based on a Shared Secret Key (4)Authentication Based on a Shared Secret Key (4)

A reflection attack on the protocol of Fig. 8-32. A reflection attack on the protocol of Fig. 8-32.

Page 79: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

79CS591/Crypto chow

Authentication Based on a Shared Secret Key (5)Authentication Based on a Shared Secret Key (5)

Authentication using HMACs. Authentication using HMACs.

Page 80: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

80CS591/Crypto chow

Establishing a Shared Key:The Diffie-Hellman Key Exchange

Establishing a Shared Key:The Diffie-Hellman Key Exchange

The Diffie-Hellman key exchange. The Diffie-Hellman key exchange.

Page 81: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

81CS591/Crypto chow

Establishing a Shared Key:The Diffie-Hellman Key Exchange

Establishing a Shared Key:The Diffie-Hellman Key Exchange

The bucket brigade or man-in-the-middle attack. The bucket brigade or man-in-the-middle attack.

Page 82: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

82CS591/Crypto chow

Authentication Using a Key Distribution Center

Authentication Using a Key Distribution Center

A first attempt at an authentication protocol using a KDC.

A first attempt at an authentication protocol using a KDC.

Page 83: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

83CS591/Crypto chow

Authentication Using a Key Distribution Center (2)Authentication Using a Key Distribution Center (2)

The Needham-Schroeder authentication protocol. The Needham-Schroeder authentication protocol.

Page 84: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

84CS591/Crypto chow

Authentication Using a Key Distribution Center (3)Authentication Using a Key Distribution Center (3)

The Otway-Rees authentication protocol (slightly simplified).

The Otway-Rees authentication protocol (slightly simplified).

Page 85: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

85CS591/Crypto chow

Authentication Using KerberosAuthentication Using Kerberos

The operation of Kerberos V4. The operation of Kerberos V4.

Page 86: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

86CS591/Crypto chow

Authentication Using Public-Key Cryptography

Authentication Using Public-Key Cryptography

Mutual authentication using public-key cryptography. Mutual authentication using public-key cryptography.

Page 87: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

87CS591/Crypto chow

E-Mail SecurityE-Mail Security

PGP – Pretty Good PrivacyPEM – Privacy Enhanced MailS/MIME

PGP – Pretty Good PrivacyPEM – Privacy Enhanced MailS/MIME

Page 88: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

88CS591/Crypto chow

PGP – Pretty Good PrivacyPGP – Pretty Good Privacy

PGP in operation for sending a message. PGP in operation for sending a message.

Page 89: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

89CS591/Crypto chow

PGP – Pretty Good Privacy (2)PGP – Pretty Good Privacy (2)

A PGP message. A PGP message.

Page 90: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

90CS591/Crypto chow

Web SecurityWeb Security

ThreatsSecure NamingSSL – The Secure Sockets LayerMobile Code Security

ThreatsSecure NamingSSL – The Secure Sockets LayerMobile Code Security

Page 91: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

91CS591/Crypto chow

Secure NamingSecure Naming (a) Normal situation. (b) An attack based on breaking

into DNS and modifying Bob's record.

(a) Normal situation. (b) An attack based on breaking into DNS and modifying Bob's record.

Page 92: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

92CS591/Crypto chow

Secure Naming (2)Secure Naming (2)

How Trudy spoofs Alice's ISP. How Trudy spoofs Alice's ISP.

Page 93: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

93CS591/Crypto chow

Secure DNSSecure DNS

An example RRSet for bob.com. The KEY record is Bob's public key. The SIG record is the top-level com server's signed has of the A and KEY records to verify their authenticity.

Page 94: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

94CS591/Crypto chow

Self-Certifying NamesSelf-Certifying Names

A self-certifying URL containing a hash of server's name and public key.

A self-certifying URL containing a hash of server's name and public key.

Page 95: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

95CS591/Crypto chow

SSL—The Secure Sockets LayerSSL—The Secure Sockets Layer

Layers (and protocols) for a home user browsing with SSL.

Layers (and protocols) for a home user browsing with SSL.

Page 96: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

96CS591/Crypto chow

SSL (2)SSL (2)

A simplified version of the SSL connection establishment subprotocol.

A simplified version of the SSL connection establishment subprotocol.

Page 97: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

97CS591/Crypto chow

SSL (3)SSL (3) Data transmission using SSL. Data transmission using SSL.

Page 98: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

98CS591/Crypto chow

Java Applet SecurityJava Applet Security Applets inserted into a Java Virtual Machine

interpreter inside the browser.

Applets inserted into a Java Virtual Machine interpreter inside the browser.

Page 99: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

99CS591/Crypto chow

Social IssuesSocial Issues

Privacy Freedom of Speech Copyright

Privacy Freedom of Speech Copyright

Page 100: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

100CS591/Crypto chow

Anonymous RemailersAnonymous Remailers

Users who wish anonymity chain requests through multiple anonymous remailers.

Users who wish anonymity chain requests through multiple anonymous remailers.

Page 101: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

101CS591/Crypto chow

Freedom of SpeechFreedom of Speech

Possibly banned material:

1. Material inappropriate for children or teenagers.

2. Hate aimed at various ethnic, religious, sexual, or other groups.

3. Information about democracy and democratic values.

4. Accounts of historical events contradicting the government's version.

5. Manuals for picking locks, building weapons, encrypting messages, etc.

Possibly banned material:

1. Material inappropriate for children or teenagers.

2. Hate aimed at various ethnic, religious, sexual, or other groups.

3. Information about democracy and democratic values.

4. Accounts of historical events contradicting the government's version.

5. Manuals for picking locks, building weapons, encrypting messages, etc.

Page 102: 1 CS591/Crypto chow C. Edward Chow Basic Cryptography Chapters 5&2 of “Security Engineering” Ross Anderson Chapter 8 of “Computer Networks” Tanenbaum CS691.

102CS591/Crypto chow

SteganographySteganography

(a) Three zebras and a tree. (b) Three zebras, a tree, and the complete text of five plays by William Shakespeare.

(a) Three zebras and a tree. (b) Three zebras, a tree, and the complete text of five plays by William Shakespeare.


Recommended