Top Banner
Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks
78

Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Dec 21, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Announcement

• T-lab accounts should have been set up

• Assignment upload webpage up

• Homework 1 released, due in two weeks

Page 2: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Review

• What is security: history and definition

• Security policy, mechanisms and services

• Security models

Page 3: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Outline

• Overview of Cryptography

• Classical Symmetric Cipher

• Modern Symmetric Ciphers (DES)

• Public (Asymmetric) Key Cryptography

• Modular Arithmetic

• Modern Asymmetric Ciphers (RSA)

Page 4: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Basic Terminology• plaintext - the original message

• ciphertext - the coded message

• cipher - algorithm for transforming plaintext to ciphertext

• key - info used in cipher known only to sender/receiver

• encipher (encrypt) - converting plaintext to ciphertext

• decipher (decrypt) - recovering ciphertext from plaintext

• cryptography - study of encryption principles/methods

• cryptanalysis (codebreaking) - the study of principles/ methods of deciphering ciphertext without knowing key

• cryptology - the field of both cryptography and cryptanalysis

Page 5: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Classification of Cryptography• Number of keys used

– Hash functions: no key

– Secret key cryptography: one key

– Public key cryptography: two keys - public, private

• Type of encryption operations used

– substitution / transposition / product

• Way in which plaintext is processed

– block / stream

Page 6: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Secret Key vs. Secret Algorithm

• Secret algorithm: additional hurdle

• Hard to keep secret if used widely:

– Reverse engineering, social engineering

• Commercial: published

– Wide review, trust

• Military: avoid giving enemy good ideas

Page 7: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Cryptanalysis Scheme• Assume encryption algorithm known

• Ciphertext only:

– Exhaustive search until “recognizable plaintext”

– Need enough ciphertext

• Known plaintext:

– Secret may be revealed (by spy, time), thus <ciphertext, plaintext> pair is obtained

– Great for monoalphabetic ciphers

• Chosen plaintext:

– Choose text, get encrypted

– Deliberately pick patterns that can potentially reveal the key

Page 8: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Unconditional vs. Computational Security

• Unconditional security

– No matter how much computer power is available, the cipher cannot be broken

– The ciphertext provides insufficient information to uniquely determine the corresponding plaintext

– Only one-time pad scheme qualifies

• Computational security

– The cost of breaking the cipher exceeds the value of the encrypted info

– The time required to break the cipher exceeds the useful lifetime of the info

Page 9: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Brute Force Search• Always possible to simply try every key

• Most basic attack, proportional to key size

• Assume either know / recognise plaintext

Page 10: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Outline

• Overview of Cryptography

• Classical Symmetric Cipher

– Substitution Cipher

– Transposition Cipher

• Modern Symmetric Ciphers (DES)

• Public (Asymmetric) Key Cryptography

• Modular Arithmetic

• Modern Asymmetric Ciphers (RSA)

Page 11: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Symmetric Cipher Model

Page 12: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Requirements• Two requirements for secure use of

symmetric encryption:

– a strong encryption algorithm

– a secret key known only to sender / receiver

Y = EK(X)

X = DK(Y)

• Assume encryption algorithm is known

• Implies a secure channel to distribute key

Page 13: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Classical Substitution Ciphers

• Letters of plaintext are replaced by other letters or by numbers or symbols

• Plaintext is viewed as a sequence of bits, then substitution replaces plaintext bit patterns with ciphertext bit patterns

Page 14: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Caesar Cipher

• Earliest known substitution cipher

• Replaces each letter by 3rd letter on

• Example:

meet me after the toga party

PHHW PH DIWHU WKH WRJD SDUWB

Page 15: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Caesar Cipher• Define transformation as:

a b c d e f g h i j k l m n o p q r s t u v w x y z

D E F G H I J K L M N O P Q R S T U V W X Y Z A B C

• Mathematically give each letter a numbera b c d e f g h i j k l m

0 1 2 3 4 5 6 7 8 9 10 11 12

