Dimensione mod OpenSSL DH

1

Se OpenSSL è configurato per utilizzare un DH per lo scambio di chiavi, ad es. TLS_DHE_RSA_WITH_AES_128_CBC_SHA, dove prende la dimensione per modp (o anche modp stesso) da?

Quello che segue è uno screenshot di wireshark. Il server ha selezionato TLS_DHE_RSA_WITH_AES_128_CBC_SHA dalle proposte del cliente e invia i suoi parametri DH.

Qualche idea, perché OpenSSL decide di usare il (troppo piccolo) gruppo 96 * 8 = 768 bit?

    
posta fr00tyl00p 11.09.2013 - 16:07
fonte

1 risposta

3

In SSL / TLS , il gruppo (modulo e generatore) utilizzato per le suite di crittografia DHE è interamente valido per il server . OpenSSL (la libreria) può essere configurato per utilizzare un gruppo specifico; con lo strumento da riga di comando ( openssl s_server ), si tratta di utilizzare l'opzione -dhparam ; in caso contrario, i parametri DH possono essere inclusi nel file contenente il certificato stesso.

Questa pagina contiene alcune informazioni, tra cui questa:

To use perfect forward secrecy cipher suites, you must set up Diffie-Hellman parameters (on the server side), or the PFS cipher suites will be silently ignored.

Quindi la libreria non usa "parametri DH predefiniti"; dipende dal software che usa la libreria. Nel caso dello strumento da riga di comando, sembra utilizzare un modulo a 512 bit, che è, a dir poco, un po 'corto ... ma OK per il test. Nel tuo caso, si deve presumere che qualunque sia l'applicazione server che utilizza OpenSSL, ha configurato la libreria con un modulo a 768 bit. È possibile (ma dipende da tale applicazione) che riempire i parametri DH espliciti nello stesso file di quello contenente il certificato del server sia sufficiente per forzare OpenSSL a utilizzare questi parametri.

Note:

  • Se OpenSSL, come server, seleziona una suite di crittografia "export", allora imporrà l'uso di un modulo a 512 bit per DH, ma questo è un caso limite.
  • Non sei completamente libero di utilizzare qualsiasi dimensione desideri a causa di problemi di interoperabilità. Sembra che alcuni client SSL là fuori non gradiranno un modulo DH più lungo di 1024 bit. Suppongo anche che una dimensione del modulo DH che non sia un multiplo di 32 o 64 possa causare ulteriori problemi.
  • Con la curva ellittica DH (la recente suite di crittografia ECDHE ) il problema è diverso, poiché la maggior parte delle implementazioni supporta solo una manciata di curve specifiche, non "una curva di una determinata dimensione". Esiste un'estensione che consente al cliente di indicare quali curve supporta; altrimenti, il server sceglierà in base alla sua configurazione (in ogni caso, nient'altro che P-256 implicherà problemi di interoperabilità).
risposta data 11.09.2013 - 17:25
fonte

Leggi altre domande sui tag