In che modo SSLv3 ha ottenuto AES?

5

IANA gestisce un registro delle suite di crittografia TLS ai TLS Parameters . TLS fornisce TLS_RSA_WITH_AES_128_CBC_SHA , il suo valore è {0x00, 0x2f} e è disponibile in TLS 1.0 e versioni successive. Le suite di crittografia AES sono state aggiunte a TLS con RFC 3268, AES Ciphersuites per TLS nel 2002.

Tuttavia, le suite di crittografia AES non sono state aggiunte a SSLv3 perché SSLv3 non è sotto il controllo di IETF. Da RFC 5746, Sezione 4.5 :

While SSLv3 is not a protocol under IETF change control (see [SSLv3]), it was the original basis for TLS and most TLS implementations also support SSLv3.

OpenSSL fornisce TLS_RSA_WITH_AES_128_CBC_SHA tramite cipher AES128-SHA (vedi i documenti di OpenSSL su ciphers(1) ) . AES128-SHA funziona con SSLv3 tramite s_client , e una traccia rapida di Wireshark mostra la suite di cifratura {0x00, 0x2f} utilizzata.

$ openssl s_client -ssl3 -connect google.com:443 -cipher "AES128-SHA"
CONNECTED(00000003)
...
---
Certificate chain
 0 s:/C=US/ST=California/L=Mountain View/O=Google Inc/CN=*.google.com
   i:/C=US/O=Google Inc/CN=Google Internet Authority G2
 1 s:/C=US/O=Google Inc/CN=Google Internet Authority G2
   i:/C=US/O=GeoTrust Inc./CN=GeoTrust Global CA
 2 s:/C=US/O=GeoTrust Inc./CN=GeoTrust Global CA
   i:/C=US/O=Equifax/OU=Equifax Secure Certificate Authority
...
SSL-Session:
    Protocol  : SSLv3
    Cipher    : AES128-SHA
...

Non riesco a trovare un riferimento in cui le suite di crittografia AES siano valide in SSLv3. Ho controllato il progetto Protocollo SSL Versione 3.0 del 1996, RFC 6101, Protocollo SSL (Secure Sockets Layer) versione 3.0 del 2011 e RFC 3268, AES Ciphersuites per TLS del 2002. Ho anche cercato IETF Tools per AES e SSL.

Dove sono coperte le suite di crittografia AES per il protocollo SSLv3?

    
posta jww 20.06.2014 - 20:38
fonte

1 risposta

9

SSL 3.0 è non uno standard. Realisticamente, è "ciò che Netscape stava facendo in quel momento". Quando il protocollo è diventato uno standard, è diventato RFC 2246 , alias "TLS 1.0".

Il documento originale che gli autori TLS usavano come fonte era in seguito (molto più tardi) inserito nel formato RFC e divenne RFC 6101 , che ha la categoria "Storico". Le RFC storiche sono piuttosto basse sulla scala standard; sono anche sotto la RFC "Informativo". Prima della pubblicazione di quella RFC, le persone intente a scrivere una libreria SSL implementavano inizialmente TLS 1.0 come da RFC, poi guadavano il codice sorgente di OpenSSL e facevano test di interoperabilità con le implementazioni esistenti per offrire anche SSLv3.

Poiché SSLv3 è uno standard de facto ma non de jure , non troverai una RFC che specifichi il modo standard di fare AES con SSL 3.0; per definizione, non può essere un tale standard. Nella migliore delle ipotesi, si può immaginare un RFC "storico" che documenterebbe la pratica comune, ovvero l'uso diretto di RFC 3268 . SSL 3.0 è molto simile a TLS 1.0, quindi il backport delle suite di crittografia AES da TLS 1.0 a SSL 3.0 non è ambiguo; come qualcuno che lo ha già fatto (più volte!), posso confermare che ottenere il supporto AES "giusto" in SSL 3.0 non è difficile (dove "giusto" significa: "funziona con client e server SSL esistenti").

    
risposta data 20.06.2014 - 20:57
fonte

Leggi altre domande sui tag