1
0
mirror of https://github.com/Mbed-TLS/mbedtls.git synced 2025-07-28 00:21:48 +03:00

Stick to the use of constant-macros

This commit returns to using constant macros instead of global variables for the DHM group constants. Further, macros
providing the binary encoding of the primes from RFC 3526 and RFC 7919 are added. The hex-string macros are deprecated.
This commit is contained in:
Hanno Becker
2017-10-04 13:12:15 +01:00
parent f9734b35b5
commit e2fcfa84ea
2 changed files with 717 additions and 338 deletions

View File

@ -57,249 +57,6 @@
#define mbedtls_free free
#endif
/*
* Diffie-Hellman groups from RFC 5114
*
* \warning The origin of the primes in RFC 5114 is not documented and
* their use therefore constitutes a security risk!
*
* \deprecated The primes from RFC 5114 are superseded by the primes
* from RFC 3526 and RFC 7919 and should no longer be used.
* They will be removed in the next major version.
*/
const char * const mbedtls_dhm_rfc5114_modp_2048_p =
"AD107E1E9123A9D0D660FAA79559C51FA20D64E5683B9FD1"
"B54B1597B61D0A75E6FA141DF95A56DBAF9A3C407BA1DF15"
"EB3D688A309C180E1DE6B85A1274A0A66D3F8152AD6AC212"
"9037C9EDEFDA4DF8D91E8FEF55B7394B7AD5B7D0B6C12207"
"C9F98D11ED34DBF6C6BA0B2C8BBC27BE6A00E0A0B9C49708"
"B3BF8A317091883681286130BC8985DB1602E714415D9330"
"278273C7DE31EFDC7310F7121FD5A07415987D9ADC0A486D"
"CDF93ACC44328387315D75E198C641A480CD86A1B9E587E8"
"BE60E69CC928B2B9C52172E413042E9B23F10B0E16E79763"
"C9B53DCF4BA80A29E3FB73C16B8E75B97EF363E2FFA31F71"
"CF9DE5384E71B81C0AC4DFFE0C10E64F";
const char * const mbedtls_dhm_rfc5114_modp_2048_g =
"AC4032EF4F2D9AE39DF30B5C8FFDAC506CDEBE7B89998CAF"
"74866A08CFE4FFE3A6824A4E10B9A6F0DD921F01A70C4AFA"
"AB739D7700C29F52C57DB17C620A8652BE5E9001A8D66AD7"
"C17669101999024AF4D027275AC1348BB8A762D0521BC98A"
"E247150422EA1ED409939D54DA7460CDB5F6C6B250717CBE"
"F180EB34118E98D119529A45D6F834566E3025E316A330EF"
"BB77A86F0C1AB15B051AE3D428C8F8ACB70A8137150B8EEB"
"10E183EDD19963DDD9E263E4770589EF6AA21E7F5F2FF381"
"B539CCE3409D13CD566AFBB48D6C019181E1BCFE94B30269"
"EDFE72FE9B6AA4BD7B5A0F1C71CFFF4C19C418E1F6EC0179"
"81BC087F2A7065B384B890D3191F2BFA";
/*
* Diffie-Hellman groups from RFC 3526
*/
const char * const mbedtls_dhm_rfc3526_modp_2048_p =
"FFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD1"
"29024E088A67CC74020BBEA63B139B22514A08798E3404DD"
"EF9519B3CD3A431B302B0A6DF25F14374FE1356D6D51C245"
"E485B576625E7EC6F44C42E9A637ED6B0BFF5CB6F406B7ED"
"EE386BFB5A899FA5AE9F24117C4B1FE649286651ECE45B3D"
"C2007CB8A163BF0598DA48361C55D39A69163FA8FD24CF5F"
"83655D23DCA3AD961C62F356208552BB9ED529077096966D"
"670C354E4ABC9804F1746C08CA18217C32905E462E36CE3B"
"E39E772C180E86039B2783A2EC07A28FB5C55DF06F4C52C9"
"DE2BCBF6955817183995497CEA956AE515D2261898FA0510"
"15728E5A8AACAA68FFFFFFFFFFFFFFFF";
const char * const mbedtls_dhm_rfc3526_modp_2048_g = "02";
const char * const mbedtls_dhm_rfc3526_modp_3072_p =
"FFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD1"
"29024E088A67CC74020BBEA63B139B22514A08798E3404DD"
"EF9519B3CD3A431B302B0A6DF25F14374FE1356D6D51C245"
"E485B576625E7EC6F44C42E9A637ED6B0BFF5CB6F406B7ED"
"EE386BFB5A899FA5AE9F24117C4B1FE649286651ECE45B3D"
"C2007CB8A163BF0598DA48361C55D39A69163FA8FD24CF5F"
"83655D23DCA3AD961C62F356208552BB9ED529077096966D"
"670C354E4ABC9804F1746C08CA18217C32905E462E36CE3B"
"E39E772C180E86039B2783A2EC07A28FB5C55DF06F4C52C9"
"DE2BCBF6955817183995497CEA956AE515D2261898FA0510"
"15728E5A8AAAC42DAD33170D04507A33A85521ABDF1CBA64"
"ECFB850458DBEF0A8AEA71575D060C7DB3970F85A6E1E4C7"
"ABF5AE8CDB0933D71E8C94E04A25619DCEE3D2261AD2EE6B"
"F12FFA06D98A0864D87602733EC86A64521F2B18177B200C"
"BBE117577A615D6C770988C0BAD946E208E24FA074E5AB31"
"43DB5BFCE0FD108E4B82D120A93AD2CAFFFFFFFFFFFFFFFF";
const char * const mbedtls_dhm_rfc3526_modp_3072_g = "02";
const char * const mbedtls_dhm_rfc3526_modp_4096_p =
"FFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD1"
"29024E088A67CC74020BBEA63B139B22514A08798E3404DD"
"EF9519B3CD3A431B302B0A6DF25F14374FE1356D6D51C245"
"E485B576625E7EC6F44C42E9A637ED6B0BFF5CB6F406B7ED"
"EE386BFB5A899FA5AE9F24117C4B1FE649286651ECE45B3D"
"C2007CB8A163BF0598DA48361C55D39A69163FA8FD24CF5F"
"83655D23DCA3AD961C62F356208552BB9ED529077096966D"
"670C354E4ABC9804F1746C08CA18217C32905E462E36CE3B"
"E39E772C180E86039B2783A2EC07A28FB5C55DF06F4C52C9"
"DE2BCBF6955817183995497CEA956AE515D2261898FA0510"
"15728E5A8AAAC42DAD33170D04507A33A85521ABDF1CBA64"
"ECFB850458DBEF0A8AEA71575D060C7DB3970F85A6E1E4C7"
"ABF5AE8CDB0933D71E8C94E04A25619DCEE3D2261AD2EE6B"
"F12FFA06D98A0864D87602733EC86A64521F2B18177B200C"
"BBE117577A615D6C770988C0BAD946E208E24FA074E5AB31"
"43DB5BFCE0FD108E4B82D120A92108011A723C12A787E6D7"
"88719A10BDBA5B2699C327186AF4E23C1A946834B6150BDA"
"2583E9CA2AD44CE8DBBBC2DB04DE8EF92E8EFC141FBECAA6"
"287C59474E6BC05D99B2964FA090C3A2233BA186515BE7ED"
"1F612970CEE2D7AFB81BDD762170481CD0069127D5B05AA9"
"93B4EA988D8FDDC186FFB7DC90A6C08F4DF435C934063199"
"FFFFFFFFFFFFFFFF";
const char * const mbedtls_dhm_rfc3526_modp_4096_g = "02";
/*
* Diffie-Hellman groups from RFC 7919
*/
const char * const mbedtls_dhm_rfc7919_ffdhe2048_p =
"FFFFFFFFFFFFFFFFADF85458A2BB4A9AAFDC5620273D3CF1"
"D8B9C583CE2D3695A9E13641146433FBCC939DCE249B3EF9"
"7D2FE363630C75D8F681B202AEC4617AD3DF1ED5D5FD6561"
"2433F51F5F066ED0856365553DED1AF3B557135E7F57C935"
"984F0C70E0E68B77E2A689DAF3EFE8721DF158A136ADE735"
"30ACCA4F483A797ABC0AB182B324FB61D108A94BB2C8E3FB"
"B96ADAB760D7F4681D4F42A3DE394DF4AE56EDE76372BB19"
"0B07A7C8EE0A6D709E02FCE1CDF7E2ECC03404CD28342F61"
"9172FE9CE98583FF8E4F1232EEF28183C3FE3B1B4C6FAD73"
"3BB5FCBC2EC22005C58EF1837D1683B2C6F34A26C1B2EFFA"
"886B423861285C97FFFFFFFFFFFFFFFF";
const char * const mbedtls_dhm_rfc7919_ffdhe2048_g = "02";
const char * const mbedtls_dhm_rfc7919_ffdhe3072_p =
"FFFFFFFFFFFFFFFFADF85458A2BB4A9AAFDC5620273D3CF1"
"D8B9C583CE2D3695A9E13641146433FBCC939DCE249B3EF9"
"7D2FE363630C75D8F681B202AEC4617AD3DF1ED5D5FD6561"
"2433F51F5F066ED0856365553DED1AF3B557135E7F57C935"
"984F0C70E0E68B77E2A689DAF3EFE8721DF158A136ADE735"
"30ACCA4F483A797ABC0AB182B324FB61D108A94BB2C8E3FB"
"B96ADAB760D7F4681D4F42A3DE394DF4AE56EDE76372BB19"
"0B07A7C8EE0A6D709E02FCE1CDF7E2ECC03404CD28342F61"
"9172FE9CE98583FF8E4F1232EEF28183C3FE3B1B4C6FAD73"
"3BB5FCBC2EC22005C58EF1837D1683B2C6F34A26C1B2EFFA"
"886B4238611FCFDCDE355B3B6519035BBC34F4DEF99C0238"
"61B46FC9D6E6C9077AD91D2691F7F7EE598CB0FAC186D91C"
"AEFE130985139270B4130C93BC437944F4FD4452E2D74DD3"
"64F2E21E71F54BFF5CAE82AB9C9DF69EE86D2BC522363A0D"
"ABC521979B0DEADA1DBF9A42D5C4484E0ABCD06BFA53DDEF"
"3C1B20EE3FD59D7C25E41D2B66C62E37FFFFFFFFFFFFFFFF";
const char * const mbedtls_dhm_rfc7919_ffdhe3072_g = "02";
const char * const mbedtls_dhm_rfc7919_ffdhe4096_p =
"FFFFFFFFFFFFFFFFADF85458A2BB4A9AAFDC5620273D3CF1"
"D8B9C583CE2D3695A9E13641146433FBCC939DCE249B3EF9"
"7D2FE363630C75D8F681B202AEC4617AD3DF1ED5D5FD6561"
"2433F51F5F066ED0856365553DED1AF3B557135E7F57C935"
"984F0C70E0E68B77E2A689DAF3EFE8721DF158A136ADE735"
"30ACCA4F483A797ABC0AB182B324FB61D108A94BB2C8E3FB"
"B96ADAB760D7F4681D4F42A3DE394DF4AE56EDE76372BB19"
"0B07A7C8EE0A6D709E02FCE1CDF7E2ECC03404CD28342F61"
"9172FE9CE98583FF8E4F1232EEF28183C3FE3B1B4C6FAD73"
"3BB5FCBC2EC22005C58EF1837D1683B2C6F34A26C1B2EFFA"
"886B4238611FCFDCDE355B3B6519035BBC34F4DEF99C0238"
"61B46FC9D6E6C9077AD91D2691F7F7EE598CB0FAC186D91C"
"AEFE130985139270B4130C93BC437944F4FD4452E2D74DD3"
"64F2E21E71F54BFF5CAE82AB9C9DF69EE86D2BC522363A0D"
"ABC521979B0DEADA1DBF9A42D5C4484E0ABCD06BFA53DDEF"
"3C1B20EE3FD59D7C25E41D2B669E1EF16E6F52C3164DF4FB"
"7930E9E4E58857B6AC7D5F42D69F6D187763CF1D55034004"
"87F55BA57E31CC7A7135C886EFB4318AED6A1E012D9E6832"
"A907600A918130C46DC778F971AD0038092999A333CB8B7A"
"1A1DB93D7140003C2A4ECEA9F98D0ACC0A8291CDCEC97DCF"
"8EC9B55A7F88A46B4DB5A851F44182E1C68A007E5E655F6A"
"FFFFFFFFFFFFFFFF";
const char * const mbedtls_dhm_rfc7919_ffdhe4096_g = "02";
const char * const mbedtls_dhm_rfc7919_ffdhe6144_p =
"FFFFFFFFFFFFFFFFADF85458A2BB4A9AAFDC5620273D3CF1"
"D8B9C583CE2D3695A9E13641146433FBCC939DCE249B3EF9"
"7D2FE363630C75D8F681B202AEC4617AD3DF1ED5D5FD6561"
"2433F51F5F066ED0856365553DED1AF3B557135E7F57C935"
"984F0C70E0E68B77E2A689DAF3EFE8721DF158A136ADE735"
"30ACCA4F483A797ABC0AB182B324FB61D108A94BB2C8E3FB"
"B96ADAB760D7F4681D4F42A3DE394DF4AE56EDE76372BB19"
"0B07A7C8EE0A6D709E02FCE1CDF7E2ECC03404CD28342F61"
"9172FE9CE98583FF8E4F1232EEF28183C3FE3B1B4C6FAD73"
"3BB5FCBC2EC22005C58EF1837D1683B2C6F34A26C1B2EFFA"
"886B4238611FCFDCDE355B3B6519035BBC34F4DEF99C0238"
"61B46FC9D6E6C9077AD91D2691F7F7EE598CB0FAC186D91C"
"AEFE130985139270B4130C93BC437944F4FD4452E2D74DD3"
"64F2E21E71F54BFF5CAE82AB9C9DF69EE86D2BC522363A0D"
"ABC521979B0DEADA1DBF9A42D5C4484E0ABCD06BFA53DDEF"
"3C1B20EE3FD59D7C25E41D2B669E1EF16E6F52C3164DF4FB"
"7930E9E4E58857B6AC7D5F42D69F6D187763CF1D55034004"
"87F55BA57E31CC7A7135C886EFB4318AED6A1E012D9E6832"
"A907600A918130C46DC778F971AD0038092999A333CB8B7A"
"1A1DB93D7140003C2A4ECEA9F98D0ACC0A8291CDCEC97DCF"
"8EC9B55A7F88A46B4DB5A851F44182E1C68A007E5E0DD902"
"0BFD64B645036C7A4E677D2C38532A3A23BA4442CAF53EA6"
"3BB454329B7624C8917BDD64B1C0FD4CB38E8C334C701C3A"
"CDAD0657FCCFEC719B1F5C3E4E46041F388147FB4CFDB477"
"A52471F7A9A96910B855322EDB6340D8A00EF092350511E3"
"0ABEC1FFF9E3A26E7FB29F8C183023C3587E38DA0077D9B4"
"763E4E4B94B2BBC194C6651E77CAF992EEAAC0232A281BF6"
"B3A739C1226116820AE8DB5847A67CBEF9C9091B462D538C"
"D72B03746AE77F5E62292C311562A846505DC82DB854338A"
"E49F5235C95B91178CCF2DD5CACEF403EC9D1810C6272B04"
"5B3B71F9DC6B80D63FDD4A8E9ADB1E6962A69526D43161C1"
"A41D570D7938DAD4A40E329CD0E40E65FFFFFFFFFFFFFFFF";
const char * const mbedtls_dhm_rfc7919_ffdhe6144_g = "02";
const char * const mbedtls_dhm_rfc7919_ffdhe8192_p =
"FFFFFFFFFFFFFFFFADF85458A2BB4A9AAFDC5620273D3CF1"
"D8B9C583CE2D3695A9E13641146433FBCC939DCE249B3EF9"
"7D2FE363630C75D8F681B202AEC4617AD3DF1ED5D5FD6561"
"2433F51F5F066ED0856365553DED1AF3B557135E7F57C935"
"984F0C70E0E68B77E2A689DAF3EFE8721DF158A136ADE735"
"30ACCA4F483A797ABC0AB182B324FB61D108A94BB2C8E3FB"
"B96ADAB760D7F4681D4F42A3DE394DF4AE56EDE76372BB19"
"0B07A7C8EE0A6D709E02FCE1CDF7E2ECC03404CD28342F61"
"9172FE9CE98583FF8E4F1232EEF28183C3FE3B1B4C6FAD73"
"3BB5FCBC2EC22005C58EF1837D1683B2C6F34A26C1B2EFFA"
"886B4238611FCFDCDE355B3B6519035BBC34F4DEF99C0238"
"61B46FC9D6E6C9077AD91D2691F7F7EE598CB0FAC186D91C"
"AEFE130985139270B4130C93BC437944F4FD4452E2D74DD3"
"64F2E21E71F54BFF5CAE82AB9C9DF69EE86D2BC522363A0D"
"ABC521979B0DEADA1DBF9A42D5C4484E0ABCD06BFA53DDEF"
"3C1B20EE3FD59D7C25E41D2B669E1EF16E6F52C3164DF4FB"
"7930E9E4E58857B6AC7D5F42D69F6D187763CF1D55034004"
"87F55BA57E31CC7A7135C886EFB4318AED6A1E012D9E6832"
"A907600A918130C46DC778F971AD0038092999A333CB8B7A"
"1A1DB93D7140003C2A4ECEA9F98D0ACC0A8291CDCEC97DCF"
"8EC9B55A7F88A46B4DB5A851F44182E1C68A007E5E0DD902"
"0BFD64B645036C7A4E677D2C38532A3A23BA4442CAF53EA6"
"3BB454329B7624C8917BDD64B1C0FD4CB38E8C334C701C3A"
"CDAD0657FCCFEC719B1F5C3E4E46041F388147FB4CFDB477"
"A52471F7A9A96910B855322EDB6340D8A00EF092350511E3"
"0ABEC1FFF9E3A26E7FB29F8C183023C3587E38DA0077D9B4"
"763E4E4B94B2BBC194C6651E77CAF992EEAAC0232A281BF6"
"B3A739C1226116820AE8DB5847A67CBEF9C9091B462D538C"
"D72B03746AE77F5E62292C311562A846505DC82DB854338A"
"E49F5235C95B91178CCF2DD5CACEF403EC9D1810C6272B04"
"5B3B71F9DC6B80D63FDD4A8E9ADB1E6962A69526D43161C1"
"A41D570D7938DAD4A40E329CCFF46AAA36AD004CF600C838"
"1E425A31D951AE64FDB23FCEC9509D43687FEB69EDD1CC5E"
"0B8CC3BDF64B10EF86B63142A3AB8829555B2F747C932665"
"CB2C0F1CC01BD70229388839D2AF05E454504AC78B758282"
"2846C0BA35C35F5C59160CC046FD8251541FC68C9C86B022"
"BB7099876A460E7451A8A93109703FEE1C217E6C3826E52C"
"51AA691E0E423CFC99E9E31650C1217B624816CDAD9A95F9"
"D5B8019488D9C0A0A1FE3075A577E23183F81D4A3F2FA457"
"1EFC8CE0BA8A4FE8B6855DFE72B0A66EDED2FBABFBE58A30"
"FAFABE1C5D71A87E2F741EF8C1FE86FEA6BBFDE530677F0D"
"97D11D49F7A8443D0822E506A9F4614E011E2A94838FF88C"
"D68C8BB7C5C6424CFFFFFFFF"
"FFFFFFFF";
const char * const mbedtls_dhm_rfc7919_ffdhe8192_g = "02";
/* Implementation that should never be optimized out by the compiler */
static void mbedtls_zeroize( void *v, size_t n ) {
volatile unsigned char *p = v; while( n-- ) *p++ = 0;