Il file dei parametri DH deve essere univoco per chiave privata?

12

Ci sono scarse informazioni disponibili online sui parametri DH usati nei cifrari DHE (e il tipo che è disponibile è rivolto ai crittografi, non agli amministratori di sistema). Fondamentalmente, come amministratore di sistema, vorrei sapere se il file dhparam.pem deve essere univoco per ogni chiave privata, o può essere condiviso tra vari siti TLS ospitati sullo stesso server.

    
posta mricon 16.10.2014 - 06:08
fonte

1 risposta

11

I parametri TL-DR yes (non i tasti) possono essere condivisi.

Per prima cosa, non dire "chiavi dei parametri". I parametri e le chiavi sono correlati ma diversi. Il punto intero dei parametri è che essi definiscono un gruppo matematico all'interno del quale i tasti vengono scelti e utilizzati. Generare parametri è costoso (moderatamente così per DH e DSA, molto più per ECC); generare una chiave per i parametri dati è molto più economico. Inoltre, un punto principale delle cipheruites DHE è che l'implementazione SSL genera una nuova chiave effimera per ogni connessione. Se si esegue un solo server con un set fisso di parametri DH e tale server gestisce più di una connessione da un client utilizzando DHE, si utilizzano già più chiavi con gli stessi parametri. E allo stesso modo per ECDHE, ma di più su quello di seguito.

Non c'è nulla di male nell'usare gli stessi parametri per più server, purché i parametri non siano scelti o influenzati da un utente malintenzionato o comunque gravemente errati - nel qual caso non dovrebbero essere utilizzati nemmeno per un server. L'unico caso che vedo per più parametri è se possiedi alcuni server (possibilmente virtuali) che devono supportare client (in genere più vecchi) che possono gestire solo DH 1024-bit, che ora ha un margine di sicurezza abbastanza piccolo, mentre altri server vogliono il maggiore margine - e / o conformità con standard come il NIST 800-57, se del caso - di 2048 bit o più.

Per ECDHE (e ECDHA e ECDH e ECDSA, anche se quelli non erano la tua domanda) ci sono set di parametri standard - comunemente chiamati curve nominali - che sono molto più facili da usare e anche più ampiamente / affidabili interoperabili, quindi tu non dovrei nemmeno provare a generare il tuo. A partire da ora sembra preferibile usare sempre il P-256 o forse il P-384, le due curve standard (fuori dozzine) "benedette" dalla NSA nel suo profilo Suite B.

Vedi pretty-much-duplicates

Meta: probabilmente questa domanda si adatta meglio alla sicurezza (con questi tre) rispetto alla crittografia, anche se personalmente lo definirei ragionevole per entrambi, e suppongo che possa essere il motivo per cui il downvote.

    
risposta data 16.10.2014 - 13:36
fonte

Leggi altre domande sui tag