cryptography and network security chapter 13

23
Cryptography and Cryptography and Network Security Network Security Chapter 13 Chapter 13 Fourth Edition Fourth Edition by William Stallings by William Stallings Lecture slides by Lawrie Lecture slides by Lawrie Brown Brown

Upload: talon-griffith

Post on 13-Mar-2016

26 views

Category:

Documents


2 download

DESCRIPTION

Cryptography and Network Security Chapter 13. Fourth Edition by William Stallings Lecture slides by Lawrie Brown. Chapter 13 – Digital Signatures & Authentication Protocols. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Cryptography and Network Security Chapter 13

Cryptography and Cryptography and Network SecurityNetwork Security

Chapter 13Chapter 13Fourth EditionFourth Edition

by William Stallingsby William Stallings

Lecture slides by Lawrie BrownLecture slides by Lawrie Brown

Page 2: Cryptography and Network Security Chapter 13

Chapter 13 – Chapter 13 – Digital Signatures & Digital Signatures & Authentication ProtocolsAuthentication Protocols

To guard against the baneful influence exerted by strangers To guard against the baneful influence exerted by strangers is therefore an elementary dictate of savage prudence. is therefore an elementary dictate of savage prudence. Hence before strangers are allowed to enter a district, or Hence before strangers are allowed to enter a district, or at least before they are permitted to mingle freely with at least before they are permitted to mingle freely with the inhabitants, certain ceremonies are often performed the inhabitants, certain ceremonies are often performed by the natives of the country for the purpose of disarming by the natives of the country for the purpose of disarming the strangers of their magical powers, or of disinfecting, the strangers of their magical powers, or of disinfecting, so to speak, the tainted atmosphere by which they are so to speak, the tainted atmosphere by which they are supposed to be surrounded.supposed to be surrounded.——The Golden BoughThe Golden Bough, Sir James George Frazer, Sir James George Frazer

Page 3: Cryptography and Network Security Chapter 13

Digital SignaturesDigital Signatures have looked at have looked at message authentication message authentication

but does not address issues of lack of trustbut does not address issues of lack of trust digital signatures provide the ability to: digital signatures provide the ability to:

verify author, date & time of signatureverify author, date & time of signature authenticate message contents authenticate message contents be verified by third parties to resolve disputesbe verified by third parties to resolve disputes

hence include authentication function with hence include authentication function with additional capabilitiesadditional capabilities

Page 4: Cryptography and Network Security Chapter 13

Digital Signature PropertiesDigital Signature Properties must depend on the message signedmust depend on the message signed must use information unique to sendermust use information unique to sender

to prevent both forgery and denialto prevent both forgery and denial must be relatively easy to producemust be relatively easy to produce must be relatively easy to recognize & verifymust be relatively easy to recognize & verify be computationally infeasible to forge be computationally infeasible to forge

with new message for existing digital signaturewith new message for existing digital signature with fraudulent digital signature for given messagewith fraudulent digital signature for given message

be practical save digital signature in storagebe practical save digital signature in storage

Page 5: Cryptography and Network Security Chapter 13

Direct Digital SignaturesDirect Digital Signatures involve only sender & receiverinvolve only sender & receiver assumed receiver has sender’s public-keyassumed receiver has sender’s public-key digital signature made by sender signing digital signature made by sender signing

entire message or hash with private-keyentire message or hash with private-key can encrypt using receivers public-keycan encrypt using receivers public-key important that sign first then encrypt important that sign first then encrypt

message & signaturemessage & signature security depends on sender’s private-keysecurity depends on sender’s private-key

Page 6: Cryptography and Network Security Chapter 13

Arbitrated Digital SignaturesArbitrated Digital Signatures involves use of arbiter Ainvolves use of arbiter A

validates any signed messagevalidates any signed message then dated and sent to recipientthen dated and sent to recipient

requires suitable level of trust in arbiterrequires suitable level of trust in arbiter can be implemented with either private or can be implemented with either private or

public-key algorithmspublic-key algorithms arbiter may or may not see messagearbiter may or may not see message

Page 7: Cryptography and Network Security Chapter 13

Authentication ProtocolsAuthentication Protocols used to convince parties of each others used to convince parties of each others

identity and to exchange session keysidentity and to exchange session keys may be one-way or mutualmay be one-way or mutual key issues arekey issues are

confidentiality – to protect session keysconfidentiality – to protect session keys timeliness – to prevent replay attackstimeliness – to prevent replay attacks

published protocols are often found to published protocols are often found to have flaws and need to be modifiedhave flaws and need to be modified

Page 8: Cryptography and Network Security Chapter 13

Replay AttacksReplay Attacks where a valid signed message is copied and where a valid signed message is copied and

