Content-type: text/html
Un nouveau moduli peut être généré à l'aide de ssh-keygen1 lors d'un procédure en deux étapes. Une passe candidate generation , avec ssh-keygen -G calcule les nombres qui seront utiles. Une seconde passe primality testing , avec ssh-keygen -T donne une bonne assurance que les nombres sont premiers et sont utilisables sans risque dans les opérations Diffie Hellman de sshd(8). Ce est utilisé en sortie de chaque passe.
Le fichier est composé d'enregistrements séparés par des sauts de ligne, un par modulus, et contenant sept champs séparés par un espace. Ces champs sont les suivants :
Les candidats pour les moduli produits au départ par ssh-keygen1 sont des nombres premiers Sophie Germain (type 4). Les vérifications approfondies de primalité avec ssh-keygen1 produisent des moduli premiers sûrs (type 2) utilisables dans sshd(8). Les autres types ne sont pas utilisés par OpenSSH.
La génération du moduli candidat par ssh-keygen1 utilise le crible d'Ératosthène (flag 0x02). Les tests suivants de primalité de ssh-keygen1 sont des tests Miller-Rabin (flag 0x04).
Lors de l'échange Diffie Hellman Group Exchange, sshd(8) estime d'abord la taille du modulus nécessaire pour produire assez de sortie de Diffie Hellman chiffrer la clef symmétrique sélectionnée. sshd(8) choisit ensuite aléatoirement un modulus du fichier Fa /etc/moduli qui correspond le mieux à l'exigence de taille.