Documente Academic
Documente Profesional
Documente Cultură
SSL Tls Rev1.6
SSL Tls Rev1.6
SSL/TLS
Rol: criptarea i autentificarea legturii de date ntre 2 aplica ii, fr a face acestea la nivelul aplica ie Aplica ia poate fi oricare: HTTP, FTP, POP3, ...
Istoric
SSL 1.0 Standard proprietar Netscape la nceputul anilor 90 (nainte de 1994) SSL 2.0 Prima versiune SSL public (Netscape, 1994) Diferite probleme; cheie foarte scurt (40 bi i) n varianta de export SSL 3.0 Ultima versiune SSL (proiectat de Netscape, 1996) TLS 1.0 Standard Internet IETF, bazat pe SSL 3.0, 1999 Nu e interoperabil cu SSL 3.0
Partea 1: SSL
Arhitectura SSL
Servicii SSL
Calculul Master Secret din Pre-Master Secret A, BB, CCC snt irurile respective de caractere
Calculul key material din Master secret key material vau folosit la generarea tuturor cheilor folosite n sesiune fi
Din key material precedent se extrag cele 6 chei necesare pe parcursul sesiunii: cheile de autentificare folosite de func iile MAC cheile de criptare folosite de record protocol pt criptarea datelor IV (Initialization Vector) pt CBC
Algoritmi de cifrare/descifrare
Algoritmi de hash
Tipuri de cifru
Algoritmi de compresie
Sesiuni i conexiuni
sesiune: client + server negociaz parametrii de securitate, o singur dat
certificat, compresie, cipher_spec master secret unic la nivel de sesiune se aloc un session state pt sesiune
conexiune: mai multe conexiuni posibile pt o sesiune; folosesc acelai session state i deci
master secret; fiecare are propriul connection state fiecare conexiune are alt grup de 6 chei (2 MAC, 2 chei, 2 IV)
Parametri de sesiune
Session State
Parametri de conexiune
Connection State
1. Handshake Protocol
Handshake Protocol
Handshake Protocol
Faza I, Handshake Protocol
Handshake Protocol
Faza II, Handshake Protocol
Handshake Protocol
Faza III, Handshake Protocol l
Handshake Protocol
Faza IV, Handshake Protocol
Handshake Protocol
La sfritul fazei I: clientul i serverul au negociat protocoalele de securitate disponibile La sfritul fazei II: serverul este autentificat clientului clientul cunoate cheia public a serverului La sfritul fazei III: clientul este autentificat serverului (autentificarea clientului este op ional) clientul i serverul cunosc PMS (pre-master secret) La sfritul fazei IV: clientul i serverul snt gata s fac schimbul de date
Handshake Protocol
Certificate
Folosite n fazele II, III Certificatul con ine cheia public X.509: standard de certificate; asociaz o cheie public cu o identitate (identificarea serverului) Certificatele snt create de un CA (Certificate Authority) Permit verificarea identit ii CA semneaz certificatele certificate chain: un CA poate semna certificatele pentru un alt CA un certificat poate fi revocat prin publicarea sa ntr-un CRL (Certificate Revocation List)
Nivelul 1: ara de origine (e.g. US) Nivelul 2: organiza ia care emite certificatul (e.g. CertCo) Nivelul 3: numele comun (e.g. Common Name Elizabeth cu Id = 1)
DN = {
C=US; O=CertCo; CN=Elizabeth, ID=1}
Semnarea certificatelor
Serverul creaz o semntur RSA
Creaz hash al certificatului Cripteaz folosind cheia privat a CA i trimite
Cheile publice ale CA snt men inute de obicei de ctre OS ntr-o list de root certificates
Ele se pot actualiza periodic (ex: Windows updates - root certificates updates) Peste 100 de CA: VeriSign, Equifax, GlobalSign, etc
Self-signed certificates: atunci cnd nu se folosete un CA; sesiunea SSL este criptat dar nu se realizeaz autentificarea serverului; metod simpl folosit mai ales n intraneturi
2. ChangeCipherSpec Protocol
Snt 2 stri: pending i active;evolu ia parametrilor ntre cele 2 stri:
3. Alert Protocol
Mesaje de alert defnite pt SSL
4. Record Protocol
OBS: MAC=Message Authentication Code; MAC trebuie sa fie acelai la surs i destina ie
Partea 2: TLS
Cipher Suite
Cipher Suite TLS
Pseudo-Random Function
Ce nseamn pseudo-random ?
Pseudo-Random Function
Master Secret
Generarea Master Secret n TLS
OBS: 1) PMS se calculeaz la fel ca n SSL 2) n ghilimele Master secret : irul se ia ntocmai
Generarea cheilor
Generarea cheilor n TLS
Alert Protocol
Schimbri n TLS: nu exist alerta NoCertificate. cteva alerte noi Tipuri de alerte:
Bibliografie