+ All Categories
Home > Documents > Chapter 8: Network Security Computer Networks Goals ..., they use symmetric key cryptography...

Chapter 8: Network Security Computer Networks Goals ..., they use symmetric key cryptography...

Date post: 16-Mar-2020
Category:
Upload: others
View: 7 times
Download: 0 times
Share this document with a friend
15
1 Computer Networks LECTURE 21 Security Sandhya Dwarkadas Department of Computer Science University of Rochester Co 3-1 Chapter 8: Network Security Goals: understand principles of network security: cryptography and its many uses beyond confidentialityauthentication message integrity security in practice: firewalls and intrusion detection systems security in application, transport, network, link layers 8-2 Security An Example: Dyn and DDoS http://dyn.com/ddos / https://www.wired.com/2016/10/internet-outage- ddos-dns-dyn/ What is network security? confidentiality: only sender, intended receiver should understandmessage contents sender encrypts message receiver decrypts message authentication: sender, receiver want to confirm identity of each other message integrity: sender, receiver want to ensure message not altered (in transit, or afterwards) without detection access and availability: services must be accessible and available to users 8-4 Security
Transcript
Page 1: Chapter 8: Network Security Computer Networks Goals ..., they use symmetric key cryptography Security8-29 Chapter 8 roadmap 8.1 What is network security? 8.2 Principles of cryptography

1

Computer Networks

LECTURE 21

Security

Sandhya Dwarkadas

Department of Computer Science University of Rochester

Co

mp

uter

Net

wor

ks

(Tr

ans

port

Lay

er)

3-1

Chapter 8: Network Security

Goals: understand principles of network security:

• cryptography and its many uses beyond “confidentiality”• authentication

• message integrity

security in practice:• firewalls and intrusion detection systems

• security in application, transport, network, link layers

8-2Security

An Example: Dyn and DDoS

http://dyn.com/ddos/

https://www.wired.com/2016/10/internet-outage-ddos-dns-dyn/

What is network security?

confidentiality: only sender, intended receiver should “understand” message contents

• sender encrypts message

• receiver decrypts message

authentication: sender, receiver want to confirm identity of each other

message integrity: sender, receiver want to ensure message not altered (in transit, or afterwards) without detection

access and availability: services must be accessible and available to users

8-4Security

Page 2: Chapter 8: Network Security Computer Networks Goals ..., they use symmetric key cryptography Security8-29 Chapter 8 roadmap 8.1 What is network security? 8.2 Principles of cryptography

2

Alice, Bob, Trudy

well-known in network security world

Bob, Alice want to communicate “securely” Trudy may intercept, delete, add messages

secure

senderssecure

receiver

channel data, control

messages

data data

Alice Bob

Trudy

8-5Security

Who might Bob, Alice be?

… well, real-life Bobs and Alices!

Web browser/server for electronic transactions (e.g., on-line purchases)

on-line banking client/server

DNS servers

routers exchanging routing table updates

other examples?

8-6Security

What can Trudy do with the information?

• eavesdrop: intercept messages

• actively insert messages into connection

• impersonation: can fake (spoof) source address in packet (or any field in packet)

• hijacking: “take over” ongoing connection by removing sender or receiver, inserting himself in place

• denial of service: prevent service from being used by others (e.g., by overloading resources)

8-7Security

Chapter 8 roadmap

8.1 What is network security?

8.2 Principles of cryptography

8.3 Message integrity, authentication

8.4 Securing e-mail

8.5 Securing TCP connections: SSL

8.6 Network layer security: IPsec

8.7 Securing wireless LANs

8.8 Operational security: firewalls and IDS

8-8Security

Page 3: Chapter 8: Network Security Computer Networks Goals ..., they use symmetric key cryptography Security8-29 Chapter 8 roadmap 8.1 What is network security? 8.2 Principles of cryptography

3

The language of cryptography

m plaintext message

KA(m) ciphertext, encrypted with key KA

m = KB(KA(m))

plaintext plaintextciphertext

KA

encryption

algorithmdecryption

algorithm

Alice’s

encryption

key

Bob’s

decryption

keyK

