Knowledge Base
Diffie-Hellman Parameter
A+

2048-bit Finite Field Diffie-Hellman group (RFC 7919)

Summary

Name:
2048-bit Finite Field Diffie-Hellman group (RFC 7919)
Key size:
2048 bits
Publishers:

Check your host!

Type a URL to analyze a service

Get a prompt and clear overview of your security configuration. Right now!

Security

A+
Key Size
Name

2048

Security

The Diffie-Hellman ephemeral public key parameter[409][410][411] with prime size greater than 2048[422] is considered secure, not weakened against logjam attack[7][8][9][10].

Recommendations

Use a well-known Diffie-Hellman ephemeral public key parameter[426][427][428], or generate a custom Diffie-Hellman ephemeral public key parameter[409][410][411] with a size greater or equal than 2048 bits but less or equal than 4096 bits. In the case of custom parameters, validate that the prime is a safe prime[176] to avoid a small subgroup confinement attack[72][73].

A+
Prime
Name

Safe Prime

Security

Diffie-Hellman ephemeral public key parameter[409][410][411] contains a safe prime[176], so the connection is certainly not vulnerable to a small subgroup confinement attack[72][73].

A
Post-Quantum
Name

False

Security

The Diffie-Hellman[99][100][101][102][103] key exchange provides no protection against a cryptanalytic attack by a quantum computer, and no classical Diffie-Hellman does — just as no classical elliptic curve does — because a quantum computer breaks the hardness assumption they rely on. Only a hybrid key exchange (a classical algorithm combined with a post-quantum cryptography[158][159] one) or a pure post-quantum algorithm is quantum-safe.

Recommendations

Enable a hybrid key exchange or a pure post-quantum algorithm on your server, and prefer it where the configuration allows, so the connection stays secure against a future quantum computer.

Parameter Numbers

Prime (p)
0xffffffffffffffffadf85458a2bb4a9aafdc5620273d3cf1d8b9c583ce2d3695a9e13641146433fbcc939dce249b3ef97d2fe363630c75d8f681b202aec4617ad3df1ed5d5fd65612433f51f5f066ed0856365553ded1af3b557135e7f57c935984f0c70e0e68b77e2a689daf3efe8721df158a136ade73530acca4f483a797abc0ab182b324fb61d108a94bb2c8e3fbb96adab760d7f4681d4f42a3de394df4ae56ede76372bb190b07a7c8ee0a6d709e02fce1cdf7e2ecc03404cd28342f619172fe9ce98583ff8e4f1232eef28183c3fe3b1b4c6fad733bb5fcbc2ec22005c58ef1837d1683b2c6f34a26c1b2effa886b423861285c97ffffffffffffffff
Copy to clipboard
Generator (g)
0x2
Copy to clipboard

Representations

PEM

Default private value length
-----BEGIN DH PARAMETERS-----
MIIBCAKCAQEA//////////+t+FRYortKmq/cViAnPTzx2LnFg84tNpWp4TZBFGQz
+8yTnc4kmz75fS/jY2MMddj2gbICrsRhetPfHtXV/WVhJDP1H18GbtCFY2VVPe0a
87VXE15/V8k1mE8McODmi3fipona8+/och3xWKE2rec1MKzKT0g6eXq8CrGCsyT7
YdEIqUuyyOP7uWrat2DX9GgdT0Kj3jlN9K5W7edjcrsZCwenyO4KbXCeAvzhzffi
7MA0BM0oNC9hkXL+nOmFg/+OTxIy7vKBg8P+OxtMb61zO7X8vC7CIAXFjvGDfRaD
ssbzSibBsu/6iGtCOGEoXJf//////////wIBAg==
-----END DH PARAMETERS-----
Download dhparam.pem
Copy to clipboard
Small private value length
-----BEGIN DH PARAMETERS-----
MIIBDAKCAQEA//////////+t+FRYortKmq/cViAnPTzx2LnFg84tNpWp4TZBFGQz
+8yTnc4kmz75fS/jY2MMddj2gbICrsRhetPfHtXV/WVhJDP1H18GbtCFY2VVPe0a
87VXE15/V8k1mE8McODmi3fipona8+/och3xWKE2rec1MKzKT0g6eXq8CrGCsyT7
YdEIqUuyyOP7uWrat2DX9GgdT0Kj3jlN9K5W7edjcrsZCwenyO4KbXCeAvzhzffi
7MA0BM0oNC9hkXL+nOmFg/+OTxIy7vKBg8P+OxtMb61zO7X8vC7CIAXFjvGDfRaD
ssbzSibBsu/6iGtCOGEoXJf//////////wIBAgICAOE=
-----END DH PARAMETERS-----
Download dhparam-small.pem
Copy to clipboard

PARI/GP

powermod(x, k, m) = lift(Mod(x, m) ^ k);

g = 0x2;
p = 2^2048 - 2^1984 + (floor(2^1918 * exp(1)) + 560316) * 2^64 - 1;
s = 256;

a = 2 ^ (s - 1) + random(2 ^ (s - 1));
A = powermod(g, a, p);

b = 2 ^ (s - 1) + random(2 ^ (s - 1));
B = powermod(g, b, p);

S = powermod(B, a, p);
Copy to clipboard

LaTeX

$\begin{eqnarray}
p \equiv 2^{2048} - 2^{1984} + (\lfloor 2^{1918} * e \rfloor + 560316) * 2^{64} - 1 \\
g \equiv 0x2 \\
\\
a \in \mathbb{Z}_q \\
b \in \mathbb{Z}_q \\
\\
A \equiv g^a \pmod{p} \\
B \equiv g^b \pmod{p} \\
\\
S \equiv {(g^{a})}^{b}={(g^{b})}^{a}=g^{ab} \pmod{p}
\end{eqnarray}$
Copy to clipboard