later resentlater resent simple replaysimple replay repetition that can be loggedrepetition that can be logged repetition that cannot be detectedrepetition that cannot be detected backward replay without modificationbackward replay without modification

countermeasures includecountermeasures include use of sequence numbers (generally impractical)use of sequence numbers (generally impractical) timestamps (needs synchronized clocks)timestamps (needs synchronized clocks) challenge/response (using unique nonce)challenge/response (using unique nonce)

Page 9: Cryptography and Network Security Chapter 13

Using Symmetric EncryptionUsing Symmetric Encryption as discussed previously can use a two-as discussed previously can use a two-

level hierarchy of keyslevel hierarchy of keys usually with a trusted Key Distribution usually with a trusted Key Distribution

Center (KDC)Center (KDC) each party shares own master key with KDCeach party shares own master key with KDC KDC generates session keys used for KDC generates session keys used for

connections between partiesconnections between parties master keys used to distribute these to themmaster keys used to distribute these to them

Page 10: Cryptography and Network Security Chapter 13

Needham-Schroeder ProtocolNeedham-Schroeder Protocol original third-party key distribution protocoloriginal third-party key distribution protocol for session between A B mediated by KDCfor session between A B mediated by KDC protocol overview is:protocol overview is:

1. 1. A->KDC: A->KDC: IDIDAA || || IDIDBB || || NN11

22. KDC ->. KDC -> A: EA: EKaKa[Ks[Ks || || IDIDBB || || NN11 || E || EKbKb[[KsKs||||IDIDAA] ]] ]

3. 3. A ->A -> B: B: EEKbKb[[KsKs||||IDIDAA]]

4. 4. B ->B -> A: A: EEKsKs[[NN22]]

5. 5. A ->A -> B: B: EEKsKs[f([f(NN22)])]

Page 11: Cryptography and Network Security Chapter 13

Needham-Schroeder ProtocolNeedham-Schroeder Protocol used to securely distribute a new session used to securely distribute a new session

key for communications between A & Bkey for communications between A & B but is vulnerable to a replay attack if an old but is vulnerable to a replay attack if an old

session key has been compromisedsession key has been compromised then message 3 can be resent convincing B then message 3 can be resent convincing B

that is communicating with Athat is communicating with A modifications to address this require:modifications to address this require:

timestamps (Denning 81)timestamps (Denning 81) using an extra nonce (Neuman 93)using an extra nonce (Neuman 93)

Page 12: Cryptography and Network Security Chapter 13

Using Public-Key EncryptionUsing Public-Key Encryption have a range of approaches based on the have a range of approaches based on the

use of public-key encryptionuse of public-key encryption need to ensure have correct public keys need to ensure have correct public keys

for other partiesfor other parties using a central Authentication Server (AS)using a central Authentication Server (AS) various protocols exist using timestamps various protocols exist using timestamps

or noncesor nonces

Page 13: Cryptography and Network Security Chapter 13

Denning AS ProtocolDenning AS Protocol Denning 81 presented the following:Denning 81 presented the following:

1. 1. A ->A -> AS: AS: IDIDAA || || IDIDBB

2. 2. AS ->AS -> A: EA: EPRasPRas[[IDIDAA||PU||PUaa||T] || E||T] || EPRasPRas[[IDIDBB||PU||PUbb||T] ||T]

3. 3. A ->A -> B: EB: EPRasPRas[[IDIDAA||PU||PUaa||T] || E||T] || EPRasPRas[[IDIDBB||PU||PUbb||T] || ||T] || EEPUbPUb[E[EPRasPRas[K[Kss||T]] ||T]]

note session key is chosen by A, hence AS need note session key is chosen by A, hence AS need not be trusted to protect itnot be trusted to protect it

timestamps prevent replay but require timestamps prevent replay but require synchronized clockssynchronized clocks

Page 14: Cryptography and Network Security Chapter 13

One-Way AuthenticationOne-Way Authentication required when sender & receiver are not in required when sender & receiver are not in

communications at same time (eg. email)communications at same time (eg. email) have header in clear so can be delivered have header in clear so can be delivered

by email systemby email system may want contents of body protected & may want contents of body protected &

sender authenticatedsender authenticated

Page 15: Cryptography and Network Security Chapter 13

Using Symmetric EncryptionUsing Symmetric Encryption can refine use of KDC but can’t have final can refine use of KDC but can’t have final

exchange of nonces, vis:exchange of nonces, vis:1. 1. AA->->KDC: KDC: IDIDAA || || IDIDBB || || NN11

22. KDC . KDC -> -> A: EA: EKaKa[Ks[Ks || || IDIDBB || || NN11 || E || EKbKb[[KsKs||||IDIDAA] ]] ]