B

8-9Security

Breaking an encryption scheme

cipher-text only attack: Trudy has ciphertext she can analyze

two approaches:

• brute force: search through all keys

• statistical analysis

known-plaintext attack: Trudy has plaintext corresponding to ciphertext

• e.g., in monoalphabetic cipher, Trudy determines pairings for a,l,i,c,e,b,o,

chosen-plaintext attack: Trudy can get ciphertext for chosen plaintext

8-10Security

Symmetric key cryptography

symmetric key crypto: Bob and Alice share same (symmetric) key: K

e.g., key is knowing substitution pattern in mono alphabetic substitution cipher

Q: how do Bob and Alice agree on key value?

plaintextciphertext

KS

encryption

algorithmdecryption

algorithm

S

KS

plaintext

message, mK (m)

Sm = KS(KS(m))

8-11Security

Simple encryption scheme

substitution cipher: substituting one thing for another

monoalphabetic cipher: substitute one letter for another

plaintext: abcdefghijklmnopqrstuvwxyz

ciphertext: mnbvcxzasdfghjklpoiuytrewq

Plaintext: bob. i love you. alice

ciphertext: nkn. s gktc wky. mgsbc

e.g.:

Encryption key: mapping from set of 26 letters

to set of 26 letters

8-12Security

Page 4: Chapter 8: Network Security Computer Networks Goals ..., they use symmetric key cryptography Security8-29 Chapter 8 roadmap 8.1 What is network security? 8.2 Principles of cryptography

4

A more sophisticated encryption approach

n substitution ciphers, M1,M2,…,Mn

cycling pattern:• e.g., n=4: M1,M3,M4,M3,M2; M1,M3,M4,M3,M2; ..

for each new plaintext symbol, use subsequent substitution pattern in cyclic pattern• dog: d from M1, o from M3, g from M4

Encryption key: n substitution ciphers, and cyclic pattern

• key need not be just n-bit pattern

8-13Security

Symmetric key crypto: DES

DES: Data Encryption Standard US encryption standard [NIST 1993]

56-bit symmetric key, 64-bit plaintext input

block cipher with cipher block chaining

how secure is DES?

• DES Challenge: 56-bit-key-encrypted phrase decrypted (brute force) in less than a day

• no known good analytic attack

making DES more secure:

• 3DES: encrypt 3 times with 3 different keys

8-14Security

Symmetric key crypto: DES

initial permutation

16 identical “rounds” of function application, each using different 48 bits of key

final permutation

DES operation

8-15Security

AES: Advanced Encryption Standard

symmetric-key NIST standard, replaced DES (Nov 2001)

processes data in 128 bit blocks

128, 192, or 256 bit keys

brute force decryption (try each key) taking 1 day on DES, takes 149 trillion years for AES

8-16Security

Page 5: Chapter 8: Network Security Computer Networks Goals ..., they use symmetric key cryptography Security8-29 Chapter 8 roadmap 8.1 What is network security? 8.2 Principles of cryptography

5

Public Key Cryptography

symmetric key crypto requires sender, receiver

know shared secret key

Q: how to agree on key in first place (particularly if never “met”)?

public key crypto

radically different

approach [Diffie-

Hellman76, RSA78]

sender, receiver do not

share secret key

public encryption key

known to all

private decryption key

known only to receiver

8-17Security

Public key cryptography

plaintext

message, m

ciphertextencryption

algorithmdecryption

algorithm

Bob’s public

key

plaintext

messageK (m)B

+

K B

+

Bob’s private

key K

B

-

m = K (K (m))B

+

B

-

8-18Security

Public key encryption algorithms

need K ( ) and K ( ) such thatB B. .

given public key K , it should be

impossible to compute private

key K B

B

requirements:

1

2

RSA: Rivest, Shamir, Adelson algorithm

+ -

K (K (m)) = m BB

- +

+

-

8-19Security

Prerequisite: modular arithmetic

x mod n = remainder of x when divide by n

facts:

[(a mod n) + (b mod n)] mod n = (a+b) mod n

[(a mod n) - (b mod n)] mod n = (a-b) mod n

