Scegliere suite di crittografia per HTTPS

7

Sto cercando di individuare l'approccio migliore per scegliere quali suite di crittografia fornire e quali potrebbero essere i problemi.

È a mia conoscenza che durante l'handshake SSL, il cliente sceglierà (normalmente) gli algoritmi più sicuri supportati da entrambe le estremità. Ma quali sono le implicazioni nel rendere disponibili algoritmi a bassa potenza? La negoziazione sicuramente non può essere crittografata, quindi un MITM potrebbe forzare una connessione alla suite di crittografia più debole?

    
posta symcbean 11.09.2012 - 15:11
fonte

2 risposte

11

Il client suggerisce ma il server sceglie . Il client invia una lista delle suite di crittografia supportate (ed è disposta ad utilizzare). Questo elenco dovrebbe essere ordinato di preferenza. Il server risponde scegliendo una suite di crittografia in questo elenco. I server ben educati cercano di seguire le preferenze dei clienti, ma questo non è veramente obbligatorio. In definitiva, il server sceglie.

Alla fine della stretta di mano, vengono inviati% messaggi diFinished, che sono crittografati e MACed con i segreti negoziati. I contenuti di questi messaggi sono valori hash calcolati sui messaggi handshake completi, incluso l'elenco di suite di crittografia supportate dal client. Ciò significa che un MitM non può alterare quell'elenco senza essere catturato a un certo punto.

(Tuttavia, questo non è del tutto vero in presenza di TLS FalseStart : il client potrebbe essere convinto di inviare la sua richiesta con la suite di crittografia più debole supportata, ma la vera debolezza qui sarebbe che il client è quindi disposto a supportare una suite di crittografia debole, non che un attacker di MitM abbia un certo livello di controllo nella scelta della suite di crittografia Anche con FalseStart, l'alterazione esterna da parte dell'utente malintenzionato verrà rilevata dal server e la richiesta non verrà rispettata, per non parlare della risposta.)

(SSLv2 non includeva l'elenco delle suite di cifratura nei suoi messaggi finiti ed è stato molto pubblicizzato come uno dei "grandi difetti" di SSLv2.)

    
risposta data 11.09.2012 - 15:56
fonte
0

Se si è interessati all'utilizzo delle risorse e non si dispone della CPU abilitata per AES-NI insieme al software supportato, utilizzare RC4. Google utilizza RC4 per la maggior parte se non tutti i servizi. Se disponi del supporto AES-NI lungo tutta la catena hardware e software, utilizza AES-256.

    
risposta data 11.09.2012 - 18:32
fonte

Leggi altre domande sui tag