n o p q r s t u v w x y Z

13 14 15 16 17 18 19 20 21 22 23 24 25

• Then have Caesar cipher as:

C = E(p) = (p + k) mod (26)

p = D(C) = (C – k) mod (26)

Page 16: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Cryptanalysis of Caesar Cipher

• How many possible ciphers?

– Only 25 possible ciphers

– A maps to B,..Z

• Given ciphertext, just try all shifts of letters

• Do need to recognize when have plaintext

• E.g., break ciphertext "GCUA VQ DTGCM"

Page 17: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Monoalphabetic Cipher• Rather than just shifting the alphabet

• Could shuffle (jumble) the letters arbitrarily

• Each plaintext letter maps to a different random ciphertext letter

• Key is 26 letters long

Plain: abcdefghijklmnopqrstuvwxyz

Cipher: DKVQFIBJWPESCXHTMYAUOLRGZN

Plaintext: ifwewishtoreplaceletters

Ciphertext: WIRFRWAJUHYFTSDVFSFUUFYA

Page 18: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Monoalphabetic Cipher Security

• Now have a total of 26! = 4 x 1026 keys

• Is that secure?

• Problem is language characteristics

– Human languages are redundant

– Letters are not equally commonly used

• What are the most frequently used letters ?

• What are the least frequently used ones ?

Page 19: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

English Letter Frequencies

Page 20: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Example Cryptanalysis• Given ciphertext:

UZQSOVUOHXMOPVGPOZPEVSGZWSZOPFPESXUDBMETSXAIZ

VUEPHZHMDZSHZOWSFPAPPDTSVPQUZWYMXUZUHSX

EPYEPOPDZSZUFPOMBZWPFUPZHMDJUDTMOHMQ

• Count relative letter frequencies (see text)

• Guess P & Z are e and t

• Guess ZW is th and hence ZWP is the

• Proceeding with trial and error finally get:it was disclosed yesterday that several informal but

direct contacts have been made with political

representatives of the viet cong in moscow

Page 21: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Example:

ZU HO UD CUZ ZU HO ZSGZ AE ZSO JKOEZAUC

ZSGZ can be THAT

Replace Z=T, H=S, G=A

ZU can be TO, replace U=O

ZSO can be THE, replace O=E

CUZ can be NOT, replace C=N

AE can be IS, replace A=I

HO can be BE, replace H=B

UD can be OR, replace D=R

What about JKOEZAUC, QUESTION, U follows Q

TO BE OR NOT TO BE THAT IS THE QUESTION

Language Redundancy and Cryptanalysis

Page 22: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

One-Time Pad• If a truly random key as long as the message

is used, the cipher will be secure - One-Time pad

• E.g., a random sequence of 0’s and 1’s XORed to plaintext, no repetition of keys

• Unbreakable since ciphertext bears no statistical relationship to the plaintext

• For any plaintext, it needs a random key of the same length

– Hard to generate large amount of keys

• Any other problem?

– Safe distribution of key

Page 23: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

One-Time Pad - ExampleIf the message is

ONETIMEPAD

and the key sequence from the pad is

TBFRGFARFM

then the ciphertext is

IPKLPSFHGQ

because

O + T mod 26 = I

N + B mod 26 = P

E + F mod 26 = K

etc.

Page 24: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

One-Time Pad - Example• An adversary has no information with which to

cryptanalyze the ciphertext.

• For the same example, assume that an adversary tries to guess the message ONETIMEPAD from the ciphertext… Recall that

– cipher text: IPKLPSFHGQ

– correct key sequence: TBFRGFARFM

• The key sequence could be POYYAEAAZX

Then the decrypted text would be SALMONEGGS

• Or the key sequence could be BXFGBMTMXM

Then the decrypted text would be GREENFLUID

Page 25: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Transposition Ciphers

• Now consider classical transposition or permutation ciphers

• These hide the message by rearranging the letter order, without altering the actual letters used

• Any problems?