[(a mod n) * (b mod n)] mod n = (a*b) mod n

thus

(a mod n)d mod n = ad mod n

example: x=14, n=10, d=2:(x mod n)d mod n = 42 mod 10 = 6xd = 142 = 196 xd mod 10 = 6

8-20Security

Page 6: Chapter 8: Network Security Computer Networks Goals ..., they use symmetric key cryptography Security8-29 Chapter 8 roadmap 8.1 What is network security? 8.2 Principles of cryptography

6

RSA: getting ready

message: just a bit pattern

bit pattern can be uniquely represented by an integer number

thus, encrypting a message is equivalent to encrypting a number

example: m= 10010001 . This message is uniquely represented by

the decimal number 145.

to encrypt m, we encrypt the corresponding number, which gives a new number (the ciphertext).

8-21Security

RSA: Creating public/private key pair

1. choose two large prime numbers p, q.

(e.g., 1024 bits each)

2. compute n = pq, z = (p-1)(q-1)

3. choose e (with e<n) that has no common factors

with z (e, z are “relatively prime”).

4. choose d such that ed-1 is exactly divisible by z.

(in other words: ed mod z = 1 ).

5. public key is (n,e). private key is (n,d).

KB

+K

B

-

8-22Security

RSA: encryption, decryption

0. given (n,e) and (n,d) as computed above

1. to encrypt message m (<n), compute

c = m mod ne

2. to decrypt received bit pattern, c, compute

m = c mod nd

m = (m mod n)e mod ndmagic

happens!c

8-23Security

RSA example:

Bob chooses p=5, q=7. Then n=35, z=24.

e=5 (so e, z relatively prime).

d=29 (so ed-1 exactly divisible by z).

bit pattern m me

c = m mod ne

0000l000 12 24832 17encrypt:

encrypting 8-bit messages.

c m = c mod nd

17 481968572106750915091411825223071697 12

cd

decrypt:

8-24Security

Page 7: Chapter 8: Network Security Computer Networks Goals ..., they use symmetric key cryptography Security8-29 Chapter 8 roadmap 8.1 What is network security? 8.2 Principles of cryptography

7

Why does RSA work?

must show that cd mod n = m where c = me mod n

fact: for any x and y: xy mod n = x(y mod z) mod n• where n= pq and z = (p-1)(q-1)

thus, cd mod n = (me mod n)d mod n

= med mod n

= m(ed mod z) mod n

= m1 mod n

= m

8-25Security

RSA: another important property

The following property will be very useful later:

K (K (m)) = m BB

- +K (K (m))

BB

+ -=

use public key first,

followed by

private key

use private key

first, followed by

public key

result is the same!

8-26Security

follows directly from modular arithmetic:

(me mod n)d mod n = med mod n

= mde mod n

= (md mod n)e mod n

K (K (m)) = m BB

- +K (K (m))

BB

+ -=Why ?

8-27Security

Why is RSA secure?

suppose you know Bob’s public key (n,e). How hard is it to determine d?

essentially need to find factors of n without knowing the two factors p and q

• fact: factoring a big number is hard

8-28Security

Page 8: Chapter 8: Network Security Computer Networks Goals ..., they use symmetric key cryptography Security8-29 Chapter 8 roadmap 8.1 What is network security? 8.2 Principles of cryptography

8

RSA in practice: session keys

exponentiation in RSA is computationally intensive

DES is at least 100 times faster than RSA

use public key crypto to establish secure connection, then establish second key –symmetric session key – for encrypting data

session key, KS

Bob and Alice use RSA to exchange a symmetric key KS

once both have KS, they use symmetric key cryptography

8-29Security

Chapter 8 roadmap

8.1 What is network security?

8.2 Principles of cryptography

8.3 Message integrity, authentication

8.4 Securing e-mail

8.5 Securing TCP connections: SSL

8.6 Network layer security: IPsec

8.7 Securing wireless LANs

8.8 Operational security: firewalls and IDS

8-30Security

Authentication

Goal: Bob wants Alice to “prove” her identity to him

Protocol ap1.0: Alice says “I am Alice”

