Coverage Report

Created: 2023-03-26 07:33

/src/gnutls/lib/dh-primes.c
Line
Count
Source (jump to first uncovered line)
1
/*
2
 * Copyright (C) 2016 Red Hat, Inc.
3
 *
4
 * Author: Nikos Mavrogiannopoulos
5
 *
6
 * This file is part of GnuTLS.
7
 *
8
 * The GnuTLS is free software; you can redistribute it and/or
9
 * modify it under the terms of the GNU Lesser General Public License
10
 * as published by the Free Software Foundation; either version 2.1 of
11
 * the License, or (at your option) any later version.
12
 *
13
 * This library is distributed in the hope that it will be useful, but
14
 * WITHOUT ANY WARRANTY; without even the implied warranty of
15
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16
 * Lesser General Public License for more details.
17
 *
18
 * You should have received a copy of the GNU Lesser General Public License
19
 * along with this program.  If not, see <https://www.gnu.org/licenses/>
20
 *
21
 */
22
23
#include "gnutls_int.h"
24
#include <gnutls/gnutls.h>
25
26
#include "dh.h"
27
28
static const unsigned char ffdhe_generator = 0x02;
29
30
static const unsigned char ffdhe_params_2048[] = {
31
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
32
  0xFF, 0xAD, 0xF8, 0x54, 0x58, 0xA2, 0xBB,
33
  0x4A, 0x9A, 0xAF, 0xDC, 0x56, 0x20, 0x27,
34
  0x3D, 0x3C, 0xF1, 0xD8, 0xB9, 0xC5, 0x83,
35
  0xCE, 0x2D, 0x36, 0x95, 0xA9, 0xE1, 0x36,
36
  0x41, 0x14, 0x64, 0x33, 0xFB, 0xCC, 0x93,
37
  0x9D, 0xCE, 0x24, 0x9B, 0x3E, 0xF9, 0x7D,
38
  0x2F, 0xE3, 0x63, 0x63, 0x0C, 0x75, 0xD8,
39
  0xF6, 0x81, 0xB2, 0x02, 0xAE, 0xC4, 0x61,
40
  0x7A, 0xD3, 0xDF, 0x1E, 0xD5, 0xD5, 0xFD,
41
  0x65, 0x61, 0x24, 0x33, 0xF5, 0x1F, 0x5F,
42
  0x06, 0x6E, 0xD0, 0x85, 0x63, 0x65, 0x55,
43
  0x3D, 0xED, 0x1A, 0xF3, 0xB5, 0x57, 0x13,
44
  0x5E, 0x7F, 0x57, 0xC9, 0x35, 0x98, 0x4F,
45
  0x0C, 0x70, 0xE0, 0xE6, 0x8B, 0x77, 0xE2,
46
  0xA6, 0x89, 0xDA, 0xF3, 0xEF, 0xE8, 0x72,
47
  0x1D, 0xF1, 0x58, 0xA1, 0x36, 0xAD, 0xE7,
48
  0x35, 0x30, 0xAC, 0xCA, 0x4F, 0x48, 0x3A,
49
  0x79, 0x7A, 0xBC, 0x0A, 0xB1, 0x82, 0xB3,
50
  0x24, 0xFB, 0x61, 0xD1, 0x08, 0xA9, 0x4B,
51
  0xB2, 0xC8, 0xE3, 0xFB, 0xB9, 0x6A, 0xDA,
52
  0xB7, 0x60, 0xD7, 0xF4, 0x68, 0x1D, 0x4F,
53
  0x42, 0xA3, 0xDE, 0x39, 0x4D, 0xF4, 0xAE,
54
  0x56, 0xED, 0xE7, 0x63, 0x72, 0xBB, 0x19,
55
  0x0B, 0x07, 0xA7, 0xC8, 0xEE, 0x0A, 0x6D,
56
  0x70, 0x9E, 0x02, 0xFC, 0xE1, 0xCD, 0xF7,
57
  0xE2, 0xEC, 0xC0, 0x34, 0x04, 0xCD, 0x28,
58
  0x34, 0x2F, 0x61, 0x91, 0x72, 0xFE, 0x9C,
59
  0xE9, 0x85, 0x83, 0xFF, 0x8E, 0x4F, 0x12,
60
  0x32, 0xEE, 0xF2, 0x81, 0x83, 0xC3, 0xFE,
61
  0x3B, 0x1B, 0x4C, 0x6F, 0xAD, 0x73, 0x3B,
62
  0xB5, 0xFC, 0xBC, 0x2E, 0xC2, 0x20, 0x05,
63
  0xC5, 0x8E, 0xF1, 0x83, 0x7D, 0x16, 0x83,
64
  0xB2, 0xC6, 0xF3, 0x4A, 0x26, 0xC1, 0xB2,
65
  0xEF, 0xFA, 0x88, 0x6B, 0x42, 0x38, 0x61,
66
  0x28, 0x5C, 0x97, 0xFF, 0xFF, 0xFF, 0xFF,
67
  0xFF, 0xFF, 0xFF, 0xFF
68
};
69
70
static const unsigned char ffdhe_q_2048[] = {
71
  0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
72
  0xFF, 0xD6, 0xFC, 0x2A, 0x2C, 0x51, 0x5D,
73
  0xA5, 0x4D, 0x57, 0xEE, 0x2B, 0x10, 0x13,
74
  0x9E, 0x9E, 0x78, 0xEC, 0x5C, 0xE2, 0xC1,
75
  0xE7, 0x16, 0x9B, 0x4A, 0xD4, 0xF0, 0x9B,
76
  0x20, 0x8A, 0x32, 0x19, 0xFD, 0xE6, 0x49,
77
  0xCE, 0xE7, 0x12, 0x4D, 0x9F, 0x7C, 0xBE,
78
  0x97, 0xF1, 0xB1, 0xB1, 0x86, 0x3A, 0xEC,
79
  0x7B, 0x40, 0xD9, 0x01, 0x57, 0x62, 0x30,
80
  0xBD, 0x69, 0xEF, 0x8F, 0x6A, 0xEA, 0xFE,
81
  0xB2, 0xB0, 0x92, 0x19, 0xFA, 0x8F, 0xAF,
82
  0x83, 0x37, 0x68, 0x42, 0xB1, 0xB2, 0xAA,
83
  0x9E, 0xF6, 0x8D, 0x79, 0xDA, 0xAB, 0x89,
84
  0xAF, 0x3F, 0xAB, 0xE4, 0x9A, 0xCC, 0x27,
85
  0x86, 0x38, 0x70, 0x73, 0x45, 0xBB, 0xF1,
86
  0x53, 0x44, 0xED, 0x79, 0xF7, 0xF4, 0x39,
87
  0x0E, 0xF8, 0xAC, 0x50, 0x9B, 0x56, 0xF3,
88
  0x9A, 0x98, 0x56, 0x65, 0x27, 0xA4, 0x1D,
89
  0x3C, 0xBD, 0x5E, 0x05, 0x58, 0xC1, 0x59,
90
  0x92, 0x7D, 0xB0, 0xE8, 0x84, 0x54, 0xA5,
91
  0xD9, 0x64, 0x71, 0xFD, 0xDC, 0xB5, 0x6D,
92
  0x5B, 0xB0, 0x6B, 0xFA, 0x34, 0x0E, 0xA7,
93
  0xA1, 0x51, 0xEF, 0x1C, 0xA6, 0xFA, 0x57,
94
  0x2B, 0x76, 0xF3, 0xB1, 0xB9, 0x5D, 0x8C,
95
  0x85, 0x83, 0xD3, 0xE4, 0x77, 0x05, 0x36,
96
  0xB8, 0x4F, 0x01, 0x7E, 0x70, 0xE6, 0xFB,
97
  0xF1, 0x76, 0x60, 0x1A, 0x02, 0x66, 0x94,
98
  0x1A, 0x17, 0xB0, 0xC8, 0xB9, 0x7F, 0x4E,
99
  0x74, 0xC2, 0xC1, 0xFF, 0xC7, 0x27, 0x89,
100
  0x19, 0x77, 0x79, 0x40, 0xC1, 0xE1, 0xFF,
101
  0x1D, 0x8D, 0xA6, 0x37, 0xD6, 0xB9, 0x9D,
102
  0xDA, 0xFE, 0x5E, 0x17, 0x61, 0x10, 0x02,
103
  0xE2, 0xC7, 0x78, 0xC1, 0xBE, 0x8B, 0x41,
104
  0xD9, 0x63, 0x79, 0xA5, 0x13, 0x60, 0xD9,
105
  0x77, 0xFD, 0x44, 0x35, 0xA1, 0x1C, 0x30,
106
  0x94, 0x2E, 0x4B, 0xFF, 0xFF, 0xFF, 0xFF,
107
  0xFF, 0xFF, 0xFF, 0xFF
108
};
109
110
const gnutls_datum_t gnutls_ffdhe_2048_group_prime = {
111
  (void *)ffdhe_params_2048, sizeof(ffdhe_params_2048)
112
};
113
114
const gnutls_datum_t gnutls_ffdhe_2048_group_q = {
115
  (void *)ffdhe_q_2048, sizeof(ffdhe_q_2048)
116
};
117
118
const gnutls_datum_t gnutls_ffdhe_2048_group_generator = {
119
  (void *)&ffdhe_generator, sizeof(ffdhe_generator)
120
};
121
122
const unsigned int gnutls_ffdhe_2048_key_bits = 256;
123
124
static const unsigned char ffdhe_params_3072[] = {
125
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
126
  0xFF, 0xAD, 0xF8, 0x54, 0x58, 0xA2, 0xBB,
127
  0x4A, 0x9A, 0xAF, 0xDC, 0x56, 0x20, 0x27,
128
  0x3D, 0x3C, 0xF1, 0xD8, 0xB9, 0xC5, 0x83,
129
  0xCE, 0x2D, 0x36, 0x95, 0xA9, 0xE1, 0x36,
130
  0x41, 0x14, 0x64, 0x33, 0xFB, 0xCC, 0x93,
131
  0x9D, 0xCE, 0x24, 0x9B, 0x3E, 0xF9, 0x7D,
132
  0x2F, 0xE3, 0x63, 0x63, 0x0C, 0x75, 0xD8,
133
  0xF6, 0x81, 0xB2, 0x02, 0xAE, 0xC4, 0x61,
134
  0x7A, 0xD3, 0xDF, 0x1E, 0xD5, 0xD5, 0xFD,
135
  0x65, 0x61, 0x24, 0x33, 0xF5, 0x1F, 0x5F,
136
  0x06, 0x6E, 0xD0, 0x85, 0x63, 0x65, 0x55,
137
  0x3D, 0xED, 0x1A, 0xF3, 0xB5, 0x57, 0x13,
138
  0x5E, 0x7F, 0x57, 0xC9, 0x35, 0x98, 0x4F,
139
  0x0C, 0x70, 0xE0, 0xE6, 0x8B, 0x77, 0xE2,
140
  0xA6, 0x89, 0xDA, 0xF3, 0xEF, 0xE8, 0x72,
141
  0x1D, 0xF1, 0x58, 0xA1, 0x36, 0xAD, 0xE7,
142
  0x35, 0x30, 0xAC, 0xCA, 0x4F, 0x48, 0x3A,
143
  0x79, 0x7A, 0xBC, 0x0A, 0xB1, 0x82, 0xB3,
144
  0x24, 0xFB, 0x61, 0xD1, 0x08, 0xA9, 0x4B,
145
  0xB2, 0xC8, 0xE3, 0xFB, 0xB9, 0x6A, 0xDA,
146
  0xB7, 0x60, 0xD7, 0xF4, 0x68, 0x1D, 0x4F,
147
  0x42, 0xA3, 0xDE, 0x39, 0x4D, 0xF4, 0xAE,
148
  0x56, 0xED, 0xE7, 0x63, 0x72, 0xBB, 0x19,
149
  0x0B, 0x07, 0xA7, 0xC8, 0xEE, 0x0A, 0x6D,
150
  0x70, 0x9E, 0x02, 0xFC, 0xE1, 0xCD, 0xF7,
151
  0xE2, 0xEC, 0xC0, 0x34, 0x04, 0xCD, 0x28,
152
  0x34, 0x2F, 0x61, 0x91, 0x72, 0xFE, 0x9C,
153
  0xE9, 0x85, 0x83, 0xFF, 0x8E, 0x4F, 0x12,
154
  0x32, 0xEE, 0xF2, 0x81, 0x83, 0xC3, 0xFE,
155
  0x3B, 0x1B, 0x4C, 0x6F, 0xAD, 0x73, 0x3B,
156
  0xB5, 0xFC, 0xBC, 0x2E, 0xC2, 0x20, 0x05,
157
  0xC5, 0x8E, 0xF1, 0x83, 0x7D, 0x16, 0x83,
158
  0xB2, 0xC6, 0xF3, 0x4A, 0x26, 0xC1, 0xB2,
159
  0xEF, 0xFA, 0x88, 0x6B, 0x42, 0x38, 0x61,
160
  0x1F, 0xCF, 0xDC, 0xDE, 0x35, 0x5B, 0x3B,
161
  0x65, 0x19, 0x03, 0x5B, 0xBC, 0x34, 0xF4,
162
  0xDE, 0xF9, 0x9C, 0x02, 0x38, 0x61, 0xB4,
163
  0x6F, 0xC9, 0xD6, 0xE6, 0xC9, 0x07, 0x7A,
164
  0xD9, 0x1D, 0x26, 0x91, 0xF7, 0xF7, 0xEE,
165
  0x59, 0x8C, 0xB0, 0xFA, 0xC1, 0x86, 0xD9,
166
  0x1C, 0xAE, 0xFE, 0x13, 0x09, 0x85, 0x13,
167
  0x92, 0x70, 0xB4, 0x13, 0x0C, 0x93, 0xBC,
168
  0x43, 0x79, 0x44, 0xF4, 0xFD, 0x44, 0x52,
169
  0xE2, 0xD7, 0x4D, 0xD3, 0x64, 0xF2, 0xE2,
170
  0x1E, 0x71, 0xF5, 0x4B, 0xFF, 0x5C, 0xAE,
171
  0x82, 0xAB, 0x9C, 0x9D, 0xF6, 0x9E, 0xE8,
172
  0x6D, 0x2B, 0xC5, 0x22, 0x36, 0x3A, 0x0D,
173
  0xAB, 0xC5, 0x21, 0x97, 0x9B, 0x0D, 0xEA,
174
  0xDA, 0x1D, 0xBF, 0x9A, 0x42, 0xD5, 0xC4,
175
  0x48, 0x4E, 0x0A, 0xBC, 0xD0, 0x6B, 0xFA,
176
  0x53, 0xDD, 0xEF, 0x3C, 0x1B, 0x20, 0xEE,
177
  0x3F, 0xD5, 0x9D, 0x7C, 0x25, 0xE4, 0x1D,
178
  0x2B, 0x66, 0xC6, 0x2E, 0x37, 0xFF, 0xFF,
179
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
180
};
181
182
static const unsigned char ffdhe_q_3072[] = {
183
  0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
184
  0xFF, 0xD6, 0xFC, 0x2A, 0x2C, 0x51, 0x5D,
185
  0xA5, 0x4D, 0x57, 0xEE, 0x2B, 0x10, 0x13,
186
  0x9E, 0x9E, 0x78, 0xEC, 0x5C, 0xE2, 0xC1,
187
  0xE7, 0x16, 0x9B, 0x4A, 0xD4, 0xF0, 0x9B,
188
  0x20, 0x8A, 0x32, 0x19, 0xFD, 0xE6, 0x49,
189
  0xCE, 0xE7, 0x12, 0x4D, 0x9F, 0x7C, 0xBE,
190
  0x97, 0xF1, 0xB1, 0xB1, 0x86, 0x3A, 0xEC,
191
  0x7B, 0x40, 0xD9, 0x01, 0x57, 0x62, 0x30,
192
  0xBD, 0x69, 0xEF, 0x8F, 0x6A, 0xEA, 0xFE,
193
  0xB2, 0xB0, 0x92, 0x19, 0xFA, 0x8F, 0xAF,
194
  0x83, 0x37, 0x68, 0x42, 0xB1, 0xB2, 0xAA,
195
  0x9E, 0xF6, 0x8D, 0x79, 0xDA, 0xAB, 0x89,
196
  0xAF, 0x3F, 0xAB, 0xE4, 0x9A, 0xCC, 0x27,
197
  0x86, 0x38, 0x70, 0x73, 0x45, 0xBB, 0xF1,
198
  0x53, 0x44, 0xED, 0x79, 0xF7, 0xF4, 0x39,
199
  0x0E, 0xF8, 0xAC, 0x50, 0x9B, 0x56, 0xF3,
200
  0x9A, 0x98, 0x56, 0x65, 0x27, 0xA4, 0x1D,
201
  0x3C, 0xBD, 0x5E, 0x05, 0x58, 0xC1, 0x59,
202
  0x92, 0x7D, 0xB0, 0xE8, 0x84, 0x54, 0xA5,
203
  0xD9, 0x64, 0x71, 0xFD, 0xDC, 0xB5, 0x6D,
204
  0x5B, 0xB0, 0x6B, 0xFA, 0x34, 0x0E, 0xA7,
205
  0xA1, 0x51, 0xEF, 0x1C, 0xA6, 0xFA, 0x57,
206
  0x2B, 0x76, 0xF3, 0xB1, 0xB9, 0x5D, 0x8C,
207
  0x85, 0x83, 0xD3, 0xE4, 0x77, 0x05, 0x36,
208
  0xB8, 0x4F, 0x01, 0x7E, 0x70, 0xE6, 0xFB,
209
  0xF1, 0x76, 0x60, 0x1A, 0x02, 0x66, 0x94,
210
  0x1A, 0x17, 0xB0, 0xC8, 0xB9, 0x7F, 0x4E,
211
  0x74, 0xC2, 0xC1, 0xFF, 0xC7, 0x27, 0x89,
212
  0x19, 0x77, 0x79, 0x40, 0xC1, 0xE1, 0xFF,
213
  0x1D, 0x8D, 0xA6, 0x37, 0xD6, 0xB9, 0x9D,
214
  0xDA, 0xFE, 0x5E, 0x17, 0x61, 0x10, 0x02,
215
  0xE2, 0xC7, 0x78, 0xC1, 0xBE, 0x8B, 0x41,
216
  0xD9, 0x63, 0x79, 0xA5, 0x13, 0x60, 0xD9,
217
  0x77, 0xFD, 0x44, 0x35, 0xA1, 0x1C, 0x30,
218
  0x8F, 0xE7, 0xEE, 0x6F, 0x1A, 0xAD, 0x9D,
219
  0xB2, 0x8C, 0x81, 0xAD, 0xDE, 0x1A, 0x7A,
220
  0x6F, 0x7C, 0xCE, 0x01, 0x1C, 0x30, 0xDA,
221
  0x37, 0xE4, 0xEB, 0x73, 0x64, 0x83, 0xBD,
222
  0x6C, 0x8E, 0x93, 0x48, 0xFB, 0xFB, 0xF7,
223
  0x2C, 0xC6, 0x58, 0x7D, 0x60, 0xC3, 0x6C,
224
  0x8E, 0x57, 0x7F, 0x09, 0x84, 0xC2, 0x89,
225
  0xC9, 0x38, 0x5A, 0x09, 0x86, 0x49, 0xDE,
226
  0x21, 0xBC, 0xA2, 0x7A, 0x7E, 0xA2, 0x29,
227
  0x71, 0x6B, 0xA6, 0xE9, 0xB2, 0x79, 0x71,
228
  0x0F, 0x38, 0xFA, 0xA5, 0xFF, 0xAE, 0x57,
229
  0x41, 0x55, 0xCE, 0x4E, 0xFB, 0x4F, 0x74,
230
  0x36, 0x95, 0xE2, 0x91, 0x1B, 0x1D, 0x06,
231
  0xD5, 0xE2, 0x90, 0xCB, 0xCD, 0x86, 0xF5,
232
  0x6D, 0x0E, 0xDF, 0xCD, 0x21, 0x6A, 0xE2,
233
  0x24, 0x27, 0x05, 0x5E, 0x68, 0x35, 0xFD,
234
  0x29, 0xEE, 0xF7, 0x9E, 0x0D, 0x90, 0x77,
235
  0x1F, 0xEA, 0xCE, 0xBE, 0x12, 0xF2, 0x0E,
236
  0x95, 0xB3, 0x63, 0x17, 0x1B, 0xFF, 0xFF,
237
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
238
};
239
240
const gnutls_datum_t gnutls_ffdhe_3072_group_prime = {
241
  (void *)ffdhe_params_3072, sizeof(ffdhe_params_3072)
242
};
243
244
const gnutls_datum_t gnutls_ffdhe_3072_group_q = {
245
  (void *)ffdhe_q_3072, sizeof(ffdhe_q_3072)
246
};
247
248
const gnutls_datum_t gnutls_ffdhe_3072_group_generator = {
249
  (void *)&ffdhe_generator, sizeof(ffdhe_generator)
250
};
251
252
const unsigned int gnutls_ffdhe_3072_key_bits = 276;
253
254
static const unsigned char ffdhe_params_4096[] = {
255
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
256
  0xFF, 0xAD, 0xF8, 0x54, 0x58, 0xA2, 0xBB,
257
  0x4A, 0x9A, 0xAF, 0xDC, 0x56, 0x20, 0x27,
258
  0x3D, 0x3C, 0xF1, 0xD8, 0xB9, 0xC5, 0x83,
259
  0xCE, 0x2D, 0x36, 0x95, 0xA9, 0xE1, 0x36,
260
  0x41, 0x14, 0x64, 0x33, 0xFB, 0xCC, 0x93,
261
  0x9D, 0xCE, 0x24, 0x9B, 0x3E, 0xF9, 0x7D,
262
  0x2F, 0xE3, 0x63, 0x63, 0x0C, 0x75, 0xD8,
263
  0xF6, 0x81, 0xB2, 0x02, 0xAE, 0xC4, 0x61,
264
  0x7A, 0xD3, 0xDF, 0x1E, 0xD5, 0xD5, 0xFD,
265
  0x65, 0x61, 0x24, 0x33, 0xF5, 0x1F, 0x5F,
266
  0x06, 0x6E, 0xD0, 0x85, 0x63, 0x65, 0x55,
267
  0x3D, 0xED, 0x1A, 0xF3, 0xB5, 0x57, 0x13,
268
  0x5E, 0x7F, 0x57, 0xC9, 0x35, 0x98, 0x4F,
269
  0x0C, 0x70, 0xE0, 0xE6, 0x8B, 0x77, 0xE2,
270
  0xA6, 0x89, 0xDA, 0xF3, 0xEF, 0xE8, 0x72,
271
  0x1D, 0xF1, 0x58, 0xA1, 0x36, 0xAD, 0xE7,
272
  0x35, 0x30, 0xAC, 0xCA, 0x4F, 0x48, 0x3A,
273
  0x79, 0x7A, 0xBC, 0x0A, 0xB1, 0x82, 0xB3,
274
  0x24, 0xFB, 0x61, 0xD1, 0x08, 0xA9, 0x4B,
275
  0xB2, 0xC8, 0xE3, 0xFB, 0xB9, 0x6A, 0xDA,
276
  0xB7, 0x60, 0xD7, 0xF4, 0x68, 0x1D, 0x4F,
277
  0x42, 0xA3, 0xDE, 0x39, 0x4D, 0xF4, 0xAE,
278
  0x56, 0xED, 0xE7, 0x63, 0x72, 0xBB, 0x19,
279
  0x0B, 0x07, 0xA7, 0xC8, 0xEE, 0x0A, 0x6D,
280
  0x70, 0x9E, 0x02, 0xFC, 0xE1, 0xCD, 0xF7,
281
  0xE2, 0xEC, 0xC0, 0x34, 0x04, 0xCD, 0x28,
282
  0x34, 0x2F, 0x61, 0x91, 0x72, 0xFE, 0x9C,
283
  0xE9, 0x85, 0x83, 0xFF, 0x8E, 0x4F, 0x12,
284
  0x32, 0xEE, 0xF2, 0x81, 0x83, 0xC3, 0xFE,
285
  0x3B, 0x1B, 0x4C, 0x6F, 0xAD, 0x73, 0x3B,
286
  0xB5, 0xFC, 0xBC, 0x2E, 0xC2, 0x20, 0x05,
287
  0xC5, 0x8E, 0xF1, 0x83, 0x7D, 0x16, 0x83,
288
  0xB2, 0xC6, 0xF3, 0x4A, 0x26, 0xC1, 0xB2,
289
  0xEF, 0xFA, 0x88, 0x6B, 0x42, 0x38, 0x61,
290
  0x1F, 0xCF, 0xDC, 0xDE, 0x35, 0x5B, 0x3B,
291
  0x65, 0x19, 0x03, 0x5B, 0xBC, 0x34, 0xF4,
292
  0xDE, 0xF9, 0x9C, 0x02, 0x38, 0x61, 0xB4,
293
  0x6F, 0xC9, 0xD6, 0xE6, 0xC9, 0x07, 0x7A,
294
  0xD9, 0x1D, 0x26, 0x91, 0xF7, 0xF7, 0xEE,
295
  0x59, 0x8C, 0xB0, 0xFA, 0xC1, 0x86, 0xD9,
296
  0x1C, 0xAE, 0xFE, 0x13, 0x09, 0x85, 0x13,
297
  0x92, 0x70, 0xB4, 0x13, 0x0C, 0x93, 0xBC,
298
  0x43, 0x79, 0x44, 0xF4, 0xFD, 0x44, 0x52,
299
  0xE2, 0xD7, 0x4D, 0xD3, 0x64, 0xF2, 0xE2,
300
  0x1E, 0x71, 0xF5, 0x4B, 0xFF, 0x5C, 0xAE,
301
  0x82, 0xAB, 0x9C, 0x9D, 0xF6, 0x9E, 0xE8,
302
  0x6D, 0x2B, 0xC5, 0x22, 0x36, 0x3A, 0x0D,
303
  0xAB, 0xC5, 0x21, 0x97, 0x9B, 0x0D, 0xEA,
304
  0xDA, 0x1D, 0xBF, 0x9A, 0x42, 0xD5, 0xC4,
305
  0x48, 0x4E, 0x0A, 0xBC, 0xD0, 0x6B, 0xFA,
306
  0x53, 0xDD, 0xEF, 0x3C, 0x1B, 0x20, 0xEE,
307
  0x3F, 0xD5, 0x9D, 0x7C, 0x25, 0xE4, 0x1D,
308
  0x2B, 0x66, 0x9E, 0x1E, 0xF1, 0x6E, 0x6F,
309
  0x52, 0xC3, 0x16, 0x4D, 0xF4, 0xFB, 0x79,
310
  0x30, 0xE9, 0xE4, 0xE5, 0x88, 0x57, 0xB6,
311
  0xAC, 0x7D, 0x5F, 0x42, 0xD6, 0x9F, 0x6D,
312
  0x18, 0x77, 0x63, 0xCF, 0x1D, 0x55, 0x03,
313
  0x40, 0x04, 0x87, 0xF5, 0x5B, 0xA5, 0x7E,
314
  0x31, 0xCC, 0x7A, 0x71, 0x35, 0xC8, 0x86,
315
  0xEF, 0xB4, 0x31, 0x8A, 0xED, 0x6A, 0x1E,
316
  0x01, 0x2D, 0x9E, 0x68, 0x32, 0xA9, 0x07,
317
  0x60, 0x0A, 0x91, 0x81, 0x30, 0xC4, 0x6D,
318
  0xC7, 0x78, 0xF9, 0x71, 0xAD, 0x00, 0x38,
319
  0x09, 0x29, 0x99, 0xA3, 0x33, 0xCB, 0x8B,
320
  0x7A, 0x1A, 0x1D, 0xB9, 0x3D, 0x71, 0x40,
321
  0x00, 0x3C, 0x2A, 0x4E, 0xCE, 0xA9, 0xF9,
322
  0x8D, 0x0A, 0xCC, 0x0A, 0x82, 0x91, 0xCD,
323
  0xCE, 0xC9, 0x7D, 0xCF, 0x8E, 0xC9, 0xB5,
324
  0x5A, 0x7F, 0x88, 0xA4, 0x6B, 0x4D, 0xB5,
325
  0xA8, 0x51, 0xF4, 0x41, 0x82, 0xE1, 0xC6,
326
  0x8A, 0x00, 0x7E, 0x5E, 0x65, 0x5F, 0x6A,
327
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
328
  0xFF
329
};
330
331
static const unsigned char ffdhe_q_4096[] = {
332
  0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
333
  0xFF, 0xD6, 0xFC, 0x2A, 0x2C, 0x51, 0x5D,
334
  0xA5, 0x4D, 0x57, 0xEE, 0x2B, 0x10, 0x13,
335
  0x9E, 0x9E, 0x78, 0xEC, 0x5C, 0xE2, 0xC1,
336
  0xE7, 0x16, 0x9B, 0x4A, 0xD4, 0xF0, 0x9B,
337
  0x20, 0x8A, 0x32, 0x19, 0xFD, 0xE6, 0x49,
338
  0xCE, 0xE7, 0x12, 0x4D, 0x9F, 0x7C, 0xBE,
339
  0x97, 0xF1, 0xB1, 0xB1, 0x86, 0x3A, 0xEC,
340
  0x7B, 0x40, 0xD9, 0x01, 0x57, 0x62, 0x30,
341
  0xBD, 0x69, 0xEF, 0x8F, 0x6A, 0xEA, 0xFE,
342
  0xB2, 0xB0, 0x92, 0x19, 0xFA, 0x8F, 0xAF,
343
  0x83, 0x37, 0x68, 0x42, 0xB1, 0xB2, 0xAA,
344
  0x9E, 0xF6, 0x8D, 0x79, 0xDA, 0xAB, 0x89,
345
  0xAF, 0x3F, 0xAB, 0xE4, 0x9A, 0xCC, 0x27,
346
  0x86, 0x38, 0x70, 0x73, 0x45, 0xBB, 0xF1,
347
  0x53, 0x44, 0xED, 0x79, 0xF7, 0xF4, 0x39,
348
  0x0E, 0xF8, 0xAC, 0x50, 0x9B, 0x56, 0xF3,
349
  0x9A, 0x98, 0x56, 0x65, 0x27, 0xA4, 0x1D,
350
  0x3C, 0xBD, 0x5E, 0x05, 0x58, 0xC1, 0x59,
351
  0x92, 0x7D, 0xB0, 0xE8, 0x84, 0x54, 0xA5,
352
  0xD9, 0x64, 0x71, 0xFD, 0xDC, 0xB5, 0x6D,
353
  0x5B, 0xB0, 0x6B, 0xFA, 0x34, 0x0E, 0xA7,
354
  0xA1, 0x51, 0xEF, 0x1C, 0xA6, 0xFA, 0x57,
355
  0x2B, 0x76, 0xF3, 0xB1, 0xB9, 0x5D, 0x8C,
356
  0x85, 0x83, 0xD3, 0xE4, 0x77, 0x05, 0x36,
357
  0xB8, 0x4F, 0x01, 0x7E, 0x70, 0xE6, 0xFB,
358
  0xF1, 0x76, 0x60, 0x1A, 0x02, 0x66, 0x94,
359
  0x1A, 0x17, 0xB0, 0xC8, 0xB9, 0x7F, 0x4E,
360
  0x74, 0xC2, 0xC1, 0xFF, 0xC7, 0x27, 0x89,
361
  0x19, 0x77, 0x79, 0x40, 0xC1, 0xE1, 0xFF,
362
  0x1D, 0x8D, 0xA6, 0x37, 0xD6, 0xB9, 0x9D,
363
  0xDA, 0xFE, 0x5E, 0x17, 0x61, 0x10, 0x02,
364
  0xE2, 0xC7, 0x78, 0xC1, 0xBE, 0x8B, 0x41,
365
  0xD9, 0x63, 0x79, 0xA5, 0x13, 0x60, 0xD9,
366
  0x77, 0xFD, 0x44, 0x35, 0xA1, 0x1C, 0x30,
367
  0x8F, 0xE7, 0xEE, 0x6F, 0x1A, 0xAD, 0x9D,
368
  0xB2, 0x8C, 0x81, 0xAD, 0xDE, 0x1A, 0x7A,
369
  0x6F, 0x7C, 0xCE, 0x01, 0x1C, 0x30, 0xDA,
370
  0x37, 0xE4, 0xEB, 0x73, 0x64, 0x83, 0xBD,
371
  0x6C, 0x8E, 0x93, 0x48, 0xFB, 0xFB, 0xF7,
372
  0x2C, 0xC6, 0x58, 0x7D, 0x60, 0xC3, 0x6C,
373
  0x8E, 0x57, 0x7F, 0x09, 0x84, 0xC2, 0x89,
374
  0xC9, 0x38, 0x5A, 0x09, 0x86, 0x49, 0xDE,
375
  0x21, 0xBC, 0xA2, 0x7A, 0x7E, 0xA2, 0x29,
376
  0x71, 0x6B, 0xA6, 0xE9, 0xB2, 0x79, 0x71,
377
  0x0F, 0x38, 0xFA, 0xA5, 0xFF, 0xAE, 0x57,
378
  0x41, 0x55, 0xCE, 0x4E, 0xFB, 0x4F, 0x74,
379
  0x36, 0x95, 0xE2, 0x91, 0x1B, 0x1D, 0x06,
380
  0xD5, 0xE2, 0x90, 0xCB, 0xCD, 0x86, 0xF5,
381
  0x6D, 0x0E, 0xDF, 0xCD, 0x21, 0x6A, 0xE2,
382
  0x24, 0x27, 0x05, 0x5E, 0x68, 0x35, 0xFD,
383
  0x29, 0xEE, 0xF7, 0x9E, 0x0D, 0x90, 0x77,
384
  0x1F, 0xEA, 0xCE, 0xBE, 0x12, 0xF2, 0x0E,
385
  0x95, 0xB3, 0x4F, 0x0F, 0x78, 0xB7, 0x37,
386
  0xA9, 0x61, 0x8B, 0x26, 0xFA, 0x7D, 0xBC,
387
  0x98, 0x74, 0xF2, 0x72, 0xC4, 0x2B, 0xDB,
388
  0x56, 0x3E, 0xAF, 0xA1, 0x6B, 0x4F, 0xB6,
389
  0x8C, 0x3B, 0xB1, 0xE7, 0x8E, 0xAA, 0x81,
390
  0xA0, 0x02, 0x43, 0xFA, 0xAD, 0xD2, 0xBF,
391
  0x18, 0xE6, 0x3D, 0x38, 0x9A, 0xE4, 0x43,
392
  0x77, 0xDA, 0x18, 0xC5, 0x76, 0xB5, 0x0F,
393
  0x00, 0x96, 0xCF, 0x34, 0x19, 0x54, 0x83,
394
  0xB0, 0x05, 0x48, 0xC0, 0x98, 0x62, 0x36,
395
  0xE3, 0xBC, 0x7C, 0xB8, 0xD6, 0x80, 0x1C,
396
  0x04, 0x94, 0xCC, 0xD1, 0x99, 0xE5, 0xC5,
397
  0xBD, 0x0D, 0x0E, 0xDC, 0x9E, 0xB8, 0xA0,
398
  0x00, 0x1E, 0x15, 0x27, 0x67, 0x54, 0xFC,
399
  0xC6, 0x85, 0x66, 0x05, 0x41, 0x48, 0xE6,
400
  0xE7, 0x64, 0xBE, 0xE7, 0xC7, 0x64, 0xDA,
401
  0xAD, 0x3F, 0xC4, 0x52, 0x35, 0xA6, 0xDA,
402
  0xD4, 0x28, 0xFA, 0x20, 0xC1, 0x70, 0xE3,
403
  0x45, 0x00, 0x3F, 0x2F, 0x32, 0xAF, 0xB5,
404
  0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
405
  0xFF
406
};
407
408
const gnutls_datum_t gnutls_ffdhe_4096_group_prime = {
409
  (void *)ffdhe_params_4096, sizeof(ffdhe_params_4096)
410
};
411
412
const gnutls_datum_t gnutls_ffdhe_4096_group_q = {
413
  (void *)ffdhe_q_4096, sizeof(ffdhe_q_4096)
414
};
415
416
const gnutls_datum_t gnutls_ffdhe_4096_group_generator = {
417
  (void *)&ffdhe_generator, sizeof(ffdhe_generator)
418
};
419
420
const unsigned int gnutls_ffdhe_4096_key_bits = 336;
421
422
static const unsigned char ffdhe_params_6144[] = {
423
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
424
  0xFF, 0xAD, 0xF8, 0x54, 0x58, 0xA2, 0xBB,
425
  0x4A, 0x9A, 0xAF, 0xDC, 0x56, 0x20, 0x27,
426
  0x3D, 0x3C, 0xF1, 0xD8, 0xB9, 0xC5, 0x83,
427
  0xCE, 0x2D, 0x36, 0x95, 0xA9, 0xE1, 0x36,
428
  0x41, 0x14, 0x64, 0x33, 0xFB, 0xCC, 0x93,
429
  0x9D, 0xCE, 0x24, 0x9B, 0x3E, 0xF9, 0x7D,
430
  0x2F, 0xE3, 0x63, 0x63, 0x0C, 0x75, 0xD8,
431
  0xF6, 0x81, 0xB2, 0x02, 0xAE, 0xC4, 0x61,
432
  0x7A, 0xD3, 0xDF, 0x1E, 0xD5, 0xD5, 0xFD,
433
  0x65, 0x61, 0x24, 0x33, 0xF5, 0x1F, 0x5F,
434
  0x06, 0x6E, 0xD0, 0x85, 0x63, 0x65, 0x55,
435
  0x3D, 0xED, 0x1A, 0xF3, 0xB5, 0x57, 0x13,
436
  0x5E, 0x7F, 0x57, 0xC9, 0x35, 0x98, 0x4F,
437
  0x0C, 0x70, 0xE0, 0xE6, 0x8B, 0x77, 0xE2,
438
  0xA6, 0x89, 0xDA, 0xF3, 0xEF, 0xE8, 0x72,
439
  0x1D, 0xF1, 0x58, 0xA1, 0x36, 0xAD, 0xE7,
440
  0x35, 0x30, 0xAC, 0xCA, 0x4F, 0x48, 0x3A,
441
  0x79, 0x7A, 0xBC, 0x0A, 0xB1, 0x82, 0xB3,
442
  0x24, 0xFB, 0x61, 0xD1, 0x08, 0xA9, 0x4B,
443
  0xB2, 0xC8, 0xE3, 0xFB, 0xB9, 0x6A, 0xDA,
444
  0xB7, 0x60, 0xD7, 0xF4, 0x68, 0x1D, 0x4F,
445
  0x42, 0xA3, 0xDE, 0x39, 0x4D, 0xF4, 0xAE,
446
  0x56, 0xED, 0xE7, 0x63, 0x72, 0xBB, 0x19,
447
  0x0B, 0x07, 0xA7, 0xC8, 0xEE, 0x0A, 0x6D,
448
  0x70, 0x9E, 0x02, 0xFC, 0xE1, 0xCD, 0xF7,
449
  0xE2, 0xEC, 0xC0, 0x34, 0x04, 0xCD, 0x28,
450
  0x34, 0x2F, 0x61, 0x91, 0x72, 0xFE, 0x9C,
451
  0xE9, 0x85, 0x83, 0xFF, 0x8E, 0x4F, 0x12,
452
  0x32, 0xEE, 0xF2, 0x81, 0x83, 0xC3, 0xFE,
453
  0x3B, 0x1B, 0x4C, 0x6F, 0xAD, 0x73, 0x3B,
454
  0xB5, 0xFC, 0xBC, 0x2E, 0xC2, 0x20, 0x05,
455
  0xC5, 0x8E, 0xF1, 0x83, 0x7D, 0x16, 0x83,
456
  0xB2, 0xC6, 0xF3, 0x4A, 0x26, 0xC1, 0xB2,
457
  0xEF, 0xFA, 0x88, 0x6B, 0x42, 0x38, 0x61,
458
  0x1F, 0xCF, 0xDC, 0xDE, 0x35, 0x5B, 0x3B,
459
  0x65, 0x19, 0x03, 0x5B, 0xBC, 0x34, 0xF4,
460
  0xDE, 0xF9, 0x9C, 0x02, 0x38, 0x61, 0xB4,
461
  0x6F, 0xC9, 0xD6, 0xE6, 0xC9, 0x07, 0x7A,
462
  0xD9, 0x1D, 0x26, 0x91, 0xF7, 0xF7, 0xEE,
463
  0x59, 0x8C, 0xB0, 0xFA, 0xC1, 0x86, 0xD9,
464
  0x1C, 0xAE, 0xFE, 0x13, 0x09, 0x85, 0x13,
465
  0x92, 0x70, 0xB4, 0x13, 0x0C, 0x93, 0xBC,
466
  0x43, 0x79, 0x44, 0xF4, 0xFD, 0x44, 0x52,
467
  0xE2, 0xD7, 0x4D, 0xD3, 0x64, 0xF2, 0xE2,
468
  0x1E, 0x71, 0xF5, 0x4B, 0xFF, 0x5C, 0xAE,
469
  0x82, 0xAB, 0x9C, 0x9D, 0xF6, 0x9E, 0xE8,
470
  0x6D, 0x2B, 0xC5, 0x22, 0x36, 0x3A, 0x0D,
471
  0xAB, 0xC5, 0x21, 0x97, 0x9B, 0x0D, 0xEA,
472
  0xDA, 0x1D, 0xBF, 0x9A, 0x42, 0xD5, 0xC4,
473
  0x48, 0x4E, 0x0A, 0xBC, 0xD0, 0x6B, 0xFA,
474
  0x53, 0xDD, 0xEF, 0x3C, 0x1B, 0x20, 0xEE,
475
  0x3F, 0xD5, 0x9D, 0x7C, 0x25, 0xE4, 0x1D,
476
  0x2B, 0x66, 0x9E, 0x1E, 0xF1, 0x6E, 0x6F,
477
  0x52, 0xC3, 0x16, 0x4D, 0xF4, 0xFB, 0x79,
478
  0x30, 0xE9, 0xE4, 0xE5, 0x88, 0x57, 0xB6,
479
  0xAC, 0x7D, 0x5F, 0x42, 0xD6, 0x9F, 0x6D,
480
  0x18, 0x77, 0x63, 0xCF, 0x1D, 0x55, 0x03,
481
  0x40, 0x04, 0x87, 0xF5, 0x5B, 0xA5, 0x7E,
482
  0x31, 0xCC, 0x7A, 0x71, 0x35, 0xC8, 0x86,
483
  0xEF, 0xB4, 0x31, 0x8A, 0xED, 0x6A, 0x1E,
484
  0x01, 0x2D, 0x9E, 0x68, 0x32, 0xA9, 0x07,
485
  0x60, 0x0A, 0x91, 0x81, 0x30, 0xC4, 0x6D,
486
  0xC7, 0x78, 0xF9, 0x71, 0xAD, 0x00, 0x38,
487
  0x09, 0x29, 0x99, 0xA3, 0x33, 0xCB, 0x8B,
488
  0x7A, 0x1A, 0x1D, 0xB9, 0x3D, 0x71, 0x40,
489
  0x00, 0x3C, 0x2A, 0x4E, 0xCE, 0xA9, 0xF9,
490
  0x8D, 0x0A, 0xCC, 0x0A, 0x82, 0x91, 0xCD,
491
  0xCE, 0xC9, 0x7D, 0xCF, 0x8E, 0xC9, 0xB5,
492
  0x5A, 0x7F, 0x88, 0xA4, 0x6B, 0x4D, 0xB5,
493
  0xA8, 0x51, 0xF4, 0x41, 0x82, 0xE1, 0xC6,
494
  0x8A, 0x00, 0x7E, 0x5E, 0x0D, 0xD9, 0x02,
495
  0x0B, 0xFD, 0x64, 0xB6, 0x45, 0x03, 0x6C,
496
  0x7A, 0x4E, 0x67, 0x7D, 0x2C, 0x38, 0x53,
497
  0x2A, 0x3A, 0x23, 0xBA, 0x44, 0x42, 0xCA,
498
  0xF5, 0x3E, 0xA6, 0x3B, 0xB4, 0x54, 0x32,
499
  0x9B, 0x76, 0x24, 0xC8, 0x91, 0x7B, 0xDD,
500
  0x64, 0xB1, 0xC0, 0xFD, 0x4C, 0xB3, 0x8E,
501
  0x8C, 0x33, 0x4C, 0x70, 0x1C, 0x3A, 0xCD,
502
  0xAD, 0x06, 0x57, 0xFC, 0xCF, 0xEC, 0x71,
503
  0x9B, 0x1F, 0x5C, 0x3E, 0x4E, 0x46, 0x04,
504
  0x1F, 0x38, 0x81, 0x47, 0xFB, 0x4C, 0xFD,
505
  0xB4, 0x77, 0xA5, 0x24, 0x71, 0xF7, 0xA9,
506
  0xA9, 0x69, 0x10, 0xB8, 0x55, 0x32, 0x2E,
507
  0xDB, 0x63, 0x40, 0xD8, 0xA0, 0x0E, 0xF0,
508
  0x92, 0x35, 0x05, 0x11, 0xE3, 0x0A, 0xBE,
509
  0xC1, 0xFF, 0xF9, 0xE3, 0xA2, 0x6E, 0x7F,
510
  0xB2, 0x9F, 0x8C, 0x18, 0x30, 0x23, 0xC3,
511
  0x58, 0x7E, 0x38, 0xDA, 0x00, 0x77, 0xD9,
512
  0xB4, 0x76, 0x3E, 0x4E, 0x4B, 0x94, 0xB2,
513
  0xBB, 0xC1, 0x94, 0xC6, 0x65, 0x1E, 0x77,
514
  0xCA, 0xF9, 0x92, 0xEE, 0xAA, 0xC0, 0x23,
515
  0x2A, 0x28, 0x1B, 0xF6, 0xB3, 0xA7, 0x39,
516
  0xC1, 0x22, 0x61, 0x16, 0x82, 0x0A, 0xE8,
517
  0xDB, 0x58, 0x47, 0xA6, 0x7C, 0xBE, 0xF9,
518
  0xC9, 0x09, 0x1B, 0x46, 0x2D, 0x53, 0x8C,
519
  0xD7, 0x2B, 0x03, 0x74, 0x6A, 0xE7, 0x7F,
520
  0x5E, 0x62, 0x29, 0x2C, 0x31, 0x15, 0x62,
521
  0xA8, 0x46, 0x50, 0x5D, 0xC8, 0x2D, 0xB8,
522
  0x54, 0x33, 0x8A, 0xE4, 0x9F, 0x52, 0x35,
523
  0xC9, 0x5B, 0x91, 0x17, 0x8C, 0xCF, 0x2D,
524
  0xD5, 0xCA, 0xCE, 0xF4, 0x03, 0xEC, 0x9D,
525
  0x18, 0x10, 0xC6, 0x27, 0x2B, 0x04, 0x5B,
526
  0x3B, 0x71, 0xF9, 0xDC, 0x6B, 0x80, 0xD6,
527
  0x3F, 0xDD, 0x4A, 0x8E, 0x9A, 0xDB, 0x1E,
528
  0x69, 0x62, 0xA6, 0x95, 0x26, 0xD4, 0x31,
529
  0x61, 0xC1, 0xA4, 0x1D, 0x57, 0x0D, 0x79,
530
  0x38, 0xDA, 0xD4, 0xA4, 0x0E, 0x32, 0x9C,
531
  0xD0, 0xE4, 0x0E, 0x65, 0xFF, 0xFF, 0xFF,
532
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF
533
};
534
535
static const unsigned char ffdhe_q_6144[] = {
536
  0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
537
  0xFF, 0xD6, 0xFC, 0x2A, 0x2C, 0x51, 0x5D,
538
  0xA5, 0x4D, 0x57, 0xEE, 0x2B, 0x10, 0x13,
539
  0x9E, 0x9E, 0x78, 0xEC, 0x5C, 0xE2, 0xC1,
540
  0xE7, 0x16, 0x9B, 0x4A, 0xD4, 0xF0, 0x9B,
541
  0x20, 0x8A, 0x32, 0x19, 0xFD, 0xE6, 0x49,
542
  0xCE, 0xE7, 0x12, 0x4D, 0x9F, 0x7C, 0xBE,
543
  0x97, 0xF1, 0xB1, 0xB1, 0x86, 0x3A, 0xEC,
544
  0x7B, 0x40, 0xD9, 0x01, 0x57, 0x62, 0x30,
545
  0xBD, 0x69, 0xEF, 0x8F, 0x6A, 0xEA, 0xFE,
546
  0xB2, 0xB0, 0x92, 0x19, 0xFA, 0x8F, 0xAF,
547
  0x83, 0x37, 0x68, 0x42, 0xB1, 0xB2, 0xAA,
548
  0x9E, 0xF6, 0x8D, 0x79, 0xDA, 0xAB, 0x89,
549
  0xAF, 0x3F, 0xAB, 0xE4, 0x9A, 0xCC, 0x27,
550
  0x86, 0x38, 0x70, 0x73, 0x45, 0xBB, 0xF1,
551
  0x53, 0x44, 0xED, 0x79, 0xF7, 0xF4, 0x39,
552
  0x0E, 0xF8, 0xAC, 0x50, 0x9B, 0x56, 0xF3,
553
  0x9A, 0x98, 0x56, 0x65, 0x27, 0xA4, 0x1D,
554
  0x3C, 0xBD, 0x5E, 0x05, 0x58, 0xC1, 0x59,
555
  0x92, 0x7D, 0xB0, 0xE8, 0x84, 0x54, 0xA5,
556
  0xD9, 0x64, 0x71, 0xFD, 0xDC, 0xB5, 0x6D,
557
  0x5B, 0xB0, 0x6B, 0xFA, 0x34, 0x0E, 0xA7,
558
  0xA1, 0x51, 0xEF, 0x1C, 0xA6, 0xFA, 0x57,
559
  0x2B, 0x76, 0xF3, 0xB1, 0xB9, 0x5D, 0x8C,
560
  0x85, 0x83, 0xD3, 0xE4, 0x77, 0x05, 0x36,
561
  0xB8, 0x4F, 0x01, 0x7E, 0x70, 0xE6, 0xFB,
562
  0xF1, 0x76, 0x60, 0x1A, 0x02, 0x66, 0x94,
563
  0x1A, 0x17, 0xB0, 0xC8, 0xB9, 0x7F, 0x4E,
564
  0x74, 0xC2, 0xC1, 0xFF, 0xC7, 0x27, 0x89,
565
  0x19, 0x77, 0x79, 0x40, 0xC1, 0xE1, 0xFF,
566
  0x1D, 0x8D, 0xA6, 0x37, 0xD6, 0xB9, 0x9D,
567
  0xDA, 0xFE, 0x5E, 0x17, 0x61, 0x10, 0x02,
568
  0xE2, 0xC7, 0x78, 0xC1, 0xBE, 0x8B, 0x41,
569
  0xD9, 0x63, 0x79, 0xA5, 0x13, 0x60, 0xD9,
570
  0x77, 0xFD, 0x44, 0x35, 0xA1, 0x1C, 0x30,
571
  0x8F, 0xE7, 0xEE, 0x6F, 0x1A, 0xAD, 0x9D,
572
  0xB2, 0x8C, 0x81, 0xAD, 0xDE, 0x1A, 0x7A,
573
  0x6F, 0x7C, 0xCE, 0x01, 0x1C, 0x30, 0xDA,
574
  0x37, 0xE4, 0xEB, 0x73, 0x64, 0x83, 0xBD,
575
  0x6C, 0x8E, 0x93, 0x48, 0xFB, 0xFB, 0xF7,
576
  0x2C, 0xC6, 0x58, 0x7D, 0x60, 0xC3, 0x6C,
577
  0x8E, 0x57, 0x7F, 0x09, 0x84, 0xC2, 0x89,
578
  0xC9, 0x38, 0x5A, 0x09, 0x86, 0x49, 0xDE,
579
  0x21, 0xBC, 0xA2, 0x7A, 0x7E, 0xA2, 0x29,
580
  0x71, 0x6B, 0xA6, 0xE9, 0xB2, 0x79, 0x71,
581
  0x0F, 0x38, 0xFA, 0xA5, 0xFF, 0xAE, 0x57,
582
  0x41, 0x55, 0xCE, 0x4E, 0xFB, 0x4F, 0x74,
583
  0x36, 0x95, 0xE2, 0x91, 0x1B, 0x1D, 0x06,
584
  0xD5, 0xE2, 0x90, 0xCB, 0xCD, 0x86, 0xF5,
585
  0x6D, 0x0E, 0xDF, 0xCD, 0x21, 0x6A, 0xE2,
586
  0x24, 0x27, 0x05, 0x5E, 0x68, 0x35, 0xFD,
587
  0x29, 0xEE, 0xF7, 0x9E, 0x0D, 0x90, 0x77,
588
  0x1F, 0xEA, 0xCE, 0xBE, 0x12, 0xF2, 0x0E,
589
  0x95, 0xB3, 0x4F, 0x0F, 0x78, 0xB7, 0x37,
590
  0xA9, 0x61, 0x8B, 0x26, 0xFA, 0x7D, 0xBC,
591
  0x98, 0x74, 0xF2, 0x72, 0xC4, 0x2B, 0xDB,
592
  0x56, 0x3E, 0xAF, 0xA1, 0x6B, 0x4F, 0xB6,
593
  0x8C, 0x3B, 0xB1, 0xE7, 0x8E, 0xAA, 0x81,
594
  0xA0, 0x02, 0x43, 0xFA, 0xAD, 0xD2, 0xBF,
595
  0x18, 0xE6, 0x3D, 0x38, 0x9A, 0xE4, 0x43,
596
  0x77, 0xDA, 0x18, 0xC5, 0x76, 0xB5, 0x0F,
597
  0x00, 0x96, 0xCF, 0x34, 0x19, 0x54, 0x83,
598
  0xB0, 0x05, 0x48, 0xC0, 0x98, 0x62, 0x36,
599
  0xE3, 0xBC, 0x7C, 0xB8, 0xD6, 0x80, 0x1C,
600
  0x04, 0x94, 0xCC, 0xD1, 0x99, 0xE5, 0xC5,
601
  0xBD, 0x0D, 0x0E, 0xDC, 0x9E, 0xB8, 0xA0,
602
  0x00, 0x1E, 0x15, 0x27, 0x67, 0x54, 0xFC,
603
  0xC6, 0x85, 0x66, 0x05, 0x41, 0x48, 0xE6,
604
  0xE7, 0x64, 0xBE, 0xE7, 0xC7, 0x64, 0xDA,
605
  0xAD, 0x3F, 0xC4, 0x52, 0x35, 0xA6, 0xDA,
606
  0xD4, 0x28, 0xFA, 0x20, 0xC1, 0x70, 0xE3,
607
  0x45, 0x00, 0x3F, 0x2F, 0x06, 0xEC, 0x81,
608
  0x05, 0xFE, 0xB2, 0x5B, 0x22, 0x81, 0xB6,
609
  0x3D, 0x27, 0x33, 0xBE, 0x96, 0x1C, 0x29,
610
  0x95, 0x1D, 0x11, 0xDD, 0x22, 0x21, 0x65,
611
  0x7A, 0x9F, 0x53, 0x1D, 0xDA, 0x2A, 0x19,
612
  0x4D, 0xBB, 0x12, 0x64, 0x48, 0xBD, 0xEE,
613
  0xB2, 0x58, 0xE0, 0x7E, 0xA6, 0x59, 0xC7,
614
  0x46, 0x19, 0xA6, 0x38, 0x0E, 0x1D, 0x66,
615
  0xD6, 0x83, 0x2B, 0xFE, 0x67, 0xF6, 0x38,
616
  0xCD, 0x8F, 0xAE, 0x1F, 0x27, 0x23, 0x02,
617
  0x0F, 0x9C, 0x40, 0xA3, 0xFD, 0xA6, 0x7E,
618
  0xDA, 0x3B, 0xD2, 0x92, 0x38, 0xFB, 0xD4,
619
  0xD4, 0xB4, 0x88, 0x5C, 0x2A, 0x99, 0x17,
620
  0x6D, 0xB1, 0xA0, 0x6C, 0x50, 0x07, 0x78,
621
  0x49, 0x1A, 0x82, 0x88, 0xF1, 0x85, 0x5F,
622
  0x60, 0xFF, 0xFC, 0xF1, 0xD1, 0x37, 0x3F,
623
  0xD9, 0x4F, 0xC6, 0x0C, 0x18, 0x11, 0xE1,
624
  0xAC, 0x3F, 0x1C, 0x6D, 0x00, 0x3B, 0xEC,
625
  0xDA, 0x3B, 0x1F, 0x27, 0x25, 0xCA, 0x59,
626
  0x5D, 0xE0, 0xCA, 0x63, 0x32, 0x8F, 0x3B,
627
  0xE5, 0x7C, 0xC9, 0x77, 0x55, 0x60, 0x11,
628
  0x95, 0x14, 0x0D, 0xFB, 0x59, 0xD3, 0x9C,
629
  0xE0, 0x91, 0x30, 0x8B, 0x41, 0x05, 0x74,
630
  0x6D, 0xAC, 0x23, 0xD3, 0x3E, 0x5F, 0x7C,
631
  0xE4, 0x84, 0x8D, 0xA3, 0x16, 0xA9, 0xC6,
632
  0x6B, 0x95, 0x81, 0xBA, 0x35, 0x73, 0xBF,
633
  0xAF, 0x31, 0x14, 0x96, 0x18, 0x8A, 0xB1,
634
  0x54, 0x23, 0x28, 0x2E, 0xE4, 0x16, 0xDC,
635
  0x2A, 0x19, 0xC5, 0x72, 0x4F, 0xA9, 0x1A,
636
  0xE4, 0xAD, 0xC8, 0x8B, 0xC6, 0x67, 0x96,
637
  0xEA, 0xE5, 0x67, 0x7A, 0x01, 0xF6, 0x4E,
638
  0x8C, 0x08, 0x63, 0x13, 0x95, 0x82, 0x2D,
639
  0x9D, 0xB8, 0xFC, 0xEE, 0x35, 0xC0, 0x6B,
640
  0x1F, 0xEE, 0xA5, 0x47, 0x4D, 0x6D, 0x8F,
641
  0x34, 0xB1, 0x53, 0x4A, 0x93, 0x6A, 0x18,
642
  0xB0, 0xE0, 0xD2, 0x0E, 0xAB, 0x86, 0xBC,
643
  0x9C, 0x6D, 0x6A, 0x52, 0x07, 0x19, 0x4E,
644
  0x68, 0x72, 0x07, 0x32, 0xFF, 0xFF, 0xFF,
645
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF
646
};
647
648
const gnutls_datum_t gnutls_ffdhe_6144_group_prime = {
649
  (void *)ffdhe_params_6144, sizeof(ffdhe_params_6144)
650
};
651
652
const gnutls_datum_t gnutls_ffdhe_6144_group_q = {
653
  (void *)ffdhe_q_6144, sizeof(ffdhe_q_6144)
654
};
655
656
const gnutls_datum_t gnutls_ffdhe_6144_group_generator = {
657
  (void *)&ffdhe_generator, sizeof(ffdhe_generator)
658
};
659
660
const unsigned int gnutls_ffdhe_6144_key_bits = 376;
661
662
static const unsigned char ffdhe_params_8192[] = {
663
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
664
  0xFF, 0xAD, 0xF8, 0x54, 0x58, 0xA2, 0xBB,
665
  0x4A, 0x9A, 0xAF, 0xDC, 0x56, 0x20, 0x27,
666
  0x3D, 0x3C, 0xF1, 0xD8, 0xB9, 0xC5, 0x83,
667
  0xCE, 0x2D, 0x36, 0x95, 0xA9, 0xE1, 0x36,
668
  0x41, 0x14, 0x64, 0x33, 0xFB, 0xCC, 0x93,
669
  0x9D, 0xCE, 0x24, 0x9B, 0x3E, 0xF9, 0x7D,
670
  0x2F, 0xE3, 0x63, 0x63, 0x0C, 0x75, 0xD8,
671
  0xF6, 0x81, 0xB2, 0x02, 0xAE, 0xC4, 0x61,
672
  0x7A, 0xD3, 0xDF, 0x1E, 0xD5, 0xD5, 0xFD,
673
  0x65, 0x61, 0x24, 0x33, 0xF5, 0x1F, 0x5F,
674
  0x06, 0x6E, 0xD0, 0x85, 0x63, 0x65, 0x55,
675
  0x3D, 0xED, 0x1A, 0xF3, 0xB5, 0x57, 0x13,
676
  0x5E, 0x7F, 0x57, 0xC9, 0x35, 0x98, 0x4F,
677
  0x0C, 0x70, 0xE0, 0xE6, 0x8B, 0x77, 0xE2,
678
  0xA6, 0x89, 0xDA, 0xF3, 0xEF, 0xE8, 0x72,
679
  0x1D, 0xF1, 0x58, 0xA1, 0x36, 0xAD, 0xE7,
680
  0x35, 0x30, 0xAC, 0xCA, 0x4F, 0x48, 0x3A,
681
  0x79, 0x7A, 0xBC, 0x0A, 0xB1, 0x82, 0xB3,
682
  0x24, 0xFB, 0x61, 0xD1, 0x08, 0xA9, 0x4B,
683
  0xB2, 0xC8, 0xE3, 0xFB, 0xB9, 0x6A, 0xDA,
684
  0xB7, 0x60, 0xD7, 0xF4, 0x68, 0x1D, 0x4F,
685
  0x42, 0xA3, 0xDE, 0x39, 0x4D, 0xF4, 0xAE,
686
  0x56, 0xED, 0xE7, 0x63, 0x72, 0xBB, 0x19,
687
  0x0B, 0x07, 0xA7, 0xC8, 0xEE, 0x0A, 0x6D,
688
  0x70, 0x9E, 0x02, 0xFC, 0xE1, 0xCD, 0xF7,
689
  0xE2, 0xEC, 0xC0, 0x34, 0x04, 0xCD, 0x28,
690
  0x34, 0x2F, 0x61, 0x91, 0x72, 0xFE, 0x9C,
691
  0xE9, 0x85, 0x83, 0xFF, 0x8E, 0x4F, 0x12,
692
  0x32, 0xEE, 0xF2, 0x81, 0x83, 0xC3, 0xFE,
693
  0x3B, 0x1B, 0x4C, 0x6F, 0xAD, 0x73, 0x3B,
694
  0xB5, 0xFC, 0xBC, 0x2E, 0xC2, 0x20, 0x05,
695
  0xC5, 0x8E, 0xF1, 0x83, 0x7D, 0x16, 0x83,
696
  0xB2, 0xC6, 0xF3, 0x4A, 0x26, 0xC1, 0xB2,
697
  0xEF, 0xFA, 0x88, 0x6B, 0x42, 0x38, 0x61,
698
  0x1F, 0xCF, 0xDC, 0xDE, 0x35, 0x5B, 0x3B,
699
  0x65, 0x19, 0x03, 0x5B, 0xBC, 0x34, 0xF4,
700
  0xDE, 0xF9, 0x9C, 0x02, 0x38, 0x61, 0xB4,
701
  0x6F, 0xC9, 0xD6, 0xE6, 0xC9, 0x07, 0x7A,
702
  0xD9, 0x1D, 0x26, 0x91, 0xF7, 0xF7, 0xEE,
703
  0x59, 0x8C, 0xB0, 0xFA, 0xC1, 0x86, 0xD9,
704
  0x1C, 0xAE, 0xFE, 0x13, 0x09, 0x85, 0x13,
705
  0x92, 0x70, 0xB4, 0x13, 0x0C, 0x93, 0xBC,
706
  0x43, 0x79, 0x44, 0xF4, 0xFD, 0x44, 0x52,
707
  0xE2, 0xD7, 0x4D, 0xD3, 0x64, 0xF2, 0xE2,
708
  0x1E, 0x71, 0xF5, 0x4B, 0xFF, 0x5C, 0xAE,
709
  0x82, 0xAB, 0x9C, 0x9D, 0xF6, 0x9E, 0xE8,
710
  0x6D, 0x2B, 0xC5, 0x22, 0x36, 0x3A, 0x0D,
711
  0xAB, 0xC5, 0x21, 0x97, 0x9B, 0x0D, 0xEA,
712
  0xDA, 0x1D, 0xBF, 0x9A, 0x42, 0xD5, 0xC4,
713
  0x48, 0x4E, 0x0A, 0xBC, 0xD0, 0x6B, 0xFA,
714
  0x53, 0xDD, 0xEF, 0x3C, 0x1B, 0x20, 0xEE,
715
  0x3F, 0xD5, 0x9D, 0x7C, 0x25, 0xE4, 0x1D,
716
  0x2B, 0x66, 0x9E, 0x1E, 0xF1, 0x6E, 0x6F,
717
  0x52, 0xC3, 0x16, 0x4D, 0xF4, 0xFB, 0x79,
718
  0x30, 0xE9, 0xE4, 0xE5, 0x88, 0x57, 0xB6,
719
  0xAC, 0x7D, 0x5F, 0x42, 0xD6, 0x9F, 0x6D,
720
  0x18, 0x77, 0x63, 0xCF, 0x1D, 0x55, 0x03,
721
  0x40, 0x04, 0x87, 0xF5, 0x5B, 0xA5, 0x7E,
722
  0x31, 0xCC, 0x7A, 0x71, 0x35, 0xC8, 0x86,
723
  0xEF, 0xB4, 0x31, 0x8A, 0xED, 0x6A, 0x1E,
724
  0x01, 0x2D, 0x9E, 0x68, 0x32, 0xA9, 0x07,
725
  0x60, 0x0A, 0x91, 0x81, 0x30, 0xC4, 0x6D,
726
  0xC7, 0x78, 0xF9, 0x71, 0xAD, 0x00, 0x38,
727
  0x09, 0x29, 0x99, 0xA3, 0x33, 0xCB, 0x8B,
728
  0x7A, 0x1A, 0x1D, 0xB9, 0x3D, 0x71, 0x40,
729
  0x00, 0x3C, 0x2A, 0x4E, 0xCE, 0xA9, 0xF9,
730
  0x8D, 0x0A, 0xCC, 0x0A, 0x82, 0x91, 0xCD,
731
  0xCE, 0xC9, 0x7D, 0xCF, 0x8E, 0xC9, 0xB5,
732
  0x5A, 0x7F, 0x88, 0xA4, 0x6B, 0x4D, 0xB5,
733
  0xA8, 0x51, 0xF4, 0x41, 0x82, 0xE1, 0xC6,
734
  0x8A, 0x00, 0x7E, 0x5E, 0x0D, 0xD9, 0x02,
735
  0x0B, 0xFD, 0x64, 0xB6, 0x45, 0x03, 0x6C,
736
  0x7A, 0x4E, 0x67, 0x7D, 0x2C, 0x38, 0x53,
737
  0x2A, 0x3A, 0x23, 0xBA, 0x44, 0x42, 0xCA,
738
  0xF5, 0x3E, 0xA6, 0x3B, 0xB4, 0x54, 0x32,
739
  0x9B, 0x76, 0x24, 0xC8, 0x91, 0x7B, 0xDD,
740
  0x64, 0xB1, 0xC0, 0xFD, 0x4C, 0xB3, 0x8E,
741
  0x8C, 0x33, 0x4C, 0x70, 0x1C, 0x3A, 0xCD,
742
  0xAD, 0x06, 0x57, 0xFC, 0xCF, 0xEC, 0x71,
743
  0x9B, 0x1F, 0x5C, 0x3E, 0x4E, 0x46, 0x04,
744
  0x1F, 0x38, 0x81, 0x47, 0xFB, 0x4C, 0xFD,
745
  0xB4, 0x77, 0xA5, 0x24, 0x71, 0xF7, 0xA9,
746
  0xA9, 0x69, 0x10, 0xB8, 0x55, 0x32, 0x2E,
747
  0xDB, 0x63, 0x40, 0xD8, 0xA0, 0x0E, 0xF0,
748
  0x92, 0x35, 0x05, 0x11, 0xE3, 0x0A, 0xBE,
749
  0xC1, 0xFF, 0xF9, 0xE3, 0xA2, 0x6E, 0x7F,
750
  0xB2, 0x9F, 0x8C, 0x18, 0x30, 0x23, 0xC3,
751
  0x58, 0x7E, 0x38, 0xDA, 0x00, 0x77, 0xD9,
752
  0xB4, 0x76, 0x3E, 0x4E, 0x4B, 0x94, 0xB2,
753
  0xBB, 0xC1, 0x94, 0xC6, 0x65, 0x1E, 0x77,
754
  0xCA, 0xF9, 0x92, 0xEE, 0xAA, 0xC0, 0x23,
755
  0x2A, 0x28, 0x1B, 0xF6, 0xB3, 0xA7, 0x39,
756
  0xC1, 0x22, 0x61, 0x16, 0x82, 0x0A, 0xE8,
757
  0xDB, 0x58, 0x47, 0xA6, 0x7C, 0xBE, 0xF9,
758
  0xC9, 0x09, 0x1B, 0x46, 0x2D, 0x53, 0x8C,
759
  0xD7, 0x2B, 0x03, 0x74, 0x6A, 0xE7, 0x7F,
760
  0x5E, 0x62, 0x29, 0x2C, 0x31, 0x15, 0x62,
761
  0xA8, 0x46, 0x50, 0x5D, 0xC8, 0x2D, 0xB8,
762
  0x54, 0x33, 0x8A, 0xE4, 0x9F, 0x52, 0x35,
763
  0xC9, 0x5B, 0x91, 0x17, 0x8C, 0xCF, 0x2D,
764
  0xD5, 0xCA, 0xCE, 0xF4, 0x03, 0xEC, 0x9D,
765
  0x18, 0x10, 0xC6, 0x27, 0x2B, 0x04, 0x5B,
766
  0x3B, 0x71, 0xF9, 0xDC, 0x6B, 0x80, 0xD6,
767
  0x3F, 0xDD, 0x4A, 0x8E, 0x9A, 0xDB, 0x1E,
768
  0x69, 0x62, 0xA6, 0x95, 0x26, 0xD4, 0x31,
769
  0x61, 0xC1, 0xA4, 0x1D, 0x57, 0x0D, 0x79,
770
  0x38, 0xDA, 0xD4, 0xA4, 0x0E, 0x32, 0x9C,
771
  0xCF, 0xF4, 0x6A, 0xAA, 0x36, 0xAD, 0x00,
772
  0x4C, 0xF6, 0x00, 0xC8, 0x38, 0x1E, 0x42,
773
  0x5A, 0x31, 0xD9, 0x51, 0xAE, 0x64, 0xFD,
774
  0xB2, 0x3F, 0xCE, 0xC9, 0x50, 0x9D, 0x43,
775
  0x68, 0x7F, 0xEB, 0x69, 0xED, 0xD1, 0xCC,
776
  0x5E, 0x0B, 0x8C, 0xC3, 0xBD, 0xF6, 0x4B,
777
  0x10, 0xEF, 0x86, 0xB6, 0x31, 0x42, 0xA3,
778
  0xAB, 0x88, 0x29, 0x55, 0x5B, 0x2F, 0x74,
779
  0x7C, 0x93, 0x26, 0x65, 0xCB, 0x2C, 0x0F,
780
  0x1C, 0xC0, 0x1B, 0xD7, 0x02, 0x29, 0x38,
781
  0x88, 0x39, 0xD2, 0xAF, 0x05, 0xE4, 0x54,
782
  0x50, 0x4A, 0xC7, 0x8B, 0x75, 0x82, 0x82,
783
  0x28, 0x46, 0xC0, 0xBA, 0x35, 0xC3, 0x5F,
784
  0x5C, 0x59, 0x16, 0x0C, 0xC0, 0x46, 0xFD,
785
  0x82, 0x51, 0x54, 0x1F, 0xC6, 0x8C, 0x9C,
786
  0x86, 0xB0, 0x22, 0xBB, 0x70, 0x99, 0x87,
787
  0x6A, 0x46, 0x0E, 0x74, 0x51, 0xA8, 0xA9,
788
  0x31, 0x09, 0x70, 0x3F, 0xEE, 0x1C, 0x21,
789
  0x7E, 0x6C, 0x38, 0x26, 0xE5, 0x2C, 0x51,
790
  0xAA, 0x69, 0x1E, 0x0E, 0x42, 0x3C, 0xFC,
791
  0x99, 0xE9, 0xE3, 0x16, 0x50, 0xC1, 0x21,
792
  0x7B, 0x62, 0x48, 0x16, 0xCD, 0xAD, 0x9A,
793
  0x95, 0xF9, 0xD5, 0xB8, 0x01, 0x94, 0x88,
794
  0xD9, 0xC0, 0xA0, 0xA1, 0xFE, 0x30, 0x75,
795
  0xA5, 0x77, 0xE2, 0x31, 0x83, 0xF8, 0x1D,
796
  0x4A, 0x3F, 0x2F, 0xA4, 0x57, 0x1E, 0xFC,
797
  0x8C, 0xE0, 0xBA, 0x8A, 0x4F, 0xE8, 0xB6,
798
  0x85, 0x5D, 0xFE, 0x72, 0xB0, 0xA6, 0x6E,
799
  0xDE, 0xD2, 0xFB, 0xAB, 0xFB, 0xE5, 0x8A,
800
  0x30, 0xFA, 0xFA, 0xBE, 0x1C, 0x5D, 0x71,
801
  0xA8, 0x7E, 0x2F, 0x74, 0x1E, 0xF8, 0xC1,
802
  0xFE, 0x86, 0xFE, 0xA6, 0xBB, 0xFD, 0xE5,
803
  0x30, 0x67, 0x7F, 0x0D, 0x97, 0xD1, 0x1D,
804
  0x49, 0xF7, 0xA8, 0x44, 0x3D, 0x08, 0x22,
805
  0xE5, 0x06, 0xA9, 0xF4, 0x61, 0x4E, 0x01,
806
  0x1E, 0x2A, 0x94, 0x83, 0x8F, 0xF8, 0x8C,
807
  0xD6, 0x8C, 0x8B, 0xB7, 0xC5, 0xC6, 0x42,
808
  0x4C, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
809
  0xFF, 0xFF
810
};
811
812
static const unsigned char ffdhe_q_8192[] = {
813
  0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
814
  0xFF, 0xD6, 0xFC, 0x2A, 0x2C, 0x51, 0x5D,
815
  0xA5, 0x4D, 0x57, 0xEE, 0x2B, 0x10, 0x13,
816
  0x9E, 0x9E, 0x78, 0xEC, 0x5C, 0xE2, 0xC1,
817
  0xE7, 0x16, 0x9B, 0x4A, 0xD4, 0xF0, 0x9B,
818
  0x20, 0x8A, 0x32, 0x19, 0xFD, 0xE6, 0x49,
819
  0xCE, 0xE7, 0x12, 0x4D, 0x9F, 0x7C, 0xBE,
820
  0x97, 0xF1, 0xB1, 0xB1, 0x86, 0x3A, 0xEC,
821
  0x7B, 0x40, 0xD9, 0x01, 0x57, 0x62, 0x30,
822
  0xBD, 0x69, 0xEF, 0x8F, 0x6A, 0xEA, 0xFE,
823
  0xB2, 0xB0, 0x92, 0x19, 0xFA, 0x8F, 0xAF,
824
  0x83, 0x37, 0x68, 0x42, 0xB1, 0xB2, 0xAA,
825
  0x9E, 0xF6, 0x8D, 0x79, 0xDA, 0xAB, 0x89,
826
  0xAF, 0x3F, 0xAB, 0xE4, 0x9A, 0xCC, 0x27,
827
  0x86, 0x38, 0x70, 0x73, 0x45, 0xBB, 0xF1,
828
  0x53, 0x44, 0xED, 0x79, 0xF7, 0xF4, 0x39,
829
  0x0E, 0xF8, 0xAC, 0x50, 0x9B, 0x56, 0xF3,
830
  0x9A, 0x98, 0x56, 0x65, 0x27, 0xA4, 0x1D,
831
  0x3C, 0xBD, 0x5E, 0x05, 0x58, 0xC1, 0x59,
832
  0x92, 0x7D, 0xB0, 0xE8, 0x84, 0x54, 0xA5,
833
  0xD9, 0x64, 0x71, 0xFD, 0xDC, 0xB5, 0x6D,
834
  0x5B, 0xB0, 0x6B, 0xFA, 0x34, 0x0E, 0xA7,
835
  0xA1, 0x51, 0xEF, 0x1C, 0xA6, 0xFA, 0x57,
836
  0x2B, 0x76, 0xF3, 0xB1, 0xB9, 0x5D, 0x8C,
837
  0x85, 0x83, 0xD3, 0xE4, 0x77, 0x05, 0x36,
838
  0xB8, 0x4F, 0x01, 0x7E, 0x70, 0xE6, 0xFB,
839
  0xF1, 0x76, 0x60, 0x1A, 0x02, 0x66, 0x94,
840
  0x1A, 0x17, 0xB0, 0xC8, 0xB9, 0x7F, 0x4E,
841
  0x74, 0xC2, 0xC1, 0xFF, 0xC7, 0x27, 0x89,
842
  0x19, 0x77, 0x79, 0x40, 0xC1, 0xE1, 0xFF,
843
  0x1D, 0x8D, 0xA6, 0x37, 0xD6, 0xB9, 0x9D,
844
  0xDA, 0xFE, 0x5E, 0x17, 0x61, 0x10, 0x02,
845
  0xE2, 0xC7, 0x78, 0xC1, 0xBE, 0x8B, 0x41,
846
  0xD9, 0x63, 0x79, 0xA5, 0x13, 0x60, 0xD9,
847
  0x77, 0xFD, 0x44, 0x35, 0xA1, 0x1C, 0x30,
848
  0x8F, 0xE7, 0xEE, 0x6F, 0x1A, 0xAD, 0x9D,
849
  0xB2, 0x8C, 0x81, 0xAD, 0xDE, 0x1A, 0x7A,
850
  0x6F, 0x7C, 0xCE, 0x01, 0x1C, 0x30, 0xDA,
851
  0x37, 0xE4, 0xEB, 0x73, 0x64, 0x83, 0xBD,
852
  0x6C, 0x8E, 0x93, 0x48, 0xFB, 0xFB, 0xF7,
853
  0x2C, 0xC6, 0x58, 0x7D, 0x60, 0xC3, 0x6C,
854
  0x8E, 0x57, 0x7F, 0x09, 0x84, 0xC2, 0x89,
855
  0xC9, 0x38, 0x5A, 0x09, 0x86, 0x49, 0xDE,
856
  0x21, 0xBC, 0xA2, 0x7A, 0x7E, 0xA2, 0x29,
857
  0x71, 0x6B, 0xA6, 0xE9, 0xB2, 0x79, 0x71,
858
  0x0F, 0x38, 0xFA, 0xA5, 0xFF, 0xAE, 0x57,
859
  0x41, 0x55, 0xCE, 0x4E, 0xFB, 0x4F, 0x74,
860
  0x36, 0x95, 0xE2, 0x91, 0x1B, 0x1D, 0x06,
861
  0xD5, 0xE2, 0x90, 0xCB, 0xCD, 0x86, 0xF5,
862
  0x6D, 0x0E, 0xDF, 0xCD, 0x21, 0x6A, 0xE2,
863
  0x24, 0x27, 0x05, 0x5E, 0x68, 0x35, 0xFD,
864
  0x29, 0xEE, 0xF7, 0x9E, 0x0D, 0x90, 0x77,
865
  0x1F, 0xEA, 0xCE, 0xBE, 0x12, 0xF2, 0x0E,
866
  0x95, 0xB3, 0x4F, 0x0F, 0x78, 0xB7, 0x37,
867
  0xA9, 0x61, 0x8B, 0x26, 0xFA, 0x7D, 0xBC,
868
  0x98, 0x74, 0xF2, 0x72, 0xC4, 0x2B, 0xDB,
869
  0x56, 0x3E, 0xAF, 0xA1, 0x6B, 0x4F, 0xB6,
870
  0x8C, 0x3B, 0xB1, 0xE7, 0x8E, 0xAA, 0x81,
871
  0xA0, 0x02, 0x43, 0xFA, 0xAD, 0xD2, 0xBF,
872
  0x18, 0xE6, 0x3D, 0x38, 0x9A, 0xE4, 0x43,
873
  0x77, 0xDA, 0x18, 0xC5, 0x76, 0xB5, 0x0F,
874
  0x00, 0x96, 0xCF, 0x34, 0x19, 0x54, 0x83,
875
  0xB0, 0x05, 0x48, 0xC0, 0x98, 0x62, 0x36,
876
  0xE3, 0xBC, 0x7C, 0xB8, 0xD6, 0x80, 0x1C,
877
  0x04, 0x94, 0xCC, 0xD1, 0x99, 0xE5, 0xC5,
878
  0xBD, 0x0D, 0x0E, 0xDC, 0x9E, 0xB8, 0xA0,
879
  0x00, 0x1E, 0x15, 0x27, 0x67, 0x54, 0xFC,
880
  0xC6, 0x85, 0x66, 0x05, 0x41, 0x48, 0xE6,
881
  0xE7, 0x64, 0xBE, 0xE7, 0xC7, 0x64, 0xDA,
882
  0xAD, 0x3F, 0xC4, 0x52, 0x35, 0xA6, 0xDA,
883
  0xD4, 0x28, 0xFA, 0x20, 0xC1, 0x70, 0xE3,
884
  0x45, 0x00, 0x3F, 0x2F, 0x06, 0xEC, 0x81,
885
  0x05, 0xFE, 0xB2, 0x5B, 0x22, 0x81, 0xB6,
886
  0x3D, 0x27, 0x33, 0xBE, 0x96, 0x1C, 0x29,
887
  0x95, 0x1D, 0x11, 0xDD, 0x22, 0x21, 0x65,
888
  0x7A, 0x9F, 0x53, 0x1D, 0xDA, 0x2A, 0x19,
889
  0x4D, 0xBB, 0x12, 0x64, 0x48, 0xBD, 0xEE,
890
  0xB2, 0x58, 0xE0, 0x7E, 0xA6, 0x59, 0xC7,
891
  0x46, 0x19, 0xA6, 0x38, 0x0E, 0x1D, 0x66,
892
  0xD6, 0x83, 0x2B, 0xFE, 0x67, 0xF6, 0x38,
893
  0xCD, 0x8F, 0xAE, 0x1F, 0x27, 0x23, 0x02,
894
  0x0F, 0x9C, 0x40, 0xA3, 0xFD, 0xA6, 0x7E,
895
  0xDA, 0x3B, 0xD2, 0x92, 0x38, 0xFB, 0xD4,
896
  0xD4, 0xB4, 0x88, 0x5C, 0x2A, 0x99, 0x17,
897
  0x6D, 0xB1, 0xA0, 0x6C, 0x50, 0x07, 0x78,
898
  0x49, 0x1A, 0x82, 0x88, 0xF1, 0x85, 0x5F,
899
  0x60, 0xFF, 0xFC, 0xF1, 0xD1, 0x37, 0x3F,
900
  0xD9, 0x4F, 0xC6, 0x0C, 0x18, 0x11, 0xE1,
901
  0xAC, 0x3F, 0x1C, 0x6D, 0x00, 0x3B, 0xEC,
902
  0xDA, 0x3B, 0x1F, 0x27, 0x25, 0xCA, 0x59,
903
  0x5D, 0xE0, 0xCA, 0x63, 0x32, 0x8F, 0x3B,
904
  0xE5, 0x7C, 0xC9, 0x77, 0x55, 0x60, 0x11,
905
  0x95, 0x14, 0x0D, 0xFB, 0x59, 0xD3, 0x9C,
906
  0xE0, 0x91, 0x30, 0x8B, 0x41, 0x05, 0x74,
907
  0x6D, 0xAC, 0x23, 0xD3, 0x3E, 0x5F, 0x7C,
908
  0xE4, 0x84, 0x8D, 0xA3, 0x16, 0xA9, 0xC6,
909
  0x6B, 0x95, 0x81, 0xBA, 0x35, 0x73, 0xBF,
910
  0xAF, 0x31, 0x14, 0x96, 0x18, 0x8A, 0xB1,
911
  0x54, 0x23, 0x28, 0x2E, 0xE4, 0x16, 0xDC,
912
  0x2A, 0x19, 0xC5, 0x72, 0x4F, 0xA9, 0x1A,
913
  0xE4, 0xAD, 0xC8, 0x8B, 0xC6, 0x67, 0x96,
914
  0xEA, 0xE5, 0x67, 0x7A, 0x01, 0xF6, 0x4E,
915
  0x8C, 0x08, 0x63, 0x13, 0x95, 0x82, 0x2D,
916
  0x9D, 0xB8, 0xFC, 0xEE, 0x35, 0xC0, 0x6B,
917
  0x1F, 0xEE, 0xA5, 0x47, 0x4D, 0x6D, 0x8F,
918
  0x34, 0xB1, 0x53, 0x4A, 0x93, 0x6A, 0x18,
919
  0xB0, 0xE0, 0xD2, 0x0E, 0xAB, 0x86, 0xBC,
920
  0x9C, 0x6D, 0x6A, 0x52, 0x07, 0x19, 0x4E,
921
  0x67, 0xFA, 0x35, 0x55, 0x1B, 0x56, 0x80,
922
  0x26, 0x7B, 0x00, 0x64, 0x1C, 0x0F, 0x21,
923
  0x2D, 0x18, 0xEC, 0xA8, 0xD7, 0x32, 0x7E,
924
  0xD9, 0x1F, 0xE7, 0x64, 0xA8, 0x4E, 0xA1,
925
  0xB4, 0x3F, 0xF5, 0xB4, 0xF6, 0xE8, 0xE6,
926
  0x2F, 0x05, 0xC6, 0x61, 0xDE, 0xFB, 0x25,
927
  0x88, 0x77, 0xC3, 0x5B, 0x18, 0xA1, 0x51,
928
  0xD5, 0xC4, 0x14, 0xAA, 0xAD, 0x97, 0xBA,
929
  0x3E, 0x49, 0x93, 0x32, 0xE5, 0x96, 0x07,
930
  0x8E, 0x60, 0x0D, 0xEB, 0x81, 0x14, 0x9C,
931
  0x44, 0x1C, 0xE9, 0x57, 0x82, 0xF2, 0x2A,
932
  0x28, 0x25, 0x63, 0xC5, 0xBA, 0xC1, 0x41,
933
  0x14, 0x23, 0x60, 0x5D, 0x1A, 0xE1, 0xAF,
934
  0xAE, 0x2C, 0x8B, 0x06, 0x60, 0x23, 0x7E,
935
  0xC1, 0x28, 0xAA, 0x0F, 0xE3, 0x46, 0x4E,
936
  0x43, 0x58, 0x11, 0x5D, 0xB8, 0x4C, 0xC3,
937
  0xB5, 0x23, 0x07, 0x3A, 0x28, 0xD4, 0x54,
938
  0x98, 0x84, 0xB8, 0x1F, 0xF7, 0x0E, 0x10,
939
  0xBF, 0x36, 0x1C, 0x13, 0x72, 0x96, 0x28,
940
  0xD5, 0x34, 0x8F, 0x07, 0x21, 0x1E, 0x7E,
941
  0x4C, 0xF4, 0xF1, 0x8B, 0x28, 0x60, 0x90,
942
  0xBD, 0xB1, 0x24, 0x0B, 0x66, 0xD6, 0xCD,
943
  0x4A, 0xFC, 0xEA, 0xDC, 0x00, 0xCA, 0x44,
944
  0x6C, 0xE0, 0x50, 0x50, 0xFF, 0x18, 0x3A,
945
  0xD2, 0xBB, 0xF1, 0x18, 0xC1, 0xFC, 0x0E,
946
  0xA5, 0x1F, 0x97, 0xD2, 0x2B, 0x8F, 0x7E,
947
  0x46, 0x70, 0x5D, 0x45, 0x27, 0xF4, 0x5B,
948
  0x42, 0xAE, 0xFF, 0x39, 0x58, 0x53, 0x37,
949
  0x6F, 0x69, 0x7D, 0xD5, 0xFD, 0xF2, 0xC5,
950
  0x18, 0x7D, 0x7D, 0x5F, 0x0E, 0x2E, 0xB8,
951
  0xD4, 0x3F, 0x17, 0xBA, 0x0F, 0x7C, 0x60,
952
  0xFF, 0x43, 0x7F, 0x53, 0x5D, 0xFE, 0xF2,
953
  0x98, 0x33, 0xBF, 0x86, 0xCB, 0xE8, 0x8E,
954
  0xA4, 0xFB, 0xD4, 0x22, 0x1E, 0x84, 0x11,
955
  0x72, 0x83, 0x54, 0xFA, 0x30, 0xA7, 0x00,
956
  0x8F, 0x15, 0x4A, 0x41, 0xC7, 0xFC, 0x46,
957
  0x6B, 0x46, 0x45, 0xDB, 0xE2, 0xE3, 0x21,
958
  0x26, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
959
  0xFF, 0xFF
960
};
961
962
const gnutls_datum_t gnutls_ffdhe_8192_group_prime = {
963
  (void *)ffdhe_params_8192, sizeof(ffdhe_params_8192)
964
};
965
966
const gnutls_datum_t gnutls_ffdhe_8192_group_q = {
967
  (void *)ffdhe_q_8192, sizeof(ffdhe_q_8192)
968
};
969
970
const gnutls_datum_t gnutls_ffdhe_8192_group_generator = {
971
  (void *)&ffdhe_generator, sizeof(ffdhe_generator)
972
};
973
974
const unsigned int gnutls_ffdhe_8192_key_bits = 512;
975
976
static const unsigned char modp_generator = 0x02;
977
978
static const unsigned char modp_params_2048[] = {
979
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
980
  0xFF, 0xC9, 0x0F, 0xDA, 0xA2, 0x21, 0x68,
981
  0xC2, 0x34, 0xC4, 0xC6, 0x62, 0x8B, 0x80,
982
  0xDC, 0x1C, 0xD1, 0x29, 0x02, 0x4E, 0x08,
983
  0x8A, 0x67, 0xCC, 0x74, 0x02, 0x0B, 0xBE,
984
  0xA6, 0x3B, 0x13, 0x9B, 0x22, 0x51, 0x4A,
985
  0x08, 0x79, 0x8E, 0x34, 0x04, 0xDD, 0xEF,
986
  0x95, 0x19, 0xB3, 0xCD, 0x3A, 0x43, 0x1B,
987
  0x30, 0x2B, 0x0A, 0x6D, 0xF2, 0x5F, 0x14,
988
  0x37, 0x4F, 0xE1, 0x35, 0x6D, 0x6D, 0x51,
989
  0xC2, 0x45, 0xE4, 0x85, 0xB5, 0x76, 0x62,
990
  0x5E, 0x7E, 0xC6, 0xF4, 0x4C, 0x42, 0xE9,
991
  0xA6, 0x37, 0xED, 0x6B, 0x0B, 0xFF, 0x5C,
992
  0xB6, 0xF4, 0x06, 0xB7, 0xED, 0xEE, 0x38,
993
  0x6B, 0xFB, 0x5A, 0x89, 0x9F, 0xA5, 0xAE,
994
  0x9F, 0x24, 0x11, 0x7C, 0x4B, 0x1F, 0xE6,
995
  0x49, 0x28, 0x66, 0x51, 0xEC, 0xE4, 0x5B,
996
  0x3D, 0xC2, 0x00, 0x7C, 0xB8, 0xA1, 0x63,
997
  0xBF, 0x05, 0x98, 0xDA, 0x48, 0x36, 0x1C,
998
  0x55, 0xD3, 0x9A, 0x69, 0x16, 0x3F, 0xA8,
999
  0xFD, 0x24, 0xCF, 0x5F, 0x83, 0x65, 0x5D,
1000
  0x23, 0xDC, 0xA3, 0xAD, 0x96, 0x1C, 0x62,
1001
  0xF3, 0x56, 0x20, 0x85, 0x52, 0xBB, 0x9E,
1002
  0xD5, 0x29, 0x07, 0x70, 0x96, 0x96, 0x6D,
1003
  0x67, 0x0C, 0x35, 0x4E, 0x4A, 0xBC, 0x98,
1004
  0x04, 0xF1, 0x74, 0x6C, 0x08, 0xCA, 0x18,
1005
  0x21, 0x7C, 0x32, 0x90, 0x5E, 0x46, 0x2E,
1006
  0x36, 0xCE, 0x3B, 0xE3, 0x9E, 0x77, 0x2C,
1007
  0x18, 0x0E, 0x86, 0x03, 0x9B, 0x27, 0x83,
1008
  0xA2, 0xEC, 0x07, 0xA2, 0x8F, 0xB5, 0xC5,
1009
  0x5D, 0xF0, 0x6F, 0x4C, 0x52, 0xC9, 0xDE,
1010
  0x2B, 0xCB, 0xF6, 0x95, 0x58, 0x17, 0x18,
1011
  0x39, 0x95, 0x49, 0x7C, 0xEA, 0x95, 0x6A,
1012
  0xE5, 0x15, 0xD2, 0x26, 0x18, 0x98, 0xFA,
1013
  0x05, 0x10, 0x15, 0x72, 0x8E, 0x5A, 0x8A,
1014
  0xAC, 0xAA, 0x68, 0xFF, 0xFF, 0xFF, 0xFF,
1015
  0xFF, 0xFF, 0xFF, 0xFF
1016
};
1017
1018
static const unsigned char modp_q_2048[] = {
1019
  0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
1020
  0xFF, 0xE4, 0x87, 0xED, 0x51, 0x10, 0xB4,
1021
  0x61, 0x1A, 0x62, 0x63, 0x31, 0x45, 0xC0,
1022
  0x6E, 0x0E, 0x68, 0x94, 0x81, 0x27, 0x04,
1023
  0x45, 0x33, 0xE6, 0x3A, 0x01, 0x05, 0xDF,
1024
  0x53, 0x1D, 0x89, 0xCD, 0x91, 0x28, 0xA5,
1025
  0x04, 0x3C, 0xC7, 0x1A, 0x02, 0x6E, 0xF7,
1026
  0xCA, 0x8C, 0xD9, 0xE6, 0x9D, 0x21, 0x8D,
1027
  0x98, 0x15, 0x85, 0x36, 0xF9, 0x2F, 0x8A,
1028
  0x1B, 0xA7, 0xF0, 0x9A, 0xB6, 0xB6, 0xA8,
1029
  0xE1, 0x22, 0xF2, 0x42, 0xDA, 0xBB, 0x31,
1030
  0x2F, 0x3F, 0x63, 0x7A, 0x26, 0x21, 0x74,
1031
  0xD3, 0x1B, 0xF6, 0xB5, 0x85, 0xFF, 0xAE,
1032
  0x5B, 0x7A, 0x03, 0x5B, 0xF6, 0xF7, 0x1C,
1033
  0x35, 0xFD, 0xAD, 0x44, 0xCF, 0xD2, 0xD7,
1034
  0x4F, 0x92, 0x08, 0xBE, 0x25, 0x8F, 0xF3,
1035
  0x24, 0x94, 0x33, 0x28, 0xF6, 0x72, 0x2D,
1036
  0x9E, 0xE1, 0x00, 0x3E, 0x5C, 0x50, 0xB1,
1037
  0xDF, 0x82, 0xCC, 0x6D, 0x24, 0x1B, 0x0E,
1038
  0x2A, 0xE9, 0xCD, 0x34, 0x8B, 0x1F, 0xD4,
1039
  0x7E, 0x92, 0x67, 0xAF, 0xC1, 0xB2, 0xAE,
1040
  0x91, 0xEE, 0x51, 0xD6, 0xCB, 0x0E, 0x31,
1041
  0x79, 0xAB, 0x10, 0x42, 0xA9, 0x5D, 0xCF,
1042
  0x6A, 0x94, 0x83, 0xB8, 0x4B, 0x4B, 0x36,
1043
  0xB3, 0x86, 0x1A, 0xA7, 0x25, 0x5E, 0x4C,
1044
  0x02, 0x78, 0xBA, 0x36, 0x04, 0x65, 0x0C,
1045
  0x10, 0xBE, 0x19, 0x48, 0x2F, 0x23, 0x17,
1046
  0x1B, 0x67, 0x1D, 0xF1, 0xCF, 0x3B, 0x96,
1047
  0x0C, 0x07, 0x43, 0x01, 0xCD, 0x93, 0xC1,
1048
  0xD1, 0x76, 0x03, 0xD1, 0x47, 0xDA, 0xE2,
1049
  0xAE, 0xF8, 0x37, 0xA6, 0x29, 0x64, 0xEF,
1050
  0x15, 0xE5, 0xFB, 0x4A, 0xAC, 0x0B, 0x8C,
1051
  0x1C, 0xCA, 0xA4, 0xBE, 0x75, 0x4A, 0xB5,
1052
  0x72, 0x8A, 0xE9, 0x13, 0x0C, 0x4C, 0x7D,
1053
  0x02, 0x88, 0x0A, 0xB9, 0x47, 0x2D, 0x45,
1054
  0x56, 0x55, 0x34, 0x7F, 0xFF, 0xFF, 0xFF,
1055
  0xFF, 0xFF, 0xFF, 0xFF
1056
};
1057
1058
const gnutls_datum_t gnutls_modp_2048_group_prime = {
1059
  (void *)modp_params_2048, sizeof(modp_params_2048)
1060
};
1061
1062
const gnutls_datum_t gnutls_modp_2048_group_q = {
1063
  (void *)modp_q_2048, sizeof(modp_q_2048)
1064
};
1065
1066
const gnutls_datum_t gnutls_modp_2048_group_generator = {
1067
  (void *)&modp_generator, sizeof(modp_generator)
1068
};
1069
1070
const unsigned int gnutls_modp_2048_key_bits = 256;
1071
1072
static const unsigned char modp_params_3072[] = {
1073
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
1074
  0xFF, 0xC9, 0x0F, 0xDA, 0xA2, 0x21, 0x68,
1075
  0xC2, 0x34, 0xC4, 0xC6, 0x62, 0x8B, 0x80,
1076
  0xDC, 0x1C, 0xD1, 0x29, 0x02, 0x4E, 0x08,
1077
  0x8A, 0x67, 0xCC, 0x74, 0x02, 0x0B, 0xBE,
1078
  0xA6, 0x3B, 0x13, 0x9B, 0x22, 0x51, 0x4A,
1079
  0x08, 0x79, 0x8E, 0x34, 0x04, 0xDD, 0xEF,
1080
  0x95, 0x19, 0xB3, 0xCD, 0x3A, 0x43, 0x1B,
1081
  0x30, 0x2B, 0x0A, 0x6D, 0xF2, 0x5F, 0x14,
1082
  0x37, 0x4F, 0xE1, 0x35, 0x6D, 0x6D, 0x51,
1083
  0xC2, 0x45, 0xE4, 0x85, 0xB5, 0x76, 0x62,
1084
  0x5E, 0x7E, 0xC6, 0xF4, 0x4C, 0x42, 0xE9,
1085
  0xA6, 0x37, 0xED, 0x6B, 0x0B, 0xFF, 0x5C,
1086
  0xB6, 0xF4, 0x06, 0xB7, 0xED, 0xEE, 0x38,
1087
  0x6B, 0xFB, 0x5A, 0x89, 0x9F, 0xA5, 0xAE,
1088
  0x9F, 0x24, 0x11, 0x7C, 0x4B, 0x1F, 0xE6,
1089
  0x49, 0x28, 0x66, 0x51, 0xEC, 0xE4, 0x5B,
1090
  0x3D, 0xC2, 0x00, 0x7C, 0xB8, 0xA1, 0x63,
1091
  0xBF, 0x05, 0x98, 0xDA, 0x48, 0x36, 0x1C,
1092
  0x55, 0xD3, 0x9A, 0x69, 0x16, 0x3F, 0xA8,
1093
  0xFD, 0x24, 0xCF, 0x5F, 0x83, 0x65, 0x5D,
1094
  0x23, 0xDC, 0xA3, 0xAD, 0x96, 0x1C, 0x62,
1095
  0xF3, 0x56, 0x20, 0x85, 0x52, 0xBB, 0x9E,
1096
  0xD5, 0x29, 0x07, 0x70, 0x96, 0x96, 0x6D,
1097
  0x67, 0x0C, 0x35, 0x4E, 0x4A, 0xBC, 0x98,
1098
  0x04, 0xF1, 0x74, 0x6C, 0x08, 0xCA, 0x18,
1099
  0x21, 0x7C, 0x32, 0x90, 0x5E, 0x46, 0x2E,
1100
  0x36, 0xCE, 0x3B, 0xE3, 0x9E, 0x77, 0x2C,
1101
  0x18, 0x0E, 0x86, 0x03, 0x9B, 0x27, 0x83,
1102
  0xA2, 0xEC, 0x07, 0xA2, 0x8F, 0xB5, 0xC5,
1103
  0x5D, 0xF0, 0x6F, 0x4C, 0x52, 0xC9, 0xDE,
1104
  0x2B, 0xCB, 0xF6, 0x95, 0x58, 0x17, 0x18,
1105
  0x39, 0x95, 0x49, 0x7C, 0xEA, 0x95, 0x6A,
1106
  0xE5, 0x15, 0xD2, 0x26, 0x18, 0x98, 0xFA,
1107
  0x05, 0x10, 0x15, 0x72, 0x8E, 0x5A, 0x8A,
1108
  0xAA, 0xC4, 0x2D, 0xAD, 0x33, 0x17, 0x0D,
1109
  0x04, 0x50, 0x7A, 0x33, 0xA8, 0x55, 0x21,
1110
  0xAB, 0xDF, 0x1C, 0xBA, 0x64, 0xEC, 0xFB,
1111
  0x85, 0x04, 0x58, 0xDB, 0xEF, 0x0A, 0x8A,
1112
  0xEA, 0x71, 0x57, 0x5D, 0x06, 0x0C, 0x7D,
1113
  0xB3, 0x97, 0x0F, 0x85, 0xA6, 0xE1, 0xE4,
1114
  0xC7, 0xAB, 0xF5, 0xAE, 0x8C, 0xDB, 0x09,
1115
  0x33, 0xD7, 0x1E, 0x8C, 0x94, 0xE0, 0x4A,
1116
  0x25, 0x61, 0x9D, 0xCE, 0xE3, 0xD2, 0x26,
1117
  0x1A, 0xD2, 0xEE, 0x6B, 0xF1, 0x2F, 0xFA,
1118
  0x06, 0xD9, 0x8A, 0x08, 0x64, 0xD8, 0x76,
1119
  0x02, 0x73, 0x3E, 0xC8, 0x6A, 0x64, 0x52,
1120
  0x1F, 0x2B, 0x18, 0x17, 0x7B, 0x20, 0x0C,
1121
  0xBB, 0xE1, 0x17, 0x57, 0x7A, 0x61, 0x5D,
1122
  0x6C, 0x77, 0x09, 0x88, 0xC0, 0xBA, 0xD9,
1123
  0x46, 0xE2, 0x08, 0xE2, 0x4F, 0xA0, 0x74,
1124
  0xE5, 0xAB, 0x31, 0x43, 0xDB, 0x5B, 0xFC,
1125
  0xE0, 0xFD, 0x10, 0x8E, 0x4B, 0x82, 0xD1,
1126
  0x20, 0xA9, 0x3A, 0xD2, 0xCA, 0xFF, 0xFF,
1127
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
1128
};
1129
1130
static const unsigned char modp_q_3072[] = {
1131
  0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
1132
  0xFF, 0xE4, 0x87, 0xED, 0x51, 0x10, 0xB4,
1133
  0x61, 0x1A, 0x62, 0x63, 0x31, 0x45, 0xC0,
1134
  0x6E, 0x0E, 0x68, 0x94, 0x81, 0x27, 0x04,
1135
  0x45, 0x33, 0xE6, 0x3A, 0x01, 0x05, 0xDF,
1136
  0x53, 0x1D, 0x89, 0xCD, 0x91, 0x28, 0xA5,
1137
  0x04, 0x3C, 0xC7, 0x1A, 0x02, 0x6E, 0xF7,
1138
  0xCA, 0x8C, 0xD9, 0xE6, 0x9D, 0x21, 0x8D,
1139
  0x98, 0x15, 0x85, 0x36, 0xF9, 0x2F, 0x8A,
1140
  0x1B, 0xA7, 0xF0, 0x9A, 0xB6, 0xB6, 0xA8,
1141
  0xE1, 0x22, 0xF2, 0x42, 0xDA, 0xBB, 0x31,
1142
  0x2F, 0x3F, 0x63, 0x7A, 0x26, 0x21, 0x74,
1143
  0xD3, 0x1B, 0xF6, 0xB5, 0x85, 0xFF, 0xAE,
1144
  0x5B, 0x7A, 0x03, 0x5B, 0xF6, 0xF7, 0x1C,
1145
  0x35, 0xFD, 0xAD, 0x44, 0xCF, 0xD2, 0xD7,
1146
  0x4F, 0x92, 0x08, 0xBE, 0x25, 0x8F, 0xF3,
1147
  0x24, 0x94, 0x33, 0x28, 0xF6, 0x72, 0x2D,
1148
  0x9E, 0xE1, 0x00, 0x3E, 0x5C, 0x50, 0xB1,
1149
  0xDF, 0x82, 0xCC, 0x6D, 0x24, 0x1B, 0x0E,
1150
  0x2A, 0xE9, 0xCD, 0x34, 0x8B, 0x1F, 0xD4,
1151
  0x7E, 0x92, 0x67, 0xAF, 0xC1, 0xB2, 0xAE,
1152
  0x91, 0xEE, 0x51, 0xD6, 0xCB, 0x0E, 0x31,
1153
  0x79, 0xAB, 0x10, 0x42, 0xA9, 0x5D, 0xCF,
1154
  0x6A, 0x94, 0x83, 0xB8, 0x4B, 0x4B, 0x36,
1155
  0xB3, 0x86, 0x1A, 0xA7, 0x25, 0x5E, 0x4C,
1156
  0x02, 0x78, 0xBA, 0x36, 0x04, 0x65, 0x0C,
1157
  0x10, 0xBE, 0x19, 0x48, 0x2F, 0x23, 0x17,
1158
  0x1B, 0x67, 0x1D, 0xF1, 0xCF, 0x3B, 0x96,
1159
  0x0C, 0x07, 0x43, 0x01, 0xCD, 0x93, 0xC1,
1160
  0xD1, 0x76, 0x03, 0xD1, 0x47, 0xDA, 0xE2,
1161
  0xAE, 0xF8, 0x37, 0xA6, 0x29, 0x64, 0xEF,
1162
  0x15, 0xE5, 0xFB, 0x4A, 0xAC, 0x0B, 0x8C,
1163
  0x1C, 0xCA, 0xA4, 0xBE, 0x75, 0x4A, 0xB5,
1164
  0x72, 0x8A, 0xE9, 0x13, 0x0C, 0x4C, 0x7D,
1165
  0x02, 0x88, 0x0A, 0xB9, 0x47, 0x2D, 0x45,
1166
  0x55, 0x62, 0x16, 0xD6, 0x99, 0x8B, 0x86,
1167
  0x82, 0x28, 0x3D, 0x19, 0xD4, 0x2A, 0x90,
1168
  0xD5, 0xEF, 0x8E, 0x5D, 0x32, 0x76, 0x7D,
1169
  0xC2, 0x82, 0x2C, 0x6D, 0xF7, 0x85, 0x45,
1170
  0x75, 0x38, 0xAB, 0xAE, 0x83, 0x06, 0x3E,
1171
  0xD9, 0xCB, 0x87, 0xC2, 0xD3, 0x70, 0xF2,
1172
  0x63, 0xD5, 0xFA, 0xD7, 0x46, 0x6D, 0x84,
1173
  0x99, 0xEB, 0x8F, 0x46, 0x4A, 0x70, 0x25,
1174
  0x12, 0xB0, 0xCE, 0xE7, 0x71, 0xE9, 0x13,
1175
  0x0D, 0x69, 0x77, 0x35, 0xF8, 0x97, 0xFD,
1176
  0x03, 0x6C, 0xC5, 0x04, 0x32, 0x6C, 0x3B,
1177
  0x01, 0x39, 0x9F, 0x64, 0x35, 0x32, 0x29,
1178
  0x0F, 0x95, 0x8C, 0x0B, 0xBD, 0x90, 0x06,
1179
  0x5D, 0xF0, 0x8B, 0xAB, 0xBD, 0x30, 0xAE,
1180
  0xB6, 0x3B, 0x84, 0xC4, 0x60, 0x5D, 0x6C,
1181
  0xA3, 0x71, 0x04, 0x71, 0x27, 0xD0, 0x3A,
1182
  0x72, 0xD5, 0x98, 0xA1, 0xED, 0xAD, 0xFE,
1183
  0x70, 0x7E, 0x88, 0x47, 0x25, 0xC1, 0x68,
1184
  0x90, 0x54, 0x9D, 0x69, 0x65, 0x7F, 0xFF,
1185
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
1186
};
1187
1188
const gnutls_datum_t gnutls_modp_3072_group_prime = {
1189
  (void *)modp_params_3072, sizeof(modp_params_3072)
1190
};
1191
1192
const gnutls_datum_t gnutls_modp_3072_group_q = {
1193
  (void *)modp_q_3072, sizeof(modp_q_3072)
1194
};
1195
1196
const gnutls_datum_t gnutls_modp_3072_group_generator = {
1197
  (void *)&modp_generator, sizeof(modp_generator)
1198
};
1199
1200
const unsigned int gnutls_modp_3072_key_bits = 276;
1201
1202
static const unsigned char modp_params_4096[] = {
1203
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
1204
  0xFF, 0xC9, 0x0F, 0xDA, 0xA2, 0x21, 0x68,
1205
  0xC2, 0x34, 0xC4, 0xC6, 0x62, 0x8B, 0x80,
1206
  0xDC, 0x1C, 0xD1, 0x29, 0x02, 0x4E, 0x08,
1207
  0x8A, 0x67, 0xCC, 0x74, 0x02, 0x0B, 0xBE,
1208
  0xA6, 0x3B, 0x13, 0x9B, 0x22, 0x51, 0x4A,
1209
  0x08, 0x79, 0x8E, 0x34, 0x04, 0xDD, 0xEF,
1210
  0x95, 0x19, 0xB3, 0xCD, 0x3A, 0x43, 0x1B,
1211
  0x30, 0x2B, 0x0A, 0x6D, 0xF2, 0x5F, 0x14,
1212
  0x37, 0x4F, 0xE1, 0x35, 0x6D, 0x6D, 0x51,
1213
  0xC2, 0x45, 0xE4, 0x85, 0xB5, 0x76, 0x62,
1214
  0x5E, 0x7E, 0xC6, 0xF4, 0x4C, 0x42, 0xE9,
1215
  0xA6, 0x37, 0xED, 0x6B, 0x0B, 0xFF, 0x5C,
1216
  0xB6, 0xF4, 0x06, 0xB7, 0xED, 0xEE, 0x38,
1217
  0x6B, 0xFB, 0x5A, 0x89, 0x9F, 0xA5, 0xAE,
1218
  0x9F, 0x24, 0x11, 0x7C, 0x4B, 0x1F, 0xE6,
1219
  0x49, 0x28, 0x66, 0x51, 0xEC, 0xE4, 0x5B,
1220
  0x3D, 0xC2, 0x00, 0x7C, 0xB8, 0xA1, 0x63,
1221
  0xBF, 0x05, 0x98, 0xDA, 0x48, 0x36, 0x1C,
1222
  0x55, 0xD3, 0x9A, 0x69, 0x16, 0x3F, 0xA8,
1223
  0xFD, 0x24, 0xCF, 0x5F, 0x83, 0x65, 0x5D,
1224
  0x23, 0xDC, 0xA3, 0xAD, 0x96, 0x1C, 0x62,
1225
  0xF3, 0x56, 0x20, 0x85, 0x52, 0xBB, 0x9E,
1226
  0xD5, 0x29, 0x07, 0x70, 0x96, 0x96, 0x6D,
1227
  0x67, 0x0C, 0x35, 0x4E, 0x4A, 0xBC, 0x98,
1228
  0x04, 0xF1, 0x74, 0x6C, 0x08, 0xCA, 0x18,
1229
  0x21, 0x7C, 0x32, 0x90, 0x5E, 0x46, 0x2E,
1230
  0x36, 0xCE, 0x3B, 0xE3, 0x9E, 0x77, 0x2C,
1231
  0x18, 0x0E, 0x86, 0x03, 0x9B, 0x27, 0x83,
1232
  0xA2, 0xEC, 0x07, 0xA2, 0x8F, 0xB5, 0xC5,
1233
  0x5D, 0xF0, 0x6F, 0x4C, 0x52, 0xC9, 0xDE,
1234
  0x2B, 0xCB, 0xF6, 0x95, 0x58, 0x17, 0x18,
1235
  0x39, 0x95, 0x49, 0x7C, 0xEA, 0x95, 0x6A,
1236
  0xE5, 0x15, 0xD2, 0x26, 0x18, 0x98, 0xFA,
1237
  0x05, 0x10, 0x15, 0x72, 0x8E, 0x5A, 0x8A,
1238
  0xAA, 0xC4, 0x2D, 0xAD, 0x33, 0x17, 0x0D,
1239
  0x04, 0x50, 0x7A, 0x33, 0xA8, 0x55, 0x21,
1240
  0xAB, 0xDF, 0x1C, 0xBA, 0x64, 0xEC, 0xFB,
1241
  0x85, 0x04, 0x58, 0xDB, 0xEF, 0x0A, 0x8A,
1242
  0xEA, 0x71, 0x57, 0x5D, 0x06, 0x0C, 0x7D,
1243
  0xB3, 0x97, 0x0F, 0x85, 0xA6, 0xE1, 0xE4,
1244
  0xC7, 0xAB, 0xF5, 0xAE, 0x8C, 0xDB, 0x09,
1245
  0x33, 0xD7, 0x1E, 0x8C, 0x94, 0xE0, 0x4A,
1246
  0x25, 0x61, 0x9D, 0xCE, 0xE3, 0xD2, 0x26,
1247
  0x1A, 0xD2, 0xEE, 0x6B, 0xF1, 0x2F, 0xFA,
1248
  0x06, 0xD9, 0x8A, 0x08, 0x64, 0xD8, 0x76,
1249
  0x02, 0x73, 0x3E, 0xC8, 0x6A, 0x64, 0x52,
1250
  0x1F, 0x2B, 0x18, 0x17, 0x7B, 0x20, 0x0C,
1251
  0xBB, 0xE1, 0x17, 0x57, 0x7A, 0x61, 0x5D,
1252
  0x6C, 0x77, 0x09, 0x88, 0xC0, 0xBA, 0xD9,
1253
  0x46, 0xE2, 0x08, 0xE2, 0x4F, 0xA0, 0x74,
1254
  0xE5, 0xAB, 0x31, 0x43, 0xDB, 0x5B, 0xFC,
1255
  0xE0, 0xFD, 0x10, 0x8E, 0x4B, 0x82, 0xD1,
1256
  0x20, 0xA9, 0x21, 0x08, 0x01, 0x1A, 0x72,
1257
  0x3C, 0x12, 0xA7, 0x87, 0xE6, 0xD7, 0x88,
1258
  0x71, 0x9A, 0x10, 0xBD, 0xBA, 0x5B, 0x26,
1259
  0x99, 0xC3, 0x27, 0x18, 0x6A, 0xF4, 0xE2,
1260
  0x3C, 0x1A, 0x94, 0x68, 0x34, 0xB6, 0x15,
1261
  0x0B, 0xDA, 0x25, 0x83, 0xE9, 0xCA, 0x2A,
1262
  0xD4, 0x4C, 0xE8, 0xDB, 0xBB, 0xC2, 0xDB,
1263
  0x04, 0xDE, 0x8E, 0xF9, 0x2E, 0x8E, 0xFC,
1264
  0x14, 0x1F, 0xBE, 0xCA, 0xA6, 0x28, 0x7C,
1265
  0x59, 0x47, 0x4E, 0x6B, 0xC0, 0x5D, 0x99,
1266
  0xB2, 0x96, 0x4F, 0xA0, 0x90, 0xC3, 0xA2,
1267
  0x23, 0x3B, 0xA1, 0x86, 0x51, 0x5B, 0xE7,
1268
  0xED, 0x1F, 0x61, 0x29, 0x70, 0xCE, 0xE2,
1269
  0xD7, 0xAF, 0xB8, 0x1B, 0xDD, 0x76, 0x21,
1270
  0x70, 0x48, 0x1C, 0xD0, 0x06, 0x91, 0x27,
1271
  0xD5, 0xB0, 0x5A, 0xA9, 0x93, 0xB4, 0xEA,
1272
  0x98, 0x8D, 0x8F, 0xDD, 0xC1, 0x86, 0xFF,
1273
  0xB7, 0xDC, 0x90, 0xA6, 0xC0, 0x8F, 0x4D,
1274
  0xF4, 0x35, 0xC9, 0x34, 0x06, 0x31, 0x99,
1275
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
1276
  0xFF
1277
};
1278
1279
static const unsigned char modp_q_4096[] = {
1280
  0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
1281
  0xFF, 0xE4, 0x87, 0xED, 0x51, 0x10, 0xB4,
1282
  0x61, 0x1A, 0x62, 0x63, 0x31, 0x45, 0xC0,
1283
  0x6E, 0x0E, 0x68, 0x94, 0x81, 0x27, 0x04,
1284
  0x45, 0x33, 0xE6, 0x3A, 0x01, 0x05, 0xDF,
1285
  0x53, 0x1D, 0x89, 0xCD, 0x91, 0x28, 0xA5,
1286
  0x04, 0x3C, 0xC7, 0x1A, 0x02, 0x6E, 0xF7,
1287
  0xCA, 0x8C, 0xD9, 0xE6, 0x9D, 0x21, 0x8D,
1288
  0x98, 0x15, 0x85, 0x36, 0xF9, 0x2F, 0x8A,
1289
  0x1B, 0xA7, 0xF0, 0x9A, 0xB6, 0xB6, 0xA8,
1290
  0xE1, 0x22, 0xF2, 0x42, 0xDA, 0xBB, 0x31,
1291
  0x2F, 0x3F, 0x63, 0x7A, 0x26, 0x21, 0x74,
1292
  0xD3, 0x1B, 0xF6, 0xB5, 0x85, 0xFF, 0xAE,
1293
  0x5B, 0x7A, 0x03, 0x5B, 0xF6, 0xF7, 0x1C,
1294
  0x35, 0xFD, 0xAD, 0x44, 0xCF, 0xD2, 0xD7,
1295
  0x4F, 0x92, 0x08, 0xBE, 0x25, 0x8F, 0xF3,
1296
  0x24, 0x94, 0x33, 0x28, 0xF6, 0x72, 0x2D,
1297
  0x9E, 0xE1, 0x00, 0x3E, 0x5C, 0x50, 0xB1,
1298
  0xDF, 0x82, 0xCC, 0x6D, 0x24, 0x1B, 0x0E,
1299
  0x2A, 0xE9, 0xCD, 0x34, 0x8B, 0x1F, 0xD4,
1300
  0x7E, 0x92, 0x67, 0xAF, 0xC1, 0xB2, 0xAE,
1301
  0x91, 0xEE, 0x51, 0xD6, 0xCB, 0x0E, 0x31,
1302
  0x79, 0xAB, 0x10, 0x42, 0xA9, 0x5D, 0xCF,
1303
  0x6A, 0x94, 0x83, 0xB8, 0x4B, 0x4B, 0x36,
1304
  0xB3, 0x86, 0x1A, 0xA7, 0x25, 0x5E, 0x4C,
1305
  0x02, 0x78, 0xBA, 0x36, 0x04, 0x65, 0x0C,
1306
  0x10, 0xBE, 0x19, 0x48, 0x2F, 0x23, 0x17,
1307
  0x1B, 0x67, 0x1D, 0xF1, 0xCF, 0x3B, 0x96,
1308
  0x0C, 0x07, 0x43, 0x01, 0xCD, 0x93, 0xC1,
1309
  0xD1, 0x76, 0x03, 0xD1, 0x47, 0xDA, 0xE2,
1310
  0xAE, 0xF8, 0x37, 0xA6, 0x29, 0x64, 0xEF,
1311
  0x15, 0xE5, 0xFB, 0x4A, 0xAC, 0x0B, 0x8C,
1312
  0x1C, 0xCA, 0xA4, 0xBE, 0x75, 0x4A, 0xB5,
1313
  0x72, 0x8A, 0xE9, 0x13, 0x0C, 0x4C, 0x7D,
1314
  0x02, 0x88, 0x0A, 0xB9, 0x47, 0x2D, 0x45,
1315
  0x55, 0x62, 0x16, 0xD6, 0x99, 0x8B, 0x86,
1316
  0x82, 0x28, 0x3D, 0x19, 0xD4, 0x2A, 0x90,
1317
  0xD5, 0xEF, 0x8E, 0x5D, 0x32, 0x76, 0x7D,
1318
  0xC2, 0x82, 0x2C, 0x6D, 0xF7, 0x85, 0x45,
1319
  0x75, 0x38, 0xAB, 0xAE, 0x83, 0x06, 0x3E,
1320
  0xD9, 0xCB, 0x87, 0xC2, 0xD3, 0x70, 0xF2,
1321
  0x63, 0xD5, 0xFA, 0xD7, 0x46, 0x6D, 0x84,
1322
  0x99, 0xEB, 0x8F, 0x46, 0x4A, 0x70, 0x25,
1323
  0x12, 0xB0, 0xCE, 0xE7, 0x71, 0xE9, 0x13,
1324
  0x0D, 0x69, 0x77, 0x35, 0xF8, 0x97, 0xFD,
1325
  0x03, 0x6C, 0xC5, 0x04, 0x32, 0x6C, 0x3B,
1326
  0x01, 0x39, 0x9F, 0x64, 0x35, 0x32, 0x29,
1327
  0x0F, 0x95, 0x8C, 0x0B, 0xBD, 0x90, 0x06,
1328
  0x5D, 0xF0, 0x8B, 0xAB, 0xBD, 0x30, 0xAE,
1329
  0xB6, 0x3B, 0x84, 0xC4, 0x60, 0x5D, 0x6C,
1330
  0xA3, 0x71, 0x04, 0x71, 0x27, 0xD0, 0x3A,
1331
  0x72, 0xD5, 0x98, 0xA1, 0xED, 0xAD, 0xFE,
1332
  0x70, 0x7E, 0x88, 0x47, 0x25, 0xC1, 0x68,
1333
  0x90, 0x54, 0x90, 0x84, 0x00, 0x8D, 0x39,
1334
  0x1E, 0x09, 0x53, 0xC3, 0xF3, 0x6B, 0xC4,
1335
  0x38, 0xCD, 0x08, 0x5E, 0xDD, 0x2D, 0x93,
1336
  0x4C, 0xE1, 0x93, 0x8C, 0x35, 0x7A, 0x71,
1337
  0x1E, 0x0D, 0x4A, 0x34, 0x1A, 0x5B, 0x0A,
1338
  0x85, 0xED, 0x12, 0xC1, 0xF4, 0xE5, 0x15,
1339
  0x6A, 0x26, 0x74, 0x6D, 0xDD, 0xE1, 0x6D,
1340
  0x82, 0x6F, 0x47, 0x7C, 0x97, 0x47, 0x7E,
1341
  0x0A, 0x0F, 0xDF, 0x65, 0x53, 0x14, 0x3E,
1342
  0x2C, 0xA3, 0xA7, 0x35, 0xE0, 0x2E, 0xCC,
1343
  0xD9, 0x4B, 0x27, 0xD0, 0x48, 0x61, 0xD1,
1344
  0x11, 0x9D, 0xD0, 0xC3, 0x28, 0xAD, 0xF3,
1345
  0xF6, 0x8F, 0xB0, 0x94, 0xB8, 0x67, 0x71,
1346
  0x6B, 0xD7, 0xDC, 0x0D, 0xEE, 0xBB, 0x10,
1347
  0xB8, 0x24, 0x0E, 0x68, 0x03, 0x48, 0x93,
1348
  0xEA, 0xD8, 0x2D, 0x54, 0xC9, 0xDA, 0x75,
1349
  0x4C, 0x46, 0xC7, 0xEE, 0xE0, 0xC3, 0x7F,
1350
  0xDB, 0xEE, 0x48, 0x53, 0x60, 0x47, 0xA6,
1351
  0xFA, 0x1A, 0xE4, 0x9A, 0x03, 0x18, 0xCC,
1352
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
1353
  0xFF
1354
};
1355
1356
const gnutls_datum_t gnutls_modp_4096_group_prime = {
1357
  (void *)modp_params_4096, sizeof(modp_params_4096)
1358
};
1359
1360
const gnutls_datum_t gnutls_modp_4096_group_q = {
1361
  (void *)modp_q_4096, sizeof(modp_q_4096)
1362
};
1363
1364
const gnutls_datum_t gnutls_modp_4096_group_generator = {
1365
  (void *)&modp_generator, sizeof(modp_generator)
1366
};
1367
1368
const unsigned int gnutls_modp_4096_key_bits = 336;
1369
1370
static const unsigned char modp_params_6144[] = {
1371
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
1372
  0xFF, 0xC9, 0x0F, 0xDA, 0xA2, 0x21, 0x68,
1373
  0xC2, 0x34, 0xC4, 0xC6, 0x62, 0x8B, 0x80,
1374
  0xDC, 0x1C, 0xD1, 0x29, 0x02, 0x4E, 0x08,
1375
  0x8A, 0x67, 0xCC, 0x74, 0x02, 0x0B, 0xBE,
1376
  0xA6, 0x3B, 0x13, 0x9B, 0x22, 0x51, 0x4A,
1377
  0x08, 0x79, 0x8E, 0x34, 0x04, 0xDD, 0xEF,
1378
  0x95, 0x19, 0xB3, 0xCD, 0x3A, 0x43, 0x1B,
1379
  0x30, 0x2B, 0x0A, 0x6D, 0xF2, 0x5F, 0x14,
1380
  0x37, 0x4F, 0xE1, 0x35, 0x6D, 0x6D, 0x51,
1381
  0xC2, 0x45, 0xE4, 0x85, 0xB5, 0x76, 0x62,
1382
  0x5E, 0x7E, 0xC6, 0xF4, 0x4C, 0x42, 0xE9,
1383
  0xA6, 0x37, 0xED, 0x6B, 0x0B, 0xFF, 0x5C,
1384
  0xB6, 0xF4, 0x06, 0xB7, 0xED, 0xEE, 0x38,
1385
  0x6B, 0xFB, 0x5A, 0x89, 0x9F, 0xA5, 0xAE,
1386
  0x9F, 0x24, 0x11, 0x7C, 0x4B, 0x1F, 0xE6,
1387
  0x49, 0x28, 0x66, 0x51, 0xEC, 0xE4, 0x5B,
1388
  0x3D, 0xC2, 0x00, 0x7C, 0xB8, 0xA1, 0x63,
1389
  0xBF, 0x05, 0x98, 0xDA, 0x48, 0x36, 0x1C,
1390
  0x55, 0xD3, 0x9A, 0x69, 0x16, 0x3F, 0xA8,
1391
  0xFD, 0x24, 0xCF, 0x5F, 0x83, 0x65, 0x5D,
1392
  0x23, 0xDC, 0xA3, 0xAD, 0x96, 0x1C, 0x62,
1393
  0xF3, 0x56, 0x20, 0x85, 0x52, 0xBB, 0x9E,
1394
  0xD5, 0x29, 0x07, 0x70, 0x96, 0x96, 0x6D,
1395
  0x67, 0x0C, 0x35, 0x4E, 0x4A, 0xBC, 0x98,
1396
  0x04, 0xF1, 0x74, 0x6C, 0x08, 0xCA, 0x18,
1397
  0x21, 0x7C, 0x32, 0x90, 0x5E, 0x46, 0x2E,
1398
  0x36, 0xCE, 0x3B, 0xE3, 0x9E, 0x77, 0x2C,
1399
  0x18, 0x0E, 0x86, 0x03, 0x9B, 0x27, 0x83,
1400
  0xA2, 0xEC, 0x07, 0xA2, 0x8F, 0xB5, 0xC5,
1401
  0x5D, 0xF0, 0x6F, 0x4C, 0x52, 0xC9, 0xDE,
1402
  0x2B, 0xCB, 0xF6, 0x95, 0x58, 0x17, 0x18,
1403
  0x39, 0x95, 0x49, 0x7C, 0xEA, 0x95, 0x6A,
1404
  0xE5, 0x15, 0xD2, 0x26, 0x18, 0x98, 0xFA,
1405
  0x05, 0x10, 0x15, 0x72, 0x8E, 0x5A, 0x8A,
1406
  0xAA, 0xC4, 0x2D, 0xAD, 0x33, 0x17, 0x0D,
1407
  0x04, 0x50, 0x7A, 0x33, 0xA8, 0x55, 0x21,
1408
  0xAB, 0xDF, 0x1C, 0xBA, 0x64, 0xEC, 0xFB,
1409
  0x85, 0x04, 0x58, 0xDB, 0xEF, 0x0A, 0x8A,
1410
  0xEA, 0x71, 0x57, 0x5D, 0x06, 0x0C, 0x7D,
1411
  0xB3, 0x97, 0x0F, 0x85, 0xA6, 0xE1, 0xE4,
1412
  0xC7, 0xAB, 0xF5, 0xAE, 0x8C, 0xDB, 0x09,
1413
  0x33, 0xD7, 0x1E, 0x8C, 0x94, 0xE0, 0x4A,
1414
  0x25, 0x61, 0x9D, 0xCE, 0xE3, 0xD2, 0x26,
1415
  0x1A, 0xD2, 0xEE, 0x6B, 0xF1, 0x2F, 0xFA,
1416
  0x06, 0xD9, 0x8A, 0x08, 0x64, 0xD8, 0x76,
1417
  0x02, 0x73, 0x3E, 0xC8, 0x6A, 0x64, 0x52,
1418
  0x1F, 0x2B, 0x18, 0x17, 0x7B, 0x20, 0x0C,
1419
  0xBB, 0xE1, 0x17, 0x57, 0x7A, 0x61, 0x5D,
1420
  0x6C, 0x77, 0x09, 0x88, 0xC0, 0xBA, 0xD9,
1421
  0x46, 0xE2, 0x08, 0xE2, 0x4F, 0xA0, 0x74,
1422
  0xE5, 0xAB, 0x31, 0x43, 0xDB, 0x5B, 0xFC,
1423
  0xE0, 0xFD, 0x10, 0x8E, 0x4B, 0x82, 0xD1,
1424
  0x20, 0xA9, 0x21, 0x08, 0x01, 0x1A, 0x72,
1425
  0x3C, 0x12, 0xA7, 0x87, 0xE6, 0xD7, 0x88,
1426
  0x71, 0x9A, 0x10, 0xBD, 0xBA, 0x5B, 0x26,
1427
  0x99, 0xC3, 0x27, 0x18, 0x6A, 0xF4, 0xE2,
1428
  0x3C, 0x1A, 0x94, 0x68, 0x34, 0xB6, 0x15,
1429
  0x0B, 0xDA, 0x25, 0x83, 0xE9, 0xCA, 0x2A,
1430
  0xD4, 0x4C, 0xE8, 0xDB, 0xBB, 0xC2, 0xDB,
1431
  0x04, 0xDE, 0x8E, 0xF9, 0x2E, 0x8E, 0xFC,
1432
  0x14, 0x1F, 0xBE, 0xCA, 0xA6, 0x28, 0x7C,
1433
  0x59, 0x47, 0x4E, 0x6B, 0xC0, 0x5D, 0x99,
1434
  0xB2, 0x96, 0x4F, 0xA0, 0x90, 0xC3, 0xA2,
1435
  0x23, 0x3B, 0xA1, 0x86, 0x51, 0x5B, 0xE7,
1436
  0xED, 0x1F, 0x61, 0x29, 0x70, 0xCE, 0xE2,
1437
  0xD7, 0xAF, 0xB8, 0x1B, 0xDD, 0x76, 0x21,
1438
  0x70, 0x48, 0x1C, 0xD0, 0x06, 0x91, 0x27,
1439
  0xD5, 0xB0, 0x5A, 0xA9, 0x93, 0xB4, 0xEA,
1440
  0x98, 0x8D, 0x8F, 0xDD, 0xC1, 0x86, 0xFF,
1441
  0xB7, 0xDC, 0x90, 0xA6, 0xC0, 0x8F, 0x4D,
1442
  0xF4, 0x35, 0xC9, 0x34, 0x02, 0x84, 0x92,
1443
  0x36, 0xC3, 0xFA, 0xB4, 0xD2, 0x7C, 0x70,
1444
  0x26, 0xC1, 0xD4, 0xDC, 0xB2, 0x60, 0x26,
1445
  0x46, 0xDE, 0xC9, 0x75, 0x1E, 0x76, 0x3D,
1446
  0xBA, 0x37, 0xBD, 0xF8, 0xFF, 0x94, 0x06,
1447
  0xAD, 0x9E, 0x53, 0x0E, 0xE5, 0xDB, 0x38,
1448
  0x2F, 0x41, 0x30, 0x01, 0xAE, 0xB0, 0x6A,
1449
  0x53, 0xED, 0x90, 0x27, 0xD8, 0x31, 0x17,
1450
  0x97, 0x27, 0xB0, 0x86, 0x5A, 0x89, 0x18,
1451
  0xDA, 0x3E, 0xDB, 0xEB, 0xCF, 0x9B, 0x14,
1452
  0xED, 0x44, 0xCE, 0x6C, 0xBA, 0xCE, 0xD4,
1453
  0xBB, 0x1B, 0xDB, 0x7F, 0x14, 0x47, 0xE6,
1454
  0xCC, 0x25, 0x4B, 0x33, 0x20, 0x51, 0x51,
1455
  0x2B, 0xD7, 0xAF, 0x42, 0x6F, 0xB8, 0xF4,
1456
  0x01, 0x37, 0x8C, 0xD2, 0xBF, 0x59, 0x83,
1457
  0xCA, 0x01, 0xC6, 0x4B, 0x92, 0xEC, 0xF0,
1458
  0x32, 0xEA, 0x15, 0xD1, 0x72, 0x1D, 0x03,
1459
  0xF4, 0x82, 0xD7, 0xCE, 0x6E, 0x74, 0xFE,
1460
  0xF6, 0xD5, 0x5E, 0x70, 0x2F, 0x46, 0x98,
1461
  0x0C, 0x82, 0xB5, 0xA8, 0x40, 0x31, 0x90,
1462
  0x0B, 0x1C, 0x9E, 0x59, 0xE7, 0xC9, 0x7F,
1463
  0xBE, 0xC7, 0xE8, 0xF3, 0x23, 0xA9, 0x7A,
1464
  0x7E, 0x36, 0xCC, 0x88, 0xBE, 0x0F, 0x1D,
1465
  0x45, 0xB7, 0xFF, 0x58, 0x5A, 0xC5, 0x4B,
1466
  0xD4, 0x07, 0xB2, 0x2B, 0x41, 0x54, 0xAA,
1467
  0xCC, 0x8F, 0x6D, 0x7E, 0xBF, 0x48, 0xE1,
1468
  0xD8, 0x14, 0xCC, 0x5E, 0xD2, 0x0F, 0x80,
1469
  0x37, 0xE0, 0xA7, 0x97, 0x15, 0xEE, 0xF2,
1470
  0x9B, 0xE3, 0x28, 0x06, 0xA1, 0xD5, 0x8B,
1471
  0xB7, 0xC5, 0xDA, 0x76, 0xF5, 0x50, 0xAA,
1472
  0x3D, 0x8A, 0x1F, 0xBF, 0xF0, 0xEB, 0x19,
1473
  0xCC, 0xB1, 0xA3, 0x13, 0xD5, 0x5C, 0xDA,
1474
  0x56, 0xC9, 0xEC, 0x2E, 0xF2, 0x96, 0x32,
1475
  0x38, 0x7F, 0xE8, 0xD7, 0x6E, 0x3C, 0x04,
1476
  0x68, 0x04, 0x3E, 0x8F, 0x66, 0x3F, 0x48,
1477
  0x60, 0xEE, 0x12, 0xBF, 0x2D, 0x5B, 0x0B,
1478
  0x74, 0x74, 0xD6, 0xE6, 0x94, 0xF9, 0x1E,
1479
  0x6D, 0xCC, 0x40, 0x24, 0xFF, 0xFF, 0xFF,
1480
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF
1481
};
1482
1483
static const unsigned char modp_q_6144[] = {
1484
  0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
1485
  0xFF, 0xE4, 0x87, 0xED, 0x51, 0x10, 0xB4,
1486
  0x61, 0x1A, 0x62, 0x63, 0x31, 0x45, 0xC0,
1487
  0x6E, 0x0E, 0x68, 0x94, 0x81, 0x27, 0x04,
1488
  0x45, 0x33, 0xE6, 0x3A, 0x01, 0x05, 0xDF,
1489
  0x53, 0x1D, 0x89, 0xCD, 0x91, 0x28, 0xA5,
1490
  0x04, 0x3C, 0xC7, 0x1A, 0x02, 0x6E, 0xF7,
1491
  0xCA, 0x8C, 0xD9, 0xE6, 0x9D, 0x21, 0x8D,
1492
  0x98, 0x15, 0x85, 0x36, 0xF9, 0x2F, 0x8A,
1493
  0x1B, 0xA7, 0xF0, 0x9A, 0xB6, 0xB6, 0xA8,
1494
  0xE1, 0x22, 0xF2, 0x42, 0xDA, 0xBB, 0x31,
1495
  0x2F, 0x3F, 0x63, 0x7A, 0x26, 0x21, 0x74,
1496
  0xD3, 0x1B, 0xF6, 0xB5, 0x85, 0xFF, 0xAE,
1497
  0x5B, 0x7A, 0x03, 0x5B, 0xF6, 0xF7, 0x1C,
1498
  0x35, 0xFD, 0xAD, 0x44, 0xCF, 0xD2, 0xD7,
1499
  0x4F, 0x92, 0x08, 0xBE, 0x25, 0x8F, 0xF3,
1500
  0x24, 0x94, 0x33, 0x28, 0xF6, 0x72, 0x2D,
1501
  0x9E, 0xE1, 0x00, 0x3E, 0x5C, 0x50, 0xB1,
1502
  0xDF, 0x82, 0xCC, 0x6D, 0x24, 0x1B, 0x0E,
1503
  0x2A, 0xE9, 0xCD, 0x34, 0x8B, 0x1F, 0xD4,
1504
  0x7E, 0x92, 0x67, 0xAF, 0xC1, 0xB2, 0xAE,
1505
  0x91, 0xEE, 0x51, 0xD6, 0xCB, 0x0E, 0x31,
1506
  0x79, 0xAB, 0x10, 0x42, 0xA9, 0x5D, 0xCF,
1507
  0x6A, 0x94, 0x83, 0xB8, 0x4B, 0x4B, 0x36,
1508
  0xB3, 0x86, 0x1A, 0xA7, 0x25, 0x5E, 0x4C,
1509
  0x02, 0x78, 0xBA, 0x36, 0x04, 0x65, 0x0C,
1510
  0x10, 0xBE, 0x19, 0x48, 0x2F, 0x23, 0x17,
1511
  0x1B, 0x67, 0x1D, 0xF1, 0xCF, 0x3B, 0x96,
1512
  0x0C, 0x07, 0x43, 0x01, 0xCD, 0x93, 0xC1,
1513
  0xD1, 0x76, 0x03, 0xD1, 0x47, 0xDA, 0xE2,
1514
  0xAE, 0xF8, 0x37, 0xA6, 0x29, 0x64, 0xEF,
1515
  0x15, 0xE5, 0xFB, 0x4A, 0xAC, 0x0B, 0x8C,
1516
  0x1C, 0xCA, 0xA4, 0xBE, 0x75, 0x4A, 0xB5,
1517
  0x72, 0x8A, 0xE9, 0x13, 0x0C, 0x4C, 0x7D,
1518
  0x02, 0x88, 0x0A, 0xB9, 0x47, 0x2D, 0x45,
1519
  0x55, 0x62, 0x16, 0xD6, 0x99, 0x8B, 0x86,
1520
  0x82, 0x28, 0x3D, 0x19, 0xD4, 0x2A, 0x90,
1521
  0xD5, 0xEF, 0x8E, 0x5D, 0x32, 0x76, 0x7D,
1522
  0xC2, 0x82, 0x2C, 0x6D, 0xF7, 0x85, 0x45,
1523
  0x75, 0x38, 0xAB, 0xAE, 0x83, 0x06, 0x3E,
1524
  0xD9, 0xCB, 0x87, 0xC2, 0xD3, 0x70, 0xF2,
1525
  0x63, 0xD5, 0xFA, 0xD7, 0x46, 0x6D, 0x84,
1526
  0x99, 0xEB, 0x8F, 0x46, 0x4A, 0x70, 0x25,
1527
  0x12, 0xB0, 0xCE, 0xE7, 0x71, 0xE9, 0x13,
1528
  0x0D, 0x69, 0x77, 0x35, 0xF8, 0x97, 0xFD,
1529
  0x03, 0x6C, 0xC5, 0x04, 0x32, 0x6C, 0x3B,
1530
  0x01, 0x39, 0x9F, 0x64, 0x35, 0x32, 0x29,
1531
  0x0F, 0x95, 0x8C, 0x0B, 0xBD, 0x90, 0x06,
1532
  0x5D, 0xF0, 0x8B, 0xAB, 0xBD, 0x30, 0xAE,
1533
  0xB6, 0x3B, 0x84, 0xC4, 0x60, 0x5D, 0x6C,
1534
  0xA3, 0x71, 0x04, 0x71, 0x27, 0xD0, 0x3A,
1535
  0x72, 0xD5, 0x98, 0xA1, 0xED, 0xAD, 0xFE,
1536
  0x70, 0x7E, 0x88, 0x47, 0x25, 0xC1, 0x68,
1537
  0x90, 0x54, 0x90, 0x84, 0x00, 0x8D, 0x39,
1538
  0x1E, 0x09, 0x53, 0xC3, 0xF3, 0x6B, 0xC4,
1539
  0x38, 0xCD, 0x08, 0x5E, 0xDD, 0x2D, 0x93,
1540
  0x4C, 0xE1, 0x93, 0x8C, 0x35, 0x7A, 0x71,
1541
  0x1E, 0x0D, 0x4A, 0x34, 0x1A, 0x5B, 0x0A,
1542
  0x85, 0xED, 0x12, 0xC1, 0xF4, 0xE5, 0x15,
1543
  0x6A, 0x26, 0x74, 0x6D, 0xDD, 0xE1, 0x6D,
1544
  0x82, 0x6F, 0x47, 0x7C, 0x97, 0x47, 0x7E,
1545
  0x0A, 0x0F, 0xDF, 0x65, 0x53, 0x14, 0x3E,
1546
  0x2C, 0xA3, 0xA7, 0x35, 0xE0, 0x2E, 0xCC,
1547
  0xD9, 0x4B, 0x27, 0xD0, 0x48, 0x61, 0xD1,
1548
  0x11, 0x9D, 0xD0, 0xC3, 0x28, 0xAD, 0xF3,
1549
  0xF6, 0x8F, 0xB0, 0x94, 0xB8, 0x67, 0x71,
1550
  0x6B, 0xD7, 0xDC, 0x0D, 0xEE, 0xBB, 0x10,
1551
  0xB8, 0x24, 0x0E, 0x68, 0x03, 0x48, 0x93,
1552
  0xEA, 0xD8, 0x2D, 0x54, 0xC9, 0xDA, 0x75,
1553
  0x4C, 0x46, 0xC7, 0xEE, 0xE0, 0xC3, 0x7F,
1554
  0xDB, 0xEE, 0x48, 0x53, 0x60, 0x47, 0xA6,
1555
  0xFA, 0x1A, 0xE4, 0x9A, 0x01, 0x42, 0x49,
1556
  0x1B, 0x61, 0xFD, 0x5A, 0x69, 0x3E, 0x38,
1557
  0x13, 0x60, 0xEA, 0x6E, 0x59, 0x30, 0x13,
1558
  0x23, 0x6F, 0x64, 0xBA, 0x8F, 0x3B, 0x1E,
1559
  0xDD, 0x1B, 0xDE, 0xFC, 0x7F, 0xCA, 0x03,
1560
  0x56, 0xCF, 0x29, 0x87, 0x72, 0xED, 0x9C,
1561
  0x17, 0xA0, 0x98, 0x00, 0xD7, 0x58, 0x35,
1562
  0x29, 0xF6, 0xC8, 0x13, 0xEC, 0x18, 0x8B,
1563
  0xCB, 0x93, 0xD8, 0x43, 0x2D, 0x44, 0x8C,
1564
  0x6D, 0x1F, 0x6D, 0xF5, 0xE7, 0xCD, 0x8A,
1565
  0x76, 0xA2, 0x67, 0x36, 0x5D, 0x67, 0x6A,
1566
  0x5D, 0x8D, 0xED, 0xBF, 0x8A, 0x23, 0xF3,
1567
  0x66, 0x12, 0xA5, 0x99, 0x90, 0x28, 0xA8,
1568
  0x95, 0xEB, 0xD7, 0xA1, 0x37, 0xDC, 0x7A,
1569
  0x00, 0x9B, 0xC6, 0x69, 0x5F, 0xAC, 0xC1,
1570
  0xE5, 0x00, 0xE3, 0x25, 0xC9, 0x76, 0x78,
1571
  0x19, 0x75, 0x0A, 0xE8, 0xB9, 0x0E, 0x81,
1572
  0xFA, 0x41, 0x6B, 0xE7, 0x37, 0x3A, 0x7F,
1573
  0x7B, 0x6A, 0xAF, 0x38, 0x17, 0xA3, 0x4C,
1574
  0x06, 0x41, 0x5A, 0xD4, 0x20, 0x18, 0xC8,
1575
  0x05, 0x8E, 0x4F, 0x2C, 0xF3, 0xE4, 0xBF,
1576
  0xDF, 0x63, 0xF4, 0x79, 0x91, 0xD4, 0xBD,
1577
  0x3F, 0x1B, 0x66, 0x44, 0x5F, 0x07, 0x8E,
1578
  0xA2, 0xDB, 0xFF, 0xAC, 0x2D, 0x62, 0xA5,
1579
  0xEA, 0x03, 0xD9, 0x15, 0xA0, 0xAA, 0x55,
1580
  0x66, 0x47, 0xB6, 0xBF, 0x5F, 0xA4, 0x70,
1581
  0xEC, 0x0A, 0x66, 0x2F, 0x69, 0x07, 0xC0,
1582
  0x1B, 0xF0, 0x53, 0xCB, 0x8A, 0xF7, 0x79,
1583
  0x4D, 0xF1, 0x94, 0x03, 0x50, 0xEA, 0xC5,
1584
  0xDB, 0xE2, 0xED, 0x3B, 0x7A, 0xA8, 0x55,
1585
  0x1E, 0xC5, 0x0F, 0xDF, 0xF8, 0x75, 0x8C,
1586
  0xE6, 0x58, 0xD1, 0x89, 0xEA, 0xAE, 0x6D,
1587
  0x2B, 0x64, 0xF6, 0x17, 0x79, 0x4B, 0x19,
1588
  0x1C, 0x3F, 0xF4, 0x6B, 0xB7, 0x1E, 0x02,
1589
  0x34, 0x02, 0x1F, 0x47, 0xB3, 0x1F, 0xA4,
1590
  0x30, 0x77, 0x09, 0x5F, 0x96, 0xAD, 0x85,
1591
  0xBA, 0x3A, 0x6B, 0x73, 0x4A, 0x7C, 0x8F,
1592
  0x36, 0xE6, 0x20, 0x12, 0x7F, 0xFF, 0xFF,
1593
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF
1594
};
1595
1596
const gnutls_datum_t gnutls_modp_6144_group_prime = {
1597
  (void *)modp_params_6144, sizeof(modp_params_6144)
1598
};
1599
1600
const gnutls_datum_t gnutls_modp_6144_group_q = {
1601
  (void *)modp_q_6144, sizeof(modp_q_6144)
1602
};
1603
1604
const gnutls_datum_t gnutls_modp_6144_group_generator = {
1605
  (void *)&modp_generator, sizeof(modp_generator)
1606
};
1607
1608
const unsigned int gnutls_modp_6144_key_bits = 376;
1609
1610
static const unsigned char modp_params_8192[] = {
1611
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
1612
  0xFF, 0xC9, 0x0F, 0xDA, 0xA2, 0x21, 0x68,
1613
  0xC2, 0x34, 0xC4, 0xC6, 0x62, 0x8B, 0x80,
1614
  0xDC, 0x1C, 0xD1, 0x29, 0x02, 0x4E, 0x08,
1615
  0x8A, 0x67, 0xCC, 0x74, 0x02, 0x0B, 0xBE,
1616
  0xA6, 0x3B, 0x13, 0x9B, 0x22, 0x51, 0x4A,
1617
  0x08, 0x79, 0x8E, 0x34, 0x04, 0xDD, 0xEF,
1618
  0x95, 0x19, 0xB3, 0xCD, 0x3A, 0x43, 0x1B,
1619
  0x30, 0x2B, 0x0A, 0x6D, 0xF2, 0x5F, 0x14,
1620
  0x37, 0x4F, 0xE1, 0x35, 0x6D, 0x6D, 0x51,
1621
  0xC2, 0x45, 0xE4, 0x85, 0xB5, 0x76, 0x62,
1622
  0x5E, 0x7E, 0xC6, 0xF4, 0x4C, 0x42, 0xE9,
1623
  0xA6, 0x37, 0xED, 0x6B, 0x0B, 0xFF, 0x5C,
1624
  0xB6, 0xF4, 0x06, 0xB7, 0xED, 0xEE, 0x38,
1625
  0x6B, 0xFB, 0x5A, 0x89, 0x9F, 0xA5, 0xAE,
1626
  0x9F, 0x24, 0x11, 0x7C, 0x4B, 0x1F, 0xE6,
1627
  0x49, 0x28, 0x66, 0x51, 0xEC, 0xE4, 0x5B,
1628
  0x3D, 0xC2, 0x00, 0x7C, 0xB8, 0xA1, 0x63,
1629
  0xBF, 0x05, 0x98, 0xDA, 0x48, 0x36, 0x1C,
1630
  0x55, 0xD3, 0x9A, 0x69, 0x16, 0x3F, 0xA8,
1631
  0xFD, 0x24, 0xCF, 0x5F, 0x83, 0x65, 0x5D,
1632
  0x23, 0xDC, 0xA3, 0xAD, 0x96, 0x1C, 0x62,
1633
  0xF3, 0x56, 0x20, 0x85, 0x52, 0xBB, 0x9E,
1634
  0xD5, 0x29, 0x07, 0x70, 0x96, 0x96, 0x6D,
1635
  0x67, 0x0C, 0x35, 0x4E, 0x4A, 0xBC, 0x98,
1636
  0x04, 0xF1, 0x74, 0x6C, 0x08, 0xCA, 0x18,
1637
  0x21, 0x7C, 0x32, 0x90, 0x5E, 0x46, 0x2E,
1638
  0x36, 0xCE, 0x3B, 0xE3, 0x9E, 0x77, 0x2C,
1639
  0x18, 0x0E, 0x86, 0x03, 0x9B, 0x27, 0x83,
1640
  0xA2, 0xEC, 0x07, 0xA2, 0x8F, 0xB5, 0xC5,
1641
  0x5D, 0xF0, 0x6F, 0x4C, 0x52, 0xC9, 0xDE,
1642
  0x2B, 0xCB, 0xF6, 0x95, 0x58, 0x17, 0x18,
1643
  0x39, 0x95, 0x49, 0x7C, 0xEA, 0x95, 0x6A,
1644
  0xE5, 0x15, 0xD2, 0x26, 0x18, 0x98, 0xFA,
1645
  0x05, 0x10, 0x15, 0x72, 0x8E, 0x5A, 0x8A,
1646
  0xAA, 0xC4, 0x2D, 0xAD, 0x33, 0x17, 0x0D,
1647
  0x04, 0x50, 0x7A, 0x33, 0xA8, 0x55, 0x21,
1648
  0xAB, 0xDF, 0x1C, 0xBA, 0x64, 0xEC, 0xFB,
1649
  0x85, 0x04, 0x58, 0xDB, 0xEF, 0x0A, 0x8A,
1650
  0xEA, 0x71, 0x57, 0x5D, 0x06, 0x0C, 0x7D,
1651
  0xB3, 0x97, 0x0F, 0x85, 0xA6, 0xE1, 0xE4,
1652
  0xC7, 0xAB, 0xF5, 0xAE, 0x8C, 0xDB, 0x09,
1653
  0x33, 0xD7, 0x1E, 0x8C, 0x94, 0xE0, 0x4A,
1654
  0x25, 0x61, 0x9D, 0xCE, 0xE3, 0xD2, 0x26,
1655
  0x1A, 0xD2, 0xEE, 0x6B, 0xF1, 0x2F, 0xFA,
1656
  0x06, 0xD9, 0x8A, 0x08, 0x64, 0xD8, 0x76,
1657
  0x02, 0x73, 0x3E, 0xC8, 0x6A, 0x64, 0x52,
1658
  0x1F, 0x2B, 0x18, 0x17, 0x7B, 0x20, 0x0C,
1659
  0xBB, 0xE1, 0x17, 0x57, 0x7A, 0x61, 0x5D,
1660
  0x6C, 0x77, 0x09, 0x88, 0xC0, 0xBA, 0xD9,
1661
  0x46, 0xE2, 0x08, 0xE2, 0x4F, 0xA0, 0x74,
1662
  0xE5, 0xAB, 0x31, 0x43, 0xDB, 0x5B, 0xFC,
1663
  0xE0, 0xFD, 0x10, 0x8E, 0x4B, 0x82, 0xD1,
1664
  0x20, 0xA9, 0x21, 0x08, 0x01, 0x1A, 0x72,
1665
  0x3C, 0x12, 0xA7, 0x87, 0xE6, 0xD7, 0x88,
1666
  0x71, 0x9A, 0x10, 0xBD, 0xBA, 0x5B, 0x26,
1667
  0x99, 0xC3, 0x27, 0x18, 0x6A, 0xF4, 0xE2,
1668
  0x3C, 0x1A, 0x94, 0x68, 0x34, 0xB6, 0x15,
1669
  0x0B, 0xDA, 0x25, 0x83, 0xE9, 0xCA, 0x2A,
1670
  0xD4, 0x4C, 0xE8, 0xDB, 0xBB, 0xC2, 0xDB,
1671
  0x04, 0xDE, 0x8E, 0xF9, 0x2E, 0x8E, 0xFC,
1672
  0x14, 0x1F, 0xBE, 0xCA, 0xA6, 0x28, 0x7C,
1673
  0x59, 0x47, 0x4E, 0x6B, 0xC0, 0x5D, 0x99,
1674
  0xB2, 0x96, 0x4F, 0xA0, 0x90, 0xC3, 0xA2,
1675
  0x23, 0x3B, 0xA1, 0x86, 0x51, 0x5B, 0xE7,
1676
  0xED, 0x1F, 0x61, 0x29, 0x70, 0xCE, 0xE2,
1677
  0xD7, 0xAF, 0xB8, 0x1B, 0xDD, 0x76, 0x21,
1678
  0x70, 0x48, 0x1C, 0xD0, 0x06, 0x91, 0x27,
1679
  0xD5, 0xB0, 0x5A, 0xA9, 0x93, 0xB4, 0xEA,
1680
  0x98, 0x8D, 0x8F, 0xDD, 0xC1, 0x86, 0xFF,
1681
  0xB7, 0xDC, 0x90, 0xA6, 0xC0, 0x8F, 0x4D,
1682
  0xF4, 0x35, 0xC9, 0x34, 0x02, 0x84, 0x92,
1683
  0x36, 0xC3, 0xFA, 0xB4, 0xD2, 0x7C, 0x70,
1684
  0x26, 0xC1, 0xD4, 0xDC, 0xB2, 0x60, 0x26,
1685
  0x46, 0xDE, 0xC9, 0x75, 0x1E, 0x76, 0x3D,
1686
  0xBA, 0x37, 0xBD, 0xF8, 0xFF, 0x94, 0x06,
1687
  0xAD, 0x9E, 0x53, 0x0E, 0xE5, 0xDB, 0x38,
1688
  0x2F, 0x41, 0x30, 0x01, 0xAE, 0xB0, 0x6A,
1689
  0x53, 0xED, 0x90, 0x27, 0xD8, 0x31, 0x17,
1690
  0x97, 0x27, 0xB0, 0x86, 0x5A, 0x89, 0x18,
1691
  0xDA, 0x3E, 0xDB, 0xEB, 0xCF, 0x9B, 0x14,
1692
  0xED, 0x44, 0xCE, 0x6C, 0xBA, 0xCE, 0xD4,
1693
  0xBB, 0x1B, 0xDB, 0x7F, 0x14, 0x47, 0xE6,
1694
  0xCC, 0x25, 0x4B, 0x33, 0x20, 0x51, 0x51,
1695
  0x2B, 0xD7, 0xAF, 0x42, 0x6F, 0xB8, 0xF4,
1696
  0x01, 0x37, 0x8C, 0xD2, 0xBF, 0x59, 0x83,
1697
  0xCA, 0x01, 0xC6, 0x4B, 0x92, 0xEC, 0xF0,
1698
  0x32, 0xEA, 0x15, 0xD1, 0x72, 0x1D, 0x03,
1699
  0xF4, 0x82, 0xD7, 0xCE, 0x6E, 0x74, 0xFE,
1700
  0xF6, 0xD5, 0x5E, 0x70, 0x2F, 0x46, 0x98,
1701
  0x0C, 0x82, 0xB5, 0xA8, 0x40, 0x31, 0x90,
1702
  0x0B, 0x1C, 0x9E, 0x59, 0xE7, 0xC9, 0x7F,
1703
  0xBE, 0xC7, 0xE8, 0xF3, 0x23, 0xA9, 0x7A,
1704
  0x7E, 0x36, 0xCC, 0x88, 0xBE, 0x0F, 0x1D,
1705
  0x45, 0xB7, 0xFF, 0x58, 0x5A, 0xC5, 0x4B,
1706
  0xD4, 0x07, 0xB2, 0x2B, 0x41, 0x54, 0xAA,
1707
  0xCC, 0x8F, 0x6D, 0x7E, 0xBF, 0x48, 0xE1,
1708
  0xD8, 0x14, 0xCC, 0x5E, 0xD2, 0x0F, 0x80,
1709
  0x37, 0xE0, 0xA7, 0x97, 0x15, 0xEE, 0xF2,
1710
  0x9B, 0xE3, 0x28, 0x06, 0xA1, 0xD5, 0x8B,
1711
  0xB7, 0xC5, 0xDA, 0x76, 0xF5, 0x50, 0xAA,
1712
  0x3D, 0x8A, 0x1F, 0xBF, 0xF0, 0xEB, 0x19,
1713
  0xCC, 0xB1, 0xA3, 0x13, 0xD5, 0x5C, 0xDA,
1714
  0x56, 0xC9, 0xEC, 0x2E, 0xF2, 0x96, 0x32,
1715
  0x38, 0x7F, 0xE8, 0xD7, 0x6E, 0x3C, 0x04,
1716
  0x68, 0x04, 0x3E, 0x8F, 0x66, 0x3F, 0x48,
1717
  0x60, 0xEE, 0x12, 0xBF, 0x2D, 0x5B, 0x0B,
1718
  0x74, 0x74, 0xD6, 0xE6, 0x94, 0xF9, 0x1E,
1719
  0x6D, 0xBE, 0x11, 0x59, 0x74, 0xA3, 0x92,
1720
  0x6F, 0x12, 0xFE, 0xE5, 0xE4, 0x38, 0x77,
1721
  0x7C, 0xB6, 0xA9, 0x32, 0xDF, 0x8C, 0xD8,
1722
  0xBE, 0xC4, 0xD0, 0x73, 0xB9, 0x31, 0xBA,
1723
  0x3B, 0xC8, 0x32, 0xB6, 0x8D, 0x9D, 0xD3,
1724
  0x00, 0x74, 0x1F, 0xA7, 0xBF, 0x8A, 0xFC,
1725
  0x47, 0xED, 0x25, 0x76, 0xF6, 0x93, 0x6B,
1726
  0xA4, 0x24, 0x66, 0x3A, 0xAB, 0x63, 0x9C,
1727
  0x5A, 0xE4, 0xF5, 0x68, 0x34, 0x23, 0xB4,
1728
  0x74, 0x2B, 0xF1, 0xC9, 0x78, 0x23, 0x8F,
1729
  0x16, 0xCB, 0xE3, 0x9D, 0x65, 0x2D, 0xE3,
1730
  0xFD, 0xB8, 0xBE, 0xFC, 0x84, 0x8A, 0xD9,
1731
  0x22, 0x22, 0x2E, 0x04, 0xA4, 0x03, 0x7C,
1732
  0x07, 0x13, 0xEB, 0x57, 0xA8, 0x1A, 0x23,
1733
  0xF0, 0xC7, 0x34, 0x73, 0xFC, 0x64, 0x6C,
1734
  0xEA, 0x30, 0x6B, 0x4B, 0xCB, 0xC8, 0x86,
1735
  0x2F, 0x83, 0x85, 0xDD, 0xFA, 0x9D, 0x4B,
1736
  0x7F, 0xA2, 0xC0, 0x87, 0xE8, 0x79, 0x68,
1737
  0x33, 0x03, 0xED, 0x5B, 0xDD, 0x3A, 0x06,
1738
  0x2B, 0x3C, 0xF5, 0xB3, 0xA2, 0x78, 0xA6,
1739
  0x6D, 0x2A, 0x13, 0xF8, 0x3F, 0x44, 0xF8,
1740
  0x2D, 0xDF, 0x31, 0x0E, 0xE0, 0x74, 0xAB,
1741
  0x6A, 0x36, 0x45, 0x97, 0xE8, 0x99, 0xA0,
1742
  0x25, 0x5D, 0xC1, 0x64, 0xF3, 0x1C, 0xC5,
1743
  0x08, 0x46, 0x85, 0x1D, 0xF9, 0xAB, 0x48,
1744
  0x19, 0x5D, 0xED, 0x7E, 0xA1, 0xB1, 0xD5,
1745
  0x10, 0xBD, 0x7E, 0xE7, 0x4D, 0x73, 0xFA,
1746
  0xF3, 0x6B, 0xC3, 0x1E, 0xCF, 0xA2, 0x68,
1747
  0x35, 0x90, 0x46, 0xF4, 0xEB, 0x87, 0x9F,
1748
  0x92, 0x40, 0x09, 0x43, 0x8B, 0x48, 0x1C,
1749
  0x6C, 0xD7, 0x88, 0x9A, 0x00, 0x2E, 0xD5,
1750
  0xEE, 0x38, 0x2B, 0xC9, 0x19, 0x0D, 0xA6,
1751
  0xFC, 0x02, 0x6E, 0x47, 0x95, 0x58, 0xE4,
1752
  0x47, 0x56, 0x77, 0xE9, 0xAA, 0x9E, 0x30,
1753
  0x50, 0xE2, 0x76, 0x56, 0x94, 0xDF, 0xC8,
1754
  0x1F, 0x56, 0xE8, 0x80, 0xB9, 0x6E, 0x71,
1755
  0x60, 0xC9, 0x80, 0xDD, 0x98, 0xED, 0xD3,
1756
  0xDF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
1757
  0xFF, 0xFF
1758
};
1759
1760
static const unsigned char modp_q_8192[] = {
1761
  0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
1762
  0xFF, 0xE4, 0x87, 0xED, 0x51, 0x10, 0xB4,
1763
  0x61, 0x1A, 0x62, 0x63, 0x31, 0x45, 0xC0,
1764
  0x6E, 0x0E, 0x68, 0x94, 0x81, 0x27, 0x04,
1765
  0x45, 0x33, 0xE6, 0x3A, 0x01, 0x05, 0xDF,
1766
  0x53, 0x1D, 0x89, 0xCD, 0x91, 0x28, 0xA5,
1767
  0x04, 0x3C, 0xC7, 0x1A, 0x02, 0x6E, 0xF7,
1768
  0xCA, 0x8C, 0xD9, 0xE6, 0x9D, 0x21, 0x8D,
1769
  0x98, 0x15, 0x85, 0x36, 0xF9, 0x2F, 0x8A,
1770
  0x1B, 0xA7, 0xF0, 0x9A, 0xB6, 0xB6, 0xA8,
1771
  0xE1, 0x22, 0xF2, 0x42, 0xDA, 0xBB, 0x31,
1772
  0x2F, 0x3F, 0x63, 0x7A, 0x26, 0x21, 0x74,
1773
  0xD3, 0x1B, 0xF6, 0xB5, 0x85, 0xFF, 0xAE,
1774
  0x5B, 0x7A, 0x03, 0x5B, 0xF6, 0xF7, 0x1C,
1775
  0x35, 0xFD, 0xAD, 0x44, 0xCF, 0xD2, 0xD7,
1776
  0x4F, 0x92, 0x08, 0xBE, 0x25, 0x8F, 0xF3,
1777
  0x24, 0x94, 0x33, 0x28, 0xF6, 0x72, 0x2D,
1778
  0x9E, 0xE1, 0x00, 0x3E, 0x5C, 0x50, 0xB1,
1779
  0xDF, 0x82, 0xCC, 0x6D, 0x24, 0x1B, 0x0E,
1780
  0x2A, 0xE9, 0xCD, 0x34, 0x8B, 0x1F, 0xD4,
1781
  0x7E, 0x92, 0x67, 0xAF, 0xC1, 0xB2, 0xAE,
1782
  0x91, 0xEE, 0x51, 0xD6, 0xCB, 0x0E, 0x31,
1783
  0x79, 0xAB, 0x10, 0x42, 0xA9, 0x5D, 0xCF,
1784
  0x6A, 0x94, 0x83, 0xB8, 0x4B, 0x4B, 0x36,
1785
  0xB3, 0x86, 0x1A, 0xA7, 0x25, 0x5E, 0x4C,
1786
  0x02, 0x78, 0xBA, 0x36, 0x04, 0x65, 0x0C,
1787
  0x10, 0xBE, 0x19, 0x48, 0x2F, 0x23, 0x17,
1788
  0x1B, 0x67, 0x1D, 0xF1, 0xCF, 0x3B, 0x96,
1789
  0x0C, 0x07, 0x43, 0x01, 0xCD, 0x93, 0xC1,
1790
  0xD1, 0x76, 0x03, 0xD1, 0x47, 0xDA, 0xE2,
1791
  0xAE, 0xF8, 0x37, 0xA6, 0x29, 0x64, 0xEF,
1792
  0x15, 0xE5, 0xFB, 0x4A, 0xAC, 0x0B, 0x8C,
1793
  0x1C, 0xCA, 0xA4, 0xBE, 0x75, 0x4A, 0xB5,
1794
  0x72, 0x8A, 0xE9, 0x13, 0x0C, 0x4C, 0x7D,
1795
  0x02, 0x88, 0x0A, 0xB9, 0x47, 0x2D, 0x45,
1796
  0x55, 0x62, 0x16, 0xD6, 0x99, 0x8B, 0x86,
1797
  0x82, 0x28, 0x3D, 0x19, 0xD4, 0x2A, 0x90,
1798
  0xD5, 0xEF, 0x8E, 0x5D, 0x32, 0x76, 0x7D,
1799
  0xC2, 0x82, 0x2C, 0x6D, 0xF7, 0x85, 0x45,
1800
  0x75, 0x38, 0xAB, 0xAE, 0x83, 0x06, 0x3E,
1801
  0xD9, 0xCB, 0x87, 0xC2, 0xD3, 0x70, 0xF2,
1802
  0x63, 0xD5, 0xFA, 0xD7, 0x46, 0x6D, 0x84,
1803
  0x99, 0xEB, 0x8F, 0x46, 0x4A, 0x70, 0x25,
1804
  0x12, 0xB0, 0xCE, 0xE7, 0x71, 0xE9, 0x13,
1805
  0x0D, 0x69, 0x77, 0x35, 0xF8, 0x97, 0xFD,
1806
  0x03, 0x6C, 0xC5, 0x04, 0x32, 0x6C, 0x3B,
1807
  0x01, 0x39, 0x9F, 0x64, 0x35, 0x32, 0x29,
1808
  0x0F, 0x95, 0x8C, 0x0B, 0xBD, 0x90, 0x06,
1809
  0x5D, 0xF0, 0x8B, 0xAB, 0xBD, 0x30, 0xAE,
1810
  0xB6, 0x3B, 0x84, 0xC4, 0x60, 0x5D, 0x6C,
1811
  0xA3, 0x71, 0x04, 0x71, 0x27, 0xD0, 0x3A,
1812
  0x72, 0xD5, 0x98, 0xA1, 0xED, 0xAD, 0xFE,
1813
  0x70, 0x7E, 0x88, 0x47, 0x25, 0xC1, 0x68,
1814
  0x90, 0x54, 0x90, 0x84, 0x00, 0x8D, 0x39,
1815
  0x1E, 0x09, 0x53, 0xC3, 0xF3, 0x6B, 0xC4,
1816
  0x38, 0xCD, 0x08, 0x5E, 0xDD, 0x2D, 0x93,
1817
  0x4C, 0xE1, 0x93, 0x8C, 0x35, 0x7A, 0x71,
1818
  0x1E, 0x0D, 0x4A, 0x34, 0x1A, 0x5B, 0x0A,
1819
  0x85, 0xED, 0x12, 0xC1, 0xF4, 0xE5, 0x15,
1820
  0x6A, 0x26, 0x74, 0x6D, 0xDD, 0xE1, 0x6D,
1821
  0x82, 0x6F, 0x47, 0x7C, 0x97, 0x47, 0x7E,
1822
  0x0A, 0x0F, 0xDF, 0x65, 0x53, 0x14, 0x3E,
1823
  0x2C, 0xA3, 0xA7, 0x35, 0xE0, 0x2E, 0xCC,
1824
  0xD9, 0x4B, 0x27, 0xD0, 0x48, 0x61, 0xD1,
1825
  0x11, 0x9D, 0xD0, 0xC3, 0x28, 0xAD, 0xF3,
1826
  0xF6, 0x8F, 0xB0, 0x94, 0xB8, 0x67, 0x71,
1827
  0x6B, 0xD7, 0xDC, 0x0D, 0xEE, 0xBB, 0x10,
1828
  0xB8, 0x24, 0x0E, 0x68, 0x03, 0x48, 0x93,
1829
  0xEA, 0xD8, 0x2D, 0x54, 0xC9, 0xDA, 0x75,
1830
  0x4C, 0x46, 0xC7, 0xEE, 0xE0, 0xC3, 0x7F,
1831
  0xDB, 0xEE, 0x48, 0x53, 0x60, 0x47, 0xA6,
1832
  0xFA, 0x1A, 0xE4, 0x9A, 0x01, 0x42, 0x49,
1833
  0x1B, 0x61, 0xFD, 0x5A, 0x69, 0x3E, 0x38,
1834
  0x13, 0x60, 0xEA, 0x6E, 0x59, 0x30, 0x13,
1835
  0x23, 0x6F, 0x64, 0xBA, 0x8F, 0x3B, 0x1E,
1836
  0xDD, 0x1B, 0xDE, 0xFC, 0x7F, 0xCA, 0x03,
1837
  0x56, 0xCF, 0x29, 0x87, 0x72, 0xED, 0x9C,
1838
  0x17, 0xA0, 0x98, 0x00, 0xD7, 0x58, 0x35,
1839
  0x29, 0xF6, 0xC8, 0x13, 0xEC, 0x18, 0x8B,
1840
  0xCB, 0x93, 0xD8, 0x43, 0x2D, 0x44, 0x8C,
1841
  0x6D, 0x1F, 0x6D, 0xF5, 0xE7, 0xCD, 0x8A,
1842
  0x76, 0xA2, 0x67, 0x36, 0x5D, 0x67, 0x6A,
1843
  0x5D, 0x8D, 0xED, 0xBF, 0x8A, 0x23, 0xF3,
1844
  0x66, 0x12, 0xA5, 0x99, 0x90, 0x28, 0xA8,
1845
  0x95, 0xEB, 0xD7, 0xA1, 0x37, 0xDC, 0x7A,
1846
  0x00, 0x9B, 0xC6, 0x69, 0x5F, 0xAC, 0xC1,
1847
  0xE5, 0x00, 0xE3, 0x25, 0xC9, 0x76, 0x78,
1848
  0x19, 0x75, 0x0A, 0xE8, 0xB9, 0x0E, 0x81,
1849
  0xFA, 0x41, 0x6B, 0xE7, 0x37, 0x3A, 0x7F,
1850
  0x7B, 0x6A, 0xAF, 0x38, 0x17, 0xA3, 0x4C,
1851
  0x06, 0x41, 0x5A, 0xD4, 0x20, 0x18, 0xC8,
1852
  0x05, 0x8E, 0x4F, 0x2C, 0xF3, 0xE4, 0xBF,
1853
  0xDF, 0x63, 0xF4, 0x79, 0x91, 0xD4, 0xBD,
1854
  0x3F, 0x1B, 0x66, 0x44, 0x5F, 0x07, 0x8E,
1855
  0xA2, 0xDB, 0xFF, 0xAC, 0x2D, 0x62, 0xA5,
1856
  0xEA, 0x03, 0xD9, 0x15, 0xA0, 0xAA, 0x55,
1857
  0x66, 0x47, 0xB6, 0xBF, 0x5F, 0xA4, 0x70,
1858
  0xEC, 0x0A, 0x66, 0x2F, 0x69, 0x07, 0xC0,
1859
  0x1B, 0xF0, 0x53, 0xCB, 0x8A, 0xF7, 0x79,
1860
  0x4D, 0xF1, 0x94, 0x03, 0x50, 0xEA, 0xC5,
1861
  0xDB, 0xE2, 0xED, 0x3B, 0x7A, 0xA8, 0x55,
1862
  0x1E, 0xC5, 0x0F, 0xDF, 0xF8, 0x75, 0x8C,
1863
  0xE6, 0x58, 0xD1, 0x89, 0xEA, 0xAE, 0x6D,
1864
  0x2B, 0x64, 0xF6, 0x17, 0x79, 0x4B, 0x19,
1865
  0x1C, 0x3F, 0xF4, 0x6B, 0xB7, 0x1E, 0x02,
1866
  0x34, 0x02, 0x1F, 0x47, 0xB3, 0x1F, 0xA4,
1867
  0x30, 0x77, 0x09, 0x5F, 0x96, 0xAD, 0x85,
1868
  0xBA, 0x3A, 0x6B, 0x73, 0x4A, 0x7C, 0x8F,
1869
  0x36, 0xDF, 0x08, 0xAC, 0xBA, 0x51, 0xC9,
1870
  0x37, 0x89, 0x7F, 0x72, 0xF2, 0x1C, 0x3B,
1871
  0xBE, 0x5B, 0x54, 0x99, 0x6F, 0xC6, 0x6C,
1872
  0x5F, 0x62, 0x68, 0x39, 0xDC, 0x98, 0xDD,
1873
  0x1D, 0xE4, 0x19, 0x5B, 0x46, 0xCE, 0xE9,
1874
  0x80, 0x3A, 0x0F, 0xD3, 0xDF, 0xC5, 0x7E,
1875
  0x23, 0xF6, 0x92, 0xBB, 0x7B, 0x49, 0xB5,
1876
  0xD2, 0x12, 0x33, 0x1D, 0x55, 0xB1, 0xCE,
1877
  0x2D, 0x72, 0x7A, 0xB4, 0x1A, 0x11, 0xDA,
1878
  0x3A, 0x15, 0xF8, 0xE4, 0xBC, 0x11, 0xC7,
1879
  0x8B, 0x65, 0xF1, 0xCE, 0xB2, 0x96, 0xF1,
1880
  0xFE, 0xDC, 0x5F, 0x7E, 0x42, 0x45, 0x6C,
1881
  0x91, 0x11, 0x17, 0x02, 0x52, 0x01, 0xBE,
1882
  0x03, 0x89, 0xF5, 0xAB, 0xD4, 0x0D, 0x11,
1883
  0xF8, 0x63, 0x9A, 0x39, 0xFE, 0x32, 0x36,
1884
  0x75, 0x18, 0x35, 0xA5, 0xE5, 0xE4, 0x43,
1885
  0x17, 0xC1, 0xC2, 0xEE, 0xFD, 0x4E, 0xA5,
1886
  0xBF, 0xD1, 0x60, 0x43, 0xF4, 0x3C, 0xB4,
1887
  0x19, 0x81, 0xF6, 0xAD, 0xEE, 0x9D, 0x03,
1888
  0x15, 0x9E, 0x7A, 0xD9, 0xD1, 0x3C, 0x53,
1889
  0x36, 0x95, 0x09, 0xFC, 0x1F, 0xA2, 0x7C,
1890
  0x16, 0xEF, 0x98, 0x87, 0x70, 0x3A, 0x55,
1891
  0xB5, 0x1B, 0x22, 0xCB, 0xF4, 0x4C, 0xD0,
1892
  0x12, 0xAE, 0xE0, 0xB2, 0x79, 0x8E, 0x62,
1893
  0x84, 0x23, 0x42, 0x8E, 0xFC, 0xD5, 0xA4,
1894
  0x0C, 0xAE, 0xF6, 0xBF, 0x50, 0xD8, 0xEA,
1895
  0x88, 0x5E, 0xBF, 0x73, 0xA6, 0xB9, 0xFD,
1896
  0x79, 0xB5, 0xE1, 0x8F, 0x67, 0xD1, 0x34,
1897
  0x1A, 0xC8, 0x23, 0x7A, 0x75, 0xC3, 0xCF,
1898
  0xC9, 0x20, 0x04, 0xA1, 0xC5, 0xA4, 0x0E,
1899
  0x36, 0x6B, 0xC4, 0x4D, 0x00, 0x17, 0x6A,
1900
  0xF7, 0x1C, 0x15, 0xE4, 0x8C, 0x86, 0xD3,
1901
  0x7E, 0x01, 0x37, 0x23, 0xCA, 0xAC, 0x72,
1902
  0x23, 0xAB, 0x3B, 0xF4, 0xD5, 0x4F, 0x18,
1903
  0x28, 0x71, 0x3B, 0x2B, 0x4A, 0x6F, 0xE4,
1904
  0x0F, 0xAB, 0x74, 0x40, 0x5C, 0xB7, 0x38,
1905
  0xB0, 0x64, 0xC0, 0x6E, 0xCC, 0x76, 0xE9,
1906
  0xEF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
1907
  0xFF, 0xFF
1908
};
1909
1910
const gnutls_datum_t gnutls_modp_8192_group_prime = {
1911
  (void *)modp_params_8192, sizeof(modp_params_8192)
1912
};
1913
1914
const gnutls_datum_t gnutls_modp_8192_group_q = {
1915
  (void *)modp_q_8192, sizeof(modp_q_8192)
1916
};
1917
1918
const gnutls_datum_t gnutls_modp_8192_group_generator = {
1919
  (void *)&modp_generator, sizeof(modp_generator)
1920
};
1921
1922
const unsigned int gnutls_modp_8192_key_bits = 512;
1923
1924
unsigned
1925
_gnutls_dh_prime_match_fips_approved(const uint8_t * prime,
1926
             size_t prime_size,
1927
             const uint8_t * generator,
1928
             size_t generator_size,
1929
             uint8_t ** q, size_t *q_size)
