Le suite di crittografia "export" di RSA possono funzionare un po 'come Diffie-Hellman effimero: se la chiave "permanente" del server è più lunga di 512 bit, il server dovrebbe generare una nuova (in modo dinamico) di lunghezza 512 bit e inviarlo via cavo come messaggio ServerKeyExchange
, firmato con la sua chiave privata permanente. Vedi sezione 7.4.3 di RFC 2246 . La chiave privata che vedi (la tua chiave a 2048 bit), quella che è archiviata in un file o una sorta di archivio di certificati sul server, viene quindi utilizzata solo per le firme; lo scambio di chiavi effettivo (crittografia del segreto pre-master casuale con una chiave pubblica RSA) avviene con la chiave RSA temporanea generata dal server.
Si noti che mentre il server può generare una nuova coppia di chiavi RSA a 512 bit per ogni client di connessione, di solito non lo fa a causa del costo della CPU (è possibile generare RSA- 512 coppie di chiavi sono abbastanza veloci sull'hardware moderno, ma il codice di supporto per le suite di crittografia di esportazione ha più di 15 anni ed è improbabile che sia stato ottimizzato nel corso degli anni). Pertanto, molti server che supportano ancora le suite di cifratura di esportazione RSA genereranno una nuova coppia di chiavi RSA-512 all'avvio e quindi la useranno per tutti i client in entrata che desiderano utilizzare tale suite di crittografia di esportazione. Il cosiddetto attacco FREAK è reso in qualche modo pratico a causa di quel riutilizzo: consente all'aggressore di trascorrere lo sforzo di rottura di 8 ore prima di impegnarsi in un vero Man-in-the-Middle (perché la vittima è improbabile che un utente Web casuale attenda per 8 ore che il suo handshake SSL sia completato).