Failure scenario??

“I am Alice”

8-31Security

in a network,

Bob can not “see” Alice,

so Trudy simply declares

herself to be Alice“I am Alice”

Authentication

Goal: Bob wants Alice to “prove” her identity to him

Protocol ap1.0: Alice says “I am Alice”

8-32Security

Page 9: Chapter 8: Network Security Computer Networks Goals ..., they use symmetric key cryptography Security8-29 Chapter 8 roadmap 8.1 What is network security? 8.2 Principles of cryptography

9

Authentication: another try

Protocol ap2.0: Alice says “I am Alice” in an IP packet

containing her source IP address

Failure scenario??

“I am Alice”Alice’s

IP address

8-33Security

Trudy can create

a packet

“spoofing”Alice’s address“I am Alice”

Alice’s

IP address

Authentication: another try

Protocol ap2.0: Alice says “I am Alice” in an IP packet

containing her source IP address

8-34Security

Protocol ap3.0: Alice says “I am Alice” and sends her

secret password to “prove” it.

Failure scenario??

“I’m Alice”Alice’s

IP addr

Alice’s

password

OKAlice’s

IP addr

Authentication: another try

8-35Security

playback attack: Trudy

records Alice’s packet

and later

plays it back to Bob

“I’m Alice”Alice’s

IP addr

Alice’s

password

OKAlice’s IP addr

“I’m Alice”Alice’s

IP addr

Alice’s

password

Protocol ap3.0: Alice says “I am Alice” and sends her

secret password to “prove” it.

Authentication: another try

8-36Security

Page 10: Chapter 8: Network Security Computer Networks Goals ..., they use symmetric key cryptography Security8-29 Chapter 8 roadmap 8.1 What is network security? 8.2 Principles of cryptography

10

Authentication: yet another try

Protocol ap3.1: Alice says “I am Alice” and sends her

encrypted secret password to “prove” it.

Failure scenario??

“I’m Alice”Alice’s

IP addr

encrypted

password

OKAlice’s

IP addr

8-37Security

record

and

playback

still works!

“I’m Alice”Alice’s

IP addr

encrypted

password

OKAlice’s

IP addr

“I’m Alice”Alice’s

IP addr

encrypted

password

Authentication: yet another try

Protocol ap3.1: Alice says “I am Alice” and sends her

encrypted secret password to “prove” it.

8-38Security

Goal: avoid playback attack

Failures, drawbacks?

nonce: number (R) used only once-in-a-lifetime

ap4.0: to prove Alice “live”, Bob sends Alice nonce, R. Alice

must return R, encrypted with shared secret key

“I am Alice”

R

K (R)A-B

Alice is live, and

only Alice knows

key to encrypt

nonce, so it must

be Alice!

Authentication: yet another try

8-39Security

Authentication: ap5.0

ap4.0 requires shared symmetric key

can we authenticate using public key techniques?

ap5.0: use nonce, public key cryptography

“I am Alice”

RBob computes

K (R)A

-

“send me your public key”

K A

+

(K (R)) = RA

-K A

+

and knows only Alice

could have the private

key, that encrypted R

such that

(K (R)) = RA

-K

A+

8-40Security

Page 11: Chapter 8: Network Security Computer Networks Goals ..., they use symmetric key cryptography Security8-29 Chapter 8 roadmap 8.1 What is network security? 8.2 Principles of cryptography

11

ap5.0: security holeman (or woman) in the middle attack: Trudy poses as Alice

(to Bob) and as Bob (to Alice)

I am Alice I am Alice

R

TK (R)

-

Send me your public key

TK

+A

K (R)-

Send me your public key

AK

+

TK (m)+

Tm = K (K (m))

+

T

-Trudy gets

sends m to Alice

encrypted with

Alice’s public key

AK (m)+

Am = K (K (m))

+

A

-

R

8-41Security

difficult to detect:

Bob receives everything that Alice sends, and vice versa. (e.g., so Bob, Alice can meet one week later and recall conversation!)

problem is that Trudy receives all messages as well!

ap5.0: security holeman (or woman) in the middle attack: Trudy poses as Alice (to

Bob) and as Bob (to Alice)