• Can recognise these since have the same frequency distribution as the original text

Page 26: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Rail Fence cipher

• Write message letters out diagonally over a number of rows

• Then read off cipher row by row

• E.g., write message out as:m e m a t r h t g p r y

e t e f e t e o a a t

• Giving ciphertextMEMATRHTGPRYETEFETEOAAT

Page 27: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Product Ciphers• Ciphers using substitutions or transpositions

are not secure because of language characteristics

• Hence consider using several ciphers in succession to make harder, but:

– Two substitutions are really one more complex substitution

– Two transpositions are really only one transposition

– But a substitution followed by a transposition makes a new much harder cipher

• This is bridge from classical to modern ciphers

Page 28: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Outline

• Overview of Cryptography

• Classical Symmetric Cipher

• Modern Symmetric Ciphers (DES)

• Public (Asymmetric) Key Cryptography

• Modular Arithmetic

• Modern Asymmetric Ciphers (RSA)

Page 29: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Block vs Stream Ciphers

• Block ciphers process messages in into blocks, each of which is then en/decrypted

• Like a substitution on very big characters

– 64-bits or more

• Stream ciphers process messages a bit or byte at a time when en/decrypting

• Many current ciphers are block ciphers, one of the most widely used types of cryptographic algorithms

Page 30: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Block Cipher Principles• Most symmetric block ciphers are based on a

Feistel Cipher Structure

• Block ciphers look like an extremely large substitution

• Would need table of 264 entries for a 64-bit block

• Instead create from smaller building blocks

• Using idea of a product cipher

Page 31: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Substitution-Permutation Ciphers

• Substitution-permutation (S-P) networks [Shannon, 1949]

– modern substitution-transposition product cipher

• These form the basis of modern block ciphers

• S-P networks are based on the two primitive cryptographic operations

– substitution (S-box)

– permutation (P-box)

• provide confusion and diffusion of message

Page 32: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Confusion and Diffusion• Cipher needs to completely obscure statistical

properties of original message

• A one-time pad does this

• More practically Shannon suggested S-P networks to obtain:

• Diffusion – dissipates statistical structure of plaintext over bulk of ciphertext

• Confusion – makes relationship between ciphertext and key as complex as possible

Page 33: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Feistel Cipher Structure

• Feistel cipher implements Shannon’s S-P network concept

– based on invertible product cipher

• Process through multiple rounds which

– partitions input block into two halves

– perform a substitution on left data half

– based on round function of right half & subkey

– then have permutation swapping halves

Page 34: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Feistel Cipher

Structure

Page 35: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

DES (Data Encryption Standard)

• Published in 1977, standardized in 1979.

• Key: 64 bit quantity=8-bit parity+56-bit key

– Every 8th bit is a parity bit.

• 64 bit input, 64 bit output.

DESEncryption

64 bit M 64 bit C

56 bits

Page 36: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

DES Top View

Permutation

Permutation

Swap

Round 1

Round 2

Round 16

Generate keysInitial Permutation

48-bit K1

48-bit K2

48-bit K16

Swap 32-bit halves

Final Permutation

64-bit Output

48-bit K164-bit Input56-bit Key

…...

Page 37: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Bit Permutation (1-to-1)

…….

……..

1 2 3 4 32

22 6 13 32 3

Input:

Output

0 0 1 0 1

1 0 1 1 1

1 bit

Page 38: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

A DES Round

48 bits

32 bits

32 bits Ln 32 bits Rn

32 bits Ln+1 32 bits Rn+1

E

S-Boxes

P

48 bitsKi

One RoundEncryption

ManglerFunction

Page 39: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Mangler Function

4444444 4

6666666 6

+ + +++ ++ +

6666666 6

S8S1 S2 S7S3 S4 S5 S6

4444444 4

Permutation

The permutation produces “spread” among the chunks/S-boxes!

Page 40: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

DES Standard

• Cipher Iterative Action :

– Input: 64 bits

– Key: 48 bits

– Output: 64 bits

