Má smysl si generovat Diffie-Hellman, nebo použít už vygenerovaný?

Pro OpenVPN, nginx a dalsi aplikace pouzivam Diffie-Hellman, ktery si generuju. Pro kazdou app jiny. Kdyz mam na serveru 10x bezici OpenVPN, kazda ma svuj vlastni vygenerovany DH.
Na virtualech to trva more casu (obzvlaste pro 4096b). Pri pouziti haveged mam zase obavy o bezpecnost.

Co jsem vsak koukal na ukazkove configy od Mozilly na ssl-config.mozilla.org, tak oni DH negeneruji, ale stahuji:
Citace
# curl https://ssl-config.mozilla.org/ffdhe2048.txt > /path/to/dhparam
ssl_dhparam /path/to/dhparam;
https://ssl-config.mozilla.org/#server=nginx&version=1.17.7&config=intermediate&openssl=1.1.1d&guideline=5.6

Jak to tedy je? Ma smysl ho generovat? Nebo si mam stahnout vyse uvedeny soubor od Mozilly a pouzivat ho uplne ve vsech aplikacich?

Nebo je dobry kompromis si DH generovat sam, ale pouzivat haveged?

Nejsem expert na sifrovani. Vim, na co DH slouzi, ale uz nevim jak s generovaim. Proto bych uvital radu.
"Kdo v zájmu bezpečí obětuje část své svobody, v konečném důsledku přijde o svobodu i svou bezpečnost."


_Jenda

  • *****
  • 1 550
    • Zobrazit profil
    • https://jenda.hrach.eu/
    • E-mail
Motivace ke generování je ta, že útočník si může něco předpočítat a pak jednotlivé relace se stejnými DH parametry už crackovat snadněji. Ale u délky 2048b a víc to není problém, tohle se řešilo, když se běžně používalo 1024.

Pokud používáš cizí DH parametry, tak si dej pozor, aby to opravdu bylo „safe prime“ (jak se to v praxi ověří nevím), viz tohle úžasné oznámení.

Osobně bych si předgeneroval několik DH parametrů a pak je klidně sdílel v rámci několika procesů/serverů.

jouda2

Pokud používáš cizí DH parametry, tak si dej pozor, aby to opravdu bylo „safe prime“ (jak se to v praxi ověří nevím), viz tohle úžasné oznámení.
Z definice, safe prime p je když q: p = 2q+1 je taky prvočíslo, takže standardní testy na prvočísla.

Ale taky bych se přimlouval k generování vlastních parametrů, alespoň pokud se toho moc nezměnilo od Snowdenovy éry, tak tehdy platilo že předpočítat DHGroup2 (normovaná 1024bit grupa) mohlo NSA trvat cca rok, ale následně lousknout konkrétní DH výměnu byla otázka sekund až minut (a na DH2 jelo 70% internetu jestli si dobře pamatuju). Proč to teda útočníkovi zjednodušovat.

Jinak entropie pri generování parametrů až tolik problém není (ostatně jsou veřejné a je to jen na kterém konkrétním fieldu se dál počítá).
« Poslední změna: 18. 08. 2020, 20:52:04 od J ouda »

ECDH nelze použít ?