8-42Security

Chapter 8 roadmap

8.1 What is network security?

8.2 Principles of cryptography

8.3 Message integrity, authentication

8.4 Securing e-mail

8.5 Securing TCP connections: SSL

8.6 Network layer security: IPsec

8.7 Securing wireless LANs

8.8 Operational security: firewalls and IDS

8-43Security

Digital signatures

cryptographic technique analogous to hand-written signatures:

sender (Bob) digitally signs document, establishing he is document owner/creator.

verifiable, nonforgeable: recipient (Alice) can prove to someone that Bob, and no one else (including Alice), must have signed document

8-44Security

Page 12: Chapter 8: Network Security Computer Networks Goals ..., they use symmetric key cryptography Security8-29 Chapter 8 roadmap 8.1 What is network security? 8.2 Principles of cryptography

12

simple digital signature for message m: Bob signs m by encrypting with his private key KB,

creating “signed” message, KB(m)-

-

Dear Alice

Oh, how I have missed

you. I think of you all the

time! …(blah blah blah)

Bob

Bob’s message, m

Public key

encryption

algorithm

Bob’s private

key K

B

-

Bob’s message,

m, signed

(encrypted) with

his private key

m,K B

-(m)

Digital signatures

8-45Security

-

Alice thus verifies that:

Bob signed m

no one else signed m

Bob signed m and not m‘

non-repudiation:

Alice can take m, and signature KB(m) to court and prove that Bob signed m

-

Digital signatures suppose Alice receives msg m, with signature: m, KB(m)

Alice verifies m signed by Bob by applying Bob’s public key KB

to KB(m) then checks KB(KB(m) ) = m.

If KB(KB(m) ) = m, whoever signed m must have used Bob’s

private key.

-

--

+

+ +

8-46Security

Message digests

computationally expensive to public-key-encrypt long messages

goal: fixed-length, easy-to-compute digital “fingerprint” apply hash function H to

m, get fixed size message digest, H(m).

Hash function properties:

many-to-1

produces fixed-size msg digest (fingerprint)

given message digest x, computationally infeasible to find m such that x = H(m)

large

message

m

H: Hash

Function

H(m)

8-47Security

Internet checksum: poor crypto hash function

Internet checksum has some properties of hash function:

produces fixed length digest (16-bit sum) of message

is many-to-one

But given message with given hash value, it is easy to find another

message with same hash value:

I O U 1

0 0 . 9

9 B O B

49 4F 55 31

30 30 2E 39

39 42 D2 42

message ASCII format

B2 C1 D2 AC

I O U 9

0 0 . 1

9 B O B

49 4F 55 39

30 30 2E 31

39 42 D2 42

message ASCII format

B2 C1 D2 ACdifferent messages

but identical checksums!

8-48Security

Page 13: Chapter 8: Network Security Computer Networks Goals ..., they use symmetric key cryptography Security8-29 Chapter 8 roadmap 8.1 What is network security? 8.2 Principles of cryptography

13

large message

m

H: Hash

function H(m)

digital

signature

(encrypt)

Bob’s

private

key K B

-

+

Bob sends digitally signed

message:Alice verifies signature, integrity

of digitally signed message:

KB(H(m))-

encrypted

msg digest

KB(H(m))-

encrypted

msg digest

large message

m

H: Hash

function

H(m)

digital

signature

(decrypt)

H(m)

Bob’s

public

key K B

+

equal

?

Digital signature = signed message digest

8-49Security

Hash function algorithms

MD5 hash function widely used (RFC 1321) • computes 128-bit message digest in 4-step process.

• arbitrary 128-bit string x, appears difficult to construct msg m whose MD5 hash is equal to x

SHA-1 is also used• US standard [NIST, FIPS PUB 180-1]

• 160-bit message digest

8-50Security

Recall: ap5.0 security holeman (or woman) in the middle attack: Trudy poses as Alice

(to Bob) and as Bob (to Alice)

I am Alice I am Alice

R

TK (R)

-

Send me your public key

TK

+A

K (R)-

Send me your public key

AK

