SSL/TLS Protocol Network Security Gene Itkis
Basic paradigmatic application: on-line purchase Client contacts Server (possibly for the first time) Spontaneity Client conveys secret info to Server Confidentiality Whos on the other side? Server Authentication – required Client authentication – optional You do not want to know about security Transparency Allows other protocols to work over SSL/TLS
Design Goals Confidentiality Authentication Server – required Client – optional Spontaneity Transparency Message Integrity Expandability Fix problems of v.2 SSL v.2 SSL v.3
Protocol parts Handshake Authenticated Key Establishment Data transfer Encryption Integrity (Message Authentication)
Handshake protocol outline CS ClientHello ServerHello ClientHello : Version Cipher Suit s Random ServerHello : Version Cipher Suit Session ID Random Certificate + Done Certificate : Subject Issuer (CA) Signed PK RSA ClientKE Data transfer Keys computed ClientKeyExchange : Pre-Master Key encrypted w/PK Attacks Attacks : force weak cipher suit replay: e.g., cause multiple payments Remedy : Random in Hello Check under protection: Finished msgs finished
Finished & ChangeCipherSpec Data transfer Keys computed finished ClientKE ChangeCipherSpec keys computed ClientFinished ChangeCipherSpec ServerFinished Finished: HASH ( all Handshake msgs) : …
Handshake protocol outline CS ClientHello ServerHello ClientHello : Version Cipher Suit s Random ServerHello : Version Cipher Suit Session ID Random Certificate Certificate : Subject Issuer (CA) Signed PK DH ClientKE ClientKeyExchange : DH message ServerKE ServerKE + Done ServerKeyExchange ServerKeyExchange : DH message, signed to be verified w/ PK