73dc70620a
Resolves: #1187895
64 lines
2.3 KiB
Diff
64 lines
2.3 KiB
Diff
Change the DH key length from 512 to 1024 bits to meet minimum requirements
|
|
of FIPS 140-2. (In principle we could use the larger size only when FIPS
|
|
mode is on, but it doesn't seem worth the trouble.)
|
|
|
|
The new parameter value was generated using "openssl dhparam -C 1024".
|
|
|
|
|
|
diff -up mariadb-10.0.16/vio/viosslfactories.c.orig mariadb-10.0.16/vio/viosslfactories.c
|
|
--- mariadb-10.0.16/vio/viosslfactories.c.orig 2015-01-25 16:21:38.000000000 +0100
|
|
+++ mariadb-10.0.16/vio/viosslfactories.c 2015-02-03 10:48:26.012560285 +0100
|
|
@@ -20,27 +20,32 @@
|
|
static my_bool ssl_algorithms_added = FALSE;
|
|
static my_bool ssl_error_strings_loaded= FALSE;
|
|
|
|
-static unsigned char dh512_p[]=
|
|
+static unsigned char dh1024_p[]=
|
|
{
|
|
- 0xDA,0x58,0x3C,0x16,0xD9,0x85,0x22,0x89,0xD0,0xE4,0xAF,0x75,
|
|
- 0x6F,0x4C,0xCA,0x92,0xDD,0x4B,0xE5,0x33,0xB8,0x04,0xFB,0x0F,
|
|
- 0xED,0x94,0xEF,0x9C,0x8A,0x44,0x03,0xED,0x57,0x46,0x50,0xD3,
|
|
- 0x69,0x99,0xDB,0x29,0xD7,0x76,0x27,0x6B,0xA2,0xD3,0xD4,0x12,
|
|
- 0xE2,0x18,0xF4,0xDD,0x1E,0x08,0x4C,0xF6,0xD8,0x00,0x3E,0x7C,
|
|
- 0x47,0x74,0xE8,0x33,
|
|
+ 0xBF,0x5C,0xFA,0xD1,0xDD,0xBB,0xB3,0x0A,0x58,0x29,0x05,0xF5,
|
|
+ 0x7D,0x64,0xB2,0xE1,0xCE,0xE8,0xE0,0xE1,0x7A,0xB6,0xBC,0x5B,
|
|
+ 0x21,0x56,0xDF,0x2C,0x82,0x60,0xDC,0x31,0xCA,0x1E,0x02,0xFE,
|
|
+ 0xC4,0xE7,0x24,0x63,0x31,0xE4,0x67,0x1C,0x0B,0xFF,0x86,0x12,
|
|
+ 0x0D,0x2E,0xE6,0x35,0x0A,0x07,0x4F,0xE7,0x3F,0xDE,0xFE,0xF0,
|
|
+ 0x13,0x1C,0xA2,0x2B,0xF4,0xEE,0x2C,0x90,0x10,0x57,0x6B,0x2B,
|
|
+ 0xB9,0x1E,0x1B,0x47,0xB0,0x25,0xBF,0x45,0x86,0xDA,0x87,0x35,
|
|
+ 0x2C,0xF5,0x6A,0x41,0xA2,0x57,0xD8,0x16,0x5E,0x82,0x91,0x99,
|
|
+ 0x33,0xA0,0x8B,0x9D,0x34,0xCE,0x03,0x01,0x80,0x32,0x07,0x3B,
|
|
+ 0xF2,0x93,0xFC,0x3A,0x25,0xEC,0xB3,0xED,0x5C,0x4E,0x57,0xF2,
|
|
+ 0x3C,0x2E,0x0D,0xB1,0x59,0xA2,0x08,0x93,
|
|
};
|
|
|
|
-static unsigned char dh512_g[]={
|
|
+static unsigned char dh1024_g[]={
|
|
0x02,
|
|
};
|
|
|
|
-static DH *get_dh512(void)
|
|
+static DH *get_dh1024(void)
|
|
{
|
|
DH *dh;
|
|
if ((dh=DH_new()))
|
|
{
|
|
- dh->p=BN_bin2bn(dh512_p,sizeof(dh512_p),NULL);
|
|
- dh->g=BN_bin2bn(dh512_g,sizeof(dh512_g),NULL);
|
|
+ dh->p=BN_bin2bn(dh1024_p,sizeof(dh1024_p),NULL);
|
|
+ dh->g=BN_bin2bn(dh1024_g,sizeof(dh1024_g),NULL);
|
|
if (! dh->p || ! dh->g)
|
|
{
|
|
DH_free(dh);
|
|
@@ -257,7 +262,7 @@ new_VioSSLFd(const char *key_file, const
|
|
}
|
|
|
|
/* DH stuff */
|
|
- dh=get_dh512();
|
|
+ dh=get_dh1024();
|
|
SSL_CTX_set_tmp_dh(ssl_fd->ssl_context, dh);
|
|
DH_free(dh);
|
|
|