diff options
author | jsing <> | 2018-02-20 17:02:30 +0000 |
---|---|---|
committer | jsing <> | 2018-02-20 17:02:30 +0000 |
commit | 5bf183e39d6cd514bbf349bc1c1b2deb8620ea79 (patch) | |
tree | 320c0dbc29edbb3bbe014156fdd2a1e6e45daad8 /src/lib | |
parent | 65ef88b52f628263e28333ef28dee7d5b1fdf1f7 (diff) | |
download | openbsd-5bf183e39d6cd514bbf349bc1c1b2deb8620ea79.tar.gz openbsd-5bf183e39d6cd514bbf349bc1c1b2deb8620ea79.tar.bz2 openbsd-5bf183e39d6cd514bbf349bc1c1b2deb8620ea79.zip |
Provide BN_get_rfc2409_prime_*() and BN_get_rfc3526_prime_*().
Diffstat (limited to 'src/lib')
-rw-r--r-- | src/lib/libcrypto/Symbols.list | 10 | ||||
-rw-r--r-- | src/lib/libcrypto/bn/bn.h | 10 | ||||
-rw-r--r-- | src/lib/libcrypto/bn/bn_const.c | 50 |
3 files changed, 67 insertions, 3 deletions
diff --git a/src/lib/libcrypto/Symbols.list b/src/lib/libcrypto/Symbols.list index b88d6c6182..a2957cf4ac 100644 --- a/src/lib/libcrypto/Symbols.list +++ b/src/lib/libcrypto/Symbols.list | |||
@@ -336,8 +336,8 @@ BIO_s_socket | |||
336 | BIO_set | 336 | BIO_set |
337 | BIO_set_callback | 337 | BIO_set_callback |
338 | BIO_set_callback_arg | 338 | BIO_set_callback_arg |
339 | BIO_set_data | ||
340 | BIO_set_cipher | 339 | BIO_set_cipher |
340 | BIO_set_data | ||
341 | BIO_set_ex_data | 341 | BIO_set_ex_data |
342 | BIO_set_flags | 342 | BIO_set_flags |
343 | BIO_set_init | 343 | BIO_set_init |
@@ -438,6 +438,14 @@ BN_get0_nist_prime_256 | |||
438 | BN_get0_nist_prime_384 | 438 | BN_get0_nist_prime_384 |
439 | BN_get0_nist_prime_521 | 439 | BN_get0_nist_prime_521 |
440 | BN_get_params | 440 | BN_get_params |
441 | BN_get_rfc2409_prime_1024 | ||
442 | BN_get_rfc2409_prime_768 | ||
443 | BN_get_rfc3526_prime_1536 | ||
444 | BN_get_rfc3526_prime_2048 | ||
445 | BN_get_rfc3526_prime_3072 | ||
446 | BN_get_rfc3526_prime_4096 | ||
447 | BN_get_rfc3526_prime_6144 | ||
448 | BN_get_rfc3526_prime_8192 | ||
441 | BN_get_word | 449 | BN_get_word |
442 | BN_hex2bn | 450 | BN_hex2bn |
443 | BN_init | 451 | BN_init |
diff --git a/src/lib/libcrypto/bn/bn.h b/src/lib/libcrypto/bn/bn.h index 0dde08a368..cca9def20b 100644 --- a/src/lib/libcrypto/bn/bn.h +++ b/src/lib/libcrypto/bn/bn.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: bn.h,v 1.36 2017/01/25 06:15:44 beck Exp $ */ | 1 | /* $OpenBSD: bn.h,v 1.37 2018/02/20 17:02:30 jsing Exp $ */ |
2 | /* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com) |
3 | * All rights reserved. | 3 | * All rights reserved. |
4 | * | 4 | * |
@@ -628,6 +628,8 @@ const BIGNUM *BN_get0_nist_prime_521(void); | |||
628 | /* Primes from RFC 2409 */ | 628 | /* Primes from RFC 2409 */ |
629 | BIGNUM *get_rfc2409_prime_768(BIGNUM *bn); | 629 | BIGNUM *get_rfc2409_prime_768(BIGNUM *bn); |
630 | BIGNUM *get_rfc2409_prime_1024(BIGNUM *bn); | 630 | BIGNUM *get_rfc2409_prime_1024(BIGNUM *bn); |
631 | BIGNUM *BN_get_rfc2409_prime_768(BIGNUM *bn); | ||
632 | BIGNUM *BN_get_rfc2409_prime_1024(BIGNUM *bn); | ||
631 | 633 | ||
632 | /* Primes from RFC 3526 */ | 634 | /* Primes from RFC 3526 */ |
633 | BIGNUM *get_rfc3526_prime_1536(BIGNUM *bn); | 635 | BIGNUM *get_rfc3526_prime_1536(BIGNUM *bn); |
@@ -636,6 +638,12 @@ BIGNUM *get_rfc3526_prime_3072(BIGNUM *bn); | |||
636 | BIGNUM *get_rfc3526_prime_4096(BIGNUM *bn); | 638 | BIGNUM *get_rfc3526_prime_4096(BIGNUM *bn); |
637 | BIGNUM *get_rfc3526_prime_6144(BIGNUM *bn); | 639 | BIGNUM *get_rfc3526_prime_6144(BIGNUM *bn); |
638 | BIGNUM *get_rfc3526_prime_8192(BIGNUM *bn); | 640 | BIGNUM *get_rfc3526_prime_8192(BIGNUM *bn); |
641 | BIGNUM *BN_get_rfc3526_prime_1536(BIGNUM *bn); | ||
642 | BIGNUM *BN_get_rfc3526_prime_2048(BIGNUM *bn); | ||
643 | BIGNUM *BN_get_rfc3526_prime_3072(BIGNUM *bn); | ||
644 | BIGNUM *BN_get_rfc3526_prime_4096(BIGNUM *bn); | ||
645 | BIGNUM *BN_get_rfc3526_prime_6144(BIGNUM *bn); | ||
646 | BIGNUM *BN_get_rfc3526_prime_8192(BIGNUM *bn); | ||
639 | 647 | ||
640 | /* BEGIN ERROR CODES */ | 648 | /* BEGIN ERROR CODES */ |
641 | /* The following lines are auto generated by the script mkerr.pl. Any changes | 649 | /* The following lines are auto generated by the script mkerr.pl. Any changes |
diff --git a/src/lib/libcrypto/bn/bn_const.c b/src/lib/libcrypto/bn/bn_const.c index 4be9f4f791..0ceff9160d 100644 --- a/src/lib/libcrypto/bn/bn_const.c +++ b/src/lib/libcrypto/bn/bn_const.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: bn_const.c,v 1.4 2014/06/12 15:49:28 deraadt Exp $ */ | 1 | /* $OpenBSD: bn_const.c,v 1.5 2018/02/20 17:02:30 jsing Exp $ */ |
2 | /* Insert boilerplate */ | 2 | /* Insert boilerplate */ |
3 | 3 | ||
4 | #include <openssl/bn.h> | 4 | #include <openssl/bn.h> |
@@ -27,6 +27,12 @@ get_rfc2409_prime_768(BIGNUM *bn) | |||
27 | return BN_bin2bn(RFC2409_PRIME_768, sizeof(RFC2409_PRIME_768), bn); | 27 | return BN_bin2bn(RFC2409_PRIME_768, sizeof(RFC2409_PRIME_768), bn); |
28 | } | 28 | } |
29 | 29 | ||
30 | BIGNUM * | ||
31 | BN_get_rfc2409_prime_768(BIGNUM *bn) | ||
32 | { | ||
33 | return get_rfc2409_prime_768(bn); | ||
34 | } | ||
35 | |||
30 | /* "Second Oakley Default Group" from RFC2409, section 6.2. | 36 | /* "Second Oakley Default Group" from RFC2409, section 6.2. |
31 | * | 37 | * |
32 | * The prime is: 2^1024 - 2^960 - 1 + 2^64 * { [2^894 pi] + 129093 }. | 38 | * The prime is: 2^1024 - 2^960 - 1 + 2^64 * { [2^894 pi] + 129093 }. |
@@ -54,6 +60,12 @@ get_rfc2409_prime_1024(BIGNUM *bn) | |||
54 | return BN_bin2bn(RFC2409_PRIME_1024, sizeof(RFC2409_PRIME_1024), bn); | 60 | return BN_bin2bn(RFC2409_PRIME_1024, sizeof(RFC2409_PRIME_1024), bn); |
55 | } | 61 | } |
56 | 62 | ||
63 | BIGNUM * | ||
64 | BN_get_rfc2409_prime_1024(BIGNUM *bn) | ||
65 | { | ||
66 | return get_rfc2409_prime_1024(bn); | ||
67 | } | ||
68 | |||
57 | /* "1536-bit MODP Group" from RFC3526, Section 2. | 69 | /* "1536-bit MODP Group" from RFC3526, Section 2. |
58 | * | 70 | * |
59 | * The prime is: 2^1536 - 2^1472 - 1 + 2^64 * { [2^1406 pi] + 741804 } | 71 | * The prime is: 2^1536 - 2^1472 - 1 + 2^64 * { [2^1406 pi] + 741804 } |
@@ -86,6 +98,12 @@ get_rfc3526_prime_1536(BIGNUM *bn) | |||
86 | return BN_bin2bn(RFC3526_PRIME_1536, sizeof(RFC3526_PRIME_1536), bn); | 98 | return BN_bin2bn(RFC3526_PRIME_1536, sizeof(RFC3526_PRIME_1536), bn); |
87 | } | 99 | } |
88 | 100 | ||
101 | BIGNUM * | ||
102 | BN_get_rfc3526_prime_1536(BIGNUM *bn) | ||
103 | { | ||
104 | return get_rfc3526_prime_1536(bn); | ||
105 | } | ||
106 | |||
89 | /* "2048-bit MODP Group" from RFC3526, Section 3. | 107 | /* "2048-bit MODP Group" from RFC3526, Section 3. |
90 | * | 108 | * |
91 | * The prime is: 2^2048 - 2^1984 - 1 + 2^64 * { [2^1918 pi] + 124476 } | 109 | * The prime is: 2^2048 - 2^1984 - 1 + 2^64 * { [2^1918 pi] + 124476 } |
@@ -123,6 +141,12 @@ get_rfc3526_prime_2048(BIGNUM *bn) | |||
123 | return BN_bin2bn(RFC3526_PRIME_2048, sizeof(RFC3526_PRIME_2048), bn); | 141 | return BN_bin2bn(RFC3526_PRIME_2048, sizeof(RFC3526_PRIME_2048), bn); |
124 | } | 142 | } |
125 | 143 | ||
144 | BIGNUM * | ||
145 | BN_get_rfc3526_prime_2048(BIGNUM *bn) | ||
146 | { | ||
147 | return get_rfc3526_prime_2048(bn); | ||
148 | } | ||
149 | |||
126 | /* "3072-bit MODP Group" from RFC3526, Section 4. | 150 | /* "3072-bit MODP Group" from RFC3526, Section 4. |
127 | * | 151 | * |
128 | * The prime is: 2^3072 - 2^3008 - 1 + 2^64 * { [2^2942 pi] + 1690314 } | 152 | * The prime is: 2^3072 - 2^3008 - 1 + 2^64 * { [2^2942 pi] + 1690314 } |
@@ -170,6 +194,12 @@ get_rfc3526_prime_3072(BIGNUM *bn) | |||
170 | return BN_bin2bn(RFC3526_PRIME_3072, sizeof(RFC3526_PRIME_3072), bn); | 194 | return BN_bin2bn(RFC3526_PRIME_3072, sizeof(RFC3526_PRIME_3072), bn); |
171 | } | 195 | } |
172 | 196 | ||
197 | BIGNUM * | ||
198 | BN_get_rfc3526_prime_3072(BIGNUM *bn) | ||
199 | { | ||
200 | return get_rfc3526_prime_3072(bn); | ||
201 | } | ||
202 | |||
173 | /* "4096-bit MODP Group" from RFC3526, Section 5. | 203 | /* "4096-bit MODP Group" from RFC3526, Section 5. |
174 | * | 204 | * |
175 | * The prime is: 2^4096 - 2^4032 - 1 + 2^64 * { [2^3966 pi] + 240904 } | 205 | * The prime is: 2^4096 - 2^4032 - 1 + 2^64 * { [2^3966 pi] + 240904 } |
@@ -228,6 +258,12 @@ get_rfc3526_prime_4096(BIGNUM *bn) | |||
228 | return BN_bin2bn(RFC3526_PRIME_4096, sizeof(RFC3526_PRIME_4096), bn); | 258 | return BN_bin2bn(RFC3526_PRIME_4096, sizeof(RFC3526_PRIME_4096), bn); |
229 | } | 259 | } |
230 | 260 | ||
261 | BIGNUM * | ||
262 | BN_get_rfc3526_prime_4096(BIGNUM *bn) | ||
263 | { | ||
264 | return get_rfc3526_prime_4096(bn); | ||
265 | } | ||
266 | |||
231 | /* "6144-bit MODP Group" from RFC3526, Section 6. | 267 | /* "6144-bit MODP Group" from RFC3526, Section 6. |
232 | * | 268 | * |
233 | * The prime is: 2^6144 - 2^6080 - 1 + 2^64 * { [2^6014 pi] + 929484 } | 269 | * The prime is: 2^6144 - 2^6080 - 1 + 2^64 * { [2^6014 pi] + 929484 } |
@@ -307,6 +343,12 @@ get_rfc3526_prime_6144(BIGNUM *bn) | |||
307 | return BN_bin2bn(RFC3526_PRIME_6144, sizeof(RFC3526_PRIME_6144), bn); | 343 | return BN_bin2bn(RFC3526_PRIME_6144, sizeof(RFC3526_PRIME_6144), bn); |
308 | } | 344 | } |
309 | 345 | ||
346 | BIGNUM * | ||
347 | BN_get_rfc3526_prime_6144(BIGNUM *bn) | ||
348 | { | ||
349 | return get_rfc3526_prime_6144(bn); | ||
350 | } | ||
351 | |||
310 | /* "8192-bit MODP Group" from RFC3526, Section 7. | 352 | /* "8192-bit MODP Group" from RFC3526, Section 7. |
311 | * | 353 | * |
312 | * The prime is: 2^8192 - 2^8128 - 1 + 2^64 * { [2^8062 pi] + 4743158 } | 354 | * The prime is: 2^8192 - 2^8128 - 1 + 2^64 * { [2^8062 pi] + 4743158 } |
@@ -407,3 +449,9 @@ get_rfc3526_prime_8192(BIGNUM *bn) | |||
407 | }; | 449 | }; |
408 | return BN_bin2bn(RFC3526_PRIME_8192, sizeof(RFC3526_PRIME_8192), bn); | 450 | return BN_bin2bn(RFC3526_PRIME_8192, sizeof(RFC3526_PRIME_8192), bn); |
409 | } | 451 | } |
452 | |||
453 | BIGNUM * | ||
454 | BN_get_rfc3526_prime_8192(BIGNUM *bn) | ||
455 | { | ||
456 | return get_rfc3526_prime_8192(bn); | ||
457 | } | ||