+

TK (m)+

Tm = K (K (m))

+

T

-Trudy gets

sends m to Alice

encrypted with

Alice’s public key

AK (m)+

Am = K (K (m))

+

A

-

R

8-51Security

Public-key certification

motivation: Trudy plays pizza prank on Bob• Trudy creates e-mail order:

Dear Pizza Store, Please deliver to me four pepperoni pizzas. Thank you, Bob

• Trudy signs order with her private key

• Trudy sends order to Pizza Store

• Trudy sends to Pizza Store her public key, but says it’s Bob’s public key

• Pizza Store verifies signature; then delivers four pepperoni pizzas to Bob

• Bob doesn’t even like pepperoni

8-52Security

Page 14: Chapter 8: Network Security Computer Networks Goals ..., they use symmetric key cryptography Security8-29 Chapter 8 roadmap 8.1 What is network security? 8.2 Principles of cryptography

14

Certification authorities

certification authority (CA): binds public key to particular entity, E.

E (person, router) registers its public key with CA.• E provides “proof of identity” to CA.

• CA creates certificate binding E to its public key.

• certificate containing E’s public key digitally signed by CA – CA says “this is E’s public key”

Bob’s

public

key K B

+

Bob’s

identifying

information

digital

signature

(encrypt)

CA

private

key K CA

-

K B

+

certificate for

Bob’s public key,

signed by CA

8-53Security

when Alice wants Bob’s public key:

• gets Bob’s certificate (Bob or elsewhere).

• apply CA’s public key to Bob’s certificate, get Bob’s public key

Bob’s

public

key K B

+

digital

signature

(decrypt)

CA

public

key K CA

+

K B

+

Certification authorities

8-54Security

Chapter 8 roadmap

8.1 What is network security?

8.2 Principles of cryptography

8.3 Message integrity, authentication

8.4 Securing e-mail

8.5 Securing TCP connections: SSL

8.6 Network layer security: IPsec

8.7 Securing wireless LANs

8.8 Operational security: firewalls and IDS

8-55Security

Secure e-mail

Alice:

generates random symmetric private key, KS

encrypts message with KS (for efficiency)

also encrypts KS with Bob’s public key

sends both KS(m) and KB(KS) to Bob

Alice wants to send confidential e-mail, m, to Bob.

KS( ).

KB( ).+

+ -

KS(m )

KB(KS )+

m

KS

KS

KB+

Internet

KS( ).

KB( ).-

KB-

KS

mKS(m )

KB(KS )+

8-56Security

Page 15: Chapter 8: Network Security Computer Networks Goals ..., they use symmetric key cryptography Security8-29 Chapter 8 roadmap 8.1 What is network security? 8.2 Principles of cryptography

15

Secure e-mail

Bob:

uses his private key to decrypt and recover KS

uses KS to decrypt KS(m) to recover m

Alice wants to send confidential e-mail, m, to Bob.

KS( ).

KB( ).+

+ -

KS(m )

KB(KS )+

m

KS

KS

KB+

Internet

KS( ).

KB( ).-

KB-

KS

mKS(m )

KB(KS )+

8-57Security

Secure e-mail (continued)

Alice wants to provide sender authentication message integrity

Alice digitally signs message

sends both message (in the clear) and digital signature

H( ). KA( ).-

+ -

H(m )KA(H(m))-

m

KA-

Internet

m

KA( ).+

KA+

KA(H(m))-

mH( ).

H(m )

compare

8-58Security

Secure e-mail (continued)

Alice wants to provide secrecy, sender authentication, message

integrity.

Alice uses three keys: her private key, Bob’s public key, newly

created symmetric key

H( ). KA( ).-

+

KA(H(m))-

m

KA

-

m

KS( ).

KB( ).+

+

KB(KS )+

KS

KB+

Internet

KS

8-59Security

Disclaimer

Parts of the lecture slides contain original work of James Kurose and Keith Ross. The slides are intended for the sole purpose of instruction of computer networks at the University of Rochester. All copyrighted materials belong to their original owner(s).

Computer Networks

(Transport Layer)3-

13

1


Recommended