Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
dhm.h
00001 /** 00002 * \file dhm.h 00003 * 00004 * \brief Diffie-Hellman-Merkle key exchange. 00005 * 00006 * <em>RFC-3526: More Modular Exponential (MODP) Diffie-Hellman groups for 00007 * Internet Key Exchange (IKE)</em> defines a number of standardized 00008 * Diffie-Hellman groups for IKE. 00009 * 00010 * <em>RFC-5114: Additional Diffie-Hellman Groups for Use with IETF 00011 * Standards</em> defines a number of standardized Diffie-Hellman 00012 * groups that can be used. 00013 * 00014 * \warning The security of the DHM key exchange relies on the proper choice 00015 * of prime modulus - optimally, it should be a safe prime. The usage 00016 * of non-safe primes both decreases the difficulty of the underlying 00017 * discrete logarithm problem and can lead to small subgroup attacks 00018 * leaking private exponent bits when invalid public keys are used 00019 * and not detected. This is especially relevant if the same DHM 00020 * parameters are reused for multiple key exchanges as in static DHM, 00021 * while the criticality of small-subgroup attacks is lower for 00022 * ephemeral DHM. 00023 * 00024 * \warning For performance reasons, the code does neither perform primality 00025 * nor safe primality tests, nor the expensive checks for invalid 00026 * subgroups. Moreover, even if these were performed, non-standardized 00027 * primes cannot be trusted because of the possibility of backdoors 00028 * that can't be effectively checked for. 00029 * 00030 * \warning Diffie-Hellman-Merkle is therefore a security risk when not using 00031 * standardized primes generated using a trustworthy ("nothing up 00032 * my sleeve") method, such as the RFC 3526 / 7919 primes. In the TLS 00033 * protocol, DH parameters need to be negotiated, so using the default 00034 * primes systematically is not always an option. If possible, use 00035 * Elliptic Curve Diffie-Hellman (ECDH), which has better performance, 00036 * and for which the TLS protocol mandates the use of standard 00037 * parameters. 00038 * 00039 */ 00040 /* 00041 * Copyright (C) 2006-2018, Arm Limited (or its affiliates), All Rights Reserved 00042 * SPDX-License-Identifier: Apache-2.0 00043 * 00044 * Licensed under the Apache License, Version 2.0 (the "License"); you may 00045 * not use this file except in compliance with the License. 00046 * You may obtain a copy of the License at 00047 * 00048 * http://www.apache.org/licenses/LICENSE-2.0 00049 * 00050 * Unless required by applicable law or agreed to in writing, software 00051 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 00052 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00053 * See the License for the specific language governing permissions and 00054 * limitations under the License. 00055 * 00056 * This file is part of Mbed TLS (https://tls.mbed.org) 00057 */ 00058 00059 #ifndef MBEDTLS_DHM_H 00060 #define MBEDTLS_DHM_H 00061 00062 #if !defined(MBEDTLS_CONFIG_FILE) 00063 #include "config.h" 00064 #else 00065 #include MBEDTLS_CONFIG_FILE 00066 #endif 00067 #include "bignum.h" 00068 #if !defined(MBEDTLS_DHM_ALT) 00069 00070 /* 00071 * DHM Error codes 00072 */ 00073 #define MBEDTLS_ERR_DHM_BAD_INPUT_DATA -0x3080 /**< Bad input parameters. */ 00074 #define MBEDTLS_ERR_DHM_READ_PARAMS_FAILED -0x3100 /**< Reading of the DHM parameters failed. */ 00075 #define MBEDTLS_ERR_DHM_MAKE_PARAMS_FAILED -0x3180 /**< Making of the DHM parameters failed. */ 00076 #define MBEDTLS_ERR_DHM_READ_PUBLIC_FAILED -0x3200 /**< Reading of the public values failed. */ 00077 #define MBEDTLS_ERR_DHM_MAKE_PUBLIC_FAILED -0x3280 /**< Making of the public value failed. */ 00078 #define MBEDTLS_ERR_DHM_CALC_SECRET_FAILED -0x3300 /**< Calculation of the DHM secret failed. */ 00079 #define MBEDTLS_ERR_DHM_INVALID_FORMAT -0x3380 /**< The ASN.1 data is not formatted correctly. */ 00080 #define MBEDTLS_ERR_DHM_ALLOC_FAILED -0x3400 /**< Allocation of memory failed. */ 00081 #define MBEDTLS_ERR_DHM_FILE_IO_ERROR -0x3480 /**< Read or write of file failed. */ 00082 #define MBEDTLS_ERR_DHM_HW_ACCEL_FAILED -0x3500 /**< DHM hardware accelerator failed. */ 00083 #define MBEDTLS_ERR_DHM_SET_GROUP_FAILED -0x3580 /**< Setting the modulus and generator failed. */ 00084 00085 #ifdef __cplusplus 00086 extern "C" { 00087 #endif 00088 00089 /** 00090 * \brief The DHM context structure. 00091 */ 00092 typedef struct 00093 { 00094 size_t len ; /*!< The size of \p P in Bytes. */ 00095 mbedtls_mpi P ; /*!< The prime modulus. */ 00096 mbedtls_mpi G ; /*!< The generator. */ 00097 mbedtls_mpi X ; /*!< Our secret value. */ 00098 mbedtls_mpi GX ; /*!< Our public key = \c G^X mod \c P. */ 00099 mbedtls_mpi GY ; /*!< The public key of the peer = \c G^Y mod \c P. */ 00100 mbedtls_mpi K ; /*!< The shared secret = \c G^(XY) mod \c P. */ 00101 mbedtls_mpi RP ; /*!< The cached value = \c R^2 mod \c P. */ 00102 mbedtls_mpi Vi ; /*!< The blinding value. */ 00103 mbedtls_mpi Vf ; /*!< The unblinding value. */ 00104 mbedtls_mpi pX ; /*!< The previous \c X. */ 00105 } 00106 mbedtls_dhm_context; 00107 00108 /** 00109 * \brief This function initializes the DHM context. 00110 * 00111 * \param ctx The DHM context to initialize. 00112 */ 00113 void mbedtls_dhm_init( mbedtls_dhm_context *ctx ); 00114 00115 /** 00116 * \brief This function parses the ServerKeyExchange parameters. 00117 * 00118 * \param ctx The DHM context. 00119 * \param p On input, *p must be the start of the input buffer. 00120 * On output, *p is updated to point to the end of the data 00121 * that has been read. On success, this is the first byte 00122 * past the end of the ServerKeyExchange parameters. 00123 * On error, this is the point at which an error has been 00124 * detected, which is usually not useful except to debug 00125 * failures. 00126 * \param end The end of the input buffer. 00127 * 00128 * \return \c 0 on success, or an \c MBEDTLS_ERR_DHM_XXX error code 00129 * on failure. 00130 */ 00131 int mbedtls_dhm_read_params( mbedtls_dhm_context *ctx, 00132 unsigned char **p, 00133 const unsigned char *end ); 00134 00135 /** 00136 * \brief This function sets up and writes the ServerKeyExchange 00137 * parameters. 00138 * 00139 * \param ctx The DHM context. 00140 * \param x_size The private value size in Bytes. 00141 * \param olen The number of characters written. 00142 * \param output The destination buffer. 00143 * \param f_rng The RNG function. 00144 * \param p_rng The RNG parameter. 00145 * 00146 * \note The destination buffer must be large enough to hold 00147 * the reduced binary presentation of the modulus, the generator 00148 * and the public key, each wrapped with a 2-byte length field. 00149 * It is the responsibility of the caller to ensure that enough 00150 * space is available. Refer to \c mbedtls_mpi_size to computing 00151 * the byte-size of an MPI. 00152 * 00153 * \note This function assumes that \c ctx->P and \c ctx->G 00154 * have already been properly set. For that, use 00155 * mbedtls_dhm_set_group() below in conjunction with 00156 * mbedtls_mpi_read_binary() and mbedtls_mpi_read_string(). 00157 * 00158 * \return \c 0 on success, or an \c MBEDTLS_ERR_DHM_XXX error code 00159 * on failure. 00160 */ 00161 int mbedtls_dhm_make_params( mbedtls_dhm_context *ctx, int x_size, 00162 unsigned char *output, size_t *olen, 00163 int (*f_rng)(void *, unsigned char *, size_t), 00164 void *p_rng ); 00165 00166 /** 00167 * \brief Set prime modulus and generator 00168 * 00169 * \param ctx The DHM context. 00170 * \param P The MPI holding DHM prime modulus. 00171 * \param G The MPI holding DHM generator. 00172 * 00173 * \note This function can be used to set P, G 00174 * in preparation for \c mbedtls_dhm_make_params. 00175 * 00176 * \return \c 0 if successful, or an \c MBEDTLS_ERR_DHM_XXX error code 00177 * on failure. 00178 */ 00179 int mbedtls_dhm_set_group( mbedtls_dhm_context *ctx, 00180 const mbedtls_mpi *P, 00181 const mbedtls_mpi *G ); 00182 00183 /** 00184 * \brief This function imports the public value G^Y of the peer. 00185 * 00186 * \param ctx The DHM context. 00187 * \param input The input buffer. 00188 * \param ilen The size of the input buffer. 00189 * 00190 * \return \c 0 on success, or an \c MBEDTLS_ERR_DHM_XXX error code 00191 * on failure. 00192 */ 00193 int mbedtls_dhm_read_public( mbedtls_dhm_context *ctx, 00194 const unsigned char *input, size_t ilen ); 00195 00196 /** 00197 * \brief This function creates its own private value \c X and 00198 * exports \c G^X. 00199 * 00200 * \param ctx The DHM context. 00201 * \param x_size The private value size in Bytes. 00202 * \param output The destination buffer. 00203 * \param olen The length of the destination buffer. Must be at least 00204 equal to ctx->len (the size of \c P). 00205 * \param f_rng The RNG function. 00206 * \param p_rng The RNG parameter. 00207 * 00208 * \note The destination buffer will always be fully written 00209 * so as to contain a big-endian presentation of G^X mod P. 00210 * If it is larger than ctx->len, it will accordingly be 00211 * padded with zero-bytes in the beginning. 00212 * 00213 * \return \c 0 on success, or an \c MBEDTLS_ERR_DHM_XXX error code 00214 * on failure. 00215 */ 00216 int mbedtls_dhm_make_public( mbedtls_dhm_context *ctx, int x_size, 00217 unsigned char *output, size_t olen, 00218 int (*f_rng)(void *, unsigned char *, size_t), 00219 void *p_rng ); 00220 00221 /** 00222 * \brief This function derives and exports the shared secret 00223 * \c (G^Y)^X mod \c P. 00224 * 00225 * \param ctx The DHM context. 00226 * \param output The destination buffer. 00227 * \param output_size The size of the destination buffer. Must be at least 00228 * the size of ctx->len. 00229 * \param olen On exit, holds the actual number of Bytes written. 00230 * \param f_rng The RNG function, for blinding purposes. 00231 * \param p_rng The RNG parameter. 00232 * 00233 * \return \c 0 on success, or an \c MBEDTLS_ERR_DHM_XXX error code 00234 * on failure. 00235 * 00236 * \note If non-NULL, \p f_rng is used to blind the input as 00237 * a countermeasure against timing attacks. Blinding is used 00238 * only if our secret value \p X is re-used and omitted 00239 * otherwise. Therefore, we recommend always passing a 00240 * non-NULL \p f_rng argument. 00241 */ 00242 int mbedtls_dhm_calc_secret( mbedtls_dhm_context *ctx, 00243 unsigned char *output, size_t output_size, size_t *olen, 00244 int (*f_rng)(void *, unsigned char *, size_t), 00245 void *p_rng ); 00246 00247 /** 00248 * \brief This function frees and clears the components of a DHM key. 00249 * 00250 * \param ctx The DHM context to free and clear. 00251 */ 00252 void mbedtls_dhm_free( mbedtls_dhm_context *ctx ); 00253 00254 #if defined(MBEDTLS_ASN1_PARSE_C) 00255 /** \ingroup x509_module */ 00256 /** 00257 * \brief This function parses DHM parameters in PEM or DER format. 00258 * 00259 * \param dhm The DHM context to initialize. 00260 * \param dhmin The input buffer. 00261 * \param dhminlen The size of the buffer, including the terminating null 00262 * Byte for PEM data. 00263 * 00264 * \return \c 0 on success, or a specific DHM or PEM error code 00265 * on failure. 00266 */ 00267 int mbedtls_dhm_parse_dhm( mbedtls_dhm_context *dhm, const unsigned char *dhmin, 00268 size_t dhminlen ); 00269 00270 #if defined(MBEDTLS_FS_IO) 00271 /** \ingroup x509_module */ 00272 /** 00273 * \brief This function loads and parses DHM parameters from a file. 00274 * 00275 * \param dhm The DHM context to load the parameters to. 00276 * \param path The filename to read the DHM parameters from. 00277 * 00278 * \return \c 0 on success, or a specific DHM or PEM error code 00279 * on failure. 00280 */ 00281 int mbedtls_dhm_parse_dhmfile( mbedtls_dhm_context *dhm, const char *path ); 00282 #endif /* MBEDTLS_FS_IO */ 00283 #endif /* MBEDTLS_ASN1_PARSE_C */ 00284 00285 #ifdef __cplusplus 00286 } 00287 #endif 00288 00289 #else /* MBEDTLS_DHM_ALT */ 00290 #include "dhm_alt.h" 00291 #endif /* MBEDTLS_DHM_ALT */ 00292 00293 #ifdef __cplusplus 00294 extern "C" { 00295 #endif 00296 00297 /** 00298 * \brief The DMH checkup routine. 00299 * 00300 * \return \c 0 on success, or \c 1 on failure. 00301 */ 00302 int mbedtls_dhm_self_test( int verbose ); 00303 00304 #ifdef __cplusplus 00305 } 00306 #endif 00307 00308 /** 00309 * RFC 3526, RFC 5114 and RFC 7919 standardize a number of 00310 * Diffie-Hellman groups, some of which are included here 00311 * for use within the SSL/TLS module and the user's convenience 00312 * when configuring the Diffie-Hellman parameters by hand 00313 * through \c mbedtls_ssl_conf_dh_param. 00314 * 00315 * The following lists the source of the above groups in the standards: 00316 * - RFC 5114 section 2.2: 2048-bit MODP Group with 224-bit Prime Order Subgroup 00317 * - RFC 3526 section 3: 2048-bit MODP Group 00318 * - RFC 3526 section 4: 3072-bit MODP Group 00319 * - RFC 3526 section 5: 4096-bit MODP Group 00320 * - RFC 7919 section A.1: ffdhe2048 00321 * - RFC 7919 section A.2: ffdhe3072 00322 * - RFC 7919 section A.3: ffdhe4096 00323 * - RFC 7919 section A.4: ffdhe6144 00324 * - RFC 7919 section A.5: ffdhe8192 00325 * 00326 * The constants with suffix "_p" denote the chosen prime moduli, while 00327 * the constants with suffix "_g" denote the chosen generator 00328 * of the associated prime field. 00329 * 00330 * The constants further suffixed with "_bin" are provided in binary format, 00331 * while all other constants represent null-terminated strings holding the 00332 * hexadecimal presentation of the respective numbers. 00333 * 00334 * The primes from RFC 3526 and RFC 7919 have been generating by the following 00335 * trust-worthy procedure: 00336 * - Fix N in { 2048, 3072, 4096, 6144, 8192 } and consider the N-bit number 00337 * the first and last 64 bits are all 1, and the remaining N - 128 bits of 00338 * which are 0x7ff...ff. 00339 * - Add the smallest multiple of the first N - 129 bits of the binary expansion 00340 * of pi (for RFC 5236) or e (for RFC 7919) to this intermediate bit-string 00341 * such that the resulting integer is a safe-prime. 00342 * - The result is the respective RFC 3526 / 7919 prime, and the corresponding 00343 * generator is always chosen to be 2 (which is a square for these prime, 00344 * hence the corresponding subgroup has order (p-1)/2 and avoids leaking a 00345 * bit in the private exponent). 00346 * 00347 */ 00348 00349 #if !defined(MBEDTLS_DEPRECATED_REMOVED) 00350 00351 #if defined(MBEDTLS_DEPRECATED_WARNING) 00352 #define MBEDTLS_DEPRECATED __attribute__((deprecated)) 00353 MBEDTLS_DEPRECATED typedef char const * mbedtls_deprecated_constant_t; 00354 #define MBEDTLS_DEPRECATED_STRING_CONSTANT( VAL ) \ 00355 ( (mbedtls_deprecated_constant_t) ( VAL ) ) 00356 #else 00357 #define MBEDTLS_DEPRECATED_STRING_CONSTANT( VAL ) VAL 00358 #endif /* ! MBEDTLS_DEPRECATED_WARNING */ 00359 00360 /** 00361 * \warning The origin of the primes in RFC 5114 is not documented and 00362 * their use therefore constitutes a security risk! 00363 * 00364 * \deprecated The hex-encoded primes from RFC 5114 are deprecated and are 00365 * likely to be removed in a future version of the library without 00366 * replacement. 00367 */ 00368 00369 /** 00370 * The hexadecimal presentation of the prime underlying the 00371 * 2048-bit MODP Group with 224-bit Prime Order Subgroup, as defined 00372 * in <em>RFC-5114: Additional Diffie-Hellman Groups for Use with 00373 * IETF Standards</em>. 00374 */ 00375 #define MBEDTLS_DHM_RFC5114_MODP_2048_P \ 00376 MBEDTLS_DEPRECATED_STRING_CONSTANT( \ 00377 "AD107E1E9123A9D0D660FAA79559C51FA20D64E5683B9FD1" \ 00378 "B54B1597B61D0A75E6FA141DF95A56DBAF9A3C407BA1DF15" \ 00379 "EB3D688A309C180E1DE6B85A1274A0A66D3F8152AD6AC212" \ 00380 "9037C9EDEFDA4DF8D91E8FEF55B7394B7AD5B7D0B6C12207" \ 00381 "C9F98D11ED34DBF6C6BA0B2C8BBC27BE6A00E0A0B9C49708" \ 00382 "B3BF8A317091883681286130BC8985DB1602E714415D9330" \ 00383 "278273C7DE31EFDC7310F7121FD5A07415987D9ADC0A486D" \ 00384 "CDF93ACC44328387315D75E198C641A480CD86A1B9E587E8" \ 00385 "BE60E69CC928B2B9C52172E413042E9B23F10B0E16E79763" \ 00386 "C9B53DCF4BA80A29E3FB73C16B8E75B97EF363E2FFA31F71" \ 00387 "CF9DE5384E71B81C0AC4DFFE0C10E64F" ) 00388 00389 /** 00390 * The hexadecimal presentation of the chosen generator of the 2048-bit MODP 00391 * Group with 224-bit Prime Order Subgroup, as defined in <em>RFC-5114: 00392 * Additional Diffie-Hellman Groups for Use with IETF Standards</em>. 00393 */ 00394 #define MBEDTLS_DHM_RFC5114_MODP_2048_G \ 00395 MBEDTLS_DEPRECATED_STRING_CONSTANT( \ 00396 "AC4032EF4F2D9AE39DF30B5C8FFDAC506CDEBE7B89998CAF" \ 00397 "74866A08CFE4FFE3A6824A4E10B9A6F0DD921F01A70C4AFA" \ 00398 "AB739D7700C29F52C57DB17C620A8652BE5E9001A8D66AD7" \ 00399 "C17669101999024AF4D027275AC1348BB8A762D0521BC98A" \ 00400 "E247150422EA1ED409939D54DA7460CDB5F6C6B250717CBE" \ 00401 "F180EB34118E98D119529A45D6F834566E3025E316A330EF" \ 00402 "BB77A86F0C1AB15B051AE3D428C8F8ACB70A8137150B8EEB" \ 00403 "10E183EDD19963DDD9E263E4770589EF6AA21E7F5F2FF381" \ 00404 "B539CCE3409D13CD566AFBB48D6C019181E1BCFE94B30269" \ 00405 "EDFE72FE9B6AA4BD7B5A0F1C71CFFF4C19C418E1F6EC0179" \ 00406 "81BC087F2A7065B384B890D3191F2BFA" ) 00407 00408 /** 00409 * The hexadecimal presentation of the prime underlying the 2048-bit MODP 00410 * Group, as defined in <em>RFC-3526: More Modular Exponential (MODP) 00411 * Diffie-Hellman groups for Internet Key Exchange (IKE)</em>. 00412 * 00413 * \deprecated The hex-encoded primes from RFC 3625 are deprecated and 00414 * superseded by the corresponding macros providing them as 00415 * binary constants. Their hex-encoded constants are likely 00416 * to be removed in a future version of the library. 00417 * 00418 */ 00419 #define MBEDTLS_DHM_RFC3526_MODP_2048_P \ 00420 MBEDTLS_DEPRECATED_STRING_CONSTANT( \ 00421 "FFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD1" \ 00422 "29024E088A67CC74020BBEA63B139B22514A08798E3404DD" \ 00423 "EF9519B3CD3A431B302B0A6DF25F14374FE1356D6D51C245" \ 00424 "E485B576625E7EC6F44C42E9A637ED6B0BFF5CB6F406B7ED" \ 00425 "EE386BFB5A899FA5AE9F24117C4B1FE649286651ECE45B3D" \ 00426 "C2007CB8A163BF0598DA48361C55D39A69163FA8FD24CF5F" \ 00427 "83655D23DCA3AD961C62F356208552BB9ED529077096966D" \ 00428 "670C354E4ABC9804F1746C08CA18217C32905E462E36CE3B" \ 00429 "E39E772C180E86039B2783A2EC07A28FB5C55DF06F4C52C9" \ 00430 "DE2BCBF6955817183995497CEA956AE515D2261898FA0510" \ 00431 "15728E5A8AACAA68FFFFFFFFFFFFFFFF" ) 00432 00433 /** 00434 * The hexadecimal presentation of the chosen generator of the 2048-bit MODP 00435 * Group, as defined in <em>RFC-3526: More Modular Exponential (MODP) 00436 * Diffie-Hellman groups for Internet Key Exchange (IKE)</em>. 00437 */ 00438 #define MBEDTLS_DHM_RFC3526_MODP_2048_G \ 00439 MBEDTLS_DEPRECATED_STRING_CONSTANT( "02" ) 00440 00441 /** 00442 * The hexadecimal presentation of the prime underlying the 3072-bit MODP 00443 * Group, as defined in <em>RFC-3072: More Modular Exponential (MODP) 00444 * Diffie-Hellman groups for Internet Key Exchange (IKE)</em>. 00445 */ 00446 #define MBEDTLS_DHM_RFC3526_MODP_3072_P \ 00447 MBEDTLS_DEPRECATED_STRING_CONSTANT( \ 00448 "FFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD1" \ 00449 "29024E088A67CC74020BBEA63B139B22514A08798E3404DD" \ 00450 "EF9519B3CD3A431B302B0A6DF25F14374FE1356D6D51C245" \ 00451 "E485B576625E7EC6F44C42E9A637ED6B0BFF5CB6F406B7ED" \ 00452 "EE386BFB5A899FA5AE9F24117C4B1FE649286651ECE45B3D" \ 00453 "C2007CB8A163BF0598DA48361C55D39A69163FA8FD24CF5F" \ 00454 "83655D23DCA3AD961C62F356208552BB9ED529077096966D" \ 00455 "670C354E4ABC9804F1746C08CA18217C32905E462E36CE3B" \ 00456 "E39E772C180E86039B2783A2EC07A28FB5C55DF06F4C52C9" \ 00457 "DE2BCBF6955817183995497CEA956AE515D2261898FA0510" \ 00458 "15728E5A8AAAC42DAD33170D04507A33A85521ABDF1CBA64" \ 00459 "ECFB850458DBEF0A8AEA71575D060C7DB3970F85A6E1E4C7" \ 00460 "ABF5AE8CDB0933D71E8C94E04A25619DCEE3D2261AD2EE6B" \ 00461 "F12FFA06D98A0864D87602733EC86A64521F2B18177B200C" \ 00462 "BBE117577A615D6C770988C0BAD946E208E24FA074E5AB31" \ 00463 "43DB5BFCE0FD108E4B82D120A93AD2CAFFFFFFFFFFFFFFFF" ) 00464 00465 /** 00466 * The hexadecimal presentation of the chosen generator of the 3072-bit MODP 00467 * Group, as defined in <em>RFC-3526: More Modular Exponential (MODP) 00468 * Diffie-Hellman groups for Internet Key Exchange (IKE)</em>. 00469 */ 00470 #define MBEDTLS_DHM_RFC3526_MODP_3072_G \ 00471 MBEDTLS_DEPRECATED_STRING_CONSTANT( "02" ) 00472 00473 /** 00474 * The hexadecimal presentation of the prime underlying the 4096-bit MODP 00475 * Group, as defined in <em>RFC-3526: More Modular Exponential (MODP) 00476 * Diffie-Hellman groups for Internet Key Exchange (IKE)</em>. 00477 */ 00478 #define MBEDTLS_DHM_RFC3526_MODP_4096_P \ 00479 MBEDTLS_DEPRECATED_STRING_CONSTANT( \ 00480 "FFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD1" \ 00481 "29024E088A67CC74020BBEA63B139B22514A08798E3404DD" \ 00482 "EF9519B3CD3A431B302B0A6DF25F14374FE1356D6D51C245" \ 00483 "E485B576625E7EC6F44C42E9A637ED6B0BFF5CB6F406B7ED" \ 00484 "EE386BFB5A899FA5AE9F24117C4B1FE649286651ECE45B3D" \ 00485 "C2007CB8A163BF0598DA48361C55D39A69163FA8FD24CF5F" \ 00486 "83655D23DCA3AD961C62F356208552BB9ED529077096966D" \ 00487 "670C354E4ABC9804F1746C08CA18217C32905E462E36CE3B" \ 00488 "E39E772C180E86039B2783A2EC07A28FB5C55DF06F4C52C9" \ 00489 "DE2BCBF6955817183995497CEA956AE515D2261898FA0510" \ 00490 "15728E5A8AAAC42DAD33170D04507A33A85521ABDF1CBA64" \ 00491 "ECFB850458DBEF0A8AEA71575D060C7DB3970F85A6E1E4C7" \ 00492 "ABF5AE8CDB0933D71E8C94E04A25619DCEE3D2261AD2EE6B" \ 00493 "F12FFA06D98A0864D87602733EC86A64521F2B18177B200C" \ 00494 "BBE117577A615D6C770988C0BAD946E208E24FA074E5AB31" \ 00495 "43DB5BFCE0FD108E4B82D120A92108011A723C12A787E6D7" \ 00496 "88719A10BDBA5B2699C327186AF4E23C1A946834B6150BDA" \ 00497 "2583E9CA2AD44CE8DBBBC2DB04DE8EF92E8EFC141FBECAA6" \ 00498 "287C59474E6BC05D99B2964FA090C3A2233BA186515BE7ED" \ 00499 "1F612970CEE2D7AFB81BDD762170481CD0069127D5B05AA9" \ 00500 "93B4EA988D8FDDC186FFB7DC90A6C08F4DF435C934063199" \ 00501 "FFFFFFFFFFFFFFFF" ) 00502 00503 /** 00504 * The hexadecimal presentation of the chosen generator of the 4096-bit MODP 00505 * Group, as defined in <em>RFC-3526: More Modular Exponential (MODP) 00506 * Diffie-Hellman groups for Internet Key Exchange (IKE)</em>. 00507 */ 00508 #define MBEDTLS_DHM_RFC3526_MODP_4096_G \ 00509 MBEDTLS_DEPRECATED_STRING_CONSTANT( "02" ) 00510 00511 #endif /* MBEDTLS_DEPRECATED_REMOVED */ 00512 00513 /* 00514 * Trustworthy DHM parameters in binary form 00515 */ 00516 00517 #define MBEDTLS_DHM_RFC3526_MODP_2048_P_BIN { \ 00518 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \ 00519 0xC9, 0x0F, 0xDA, 0xA2, 0x21, 0x68, 0xC2, 0x34, \ 00520 0xC4, 0xC6, 0x62, 0x8B, 0x80, 0xDC, 0x1C, 0xD1, \ 00521 0x29, 0x02, 0x4E, 0x08, 0x8A, 0x67, 0xCC, 0x74, \ 00522 0x02, 0x0B, 0xBE, 0xA6, 0x3B, 0x13, 0x9B, 0x22, \ 00523 0x51, 0x4A, 0x08, 0x79, 0x8E, 0x34, 0x04, 0xDD, \ 00524 0xEF, 0x95, 0x19, 0xB3, 0xCD, 0x3A, 0x43, 0x1B, \ 00525 0x30, 0x2B, 0x0A, 0x6D, 0xF2, 0x5F, 0x14, 0x37, \ 00526 0x4F, 0xE1, 0x35, 0x6D, 0x6D, 0x51, 0xC2, 0x45, \ 00527 0xE4, 0x85, 0xB5, 0x76, 0x62, 0x5E, 0x7E, 0xC6, \ 00528 0xF4, 0x4C, 0x42, 0xE9, 0xA6, 0x37, 0xED, 0x6B, \ 00529 0x0B, 0xFF, 0x5C, 0xB6, 0xF4, 0x06, 0xB7, 0xED, \ 00530 0xEE, 0x38, 0x6B, 0xFB, 0x5A, 0x89, 0x9F, 0xA5, \ 00531 0xAE, 0x9F, 0x24, 0x11, 0x7C, 0x4B, 0x1F, 0xE6, \ 00532 0x49, 0x28, 0x66, 0x51, 0xEC, 0xE4, 0x5B, 0x3D, \ 00533 0xC2, 0x00, 0x7C, 0xB8, 0xA1, 0x63, 0xBF, 0x05, \ 00534 0x98, 0xDA, 0x48, 0x36, 0x1C, 0x55, 0xD3, 0x9A, \ 00535 0x69, 0x16, 0x3F, 0xA8, 0xFD, 0x24, 0xCF, 0x5F, \ 00536 0x83, 0x65, 0x5D, 0x23, 0xDC, 0xA3, 0xAD, 0x96, \ 00537 0x1C, 0x62, 0xF3, 0x56, 0x20, 0x85, 0x52, 0xBB, \ 00538 0x9E, 0xD5, 0x29, 0x07, 0x70, 0x96, 0x96, 0x6D, \ 00539 0x67, 0x0C, 0x35, 0x4E, 0x4A, 0xBC, 0x98, 0x04, \ 00540 0xF1, 0x74, 0x6C, 0x08, 0xCA, 0x18, 0x21, 0x7C, \ 00541 0x32, 0x90, 0x5E, 0x46, 0x2E, 0x36, 0xCE, 0x3B, \ 00542 0xE3, 0x9E, 0x77, 0x2C, 0x18, 0x0E, 0x86, 0x03, \ 00543 0x9B, 0x27, 0x83, 0xA2, 0xEC, 0x07, 0xA2, 0x8F, \ 00544 0xB5, 0xC5, 0x5D, 0xF0, 0x6F, 0x4C, 0x52, 0xC9, \ 00545 0xDE, 0x2B, 0xCB, 0xF6, 0x95, 0x58, 0x17, 0x18, \ 00546 0x39, 0x95, 0x49, 0x7C, 0xEA, 0x95, 0x6A, 0xE5, \ 00547 0x15, 0xD2, 0x26, 0x18, 0x98, 0xFA, 0x05, 0x10, \ 00548 0x15, 0x72, 0x8E, 0x5A, 0x8A, 0xAC, 0xAA, 0x68, \ 00549 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } 00550 00551 #define MBEDTLS_DHM_RFC3526_MODP_2048_G_BIN { 0x02 } 00552 00553 #define MBEDTLS_DHM_RFC3526_MODP_3072_P_BIN { \ 00554 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \ 00555 0xC9, 0x0F, 0xDA, 0xA2, 0x21, 0x68, 0xC2, 0x34, \ 00556 0xC4, 0xC6, 0x62, 0x8B, 0x80, 0xDC, 0x1C, 0xD1, \ 00557 0x29, 0x02, 0x4E, 0x08, 0x8A, 0x67, 0xCC, 0x74, \ 00558 0x02, 0x0B, 0xBE, 0xA6, 0x3B, 0x13, 0x9B, 0x22, \ 00559 0x51, 0x4A, 0x08, 0x79, 0x8E, 0x34, 0x04, 0xDD, \ 00560 0xEF, 0x95, 0x19, 0xB3, 0xCD, 0x3A, 0x43, 0x1B, \ 00561 0x30, 0x2B, 0x0A, 0x6D, 0xF2, 0x5F, 0x14, 0x37, \ 00562 0x4F, 0xE1, 0x35, 0x6D, 0x6D, 0x51, 0xC2, 0x45, \ 00563 0xE4, 0x85, 0xB5, 0x76, 0x62, 0x5E, 0x7E, 0xC6, \ 00564 0xF4, 0x4C, 0x42, 0xE9, 0xA6, 0x37, 0xED, 0x6B, \ 00565 0x0B, 0xFF, 0x5C, 0xB6, 0xF4, 0x06, 0xB7, 0xED, \ 00566 0xEE, 0x38, 0x6B, 0xFB, 0x5A, 0x89, 0x9F, 0xA5, \ 00567 0xAE, 0x9F, 0x24, 0x11, 0x7C, 0x4B, 0x1F, 0xE6, \ 00568 0x49, 0x28, 0x66, 0x51, 0xEC, 0xE4, 0x5B, 0x3D, \ 00569 0xC2, 0x00, 0x7C, 0xB8, 0xA1, 0x63, 0xBF, 0x05, \ 00570 0x98, 0xDA, 0x48, 0x36, 0x1C, 0x55, 0xD3, 0x9A, \ 00571 0x69, 0x16, 0x3F, 0xA8, 0xFD, 0x24, 0xCF, 0x5F, \ 00572 0x83, 0x65, 0x5D, 0x23, 0xDC, 0xA3, 0xAD, 0x96, \ 00573 0x1C, 0x62, 0xF3, 0x56, 0x20, 0x85, 0x52, 0xBB, \ 00574 0x9E, 0xD5, 0x29, 0x07, 0x70, 0x96, 0x96, 0x6D, \ 00575 0x67, 0x0C, 0x35, 0x4E, 0x4A, 0xBC, 0x98, 0x04, \ 00576 0xF1, 0x74, 0x6C, 0x08, 0xCA, 0x18, 0x21, 0x7C, \ 00577 0x32, 0x90, 0x5E, 0x46, 0x2E, 0x36, 0xCE, 0x3B, \ 00578 0xE3, 0x9E, 0x77, 0x2C, 0x18, 0x0E, 0x86, 0x03, \ 00579 0x9B, 0x27, 0x83, 0xA2, 0xEC, 0x07, 0xA2, 0x8F, \ 00580 0xB5, 0xC5, 0x5D, 0xF0, 0x6F, 0x4C, 0x52, 0xC9, \ 00581 0xDE, 0x2B, 0xCB, 0xF6, 0x95, 0x58, 0x17, 0x18, \ 00582 0x39, 0x95, 0x49, 0x7C, 0xEA, 0x95, 0x6A, 0xE5, \ 00583 0x15, 0xD2, 0x26, 0x18, 0x98, 0xFA, 0x05, 0x10, \ 00584 0x15, 0x72, 0x8E, 0x5A, 0x8A, 0xAA, 0xC4, 0x2D, \ 00585 0xAD, 0x33, 0x17, 0x0D, 0x04, 0x50, 0x7A, 0x33, \ 00586 0xA8, 0x55, 0x21, 0xAB, 0xDF, 0x1C, 0xBA, 0x64, \ 00587 0xEC, 0xFB, 0x85, 0x04, 0x58, 0xDB, 0xEF, 0x0A, \ 00588 0x8A, 0xEA, 0x71, 0x57, 0x5D, 0x06, 0x0C, 0x7D, \ 00589 0xB3, 0x97, 0x0F, 0x85, 0xA6, 0xE1, 0xE4, 0xC7, \ 00590 0xAB, 0xF5, 0xAE, 0x8C, 0xDB, 0x09, 0x33, 0xD7, \ 00591 0x1E, 0x8C, 0x94, 0xE0, 0x4A, 0x25, 0x61, 0x9D, \ 00592 0xCE, 0xE3, 0xD2, 0x26, 0x1A, 0xD2, 0xEE, 0x6B, \ 00593 0xF1, 0x2F, 0xFA, 0x06, 0xD9, 0x8A, 0x08, 0x64, \ 00594 0xD8, 0x76, 0x02, 0x73, 0x3E, 0xC8, 0x6A, 0x64, \ 00595 0x52, 0x1F, 0x2B, 0x18, 0x17, 0x7B, 0x20, 0x0C, \ 00596 0xBB, 0xE1, 0x17, 0x57, 0x7A, 0x61, 0x5D, 0x6C, \ 00597 0x77, 0x09, 0x88, 0xC0, 0xBA, 0xD9, 0x46, 0xE2, \ 00598 0x08, 0xE2, 0x4F, 0xA0, 0x74, 0xE5, 0xAB, 0x31, \ 00599 0x43, 0xDB, 0x5B, 0xFC, 0xE0, 0xFD, 0x10, 0x8E, \ 00600 0x4B, 0x82, 0xD1, 0x20, 0xA9, 0x3A, 0xD2, 0xCA, \ 00601 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } 00602 00603 #define MBEDTLS_DHM_RFC3526_MODP_3072_G_BIN { 0x02 } 00604 00605 #define MBEDTLS_DHM_RFC3526_MODP_4096_P_BIN { \ 00606 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \ 00607 0xC9, 0x0F, 0xDA, 0xA2, 0x21, 0x68, 0xC2, 0x34, \ 00608 0xC4, 0xC6, 0x62, 0x8B, 0x80, 0xDC, 0x1C, 0xD1, \ 00609 0x29, 0x02, 0x4E, 0x08, 0x8A, 0x67, 0xCC, 0x74, \ 00610 0x02, 0x0B, 0xBE, 0xA6, 0x3B, 0x13, 0x9B, 0x22, \ 00611 0x51, 0x4A, 0x08, 0x79, 0x8E, 0x34, 0x04, 0xDD, \ 00612 0xEF, 0x95, 0x19, 0xB3, 0xCD, 0x3A, 0x43, 0x1B, \ 00613 0x30, 0x2B, 0x0A, 0x6D, 0xF2, 0x5F, 0x14, 0x37, \ 00614 0x4F, 0xE1, 0x35, 0x6D, 0x6D, 0x51, 0xC2, 0x45, \ 00615 0xE4, 0x85, 0xB5, 0x76, 0x62, 0x5E, 0x7E, 0xC6, \ 00616 0xF4, 0x4C, 0x42, 0xE9, 0xA6, 0x37, 0xED, 0x6B, \ 00617 0x0B, 0xFF, 0x5C, 0xB6, 0xF4, 0x06, 0xB7, 0xED, \ 00618 0xEE, 0x38, 0x6B, 0xFB, 0x5A, 0x89, 0x9F, 0xA5, \ 00619 0xAE, 0x9F, 0x24, 0x11, 0x7C, 0x4B, 0x1F, 0xE6, \ 00620 0x49, 0x28, 0x66, 0x51, 0xEC, 0xE4, 0x5B, 0x3D, \ 00621 0xC2, 0x00, 0x7C, 0xB8, 0xA1, 0x63, 0xBF, 0x05, \ 00622 0x98, 0xDA, 0x48, 0x36, 0x1C, 0x55, 0xD3, 0x9A, \ 00623 0x69, 0x16, 0x3F, 0xA8, 0xFD, 0x24, 0xCF, 0x5F, \ 00624 0x83, 0x65, 0x5D, 0x23, 0xDC, 0xA3, 0xAD, 0x96, \ 00625 0x1C, 0x62, 0xF3, 0x56, 0x20, 0x85, 0x52, 0xBB, \ 00626 0x9E, 0xD5, 0x29, 0x07, 0x70, 0x96, 0x96, 0x6D, \ 00627 0x67, 0x0C, 0x35, 0x4E, 0x4A, 0xBC, 0x98, 0x04, \ 00628 0xF1, 0x74, 0x6C, 0x08, 0xCA, 0x18, 0x21, 0x7C, \ 00629 0x32, 0x90, 0x5E, 0x46, 0x2E, 0x36, 0xCE, 0x3B, \ 00630 0xE3, 0x9E, 0x77, 0x2C, 0x18, 0x0E, 0x86, 0x03, \ 00631 0x9B, 0x27, 0x83, 0xA2, 0xEC, 0x07, 0xA2, 0x8F, \ 00632 0xB5, 0xC5, 0x5D, 0xF0, 0x6F, 0x4C, 0x52, 0xC9, \ 00633 0xDE, 0x2B, 0xCB, 0xF6, 0x95, 0x58, 0x17, 0x18, \ 00634 0x39, 0x95, 0x49, 0x7C, 0xEA, 0x95, 0x6A, 0xE5, \ 00635 0x15, 0xD2, 0x26, 0x18, 0x98, 0xFA, 0x05, 0x10, \ 00636 0x15, 0x72, 0x8E, 0x5A, 0x8A, 0xAA, 0xC4, 0x2D, \ 00637 0xAD, 0x33, 0x17, 0x0D, 0x04, 0x50, 0x7A, 0x33, \ 00638 0xA8, 0x55, 0x21, 0xAB, 0xDF, 0x1C, 0xBA, 0x64, \ 00639 0xEC, 0xFB, 0x85, 0x04, 0x58, 0xDB, 0xEF, 0x0A, \ 00640 0x8A, 0xEA, 0x71, 0x57, 0x5D, 0x06, 0x0C, 0x7D, \ 00641 0xB3, 0x97, 0x0F, 0x85, 0xA6, 0xE1, 0xE4, 0xC7, \ 00642 0xAB, 0xF5, 0xAE, 0x8C, 0xDB, 0x09, 0x33, 0xD7, \ 00643 0x1E, 0x8C, 0x94, 0xE0, 0x4A, 0x25, 0x61, 0x9D, \ 00644 0xCE, 0xE3, 0xD2, 0x26, 0x1A, 0xD2, 0xEE, 0x6B, \ 00645 0xF1, 0x2F, 0xFA, 0x06, 0xD9, 0x8A, 0x08, 0x64, \ 00646 0xD8, 0x76, 0x02, 0x73, 0x3E, 0xC8, 0x6A, 0x64, \ 00647 0x52, 0x1F, 0x2B, 0x18, 0x17, 0x7B, 0x20, 0x0C, \ 00648 0xBB, 0xE1, 0x17, 0x57, 0x7A, 0x61, 0x5D, 0x6C, \ 00649 0x77, 0x09, 0x88, 0xC0, 0xBA, 0xD9, 0x46, 0xE2, \ 00650 0x08, 0xE2, 0x4F, 0xA0, 0x74, 0xE5, 0xAB, 0x31, \ 00651 0x43, 0xDB, 0x5B, 0xFC, 0xE0, 0xFD, 0x10, 0x8E, \ 00652 0x4B, 0x82, 0xD1, 0x20, 0xA9, 0x21, 0x08, 0x01, \ 00653 0x1A, 0x72, 0x3C, 0x12, 0xA7, 0x87, 0xE6, 0xD7, \ 00654 0x88, 0x71, 0x9A, 0x10, 0xBD, 0xBA, 0x5B, 0x26, \ 00655 0x99, 0xC3, 0x27, 0x18, 0x6A, 0xF4, 0xE2, 0x3C, \ 00656 0x1A, 0x94, 0x68, 0x34, 0xB6, 0x15, 0x0B, 0xDA, \ 00657 0x25, 0x83, 0xE9, 0xCA, 0x2A, 0xD4, 0x4C, 0xE8, \ 00658 0xDB, 0xBB, 0xC2, 0xDB, 0x04, 0xDE, 0x8E, 0xF9, \ 00659 0x2E, 0x8E, 0xFC, 0x14, 0x1F, 0xBE, 0xCA, 0xA6, \ 00660 0x28, 0x7C, 0x59, 0x47, 0x4E, 0x6B, 0xC0, 0x5D, \ 00661 0x99, 0xB2, 0x96, 0x4F, 0xA0, 0x90, 0xC3, 0xA2, \ 00662 0x23, 0x3B, 0xA1, 0x86, 0x51, 0x5B, 0xE7, 0xED, \ 00663 0x1F, 0x61, 0x29, 0x70, 0xCE, 0xE2, 0xD7, 0xAF, \ 00664 0xB8, 0x1B, 0xDD, 0x76, 0x21, 0x70, 0x48, 0x1C, \ 00665 0xD0, 0x06, 0x91, 0x27, 0xD5, 0xB0, 0x5A, 0xA9, \ 00666 0x93, 0xB4, 0xEA, 0x98, 0x8D, 0x8F, 0xDD, 0xC1, \ 00667 0x86, 0xFF, 0xB7, 0xDC, 0x90, 0xA6, 0xC0, 0x8F, \ 00668 0x4D, 0xF4, 0x35, 0xC9, 0x34, 0x06, 0x31, 0x99, \ 00669 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } 00670 00671 #define MBEDTLS_DHM_RFC3526_MODP_4096_G_BIN { 0x02 } 00672 00673 #define MBEDTLS_DHM_RFC7919_FFDHE2048_P_BIN { \ 00674 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \ 00675 0xAD, 0xF8, 0x54, 0x58, 0xA2, 0xBB, 0x4A, 0x9A, \ 00676 0xAF, 0xDC, 0x56, 0x20, 0x27, 0x3D, 0x3C, 0xF1, \ 00677 0xD8, 0xB9, 0xC5, 0x83, 0xCE, 0x2D, 0x36, 0x95, \ 00678 0xA9, 0xE1, 0x36, 0x41, 0x14, 0x64, 0x33, 0xFB, \ 00679 0xCC, 0x93, 0x9D, 0xCE, 0x24, 0x9B, 0x3E, 0xF9, \ 00680 0x7D, 0x2F, 0xE3, 0x63, 0x63, 0x0C, 0x75, 0xD8, \ 00681 0xF6, 0x81, 0xB2, 0x02, 0xAE, 0xC4, 0x61, 0x7A, \ 00682 0xD3, 0xDF, 0x1E, 0xD5, 0xD5, 0xFD, 0x65, 0x61, \ 00683 0x24, 0x33, 0xF5, 0x1F, 0x5F, 0x06, 0x6E, 0xD0, \ 00684 0x85, 0x63, 0x65, 0x55, 0x3D, 0xED, 0x1A, 0xF3, \ 00685 0xB5, 0x57, 0x13, 0x5E, 0x7F, 0x57, 0xC9, 0x35, \ 00686 0x98, 0x4F, 0x0C, 0x70, 0xE0, 0xE6, 0x8B, 0x77, \ 00687 0xE2, 0xA6, 0x89, 0xDA, 0xF3, 0xEF, 0xE8, 0x72, \ 00688 0x1D, 0xF1, 0x58, 0xA1, 0x36, 0xAD, 0xE7, 0x35, \ 00689 0x30, 0xAC, 0xCA, 0x4F, 0x48, 0x3A, 0x79, 0x7A, \ 00690 0xBC, 0x0A, 0xB1, 0x82, 0xB3, 0x24, 0xFB, 0x61, \ 00691 0xD1, 0x08, 0xA9, 0x4B, 0xB2, 0xC8, 0xE3, 0xFB, \ 00692 0xB9, 0x6A, 0xDA, 0xB7, 0x60, 0xD7, 0xF4, 0x68, \ 00693 0x1D, 0x4F, 0x42, 0xA3, 0xDE, 0x39, 0x4D, 0xF4, \ 00694 0xAE, 0x56, 0xED, 0xE7, 0x63, 0x72, 0xBB, 0x19, \ 00695 0x0B, 0x07, 0xA7, 0xC8, 0xEE, 0x0A, 0x6D, 0x70, \ 00696 0x9E, 0x02, 0xFC, 0xE1, 0xCD, 0xF7, 0xE2, 0xEC, \ 00697 0xC0, 0x34, 0x04, 0xCD, 0x28, 0x34, 0x2F, 0x61, \ 00698 0x91, 0x72, 0xFE, 0x9C, 0xE9, 0x85, 0x83, 0xFF, \ 00699 0x8E, 0x4F, 0x12, 0x32, 0xEE, 0xF2, 0x81, 0x83, \ 00700 0xC3, 0xFE, 0x3B, 0x1B, 0x4C, 0x6F, 0xAD, 0x73, \ 00701 0x3B, 0xB5, 0xFC, 0xBC, 0x2E, 0xC2, 0x20, 0x05, \ 00702 0xC5, 0x8E, 0xF1, 0x83, 0x7D, 0x16, 0x83, 0xB2, \ 00703 0xC6, 0xF3, 0x4A, 0x26, 0xC1, 0xB2, 0xEF, 0xFA, \ 00704 0x88, 0x6B, 0x42, 0x38, 0x61, 0x28, 0x5C, 0x97, \ 00705 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, } 00706 00707 #define MBEDTLS_DHM_RFC7919_FFDHE2048_G_BIN { 0x02 } 00708 00709 #define MBEDTLS_DHM_RFC7919_FFDHE3072_P_BIN { \ 00710 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \ 00711 0xAD, 0xF8, 0x54, 0x58, 0xA2, 0xBB, 0x4A, 0x9A, \ 00712 0xAF, 0xDC, 0x56, 0x20, 0x27, 0x3D, 0x3C, 0xF1, \ 00713 0xD8, 0xB9, 0xC5, 0x83, 0xCE, 0x2D, 0x36, 0x95, \ 00714 0xA9, 0xE1, 0x36, 0x41, 0x14, 0x64, 0x33, 0xFB, \ 00715 0xCC, 0x93, 0x9D, 0xCE, 0x24, 0x9B, 0x3E, 0xF9, \ 00716 0x7D, 0x2F, 0xE3, 0x63, 0x63, 0x0C, 0x75, 0xD8, \ 00717 0xF6, 0x81, 0xB2, 0x02, 0xAE, 0xC4, 0x61, 0x7A, \ 00718 0xD3, 0xDF, 0x1E, 0xD5, 0xD5, 0xFD, 0x65, 0x61, \ 00719 0x24, 0x33, 0xF5, 0x1F, 0x5F, 0x06, 0x6E, 0xD0, \ 00720 0x85, 0x63, 0x65, 0x55, 0x3D, 0xED, 0x1A, 0xF3, \ 00721 0xB5, 0x57, 0x13, 0x5E, 0x7F, 0x57, 0xC9, 0x35, \ 00722 0x98, 0x4F, 0x0C, 0x70, 0xE0, 0xE6, 0x8B, 0x77, \ 00723 0xE2, 0xA6, 0x89, 0xDA, 0xF3, 0xEF, 0xE8, 0x72, \ 00724 0x1D, 0xF1, 0x58, 0xA1, 0x36, 0xAD, 0xE7, 0x35, \ 00725 0x30, 0xAC, 0xCA, 0x4F, 0x48, 0x3A, 0x79, 0x7A, \ 00726 0xBC, 0x0A, 0xB1, 0x82, 0xB3, 0x24, 0xFB, 0x61, \ 00727 0xD1, 0x08, 0xA9, 0x4B, 0xB2, 0xC8, 0xE3, 0xFB, \ 00728 0xB9, 0x6A, 0xDA, 0xB7, 0x60, 0xD7, 0xF4, 0x68, \ 00729 0x1D, 0x4F, 0x42, 0xA3, 0xDE, 0x39, 0x4D, 0xF4, \ 00730 0xAE, 0x56, 0xED, 0xE7, 0x63, 0x72, 0xBB, 0x19, \ 00731 0x0B, 0x07, 0xA7, 0xC8, 0xEE, 0x0A, 0x6D, 0x70, \ 00732 0x9E, 0x02, 0xFC, 0xE1, 0xCD, 0xF7, 0xE2, 0xEC, \ 00733 0xC0, 0x34, 0x04, 0xCD, 0x28, 0x34, 0x2F, 0x61, \ 00734 0x91, 0x72, 0xFE, 0x9C, 0xE9, 0x85, 0x83, 0xFF, \ 00735 0x8E, 0x4F, 0x12, 0x32, 0xEE, 0xF2, 0x81, 0x83, \ 00736 0xC3, 0xFE, 0x3B, 0x1B, 0x4C, 0x6F, 0xAD, 0x73, \ 00737 0x3B, 0xB5, 0xFC, 0xBC, 0x2E, 0xC2, 0x20, 0x05, \ 00738 0xC5, 0x8E, 0xF1, 0x83, 0x7D, 0x16, 0x83, 0xB2, \ 00739 0xC6, 0xF3, 0x4A, 0x26, 0xC1, 0xB2, 0xEF, 0xFA, \ 00740 0x88, 0x6B, 0x42, 0x38, 0x61, 0x1F, 0xCF, 0xDC, \ 00741 0xDE, 0x35, 0x5B, 0x3B, 0x65, 0x19, 0x03, 0x5B, \ 00742 0xBC, 0x34, 0xF4, 0xDE, 0xF9, 0x9C, 0x02, 0x38, \ 00743 0x61, 0xB4, 0x6F, 0xC9, 0xD6, 0xE6, 0xC9, 0x07, \ 00744 0x7A, 0xD9, 0x1D, 0x26, 0x91, 0xF7, 0xF7, 0xEE, \ 00745 0x59, 0x8C, 0xB0, 0xFA, 0xC1, 0x86, 0xD9, 0x1C, \ 00746 0xAE, 0xFE, 0x13, 0x09, 0x85, 0x13, 0x92, 0x70, \ 00747 0xB4, 0x13, 0x0C, 0x93, 0xBC, 0x43, 0x79, 0x44, \ 00748 0xF4, 0xFD, 0x44, 0x52, 0xE2, 0xD7, 0x4D, 0xD3, \ 00749 0x64, 0xF2, 0xE2, 0x1E, 0x71, 0xF5, 0x4B, 0xFF, \ 00750 0x5C, 0xAE, 0x82, 0xAB, 0x9C, 0x9D, 0xF6, 0x9E, \ 00751 0xE8, 0x6D, 0x2B, 0xC5, 0x22, 0x36, 0x3A, 0x0D, \ 00752 0xAB, 0xC5, 0x21, 0x97, 0x9B, 0x0D, 0xEA, 0xDA, \ 00753 0x1D, 0xBF, 0x9A, 0x42, 0xD5, 0xC4, 0x48, 0x4E, \ 00754 0x0A, 0xBC, 0xD0, 0x6B, 0xFA, 0x53, 0xDD, 0xEF, \ 00755 0x3C, 0x1B, 0x20, 0xEE, 0x3F, 0xD5, 0x9D, 0x7C, \ 00756 0x25, 0xE4, 0x1D, 0x2B, 0x66, 0xC6, 0x2E, 0x37, \ 00757 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } 00758 00759 #define MBEDTLS_DHM_RFC7919_FFDHE3072_G_BIN { 0x02 } 00760 00761 #define MBEDTLS_DHM_RFC7919_FFDHE4096_P_BIN { \ 00762 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \ 00763 0xAD, 0xF8, 0x54, 0x58, 0xA2, 0xBB, 0x4A, 0x9A, \ 00764 0xAF, 0xDC, 0x56, 0x20, 0x27, 0x3D, 0x3C, 0xF1, \ 00765 0xD8, 0xB9, 0xC5, 0x83, 0xCE, 0x2D, 0x36, 0x95, \ 00766 0xA9, 0xE1, 0x36, 0x41, 0x14, 0x64, 0x33, 0xFB, \ 00767 0xCC, 0x93, 0x9D, 0xCE, 0x24, 0x9B, 0x3E, 0xF9, \ 00768 0x7D, 0x2F, 0xE3, 0x63, 0x63, 0x0C, 0x75, 0xD8, \ 00769 0xF6, 0x81, 0xB2, 0x02, 0xAE, 0xC4, 0x61, 0x7A, \ 00770 0xD3, 0xDF, 0x1E, 0xD5, 0xD5, 0xFD, 0x65, 0x61, \ 00771 0x24, 0x33, 0xF5, 0x1F, 0x5F, 0x06, 0x6E, 0xD0, \ 00772 0x85, 0x63, 0x65, 0x55, 0x3D, 0xED, 0x1A, 0xF3, \ 00773 0xB5, 0x57, 0x13, 0x5E, 0x7F, 0x57, 0xC9, 0x35, \ 00774 0x98, 0x4F, 0x0C, 0x70, 0xE0, 0xE6, 0x8B, 0x77, \ 00775 0xE2, 0xA6, 0x89, 0xDA, 0xF3, 0xEF, 0xE8, 0x72, \ 00776 0x1D, 0xF1, 0x58, 0xA1, 0x36, 0xAD, 0xE7, 0x35, \ 00777 0x30, 0xAC, 0xCA, 0x4F, 0x48, 0x3A, 0x79, 0x7A, \ 00778 0xBC, 0x0A, 0xB1, 0x82, 0xB3, 0x24, 0xFB, 0x61, \ 00779 0xD1, 0x08, 0xA9, 0x4B, 0xB2, 0xC8, 0xE3, 0xFB, \ 00780 0xB9, 0x6A, 0xDA, 0xB7, 0x60, 0xD7, 0xF4, 0x68, \ 00781 0x1D, 0x4F, 0x42, 0xA3, 0xDE, 0x39, 0x4D, 0xF4, \ 00782 0xAE, 0x56, 0xED, 0xE7, 0x63, 0x72, 0xBB, 0x19, \ 00783 0x0B, 0x07, 0xA7, 0xC8, 0xEE, 0x0A, 0x6D, 0x70, \ 00784 0x9E, 0x02, 0xFC, 0xE1, 0xCD, 0xF7, 0xE2, 0xEC, \ 00785 0xC0, 0x34, 0x04, 0xCD, 0x28, 0x34, 0x2F, 0x61, \ 00786 0x91, 0x72, 0xFE, 0x9C, 0xE9, 0x85, 0x83, 0xFF, \ 00787 0x8E, 0x4F, 0x12, 0x32, 0xEE, 0xF2, 0x81, 0x83, \ 00788 0xC3, 0xFE, 0x3B, 0x1B, 0x4C, 0x6F, 0xAD, 0x73, \ 00789 0x3B, 0xB5, 0xFC, 0xBC, 0x2E, 0xC2, 0x20, 0x05, \ 00790 0xC5, 0x8E, 0xF1, 0x83, 0x7D, 0x16, 0x83, 0xB2, \ 00791 0xC6, 0xF3, 0x4A, 0x26, 0xC1, 0xB2, 0xEF, 0xFA, \ 00792 0x88, 0x6B, 0x42, 0x38, 0x61, 0x1F, 0xCF, 0xDC, \ 00793 0xDE, 0x35, 0x5B, 0x3B, 0x65, 0x19, 0x03, 0x5B, \ 00794 0xBC, 0x34, 0xF4, 0xDE, 0xF9, 0x9C, 0x02, 0x38, \ 00795 0x61, 0xB4, 0x6F, 0xC9, 0xD6, 0xE6, 0xC9, 0x07, \ 00796 0x7A, 0xD9, 0x1D, 0x26, 0x91, 0xF7, 0xF7, 0xEE, \ 00797 0x59, 0x8C, 0xB0, 0xFA, 0xC1, 0x86, 0xD9, 0x1C, \ 00798 0xAE, 0xFE, 0x13, 0x09, 0x85, 0x13, 0x92, 0x70, \ 00799 0xB4, 0x13, 0x0C, 0x93, 0xBC, 0x43, 0x79, 0x44, \ 00800 0xF4, 0xFD, 0x44, 0x52, 0xE2, 0xD7, 0x4D, 0xD3, \ 00801 0x64, 0xF2, 0xE2, 0x1E, 0x71, 0xF5, 0x4B, 0xFF, \ 00802 0x5C, 0xAE, 0x82, 0xAB, 0x9C, 0x9D, 0xF6, 0x9E, \ 00803 0xE8, 0x6D, 0x2B, 0xC5, 0x22, 0x36, 0x3A, 0x0D, \ 00804 0xAB, 0xC5, 0x21, 0x97, 0x9B, 0x0D, 0xEA, 0xDA, \ 00805 0x1D, 0xBF, 0x9A, 0x42, 0xD5, 0xC4, 0x48, 0x4E, \ 00806 0x0A, 0xBC, 0xD0, 0x6B, 0xFA, 0x53, 0xDD, 0xEF, \ 00807 0x3C, 0x1B, 0x20, 0xEE, 0x3F, 0xD5, 0x9D, 0x7C, \ 00808 0x25, 0xE4, 0x1D, 0x2B, 0x66, 0x9E, 0x1E, 0xF1, \ 00809 0x6E, 0x6F, 0x52, 0xC3, 0x16, 0x4D, 0xF4, 0xFB, \ 00810 0x79, 0x30, 0xE9, 0xE4, 0xE5, 0x88, 0x57, 0xB6, \ 00811 0xAC, 0x7D, 0x5F, 0x42, 0xD6, 0x9F, 0x6D, 0x18, \ 00812 0x77, 0x63, 0xCF, 0x1D, 0x55, 0x03, 0x40, 0x04, \ 00813 0x87, 0xF5, 0x5B, 0xA5, 0x7E, 0x31, 0xCC, 0x7A, \ 00814 0x71, 0x35, 0xC8, 0x86, 0xEF, 0xB4, 0x31, 0x8A, \ 00815 0xED, 0x6A, 0x1E, 0x01, 0x2D, 0x9E, 0x68, 0x32, \ 00816 0xA9, 0x07, 0x60, 0x0A, 0x91, 0x81, 0x30, 0xC4, \ 00817 0x6D, 0xC7, 0x78, 0xF9, 0x71, 0xAD, 0x00, 0x38, \ 00818 0x09, 0x29, 0x99, 0xA3, 0x33, 0xCB, 0x8B, 0x7A, \ 00819 0x1A, 0x1D, 0xB9, 0x3D, 0x71, 0x40, 0x00, 0x3C, \ 00820 0x2A, 0x4E, 0xCE, 0xA9, 0xF9, 0x8D, 0x0A, 0xCC, \ 00821 0x0A, 0x82, 0x91, 0xCD, 0xCE, 0xC9, 0x7D, 0xCF, \ 00822 0x8E, 0xC9, 0xB5, 0x5A, 0x7F, 0x88, 0xA4, 0x6B, \ 00823 0x4D, 0xB5, 0xA8, 0x51, 0xF4, 0x41, 0x82, 0xE1, \ 00824 0xC6, 0x8A, 0x00, 0x7E, 0x5E, 0x65, 0x5F, 0x6A, \ 00825 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } 00826 00827 #define MBEDTLS_DHM_RFC7919_FFDHE4096_G_BIN { 0x02 } 00828 00829 #define MBEDTLS_DHM_RFC7919_FFDHE6144_P_BIN { \ 00830 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \ 00831 0xAD, 0xF8, 0x54, 0x58, 0xA2, 0xBB, 0x4A, 0x9A, \ 00832 0xAF, 0xDC, 0x56, 0x20, 0x27, 0x3D, 0x3C, 0xF1, \ 00833 0xD8, 0xB9, 0xC5, 0x83, 0xCE, 0x2D, 0x36, 0x95, \ 00834 0xA9, 0xE1, 0x36, 0x41, 0x14, 0x64, 0x33, 0xFB, \ 00835 0xCC, 0x93, 0x9D, 0xCE, 0x24, 0x9B, 0x3E, 0xF9, \ 00836 0x7D, 0x2F, 0xE3, 0x63, 0x63, 0x0C, 0x75, 0xD8, \ 00837 0xF6, 0x81, 0xB2, 0x02, 0xAE, 0xC4, 0x61, 0x7A, \ 00838 0xD3, 0xDF, 0x1E, 0xD5, 0xD5, 0xFD, 0x65, 0x61, \ 00839 0x24, 0x33, 0xF5, 0x1F, 0x5F, 0x06, 0x6E, 0xD0, \ 00840 0x85, 0x63, 0x65, 0x55, 0x3D, 0xED, 0x1A, 0xF3, \ 00841 0xB5, 0x57, 0x13, 0x5E, 0x7F, 0x57, 0xC9, 0x35, \ 00842 0x98, 0x4F, 0x0C, 0x70, 0xE0, 0xE6, 0x8B, 0x77, \ 00843 0xE2, 0xA6, 0x89, 0xDA, 0xF3, 0xEF, 0xE8, 0x72, \ 00844 0x1D, 0xF1, 0x58, 0xA1, 0x36, 0xAD, 0xE7, 0x35, \ 00845 0x30, 0xAC, 0xCA, 0x4F, 0x48, 0x3A, 0x79, 0x7A, \ 00846 0xBC, 0x0A, 0xB1, 0x82, 0xB3, 0x24, 0xFB, 0x61, \ 00847 0xD1, 0x08, 0xA9, 0x4B, 0xB2, 0xC8, 0xE3, 0xFB, \ 00848 0xB9, 0x6A, 0xDA, 0xB7, 0x60, 0xD7, 0xF4, 0x68, \ 00849 0x1D, 0x4F, 0x42, 0xA3, 0xDE, 0x39, 0x4D, 0xF4, \ 00850 0xAE, 0x56, 0xED, 0xE7, 0x63, 0x72, 0xBB, 0x19, \ 00851 0x0B, 0x07, 0xA7, 0xC8, 0xEE, 0x0A, 0x6D, 0x70, \ 00852 0x9E, 0x02, 0xFC, 0xE1, 0xCD, 0xF7, 0xE2, 0xEC, \ 00853 0xC0, 0x34, 0x04, 0xCD, 0x28, 0x34, 0x2F, 0x61, \ 00854 0x91, 0x72, 0xFE, 0x9C, 0xE9, 0x85, 0x83, 0xFF, \ 00855 0x8E, 0x4F, 0x12, 0x32, 0xEE, 0xF2, 0x81, 0x83, \ 00856 0xC3, 0xFE, 0x3B, 0x1B, 0x4C, 0x6F, 0xAD, 0x73, \ 00857 0x3B, 0xB5, 0xFC, 0xBC, 0x2E, 0xC2, 0x20, 0x05, \ 00858 0xC5, 0x8E, 0xF1, 0x83, 0x7D, 0x16, 0x83, 0xB2, \ 00859 0xC6, 0xF3, 0x4A, 0x26, 0xC1, 0xB2, 0xEF, 0xFA, \ 00860 0x88, 0x6B, 0x42, 0x38, 0x61, 0x1F, 0xCF, 0xDC, \ 00861 0xDE, 0x35, 0x5B, 0x3B, 0x65, 0x19, 0x03, 0x5B, \ 00862 0xBC, 0x34, 0xF4, 0xDE, 0xF9, 0x9C, 0x02, 0x38, \ 00863 0x61, 0xB4, 0x6F, 0xC9, 0xD6, 0xE6, 0xC9, 0x07, \ 00864 0x7A, 0xD9, 0x1D, 0x26, 0x91, 0xF7, 0xF7, 0xEE, \ 00865 0x59, 0x8C, 0xB0, 0xFA, 0xC1, 0x86, 0xD9, 0x1C, \ 00866 0xAE, 0xFE, 0x13, 0x09, 0x85, 0x13, 0x92, 0x70, \ 00867 0xB4, 0x13, 0x0C, 0x93, 0xBC, 0x43, 0x79, 0x44, \ 00868 0xF4, 0xFD, 0x44, 0x52, 0xE2, 0xD7, 0x4D, 0xD3, \ 00869 0x64, 0xF2, 0xE2, 0x1E, 0x71, 0xF5, 0x4B, 0xFF, \ 00870 0x5C, 0xAE, 0x82, 0xAB, 0x9C, 0x9D, 0xF6, 0x9E, \ 00871 0xE8, 0x6D, 0x2B, 0xC5, 0x22, 0x36, 0x3A, 0x0D, \ 00872 0xAB, 0xC5, 0x21, 0x97, 0x9B, 0x0D, 0xEA, 0xDA, \ 00873 0x1D, 0xBF, 0x9A, 0x42, 0xD5, 0xC4, 0x48, 0x4E, \ 00874 0x0A, 0xBC, 0xD0, 0x6B, 0xFA, 0x53, 0xDD, 0xEF, \ 00875 0x3C, 0x1B, 0x20, 0xEE, 0x3F, 0xD5, 0x9D, 0x7C, \ 00876 0x25, 0xE4, 0x1D, 0x2B, 0x66, 0x9E, 0x1E, 0xF1, \ 00877 0x6E, 0x6F, 0x52, 0xC3, 0x16, 0x4D, 0xF4, 0xFB, \ 00878 0x79, 0x30, 0xE9, 0xE4, 0xE5, 0x88, 0x57, 0xB6, \ 00879 0xAC, 0x7D, 0x5F, 0x42, 0xD6, 0x9F, 0x6D, 0x18, \ 00880 0x77, 0x63, 0xCF, 0x1D, 0x55, 0x03, 0x40, 0x04, \ 00881 0x87, 0xF5, 0x5B, 0xA5, 0x7E, 0x31, 0xCC, 0x7A, \ 00882 0x71, 0x35, 0xC8, 0x86, 0xEF, 0xB4, 0x31, 0x8A, \ 00883 0xED, 0x6A, 0x1E, 0x01, 0x2D, 0x9E, 0x68, 0x32, \ 00884 0xA9, 0x07, 0x60, 0x0A, 0x91, 0x81, 0x30, 0xC4, \ 00885 0x6D, 0xC7, 0x78, 0xF9, 0x71, 0xAD, 0x00, 0x38, \ 00886 0x09, 0x29, 0x99, 0xA3, 0x33, 0xCB, 0x8B, 0x7A, \ 00887 0x1A, 0x1D, 0xB9, 0x3D, 0x71, 0x40, 0x00, 0x3C, \ 00888 0x2A, 0x4E, 0xCE, 0xA9, 0xF9, 0x8D, 0x0A, 0xCC, \ 00889 0x0A, 0x82, 0x91, 0xCD, 0xCE, 0xC9, 0x7D, 0xCF, \ 00890 0x8E, 0xC9, 0xB5, 0x5A, 0x7F, 0x88, 0xA4, 0x6B, \ 00891 0x4D, 0xB5, 0xA8, 0x51, 0xF4, 0x41, 0x82, 0xE1, \ 00892 0xC6, 0x8A, 0x00, 0x7E, 0x5E, 0x0D, 0xD9, 0x02, \ 00893 0x0B, 0xFD, 0x64, 0xB6, 0x45, 0x03, 0x6C, 0x7A, \ 00894 0x4E, 0x67, 0x7D, 0x2C, 0x38, 0x53, 0x2A, 0x3A, \ 00895 0x23, 0xBA, 0x44, 0x42, 0xCA, 0xF5, 0x3E, 0xA6, \ 00896 0x3B, 0xB4, 0x54, 0x32, 0x9B, 0x76, 0x24, 0xC8, \ 00897 0x91, 0x7B, 0xDD, 0x64, 0xB1, 0xC0, 0xFD, 0x4C, \ 00898 0xB3, 0x8E, 0x8C, 0x33, 0x4C, 0x70, 0x1C, 0x3A, \ 00899 0xCD, 0xAD, 0x06, 0x57, 0xFC, 0xCF, 0xEC, 0x71, \ 00900 0x9B, 0x1F, 0x5C, 0x3E, 0x4E, 0x46, 0x04, 0x1F, \ 00901 0x38, 0x81, 0x47, 0xFB, 0x4C, 0xFD, 0xB4, 0x77, \ 00902 0xA5, 0x24, 0x71, 0xF7, 0xA9, 0xA9, 0x69, 0x10, \ 00903 0xB8, 0x55, 0x32, 0x2E, 0xDB, 0x63, 0x40, 0xD8, \ 00904 0xA0, 0x0E, 0xF0, 0x92, 0x35, 0x05, 0x11, 0xE3, \ 00905 0x0A, 0xBE, 0xC1, 0xFF, 0xF9, 0xE3, 0xA2, 0x6E, \ 00906 0x7F, 0xB2, 0x9F, 0x8C, 0x18, 0x30, 0x23, 0xC3, \ 00907 0x58, 0x7E, 0x38, 0xDA, 0x00, 0x77, 0xD9, 0xB4, \ 00908 0x76, 0x3E, 0x4E, 0x4B, 0x94, 0xB2, 0xBB, 0xC1, \ 00909 0x94, 0xC6, 0x65, 0x1E, 0x77, 0xCA, 0xF9, 0x92, \ 00910 0xEE, 0xAA, 0xC0, 0x23, 0x2A, 0x28, 0x1B, 0xF6, \ 00911 0xB3, 0xA7, 0x39, 0xC1, 0x22, 0x61, 0x16, 0x82, \ 00912 0x0A, 0xE8, 0xDB, 0x58, 0x47, 0xA6, 0x7C, 0xBE, \ 00913 0xF9, 0xC9, 0x09, 0x1B, 0x46, 0x2D, 0x53, 0x8C, \ 00914 0xD7, 0x2B, 0x03, 0x74, 0x6A, 0xE7, 0x7F, 0x5E, \ 00915 0x62, 0x29, 0x2C, 0x31, 0x15, 0x62, 0xA8, 0x46, \ 00916 0x50, 0x5D, 0xC8, 0x2D, 0xB8, 0x54, 0x33, 0x8A, \ 00917 0xE4, 0x9F, 0x52, 0x35, 0xC9, 0x5B, 0x91, 0x17, \ 00918 0x8C, 0xCF, 0x2D, 0xD5, 0xCA, 0xCE, 0xF4, 0x03, \ 00919 0xEC, 0x9D, 0x18, 0x10, 0xC6, 0x27, 0x2B, 0x04, \ 00920 0x5B, 0x3B, 0x71, 0xF9, 0xDC, 0x6B, 0x80, 0xD6, \ 00921 0x3F, 0xDD, 0x4A, 0x8E, 0x9A, 0xDB, 0x1E, 0x69, \ 00922 0x62, 0xA6, 0x95, 0x26, 0xD4, 0x31, 0x61, 0xC1, \ 00923 0xA4, 0x1D, 0x57, 0x0D, 0x79, 0x38, 0xDA, 0xD4, \ 00924 0xA4, 0x0E, 0x32, 0x9C, 0xD0, 0xE4, 0x0E, 0x65, \ 00925 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } 00926 00927 #define MBEDTLS_DHM_RFC7919_FFDHE6144_G_BIN { 0x02 } 00928 00929 #define MBEDTLS_DHM_RFC7919_FFDHE8192_P_BIN { \ 00930 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, \ 00931 0xAD, 0xF8, 0x54, 0x58, 0xA2, 0xBB, 0x4A, 0x9A, \ 00932 0xAF, 0xDC, 0x56, 0x20, 0x27, 0x3D, 0x3C, 0xF1, \ 00933 0xD8, 0xB9, 0xC5, 0x83, 0xCE, 0x2D, 0x36, 0x95, \ 00934 0xA9, 0xE1, 0x36, 0x41, 0x14, 0x64, 0x33, 0xFB, \ 00935 0xCC, 0x93, 0x9D, 0xCE, 0x24, 0x9B, 0x3E, 0xF9, \ 00936 0x7D, 0x2F, 0xE3, 0x63, 0x63, 0x0C, 0x75, 0xD8, \ 00937 0xF6, 0x81, 0xB2, 0x02, 0xAE, 0xC4, 0x61, 0x7A, \ 00938 0xD3, 0xDF, 0x1E, 0xD5, 0xD5, 0xFD, 0x65, 0x61, \ 00939 0x24, 0x33, 0xF5, 0x1F, 0x5F, 0x06, 0x6E, 0xD0, \ 00940 0x85, 0x63, 0x65, 0x55, 0x3D, 0xED, 0x1A, 0xF3, \ 00941 0xB5, 0x57, 0x13, 0x5E, 0x7F, 0x57, 0xC9, 0x35, \ 00942 0x98, 0x4F, 0x0C, 0x70, 0xE0, 0xE6, 0x8B, 0x77, \ 00943 0xE2, 0xA6, 0x89, 0xDA, 0xF3, 0xEF, 0xE8, 0x72, \ 00944 0x1D, 0xF1, 0x58, 0xA1, 0x36, 0xAD, 0xE7, 0x35, \ 00945 0x30, 0xAC, 0xCA, 0x4F, 0x48, 0x3A, 0x79, 0x7A, \ 00946 0xBC, 0x0A, 0xB1, 0x82, 0xB3, 0x24, 0xFB, 0x61, \ 00947 0xD1, 0x08, 0xA9, 0x4B, 0xB2, 0xC8, 0xE3, 0xFB, \ 00948 0xB9, 0x6A, 0xDA, 0xB7, 0x60, 0xD7, 0xF4, 0x68, \ 00949 0x1D, 0x4F, 0x42, 0xA3, 0xDE, 0x39, 0x4D, 0xF4, \ 00950 0xAE, 0x56, 0xED, 0xE7, 0x63, 0x72, 0xBB, 0x19, \ 00951 0x0B, 0x07, 0xA7, 0xC8, 0xEE, 0x0A, 0x6D, 0x70, \ 00952 0x9E, 0x02, 0xFC, 0xE1, 0xCD, 0xF7, 0xE2, 0xEC, \ 00953 0xC0, 0x34, 0x04, 0xCD, 0x28, 0x34, 0x2F, 0x61, \ 00954 0x91, 0x72, 0xFE, 0x9C, 0xE9, 0x85, 0x83, 0xFF, \ 00955 0x8E, 0x4F, 0x12, 0x32, 0xEE, 0xF2, 0x81, 0x83, \ 00956 0xC3, 0xFE, 0x3B, 0x1B, 0x4C, 0x6F, 0xAD, 0x73, \ 00957 0x3B, 0xB5, 0xFC, 0xBC, 0x2E, 0xC2, 0x20, 0x05, \ 00958 0xC5, 0x8E, 0xF1, 0x83, 0x7D, 0x16, 0x83, 0xB2, \ 00959 0xC6, 0xF3, 0x4A, 0x26, 0xC1, 0xB2, 0xEF, 0xFA, \ 00960 0x88, 0x6B, 0x42, 0x38, 0x61, 0x1F, 0xCF, 0xDC, \ 00961 0xDE, 0x35, 0x5B, 0x3B, 0x65, 0x19, 0x03, 0x5B, \ 00962 0xBC, 0x34, 0xF4, 0xDE, 0xF9, 0x9C, 0x02, 0x38, \ 00963 0x61, 0xB4, 0x6F, 0xC9, 0xD6, 0xE6, 0xC9, 0x07, \ 00964 0x7A, 0xD9, 0x1D, 0x26, 0x91, 0xF7, 0xF7, 0xEE, \ 00965 0x59, 0x8C, 0xB0, 0xFA, 0xC1, 0x86, 0xD9, 0x1C, \ 00966 0xAE, 0xFE, 0x13, 0x09, 0x85, 0x13, 0x92, 0x70, \ 00967 0xB4, 0x13, 0x0C, 0x93, 0xBC, 0x43, 0x79, 0x44, \ 00968 0xF4, 0xFD, 0x44, 0x52, 0xE2, 0xD7, 0x4D, 0xD3, \ 00969 0x64, 0xF2, 0xE2, 0x1E, 0x71, 0xF5, 0x4B, 0xFF, \ 00970 0x5C, 0xAE, 0x82, 0xAB, 0x9C, 0x9D, 0xF6, 0x9E, \ 00971 0xE8, 0x6D, 0x2B, 0xC5, 0x22, 0x36, 0x3A, 0x0D, \ 00972 0xAB, 0xC5, 0x21, 0x97, 0x9B, 0x0D, 0xEA, 0xDA, \ 00973 0x1D, 0xBF, 0x9A, 0x42, 0xD5, 0xC4, 0x48, 0x4E, \ 00974 0x0A, 0xBC, 0xD0, 0x6B, 0xFA, 0x53, 0xDD, 0xEF, \ 00975 0x3C, 0x1B, 0x20, 0xEE, 0x3F, 0xD5, 0x9D, 0x7C, \ 00976 0x25, 0xE4, 0x1D, 0x2B, 0x66, 0x9E, 0x1E, 0xF1, \ 00977 0x6E, 0x6F, 0x52, 0xC3, 0x16, 0x4D, 0xF4, 0xFB, \ 00978 0x79, 0x30, 0xE9, 0xE4, 0xE5, 0x88, 0x57, 0xB6, \ 00979 0xAC, 0x7D, 0x5F, 0x42, 0xD6, 0x9F, 0x6D, 0x18, \ 00980 0x77, 0x63, 0xCF, 0x1D, 0x55, 0x03, 0x40, 0x04, \ 00981 0x87, 0xF5, 0x5B, 0xA5, 0x7E, 0x31, 0xCC, 0x7A, \ 00982 0x71, 0x35, 0xC8, 0x86, 0xEF, 0xB4, 0x31, 0x8A, \ 00983 0xED, 0x6A, 0x1E, 0x01, 0x2D, 0x9E, 0x68, 0x32, \ 00984 0xA9, 0x07, 0x60, 0x0A, 0x91, 0x81, 0x30, 0xC4, \ 00985 0x6D, 0xC7, 0x78, 0xF9, 0x71, 0xAD, 0x00, 0x38, \ 00986 0x09, 0x29, 0x99, 0xA3, 0x33, 0xCB, 0x8B, 0x7A, \ 00987 0x1A, 0x1D, 0xB9, 0x3D, 0x71, 0x40, 0x00, 0x3C, \ 00988 0x2A, 0x4E, 0xCE, 0xA9, 0xF9, 0x8D, 0x0A, 0xCC, \ 00989 0x0A, 0x82, 0x91, 0xCD, 0xCE, 0xC9, 0x7D, 0xCF, \ 00990 0x8E, 0xC9, 0xB5, 0x5A, 0x7F, 0x88, 0xA4, 0x6B, \ 00991 0x4D, 0xB5, 0xA8, 0x51, 0xF4, 0x41, 0x82, 0xE1, \ 00992 0xC6, 0x8A, 0x00, 0x7E, 0x5E, 0x0D, 0xD9, 0x02, \ 00993 0x0B, 0xFD, 0x64, 0xB6, 0x45, 0x03, 0x6C, 0x7A, \ 00994 0x4E, 0x67, 0x7D, 0x2C, 0x38, 0x53, 0x2A, 0x3A, \ 00995 0x23, 0xBA, 0x44, 0x42, 0xCA, 0xF5, 0x3E, 0xA6, \ 00996 0x3B, 0xB4, 0x54, 0x32, 0x9B, 0x76, 0x24, 0xC8, \ 00997 0x91, 0x7B, 0xDD, 0x64, 0xB1, 0xC0, 0xFD, 0x4C, \ 00998 0xB3, 0x8E, 0x8C, 0x33, 0x4C, 0x70, 0x1C, 0x3A, \ 00999 0xCD, 0xAD, 0x06, 0x57, 0xFC, 0xCF, 0xEC, 0x71, \ 01000 0x9B, 0x1F, 0x5C, 0x3E, 0x4E, 0x46, 0x04, 0x1F, \ 01001 0x38, 0x81, 0x47, 0xFB, 0x4C, 0xFD, 0xB4, 0x77, \ 01002 0xA5, 0x24, 0x71, 0xF7, 0xA9, 0xA9, 0x69, 0x10, \ 01003 0xB8, 0x55, 0x32, 0x2E, 0xDB, 0x63, 0x40, 0xD8, \ 01004 0xA0, 0x0E, 0xF0, 0x92, 0x35, 0x05, 0x11, 0xE3, \ 01005 0x0A, 0xBE, 0xC1, 0xFF, 0xF9, 0xE3, 0xA2, 0x6E, \ 01006 0x7F, 0xB2, 0x9F, 0x8C, 0x18, 0x30, 0x23, 0xC3, \ 01007 0x58, 0x7E, 0x38, 0xDA, 0x00, 0x77, 0xD9, 0xB4, \ 01008 0x76, 0x3E, 0x4E, 0x4B, 0x94, 0xB2, 0xBB, 0xC1, \ 01009 0x94, 0xC6, 0x65, 0x1E, 0x77, 0xCA, 0xF9, 0x92, \ 01010 0xEE, 0xAA, 0xC0, 0x23, 0x2A, 0x28, 0x1B, 0xF6, \ 01011 0xB3, 0xA7, 0x39, 0xC1, 0x22, 0x61, 0x16, 0x82, \ 01012 0x0A, 0xE8, 0xDB, 0x58, 0x47, 0xA6, 0x7C, 0xBE, \ 01013 0xF9, 0xC9, 0x09, 0x1B, 0x46, 0x2D, 0x53, 0x8C, \ 01014 0xD7, 0x2B, 0x03, 0x74, 0x6A, 0xE7, 0x7F, 0x5E, \ 01015 0x62, 0x29, 0x2C, 0x31, 0x15, 0x62, 0xA8, 0x46, \ 01016 0x50, 0x5D, 0xC8, 0x2D, 0xB8, 0x54, 0x33, 0x8A, \ 01017 0xE4, 0x9F, 0x52, 0x35, 0xC9, 0x5B, 0x91, 0x17, \ 01018 0x8C, 0xCF, 0x2D, 0xD5, 0xCA, 0xCE, 0xF4, 0x03, \ 01019 0xEC, 0x9D, 0x18, 0x10, 0xC6, 0x27, 0x2B, 0x04, \ 01020 0x5B, 0x3B, 0x71, 0xF9, 0xDC, 0x6B, 0x80, 0xD6, \ 01021 0x3F, 0xDD, 0x4A, 0x8E, 0x9A, 0xDB, 0x1E, 0x69, \ 01022 0x62, 0xA6, 0x95, 0x26, 0xD4, 0x31, 0x61, 0xC1, \ 01023 0xA4, 0x1D, 0x57, 0x0D, 0x79, 0x38, 0xDA, 0xD4, \ 01024 0xA4, 0x0E, 0x32, 0x9C, 0xCF, 0xF4, 0x6A, 0xAA, \ 01025 0x36, 0xAD, 0x00, 0x4C, 0xF6, 0x00, 0xC8, 0x38, \ 01026 0x1E, 0x42, 0x5A, 0x31, 0xD9, 0x51, 0xAE, 0x64, \ 01027 0xFD, 0xB2, 0x3F, 0xCE, 0xC9, 0x50, 0x9D, 0x43, \ 01028 0x68, 0x7F, 0xEB, 0x69, 0xED, 0xD1, 0xCC, 0x5E, \ 01029 0x0B, 0x8C, 0xC3, 0xBD, 0xF6, 0x4B, 0x10, 0xEF, \ 01030 0x86, 0xB6, 0x31, 0x42, 0xA3, 0xAB, 0x88, 0x29, \ 01031 0x55, 0x5B, 0x2F, 0x74, 0x7C, 0x93, 0x26, 0x65, \ 01032 0xCB, 0x2C, 0x0F, 0x1C, 0xC0, 0x1B, 0xD7, 0x02, \ 01033 0x29, 0x38, 0x88, 0x39, 0xD2, 0xAF, 0x05, 0xE4, \ 01034 0x54, 0x50, 0x4A, 0xC7, 0x8B, 0x75, 0x82, 0x82, \ 01035 0x28, 0x46, 0xC0, 0xBA, 0x35, 0xC3, 0x5F, 0x5C, \ 01036 0x59, 0x16, 0x0C, 0xC0, 0x46, 0xFD, 0x82, 0x51, \ 01037 0x54, 0x1F, 0xC6, 0x8C, 0x9C, 0x86, 0xB0, 0x22, \ 01038 0xBB, 0x70, 0x99, 0x87, 0x6A, 0x46, 0x0E, 0x74, \ 01039 0x51, 0xA8, 0xA9, 0x31, 0x09, 0x70, 0x3F, 0xEE, \ 01040 0x1C, 0x21, 0x7E, 0x6C, 0x38, 0x26, 0xE5, 0x2C, \ 01041 0x51, 0xAA, 0x69, 0x1E, 0x0E, 0x42, 0x3C, 0xFC, \ 01042 0x99, 0xE9, 0xE3, 0x16, 0x50, 0xC1, 0x21, 0x7B, \ 01043 0x62, 0x48, 0x16, 0xCD, 0xAD, 0x9A, 0x95, 0xF9, \ 01044 0xD5, 0xB8, 0x01, 0x94, 0x88, 0xD9, 0xC0, 0xA0, \ 01045 0xA1, 0xFE, 0x30, 0x75, 0xA5, 0x77, 0xE2, 0x31, \ 01046 0x83, 0xF8, 0x1D, 0x4A, 0x3F, 0x2F, 0xA4, 0x57, \ 01047 0x1E, 0xFC, 0x8C, 0xE0, 0xBA, 0x8A, 0x4F, 0xE8, \ 01048 0xB6, 0x85, 0x5D, 0xFE, 0x72, 0xB0, 0xA6, 0x6E, \ 01049 0xDE, 0xD2, 0xFB, 0xAB, 0xFB, 0xE5, 0x8A, 0x30, \ 01050 0xFA, 0xFA, 0xBE, 0x1C, 0x5D, 0x71, 0xA8, 0x7E, \ 01051 0x2F, 0x74, 0x1E, 0xF8, 0xC1, 0xFE, 0x86, 0xFE, \ 01052 0xA6, 0xBB, 0xFD, 0xE5, 0x30, 0x67, 0x7F, 0x0D, \ 01053 0x97, 0xD1, 0x1D, 0x49, 0xF7, 0xA8, 0x44, 0x3D, \ 01054 0x08, 0x22, 0xE5, 0x06, 0xA9, 0xF4, 0x61, 0x4E, \ 01055 0x01, 0x1E, 0x2A, 0x94, 0x83, 0x8F, 0xF8, 0x8C, \ 01056 0xD6, 0x8C, 0x8B, 0xB7, 0xC5, 0xC6, 0x42, 0x4C, \ 01057 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } 01058 01059 #define MBEDTLS_DHM_RFC7919_FFDHE8192_G_BIN { 0x02 } 01060 01061 #endif /* dhm.h */
Generated on Tue Jul 12 2022 14:23:33 by
