X25519(k, u) 只在 u 坐标上运行常量时间的 Montgomery 阶梯。私钥是 32 个随机字节,由该函数做钳位处理(清除最低三位和第 255 位,并将第 254 位置 1);公钥为 X25519(k, 9)(RFC 7748 §5)。由于曲线及其扭曲曲线都是安全的,任何 32 字节的字符串都可以直接用作对端密钥,无需验证点;但低阶输入会产生全零的共享密钥,协议应当检测并拒绝这种情况(RFC 7748 §6.1)。
标识符:TLS 支持的组 x25519(29,0x001D);SSH 中为 curve25519-sha256(RFC 8731);OID 1.3.101.110(RFC 8410);JOSE 中为 ECDH-ES,配合 OKP 密钥和值为 X25519 的 crv(RFC 8037);HPKE 中为 DHKEM(X25519, HKDF-SHA256),KEM ID 为 0x0020(RFC 9180)。在 Apple M4 Max 的单个核心上,OpenSSL 3.6.5 每秒约可完成 52,000 次 X25519 运算。
X25519 是密钥协商,而不是签名:负责签名的是 Ed25519。两者使用同一条曲线,密钥可以在两种形式之间转换,但不建议把同一个密钥同时用于这两种用途。Shor 算法能攻破 X25519,因此 TLS 现在在混合组 X25519MLKEM768(0x11EC,RFC 10024)中把它与 ML-KEM-768 配对使用,OpenSSH 则默认使用 mlkem768x25519-sha256。