• Key Generation Box :

– Input: 56 bits

– Output: 48 bits

One round (Total 16 rounds)

Page 41: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Avalanche Effect

• Key desirable property of encryption algorithm

• Where a change of one input or key bit results in changing more than half output bits

• DES exhibits strong avalanche

Page 42: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Strength of DES – Key Size• 56-bit keys have 256 = 7.2 x 1016 values

• Brute force search looks hard

• Recent advances have shown is possible

– in 1997 on a huge cluster of computers over the Internet in a few months

– in 1998 on dedicated hardware called “DES cracker” in a few days ($220,000)

– in 1999 above combined in 22hrs!

• Still must be able to recognize plaintext

• No big flaw for DES algorithms

Page 43: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

DES Replacement• Triple-DES (3DES)

– 168-bit key, no brute force attacks

– Underlying encryption algorithm the same, no effective analytic attacks

– Drawbacks

• Performance: no efficient software codes for DES/3DES

• Efficiency/security: bigger block size desirable

• Advanced Encryption Standards (AES)

– US NIST issued call for ciphers in 1997

– Rijndael was selected as the AES in Oct-2000

Page 44: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

AES• Private key symmetric block cipher

• 128-bit data, 128/192/256-bit keys

• Stronger & faster than Triple-DES

• Provide full specification & design details

• Evaluation criteria

– security – effort to practically cryptanalysis

– cost – computational

– algorithm & implementation characteristics

Page 45: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Outline

• Overview of Cryptography

• Classical Symmetric Cipher

• Modern Symmetric Ciphers (DES)

• Public (Asymmetric) Key Cryptography

• Modular Arithmetic

• Modern Asymmetric Ciphers (RSA)

Page 46: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Private-Key Cryptography

• Private/secret/single key cryptography uses one key

• Shared by both sender and receiver

• If this key is disclosed communications are compromised

• Also is symmetric, parties are equal

• Hence does not protect sender from receiver forging a message & claiming is sent by sender

Page 47: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Public-Key Cryptography

• Probably most significant advance in the 3000 year history of cryptography

• Uses two keys – a public & a private key

• Asymmetric since parties are not equal

• Uses clever application of number theoretic concepts to function

• Complements rather than replaces private key crypto

Page 48: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Public-Key Cryptography

• Public-key/two-key/asymmetric cryptography involves the use of two keys:

– a public-key, which may be known by anybody, and can be used to encrypt messages, and verify signatures

– a private-key, known only to the recipient, used to decrypt messages, and sign (create) signatures

• Asymmetric because

– those who encrypt messages or verify signatures cannot decrypt messages or create signatures

Page 49: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Public-Key Cryptography

Page 50: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Public-Key Characteristics

• Public-Key algorithms rely on two keys with the characteristics that it is:

– computationally infeasible to find decryption key knowing only algorithm & encryption key

– computationally easy to en/decrypt messages when the relevant (en/decrypt) key is known

– either of the two related keys can be used for encryption, with the other used for decryption (in some schemes)

Page 51: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Public-Key Cryptosystems

• Two major applications:

– encryption/decryption (provide secrecy)

– digital signatures (provide authentication)

Page 52: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Outline

• Overview of Cryptography

• Classical Symmetric Cipher

• Modern Symmetric Ciphers (DES)

• Public (Asymmetric) Key Cryptography

• Modular Arithmetic

• Modern Asymmetric Ciphers (RSA)

Page 53: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Modular Arithmetic

• Public key algorithms are based on modular arithmetic.

• Modular addition.

• Modular multiplication.

• Modular exponentiation.

Page 54: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Modular Addition• Addition modulo (mod) K

– Poor cipher with (dk+dm) mod K, e.g., if K=10 and dk is the key.

• Additive inverse: addition mod K yields 0.

• “Decrypt” by adding inverse.

+ 0 1 2 3 4 5 6 7 8 9

0 0 0 0 0 0 0 0 0 0 0

1 1 2 3 4 5 6 7 8 9 0

