} EC_CURVE_DATA;
/* the nist prime curves */
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+24*6]; }
_EC_NIST_PRIME_192 = {
{ NID_X9_62_prime_field,20,24,1 },
0xB4,0xD2,0x28,0x31 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+28*6]; }
_EC_NIST_PRIME_224 = {
{ NID_X9_62_prime_field,20,28,1 },
0x13,0xDD,0x29,0x45,0x5C,0x5C,0x2A,0x3D }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+48*6]; }
_EC_NIST_PRIME_384 = {
{ NID_X9_62_prime_field,20,48,1 },
0xEC,0xEC,0x19,0x6A,0xCC,0xC5,0x29,0x73 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+66*6]; }
_EC_NIST_PRIME_521 = {
{ NID_X9_62_prime_field,20,66,1 },
};
/* the x9.62 prime curves (minus the nist prime curves) */
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+24*6]; }
_EC_X9_62_PRIME_192V2 = {
{ NID_X9_62_prime_field,20,24,1 },
0x48,0xD8,0xDD,0x31 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+24*6]; }
_EC_X9_62_PRIME_192V3 = {
{ NID_X9_62_prime_field,20,24,1 },
0xF6,0x40,0xEC,0x13 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+30*6]; }
_EC_X9_62_PRIME_239V1 = {
{ NID_X9_62_prime_field,20,30,1 },
0x90,0x71,0xFB,0xD1,0x52,0x26,0x88,0x90,0x9D,0x0B }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+30*6]; }
_EC_X9_62_PRIME_239V2 = {
{ NID_X9_62_prime_field,20,30,1 },
0x77,0xD4,0x14,0xC0,0x38,0x21,0xBC,0x58,0x20,0x63 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+30*6]; }
_EC_X9_62_PRIME_239V3 = {
{ NID_X9_62_prime_field,20,30,1 },
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+32*6]; }
_EC_X9_62_PRIME_256V1 = {
{ NID_X9_62_prime_field,20,32,1 },
};
/* the secg prime curves (minus the nist and x9.62 prime curves) */
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+14*6]; }
_EC_SECG_PRIME_112R1 = {
{ NID_X9_62_prime_field,20,14,1 },
0xAC,0x65,0x61,0xC5 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+14*6]; }
_EC_SECG_PRIME_112R2 = {
{ NID_X9_62_prime_field,20,14,4 },
0x05,0x20,0xD0,0x4B }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+16*6]; }
_EC_SECG_PRIME_128R1 = {
{ NID_X9_62_prime_field,20,16,1 },
0x0D,0x1B,0x90,0x38,0xA1,0x15 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+16*6]; }
_EC_SECG_PRIME_128R2 = {
{ NID_X9_62_prime_field,20,16,4 },
0x24,0x72,0x06,0x13,0xB5,0xA3 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[0+21*6]; }
_EC_SECG_PRIME_160K1 = {
{ NID_X9_62_prime_field,0,21,1 },
0xB3 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+21*6]; }
_EC_SECG_PRIME_160R1 = {
{ NID_X9_62_prime_field,20,21,1 },
0x57 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+21*6]; }
_EC_SECG_PRIME_160R2 = {
{ NID_X9_62_prime_field,20,21,1 },
0x6B }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[0+24*6]; }
_EC_SECG_PRIME_192K1 = {
{ NID_X9_62_prime_field,0,24,1 },
0x74,0xDE,0xFD,0x8D }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[0+29*6]; }
_EC_SECG_PRIME_224K1 = {
{ NID_X9_62_prime_field,0,29,1 },
0x84,0xCA,0xF0,0xA9,0x71,0x76,0x9F,0xB1,0xF7 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[0+32*6]; }
_EC_SECG_PRIME_256K1 = {
{ NID_X9_62_prime_field,0,32,1 },
};
/* some wap/wtls curves */
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[0+15*6]; }
_EC_WTLS_8 = {
{ NID_X9_62_prime_field,0,15,1 },
0x55,0x1A,0xD8,0x37,0xE9 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[0+21*6]; }
_EC_WTLS_9 = {
{ NID_X9_62_prime_field,0,21,1 },
0x33 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[0+28*6]; }
_EC_WTLS_12 = {
{ NID_X9_62_prime_field,0,28,1 },
#ifndef OPENSSL_NO_EC2M
/* characteristic two curves */
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+15*6]; }
_EC_SECG_CHAR2_113R1 = {
{ NID_X9_62_characteristic_two_field,20,15,2 },
0xEC,0x8A,0x39,0xE5,0x6F }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+15*6]; }
_EC_SECG_CHAR2_113R2 = {
{ NID_X9_62_characteristic_two_field,20,15,2 },
0x9B,0x24,0x96,0xAF,0x93 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+17*6]; }
_EC_SECG_CHAR2_131R1 = {
{ NID_X9_62_characteristic_two_field,20,17,2 },
0x23,0x95,0x3A,0x94,0x64,0xB5,0x4D }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+17*6]; }
_EC_SECG_CHAR2_131R2 = {
{ NID_X9_62_characteristic_two_field,20,17,2 },
0x54,0xA2,0x33,0x04,0x9B,0xA9,0x8F }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[0+21*6]; }
_EC_NIST_CHAR2_163K = {
{ NID_X9_62_characteristic_two_field,0,21,2 },
0xEF }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[0+21*6]; }
_EC_SECG_CHAR2_163R1 = {
{ NID_X9_62_characteristic_two_field,0,21,2 },
0x9B }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[0+21*6]; }
_EC_NIST_CHAR2_163B = {
{ NID_X9_62_characteristic_two_field,0,21,2 },
0x33 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+25*6]; }
_EC_SECG_CHAR2_193R1 = {
{ NID_X9_62_characteristic_two_field,20,25,2 },
0xCC,0x92,0x0E,0xBA,0x49 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+25*6]; }
_EC_SECG_CHAR2_193R2 = {
{ NID_X9_62_characteristic_two_field,20,25,2 },
0xCC,0xD4,0xEE,0x99,0xD5 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[0+30*6]; }
_EC_NIST_CHAR2_233K = {
{ NID_X9_62_characteristic_two_field,0,30,4 },
0xBC,0xD4,0x6E,0xFB,0x1A,0xD5,0xF1,0x73,0xAB,0xDF }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+30*6]; }
_EC_NIST_CHAR2_233B = {
{ NID_X9_62_characteristic_two_field,20,30,2 },
0x8A,0x69,0x22,0x03,0x1D,0x26,0x03,0xCF,0xE0,0xD7 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[0+30*6]; }
_EC_SECG_CHAR2_239K1 = {
{ NID_X9_62_characteristic_two_field,0,30,4 },
0xB6,0xE9,0x1F,0x1C,0x1D,0xA8,0x00,0xE4,0x78,0xA5 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[0+36*6]; }
_EC_NIST_CHAR2_283K = {
{ NID_X9_62_characteristic_two_field,0,36,4 },
0x1E,0x06,0x1E,0x16,0x3C,0x61 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+36*6]; }
_EC_NIST_CHAR2_283B = {
{ NID_X9_62_characteristic_two_field,20,36,2 },
0x2A,0x7C,0xEF,0xAD,0xB3,0x07 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[0+52*6]; }
_EC_NIST_CHAR2_409K = {
{ NID_X9_62_characteristic_two_field,0,52,4 },
0x5F,0xCF }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+52*6]; }
_EC_NIST_CHAR2_409B = {
{ NID_X9_62_characteristic_two_field,20,52,2 },
0x11,0x73 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[0+72*6]; }
_EC_NIST_CHAR2_571K = {
{ NID_X9_62_characteristic_two_field,0,72,4 },
0x10,0x01 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+72*6]; }
_EC_NIST_CHAR2_571B = {
{ NID_X9_62_characteristic_two_field,20,72,2 },
0x4E,0x47 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+21*6]; }
_EC_X9_62_CHAR2_163V1 = {
{ NID_X9_62_characteristic_two_field,20,21,2 },
0xC1 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+21*6]; }
_EC_X9_62_CHAR2_163V2 = {
{ NID_X9_62_characteristic_two_field,20,21,2 },
0xA7 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+21*6]; }
_EC_X9_62_CHAR2_163V3 = {
{ NID_X9_62_characteristic_two_field,20,21,2 },
0x09 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[0+23*6]; }
_EC_X9_62_CHAR2_176V1 = {
{ NID_X9_62_characteristic_two_field,0,23,0xFF6E },
0xFE,0x26,0xAD }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+24*6]; }
_EC_X9_62_CHAR2_191V1 = {
{ NID_X9_62_characteristic_two_field,20,24,2 },
0x93,0xBB,0xB9,0xA5 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+24*6]; }
_EC_X9_62_CHAR2_191V2 = {
{ NID_X9_62_characteristic_two_field,20,24,4 },
0xE0,0x6B,0x81,0x73 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+24*6]; }
_EC_X9_62_CHAR2_191V3 = {
{ NID_X9_62_characteristic_two_field,20,24,6 },
0x28,0x8A,0x3E,0xA3 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[0+27*6]; }
_EC_X9_62_CHAR2_208W1 = {
{ NID_X9_62_characteristic_two_field,0,27,0xFE48 },
0xBD,0xD5,0x71,0x7E,0x21,0x2F,0x9D }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+30*6]; }
_EC_X9_62_CHAR2_239V1 = {
{ NID_X9_62_characteristic_two_field,20,30,4 },
0x49,0x2A,0x49,0x93,0xF1,0xCA,0xD6,0x66,0xE4,0x47 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+30*6]; }
_EC_X9_62_CHAR2_239V2 = {
{ NID_X9_62_characteristic_two_field,20,30,6 },
0x9C,0x31,0xE3,0xFC,0xDF,0x15,0x46,0x24,0x52,0x2D }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+30*6]; }
_EC_X9_62_CHAR2_239V3 = {
{ NID_X9_62_characteristic_two_field,20,30,0xA },
0xDF,0x90,0x3E,0xF9,0x88,0x8B,0x8A,0x0E,0x4C,0xFF }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[0+35*6]; }
_EC_X9_62_CHAR2_272W1 = {
{ NID_X9_62_characteristic_two_field,0,35,0xFF06 },
0x8F,0x1E,0x62,0x95,0x21 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[0+39*6]; }
_EC_X9_62_CHAR2_304W1 = {
{ NID_X9_62_characteristic_two_field,0,39,0xFE2E },
0x61,0xDA,0x68,0x99,0x16,0x44,0x43,0x05,0x1D }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[20+45*6]; }
_EC_X9_62_CHAR2_359V1 = {
{ NID_X9_62_characteristic_two_field,20,45,0x4C },
0xF4,0x90,0x75,0x8D,0x3B }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[0+47*6]; }
_EC_X9_62_CHAR2_368W1 = {
{ NID_X9_62_characteristic_two_field,0,47,0xFF70 },
0x31,0xE9,0xCF,0xCE,0x5B,0xD9,0x67 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[0+54*6]; }
_EC_X9_62_CHAR2_431R1 = {
{ NID_X9_62_characteristic_two_field,0,54,0x2760 },
0xC1,0xAD,0x4A,0x91 }
};
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[0+15*6]; }
_EC_WTLS_1 = {
{ NID_X9_62_characteristic_two_field,0,15,2 },
* As the group order is not a prime this curve is not suitable
* for ECDSA.
*/
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[0+20*6]; }
_EC_IPSEC_155_ID3 = {
{ NID_X9_62_characteristic_two_field,0,20,3 },
* As the group order is not a prime this curve is not suitable
* for ECDSA.
*/
-__fips_constseg
static const struct { EC_CURVE_DATA h; unsigned char data[0+24*6]; }
_EC_IPSEC_185_ID4 = {
{ NID_X9_62_characteristic_two_field,0,24,2 },
{ 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" },
-#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128
- { NID_X9_62_prime256v1, &_EC_X9_62_PRIME_256V1.h, EC_GFp_nistp256_method, "X9.62/SECG curve over a 256 bit prime field" },
+ { NID_X9_62_prime256v1, &_EC_X9_62_PRIME_256V1.h,
+#if defined(ECP_NISTZ256_ASM)
+ EC_GFp_nistz256_method,
+#elif !defined(OPENSSL_NO_EC_NISTP_64_GCC_128)
+ EC_GFp_nistp256_method,
#else
- { NID_X9_62_prime256v1, &_EC_X9_62_PRIME_256V1.h, 0, "X9.62/SECG curve over a 256 bit prime field" },
+ 0,
#endif
+ "X9.62/SECG curve over a 256 bit prime field" },
#ifndef OPENSSL_NO_EC2M
/* characteristic two field curves */
/* NIST/SECG curves */