El código para las curvas arbitrarias está en la biblioteca; consulte el código fuente , archivo crypto/ec/ec_lcl.h
, en particular la función ec_GFp_simple_group_set_curve()
. El código OpenSSL incluye una función especializada para algunas curvas específicas (en particular curvas NIST), pero también tiene funciones para el caso general.
El código
para codificar y descodificar parámetros de curvas arbitrarias en ASN.1 (por ejemplo, para usar con una clave pública en un certificado X.509) también parece estar presente (en crypto/ec/ec_asn1.c
). Sin embargo, dudo que este código se use mucho, ya que la mayoría del resto del mundo admite solo unas pocas curvas específicas; por lo tanto, incluso si el código está allí, probablemente no se probó a fondo.