2 2 3 4 5 6 7 8 9 0 1

3 3 4 5 6 7 8 9 0 1 2

Page 55: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Modular Multiplication

• Multiplication modulo K

• Multiplicative inverse: multiplication mod K yields 1

• Only some numbers have inverse

* 0 1 2 3 4 5 6 7 8 9

0 0 0 0 0 0 0 0 0 0 0

1 1 2 3 4 5 6 7 8 9 1

2 0 2 4 6 8 0 2 4 6 8

3 0 3 6 9 2 5 8 1 4 7

Page 56: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Modular Multiplication

• Only the numbers relatively prime to n will have mod n multiplicative inverse

• x, m relative prime: no other common factor than 1

– Eg. 8 & 15 are relatively prime - factors of 8 are 1,2,4,8 and of 15 are 1,3,5,15 and 1 is the only common factor

Page 57: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Totient Function• Totient function ø(n): number of integers less

than n relatively prime to n

– if n is prime,

• ø(n)=n-1

– if n=pq, and p, q are primes, p != q

• ø(n)=(p-1)(q-1)

– E.g.,

• ø(37) = 36

• ø(21) = (3–1)×(7–1) = 2×6 = 12

Page 58: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Modular Exponentiationxy 0 1 2 3 4 5 6 7 8 9

0 0 0 0 0 0 0 0 0 0

1 1 1 1 1 1 1 1 1 1 1

2 1 2 4 8 6 2 4 8 6 2

3 1 3 9 7 1 3 9 7 1 3

4 1 4 6 4 6 4 6 4 6 4

5 1 5 5 5 5 5 5 5 5 5

6 1 6 6 6 6 6 6 6 6 6

7 1 7 9 3 1 7 9 3 1 7

8 1 8 4 2 6 8 4 2 6 8

9 1 9 1 9 1 9 1 9 1 9

Page 59: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Modular Exponentiation

• xy mod n = xy mod ø(n) mod n

• if y mod ø(n) = 1, then xy mod n = x mod n

Page 60: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Outline

• Overview of Cryptography

• Classical Symmetric Cipher

• Modern Symmetric Ciphers (DES)

• Public (Asymmetric) Key Cryptography

• Modular Arithmetic

• Modern Asymmetric Ciphers (RSA)

Page 61: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

RSA (Rivest, Shamir, Adleman)

• The most popular one.

• Support both public key encryption and digital signature.

• Assumption/theoretical basis:

– Factoring a big number is hard.

• Variable key length (usually 512 bits).

• Variable plaintext block size.

– Plaintext must be “smaller” than the key.

– Ciphertext block size is the same as the key length.

Page 62: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

What Is RSA?• To generate key pair:

– Pick large primes (>= 256 bits each) p and q

– Let n = p*q, keep your p and q to yourself!

– For public key, choose e that is relatively prime to ø(n) =(p-1)(q-1), let pub = <e,n>

– For private key, find d that is the multiplicative inverse of e mod ø(n), i.e., e*d = 1 mod ø(n), let priv = <d,n>

Page 63: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

RSA Example

1. Select primes: p=17 & q=11

2. Compute n = pq =17×11=187

3. Compute ø(n)=(p–1)(q-1)=16×10=160

4. Select e : gcd(e,160)=1; choose e=7

5. Determine d: de=1 mod 160 and d < 160 Value is d=23 since 23×7=161= 10×160+1

6. Publish public key KU={7,187}

7. Keep secret private key KR={23,17,11}

Page 64: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

How Does RSA Work?

• Given pub = <e, n> and priv = <d, n>

– encryption: c = me mod n, m < n

– decryption: m = cd mod n

– signature: s = md mod n, m < n

– verification: m = se mod n

• given message M = 88 (nb. 88<187)

• encryption:

C = 887 mod 187 = 11

• decryption:

M = 1123 mod 187 = 88

Page 65: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Why Does RSA Work?

• Given pub = <e, n> and priv = <d, n>

