






Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
An overview of the secure socket layer (ssl) protocol, which is used for secure transactions over the internet. Ssl ensures authentication, confidentiality, and integrity of data transmitted between two parties. How ssl works, the role of ssl keys, ssl authentication, and ssl sessions. It also compares ssl with ipsec and discusses ssl vs. Ipsec implementation.
Typology: Slides
1 / 12
This page cannot be seen from the preview
Don't miss anything!







Part 3 Protocols 1
Part 3 Protocols 2
application
transport
network
link
physical
Socket “layer” OS
User
NIC
Part 3 Protocols 4
Alice Bob
I’d like to talk to you securely
Here’s my certificate
{KAB}Bob
protected HTTP
Part 3 Protocols 5
Alice Bob
Can we talk?, cipher list, RA certificate, cipher, RB {S}Bob, E(h(msgs,CLNT,K),K)
Data protected with key K
h(msgs,SRVR,K)
Part 3 Protocols 7
o How does client authenticate server? o Why does server not authenticate client?
o This requires client to have certificate o If server wants to authenticate client, server could instead require (encrypted) password
Part 3 Protocols 8
Alice (^) Bob
certificateT, RB {S 1 }Trudy,E(X 1 ,K 1 )
E(data,K 1 )
h(Y 1 ,K 1 )
Q: What prevents this MiM attack? A: Bob’s certificate must be signed by a certificate authority (such as Verisign) What does Web browser do if sig. not valid? What does user do if signature is not valid?
Trudy
certificateB, RB {S 2 }Bob,E(X 2 ,K 2 )
E(data,K 2 )
h(Y 2 ,K 2 )
Part 3 Protocols 10
Alice Bob
session-ID, cipher list, RA session-ID, cipher, RB, h(msgs,SRVR,K) h(msgs,CLNT,K) Protected data
Assuming SSL session exists So S is already known to Alice and Bob Both sides must remember session-ID Again, K = h(S,RA,RB) No public key operations! (relies on known S)
Part 3 Protocols 11
o Lives at the network layer (part of the OS) o Has encryption, integrity, authentication, etc. o Is overly complex (including serious flaws)
o Lives at socket layer (part of user space) o Has encryption, integrity, authentication, etc. o Has a simpler specification