1930
0
{
1931
0
  static const struct {
1932
0
    const gnutls_datum_t *prime;
1933
0
    const gnutls_datum_t *generator;
1934
0
    const gnutls_datum_t *q;
1935
0
  } primes[] = {
1936
0
    {&gnutls_ffdhe_8192_group_prime,
1937
0
     &gnutls_ffdhe_8192_group_generator,
1938
0
     &gnutls_ffdhe_8192_group_q},
1939
0
    {&gnutls_ffdhe_6144_group_prime,
1940
0
     &gnutls_ffdhe_6144_group_generator,
1941
0
     &gnutls_ffdhe_6144_group_q},
1942
0
    {&gnutls_ffdhe_4096_group_prime,
1943
0
     &gnutls_ffdhe_4096_group_generator,
1944
0
     &gnutls_ffdhe_4096_group_q},
1945
0
    {&gnutls_ffdhe_3072_group_prime,
1946
0
     &gnutls_ffdhe_3072_group_generator,
1947
0
     &gnutls_ffdhe_3072_group_q},
1948
0
    {&gnutls_ffdhe_2048_group_prime,
1949
0
     &gnutls_ffdhe_2048_group_generator,
1950
0
     &gnutls_ffdhe_2048_group_q},
1951
0
    {&gnutls_modp_8192_group_prime,
1952
0
     &gnutls_modp_8192_group_generator, &gnutls_modp_8192_group_q},
1953
0
    {&gnutls_modp_6144_group_prime,
1954
0
     &gnutls_modp_6144_group_generator, &gnutls_modp_6144_group_q},
1955
0
    {&gnutls_modp_4096_group_prime,
1956
0
     &gnutls_modp_4096_group_generator, &gnutls_modp_4096_group_q},
1957
0
    {&gnutls_modp_3072_group_prime,
1958
0
     &gnutls_modp_3072_group_generator, &gnutls_modp_3072_group_q},
1959
0
    {&gnutls_modp_2048_group_prime,
1960
0
     &gnutls_modp_2048_group_generator, &gnutls_modp_2048_group_q},
1961
0
  };
1962
0
  size_t i;
1963
1964
0
  for (i = 0; i < sizeof(primes) / sizeof(primes[0]); i++) {
1965
0
    if (primes[i].prime->size == prime_size &&
1966
0
        memcmp(primes[i].prime->data, prime,
1967
0
         primes[i].prime->size) == 0
1968
0
        && primes[i].generator->size == generator_size
1969
0
        && memcmp(primes[i].generator->data, generator,
1970
0
            primes[i].generator->size) == 0) {
1971
0
      if (q) {
1972
0
        *q = primes[i].q->data;
1973
0
        *q_size = primes[i].q->size;
1974
0
      }
1975
0
      return 1;
1976
0
    }
1977
0
  }
1978
1979
0
  return 0;
1980
0
}