In cryptography, Curve448 or Curve448-Goldilocks is an elliptic curve potentially offering 224 bits of security and designed for use with the elliptic-curve Diffie–Hellman (ECDH) key agreement scheme.
Developed by Mike Hamburg of Rambus Cryptography Research, Curve448 allows fast performance compared with other proposed curves with comparable security.[1] The reference implementation is available under an MIT license.[2] The curve was favored by the Internet Research Task Force Crypto Forum Research Group (IRTF CFRG) for inclusion in Transport Layer Security (TLS) standards along with Curve25519.
In 2017, NIST announced that Curve25519 and Curve448 would be added to "Special Publication 800-186", which specifies approved elliptic curves for use by the US Federal Government,[3] and in 2023 it was approved for use in FIPS 186-5.[4] Both are described in . The name X448 is used for the DH function. X448 support was added to OpenSSL in version 1.1.1 (released on 11 September 2018).[5]
Hamburg chose the Solinas trinomial prime base p = 2448 − 2224 − 1, calling it a "Goldilocks" prime "because its form defines the golden ratio φ ≡ 2224". The main advantage of a golden-ratio prime is fast Karatsuba multiplication.[6]
The curve Hamburg used is an untwisted Edwards curveEd: . The constant d = −39081 was chosen as the smallest absolute value that had the required mathematical properties, thus a nothing-up-my-sleeve number.
Curve448 is constructed such that it avoids many potential implementation pitfalls.[7]