– n =p*q, ø(n) =(p-1)(q-1)

– e*d = 1 mod ø(n)

– xed = x mod n

– encryption: c = me mod n

– decryption: m = cd mod n = med mod n = m mod n = m (since m < n)

– digital signature (similar)

Page 66: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Is RSA Secure?• Factoring 512-bit number is very hard!

• But if you can factor big number n then given public key <e,n>, you can find d, hence the private key by:

– Knowing factors p, q, such that, n = p*q

– Then ø(n) =(p-1)(q-1)

– Then d such that e*d = 1 mod ø(n)

• Threat

– Moore’s law

– Refinement of factorizing algorithms

• For the near future, a key of 1024 or 2048 bits needed

Page 67: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Symmetric (DES) vs. Public Key (RSA)

• Exponentiation of RSA is expensive !

• AES and DES are much faster

– 100 times faster in software

– 1,000 to 10,000 times faster in hardware

• RSA often used in combination in AES and DES

– Pass the session key with RSA

Page 68: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

GNU Privacy Guard

Yan Gao

Page 69: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Introduction of GnuPG

• GnuPG Stands for GNU Privacy Guard

• A tool for secure communication and data storage

• To encrypt data and create digital signatures

• Using public-key cryptography

• Distributed in almost every Linux

• For T-lab machines --- gpg command

Page 70: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Functionality of GnuPG• Generating a new keypair

– gpg -- gen-key

• Key type

– (1) DSA and ElGamal (default)

– (2) DSA (sign only)

– (4) ElGamal (sign and encrypt)

• Key size

– DSA: between 512 and 1024 bits->1024 bits

– ElGamal: any size

• Expiration date: key does not expire

• User ID

• Passphrase

Page 71: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Functionality of GnuPG• Generating a revocation certificate

– gpg --output revoke.asc --gen-revoke yourkey

• Exporting a public key– gpg --output alice.gpg --export [email protected]

– gpg --armor --export [email protected]

• Importing a public key– gpg --import blake.gpg

– gpg --list-keys

– gpg --edit-key [email protected]

• fpr

• sign

• check

Page 72: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Functionality of GnuPG

• Encrypting and decrypting documents

– gpg --output doc.gpg --encrypt --recipient [email protected] doc

– gpg --output doc --decypt doc.gpg

• Making and verifying signatures

– gpg --output doc.sig --sign doc

– gpg --output doc --decrypt doc.sig

• Detached signatures

– gpg --output doc.sig --detach-sig doc

– gpg --verify doc.sig doc

Page 73: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Questions?

Page 74: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Backup Slides

Page 75: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Per-Round Key Generation

28 bits 28 bits

48 bitsKi

Oneround

Circular Left Shift Circular Left Shift

28 bits 28 bits

Permutationwith Discard

Initial Permutation of DES key

C i-1 D i-1

C i D i

Round 1,2,9,16: single shiftOthers: two bits

Page 76: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

S-Box (Substitute and Shrink)• 48 bits ==> 32 bits. (8*6 ==> 8*4)

• 2 bits used to select amongst 4 substitutions for the rest of the 4-bit quantity

2 bitsrow

S i

i = 1,…8.

I1I2I3I4I5I6

O1O2O3O4

4 bitscolumn

Page 77: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

S-Box Examples

0 1 2 3 4 5 6 7 8 9…. 15

0 14 4 13 1 2 15 11 8 3

1 0 15 7 4 14 2 13 1 10

2 4 1 14 8 13 6 2 11 15

3 15 12 8 2 4 9 1 7 5

Each row and column contain different numbers.

Example: input: 100110 output: ???

Page 78: Announcement T-lab accounts should have been set up Assignment upload webpage up Homework 1 released, due in two weeks.

Bits Expansion (1-to-m)

…….

……..

1 2 3 4 5 32Input:

Output

0 0 1 0 1 1

1 2 3 4 5 6 7 8 48

1 0 0 1 0 1 0 1 1 0