[EC] DHE_RSA significa che il segreto condiviso tra client e server è calcolato tramite Diffie-Hellman. Nel caso di DHE ogni sessione ha i propri parametri DH (DHE = curva ellittica Diffie-Hellman effimero ) che viene eseguita per fornire inoltra la segretezza . Va qualcosa di simile (oltre semplificato):
- Il server genera alcuni parametri DH.
- Server firma i parametri DH con la sua chiave a lungo termine (ad esempio la tua chiave RSA 2048) e invia i parametri e la firma al client.
- Il client verifica la firma per i parametri con la chiave pubblica RSA 2048 contenuta nel certificato dei server.
- Se la firma è buona, client e server usano DH con questi parametri per stabilire un segreto condiviso da cui derivano le chiavi per la sessione.
Quindi se il tuo server genera parametri DH troppo piccoli (ad esempio 512 bit) o supporta DHE_EXPORT (o qualsiasi altra cosa menzionata nel documento di logjam), allora sei ancora vulnerabile all'attacco. Puoi fare riferimento a questa risposta per una buona discussione sulla sicurezza dei parametri DH. L'intuizione chiave è che la chiave RSA a lungo termine viene utilizzata per garantire che i parametri inviati al client non siano stati manomessi e generati dal server. La generazione / generazione della chiave effettiva avviene tramite DH.
(Va notato che EC DHE non ha questa trappola, quindi qualsiasi suite di crittografia con ECDHE_RSA dovrebbe andare bene).