X25519(k, u) executa uma escada de Montgomery em tempo constante apenas sobre coordenadas u. Uma chave privada é formada por 32 bytes aleatórios que a função ajusta (clamping: zera os três bits menos significativos e o bit 255 e define o bit 254 como 1); a chave pública é X25519(k, 9) (RFC 7748 §5). Como a curva e o seu twist são ambos seguros, qualquer sequência de 32 bytes pode ser usada como chave do outro participante sem validação de pontos, mas entradas de ordem baixa produzem um segredo compartilhado todo em zeros, e convém que os protocolos detectem e rejeitem esse caso (RFC 7748 §6.1).
Identificadores: grupo suportado do TLS x25519 (29, 0x001D); SSH curve25519-sha256 (RFC 8731); OID 1.3.101.110 (RFC 8410); JOSE ECDH-ES com uma chave OKP e crv X25519 (RFC 8037); HPKE DHKEM(X25519, HKDF-SHA256), ID de KEM 0x0020 (RFC 9180). O OpenSSL 3.6.5 calcula cerca de 52.000 operações X25519 por segundo em um núcleo de um Apple M4 Max.
O X25519 é um acordo de chaves, não uma assinatura: quem assina é o Ed25519. Os dois compartilham a curva, e as chaves podem ser convertidas de uma forma para a outra, mas usar a mesma chave para os dois fins é desaconselhado. O algoritmo de Shor quebra o X25519, por isso o TLS agora o combina com o ML-KEM-768 no grupo híbrido X25519MLKEM768 (0x11EC, RFC 10024), e o OpenSSH usa mlkem768x25519-sha256 por padrão.