{NID_secp112r1,&_EC_SECG_PRIME_112R1.h,"SECG/WTLS curve over a 112 bit prime field"},
{NID_secp112r2,&_EC_SECG_PRIME_112R2.h,"SECG curve over a 112 bit prime field"},
{NID_secp128r1,&_EC_SECG_PRIME_128R1.h,"SECG curve over a 128 bit prime field"},
{NID_secp128r2,&_EC_SECG_PRIME_128R2.h,"SECG curve over a 128 bit prime field"},
{NID_secp160k1,&_EC_SECG_PRIME_160K1.h,"SECG curve over a 160 bit prime field"},
{NID_secp160r1,&_EC_SECG_PRIME_160R1.h,"SECG curve over a 160 bit prime field"},
{NID_secp160r2,&_EC_SECG_PRIME_160R2.h,"SECG/WTLS curve over a 160 bit prime field"},
{NID_secp112r1,&_EC_SECG_PRIME_112R1.h,0,"SECG/WTLS curve over a 112 bit prime field"},
{NID_secp112r2,&_EC_SECG_PRIME_112R2.h,0,"SECG curve over a 112 bit prime field"},
{NID_secp128r1,&_EC_SECG_PRIME_128R1.h,0,"SECG curve over a 128 bit prime field"},
{NID_secp128r2,&_EC_SECG_PRIME_128R2.h,0,"SECG curve over a 128 bit prime field"},
{NID_secp160k1,&_EC_SECG_PRIME_160K1.h,0,"SECG curve over a 160 bit prime field"},
{NID_secp160r1,&_EC_SECG_PRIME_160R1.h,0,"SECG curve over a 160 bit prime field"},
{NID_secp160r2,&_EC_SECG_PRIME_160R2.h,0,"SECG/WTLS curve over a 160 bit prime field"},
/* SECG secp192r1 is the same as X9.62 prime192v1 and hence omitted */
{NID_secp192k1,&_EC_SECG_PRIME_192K1.h,"SECG curve over a 192 bit prime field"},
{NID_secp224k1,&_EC_SECG_PRIME_224K1.h,"SECG curve over a 224 bit prime field"},
{NID_secp224r1,&_EC_NIST_PRIME_224.h,"NIST/SECG curve over a 224 bit prime field"},
{NID_secp256k1,&_EC_SECG_PRIME_256K1.h,"SECG curve over a 256 bit prime field"},
{NID_secp192k1,&_EC_SECG_PRIME_192K1.h,0,"SECG curve over a 192 bit prime field"},
{NID_secp224k1,&_EC_SECG_PRIME_224K1.h,0,"SECG curve over a 224 bit prime field"},
#ifdef EC_NISTP224_64_GCC_128
{NID_secp224r1,&_EC_NIST_PRIME_224.h,EC_GFp_nistp224_method,"NIST/SECG curve over a 224 bit prime field,\n"
"\t\t64-bit optimized implementation."},
#else
{NID_secp224r1,&_EC_NIST_PRIME_224.h,0,"NIST/SECG curve over a 224 bit prime field"},
#endif
{NID_secp256k1,&_EC_SECG_PRIME_256K1.h,0,"SECG curve over a 256 bit prime field"},
/* SECG secp256r1 is the same as X9.62 prime256v1 and hence omitted */
{NID_secp384r1,&_EC_NIST_PRIME_384.h,"NIST/SECG curve over a 384 bit prime field"},
{NID_secp521r1,&_EC_NIST_PRIME_521.h,"NIST/SECG curve over a 521 bit prime field"},
{NID_secp384r1,&_EC_NIST_PRIME_384.h,0,"NIST/SECG curve over a 384 bit prime field"},
{NID_secp521r1,&_EC_NIST_PRIME_521.h,0,"NIST/SECG curve over a 521 bit prime field"},
/* X9.62 curves */
{NID_X9_62_prime192v1,&_EC_NIST_PRIME_192.h,"NIST/X9.62/SECG curve over a 192 bit prime field"},
{NID_X9_62_prime192v2,&_EC_X9_62_PRIME_192V2.h,"X9.62 curve over a 192 bit prime field"},
{NID_X9_62_prime192v3,&_EC_X9_62_PRIME_192V3.h,"X9.62 curve over a 192 bit prime field"},
{NID_X9_62_prime239v1,&_EC_X9_62_PRIME_239V1.h,"X9.62 curve over a 239 bit prime field"},
{NID_X9_62_prime239v2,&_EC_X9_62_PRIME_239V2.h,"X9.62 curve over a 239 bit prime field"},
{NID_X9_62_prime239v3,&_EC_X9_62_PRIME_239V3.h,"X9.62 curve over a 239 bit prime field"},
{NID_X9_62_prime256v1,&_EC_X9_62_PRIME_256V1.h,"X9.62/SECG curve over a 256 bit prime field"},
{NID_X9_62_prime192v1,&_EC_NIST_PRIME_192.h,0,"NIST/X9.62/SECG curve over a 192 bit prime field"},
{NID_X9_62_prime192v2,&_EC_X9_62_PRIME_192V2.h,0,"X9.62 curve over a 192 bit prime field"},
{NID_X9_62_prime192v3,&_EC_X9_62_PRIME_192V3.h,0,"X9.62 curve over a 192 bit prime field"},
{NID_X9_62_prime239v1,&_EC_X9_62_PRIME_239V1.h,0,"X9.62 curve over a 239 bit prime field"},
{NID_X9_62_prime239v2,&_EC_X9_62_PRIME_239V2.h,0,"X9.62 curve over a 239 bit prime field"},
{NID_X9_62_prime239v3,&_EC_X9_62_PRIME_239V3.h,0,"X9.62 curve over a 239 bit prime field"},
{NID_X9_62_prime256v1,&_EC_X9_62_PRIME_256V1.h,0,"X9.62/SECG curve over a 256 bit prime field"},
/* characteristic two field curves */
/* NIST/SECG curves */
{NID_sect113r1,&_EC_SECG_CHAR2_113R1.h,"SECG curve over a 113 bit binary field"},
{NID_sect113r2,&_EC_SECG_CHAR2_113R2.h,"SECG curve over a 113 bit binary field"},
{NID_sect131r1,&_EC_SECG_CHAR2_131R1.h,"SECG/WTLS curve over a 131 bit binary field"},
{NID_sect131r2,&_EC_SECG_CHAR2_131R2.h,"SECG curve over a 131 bit binary field"},
{NID_sect163k1,&_EC_NIST_CHAR2_163K.h,"NIST/SECG/WTLS curve over a 163 bit binary field"},
{NID_sect163r1,&_EC_SECG_CHAR2_163R1.h,"SECG curve over a 163 bit binary field"},
{NID_sect163r2,&_EC_NIST_CHAR2_163B.h,"NIST/SECG curve over a 163 bit binary field"},
{NID_sect193r1,&_EC_SECG_CHAR2_193R1.h,"SECG curve over a 193 bit binary field"},
{NID_sect193r2,&_EC_SECG_CHAR2_193R2.h,"SECG curve over a 193 bit binary field"},
{NID_sect233k1,&_EC_NIST_CHAR2_233K.h,"NIST/SECG/WTLS curve over a 233 bit binary field"},
{NID_sect233r1,&_EC_NIST_CHAR2_233B.h,"NIST/SECG/WTLS curve over a 233 bit binary field"},
{NID_sect239k1,&_EC_SECG_CHAR2_239K1.h,"SECG curve over a 239 bit binary field"},
{NID_sect283k1,&_EC_NIST_CHAR2_283K.h,"NIST/SECG curve over a 283 bit binary field"},
{NID_sect283r1,&_EC_NIST_CHAR2_283B.h,"NIST/SECG curve over a 283 bit binary field"},
{NID_sect409k1,&_EC_NIST_CHAR2_409K.h,"NIST/SECG curve over a 409 bit binary field"},
{NID_sect409r1,&_EC_NIST_CHAR2_409B.h,"NIST/SECG curve over a 409 bit binary field"},
{NID_sect571k1,&_EC_NIST_CHAR2_571K.h,"NIST/SECG curve over a 571 bit binary field"},
{NID_sect571r1,&_EC_NIST_CHAR2_571B.h,"NIST/SECG curve over a 571 bit binary field"},
{NID_sect113r1,&_EC_SECG_CHAR2_113R1.h,0,"SECG curve over a 113 bit binary field"},
{NID_sect113r2,&_EC_SECG_CHAR2_113R2.h,0,"SECG curve over a 113 bit binary field"},
{NID_sect131r1,&_EC_SECG_CHAR2_131R1.h,0,"SECG/WTLS curve over a 131 bit binary field"},
{NID_sect131r2,&_EC_SECG_CHAR2_131R2.h,0,"SECG curve over a 131 bit binary field"},
{NID_sect163k1,&_EC_NIST_CHAR2_163K.h,0,"NIST/SECG/WTLS curve over a 163 bit binary field"},
{NID_sect163r1,&_EC_SECG_CHAR2_163R1.h,0,"SECG curve over a 163 bit binary field"},
{NID_sect163r2,&_EC_NIST_CHAR2_163B.h,0,"NIST/SECG curve over a 163 bit binary field"},
{NID_sect193r1,&_EC_SECG_CHAR2_193R1.h,0,"SECG curve over a 193 bit binary field"},
{NID_sect193r2,&_EC_SECG_CHAR2_193R2.h,0,"SECG curve over a 193 bit binary field"},
{NID_sect233k1,&_EC_NIST_CHAR2_233K.h,0,"NIST/SECG/WTLS curve over a 233 bit binary field"},
{NID_sect233r1,&_EC_NIST_CHAR2_233B.h,0,"NIST/SECG/WTLS curve over a 233 bit binary field"},
{NID_sect239k1,&_EC_SECG_CHAR2_239K1.h,0,"SECG curve over a 239 bit binary field"},
{NID_sect283k1,&_EC_NIST_CHAR2_283K.h,0,"NIST/SECG curve over a 283 bit binary field"},
{NID_sect283r1,&_EC_NIST_CHAR2_283B.h,0,"NIST/SECG curve over a 283 bit binary field"},
{NID_sect409k1,&_EC_NIST_CHAR2_409K.h,0,"NIST/SECG curve over a 409 bit binary field"},
{NID_sect409r1,&_EC_NIST_CHAR2_409B.h,0,"NIST/SECG curve over a 409 bit binary field"},
{NID_sect571k1,&_EC_NIST_CHAR2_571K.h,0,"NIST/SECG curve over a 571 bit binary field"},
{NID_sect571r1,&_EC_NIST_CHAR2_571B.h,0,"NIST/SECG curve over a 571 bit binary field"},
/* X9.62 curves */
{NID_X9_62_c2pnb163v1,&_EC_X9_62_CHAR2_163V1.h,"X9.62 curve over a 163 bit binary field"},
{NID_X9_62_c2pnb163v2,&_EC_X9_62_CHAR2_163V2.h,"X9.62 curve over a 163 bit binary field"},
{NID_X9_62_c2pnb163v3,&_EC_X9_62_CHAR2_163V3.h,"X9.62 curve over a 163 bit binary field"},
{NID_X9_62_c2pnb176v1,&_EC_X9_62_CHAR2_176V1.h,"X9.62 curve over a 176 bit binary field"},
{NID_X9_62_c2tnb191v1,&_EC_X9_62_CHAR2_191V1.h,"X9.62 curve over a 191 bit binary field"},
{NID_X9_62_c2tnb191v2,&_EC_X9_62_CHAR2_191V2.h,"X9.62 curve over a 191 bit binary field"},
{NID_X9_62_c2tnb191v3,&_EC_X9_62_CHAR2_191V3.h,"X9.62 curve over a 191 bit binary field"},
{NID_X9_62_c2pnb208w1,&_EC_X9_62_CHAR2_208W1.h,"X9.62 curve over a 208 bit binary field"},
{NID_X9_62_c2tnb239v1,&_EC_X9_62_CHAR2_239V1.h,"X9.62 curve over a 239 bit binary field"},
{NID_X9_62_c2tnb239v2,&_EC_X9_62_CHAR2_239V2.h,"X9.62 curve over a 239 bit binary field"},
{NID_X9_62_c2tnb239v3,&_EC_X9_62_CHAR2_239V3.h,"X9.62 curve over a 239 bit binary field"},
{NID_X9_62_c2pnb272w1,&_EC_X9_62_CHAR2_272W1.h,"X9.62 curve over a 272 bit binary field"},
{NID_X9_62_c2pnb304w1,&_EC_X9_62_CHAR2_304W1.h,"X9.62 curve over a 304 bit binary field"},
{NID_X9_62_c2tnb359v1,&_EC_X9_62_CHAR2_359V1.h,"X9.62 curve over a 359 bit binary field"},
{NID_X9_62_c2pnb368w1,&_EC_X9_62_CHAR2_368W1.h,"X9.62 curve over a 368 bit binary field"},
{NID_X9_62_c2tnb431r1,&_EC_X9_62_CHAR2_431R1.h,"X9.62 curve over a 431 bit binary field"},
{NID_X9_62_c2pnb163v1,&_EC_X9_62_CHAR2_163V1.h,0,"X9.62 curve over a 163 bit binary field"},
{NID_X9_62_c2pnb163v2,&_EC_X9_62_CHAR2_163V2.h,0,"X9.62 curve over a 163 bit binary field"},
{NID_X9_62_c2pnb163v3,&_EC_X9_62_CHAR2_163V3.h,0,"X9.62 curve over a 163 bit binary field"},
{NID_X9_62_c2pnb176v1,&_EC_X9_62_CHAR2_176V1.h,0,"X9.62 curve over a 176 bit binary field"},
{NID_X9_62_c2tnb191v1,&_EC_X9_62_CHAR2_191V1.h,0,"X9.62 curve over a 191 bit binary field"},
{NID_X9_62_c2tnb191v2,&_EC_X9_62_CHAR2_191V2.h,0,"X9.62 curve over a 191 bit binary field"},
{NID_X9_62_c2tnb191v3,&_EC_X9_62_CHAR2_191V3.h,0,"X9.62 curve over a 191 bit binary field"},
{NID_X9_62_c2pnb208w1,&_EC_X9_62_CHAR2_208W1.h,0,"X9.62 curve over a 208 bit binary field"},
{NID_X9_62_c2tnb239v1,&_EC_X9_62_CHAR2_239V1.h,0,"X9.62 curve over a 239 bit binary field"},
{NID_X9_62_c2tnb239v2,&_EC_X9_62_CHAR2_239V2.h,0,"X9.62 curve over a 239 bit binary field"},
{NID_X9_62_c2tnb239v3,&_EC_X9_62_CHAR2_239V3.h,0,"X9.62 curve over a 239 bit binary field"},
{NID_X9_62_c2pnb272w1,&_EC_X9_62_CHAR2_272W1.h,0,"X9.62 curve over a 272 bit binary field"},
{NID_X9_62_c2pnb304w1,&_EC_X9_62_CHAR2_304W1.h,0,"X9.62 curve over a 304 bit binary field"},
{NID_X9_62_c2tnb359v1,&_EC_X9_62_CHAR2_359V1.h,0,"X9.62 curve over a 359 bit binary field"},
{NID_X9_62_c2pnb368w1,&_EC_X9_62_CHAR2_368W1.h,0,"X9.62 curve over a 368 bit binary field"},
{NID_X9_62_c2tnb431r1,&_EC_X9_62_CHAR2_431R1.h,0,"X9.62 curve over a 431 bit binary field"},
/* the WAP/WTLS curves
* [unlike SECG, spec has its own OIDs for curves from X9.62] */
{NID_wap_wsg_idm_ecid_wtls1,&_EC_WTLS_1.h,"WTLS curve over a 113 bit binary field"},
{NID_wap_wsg_idm_ecid_wtls3,&_EC_NIST_CHAR2_163K.h,"NIST/SECG/WTLS curve over a 163 bit binary field"},
{NID_wap_wsg_idm_ecid_wtls4,&_EC_SECG_CHAR2_113R1.h,"SECG curve over a 113 bit binary field"},
{NID_wap_wsg_idm_ecid_wtls5,&_EC_X9_62_CHAR2_163V1.h,"X9.62 curve over a 163 bit binary field"},
{NID_wap_wsg_idm_ecid_wtls6,&_EC_SECG_PRIME_112R1.h,"SECG/WTLS curve over a 112 bit prime field"},
{NID_wap_wsg_idm_ecid_wtls7,&_EC_SECG_PRIME_160R2.h,"SECG/WTLS curve over a 160 bit prime field"},
{NID_wap_wsg_idm_ecid_wtls8,&_EC_WTLS_8.h,"WTLS curve over a 112 bit prime field"},
{NID_wap_wsg_idm_ecid_wtls9,&_EC_WTLS_9.h,"WTLS curve over a 160 bit prime field"},
{NID_wap_wsg_idm_ecid_wtls10,&_EC_NIST_CHAR2_233K.h,"NIST/SECG/WTLS curve over a 233 bit binary field"},
{NID_wap_wsg_idm_ecid_wtls11,&_EC_NIST_CHAR2_233B.h,"NIST/SECG/WTLS curve over a 233 bit binary field"},
{NID_wap_wsg_idm_ecid_wtls12,&_EC_WTLS_12.h,"WTLS curvs over a 224 bit prime field"},
{NID_wap_wsg_idm_ecid_wtls1,&_EC_WTLS_1.h,0,"WTLS curve over a 113 bit binary field"},
{NID_wap_wsg_idm_ecid_wtls3,&_EC_NIST_CHAR2_163K.h,0,"NIST/SECG/WTLS curve over a 163 bit binary field"},
{NID_wap_wsg_idm_ecid_wtls4,&_EC_SECG_CHAR2_113R1.h,0,"SECG curve over a 113 bit binary field"},
{NID_wap_wsg_idm_ecid_wtls5,&_EC_X9_62_CHAR2_163V1.h,0,"X9.62 curve over a 163 bit binary field"},
{NID_wap_wsg_idm_ecid_wtls6,&_EC_SECG_PRIME_112R1.h,0,"SECG/WTLS curve over a 112 bit prime field"},
{NID_wap_wsg_idm_ecid_wtls7,&_EC_SECG_PRIME_160R2.h,0,"SECG/WTLS curve over a 160 bit prime field"},
{NID_wap_wsg_idm_ecid_wtls8,&_EC_WTLS_8.h,0,"WTLS curve over a 112 bit prime field"},
{NID_wap_wsg_idm_ecid_wtls9,&_EC_WTLS_9.h,0,"WTLS curve over a 160 bit prime field"},
{NID_wap_wsg_idm_ecid_wtls10,&_EC_NIST_CHAR2_233K.h,0,"NIST/SECG/WTLS curve over a 233 bit binary field"},
{NID_wap_wsg_idm_ecid_wtls11,&_EC_NIST_CHAR2_233B.h,0,"NIST/SECG/WTLS curve over a 233 bit binary field"},
{NID_wap_wsg_idm_ecid_wtls12,&_EC_WTLS_12.h,0,"WTLS curvs over a 224 bit prime field"},
/* IPSec curves */
{NID_ipsec3,&_EC_IPSEC_155_ID3.h,"\n\tIPSec/IKE/Oakley curve #3 over a 155 bit binary field.\n""\tNot suitable for ECDSA.\n\tQuestionable extension field!"},
{NID_ipsec4,&_EC_IPSEC_185_ID4.h,"\n\tIPSec/IKE/Oakley curve #4 over a 185 bit binary field.\n""\tNot suitable for ECDSA.\n\tQuestionable extension field!"},
{NID_ipsec3,&_EC_IPSEC_155_ID3.h,0,"\n\tIPSec/IKE/Oakley curve #3 over a 155 bit binary field.\n"
"\tNot suitable for ECDSA.\n\tQuestionable extension field!"},
{NID_ipsec4,&_EC_IPSEC_185_ID4.h,0,"\n\tIPSec/IKE/Oakley curve #4 over a 185 bit binary field.\n"
"\tNot suitable for ECDSA.\n\tQuestionable extension field!"},