3. 3. A A -> -> B: B: EEKbKb[[KsKs||||IDIDAA] || E] || EKsKs[M][M] does not protect against replaysdoes not protect against replays

could rely on timestamp in message, though could rely on timestamp in message, though email delays make this problematicemail delays make this problematic

Page 16: Cryptography and Network Security Chapter 13

Public-Key ApproachesPublic-Key Approaches have seen some public-key approacheshave seen some public-key approaches if confidentiality is major concern, can use:if confidentiality is major concern, can use:

AA->->B: EB: EPUbPUb[Ks] || E[Ks] || EKsKs[M][M] has encrypted session key, encrypted messagehas encrypted session key, encrypted message

if authentication needed use a digital if authentication needed use a digital signature with a digital certificate:signature with a digital certificate:AA->->B: M || EB: M || EPRaPRa[H(M)] || E[H(M)] || EPRasPRas[T||ID[T||IDAA||PU||PUaa] ] with message, signature, certificatewith message, signature, certificate

Page 17: Cryptography and Network Security Chapter 13

Digital Signature Digital Signature Standard Standard (DSS)(DSS)

US Govt approved signature schemeUS Govt approved signature scheme designed by NIST & NSA in early 90's designed by NIST & NSA in early 90's published as FIPS-186 in 1991published as FIPS-186 in 1991 revised in 1993, 1996 & then 2000revised in 1993, 1996 & then 2000 uses the SHA hash algorithm uses the SHA hash algorithm DSS is the standard, DSA is the algorithmDSS is the standard, DSA is the algorithm FIPS 186-2 (2000) includes alternative RSA & FIPS 186-2 (2000) includes alternative RSA &

elliptic curve signature variantselliptic curve signature variants

Page 18: Cryptography and Network Security Chapter 13

Digital Signature Digital Signature Algorithm Algorithm (DSA)(DSA)

creates a 320 bit signaturecreates a 320 bit signature with 512-1024 bit securitywith 512-1024 bit security smaller and faster than RSAsmaller and faster than RSA a digital signature scheme onlya digital signature scheme only security depends on difficulty of computing security depends on difficulty of computing

discrete logarithmsdiscrete logarithms variant of ElGamal & Schnorr schemesvariant of ElGamal & Schnorr schemes

Page 19: Cryptography and Network Security Chapter 13

Digital Signature Digital Signature Algorithm Algorithm (DSA)(DSA)

Page 20: Cryptography and Network Security Chapter 13

DSA Key GenerationDSA Key Generation have shared global public key values (p,q,g): have shared global public key values (p,q,g):

choose a large prime p with choose a large prime p with 22L-1L-1 << p < 2p < 2LL • where L= 512 to 1024 bits and is a multiple of 64where L= 512 to 1024 bits and is a multiple of 64

choose q with choose q with 22159159 << q < 2q < 2160160 • such that q is a 160 bit prime divisor of such that q is a 160 bit prime divisor of (p-1)(p-1)

choose choose g = hg = h(p-1)/q(p-1)/q • where where 1<h<p-1 1<h<p-1 andand h h(p-1)/q (p-1)/q mod p > 1mod p > 1

users choose private & compute public key: users choose private & compute public key: choose choose x<qx<q compute compute y = gy = gx x mod pmod p

Page 21: Cryptography and Network Security Chapter 13

DSA Signature CreationDSA Signature Creation to to signsign a message a message MM the sender: the sender:

generates a random signature key generates a random signature key k, k<qk, k<q nb. nb. kk must be random, be destroyed after must be random, be destroyed after

use, and never be reuseduse, and never be reused then computes signature pair: then computes signature pair:

r = (gr = (gkk mod p)mod q mod p)mod q s = [ks = [k-1-1(H(M)+ xr)] mod q(H(M)+ xr)] mod q

sends signature sends signature (r,s)(r,s) with message with message MM

Page 22: Cryptography and Network Security Chapter 13

DSA Signature Verification DSA Signature Verification having received M & having received M & signature signature (r,s)(r,s) to to verifyverify a signature, recipient computes: a signature, recipient computes:

w = sw = s-1 -1 mod q mod q u1= [H(M)w ]mod q u1= [H(M)w ]mod q u2= (rw)mod qu2= (rw)mod qv = [(gv = [(gu1u1 y yu2u2)mod p ]mod q)mod p ]mod q

if if v=rv=r then signature is verified then signature is verified see book web site for details of proof whysee book web site for details of proof why

Page 23: Cryptography and Network Security Chapter 13

SummarySummary have discussed:have discussed:

digital signaturesdigital signatures authentication protocols (mutual & one-way)authentication protocols (mutual & one-way) digital signature algorithm and standarddigital signature algorithm and standard