From rsalz at openssl.org Sat Apr 1 00:28:02 2017 From: rsalz at openssl.org (Rich Salz) Date: Sat, 01 Apr 2017 00:28:02 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1491006482.274728.27553.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 845645327dd4b12b6c26c0814502d79740f84028 (commit) from e1d2ea3a54527996e9425de807143b061206e0ab (commit) - Log ----------------------------------------------------------------- commit 845645327dd4b12b6c26c0814502d79740f84028 Author: Sebastian Andrzej Siewior Date: Fri Mar 31 20:48:28 2017 +0200 Don't mention TLS 1.3 in the man page The man pages for ciphers, s_client and s_server mention the tls1_3 option but it is not implemented in the 1.1.0 branch. Thus remove it to avoid confusion. Signed-off-by: Sebastian Andrzej Siewior Reviewed-by: Kurt Roeckx Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3099) ----------------------------------------------------------------------- Summary of changes: doc/apps/ciphers.pod | 6 ------ doc/apps/s_client.pod | 4 +--- doc/apps/s_server.pod | 4 +--- 3 files changed, 2 insertions(+), 12 deletions(-) diff --git a/doc/apps/ciphers.pod b/doc/apps/ciphers.pod index e0ab291..03cac2f 100644 --- a/doc/apps/ciphers.pod +++ b/doc/apps/ciphers.pod @@ -15,7 +15,6 @@ B B [B<-tls1>] [B<-tls1_1>] [B<-tls1_2>] -[B<-tls1_3>] [B<-s>] [B<-psk>] [B<-srp>] @@ -70,11 +69,6 @@ L. Like B<-v>, but include the official cipher suite values in hex. -=item B<-tls1_3> - -In combination with the B<-s> option, list the ciphers which would be used if -TLSv1.3 were negotiated. - =item B<-tls1_2> In combination with the B<-s> option, list the ciphers which would be used if diff --git a/doc/apps/s_client.pod b/doc/apps/s_client.pod index 764a63d..43989d0 100644 --- a/doc/apps/s_client.pod +++ b/doc/apps/s_client.pod @@ -71,12 +71,10 @@ B B [B<-tls1>] [B<-tls1_1>] [B<-tls1_2>] -[B<-tls1_3>] [B<-no_ssl3>] [B<-no_tls1>] [B<-no_tls1_1>] [B<-no_tls1_2>] -[B<-no_tls1_3>] [B<-dtls>] [B<-dtls1>] [B<-dtls1_2>] @@ -355,7 +353,7 @@ Use the PSK key B when using a PSK cipher suite. The key is given as a hexadecimal number without leading 0x, for example -psk 1a2b3c4d. -=item B<-ssl3>, B<-tls1>, B<-tls1_1>, B<-tls1_2>, B<-tls1_3>, B<-no_ssl3>, B<-no_tls1>, B<-no_tls1_1>, B<-no_tls1_2>, B<-no_tls1_3> +=item B<-ssl3>, B<-tls1>, B<-tls1_1>, B<-tls1_2>, B<-no_ssl3>, B<-no_tls1>, B<-no_tls1_1>, B<-no_tls1_2> These options require or disable the use of the specified SSL or TLS protocols. By default B will negotiate the highest mutually supported protocol diff --git a/doc/apps/s_server.pod b/doc/apps/s_server.pod index 6aaefe4..ad71867 100644 --- a/doc/apps/s_server.pod +++ b/doc/apps/s_server.pod @@ -78,7 +78,6 @@ B B [B<-tls1>] [B<-tls1_1>] [B<-tls1_2>] -[B<-tls1_3>] [B<-dtls>] [B<-dtls1>] [B<-dtls1_2>] @@ -91,7 +90,6 @@ B B [B<-no_tls1>] [B<-no_tls1_1>] [B<-no_tls1_2>] -[B<-no_tls1_3>] [B<-no_dhe>] [B<-bugs>] [B<-comp>] @@ -326,7 +324,7 @@ Use the PSK key B when using a PSK cipher suite. The key is given as a hexadecimal number without leading 0x, for example -psk 1a2b3c4d. -=item B<-ssl2>, B<-ssl3>, B<-tls1>, B<-tls1_1>, B<-tls1_2>, B<-tls1_3>, B<-no_ssl2>, B<-no_ssl3>, B<-no_tls1>, B<-no_tls1_1>, B<-no_tls1_2>, B<-no_tls1_3> +=item B<-ssl2>, B<-ssl3>, B<-tls1>, B<-tls1_1>, B<-tls1_2>, B<-no_ssl2>, B<-no_ssl3>, B<-no_tls1>, B<-no_tls1_1>, B<-no_tls1_2> These options require or disable the use of the specified SSL or TLS protocols. By default B will negotiate the highest mutually supported protocol From openssl at openssl.org Sat Apr 1 00:58:57 2017 From: openssl at openssl.org (OpenSSL run-checker) Date: Sat, 01 Apr 2017 00:58:57 +0000 Subject: [openssl-commits] Still FAILED build of OpenSSL branch master with options -d --strict-warnings no-ec2m Message-ID: <1491008337.550982.27563.nullmailer@run.openssl.org> Platform and configuration command: $ uname -a Linux run 4.4.0-64-generic #85-Ubuntu SMP Mon Feb 20 11:50:30 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux $ CC=clang ../openssl/config -d --strict-warnings no-ec2m Commit log since last time: e6f648f Fix for #2730. Add CRLDP extension to list of supported extensions 36abb6a Update SSL_extension_supported() Build log ended with (last 100 lines): Failed 80/134 subtests ../../openssl/test/recipes/15-test_genrsa.t .............. ok ../../openssl/test/recipes/15-test_rsa.t ................. ok ../../openssl/test/recipes/15-test_rsapss.t .............. ok ../../openssl/test/recipes/20-test_enc.t ................. ok ../../openssl/test/recipes/20-test_enc_more.t ............ ok ../../openssl/test/recipes/20-test_passwd.t .............. ok ../../openssl/test/recipes/25-test_crl.t ................. ok ../../openssl/test/recipes/25-test_d2i.t ................. ok ../../openssl/test/recipes/25-test_pkcs7.t ............... ok ../../openssl/test/recipes/25-test_req.t ................. ok ../../openssl/test/recipes/25-test_sid.t ................. ok ../../openssl/test/recipes/25-test_verify.t .............. ok ../../openssl/test/recipes/25-test_x509.t ................ ok ../../openssl/test/recipes/30-test_afalg.t ............... ok ../../openssl/test/recipes/30-test_engine.t .............. ok ../../openssl/test/recipes/30-test_evp.t ................. ok ../../openssl/test/recipes/30-test_evp_extra.t ........... ok ../../openssl/test/recipes/30-test_pbelu.t ............... ok ../../openssl/test/recipes/30-test_pkey_meth.t ........... ok ../../openssl/test/recipes/40-test_rehash.t .............. ok ../../openssl/test/recipes/60-test_x509_store.t .......... ok ../../openssl/test/recipes/60-test_x509_time.t ........... ok ../../openssl/test/recipes/70-test_asyncio.t ............. ok ../../openssl/test/recipes/70-test_bad_dtls.t ............ ok ../../openssl/test/recipes/70-test_clienthello.t ......... ok ../../openssl/test/recipes/70-test_key_share.t ........... skipped: test_key_share needs TLS1.3 enabled ../../openssl/test/recipes/70-test_packet.t .............. ok ../../openssl/test/recipes/70-test_recordlen.t ........... ok ../../openssl/test/recipes/70-test_renegotiation.t ....... ok ../../openssl/test/recipes/70-test_sslcbcpadding.t ....... ok ../../openssl/test/recipes/70-test_sslcertstatus.t ....... ok ../../openssl/test/recipes/70-test_sslextension.t ........ ok ../../openssl/test/recipes/70-test_sslmessages.t ......... ok ../../openssl/test/recipes/70-test_sslrecords.t .......... ok ../../openssl/test/recipes/70-test_sslsessiontick.t ...... ok ../../openssl/test/recipes/70-test_sslsigalgs.t .......... ok ../../openssl/test/recipes/70-test_sslsignature.t ........ ok ../../openssl/test/recipes/70-test_sslskewith0p.t ........ ok ../../openssl/test/recipes/70-test_sslversions.t ......... skipped: test_sslversions needs TLS1.3, TLS1.2 and TLS1.1 enabled ../../openssl/test/recipes/70-test_sslvertol.t ........... ok ../../openssl/test/recipes/70-test_tls13cookie.t ......... skipped: test_tls13cookie needs TLS1.3 enabled ../../openssl/test/recipes/70-test_tls13downgrade.t ...... skipped: test_tls13downgrade needs TLS1.3 and TLS1.2 enabled ../../openssl/test/recipes/70-test_tls13hrr.t ............ skipped: test_tls13hrr needs TLS1.3 enabled ../../openssl/test/recipes/70-test_tls13kexmodes.t ....... skipped: test_tls13kexmodes needs TLSv1.3 enabled ../../openssl/test/recipes/70-test_tls13messages.t ....... skipped: test_tls13messages needs TLSv1.3 enabled ../../openssl/test/recipes/70-test_tls13psk.t ............ skipped: test_tls13psk needs TLSv1.3 enabled ../../openssl/test/recipes/70-test_tlsextms.t ............ ok ../../openssl/test/recipes/70-test_verify_extra.t ........ ok ../../openssl/test/recipes/70-test_wpacket.t ............. ok ../../openssl/test/recipes/80-test_ca.t .................. ok ../../openssl/test/recipes/80-test_cipherbytes.t ......... ok ../../openssl/test/recipes/80-test_cipherlist.t .......... ok ../../openssl/test/recipes/80-test_cms.t ................. ok ../../openssl/test/recipes/80-test_ct.t .................. ok ../../openssl/test/recipes/80-test_dane.t ................ ok ../../openssl/test/recipes/80-test_dtls.t ................ ok ../../openssl/test/recipes/80-test_dtls_mtu.t ............ ok ../../openssl/test/recipes/80-test_dtlsv1listen.t ........ ok ../../openssl/test/recipes/80-test_ocsp.t ................ ok ../../openssl/test/recipes/80-test_pkcs12.t .............. ok ../../openssl/test/recipes/80-test_ssl_new.t ............. ok ../../openssl/test/recipes/80-test_ssl_old.t ............. ok ../../openssl/test/recipes/80-test_ssl_test_ctx.t ........ ok ../../openssl/test/recipes/80-test_sslcorrupt.t .......... ok ../../openssl/test/recipes/80-test_tsa.t ................. ok ../../openssl/test/recipes/80-test_x509aux.t ............. ok ../../openssl/test/recipes/90-test_async.t ............... ok ../../openssl/test/recipes/90-test_bio_enc.t ............. ok ../../openssl/test/recipes/90-test_bioprint.t ............ ok ../../openssl/test/recipes/90-test_constant_time.t ....... ok ../../openssl/test/recipes/90-test_gmdiff.t .............. ok ../../openssl/test/recipes/90-test_ige.t ................. ok ../../openssl/test/recipes/90-test_memleak.t ............. ok ../../openssl/test/recipes/90-test_overhead.t ............ skipped: Only supported in no-shared builds ../../openssl/test/recipes/90-test_secmem.t .............. ok ../../openssl/test/recipes/90-test_shlibload.t ........... ok ../../openssl/test/recipes/90-test_srp.t ................. ok ../../openssl/test/recipes/90-test_sslapi.t .............. ok ../../openssl/test/recipes/90-test_threads.t ............. ok ../../openssl/test/recipes/90-test_tls13encryption.t ..... skipped: tls13encryption is not supported in this build ../../openssl/test/recipes/90-test_tls13secrets.t ........ skipped: tls13secrets is not supported in this build ../../openssl/test/recipes/90-test_v3name.t .............. ok ../../openssl/test/recipes/95-test_external_boringssl.t .. skipped: No external tests in this configuration ../../openssl/test/recipes/95-test_external_pyca.t ....... skipped: No external tests in this configuration ../../openssl/test/recipes/99-test_fuzz.t ................ ok Test Summary Report ------------------- ../../openssl/test/recipes/15-test_ecparam.t (Wstat: 20480 Tests: 134 Failed: 80) Failed tests: 1-32, 73-114, 117-122 Non-zero exit status: 80 Files=124, Tests=875, 152 wallclock secs ( 1.20 usr 0.20 sys + 50.67 cusr 6.13 csys = 58.20 CPU) Result: FAIL Failed 1/124 test programs. 80/875 subtests failed. Makefile:157: recipe for target '_tests' failed make[1]: *** [_tests] Error 255 make[1]: Leaving directory '/home/openssl/run-checker/no-ec2m' Makefile:155: recipe for target 'tests' failed make: *** [tests] Error 2 From appro at openssl.org Sat Apr 1 13:42:06 2017 From: appro at openssl.org (Andy Polyakov) Date: Sat, 01 Apr 2017 13:42:06 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491054126.903785.1115.nullmailer@dev.openssl.org> The branch master has been updated via 15b337fa58ba822eb1e67d03a192c390a941efa7 (commit) from e6f648fd880369e186039501c960809b17f96e88 (commit) - Log ----------------------------------------------------------------- commit 15b337fa58ba822eb1e67d03a192c390a941efa7 Author: Andy Polyakov Date: Thu Mar 30 21:44:55 2017 +0200 bio/b_print.c: switch to int64_t as "greatest-width integer type". Originally there was dependency on BN configuration parameters, but it stemmed from times when "long long" support was optional. Today we require 64-bit support from compiler, and there is no reason to have "greatest-width integer" depend on BN configuration. Reviewed-by: Richard Levitte ----------------------------------------------------------------------- Summary of changes: crypto/bio/b_print.c | 54 +++++++++++----------------------------------------- 1 file changed, 11 insertions(+), 43 deletions(-) diff --git a/crypto/bio/b_print.c b/crypto/bio/b_print.c index 79ae4a9..af05c35 100644 --- a/crypto/bio/b_print.c +++ b/crypto/bio/b_print.c @@ -12,18 +12,8 @@ #include #include "internal/numbers.h" #include "internal/cryptlib.h" -#ifndef NO_SYS_TYPES_H -# include -#endif -#include /* To get BN_LLONG properly defined */ #include -#if defined(BN_LLONG) || defined(SIXTY_FOUR_BIT) -# ifndef HAVE_LONG_LONG -# define HAVE_LONG_LONG 1 -# endif -#endif - /* * Copyright Patrick Powell 1995 * This code is based on code written by Patrick Powell @@ -37,20 +27,10 @@ # define LDOUBLE double #endif -#ifdef HAVE_LONG_LONG -# if defined(_WIN32) && !defined(__GNUC__) -# define LLONG __int64 -# else -# define LLONG long long -# endif -#else -# define LLONG long -#endif - static int fmtstr(char **, char **, size_t *, size_t *, const char *, int, int, int); static int fmtint(char **, char **, size_t *, size_t *, - LLONG, int, int, int, int); + int64_t, int, int, int, int); static int fmtfp(char **, char **, size_t *, size_t *, LDOUBLE, int, int, int, int); static int doapr_outch(char **, char **, size_t *, size_t *, int); @@ -107,7 +87,7 @@ _dopr(char **sbuffer, size_t *retlen, int *truncated, const char *format, va_list args) { char ch; - LLONG value; + int64_t value; LDOUBLE fvalue; char *strvalue; int min; @@ -237,7 +217,7 @@ _dopr(char **sbuffer, value = va_arg(args, long int); break; case DP_C_LLONG: - value = va_arg(args, LLONG); + value = va_arg(args, int64_t); break; case DP_C_SIZE: value = va_arg(args, ossl_ssize_t); @@ -262,16 +242,16 @@ _dopr(char **sbuffer, value = (unsigned short int)va_arg(args, unsigned int); break; case DP_C_LONG: - value = (LLONG)va_arg(args, unsigned long int); + value = va_arg(args, unsigned long int); break; case DP_C_LLONG: - value = va_arg(args, unsigned LLONG); + value = va_arg(args, uint64_t); break; case DP_C_SIZE: value = va_arg(args, size_t); break; default: - value = (LLONG)va_arg(args, unsigned int); + value = va_arg(args, unsigned int); break; } if (!fmtint(sbuffer, buffer, &currlen, maxlen, value, @@ -333,20 +313,8 @@ _dopr(char **sbuffer, value, 16, min, max, flags | DP_F_NUM)) return 0; break; - case 'n': /* XXX */ - if (cflags == DP_C_SHORT) { - short int *num; - num = va_arg(args, short int *); - *num = currlen; - } else if (cflags == DP_C_LONG) { /* XXX */ - long int *num; - num = va_arg(args, long int *); - *num = (long int)currlen; - } else if (cflags == DP_C_LLONG) { /* XXX */ - LLONG *num; - num = va_arg(args, LLONG *); - *num = (LLONG) currlen; - } else { + case 'n': + { int *num; num = va_arg(args, int *); *num = currlen; @@ -446,11 +414,11 @@ static int fmtint(char **sbuffer, char **buffer, size_t *currlen, - size_t *maxlen, LLONG value, int base, int min, int max, int flags) + size_t *maxlen, int64_t value, int base, int min, int max, int flags) { int signvalue = 0; const char *prefix = ""; - unsigned LLONG uvalue; + uint64_t uvalue; char convert[DECIMAL_SIZE(value) + 3]; int place = 0; int spadlen = 0; @@ -463,7 +431,7 @@ fmtint(char **sbuffer, if (!(flags & DP_F_UNSIGNED)) { if (value < 0) { signvalue = '-'; - uvalue = 0 - (unsigned LLONG)value; + uvalue = 0 - (uint64_t)value; } else if (flags & DP_F_PLUS) signvalue = '+'; else if (flags & DP_F_SPACE) From appro at openssl.org Sat Apr 1 13:47:24 2017 From: appro at openssl.org (Andy Polyakov) Date: Sat, 01 Apr 2017 13:47:24 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491054444.752878.2590.nullmailer@dev.openssl.org> The branch master has been updated via c27778d8adf7fca3128ece0b7efca09f628008b9 (commit) from 15b337fa58ba822eb1e67d03a192c390a941efa7 (commit) - Log ----------------------------------------------------------------- commit c27778d8adf7fca3128ece0b7efca09f628008b9 Author: Andy Polyakov Date: Thu Mar 30 23:07:26 2017 +0200 e_afalg.[ch]: fix --strict-warnings with gcc 4.x and 32-bit build. Reviewed-by: Richard Levitte ----------------------------------------------------------------------- Summary of changes: engines/afalg/e_afalg.c | 16 ++++++---------- engines/afalg/e_afalg.h | 5 +++++ 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/engines/afalg/e_afalg.c b/engines/afalg/e_afalg.c index 9837cae..5ce9047 100644 --- a/engines/afalg/e_afalg.c +++ b/engines/afalg/e_afalg.c @@ -236,15 +236,11 @@ int afalg_fin_cipher_aio(afalg_aio *aio, int sfd, unsigned char *buf, memset(cb, '\0', sizeof(*cb)); cb->aio_fildes = sfd; cb->aio_lio_opcode = IOCB_CMD_PREAD; - if (sizeof(buf) != sizeof(cb->aio_buf)) { - /* - * The pointer has to be converted to 32 bit unsigned value first - * to avoid sign extension on cast to 64 bit value - */ - cb->aio_buf = (uint64_t)(unsigned long)buf; - } else { - cb->aio_buf = (uint64_t)buf; - } + /* + * The pointer has to be converted to unsigned value first to avoid + * sign extension on cast to 64 bit value in 32-bit builds + */ + cb->aio_buf = (size_t)buf; cb->aio_offset = 0; cb->aio_data = 0; cb->aio_nbytes = len; @@ -364,9 +360,9 @@ static int afalg_create_sk(afalg_ctx *actx, const char *ciphertype, const char *ciphername) { struct sockaddr_alg sa; + int r = -1; actx->bfd = actx->sfd = -1; - int r = -1; memset(&sa, 0, sizeof(sa)); sa.salg_family = AF_ALG; diff --git a/engines/afalg/e_afalg.h b/engines/afalg/e_afalg.h index 8f4d2d1..948d67e 100644 --- a/engines/afalg/e_afalg.h +++ b/engines/afalg/e_afalg.h @@ -10,6 +10,11 @@ #ifndef HEADER_AFALG_H # define HEADER_AFALG_H +# if defined(__GNUC__) && __GNUC__ >= 4 && \ + (!defined(__STDC_VERSION__) || __STDC_VERSION__ < 199901L) +# pragma GCC diagnostic ignored "-Wvariadic-macros" +# endif + # ifdef ALG_DEBUG # define ALG_DGB(x, ...) fprintf(stderr, "ALG_DBG: " x, __VA_ARGS__) # define ALG_INFO(x, ...) fprintf(stderr, "ALG_INFO: " x, __VA_ARGS__) From appro at openssl.org Sat Apr 1 13:48:32 2017 From: appro at openssl.org (Andy Polyakov) Date: Sat, 01 Apr 2017 13:48:32 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1491054512.137572.3411.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via afe2f42bfc72017a075c21b3695feeba6db27305 (commit) from 845645327dd4b12b6c26c0814502d79740f84028 (commit) - Log ----------------------------------------------------------------- commit afe2f42bfc72017a075c21b3695feeba6db27305 Author: Andy Polyakov Date: Thu Mar 30 23:07:26 2017 +0200 e_afalg.[ch]: fix --strict-warnings with gcc 4.x and 32-bit build. Reviewed-by: Richard Levitte (cherry picked from commit c27778d8adf7fca3128ece0b7efca09f628008b9) ----------------------------------------------------------------------- Summary of changes: engines/afalg/e_afalg.c | 16 ++++++---------- engines/afalg/e_afalg.h | 5 +++++ 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/engines/afalg/e_afalg.c b/engines/afalg/e_afalg.c index 9837cae..5ce9047 100644 --- a/engines/afalg/e_afalg.c +++ b/engines/afalg/e_afalg.c @@ -236,15 +236,11 @@ int afalg_fin_cipher_aio(afalg_aio *aio, int sfd, unsigned char *buf, memset(cb, '\0', sizeof(*cb)); cb->aio_fildes = sfd; cb->aio_lio_opcode = IOCB_CMD_PREAD; - if (sizeof(buf) != sizeof(cb->aio_buf)) { - /* - * The pointer has to be converted to 32 bit unsigned value first - * to avoid sign extension on cast to 64 bit value - */ - cb->aio_buf = (uint64_t)(unsigned long)buf; - } else { - cb->aio_buf = (uint64_t)buf; - } + /* + * The pointer has to be converted to unsigned value first to avoid + * sign extension on cast to 64 bit value in 32-bit builds + */ + cb->aio_buf = (size_t)buf; cb->aio_offset = 0; cb->aio_data = 0; cb->aio_nbytes = len; @@ -364,9 +360,9 @@ static int afalg_create_sk(afalg_ctx *actx, const char *ciphertype, const char *ciphername) { struct sockaddr_alg sa; + int r = -1; actx->bfd = actx->sfd = -1; - int r = -1; memset(&sa, 0, sizeof(sa)); sa.salg_family = AF_ALG; diff --git a/engines/afalg/e_afalg.h b/engines/afalg/e_afalg.h index 8f4d2d1..948d67e 100644 --- a/engines/afalg/e_afalg.h +++ b/engines/afalg/e_afalg.h @@ -10,6 +10,11 @@ #ifndef HEADER_AFALG_H # define HEADER_AFALG_H +# if defined(__GNUC__) && __GNUC__ >= 4 && \ + (!defined(__STDC_VERSION__) || __STDC_VERSION__ < 199901L) +# pragma GCC diagnostic ignored "-Wvariadic-macros" +# endif + # ifdef ALG_DEBUG # define ALG_DGB(x, ...) fprintf(stderr, "ALG_DBG: " x, __VA_ARGS__) # define ALG_INFO(x, ...) fprintf(stderr, "ALG_INFO: " x, __VA_ARGS__) From appro at openssl.org Sat Apr 1 13:50:55 2017 From: appro at openssl.org (Andy Polyakov) Date: Sat, 01 Apr 2017 13:50:55 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491054655.822986.4247.nullmailer@dev.openssl.org> The branch master has been updated via d83112b7fd3b0e751f8a5947e5a93db1cbbe86dc (commit) from c27778d8adf7fca3128ece0b7efca09f628008b9 (commit) - Log ----------------------------------------------------------------- commit d83112b7fd3b0e751f8a5947e5a93db1cbbe86dc Author: Andy Polyakov Date: Fri Mar 31 14:37:10 2017 +0200 Configure: use 5.10.0, don't require... Configure started with 'require 5.10.0', but if executed by older perl it failed with "might be runaway multi-line // string" instead of naturally expected "Perl v5.10.0 required--this is only v5.x.y". Reviewed-by: Richard Levitte ----------------------------------------------------------------------- Summary of changes: Configure | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Configure b/Configure index 013a30a..617ee52 100755 --- a/Configure +++ b/Configure @@ -9,7 +9,7 @@ ## Configure -- OpenSSL source tree configuration script -require 5.10.0; +use 5.10.0; use strict; use Config; use File::Basename; From appro at openssl.org Sat Apr 1 13:51:26 2017 From: appro at openssl.org (Andy Polyakov) Date: Sat, 01 Apr 2017 13:51:26 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1491054686.333248.5011.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via a43cf4c0c00ac09bd83709305b5691c4010dba43 (commit) from afe2f42bfc72017a075c21b3695feeba6db27305 (commit) - Log ----------------------------------------------------------------- commit a43cf4c0c00ac09bd83709305b5691c4010dba43 Author: Andy Polyakov Date: Fri Mar 31 14:37:10 2017 +0200 Configure: use 5.10.0, don't require... Configure started with 'require 5.10.0', but if executed by older perl it failed with "might be runaway multi-line // string" instead of naturally expected "Perl v5.10.0 required--this is only v5.x.y". Reviewed-by: Richard Levitte (cherry picked from commit d83112b7fd3b0e751f8a5947e5a93db1cbbe86dc) ----------------------------------------------------------------------- Summary of changes: Configure | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Configure b/Configure index cedc160..2520d7e 100755 --- a/Configure +++ b/Configure @@ -9,7 +9,7 @@ ## Configure -- OpenSSL source tree configuration script -require 5.10.0; +use 5.10.0; use strict; use File::Basename; use File::Spec::Functions qw/:DEFAULT abs2rel rel2abs/; From openssl at openssl.org Sun Apr 2 01:00:32 2017 From: openssl at openssl.org (OpenSSL run-checker) Date: Sun, 02 Apr 2017 01:00:32 +0000 Subject: [openssl-commits] Still FAILED build of OpenSSL branch master with options -d --strict-warnings no-ec2m Message-ID: <1491094832.764915.14552.nullmailer@run.openssl.org> Platform and configuration command: $ uname -a Linux run 4.4.0-64-generic #85-Ubuntu SMP Mon Feb 20 11:50:30 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux $ CC=clang ../openssl/config -d --strict-warnings no-ec2m Commit log since last time: d83112b Configure: use 5.10.0, don't require... c27778d e_afalg.[ch]: fix --strict-warnings with gcc 4.x and 32-bit build. 15b337f bio/b_print.c: switch to int64_t as "greatest-width integer type". Build log ended with (last 100 lines): Failed 80/134 subtests ../../openssl/test/recipes/15-test_genrsa.t .............. ok ../../openssl/test/recipes/15-test_rsa.t ................. ok ../../openssl/test/recipes/15-test_rsapss.t .............. ok ../../openssl/test/recipes/20-test_enc.t ................. ok ../../openssl/test/recipes/20-test_enc_more.t ............ ok ../../openssl/test/recipes/20-test_passwd.t .............. ok ../../openssl/test/recipes/25-test_crl.t ................. ok ../../openssl/test/recipes/25-test_d2i.t ................. ok ../../openssl/test/recipes/25-test_pkcs7.t ............... ok ../../openssl/test/recipes/25-test_req.t ................. ok ../../openssl/test/recipes/25-test_sid.t ................. ok ../../openssl/test/recipes/25-test_verify.t .............. ok ../../openssl/test/recipes/25-test_x509.t ................ ok ../../openssl/test/recipes/30-test_afalg.t ............... ok ../../openssl/test/recipes/30-test_engine.t .............. ok ../../openssl/test/recipes/30-test_evp.t ................. ok ../../openssl/test/recipes/30-test_evp_extra.t ........... ok ../../openssl/test/recipes/30-test_pbelu.t ............... ok ../../openssl/test/recipes/30-test_pkey_meth.t ........... ok ../../openssl/test/recipes/40-test_rehash.t .............. ok ../../openssl/test/recipes/60-test_x509_store.t .......... ok ../../openssl/test/recipes/60-test_x509_time.t ........... ok ../../openssl/test/recipes/70-test_asyncio.t ............. ok ../../openssl/test/recipes/70-test_bad_dtls.t ............ ok ../../openssl/test/recipes/70-test_clienthello.t ......... ok ../../openssl/test/recipes/70-test_key_share.t ........... skipped: test_key_share needs TLS1.3 enabled ../../openssl/test/recipes/70-test_packet.t .............. ok ../../openssl/test/recipes/70-test_recordlen.t ........... ok ../../openssl/test/recipes/70-test_renegotiation.t ....... ok ../../openssl/test/recipes/70-test_sslcbcpadding.t ....... ok ../../openssl/test/recipes/70-test_sslcertstatus.t ....... ok ../../openssl/test/recipes/70-test_sslextension.t ........ ok ../../openssl/test/recipes/70-test_sslmessages.t ......... ok ../../openssl/test/recipes/70-test_sslrecords.t .......... ok ../../openssl/test/recipes/70-test_sslsessiontick.t ...... ok ../../openssl/test/recipes/70-test_sslsigalgs.t .......... ok ../../openssl/test/recipes/70-test_sslsignature.t ........ ok ../../openssl/test/recipes/70-test_sslskewith0p.t ........ ok ../../openssl/test/recipes/70-test_sslversions.t ......... skipped: test_sslversions needs TLS1.3, TLS1.2 and TLS1.1 enabled ../../openssl/test/recipes/70-test_sslvertol.t ........... ok ../../openssl/test/recipes/70-test_tls13cookie.t ......... skipped: test_tls13cookie needs TLS1.3 enabled ../../openssl/test/recipes/70-test_tls13downgrade.t ...... skipped: test_tls13downgrade needs TLS1.3 and TLS1.2 enabled ../../openssl/test/recipes/70-test_tls13hrr.t ............ skipped: test_tls13hrr needs TLS1.3 enabled ../../openssl/test/recipes/70-test_tls13kexmodes.t ....... skipped: test_tls13kexmodes needs TLSv1.3 enabled ../../openssl/test/recipes/70-test_tls13messages.t ....... skipped: test_tls13messages needs TLSv1.3 enabled ../../openssl/test/recipes/70-test_tls13psk.t ............ skipped: test_tls13psk needs TLSv1.3 enabled ../../openssl/test/recipes/70-test_tlsextms.t ............ ok ../../openssl/test/recipes/70-test_verify_extra.t ........ ok ../../openssl/test/recipes/70-test_wpacket.t ............. ok ../../openssl/test/recipes/80-test_ca.t .................. ok ../../openssl/test/recipes/80-test_cipherbytes.t ......... ok ../../openssl/test/recipes/80-test_cipherlist.t .......... ok ../../openssl/test/recipes/80-test_cms.t ................. ok ../../openssl/test/recipes/80-test_ct.t .................. ok ../../openssl/test/recipes/80-test_dane.t ................ ok ../../openssl/test/recipes/80-test_dtls.t ................ ok ../../openssl/test/recipes/80-test_dtls_mtu.t ............ ok ../../openssl/test/recipes/80-test_dtlsv1listen.t ........ ok ../../openssl/test/recipes/80-test_ocsp.t ................ ok ../../openssl/test/recipes/80-test_pkcs12.t .............. ok ../../openssl/test/recipes/80-test_ssl_new.t ............. ok ../../openssl/test/recipes/80-test_ssl_old.t ............. ok ../../openssl/test/recipes/80-test_ssl_test_ctx.t ........ ok ../../openssl/test/recipes/80-test_sslcorrupt.t .......... ok ../../openssl/test/recipes/80-test_tsa.t ................. ok ../../openssl/test/recipes/80-test_x509aux.t ............. ok ../../openssl/test/recipes/90-test_async.t ............... ok ../../openssl/test/recipes/90-test_bio_enc.t ............. ok ../../openssl/test/recipes/90-test_bioprint.t ............ ok ../../openssl/test/recipes/90-test_constant_time.t ....... ok ../../openssl/test/recipes/90-test_gmdiff.t .............. ok ../../openssl/test/recipes/90-test_ige.t ................. ok ../../openssl/test/recipes/90-test_memleak.t ............. ok ../../openssl/test/recipes/90-test_overhead.t ............ skipped: Only supported in no-shared builds ../../openssl/test/recipes/90-test_secmem.t .............. ok ../../openssl/test/recipes/90-test_shlibload.t ........... ok ../../openssl/test/recipes/90-test_srp.t ................. ok ../../openssl/test/recipes/90-test_sslapi.t .............. ok ../../openssl/test/recipes/90-test_threads.t ............. ok ../../openssl/test/recipes/90-test_tls13encryption.t ..... skipped: tls13encryption is not supported in this build ../../openssl/test/recipes/90-test_tls13secrets.t ........ skipped: tls13secrets is not supported in this build ../../openssl/test/recipes/90-test_v3name.t .............. ok ../../openssl/test/recipes/95-test_external_boringssl.t .. skipped: No external tests in this configuration ../../openssl/test/recipes/95-test_external_pyca.t ....... skipped: No external tests in this configuration ../../openssl/test/recipes/99-test_fuzz.t ................ ok Test Summary Report ------------------- ../../openssl/test/recipes/15-test_ecparam.t (Wstat: 20480 Tests: 134 Failed: 80) Failed tests: 1-32, 73-114, 117-122 Non-zero exit status: 80 Files=124, Tests=875, 154 wallclock secs ( 1.18 usr 0.24 sys + 51.53 cusr 6.24 csys = 59.19 CPU) Result: FAIL Failed 1/124 test programs. 80/875 subtests failed. Makefile:157: recipe for target '_tests' failed make[1]: *** [_tests] Error 255 make[1]: Leaving directory '/home/openssl/run-checker/no-ec2m' Makefile:155: recipe for target 'tests' failed make: *** [tests] Error 2 From openssl at openssl.org Sun Apr 2 08:18:06 2017 From: openssl at openssl.org (OpenSSL run-checker) Date: Sun, 02 Apr 2017 08:18:06 +0000 Subject: [openssl-commits] FAILED build of OpenSSL branch OpenSSL_1_1_0-stable with options -d --strict-warnings no-afalgeng Message-ID: <1491121086.311182.27926.nullmailer@run.openssl.org> Platform and configuration command: $ uname -a Linux run 4.4.0-64-generic #85-Ubuntu SMP Mon Feb 20 11:50:30 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux $ CC=clang ../openssl/config -d --strict-warnings no-afalgeng Commit log since last time: a43cf4c Configure: use 5.10.0, don't require... afe2f42 e_afalg.[ch]: fix --strict-warnings with gcc 4.x and 32-bit build. Build log ended with (last 100 lines): # Failed test 'Message type check. Got nothing, expected 15' # at ../../openssl/test/recipes/70-test_sslmessages.t line 137. # Failed test 'Message type check. Got nothing, expected 20' # at ../../openssl/test/recipes/70-test_sslmessages.t line 137. # Failed test 'Message type check. Got nothing, expected 4' # at ../../openssl/test/recipes/70-test_sslmessages.t line 137. # Failed test 'Message type check. Got nothing, expected 20' # at ../../openssl/test/recipes/70-test_sslmessages.t line 137. # Failed test 'Message type check. Got nothing, expected 1' # at ../../openssl/test/recipes/70-test_sslmessages.t line 137. # Failed test 'Message type check. Got nothing, expected 2' # at ../../openssl/test/recipes/70-test_sslmessages.t line 137. # Failed test 'Message type check. Got nothing, expected 11' # at ../../openssl/test/recipes/70-test_sslmessages.t line 137. # Failed test 'Message type check. Got nothing, expected 14' # at ../../openssl/test/recipes/70-test_sslmessages.t line 137. # Failed test 'Message type check. Got nothing, expected 16' # at ../../openssl/test/recipes/70-test_sslmessages.t line 137. # Failed test 'Message type check. Got nothing, expected 20' # at ../../openssl/test/recipes/70-test_sslmessages.t line 137. # Failed test 'Message type check. Got nothing, expected 4' # at ../../openssl/test/recipes/70-test_sslmessages.t line 137. # Failed test 'Message type check. Got nothing, expected 20' # at ../../openssl/test/recipes/70-test_sslmessages.t line 137. # Looks like you failed 19 tests of 19. # Failed test 'Renogitation and client auth handshake test' # at ../../openssl/test/recipes/70-test_sslmessages.t line 147. # Looks like you failed 1 test of 5. ../../openssl/test/recipes/70-test_sslmessages.t ...... Dubious, test returned 1 (wstat 256, 0x100) Failed 1/5 subtests Failed creating proxy socket (localhost,4453): Address already in use ../../openssl/test/recipes/70-test_sslrecords.t ....... skipped: Unable to start up Proxy for tests Failed creating proxy socket (localhost,4453): Address already in use ../../openssl/test/recipes/70-test_sslsessiontick.t ... skipped: Unable to start up Proxy for tests Failed creating proxy socket (localhost,4453): Address already in use ../../openssl/test/recipes/70-test_sslskewith0p.t ..... skipped: Unable to start up Proxy for tests Failed creating proxy socket (localhost,4453): Address already in use ../../openssl/test/recipes/70-test_sslvertol.t ........ skipped: Unable to start up Proxy for tests Failed creating proxy socket (localhost,4453): Address already in use ../../openssl/test/recipes/70-test_tlsextms.t ......... skipped: Unable to start up Proxy for tests ../../openssl/test/recipes/70-test_verify_extra.t ..... ok ../../openssl/test/recipes/80-test_ca.t ............... ok ../../openssl/test/recipes/80-test_cipherlist.t ....... ok ../../openssl/test/recipes/80-test_cms.t .............. ok ../../openssl/test/recipes/80-test_ct.t ............... ok ../../openssl/test/recipes/80-test_dane.t ............. ok ../../openssl/test/recipes/80-test_dtls.t ............. ok ../../openssl/test/recipes/80-test_dtlsv1listen.t ..... ok ../../openssl/test/recipes/80-test_ocsp.t ............. ok ../../openssl/test/recipes/80-test_pkcs12.t ........... ok ../../openssl/test/recipes/80-test_ssl_new.t .......... ok ../../openssl/test/recipes/80-test_ssl_old.t .......... ok ../../openssl/test/recipes/80-test_ssl_test_ctx.t ..... ok ../../openssl/test/recipes/80-test_sslcorrupt.t ....... ok ../../openssl/test/recipes/80-test_tsa.t .............. ok ../../openssl/test/recipes/80-test_x509aux.t .......... ok ../../openssl/test/recipes/90-test_async.t ............ ok ../../openssl/test/recipes/90-test_bio_enc.t .......... ok ../../openssl/test/recipes/90-test_bioprint.t ......... ok ../../openssl/test/recipes/90-test_constant_time.t .... ok ../../openssl/test/recipes/90-test_fuzz.t ............. ok ../../openssl/test/recipes/90-test_gmdiff.t ........... ok ../../openssl/test/recipes/90-test_heartbeat.t ........ skipped: heartbeats is not supported by this OpenSSL build ../../openssl/test/recipes/90-test_ige.t .............. ok ../../openssl/test/recipes/90-test_memleak.t .......... ok ../../openssl/test/recipes/90-test_p5_crpt2.t ......... ok ../../openssl/test/recipes/90-test_secmem.t ........... ok ../../openssl/test/recipes/90-test_shlibload.t ........ ok ../../openssl/test/recipes/90-test_srp.t .............. ok ../../openssl/test/recipes/90-test_sslapi.t ........... ok ../../openssl/test/recipes/90-test_threads.t .......... ok ../../openssl/test/recipes/90-test_v3name.t ........... ok Test Summary Report ------------------- ../../openssl/test/recipes/70-test_sslmessages.t (Wstat: 256 Tests: 5 Failed: 1) Failed test: 5 Non-zero exit status: 1 Files=96, Tests=515, 124 wallclock secs ( 0.59 usr 0.12 sys + 45.59 cusr 1.96 csys = 48.26 CPU) Result: FAIL Failed 1/96 test programs. 1/515 subtests failed. Makefile:152: recipe for target '_tests' failed make[1]: *** [_tests] Error 255 make[1]: Leaving directory '/home/openssl/run-checker-1.1.0/no-afalgeng' Makefile:150: recipe for target 'tests' failed make: *** [tests] Error 2 From openssl at openssl.org Sun Apr 2 09:16:52 2017 From: openssl at openssl.org (OpenSSL run-checker) Date: Sun, 02 Apr 2017 09:16:52 +0000 Subject: [openssl-commits] FAILED build of OpenSSL branch master with options -d --strict-warnings no-tls1_2-method Message-ID: <1491124612.787463.30525.nullmailer@run.openssl.org> Platform and configuration command: $ uname -a Linux run 4.4.0-64-generic #85-Ubuntu SMP Mon Feb 20 11:50:30 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux $ CC=clang ../openssl/config -d --strict-warnings no-tls1_2-method Commit log since last time: d83112b Configure: use 5.10.0, don't require... c27778d e_afalg.[ch]: fix --strict-warnings with gcc 4.x and 32-bit build. 15b337f bio/b_print.c: switch to int64_t as "greatest-width integer type". Build log ended with (last 100 lines): ../../openssl/test/recipes/02-test_lhash.t ............... ok ../../openssl/test/recipes/02-test_ordinals.t ............ ok ../../openssl/test/recipes/02-test_stack.t ............... ok ../../openssl/test/recipes/03-test_exdata.t .............. ok ../../openssl/test/recipes/03-test_internal_asn1.t ....... ok ../../openssl/test/recipes/03-test_internal_chacha.t ..... ok ../../openssl/test/recipes/03-test_internal_mdc2.t ....... ok ../../openssl/test/recipes/03-test_internal_modes.t ...... ok ../../openssl/test/recipes/03-test_internal_poly1305.t ... ok ../../openssl/test/recipes/03-test_internal_siphash.t .... ok ../../openssl/test/recipes/03-test_internal_x509.t ....... ok ../../openssl/test/recipes/03-test_ui.t .................. ok ../../openssl/test/recipes/04-test_pem.t ................. ok ../../openssl/test/recipes/05-test_bf.t .................. ok ../../openssl/test/recipes/05-test_cast.t ................ ok ../../openssl/test/recipes/05-test_des.t ................. ok ../../openssl/test/recipes/05-test_hmac.t ................ ok ../../openssl/test/recipes/05-test_idea.t ................ ok ../../openssl/test/recipes/05-test_md2.t ................. skipped: md2 is not supported by this OpenSSL build ../../openssl/test/recipes/05-test_mdc2.t ................ ok ../../openssl/test/recipes/05-test_rand.t ................ ok ../../openssl/test/recipes/05-test_rc2.t ................. ok ../../openssl/test/recipes/05-test_rc4.t ................. ok ../../openssl/test/recipes/05-test_rc5.t ................. skipped: rc5 is not supported by this OpenSSL build ../../openssl/test/recipes/05-test_sha1.t ................ ok ../../openssl/test/recipes/05-test_sha256.t .............. ok ../../openssl/test/recipes/05-test_sha512.t .............. ok ../../openssl/test/recipes/10-test_bn.t .................. ok ../../openssl/test/recipes/10-test_exp.t ................. ok ../../openssl/test/recipes/15-test_dh.t .................. ok ../../openssl/test/recipes/15-test_dsa.t ................. ok ../../openssl/test/recipes/15-test_ec.t .................. ok ../../openssl/test/recipes/15-test_ecdh.t ................ ok ../../openssl/test/recipes/15-test_ecdsa.t ............... ok ../../openssl/test/recipes/15-test_ecparam.t ............. ok ../../openssl/test/recipes/15-test_genrsa.t .............. ok ../../openssl/test/recipes/15-test_rsa.t ................. ok ../../openssl/test/recipes/15-test_rsapss.t .............. ok ../../openssl/test/recipes/20-test_enc.t ................. ok ../../openssl/test/recipes/20-test_enc_more.t ............ ok ../../openssl/test/recipes/20-test_passwd.t .............. ok ../../openssl/test/recipes/25-test_crl.t ................. ok ../../openssl/test/recipes/25-test_d2i.t ................. ok ../../openssl/test/recipes/25-test_pkcs7.t ............... ok ../../openssl/test/recipes/25-test_req.t ................. ok ../../openssl/test/recipes/25-test_sid.t ................. ok ../../openssl/test/recipes/25-test_verify.t .............. ok ../../openssl/test/recipes/25-test_x509.t ................ ok ../../openssl/test/recipes/30-test_afalg.t ............... ok ../../openssl/test/recipes/30-test_engine.t .............. ok ../../openssl/test/recipes/30-test_evp.t ................. ok ../../openssl/test/recipes/30-test_evp_extra.t ........... ok ../../openssl/test/recipes/30-test_pbelu.t ............... ok ../../openssl/test/recipes/30-test_pkey_meth.t ........... ok ../../openssl/test/recipes/40-test_rehash.t .............. ok ../../openssl/test/recipes/60-test_x509_store.t .......... ok ../../openssl/test/recipes/60-test_x509_time.t ........... ok ../../openssl/test/recipes/70-test_asyncio.t ............. ok ../../openssl/test/recipes/70-test_bad_dtls.t ............ ok ../../openssl/test/recipes/70-test_clienthello.t ......... ok ../../openssl/test/recipes/70-test_key_share.t ........... skipped: test_key_share needs TLS1.3 enabled ../../openssl/test/recipes/70-test_packet.t .............. ok ../../openssl/test/recipes/70-test_recordlen.t ........... ok ../../openssl/test/recipes/70-test_renegotiation.t ....... ok ../../openssl/test/recipes/70-test_sslcbcpadding.t ....... skipped: test_sslcbcpadding needs TLSv1.2 enabled ../../openssl/test/recipes/70-test_sslcertstatus.t ....... ok ../../openssl/test/recipes/70-test_sslextension.t ........ ok ../../openssl/test/recipes/70-test_sslmessages.t ......... ok ../../openssl/test/recipes/70-test_sslrecords.t .......... skipped: test_sslrecords needs TLSv1.2 enabled ../../openssl/test/recipes/70-test_sslsessiontick.t ...... ok ../../openssl/test/recipes/70-test_sslsigalgs.t .......... skipped: test_sslsigalgs needs TLS1.2 or TLS1.3 enabled Failed creating proxy socket (localhost,4453): Address already in use ../../openssl/test/recipes/70-test_sslsignature.t ........ skipped: Unable to start up Proxy for tests Failed creating proxy socket (localhost,4453): Address already in use ../../openssl/test/recipes/70-test_sslskewith0p.t ........ skipped: Unable to start up Proxy for tests ../../openssl/test/recipes/70-test_sslversions.t ......... skipped: test_sslversions needs TLS1.3, TLS1.2 and TLS1.1 enabled Failed creating proxy socket (localhost,4453): Address already in use ../../openssl/test/recipes/70-test_sslvertol.t ........... skipped: Unable to start up Proxy for tests ../../openssl/test/recipes/70-test_tls13cookie.t ......... skipped: test_tls13cookie needs TLS1.3 enabled ../../openssl/test/recipes/70-test_tls13downgrade.t ...... skipped: test_tls13downgrade needs TLS1.3 and TLS1.2 enabled ../../openssl/test/recipes/70-test_tls13hrr.t ............ skipped: test_tls13hrr needs TLS1.3 enabled ../../openssl/test/recipes/70-test_tls13kexmodes.t ....... skipped: test_tls13kexmodes needs TLSv1.3 enabled ../../openssl/test/recipes/70-test_tls13messages.t ....... skipped: test_tls13messages needs TLSv1.3 enabled ../../openssl/test/recipes/70-test_tls13psk.t ............ skipped: test_tls13psk needs TLSv1.3 enabled # Failed test 'Handshake' # at ../../openssl/test/recipes/70-test_tlsextms.t line 233. # Failed test 'ServerHello extension extended master secret check' # at ../../openssl/test/recipes/70-test_tlsextms.t line 237. # Failed test 'Extended master secret full handshake check' # at ../../openssl/test/recipes/70-test_tlsextms.t line 239. # Looks like you failed 3 tests of 4. # Failed test 'Default extended master secret test' # at ../../openssl/test/recipes/70-test_tlsextms.t line 243. make[1]: *** wait: No child processes. Stop. make[1]: *** Waiting for unfinished jobs.... make[1]: *** wait: No child processes. Stop. From appro at openssl.org Sun Apr 2 18:48:34 2017 From: appro at openssl.org (Andy Polyakov) Date: Sun, 02 Apr 2017 18:48:34 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491158914.053729.32412.nullmailer@dev.openssl.org> The branch master has been updated via 0bd93bbe4ae60e5f318b298bfe617e468a7b71d0 (commit) from d83112b7fd3b0e751f8a5947e5a93db1cbbe86dc (commit) - Log ----------------------------------------------------------------- commit 0bd93bbe4ae60e5f318b298bfe617e468a7b71d0 Author: Andy Polyakov Date: Sat Apr 1 15:28:28 2017 +0200 crypto/ppccap.c: SIGILL-free processor capabilities detection on MacOS X. It seems to be problematic to probe processor capabilities with SIGILL on MacOS X. The problem should be limited to cases when application code is debugged, but crashes were reported even during normal execution... Reviewed-by: Kurt Roeckx Reviewed-by: Richard Levitte Reviewed-by: Rich Salz ----------------------------------------------------------------------- Summary of changes: crypto/ppccap.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/crypto/ppccap.c b/crypto/ppccap.c index b2b898e..2f7cd8e 100644 --- a/crypto/ppccap.c +++ b/crypto/ppccap.c @@ -22,6 +22,10 @@ # define __power_set(a) (_system_configuration.implementation & (a)) # endif #endif +#if defined(__APPLE__) && defined(__MACH__) +# include +# include +#endif #include #include @@ -240,6 +244,28 @@ void OPENSSL_cpuid_setup(void) # endif #endif +#if defined(__APPLE__) && defined(__MACH__) + OPENSSL_ppccap_P |= PPC_FPU; + + { + int val; + size_t len = sizeof(val); + + if (sysctlbyname("hw.optional.64bitops", &val, &len, NULL, 0) == 0) { + if (val) + OPENSSL_ppccap_P |= PPC_FPU64; + } + + len = sizeof(val); + if (sysctlbyname("hw.optional.altivec", &val, &len, NULL, 0) == 0) { + if (val) + OPENSSL_ppccap_P |= PPC_ALTIVEC; + } + + return; + } +#endif + if (getauxval != NULL) { unsigned long hwcap = getauxval(HWCAP); From levitte at openssl.org Sun Apr 2 19:51:51 2017 From: levitte at openssl.org (Richard Levitte) Date: Sun, 02 Apr 2017 19:51:51 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491162711.689536.23408.nullmailer@dev.openssl.org> The branch master has been updated via 92e2ed5689671bbc003bfe752f660f769e86bf50 (commit) via 3c12582e8f384ff551bd518ec4e5b6a5f7e9cf71 (commit) from 0bd93bbe4ae60e5f318b298bfe617e468a7b71d0 (commit) - Log ----------------------------------------------------------------- commit 92e2ed5689671bbc003bfe752f660f769e86bf50 Author: Richard Levitte Date: Sun Apr 2 11:38:23 2017 +0200 Remind people to have 'Fixes #XXXX' in the commit message It's of course also possible to just add them to the PR description, but having these lines in the commit messages provide better automation. Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3104) commit 3c12582e8f384ff551bd518ec4e5b6a5f7e9cf71 Author: Richard Levitte Date: Sun Apr 2 11:28:04 2017 +0200 Fixup the github pull request template When creating a single commit PR, github will now automatically include the commit comment first in the pull request description, and add the template content last. That makes the description section at the end useless. Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3104) ----------------------------------------------------------------------- Summary of changes: .github/PULL_REQUEST_TEMPLATE.md | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index d4f77fd..7b384b1 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -1,16 +1,14 @@ ##### Checklist - [ ] documentation is added or updated - [ ] tests are added or updated - -##### Description of change - From levitte at openssl.org Sun Apr 2 19:53:39 2017 From: levitte at openssl.org (Richard Levitte) Date: Sun, 02 Apr 2017 19:53:39 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491162819.266642.24447.nullmailer@dev.openssl.org> The branch master has been updated via a4750ce55e7d6451c187b5ab9ccf5218e0851eeb (commit) from 92e2ed5689671bbc003bfe752f660f769e86bf50 (commit) - Log ----------------------------------------------------------------- commit a4750ce55e7d6451c187b5ab9ccf5218e0851eeb Author: Richard Levitte Date: Sun Apr 2 11:18:59 2017 +0200 Disable 15-test_ecparam.t when configured no-ec2m This test doesn't actually fail completely, but there's no real pattern to distinguish which data files should be omitted when no-ec2m is configured and which should not. Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3103) ----------------------------------------------------------------------- Summary of changes: test/recipes/15-test_ecparam.t | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/recipes/15-test_ecparam.t b/test/recipes/15-test_ecparam.t index ec629e9..9fabd3b 100644 --- a/test/recipes/15-test_ecparam.t +++ b/test/recipes/15-test_ecparam.t @@ -18,7 +18,7 @@ use OpenSSL::Test::Utils; setup("test_ecparam"); plan skip_all => "EC isn't supported in this build" - if disabled("ec"); + if disabled("ec") || disabled("ec2m"); my @valid = glob(data_file("valid", "*.pem")); my @invalid = glob(data_file("invalid", "*.pem")); From appro at openssl.org Sun Apr 2 20:10:13 2017 From: appro at openssl.org (Andy Polyakov) Date: Sun, 02 Apr 2017 20:10:13 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1491163813.714442.31937.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 8a4eee0b18cf5f927c528d6e7bd0470c1cb679cb (commit) from a43cf4c0c00ac09bd83709305b5691c4010dba43 (commit) - Log ----------------------------------------------------------------- commit 8a4eee0b18cf5f927c528d6e7bd0470c1cb679cb Author: Andy Polyakov Date: Sat Apr 1 15:28:28 2017 +0200 crypto/ppccap.c: SIGILL-free processor capabilities detection on MacOS X. It seems to be problematic to probe processor capabilities with SIGILL on MacOS X. The problem should be limited to cases when application code is debugged, but crashes were reported even during normal execution... Reviewed-by: Kurt Roeckx Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (cherry picked from commit 0bd93bbe4ae60e5f318b298bfe617e468a7b71d0) ----------------------------------------------------------------------- Summary of changes: crypto/ppccap.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/crypto/ppccap.c b/crypto/ppccap.c index ef38b17..3baf9f7 100644 --- a/crypto/ppccap.c +++ b/crypto/ppccap.c @@ -22,6 +22,10 @@ # define __power_set(a) (_system_configuration.implementation & (a)) # endif #endif +#if defined(__APPLE__) && defined(__MACH__) +# include +# include +#endif #include #include @@ -230,6 +234,28 @@ void OPENSSL_cpuid_setup(void) # endif #endif +#if defined(__APPLE__) && defined(__MACH__) + OPENSSL_ppccap_P |= PPC_FPU; + + { + int val; + size_t len = sizeof(val); + + if (sysctlbyname("hw.optional.64bitops", &val, &len, NULL, 0) == 0) { + if (val) + OPENSSL_ppccap_P |= PPC_FPU64; + } + + len = sizeof(val); + if (sysctlbyname("hw.optional.altivec", &val, &len, NULL, 0) == 0) { + if (val) + OPENSSL_ppccap_P |= PPC_ALTIVEC; + } + + return; + } +#endif + if (getauxval != NULL) { unsigned long hwcap = getauxval(HWCAP); From openssl at openssl.org Mon Apr 3 00:59:01 2017 From: openssl at openssl.org (OpenSSL run-checker) Date: Mon, 03 Apr 2017 00:59:01 +0000 Subject: [openssl-commits] SUCCESSFUL build of OpenSSL branch master with options -d --strict-warnings no-ec2m Message-ID: <1491181141.242361.17016.nullmailer@run.openssl.org> Platform and configuration command: $ uname -a Linux run 4.4.0-64-generic #85-Ubuntu SMP Mon Feb 20 11:50:30 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux $ CC=clang ../openssl/config -d --strict-warnings no-ec2m Commit log since last time: a4750ce Disable 15-test_ecparam.t when configured no-ec2m 92e2ed5 Remind people to have 'Fixes #XXXX' in the commit message 3c12582 Fixup the github pull request template 0bd93bb crypto/ppccap.c: SIGILL-free processor capabilities detection on MacOS X. From openssl at openssl.org Mon Apr 3 10:10:43 2017 From: openssl at openssl.org (OpenSSL run-checker) Date: Mon, 03 Apr 2017 10:10:43 +0000 Subject: [openssl-commits] SUCCESSFUL build of OpenSSL branch OpenSSL_1_1_0-stable with options -d --strict-warnings no-afalgeng Message-ID: <1491214243.589771.32657.nullmailer@run.openssl.org> Platform and configuration command: $ uname -a Linux run 4.4.0-71-generic #92-Ubuntu SMP Fri Mar 24 12:59:01 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux $ CC=clang ../openssl/config -d --strict-warnings no-afalgeng Commit log since last time: 8a4eee0 crypto/ppccap.c: SIGILL-free processor capabilities detection on MacOS X. From matt at openssl.org Mon Apr 3 12:51:03 2017 From: matt at openssl.org (Matt Caswell) Date: Mon, 03 Apr 2017 12:51:03 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491223863.482848.14515.nullmailer@dev.openssl.org> The branch master has been updated via a8e75d56804540dfc588bad9cf1c412c675cab89 (commit) from a4750ce55e7d6451c187b5ab9ccf5218e0851eeb (commit) - Log ----------------------------------------------------------------- commit a8e75d56804540dfc588bad9cf1c412c675cab89 Author: Kazuki Yamaguchi Date: Fri Mar 31 01:54:39 2017 +0900 Fix a typo in the SSL_get_max_early_data() declarations SSL_get_max_early_data() recently added by 3fc8d856105e ("Construct the ticket_early_data_info extension", 2017-02-17) is supposed to take an SSL, but it doesn't. Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3113) ----------------------------------------------------------------------- Summary of changes: doc/man3/SSL_read_early_data.pod | 2 +- include/openssl/ssl.h | 2 +- ssl/ssl_lib.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/doc/man3/SSL_read_early_data.pod b/doc/man3/SSL_read_early_data.pod index 4567de7..dd57cef 100644 --- a/doc/man3/SSL_read_early_data.pod +++ b/doc/man3/SSL_read_early_data.pod @@ -19,7 +19,7 @@ SSL_get_early_data_status int SSL_CTX_set_max_early_data(SSL_CTX *ctx, uint32_t max_early_data); uint32_t SSL_CTX_get_max_early_data(const SSL_CTX *ctx); int SSL_set_max_early_data(SSL *s, uint32_t max_early_data); - uint32_t SSL_get_max_early_data(const SSL_CTX *s); + uint32_t SSL_get_max_early_data(const SSL *s); uint32_t SSL_SESSION_get_max_early_data(const SSL_SESSION *s); int SSL_write_early_data(SSL *s, const void *buf, size_t num, size_t *written); diff --git a/include/openssl/ssl.h b/include/openssl/ssl.h index 1041e3c..b1a8c69 100644 --- a/include/openssl/ssl.h +++ b/include/openssl/ssl.h @@ -800,7 +800,7 @@ SSL_CTX_keylog_cb_func SSL_CTX_get_keylog_callback(const SSL_CTX *ctx); int SSL_CTX_set_max_early_data(SSL_CTX *ctx, uint32_t max_early_data); uint32_t SSL_CTX_get_max_early_data(const SSL_CTX *ctx); int SSL_set_max_early_data(SSL *s, uint32_t max_early_data); -uint32_t SSL_get_max_early_data(const SSL_CTX *s); +uint32_t SSL_get_max_early_data(const SSL *s); #ifdef __cplusplus } diff --git a/ssl/ssl_lib.c b/ssl/ssl_lib.c index a76ee40..61e1a7a 100644 --- a/ssl/ssl_lib.c +++ b/ssl/ssl_lib.c @@ -4810,7 +4810,7 @@ int SSL_set_max_early_data(SSL *s, uint32_t max_early_data) return 1; } -uint32_t SSL_get_max_early_data(const SSL_CTX *s) +uint32_t SSL_get_max_early_data(const SSL *s) { return s->max_early_data; } From matt at openssl.org Mon Apr 3 18:14:18 2017 From: matt at openssl.org (Matt Caswell) Date: Mon, 03 Apr 2017 18:14:18 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491243258.440877.10432.nullmailer@dev.openssl.org> The branch master has been updated via a0cb628b17ecfd6e161870376b925a0045c99d00 (commit) via 90049cea2331ffecb744ee23399be242a2866e2e (commit) via bbea9f2c5f6a134505a899383c22098f3406c5f5 (commit) via f8a303fa7d6dbda31dc253f691d0e3224681ec2e (commit) via 59cebcf9f6cfd6c9703357c638aabb9c508c84bc (commit) from a8e75d56804540dfc588bad9cf1c412c675cab89 (commit) - Log ----------------------------------------------------------------- commit a0cb628b17ecfd6e161870376b925a0045c99d00 Author: Matt Caswell Date: Mon Apr 3 14:22:26 2017 +0100 Tweak a style issue Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3091) commit 90049cea2331ffecb744ee23399be242a2866e2e Author: Matt Caswell Date: Mon Apr 3 14:18:24 2017 +0100 Add a test for the problem fixed by the previous commit Make sure the server can write normal data after earlier writing early data. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3091) commit bbea9f2c5f6a134505a899383c22098f3406c5f5 Author: Tatsuhiro Tsujikawa Date: Mon Apr 3 14:17:58 2017 +0100 Restore s->early_data_state with the original value Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3091) commit f8a303fa7d6dbda31dc253f691d0e3224681ec2e Author: Matt Caswell Date: Thu Mar 30 17:38:15 2017 +0100 Update early data test for an even later arrival of CF Commit 9b5c865df introduced a synthetic delay between arrival of EoED and CF. We actually want to delay the arrival of CF even further to demonstrate that we can write early data even when "in init". Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3091) commit 59cebcf9f6cfd6c9703357c638aabb9c508c84bc Author: Matt Caswell Date: Thu Mar 30 17:35:55 2017 +0100 Don't handle handshake messages when writing early data on server If we have received the EoED message but not yet had the CF then we are "in init". Despite that we still want to write application data, so suppress the "in init" check in ssl3_write_bytes() in that scenario. Fixes #3041 Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3091) ----------------------------------------------------------------------- Summary of changes: ssl/record/rec_layer_s3.c | 8 +++++++- ssl/ssl_lib.c | 5 +++-- test/sslapitest.c | 45 ++++++++++++++++++++++++++++----------------- 3 files changed, 38 insertions(+), 20 deletions(-) diff --git a/ssl/record/rec_layer_s3.c b/ssl/record/rec_layer_s3.c index b51807c..562b9e4 100644 --- a/ssl/record/rec_layer_s3.c +++ b/ssl/record/rec_layer_s3.c @@ -367,7 +367,13 @@ int ssl3_write_bytes(SSL *s, int type, const void *buf_, size_t len, s->rlayer.wnum = 0; - if (SSL_in_init(s) && !ossl_statem_get_in_handshake(s)) { + /* + * When writing early data on the server side we could be "in_init" in + * between receiving the EoED and the CF - but we don't want to handle those + * messages yet. + */ + if (SSL_in_init(s) && !ossl_statem_get_in_handshake(s) + && s->early_data_state != SSL_EARLY_DATA_UNAUTH_WRITING) { i = s->handshake_func(s); if (i < 0) return i; diff --git a/ssl/ssl_lib.c b/ssl/ssl_lib.c index 61e1a7a..24fc994 100644 --- a/ssl/ssl_lib.c +++ b/ssl/ssl_lib.c @@ -1799,7 +1799,7 @@ int SSL_write_ex(SSL *s, const void *buf, size_t num, size_t *written) int SSL_write_early_data(SSL *s, const void *buf, size_t num, size_t *written) { - int ret; + int ret, early_data_state; switch (s->early_data_state) { case SSL_EARLY_DATA_NONE: @@ -1831,10 +1831,11 @@ int SSL_write_early_data(SSL *s, const void *buf, size_t num, size_t *written) case SSL_EARLY_DATA_FINISHED_READING: case SSL_EARLY_DATA_READ_RETRY: + early_data_state = s->early_data_state; /* We are a server writing to an unauthenticated client */ s->early_data_state = SSL_EARLY_DATA_UNAUTH_WRITING; ret = SSL_write_ex(s, buf, num, written); - s->early_data_state = SSL_EARLY_DATA_READ_RETRY; + s->early_data_state = early_data_state; return ret; default: diff --git a/test/sslapitest.c b/test/sslapitest.c index ab1d6ff..ed804c9 100644 --- a/test/sslapitest.c +++ b/test/sslapitest.c @@ -1544,7 +1544,8 @@ static int test_set_sigalgs(int idx) #define MSG3 "This" #define MSG4 "is" #define MSG5 "a" -#define MSG6 "test." +#define MSG6 "test" +#define MSG7 "message." /* * Helper method to setup objects for early data test. Caller frees objects on @@ -1721,13 +1722,6 @@ static int test_early_data_read_write(int idx) goto end; } - /* Push the ClientFinished and the normal data back into the server rbio */ - if (!BIO_write_ex(rbio, data + eoedlen, rawread - eoedlen, &rawwritten) - || rawwritten != rawread - eoedlen) { - printf("Failed to write the ClientFinished and data to server rbio\n"); - goto end; - } - /* * Server has not finished init yet, so should still be able to write early * data. @@ -1738,6 +1732,13 @@ static int test_early_data_read_write(int idx) goto end; } + /* Push the ClientFinished and the normal data back into the server rbio */ + if (!BIO_write_ex(rbio, data + eoedlen, rawread - eoedlen, &rawwritten) + || rawwritten != rawread - eoedlen) { + printf("Failed to write the ClientFinished and data to server rbio\n"); + goto end; + } + /* Server should be able to read normal data */ if (!SSL_read_ex(serverssl, buf, sizeof(buf), &readbytes) || readbytes != strlen(MSG5)) { @@ -1759,25 +1760,35 @@ static int test_early_data_read_write(int idx) } ERR_clear_error(); + /* Client should be able to read the data sent by the server */ + if (!SSL_read_ex(clientssl, buf, sizeof(buf), &readbytes) + || readbytes != strlen(MSG6) + || memcmp(MSG6, buf, strlen(MSG6))) { + printf("Failed reading message 6\n"); + goto end; + } /* * Make sure we process the NewSessionTicket. This arrives post-handshake. - * We attempt a read which we do not expect to return any data. Doesn't - * apply when read_ahead is in use - the ticket will get processed along - * with the application data in the second read below. + * We attempt a read which we do not expect to return any data. */ - if (idx == 0 && SSL_read_ex(clientssl, buf, sizeof(buf), &readbytes)) { + if (SSL_read_ex(clientssl, buf, sizeof(buf), &readbytes)) { printf("Unexpected success doing final client read\n"); goto end; } - /* Client should be able to read the data sent by the server */ + + /* Server should be able to write normal data */ + if (!SSL_write_ex(serverssl, MSG7, strlen(MSG7), &written) + || written != strlen(MSG7)) { + printf("Failed writing normal data message 7\n"); + goto end; + } if (!SSL_read_ex(clientssl, buf, sizeof(buf), &readbytes) - || readbytes != strlen(MSG6) - || memcmp(MSG6, buf, strlen(MSG6))) { - printf("Failed reading message 6\n"); + || readbytes != strlen(MSG7) + || memcmp(MSG7, buf, strlen(MSG7))) { + printf("Failed reading message 7\n"); goto end; } - SSL_SESSION_free(sess); sess = SSL_get1_session(clientssl); From matt at openssl.org Mon Apr 3 18:22:45 2017 From: matt at openssl.org (Matt Caswell) Date: Mon, 03 Apr 2017 18:22:45 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491243765.662946.13468.nullmailer@dev.openssl.org> The branch master has been updated via 508fafd8efa97083ef449e185b6f83e19b5a4e8f (commit) via 090c8118e8d37f5631a421384a24ded35940690c (commit) from a0cb628b17ecfd6e161870376b925a0045c99d00 (commit) - Log ----------------------------------------------------------------- commit 508fafd8efa97083ef449e185b6f83e19b5a4e8f Author: Matt Caswell Date: Mon Apr 3 15:41:21 2017 +0100 Add documentation for SSL_get_server_tmp_key() Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3114) commit 090c8118e8d37f5631a421384a24ded35940690c Author: Matt Caswell Date: Mon Apr 3 15:24:06 2017 +0100 Fix calls to SSL_get_server_tmp_key() in TLSv1.3 The macro SSL_get_server_tmp_key() returns information about the temp key used by the server during a handshake. This was returning NULL for TLSv1.3 and causing s_client to omit this information in its connection summary. Fixes #3081 Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3114) ----------------------------------------------------------------------- Summary of changes: doc/man3/SSL_get_server_tmp_key.pod | 43 +++++++++++++++++++++++++++++++++++++ ssl/statem/extensions_clnt.c | 4 ++-- 2 files changed, 45 insertions(+), 2 deletions(-) create mode 100644 doc/man3/SSL_get_server_tmp_key.pod diff --git a/doc/man3/SSL_get_server_tmp_key.pod b/doc/man3/SSL_get_server_tmp_key.pod new file mode 100644 index 0000000..fda891b --- /dev/null +++ b/doc/man3/SSL_get_server_tmp_key.pod @@ -0,0 +1,43 @@ +=pod + +=head1 NAME + +SSL_get_server_tmp_key - get information about the server's temporary key used +during a handshake + +=head1 SYNOPSIS + + #include + + long SSL_get_server_tmp_key(SSL *ssl, EVP_PKEY **key); + +=head1 DESCRIPTION + +SSL_get_server_tmp_key() returns the temporary key provided by the server and +used during key exchange. For example, if ECDHE is in use, then this represents +the server's public ECDHE key. On success a pointer to the key is stored in +B<*key>. It is the caller's responsibility to free this key after use using +L. This function may only be called by the client. + +=head1 RETURN VALUES + +SSL_get_server_tmp_key() returns 1 on success or 0 otherwise. + +=head1 NOTES + +This function is implemented as a macro. + +=head1 SEE ALSO + +L, L + +=head1 COPYRIGHT + +Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +L. + +=cut diff --git a/ssl/statem/extensions_clnt.c b/ssl/statem/extensions_clnt.c index 939ad4c..8bb9a88 100644 --- a/ssl/statem/extensions_clnt.c +++ b/ssl/statem/extensions_clnt.c @@ -1295,7 +1295,7 @@ int tls_parse_stoc_key_share(SSL *s, PACKET *pkt, unsigned int context, X509 *x, EVP_PKEY *ckey = s->s3->tmp.pkey, *skey = NULL; /* Sanity check */ - if (ckey == NULL) { + if (ckey == NULL || s->s3->peer_tmp != NULL) { *al = SSL_AD_INTERNAL_ERROR; SSLerr(SSL_F_TLS_PARSE_STOC_KEY_SHARE, ERR_R_INTERNAL_ERROR); return 0; @@ -1386,7 +1386,7 @@ int tls_parse_stoc_key_share(SSL *s, PACKET *pkt, unsigned int context, X509 *x, EVP_PKEY_free(skey); return 0; } - EVP_PKEY_free(skey); + s->s3->peer_tmp = skey; #endif return 1; From matt at openssl.org Mon Apr 3 19:10:04 2017 From: matt at openssl.org (Matt Caswell) Date: Mon, 03 Apr 2017 19:10:04 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491246604.372367.27544.nullmailer@dev.openssl.org> The branch master has been updated via 18d20b5eb66fda0ada2e65c2b19aeae75827bdf8 (commit) via ff79a24402108ba2cc313f52c745b69d473eb4b1 (commit) from 508fafd8efa97083ef449e185b6f83e19b5a4e8f (commit) - Log ----------------------------------------------------------------- commit 18d20b5eb66fda0ada2e65c2b19aeae75827bdf8 Author: Matt Caswell Date: Mon Apr 3 12:42:58 2017 +0100 Ensure dhparams can handle X9.42 params in DER dhparams correctly handles X9.42 params in PEM format. However it failed to correctly processes them when reading/writing DER format. Fixes #3102 Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3111) commit ff79a24402108ba2cc313f52c745b69d473eb4b1 Author: Matt Caswell Date: Mon Apr 3 12:41:04 2017 +0100 Add missing macros for DHxparams DHparams has d2i_DHparams_fp, d2i_DHxparams_bio etc, but the equivalent macros for DHxparams were omitted. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3111) ----------------------------------------------------------------------- Summary of changes: apps/dhparam.c | 22 +++++++++++++++++----- include/openssl/dh.h | 29 +++++++++++++++++++++++------ 2 files changed, 40 insertions(+), 11 deletions(-) diff --git a/apps/dhparam.c b/apps/dhparam.c index 5fca25e..6cd059f 100644 --- a/apps/dhparam.c +++ b/apps/dhparam.c @@ -242,10 +242,19 @@ int dhparam_main(int argc, char **argv) } else # endif { - if (informat == FORMAT_ASN1) + if (informat == FORMAT_ASN1) { + /* + * We have no PEM header to determine what type of DH params it + * is. We'll just try both. + */ dh = d2i_DHparams_bio(in, NULL); - else /* informat == FORMAT_PEM */ + /* BIO_reset() returns 0 for success for file BIOs only!!! */ + if (dh == NULL && BIO_reset(in) == 0) + dh = d2i_DHxparams_bio(in, NULL); + } else { + /* informat == FORMAT_PEM */ dh = PEM_read_bio_DHparams(in, NULL, NULL, NULL); + } if (dh == NULL) { BIO_printf(bio_err, "unable to load DH parameters\n"); @@ -340,9 +349,12 @@ int dhparam_main(int argc, char **argv) if (!noout) { const BIGNUM *q; DH_get0_pqg(dh, NULL, &q, NULL); - if (outformat == FORMAT_ASN1) - i = i2d_DHparams_bio(out, dh); - else if (q != NULL) + if (outformat == FORMAT_ASN1) { + if (q != NULL) + i = i2d_DHxparams_bio(out, dh); + else + i = i2d_DHparams_bio(out, dh); + } else if (q != NULL) i = PEM_write_bio_DHxparams(out, dh); else i = PEM_write_bio_DHparams(out, dh); diff --git a/include/openssl/dh.h b/include/openssl/dh.h index 6d149bc..fbd4790 100644 --- a/include/openssl/dh.h +++ b/include/openssl/dh.h @@ -87,12 +87,29 @@ DECLARE_ASN1_ITEM(DHparams) */ # define DH_CHECK_P_NOT_STRONG_PRIME DH_CHECK_P_NOT_SAFE_PRIME -# define d2i_DHparams_fp(fp,x) (DH *)ASN1_d2i_fp((char *(*)())DH_new, \ - (char *(*)())d2i_DHparams,(fp),(unsigned char **)(x)) -# define i2d_DHparams_fp(fp,x) ASN1_i2d_fp(i2d_DHparams,(fp), \ - (unsigned char *)(x)) -# define d2i_DHparams_bio(bp,x) ASN1_d2i_bio_of(DH,DH_new,d2i_DHparams,bp,x) -# define i2d_DHparams_bio(bp,x) ASN1_i2d_bio_of_const(DH,i2d_DHparams,bp,x) +# define d2i_DHparams_fp(fp,x) \ + (DH *)ASN1_d2i_fp((char *(*)())DH_new, \ + (char *(*)())d2i_DHparams, \ + (fp), \ + (unsigned char **)(x)) +# define i2d_DHparams_fp(fp,x) \ + ASN1_i2d_fp(i2d_DHparams,(fp), (unsigned char *)(x)) +# define d2i_DHparams_bio(bp,x) \ + ASN1_d2i_bio_of(DH, DH_new, d2i_DHparams, bp, x) +# define i2d_DHparams_bio(bp,x) \ + ASN1_i2d_bio_of_const(DH,i2d_DHparams,bp,x) + +# define d2i_DHxparams_fp(fp,x) \ + (DH *)ASN1_d2i_fp((char *(*)())DH_new, \ + (char *(*)())d2i_DHxparams, \ + (fp), \ + (unsigned char **)(x)) +# define i2d_DHxparams_fp(fp,x) \ + ASN1_i2d_fp(i2d_DHxparams,(fp), (unsigned char *)(x)) +# define d2i_DHxparams_bio(bp,x) \ + ASN1_d2i_bio_of(DH, DH_new, d2i_DHxparams, bp, x) +# define i2d_DHxparams_bio(bp,x) \ + ASN1_i2d_bio_of_const(DH, i2d_DHxparams, bp, x) DH *DHparams_dup(DH *); From matt at openssl.org Mon Apr 3 19:10:19 2017 From: matt at openssl.org (Matt Caswell) Date: Mon, 03 Apr 2017 19:10:19 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1491246619.950776.28366.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 133b9756e7357128954f28d4fcbb4db8b39d4f9a (commit) via d0c50e80a8b773ceec27c7e60fae7ccf4947df78 (commit) from 8a4eee0b18cf5f927c528d6e7bd0470c1cb679cb (commit) - Log ----------------------------------------------------------------- commit 133b9756e7357128954f28d4fcbb4db8b39d4f9a Author: Matt Caswell Date: Mon Apr 3 12:42:58 2017 +0100 Ensure dhparams can handle X9.42 params in DER dhparams correctly handles X9.42 params in PEM format. However it failed to correctly processes them when reading/writing DER format. Fixes #3102 Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3111) (cherry picked from commit 18d20b5eb66fda0ada2e65c2b19aeae75827bdf8) commit d0c50e80a8b773ceec27c7e60fae7ccf4947df78 Author: Matt Caswell Date: Mon Apr 3 12:41:04 2017 +0100 Add missing macros for DHxparams DHparams has d2i_DHparams_fp, d2i_DHxparams_bio etc, but the equivalent macros for DHxparams were omitted. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3111) (cherry picked from commit ff79a24402108ba2cc313f52c745b69d473eb4b1) ----------------------------------------------------------------------- Summary of changes: apps/dhparam.c | 22 +++++++++++++++++----- include/openssl/dh.h | 29 +++++++++++++++++++++++------ 2 files changed, 40 insertions(+), 11 deletions(-) diff --git a/apps/dhparam.c b/apps/dhparam.c index 2223e1a..0616333 100644 --- a/apps/dhparam.c +++ b/apps/dhparam.c @@ -242,10 +242,19 @@ int dhparam_main(int argc, char **argv) } else # endif { - if (informat == FORMAT_ASN1) + if (informat == FORMAT_ASN1) { + /* + * We have no PEM header to determine what type of DH params it + * is. We'll just try both. + */ dh = d2i_DHparams_bio(in, NULL); - else /* informat == FORMAT_PEM */ + /* BIO_reset() returns 0 for success for file BIOs only!!! */ + if (dh == NULL && BIO_reset(in) == 0) + dh = d2i_DHxparams_bio(in, NULL); + } else { + /* informat == FORMAT_PEM */ dh = PEM_read_bio_DHparams(in, NULL, NULL, NULL); + } if (dh == NULL) { BIO_printf(bio_err, "unable to load DH parameters\n"); @@ -340,9 +349,12 @@ int dhparam_main(int argc, char **argv) if (!noout) { const BIGNUM *q; DH_get0_pqg(dh, NULL, &q, NULL); - if (outformat == FORMAT_ASN1) - i = i2d_DHparams_bio(out, dh); - else if (q != NULL) + if (outformat == FORMAT_ASN1) { + if (q != NULL) + i = i2d_DHxparams_bio(out, dh); + else + i = i2d_DHparams_bio(out, dh); + } else if (q != NULL) i = PEM_write_bio_DHxparams(out, dh); else i = PEM_write_bio_DHparams(out, dh); diff --git a/include/openssl/dh.h b/include/openssl/dh.h index 6d149bc..fbd4790 100644 --- a/include/openssl/dh.h +++ b/include/openssl/dh.h @@ -87,12 +87,29 @@ DECLARE_ASN1_ITEM(DHparams) */ # define DH_CHECK_P_NOT_STRONG_PRIME DH_CHECK_P_NOT_SAFE_PRIME -# define d2i_DHparams_fp(fp,x) (DH *)ASN1_d2i_fp((char *(*)())DH_new, \ - (char *(*)())d2i_DHparams,(fp),(unsigned char **)(x)) -# define i2d_DHparams_fp(fp,x) ASN1_i2d_fp(i2d_DHparams,(fp), \ - (unsigned char *)(x)) -# define d2i_DHparams_bio(bp,x) ASN1_d2i_bio_of(DH,DH_new,d2i_DHparams,bp,x) -# define i2d_DHparams_bio(bp,x) ASN1_i2d_bio_of_const(DH,i2d_DHparams,bp,x) +# define d2i_DHparams_fp(fp,x) \ + (DH *)ASN1_d2i_fp((char *(*)())DH_new, \ + (char *(*)())d2i_DHparams, \ + (fp), \ + (unsigned char **)(x)) +# define i2d_DHparams_fp(fp,x) \ + ASN1_i2d_fp(i2d_DHparams,(fp), (unsigned char *)(x)) +# define d2i_DHparams_bio(bp,x) \ + ASN1_d2i_bio_of(DH, DH_new, d2i_DHparams, bp, x) +# define i2d_DHparams_bio(bp,x) \ + ASN1_i2d_bio_of_const(DH,i2d_DHparams,bp,x) + +# define d2i_DHxparams_fp(fp,x) \ + (DH *)ASN1_d2i_fp((char *(*)())DH_new, \ + (char *(*)())d2i_DHxparams, \ + (fp), \ + (unsigned char **)(x)) +# define i2d_DHxparams_fp(fp,x) \ + ASN1_i2d_fp(i2d_DHxparams,(fp), (unsigned char *)(x)) +# define d2i_DHxparams_bio(bp,x) \ + ASN1_d2i_bio_of(DH, DH_new, d2i_DHxparams, bp, x) +# define i2d_DHxparams_bio(bp,x) \ + ASN1_i2d_bio_of_const(DH, i2d_DHxparams, bp, x) DH *DHparams_dup(DH *); From matt at openssl.org Mon Apr 3 19:13:37 2017 From: matt at openssl.org (Matt Caswell) Date: Mon, 03 Apr 2017 19:13:37 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_0_2-stable update Message-ID: <1491246817.117358.30062.nullmailer@dev.openssl.org> The branch OpenSSL_1_0_2-stable has been updated via 3f524f77bc2de6deba582997a72200a41aef9fcf (commit) via 1f3b0fe03c21f34cd78878d2f1fb4a246530d3d0 (commit) from 248cf959672041f38f4d80a4a09ee01d8ab04fe8 (commit) - Log ----------------------------------------------------------------- commit 3f524f77bc2de6deba582997a72200a41aef9fcf Author: Matt Caswell Date: Mon Apr 3 12:42:58 2017 +0100 Ensure dhparams can handle X9.42 params in DER dhparams correctly handles X9.42 params in PEM format. However it failed to correctly processes them when reading/writing DER format. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3112) commit 1f3b0fe03c21f34cd78878d2f1fb4a246530d3d0 Author: Matt Caswell Date: Mon Apr 3 12:41:04 2017 +0100 Add missing macros for DHxparams DHparams has d2i_DHparams_fp, d2i_DHxparams_bio etc, but the equivalent macros for DHxparams were omitted. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3112) ----------------------------------------------------------------------- Summary of changes: apps/dhparam.c | 24 ++++++++++++++++++------ crypto/dh/dh.h | 29 +++++++++++++++++++++++------ 2 files changed, 41 insertions(+), 12 deletions(-) diff --git a/apps/dhparam.c b/apps/dhparam.c index 1210adb..bd91234 100644 --- a/apps/dhparam.c +++ b/apps/dhparam.c @@ -381,10 +381,19 @@ int MAIN(int argc, char **argv) } else # endif { - if (informat == FORMAT_ASN1) + if (informat == FORMAT_ASN1) { + /* + * We have no PEM header to determine what type of DH params it + * is. We'll just try both. + */ dh = d2i_DHparams_bio(in, NULL); - else /* informat == FORMAT_PEM */ + /* BIO_reset() returns 0 for success for file BIOs only!!! */ + if (dh == NULL && BIO_reset(in) == 0) + dh = d2i_DHxparams_bio(in, NULL); + } else { + /* informat == FORMAT_PEM */ dh = PEM_read_bio_DHparams(in, NULL, NULL, NULL); + } if (dh == NULL) { BIO_printf(bio_err, "unable to load DH parameters\n"); @@ -484,10 +493,13 @@ int MAIN(int argc, char **argv) } if (!noout) { - if (outformat == FORMAT_ASN1) - i = i2d_DHparams_bio(out, dh); - else if (outformat == FORMAT_PEM) { - if (dh->q) + if (outformat == FORMAT_ASN1) { + if (dh->q != NULL) + i = i2d_DHxparams_bio(out, dh); + else + i = i2d_DHparams_bio(out, dh); + } else if (outformat == FORMAT_PEM) { + if (dh->q != NULL) i = PEM_write_bio_DHxparams(out, dh); else i = PEM_write_bio_DHparams(out, dh); diff --git a/crypto/dh/dh.h b/crypto/dh/dh.h index a5bd901..a228c7a 100644 --- a/crypto/dh/dh.h +++ b/crypto/dh/dh.h @@ -182,12 +182,29 @@ struct dh_st { */ # define DH_CHECK_P_NOT_STRONG_PRIME DH_CHECK_P_NOT_SAFE_PRIME -# define d2i_DHparams_fp(fp,x) (DH *)ASN1_d2i_fp((char *(*)())DH_new, \ - (char *(*)())d2i_DHparams,(fp),(unsigned char **)(x)) -# define i2d_DHparams_fp(fp,x) ASN1_i2d_fp(i2d_DHparams,(fp), \ - (unsigned char *)(x)) -# define d2i_DHparams_bio(bp,x) ASN1_d2i_bio_of(DH,DH_new,d2i_DHparams,bp,x) -# define i2d_DHparams_bio(bp,x) ASN1_i2d_bio_of_const(DH,i2d_DHparams,bp,x) +# define d2i_DHparams_fp(fp,x) \ + (DH *)ASN1_d2i_fp((char *(*)())DH_new, \ + (char *(*)())d2i_DHparams, \ + (fp), \ + (unsigned char **)(x)) +# define i2d_DHparams_fp(fp,x) \ + ASN1_i2d_fp(i2d_DHparams,(fp), (unsigned char *)(x)) +# define d2i_DHparams_bio(bp,x) \ + ASN1_d2i_bio_of(DH, DH_new, d2i_DHparams, bp, x) +# define i2d_DHparams_bio(bp,x) \ + ASN1_i2d_bio_of_const(DH,i2d_DHparams,bp,x) + +# define d2i_DHxparams_fp(fp,x) \ + (DH *)ASN1_d2i_fp((char *(*)())DH_new, \ + (char *(*)())d2i_DHxparams, \ + (fp), \ + (unsigned char **)(x)) +# define i2d_DHxparams_fp(fp,x) \ + ASN1_i2d_fp(i2d_DHxparams,(fp), (unsigned char *)(x)) +# define d2i_DHxparams_bio(bp,x) \ + ASN1_d2i_bio_of(DH, DH_new, d2i_DHxparams, bp, x) +# define i2d_DHxparams_bio(bp,x) \ + ASN1_i2d_bio_of_const(DH, i2d_DHxparams, bp, x) DH *DHparams_dup(DH *); From steve at openssl.org Mon Apr 3 22:48:44 2017 From: steve at openssl.org (Dr. Stephen Henson) Date: Mon, 03 Apr 2017 22:48:44 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491259724.487853.23639.nullmailer@dev.openssl.org> The branch master has been updated via 8edb4ee1a237b43d9520eaa658a4ad2671e8dd0c (commit) via 5a185729a3b029845c4596657b4495b3a8ead6f0 (commit) via 25a9fabbefa26422b6c9ee6635115b7ae3b97f21 (commit) via f15b50c4cb6a5d36a3789863035d8b795378280c (commit) via 86135bedd52124aa8410847169f7a25c055b3bec (commit) via 5969a2dd2cce3ee4f35cc256256d9c8119080e98 (commit) via 9784ec04745a8c8ecbf5610c0a2f5540e1e0f2cd (commit) via d2add501f070290a8de8c356d1c3c1a155cf1225 (commit) via 3578020bb16df7a9acf5b332ca409e88548ccbe7 (commit) via be885d50758f887520e6fa0a5edeaec7c5e70b65 (commit) via fa7c263747cb73f03b321399a1452cc40516d9a4 (commit) from 18d20b5eb66fda0ada2e65c2b19aeae75827bdf8 (commit) - Log ----------------------------------------------------------------- commit 8edb4ee1a237b43d9520eaa658a4ad2671e8dd0c Author: Dr. Stephen Henson Date: Sat Apr 1 00:40:15 2017 +0100 update ordinals Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3015) commit 5a185729a3b029845c4596657b4495b3a8ead6f0 Author: Dr. Stephen Henson Date: Fri Mar 31 17:15:22 2017 +0100 Document new ssl(3) functions and options. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3015) commit 25a9fabbefa26422b6c9ee6635115b7ae3b97f21 Author: Dr. Stephen Henson Date: Fri Mar 31 23:06:15 2017 +0100 Add certificate_authorities tests client to server. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3015) commit f15b50c4cb6a5d36a3789863035d8b795378280c Author: Dr. Stephen Henson Date: Fri Mar 31 22:35:28 2017 +0100 Add ExpectedServerCANames Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3015) commit 86135bedd52124aa8410847169f7a25c055b3bec Author: Dr. Stephen Henson Date: Fri Mar 31 22:30:58 2017 +0100 Constify SSL_dup_CA_list() Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3015) commit 5969a2dd2cce3ee4f35cc256256d9c8119080e98 Author: Dr. Stephen Henson Date: Fri Mar 31 17:04:28 2017 +0100 Print CA names in s_server, add -requestCAfile to s_client Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3015) commit 9784ec04745a8c8ecbf5610c0a2f5540e1e0f2cd Author: Dr. Stephen Henson Date: Mon Mar 20 18:33:54 2017 +0000 Don't use client specific functions to retrieve CA list Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3015) commit d2add501f070290a8de8c356d1c3c1a155cf1225 Author: Dr. Stephen Henson Date: Mon Mar 20 18:32:43 2017 +0000 Add requestCAfile option Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3015) commit 3578020bb16df7a9acf5b332ca409e88548ccbe7 Author: Dr. Stephen Henson Date: Mon Mar 20 18:31:44 2017 +0000 Add extensions to debug list Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3015) commit be885d50758f887520e6fa0a5edeaec7c5e70b65 Author: Dr. Stephen Henson Date: Sat Mar 18 13:44:13 2017 +0000 SSL_CONF support for certificate_authorities Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3015) commit fa7c263747cb73f03b321399a1452cc40516d9a4 Author: Dr. Stephen Henson Date: Mon Mar 13 15:00:36 2017 +0000 New certificate_authorities functions Add functions to add/retrieve the certificate_authorities. The older client_CA functions mainly just call the new versions now. Rename fields sice new extension can be generated by client and server. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3015) ----------------------------------------------------------------------- Summary of changes: apps/s_apps.h | 1 + apps/s_cb.c | 23 ++++++++ apps/s_client.c | 36 ++++++------ apps/s_server.c | 2 + doc/man1/s_client.pod | 7 +++ doc/man3/SSL_CONF_cmd.pod | 8 +++ doc/man3/SSL_CTX_set0_CA_list.pod | 94 ++++++++++++++++++++++++++++++ include/openssl/ssl.h | 10 +++- ssl/s3_lib.c | 4 +- ssl/ssl_cert.c | 81 +++++++++++++++++--------- ssl/ssl_conf.c | 22 +++++-- ssl/ssl_lib.c | 12 ++-- ssl/ssl_locl.h | 15 +++-- ssl/statem/extensions.c | 6 +- ssl/statem/statem_lib.c | 6 +- ssl/t1_lib.c | 2 +- test/README.ssltest.md | 4 ++ test/handshake_helper.c | 11 +++- test/handshake_helper.h | 2 + test/ssl-tests/20-cert-select.conf | 2 + test/ssl-tests/20-cert-select.conf.in | 8 ++- test/ssl_test.c | 105 ++++++++++++++++++---------------- test/ssl_test_ctx.c | 7 +++ test/ssl_test_ctx.h | 2 + util/libssl.num | 7 +++ 25 files changed, 358 insertions(+), 119 deletions(-) create mode 100644 doc/man3/SSL_CTX_set0_CA_list.pod diff --git a/apps/s_apps.h b/apps/s_apps.h index bf27de2..aa0565d 100644 --- a/apps/s_apps.h +++ b/apps/s_apps.h @@ -77,4 +77,5 @@ int ssl_load_stores(SSL_CTX *ctx, const char *vfyCApath, int crl_download); void ssl_ctx_security_debug(SSL_CTX *ctx, int verbose); int set_keylog_file(SSL_CTX *ctx, const char *keylog_file); +void print_ca_names(BIO *bio, SSL *s); #endif diff --git a/apps/s_cb.c b/apps/s_cb.c index f395a2a..1b68164 100644 --- a/apps/s_cb.c +++ b/apps/s_cb.c @@ -665,6 +665,11 @@ static STRINT_PAIR tlsext_types[] = { #ifdef TLSEXT_TYPE_extended_master_secret {"extended master secret", TLSEXT_TYPE_extended_master_secret}, #endif + {"key share", TLSEXT_TYPE_key_share}, + {"supported versions", TLSEXT_TYPE_supported_versions}, + {"psk", TLSEXT_TYPE_psk}, + {"psk kex modes", TLSEXT_TYPE_psk_kex_modes}, + {"certificate authorities", TLSEXT_TYPE_certificate_authorities}, {NULL} }; @@ -1421,3 +1426,21 @@ int set_keylog_file(SSL_CTX *ctx, const char *keylog_file) SSL_CTX_set_keylog_callback(ctx, keylog_callback); return 0; } + +void print_ca_names(BIO *bio, SSL *s) +{ + const char *cs = SSL_is_server(s) ? "server" : "client"; + const STACK_OF(X509_NAME) *sk = SSL_get0_peer_CA_list(s); + int i; + + if (sk == NULL || sk_X509_NAME_num(sk) == 0) { + BIO_printf(bio, "---\nNo %s certificate CA names sent\n", cs); + return; + } + + BIO_printf(bio, "---\nAcceptable %s certificate CA names\n",cs); + for (i = 0; i < sk_X509_NAME_num(sk); i++) { + X509_NAME_print_ex(bio, sk_X509_NAME_value(sk, i), 0, XN_FLAG_ONELINE); + BIO_write(bio, "\n", 1); + } +} diff --git a/apps/s_client.c b/apps/s_client.c index cab7e25..9267393 100644 --- a/apps/s_client.c +++ b/apps/s_client.c @@ -547,7 +547,7 @@ typedef enum OPTION_choice { OPT_SERVERINFO, OPT_STARTTLS, OPT_SERVERNAME, OPT_USE_SRTP, OPT_KEYMATEXPORT, OPT_KEYMATEXPORTLEN, OPT_SMTPHOST, OPT_ASYNC, OPT_SPLIT_SEND_FRAG, OPT_MAX_PIPELINES, OPT_READ_BUF, - OPT_KEYLOG_FILE, OPT_EARLY_DATA, + OPT_KEYLOG_FILE, OPT_EARLY_DATA, OPT_REQCAFILE, OPT_V_ENUM, OPT_X_ENUM, OPT_S_ENUM, @@ -587,6 +587,8 @@ const OPTIONS s_client_options[] = { "Do not load the default certificates file"}, {"no-CApath", OPT_NOCAPATH, '-', "Do not load certificates from the default certificates directory"}, + {"requestCAfile", OPT_REQCAFILE, '<', + "PEM format file of CA names to send to the server"}, {"dane_tlsa_domain", OPT_DANE_TLSA_DOMAIN, 's', "DANE TLSA base domain"}, {"dane_tlsa_rrdata", OPT_DANE_TLSA_RRDATA, 's', "DANE TLSA rrdata presentation form"}, @@ -831,6 +833,7 @@ int s_client_main(int argc, char **argv) char *port = OPENSSL_strdup(PORT); char *inrand = NULL; char *passarg = NULL, *pass = NULL, *vfyCApath = NULL, *vfyCAfile = NULL; + char *ReqCAfile = NULL; char *sess_in = NULL, *crl_file = NULL, *p; char *xmpphost = NULL; const char *ehlo = "mail.example.com"; @@ -1276,6 +1279,9 @@ int s_client_main(int argc, char **argv) case OPT_BUILD_CHAIN: build_chain = 1; break; + case OPT_REQCAFILE: + ReqCAfile = opt_arg(); + break; case OPT_CAFILE: CAfile = opt_arg(); break; @@ -1577,6 +1583,17 @@ int s_client_main(int argc, char **argv) ERR_print_errors(bio_err); goto end; } + if (ReqCAfile != NULL) { + STACK_OF(X509_NAME) *nm = sk_X509_NAME_new_null(); + + if (nm == NULL || !SSL_add_file_cert_subjects_to_stack(nm, ReqCAfile)) { + sk_X509_NAME_pop_free(nm, X509_NAME_free); + BIO_printf(bio_err, "Error loading CA names\n"); + ERR_print_errors(bio_err); + goto end; + } + SSL_CTX_set0_CA_list(ctx, nm); + } #ifndef OPENSSL_NO_ENGINE if (ssl_client_engine) { if (!SSL_CTX_set_client_cert_engine(ctx, ssl_client_engine)) { @@ -2804,9 +2821,7 @@ static void print_stuff(BIO *bio, SSL *s, int full) X509 *peer = NULL; char buf[BUFSIZ]; STACK_OF(X509) *sk; - STACK_OF(X509_NAME) *sk2; const SSL_CIPHER *c; - X509_NAME *xn; int i; #ifndef OPENSSL_NO_COMP const COMP_METHOD *comp, *expansion; @@ -2848,21 +2863,10 @@ static void print_stuff(BIO *bio, SSL *s, int full) BIO_printf(bio, "subject=%s\n", buf); X509_NAME_oneline(X509_get_issuer_name(peer), buf, sizeof buf); BIO_printf(bio, "issuer=%s\n", buf); - } else - BIO_printf(bio, "no peer certificate available\n"); - - sk2 = SSL_get_client_CA_list(s); - if ((sk2 != NULL) && (sk_X509_NAME_num(sk2) > 0)) { - BIO_printf(bio, "---\nAcceptable client certificate CA names\n"); - for (i = 0; i < sk_X509_NAME_num(sk2); i++) { - xn = sk_X509_NAME_value(sk2, i); - X509_NAME_oneline(xn, buf, sizeof(buf)); - BIO_write(bio, buf, strlen(buf)); - BIO_write(bio, "\n", 1); - } } else { - BIO_printf(bio, "---\nNo client certificate CA names sent\n"); + BIO_printf(bio, "no peer certificate available\n"); } + print_ca_names(bio, s); ssl_print_sigalgs(bio, s); ssl_print_tmp_key(bio, s); diff --git a/apps/s_server.c b/apps/s_server.c index 5858278..4bd2620 100644 --- a/apps/s_server.c +++ b/apps/s_server.c @@ -2704,6 +2704,7 @@ static void print_connection_info(SSL *con) ssl_print_point_formats(bio_s_out, con); ssl_print_groups(bio_s_out, con, 0); #endif + print_ca_names(bio_s_out, con); BIO_printf(bio_s_out, "CIPHER is %s\n", (str != NULL) ? str : "(NONE)"); #if !defined(OPENSSL_NO_NEXTPROTONEG) @@ -2990,6 +2991,7 @@ static int www_body(int s, int stype, unsigned char *context) #ifndef OPENSSL_NO_EC ssl_print_groups(io, con, 0); #endif + print_ca_names(io, con); BIO_printf(io, (SSL_session_reused(con) ? "---\nReused, " : "---\nNew, ")); c = SSL_get_current_cipher(con); diff --git a/doc/man1/s_client.pod b/doc/man1/s_client.pod index e9794c4..272d997 100644 --- a/doc/man1/s_client.pod +++ b/doc/man1/s_client.pod @@ -25,6 +25,7 @@ B B [B<-CAfile filename>] [B<-no-CAfile>] [B<-no-CApath>] +[B<-requestCAfile filename>] [B<-dane_tlsa_domain domain>] [B<-dane_tlsa_rrdata rrdata>] [B<-dane_ee_no_namechecks>] @@ -218,6 +219,12 @@ Do not load the trusted CA certificates from the default file location Do not load the trusted CA certificates from the default directory location +=item B<-requestCAfile file> + +A file containing a list of certificates whose subject names will be sent +to the server in the B extension. Only supported +for TLS 1.3 + =item B<-dane_tlsa_domain domain> Enable RFC6698/RFC7671 DANE TLSA authentication and specify the diff --git a/doc/man3/SSL_CONF_cmd.pod b/doc/man3/SSL_CONF_cmd.pod index 6045a4f..f5c6576 100644 --- a/doc/man3/SSL_CONF_cmd.pod +++ b/doc/man3/SSL_CONF_cmd.pod @@ -217,6 +217,14 @@ These options indicate a file or directory used for building certificate chains or verifying certificate chains. These options are only supported if certificate operations are permitted. +=item B + +This option indicates a file containing a set of certificates in PEM form. +The subject names of the certificates are sent to the peer in the +B extension for TLS 1.3 (in ClientHello or +CertificateRequest) or in a certificate request for previous versions or +TLS. + =item B Attempts to use the file B in the "serverinfo" extension using the diff --git a/doc/man3/SSL_CTX_set0_CA_list.pod b/doc/man3/SSL_CTX_set0_CA_list.pod new file mode 100644 index 0000000..5e94f5c --- /dev/null +++ b/doc/man3/SSL_CTX_set0_CA_list.pod @@ -0,0 +1,94 @@ +=pod + +=head1 NAME + +SSL_set0_CA_list, SSL_CTX_set0_CA_list, SSL_get0_CA_list, +SSL_CTX_get0_CA_list, SSL_add1_CA_list, SSL_CTX_add1_CA_list, +SSL_get0_peer_CA_list - get or set CA list + +=head1 SYNOPSIS + + #include + + void SSL_CTX_set0_CA_list(SSL_CTX *ctx, STACK_OF(X509_NAME) *name_list); + void SSL_set0_CA_list(SSL *s, STACK_OF(X509_NAME) *name_list); + const STACK_OF(X509_NAME) *SSL_CTX_get0_CA_list(const SSL_CTX *ctx); + const STACK_OF(X509_NAME) *SSL_get0_CA_list(const SSL *s); + int SSL_CTX_add1_CA_list(SSL_CTX *ctx, const X509 *x); + int SSL_add1_CA_list(SSL *ssl, const X509 *x); + + const STACK_OF(X509_NAME) *SSL_get0_peer_CA_list(const SSL *s); + +=head1 DESCRIPTION + +SSL_CTX_set0_CA_list() sets the list of CAs to be sent to the peer to +B. Ownership of B is transferred to B and +it should not be freed by the caller. + +SSL_set0_CA_list() sets the list of CAs to be sent to the peer to B +overriding any list set in the parent B of B. Ownership of +B is transferred to B and it should not be freed by the caller. + +SSL_CTX_get0_CA_list() retrieves any previously set list of CAs set for +B. + +SSL_CTX_get0_CA_list() retrieves any previously set list of CAs set for +B or if none are set the list from the parent B is retrieved. + +SSL_CTX_add1_CA_list() appends the CA subject name extracted from B to the +list of CAs sent to peer for B. + +SSL_add1_CA_list() appends the CA subject name extracted from B to the +list of CAs sent to the peer for B, overriding the setting in the parent +B. + +SSL_get0_peer_CA_list() retrieves the list of CA names (if any) the peer +has sent. + +=head1 NOTES + +These functions are generalised versions of the client authentication +CA list functions such as L. + +For TLS versions before 1.3 the list of CA names is only sent from the server +to client when requesting a client certificate. So any list of CA names set +is never sent from client to server and the list of CA names retrieved by +SSL_get0_peer_CA_list() is always B. + +For TLS 1.3 the list of CA names is sent using the B +extension and will be sent by a client (in the ClientHello message) or by +a server (when requesting a certificate). + +=head1 RETURN VALUES + +SSL_CTX_set0_CA_list() and SSL_set0_CA_list() do not return a value. + +SSL_CTX_get0_CA_list() and SSL_get0_CA_list() return a stack of CA names +or B is no CA names are set. + +SSL_CTX_add1_CA_list() and SSL_add1_CA_list() return 1 for success and 0 +for failure. + +SSL_get0_peer_CA_list() returns a stack of CA names sent by the peer or +B or an empty stack if no list was sent. + +=back + +=head1 SEE ALSO + +L, +L, +L, +L, +L + +=head1 COPYRIGHT + +Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +L. + +=cut diff --git a/include/openssl/ssl.h b/include/openssl/ssl.h index b1a8c69..5ebd997 100644 --- a/include/openssl/ssl.h +++ b/include/openssl/ssl.h @@ -1718,6 +1718,14 @@ __owur const char *SSL_alert_type_string(int value); __owur const char *SSL_alert_desc_string_long(int value); __owur const char *SSL_alert_desc_string(int value); +void SSL_set0_CA_list(SSL *s, STACK_OF(X509_NAME) *name_list); +void SSL_CTX_set0_CA_list(SSL_CTX *ctx, STACK_OF(X509_NAME) *name_list); +__owur const STACK_OF(X509_NAME) *SSL_get0_CA_list(const SSL *s); +__owur const STACK_OF(X509_NAME) *SSL_CTX_get0_CA_list(const SSL_CTX *ctx); +__owur int SSL_add1_CA_list(SSL *ssl, const X509 *x); +__owur int SSL_CTX_add1_CA_list(SSL_CTX *ctx, const X509 *x); +__owur const STACK_OF(X509_NAME) *SSL_get0_peer_CA_list(const SSL *s); + void SSL_set_client_CA_list(SSL *s, STACK_OF(X509_NAME) *name_list); void SSL_CTX_set_client_CA_list(SSL_CTX *ctx, STACK_OF(X509_NAME) *name_list); __owur STACK_OF(X509_NAME) *SSL_get_client_CA_list(const SSL *s); @@ -1735,7 +1743,7 @@ __owur long SSL_get_default_timeout(const SSL *s); #endif __owur char *SSL_CIPHER_description(const SSL_CIPHER *, char *buf, int size); -__owur STACK_OF(X509_NAME) *SSL_dup_CA_list(STACK_OF(X509_NAME) *sk); +__owur STACK_OF(X509_NAME) *SSL_dup_CA_list(const STACK_OF(X509_NAME) *sk); __owur SSL *SSL_dup(SSL *ssl); diff --git a/ssl/s3_lib.c b/ssl/s3_lib.c index d8cce5e..54c49ab 100644 --- a/ssl/s3_lib.c +++ b/ssl/s3_lib.c @@ -2935,7 +2935,7 @@ void ssl3_free(SSL *s) #endif OPENSSL_free(s->s3->tmp.ctype); - sk_X509_NAME_pop_free(s->s3->tmp.ca_names, X509_NAME_free); + sk_X509_NAME_pop_free(s->s3->tmp.peer_ca_names, X509_NAME_free); OPENSSL_free(s->s3->tmp.ciphers_raw); OPENSSL_clear_free(s->s3->tmp.pms, s->s3->tmp.pmslen); OPENSSL_free(s->s3->tmp.peer_sigalgs); @@ -2954,7 +2954,7 @@ void ssl3_clear(SSL *s) { ssl3_cleanup_key_block(s); OPENSSL_free(s->s3->tmp.ctype); - sk_X509_NAME_pop_free(s->s3->tmp.ca_names, X509_NAME_free); + sk_X509_NAME_pop_free(s->s3->tmp.peer_ca_names, X509_NAME_free); OPENSSL_free(s->s3->tmp.ciphers_raw); OPENSSL_clear_free(s->s3->tmp.pms, s->s3->tmp.pmslen); OPENSSL_free(s->s3->tmp.peer_sigalgs); diff --git a/ssl/ssl_cert.c b/ssl/ssl_cert.c index 50b2e64..a4e7977 100644 --- a/ssl/ssl_cert.c +++ b/ssl/ssl_cert.c @@ -459,14 +459,14 @@ int ssl_verify_cert_chain(SSL *s, STACK_OF(X509) *sk) return i; } -static void set_client_CA_list(STACK_OF(X509_NAME) **ca_list, - STACK_OF(X509_NAME) *name_list) +static void set0_CA_list(STACK_OF(X509_NAME) **ca_list, + STACK_OF(X509_NAME) *name_list) { sk_X509_NAME_pop_free(*ca_list, X509_NAME_free); *ca_list = name_list; } -STACK_OF(X509_NAME) *SSL_dup_CA_list(STACK_OF(X509_NAME) *sk) +STACK_OF(X509_NAME) *SSL_dup_CA_list(const STACK_OF(X509_NAME) *sk) { int i; STACK_OF(X509_NAME) *ret; @@ -488,63 +488,90 @@ STACK_OF(X509_NAME) *SSL_dup_CA_list(STACK_OF(X509_NAME) *sk) return (ret); } -void SSL_set_client_CA_list(SSL *s, STACK_OF(X509_NAME) *name_list) +void SSL_set0_CA_list(SSL *s, STACK_OF(X509_NAME) *name_list) { - set_client_CA_list(&(s->client_CA), name_list); + set0_CA_list(&s->ca_names, name_list); +} + +void SSL_CTX_set0_CA_list(SSL_CTX *ctx, STACK_OF(X509_NAME) *name_list) +{ + set0_CA_list(&ctx->ca_names, name_list); +} + +const STACK_OF(X509_NAME) *SSL_CTX_get0_CA_list(const SSL_CTX *ctx) +{ + return ctx->ca_names; +} + +const STACK_OF(X509_NAME) *SSL_get0_CA_list(const SSL *s) +{ + return s->ca_names != NULL ? s->ca_names : s->ctx->ca_names; } void SSL_CTX_set_client_CA_list(SSL_CTX *ctx, STACK_OF(X509_NAME) *name_list) { - set_client_CA_list(&(ctx->client_CA), name_list); + SSL_CTX_set0_CA_list(ctx, name_list); } STACK_OF(X509_NAME) *SSL_CTX_get_client_CA_list(const SSL_CTX *ctx) { - return (ctx->client_CA); + return ctx->ca_names; +} + +void SSL_set_client_CA_list(SSL *s, STACK_OF(X509_NAME) *name_list) +{ + SSL_set0_CA_list(s, name_list); +} + +const STACK_OF(X509_NAME) *SSL_get0_peer_CA_list(const SSL *s) +{ + return s->s3 != NULL ? s->s3->tmp.peer_ca_names : NULL; } STACK_OF(X509_NAME) *SSL_get_client_CA_list(const SSL *s) { - if (!s->server) { /* we are in the client */ - if (s->s3 != NULL) - return s->s3->tmp.ca_names; - else - return NULL; - } else { - if (s->client_CA != NULL) - return s->client_CA; - else - return s->ctx->client_CA; - } + if (!s->server) + return s->s3 != NULL ? s->s3->tmp.peer_ca_names : NULL; + return s->ca_names != NULL ? s->ca_names : s->ctx->ca_names; } -static int add_client_CA(STACK_OF(X509_NAME) **sk, X509 *x) +static int add_ca_name(STACK_OF(X509_NAME) **sk, const X509 *x) { X509_NAME *name; if (x == NULL) - return (0); - if ((*sk == NULL) && ((*sk = sk_X509_NAME_new_null()) == NULL)) - return (0); + return 0; + if (*sk == NULL && ((*sk = sk_X509_NAME_new_null()) == NULL)) + return 0; if ((name = X509_NAME_dup(X509_get_subject_name(x))) == NULL) - return (0); + return 0; if (!sk_X509_NAME_push(*sk, name)) { X509_NAME_free(name); - return (0); + return 0; } - return (1); + return 1; +} + +int SSL_add1_CA_list(SSL *ssl, const X509 *x) +{ + return add_ca_name(&ssl->ca_names, x); +} + +int SSL_CTX_add1_CA_list(SSL_CTX *ctx, const X509 *x) +{ + return add_ca_name(&ctx->ca_names, x); } int SSL_add_client_CA(SSL *ssl, X509 *x) { - return (add_client_CA(&(ssl->client_CA), x)); + return add_ca_name(&ssl->ca_names, x); } int SSL_CTX_add_client_CA(SSL_CTX *ctx, X509 *x) { - return (add_client_CA(&(ctx->client_CA), x)); + return add_ca_name(&ctx->ca_names, x); } static int xname_sk_cmp(const X509_NAME *const *a, const X509_NAME *const *b) diff --git a/ssl/ssl_conf.c b/ssl/ssl_conf.c index 954e421..4b46192 100644 --- a/ssl/ssl_conf.c +++ b/ssl/ssl_conf.c @@ -465,7 +465,7 @@ static int cmd_VerifyCAFile(SSL_CONF_CTX *cctx, const char *value) return do_store(cctx, value, NULL, 1); } -static int cmd_ClientCAFile(SSL_CONF_CTX *cctx, const char *value) +static int cmd_RequestCAFile(SSL_CONF_CTX *cctx, const char *value) { if (cctx->canames == NULL) cctx->canames = sk_X509_NAME_new_null(); @@ -474,7 +474,12 @@ static int cmd_ClientCAFile(SSL_CONF_CTX *cctx, const char *value) return SSL_add_file_cert_subjects_to_stack(cctx->canames, value); } -static int cmd_ClientCAPath(SSL_CONF_CTX *cctx, const char *value) +static int cmd_ClientCAFile(SSL_CONF_CTX *cctx, const char *value) +{ + return cmd_RequestCAFile(cctx, value); +} + +static int cmd_RequestCAPath(SSL_CONF_CTX *cctx, const char *value) { if (cctx->canames == NULL) cctx->canames = sk_X509_NAME_new_null(); @@ -483,6 +488,11 @@ static int cmd_ClientCAPath(SSL_CONF_CTX *cctx, const char *value) return SSL_add_dir_cert_subjects_to_stack(cctx->canames, value); } +static int cmd_ClientCAPath(SSL_CONF_CTX *cctx, const char *value) +{ + return cmd_RequestCAPath(cctx, value); +} + #ifndef OPENSSL_NO_DH static int cmd_DHParameters(SSL_CONF_CTX *cctx, const char *value) { @@ -575,9 +585,13 @@ static const ssl_conf_cmd_tbl ssl_conf_cmds[] = { SSL_CONF_TYPE_DIR), SSL_CONF_CMD(VerifyCAFile, "verifyCAfile", SSL_CONF_FLAG_CERTIFICATE, SSL_CONF_TYPE_FILE), + SSL_CONF_CMD(RequestCAFile, "requestCAFile", SSL_CONF_FLAG_CERTIFICATE, + SSL_CONF_TYPE_FILE), SSL_CONF_CMD(ClientCAFile, NULL, SSL_CONF_FLAG_SERVER | SSL_CONF_FLAG_CERTIFICATE, SSL_CONF_TYPE_FILE), + SSL_CONF_CMD(RequestCAPath, NULL, SSL_CONF_FLAG_CERTIFICATE, + SSL_CONF_TYPE_DIR), SSL_CONF_CMD(ClientCAPath, NULL, SSL_CONF_FLAG_SERVER | SSL_CONF_FLAG_CERTIFICATE, SSL_CONF_TYPE_DIR), @@ -802,9 +816,9 @@ int SSL_CONF_CTX_finish(SSL_CONF_CTX *cctx) } if (cctx->canames) { if (cctx->ssl) - SSL_set_client_CA_list(cctx->ssl, cctx->canames); + SSL_set0_CA_list(cctx->ssl, cctx->canames); else if (cctx->ctx) - SSL_CTX_set_client_CA_list(cctx->ctx, cctx->canames); + SSL_CTX_set0_CA_list(cctx->ctx, cctx->canames); else sk_X509_NAME_pop_free(cctx->canames, X509_NAME_free); cctx->canames = NULL; diff --git a/ssl/ssl_lib.c b/ssl/ssl_lib.c index 24fc994..4f4eba1 100644 --- a/ssl/ssl_lib.c +++ b/ssl/ssl_lib.c @@ -1018,7 +1018,7 @@ void SSL_free(SSL *s) OPENSSL_free(s->ext.tls13_cookie); OPENSSL_free(s->clienthello); - sk_X509_NAME_pop_free(s->client_CA, X509_NAME_free); + sk_X509_NAME_pop_free(s->ca_names, X509_NAME_free); sk_X509_pop_free(s->verified_chain, X509_free); @@ -2692,7 +2692,7 @@ SSL_CTX *SSL_CTX_new(const SSL_METHOD *meth) goto err2; } - if ((ret->client_CA = sk_X509_NAME_new_null()) == NULL) + if ((ret->ca_names = sk_X509_NAME_new_null()) == NULL) goto err; if (!CRYPTO_new_ex_data(CRYPTO_EX_INDEX_SSL_CTX, ret, &ret->ex_data)) @@ -2814,7 +2814,7 @@ void SSL_CTX_free(SSL_CTX *a) sk_SSL_CIPHER_free(a->cipher_list); sk_SSL_CIPHER_free(a->cipher_list_by_id); ssl_cert_free(a->cert); - sk_X509_NAME_pop_free(a->client_CA, X509_NAME_free); + sk_X509_NAME_pop_free(a->ca_names, X509_NAME_free); sk_X509_pop_free(a->extra_certs, X509_free); a->comp_methods = NULL; #ifndef OPENSSL_NO_SRTP @@ -3410,10 +3410,10 @@ SSL *SSL_dup(SSL *s) goto err; /* Dup the client_CA list */ - if (s->client_CA != NULL) { - if ((sk = sk_X509_NAME_dup(s->client_CA)) == NULL) + if (s->ca_names != NULL) { + if ((sk = sk_X509_NAME_dup(s->ca_names)) == NULL) goto err; - ret->client_CA = sk; + ret->ca_names = sk; for (i = 0; i < sk_X509_NAME_num(sk); i++) { xn = sk_X509_NAME_value(sk, i); if (sk_X509_NAME_set(sk, i, X509_NAME_dup(xn)) == NULL) { diff --git a/ssl/ssl_locl.h b/ssl/ssl_locl.h index 4378b71..f532931 100644 --- a/ssl/ssl_locl.h +++ b/ssl/ssl_locl.h @@ -542,7 +542,7 @@ struct ssl_session_st { /* This is the cert and type for the other end. */ X509 *peer; int peer_type; - /* Certificate chain peer sent */ + /* Certificate chain peer sent. */ STACK_OF(X509) *peer_chain; /* * when app_verify_callback accepts a session where the peer's @@ -790,8 +790,12 @@ struct ssl_ctx_st { /* used if SSL's info_callback is NULL */ void (*info_callback) (const SSL *ssl, int type, int val); - /* what we put in client cert requests */ - STACK_OF(X509_NAME) *client_CA; + /* + * What we put in certificate_authorities extension for TLS 1.3 + * (ClientHello and CertificateRequest) or just client cert requests for + * earlier versions. + */ + STACK_OF(X509_NAME) *ca_names; /* * Default values to use in SSL structures follow (these are copied by @@ -1115,7 +1119,7 @@ struct ssl_st { /* extra application data */ CRYPTO_EX_DATA ex_data; /* for server side, keep the list of CA_dn we can use */ - STACK_OF(X509_NAME) *client_CA; + STACK_OF(X509_NAME) *ca_names; CRYPTO_REF_COUNT references; /* protocol behaviour */ uint32_t options; @@ -1371,7 +1375,8 @@ typedef struct ssl3_state_st { /* Certificate types in certificate request message. */ uint8_t *ctype; size_t ctype_len; - STACK_OF(X509_NAME) *ca_names; + /* Certificate authorities list peer sent */ + STACK_OF(X509_NAME) *peer_ca_names; size_t key_block_length; unsigned char *key_block; const EVP_CIPHER *new_sym_enc; diff --git a/ssl/statem/extensions.c b/ssl/statem/extensions.c index 043b830..96c5394 100644 --- a/ssl/statem/extensions.c +++ b/ssl/statem/extensions.c @@ -983,8 +983,8 @@ static int final_ems(SSL *s, unsigned int context, int sent, int *al) static int init_certificate_authorities(SSL *s, unsigned int context) { - sk_X509_NAME_pop_free(s->s3->tmp.ca_names, X509_NAME_free); - s->s3->tmp.ca_names = NULL; + sk_X509_NAME_pop_free(s->s3->tmp.peer_ca_names, X509_NAME_free); + s->s3->tmp.peer_ca_names = NULL; return 1; } @@ -992,7 +992,7 @@ static int tls_construct_certificate_authorities(SSL *s, WPACKET *pkt, unsigned int context, X509 *x, size_t chainidx, int *al) { - STACK_OF(X509_NAME) *ca_sk = SSL_get_client_CA_list(s); + const STACK_OF(X509_NAME) *ca_sk = SSL_get0_CA_list(s); if (ca_sk == NULL || sk_X509_NAME_num(ca_sk) == 0) return 1; diff --git a/ssl/statem/statem_lib.c b/ssl/statem/statem_lib.c index 860b814..f292b82 100644 --- a/ssl/statem/statem_lib.c +++ b/ssl/statem/statem_lib.c @@ -2023,8 +2023,8 @@ int parse_ca_names(SSL *s, PACKET *pkt, int *al) xn = NULL; } - sk_X509_NAME_pop_free(s->s3->tmp.ca_names, X509_NAME_free); - s->s3->tmp.ca_names = ca_sk; + sk_X509_NAME_pop_free(s->s3->tmp.peer_ca_names, X509_NAME_free); + s->s3->tmp.peer_ca_names = ca_sk; return 1; @@ -2038,7 +2038,7 @@ int parse_ca_names(SSL *s, PACKET *pkt, int *al) int construct_ca_names(SSL *s, WPACKET *pkt) { - STACK_OF(X509_NAME) *ca_sk = SSL_get_client_CA_list(s); + const STACK_OF(X509_NAME) *ca_sk = SSL_get0_CA_list(s); /* Start sub-packet for client CA list */ if (!WPACKET_start_sub_packet_u16(pkt)) diff --git a/ssl/t1_lib.c b/ssl/t1_lib.c index 1c98b53..698c25b 100644 --- a/ssl/t1_lib.c +++ b/ssl/t1_lib.c @@ -2041,7 +2041,7 @@ int tls1_check_chain(SSL *s, X509 *x, EVP_PKEY *pk, STACK_OF(X509) *chain, rv |= CERT_PKEY_CERT_TYPE; } - ca_dn = s->s3->tmp.ca_names; + ca_dn = s->s3->tmp.peer_ca_names; if (!sk_X509_NAME_num(ca_dn)) rv |= CERT_PKEY_ISSUER_NAME; diff --git a/test/README.ssltest.md b/test/README.ssltest.md index 0d6f466..288dffa 100644 --- a/test/README.ssltest.md +++ b/test/README.ssltest.md @@ -102,6 +102,10 @@ handshake. send. If this is "empty" the list is expected to be empty otherwise it is a file of certificates whose subject names form the list. +* ExpectedServerCANames - list of CA names the client must send, TLS 1.3 only. + If this is "empty" the list is expected to be empty otherwise it is a file + of certificates whose subject names form the list. + ## Configuring the client and server The client and server configurations can be any valid `SSL_CTX` diff --git a/test/handshake_helper.c b/test/handshake_helper.c index 4bccac1..47af3fe 100644 --- a/test/handshake_helper.c +++ b/test/handshake_helper.c @@ -34,6 +34,7 @@ void HANDSHAKE_RESULT_free(HANDSHAKE_RESULT *result) OPENSSL_free(result->server_npn_negotiated); OPENSSL_free(result->client_alpn_negotiated); OPENSSL_free(result->server_alpn_negotiated); + sk_X509_NAME_pop_free(result->server_ca_names, X509_NAME_free); sk_X509_NAME_pop_free(result->client_ca_names, X509_NAME_free); OPENSSL_free(result); } @@ -1123,7 +1124,7 @@ static HANDSHAKE_RESULT *do_handshake_internal( /* API dictates unsigned int rather than size_t. */ unsigned int proto_len = 0; EVP_PKEY *tmp_key; - STACK_OF(X509_NAME) *names; + const STACK_OF(X509_NAME) *names; memset(&server_ctx_data, 0, sizeof(server_ctx_data)); memset(&server2_ctx_data, 0, sizeof(server2_ctx_data)); @@ -1297,12 +1298,18 @@ static HANDSHAKE_RESULT *do_handshake_internal( SSL_get_peer_signature_type_nid(client.ssl, &ret->server_sign_type); SSL_get_peer_signature_type_nid(server.ssl, &ret->client_sign_type); - names = SSL_get_client_CA_list(client.ssl); + names = SSL_get0_peer_CA_list(client.ssl); if (names == NULL) ret->client_ca_names = NULL; else ret->client_ca_names = SSL_dup_CA_list(names); + names = SSL_get0_peer_CA_list(server.ssl); + if (names == NULL) + ret->server_ca_names = NULL; + else + ret->server_ca_names = SSL_dup_CA_list(names); + ret->server_cert_type = peer_pkey_type(client.ssl); ret->client_cert_type = peer_pkey_type(server.ssl); diff --git a/test/handshake_helper.h b/test/handshake_helper.h index a7df584..2736057 100644 --- a/test/handshake_helper.h +++ b/test/handshake_helper.h @@ -52,6 +52,8 @@ typedef struct handshake_result { int server_sign_hash; /* server signature type */ int server_sign_type; + /* server CA names */ + STACK_OF(X509_NAME) *server_ca_names; /* client certificate key type */ int client_cert_type; /* client signing hash */ diff --git a/test/ssl-tests/20-cert-select.conf b/test/ssl-tests/20-cert-select.conf index e787efc..20154bb 100644 --- a/test/ssl-tests/20-cert-select.conf +++ b/test/ssl-tests/20-cert-select.conf @@ -34,11 +34,13 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [0-ECDSA CipherString Selection-client] CipherString = aECDSA +RequestCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-0] ExpectedResult = Success +ExpectedServerCANames = empty ExpectedServerCertType = P-256 ExpectedServerSignType = EC diff --git a/test/ssl-tests/20-cert-select.conf.in b/test/ssl-tests/20-cert-select.conf.in index 1d92e68..aadae27 100644 --- a/test/ssl-tests/20-cert-select.conf.in +++ b/test/ssl-tests/20-cert-select.conf.in @@ -21,10 +21,13 @@ our @tests = ( server => $server, client => { "CipherString" => "aECDSA", + "RequestCAFile" => test_pem("root-cert.pem"), }, test => { "ExpectedServerCertType" =>, "P-256", "ExpectedServerSignType" =>, "EC", + # Note: certificate_authorities not sent for TLS < 1.3 + "ExpectedServerCANames" =>, "empty", "ExpectedResult" => "Success" }, }, @@ -214,6 +217,7 @@ my @tests_tls_1_3 = ( "ExpectedServerCertType" => "P-256", "ExpectedServerSignHash" => "SHA256", "ExpectedServerSignType" => "EC", + "ExpectedServerCANames" => "empty", "ExpectedResult" => "Success" }, }, @@ -247,11 +251,13 @@ my @tests_tls_1_3 = ( server => $server_tls_1_3, client => { "SignatureAlgorithms" => "ECDSA+SHA256:RSA-PSS+SHA256", + "RequestCAFile" => test_pem("root-cert.pem"), }, test => { "ExpectedServerCertType" => "P-256", "ExpectedServerSignHash" => "SHA256", "ExpectedServerSignType" => "EC", + "ExpectedServerCANames" => test_pem("root-cert.pem"), "ExpectedResult" => "Success" }, }, @@ -325,7 +331,7 @@ my @tests_tls_1_3 = ( server => { "ClientSignatureAlgorithms" => "PSS+SHA256", "VerifyCAFile" => test_pem("root-cert.pem"), - "ClientCAFile" => test_pem("root-cert.pem"), + "RequestCAFile" => test_pem("root-cert.pem"), "VerifyMode" => "Require" }, client => $client_tls_1_3, diff --git a/test/ssl_test.c b/test/ssl_test.c index 0cdec46..9406f94 100644 --- a/test/ssl_test.c +++ b/test/ssl_test.c @@ -195,54 +195,6 @@ static int check_nid(const char *name, int expected_nid, int nid) return 0; } -static int check_tmp_key(HANDSHAKE_RESULT *result, SSL_TEST_CTX *test_ctx) -{ - return check_nid("Tmp key", test_ctx->expected_tmp_key_type, - result->tmp_key_type); -} - -static int check_server_cert_type(HANDSHAKE_RESULT *result, - SSL_TEST_CTX *test_ctx) -{ - return check_nid("Server certificate", test_ctx->expected_server_cert_type, - result->server_cert_type); -} - -static int check_server_sign_hash(HANDSHAKE_RESULT *result, - SSL_TEST_CTX *test_ctx) -{ - return check_nid("Server signing hash", test_ctx->expected_server_sign_hash, - result->server_sign_hash); -} - -static int check_server_sign_type(HANDSHAKE_RESULT *result, - SSL_TEST_CTX *test_ctx) -{ - return check_nid("Server signing", test_ctx->expected_server_sign_type, - result->server_sign_type); -} - -static int check_client_cert_type(HANDSHAKE_RESULT *result, - SSL_TEST_CTX *test_ctx) -{ - return check_nid("Client certificate", test_ctx->expected_client_cert_type, - result->client_cert_type); -} - -static int check_client_sign_hash(HANDSHAKE_RESULT *result, - SSL_TEST_CTX *test_ctx) -{ - return check_nid("Client signing hash", test_ctx->expected_client_sign_hash, - result->client_sign_hash); -} - -static int check_client_sign_type(HANDSHAKE_RESULT *result, - SSL_TEST_CTX *test_ctx) -{ - return check_nid("Client signing", test_ctx->expected_client_sign_type, - result->client_sign_type); -} - static void print_ca_names(STACK_OF(X509_NAME) *names) { BIO *err; @@ -291,6 +243,62 @@ static int check_ca_names(const char *name, return 0; } +static int check_tmp_key(HANDSHAKE_RESULT *result, SSL_TEST_CTX *test_ctx) +{ + return check_nid("Tmp key", test_ctx->expected_tmp_key_type, + result->tmp_key_type); +} + +static int check_server_cert_type(HANDSHAKE_RESULT *result, + SSL_TEST_CTX *test_ctx) +{ + return check_nid("Server certificate", test_ctx->expected_server_cert_type, + result->server_cert_type); +} + +static int check_server_sign_hash(HANDSHAKE_RESULT *result, + SSL_TEST_CTX *test_ctx) +{ + return check_nid("Server signing hash", test_ctx->expected_server_sign_hash, + result->server_sign_hash); +} + +static int check_server_sign_type(HANDSHAKE_RESULT *result, + SSL_TEST_CTX *test_ctx) +{ + return check_nid("Server signing", test_ctx->expected_server_sign_type, + result->server_sign_type); +} + +static int check_server_ca_names(HANDSHAKE_RESULT *result, + SSL_TEST_CTX *test_ctx) +{ + return check_ca_names("Server CA names", + test_ctx->expected_server_ca_names, + result->server_ca_names); +} + +static int check_client_cert_type(HANDSHAKE_RESULT *result, + SSL_TEST_CTX *test_ctx) +{ + return check_nid("Client certificate", test_ctx->expected_client_cert_type, + result->client_cert_type); +} + +static int check_client_sign_hash(HANDSHAKE_RESULT *result, + SSL_TEST_CTX *test_ctx) +{ + return check_nid("Client signing hash", test_ctx->expected_client_sign_hash, + result->client_sign_hash); +} + +static int check_client_sign_type(HANDSHAKE_RESULT *result, + SSL_TEST_CTX *test_ctx) +{ + return check_nid("Client signing", test_ctx->expected_client_sign_type, + result->client_sign_type); +} + static int check_client_ca_names(HANDSHAKE_RESULT *result, SSL_TEST_CTX *test_ctx) { @@ -324,6 +332,7 @@ static int check_test(HANDSHAKE_RESULT *result, SSL_TEST_CTX *test_ctx) ret &= check_server_cert_type(result, test_ctx); ret &= check_server_sign_hash(result, test_ctx); ret &= check_server_sign_type(result, test_ctx); + ret &= check_server_ca_names(result, test_ctx); ret &= check_client_cert_type(result, test_ctx); ret &= check_client_sign_hash(result, test_ctx); ret &= check_client_sign_type(result, test_ctx); diff --git a/test/ssl_test_ctx.c b/test/ssl_test_ctx.c index 7189777..6a3b9d1 100644 --- a/test/ssl_test_ctx.c +++ b/test/ssl_test_ctx.c @@ -546,6 +546,11 @@ __owur static int parse_expected_ca_names(STACK_OF(X509_NAME) **pnames, *pnames = SSL_load_client_CA_file(value); return *pnames != NULL; } +__owur static int parse_expected_server_ca_names(SSL_TEST_CTX *test_ctx, + const char *value) +{ + return parse_expected_ca_names(&test_ctx->expected_server_ca_names, value); +} __owur static int parse_expected_client_ca_names(SSL_TEST_CTX *test_ctx, const char *value) { @@ -580,6 +585,7 @@ static const ssl_test_ctx_option ssl_test_ctx_options[] = { { "ExpectedServerCertType", &parse_expected_server_cert_type }, { "ExpectedServerSignHash", &parse_expected_server_sign_hash }, { "ExpectedServerSignType", &parse_expected_server_sign_type }, + { "ExpectedServerCANames", &parse_expected_server_ca_names }, { "ExpectedClientCertType", &parse_expected_client_cert_type }, { "ExpectedClientSignHash", &parse_expected_client_sign_hash }, { "ExpectedClientSignType", &parse_expected_client_sign_type }, @@ -661,6 +667,7 @@ void SSL_TEST_CTX_free(SSL_TEST_CTX *ctx) ssl_test_ctx_free_extra_data(ctx); OPENSSL_free(ctx->expected_npn_protocol); OPENSSL_free(ctx->expected_alpn_protocol); + sk_X509_NAME_pop_free(ctx->expected_server_ca_names, X509_NAME_free); sk_X509_NAME_pop_free(ctx->expected_client_ca_names, X509_NAME_free); OPENSSL_free(ctx); } diff --git a/test/ssl_test_ctx.h b/test/ssl_test_ctx.h index 0b37b15..54cefb6 100644 --- a/test/ssl_test_ctx.h +++ b/test/ssl_test_ctx.h @@ -188,6 +188,8 @@ typedef struct { int expected_server_sign_hash; /* Expected server signature type */ int expected_server_sign_type; + /* Expected server CA names */ + STACK_OF(X509_NAME) *expected_server_ca_names; /* Expected client certificate key type */ int expected_client_cert_type; /* Expected client signing hash */ diff --git a/util/libssl.num b/util/libssl.num index 3c024e4..4994910 100644 --- a/util/libssl.num +++ b/util/libssl.num @@ -432,3 +432,10 @@ SSL_write_early_data 432 1_1_1 EXIST::FUNCTION: SSL_read_early_data 433 1_1_1 EXIST::FUNCTION: SSL_get_early_data_status 434 1_1_1 EXIST::FUNCTION: SSL_SESSION_get_max_early_data 435 1_1_1 EXIST::FUNCTION: +SSL_add1_CA_list 436 1_1_1 EXIST::FUNCTION: +SSL_set0_CA_list 437 1_1_1 EXIST::FUNCTION: +SSL_CTX_set0_CA_list 438 1_1_1 EXIST::FUNCTION: +SSL_get0_CA_list 439 1_1_1 EXIST::FUNCTION: +SSL_get0_peer_CA_list 440 1_1_1 EXIST::FUNCTION: +SSL_CTX_add1_CA_list 441 1_1_1 EXIST::FUNCTION: +SSL_CTX_get0_CA_list 442 1_1_1 EXIST::FUNCTION: From levitte at openssl.org Tue Apr 4 09:32:08 2017 From: levitte at openssl.org (Richard Levitte) Date: Tue, 04 Apr 2017 09:32:08 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491298328.633834.5854.nullmailer@dev.openssl.org> The branch master has been updated via 79b3452faf04f2572f57eb37b618cc603d9983da (commit) via 8ac6a53100bd6730a8824968ec25dccc727c29c9 (commit) via 37332ecc010276b899810aa3ac26885bd9dcb57c (commit) via 66ecfb5437b22664a4358e8de6da942727f5fb11 (commit) via 5c7e65486c15f6b93ee413515612e6031dc2e416 (commit) via 93f7d6fc10b75814d90d804edb56947cacf8964e (commit) from 8edb4ee1a237b43d9520eaa658a4ad2671e8dd0c (commit) - Log ----------------------------------------------------------------- commit 79b3452faf04f2572f57eb37b618cc603d9983da Author: Richard Levitte Date: Fri Mar 31 21:31:43 2017 +0200 Fix faulty check of padding in x_long.c Bug uncovered by test [extended tests] Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3088) commit 8ac6a53100bd6730a8824968ec25dccc727c29c9 Author: Matt Caswell Date: Mon Mar 27 16:11:11 2017 +0100 Fix a possible integer overflow in long_c2i Credit to OSS-Fuzz for finding this. Reviewed-by: Matt Caswell Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3088) commit 37332ecc010276b899810aa3ac26885bd9dcb57c Author: Richard Levitte Date: Fri Mar 31 21:28:20 2017 +0200 Add a test of encoding and decoding LONG, INT32, UINT32, INT64 and UINT64 Also Z varieties. Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3088) commit 66ecfb5437b22664a4358e8de6da942727f5fb11 Author: Richard Levitte Date: Thu Mar 30 13:33:33 2017 +0200 Convert SSL_SESSION_ASN1 to use size specific integers This increases portability of SSL_SESSION files between architectures where the size of |long| may vary. Before this, SSL_SESSION files produced on a 64-bit long architecture may break on a 32-bit long architecture. Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3088) commit 5c7e65486c15f6b93ee413515612e6031dc2e416 Author: Richard Levitte Date: Thu Mar 30 13:33:20 2017 +0200 make update Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3088) commit 93f7d6fc10b75814d90d804edb56947cacf8964e Author: Richard Levitte Date: Thu Mar 30 13:31:16 2017 +0200 Implement internal ASN.1 types INT32, UINT32, INT64, UINT64 Also Z varieties. Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3088) ----------------------------------------------------------------------- Summary of changes: crypto/asn1/a_int.c | 31 +- crypto/asn1/asn1_err.c | 5 +- crypto/asn1/asn1_locl.h | 6 +- crypto/asn1/build.info | 2 +- crypto/asn1/x_int64.c | 213 ++++++ crypto/asn1/x_long.c | 11 +- .../siphash_local.h => include/internal/asn1t.h | 22 +- include/openssl/asn1.h | 3 + ssl/ssl_asn1.c | 38 +- test/asn1_encode_test.c | 717 +++++++++++++++++++++ test/build.info | 7 +- .../{60-test_x509_time.t => 04-test_asn1_encode.t} | 2 +- util/libcrypto.num | 16 + util/mkdef.pl | 1 + 14 files changed, 1034 insertions(+), 40 deletions(-) create mode 100644 crypto/asn1/x_int64.c copy crypto/siphash/siphash_local.h => include/internal/asn1t.h (51%) create mode 100644 test/asn1_encode_test.c copy test/recipes/{60-test_x509_time.t => 04-test_asn1_encode.t} (87%) diff --git a/crypto/asn1/a_int.c b/crypto/asn1/a_int.c index c40c7fa..4981ddb 100644 --- a/crypto/asn1/a_int.c +++ b/crypto/asn1/a_int.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -622,3 +622,32 @@ BIGNUM *ASN1_ENUMERATED_to_BN(const ASN1_ENUMERATED *ai, BIGNUM *bn) { return asn1_string_to_bn(ai, bn, V_ASN1_ENUMERATED); } + +/* Internal functions used by x_int64.c */ +int c2i_uint64_int(uint64_t *ret, int *neg, const unsigned char **pp, long len) +{ + unsigned char buf[sizeof(uint64_t)]; + size_t buflen; + + buflen = c2i_ibuf(NULL, NULL, *pp, len); + if (buflen == 0) + return 0; + if (buflen > sizeof(uint64_t)) { + ASN1err(ASN1_F_C2I_UINT64_INT, ASN1_R_TOO_LARGE); + return 0; + } + (void)c2i_ibuf(buf, neg, *pp, len); + return asn1_get_uint64(ret, buf, buflen); +} + +int i2c_uint64_int(unsigned char *p, uint64_t r, int neg) +{ + unsigned char buf[sizeof(uint64_t)]; + size_t buflen; + + buflen = asn1_put_uint64(buf, r); + if (p == NULL) + return i2c_ibuf(buf, buflen, neg, NULL); + return i2c_ibuf(buf, buflen, neg, &p); +} + diff --git a/crypto/asn1/asn1_err.c b/crypto/asn1/asn1_err.c index 97c3dec..dd0e99e 100644 --- a/crypto/asn1/asn1_err.c +++ b/crypto/asn1/asn1_err.c @@ -1,6 +1,6 @@ /* * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -85,6 +85,7 @@ static ERR_STRING_DATA ASN1_str_functs[] = { {ERR_FUNC(ASN1_F_C2I_ASN1_INTEGER), "c2i_ASN1_INTEGER"}, {ERR_FUNC(ASN1_F_C2I_ASN1_OBJECT), "c2i_ASN1_OBJECT"}, {ERR_FUNC(ASN1_F_C2I_IBUF), "c2i_ibuf"}, + {ERR_FUNC(ASN1_F_C2I_UINT64_INT), "c2i_uint64_int"}, {ERR_FUNC(ASN1_F_COLLECT_DATA), "collect_data"}, {ERR_FUNC(ASN1_F_D2I_ASN1_OBJECT), "d2i_ASN1_OBJECT"}, {ERR_FUNC(ASN1_F_D2I_ASN1_UINTEGER), "d2i_ASN1_UINTEGER"}, @@ -110,6 +111,8 @@ static ERR_STRING_DATA ASN1_str_functs[] = { {ERR_FUNC(ASN1_F_SMIME_READ_ASN1), "SMIME_read_ASN1"}, {ERR_FUNC(ASN1_F_SMIME_TEXT), "SMIME_text"}, {ERR_FUNC(ASN1_F_STBL_MODULE_INIT), "stbl_module_init"}, + {ERR_FUNC(ASN1_F_UINT32_C2I), "uint32_c2i"}, + {ERR_FUNC(ASN1_F_UINT64_C2I), "uint64_c2i"}, {ERR_FUNC(ASN1_F_X509_CRL_ADD0_REVOKED), "X509_CRL_add0_revoked"}, {ERR_FUNC(ASN1_F_X509_INFO_NEW), "X509_INFO_new"}, {ERR_FUNC(ASN1_F_X509_NAME_ENCODE), "x509_name_encode"}, diff --git a/crypto/asn1/asn1_locl.h b/crypto/asn1/asn1_locl.h index 5f597bd..9470c7d 100644 --- a/crypto/asn1/asn1_locl.h +++ b/crypto/asn1/asn1_locl.h @@ -1,5 +1,5 @@ /* - * Copyright 2005-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2005-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -76,3 +76,7 @@ ASN1_BIT_STRING *c2i_ASN1_BIT_STRING(ASN1_BIT_STRING **a, int i2c_ASN1_INTEGER(ASN1_INTEGER *a, unsigned char **pp); ASN1_INTEGER *c2i_ASN1_INTEGER(ASN1_INTEGER **a, const unsigned char **pp, long length); + +/* Internal functions used by x_int64.c */ +int c2i_uint64_int(uint64_t *ret, int *neg, const unsigned char **pp, long len); +int i2c_uint64_int(unsigned char *p, uint64_t r, int neg); diff --git a/crypto/asn1/build.info b/crypto/asn1/build.info index 242dbb7..d3e92c8 100644 --- a/crypto/asn1/build.info +++ b/crypto/asn1/build.info @@ -4,7 +4,7 @@ SOURCE[../../libcrypto]=\ a_print.c a_type.c a_dup.c a_d2i_fp.c a_i2d_fp.c \ a_utf8.c a_sign.c a_digest.c a_verify.c a_mbstr.c a_strex.c \ x_algor.c x_val.c x_sig.c x_bignum.c \ - x_long.c x_info.c x_spki.c nsseq.c \ + x_long.c x_int64.c x_info.c x_spki.c nsseq.c \ d2i_pu.c d2i_pr.c i2d_pu.c i2d_pr.c\ t_pkey.c t_spki.c t_bitst.c \ tasn_new.c tasn_fre.c tasn_enc.c tasn_dec.c tasn_utl.c tasn_typ.c \ diff --git a/crypto/asn1/x_int64.c b/crypto/asn1/x_int64.c new file mode 100644 index 0000000..d180a3b --- /dev/null +++ b/crypto/asn1/x_int64.c @@ -0,0 +1,213 @@ +/* + * Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +#include +#include "internal/cryptlib.h" +#include "internal/asn1t.h" +#include "internal/numbers.h" +#include +#include "asn1_locl.h" + +/* + * Custom primitive types for handling int32_t, int64_t, uint32_t, uint64_t. + * This converts between an ASN1_INTEGER and those types directly. + * This is preferred to using the LONG / ZLONG primitives. + */ + +/* + * We abuse the ASN1_ITEM fields |size| as a flags field + */ +#define INTxx_FLAG_ZERO_DEFAULT (1<<0) +#define INTxx_FLAG_SIGNED (1<<1) + +static int uint64_new(ASN1_VALUE **pval, const ASN1_ITEM *it) +{ + *(uint64_t *)pval = 0; + return 1; +} + +static void uint64_free(ASN1_VALUE **pval, const ASN1_ITEM *it) +{ + *(uint64_t *)pval = 0; +} + +static int uint64_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, + const ASN1_ITEM *it) +{ + uint64_t utmp; + int neg = 0; + /* this exists to bypass broken gcc optimization */ + char *cp = (char *)pval; + + /* use memcpy, because we may not be uint64_t aligned */ + memcpy(&utmp, cp, sizeof(utmp)); + + if ((it->size & INTxx_FLAG_ZERO_DEFAULT) == INTxx_FLAG_ZERO_DEFAULT + && utmp == 0) + return -1; + if ((it->size & INTxx_FLAG_SIGNED) == INTxx_FLAG_SIGNED + && (int64_t)utmp < 0) + neg = 1; + + return i2c_uint64_int(cont, utmp, neg); +} + +static int uint64_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, + int utype, char *free_cont, const ASN1_ITEM *it) +{ + uint64_t utmp = 0; + char *cp = (char *)pval; + int neg = 0; + + if (!c2i_uint64_int(&utmp, &neg, &cont, len)) + return 0; + if ((it->size & INTxx_FLAG_SIGNED) == 0 && neg) { + ASN1err(ASN1_F_UINT64_C2I, ASN1_R_ILLEGAL_NEGATIVE_VALUE); + return 0; + } + memcpy(cp, &utmp, sizeof(utmp)); + return 1; +} + +static int uint64_print(BIO *out, ASN1_VALUE **pval, const ASN1_ITEM *it, + int indent, const ASN1_PCTX *pctx) +{ + if ((it->size & INTxx_FLAG_SIGNED) == INTxx_FLAG_SIGNED) + return BIO_printf(out, "%jd\n", *(int64_t *)pval); + return BIO_printf(out, "%ju\n", *(uint64_t *)pval); +} + +/* 32-bit variants */ + +static int uint32_new(ASN1_VALUE **pval, const ASN1_ITEM *it) +{ + *(uint32_t *)pval = 0; + return 1; +} + +static void uint32_free(ASN1_VALUE **pval, const ASN1_ITEM *it) +{ + *(uint32_t *)pval = 0; +} + +static int uint32_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, + const ASN1_ITEM *it) +{ + uint32_t utmp; + int neg = 0; + /* this exists to bypass broken gcc optimization */ + char *cp = (char *)pval; + + /* use memcpy, because we may not be uint32_t aligned */ + memcpy(&utmp, cp, sizeof(utmp)); + + if ((it->size & INTxx_FLAG_ZERO_DEFAULT) == INTxx_FLAG_ZERO_DEFAULT + && utmp == 0) + return -1; + if ((it->size & INTxx_FLAG_SIGNED) == INTxx_FLAG_SIGNED + && (int32_t)utmp < 0) + neg = 1; + + return i2c_uint64_int(cont, (uint64_t)utmp, neg); +} + +static int uint32_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, + int utype, char *free_cont, const ASN1_ITEM *it) +{ + uint64_t utmp = 0; + uint32_t utmp2 = 0; + char *cp = (char *)pval; + int neg = 0; + + if (!c2i_uint64_int(&utmp, &neg, &cont, len)) + return 0; + if ((it->size & INTxx_FLAG_SIGNED) == 0 && neg) { + ASN1err(ASN1_F_UINT32_C2I, ASN1_R_ILLEGAL_NEGATIVE_VALUE); + return 0; + } + utmp2 = (uint32_t)utmp; + if (utmp != utmp2 + || ((it->size & INTxx_FLAG_SIGNED) == INTxx_FLAG_SIGNED + && !neg && utmp2 > INT32_MAX)) { + ASN1err(ASN1_F_UINT32_C2I, ASN1_R_TOO_LARGE); + return 0; + } + memcpy(cp, &utmp2, sizeof(utmp2)); + return 1; +} + +static int uint32_print(BIO *out, ASN1_VALUE **pval, const ASN1_ITEM *it, + int indent, const ASN1_PCTX *pctx) +{ + if ((it->size & INTxx_FLAG_SIGNED) == INTxx_FLAG_SIGNED) + return BIO_printf(out, "%d\n", *(int32_t *)pval); + return BIO_printf(out, "%u\n", *(uint32_t *)pval); +} + + +/* Define the primitives themselves */ + +static ASN1_PRIMITIVE_FUNCS uint32_pf = { + NULL, 0, + uint32_new, + uint32_free, + uint32_free, /* Clear should set to initial value */ + uint32_c2i, + uint32_i2c, + uint32_print +}; + +static ASN1_PRIMITIVE_FUNCS uint64_pf = { + NULL, 0, + uint64_new, + uint64_free, + uint64_free, /* Clear should set to initial value */ + uint64_c2i, + uint64_i2c, + uint64_print +}; + +ASN1_ITEM_start(INT32) + ASN1_ITYPE_PRIMITIVE, V_ASN1_INTEGER, NULL, 0, &uint32_pf, + INTxx_FLAG_SIGNED, "INT32" +ASN1_ITEM_end(INT32) + +ASN1_ITEM_start(UINT32) + ASN1_ITYPE_PRIMITIVE, V_ASN1_INTEGER, NULL, 0, &uint32_pf, 0, "UINT32" +ASN1_ITEM_end(UINT32) + +ASN1_ITEM_start(INT64) + ASN1_ITYPE_PRIMITIVE, V_ASN1_INTEGER, NULL, 0, &uint64_pf, + INTxx_FLAG_SIGNED, "INT64" +ASN1_ITEM_end(INT64) + +ASN1_ITEM_start(UINT64) + ASN1_ITYPE_PRIMITIVE, V_ASN1_INTEGER, NULL, 0, &uint64_pf, 0, "UINT64" +ASN1_ITEM_end(UINT64) + +ASN1_ITEM_start(ZINT32) + ASN1_ITYPE_PRIMITIVE, V_ASN1_INTEGER, NULL, 0, &uint32_pf, + INTxx_FLAG_ZERO_DEFAULT|INTxx_FLAG_SIGNED, "ZINT32" +ASN1_ITEM_end(ZINT32) + +ASN1_ITEM_start(ZUINT32) + ASN1_ITYPE_PRIMITIVE, V_ASN1_INTEGER, NULL, 0, &uint32_pf, + INTxx_FLAG_ZERO_DEFAULT, "ZUINT32" +ASN1_ITEM_end(ZUINT32) + +ASN1_ITEM_start(ZINT64) + ASN1_ITYPE_PRIMITIVE, V_ASN1_INTEGER, NULL, 0, &uint64_pf, + INTxx_FLAG_ZERO_DEFAULT|INTxx_FLAG_SIGNED, "ZINT64" +ASN1_ITEM_end(ZINT64) + +ASN1_ITEM_start(ZUINT64) + ASN1_ITYPE_PRIMITIVE, V_ASN1_INTEGER, NULL, 0, &uint64_pf, + INTxx_FLAG_ZERO_DEFAULT, "ZUINT64" +ASN1_ITEM_end(ZUINT64) + diff --git a/crypto/asn1/x_long.c b/crypto/asn1/x_long.c index 233725f..a7b9023 100644 --- a/crypto/asn1/x_long.c +++ b/crypto/asn1/x_long.c @@ -110,7 +110,7 @@ static int long_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, unsigned long utmp = 0; char *cp = (char *)pval; - if (len) { + if (len > 1) { /* * Check possible pad byte. Worst case, we're skipping past actual * content, but since that's only with 0x00 and 0xff and we set neg @@ -120,7 +120,7 @@ static int long_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, case 0xff: cont++; len--; - neg = 1; + neg = 0x80; break; case 0: cont++; @@ -139,6 +139,9 @@ static int long_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, neg = 1; else neg = 0; + } else if (neg == (cont[0] & 0x80)) { + ASN1err(ASN1_F_LONG_C2I, ASN1_R_ILLEGAL_PADDING); + return 0; } utmp = 0; for (i = 0; i < len; i++) { @@ -149,6 +152,10 @@ static int long_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, utmp |= cont[i]; } ltmp = (long)utmp; + if (ltmp < 0) { + ASN1err(ASN1_F_LONG_C2I, ASN1_R_INTEGER_TOO_LARGE_FOR_LONG); + return 0; + } if (neg) { ltmp = -ltmp; ltmp--; diff --git a/crypto/siphash/siphash_local.h b/include/internal/asn1t.h similarity index 51% copy from crypto/siphash/siphash_local.h copy to include/internal/asn1t.h index 5ad3476..32d637d 100644 --- a/crypto/siphash/siphash_local.h +++ b/include/internal/asn1t.h @@ -7,17 +7,13 @@ * https://www.openssl.org/source/license.html */ -/* Based on https://131002.net/siphash C reference implementation */ +#include -struct siphash_st { - uint64_t total_inlen; - uint64_t v0; - uint64_t v1; - uint64_t v2; - uint64_t v3; - unsigned int len; - int hash_size; - int crounds; - int drounds; - unsigned char leavings[SIPHASH_BLOCK_SIZE]; -}; +DECLARE_ASN1_ITEM(INT32) +DECLARE_ASN1_ITEM(ZINT32) +DECLARE_ASN1_ITEM(UINT32) +DECLARE_ASN1_ITEM(ZUINT32) +DECLARE_ASN1_ITEM(INT64) +DECLARE_ASN1_ITEM(ZINT64) +DECLARE_ASN1_ITEM(UINT64) +DECLARE_ASN1_ITEM(ZUINT64) diff --git a/include/openssl/asn1.h b/include/openssl/asn1.h index 665b952..0bbdaba 100644 --- a/include/openssl/asn1.h +++ b/include/openssl/asn1.h @@ -949,6 +949,7 @@ int ERR_load_ASN1_strings(void); # define ASN1_F_C2I_ASN1_INTEGER 194 # define ASN1_F_C2I_ASN1_OBJECT 196 # define ASN1_F_C2I_IBUF 226 +# define ASN1_F_C2I_UINT64_INT 101 # define ASN1_F_COLLECT_DATA 140 # define ASN1_F_D2I_ASN1_OBJECT 147 # define ASN1_F_D2I_ASN1_UINTEGER 150 @@ -974,6 +975,8 @@ int ERR_load_ASN1_strings(void); # define ASN1_F_SMIME_READ_ASN1 212 # define ASN1_F_SMIME_TEXT 213 # define ASN1_F_STBL_MODULE_INIT 223 +# define ASN1_F_UINT32_C2I 105 +# define ASN1_F_UINT64_C2I 112 # define ASN1_F_X509_CRL_ADD0_REVOKED 169 # define ASN1_F_X509_INFO_NEW 170 # define ASN1_F_X509_NAME_ENCODE 203 diff --git a/ssl/ssl_asn1.c b/ssl/ssl_asn1.c index 856db20..0802dd4 100644 --- a/ssl/ssl_asn1.c +++ b/ssl/ssl_asn1.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -37,25 +37,25 @@ #include #include #include "ssl_locl.h" -#include +#include "internal/asn1t.h" #include typedef struct { - long version; - long ssl_version; + uint32_t version; + int32_t ssl_version; ASN1_OCTET_STRING *cipher; ASN1_OCTET_STRING *comp_id; ASN1_OCTET_STRING *master_key; ASN1_OCTET_STRING *session_id; ASN1_OCTET_STRING *key_arg; - long time; - long timeout; + int64_t time; + int64_t timeout; X509 *peer; ASN1_OCTET_STRING *session_id_context; - long verify_result; + int32_t verify_result; ASN1_OCTET_STRING *tlsext_hostname; - long tlsext_tick_lifetime_hint; - long tlsext_tick_age_add; + uint64_t tlsext_tick_lifetime_hint; + uint32_t tlsext_tick_age_add; ASN1_OCTET_STRING *tlsext_tick; #ifndef OPENSSL_NO_PSK ASN1_OCTET_STRING *psk_identity_hint; @@ -64,37 +64,37 @@ typedef struct { #ifndef OPENSSL_NO_SRP ASN1_OCTET_STRING *srp_username; #endif - long flags; + uint64_t flags; uint32_t max_early_data; ASN1_OCTET_STRING *alpn_selected; } SSL_SESSION_ASN1; ASN1_SEQUENCE(SSL_SESSION_ASN1) = { - ASN1_SIMPLE(SSL_SESSION_ASN1, version, LONG), - ASN1_SIMPLE(SSL_SESSION_ASN1, ssl_version, LONG), + ASN1_SIMPLE(SSL_SESSION_ASN1, version, UINT32), + ASN1_SIMPLE(SSL_SESSION_ASN1, ssl_version, INT32), ASN1_SIMPLE(SSL_SESSION_ASN1, cipher, ASN1_OCTET_STRING), ASN1_SIMPLE(SSL_SESSION_ASN1, session_id, ASN1_OCTET_STRING), ASN1_SIMPLE(SSL_SESSION_ASN1, master_key, ASN1_OCTET_STRING), ASN1_IMP_OPT(SSL_SESSION_ASN1, key_arg, ASN1_OCTET_STRING, 0), - ASN1_EXP_OPT(SSL_SESSION_ASN1, time, ZLONG, 1), - ASN1_EXP_OPT(SSL_SESSION_ASN1, timeout, ZLONG, 2), + ASN1_EXP_OPT(SSL_SESSION_ASN1, time, ZINT64, 1), + ASN1_EXP_OPT(SSL_SESSION_ASN1, timeout, ZINT64, 2), ASN1_EXP_OPT(SSL_SESSION_ASN1, peer, X509, 3), ASN1_EXP_OPT(SSL_SESSION_ASN1, session_id_context, ASN1_OCTET_STRING, 4), - ASN1_EXP_OPT(SSL_SESSION_ASN1, verify_result, ZLONG, 5), + ASN1_EXP_OPT(SSL_SESSION_ASN1, verify_result, ZINT32, 5), ASN1_EXP_OPT(SSL_SESSION_ASN1, tlsext_hostname, ASN1_OCTET_STRING, 6), #ifndef OPENSSL_NO_PSK ASN1_EXP_OPT(SSL_SESSION_ASN1, psk_identity_hint, ASN1_OCTET_STRING, 7), ASN1_EXP_OPT(SSL_SESSION_ASN1, psk_identity, ASN1_OCTET_STRING, 8), #endif - ASN1_EXP_OPT(SSL_SESSION_ASN1, tlsext_tick_lifetime_hint, ZLONG, 9), + ASN1_EXP_OPT(SSL_SESSION_ASN1, tlsext_tick_lifetime_hint, ZUINT64, 9), ASN1_EXP_OPT(SSL_SESSION_ASN1, tlsext_tick, ASN1_OCTET_STRING, 10), ASN1_EXP_OPT(SSL_SESSION_ASN1, comp_id, ASN1_OCTET_STRING, 11), #ifndef OPENSSL_NO_SRP ASN1_EXP_OPT(SSL_SESSION_ASN1, srp_username, ASN1_OCTET_STRING, 12), #endif - ASN1_EXP_OPT(SSL_SESSION_ASN1, flags, ZLONG, 13), - ASN1_EXP_OPT(SSL_SESSION_ASN1, tlsext_tick_age_add, ZLONG, 14), - ASN1_EXP_OPT(SSL_SESSION_ASN1, max_early_data, ZLONG, 15), + ASN1_EXP_OPT(SSL_SESSION_ASN1, flags, ZUINT64, 13), + ASN1_EXP_OPT(SSL_SESSION_ASN1, tlsext_tick_age_add, ZUINT32, 14), + ASN1_EXP_OPT(SSL_SESSION_ASN1, max_early_data, ZUINT32, 15), ASN1_EXP_OPT(SSL_SESSION_ASN1, alpn_selected, ASN1_OCTET_STRING, 16) } static_ASN1_SEQUENCE_END(SSL_SESSION_ASN1) diff --git a/test/asn1_encode_test.c b/test/asn1_encode_test.c new file mode 100644 index 0000000..dabb82c --- /dev/null +++ b/test/asn1_encode_test.c @@ -0,0 +1,717 @@ +/* + * Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +#include +#include + +#include "internal/asn1t.h" +#include "internal/numbers.h" +#include "test_main.h" +#include "testutil.h" + +#ifdef __GNUC__ +# pragma GCC diagnostic ignored "-Wunused-function" +# pragma GCC diagnostic ignored "-Wformat" +#endif +#ifdef __clang__ +# pragma clang diagnostic ignored "-Wunused-function" +# pragma clang diagnostic ignored "-Wformat" +#endif + +/***** Custom test data ******************************************************/ + +/* + * We conduct tests with these arrays for every type we try out. + * You will find the expected results together with the test structures + * for each type, further down. + */ + +static unsigned char t_zero[] = { + 0x00 +}; +static unsigned char t_one[] = { + 0x01 +}; +static unsigned char t_longundef[] = { + 0x7f, 0xff, 0xff, 0xff +}; +static unsigned char t_9bytes_1[] = { + 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff +}; +static unsigned char t_8bytes_1[] = { + 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 +}; +static unsigned char t_8bytes_2[] = { + 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff +}; +static unsigned char t_8bytes_3_pad[] = { + 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff +}; +static unsigned char t_8bytes_4_neg[] = { + 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 +}; +static unsigned char t_8bytes_5_negpad[] = { + 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 +}; + +/* 32-bit long */ +static unsigned char t_5bytes_1[] = { + 0x01, 0xff, 0xff, 0xff, 0xff +}; +static unsigned char t_4bytes_1[] = { + 0x00, 0x80, 0x00, 0x00, 0x00 +}; +/* We make the last byte 0xfe to avoid a clash with ASN1_LONG_UNDEF */ +static unsigned char t_4bytes_2[] = { + 0x7f, 0xff, 0xff, 0xfe +}; +static unsigned char t_4bytes_3_pad[] = { + 0x00, 0x7f, 0xff, 0xff, 0xfe +}; +static unsigned char t_4bytes_4_neg[] = { + 0x80, 0x00, 0x00, 0x00 +}; +static unsigned char t_4bytes_5_negpad[] = { + 0xff, 0x80, 0x00, 0x00, 0x00 +}; + +typedef struct { + unsigned char *bytes1; + size_t nbytes1; + unsigned char *bytes2; + size_t nbytes2; +} TEST_CUSTOM_DATA; +#define CUSTOM_DATA(v) \ + { v, sizeof(v), t_one, sizeof(t_one) }, \ + { t_one, sizeof(t_one), v, sizeof(v) } + +static TEST_CUSTOM_DATA test_custom_data[] = { + CUSTOM_DATA(t_zero), + CUSTOM_DATA(t_longundef), + CUSTOM_DATA(t_one), + CUSTOM_DATA(t_9bytes_1), + CUSTOM_DATA(t_8bytes_1), + CUSTOM_DATA(t_8bytes_2), + CUSTOM_DATA(t_8bytes_3_pad), + CUSTOM_DATA(t_8bytes_4_neg), + CUSTOM_DATA(t_8bytes_5_negpad), + CUSTOM_DATA(t_5bytes_1), + CUSTOM_DATA(t_4bytes_1), + CUSTOM_DATA(t_4bytes_2), + CUSTOM_DATA(t_4bytes_3_pad), + CUSTOM_DATA(t_4bytes_4_neg), + CUSTOM_DATA(t_4bytes_5_negpad), +}; + + +/***** Type specific test data ***********************************************/ + +/* + * First, a few utility things that all type specific data can use, or in some + * cases, MUST use. + */ + +/* + * For easy creation of arrays of expected data. These macros correspond to + * the uses of CUSTOM_DATA above. + */ +#define CUSTOM_EXPECTED_SUCCESS(num, znum) \ + { 0xff, num, 1 }, \ + { 0xff, 1, znum } +#define CUSTOM_EXPECTED_FAILURE \ + { 0, 0, 0 }, \ + { 0, 0, 0 } + +/* + * A structure to collect all test information in. There MUST be one instance + * of this for each test + */ +typedef int i2d_fn(void **a, unsigned char **pp); +typedef void *d2i_fn(void **a, unsigned char **pp, long length); +typedef void ifree_fn(void *a); +typedef struct { + char *name; + int skip; /* 1 if this package should be skipped */ + + /* An array of structures to compare decoded custom data with */ + void *encode_expectations; + size_t encode_expectations_size; + size_t encode_expectations_elem_size; + + /* + * An array of structures that are encoded into a DER blob, which is + * then decoded, and result gets compared with the original. + */ + void *encdec_data; + size_t encdec_data_size; + size_t encdec_data_elem_size; + + /* The i2d function to use with this type */ + i2d_fn *i2d; + /* The d2i function to use with this type */ + d2i_fn *d2i; + /* Function to free a decoded structure */ + ifree_fn *ifree; +} TEST_PACKAGE; + +/* To facilitate the creation of an encdec_data array */ +#define ENCDEC_DATA(num, znum) \ + { 0xff, num, 1 }, { 0xff, 1, znum } +#define ENCDEC_ARRAY(max, zmax, min, zmin) \ + ENCDEC_DATA(max,zmax), \ + ENCDEC_DATA(min,zmin), \ + ENCDEC_DATA(1, 1), \ + ENCDEC_DATA(-1, -1), \ + ENCDEC_DATA(0, ASN1_LONG_UNDEF) + +/***** LONG ******************************************************************/ + +typedef struct { + /* If decoding is expected to succeed, set this to 1, otherwise 0 */ + ASN1_BOOLEAN success; + long test_long; + long test_zlong; +} ASN1_LONG_DATA; + +ASN1_SEQUENCE(ASN1_LONG_DATA) = { + ASN1_SIMPLE(ASN1_LONG_DATA, success, ASN1_FBOOLEAN), + ASN1_SIMPLE(ASN1_LONG_DATA, test_long, LONG), + ASN1_EXP_OPT(ASN1_LONG_DATA, test_zlong, ZLONG, 0) +} static_ASN1_SEQUENCE_END(ASN1_LONG_DATA) + +IMPLEMENT_STATIC_ASN1_ENCODE_FUNCTIONS(ASN1_LONG_DATA) +IMPLEMENT_STATIC_ASN1_ALLOC_FUNCTIONS(ASN1_LONG_DATA) + +static ASN1_LONG_DATA long_expected_32bit[] = { + /* The following should fail on the second because it's the default */ + { 0xff, 0, 1 }, { 0, 0, 0 }, /* t_zero */ + { 0, 0, 0 }, { 0xff, 1, 0x7fffffff }, /* t_longundef */ + CUSTOM_EXPECTED_SUCCESS(1, 1), /* t_one */ + CUSTOM_EXPECTED_FAILURE, /* t_9bytes_1 */ + CUSTOM_EXPECTED_FAILURE, /* t_8bytes_1 */ + CUSTOM_EXPECTED_FAILURE, /* t_8bytes_2 */ + CUSTOM_EXPECTED_FAILURE, /* t_8bytes_3_pad */ + CUSTOM_EXPECTED_FAILURE, /* t_8bytes_4_neg */ + CUSTOM_EXPECTED_FAILURE, /* t_8bytes_5_negpad */ + CUSTOM_EXPECTED_FAILURE, /* t_5bytes_1 */ + CUSTOM_EXPECTED_FAILURE, /* t_4bytes_1 (too large positive) */ + CUSTOM_EXPECTED_SUCCESS(INT32_MAX - 1, INT32_MAX -1), /* t_4bytes_2 */ + CUSTOM_EXPECTED_FAILURE, /* t_4bytes_3_pad (illegal padding) */ + CUSTOM_EXPECTED_SUCCESS(INT32_MIN, INT32_MIN), /* t_4bytes_4_neg */ + CUSTOM_EXPECTED_FAILURE, /* t_4bytes_5_negpad (illegal padding) */ +}; +static ASN1_LONG_DATA long_encdec_data_32bit[] = { + ENCDEC_ARRAY(LONG_MAX - 1, LONG_MAX, LONG_MIN, LONG_MIN), + /* Check that default numbers fail */ + { 0, ASN1_LONG_UNDEF, 1 }, { 0, 1, 0 } +}; + +static TEST_PACKAGE long_test_package_32bit = { + "LONG", sizeof(long) != 4, + long_expected_32bit, + sizeof(long_expected_32bit), sizeof(long_expected_32bit[0]), + long_encdec_data_32bit, + sizeof(long_encdec_data_32bit), sizeof(long_encdec_data_32bit[0]), + (i2d_fn *)i2d_ASN1_LONG_DATA, (d2i_fn *)d2i_ASN1_LONG_DATA, + (ifree_fn *)ASN1_LONG_DATA_free +}; + +static ASN1_LONG_DATA long_expected_64bit[] = { + /* The following should fail on the second because it's the default */ + { 0xff, 0, 1 }, { 0, 0, 0 }, /* t_zero */ + { 0, 0, 0 }, { 0xff, 1, 0x7fffffff }, /* t_longundef */ + CUSTOM_EXPECTED_SUCCESS(1, 1), /* t_one */ + CUSTOM_EXPECTED_FAILURE, /* t_9bytes_1 */ + CUSTOM_EXPECTED_FAILURE, /* t_8bytes_1 */ + CUSTOM_EXPECTED_SUCCESS(LONG_MAX, LONG_MAX), /* t_8bytes_2 */ + CUSTOM_EXPECTED_FAILURE, /* t_8bytes_3_pad (illegal padding) */ + CUSTOM_EXPECTED_SUCCESS(LONG_MIN, LONG_MIN), /* t_8bytes_4_neg */ + CUSTOM_EXPECTED_FAILURE, /* t_8bytes_5_negpad (illegal padding) */ + CUSTOM_EXPECTED_SUCCESS((long)0x1ffffffff, (long)0x1ffffffff), /* t_5bytes_1 */ + CUSTOM_EXPECTED_SUCCESS((long)0x80000000, (long)0x80000000), /* t_4bytes_1 */ + CUSTOM_EXPECTED_SUCCESS(INT32_MAX - 1, INT32_MAX -1), /* t_4bytes_2 */ + CUSTOM_EXPECTED_FAILURE, /* t_4bytes_3_pad (illegal padding) */ + CUSTOM_EXPECTED_SUCCESS(INT32_MIN, INT32_MIN), /* t_4bytes_4_neg */ + CUSTOM_EXPECTED_FAILURE, /* t_4bytes_5_negpad (illegal padding) */ +}; +static ASN1_LONG_DATA long_encdec_data_64bit[] = { + ENCDEC_ARRAY(LONG_MAX, LONG_MAX, LONG_MIN, LONG_MIN), + /* Check that default numbers fail */ + { 0, ASN1_LONG_UNDEF, 1 }, { 0, 1, 0 } +}; + +static TEST_PACKAGE long_test_package_64bit = { + "LONG", sizeof(long) != 8, + long_expected_64bit, + sizeof(long_expected_64bit), sizeof(long_expected_64bit[0]), + long_encdec_data_64bit, + sizeof(long_encdec_data_64bit), sizeof(long_encdec_data_64bit[0]), + (i2d_fn *)i2d_ASN1_LONG_DATA, (d2i_fn *)d2i_ASN1_LONG_DATA, + (ifree_fn *)ASN1_LONG_DATA_free +}; + +/***** INT32 *****************************************************************/ + +typedef struct { + ASN1_BOOLEAN success; + int32_t test_int32; + int32_t test_zint32; +} ASN1_INT32_DATA; + +ASN1_SEQUENCE(ASN1_INT32_DATA) = { + ASN1_SIMPLE(ASN1_LONG_DATA, success, ASN1_FBOOLEAN), + ASN1_SIMPLE(ASN1_INT32_DATA, test_int32, INT32), + ASN1_EXP_OPT(ASN1_INT32_DATA, test_zint32, ZINT32, 0) +} static_ASN1_SEQUENCE_END(ASN1_INT32_DATA) + +IMPLEMENT_STATIC_ASN1_ENCODE_FUNCTIONS(ASN1_INT32_DATA) +IMPLEMENT_STATIC_ASN1_ALLOC_FUNCTIONS(ASN1_INT32_DATA) + +static ASN1_INT32_DATA int32_expected[] = { + CUSTOM_EXPECTED_SUCCESS(0, 0), /* t_zero */ + CUSTOM_EXPECTED_SUCCESS(ASN1_LONG_UNDEF, ASN1_LONG_UNDEF), /* t_zero */ + CUSTOM_EXPECTED_SUCCESS(1, 1), /* t_one */ + CUSTOM_EXPECTED_FAILURE, /* t_9bytes_1 */ + CUSTOM_EXPECTED_FAILURE, /* t_8bytes_1 */ + CUSTOM_EXPECTED_FAILURE, /* t_8bytes_2 */ + CUSTOM_EXPECTED_FAILURE, /* t_8bytes_3_pad */ + CUSTOM_EXPECTED_FAILURE, /* t_8bytes_4_neg */ + CUSTOM_EXPECTED_FAILURE, /* t_8bytes_5_negpad */ + CUSTOM_EXPECTED_FAILURE, /* t_5bytes_1 */ + CUSTOM_EXPECTED_FAILURE, /* t_4bytes_1 (too large positive) */ + CUSTOM_EXPECTED_SUCCESS(INT32_MAX - 1, INT32_MAX -1), /* t_4bytes_2 */ + CUSTOM_EXPECTED_FAILURE, /* t_4bytes_3_pad (illegal padding) */ + CUSTOM_EXPECTED_SUCCESS(INT32_MIN, INT32_MIN), /* t_4bytes_4_neg */ + CUSTOM_EXPECTED_FAILURE, /* t_4bytes_5_negpad (illegal padding) */ +}; +static ASN1_INT32_DATA int32_encdec_data[] = { + ENCDEC_ARRAY(INT32_MAX, INT32_MAX, INT32_MIN, INT32_MIN), +}; + +static TEST_PACKAGE int32_test_package = { + "INT32", 0, + int32_expected, sizeof(int32_expected), sizeof(int32_expected[0]), + int32_encdec_data, sizeof(int32_encdec_data), sizeof(int32_encdec_data[0]), + (i2d_fn *)i2d_ASN1_INT32_DATA, (d2i_fn *)d2i_ASN1_INT32_DATA, + (ifree_fn *)ASN1_INT32_DATA_free +}; + +/***** UINT32 ****************************************************************/ + +typedef struct { + ASN1_BOOLEAN success; + uint32_t test_uint32; + uint32_t test_zuint32; +} ASN1_UINT32_DATA; + +ASN1_SEQUENCE(ASN1_UINT32_DATA) = { + ASN1_SIMPLE(ASN1_LONG_DATA, success, ASN1_FBOOLEAN), + ASN1_SIMPLE(ASN1_UINT32_DATA, test_uint32, UINT32), + ASN1_EXP_OPT(ASN1_UINT32_DATA, test_zuint32, ZUINT32, 0) +} static_ASN1_SEQUENCE_END(ASN1_UINT32_DATA) + +IMPLEMENT_STATIC_ASN1_ENCODE_FUNCTIONS(ASN1_UINT32_DATA) +IMPLEMENT_STATIC_ASN1_ALLOC_FUNCTIONS(ASN1_UINT32_DATA) + +static ASN1_UINT32_DATA uint32_expected[] = { + CUSTOM_EXPECTED_SUCCESS(0, 0), /* t_zero */ + CUSTOM_EXPECTED_SUCCESS(ASN1_LONG_UNDEF, ASN1_LONG_UNDEF), /* t_zero */ + CUSTOM_EXPECTED_SUCCESS(1, 1), /* t_one */ + CUSTOM_EXPECTED_FAILURE, /* t_9bytes_1 */ + CUSTOM_EXPECTED_FAILURE, /* t_8bytes_1 */ + CUSTOM_EXPECTED_FAILURE, /* t_8bytes_2 */ + CUSTOM_EXPECTED_FAILURE, /* t_8bytes_3_pad */ + CUSTOM_EXPECTED_FAILURE, /* t_8bytes_4_neg */ + CUSTOM_EXPECTED_FAILURE, /* t_8bytes_5_negpad */ + CUSTOM_EXPECTED_FAILURE, /* t_5bytes_1 */ + CUSTOM_EXPECTED_SUCCESS(0x80000000, 0x80000000), /* t_4bytes_1 */ + CUSTOM_EXPECTED_SUCCESS(INT32_MAX - 1, INT32_MAX -1), /* t_4bytes_2 */ + CUSTOM_EXPECTED_FAILURE, /* t_4bytes_3_pad (illegal padding) */ + CUSTOM_EXPECTED_FAILURE, /* t_4bytes_4_neg (illegal negative value) */ + CUSTOM_EXPECTED_FAILURE, /* t_4bytes_5_negpad (illegal padding) */ +}; +static ASN1_UINT32_DATA uint32_encdec_data[] = { + ENCDEC_ARRAY(UINT32_MAX, UINT32_MAX, 0, 0), +}; + +static TEST_PACKAGE uint32_test_package = { + "UINT32", 0, + uint32_expected, sizeof(uint32_expected), sizeof(uint32_expected[0]), + uint32_encdec_data, sizeof(uint32_encdec_data), sizeof(uint32_encdec_data[0]), + (i2d_fn *)i2d_ASN1_UINT32_DATA, (d2i_fn *)d2i_ASN1_UINT32_DATA, + (ifree_fn *)ASN1_UINT32_DATA_free +}; + +/***** INT64 *****************************************************************/ + +typedef struct { + ASN1_BOOLEAN success; + int64_t test_int64; + int64_t test_zint64; +} ASN1_INT64_DATA; + +ASN1_SEQUENCE(ASN1_INT64_DATA) = { + ASN1_SIMPLE(ASN1_LONG_DATA, success, ASN1_FBOOLEAN), + ASN1_SIMPLE(ASN1_INT64_DATA, test_int64, INT64), + ASN1_EXP_OPT(ASN1_INT64_DATA, test_zint64, ZINT64, 0) +} static_ASN1_SEQUENCE_END(ASN1_INT64_DATA) + +IMPLEMENT_STATIC_ASN1_ENCODE_FUNCTIONS(ASN1_INT64_DATA) +IMPLEMENT_STATIC_ASN1_ALLOC_FUNCTIONS(ASN1_INT64_DATA) + +static ASN1_INT64_DATA int64_expected[] = { + CUSTOM_EXPECTED_SUCCESS(0, 0), /* t_zero */ + CUSTOM_EXPECTED_SUCCESS(ASN1_LONG_UNDEF, ASN1_LONG_UNDEF), /* t_zero */ + CUSTOM_EXPECTED_SUCCESS(1, 1), /* t_one */ + CUSTOM_EXPECTED_FAILURE, /* t_9bytes_1 */ + CUSTOM_EXPECTED_SUCCESS(INT64_MIN, INT64_MIN), /* t_8bytes_1 */ + CUSTOM_EXPECTED_SUCCESS(INT64_MAX, INT64_MAX), /* t_8bytes_2 */ + CUSTOM_EXPECTED_FAILURE, /* t_8bytes_3_pad (illegal padding) */ + CUSTOM_EXPECTED_SUCCESS(INT64_MIN, INT64_MIN), /* t_8bytes_4_neg */ + CUSTOM_EXPECTED_FAILURE, /* t_8bytes_5_negpad (illegal padding) */ + CUSTOM_EXPECTED_SUCCESS(0x1ffffffff, 0x1ffffffff), /* t_5bytes_1 */ + CUSTOM_EXPECTED_SUCCESS(0x80000000, 0x80000000), /* t_4bytes_1 */ + CUSTOM_EXPECTED_SUCCESS(INT32_MAX - 1, INT32_MAX -1), /* t_4bytes_2 */ + CUSTOM_EXPECTED_FAILURE, /* t_4bytes_3_pad (illegal padding) */ + CUSTOM_EXPECTED_SUCCESS(0x80000000, 0x80000000), /* t_4bytes_4_neg */ + CUSTOM_EXPECTED_FAILURE, /* t_4bytes_5_negpad (illegal padding) */ +}; +static ASN1_INT64_DATA int64_encdec_data[] = { + ENCDEC_ARRAY(INT64_MAX, INT64_MAX, INT64_MIN, INT64_MIN), + ENCDEC_ARRAY(INT32_MAX, INT32_MAX, INT32_MIN, INT32_MIN), +}; + +static TEST_PACKAGE int64_test_package = { + "INT64", 0, + int64_expected, sizeof(int64_expected), sizeof(int64_expected[0]), + int64_encdec_data, sizeof(int64_encdec_data), sizeof(int64_encdec_data[0]), + (i2d_fn *)i2d_ASN1_INT64_DATA, (d2i_fn *)d2i_ASN1_INT64_DATA, + (ifree_fn *)ASN1_INT64_DATA_free +}; + +/***** UINT64 ****************************************************************/ + +typedef struct { + ASN1_BOOLEAN success; + uint64_t test_uint64; + uint64_t test_zuint64; +} ASN1_UINT64_DATA; + +ASN1_SEQUENCE(ASN1_UINT64_DATA) = { + ASN1_SIMPLE(ASN1_LONG_DATA, success, ASN1_FBOOLEAN), + ASN1_SIMPLE(ASN1_UINT64_DATA, test_uint64, UINT64), + ASN1_EXP_OPT(ASN1_UINT64_DATA, test_zuint64, ZUINT64, 0) +} static_ASN1_SEQUENCE_END(ASN1_UINT64_DATA) + +IMPLEMENT_STATIC_ASN1_ENCODE_FUNCTIONS(ASN1_UINT64_DATA) +IMPLEMENT_STATIC_ASN1_ALLOC_FUNCTIONS(ASN1_UINT64_DATA) + +static ASN1_UINT64_DATA uint64_expected[] = { + CUSTOM_EXPECTED_SUCCESS(0, 0), /* t_zero */ + CUSTOM_EXPECTED_SUCCESS(ASN1_LONG_UNDEF, ASN1_LONG_UNDEF), /* t_zero */ + CUSTOM_EXPECTED_SUCCESS(1, 1), /* t_one */ + CUSTOM_EXPECTED_FAILURE, /* t_9bytes_1 */ + CUSTOM_EXPECTED_SUCCESS(INT64_MIN, INT64_MIN), /* t_8bytes_1 */ + CUSTOM_EXPECTED_SUCCESS(INT64_MAX, INT64_MAX), /* t_8bytes_2 */ + CUSTOM_EXPECTED_FAILURE, /* t_8bytes_3_pad */ + CUSTOM_EXPECTED_FAILURE, /* t_8bytes_4_neg */ + CUSTOM_EXPECTED_FAILURE, /* t_8bytes_5_negpad */ + CUSTOM_EXPECTED_SUCCESS(0x1ffffffff, 0x1ffffffff), /* t_5bytes_1 */ + CUSTOM_EXPECTED_SUCCESS(0x80000000, 0x80000000), /* t_4bytes_1 */ + CUSTOM_EXPECTED_SUCCESS(INT32_MAX - 1, INT32_MAX -1), /* t_4bytes_2 */ + CUSTOM_EXPECTED_FAILURE, /* t_4bytes_3_pad (illegal padding) */ + CUSTOM_EXPECTED_FAILURE, /* t_4bytes_4_neg (illegal negative value) */ + CUSTOM_EXPECTED_FAILURE, /* t_4bytes_5_negpad (illegal padding) */ +}; +static ASN1_UINT64_DATA uint64_encdec_data[] = { + ENCDEC_ARRAY(UINT64_MAX, UINT64_MAX, 0, 0), +}; + +static TEST_PACKAGE uint64_test_package = { + "UINT64", 0, + uint64_expected, sizeof(uint64_expected), sizeof(uint64_expected[0]), + uint64_encdec_data, sizeof(uint64_encdec_data), sizeof(uint64_encdec_data[0]), + (i2d_fn *)i2d_ASN1_UINT64_DATA, (d2i_fn *)d2i_ASN1_UINT64_DATA, + (ifree_fn *)ASN1_UINT64_DATA_free +}; + +/***** General testing functions *********************************************/ + + +/* Template structure to map onto any test data structure */ +typedef struct { + ASN1_BOOLEAN success; + unsigned char bytes[1]; /* In reality, there's more */ +} EXPECTED; + +/* + * do_decode returns a tristate: + * + * -1 Couldn't decode + * 0 decoded structure wasn't what was expected (failure) + * 1 decoded structure was what was expected (success) + */ +static int do_decode(unsigned char *bytes, long nbytes, + const EXPECTED *expected, size_t expected_size, + const TEST_PACKAGE *package) +{ + EXPECTED *enctst = NULL; + const unsigned char *start; + int ret = 0; + + start = bytes; + enctst = package->d2i(NULL, &bytes, nbytes); + if (enctst == NULL) { + if (expected->success == 0) { + ret = 1; + ERR_clear_error(); + } else { + ret = -1; + } + } else { + if (start + nbytes == bytes + && memcmp(enctst, expected, expected_size) == 0) + ret = 1; + else + ret = 0; + } + + package->ifree(enctst); + return ret; +} + +/* Do an encode/decode round trip */ +static int do_enc_dec(EXPECTED *bytes, long nbytes, + const TEST_PACKAGE *package) +{ + unsigned char *data = NULL; + int len; + int ret = 0; + void *p = bytes; + + len = package->i2d(p, &data); + if (len < 0) + return -1; + + ret = do_decode(data, len, bytes, nbytes, package); + OPENSSL_free(data); + return ret; +} + +static size_t der_encode_length(size_t len, unsigned char **pp) +{ + size_t lenbytes; + + OPENSSL_assert(len < 0x8000); + if (len > 255) + lenbytes = 3; + else if (len > 127) + lenbytes = 2; + else + lenbytes = 1; + + if (pp != NULL) { + if (lenbytes == 1) { + *(*pp)++ = len; + } else { + *(*pp)++ = lenbytes - 1; + if (lenbytes == 2) { + *(*pp)++ = 0x80 | len; + } else { + *(*pp)++ = 0x80 | (len >> 8); + *(*pp)++ = len & 0xff; + } + } + } + return lenbytes; +} + +/* Attempt to decode a custom encoding of the test structure */ +static int do_decode_custom(const TEST_CUSTOM_DATA *custom_data, + const EXPECTED *expected, size_t expected_size, + const TEST_PACKAGE *package) +{ + size_t firstbytes, secondbytes, secondbytesinner, seqbytes; + const unsigned char t_true[] = { V_ASN1_BOOLEAN, 0x01, 0xff }; + unsigned char *encoding, *p = NULL; + int ret; + + /* + * The first item is just an INTEGER tag, INTEGER length and INTEGER content + */ + firstbytes = + 1 + der_encode_length(custom_data->nbytes1, NULL) + + custom_data->nbytes1; + + /* + * The second item is an explicit tag, content length, INTEGER tag, + * INTEGER length, INTEGER bytes + */ + secondbytesinner = + 1 + der_encode_length(custom_data->nbytes2, NULL) + + custom_data->nbytes2; + secondbytes = + 1 + der_encode_length(secondbytesinner, NULL) + secondbytesinner; + + /* + * The whole sequence is the sequence tag, content length, BOOLEAN true + * (copied from t_true), the first (firstbytes) and second (secondbytes) + * items + */ + seqbytes = + 1 + der_encode_length(sizeof(t_true) + firstbytes + secondbytes, NULL) + + sizeof(t_true) + firstbytes + secondbytes; + + encoding = p = OPENSSL_malloc(seqbytes); + if (encoding == NULL) + return -1; + + /* Sequence tag */ + *p++ = 0x30; + der_encode_length(sizeof(t_true) + firstbytes + secondbytes, &p); + + /* ASN1_BOOLEAN TRUE */ + memcpy(p, t_true, sizeof(t_true)); /* Marks decoding success */ + p += sizeof(t_true); + + /* First INTEGER item (non-optional) */ + *p++ = V_ASN1_INTEGER; + der_encode_length(custom_data->nbytes1, &p); + memcpy(p, custom_data->bytes1, custom_data->nbytes1); + p += custom_data->nbytes1; + + /* Second INTEGER item (optional) */ + /* Start with the explicit optional tag */ + *p++ = 0xa0; + der_encode_length(secondbytesinner, &p); + *p++ = V_ASN1_INTEGER; + der_encode_length(custom_data->nbytes2, &p); + memcpy(p, custom_data->bytes2, custom_data->nbytes2); + p += custom_data->nbytes2; + + OPENSSL_assert(seqbytes == (size_t)(p - encoding)); + + ret = do_decode(encoding, seqbytes, expected, expected_size, package); + OPENSSL_free(encoding); + + return ret; +} + + +static int test_intern(const TEST_PACKAGE *package) +{ + unsigned int i; + size_t nelems; + int fail = 0; + + if (package->skip) + return 1; + + /* Do decode_custom checks */ + nelems = package->encode_expectations_size + / package->encode_expectations_elem_size; + OPENSSL_assert(nelems == + sizeof(test_custom_data) / sizeof(test_custom_data[0])); + for (i = 0; i < nelems; i++) { + size_t pos = i * package->encode_expectations_elem_size; + switch (do_decode_custom(&test_custom_data[i], + (EXPECTED *)&((unsigned char *)package + ->encode_expectations)[pos], + package->encode_expectations_elem_size, + package)) { + case -1: + fprintf(stderr, "Failed custom decode round trip %u of %s\n", + i, package->name); + ERR_print_errors_fp(stderr); + fail++; + ERR_clear_error(); + break; + case 0: + fprintf(stderr, "Custom decode round trip %u of %s mismatch\n", + i, package->name); + fail++; + break; + case 1: + break; + default: + OPENSSL_die("do_enc_dec() return unknown value", + __FILE__, __LINE__); + } + } + + /* Do enc_dec checks */ + nelems = package->encdec_data_size / package->encdec_data_elem_size; + for (i = 0; i < nelems; i++) { + size_t pos = i * package->encdec_data_elem_size; + switch (do_enc_dec((EXPECTED *)&((unsigned char *)package + ->encdec_data)[pos], + package->encdec_data_elem_size, + package)) { + case -1: + fprintf(stderr, "Failed encode/decode round trip %u of %s\n", + i, package->name); + ERR_print_errors_fp(stderr); + ERR_clear_error(); + fail++; + break; + case 0: + fprintf(stderr, "Encode/decode round trip %u of %s mismatch\n", + i, package->name); + fail++; + break; + case 1: + break; + default: + OPENSSL_die("do_enc_dec() return unknown value", + __FILE__, __LINE__); + } + } + + return fail == 0; +} + +static int test_long_32bit(void) +{ + return test_intern(&long_test_package_32bit); +} + +static int test_long_64bit(void) +{ + return test_intern(&long_test_package_64bit); +} + +static int test_int32(void) +{ + return test_intern(&int32_test_package); +} + +static int test_uint32(void) +{ + return test_intern(&uint32_test_package); +} + +static int test_int64(void) +{ + return test_intern(&int64_test_package); +} + +static int test_uint64(void) +{ + return test_intern(&uint64_test_package); +} + +void register_tests(void) +{ + ADD_TEST(test_long_32bit); + ADD_TEST(test_long_64bit); + ADD_TEST(test_int32); + ADD_TEST(test_uint32); + ADD_TEST(test_int64); + ADD_TEST(test_uint64); +} diff --git a/test/build.info b/test/build.info index 952eed5..3104b0e 100644 --- a/test/build.info +++ b/test/build.info @@ -28,7 +28,8 @@ IF[{- !$disabled{tests} -}] dtlsv1listentest ct_test threadstest afalgtest d2i_test \ ssl_test_ctx_test ssl_test x509aux cipherlist_test asynciotest \ bioprinttest sslapitest dtlstest sslcorrupttest bio_enc_test \ - pkey_meth_test uitest cipherbytes_test x509_time_test recordlentest + pkey_meth_test uitest cipherbytes_test asn1_encode_test \ + x509_time_test recordlentest SOURCE[aborttest]=aborttest.c INCLUDE[aborttest]=../include @@ -328,6 +329,10 @@ IF[{- !$disabled{tests} -}] INCLUDE[cipherbytes_test]=.. ../include DEPEND[cipherbytes_test]=../libcrypto ../libssl + SOURCE[asn1_encode_test]=asn1_encode_test.c testutil.c test_main.c + INCLUDE[asn1_encode_test]=../include + DEPEND[asn1_encode_test]=../libcrypto + # Internal test programs. These are essentially a collection of internal # test routines. Some of them need to reach internal symbols that aren't # available through the shared library (at least on Linux, Solaris, Windows diff --git a/test/recipes/60-test_x509_time.t b/test/recipes/04-test_asn1_encode.t similarity index 87% copy from test/recipes/60-test_x509_time.t copy to test/recipes/04-test_asn1_encode.t index 8b311ad..dd8121d 100644 --- a/test/recipes/60-test_x509_time.t +++ b/test/recipes/04-test_asn1_encode.t @@ -9,4 +9,4 @@ use OpenSSL::Test::Simple; -simple_test("test_x509_time", "x509_time_test"); +simple_test("test_asn1_encode", "asn1_encode_test"); diff --git a/util/libcrypto.num b/util/libcrypto.num index a43ee3a..4df5422 100644 --- a/util/libcrypto.num +++ b/util/libcrypto.num @@ -4254,3 +4254,19 @@ EVP_aria_128_ctr 4204 1_1_1 EXIST::FUNCTION:ARIA EVP_aria_192_ctr 4205 1_1_1 EXIST::FUNCTION:ARIA UI_null 4206 1_1_1 EXIST::FUNCTION:UI EC_KEY_get0_engine 4207 1_1_1 EXIST::FUNCTION:EC +INT32_it 4208 1_1_0f EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +INT32_it 4208 1_1_0f EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +UINT64_it 4209 1_1_0f EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +UINT64_it 4209 1_1_0f EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +ZINT32_it 4210 1_1_0f EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ZINT32_it 4210 1_1_0f EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +ZUINT64_it 4211 1_1_0f EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ZUINT64_it 4211 1_1_0f EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +INT64_it 4212 1_1_0f EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +INT64_it 4212 1_1_0f EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +ZUINT32_it 4213 1_1_0f EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ZUINT32_it 4213 1_1_0f EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +UINT32_it 4214 1_1_0f EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +UINT32_it 4214 1_1_0f EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +ZINT64_it 4215 1_1_0f EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ZINT64_it 4215 1_1_0f EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: diff --git a/util/mkdef.pl b/util/mkdef.pl index 6bc23b1..36b4efe 100755 --- a/util/mkdef.pl +++ b/util/mkdef.pl @@ -239,6 +239,7 @@ my $crypto ="include/openssl/crypto.h"; $crypto.=" include/internal/o_dir.h"; $crypto.=" include/internal/o_str.h"; $crypto.=" include/internal/err.h"; +$crypto.=" include/internal/asn1t.h"; $crypto.=" include/openssl/des.h" ; # unless $no_des; $crypto.=" include/openssl/idea.h" ; # unless $no_idea; $crypto.=" include/openssl/rc4.h" ; # unless $no_rc4; From levitte at openssl.org Tue Apr 4 09:35:12 2017 From: levitte at openssl.org (Richard Levitte) Date: Tue, 04 Apr 2017 09:35:12 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1491298512.199887.7672.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 4b3a20dc7e66c6c0683a7a1b6521dbc5d287ac1b (commit) via 8b6277538350008a19f8015895972a5edf13da11 (commit) via 6fb4f30611e8e5a5598234463f644cb950de760d (commit) via 93c2fb6f2706b2f2836128436f4541bd22e9ff40 (commit) via 150fe6b6ea2c67b24ec7b5d8da33a8452e4a125f (commit) from 133b9756e7357128954f28d4fcbb4db8b39d4f9a (commit) - Log ----------------------------------------------------------------- commit 4b3a20dc7e66c6c0683a7a1b6521dbc5d287ac1b Author: Richard Levitte Date: Fri Mar 31 21:31:43 2017 +0200 Fix faulty check of padding in x_long.c Bug uncovered by test [extended tests] Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3120) commit 8b6277538350008a19f8015895972a5edf13da11 Author: Matt Caswell Date: Mon Mar 27 16:11:11 2017 +0100 Fix a possible integer overflow in long_c2i Credit to OSS-Fuzz for finding this. Reviewed-by: Matt Caswell Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3120) commit 6fb4f30611e8e5a5598234463f644cb950de760d Author: Richard Levitte Date: Thu Mar 30 13:33:33 2017 +0200 Convert SSL_SESSION_ASN1 to use size specific integers This increases portability of SSL_SESSION files between architectures where the size of |long| may vary. Before this, SSL_SESSION files produced on a 64-bit long architecture may break on a 32-bit long architecture. Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3120) commit 93c2fb6f2706b2f2836128436f4541bd22e9ff40 Author: Richard Levitte Date: Thu Mar 30 13:33:20 2017 +0200 make update Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3120) commit 150fe6b6ea2c67b24ec7b5d8da33a8452e4a125f Author: Richard Levitte Date: Thu Mar 30 13:31:16 2017 +0200 Implement internal ASN.1 types INT32, UINT32, INT64, UINT64 Also Z varieties. Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3120) ----------------------------------------------------------------------- Summary of changes: crypto/asn1/a_int.c | 31 ++++++- crypto/asn1/asn1_err.c | 5 +- crypto/asn1/asn1_locl.h | 6 +- crypto/asn1/build.info | 2 +- crypto/asn1/x_int64.c | 213 +++++++++++++++++++++++++++++++++++++++++++++++ crypto/asn1/x_long.c | 11 ++- include/internal/asn1t.h | 19 +++++ include/openssl/asn1.h | 3 + ssl/ssl_asn1.c | 32 +++---- util/libcrypto.num | 16 ++++ util/mkdef.pl | 1 + 11 files changed, 317 insertions(+), 22 deletions(-) create mode 100644 crypto/asn1/x_int64.c create mode 100644 include/internal/asn1t.h diff --git a/crypto/asn1/a_int.c b/crypto/asn1/a_int.c index c40c7fa..4981ddb 100644 --- a/crypto/asn1/a_int.c +++ b/crypto/asn1/a_int.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -622,3 +622,32 @@ BIGNUM *ASN1_ENUMERATED_to_BN(const ASN1_ENUMERATED *ai, BIGNUM *bn) { return asn1_string_to_bn(ai, bn, V_ASN1_ENUMERATED); } + +/* Internal functions used by x_int64.c */ +int c2i_uint64_int(uint64_t *ret, int *neg, const unsigned char **pp, long len) +{ + unsigned char buf[sizeof(uint64_t)]; + size_t buflen; + + buflen = c2i_ibuf(NULL, NULL, *pp, len); + if (buflen == 0) + return 0; + if (buflen > sizeof(uint64_t)) { + ASN1err(ASN1_F_C2I_UINT64_INT, ASN1_R_TOO_LARGE); + return 0; + } + (void)c2i_ibuf(buf, neg, *pp, len); + return asn1_get_uint64(ret, buf, buflen); +} + +int i2c_uint64_int(unsigned char *p, uint64_t r, int neg) +{ + unsigned char buf[sizeof(uint64_t)]; + size_t buflen; + + buflen = asn1_put_uint64(buf, r); + if (p == NULL) + return i2c_ibuf(buf, buflen, neg, NULL); + return i2c_ibuf(buf, buflen, neg, &p); +} + diff --git a/crypto/asn1/asn1_err.c b/crypto/asn1/asn1_err.c index 97c3dec..dd0e99e 100644 --- a/crypto/asn1/asn1_err.c +++ b/crypto/asn1/asn1_err.c @@ -1,6 +1,6 @@ /* * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -85,6 +85,7 @@ static ERR_STRING_DATA ASN1_str_functs[] = { {ERR_FUNC(ASN1_F_C2I_ASN1_INTEGER), "c2i_ASN1_INTEGER"}, {ERR_FUNC(ASN1_F_C2I_ASN1_OBJECT), "c2i_ASN1_OBJECT"}, {ERR_FUNC(ASN1_F_C2I_IBUF), "c2i_ibuf"}, + {ERR_FUNC(ASN1_F_C2I_UINT64_INT), "c2i_uint64_int"}, {ERR_FUNC(ASN1_F_COLLECT_DATA), "collect_data"}, {ERR_FUNC(ASN1_F_D2I_ASN1_OBJECT), "d2i_ASN1_OBJECT"}, {ERR_FUNC(ASN1_F_D2I_ASN1_UINTEGER), "d2i_ASN1_UINTEGER"}, @@ -110,6 +111,8 @@ static ERR_STRING_DATA ASN1_str_functs[] = { {ERR_FUNC(ASN1_F_SMIME_READ_ASN1), "SMIME_read_ASN1"}, {ERR_FUNC(ASN1_F_SMIME_TEXT), "SMIME_text"}, {ERR_FUNC(ASN1_F_STBL_MODULE_INIT), "stbl_module_init"}, + {ERR_FUNC(ASN1_F_UINT32_C2I), "uint32_c2i"}, + {ERR_FUNC(ASN1_F_UINT64_C2I), "uint64_c2i"}, {ERR_FUNC(ASN1_F_X509_CRL_ADD0_REVOKED), "X509_CRL_add0_revoked"}, {ERR_FUNC(ASN1_F_X509_INFO_NEW), "X509_INFO_new"}, {ERR_FUNC(ASN1_F_X509_NAME_ENCODE), "x509_name_encode"}, diff --git a/crypto/asn1/asn1_locl.h b/crypto/asn1/asn1_locl.h index 5f597bd..9470c7d 100644 --- a/crypto/asn1/asn1_locl.h +++ b/crypto/asn1/asn1_locl.h @@ -1,5 +1,5 @@ /* - * Copyright 2005-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2005-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -76,3 +76,7 @@ ASN1_BIT_STRING *c2i_ASN1_BIT_STRING(ASN1_BIT_STRING **a, int i2c_ASN1_INTEGER(ASN1_INTEGER *a, unsigned char **pp); ASN1_INTEGER *c2i_ASN1_INTEGER(ASN1_INTEGER **a, const unsigned char **pp, long length); + +/* Internal functions used by x_int64.c */ +int c2i_uint64_int(uint64_t *ret, int *neg, const unsigned char **pp, long len); +int i2c_uint64_int(unsigned char *p, uint64_t r, int neg); diff --git a/crypto/asn1/build.info b/crypto/asn1/build.info index 02d1120..c1afb71 100644 --- a/crypto/asn1/build.info +++ b/crypto/asn1/build.info @@ -4,7 +4,7 @@ SOURCE[../../libcrypto]=\ a_print.c a_type.c a_dup.c a_d2i_fp.c a_i2d_fp.c \ a_utf8.c a_sign.c a_digest.c a_verify.c a_mbstr.c a_strex.c \ x_algor.c x_val.c x_sig.c x_bignum.c \ - x_long.c x_info.c x_spki.c nsseq.c \ + x_long.c x_int64.c x_info.c x_spki.c nsseq.c \ d2i_pu.c d2i_pr.c i2d_pu.c i2d_pr.c\ t_pkey.c t_spki.c t_bitst.c \ tasn_new.c tasn_fre.c tasn_enc.c tasn_dec.c tasn_utl.c tasn_typ.c \ diff --git a/crypto/asn1/x_int64.c b/crypto/asn1/x_int64.c new file mode 100644 index 0000000..d180a3b --- /dev/null +++ b/crypto/asn1/x_int64.c @@ -0,0 +1,213 @@ +/* + * Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +#include +#include "internal/cryptlib.h" +#include "internal/asn1t.h" +#include "internal/numbers.h" +#include +#include "asn1_locl.h" + +/* + * Custom primitive types for handling int32_t, int64_t, uint32_t, uint64_t. + * This converts between an ASN1_INTEGER and those types directly. + * This is preferred to using the LONG / ZLONG primitives. + */ + +/* + * We abuse the ASN1_ITEM fields |size| as a flags field + */ +#define INTxx_FLAG_ZERO_DEFAULT (1<<0) +#define INTxx_FLAG_SIGNED (1<<1) + +static int uint64_new(ASN1_VALUE **pval, const ASN1_ITEM *it) +{ + *(uint64_t *)pval = 0; + return 1; +} + +static void uint64_free(ASN1_VALUE **pval, const ASN1_ITEM *it) +{ + *(uint64_t *)pval = 0; +} + +static int uint64_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, + const ASN1_ITEM *it) +{ + uint64_t utmp; + int neg = 0; + /* this exists to bypass broken gcc optimization */ + char *cp = (char *)pval; + + /* use memcpy, because we may not be uint64_t aligned */ + memcpy(&utmp, cp, sizeof(utmp)); + + if ((it->size & INTxx_FLAG_ZERO_DEFAULT) == INTxx_FLAG_ZERO_DEFAULT + && utmp == 0) + return -1; + if ((it->size & INTxx_FLAG_SIGNED) == INTxx_FLAG_SIGNED + && (int64_t)utmp < 0) + neg = 1; + + return i2c_uint64_int(cont, utmp, neg); +} + +static int uint64_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, + int utype, char *free_cont, const ASN1_ITEM *it) +{ + uint64_t utmp = 0; + char *cp = (char *)pval; + int neg = 0; + + if (!c2i_uint64_int(&utmp, &neg, &cont, len)) + return 0; + if ((it->size & INTxx_FLAG_SIGNED) == 0 && neg) { + ASN1err(ASN1_F_UINT64_C2I, ASN1_R_ILLEGAL_NEGATIVE_VALUE); + return 0; + } + memcpy(cp, &utmp, sizeof(utmp)); + return 1; +} + +static int uint64_print(BIO *out, ASN1_VALUE **pval, const ASN1_ITEM *it, + int indent, const ASN1_PCTX *pctx) +{ + if ((it->size & INTxx_FLAG_SIGNED) == INTxx_FLAG_SIGNED) + return BIO_printf(out, "%jd\n", *(int64_t *)pval); + return BIO_printf(out, "%ju\n", *(uint64_t *)pval); +} + +/* 32-bit variants */ + +static int uint32_new(ASN1_VALUE **pval, const ASN1_ITEM *it) +{ + *(uint32_t *)pval = 0; + return 1; +} + +static void uint32_free(ASN1_VALUE **pval, const ASN1_ITEM *it) +{ + *(uint32_t *)pval = 0; +} + +static int uint32_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, + const ASN1_ITEM *it) +{ + uint32_t utmp; + int neg = 0; + /* this exists to bypass broken gcc optimization */ + char *cp = (char *)pval; + + /* use memcpy, because we may not be uint32_t aligned */ + memcpy(&utmp, cp, sizeof(utmp)); + + if ((it->size & INTxx_FLAG_ZERO_DEFAULT) == INTxx_FLAG_ZERO_DEFAULT + && utmp == 0) + return -1; + if ((it->size & INTxx_FLAG_SIGNED) == INTxx_FLAG_SIGNED + && (int32_t)utmp < 0) + neg = 1; + + return i2c_uint64_int(cont, (uint64_t)utmp, neg); +} + +static int uint32_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, + int utype, char *free_cont, const ASN1_ITEM *it) +{ + uint64_t utmp = 0; + uint32_t utmp2 = 0; + char *cp = (char *)pval; + int neg = 0; + + if (!c2i_uint64_int(&utmp, &neg, &cont, len)) + return 0; + if ((it->size & INTxx_FLAG_SIGNED) == 0 && neg) { + ASN1err(ASN1_F_UINT32_C2I, ASN1_R_ILLEGAL_NEGATIVE_VALUE); + return 0; + } + utmp2 = (uint32_t)utmp; + if (utmp != utmp2 + || ((it->size & INTxx_FLAG_SIGNED) == INTxx_FLAG_SIGNED + && !neg && utmp2 > INT32_MAX)) { + ASN1err(ASN1_F_UINT32_C2I, ASN1_R_TOO_LARGE); + return 0; + } + memcpy(cp, &utmp2, sizeof(utmp2)); + return 1; +} + +static int uint32_print(BIO *out, ASN1_VALUE **pval, const ASN1_ITEM *it, + int indent, const ASN1_PCTX *pctx) +{ + if ((it->size & INTxx_FLAG_SIGNED) == INTxx_FLAG_SIGNED) + return BIO_printf(out, "%d\n", *(int32_t *)pval); + return BIO_printf(out, "%u\n", *(uint32_t *)pval); +} + + +/* Define the primitives themselves */ + +static ASN1_PRIMITIVE_FUNCS uint32_pf = { + NULL, 0, + uint32_new, + uint32_free, + uint32_free, /* Clear should set to initial value */ + uint32_c2i, + uint32_i2c, + uint32_print +}; + +static ASN1_PRIMITIVE_FUNCS uint64_pf = { + NULL, 0, + uint64_new, + uint64_free, + uint64_free, /* Clear should set to initial value */ + uint64_c2i, + uint64_i2c, + uint64_print +}; + +ASN1_ITEM_start(INT32) + ASN1_ITYPE_PRIMITIVE, V_ASN1_INTEGER, NULL, 0, &uint32_pf, + INTxx_FLAG_SIGNED, "INT32" +ASN1_ITEM_end(INT32) + +ASN1_ITEM_start(UINT32) + ASN1_ITYPE_PRIMITIVE, V_ASN1_INTEGER, NULL, 0, &uint32_pf, 0, "UINT32" +ASN1_ITEM_end(UINT32) + +ASN1_ITEM_start(INT64) + ASN1_ITYPE_PRIMITIVE, V_ASN1_INTEGER, NULL, 0, &uint64_pf, + INTxx_FLAG_SIGNED, "INT64" +ASN1_ITEM_end(INT64) + +ASN1_ITEM_start(UINT64) + ASN1_ITYPE_PRIMITIVE, V_ASN1_INTEGER, NULL, 0, &uint64_pf, 0, "UINT64" +ASN1_ITEM_end(UINT64) + +ASN1_ITEM_start(ZINT32) + ASN1_ITYPE_PRIMITIVE, V_ASN1_INTEGER, NULL, 0, &uint32_pf, + INTxx_FLAG_ZERO_DEFAULT|INTxx_FLAG_SIGNED, "ZINT32" +ASN1_ITEM_end(ZINT32) + +ASN1_ITEM_start(ZUINT32) + ASN1_ITYPE_PRIMITIVE, V_ASN1_INTEGER, NULL, 0, &uint32_pf, + INTxx_FLAG_ZERO_DEFAULT, "ZUINT32" +ASN1_ITEM_end(ZUINT32) + +ASN1_ITEM_start(ZINT64) + ASN1_ITYPE_PRIMITIVE, V_ASN1_INTEGER, NULL, 0, &uint64_pf, + INTxx_FLAG_ZERO_DEFAULT|INTxx_FLAG_SIGNED, "ZINT64" +ASN1_ITEM_end(ZINT64) + +ASN1_ITEM_start(ZUINT64) + ASN1_ITYPE_PRIMITIVE, V_ASN1_INTEGER, NULL, 0, &uint64_pf, + INTxx_FLAG_ZERO_DEFAULT, "ZUINT64" +ASN1_ITEM_end(ZUINT64) + diff --git a/crypto/asn1/x_long.c b/crypto/asn1/x_long.c index 233725f..a7b9023 100644 --- a/crypto/asn1/x_long.c +++ b/crypto/asn1/x_long.c @@ -110,7 +110,7 @@ static int long_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, unsigned long utmp = 0; char *cp = (char *)pval; - if (len) { + if (len > 1) { /* * Check possible pad byte. Worst case, we're skipping past actual * content, but since that's only with 0x00 and 0xff and we set neg @@ -120,7 +120,7 @@ static int long_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, case 0xff: cont++; len--; - neg = 1; + neg = 0x80; break; case 0: cont++; @@ -139,6 +139,9 @@ static int long_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, neg = 1; else neg = 0; + } else if (neg == (cont[0] & 0x80)) { + ASN1err(ASN1_F_LONG_C2I, ASN1_R_ILLEGAL_PADDING); + return 0; } utmp = 0; for (i = 0; i < len; i++) { @@ -149,6 +152,10 @@ static int long_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, utmp |= cont[i]; } ltmp = (long)utmp; + if (ltmp < 0) { + ASN1err(ASN1_F_LONG_C2I, ASN1_R_INTEGER_TOO_LARGE_FOR_LONG); + return 0; + } if (neg) { ltmp = -ltmp; ltmp--; diff --git a/include/internal/asn1t.h b/include/internal/asn1t.h new file mode 100644 index 0000000..32d637d --- /dev/null +++ b/include/internal/asn1t.h @@ -0,0 +1,19 @@ +/* + * Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +#include + +DECLARE_ASN1_ITEM(INT32) +DECLARE_ASN1_ITEM(ZINT32) +DECLARE_ASN1_ITEM(UINT32) +DECLARE_ASN1_ITEM(ZUINT32) +DECLARE_ASN1_ITEM(INT64) +DECLARE_ASN1_ITEM(ZINT64) +DECLARE_ASN1_ITEM(UINT64) +DECLARE_ASN1_ITEM(ZUINT64) diff --git a/include/openssl/asn1.h b/include/openssl/asn1.h index 7cf6116..df764c5 100644 --- a/include/openssl/asn1.h +++ b/include/openssl/asn1.h @@ -946,6 +946,7 @@ int ERR_load_ASN1_strings(void); # define ASN1_F_C2I_ASN1_INTEGER 194 # define ASN1_F_C2I_ASN1_OBJECT 196 # define ASN1_F_C2I_IBUF 226 +# define ASN1_F_C2I_UINT64_INT 101 # define ASN1_F_COLLECT_DATA 140 # define ASN1_F_D2I_ASN1_OBJECT 147 # define ASN1_F_D2I_ASN1_UINTEGER 150 @@ -971,6 +972,8 @@ int ERR_load_ASN1_strings(void); # define ASN1_F_SMIME_READ_ASN1 212 # define ASN1_F_SMIME_TEXT 213 # define ASN1_F_STBL_MODULE_INIT 223 +# define ASN1_F_UINT32_C2I 105 +# define ASN1_F_UINT64_C2I 112 # define ASN1_F_X509_CRL_ADD0_REVOKED 169 # define ASN1_F_X509_INFO_NEW 170 # define ASN1_F_X509_NAME_ENCODE 203 diff --git a/ssl/ssl_asn1.c b/ssl/ssl_asn1.c index 8f55d8f..39fe4e1 100644 --- a/ssl/ssl_asn1.c +++ b/ssl/ssl_asn1.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -37,24 +37,24 @@ #include #include #include "ssl_locl.h" -#include +#include "internal/asn1t.h" #include typedef struct { - long version; - long ssl_version; + uint32_t version; + int32_t ssl_version; ASN1_OCTET_STRING *cipher; ASN1_OCTET_STRING *comp_id; ASN1_OCTET_STRING *master_key; ASN1_OCTET_STRING *session_id; ASN1_OCTET_STRING *key_arg; - long time; - long timeout; + int64_t time; + int64_t timeout; X509 *peer; ASN1_OCTET_STRING *session_id_context; - long verify_result; + int32_t verify_result; ASN1_OCTET_STRING *tlsext_hostname; - long tlsext_tick_lifetime_hint; + int64_t tlsext_tick_lifetime_hint; ASN1_OCTET_STRING *tlsext_tick; #ifndef OPENSSL_NO_PSK ASN1_OCTET_STRING *psk_identity_hint; @@ -63,33 +63,33 @@ typedef struct { #ifndef OPENSSL_NO_SRP ASN1_OCTET_STRING *srp_username; #endif - long flags; + uint64_t flags; } SSL_SESSION_ASN1; ASN1_SEQUENCE(SSL_SESSION_ASN1) = { - ASN1_SIMPLE(SSL_SESSION_ASN1, version, LONG), - ASN1_SIMPLE(SSL_SESSION_ASN1, ssl_version, LONG), + ASN1_SIMPLE(SSL_SESSION_ASN1, version, UINT32), + ASN1_SIMPLE(SSL_SESSION_ASN1, ssl_version, INT32), ASN1_SIMPLE(SSL_SESSION_ASN1, cipher, ASN1_OCTET_STRING), ASN1_SIMPLE(SSL_SESSION_ASN1, session_id, ASN1_OCTET_STRING), ASN1_SIMPLE(SSL_SESSION_ASN1, master_key, ASN1_OCTET_STRING), ASN1_IMP_OPT(SSL_SESSION_ASN1, key_arg, ASN1_OCTET_STRING, 0), - ASN1_EXP_OPT(SSL_SESSION_ASN1, time, ZLONG, 1), - ASN1_EXP_OPT(SSL_SESSION_ASN1, timeout, ZLONG, 2), + ASN1_EXP_OPT(SSL_SESSION_ASN1, time, ZINT64, 1), + ASN1_EXP_OPT(SSL_SESSION_ASN1, timeout, ZINT64, 2), ASN1_EXP_OPT(SSL_SESSION_ASN1, peer, X509, 3), ASN1_EXP_OPT(SSL_SESSION_ASN1, session_id_context, ASN1_OCTET_STRING, 4), - ASN1_EXP_OPT(SSL_SESSION_ASN1, verify_result, ZLONG, 5), + ASN1_EXP_OPT(SSL_SESSION_ASN1, verify_result, ZINT32, 5), ASN1_EXP_OPT(SSL_SESSION_ASN1, tlsext_hostname, ASN1_OCTET_STRING, 6), #ifndef OPENSSL_NO_PSK ASN1_EXP_OPT(SSL_SESSION_ASN1, psk_identity_hint, ASN1_OCTET_STRING, 7), ASN1_EXP_OPT(SSL_SESSION_ASN1, psk_identity, ASN1_OCTET_STRING, 8), #endif - ASN1_EXP_OPT(SSL_SESSION_ASN1, tlsext_tick_lifetime_hint, ZLONG, 9), + ASN1_EXP_OPT(SSL_SESSION_ASN1, tlsext_tick_lifetime_hint, ZUINT64, 9), ASN1_EXP_OPT(SSL_SESSION_ASN1, tlsext_tick, ASN1_OCTET_STRING, 10), ASN1_EXP_OPT(SSL_SESSION_ASN1, comp_id, ASN1_OCTET_STRING, 11), #ifndef OPENSSL_NO_SRP ASN1_EXP_OPT(SSL_SESSION_ASN1, srp_username, ASN1_OCTET_STRING, 12), #endif - ASN1_EXP_OPT(SSL_SESSION_ASN1, flags, ZLONG, 13) + ASN1_EXP_OPT(SSL_SESSION_ASN1, flags, ZUINT64, 13) } static_ASN1_SEQUENCE_END(SSL_SESSION_ASN1) IMPLEMENT_STATIC_ASN1_ENCODE_FUNCTIONS(SSL_SESSION_ASN1) diff --git a/util/libcrypto.num b/util/libcrypto.num index b84d961..814926f 100644 --- a/util/libcrypto.num +++ b/util/libcrypto.num @@ -4214,3 +4214,19 @@ X509_VERIFY_PARAM_set_inh_flags 4174 1_1_0d EXIST::FUNCTION: X509_VERIFY_PARAM_get_inh_flags 4175 1_1_0d EXIST::FUNCTION: X509_VERIFY_PARAM_get_time 4181 1_1_0d EXIST::FUNCTION: DH_check_params 4183 1_1_0d EXIST::FUNCTION:DH +INT32_it 4208 1_1_0f EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +INT32_it 4208 1_1_0f EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +UINT64_it 4209 1_1_0f EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +UINT64_it 4209 1_1_0f EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +ZINT32_it 4210 1_1_0f EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ZINT32_it 4210 1_1_0f EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +ZUINT64_it 4211 1_1_0f EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ZUINT64_it 4211 1_1_0f EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +INT64_it 4212 1_1_0f EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +INT64_it 4212 1_1_0f EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +ZUINT32_it 4213 1_1_0f EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ZUINT32_it 4213 1_1_0f EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +UINT32_it 4214 1_1_0f EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +UINT32_it 4214 1_1_0f EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +ZINT64_it 4215 1_1_0f EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ZINT64_it 4215 1_1_0f EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: diff --git a/util/mkdef.pl b/util/mkdef.pl index aebea30..f54d7d4 100755 --- a/util/mkdef.pl +++ b/util/mkdef.pl @@ -238,6 +238,7 @@ my $crypto ="include/openssl/crypto.h"; $crypto.=" include/internal/o_dir.h"; $crypto.=" include/internal/o_str.h"; $crypto.=" include/internal/err.h"; +$crypto.=" include/internal/asn1t.h"; $crypto.=" include/openssl/des.h" ; # unless $no_des; $crypto.=" include/openssl/idea.h" ; # unless $no_idea; $crypto.=" include/openssl/rc4.h" ; # unless $no_rc4; From builds at travis-ci.org Tue Apr 4 10:02:08 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 04 Apr 2017 10:02:08 +0000 Subject: [openssl-commits] Broken: openssl/openssl#9959 (OpenSSL_1_1_0-stable - 4b3a20d) In-Reply-To: Message-ID: <58e36f1fd7963_43faa564c567c340954@cfeb61e2-94a8-4345-bcc9-b3341690d8f5.mail> Build Update for openssl/openssl ------------------------------------- Build: #9959 Status: Broken Duration: 19 minutes and 17 seconds Commit: 4b3a20d (OpenSSL_1_1_0-stable) Author: Richard Levitte Message: Fix faulty check of padding in x_long.c Bug uncovered by test [extended tests] Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3120) View the changeset: https://github.com/openssl/openssl/compare/133b9756e735...4b3a20dc7e66 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/218391928 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From rsalz at openssl.org Tue Apr 4 14:52:34 2017 From: rsalz at openssl.org (Rich Salz) Date: Tue, 04 Apr 2017 14:52:34 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491317554.025278.14828.nullmailer@dev.openssl.org> The branch master has been updated via b98530d6e09f4cb34c791b8840e936c1fc1467cf (commit) from 79b3452faf04f2572f57eb37b618cc603d9983da (commit) - Log ----------------------------------------------------------------- commit b98530d6e09f4cb34c791b8840e936c1fc1467cf Author: Gergely Nagy Date: Thu Oct 13 18:50:31 2016 +0200 PBKDF2 computation speedup (15-40%) This commit contains some optimizations in PKCS5_PBKDF2_HMAC() and HMAC_CTX_copy() functions which together makes PBKDF2 computations faster by 15-40% according to my measurements made on x64 Linux with both asm optimized and no-asm versions of SHA1, SHA256 and SHA512. Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/1708) ----------------------------------------------------------------------- Summary of changes: crypto/evp/p5_crpt2.c | 2 -- crypto/hmac/hmac.c | 23 ++++++++++++++--------- 2 files changed, 14 insertions(+), 11 deletions(-) diff --git a/crypto/evp/p5_crpt2.c b/crypto/evp/p5_crpt2.c index c7b08e1..b9ea1a7 100644 --- a/crypto/evp/p5_crpt2.c +++ b/crypto/evp/p5_crpt2.c @@ -88,7 +88,6 @@ int PKCS5_PBKDF2_HMAC(const char *pass, int passlen, HMAC_CTX_free(hctx_tpl); return 0; } - HMAC_CTX_reset(hctx); memcpy(p, digtmp, cplen); for (j = 1; j < iter; j++) { if (!HMAC_CTX_copy(hctx, hctx_tpl)) { @@ -102,7 +101,6 @@ int PKCS5_PBKDF2_HMAC(const char *pass, int passlen, HMAC_CTX_free(hctx_tpl); return 0; } - HMAC_CTX_reset(hctx); for (k = 0; k < cplen; k++) p[k] ^= digtmp[k]; } diff --git a/crypto/hmac/hmac.c b/crypto/hmac/hmac.c index ffca891..3952dd5 100644 --- a/crypto/hmac/hmac.c +++ b/crypto/hmac/hmac.c @@ -157,31 +157,36 @@ void HMAC_CTX_free(HMAC_CTX *ctx) } } -int HMAC_CTX_reset(HMAC_CTX *ctx) +static int hmac_ctx_alloc_mds(HMAC_CTX *ctx) { - hmac_ctx_cleanup(ctx); if (ctx->i_ctx == NULL) ctx->i_ctx = EVP_MD_CTX_new(); if (ctx->i_ctx == NULL) - goto err; + return 0; if (ctx->o_ctx == NULL) ctx->o_ctx = EVP_MD_CTX_new(); if (ctx->o_ctx == NULL) - goto err; + return 0; if (ctx->md_ctx == NULL) ctx->md_ctx = EVP_MD_CTX_new(); if (ctx->md_ctx == NULL) - goto err; - ctx->md = NULL; + return 0; return 1; - err: +} + +int HMAC_CTX_reset(HMAC_CTX *ctx) +{ hmac_ctx_cleanup(ctx); - return 0; + if (!hmac_ctx_alloc_mds(ctx)) { + hmac_ctx_cleanup(ctx); + return 0; + } + return 1; } int HMAC_CTX_copy(HMAC_CTX *dctx, HMAC_CTX *sctx) { - if (!HMAC_CTX_reset(dctx)) + if (!hmac_ctx_alloc_mds(dctx)) goto err; if (!EVP_MD_CTX_copy_ex(dctx->i_ctx, sctx->i_ctx)) goto err; From appro at openssl.org Tue Apr 4 21:11:26 2017 From: appro at openssl.org (Andy Polyakov) Date: Tue, 04 Apr 2017 21:11:26 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_0_2-stable update Message-ID: <1491340286.462101.27740.nullmailer@dev.openssl.org> The branch OpenSSL_1_0_2-stable has been updated via a91bfe2f55892f625d5a30171efa0fdfd2814abe (commit) from 3f524f77bc2de6deba582997a72200a41aef9fcf (commit) - Log ----------------------------------------------------------------- commit a91bfe2f55892f625d5a30171efa0fdfd2814abe Author: Andy Polyakov Date: Sun Apr 2 22:00:15 2017 +0200 crypto/ppccap.c: SIGILL-free processor capabilities detection on MacOS X. It seems to be problematic to probe processor capabilities with SIGILL on MacOS X. The problem should be limited to cases when application code is debugged, but crashes were reported even during normal execution... [backport of 0bd93bbe4ae60e5f318b298bfe617e468a7b71d0] Reviewed-by: Rich Salz ----------------------------------------------------------------------- Summary of changes: crypto/ppccap.c | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/crypto/ppccap.c b/crypto/ppccap.c index 74af473..60566b1 100644 --- a/crypto/ppccap.c +++ b/crypto/ppccap.c @@ -7,6 +7,10 @@ #if defined(__linux) || defined(_AIX) # include #endif +#if defined(__APPLE__) && defined(__MACH__) +# include +# include +#endif #include #include @@ -123,6 +127,26 @@ void OPENSSL_cpuid_setup(void) } #endif +#if defined(__APPLE__) && defined(__MACH__) + { + int val; + size_t len = sizeof(val); + + if (sysctlbyname("hw.optional.64bitops", &val, &len, NULL, 0) == 0) { + if (val) + OPENSSL_ppccap_P |= PPC_FPU64; + } + + len = sizeof(val); + if (sysctlbyname("hw.optional.altivec", &val, &len, NULL, 0) == 0) { + if (val) + OPENSSL_ppccap_P |= PPC_ALTIVEC; + } + + return; + } +#endif + memset(&ill_act, 0, sizeof(ill_act)); ill_act.sa_handler = ill_handler; ill_act.sa_mask = all_masked; From appro at openssl.org Tue Apr 4 21:14:06 2017 From: appro at openssl.org (Andy Polyakov) Date: Tue, 04 Apr 2017 21:14:06 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491340446.682935.29281.nullmailer@dev.openssl.org> The branch master has been updated via b7438b430bf0787165ad36105913b342c3974607 (commit) from b98530d6e09f4cb34c791b8840e936c1fc1467cf (commit) - Log ----------------------------------------------------------------- commit b7438b430bf0787165ad36105913b342c3974607 Author: Andy Polyakov Date: Mon Apr 3 22:31:05 2017 +0200 Configure: recognize -framework as linker option [on Apple OSes]. This is handy for internal iOS tests, when you have to make it work in sandbox. Reviewed-by: Richard Levitte ----------------------------------------------------------------------- Summary of changes: Configure | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Configure b/Configure index 617ee52..66541be 100755 --- a/Configure +++ b/Configure @@ -743,6 +743,10 @@ while (@argvcopy) { $libs.=$_." "; } + elsif (/^-framework$/) + { + $libs.=$_." ".shift(@argvcopy)." "; + } elsif (/^-rpath$/ or /^-R$/) # -rpath is the OSF1 rpath flag # -R is the old Solaris rpath flag From appro at openssl.org Tue Apr 4 21:17:28 2017 From: appro at openssl.org (Andy Polyakov) Date: Tue, 04 Apr 2017 21:17:28 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491340648.024018.31270.nullmailer@dev.openssl.org> The branch master has been updated via 1bc563caa144a568fc505f210568f5ac5b66315e (commit) from b7438b430bf0787165ad36105913b342c3974607 (commit) - Log ----------------------------------------------------------------- commit 1bc563caa144a568fc505f210568f5ac5b66315e Author: Andy Polyakov Date: Mon Apr 3 23:41:19 2017 +0200 Configurations/README: reword bn_ops description. Fixes GH#3116. Reviewed-by: Richard Levitte ----------------------------------------------------------------------- Summary of changes: Configurations/README | 52 +++++++++++++++++++++++++++------------------------ 1 file changed, 28 insertions(+), 24 deletions(-) diff --git a/Configurations/README b/Configurations/README index 2958461..92ff1ac 100644 --- a/Configurations/README +++ b/Configurations/README @@ -136,34 +136,38 @@ In each table entry, the following keys are significant: to have the different variants in different directories. - bn_ops => Building options (was just bignum options - in the earlier history of this option, - hence the name). This a string of words - that describe properties on the designated - target platform, such as the type of - integers used to build up the bitnum, - different ways to implement certain ciphers - and so on. To fully comprehend the + bn_ops => Building options (was just bignum options in + the earlier history of this option, hence the + name). This is a string of words that describe + algorithms' implementation parameters that + are optimal for the designated target platform, + such as the type of integers used to build up + the bignum, different ways to implement certain + ciphers and so on. To fully comprehend the meaning, the best is to read the affected source. The valid words are: - BN_LLONG use 'unsigned long long' in - some bignum calculations. - This has no value when - SIXTY_FOUR_BIT or - SIXTY_FOUR_BIT_LONG is given. - RC4_CHAR makes the basic RC4 unit of - calculation an unsigned char. - SIXTY_FOUR_BIT processor registers - are 64 bits, long is - 32 bits, long long is - 64 bits. - SIXTY_FOUR_BIT_LONG processor registers - are 64 bits, long is - 64 bits. - THIRTY_TWO_BIT processor registers - are 32 bits. + THIRTY_TWO_BIT bignum limbs are 32 bits, + this is default if no + option is specified, it + works on any supported + system [unless "wider" + limb size is implied in + assembly code]; + BN_LLONG bignum limbs are 32 bits, + but 64-bit 'unsigned long + long' is used internally + in calculations; + SIXTY_FOUR_BIT_LONG bignum limbs are 64 bits + and sizeof(long) is 8; + SIXTY_FOUR_BIT bignums limbs are 64 bits, + but execution environment + is ILP32; + RC4_CHAR RC4 key schedule is made + up of 'unsigned char's; + RC4_INT RC4 key schedule is made + up of 'unsigned int's; EXPORT_VAR_AS_FN for shared libraries, export vars as accessor functions. From appro at openssl.org Tue Apr 4 21:19:01 2017 From: appro at openssl.org (Andy Polyakov) Date: Tue, 04 Apr 2017 21:19:01 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1491340741.493125.32614.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 7efa321c57b74fdcc402ac72b3bb3f912e9df7ab (commit) from 4b3a20dc7e66c6c0683a7a1b6521dbc5d287ac1b (commit) - Log ----------------------------------------------------------------- commit 7efa321c57b74fdcc402ac72b3bb3f912e9df7ab Author: Andy Polyakov Date: Mon Apr 3 23:41:19 2017 +0200 Configurations/README: reword bn_ops description. Fixes GH#3116. Reviewed-by: Richard Levitte (cherry picked from commit 1bc563caa144a568fc505f210568f5ac5b66315e) ----------------------------------------------------------------------- Summary of changes: Configurations/README | 52 +++++++++++++++++++++++++++------------------------ 1 file changed, 28 insertions(+), 24 deletions(-) diff --git a/Configurations/README b/Configurations/README index 428ac31..47971c2 100644 --- a/Configurations/README +++ b/Configurations/README @@ -128,34 +128,38 @@ In each table entry, the following keys are significant: to have the different variants in different directories. - bn_ops => Building options (was just bignum options - in the earlier history of this option, - hence the name). This a string of words - that describe properties on the designated - target platform, such as the type of - integers used to build up the bitnum, - different ways to implement certain ciphers - and so on. To fully comprehend the + bn_ops => Building options (was just bignum options in + the earlier history of this option, hence the + name). This is a string of words that describe + algorithms' implementation parameters that + are optimal for the designated target platform, + such as the type of integers used to build up + the bignum, different ways to implement certain + ciphers and so on. To fully comprehend the meaning, the best is to read the affected source. The valid words are: - BN_LLONG use 'unsigned long long' in - some bignum calculations. - This has no value when - SIXTY_FOUR_BIT or - SIXTY_FOUR_BIT_LONG is given. - RC4_CHAR makes the basic RC4 unit of - calculation an unsigned char. - SIXTY_FOUR_BIT processor registers - are 64 bits, long is - 32 bits, long long is - 64 bits. - SIXTY_FOUR_BIT_LONG processor registers - are 64 bits, long is - 64 bits. - THIRTY_TWO_BIT processor registers - are 32 bits. + THIRTY_TWO_BIT bignum limbs are 32 bits, + this is default if no + option is specified, it + works on any supported + system [unless "wider" + limb size is implied in + assembly code]; + BN_LLONG bignum limbs are 32 bits, + but 64-bit 'unsigned long + long' is used internally + in calculations; + SIXTY_FOUR_BIT_LONG bignum limbs are 64 bits + and sizeof(long) is 8; + SIXTY_FOUR_BIT bignums limbs are 64 bits, + but execution environment + is ILP32; + RC4_CHAR RC4 key schedule is made + up of 'unsigned char's; + RC4_INT RC4 key schedule is made + up of 'unsigned int's; EXPORT_VAR_AS_FN for shared libraries, export vars as accessor functions. From builds at travis-ci.org Tue Apr 4 21:50:27 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 04 Apr 2017 21:50:27 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#9971 (OpenSSL_1_1_0-stable - 7efa321) In-Reply-To: Message-ID: <58e415238fa0c_43faa564c567c12151b7@cfeb61e2-94a8-4345-bcc9-b3341690d8f5.mail> Build Update for openssl/openssl ------------------------------------- Build: #9971 Status: Still Failing Duration: 15 minutes and 6 seconds Commit: 7efa321 (OpenSSL_1_1_0-stable) Author: Andy Polyakov Message: Configurations/README: reword bn_ops description. Fixes GH#3116. Reviewed-by: Richard Levitte (cherry picked from commit 1bc563caa144a568fc505f210568f5ac5b66315e) View the changeset: https://github.com/openssl/openssl/compare/4b3a20dc7e66...7efa321c57b7 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/218637867 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From levitte at openssl.org Wed Apr 5 13:14:39 2017 From: levitte at openssl.org (Richard Levitte) Date: Wed, 05 Apr 2017 13:14:39 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491398079.902578.25999.nullmailer@dev.openssl.org> The branch master has been updated via 5748e4dc3ab1cdde43ae6feecb106e3a41adcdf4 (commit) from 1bc563caa144a568fc505f210568f5ac5b66315e (commit) - Log ----------------------------------------------------------------- commit 5748e4dc3ab1cdde43ae6feecb106e3a41adcdf4 Author: Richard Levitte Date: Wed Apr 5 13:37:37 2017 +0200 Fix test/asn1_encode_test.c, ASN1_LONG_DATA used inappropriately It's sheer luck that this was used for the first field only which also has the same type in all data structures, so the offsets were never wrong Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3127) ----------------------------------------------------------------------- Summary of changes: test/asn1_encode_test.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/test/asn1_encode_test.c b/test/asn1_encode_test.c index dabb82c..02455fc 100644 --- a/test/asn1_encode_test.c +++ b/test/asn1_encode_test.c @@ -265,7 +265,7 @@ typedef struct { } ASN1_INT32_DATA; ASN1_SEQUENCE(ASN1_INT32_DATA) = { - ASN1_SIMPLE(ASN1_LONG_DATA, success, ASN1_FBOOLEAN), + ASN1_SIMPLE(ASN1_INT32_DATA, success, ASN1_FBOOLEAN), ASN1_SIMPLE(ASN1_INT32_DATA, test_int32, INT32), ASN1_EXP_OPT(ASN1_INT32_DATA, test_zint32, ZINT32, 0) } static_ASN1_SEQUENCE_END(ASN1_INT32_DATA) @@ -311,7 +311,7 @@ typedef struct { } ASN1_UINT32_DATA; ASN1_SEQUENCE(ASN1_UINT32_DATA) = { - ASN1_SIMPLE(ASN1_LONG_DATA, success, ASN1_FBOOLEAN), + ASN1_SIMPLE(ASN1_UINT32_DATA, success, ASN1_FBOOLEAN), ASN1_SIMPLE(ASN1_UINT32_DATA, test_uint32, UINT32), ASN1_EXP_OPT(ASN1_UINT32_DATA, test_zuint32, ZUINT32, 0) } static_ASN1_SEQUENCE_END(ASN1_UINT32_DATA) @@ -357,7 +357,7 @@ typedef struct { } ASN1_INT64_DATA; ASN1_SEQUENCE(ASN1_INT64_DATA) = { - ASN1_SIMPLE(ASN1_LONG_DATA, success, ASN1_FBOOLEAN), + ASN1_SIMPLE(ASN1_INT64_DATA, success, ASN1_FBOOLEAN), ASN1_SIMPLE(ASN1_INT64_DATA, test_int64, INT64), ASN1_EXP_OPT(ASN1_INT64_DATA, test_zint64, ZINT64, 0) } static_ASN1_SEQUENCE_END(ASN1_INT64_DATA) @@ -404,7 +404,7 @@ typedef struct { } ASN1_UINT64_DATA; ASN1_SEQUENCE(ASN1_UINT64_DATA) = { - ASN1_SIMPLE(ASN1_LONG_DATA, success, ASN1_FBOOLEAN), + ASN1_SIMPLE(ASN1_UINT64_DATA, success, ASN1_FBOOLEAN), ASN1_SIMPLE(ASN1_UINT64_DATA, test_uint64, UINT64), ASN1_EXP_OPT(ASN1_UINT64_DATA, test_zuint64, ZUINT64, 0) } static_ASN1_SEQUENCE_END(ASN1_UINT64_DATA) From rsalz at openssl.org Wed Apr 5 17:54:55 2017 From: rsalz at openssl.org (Rich Salz) Date: Wed, 05 Apr 2017 17:54:55 +0000 Subject: [openssl-commits] [web] master update Message-ID: <1491414895.330404.6100.nullmailer@dev.openssl.org> The branch master has been updated via 72795fc7d7ca13604d6aeff4161d247cfa9fa09e (commit) from dbe340d1dc40b4beff3e10af65faad83504ccb96 (commit) - Log ----------------------------------------------------------------- commit 72795fc7d7ca13604d6aeff4161d247cfa9fa09e Author: Rich Salz Date: Wed Apr 5 13:54:43 2017 -0400 Update manpage-skip ----------------------------------------------------------------------- Summary of changes: bin/mk-sitemap | 4 ++-- docs/man1.0.1/apps/index.html | 45 ----------------------------------------- docs/man1.0.1/crypto/index.html | 44 ---------------------------------------- docs/man1.0.1/index.html | 39 ----------------------------------- docs/man1.0.1/ssl/index.html | 45 ----------------------------------------- 5 files changed, 2 insertions(+), 175 deletions(-) delete mode 100644 docs/man1.0.1/apps/index.html delete mode 100644 docs/man1.0.1/crypto/index.html delete mode 100644 docs/man1.0.1/index.html delete mode 100644 docs/man1.0.1/ssl/index.html diff --git a/bin/mk-sitemap b/bin/mk-sitemap index b362ff1..fdfd1b2 100755 --- a/bin/mk-sitemap +++ b/bin/mk-sitemap @@ -29,11 +29,11 @@ dodir() foreach my $entry ( @dirs) { $entry =~ s@^\.\/@@; next if $entry =~ m/.git|inc|img|bin|blog/; - next if $entry =~ m/secadv/; my $simple = $entry; $simple =~ s at .*/@@; print "\n", "\t" x $level, $simple, "/\n"; - next if $entry =~ m/man0.9.8|man1.0..|manmaster/; + next if $entry =~ m/secadv/; + next if $entry =~ m/man1.0.2|man1.1.0|manmaster/; &dodir($entry, $level + 1); } } diff --git a/docs/man1.0.1/apps/index.html b/docs/man1.0.1/apps/index.html deleted file mode 100644 index 28c3059..0000000 --- a/docs/man1.0.1/apps/index.html +++ /dev/null @@ -1,45 +0,0 @@ - - - - - -
-
-
- -
- -
-
- - - - diff --git a/docs/man1.0.1/crypto/index.html b/docs/man1.0.1/crypto/index.html deleted file mode 100644 index d7c0478..0000000 --- a/docs/man1.0.1/crypto/index.html +++ /dev/null @@ -1,44 +0,0 @@ - - - - - -
-
-
-
-

crypto library

-
-

- The crypto manpage provides a - general overview of the crypto library. - The detailed list is here: -

- - - - - - - - -
KBytes Date  File 
-

 

- -
- -
-
- -
-
- - - diff --git a/docs/man1.0.1/index.html b/docs/man1.0.1/index.html deleted file mode 100644 index 4d250a7..0000000 --- a/docs/man1.0.1/index.html +++ /dev/null @@ -1,39 +0,0 @@ - - - - - -
-
-
- -
- -
-
- - - - diff --git a/docs/man1.0.1/ssl/index.html b/docs/man1.0.1/ssl/index.html deleted file mode 100644 index bbb559c..0000000 --- a/docs/man1.0.1/ssl/index.html +++ /dev/null @@ -1,45 +0,0 @@ - - - - - -
-
-
-
-

ssl library

-
-

- The ssl manpage provides a - general overview of the ssl library. - The detailed list is here: -

- - - - - - - - -
KBytes Date  File 
-

 

- -
- -
-
- -
-
- - - - From levitte at openssl.org Thu Apr 6 08:38:05 2017 From: levitte at openssl.org (Richard Levitte) Date: Thu, 06 Apr 2017 08:38:05 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491467885.208466.20420.nullmailer@dev.openssl.org> The branch master has been updated via 5006b37b31c5a520c3065048bd8aba8cc3ff128d (commit) from 5748e4dc3ab1cdde43ae6feecb106e3a41adcdf4 (commit) - Log ----------------------------------------------------------------- commit 5006b37b31c5a520c3065048bd8aba8cc3ff128d Author: Richard Levitte Date: Thu Apr 6 10:24:55 2017 +0200 In rand_cleanup_int(), don't go creating a default method If no default method was yet given, RAND_get_rand_method() will set it up. Doing so just to clean it away seems pretty silly, so instead, use the default_RAND_meth variable directly. This also clears a possible race condition where this will try to init things, such as ERR or ENGINE when in the middle of a OPENSSL_cleanup. Fixes #3128 Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3136) ----------------------------------------------------------------------- Summary of changes: crypto/rand/rand_lib.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crypto/rand/rand_lib.c b/crypto/rand/rand_lib.c index fc47dc9..ad45250 100644 --- a/crypto/rand/rand_lib.c +++ b/crypto/rand/rand_lib.c @@ -74,7 +74,7 @@ int RAND_set_rand_engine(ENGINE *engine) void rand_cleanup_int(void) { - const RAND_METHOD *meth = RAND_get_rand_method(); + const RAND_METHOD *meth = default_RAND_meth; if (meth && meth->cleanup) meth->cleanup(); RAND_set_rand_method(NULL); From levitte at openssl.org Thu Apr 6 08:38:42 2017 From: levitte at openssl.org (Richard Levitte) Date: Thu, 06 Apr 2017 08:38:42 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1491467922.085858.21335.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 9d7a0588b3e375fa29adca030656fed816cf18e5 (commit) from 7efa321c57b74fdcc402ac72b3bb3f912e9df7ab (commit) - Log ----------------------------------------------------------------- commit 9d7a0588b3e375fa29adca030656fed816cf18e5 Author: Richard Levitte Date: Thu Apr 6 10:24:55 2017 +0200 In rand_cleanup_int(), don't go creating a default method If no default method was yet given, RAND_get_rand_method() will set it up. Doing so just to clean it away seems pretty silly, so instead, use the default_RAND_meth variable directly. This also clears a possible race condition where this will try to init things, such as ERR or ENGINE when in the middle of a OPENSSL_cleanup. Fixes #3128 Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3136) (cherry picked from commit 5006b37b31c5a520c3065048bd8aba8cc3ff128d) ----------------------------------------------------------------------- Summary of changes: crypto/rand/rand_lib.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crypto/rand/rand_lib.c b/crypto/rand/rand_lib.c index 2387126..60c1b17 100644 --- a/crypto/rand/rand_lib.c +++ b/crypto/rand/rand_lib.c @@ -79,7 +79,7 @@ int RAND_set_rand_engine(ENGINE *engine) void rand_cleanup_int(void) { - const RAND_METHOD *meth = RAND_get_rand_method(); + const RAND_METHOD *meth = default_RAND_meth; if (meth && meth->cleanup) meth->cleanup(); RAND_set_rand_method(NULL); From builds at travis-ci.org Thu Apr 6 08:58:04 2017 From: builds at travis-ci.org (Travis CI) Date: Thu, 06 Apr 2017 08:58:04 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10007 (OpenSSL_1_1_0-stable - 9d7a058) In-Reply-To: Message-ID: <58e6031b84ccb_43fdf012ae41c744233@ad74e1e7-5f39-4131-aef0-731747c1b081.mail> Build Update for openssl/openssl ------------------------------------- Build: #10007 Status: Still Failing Duration: 13 minutes and 40 seconds Commit: 9d7a058 (OpenSSL_1_1_0-stable) Author: Richard Levitte Message: In rand_cleanup_int(), don't go creating a default method If no default method was yet given, RAND_get_rand_method() will set it up. Doing so just to clean it away seems pretty silly, so instead, use the default_RAND_meth variable directly. This also clears a possible race condition where this will try to init things, such as ERR or ENGINE when in the middle of a OPENSSL_cleanup. Fixes #3128 Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3136) (cherry picked from commit 5006b37b31c5a520c3065048bd8aba8cc3ff128d) View the changeset: https://github.com/openssl/openssl/compare/7efa321c57b7...9d7a0588b3e3 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/219195414 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From appro at openssl.org Thu Apr 6 10:54:38 2017 From: appro at openssl.org (Andy Polyakov) Date: Thu, 06 Apr 2017 10:54:38 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491476078.093576.11835.nullmailer@dev.openssl.org> The branch master has been updated via 9dfc5b96874c477095f407c08141614e010a0b98 (commit) from 5006b37b31c5a520c3065048bd8aba8cc3ff128d (commit) - Log ----------------------------------------------------------------- commit 9dfc5b96874c477095f407c08141614e010a0b98 Author: Todd Short Date: Thu Mar 23 12:56:22 2017 -0400 Add support for MLOCK_ONFAULT to secure arena Reviewed-by: Rich Salz Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3115) ----------------------------------------------------------------------- Summary of changes: crypto/mem_sec.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/crypto/mem_sec.c b/crypto/mem_sec.c index 93bff90..351dec4 100644 --- a/crypto/mem_sec.c +++ b/crypto/mem_sec.c @@ -31,6 +31,11 @@ # include # include # include +# if defined(OPENSSL_SYS_LINUX) +# include +# include +# include +# endif # include # include # include @@ -433,8 +438,19 @@ static int sh_init(size_t size, int minsize) if (mprotect(sh.map_result + aligned, pgsize, PROT_NONE) < 0) ret = 2; +#if defined(OPENSSL_SYS_LINUX) && defined(MLOCK_ONFAULT) && defined(SYS_mlock2) + if (syscall(SYS_mlock2, sh.arena, sh.arena_size, MLOCK_ONFAULT) < 0) { + if (errno == ENOSYS) { + if (mlock(sh.arena, sh.arena_size) < 0) + ret = 2; + } else { + ret = 2; + } + } +#else if (mlock(sh.arena, sh.arena_size) < 0) ret = 2; +#endif #ifdef MADV_DONTDUMP if (madvise(sh.arena, sh.arena_size, MADV_DONTDUMP) < 0) ret = 2; From appro at openssl.org Thu Apr 6 14:17:38 2017 From: appro at openssl.org (Andy Polyakov) Date: Thu, 06 Apr 2017 14:17:38 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491488258.747412.13732.nullmailer@dev.openssl.org> The branch master has been updated via 005f6766284155645fa760cf764f85031e209f6c (commit) from 9dfc5b96874c477095f407c08141614e010a0b98 (commit) - Log ----------------------------------------------------------------- commit 005f6766284155645fa760cf764f85031e209f6c Author: Qin Long Date: Wed Apr 5 01:08:16 2017 +0800 e_os2.h: Refine OSSL_SSIZE definition under UEFI environment Under UEFI build environment, we may encounter the OSSL_SSIZE macro re-definition error in e_os2.h if any module call OpenSSL API directly by including "openssl/xxxx.h" (caused by the predefined _WIN32/_WIN64 macro, which should have been un-defined under OPENSSL_SYS_UEFI). Though it's not one recommended usage, this patch could still eliminate the possible build issue by refining the OSSL_SSIZE definition under OPENSSL_SYS_UEFI. Reviewed-by: Rich Salz Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3121) ----------------------------------------------------------------------- Summary of changes: include/openssl/e_os2.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/include/openssl/e_os2.h b/include/openssl/e_os2.h index 717cadf..746dd8f 100644 --- a/include/openssl/e_os2.h +++ b/include/openssl/e_os2.h @@ -206,9 +206,9 @@ extern "C" { # endif # endif -# if defined(OPENSSL_SYS_UEFI) && !defined(ssize_t) -# define ossl_ssize_t int -# define OSSL_SSIZE_MAX INT_MAX +# if defined(OPENSSL_SYS_UEFI) && !defined(ossl_ssize_t) +# define ossl_ssize_t INTN +# define OSSL_SSIZE_MAX MAX_INTN # endif # ifndef ossl_ssize_t From appro at openssl.org Thu Apr 6 14:22:44 2017 From: appro at openssl.org (Andy Polyakov) Date: Thu, 06 Apr 2017 14:22:44 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1491488564.672191.15367.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 9317235bbb43fbe8ee21cc3bfe0effb9ab6dee2e (commit) from 9d7a0588b3e375fa29adca030656fed816cf18e5 (commit) - Log ----------------------------------------------------------------- commit 9317235bbb43fbe8ee21cc3bfe0effb9ab6dee2e Author: Qin Long Date: Wed Apr 5 01:08:16 2017 +0800 e_os2.h: Refine OSSL_SSIZE definition under UEFI environment Under UEFI build environment, we may encounter the OSSL_SSIZE macro re-definition error in e_os2.h if any module call OpenSSL API directly by including "openssl/xxxx.h" (caused by the predefined _WIN32/_WIN64 macro, which should have been un-defined under OPENSSL_SYS_UEFI). Though it's not one recommended usage, this patch could still eliminate the possible build issue by refining the OSSL_SSIZE definition under OPENSSL_SYS_UEFI. Reviewed-by: Rich Salz Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3121) (cherry picked from commit 005f6766284155645fa760cf764f85031e209f6c) ----------------------------------------------------------------------- Summary of changes: include/openssl/e_os2.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/include/openssl/e_os2.h b/include/openssl/e_os2.h index 1f3ecb6..4aec51f 100644 --- a/include/openssl/e_os2.h +++ b/include/openssl/e_os2.h @@ -212,9 +212,9 @@ extern "C" { # endif # endif -# if defined(OPENSSL_SYS_UEFI) && !defined(ssize_t) -# define ossl_ssize_t int -# define OSSL_SSIZE_MAX INT_MAX +# if defined(OPENSSL_SYS_UEFI) && !defined(ossl_ssize_t) +# define ossl_ssize_t INTN +# define OSSL_SSIZE_MAX MAX_INTN # endif # ifndef ossl_ssize_t From builds at travis-ci.org Thu Apr 6 14:40:51 2017 From: builds at travis-ci.org (Travis CI) Date: Thu, 06 Apr 2017 14:40:51 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10018 (OpenSSL_1_1_0-stable - 9317235) In-Reply-To: Message-ID: <58e653b3987f2_43f866499683897692c@4c0771a5-fad8-499c-9ef2-ff07ba62df09.mail> Build Update for openssl/openssl ------------------------------------- Build: #10018 Status: Still Failing Duration: 16 minutes and 56 seconds Commit: 9317235 (OpenSSL_1_1_0-stable) Author: Qin Long Message: e_os2.h: Refine OSSL_SSIZE definition under UEFI environment Under UEFI build environment, we may encounter the OSSL_SSIZE macro re-definition error in e_os2.h if any module call OpenSSL API directly by including "openssl/xxxx.h" (caused by the predefined _WIN32/_WIN64 macro, which should have been un-defined under OPENSSL_SYS_UEFI). Though it's not one recommended usage, this patch could still eliminate the possible build issue by refining the OSSL_SSIZE definition under OPENSSL_SYS_UEFI. Reviewed-by: Rich Salz Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3121) (cherry picked from commit 005f6766284155645fa760cf764f85031e209f6c) View the changeset: https://github.com/openssl/openssl/compare/9d7a0588b3e3...9317235bbb43 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/219300663 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 6 22:08:54 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 06 Apr 2017 22:08:54 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.1926 Message-ID: <20170406220854.9410.47160.132D5B17@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 6 22:18:28 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 06 Apr 2017 22:18:28 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.1927 Message-ID: <20170406221828.41634.28685.3ABB48BB@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 6 22:22:07 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 06 Apr 2017 22:22:07 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.1928 Message-ID: <20170406222207.105644.66126.AFB86850@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 6 22:56:28 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 06 Apr 2017 22:56:28 +0000 Subject: [openssl-commits] Build completed: openssl 1.0.1929 Message-ID: <20170406225627.106010.50106.3196BC8A@appveyor.com> An HTML attachment was scrubbed... URL: From levitte at openssl.org Fri Apr 7 02:55:20 2017 From: levitte at openssl.org (Richard Levitte) Date: Fri, 07 Apr 2017 02:55:20 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491533720.091047.24860.nullmailer@dev.openssl.org> The branch master has been updated via 789a2b6250d5e05dfde6ce259e79ef8c172c9f3f (commit) via 87975cfa91c3f06a52f2550ed2ef632644be6dde (commit) from 005f6766284155645fa760cf764f85031e209f6c (commit) - Log ----------------------------------------------------------------- commit 789a2b6250d5e05dfde6ce259e79ef8c172c9f3f Author: Richard Levitte Date: Thu Apr 6 15:58:38 2017 +0200 Don't try to clean up RAND from ENGINE This is especially harmful since OPENSSL_cleanup() has already called the RAND cleanup function Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3137) commit 87975cfa91c3f06a52f2550ed2ef632644be6dde Author: Richard Levitte Date: Thu Apr 6 11:30:03 2017 +0200 Make getting and setting the RAND default method thread safe Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3137) ----------------------------------------------------------------------- Summary of changes: crypto/engine/eng_lib.c | 5 ----- crypto/rand/rand_lib.c | 37 +++++++++++++++++++++++++++++++++++-- 2 files changed, 35 insertions(+), 7 deletions(-) diff --git a/crypto/engine/eng_lib.c b/crypto/engine/eng_lib.c index 385af54..6f422bd 100644 --- a/crypto/engine/eng_lib.c +++ b/crypto/engine/eng_lib.c @@ -166,11 +166,6 @@ void engine_cleanup_int(void) engine_cleanup_cb_free); cleanup_stack = NULL; } - /* - * FIXME: This should be handled (somehow) through RAND, eg. by it - * registering a cleanup callback. - */ - RAND_set_rand_method(NULL); CRYPTO_THREAD_lock_free(global_engine_lock); } diff --git a/crypto/rand/rand_lib.c b/crypto/rand/rand_lib.c index ad45250..dc62902 100644 --- a/crypto/rand/rand_lib.c +++ b/crypto/rand/rand_lib.c @@ -12,27 +12,50 @@ #include "internal/cryptlib.h" #include #include "internal/rand.h" - #include +#include "internal/thread_once.h" #ifndef OPENSSL_NO_ENGINE /* non-NULL if default_RAND_meth is ENGINE-provided */ static ENGINE *funct_ref = NULL; +static CRYPTO_RWLOCK *rand_engine_lock = NULL; #endif static const RAND_METHOD *default_RAND_meth = NULL; +static CRYPTO_RWLOCK *rand_meth_lock = NULL; +static CRYPTO_ONCE rand_lock_init = CRYPTO_ONCE_STATIC_INIT; + +DEFINE_RUN_ONCE_STATIC(do_rand_lock_init) +{ +#ifndef OPENSSL_NO_ENGINE + rand_engine_lock = CRYPTO_THREAD_lock_new(); +#endif + rand_meth_lock = CRYPTO_THREAD_lock_new(); + return rand_engine_lock != NULL && rand_meth_lock != NULL; +} int RAND_set_rand_method(const RAND_METHOD *meth) { + if (!RUN_ONCE(&rand_lock_init, do_rand_lock_init)) + return 0; + + CRYPTO_THREAD_write_lock(rand_meth_lock); #ifndef OPENSSL_NO_ENGINE ENGINE_finish(funct_ref); funct_ref = NULL; #endif default_RAND_meth = meth; + CRYPTO_THREAD_unlock(rand_meth_lock); return 1; } const RAND_METHOD *RAND_get_rand_method(void) { + const RAND_METHOD *tmp_meth = NULL; + + if (!RUN_ONCE(&rand_lock_init, do_rand_lock_init)) + return NULL; + + CRYPTO_THREAD_write_lock(rand_meth_lock); if (!default_RAND_meth) { #ifndef OPENSSL_NO_ENGINE ENGINE *e = ENGINE_get_default_RAND(); @@ -49,13 +72,19 @@ const RAND_METHOD *RAND_get_rand_method(void) #endif default_RAND_meth = RAND_OpenSSL(); } - return default_RAND_meth; + tmp_meth = default_RAND_meth; + CRYPTO_THREAD_unlock(rand_meth_lock); + return tmp_meth; } #ifndef OPENSSL_NO_ENGINE int RAND_set_rand_engine(ENGINE *engine) { const RAND_METHOD *tmp_meth = NULL; + + if (!RUN_ONCE(&rand_lock_init, do_rand_lock_init)) + return 0; + if (engine) { if (!ENGINE_init(engine)) return 0; @@ -65,9 +94,11 @@ int RAND_set_rand_engine(ENGINE *engine) return 0; } } + CRYPTO_THREAD_write_lock(rand_engine_lock); /* This function releases any prior ENGINE so call it first */ RAND_set_rand_method(tmp_meth); funct_ref = engine; + CRYPTO_THREAD_unlock(rand_engine_lock); return 1; } #endif @@ -78,6 +109,8 @@ void rand_cleanup_int(void) if (meth && meth->cleanup) meth->cleanup(); RAND_set_rand_method(NULL); + CRYPTO_THREAD_lock_free(rand_meth_lock); + CRYPTO_THREAD_lock_free(rand_engine_lock); } void RAND_seed(const void *buf, int num) From levitte at openssl.org Fri Apr 7 02:56:17 2017 From: levitte at openssl.org (Richard Levitte) Date: Fri, 07 Apr 2017 02:56:17 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1491533777.796209.25767.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via df13eb7ae70073de8c95ca3c7d2f587037582470 (commit) via 67114d93b47aa02192272182595c2b5d1bba8298 (commit) from 9317235bbb43fbe8ee21cc3bfe0effb9ab6dee2e (commit) - Log ----------------------------------------------------------------- commit df13eb7ae70073de8c95ca3c7d2f587037582470 Author: Richard Levitte Date: Thu Apr 6 15:58:38 2017 +0200 Don't try to clean up RAND from ENGINE This is especially harmful since OPENSSL_cleanup() has already called the RAND cleanup function Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3137) (cherry picked from commit 789a2b6250d5e05dfde6ce259e79ef8c172c9f3f) commit 67114d93b47aa02192272182595c2b5d1bba8298 Author: Richard Levitte Date: Thu Apr 6 11:30:03 2017 +0200 Make getting and setting the RAND default method thread safe Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3137) (cherry picked from commit 87975cfa91c3f06a52f2550ed2ef632644be6dde) ----------------------------------------------------------------------- Summary of changes: crypto/engine/eng_lib.c | 5 ----- crypto/rand/rand_lib.c | 37 +++++++++++++++++++++++++++++++++++-- 2 files changed, 35 insertions(+), 7 deletions(-) diff --git a/crypto/engine/eng_lib.c b/crypto/engine/eng_lib.c index 28de21d..cbefc7e 100644 --- a/crypto/engine/eng_lib.c +++ b/crypto/engine/eng_lib.c @@ -161,11 +161,6 @@ void engine_cleanup_int(void) engine_cleanup_cb_free); cleanup_stack = NULL; } - /* - * FIXME: This should be handled (somehow) through RAND, eg. by it - * registering a cleanup callback. - */ - RAND_set_rand_method(NULL); CRYPTO_THREAD_lock_free(global_engine_lock); } diff --git a/crypto/rand/rand_lib.c b/crypto/rand/rand_lib.c index 60c1b17..9939540 100644 --- a/crypto/rand/rand_lib.c +++ b/crypto/rand/rand_lib.c @@ -12,8 +12,8 @@ #include "internal/cryptlib.h" #include #include "internal/rand.h" - #include +#include "internal/thread_once.h" #ifdef OPENSSL_FIPS # include @@ -23,21 +23,44 @@ #ifndef OPENSSL_NO_ENGINE /* non-NULL if default_RAND_meth is ENGINE-provided */ static ENGINE *funct_ref = NULL; +static CRYPTO_RWLOCK *rand_engine_lock = NULL; #endif static const RAND_METHOD *default_RAND_meth = NULL; +static CRYPTO_RWLOCK *rand_meth_lock = NULL; +static CRYPTO_ONCE rand_lock_init = CRYPTO_ONCE_STATIC_INIT; + +DEFINE_RUN_ONCE_STATIC(do_rand_lock_init) +{ +#ifndef OPENSSL_NO_ENGINE + rand_engine_lock = CRYPTO_THREAD_lock_new(); +#endif + rand_meth_lock = CRYPTO_THREAD_lock_new(); + return rand_engine_lock != NULL && rand_meth_lock != NULL; +} int RAND_set_rand_method(const RAND_METHOD *meth) { + if (!RUN_ONCE(&rand_lock_init, do_rand_lock_init)) + return 0; + + CRYPTO_THREAD_write_lock(rand_meth_lock); #ifndef OPENSSL_NO_ENGINE ENGINE_finish(funct_ref); funct_ref = NULL; #endif default_RAND_meth = meth; + CRYPTO_THREAD_unlock(rand_meth_lock); return 1; } const RAND_METHOD *RAND_get_rand_method(void) { + const RAND_METHOD *tmp_meth = NULL; + + if (!RUN_ONCE(&rand_lock_init, do_rand_lock_init)) + return NULL; + + CRYPTO_THREAD_write_lock(rand_meth_lock); if (!default_RAND_meth) { #ifndef OPENSSL_NO_ENGINE ENGINE *e = ENGINE_get_default_RAND(); @@ -54,13 +77,19 @@ const RAND_METHOD *RAND_get_rand_method(void) #endif default_RAND_meth = RAND_OpenSSL(); } - return default_RAND_meth; + tmp_meth = default_RAND_meth; + CRYPTO_THREAD_unlock(rand_meth_lock); + return tmp_meth; } #ifndef OPENSSL_NO_ENGINE int RAND_set_rand_engine(ENGINE *engine) { const RAND_METHOD *tmp_meth = NULL; + + if (!RUN_ONCE(&rand_lock_init, do_rand_lock_init)) + return 0; + if (engine) { if (!ENGINE_init(engine)) return 0; @@ -70,9 +99,11 @@ int RAND_set_rand_engine(ENGINE *engine) return 0; } } + CRYPTO_THREAD_write_lock(rand_engine_lock); /* This function releases any prior ENGINE so call it first */ RAND_set_rand_method(tmp_meth); funct_ref = engine; + CRYPTO_THREAD_unlock(rand_engine_lock); return 1; } #endif @@ -83,6 +114,8 @@ void rand_cleanup_int(void) if (meth && meth->cleanup) meth->cleanup(); RAND_set_rand_method(NULL); + CRYPTO_THREAD_lock_free(rand_meth_lock); + CRYPTO_THREAD_lock_free(rand_engine_lock); } void RAND_seed(const void *buf, int num) From builds at travis-ci.org Fri Apr 7 03:16:25 2017 From: builds at travis-ci.org (Travis CI) Date: Fri, 07 Apr 2017 03:16:25 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10028 (OpenSSL_1_1_0-stable - df13eb7) In-Reply-To: Message-ID: <58e70486c84ba_43fa5603e3aec536596@54406ac8-d063-440e-88ea-c94db123a7ce.mail> Build Update for openssl/openssl ------------------------------------- Build: #10028 Status: Still Failing Duration: 15 minutes and 26 seconds Commit: df13eb7 (OpenSSL_1_1_0-stable) Author: Richard Levitte Message: Don't try to clean up RAND from ENGINE This is especially harmful since OPENSSL_cleanup() has already called the RAND cleanup function Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3137) (cherry picked from commit 789a2b6250d5e05dfde6ce259e79ef8c172c9f3f) View the changeset: https://github.com/openssl/openssl/compare/9317235bbb43...df13eb7ae700 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/219533483 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From openssl at openssl.org Fri Apr 7 12:29:33 2017 From: openssl at openssl.org (OpenSSL run-checker) Date: Fri, 07 Apr 2017 12:29:33 +0000 Subject: [openssl-commits] FAILED build of OpenSSL branch OpenSSL_1_1_0-stable with options -d --strict-warnings no-engine Message-ID: <1491568173.268084.31084.nullmailer@run.openssl.org> Platform and configuration command: $ uname -a Linux run 4.4.0-71-generic #92-Ubuntu SMP Fri Mar 24 12:59:01 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux $ CC=clang ../openssl/config -d --strict-warnings no-engine Commit log since last time: df13eb7 Don't try to clean up RAND from ENGINE 67114d9 Make getting and setting the RAND default method thread safe 9317235 e_os2.h: Refine OSSL_SSIZE definition under UEFI environment Build log ended with (last 100 lines): clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/mem.d.tmp -MT crypto/mem.o -c -o crypto/mem.o ../openssl/crypto/mem.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/mem_dbg.d.tmp -MT crypto/mem_dbg.o -c -o crypto/mem_dbg.o ../openssl/crypto/mem_dbg.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/mem_sec.d.tmp -MT crypto/mem_sec.o -c -o crypto/mem_sec.o ../openssl/crypto/mem_sec.c CC="clang" /usr/bin/perl ../openssl/crypto/modes/asm/aesni-gcm-x86_64.pl elf crypto/modes/aesni-gcm-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/aesni-gcm-x86_64.d.tmp -MT crypto/modes/aesni-gcm-x86_64.o -c -o crypto/modes/aesni-gcm-x86_64.o crypto/modes/aesni-gcm-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/cbc128.d.tmp -MT crypto/modes/cbc128.o -c -o crypto/modes/cbc128.o ../openssl/crypto/modes/cbc128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/ccm128.d.tmp -MT crypto/modes/ccm128.o -c -o crypto/modes/ccm128.o ../openssl/crypto/modes/ccm128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/cfb128.d.tmp -MT crypto/modes/cfb128.o -c -o crypto/modes/cfb128.o ../openssl/crypto/modes/cfb128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/ctr128.d.tmp -MT crypto/modes/ctr128.o -c -o crypto/modes/ctr128.o ../openssl/crypto/modes/ctr128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/cts128.d.tmp -MT crypto/modes/cts128.o -c -o crypto/modes/cts128.o ../openssl/crypto/modes/cts128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -Icrypto -I../openssl/crypto -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/gcm128.d.tmp -MT crypto/modes/gcm128.o -c -o crypto/modes/gcm128.o ../openssl/crypto/modes/gcm128.c CC="clang" /usr/bin/perl ../openssl/crypto/modes/asm/ghash-x86_64.pl elf crypto/modes/ghash-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/ghash-x86_64.d.tmp -MT crypto/modes/ghash-x86_64.o -c -o crypto/modes/ghash-x86_64.o crypto/modes/ghash-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/ocb128.d.tmp -MT crypto/modes/ocb128.o -c -o crypto/modes/ocb128.o ../openssl/crypto/modes/ocb128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/ofb128.d.tmp -MT crypto/modes/ofb128.o -c -o crypto/modes/ofb128.o ../openssl/crypto/modes/ofb128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/wrap128.d.tmp -MT crypto/modes/wrap128.o -c -o crypto/modes/wrap128.o ../openssl/crypto/modes/wrap128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/xts128.d.tmp -MT crypto/modes/xts128.o -c -o crypto/modes/xts128.o ../openssl/crypto/modes/xts128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/o_dir.d.tmp -MT crypto/o_dir.o -c -o crypto/o_dir.o ../openssl/crypto/o_dir.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/o_fips.d.tmp -MT crypto/o_fips.o -c -o crypto/o_fips.o ../openssl/crypto/o_fips.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/o_fopen.d.tmp -MT crypto/o_fopen.o -c -o crypto/o_fopen.o ../openssl/crypto/o_fopen.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/o_init.d.tmp -MT crypto/o_init.o -c -o crypto/o_init.o ../openssl/crypto/o_init.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/o_str.d.tmp -MT crypto/o_str.o -c -o crypto/o_str.o ../openssl/crypto/o_str.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/o_time.d.tmp -MT crypto/o_time.o -c -o crypto/o_time.o ../openssl/crypto/o_time.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/objects/o_names.d.tmp -MT crypto/objects/o_names.o -c -o crypto/objects/o_names.o ../openssl/crypto/objects/o_names.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/objects/obj_dat.d.tmp -MT crypto/objects/obj_dat.o -c -o crypto/objects/obj_dat.o ../openssl/crypto/objects/obj_dat.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/objects/obj_err.d.tmp -MT crypto/objects/obj_err.o -c -o crypto/objects/obj_err.o ../openssl/crypto/objects/obj_err.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/objects/obj_lib.d.tmp -MT crypto/objects/obj_lib.o -c -o crypto/objects/obj_lib.o ../openssl/crypto/objects/obj_lib.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/objects/obj_xref.d.tmp -MT crypto/objects/obj_xref.o -c -o crypto/objects/obj_xref.o ../openssl/crypto/objects/obj_xref.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_asn.d.tmp -MT crypto/ocsp/ocsp_asn.o -c -o crypto/ocsp/ocsp_asn.o ../openssl/crypto/ocsp/ocsp_asn.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_cl.d.tmp -MT crypto/ocsp/ocsp_cl.o -c -o crypto/ocsp/ocsp_cl.o ../openssl/crypto/ocsp/ocsp_cl.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_err.d.tmp -MT crypto/ocsp/ocsp_err.o -c -o crypto/ocsp/ocsp_err.o ../openssl/crypto/ocsp/ocsp_err.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_ext.d.tmp -MT crypto/ocsp/ocsp_ext.o -c -o crypto/ocsp/ocsp_ext.o ../openssl/crypto/ocsp/ocsp_ext.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_ht.d.tmp -MT crypto/ocsp/ocsp_ht.o -c -o crypto/ocsp/ocsp_ht.o ../openssl/crypto/ocsp/ocsp_ht.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_lib.d.tmp -MT crypto/ocsp/ocsp_lib.o -c -o crypto/ocsp/ocsp_lib.o ../openssl/crypto/ocsp/ocsp_lib.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_prn.d.tmp -MT crypto/ocsp/ocsp_prn.o -c -o crypto/ocsp/ocsp_prn.o ../openssl/crypto/ocsp/ocsp_prn.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_srv.d.tmp -MT crypto/ocsp/ocsp_srv.o -c -o crypto/ocsp/ocsp_srv.o ../openssl/crypto/ocsp/ocsp_srv.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_vfy.d.tmp -MT crypto/ocsp/ocsp_vfy.o -c -o crypto/ocsp/ocsp_vfy.o ../openssl/crypto/ocsp/ocsp_vfy.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/v3_ocsp.d.tmp -MT crypto/ocsp/v3_ocsp.o -c -o crypto/ocsp/v3_ocsp.o ../openssl/crypto/ocsp/v3_ocsp.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_all.d.tmp -MT crypto/pem/pem_all.o -c -o crypto/pem/pem_all.o ../openssl/crypto/pem/pem_all.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_err.d.tmp -MT crypto/pem/pem_err.o -c -o crypto/pem/pem_err.o ../openssl/crypto/pem/pem_err.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_info.d.tmp -MT crypto/pem/pem_info.o -c -o crypto/pem/pem_info.o ../openssl/crypto/pem/pem_info.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_lib.d.tmp -MT crypto/pem/pem_lib.o -c -o crypto/pem/pem_lib.o ../openssl/crypto/pem/pem_lib.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_oth.d.tmp -MT crypto/pem/pem_oth.o -c -o crypto/pem/pem_oth.o ../openssl/crypto/pem/pem_oth.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_pk8.d.tmp -MT crypto/pem/pem_pk8.o -c -o crypto/pem/pem_pk8.o ../openssl/crypto/pem/pem_pk8.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_pkey.d.tmp -MT crypto/pem/pem_pkey.o -c -o crypto/pem/pem_pkey.o ../openssl/crypto/pem/pem_pkey.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_sign.d.tmp -MT crypto/pem/pem_sign.o -c -o crypto/pem/pem_sign.o ../openssl/crypto/pem/pem_sign.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_x509.d.tmp -MT crypto/pem/pem_x509.o -c -o crypto/pem/pem_x509.o ../openssl/crypto/pem/pem_x509.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_xaux.d.tmp -MT crypto/pem/pem_xaux.o -c -o crypto/pem/pem_xaux.o ../openssl/crypto/pem/pem_xaux.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pvkfmt.d.tmp -MT crypto/pem/pvkfmt.o -c -o crypto/pem/pvkfmt.o ../openssl/crypto/pem/pvkfmt.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_add.d.tmp -MT crypto/pkcs12/p12_add.o -c -o crypto/pkcs12/p12_add.o ../openssl/crypto/pkcs12/p12_add.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_asn.d.tmp -MT crypto/pkcs12/p12_asn.o -c -o crypto/pkcs12/p12_asn.o ../openssl/crypto/pkcs12/p12_asn.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_attr.d.tmp -MT crypto/pkcs12/p12_attr.o -c -o crypto/pkcs12/p12_attr.o ../openssl/crypto/pkcs12/p12_attr.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_crpt.d.tmp -MT crypto/pkcs12/p12_crpt.o -c -o crypto/pkcs12/p12_crpt.o ../openssl/crypto/pkcs12/p12_crpt.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_crt.d.tmp -MT crypto/pkcs12/p12_crt.o -c -o crypto/pkcs12/p12_crt.o ../openssl/crypto/pkcs12/p12_crt.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_decr.d.tmp -MT crypto/pkcs12/p12_decr.o -c -o crypto/pkcs12/p12_decr.o ../openssl/crypto/pkcs12/p12_decr.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_init.d.tmp -MT crypto/pkcs12/p12_init.o -c -o crypto/pkcs12/p12_init.o ../openssl/crypto/pkcs12/p12_init.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_key.d.tmp -MT crypto/pkcs12/p12_key.o -c -o crypto/pkcs12/p12_key.o ../openssl/crypto/pkcs12/p12_key.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_kiss.d.tmp -MT crypto/pkcs12/p12_kiss.o -c -o crypto/pkcs12/p12_kiss.o ../openssl/crypto/pkcs12/p12_kiss.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_mutl.d.tmp -MT crypto/pkcs12/p12_mutl.o -c -o crypto/pkcs12/p12_mutl.o ../openssl/crypto/pkcs12/p12_mutl.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_npas.d.tmp -MT crypto/pkcs12/p12_npas.o -c -o crypto/pkcs12/p12_npas.o ../openssl/crypto/pkcs12/p12_npas.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_p8d.d.tmp -MT crypto/pkcs12/p12_p8d.o -c -o crypto/pkcs12/p12_p8d.o ../openssl/crypto/pkcs12/p12_p8d.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_p8e.d.tmp -MT crypto/pkcs12/p12_p8e.o -c -o crypto/pkcs12/p12_p8e.o ../openssl/crypto/pkcs12/p12_p8e.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_sbag.d.tmp -MT crypto/pkcs12/p12_sbag.o -c -o crypto/pkcs12/p12_sbag.o ../openssl/crypto/pkcs12/p12_sbag.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_utl.d.tmp -MT crypto/pkcs12/p12_utl.o -c -o crypto/pkcs12/p12_utl.o ../openssl/crypto/pkcs12/p12_utl.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/pk12err.d.tmp -MT crypto/pkcs12/pk12err.o -c -o crypto/pkcs12/pk12err.o ../openssl/crypto/pkcs12/pk12err.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/bio_pk7.d.tmp -MT crypto/pkcs7/bio_pk7.o -c -o crypto/pkcs7/bio_pk7.o ../openssl/crypto/pkcs7/bio_pk7.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pk7_asn1.d.tmp -MT crypto/pkcs7/pk7_asn1.o -c -o crypto/pkcs7/pk7_asn1.o ../openssl/crypto/pkcs7/pk7_asn1.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pk7_attr.d.tmp -MT crypto/pkcs7/pk7_attr.o -c -o crypto/pkcs7/pk7_attr.o ../openssl/crypto/pkcs7/pk7_attr.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pk7_doit.d.tmp -MT crypto/pkcs7/pk7_doit.o -c -o crypto/pkcs7/pk7_doit.o ../openssl/crypto/pkcs7/pk7_doit.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pk7_lib.d.tmp -MT crypto/pkcs7/pk7_lib.o -c -o crypto/pkcs7/pk7_lib.o ../openssl/crypto/pkcs7/pk7_lib.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pk7_mime.d.tmp -MT crypto/pkcs7/pk7_mime.o -c -o crypto/pkcs7/pk7_mime.o ../openssl/crypto/pkcs7/pk7_mime.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pk7_smime.d.tmp -MT crypto/pkcs7/pk7_smime.o -c -o crypto/pkcs7/pk7_smime.o ../openssl/crypto/pkcs7/pk7_smime.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pkcs7err.d.tmp -MT crypto/pkcs7/pkcs7err.o -c -o crypto/pkcs7/pkcs7err.o ../openssl/crypto/pkcs7/pkcs7err.c CC="clang" /usr/bin/perl ../openssl/crypto/poly1305/asm/poly1305-x86_64.pl elf crypto/poly1305/poly1305-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/poly1305/poly1305-x86_64.d.tmp -MT crypto/poly1305/poly1305-x86_64.o -c -o crypto/poly1305/poly1305-x86_64.o crypto/poly1305/poly1305-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/poly1305/poly1305.d.tmp -MT crypto/poly1305/poly1305.o -c -o crypto/poly1305/poly1305.o ../openssl/crypto/poly1305/poly1305.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/rand/md_rand.d.tmp -MT crypto/rand/md_rand.o -c -o crypto/rand/md_rand.o ../openssl/crypto/rand/md_rand.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/rand/rand_egd.d.tmp -MT crypto/rand/rand_egd.o -c -o crypto/rand/rand_egd.o ../openssl/crypto/rand/rand_egd.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/rand/rand_err.d.tmp -MT crypto/rand/rand_err.o -c -o crypto/rand/rand_err.o ../openssl/crypto/rand/rand_err.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/rand/rand_lib.d.tmp -MT crypto/rand/rand_lib.o -c -o crypto/rand/rand_lib.o ../openssl/crypto/rand/rand_lib.c ../openssl/crypto/rand/rand_lib.c:38:12: error: use of undeclared identifier 'rand_engine_lock'; did you mean 'rand_meth_lock'? return rand_engine_lock != NULL && rand_meth_lock != NULL; ^~~~~~~~~~~~~~~~ rand_meth_lock ../openssl/crypto/rand/rand_lib.c:29:23: note: 'rand_meth_lock' declared here static CRYPTO_RWLOCK *rand_meth_lock = NULL; ^ ../openssl/crypto/rand/rand_lib.c:118:29: error: use of undeclared identifier 'rand_engine_lock'; did you mean 'rand_meth_lock'? CRYPTO_THREAD_lock_free(rand_engine_lock); ^~~~~~~~~~~~~~~~ rand_meth_lock ../openssl/crypto/rand/rand_lib.c:29:23: note: 'rand_meth_lock' declared here static CRYPTO_RWLOCK *rand_meth_lock = NULL; ^ 2 errors generated. Makefile:4311: recipe for target 'crypto/rand/rand_lib.o' failed make[1]: *** [crypto/rand/rand_lib.o] Error 1 make[1]: Leaving directory '/home/openssl/run-checker-1.1.0/no-engine' Makefile:128: recipe for target 'all' failed make: *** [all] Error 2 From openssl at openssl.org Fri Apr 7 12:30:46 2017 From: openssl at openssl.org (OpenSSL run-checker) Date: Fri, 07 Apr 2017 12:30:46 +0000 Subject: [openssl-commits] FAILED build of OpenSSL branch OpenSSL_1_1_0-stable with options -d --strict-warnings no-engine no-shared Message-ID: <1491568246.785041.2056.nullmailer@run.openssl.org> Platform and configuration command: $ uname -a Linux run 4.4.0-71-generic #92-Ubuntu SMP Fri Mar 24 12:59:01 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux $ CC=clang ../openssl/config -d --strict-warnings no-engine no-shared Commit log since last time: df13eb7 Don't try to clean up RAND from ENGINE 67114d9 Make getting and setting the RAND default method thread safe 9317235 e_os2.h: Refine OSSL_SSIZE definition under UEFI environment Build log ended with (last 100 lines): clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/mem.d.tmp -MT crypto/mem.o -c -o crypto/mem.o ../openssl/crypto/mem.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/mem_dbg.d.tmp -MT crypto/mem_dbg.o -c -o crypto/mem_dbg.o ../openssl/crypto/mem_dbg.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/mem_sec.d.tmp -MT crypto/mem_sec.o -c -o crypto/mem_sec.o ../openssl/crypto/mem_sec.c CC="clang" /usr/bin/perl ../openssl/crypto/modes/asm/aesni-gcm-x86_64.pl elf crypto/modes/aesni-gcm-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/aesni-gcm-x86_64.d.tmp -MT crypto/modes/aesni-gcm-x86_64.o -c -o crypto/modes/aesni-gcm-x86_64.o crypto/modes/aesni-gcm-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/cbc128.d.tmp -MT crypto/modes/cbc128.o -c -o crypto/modes/cbc128.o ../openssl/crypto/modes/cbc128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/ccm128.d.tmp -MT crypto/modes/ccm128.o -c -o crypto/modes/ccm128.o ../openssl/crypto/modes/ccm128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/cfb128.d.tmp -MT crypto/modes/cfb128.o -c -o crypto/modes/cfb128.o ../openssl/crypto/modes/cfb128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/ctr128.d.tmp -MT crypto/modes/ctr128.o -c -o crypto/modes/ctr128.o ../openssl/crypto/modes/ctr128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/cts128.d.tmp -MT crypto/modes/cts128.o -c -o crypto/modes/cts128.o ../openssl/crypto/modes/cts128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -Icrypto -I../openssl/crypto -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/gcm128.d.tmp -MT crypto/modes/gcm128.o -c -o crypto/modes/gcm128.o ../openssl/crypto/modes/gcm128.c CC="clang" /usr/bin/perl ../openssl/crypto/modes/asm/ghash-x86_64.pl elf crypto/modes/ghash-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/ghash-x86_64.d.tmp -MT crypto/modes/ghash-x86_64.o -c -o crypto/modes/ghash-x86_64.o crypto/modes/ghash-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/ocb128.d.tmp -MT crypto/modes/ocb128.o -c -o crypto/modes/ocb128.o ../openssl/crypto/modes/ocb128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/ofb128.d.tmp -MT crypto/modes/ofb128.o -c -o crypto/modes/ofb128.o ../openssl/crypto/modes/ofb128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/wrap128.d.tmp -MT crypto/modes/wrap128.o -c -o crypto/modes/wrap128.o ../openssl/crypto/modes/wrap128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/xts128.d.tmp -MT crypto/modes/xts128.o -c -o crypto/modes/xts128.o ../openssl/crypto/modes/xts128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/o_dir.d.tmp -MT crypto/o_dir.o -c -o crypto/o_dir.o ../openssl/crypto/o_dir.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/o_fips.d.tmp -MT crypto/o_fips.o -c -o crypto/o_fips.o ../openssl/crypto/o_fips.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/o_fopen.d.tmp -MT crypto/o_fopen.o -c -o crypto/o_fopen.o ../openssl/crypto/o_fopen.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/o_init.d.tmp -MT crypto/o_init.o -c -o crypto/o_init.o ../openssl/crypto/o_init.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/o_str.d.tmp -MT crypto/o_str.o -c -o crypto/o_str.o ../openssl/crypto/o_str.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/o_time.d.tmp -MT crypto/o_time.o -c -o crypto/o_time.o ../openssl/crypto/o_time.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/objects/o_names.d.tmp -MT crypto/objects/o_names.o -c -o crypto/objects/o_names.o ../openssl/crypto/objects/o_names.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/objects/obj_dat.d.tmp -MT crypto/objects/obj_dat.o -c -o crypto/objects/obj_dat.o ../openssl/crypto/objects/obj_dat.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/objects/obj_err.d.tmp -MT crypto/objects/obj_err.o -c -o crypto/objects/obj_err.o ../openssl/crypto/objects/obj_err.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/objects/obj_lib.d.tmp -MT crypto/objects/obj_lib.o -c -o crypto/objects/obj_lib.o ../openssl/crypto/objects/obj_lib.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/objects/obj_xref.d.tmp -MT crypto/objects/obj_xref.o -c -o crypto/objects/obj_xref.o ../openssl/crypto/objects/obj_xref.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_asn.d.tmp -MT crypto/ocsp/ocsp_asn.o -c -o crypto/ocsp/ocsp_asn.o ../openssl/crypto/ocsp/ocsp_asn.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_cl.d.tmp -MT crypto/ocsp/ocsp_cl.o -c -o crypto/ocsp/ocsp_cl.o ../openssl/crypto/ocsp/ocsp_cl.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_err.d.tmp -MT crypto/ocsp/ocsp_err.o -c -o crypto/ocsp/ocsp_err.o ../openssl/crypto/ocsp/ocsp_err.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_ext.d.tmp -MT crypto/ocsp/ocsp_ext.o -c -o crypto/ocsp/ocsp_ext.o ../openssl/crypto/ocsp/ocsp_ext.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_ht.d.tmp -MT crypto/ocsp/ocsp_ht.o -c -o crypto/ocsp/ocsp_ht.o ../openssl/crypto/ocsp/ocsp_ht.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_lib.d.tmp -MT crypto/ocsp/ocsp_lib.o -c -o crypto/ocsp/ocsp_lib.o ../openssl/crypto/ocsp/ocsp_lib.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_prn.d.tmp -MT crypto/ocsp/ocsp_prn.o -c -o crypto/ocsp/ocsp_prn.o ../openssl/crypto/ocsp/ocsp_prn.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_srv.d.tmp -MT crypto/ocsp/ocsp_srv.o -c -o crypto/ocsp/ocsp_srv.o ../openssl/crypto/ocsp/ocsp_srv.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_vfy.d.tmp -MT crypto/ocsp/ocsp_vfy.o -c -o crypto/ocsp/ocsp_vfy.o ../openssl/crypto/ocsp/ocsp_vfy.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/v3_ocsp.d.tmp -MT crypto/ocsp/v3_ocsp.o -c -o crypto/ocsp/v3_ocsp.o ../openssl/crypto/ocsp/v3_ocsp.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_all.d.tmp -MT crypto/pem/pem_all.o -c -o crypto/pem/pem_all.o ../openssl/crypto/pem/pem_all.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_err.d.tmp -MT crypto/pem/pem_err.o -c -o crypto/pem/pem_err.o ../openssl/crypto/pem/pem_err.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_info.d.tmp -MT crypto/pem/pem_info.o -c -o crypto/pem/pem_info.o ../openssl/crypto/pem/pem_info.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_lib.d.tmp -MT crypto/pem/pem_lib.o -c -o crypto/pem/pem_lib.o ../openssl/crypto/pem/pem_lib.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_oth.d.tmp -MT crypto/pem/pem_oth.o -c -o crypto/pem/pem_oth.o ../openssl/crypto/pem/pem_oth.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_pk8.d.tmp -MT crypto/pem/pem_pk8.o -c -o crypto/pem/pem_pk8.o ../openssl/crypto/pem/pem_pk8.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_pkey.d.tmp -MT crypto/pem/pem_pkey.o -c -o crypto/pem/pem_pkey.o ../openssl/crypto/pem/pem_pkey.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_sign.d.tmp -MT crypto/pem/pem_sign.o -c -o crypto/pem/pem_sign.o ../openssl/crypto/pem/pem_sign.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_x509.d.tmp -MT crypto/pem/pem_x509.o -c -o crypto/pem/pem_x509.o ../openssl/crypto/pem/pem_x509.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_xaux.d.tmp -MT crypto/pem/pem_xaux.o -c -o crypto/pem/pem_xaux.o ../openssl/crypto/pem/pem_xaux.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pvkfmt.d.tmp -MT crypto/pem/pvkfmt.o -c -o crypto/pem/pvkfmt.o ../openssl/crypto/pem/pvkfmt.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_add.d.tmp -MT crypto/pkcs12/p12_add.o -c -o crypto/pkcs12/p12_add.o ../openssl/crypto/pkcs12/p12_add.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_asn.d.tmp -MT crypto/pkcs12/p12_asn.o -c -o crypto/pkcs12/p12_asn.o ../openssl/crypto/pkcs12/p12_asn.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_attr.d.tmp -MT crypto/pkcs12/p12_attr.o -c -o crypto/pkcs12/p12_attr.o ../openssl/crypto/pkcs12/p12_attr.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_crpt.d.tmp -MT crypto/pkcs12/p12_crpt.o -c -o crypto/pkcs12/p12_crpt.o ../openssl/crypto/pkcs12/p12_crpt.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_crt.d.tmp -MT crypto/pkcs12/p12_crt.o -c -o crypto/pkcs12/p12_crt.o ../openssl/crypto/pkcs12/p12_crt.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_decr.d.tmp -MT crypto/pkcs12/p12_decr.o -c -o crypto/pkcs12/p12_decr.o ../openssl/crypto/pkcs12/p12_decr.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_init.d.tmp -MT crypto/pkcs12/p12_init.o -c -o crypto/pkcs12/p12_init.o ../openssl/crypto/pkcs12/p12_init.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_key.d.tmp -MT crypto/pkcs12/p12_key.o -c -o crypto/pkcs12/p12_key.o ../openssl/crypto/pkcs12/p12_key.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_kiss.d.tmp -MT crypto/pkcs12/p12_kiss.o -c -o crypto/pkcs12/p12_kiss.o ../openssl/crypto/pkcs12/p12_kiss.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_mutl.d.tmp -MT crypto/pkcs12/p12_mutl.o -c -o crypto/pkcs12/p12_mutl.o ../openssl/crypto/pkcs12/p12_mutl.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_npas.d.tmp -MT crypto/pkcs12/p12_npas.o -c -o crypto/pkcs12/p12_npas.o ../openssl/crypto/pkcs12/p12_npas.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_p8d.d.tmp -MT crypto/pkcs12/p12_p8d.o -c -o crypto/pkcs12/p12_p8d.o ../openssl/crypto/pkcs12/p12_p8d.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_p8e.d.tmp -MT crypto/pkcs12/p12_p8e.o -c -o crypto/pkcs12/p12_p8e.o ../openssl/crypto/pkcs12/p12_p8e.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_sbag.d.tmp -MT crypto/pkcs12/p12_sbag.o -c -o crypto/pkcs12/p12_sbag.o ../openssl/crypto/pkcs12/p12_sbag.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_utl.d.tmp -MT crypto/pkcs12/p12_utl.o -c -o crypto/pkcs12/p12_utl.o ../openssl/crypto/pkcs12/p12_utl.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/pk12err.d.tmp -MT crypto/pkcs12/pk12err.o -c -o crypto/pkcs12/pk12err.o ../openssl/crypto/pkcs12/pk12err.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/bio_pk7.d.tmp -MT crypto/pkcs7/bio_pk7.o -c -o crypto/pkcs7/bio_pk7.o ../openssl/crypto/pkcs7/bio_pk7.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pk7_asn1.d.tmp -MT crypto/pkcs7/pk7_asn1.o -c -o crypto/pkcs7/pk7_asn1.o ../openssl/crypto/pkcs7/pk7_asn1.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pk7_attr.d.tmp -MT crypto/pkcs7/pk7_attr.o -c -o crypto/pkcs7/pk7_attr.o ../openssl/crypto/pkcs7/pk7_attr.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pk7_doit.d.tmp -MT crypto/pkcs7/pk7_doit.o -c -o crypto/pkcs7/pk7_doit.o ../openssl/crypto/pkcs7/pk7_doit.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pk7_lib.d.tmp -MT crypto/pkcs7/pk7_lib.o -c -o crypto/pkcs7/pk7_lib.o ../openssl/crypto/pkcs7/pk7_lib.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pk7_mime.d.tmp -MT crypto/pkcs7/pk7_mime.o -c -o crypto/pkcs7/pk7_mime.o ../openssl/crypto/pkcs7/pk7_mime.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pk7_smime.d.tmp -MT crypto/pkcs7/pk7_smime.o -c -o crypto/pkcs7/pk7_smime.o ../openssl/crypto/pkcs7/pk7_smime.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pkcs7err.d.tmp -MT crypto/pkcs7/pkcs7err.o -c -o crypto/pkcs7/pkcs7err.o ../openssl/crypto/pkcs7/pkcs7err.c CC="clang" /usr/bin/perl ../openssl/crypto/poly1305/asm/poly1305-x86_64.pl elf crypto/poly1305/poly1305-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/poly1305/poly1305-x86_64.d.tmp -MT crypto/poly1305/poly1305-x86_64.o -c -o crypto/poly1305/poly1305-x86_64.o crypto/poly1305/poly1305-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/poly1305/poly1305.d.tmp -MT crypto/poly1305/poly1305.o -c -o crypto/poly1305/poly1305.o ../openssl/crypto/poly1305/poly1305.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/rand/md_rand.d.tmp -MT crypto/rand/md_rand.o -c -o crypto/rand/md_rand.o ../openssl/crypto/rand/md_rand.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/rand/rand_egd.d.tmp -MT crypto/rand/rand_egd.o -c -o crypto/rand/rand_egd.o ../openssl/crypto/rand/rand_egd.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/rand/rand_err.d.tmp -MT crypto/rand/rand_err.o -c -o crypto/rand/rand_err.o ../openssl/crypto/rand/rand_err.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/rand/rand_lib.d.tmp -MT crypto/rand/rand_lib.o -c -o crypto/rand/rand_lib.o ../openssl/crypto/rand/rand_lib.c ../openssl/crypto/rand/rand_lib.c:38:12: error: use of undeclared identifier 'rand_engine_lock'; did you mean 'rand_meth_lock'? return rand_engine_lock != NULL && rand_meth_lock != NULL; ^~~~~~~~~~~~~~~~ rand_meth_lock ../openssl/crypto/rand/rand_lib.c:29:23: note: 'rand_meth_lock' declared here static CRYPTO_RWLOCK *rand_meth_lock = NULL; ^ ../openssl/crypto/rand/rand_lib.c:118:29: error: use of undeclared identifier 'rand_engine_lock'; did you mean 'rand_meth_lock'? CRYPTO_THREAD_lock_free(rand_engine_lock); ^~~~~~~~~~~~~~~~ rand_meth_lock ../openssl/crypto/rand/rand_lib.c:29:23: note: 'rand_meth_lock' declared here static CRYPTO_RWLOCK *rand_meth_lock = NULL; ^ 2 errors generated. Makefile:4258: recipe for target 'crypto/rand/rand_lib.o' failed make[1]: *** [crypto/rand/rand_lib.o] Error 1 make[1]: Leaving directory '/home/openssl/run-checker-1.1.0/no-engine_no-shared' Makefile:128: recipe for target 'all' failed make: *** [all] Error 2 From no-reply at appveyor.com Fri Apr 7 12:47:10 2017 From: no-reply at appveyor.com (AppVeyor) Date: Fri, 07 Apr 2017 12:47:10 +0000 Subject: [openssl-commits] Build failed: openssl master.9350 Message-ID: <20170407124710.41791.55798.5C8CF07A@appveyor.com> An HTML attachment was scrubbed... URL: From matt at openssl.org Fri Apr 7 12:59:54 2017 From: matt at openssl.org (Matt Caswell) Date: Fri, 07 Apr 2017 12:59:54 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491569994.510200.12312.nullmailer@dev.openssl.org> The branch master has been updated via a273157a3e10930b52b30e0ee39552eaf2a56e17 (commit) via 0f5af6b1b854a7086e025f51f1794b179131e61c (commit) via 787d9ec74c86b045ef1ed67e8dc5dc65134ed205 (commit) via cd17bb190cf65413877bcddffb5d1fecdb85eef3 (commit) via 64350ab5877aa30dc8b89cf3373dc28c8b013e19 (commit) via 314aec07ef25844c498794f49dfb1fdf6b467323 (commit) via a37008d90fc4d2bd31a747aebdaf59eaa4e6efaf (commit) via 43ae5eed6f8665b88f45445df666ab2688aae7b0 (commit) via fe874d27d33faa527b5e945137787bf6b0f5c253 (commit) via b443c845942289c831fe867ced1ef11574514385 (commit) from 789a2b6250d5e05dfde6ce259e79ef8c172c9f3f (commit) - Log ----------------------------------------------------------------- commit a273157a3e10930b52b30e0ee39552eaf2a56e17 Author: Matt Caswell Date: Fri Apr 7 11:56:27 2017 +0100 Fix a test failure when configured without TLSv1.3 Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3139) commit 0f5af6b1b854a7086e025f51f1794b179131e61c Author: Matt Caswell Date: Fri Apr 7 11:23:00 2017 +0100 Remove an out of date TODO Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3139) commit 787d9ec74c86b045ef1ed67e8dc5dc65134ed205 Author: Matt Caswell Date: Fri Apr 7 11:20:00 2017 +0100 Create an ENDPOINT enum type for use internally We need it for the custom extensions API Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3139) commit cd17bb190cf65413877bcddffb5d1fecdb85eef3 Author: Matt Caswell Date: Fri Apr 7 11:04:38 2017 +0100 Prefix custom extension API callback types with SSL_ Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3139) commit 64350ab5877aa30dc8b89cf3373dc28c8b013e19 Author: Matt Caswell Date: Fri Apr 7 10:56:59 2017 +0100 Various style tweaks based on feedback Style updates for the new custom extensions API Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3139) commit 314aec07ef25844c498794f49dfb1fdf6b467323 Author: Matt Caswell Date: Thu Apr 6 17:33:23 2017 +0100 Add documentation for the new custom extensions API Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3139) commit a37008d90fc4d2bd31a747aebdaf59eaa4e6efaf Author: Matt Caswell Date: Wed Apr 5 17:29:47 2017 +0100 Add some tests for the new custom extensions API Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3139) commit 43ae5eed6f8665b88f45445df666ab2688aae7b0 Author: Matt Caswell Date: Wed Apr 5 11:59:23 2017 +0100 Implement a new custom extensions API The old custom extensions API was not TLSv1.3 aware. Extensions are used extensively in TLSv1.3 and they can appear in many different types of messages. Therefore we need a new API to be able to cope with that. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3139) commit fe874d27d33faa527b5e945137787bf6b0f5c253 Author: Matt Caswell Date: Tue Apr 4 11:40:02 2017 +0100 Move the extensions context codes into the public API This move prepares for the later addition of the new custom extensions API. The context codes have an additional "SSL_" added to their name to ensure we don't have name clashes with other applications. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3139) commit b443c845942289c831fe867ced1ef11574514385 Author: Matt Caswell Date: Tue Apr 4 11:11:58 2017 +0100 Move ssl/t1_ext.c to ssl/statem/extensions_cust.c Brings all the extensions code together. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3139) ----------------------------------------------------------------------- Summary of changes: doc/man3/SSL_extension_supported.pod | 244 +++++++++++++---- include/openssl/ssl.h | 53 ++++ ssl/build.info | 4 +- ssl/ssl_cert.c | 7 +- ssl/ssl_locl.h | 35 ++- ssl/ssl_rsa.c | 30 +-- ssl/ssl_sess.c | 7 +- ssl/statem/extensions.c | 255 +++++++++--------- ssl/statem/extensions_clnt.c | 10 +- ssl/statem/extensions_cust.c | 494 +++++++++++++++++++++++++++++++++++ ssl/statem/extensions_srvr.c | 2 +- ssl/statem/statem_clnt.c | 35 +-- ssl/statem/statem_lib.c | 2 +- ssl/statem/statem_locl.h | 27 +- ssl/statem/statem_srvr.c | 29 +- ssl/t1_ext.c | 277 -------------------- test/sslapitest.c | 312 ++++++++++++++++++++++ util/libssl.num | 1 + 18 files changed, 1271 insertions(+), 553 deletions(-) create mode 100644 ssl/statem/extensions_cust.c delete mode 100644 ssl/t1_ext.c diff --git a/doc/man3/SSL_extension_supported.pod b/doc/man3/SSL_extension_supported.pod index 166c35a..54a55a7 100644 --- a/doc/man3/SSL_extension_supported.pod +++ b/doc/man3/SSL_extension_supported.pod @@ -3,6 +3,7 @@ =head1 NAME SSL_extension_supported, +SSL_CTX_add_custom_ext, SSL_CTX_add_client_custom_ext, SSL_CTX_add_server_custom_ext, custom_ext_add_cb, custom_ext_free_cb, custom_ext_parse_cb - custom TLS extension handling @@ -11,19 +12,32 @@ custom_ext_add_cb, custom_ext_free_cb, custom_ext_parse_cb #include - int SSL_CTX_add_client_custom_ext(SSL_CTX *ctx, unsigned int ext_type, - custom_ext_add_cb add_cb, - custom_ext_free_cb free_cb, void *add_arg, - custom_ext_parse_cb parse_cb, - void *parse_arg); - - int SSL_CTX_add_server_custom_ext(SSL_CTX *ctx, unsigned int ext_type, - custom_ext_add_cb add_cb, - custom_ext_free_cb free_cb, void *add_arg, - custom_ext_parse_cb parse_cb, - void *parse_arg); - - int SSL_extension_supported(unsigned int ext_type); + typedef int (*SSL_custom_ext_add_cb_ex) (SSL *s, unsigned int ext_type, + unsigned int context, + const unsigned char **out, + size_t *outlen, X509 *x, + size_t chainidx, int *al, + void *add_arg); + + typedef void (*SSL_custom_ext_free_cb_ex) (SSL *s, unsigned int ext_type, + unsigned int context, + const unsigned char *out, + void *add_arg); + + typedef int (*SSL_custom_ext_parse_cb_ex) (SSL *s, unsigned int ext_type, + unsigned int context, + const unsigned char *in, + size_t inlen, X509 *x, + size_t chainidx, int *al, + void *parse_arg); + + int SSL_CTX_add_custom_ext(SSL_CTX *ctx, unsigned int ext_type, + unsigned int context, + SSL_custom_ext_add_cb_ex add_cb, + SSL_custom_ext_free_cb_ex free_cb, + void *add_arg, + SSL_custom_ext_parse_cb_ex parse_cb, + void *parse_arg); typedef int (*custom_ext_add_cb)(SSL *s, unsigned int ext_type, const unsigned char **out, @@ -39,19 +53,47 @@ custom_ext_add_cb, custom_ext_free_cb, custom_ext_parse_cb size_t inlen, int *al, void *parse_arg); + int SSL_CTX_add_client_custom_ext(SSL_CTX *ctx, unsigned int ext_type, + custom_ext_add_cb add_cb, + custom_ext_free_cb free_cb, void *add_arg, + custom_ext_parse_cb parse_cb, + void *parse_arg); + + int SSL_CTX_add_server_custom_ext(SSL_CTX *ctx, unsigned int ext_type, + custom_ext_add_cb add_cb, + custom_ext_free_cb free_cb, void *add_arg, + custom_ext_parse_cb parse_cb, + void *parse_arg); + + int SSL_extension_supported(unsigned int ext_type); =head1 DESCRIPTION -SSL_CTX_add_client_custom_ext() adds a custom extension for a TLS client +SSL_CTX_add_custom_ext() adds a custom extension for a TLS/DTLS client or server +for all supported protocol versions with extension type B and +callbacks B, B and B (see the +L section below). The B value determines +which messages and under what conditions the extension will be added/parsed (see +the L section below). + +SSL_CTX_add_client_custom_ext() adds a custom extension for a TLS/DTLS client with extension type B and callbacks B, B and -B. +B. This function is similar to SSL_CTX_add_custom_ext() except it only +applies to clients, uses the older style of callbacks, and implicitly sets the +B value to: -SSL_CTX_add_server_custom_ext() adds a custom extension for a TLS server + SSL_EXT_TLS1_2_AND_BELOW_ONLY | SSL_EXT_CLIENT_HELLO + | SSL_EXT_TLS1_2_SERVER_HELLO | SSL_EXT_IGNORE_ON_RESUMPTION + +SSL_CTX_add_server_custom_ext() adds a custom extension for a TLS/DTLS server with extension type B and callbacks B, B and -B. +B. This function is similar to SSL_CTX_add_custom_ext() except it +only applies to servers, uses the older style of callbacks, and implicitly sets +the B value to the same as for SSL_CTX_add_client_custom_ext() above. -In both cases the extension type must not be handled by OpenSSL internally -or an error occurs. +The B parameter corresponds to the B field of +RFC5246 et al. It is B a NID. In all cases the extension type must not be +handled by OpenSSL internally or an error occurs. SSL_extension_supported() returns 1 if the extension B is handled internally by OpenSSL and 0 otherwise. @@ -59,9 +101,11 @@ internally by OpenSSL and 0 otherwise. =head1 EXTENSION CALLBACKS The callback B is called to send custom extension data to be -included in ClientHello for TLS clients or ServerHello for servers. The -B parameter is set to the extension type which will be added and -B to the value set when the extension handler was added. +included in various TLS messages. The B parameter is set to the +extension type which will be added and B to the value set when the +extension handler was added. When using the new style callbacks the B +parameter will indicate which message is currently being constructed e.g. for +the ClientHello it will be set to B. If the application wishes to include the extension B it should set B<*out> to the extension data, set B<*outlen> to the length of the @@ -72,16 +116,26 @@ If the B does not wish to include the extension it must return 0. If B returns -1 a fatal handshake error occurs using the TLS alert value specified in B<*al>. -For clients (but not servers) if B is set to NULL a zero length -extension is added for B. +When constructing the ClientHello, if B is set to NULL a zero length +extension is added for B. For all other messages if B is set +to NULL then no extension is added. -For clients every registered B is always called to see if the -application wishes to add an extension to ClientHello. +When constructing a Certificate message the callback will be called for each +certificate in the message. The B parameter will indicate the +current certificate and the B parameter will indicate the position +of the certificate in the message. The first certificate is always the end +entity certificate and has a B value of 0. The certificates are in the +order that they were received in the Certificate message. -For servers every registered B is called once if and only if the -corresponding extension was received in ClientHello to see if the application -wishes to add the extension to ServerHello. That is, if no corresponding extension -was received in ClientHello then B will not be called. +For all messages except the ServerHello and EncryptedExtensions every +registered B is always called to see if the application wishes to add an +extension (as long as all requirements of the specified B are met). + +For the ServerHello and EncryptedExtension messages every registered B +is called once if and only if the requirements of the specified B are +met and the corresponding extension was received in the ClientHello. That is, if +no corresponding extension was received in the ClientHello then B will +not be called. If an extension is added (that is B returns 1) B is called (if it is set) with the value of B set by the add callback. It can be @@ -89,12 +143,19 @@ used to free up any dynamic extension data set by B. Since B is constant (to permit use of constant data in B) applications may need to cast away const to free the data. -The callback B receives data for TLS extensions. For TLS clients -the extension data will come from ServerHello and for TLS servers it will -come from ClientHello. +The callback B receives data for TLS extensions. The callback is only +called if the extension is present and relevant for the context (see +L below). The extension data consists of B bytes in the buffer B for the -extension B. +extension B. + +If the message being parsed is a TLSv1.3 compatible Certificate message then +B will be called for each certificate contained within the message. +The B parameter will indicate the current certificate and the B +parameter will indicate the position of the certificate in the message. The +first certificate is always the end entity certificate and has a B +value of 0. If the B considers the extension data acceptable it must return 1. If it returns 0 or a negative value a fatal handshake error occurs @@ -103,6 +164,88 @@ using the TLS alert value specified in B<*al>. The buffer B is a temporary internal buffer which will not be valid after the callback returns. +=head1 EXTENSION CONTEXTS + +An extension context defines which messages and under which conditions an +extension should be added or expected. The context is built up by performing +a bitwise OR of multiple pre-defined values together. The valid context values +are: + +=over 4 + +=item SSL_EXT_TLS_ONLY + +The extension is only allowed in TLS + +=item SSL_EXT_DTLS_ONLY + +The extension is only allowed in DTLS + +=item SSL_EXT_TLS_IMPLEMENTATION_ONLY + +The extension is allowed in DTLS, but there is only a TLS implementation +available (so it is ignored in DTLS). + +=item SSL_EXT_SSL3_ALLOWED + +Extensions are not typically defined for SSLv3. Setting this value will allow +the extension in SSLv3. Applications will not typically need to use this. + +=item SSL_EXT_TLS1_2_AND_BELOW_ONLY + +The extension is only defined for TLSv1.2/DTLSv1.2 and below. Servers will +ignore this extension if it is present in the ClientHello and TLSv1.3 is +negotiated. + +=item SSL_EXT_TLS1_3_ONLY + +The extension is only defined for TLS1.3 and above. Servers will ignore this +extension if it is present in the ClientHello and TLSv1.2 or below is +negotiated. + +=item SSL_EXT_IGNORE_ON_RESUMPTION + +The extension will be ignored during parsing if a previous session is being +successfully resumed. + +=item SSL_EXT_CLIENT_HELLO + +The extension may be present in the ClientHello message. + +=item SSL_EXT_TLS1_2_SERVER_HELLO + +The extension may be present in a TLSv1.2 or below compatible ServerHello +message. + +=item SSL_EXT_TLS1_3_SERVER_HELLO + +The extension may be present in a TLSv1.3 compatible ServerHello message. + +=item SSL_EXT_TLS1_3_ENCRYPTED_EXTENSIONS + +The extension may be present in an EncryptedExtensions message. + +=item SSL_EXT_TLS1_3_HELLO_RETRY_REQUEST + +The extension may be present in a HelloRetryRequest message. + +=item SSL_EXT_TLS1_3_CERTIFICATE + +The extension may be present in a TLSv1.3 compatible Certificate message. + +=item SSL_EXT_TLS1_3_NEW_SESSION_TICKET + +The extension may be present in a TLSv1.3 compatible NewSessionTicket message. + +=item SSL_EXT_TLS1_3_CERTIFICATE_REQUEST + +The extension may be present in a TLSv1.3 compatible CertificateRequest message. + +=back + +The context must include at least one message value (otherwise the extension +will never be used). + =head1 NOTES The B and B parameters can be set to arbitrary values @@ -110,32 +253,35 @@ which will be passed to the corresponding callbacks. They can, for example, be used to store the extension data received in a convenient structure or pass the extension data to be added or freed when adding extensions. -The B parameter corresponds to the B field of -RFC5246 et al. It is B a NID. - If the same custom extension type is received multiple times a fatal B alert is sent and the handshake aborts. If a custom extension -is received in ServerHello which was not sent in ClientHello a fatal -B alert is sent and the handshake is aborted. The -ServerHello B callback is only called if the corresponding extension -was received in ClientHello. This is compliant with the TLS specifications. -This behaviour ensures that each callback is called at most once and that -an application can never send unsolicited extensions. +is received in a ServerHello/EncryptedExtensions message which was not sent in +the ClientHello a fatal B alert is sent and the +handshake is aborted. The ServerHello/EncryptedExtensions B callback is +only called if the corresponding extension was received in the ClientHello. This +is compliant with the TLS specifications. This behaviour ensures that each +callback is called at most once and that an application can never send +unsolicited extensions. =head1 RETURN VALUES -SSL_CTX_add_client_custom_ext() and SSL_CTX_add_server_custom_ext() return 1 for -success and 0 for failure. A failure can occur if an attempt is made to -add the same B more than once, if an attempt is made to use an -extension type handled internally by OpenSSL or if an internal error occurs -(for example a memory allocation failure). +SSL_CTX_add_custom_ext(), SSL_CTX_add_client_custom_ext() and +SSL_CTX_add_server_custom_ext() return 1 for success and 0 for failure. A +failure can occur if an attempt is made to add the same B more than +once, if an attempt is made to use an extension type handled internally by +OpenSSL or if an internal error occurs (for example a memory allocation +failure). SSL_extension_supported() returns 1 if the extension B is handled internally by OpenSSL and 0 otherwise. +=head1 HISTORY + +The function SSL_CTX_add_custom_ext() was added in OpenSSL version 1.1.1. + =head1 COPYRIGHT -Copyright 2014-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2014-2017 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/include/openssl/ssl.h b/include/openssl/ssl.h index 5ebd997..6e3b9c5 100644 --- a/include/openssl/ssl.h +++ b/include/openssl/ssl.h @@ -250,6 +250,31 @@ typedef int (*tls_session_secret_cb_fn) (SSL *s, void *secret, STACK_OF(SSL_CIPHER) *peer_ciphers, const SSL_CIPHER **cipher, void *arg); +/* Extension context codes */ +/* This extension is only allowed in TLS */ +#define SSL_EXT_TLS_ONLY 0x0001 +/* This extension is only allowed in DTLS */ +#define SSL_EXT_DTLS_ONLY 0x0002 +/* Some extensions may be allowed in DTLS but we don't implement them for it */ +#define SSL_EXT_TLS_IMPLEMENTATION_ONLY 0x0004 +/* Most extensions are not defined for SSLv3 but EXT_TYPE_renegotiate is */ +#define SSL_EXT_SSL3_ALLOWED 0x0008 +/* Extension is only defined for TLS1.2 and below */ +#define SSL_EXT_TLS1_2_AND_BELOW_ONLY 0x0010 +/* Extension is only defined for TLS1.3 and above */ +#define SSL_EXT_TLS1_3_ONLY 0x0020 +/* Ignore this extension during parsing if we are resuming */ +#define SSL_EXT_IGNORE_ON_RESUMPTION 0x0040 +#define SSL_EXT_CLIENT_HELLO 0x0080 +/* Really means TLS1.2 or below */ +#define SSL_EXT_TLS1_2_SERVER_HELLO 0x0100 +#define SSL_EXT_TLS1_3_SERVER_HELLO 0x0200 +#define SSL_EXT_TLS1_3_ENCRYPTED_EXTENSIONS 0x0400 +#define SSL_EXT_TLS1_3_HELLO_RETRY_REQUEST 0x0800 +#define SSL_EXT_TLS1_3_CERTIFICATE 0x1000 +#define SSL_EXT_TLS1_3_NEW_SESSION_TICKET 0x2000 +#define SSL_EXT_TLS1_3_CERTIFICATE_REQUEST 0x4000 + /* Typedefs for handling custom extensions */ typedef int (*custom_ext_add_cb) (SSL *s, unsigned int ext_type, @@ -263,6 +288,26 @@ typedef int (*custom_ext_parse_cb) (SSL *s, unsigned int ext_type, const unsigned char *in, size_t inlen, int *al, void *parse_arg); + +typedef int (*SSL_custom_ext_add_cb_ex) (SSL *s, unsigned int ext_type, + unsigned int context, + const unsigned char **out, + size_t *outlen, X509 *x, + size_t chainidx, + int *al, void *add_arg); + +typedef void (*SSL_custom_ext_free_cb_ex) (SSL *s, unsigned int ext_type, + unsigned int context, + const unsigned char *out, + void *add_arg); + +typedef int (*SSL_custom_ext_parse_cb_ex) (SSL *s, unsigned int ext_type, + unsigned int context, + const unsigned char *in, + size_t inlen, X509 *x, + size_t chainidx, + int *al, void *parse_arg); + /* Typedef for verification callback */ typedef int (*SSL_verify_cb)(int preverify_ok, X509_STORE_CTX *x509_ctx); @@ -756,6 +801,14 @@ __owur int SSL_CTX_add_server_custom_ext(SSL_CTX *ctx, unsigned int ext_type, custom_ext_parse_cb parse_cb, void *parse_arg); +__owur int SSL_CTX_add_custom_ext(SSL_CTX *ctx, unsigned int ext_type, + unsigned int context, + SSL_custom_ext_add_cb_ex add_cb, + SSL_custom_ext_free_cb_ex free_cb, + void *add_arg, + SSL_custom_ext_parse_cb_ex parse_cb, + void *parse_arg); + __owur int SSL_extension_supported(unsigned int ext_type); # define SSL_NOTHING 1 diff --git a/ssl/build.info b/ssl/build.info index f13c11f..bb2f1de 100644 --- a/ssl/build.info +++ b/ssl/build.info @@ -3,8 +3,8 @@ SOURCE[../libssl]=\ pqueue.c packet.c \ statem/statem_srvr.c statem/statem_clnt.c s3_lib.c s3_enc.c record/rec_layer_s3.c \ statem/statem_lib.c statem/extensions.c statem/extensions_srvr.c \ - statem/extensions_clnt.c s3_cbc.c s3_msg.c \ - methods.c t1_lib.c t1_enc.c tls13_enc.c t1_ext.c \ + statem/extensions_clnt.c statem/extensions_cust.c s3_cbc.c s3_msg.c \ + methods.c t1_lib.c t1_enc.c tls13_enc.c \ d1_lib.c record/rec_layer_d1.c d1_msg.c \ statem/statem_dtls.c d1_srtp.c \ ssl_lib.c ssl_cert.c ssl_sess.c \ diff --git a/ssl/ssl_cert.c b/ssl/ssl_cert.c index a4e7977..3a85ede 100644 --- a/ssl/ssl_cert.c +++ b/ssl/ssl_cert.c @@ -190,9 +190,7 @@ CERT *ssl_cert_dup(CERT *cert) ret->sec_level = cert->sec_level; ret->sec_ex = cert->sec_ex; - if (!custom_exts_copy(&ret->cli_ext, &cert->cli_ext)) - goto err; - if (!custom_exts_copy(&ret->srv_ext, &cert->srv_ext)) + if (!custom_exts_copy(&ret->custext, &cert->custext)) goto err; #ifndef OPENSSL_NO_PSK if (cert->psk_identity_hint) { @@ -254,8 +252,7 @@ void ssl_cert_free(CERT *c) OPENSSL_free(c->ctype); X509_STORE_free(c->verify_store); X509_STORE_free(c->chain_store); - custom_exts_free(&c->cli_ext); - custom_exts_free(&c->srv_ext); + custom_exts_free(&c->custext); #ifndef OPENSSL_NO_PSK OPENSSL_free(c->psk_identity_hint); #endif diff --git a/ssl/ssl_locl.h b/ssl/ssl_locl.h index f532931..5ca7237 100644 --- a/ssl/ssl_locl.h +++ b/ssl/ssl_locl.h @@ -1616,17 +1616,27 @@ struct cert_pkey_st { # define SSL_CERT_FLAGS_CHECK_TLS_STRICT \ (SSL_CERT_FLAG_SUITEB_128_LOS|SSL_CERT_FLAG_TLS_STRICT) +typedef enum { + ENDPOINT_CLIENT = 0, + ENDPOINT_SERVER, + ENDPOINT_BOTH +} ENDPOINT; + + typedef struct { unsigned short ext_type; + ENDPOINT role; + /* The context which this extension applies to */ + unsigned int context; /* * Per-connection flags relating to this extension type: not used if * part of an SSL_CTX structure. */ uint32_t ext_flags; - custom_ext_add_cb add_cb; - custom_ext_free_cb free_cb; + SSL_custom_ext_add_cb_ex add_cb; + SSL_custom_ext_free_cb_ex free_cb; void *add_arg; - custom_ext_parse_cb parse_cb; + SSL_custom_ext_parse_cb_ex parse_cb; void *parse_arg; } custom_ext_method; @@ -1706,9 +1716,8 @@ typedef struct cert_st { */ X509_STORE *chain_store; X509_STORE *verify_store; - /* Custom extension methods for server and client */ - custom_ext_methods cli_ext; - custom_ext_methods srv_ext; + /* Custom extensions */ + custom_ext_methods custext; /* Security callback */ int (*sec_cb) (const SSL *s, const SSL_CTX *ctx, int op, int bits, int nid, void *other, void *ex); @@ -2436,15 +2445,19 @@ __owur int srp_generate_server_master_secret(SSL *s); __owur int srp_generate_client_master_secret(SSL *s); __owur int srp_verify_server_param(SSL *s, int *al); -/* t1_ext.c */ +/* statem/extensions_cust.c */ + +custom_ext_method *custom_ext_find(const custom_ext_methods *exts, + ENDPOINT role, unsigned int ext_type, + size_t *idx); void custom_ext_init(custom_ext_methods *meths); -__owur int custom_ext_parse(SSL *s, int server, - unsigned int ext_type, +__owur int custom_ext_parse(SSL *s, unsigned int context, unsigned int ext_type, const unsigned char *ext_data, size_t ext_size, - int *al); -__owur int custom_ext_add(SSL *s, int server, WPACKET *pkt, int *al); + X509 *x, size_t chainidx, int *al); +__owur int custom_ext_add(SSL *s, int context, WPACKET *pkt, X509 *x, + size_t chainidx, int maxversion, int *al); __owur int custom_exts_copy(custom_ext_methods *dst, const custom_ext_methods *src); diff --git a/ssl/ssl_rsa.c b/ssl/ssl_rsa.c index a94fb13..87be646 100644 --- a/ssl/ssl_rsa.c +++ b/ssl/ssl_rsa.c @@ -797,26 +797,16 @@ static int serverinfo_process_buffer(const unsigned char *serverinfo, /* Register callbacks for extensions */ ext_type = (serverinfo[0] << 8) + serverinfo[1]; - if (ctx) { - int have_ext_cbs = 0; - size_t i; - custom_ext_methods *exts = &ctx->cert->srv_ext; - custom_ext_method *meth = exts->meths; - - for (i = 0; i < exts->meths_count; i++, meth++) { - if (ext_type == meth->ext_type) { - have_ext_cbs = 1; - break; - } - } - - if (!have_ext_cbs && !SSL_CTX_add_server_custom_ext(ctx, ext_type, - serverinfo_srv_add_cb, - NULL, NULL, - serverinfo_srv_parse_cb, - NULL)) - return 0; - } + if (ctx != NULL + && custom_ext_find(&ctx->cert->custext, ENDPOINT_SERVER, + ext_type, NULL) + == NULL + && !SSL_CTX_add_server_custom_ext(ctx, ext_type, + serverinfo_srv_add_cb, + NULL, NULL, + serverinfo_srv_parse_cb, + NULL)) + return 0; serverinfo += 2; serverinfo_length -= 2; diff --git a/ssl/ssl_sess.c b/ssl/ssl_sess.c index ab19497..d1a4014 100644 --- a/ssl/ssl_sess.c +++ b/ssl/ssl_sess.c @@ -468,9 +468,10 @@ int ssl_get_prev_session(SSL *s, CLIENTHELLO_MSG *hello, int *al) TICKET_RETURN r; if (SSL_IS_TLS13(s)) { - if (!tls_parse_extension(s, TLSEXT_IDX_psk_kex_modes, EXT_CLIENT_HELLO, - hello->pre_proc_exts, NULL, 0, al) - || !tls_parse_extension(s, TLSEXT_IDX_psk, EXT_CLIENT_HELLO, + if (!tls_parse_extension(s, TLSEXT_IDX_psk_kex_modes, + SSL_EXT_CLIENT_HELLO, hello->pre_proc_exts, + NULL, 0, al) + || !tls_parse_extension(s, TLSEXT_IDX_psk, SSL_EXT_CLIENT_HELLO, hello->pre_proc_exts, NULL, 0, al)) return -1; diff --git a/ssl/statem/extensions.c b/ssl/statem/extensions.c index 96c5394..cd1d0bd 100644 --- a/ssl/statem/extensions.c +++ b/ssl/statem/extensions.c @@ -114,16 +114,16 @@ typedef struct extensions_definition_st { static const EXTENSION_DEFINITION ext_defs[] = { { TLSEXT_TYPE_renegotiate, - EXT_CLIENT_HELLO | EXT_TLS1_2_SERVER_HELLO | EXT_SSL3_ALLOWED - | EXT_TLS1_2_AND_BELOW_ONLY, + SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_2_SERVER_HELLO + | SSL_EXT_SSL3_ALLOWED | SSL_EXT_TLS1_2_AND_BELOW_ONLY, NULL, tls_parse_ctos_renegotiate, tls_parse_stoc_renegotiate, tls_construct_stoc_renegotiate, tls_construct_ctos_renegotiate, final_renegotiate }, { TLSEXT_TYPE_server_name, - EXT_CLIENT_HELLO | EXT_TLS1_2_SERVER_HELLO - | EXT_TLS1_3_ENCRYPTED_EXTENSIONS, + SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_2_SERVER_HELLO + | SSL_EXT_TLS1_3_ENCRYPTED_EXTENSIONS, init_server_name, tls_parse_ctos_server_name, tls_parse_stoc_server_name, tls_construct_stoc_server_name, tls_construct_ctos_server_name, @@ -132,7 +132,7 @@ static const EXTENSION_DEFINITION ext_defs[] = { #ifndef OPENSSL_NO_SRP { TLSEXT_TYPE_srp, - EXT_CLIENT_HELLO | EXT_TLS1_2_AND_BELOW_ONLY, + SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_2_AND_BELOW_ONLY, init_srp, tls_parse_ctos_srp, NULL, NULL, tls_construct_ctos_srp, NULL }, #else @@ -141,14 +141,15 @@ static const EXTENSION_DEFINITION ext_defs[] = { #ifndef OPENSSL_NO_EC { TLSEXT_TYPE_ec_point_formats, - EXT_CLIENT_HELLO | EXT_TLS1_2_SERVER_HELLO | EXT_TLS1_2_AND_BELOW_ONLY, + SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_2_SERVER_HELLO + | SSL_EXT_TLS1_2_AND_BELOW_ONLY, NULL, tls_parse_ctos_ec_pt_formats, tls_parse_stoc_ec_pt_formats, tls_construct_stoc_ec_pt_formats, tls_construct_ctos_ec_pt_formats, final_ec_pt_formats }, { TLSEXT_TYPE_supported_groups, - EXT_CLIENT_HELLO | EXT_TLS1_3_ENCRYPTED_EXTENSIONS, + SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_3_ENCRYPTED_EXTENSIONS, NULL, tls_parse_ctos_supported_groups, NULL, NULL /* TODO(TLS1.3): Need to add this */, tls_construct_ctos_supported_groups, NULL @@ -159,14 +160,15 @@ static const EXTENSION_DEFINITION ext_defs[] = { #endif { TLSEXT_TYPE_session_ticket, - EXT_CLIENT_HELLO | EXT_TLS1_2_SERVER_HELLO | EXT_TLS1_2_AND_BELOW_ONLY, + SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_2_SERVER_HELLO + | SSL_EXT_TLS1_2_AND_BELOW_ONLY, init_session_ticket, tls_parse_ctos_session_ticket, tls_parse_stoc_session_ticket, tls_construct_stoc_session_ticket, tls_construct_ctos_session_ticket, NULL }, { TLSEXT_TYPE_signature_algorithms, - EXT_CLIENT_HELLO | EXT_TLS1_3_CERTIFICATE_REQUEST, + SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_3_CERTIFICATE_REQUEST, init_sig_algs, tls_parse_ctos_sig_algs, tls_parse_ctos_sig_algs, tls_construct_ctos_sig_algs, tls_construct_ctos_sig_algs, final_sig_algs @@ -174,8 +176,8 @@ static const EXTENSION_DEFINITION ext_defs[] = { #ifndef OPENSSL_NO_OCSP { TLSEXT_TYPE_status_request, - EXT_CLIENT_HELLO | EXT_TLS1_2_SERVER_HELLO - | EXT_TLS1_3_CERTIFICATE, + SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_2_SERVER_HELLO + | SSL_EXT_TLS1_3_CERTIFICATE, init_status_request, tls_parse_ctos_status_request, tls_parse_stoc_status_request, tls_construct_stoc_status_request, tls_construct_ctos_status_request, NULL @@ -186,7 +188,8 @@ static const EXTENSION_DEFINITION ext_defs[] = { #ifndef OPENSSL_NO_NEXTPROTONEG { TLSEXT_TYPE_next_proto_neg, - EXT_CLIENT_HELLO | EXT_TLS1_2_SERVER_HELLO | EXT_TLS1_2_AND_BELOW_ONLY, + SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_2_SERVER_HELLO + | SSL_EXT_TLS1_2_AND_BELOW_ONLY, init_npn, tls_parse_ctos_npn, tls_parse_stoc_npn, tls_construct_stoc_next_proto_neg, tls_construct_ctos_npn, NULL }, @@ -199,16 +202,16 @@ static const EXTENSION_DEFINITION ext_defs[] = { * happens after server_name callbacks */ TLSEXT_TYPE_application_layer_protocol_negotiation, - EXT_CLIENT_HELLO | EXT_TLS1_2_SERVER_HELLO - | EXT_TLS1_3_ENCRYPTED_EXTENSIONS, + SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_2_SERVER_HELLO + | SSL_EXT_TLS1_3_ENCRYPTED_EXTENSIONS, init_alpn, tls_parse_ctos_alpn, tls_parse_stoc_alpn, tls_construct_stoc_alpn, tls_construct_ctos_alpn, final_alpn }, #ifndef OPENSSL_NO_SRTP { TLSEXT_TYPE_use_srtp, - EXT_CLIENT_HELLO | EXT_TLS1_2_SERVER_HELLO - | EXT_TLS1_3_ENCRYPTED_EXTENSIONS | EXT_DTLS_ONLY, + SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_2_SERVER_HELLO + | SSL_EXT_TLS1_3_ENCRYPTED_EXTENSIONS | SSL_EXT_DTLS_ONLY, init_srtp, tls_parse_ctos_use_srtp, tls_parse_stoc_use_srtp, tls_construct_stoc_use_srtp, tls_construct_ctos_use_srtp, NULL }, @@ -217,15 +220,16 @@ static const EXTENSION_DEFINITION ext_defs[] = { #endif { TLSEXT_TYPE_encrypt_then_mac, - EXT_CLIENT_HELLO | EXT_TLS1_2_SERVER_HELLO | EXT_TLS1_2_AND_BELOW_ONLY | EXT_SSL3_ALLOWED, + SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_2_SERVER_HELLO + | SSL_EXT_TLS1_2_AND_BELOW_ONLY, init_etm, tls_parse_ctos_etm, tls_parse_stoc_etm, tls_construct_stoc_etm, tls_construct_ctos_etm, NULL }, #ifndef OPENSSL_NO_CT { TLSEXT_TYPE_signed_certificate_timestamp, - EXT_CLIENT_HELLO | EXT_TLS1_2_SERVER_HELLO - | EXT_TLS1_3_CERTIFICATE, + SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_2_SERVER_HELLO + | SSL_EXT_TLS1_3_CERTIFICATE, NULL, /* * No server side support for this, but can be provided by a custom @@ -239,20 +243,23 @@ static const EXTENSION_DEFINITION ext_defs[] = { #endif { TLSEXT_TYPE_extended_master_secret, - EXT_CLIENT_HELLO | EXT_TLS1_2_SERVER_HELLO | EXT_TLS1_2_AND_BELOW_ONLY, + SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_2_SERVER_HELLO + | SSL_EXT_TLS1_2_AND_BELOW_ONLY, init_ems, tls_parse_ctos_ems, tls_parse_stoc_ems, tls_construct_stoc_ems, tls_construct_ctos_ems, final_ems }, { TLSEXT_TYPE_supported_versions, - EXT_CLIENT_HELLO | EXT_TLS_IMPLEMENTATION_ONLY | EXT_TLS1_3_ONLY, + SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS_IMPLEMENTATION_ONLY + | SSL_EXT_TLS1_3_ONLY, NULL, /* Processed inline as part of version selection */ NULL, NULL, NULL, tls_construct_ctos_supported_versions, NULL }, { TLSEXT_TYPE_psk_kex_modes, - EXT_CLIENT_HELLO | EXT_TLS_IMPLEMENTATION_ONLY | EXT_TLS1_3_ONLY, + SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS_IMPLEMENTATION_ONLY + | SSL_EXT_TLS1_3_ONLY, init_psk_kex_modes, tls_parse_ctos_psk_kex_modes, NULL, NULL, tls_construct_ctos_psk_kex_modes, NULL }, @@ -263,9 +270,9 @@ static const EXTENSION_DEFINITION ext_defs[] = { * been parsed before we do this one. */ TLSEXT_TYPE_key_share, - EXT_CLIENT_HELLO | EXT_TLS1_3_SERVER_HELLO - | EXT_TLS1_3_HELLO_RETRY_REQUEST | EXT_TLS_IMPLEMENTATION_ONLY - | EXT_TLS1_3_ONLY, + SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_3_SERVER_HELLO + | SSL_EXT_TLS1_3_HELLO_RETRY_REQUEST | SSL_EXT_TLS_IMPLEMENTATION_ONLY + | SSL_EXT_TLS1_3_ONLY, NULL, tls_parse_ctos_key_share, tls_parse_stoc_key_share, tls_construct_stoc_key_share, tls_construct_ctos_key_share, final_key_share @@ -273,8 +280,8 @@ static const EXTENSION_DEFINITION ext_defs[] = { #endif { TLSEXT_TYPE_cookie, - EXT_CLIENT_HELLO | EXT_TLS1_3_HELLO_RETRY_REQUEST - | EXT_TLS_IMPLEMENTATION_ONLY | EXT_TLS1_3_ONLY, + SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_3_HELLO_RETRY_REQUEST + | SSL_EXT_TLS_IMPLEMENTATION_ONLY | SSL_EXT_TLS1_3_ONLY, NULL, NULL, tls_parse_stoc_cookie, NULL, tls_construct_ctos_cookie, NULL }, @@ -284,20 +291,21 @@ static const EXTENSION_DEFINITION ext_defs[] = { * SSL_OP_CRYPTOPRO_TLSEXT_BUG is set */ TLSEXT_TYPE_cryptopro_bug, - EXT_TLS1_2_SERVER_HELLO | EXT_TLS1_2_AND_BELOW_ONLY, + SSL_EXT_TLS1_2_SERVER_HELLO | SSL_EXT_TLS1_2_AND_BELOW_ONLY, NULL, NULL, NULL, tls_construct_stoc_cryptopro_bug, NULL, NULL }, { TLSEXT_TYPE_early_data, - EXT_CLIENT_HELLO | EXT_TLS1_3_ENCRYPTED_EXTENSIONS - | EXT_TLS1_3_NEW_SESSION_TICKET, + SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_3_ENCRYPTED_EXTENSIONS + | SSL_EXT_TLS1_3_NEW_SESSION_TICKET, NULL, tls_parse_ctos_early_data, tls_parse_stoc_early_data, tls_construct_stoc_early_data, tls_construct_ctos_early_data, final_early_data }, { TLSEXT_TYPE_certificate_authorities, - EXT_CLIENT_HELLO | EXT_TLS1_3_CERTIFICATE_REQUEST | EXT_TLS1_3_ONLY, + SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_3_CERTIFICATE_REQUEST + | SSL_EXT_TLS1_3_ONLY, init_certificate_authorities, tls_parse_certificate_authorities, tls_parse_certificate_authorities, tls_construct_certificate_authorities, @@ -306,7 +314,7 @@ static const EXTENSION_DEFINITION ext_defs[] = { { /* Must be immediately before pre_shared_key */ TLSEXT_TYPE_padding, - EXT_CLIENT_HELLO, + SSL_EXT_CLIENT_HELLO, NULL, /* We send this, but don't read it */ NULL, NULL, NULL, tls_construct_ctos_padding, NULL @@ -314,13 +322,30 @@ static const EXTENSION_DEFINITION ext_defs[] = { { /* Required by the TLSv1.3 spec to always be the last extension */ TLSEXT_TYPE_psk, - EXT_CLIENT_HELLO | EXT_TLS1_3_SERVER_HELLO | EXT_TLS_IMPLEMENTATION_ONLY - | EXT_TLS1_3_ONLY, + SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_3_SERVER_HELLO + | SSL_EXT_TLS_IMPLEMENTATION_ONLY | SSL_EXT_TLS1_3_ONLY, NULL, tls_parse_ctos_psk, tls_parse_stoc_psk, tls_construct_stoc_psk, tls_construct_ctos_psk, NULL } }; +/* Check whether an extension's context matches the current context */ +static int validate_context(SSL *s, unsigned int extctx, unsigned int thisctx) +{ + /* Check we're allowed to use this extension in this context */ + if ((thisctx & extctx) == 0) + return 0; + + if (SSL_IS_DTLS(s)) { + if ((extctx & SSL_EXT_TLS_ONLY) != 0) + return 0; + } else if ((extctx & SSL_EXT_DTLS_ONLY) != 0) { + return 0; + } + + return 1; +} + /* * Verify whether we are allowed to use the extension |type| in the current * |context|. Returns 1 to indicate the extension is allowed or unknown or 0 to @@ -337,38 +362,31 @@ static int verify_extension(SSL *s, unsigned int context, unsigned int type, for (i = 0, thisext = ext_defs; i < builtin_num; i++, thisext++) { if (type == thisext->type) { - /* Check we're allowed to use this extension in this context */ - if ((context & thisext->context) == 0) + if (!validate_context(s, thisext->context, context)) return 0; - if (SSL_IS_DTLS(s)) { - if ((thisext->context & EXT_TLS_ONLY) != 0) - return 0; - } else if ((thisext->context & EXT_DTLS_ONLY) != 0) { - return 0; - } - *found = &rawexlist[i]; return 1; } } - if ((context & (EXT_CLIENT_HELLO | EXT_TLS1_2_SERVER_HELLO)) == 0) { - /* - * Custom extensions only apply to <=TLS1.2. This extension is unknown - * in this context - we allow it - */ - *found = NULL; - return 1; - } - /* Check the custom extensions */ if (meths != NULL) { - for (i = builtin_num; i < builtin_num + meths->meths_count; i++) { - if (meths->meths[i - builtin_num].ext_type == type) { - *found = &rawexlist[i]; - return 1; - } + size_t offset = 0; + ENDPOINT role = ENDPOINT_BOTH; + custom_ext_method *meth = NULL; + + if ((context & SSL_EXT_CLIENT_HELLO) != 0) + role = ENDPOINT_SERVER; + else if ((context & SSL_EXT_TLS1_2_SERVER_HELLO) != 0) + role = ENDPOINT_CLIENT; + + meth = custom_ext_find(meths, role, type, &offset); + if (meth != NULL) { + if (!validate_context(s, meth->context, context)) + return 0; + *found = &rawexlist[offset + builtin_num]; + return 1; } } @@ -382,16 +400,16 @@ static int verify_extension(SSL *s, unsigned int context, unsigned int type, * the extension is relevant for the current context |thisctx| or not. Returns * 1 if the extension is relevant for this context, and 0 otherwise */ -static int extension_is_relevant(SSL *s, unsigned int extctx, - unsigned int thisctx) +int extension_is_relevant(SSL *s, unsigned int extctx, unsigned int thisctx) { if ((SSL_IS_DTLS(s) - && (extctx & EXT_TLS_IMPLEMENTATION_ONLY) != 0) + && (extctx & SSL_EXT_TLS_IMPLEMENTATION_ONLY) != 0) || (s->version == SSL3_VERSION - && (extctx & EXT_SSL3_ALLOWED) == 0) + && (extctx & SSL_EXT_SSL3_ALLOWED) == 0) || (SSL_IS_TLS13(s) - && (extctx & EXT_TLS1_2_AND_BELOW_ONLY) != 0) - || (!SSL_IS_TLS13(s) && (extctx & EXT_TLS1_3_ONLY) != 0)) + && (extctx & SSL_EXT_TLS1_2_AND_BELOW_ONLY) != 0) + || (!SSL_IS_TLS13(s) && (extctx & SSL_EXT_TLS1_3_ONLY) != 0) + || (s->hit && (extctx & SSL_EXT_IGNORE_ON_RESUMPTION) != 0)) return 0; return 1; @@ -419,7 +437,7 @@ int tls_collect_extensions(SSL *s, PACKET *packet, unsigned int context, PACKET extensions = *packet; size_t i = 0; size_t num_exts; - custom_ext_methods *exts = NULL; + custom_ext_methods *exts = &s->cert->custext; RAW_EXTENSION *raw_extensions = NULL; const EXTENSION_DEFINITION *thisexd; @@ -429,12 +447,8 @@ int tls_collect_extensions(SSL *s, PACKET *packet, unsigned int context, * Initialise server side custom extensions. Client side is done during * construction of extensions for the ClientHello. */ - if ((context & EXT_CLIENT_HELLO) != 0) { - exts = &s->cert->srv_ext; - custom_ext_init(&s->cert->srv_ext); - } else if ((context & EXT_TLS1_2_SERVER_HELLO) != 0) { - exts = &s->cert->cli_ext; - } + if ((context & SSL_EXT_CLIENT_HELLO) != 0) + custom_ext_init(&s->cert->custext); num_exts = OSSL_NELEM(ext_defs) + (exts != NULL ? exts->meths_count : 0); raw_extensions = OPENSSL_zalloc(num_exts * sizeof(*raw_extensions)); @@ -463,7 +477,7 @@ int tls_collect_extensions(SSL *s, PACKET *packet, unsigned int context, if (!verify_extension(s, context, type, exts, raw_extensions, &thisex) || (thisex != NULL && thisex->present == 1) || (type == TLSEXT_TYPE_psk - && (context & EXT_CLIENT_HELLO) != 0 + && (context & SSL_EXT_CLIENT_HELLO) != 0 && PACKET_remaining(&extensions) != 0)) { SSLerr(SSL_F_TLS_COLLECT_EXTENSIONS, SSL_R_BAD_EXTENSION); *al = SSL_AD_ILLEGAL_PARAMETER; @@ -552,21 +566,11 @@ int tls_parse_extension(SSL *s, TLSEXT_INDEX idx, int context, */ } - /* - * This is a custom extension. We only allow this if it is a non - * resumed session on the server side. - *chain - * TODO(TLS1.3): We only allow old style <=TLS1.2 custom extensions. - * We're going to need a new mechanism for TLS1.3 to specify which - * messages to add the custom extensions to. - */ - if ((!s->hit || !s->server) - && (context - & (EXT_CLIENT_HELLO | EXT_TLS1_2_SERVER_HELLO)) != 0 - && custom_ext_parse(s, s->server, currext->type, - PACKET_data(&currext->data), - PACKET_remaining(&currext->data), - al) <= 0) + /* Parse custom extensions */ + if (custom_ext_parse(s, context, currext->type, + PACKET_data(&currext->data), + PACKET_remaining(&currext->data), + x, chainidx, al) <= 0) return 0; return 1; @@ -587,11 +591,7 @@ int tls_parse_all_extensions(SSL *s, int context, RAW_EXTENSION *exts, X509 *x, const EXTENSION_DEFINITION *thisexd; /* Calculate the number of extensions in the extensions list */ - if ((context & EXT_CLIENT_HELLO) != 0) { - numexts += s->cert->srv_ext.meths_count; - } else if ((context & EXT_TLS1_2_SERVER_HELLO) != 0) { - numexts += s->cert->cli_ext.meths_count; - } + numexts += s->cert->custext.meths_count; /* Parse each extension in turn */ for (i = 0; i < numexts; i++) { @@ -613,6 +613,30 @@ int tls_parse_all_extensions(SSL *s, int context, RAW_EXTENSION *exts, X509 *x, return 1; } +int should_add_extension(SSL *s, unsigned int extctx, unsigned int thisctx, + int max_version) +{ + /* Skip if not relevant for our context */ + if ((extctx & thisctx) == 0) + return 0; + + /* Check if this extension is defined for our protocol. If not, skip */ + if ((SSL_IS_DTLS(s) && (extctx & SSL_EXT_TLS_IMPLEMENTATION_ONLY) != 0) + || (s->version == SSL3_VERSION + && (extctx & SSL_EXT_SSL3_ALLOWED) == 0) + || (SSL_IS_TLS13(s) + && (extctx & SSL_EXT_TLS1_2_AND_BELOW_ONLY) != 0) + || (!SSL_IS_TLS13(s) + && (extctx & SSL_EXT_TLS1_3_ONLY) != 0 + && (thisctx & SSL_EXT_CLIENT_HELLO) == 0) + || ((extctx & SSL_EXT_TLS1_3_ONLY) != 0 + && (thisctx & SSL_EXT_CLIENT_HELLO) != 0 + && (SSL_IS_DTLS(s) || max_version < TLS1_3_VERSION))) + return 0; + + return 1; +} + /* * Construct all the extensions relevant to the current |context| and write * them to |pkt|. If this is an extension for a Certificate in a Certificate @@ -626,7 +650,7 @@ int tls_construct_extensions(SSL *s, WPACKET *pkt, unsigned int context, X509 *x, size_t chainidx, int *al) { size_t i; - int addcustom = 0, min_version, max_version = 0, reason, tmpal; + int min_version, max_version = 0, reason, tmpal; const EXTENSION_DEFINITION *thisexd; /* @@ -640,15 +664,16 @@ int tls_construct_extensions(SSL *s, WPACKET *pkt, unsigned int context, * If extensions are of zero length then we don't even add the * extensions length bytes to a ClientHello/ServerHello in SSLv3 */ - || ((context & (EXT_CLIENT_HELLO | EXT_TLS1_2_SERVER_HELLO)) != 0 - && s->version == SSL3_VERSION - && !WPACKET_set_flags(pkt, + || ((context & + (SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_2_SERVER_HELLO)) != 0 + && s->version == SSL3_VERSION + && !WPACKET_set_flags(pkt, WPACKET_FLAGS_ABANDON_ON_ZERO_LENGTH))) { SSLerr(SSL_F_TLS_CONSTRUCT_EXTENSIONS, ERR_R_INTERNAL_ERROR); goto err; } - if ((context & EXT_CLIENT_HELLO) != 0) { + if ((context & SSL_EXT_CLIENT_HELLO) != 0) { reason = ssl_get_client_min_max_version(s, &min_version, &max_version); if (reason != 0) { SSLerr(SSL_F_TLS_CONSTRUCT_EXTENSIONS, reason); @@ -657,22 +682,11 @@ int tls_construct_extensions(SSL *s, WPACKET *pkt, unsigned int context, } /* Add custom extensions first */ - if ((context & EXT_CLIENT_HELLO) != 0) { - custom_ext_init(&s->cert->cli_ext); - addcustom = 1; - } else if ((context & EXT_TLS1_2_SERVER_HELLO) != 0) { - /* - * We already initialised the custom extensions during ClientHello - * parsing. - * - * TODO(TLS1.3): We're going to need a new custom extension mechanism - * for TLS1.3, so that custom extensions can specify which of the - * multiple message they wish to add themselves to. - */ - addcustom = 1; + if ((context & SSL_EXT_CLIENT_HELLO) != 0) { + /* On the server side with initiase during ClientHello parsing */ + custom_ext_init(&s->cert->custext); } - - if (addcustom && !custom_ext_add(s, s->server, pkt, &tmpal)) { + if (!custom_ext_add(s, context, pkt, x, chainidx, max_version, &tmpal)) { SSLerr(SSL_F_TLS_CONSTRUCT_EXTENSIONS, ERR_R_INTERNAL_ERROR); goto err; } @@ -682,28 +696,13 @@ int tls_construct_extensions(SSL *s, WPACKET *pkt, unsigned int context, size_t chainidx, int *al); /* Skip if not relevant for our context */ - if ((thisexd->context & context) == 0) + if (!should_add_extension(s, thisexd->context, context, max_version)) continue; construct = s->server ? thisexd->construct_stoc : thisexd->construct_ctos; - /* Check if this extension is defined for our protocol. If not, skip */ - if ((SSL_IS_DTLS(s) - && (thisexd->context & EXT_TLS_IMPLEMENTATION_ONLY) - != 0) - || (s->version == SSL3_VERSION - && (thisexd->context & EXT_SSL3_ALLOWED) == 0) - || (SSL_IS_TLS13(s) - && (thisexd->context & EXT_TLS1_2_AND_BELOW_ONLY) - != 0) - || (!SSL_IS_TLS13(s) - && (thisexd->context & EXT_TLS1_3_ONLY) != 0 - && (context & EXT_CLIENT_HELLO) == 0) - || ((thisexd->context & EXT_TLS1_3_ONLY) != 0 - && (context & EXT_CLIENT_HELLO) != 0 - && (SSL_IS_DTLS(s) || max_version < TLS1_3_VERSION)) - || construct == NULL) + if (construct == NULL) continue; if (!construct(s, pkt, context, x, chainidx, &tmpal)) diff --git a/ssl/statem/extensions_clnt.c b/ssl/statem/extensions_clnt.c index 8bb9a88..7d2a4b0 100644 --- a/ssl/statem/extensions_clnt.c +++ b/ssl/statem/extensions_clnt.c @@ -1092,8 +1092,10 @@ int tls_parse_stoc_sct(SSL *s, PACKET *pkt, unsigned int context, X509 *x, } } } else { - if (custom_ext_parse(s, 0, TLSEXT_TYPE_signed_certificate_timestamp, - PACKET_data(pkt), PACKET_remaining(pkt), al) <= 0) + if (custom_ext_parse(s, context, + TLSEXT_TYPE_signed_certificate_timestamp, + PACKET_data(pkt), PACKET_remaining(pkt), + x, chainidx, al) <= 0) return 0; } @@ -1307,7 +1309,7 @@ int tls_parse_stoc_key_share(SSL *s, PACKET *pkt, unsigned int context, X509 *x, return 0; } - if ((context & EXT_TLS1_3_HELLO_RETRY_REQUEST) != 0) { + if ((context & SSL_EXT_TLS1_3_HELLO_RETRY_REQUEST) != 0) { unsigned const char *pcurves = NULL; size_t i, num_curves; @@ -1411,7 +1413,7 @@ int tls_parse_stoc_cookie(SSL *s, PACKET *pkt, unsigned int context, X509 *x, int tls_parse_stoc_early_data(SSL *s, PACKET *pkt, unsigned int context, X509 *x, size_t chainidx, int *al) { - if (context == EXT_TLS1_3_NEW_SESSION_TICKET) { + if (context == SSL_EXT_TLS1_3_NEW_SESSION_TICKET) { unsigned long max_early_data; if (!PACKET_get_net_4(pkt, &max_early_data) diff --git a/ssl/statem/extensions_cust.c b/ssl/statem/extensions_cust.c new file mode 100644 index 0000000..3188ade --- /dev/null +++ b/ssl/statem/extensions_cust.c @@ -0,0 +1,494 @@ +/* + * Copyright 2014-2016 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +/* Custom extension utility functions */ + +#include +#include +#include "../ssl_locl.h" +#include "statem_locl.h" + +typedef struct { + void *add_arg; + custom_ext_add_cb add_cb; + custom_ext_free_cb free_cb; +} custom_ext_add_cb_wrap; + +typedef struct { + void *parse_arg; + custom_ext_parse_cb parse_cb; +} custom_ext_parse_cb_wrap; + +/* + * Provide thin wrapper callbacks which convert new style arguments to old style + */ +static int custom_ext_add_old_cb_wrap(SSL *s, unsigned int ext_type, + unsigned int context, + const unsigned char **out, + size_t *outlen, X509 *x, size_t chainidx, + int *al, void *add_arg) +{ + custom_ext_add_cb_wrap *add_cb_wrap = (custom_ext_add_cb_wrap *)add_arg; + + if (add_cb_wrap->add_cb == NULL) + return 1; + + return add_cb_wrap->add_cb(s, ext_type, out, outlen, al, + add_cb_wrap->add_arg); +} + +static void custom_ext_free_old_cb_wrap(SSL *s, unsigned int ext_type, + unsigned int context, + const unsigned char *out, void *add_arg) +{ + custom_ext_add_cb_wrap *add_cb_wrap = (custom_ext_add_cb_wrap *)add_arg; + + if (add_cb_wrap->free_cb == NULL) + return; + + add_cb_wrap->free_cb(s, ext_type, out, add_cb_wrap->add_arg); +} + +static int custom_ext_parse_old_cb_wrap(SSL *s, unsigned int ext_type, + unsigned int context, + const unsigned char *in, + size_t inlen, X509 *x, size_t chainidx, + int *al, void *parse_arg) +{ + custom_ext_parse_cb_wrap *parse_cb_wrap = + (custom_ext_parse_cb_wrap *)parse_arg; + + return parse_cb_wrap->parse_cb(s, ext_type, in, inlen, al, + parse_cb_wrap->parse_arg); +} + +/* + * Find a custom extension from the list. The |role| param is there to + * support the legacy API where custom extensions for client and server could + * be set independently on the same SSL_CTX. It is set to ENDPOINT_SERVER if we + * are trying to find a method relevant to the server, ENDPOINT_CLIENT for the + * client, or ENDPOINT_BOTH for either + */ +custom_ext_method *custom_ext_find(const custom_ext_methods *exts, + ENDPOINT role, unsigned int ext_type, + size_t *idx) +{ + size_t i; + custom_ext_method *meth = exts->meths; + + for (i = 0; i < exts->meths_count; i++, meth++) { + if (ext_type == meth->ext_type + && (role == ENDPOINT_BOTH || role == meth->role + || meth->role == ENDPOINT_BOTH)) { + if (idx != NULL) + *idx = i; + return meth; + } + } + return NULL; +} + +/* + * Initialise custom extensions flags to indicate neither sent nor received. + */ +void custom_ext_init(custom_ext_methods *exts) +{ + size_t i; + custom_ext_method *meth = exts->meths; + + for (i = 0; i < exts->meths_count; i++, meth++) + meth->ext_flags = 0; +} + +/* Pass received custom extension data to the application for parsing. */ +int custom_ext_parse(SSL *s, unsigned int context, unsigned int ext_type, + const unsigned char *ext_data, size_t ext_size, X509 *x, + size_t chainidx, int *al) +{ + custom_ext_methods *exts = &s->cert->custext; + custom_ext_method *meth; + ENDPOINT role = ENDPOINT_BOTH; + + if ((context & (SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_2_SERVER_HELLO)) != 0) + role = s->server ? ENDPOINT_SERVER : ENDPOINT_CLIENT; + + meth = custom_ext_find(exts, role, ext_type, NULL); + /* If not found return success */ + if (!meth) + return 1; + + /* Check if extension is defined for our protocol. If not, skip */ + if (!extension_is_relevant(s, meth->context, context)) + return 1; + + if ((context & (SSL_EXT_TLS1_2_SERVER_HELLO + | SSL_EXT_TLS1_3_SERVER_HELLO + | SSL_EXT_TLS1_3_ENCRYPTED_EXTENSIONS)) != 0) { + /* + * If it's ServerHello or EncryptedExtensions we can't have any + * extensions not sent in ClientHello. + */ + if ((meth->ext_flags & SSL_EXT_FLAG_SENT) == 0) { + *al = TLS1_AD_UNSUPPORTED_EXTENSION; + return 0; + } + } + + /* + * Extensions received in the ClientHello are marked with the + * SSL_EXT_FLAG_RECEIVED. This is so we know to add the equivalent + * extensions in the ServerHello/EncryptedExtensions message + */ + if ((context & SSL_EXT_CLIENT_HELLO) != 0) + meth->ext_flags |= SSL_EXT_FLAG_RECEIVED; + + /* If no parse function set return success */ + if (!meth->parse_cb) + return 1; + + return meth->parse_cb(s, ext_type, context, ext_data, ext_size, x, chainidx, + al, meth->parse_arg); +} + +/* + * Request custom extension data from the application and add to the return + * buffer. + */ +int custom_ext_add(SSL *s, int context, WPACKET *pkt, X509 *x, size_t chainidx, + int maxversion, int *al) +{ + custom_ext_methods *exts = &s->cert->custext; + custom_ext_method *meth; + size_t i; + + for (i = 0; i < exts->meths_count; i++) { + const unsigned char *out = NULL; + size_t outlen = 0; + + meth = exts->meths + i; + + if (!should_add_extension(s, meth->context, context, maxversion)) + continue; + + if ((context & (SSL_EXT_TLS1_2_SERVER_HELLO + | SSL_EXT_TLS1_3_SERVER_HELLO + | SSL_EXT_TLS1_3_ENCRYPTED_EXTENSIONS)) != 0) { + /* + * For ServerHello/EncryptedExtensions only send extensions present + * in ClientHello. + */ + if (!(meth->ext_flags & SSL_EXT_FLAG_RECEIVED)) + continue; + } + /* + * We skip it if the callback is absent - except for a ClientHello where + * we add an empty extension. + */ + if ((context & SSL_EXT_CLIENT_HELLO) == 0 && meth->add_cb == NULL) + continue; + + if (meth->add_cb != NULL) { + int cb_retval = meth->add_cb(s, meth->ext_type, context, &out, + &outlen, x, chainidx, al, + meth->add_arg); + + if (cb_retval < 0) + return 0; /* error */ + if (cb_retval == 0) + continue; /* skip this extension */ + } + + if (!WPACKET_put_bytes_u16(pkt, meth->ext_type) + || !WPACKET_start_sub_packet_u16(pkt) + || (outlen > 0 && !WPACKET_memcpy(pkt, out, outlen)) + || !WPACKET_close(pkt)) { + *al = SSL_AD_INTERNAL_ERROR; + return 0; + } + if ((context & SSL_EXT_CLIENT_HELLO) != 0) { + /* + * We can't send duplicates: code logic should prevent this. + */ + assert((meth->ext_flags & SSL_EXT_FLAG_SENT) == 0); + /* + * Indicate extension has been sent: this is both a sanity check to + * ensure we don't send duplicate extensions and indicates that it + * is not an error if the extension is present in ServerHello. + */ + meth->ext_flags |= SSL_EXT_FLAG_SENT; + } + if (meth->free_cb != NULL) + meth->free_cb(s, meth->ext_type, context, out, meth->add_arg); + } + return 1; +} + +/* Copy table of custom extensions */ +int custom_exts_copy(custom_ext_methods *dst, const custom_ext_methods *src) +{ + size_t i; + int err = 0; + + if (src->meths_count > 0) { + dst->meths = + OPENSSL_memdup(src->meths, + sizeof(*src->meths) * src->meths_count); + if (dst->meths == NULL) + return 0; + dst->meths_count = src->meths_count; + + for (i = 0; i < src->meths_count; i++) { + custom_ext_method *methsrc = src->meths + i; + custom_ext_method *methdst = dst->meths + i; + + if (methsrc->add_cb != custom_ext_add_old_cb_wrap) + continue; + + /* + * We have found an old style API wrapper. We need to copy the + * arguments too. + */ + + if (err) { + methdst->add_arg = NULL; + methdst->parse_arg = NULL; + continue; + } + + methdst->add_arg = OPENSSL_memdup(methsrc->add_arg, + sizeof(custom_ext_add_cb_wrap)); + methdst->parse_arg = OPENSSL_memdup(methsrc->parse_arg, + sizeof(custom_ext_parse_cb_wrap)); + + if (methdst->add_arg == NULL || methdst->parse_arg == NULL) + err = 1; + } + } + + if (err) { + custom_exts_free(dst); + return 0; + } + + return 1; +} + +void custom_exts_free(custom_ext_methods *exts) +{ + size_t i; + custom_ext_method *meth; + + for (i = 0, meth = exts->meths; i < exts->meths_count; i++, meth++) { + if (meth->add_cb != custom_ext_add_old_cb_wrap) + continue; + + /* Old style API wrapper. Need to free the arguments too */ + OPENSSL_free(meth->add_arg); + OPENSSL_free(meth->parse_arg); + } + OPENSSL_free(exts->meths); +} + +/* Return true if a client custom extension exists, false otherwise */ +int SSL_CTX_has_client_custom_ext(const SSL_CTX *ctx, unsigned int ext_type) +{ + return custom_ext_find(&ctx->cert->custext, ENDPOINT_CLIENT, ext_type, + NULL) != NULL; +} + +static int add_custom_ext_intern(SSL_CTX *ctx, ENDPOINT role, + unsigned int ext_type, + unsigned int context, + SSL_custom_ext_add_cb_ex add_cb, + SSL_custom_ext_free_cb_ex free_cb, + void *add_arg, + SSL_custom_ext_parse_cb_ex parse_cb, + void *parse_arg) +{ + custom_ext_methods *exts = &ctx->cert->custext; + custom_ext_method *meth, *tmp; + + /* + * Check application error: if add_cb is not set free_cb will never be + * called. + */ + if (add_cb == NULL && free_cb != NULL) + return 0; + +#ifndef OPENSSL_NO_CT + /* + * We don't want applications registering callbacks for SCT extensions + * whilst simultaneously using the built-in SCT validation features, as + * these two things may not play well together. + */ + if (ext_type == TLSEXT_TYPE_signed_certificate_timestamp + && (context & SSL_EXT_CLIENT_HELLO) != 0 + && SSL_CTX_ct_is_enabled(ctx)) + return 0; +#endif + + /* + * Don't add if extension supported internally, but make exception + * for extension types that previously were not supported, but now are. + */ + if (SSL_extension_supported(ext_type) + && ext_type != TLSEXT_TYPE_signed_certificate_timestamp) + return 0; + + /* Extension type must fit in 16 bits */ + if (ext_type > 0xffff) + return 0; + /* Search for duplicate */ + if (custom_ext_find(exts, role, ext_type, NULL)) + return 0; + tmp = OPENSSL_realloc(exts->meths, + (exts->meths_count + 1) * sizeof(custom_ext_method)); + if (tmp == NULL) + return 0; + + exts->meths = tmp; + meth = exts->meths + exts->meths_count; + memset(meth, 0, sizeof(*meth)); + meth->role = role; + meth->context = context; + meth->parse_cb = parse_cb; + meth->add_cb = add_cb; + meth->free_cb = free_cb; + meth->ext_type = ext_type; + meth->add_arg = add_arg; + meth->parse_arg = parse_arg; + exts->meths_count++; + return 1; +} + +static int add_old_custom_ext(SSL_CTX *ctx, ENDPOINT role, + unsigned int ext_type, + unsigned int context, + custom_ext_add_cb add_cb, + custom_ext_free_cb free_cb, + void *add_arg, + custom_ext_parse_cb parse_cb, void *parse_arg) +{ + custom_ext_add_cb_wrap *add_cb_wrap + = OPENSSL_malloc(sizeof(*add_cb_wrap)); + custom_ext_parse_cb_wrap *parse_cb_wrap + = OPENSSL_malloc(sizeof(*parse_cb_wrap)); + int ret; + + if (add_cb_wrap == NULL || parse_cb_wrap == NULL) { + OPENSSL_free(add_cb_wrap); + OPENSSL_free(parse_cb_wrap); + return 0; + } + + add_cb_wrap->add_arg = add_arg; + add_cb_wrap->add_cb = add_cb; + add_cb_wrap->free_cb = free_cb; + parse_cb_wrap->parse_arg = parse_arg; + parse_cb_wrap->parse_cb = parse_cb; + + ret = add_custom_ext_intern(ctx, role, ext_type, + context, + custom_ext_add_old_cb_wrap, + custom_ext_free_old_cb_wrap, + add_cb_wrap, + custom_ext_parse_old_cb_wrap, + parse_cb_wrap); + + if (!ret) { + OPENSSL_free(add_cb_wrap); + OPENSSL_free(parse_cb_wrap); + } + + return ret; +} + +/* Application level functions to add the old custom extension callbacks */ +int SSL_CTX_add_client_custom_ext(SSL_CTX *ctx, unsigned int ext_type, + custom_ext_add_cb add_cb, + custom_ext_free_cb free_cb, + void *add_arg, + custom_ext_parse_cb parse_cb, void *parse_arg) +{ + return add_old_custom_ext(ctx, ENDPOINT_CLIENT, ext_type, + SSL_EXT_TLS1_2_AND_BELOW_ONLY + | SSL_EXT_CLIENT_HELLO + | SSL_EXT_TLS1_2_SERVER_HELLO + | SSL_EXT_IGNORE_ON_RESUMPTION, + add_cb, free_cb, add_arg, parse_cb, parse_arg); +} + +int SSL_CTX_add_server_custom_ext(SSL_CTX *ctx, unsigned int ext_type, + custom_ext_add_cb add_cb, + custom_ext_free_cb free_cb, + void *add_arg, + custom_ext_parse_cb parse_cb, void *parse_arg) +{ + return add_old_custom_ext(ctx, ENDPOINT_SERVER, ext_type, + SSL_EXT_TLS1_2_AND_BELOW_ONLY + | SSL_EXT_CLIENT_HELLO + | SSL_EXT_TLS1_2_SERVER_HELLO + | SSL_EXT_IGNORE_ON_RESUMPTION, + add_cb, free_cb, add_arg, parse_cb, parse_arg); +} + +int SSL_CTX_add_custom_ext(SSL_CTX *ctx, unsigned int ext_type, + unsigned int context, + SSL_custom_ext_add_cb_ex add_cb, + SSL_custom_ext_free_cb_ex free_cb, + void *add_arg, + SSL_custom_ext_parse_cb_ex parse_cb, void *parse_arg) +{ + return add_custom_ext_intern(ctx, ENDPOINT_BOTH, ext_type, context, add_cb, + free_cb, add_arg, parse_cb, parse_arg); +} + +int SSL_extension_supported(unsigned int ext_type) +{ + switch (ext_type) { + /* Internally supported extensions. */ + case TLSEXT_TYPE_application_layer_protocol_negotiation: +#ifndef OPENSSL_NO_EC + case TLSEXT_TYPE_ec_point_formats: + case TLSEXT_TYPE_supported_groups: + case TLSEXT_TYPE_key_share: +#endif +#ifndef OPENSSL_NO_NEXTPROTONEG + case TLSEXT_TYPE_next_proto_neg: +#endif + case TLSEXT_TYPE_padding: + case TLSEXT_TYPE_renegotiate: + case TLSEXT_TYPE_server_name: + case TLSEXT_TYPE_session_ticket: + case TLSEXT_TYPE_signature_algorithms: +#ifndef OPENSSL_NO_SRP + case TLSEXT_TYPE_srp: +#endif +#ifndef OPENSSL_NO_OCSP + case TLSEXT_TYPE_status_request: +#endif +#ifndef OPENSSL_NO_CT + case TLSEXT_TYPE_signed_certificate_timestamp: +#endif +#ifndef OPENSSL_NO_SRTP + case TLSEXT_TYPE_use_srtp: +#endif + case TLSEXT_TYPE_encrypt_then_mac: + case TLSEXT_TYPE_supported_versions: + case TLSEXT_TYPE_extended_master_secret: + case TLSEXT_TYPE_psk_kex_modes: + case TLSEXT_TYPE_cookie: + case TLSEXT_TYPE_early_data: + case TLSEXT_TYPE_certificate_authorities: + case TLSEXT_TYPE_psk: + return 1; + default: + return 0; + } +} diff --git a/ssl/statem/extensions_srvr.c b/ssl/statem/extensions_srvr.c index 076a635..da7e8c8 100644 --- a/ssl/statem/extensions_srvr.c +++ b/ssl/statem/extensions_srvr.c @@ -1133,7 +1133,7 @@ int tls_construct_stoc_cryptopro_bug(SSL *s, WPACKET *pkt, unsigned int context, int tls_construct_stoc_early_data(SSL *s, WPACKET *pkt, unsigned int context, X509 *x, size_t chainidx, int *al) { - if (context == EXT_TLS1_3_NEW_SESSION_TICKET) { + if (context == SSL_EXT_TLS1_3_NEW_SESSION_TICKET) { if (s->max_early_data == 0) return 1; diff --git a/ssl/statem/statem_clnt.c b/ssl/statem/statem_clnt.c index d4f8e0a..8207dde 100644 --- a/ssl/statem/statem_clnt.c +++ b/ssl/statem/statem_clnt.c @@ -1200,7 +1200,7 @@ int tls_construct_client_hello(SSL *s, WPACKET *pkt) } /* TLS extensions */ - if (!tls_construct_extensions(s, pkt, EXT_CLIENT_HELLO, NULL, 0, &al)) { + if (!tls_construct_extensions(s, pkt, SSL_EXT_CLIENT_HELLO, NULL, 0, &al)) { ssl3_send_alert(s, SSL3_AL_FATAL, al); SSLerr(SSL_F_TLS_CONSTRUCT_CLIENT_HELLO, ERR_R_INTERNAL_ERROR); return 0; @@ -1390,8 +1390,8 @@ MSG_PROCESS_RETURN tls_process_server_hello(SSL *s, PACKET *pkt) goto f_err; } - context = SSL_IS_TLS13(s) ? EXT_TLS1_3_SERVER_HELLO - : EXT_TLS1_2_SERVER_HELLO; + context = SSL_IS_TLS13(s) ? SSL_EXT_TLS1_3_SERVER_HELLO + : SSL_EXT_TLS1_2_SERVER_HELLO; if (!tls_collect_extensions(s, &extpkt, context, &extensions, &al, NULL)) goto f_err; @@ -1400,7 +1400,7 @@ MSG_PROCESS_RETURN tls_process_server_hello(SSL *s, PACKET *pkt) if (SSL_IS_TLS13(s)) { /* This will set s->hit if we are resuming */ if (!tls_parse_extension(s, TLSEXT_IDX_psk, - EXT_TLS1_3_SERVER_HELLO, + SSL_EXT_TLS1_3_SERVER_HELLO, extensions, NULL, 0, &al)) goto f_err; } else { @@ -1634,9 +1634,9 @@ static MSG_PROCESS_RETURN tls_process_hello_retry_request(SSL *s, PACKET *pkt) goto f_err; } - if (!tls_collect_extensions(s, &extpkt, EXT_TLS1_3_HELLO_RETRY_REQUEST, + if (!tls_collect_extensions(s, &extpkt, SSL_EXT_TLS1_3_HELLO_RETRY_REQUEST, &extensions, &al, NULL) - || !tls_parse_all_extensions(s, EXT_TLS1_3_HELLO_RETRY_REQUEST, + || !tls_parse_all_extensions(s, SSL_EXT_TLS1_3_HELLO_RETRY_REQUEST, extensions, NULL, 0, &al)) goto f_err; @@ -1728,9 +1728,10 @@ MSG_PROCESS_RETURN tls_process_server_certificate(SSL *s, PACKET *pkt) SSLerr(SSL_F_TLS_PROCESS_SERVER_CERTIFICATE, SSL_R_BAD_LENGTH); goto f_err; } - if (!tls_collect_extensions(s, &extensions, EXT_TLS1_3_CERTIFICATE, - &rawexts, &al, NULL) - || !tls_parse_all_extensions(s, EXT_TLS1_3_CERTIFICATE, + if (!tls_collect_extensions(s, &extensions, + SSL_EXT_TLS1_3_CERTIFICATE, &rawexts, + &al, NULL) + || !tls_parse_all_extensions(s, SSL_EXT_TLS1_3_CERTIFICATE, rawexts, x, chainidx, &al)) { OPENSSL_free(rawexts); goto f_err; @@ -2357,9 +2358,9 @@ MSG_PROCESS_RETURN tls_process_certificate_request(SSL *s, PACKET *pkt) goto err; } if (!tls_collect_extensions(s, &extensions, - EXT_TLS1_3_CERTIFICATE_REQUEST, + SSL_EXT_TLS1_3_CERTIFICATE_REQUEST, &rawexts, &al, NULL) - || !tls_parse_all_extensions(s, EXT_TLS1_3_CERTIFICATE_REQUEST, + || !tls_parse_all_extensions(s, SSL_EXT_TLS1_3_CERTIFICATE_REQUEST, rawexts, NULL, 0, &al)) { OPENSSL_free(rawexts); goto err; @@ -2511,9 +2512,10 @@ MSG_PROCESS_RETURN tls_process_new_session_ticket(SSL *s, PACKET *pkt) if (!PACKET_as_length_prefixed_2(pkt, &extpkt) || !tls_collect_extensions(s, &extpkt, - EXT_TLS1_3_NEW_SESSION_TICKET, + SSL_EXT_TLS1_3_NEW_SESSION_TICKET, &exts, &al, NULL) - || !tls_parse_all_extensions(s, EXT_TLS1_3_NEW_SESSION_TICKET, + || !tls_parse_all_extensions(s, + SSL_EXT_TLS1_3_NEW_SESSION_TICKET, exts, NULL, 0, &al)) { SSLerr(SSL_F_TLS_PROCESS_NEW_SESSION_TICKET, SSL_R_BAD_EXTENSION); goto f_err; @@ -3479,9 +3481,10 @@ static MSG_PROCESS_RETURN tls_process_encrypted_extensions(SSL *s, PACKET *pkt) goto err; } - if (!tls_collect_extensions(s, &extensions, EXT_TLS1_3_ENCRYPTED_EXTENSIONS, - &rawexts, &al, NULL) - || !tls_parse_all_extensions(s, EXT_TLS1_3_ENCRYPTED_EXTENSIONS, + if (!tls_collect_extensions(s, &extensions, + SSL_EXT_TLS1_3_ENCRYPTED_EXTENSIONS, &rawexts, + &al, NULL) + || !tls_parse_all_extensions(s, SSL_EXT_TLS1_3_ENCRYPTED_EXTENSIONS, rawexts, NULL, 0, &al)) goto err; diff --git a/ssl/statem/statem_lib.c b/ssl/statem/statem_lib.c index f292b82..d5e87f7 100644 --- a/ssl/statem/statem_lib.c +++ b/ssl/statem/statem_lib.c @@ -801,7 +801,7 @@ static int ssl_add_cert_to_wpacket(SSL *s, WPACKET *pkt, X509 *x, int chain, } if (SSL_IS_TLS13(s) - && !tls_construct_extensions(s, pkt, EXT_TLS1_3_CERTIFICATE, x, + && !tls_construct_extensions(s, pkt, SSL_EXT_TLS1_3_CERTIFICATE, x, chain, al)) return 0; diff --git a/ssl/statem/statem_locl.h b/ssl/statem/statem_locl.h index 9bf1d8a..2352c6a 100644 --- a/ssl/statem/statem_locl.h +++ b/ssl/statem/statem_locl.h @@ -32,29 +32,6 @@ /* The maximum number of incoming KeyUpdate messages we will accept */ #define MAX_KEY_UPDATE_MESSAGES 32 -/* Extension context codes */ -/* This extension is only allowed in TLS */ -#define EXT_TLS_ONLY 0x0001 -/* This extension is only allowed in DTLS */ -#define EXT_DTLS_ONLY 0x0002 -/* Some extensions may be allowed in DTLS but we don't implement them for it */ -#define EXT_TLS_IMPLEMENTATION_ONLY 0x0004 -/* Most extensions are not defined for SSLv3 but EXT_TYPE_renegotiate is */ -#define EXT_SSL3_ALLOWED 0x0008 -/* Extension is only defined for TLS1.2 and above */ -#define EXT_TLS1_2_AND_BELOW_ONLY 0x0010 -/* Extension is only defined for TLS1.3 and above */ -#define EXT_TLS1_3_ONLY 0x0020 -#define EXT_CLIENT_HELLO 0x0040 -/* Really means TLS1.2 or below */ -#define EXT_TLS1_2_SERVER_HELLO 0x0080 -#define EXT_TLS1_3_SERVER_HELLO 0x0100 -#define EXT_TLS1_3_ENCRYPTED_EXTENSIONS 0x0200 -#define EXT_TLS1_3_HELLO_RETRY_REQUEST 0x0400 -#define EXT_TLS1_3_CERTIFICATE 0x0800 -#define EXT_TLS1_3_NEW_SESSION_TICKET 0x1000 -#define EXT_TLS1_3_CERTIFICATE_REQUEST 0x2000 - /* Dummy message type */ #define SSL3_MT_DUMMY -1 @@ -176,6 +153,8 @@ MSG_PROCESS_RETURN tls_process_end_of_early_data(SSL *s, PACKET *pkt); /* Extension processing */ +__owur int extension_is_relevant(SSL *s, unsigned int extctx, + unsigned int thisctx); __owur int tls_collect_extensions(SSL *s, PACKET *packet, unsigned int context, RAW_EXTENSION **res, int *al, size_t *len); __owur int tls_parse_extension(SSL *s, TLSEXT_INDEX idx, int context, @@ -183,6 +162,8 @@ __owur int tls_parse_extension(SSL *s, TLSEXT_INDEX idx, int context, int *al); __owur int tls_parse_all_extensions(SSL *s, int context, RAW_EXTENSION *exts, X509 *x, size_t chainidx, int *al); +__owur int should_add_extension(SSL *s, unsigned int extctx, + unsigned int thisctx, int max_version); __owur int tls_construct_extensions(SSL *s, WPACKET *pkt, unsigned int context, X509 *x, size_t chainidx, int *al); diff --git a/ssl/statem/statem_srvr.c b/ssl/statem/statem_srvr.c index 1c6c35e..d931c7f 100644 --- a/ssl/statem/statem_srvr.c +++ b/ssl/statem/statem_srvr.c @@ -1442,7 +1442,7 @@ MSG_PROCESS_RETURN tls_process_client_hello(SSL *s, PACKET *pkt) /* Preserve the raw extensions PACKET for later use */ extensions = clienthello->extensions; - if (!tls_collect_extensions(s, &extensions, EXT_CLIENT_HELLO, + if (!tls_collect_extensions(s, &extensions, SSL_EXT_CLIENT_HELLO, &clienthello->pre_proc_exts, &al, &clienthello->pre_proc_exts_len)) { /* SSLerr already been called */ @@ -1580,7 +1580,7 @@ static int tls_early_post_process_client_hello(SSL *s, int *al) /* We need to do this before getting the session */ if (!tls_parse_extension(s, TLSEXT_IDX_extended_master_secret, - EXT_CLIENT_HELLO, + SSL_EXT_CLIENT_HELLO, clienthello->pre_proc_exts, NULL, 0, al)) { SSLerr(SSL_F_TLS_EARLY_POST_PROCESS_CLIENT_HELLO, SSL_R_CLIENTHELLO_TLSEXT); goto err; @@ -1708,7 +1708,7 @@ static int tls_early_post_process_client_hello(SSL *s, int *al) #endif /* !OPENSSL_NO_EC */ /* TLS extensions */ - if (!tls_parse_all_extensions(s, EXT_CLIENT_HELLO, + if (!tls_parse_all_extensions(s, SSL_EXT_CLIENT_HELLO, clienthello->pre_proc_exts, NULL, 0, al)) { SSLerr(SSL_F_TLS_EARLY_POST_PROCESS_CLIENT_HELLO, SSL_R_PARSE_TLSEXT); goto err; @@ -2127,8 +2127,8 @@ int tls_construct_server_hello(SSL *s, WPACKET *pkt) && !WPACKET_put_bytes_u8(pkt, compm)) || !tls_construct_extensions(s, pkt, SSL_IS_TLS13(s) - ? EXT_TLS1_3_SERVER_HELLO - : EXT_TLS1_2_SERVER_HELLO, + ? SSL_EXT_TLS1_3_SERVER_HELLO + : SSL_EXT_TLS1_2_SERVER_HELLO, NULL, 0, &al)) { SSLerr(SSL_F_TLS_CONSTRUCT_SERVER_HELLO, ERR_R_INTERNAL_ERROR); goto err; @@ -2510,8 +2510,9 @@ int tls_construct_certificate_request(SSL *s, WPACKET *pkt) goto err; } - if (!tls_construct_extensions(s, pkt, EXT_TLS1_3_CERTIFICATE_REQUEST, - NULL, 0, &al)) { + if (!tls_construct_extensions(s, pkt, + SSL_EXT_TLS1_3_CERTIFICATE_REQUEST, NULL, + 0, &al)) { SSLerr(SSL_F_TLS_CONSTRUCT_CERTIFICATE_REQUEST, ERR_R_INTERNAL_ERROR); goto err; @@ -3251,9 +3252,10 @@ MSG_PROCESS_RETURN tls_process_client_certificate(SSL *s, PACKET *pkt) SSLerr(SSL_F_TLS_PROCESS_CLIENT_CERTIFICATE, SSL_R_BAD_LENGTH); goto f_err; } - if (!tls_collect_extensions(s, &extensions, EXT_TLS1_3_CERTIFICATE, - &rawexts, &al, NULL) - || !tls_parse_all_extensions(s, EXT_TLS1_3_CERTIFICATE, + if (!tls_collect_extensions(s, &extensions, + SSL_EXT_TLS1_3_CERTIFICATE, &rawexts, + &al, NULL) + || !tls_parse_all_extensions(s, SSL_EXT_TLS1_3_CERTIFICATE, rawexts, x, chainidx, &al)) { OPENSSL_free(rawexts); goto f_err; @@ -3550,7 +3552,7 @@ int tls_construct_new_session_ticket(SSL *s, WPACKET *pkt) || !WPACKET_close(pkt) || (SSL_IS_TLS13(s) && !tls_construct_extensions(s, pkt, - EXT_TLS1_3_NEW_SESSION_TICKET, + SSL_EXT_TLS1_3_NEW_SESSION_TICKET, NULL, 0, &al))) { SSLerr(SSL_F_TLS_CONSTRUCT_NEW_SESSION_TICKET, ERR_R_INTERNAL_ERROR); goto err; @@ -3637,7 +3639,7 @@ static int tls_construct_encrypted_extensions(SSL *s, WPACKET *pkt) { int al; - if (!tls_construct_extensions(s, pkt, EXT_TLS1_3_ENCRYPTED_EXTENSIONS, + if (!tls_construct_extensions(s, pkt, SSL_EXT_TLS1_3_ENCRYPTED_EXTENSIONS, NULL, 0, &al)) { ssl3_send_alert(s, SSL3_AL_FATAL, al); SSLerr(SSL_F_TLS_CONSTRUCT_ENCRYPTED_EXTENSIONS, ERR_R_INTERNAL_ERROR); @@ -3659,7 +3661,8 @@ static int tls_construct_hello_retry_request(SSL *s, WPACKET *pkt) */ if (!WPACKET_put_bytes_u16(pkt, TLS1_3_VERSION_DRAFT) || !s->method->put_cipher_by_char(s->s3->tmp.new_cipher, pkt, &len) - || !tls_construct_extensions(s, pkt, EXT_TLS1_3_HELLO_RETRY_REQUEST, + || !tls_construct_extensions(s, pkt, + SSL_EXT_TLS1_3_HELLO_RETRY_REQUEST, NULL, 0, &al)) { SSLerr(SSL_F_TLS_CONSTRUCT_HELLO_RETRY_REQUEST, ERR_R_INTERNAL_ERROR); goto err; diff --git a/ssl/t1_ext.c b/ssl/t1_ext.c deleted file mode 100644 index e3bcb63..0000000 --- a/ssl/t1_ext.c +++ /dev/null @@ -1,277 +0,0 @@ -/* - * Copyright 2014-2016 The OpenSSL Project Authors. All Rights Reserved. - * - * Licensed under the OpenSSL license (the "License"). You may not use - * this file except in compliance with the License. You can obtain a copy - * in the file LICENSE in the source distribution or at - * https://www.openssl.org/source/license.html - */ - -/* Custom extension utility functions */ - -#include -#include "ssl_locl.h" - -/* Find a custom extension from the list. */ -static custom_ext_method *custom_ext_find(const custom_ext_methods *exts, - unsigned int ext_type) -{ - size_t i; - custom_ext_method *meth = exts->meths; - for (i = 0; i < exts->meths_count; i++, meth++) { - if (ext_type == meth->ext_type) - return meth; - } - return NULL; -} - -/* - * Initialise custom extensions flags to indicate neither sent nor received. - */ -void custom_ext_init(custom_ext_methods *exts) -{ - size_t i; - custom_ext_method *meth = exts->meths; - for (i = 0; i < exts->meths_count; i++, meth++) - meth->ext_flags = 0; -} - -/* Pass received custom extension data to the application for parsing. */ -int custom_ext_parse(SSL *s, int server, - unsigned int ext_type, - const unsigned char *ext_data, size_t ext_size, int *al) -{ - custom_ext_methods *exts = server ? &s->cert->srv_ext : &s->cert->cli_ext; - custom_ext_method *meth; - meth = custom_ext_find(exts, ext_type); - /* If not found return success */ - if (!meth) - return 1; - if (!server) { - /* - * If it's ServerHello we can't have any extensions not sent in - * ClientHello. - */ - if (!(meth->ext_flags & SSL_EXT_FLAG_SENT)) { - *al = TLS1_AD_UNSUPPORTED_EXTENSION; - return 0; - } - } - /* If already present it's a duplicate */ - if (meth->ext_flags & SSL_EXT_FLAG_RECEIVED) { - *al = TLS1_AD_DECODE_ERROR; - return 0; - } - meth->ext_flags |= SSL_EXT_FLAG_RECEIVED; - /* If no parse function set return success */ - if (!meth->parse_cb) - return 1; - - return meth->parse_cb(s, ext_type, ext_data, ext_size, al, meth->parse_arg); -} - -/* - * Request custom extension data from the application and add to the return - * buffer. - */ -int custom_ext_add(SSL *s, int server, WPACKET *pkt, int *al) -{ - custom_ext_methods *exts = server ? &s->cert->srv_ext : &s->cert->cli_ext; - custom_ext_method *meth; - size_t i; - - for (i = 0; i < exts->meths_count; i++) { - const unsigned char *out = NULL; - size_t outlen = 0; - - meth = exts->meths + i; - - if (server) { - /* - * For ServerHello only send extensions present in ClientHello. - */ - if (!(meth->ext_flags & SSL_EXT_FLAG_RECEIVED)) - continue; - /* If callback absent for server skip it */ - if (!meth->add_cb) - continue; - } - if (meth->add_cb) { - int cb_retval = 0; - cb_retval = meth->add_cb(s, meth->ext_type, - &out, &outlen, al, meth->add_arg); - if (cb_retval < 0) - return 0; /* error */ - if (cb_retval == 0) - continue; /* skip this extension */ - } - - if (!WPACKET_put_bytes_u16(pkt, meth->ext_type) - || !WPACKET_start_sub_packet_u16(pkt) - || (outlen > 0 && !WPACKET_memcpy(pkt, out, outlen)) - || !WPACKET_close(pkt)) { - *al = SSL_AD_INTERNAL_ERROR; - return 0; - } - /* - * We can't send duplicates: code logic should prevent this. - */ - OPENSSL_assert(!(meth->ext_flags & SSL_EXT_FLAG_SENT)); - /* - * Indicate extension has been sent: this is both a sanity check to - * ensure we don't send duplicate extensions and indicates that it is - * not an error if the extension is present in ServerHello. - */ - meth->ext_flags |= SSL_EXT_FLAG_SENT; - if (meth->free_cb) - meth->free_cb(s, meth->ext_type, out, meth->add_arg); - } - return 1; -} - -/* Copy table of custom extensions */ -int custom_exts_copy(custom_ext_methods *dst, const custom_ext_methods *src) -{ - if (src->meths_count) { - dst->meths = - OPENSSL_memdup(src->meths, - sizeof(custom_ext_method) * src->meths_count); - if (dst->meths == NULL) - return 0; - dst->meths_count = src->meths_count; - } - return 1; -} - -void custom_exts_free(custom_ext_methods *exts) -{ - OPENSSL_free(exts->meths); -} - -/* Set callbacks for a custom extension. */ -static int custom_ext_meth_add(custom_ext_methods *exts, - unsigned int ext_type, - custom_ext_add_cb add_cb, - custom_ext_free_cb free_cb, - void *add_arg, - custom_ext_parse_cb parse_cb, void *parse_arg) -{ - custom_ext_method *meth, *tmp; - /* - * Check application error: if add_cb is not set free_cb will never be - * called. - */ - if (!add_cb && free_cb) - return 0; - /* - * Don't add if extension supported internally, but make exception - * for extension types that previously were not supported, but now are. - */ - if (SSL_extension_supported(ext_type) && - ext_type != TLSEXT_TYPE_signed_certificate_timestamp) - return 0; - /* Extension type must fit in 16 bits */ - if (ext_type > 0xffff) - return 0; - /* Search for duplicate */ - if (custom_ext_find(exts, ext_type)) - return 0; - tmp = OPENSSL_realloc(exts->meths, - (exts->meths_count + 1) * sizeof(custom_ext_method)); - - if (tmp == NULL) - return 0; - - exts->meths = tmp; - meth = exts->meths + exts->meths_count; - memset(meth, 0, sizeof(*meth)); - meth->parse_cb = parse_cb; - meth->add_cb = add_cb; - meth->free_cb = free_cb; - meth->ext_type = ext_type; - meth->add_arg = add_arg; - meth->parse_arg = parse_arg; - exts->meths_count++; - return 1; -} - -/* Return true if a client custom extension exists, false otherwise */ -int SSL_CTX_has_client_custom_ext(const SSL_CTX *ctx, unsigned int ext_type) -{ - return custom_ext_find(&ctx->cert->cli_ext, ext_type) != NULL; -} - -/* Application level functions to add custom extension callbacks */ -int SSL_CTX_add_client_custom_ext(SSL_CTX *ctx, unsigned int ext_type, - custom_ext_add_cb add_cb, - custom_ext_free_cb free_cb, - void *add_arg, - custom_ext_parse_cb parse_cb, void *parse_arg) -{ -#ifndef OPENSSL_NO_CT - /* - * We don't want applications registering callbacks for SCT extensions - * whilst simultaneously using the built-in SCT validation features, as - * these two things may not play well together. - */ - if (ext_type == TLSEXT_TYPE_signed_certificate_timestamp && - SSL_CTX_ct_is_enabled(ctx)) - return 0; -#endif - return custom_ext_meth_add(&ctx->cert->cli_ext, ext_type, add_cb, - free_cb, add_arg, parse_cb, parse_arg); -} - -int SSL_CTX_add_server_custom_ext(SSL_CTX *ctx, unsigned int ext_type, - custom_ext_add_cb add_cb, - custom_ext_free_cb free_cb, - void *add_arg, - custom_ext_parse_cb parse_cb, void *parse_arg) -{ - return custom_ext_meth_add(&ctx->cert->srv_ext, ext_type, - add_cb, free_cb, add_arg, parse_cb, parse_arg); -} - -int SSL_extension_supported(unsigned int ext_type) -{ - switch (ext_type) { - /* Internally supported extensions. */ - case TLSEXT_TYPE_application_layer_protocol_negotiation: -#ifndef OPENSSL_NO_EC - case TLSEXT_TYPE_ec_point_formats: - case TLSEXT_TYPE_supported_groups: - case TLSEXT_TYPE_key_share: -#endif -#ifndef OPENSSL_NO_NEXTPROTONEG - case TLSEXT_TYPE_next_proto_neg: -#endif - case TLSEXT_TYPE_padding: - case TLSEXT_TYPE_renegotiate: - case TLSEXT_TYPE_server_name: - case TLSEXT_TYPE_session_ticket: - case TLSEXT_TYPE_signature_algorithms: -#ifndef OPENSSL_NO_SRP - case TLSEXT_TYPE_srp: -#endif -#ifndef OPENSSL_NO_OCSP - case TLSEXT_TYPE_status_request: -#endif -#ifndef OPENSSL_NO_CT - case TLSEXT_TYPE_signed_certificate_timestamp: -#endif -#ifndef OPENSSL_NO_SRTP - case TLSEXT_TYPE_use_srtp: -#endif - case TLSEXT_TYPE_encrypt_then_mac: - case TLSEXT_TYPE_supported_versions: - case TLSEXT_TYPE_extended_master_secret: - case TLSEXT_TYPE_psk_kex_modes: - case TLSEXT_TYPE_cookie: - case TLSEXT_TYPE_early_data: - case TLSEXT_TYPE_certificate_authorities: - case TLSEXT_TYPE_psk: - return 1; - default: - return 0; - } -} diff --git a/test/sslapitest.c b/test/sslapitest.c index ed804c9..3b4d01a 100644 --- a/test/sslapitest.c +++ b/test/sslapitest.c @@ -2250,6 +2250,313 @@ static int test_early_data_tls1_2(int idx) # endif #endif +static int clntaddoldcb = 0; +static int clntparseoldcb = 0; +static int srvaddoldcb = 0; +static int srvparseoldcb = 0; +static int clntaddnewcb = 0; +static int clntparsenewcb = 0; +static int srvaddnewcb = 0; +static int srvparsenewcb = 0; + +#define TEST_EXT_TYPE1 0xff00 + +static int old_add_cb(SSL *s, unsigned int ext_type, const unsigned char **out, + size_t *outlen, int *al, void *add_arg) +{ + int *server = (int *)add_arg; + unsigned char *data; + + if (SSL_is_server(s)) + srvaddoldcb++; + else + clntaddoldcb++; + + if (*server != SSL_is_server(s)) + return -1; + + data = OPENSSL_malloc(sizeof(char)); + if (data == NULL) + return -1; + + *data = 1; + *out = data; + *outlen = sizeof(char); + + return 1; +} + +static void old_free_cb(SSL *s, unsigned int ext_type, const unsigned char *out, + void *add_arg) +{ + OPENSSL_free((unsigned char *)out); +} + +static int old_parse_cb(SSL *s, unsigned int ext_type, const unsigned char *in, + size_t inlen, int *al, void *parse_arg) +{ + int *server = (int *)parse_arg; + + if (SSL_is_server(s)) + srvparseoldcb++; + else + clntparseoldcb++; + + if (*server != SSL_is_server(s)) + return -1; + + if (inlen != sizeof(char) || *in != 1) + return -1; + + return 1; +} + +static int new_add_cb(SSL *s, unsigned int ext_type, unsigned int context, + const unsigned char **out, size_t *outlen, X509 *x, + size_t chainidx, int *al, void *add_arg) +{ + int *server = (int *)add_arg; + unsigned char *data; + + if (SSL_is_server(s)) + srvaddnewcb++; + else + clntaddnewcb++; + + if (*server != SSL_is_server(s)) + return -1; + + data = OPENSSL_malloc(sizeof(char)); + if (data == NULL) + return -1; + + *data = 1; + *out = data; + *outlen = sizeof(char); + + return 1; +} + +static void new_free_cb(SSL *s, unsigned int ext_type, unsigned int context, + const unsigned char *out, void *add_arg) +{ + OPENSSL_free((unsigned char *)out); +} + +static int new_parse_cb(SSL *s, unsigned int ext_type, unsigned int context, + const unsigned char *in, size_t inlen, X509 *x, + size_t chainidx, int *al, void *parse_arg) +{ + int *server = (int *)parse_arg; + + if (SSL_is_server(s)) + srvparsenewcb++; + else + clntparsenewcb++; + + if (*server != SSL_is_server(s)) + return -1; + + if (inlen != sizeof(char) || *in != 1) + return -1; + + return 1; +} +/* + * Custom call back tests. + * Test 0: Old style callbacks in TLSv1.2 + * Test 1: New style callbacks in TLSv1.2 + * Test 2: New style callbacks in TLSv1.3. Extensions in CH and EE + * Test 3: New style callbacks in TLSv1.3. Extensions in CH, SH, EE, Cert + NST + */ +static int test_custom_exts(int tst) { + SSL_CTX *cctx = NULL, *sctx = NULL; + SSL *clientssl = NULL, *serverssl = NULL; + int testresult = 0; + static int server = 1; + static int client = 0; + SSL_SESSION *sess = NULL; + unsigned int context; + + /* Reset callback counters */ + clntaddoldcb = clntparseoldcb = srvaddoldcb = srvparseoldcb = 0; + clntaddnewcb = clntparsenewcb = srvaddnewcb = srvparsenewcb = 0; + + if (!create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), &sctx, + &cctx, cert, privkey)) { + printf("Unable to create SSL_CTX pair\n"); + return 0; + } + + if (tst < 2) { + SSL_CTX_set_options(cctx, SSL_OP_NO_TLSv1_3); + SSL_CTX_set_options(sctx, SSL_OP_NO_TLSv1_3); + } + + if (tst == 3) { + context = SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_2_SERVER_HELLO + | SSL_EXT_TLS1_3_SERVER_HELLO + | SSL_EXT_TLS1_3_ENCRYPTED_EXTENSIONS + | SSL_EXT_TLS1_3_CERTIFICATE + | SSL_EXT_TLS1_3_NEW_SESSION_TICKET; + } else { + context = SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_2_SERVER_HELLO + | SSL_EXT_TLS1_3_ENCRYPTED_EXTENSIONS; + } + + /* Create a client side custom extension */ + if (tst == 0) { + if (!SSL_CTX_add_client_custom_ext(cctx, TEST_EXT_TYPE1, old_add_cb, + old_free_cb, &client, old_parse_cb, + &client)) { + printf("Unable to create old style client side custom extension\n"); + return 0; + } + } else { + if (!SSL_CTX_add_custom_ext(cctx, TEST_EXT_TYPE1, context, new_add_cb, + new_free_cb, &client, new_parse_cb, + &client)) { + printf("Unable to create new style client side custom extension\n"); + return 0; + } + } + + /* Should not be able to add duplicates */ + if (SSL_CTX_add_client_custom_ext(cctx, TEST_EXT_TYPE1, old_add_cb, + old_free_cb, &client, old_parse_cb, + &client)) { + printf("Unexpected success adding duplicate client custom extension\n"); + return 0; + } + if (SSL_CTX_add_custom_ext(cctx, TEST_EXT_TYPE1, context, new_add_cb, + new_free_cb, &client, new_parse_cb, &client)) { + printf("Unexpected success adding duplicate client custom extension\n"); + return 0; + } + + /* Create a server side custom extension */ + if (tst == 0) { + if (!SSL_CTX_add_server_custom_ext(sctx, TEST_EXT_TYPE1, old_add_cb, + old_free_cb, &server, old_parse_cb, + &server)) { + printf("Unable to create old style server side custom extension\n"); + return 0; + } + } else { + if (!SSL_CTX_add_custom_ext(sctx, TEST_EXT_TYPE1, context, new_add_cb, + new_free_cb, &server, new_parse_cb, + &server)) { + printf("Unable to create new style server side custom extension\n"); + return 0; + } + } + + /* Should not be able to add duplicates */ + if (SSL_CTX_add_server_custom_ext(sctx, TEST_EXT_TYPE1, old_add_cb, + old_free_cb, &server, old_parse_cb, + &server)) { + printf("Unexpected success adding duplicate server custom extension\n"); + return 0; + } + if (SSL_CTX_add_custom_ext(sctx, TEST_EXT_TYPE1, context, new_add_cb, + new_free_cb, &server, new_parse_cb, &server)) { + printf("Unexpected success adding duplicate server custom extension\n"); + return 0; + } + + if (!create_ssl_objects(sctx, cctx, &serverssl, &clientssl, NULL, NULL)) { + printf("Unable to create SSL objects\n"); + goto end; + } + + if (!create_ssl_connection(serverssl, clientssl, SSL_ERROR_NONE)) { + printf("Unable to create SSL connection\n"); + goto end; + } + + if (tst == 0) { + if (clntaddoldcb != 1 || clntparseoldcb != 1 || srvaddoldcb != 1 + || srvparseoldcb != 1) { + printf("Custom extension callbacks not called\n"); + goto end; + } + } else if (tst == 1 || tst == 2) { + if (clntaddnewcb != 1 || clntparsenewcb != 1 || srvaddnewcb != 1 + || srvparsenewcb != 1) { + printf("Custom extension callbacks not called\n"); + goto end; + } + } else { + if (clntaddnewcb != 1 || clntparsenewcb != 4 || srvaddnewcb != 4 + || srvparsenewcb != 1) { + printf("Custom extension callbacks not called\n"); + goto end; + } + } + + sess = SSL_get1_session(clientssl); + + SSL_shutdown(clientssl); + SSL_shutdown(serverssl); + + SSL_free(serverssl); + SSL_free(clientssl); + serverssl = clientssl = NULL; + + if (!create_ssl_objects(sctx, cctx, &serverssl, &clientssl, NULL, NULL)) { + printf("Unable to create SSL objects (2)\n"); + goto end; + } + + if (!SSL_set_session(clientssl, sess)) { + printf("Failed setting session\n"); + goto end; + } + + if (!create_ssl_connection(serverssl, clientssl, SSL_ERROR_NONE)) { + printf("Unable to create SSL connection (2)\n"); + goto end; + } + + /* + * For a resumed session we expect to add the ClientHello extension. For the + * old style callbacks we ignore it on the server side because they set + * SSL_EXT_IGNORE_ON_RESUMPTION. The new style callbacks do not ignore + * them. + */ + if (tst == 0) { + if (clntaddoldcb != 2 || clntparseoldcb != 1 || srvaddoldcb != 1 + || srvparseoldcb != 1) { + printf("Unexpected custom extension callback calls\n"); + goto end; + } + } else if (tst == 1 || tst == 2) { + if (clntaddnewcb != 2 || clntparsenewcb != 2 || srvaddnewcb != 2 + || srvparsenewcb != 2) { + printf("Unexpected custom extension callback calls\n"); + goto end; + } + } else { + /* No Certificate message extensions in the resumption handshake */ + if (clntaddnewcb != 2 || clntparsenewcb != 7 || srvaddnewcb != 7 + || srvparsenewcb != 2) { + printf("Unexpected custom extension callback calls\n"); + goto end; + } + } + + testresult = 1; + +end: + SSL_SESSION_free(sess); + SSL_free(serverssl); + SSL_free(clientssl); + SSL_CTX_free(sctx); + SSL_CTX_free(cctx); + + return testresult; +} + int test_main(int argc, char *argv[]) { int testresult = 1; @@ -2295,6 +2602,11 @@ int test_main(int argc, char *argv[]) ADD_ALL_TESTS(test_early_data_tls1_2, 2); # endif #endif +#ifndef OPENSSL_NO_TLS1_3 + ADD_ALL_TESTS(test_custom_exts, 4); +#else + ADD_ALL_TESTS(test_custom_exts, 2); +#endif testresult = run_tests(argv[0]); diff --git a/util/libssl.num b/util/libssl.num index 4994910..49974c9 100644 --- a/util/libssl.num +++ b/util/libssl.num @@ -439,3 +439,4 @@ SSL_get0_CA_list 439 1_1_1 EXIST::FUNCTION: SSL_get0_peer_CA_list 440 1_1_1 EXIST::FUNCTION: SSL_CTX_add1_CA_list 441 1_1_1 EXIST::FUNCTION: SSL_CTX_get0_CA_list 442 1_1_1 EXIST::FUNCTION: +SSL_CTX_add_custom_ext 443 1_1_1 EXIST::FUNCTION: From no-reply at appveyor.com Fri Apr 7 13:38:05 2017 From: no-reply at appveyor.com (AppVeyor) Date: Fri, 07 Apr 2017 13:38:05 +0000 Subject: [openssl-commits] Build completed: openssl master.9351 Message-ID: <20170407133804.106010.97971.8312F443@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Fri Apr 7 14:18:19 2017 From: no-reply at appveyor.com (AppVeyor) Date: Fri, 07 Apr 2017 14:18:19 +0000 Subject: [openssl-commits] Build failed: openssl master.9354 Message-ID: <20170407141808.3834.95695.72CF0BA5@appveyor.com> An HTML attachment was scrubbed... URL: From levitte at openssl.org Fri Apr 7 14:33:42 2017 From: levitte at openssl.org (Richard Levitte) Date: Fri, 07 Apr 2017 14:33:42 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491575622.734191.32216.nullmailer@dev.openssl.org> The branch master has been updated via 2f881d2d9065342454fe352eac9e835cefa0ba90 (commit) from a273157a3e10930b52b30e0ee39552eaf2a56e17 (commit) - Log ----------------------------------------------------------------- commit 2f881d2d9065342454fe352eac9e835cefa0ba90 Author: Richard Levitte Date: Fri Apr 7 16:26:10 2017 +0200 Fix rand_lib.c for no-engine configuration When configured no-engine, we still refered to rand_engine_lock. Rework the lock init code to avoid that. Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3145) ----------------------------------------------------------------------- Summary of changes: crypto/rand/rand_lib.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/crypto/rand/rand_lib.c b/crypto/rand/rand_lib.c index dc62902..40e2464 100644 --- a/crypto/rand/rand_lib.c +++ b/crypto/rand/rand_lib.c @@ -26,11 +26,14 @@ static CRYPTO_ONCE rand_lock_init = CRYPTO_ONCE_STATIC_INIT; DEFINE_RUN_ONCE_STATIC(do_rand_lock_init) { + int ret = 1; #ifndef OPENSSL_NO_ENGINE rand_engine_lock = CRYPTO_THREAD_lock_new(); + ret &= rand_engine_lock != NULL; #endif rand_meth_lock = CRYPTO_THREAD_lock_new(); - return rand_engine_lock != NULL && rand_meth_lock != NULL; + ret &= rand_meth_lock != NULL; + return ret; } int RAND_set_rand_method(const RAND_METHOD *meth) From levitte at openssl.org Fri Apr 7 14:34:45 2017 From: levitte at openssl.org (Richard Levitte) Date: Fri, 07 Apr 2017 14:34:45 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1491575685.381469.720.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 8d8cae7d3028de123a081196897b0ccedf921c6f (commit) from df13eb7ae70073de8c95ca3c7d2f587037582470 (commit) - Log ----------------------------------------------------------------- commit 8d8cae7d3028de123a081196897b0ccedf921c6f Author: Richard Levitte Date: Fri Apr 7 16:26:10 2017 +0200 Fix rand_lib.c for no-engine configuration When configured no-engine, we still refered to rand_engine_lock. Rework the lock init code to avoid that. Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3145) (cherry picked from commit 2f881d2d9065342454fe352eac9e835cefa0ba90) ----------------------------------------------------------------------- Summary of changes: crypto/rand/rand_lib.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/crypto/rand/rand_lib.c b/crypto/rand/rand_lib.c index 9939540..c1373e5 100644 --- a/crypto/rand/rand_lib.c +++ b/crypto/rand/rand_lib.c @@ -31,11 +31,14 @@ static CRYPTO_ONCE rand_lock_init = CRYPTO_ONCE_STATIC_INIT; DEFINE_RUN_ONCE_STATIC(do_rand_lock_init) { + int ret = 1; #ifndef OPENSSL_NO_ENGINE rand_engine_lock = CRYPTO_THREAD_lock_new(); + ret &= rand_engine_lock != NULL; #endif rand_meth_lock = CRYPTO_THREAD_lock_new(); - return rand_engine_lock != NULL && rand_meth_lock != NULL; + ret &= rand_meth_lock != NULL; + return ret; } int RAND_set_rand_method(const RAND_METHOD *meth) From builds at travis-ci.org Fri Apr 7 14:58:53 2017 From: builds at travis-ci.org (Travis CI) Date: Fri, 07 Apr 2017 14:58:53 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10043 (OpenSSL_1_1_0-stable - 8d8cae7) In-Reply-To: Message-ID: <58e7a92bf231f_43fa5605c05681626580@54406ac8-d063-440e-88ea-c94db123a7ce.mail> Build Update for openssl/openssl ------------------------------------- Build: #10043 Status: Still Failing Duration: 15 minutes and 42 seconds Commit: 8d8cae7 (OpenSSL_1_1_0-stable) Author: Richard Levitte Message: Fix rand_lib.c for no-engine configuration When configured no-engine, we still refered to rand_engine_lock. Rework the lock init code to avoid that. Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3145) (cherry picked from commit 2f881d2d9065342454fe352eac9e835cefa0ba90) View the changeset: https://github.com/openssl/openssl/compare/df13eb7ae700...8d8cae7d3028 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/219708511 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From rsalz at openssl.org Fri Apr 7 16:31:31 2017 From: rsalz at openssl.org (Rich Salz) Date: Fri, 07 Apr 2017 16:31:31 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491582691.234939.32055.nullmailer@dev.openssl.org> The branch master has been updated via 076fc55527a1499391fa6de109c8387895199ee9 (commit) from 2f881d2d9065342454fe352eac9e835cefa0ba90 (commit) - Log ----------------------------------------------------------------- commit 076fc55527a1499391fa6de109c8387895199ee9 Author: Rich Salz Date: Fri Apr 7 12:07:42 2017 -0400 Make default_method mostly compile-time Document thread-safety issues Have RSA_null return NULL (always fails) Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/2244) ----------------------------------------------------------------------- Summary of changes: CHANGES | 4 ++ apps/speed.c | 6 +-- crypto/dh/dh_key.c | 12 ++++++ crypto/dh/dh_lib.c | 14 ------- crypto/dsa/dsa_lib.c | 14 ------- crypto/dsa/dsa_ossl.c | 12 ++++++ crypto/rsa/build.info | 2 +- crypto/rsa/rsa_err.c | 5 --- crypto/rsa/rsa_lib.c | 24 +----------- crypto/rsa/rsa_null.c | 93 --------------------------------------------- crypto/rsa/rsa_ossl.c | 23 ++++++++--- crypto/ui/ui_lib.c | 15 -------- crypto/ui/ui_openssl.c | 12 ++++++ doc/man3/DH_set_method.pod | 5 ++- doc/man3/DSA_set_method.pod | 5 ++- doc/man3/RSA_set_method.pod | 14 +++++-- doc/man3/UI_new.pod | 2 + fuzz/client.c | 10 ----- fuzz/server.c | 10 ----- include/openssl/rsa.h | 13 +++---- 20 files changed, 87 insertions(+), 208 deletions(-) delete mode 100644 crypto/rsa/rsa_null.c diff --git a/CHANGES b/CHANGES index 0cce21a..72c78ea 100644 --- a/CHANGES +++ b/CHANGES @@ -57,6 +57,10 @@ *) Support for SSL_OP_NO_ENCRYPT_THEN_MAC in SSL_CONF_cmd. [Emilia K?sper] + *) The RSA "null" method, which was partially supported to avoid patent + issues, has been replaced to always returns NULL. + [Rich Salz] + Changes between 1.1.0d and 1.1.0e [16 Feb 2017] *) Encrypt-Then-Mac renegotiation crash diff --git a/apps/speed.c b/apps/speed.c index 50522ae..f64bea9 100644 --- a/apps/speed.c +++ b/apps/speed.c @@ -1444,12 +1444,8 @@ int speed_main(int argc, char **argv) continue; } #ifndef OPENSSL_NO_RSA -# ifndef RSA_NULL - if (strcmp(*argv, "openssl") == 0) { - RSA_set_default_method(RSA_PKCS1_OpenSSL()); + if (strcmp(*argv, "openssl") == 0) continue; - } -# endif if (strcmp(*argv, "rsa") == 0) { rsa_doit[R_RSA_512] = rsa_doit[R_RSA_1024] = rsa_doit[R_RSA_2048] = rsa_doit[R_RSA_3072] = diff --git a/crypto/dh/dh_key.c b/crypto/dh/dh_key.c index 204e5a7..fce9ff4 100644 --- a/crypto/dh/dh_key.c +++ b/crypto/dh/dh_key.c @@ -56,11 +56,23 @@ static DH_METHOD dh_ossl = { NULL }; +static const DH_METHOD *default_DH_method = &dh_ossl; + const DH_METHOD *DH_OpenSSL(void) { return &dh_ossl; } +void DH_set_default_method(const DH_METHOD *meth) +{ + default_DH_method = meth; +} + +const DH_METHOD *DH_get_default_method(void) +{ + return default_DH_method; +} + static int generate_key(DH *dh) { int ok = 0; diff --git a/crypto/dh/dh_lib.c b/crypto/dh/dh_lib.c index 3dfe7c4..f22bcf0 100644 --- a/crypto/dh/dh_lib.c +++ b/crypto/dh/dh_lib.c @@ -13,20 +13,6 @@ #include "dh_locl.h" #include -static const DH_METHOD *default_DH_method = NULL; - -void DH_set_default_method(const DH_METHOD *meth) -{ - default_DH_method = meth; -} - -const DH_METHOD *DH_get_default_method(void) -{ - if (!default_DH_method) - default_DH_method = DH_OpenSSL(); - return default_DH_method; -} - int DH_set_method(DH *dh, const DH_METHOD *meth) { /* diff --git a/crypto/dsa/dsa_lib.c b/crypto/dsa/dsa_lib.c index e24c6b5..c90d09b 100644 --- a/crypto/dsa/dsa_lib.c +++ b/crypto/dsa/dsa_lib.c @@ -17,20 +17,6 @@ #include #include -static const DSA_METHOD *default_DSA_method = NULL; - -void DSA_set_default_method(const DSA_METHOD *meth) -{ - default_DSA_method = meth; -} - -const DSA_METHOD *DSA_get_default_method(void) -{ - if (!default_DSA_method) - default_DSA_method = DSA_OpenSSL(); - return default_DSA_method; -} - DSA *DSA_new(void) { return DSA_new_method(NULL); diff --git a/crypto/dsa/dsa_ossl.c b/crypto/dsa/dsa_ossl.c index f9f6a13..4793377 100644 --- a/crypto/dsa/dsa_ossl.c +++ b/crypto/dsa/dsa_ossl.c @@ -41,6 +41,18 @@ static DSA_METHOD openssl_dsa_meth = { NULL }; +static const DSA_METHOD *default_DSA_method = &openssl_dsa_meth; + +void DSA_set_default_method(const DSA_METHOD *meth) +{ + default_DSA_method = meth; +} + +const DSA_METHOD *DSA_get_default_method(void) +{ + return default_DSA_method; +} + const DSA_METHOD *DSA_OpenSSL(void) { return &openssl_dsa_meth; diff --git a/crypto/rsa/build.info b/crypto/rsa/build.info index 39b7464..4575b28 100644 --- a/crypto/rsa/build.info +++ b/crypto/rsa/build.info @@ -1,6 +1,6 @@ LIBS=../../libcrypto SOURCE[../../libcrypto]=\ rsa_ossl.c rsa_gen.c rsa_lib.c rsa_sign.c rsa_saos.c rsa_err.c \ - rsa_pk1.c rsa_ssl.c rsa_none.c rsa_oaep.c rsa_chk.c rsa_null.c \ + rsa_pk1.c rsa_ssl.c rsa_none.c rsa_oaep.c rsa_chk.c \ rsa_pss.c rsa_x931.c rsa_asn1.c rsa_depr.c rsa_ameth.c rsa_prn.c \ rsa_pmeth.c rsa_crpt.c rsa_x931g.c rsa_meth.c diff --git a/crypto/rsa/rsa_err.c b/crypto/rsa/rsa_err.c index 112e5a4..c369898 100644 --- a/crypto/rsa/rsa_err.c +++ b/crypto/rsa/rsa_err.c @@ -41,11 +41,6 @@ static ERR_STRING_DATA RSA_str_functs[] = { {ERR_FUNC(RSA_F_RSA_METH_SET1_NAME), "RSA_meth_set1_name"}, {ERR_FUNC(RSA_F_RSA_MGF1_TO_MD), "rsa_mgf1_to_md"}, {ERR_FUNC(RSA_F_RSA_NEW_METHOD), "RSA_new_method"}, - {ERR_FUNC(RSA_F_RSA_NULL), "RSA_NULL"}, - {ERR_FUNC(RSA_F_RSA_NULL_PRIVATE_DECRYPT), "RSA_null_private_decrypt"}, - {ERR_FUNC(RSA_F_RSA_NULL_PRIVATE_ENCRYPT), "RSA_null_private_encrypt"}, - {ERR_FUNC(RSA_F_RSA_NULL_PUBLIC_DECRYPT), "RSA_null_public_decrypt"}, - {ERR_FUNC(RSA_F_RSA_NULL_PUBLIC_ENCRYPT), "RSA_null_public_encrypt"}, {ERR_FUNC(RSA_F_RSA_OSSL_PRIVATE_DECRYPT), "rsa_ossl_private_decrypt"}, {ERR_FUNC(RSA_F_RSA_OSSL_PRIVATE_ENCRYPT), "rsa_ossl_private_encrypt"}, {ERR_FUNC(RSA_F_RSA_OSSL_PUBLIC_DECRYPT), "rsa_ossl_public_decrypt"}, diff --git a/crypto/rsa/rsa_lib.c b/crypto/rsa/rsa_lib.c index 0fbda9a..3c2354b 100644 --- a/crypto/rsa/rsa_lib.c +++ b/crypto/rsa/rsa_lib.c @@ -17,31 +17,9 @@ #include "internal/evp_int.h" #include "rsa_locl.h" -static const RSA_METHOD *default_RSA_meth = NULL; - RSA *RSA_new(void) { - RSA *r = RSA_new_method(NULL); - - return r; -} - -void RSA_set_default_method(const RSA_METHOD *meth) -{ - default_RSA_meth = meth; -} - -const RSA_METHOD *RSA_get_default_method(void) -{ - if (default_RSA_meth == NULL) { -#ifdef RSA_NULL - default_RSA_meth = RSA_null_method(); -#else - default_RSA_meth = RSA_PKCS1_OpenSSL(); -#endif - } - - return default_RSA_meth; + return RSA_new_method(NULL); } const RSA_METHOD *RSA_get_method(const RSA *rsa) diff --git a/crypto/rsa/rsa_null.c b/crypto/rsa/rsa_null.c deleted file mode 100644 index d339494..0000000 --- a/crypto/rsa/rsa_null.c +++ /dev/null @@ -1,93 +0,0 @@ -/* - * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. - * - * Licensed under the OpenSSL license (the "License"). You may not use - * this file except in compliance with the License. You can obtain a copy - * in the file LICENSE in the source distribution or at - * https://www.openssl.org/source/license.html - */ - -#include -#include "internal/cryptlib.h" -#include -#include "rsa_locl.h" - -/* - * This is a dummy RSA implementation that just returns errors when called. - * It is designed to allow some RSA functions to work while stopping those - * covered by the RSA patent. That is RSA, encryption, decryption, signing - * and verify is not allowed but RSA key generation, key checking and other - * operations (like storing RSA keys) are permitted. - */ - -static int RSA_null_public_encrypt(int flen, const unsigned char *from, - unsigned char *to, RSA *rsa, int padding); -static int RSA_null_private_encrypt(int flen, const unsigned char *from, - unsigned char *to, RSA *rsa, int padding); -static int RSA_null_public_decrypt(int flen, const unsigned char *from, - unsigned char *to, RSA *rsa, int padding); -static int RSA_null_private_decrypt(int flen, const unsigned char *from, - unsigned char *to, RSA *rsa, int padding); -static int RSA_null_init(RSA *rsa); -static int RSA_null_finish(RSA *rsa); -static RSA_METHOD rsa_null_meth = { - "Null RSA", - RSA_null_public_encrypt, - RSA_null_public_decrypt, - RSA_null_private_encrypt, - RSA_null_private_decrypt, - NULL, - NULL, - RSA_null_init, - RSA_null_finish, - 0, - NULL, - NULL, - NULL, - NULL -}; - -const RSA_METHOD *RSA_null_method(void) -{ - return (&rsa_null_meth); -} - -static int RSA_null_public_encrypt(int flen, const unsigned char *from, - unsigned char *to, RSA *rsa, int padding) -{ - RSAerr(RSA_F_RSA_NULL_PUBLIC_ENCRYPT, RSA_R_RSA_OPERATIONS_NOT_SUPPORTED); - return -1; -} - -static int RSA_null_private_encrypt(int flen, const unsigned char *from, - unsigned char *to, RSA *rsa, int padding) -{ - RSAerr(RSA_F_RSA_NULL_PRIVATE_ENCRYPT, - RSA_R_RSA_OPERATIONS_NOT_SUPPORTED); - return -1; -} - -static int RSA_null_private_decrypt(int flen, const unsigned char *from, - unsigned char *to, RSA *rsa, int padding) -{ - RSAerr(RSA_F_RSA_NULL_PRIVATE_DECRYPT, - RSA_R_RSA_OPERATIONS_NOT_SUPPORTED); - return -1; -} - -static int RSA_null_public_decrypt(int flen, const unsigned char *from, - unsigned char *to, RSA *rsa, int padding) -{ - RSAerr(RSA_F_RSA_NULL_PUBLIC_DECRYPT, RSA_R_RSA_OPERATIONS_NOT_SUPPORTED); - return -1; -} - -static int RSA_null_init(RSA *rsa) -{ - return (1); -} - -static int RSA_null_finish(RSA *rsa) -{ - return (1); -} diff --git a/crypto/rsa/rsa_ossl.c b/crypto/rsa/rsa_ossl.c index 7826066..5e0ad92 100644 --- a/crypto/rsa/rsa_ossl.c +++ b/crypto/rsa/rsa_ossl.c @@ -11,8 +11,6 @@ #include "internal/bn_int.h" #include "rsa_locl.h" -#ifndef RSA_NULL - static int rsa_ossl_public_encrypt(int flen, const unsigned char *from, unsigned char *to, RSA *rsa, int padding); static int rsa_ossl_private_encrypt(int flen, const unsigned char *from, @@ -26,7 +24,7 @@ static int rsa_ossl_mod_exp(BIGNUM *r0, const BIGNUM *i, RSA *rsa, static int rsa_ossl_init(RSA *rsa); static int rsa_ossl_finish(RSA *rsa); static RSA_METHOD rsa_pkcs1_ossl_meth = { - "OpenSSL PKCS#1 RSA (from Eric Young)", + "OpenSSL PKCS#1 RSA", rsa_ossl_public_encrypt, rsa_ossl_public_decrypt, /* signature verification */ rsa_ossl_private_encrypt, /* signing */ @@ -43,11 +41,28 @@ static RSA_METHOD rsa_pkcs1_ossl_meth = { NULL /* rsa_keygen */ }; +static const RSA_METHOD *default_RSA_meth = &rsa_pkcs1_ossl_meth; + +void RSA_set_default_method(const RSA_METHOD *meth) +{ + default_RSA_meth = meth; +} + +const RSA_METHOD *RSA_get_default_method(void) +{ + return default_RSA_meth; +} + const RSA_METHOD *RSA_PKCS1_OpenSSL(void) { return &rsa_pkcs1_ossl_meth; } +const RSA_METHOD *RSA_null_method(void) +{ + return NULL; +} + static int rsa_ossl_public_encrypt(int flen, const unsigned char *from, unsigned char *to, RSA *rsa, int padding) { @@ -786,5 +801,3 @@ static int rsa_ossl_finish(RSA *rsa) BN_MONT_CTX_free(rsa->_method_mod_q); return (1); } - -#endif diff --git a/crypto/ui/ui_lib.c b/crypto/ui/ui_lib.c index 7f30a5b..e48e4ad 100644 --- a/crypto/ui/ui_lib.c +++ b/crypto/ui/ui_lib.c @@ -15,8 +15,6 @@ #include #include "ui_locl.h" -static const UI_METHOD *default_UI_meth = NULL; - UI *UI_new(void) { return (UI_new_method(NULL)); @@ -535,19 +533,6 @@ void *UI_get_ex_data(UI *r, int idx) return (CRYPTO_get_ex_data(&r->ex_data, idx)); } -void UI_set_default_method(const UI_METHOD *meth) -{ - default_UI_meth = meth; -} - -const UI_METHOD *UI_get_default_method(void) -{ - if (default_UI_meth == NULL) { - default_UI_meth = UI_OpenSSL(); - } - return default_UI_meth; -} - const UI_METHOD *UI_get_method(UI *ui) { return ui->meth; diff --git a/crypto/ui/ui_openssl.c b/crypto/ui/ui_openssl.c index 400b056..42c9326 100644 --- a/crypto/ui/ui_openssl.c +++ b/crypto/ui/ui_openssl.c @@ -202,6 +202,18 @@ static UI_METHOD ui_openssl = { NULL }; +static const UI_METHOD *default_UI_meth = &ui_openssl; + +void UI_set_default_method(const UI_METHOD *meth) +{ + default_UI_meth = meth; +} + +const UI_METHOD *UI_get_default_method(void) +{ + return default_UI_meth; +} + /* The method with all the built-in thingies */ UI_METHOD *UI_OpenSSL(void) { diff --git a/doc/man3/DH_set_method.pod b/doc/man3/DH_set_method.pod index 59e8277..ea45961 100644 --- a/doc/man3/DH_set_method.pod +++ b/doc/man3/DH_set_method.pod @@ -31,8 +31,11 @@ Initially, the default DH_METHOD is the OpenSSL internal implementation, as returned by DH_OpenSSL(). DH_set_default_method() makes B the default method for all DH -structures created later. B: This is true only whilst no ENGINE has been set +structures created later. +B: This is true only whilst no ENGINE has been set as a default for DH, so this function is no longer recommended. +This function is not thread-safe and should not be called at the same time +as other OpenSSL functions. DH_get_default_method() returns a pointer to the current default DH_METHOD. However, the meaningfulness of this result is dependent on whether the ENGINE diff --git a/doc/man3/DSA_set_method.pod b/doc/man3/DSA_set_method.pod index 807515e..f10307e 100644 --- a/doc/man3/DSA_set_method.pod +++ b/doc/man3/DSA_set_method.pod @@ -31,8 +31,11 @@ Initially, the default DSA_METHOD is the OpenSSL internal implementation, as returned by DSA_OpenSSL(). DSA_set_default_method() makes B the default method for all DSA -structures created later. B: This is true only whilst no ENGINE has +structures created later. +B: This is true only whilst no ENGINE has been set as a default for DSA, so this function is no longer recommended. +This function is not thread-safe and should not be called at the same time +as other OpenSSL functions. DSA_get_default_method() returns a pointer to the current default DSA_METHOD. However, the meaningfulness of this result is dependent on diff --git a/doc/man3/RSA_set_method.pod b/doc/man3/RSA_set_method.pod index 7e7d27c..f34aac6 100644 --- a/doc/man3/RSA_set_method.pod +++ b/doc/man3/RSA_set_method.pod @@ -3,7 +3,7 @@ =head1 NAME RSA_set_default_method, RSA_get_default_method, RSA_set_method, -RSA_get_method, RSA_PKCS1_OpenSSL, RSA_null_method, RSA_flags, +RSA_get_method, RSA_PKCS1_OpenSSL, RSA_flags, RSA_new_method - select RSA method =head1 SYNOPSIS @@ -20,8 +20,6 @@ RSA_new_method - select RSA method RSA_METHOD *RSA_PKCS1_OpenSSL(void); - RSA_METHOD *RSA_null_method(void); - int RSA_flags(const RSA *rsa); RSA *RSA_new_method(ENGINE *engine); @@ -38,8 +36,11 @@ Initially, the default RSA_METHOD is the OpenSSL internal implementation, as returned by RSA_PKCS1_OpenSSL(). RSA_set_default_method() makes B the default method for all RSA -structures created later. B: This is true only whilst no ENGINE has +structures created later. +B: This is true only whilst no ENGINE has been set as a default for RSA, so this function is no longer recommended. +This function is not thread-safe and should not be called at the same time +as other OpenSSL functions. RSA_get_default_method() returns a pointer to the current default RSA_METHOD. However, the meaningfulness of this result is dependent on @@ -168,6 +169,11 @@ not currently exist). L +=head1 HISTORY + +The RSA_null_method(), which was a partial attempt to avoid patent issues, +was replaced to always return NULL in OpenSSL 1.1.1. + =head1 COPYRIGHT Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. diff --git a/doc/man3/UI_new.pod b/doc/man3/UI_new.pod index 037e8bf..c5ebfdd 100644 --- a/doc/man3/UI_new.pod +++ b/doc/man3/UI_new.pod @@ -168,6 +168,8 @@ B, which returns a flag saying if the used UI can be used again or not. UI_set_default_method() changes the default UI method to the one given. +This function is not thread-safe and should not be called at the same time +as other OpenSSL functions. UI_get_default_method() returns a pointer to the current default UI method. diff --git a/fuzz/client.c b/fuzz/client.c index 8c31621..9404a95 100644 --- a/fuzz/client.c +++ b/fuzz/client.c @@ -36,16 +36,6 @@ int FuzzerInitialize(int *argc, char ***argv) idx = SSL_get_ex_data_X509_STORE_CTX_idx(); RAND_add("", 1, ENTROPY_NEEDED); RAND_status(); - RSA_get_default_method(); -#ifndef OPENSSL_NO_DSA - DSA_get_default_method(); -#endif -#ifndef OPENSSL_NO_EC - EC_KEY_get_default_method(); -#endif -#ifndef OPENSSL_NO_DH - DH_get_default_method(); -#endif comp_methods = SSL_COMP_get_compression_methods(); OPENSSL_sk_sort((OPENSSL_STACK *)comp_methods); diff --git a/fuzz/server.c b/fuzz/server.c index 3e10315..5bbba1c 100644 --- a/fuzz/server.c +++ b/fuzz/server.c @@ -484,16 +484,6 @@ int FuzzerInitialize(int *argc, char ***argv) idx = SSL_get_ex_data_X509_STORE_CTX_idx(); RAND_add("", 1, ENTROPY_NEEDED); RAND_status(); - RSA_get_default_method(); -#ifndef OPENSSL_NO_DSA - DSA_get_default_method(); -#endif -#ifndef OPENSSL_NO_EC - EC_KEY_get_default_method(); -#endif -#ifndef OPENSSL_NO_DH - DH_get_default_method(); -#endif comp_methods = SSL_COMP_get_compression_methods(); OPENSSL_sk_sort((OPENSSL_STACK *)comp_methods); diff --git a/include/openssl/rsa.h b/include/openssl/rsa.h index 8ad4cda..f94ec5f 100644 --- a/include/openssl/rsa.h +++ b/include/openssl/rsa.h @@ -236,14 +236,13 @@ int RSA_flags(const RSA *r); void RSA_set_default_method(const RSA_METHOD *meth); const RSA_METHOD *RSA_get_default_method(void); +const RSA_METHOD *RSA_null_method(void); const RSA_METHOD *RSA_get_method(const RSA *rsa); int RSA_set_method(RSA *rsa, const RSA_METHOD *meth); /* these are the actual RSA functions */ const RSA_METHOD *RSA_PKCS1_OpenSSL(void); -const RSA_METHOD *RSA_null_method(void); - int RSA_pkey_ctx_ctrl(EVP_PKEY_CTX *ctx, int optype, int cmd, int p1, void *p2); DECLARE_ASN1_ENCODE_FUNCTIONS_const(RSA, RSAPublicKey) @@ -502,11 +501,11 @@ int ERR_load_RSA_strings(void); # define RSA_F_RSA_METH_SET1_NAME 163 # define RSA_F_RSA_MGF1_TO_MD 157 # define RSA_F_RSA_NEW_METHOD 106 -# define RSA_F_RSA_NULL 124 -# define RSA_F_RSA_NULL_PRIVATE_DECRYPT 132 -# define RSA_F_RSA_NULL_PRIVATE_ENCRYPT 133 -# define RSA_F_RSA_NULL_PUBLIC_DECRYPT 134 -# define RSA_F_RSA_NULL_PUBLIC_ENCRYPT 135 +# define RSA_F_RSA_NULL 0 +# define RSA_F_RSA_NULL_PRIVATE_DECRYPT 0 +# define RSA_F_RSA_NULL_PRIVATE_ENCRYPT 0 +# define RSA_F_RSA_NULL_PUBLIC_DECRYPT 0 +# define RSA_F_RSA_NULL_PUBLIC_ENCRYPT 0 # define RSA_F_RSA_OSSL_PRIVATE_DECRYPT 101 # define RSA_F_RSA_OSSL_PRIVATE_ENCRYPT 102 # define RSA_F_RSA_OSSL_PUBLIC_DECRYPT 103 From builds at travis-ci.org Fri Apr 7 16:54:20 2017 From: builds at travis-ci.org (Travis CI) Date: Fri, 07 Apr 2017 16:54:20 +0000 Subject: [openssl-commits] Broken: openssl/openssl#10048 (master - 076fc55) In-Reply-To: Message-ID: <58e7c43b7e361_43fb39f2e966c879076@8ec64c9b-fc37-4386-a690-1f581d16ea4d.mail> Build Update for openssl/openssl ------------------------------------- Build: #10048 Status: Broken Duration: 17 minutes and 49 seconds Commit: 076fc55 (master) Author: Rich Salz Message: Make default_method mostly compile-time Document thread-safety issues Have RSA_null return NULL (always fails) Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/2244) View the changeset: https://github.com/openssl/openssl/compare/2f881d2d9065...076fc55527a1 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/219758270 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Fri Apr 7 16:56:03 2017 From: builds at travis-ci.org (Travis CI) Date: Fri, 07 Apr 2017 16:56:03 +0000 Subject: [openssl-commits] Broken: openssl/openssl#10048 (master - 076fc55) In-Reply-To: Message-ID: <58e7c4a2636b0_43fb39f2e9cfc8820ae@8ec64c9b-fc37-4386-a690-1f581d16ea4d.mail> Build Update for openssl/openssl ------------------------------------- Build: #10048 Status: Broken Duration: 17 minutes and 49 seconds Commit: 076fc55 (master) Author: Rich Salz Message: Make default_method mostly compile-time Document thread-safety issues Have RSA_null return NULL (always fails) Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/2244) View the changeset: https://github.com/openssl/openssl/compare/2f881d2d9065...076fc55527a1 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/219758270 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Fri Apr 7 17:23:44 2017 From: no-reply at appveyor.com (AppVeyor) Date: Fri, 07 Apr 2017 17:23:44 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.1932 Message-ID: <20170407172343.42341.73927.F4222A4C@appveyor.com> An HTML attachment was scrubbed... URL: From rsalz at openssl.org Fri Apr 7 17:28:27 2017 From: rsalz at openssl.org (Rich Salz) Date: Fri, 07 Apr 2017 17:28:27 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491586107.874349.4198.nullmailer@dev.openssl.org> The branch master has been updated via 79b4c806a1680b631937c5cfc74a65e7b0ad97f4 (commit) from 076fc55527a1499391fa6de109c8387895199ee9 (commit) - Log ----------------------------------------------------------------- commit 79b4c806a1680b631937c5cfc74a65e7b0ad97f4 Author: Rich Salz Date: Fri Apr 7 13:27:53 2017 -0400 Make default_method mostly compile-time (cont'd) Forgot to include this commit as requested by review. Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/2244) ----------------------------------------------------------------------- Summary of changes: include/openssl/rsa.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/include/openssl/rsa.h b/include/openssl/rsa.h index f94ec5f..024a240 100644 --- a/include/openssl/rsa.h +++ b/include/openssl/rsa.h @@ -501,11 +501,11 @@ int ERR_load_RSA_strings(void); # define RSA_F_RSA_METH_SET1_NAME 163 # define RSA_F_RSA_MGF1_TO_MD 157 # define RSA_F_RSA_NEW_METHOD 106 -# define RSA_F_RSA_NULL 0 -# define RSA_F_RSA_NULL_PRIVATE_DECRYPT 0 -# define RSA_F_RSA_NULL_PRIVATE_ENCRYPT 0 -# define RSA_F_RSA_NULL_PUBLIC_DECRYPT 0 -# define RSA_F_RSA_NULL_PUBLIC_ENCRYPT 0 +# define RSA_F_RSA_NULL 124 +# define RSA_F_RSA_NULL_PRIVATE_DECRYPT 132 +# define RSA_F_RSA_NULL_PRIVATE_ENCRYPT 133 +# define RSA_F_RSA_NULL_PUBLIC_DECRYPT 134 +# define RSA_F_RSA_NULL_PUBLIC_ENCRYPT 135 # define RSA_F_RSA_OSSL_PRIVATE_DECRYPT 101 # define RSA_F_RSA_OSSL_PRIVATE_ENCRYPT 102 # define RSA_F_RSA_OSSL_PUBLIC_DECRYPT 103 From no-reply at appveyor.com Fri Apr 7 17:31:27 2017 From: no-reply at appveyor.com (AppVeyor) Date: Fri, 07 Apr 2017 17:31:27 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.1933 Message-ID: <20170407173125.110100.68890.6324680E@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Fri Apr 7 17:36:40 2017 From: no-reply at appveyor.com (AppVeyor) Date: Fri, 07 Apr 2017 17:36:40 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.1934 Message-ID: <20170407173639.4814.43744.40792708@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Fri Apr 7 17:42:01 2017 From: no-reply at appveyor.com (AppVeyor) Date: Fri, 07 Apr 2017 17:42:01 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.1935 Message-ID: <20170407174200.9135.51267.AF6EEF11@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Fri Apr 7 17:56:16 2017 From: no-reply at appveyor.com (AppVeyor) Date: Fri, 07 Apr 2017 17:56:16 +0000 Subject: [openssl-commits] Build completed: openssl 1.0.1936 Message-ID: <20170407175615.3432.64347.D5EB2BA6@appveyor.com> An HTML attachment was scrubbed... URL: From builds at travis-ci.org Fri Apr 7 17:52:16 2017 From: builds at travis-ci.org (Travis CI) Date: Fri, 07 Apr 2017 17:52:16 +0000 Subject: [openssl-commits] Fixed: openssl/openssl#10053 (master - 79b4c80) In-Reply-To: Message-ID: <58e7d1d55b317_43fbaee6c588411204a3@7d44d2e6-7c92-414d-acde-9312b04d98a0.mail> Build Update for openssl/openssl ------------------------------------- Build: #10053 Status: Fixed Duration: 19 minutes and 27 seconds Commit: 79b4c80 (master) Author: Rich Salz Message: Make default_method mostly compile-time (cont'd) Forgot to include this commit as requested by review. Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/2244) View the changeset: https://github.com/openssl/openssl/compare/076fc55527a1...79b4c806a168 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/219782066 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From rsalz at openssl.org Fri Apr 7 18:37:05 2017 From: rsalz at openssl.org (Rich Salz) Date: Fri, 07 Apr 2017 18:37:05 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491590225.412702.16780.nullmailer@dev.openssl.org> The branch master has been updated via 2f61bc2ea306c059d8b00ddf32025a0b30346d8f (commit) via e1271ac2212f7cde14df478558bfaae2834fa09e (commit) via 8c32663cddc50b7afa5af40d515575b5c1d4d4c8 (commit) via 5a3371e22164592d7ff6d69245768ed4dde89a1a (commit) from 79b4c806a1680b631937c5cfc74a65e7b0ad97f4 (commit) - Log ----------------------------------------------------------------- commit 2f61bc2ea306c059d8b00ddf32025a0b30346d8f Author: Rich Salz Date: Fri Apr 7 13:37:47 2017 -0400 Use 'over 2' for bullet lists. Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3117) commit e1271ac2212f7cde14df478558bfaae2834fa09e Author: Rich Salz Date: Mon Apr 3 15:39:09 2017 -0400 Standardize on =over 4 and check for it. Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3117) commit 8c32663cddc50b7afa5af40d515575b5c1d4d4c8 Author: Rich Salz Date: Mon Apr 3 15:30:20 2017 -0400 Add missing =back Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3117) commit 5a3371e22164592d7ff6d69245768ed4dde89a1a Author: Rich Salz Date: Mon Apr 3 15:29:56 2017 -0400 Check for L Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3117) ----------------------------------------------------------------------- Summary of changes: doc/man1/dgst.pod | 2 +- doc/man1/openssl.pod | 10 +++---- doc/man1/rehash.pod | 2 +- doc/man1/ts.pod | 22 +++++++++++---- doc/man3/ASN1_generate_nconf.pod | 6 ++-- doc/man3/BIO_set_callback.pod | 2 +- doc/man3/BN_copy.pod | 2 +- doc/man3/BN_generate_prime.pod | 2 +- doc/man3/CRYPTO_THREAD_run_once.pod | 9 +++++- doc/man3/CT_POLICY_EVAL_CTX_new.pod | 36 ++++++++++++++++------- doc/man3/DSA_generate_parameters.pod | 2 +- doc/man3/EVP_CIPHER_meth_new.pod | 2 +- doc/man3/OPENSSL_ia32cap.pod | 4 +-- doc/man3/RSA_generate_key.pod | 2 +- doc/man3/SCT_new.pod | 55 ++++++++++++++++++++++++++---------- doc/man3/SCT_validate.pod | 14 ++++++--- doc/man3/SSL_get_version.pod | 4 ++- doc/man3/SSL_set_bio.pod | 2 +- doc/man3/d2i_X509.pod | 2 +- doc/man7/des_modes.pod | 2 -- doc/man7/evp.pod | 2 +- util/find-doc-nits | 4 +++ 22 files changed, 128 insertions(+), 60 deletions(-) diff --git a/doc/man1/dgst.pod b/doc/man1/dgst.pod index 9faaf34..677f2b2 100644 --- a/doc/man1/dgst.pod +++ b/doc/man1/dgst.pod @@ -133,7 +133,7 @@ via B<-macopt> parameter. Passes options to MAC algorithm, specified by B<-mac> key. Following options are supported by both by B and B: -=over 8 +=over 4 =item B diff --git a/doc/man1/openssl.pod b/doc/man1/openssl.pod index bfac312..7fc53c9 100644 --- a/doc/man1/openssl.pod +++ b/doc/man1/openssl.pod @@ -75,7 +75,7 @@ B, or BI itself.) =head2 Standard Commands -=over 10 +=over 4 =item L|asn1parse(1)> @@ -268,7 +268,7 @@ X.509 Certificate Data Management. =head2 Message Digest Commands -=over 10 +=over 4 =item B @@ -314,7 +314,7 @@ SHA-512 Digest =head2 Encoding and Cipher Commands -=over 10 +=over 4 =item B @@ -365,7 +365,7 @@ This section describes some common options with common behavior. =head2 Common Options -=over 10 +=over 4 =item B<-help> @@ -383,7 +383,7 @@ password argument is given and a password is required then the user is prompted to enter one: this will typically be read from the current terminal with echoing turned off. -=over 10 +=over 4 =item B diff --git a/doc/man1/rehash.pod b/doc/man1/rehash.pod index 936fda6..1dca9b5 100644 --- a/doc/man1/rehash.pod +++ b/doc/man1/rehash.pod @@ -107,7 +107,7 @@ By default, B only lists each directory as it is processed. =head1 ENVIRONMENT -=over +=over 4 =item B diff --git a/doc/man1/ts.pod b/doc/man1/ts.pod index 5b2e639..2ec9837 100644 --- a/doc/man1/ts.pod +++ b/doc/man1/ts.pod @@ -608,25 +608,35 @@ You could also look at the 'test' directory for more examples. If you find any bugs or you have suggestions please write to Zoltan Glozik . Known issues: -=over 4 +=over 2 + +=item * -=item * No support for time stamps over SMTP, though it is quite easy +No support for time stamps over SMTP, though it is quite easy to implement an automatic e-mail based TSA with L and L. HTTP server support is provided in the form of a separate apache module. HTTP client support is provided by L. Pure TCP/IP protocol is not supported. -=item * The file containing the last serial number of the TSA is not +=item * + +The file containing the last serial number of the TSA is not locked when being read or written. This is a problem if more than one instance of L is trying to create a time stamp response at the same time. This is not an issue when using the apache server module, it does proper locking. -=item * Look for the FIXME word in the source files. +=item * + +Look for the FIXME word in the source files. + +=item * + +The source code should really be reviewed by somebody else, too. -=item * The source code should really be reviewed by somebody else, too. +=item * -=item * More testing is needed, I have done only some basic tests (see +More testing is needed, I have done only some basic tests (see test/testtsa). =back diff --git a/doc/man3/ASN1_generate_nconf.pod b/doc/man3/ASN1_generate_nconf.pod index 92f624f..bf29af6 100644 --- a/doc/man3/ASN1_generate_nconf.pod +++ b/doc/man3/ASN1_generate_nconf.pod @@ -30,7 +30,7 @@ The actual data encoded is determined by the string B and the configuration information. The general format of the string is: -=over 2 +=over 4 =item B<[modifier,]type[:value]> @@ -45,7 +45,7 @@ B and B are explained below. The supported types are listed below. Unless otherwise specified only the B format is permissible. -=over 2 +=over 4 =item B, B @@ -126,7 +126,7 @@ add EXPLICIT or IMPLICIT tagging, add wrappers or to change the string format of the final type and value. The supported formats are documented below. -=over 2 +=over 4 =item B, B diff --git a/doc/man3/BIO_set_callback.pod b/doc/man3/BIO_set_callback.pod index ed395fa..3d15859 100644 --- a/doc/man3/BIO_set_callback.pod +++ b/doc/man3/BIO_set_callback.pod @@ -52,7 +52,7 @@ BIO_callback_fn_ex() is the type of the callback function and BIO_callback_fn() is the type of the old format callback function. The meaning of each argument is described below: -=over +=over 4 =item B diff --git a/doc/man3/BN_copy.pod b/doc/man3/BN_copy.pod index 500f4b2..46de544 100644 --- a/doc/man3/BN_copy.pod +++ b/doc/man3/BN_copy.pod @@ -29,7 +29,7 @@ B flag set for constant time operations. The temporary copy in B will share some internal state with B. For this reason the following restrictions apply to the use of B: -=over 4 +=over 2 =item * diff --git a/doc/man3/BN_generate_prime.pod b/doc/man3/BN_generate_prime.pod index a4ef230..c97536b 100644 --- a/doc/man3/BN_generate_prime.pod +++ b/doc/man3/BN_generate_prime.pod @@ -55,7 +55,7 @@ If B is not B, it will be used to store the number. If B is not B, it is used as follows: -=over 4 +=over 2 =item * diff --git a/doc/man3/CRYPTO_THREAD_run_once.pod b/doc/man3/CRYPTO_THREAD_run_once.pod index 45545c8..b256a18 100644 --- a/doc/man3/CRYPTO_THREAD_run_once.pod +++ b/doc/man3/CRYPTO_THREAD_run_once.pod @@ -32,9 +32,10 @@ supported by OpenSSL. The following multi-threading function are provided: -=over 4 +=over 2 =item * + CRYPTO_THREAD_run_once() can be used to perform one-time initialization. The B argument must be a pointer to a static object of type B that was statically initialized to the value @@ -45,22 +46,28 @@ In particular, this can be used to allocate locks in a thread-safe manner, which can then be used with the locking functions below. =item * + CRYPTO_THREAD_lock_new() allocates, initializes and returns a new read/write lock. =item * + CRYPTO_THREAD_read_lock() locks the provided B for reading. =item * + CRYPTO_THREAD_write_lock() locks the provided B for writing. =item * + CRYPTO_THREAD_unlock() unlocks the previously locked B. =item * + CRYPTO_THREAD_lock_frees() frees the provided B. =item * + CRYPTO_atomic_add() atomically adds B to B and returns the result of the operation in B. B will be locked, unless atomic operations are supported on the specific platform. Because of this, if a diff --git a/doc/man3/CT_POLICY_EVAL_CTX_new.pod b/doc/man3/CT_POLICY_EVAL_CTX_new.pod index fedc58d..4d0cae3 100644 --- a/doc/man3/CT_POLICY_EVAL_CTX_new.pod +++ b/doc/man3/CT_POLICY_EVAL_CTX_new.pod @@ -32,15 +32,23 @@ This policy may be, for example, that at least one valid SCT is available. To determine this, an SCT's timestamp and signature must be verified. This requires: -=over +=over 2 -=item * the public key of the log that issued the SCT +=item * -=item * the certificate that the SCT was issued for +the public key of the log that issued the SCT -=item * the issuer certificate (if the SCT was issued for a pre-certificate) +=item * -=item * the current time +the certificate that the SCT was issued for + +=item * + +the issuer certificate (if the SCT was issued for a pre-certificate) + +=item * + +the current time =back @@ -49,22 +57,30 @@ The above requirements are met using the setters described below. CT_POLICY_EVAL_CTX_new() creates an empty policy evaluation context. This should then be populated using: -=over +=over 2 -=item * CT_POLICY_EVAL_CTX_set1_cert() to provide the certificate the SCTs were issued for +=item * + +CT_POLICY_EVAL_CTX_set1_cert() to provide the certificate the SCTs were issued for Increments the reference count of the certificate. -=item * CT_POLICY_EVAL_CTX_set1_issuer() to provide the issuer certificate +=item * + +CT_POLICY_EVAL_CTX_set1_issuer() to provide the issuer certificate Increments the reference count of the certificate. -=item * CT_POLICY_EVAL_CTX_set_shared_CTLOG_STORE() to provide a list of logs that are trusted as sources of SCTs +=item * + +CT_POLICY_EVAL_CTX_set_shared_CTLOG_STORE() to provide a list of logs that are trusted as sources of SCTs Holds a pointer to the CTLOG_STORE, so the CTLOG_STORE must outlive the CT_POLICY_EVAL_CTX. -=item * CT_POLICY_EVAL_CTX_set_time() to set the time SCTs should be compared with to determine if they are valid +=item * + +CT_POLICY_EVAL_CTX_set_time() to set the time SCTs should be compared with to determine if they are valid The SCT timestamp will be compared to this time to check whether the SCT was issued in the future. RFC6962 states that "TLS clients MUST reject SCTs whose diff --git a/doc/man3/DSA_generate_parameters.pod b/doc/man3/DSA_generate_parameters.pod index 2cb20fa..fc05149 100644 --- a/doc/man3/DSA_generate_parameters.pod +++ b/doc/man3/DSA_generate_parameters.pod @@ -42,7 +42,7 @@ called as shown below. For information on the BN_GENCB structure and the BN_GENCB_call function discussed below, refer to L. -=over 4 +=over 2 =item * diff --git a/doc/man3/EVP_CIPHER_meth_new.pod b/doc/man3/EVP_CIPHER_meth_new.pod index 6e18ed5..ef47f0f 100644 --- a/doc/man3/EVP_CIPHER_meth_new.pod +++ b/doc/man3/EVP_CIPHER_meth_new.pod @@ -82,7 +82,7 @@ With the exception of cipher modes, of which only one may be present, several flags can be or'd together. The available flags are: -=over +=over 4 =item EVP_CIPH_STREAM_CIPHER, EVP_CIPH_ECB_MODE EVP_CIPH_CBC_MODE, EVP_CIPH_CFB_MODE, EVP_CIPH_OFB_MODE, EVP_CIPH_CTR_MODE, EVP_CIPH_GCM_MODE, diff --git a/doc/man3/OPENSSL_ia32cap.pod b/doc/man3/OPENSSL_ia32cap.pod index 5071659..7c5fde3 100644 --- a/doc/man3/OPENSSL_ia32cap.pod +++ b/doc/man3/OPENSSL_ia32cap.pod @@ -19,7 +19,7 @@ between different code paths to provide optimal performance across wide range of processors. For the moment of this writing following bits are significant: -=over +=over 4 =item bit #4 denoting presence of Time-Stamp Counter. @@ -86,7 +86,7 @@ are applied, most notably in AES assembler module. The capability vector is further extended with EBX value returned by CPUID with EAX=7 and ECX=0 as input. Following bits are significant: -=over +=over 4 =item bit #64+3 denoting availability of BMI1 instructions, e.g. ANDN; diff --git a/doc/man3/RSA_generate_key.pod b/doc/man3/RSA_generate_key.pod index 24e05bd..e51c0b1 100644 --- a/doc/man3/RSA_generate_key.pod +++ b/doc/man3/RSA_generate_key.pod @@ -32,7 +32,7 @@ progress of the key generation. If B is not B, it will be called as follows using the BN_GENCB_call() function described on the L page. -=over 4 +=over 2 =item * diff --git a/doc/man3/SCT_new.pod b/doc/man3/SCT_new.pod index 086e389..e85b21c 100644 --- a/doc/man3/SCT_new.pod +++ b/doc/man3/SCT_new.pod @@ -84,31 +84,45 @@ An internal representation of an SCT can be created in one of two ways. The first option is to create a blank SCT, using SCT_new(), and then populate it using: -=over +=over 2 -=item * SCT_set_version() to set the SCT version. +=item * + +SCT_set_version() to set the SCT version. Only SCT_VERSION_V1 is currently supported. -=item * SCT_set_log_entry_type() to set the type of certificate the SCT was issued for: +=item * + +SCT_set_log_entry_type() to set the type of certificate the SCT was issued for: B for a normal certificate. B for a pre-certificate. -=item * SCT_set0_log_id() or SCT_set1_log_id() to set the LogID of the CT log that the SCT came from. +=item * + +SCT_set0_log_id() or SCT_set1_log_id() to set the LogID of the CT log that the SCT came from. The former takes ownership, whereas the latter makes a copy. See RFC 6962, Section 3.2 for the definition of LogID. -=item * SCT_set_timestamp() to set the time the SCT was issued (epoch time in milliseconds). +=item * + +SCT_set_timestamp() to set the time the SCT was issued (epoch time in milliseconds). + +=item * + +SCT_set_signature_nid() to set the NID of the signature. -=item * SCT_set_signature_nid() to set the NID of the signature. +=item * -=item * SCT_set0_signature() or SCT_set1_signature() to set the raw signature value. +SCT_set0_signature() or SCT_set1_signature() to set the raw signature value. The former takes ownership, whereas the latter makes a copy. -=item * SCT_set0_extensions() or B to provide SCT extensions. +=item * + +SCT_set0_extensions() or B to provide SCT extensions. The former takes ownership, whereas the latter makes a copy. @@ -117,22 +131,33 @@ The former takes ownership, whereas the latter makes a copy. Alternatively, the SCT can be pre-populated from the following data using SCT_new_from_base64(): -=over +=over 2 + +=item * + +The SCT version (only SCT_VERSION_V1 is currently supported). -=item * The SCT version (only SCT_VERSION_V1 is currently supported). +=item * -=item * The LogID (see RFC 6962, Section 3.2), base64 encoded. +The LogID (see RFC 6962, Section 3.2), base64 encoded. -=item * The type of certificate the SCT was issued for: +=item * +The type of certificate the SCT was issued for: B for a normal certificate. B for a pre-certificate. -=item * The time that the SCT was issued (epoch time in milliseconds). +=item * + +The time that the SCT was issued (epoch time in milliseconds). + +=item * + +The SCT extensions, base64 encoded. -=item * The SCT extensions, base64 encoded. +=item * -=item * The SCT signature, base64 encoded. +The SCT signature, base64 encoded. =back diff --git a/doc/man3/SCT_validate.pod b/doc/man3/SCT_validate.pod index 9868a28..5ff0e8c 100644 --- a/doc/man3/SCT_validate.pod +++ b/doc/man3/SCT_validate.pod @@ -31,20 +31,26 @@ SCT_get_validation_status(). A CT_POLICY_EVAL_CTX must be provided that specifies: -=over +=over 2 -=item * The certificate the SCT was issued for. +=item * + +The certificate the SCT was issued for. Failure to provide the certificate will result in the validation status being SCT_VALIDATION_STATUS_UNVERIFIED. -=item * The issuer of that certificate. +=item * + +The issuer of that certificate. This is only required if the SCT was issued for a pre-certificate (see RFC 6962). If it is required but not provided, the validation status will be SCT_VALIDATION_STATUS_UNVERIFIED. -=item * A CTLOG_STORE that contains the CT log that issued this SCT. +=item * + +A CTLOG_STORE that contains the CT log that issued this SCT. If the SCT was issued by a log that is not in this CTLOG_STORE, the validation status will be SCT_VALIDATION_STATUS_UNKNOWN_LOG. diff --git a/doc/man3/SSL_get_version.pod b/doc/man3/SSL_get_version.pod index 57cacfe..f8dd85e 100644 --- a/doc/man3/SSL_get_version.pod +++ b/doc/man3/SSL_get_version.pod @@ -64,7 +64,7 @@ This indicates that no version has been set (no connection established). SSL_version() and SSL_client_version() return an integer which could include any of the following: -=over 5 +=over 4 =item SSL3_VERSION @@ -86,6 +86,8 @@ The connection uses the TLSv1.2 protocol. The connection uses the TLSv1.3 protocol. +=back + =head1 SEE ALSO L diff --git a/doc/man3/SSL_set_bio.pod b/doc/man3/SSL_set_bio.pod index 104f406..4230940 100644 --- a/doc/man3/SSL_set_bio.pod +++ b/doc/man3/SSL_set_bio.pod @@ -37,7 +37,7 @@ the rules for this are much more complex. For this reason this function is considered a legacy function and SSL_set0_rbio() and SSL_set0_wbio() should be used in preference. The ownership rules are as follows: -=over 4 +=over 2 =item * diff --git a/doc/man3/d2i_X509.pod b/doc/man3/d2i_X509.pod index da5386b..f78d020 100644 --- a/doc/man3/d2i_X509.pod +++ b/doc/man3/d2i_X509.pod @@ -436,7 +436,7 @@ another will be processed after it. The following points about the data types might be useful: -=over +=over 4 =item B diff --git a/doc/man7/des_modes.pod b/doc/man7/des_modes.pod index 89f14b8..f7415d7 100644 --- a/doc/man7/des_modes.pod +++ b/doc/man7/des_modes.pod @@ -124,7 +124,6 @@ Normally, this is found as the function I_ofb_encrypt(). =over 2 - =item * a number of bits (j) <= 64 are enciphered at a time. @@ -220,7 +219,6 @@ Normally, this is found as the function I_ede3_cbc_encrypt(). =over 2 - =item * Encrypt with key1, decrypt with key2 and then encrypt with key3. diff --git a/doc/man7/evp.pod b/doc/man7/evp.pod index 9c9cbe0..fbc357e 100644 --- a/doc/man7/evp.pod +++ b/doc/man7/evp.pod @@ -36,7 +36,7 @@ L. The EVP_PKEY functions support the full range of asymmetric algorithm operations: -=over +=over 4 =item For key agreement see L diff --git a/util/find-doc-nits b/util/find-doc-nits index f14e36e..6369880 100755 --- a/util/find-doc-nits +++ b/util/find-doc-nits @@ -160,6 +160,10 @@ sub check() if $contents =~ /=head1 NAME.*\.\n.*=head1 SYNOPSIS/ms; print "$id POD markup in NAME section\n" if $contents =~ /=head1 NAME.*[<>].*=head1 SYNOPSIS/ms; + print "$id Duplicate $1 in L<>\n" + if $contents =~ /L<([^>]*)\|([^>]*)>/ && $1 eq $2; + print "$id Bad =over $1\n" + if $contents =~ /=over([^ ][^24])/; # Look for multiple consecutive openssl #include lines. # Consecutive because of files like md5.pod. Sometimes it's okay From rsalz at openssl.org Fri Apr 7 18:55:36 2017 From: rsalz at openssl.org (Rich Salz) Date: Fri, 07 Apr 2017 18:55:36 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1491591336.908661.21011.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 74c29dc6eac1f6f8a8c2ca28f8c01a43beb8c15b (commit) via ae9b7e02ecb06def1ccc1d132bd9ba7de1347518 (commit) from 8d8cae7d3028de123a081196897b0ccedf921c6f (commit) - Log ----------------------------------------------------------------- commit 74c29dc6eac1f6f8a8c2ca28f8c01a43beb8c15b Author: Rich Salz Date: Mon Apr 3 15:39:09 2017 -0400 Standardize on =over 4 and check for it. (cherry picked from commit dfc63ccebd8262648640fc6e35fffa132102b967) Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3117) commit ae9b7e02ecb06def1ccc1d132bd9ba7de1347518 Author: Rich Salz Date: Fri Apr 7 13:37:47 2017 -0400 Use 'over 2' for bullet lists. (cherry picked from commit 7ea8ceab4b21d93eb272a89bff73958010d5c2c4) Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3117) ----------------------------------------------------------------------- Summary of changes: doc/apps/dgst.pod | 38 ++-- doc/apps/openssl.pod | 43 ++-- doc/apps/rehash.pod | 2 +- doc/apps/ts.pod | 25 ++- doc/crypto/ASN1_generate_nconf.pod | 6 +- doc/crypto/BIO_set_callback.pod | 2 +- doc/crypto/BN_copy.pod | 2 +- doc/crypto/BN_generate_prime.pod | 2 +- doc/crypto/CRYPTO_THREAD_run_once.pod | 11 +- doc/crypto/CT_POLICY_EVAL_CTX_new.pod | 4 +- doc/crypto/DSA_generate_parameters.pod | 4 +- doc/crypto/EVP_CIPHER_meth_new.pod | 2 +- doc/crypto/OPENSSL_ia32cap.pod | 4 +- doc/crypto/RSA_generate_key.pod | 2 +- doc/crypto/SCT_new.pod | 4 +- doc/crypto/SCT_validate.pod | 2 +- doc/crypto/d2i_X509.pod | 6 +- doc/crypto/des_modes.pod | 19 +- doc/crypto/evp.pod | 2 +- doc/ssl/SSL_set_bio.pod | 2 +- util/find-doc-nits | 372 --------------------------------- 21 files changed, 96 insertions(+), 458 deletions(-) delete mode 100755 util/find-doc-nits diff --git a/doc/apps/dgst.pod b/doc/apps/dgst.pod index 3f1b02c..677f2b2 100644 --- a/doc/apps/dgst.pod +++ b/doc/apps/dgst.pod @@ -59,34 +59,34 @@ supported digests, use the command I. =item B<-c> -print out the digest in two digit groups separated by colons, only relevant if +Print out the digest in two digit groups separated by colons, only relevant if B format output is used. =item B<-d> -print out BIO debugging information. +Print out BIO debugging information. =item B<-hex> -digest is to be output as a hex dump. This is the default case for a "normal" +Digest is to be output as a hex dump. This is the default case for a "normal" digest as opposed to a digital signature. See NOTES below for digital signatures using B<-hex>. =item B<-binary> -output the digest or signature in binary form. +Output the digest or signature in binary form. =item B<-r> -output the digest in the "coreutils" format used by programs like B. +Output the digest in the "coreutils" format used by programs like B. =item B<-out filename> -filename to output to, or standard output by default. +Filename to output to, or standard output by default. =item B<-sign filename> -digitally sign the digest using the private key in "filename". +Digitally sign the digest using the private key in "filename". =item B<-keyform arg> @@ -98,32 +98,31 @@ and ENGINE formats are supported. Pass options to the signature algorithm during sign or verify operations. Names and values of these options are algorithm-specific. - =item B<-passin arg> -the private key password source. For more information about the format of B +The private key password source. For more information about the format of B see the B section in L. =item B<-verify filename> -verify the signature using the public key in "filename". +Verify the signature using the public key in "filename". The output is either "Verification OK" or "Verification Failure". =item B<-prverify filename> -verify the signature using the private key in "filename". +Verify the signature using the private key in "filename". =item B<-signature filename> -the actual signature to verify. +The actual signature to verify. =item B<-hmac key> -create a hashed MAC using "key". +Create a hashed MAC using "key". =item B<-mac alg> -create MAC (keyed Message Authentication Code). The most popular MAC +Create MAC (keyed Message Authentication Code). The most popular MAC algorithm is HMAC (hash-based MAC), but there are other MAC algorithms which are not based on hash, for instance B algorithm, supported by B engine. MAC keys and other options should be set @@ -134,7 +133,7 @@ via B<-macopt> parameter. Passes options to MAC algorithm, specified by B<-mac> key. Following options are supported by both by B and B: -=over 8 +=over 4 =item B @@ -152,7 +151,7 @@ for example exactly 32 chars for gost-mac. =item B<-rand file(s)> -a file or files containing random data used to seed the random number +A file or files containing random data used to seed the random number generator, or an EGD socket (see L). Multiple files can be specified separated by an OS-dependent character. The separator is B<;> for MS-Windows, B<,> for OpenVMS, and B<:> for @@ -160,8 +159,7 @@ all others. =item B<-fips-fingerprint> -compute HMAC using a specific key -for certain OpenSSL-FIPS operations. +Compute HMAC using a specific key for certain OpenSSL-FIPS operations. =item B<-engine id> @@ -177,7 +175,7 @@ engine B for digest operations. =item B -file or files to digest. If no files are specified then standard input is +File or files to digest. If no files are specified then standard input is used. =back @@ -230,7 +228,7 @@ The FIPS-related options were removed in OpenSSL 1.1.0 =head1 COPYRIGHT -Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-2017 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/apps/openssl.pod b/doc/apps/openssl.pod index da07cd5..7fc53c9 100644 --- a/doc/apps/openssl.pod +++ b/doc/apps/openssl.pod @@ -75,7 +75,7 @@ B, or BI itself.) =head2 Standard Commands -=over 10 +=over 4 =item L|asn1parse(1)> @@ -91,7 +91,7 @@ Cipher Suite Description Determination. =item L|cms(1)> -CMS (Cryptographic Message Syntax) utility +CMS (Cryptographic Message Syntax) utility. =item L|crl(1)> @@ -113,8 +113,7 @@ Obsoleted by L|dhparam(1)>. =item L|dhparam(1)> Generation and Management of Diffie-Hellman Parameters. Superseded by -L|genpkey(1)> and L|pkeyparam(1)> - +L|genpkey(1)> and L|pkeyparam(1)>. =item L|dsa(1)> @@ -123,15 +122,15 @@ DSA Data Management. =item L|dsaparam(1)> DSA Parameter Generation and Management. Superseded by -L|genpkey(1)> and L|pkeyparam(1)> +L|genpkey(1)> and L|pkeyparam(1)>. =item L|ec(1)> -EC (Elliptic curve) key processing +EC (Elliptic curve) key processing. =item L|ecparam(1)> -EC parameter manipulation and generation +EC parameter manipulation and generation. =item L|enc(1)> @@ -153,7 +152,7 @@ Obsoleted by L|dhparam(1)>. =item L|gendsa(1)> Generation of DSA Private Key from Parameters. Superseded by -L|genpkey(1)> and L|pkey(1)> +L|genpkey(1)> and L|pkey(1)>. =item L|genpkey(1)> @@ -165,7 +164,7 @@ Generation of RSA Private Key. Superseded by L|genpkey(1)>. =item L|nseq(1)> -Create or examine a Netscape certificate sequence +Create or examine a Netscape certificate sequence. =item L|ocsp(1)> @@ -211,7 +210,7 @@ RSA key management. =item L|rsautl(1)> RSA utility for signing, verification, encryption, and decryption. Superseded -by L|pkeyutl(1)> +by L|pkeyutl(1)>. =item L|s_client(1)> @@ -247,11 +246,11 @@ Algorithm Speed Measurement. =item L|spkac(1)> -SPKAC printing and generating utility +SPKAC printing and generating utility. =item L|ts(1)> -Time Stamping Authority tool (client/server) +Time Stamping Authority tool (client/server). =item L|verify(1)> @@ -269,7 +268,7 @@ X.509 Certificate Data Management. =head2 Message Digest Commands -=over 10 +=over 4 =item B @@ -315,7 +314,7 @@ SHA-512 Digest =head2 Encoding and Cipher Commands -=over 10 +=over 4 =item B @@ -366,7 +365,7 @@ This section describes some common options with common behavior. =head2 Common Options -=over 10 +=over 4 =item B<-help> @@ -384,23 +383,23 @@ password argument is given and a password is required then the user is prompted to enter one: this will typically be read from the current terminal with echoing turned off. -=over 10 +=over 4 =item B -the actual password is B. Since the password is visible +The actual password is B. Since the password is visible to utilities (like 'ps' under Unix) this form should only be used where security is not important. =item B -obtain the password from the environment variable B. Since +Obtain the password from the environment variable B. Since the environment of other processes is visible on certain platforms (e.g. ps under certain Unix OSes) this option should be used with caution. =item B -the first line of B is the password. If the same B +The first line of B is the password. If the same B argument is supplied to B<-passin> and B<-passout> arguments then the first line will be used for the input password and the next line for the output password. B need not refer to a regular file: it could for example @@ -408,12 +407,12 @@ refer to a device or named pipe. =item B -read the password from the file descriptor B. This can be used to +Read the password from the file descriptor B. This can be used to send the data via a pipe for example. =item B -read the password from standard input. +Read the password from standard input. =back @@ -441,7 +440,7 @@ manual pages. =head1 COPYRIGHT -Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-2017 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/apps/rehash.pod b/doc/apps/rehash.pod index 936fda6..1dca9b5 100644 --- a/doc/apps/rehash.pod +++ b/doc/apps/rehash.pod @@ -107,7 +107,7 @@ By default, B only lists each directory as it is processed. =head1 ENVIRONMENT -=over +=over 4 =item B diff --git a/doc/apps/ts.pod b/doc/apps/ts.pod index d807394..2ec9837 100644 --- a/doc/apps/ts.pod +++ b/doc/apps/ts.pod @@ -187,7 +187,6 @@ response. (Optional) This option specifies a previously created time stamp request in DER format that will be printed into the output file. Useful when you need to examine the content of a request in human-readable - format. (Optional) =item B<-out> request.tsq @@ -609,25 +608,35 @@ You could also look at the 'test' directory for more examples. If you find any bugs or you have suggestions please write to Zoltan Glozik . Known issues: -=over 4 +=over 2 -=item * No support for time stamps over SMTP, though it is quite easy +=item * + +No support for time stamps over SMTP, though it is quite easy to implement an automatic e-mail based TSA with L and L. HTTP server support is provided in the form of a separate apache module. HTTP client support is provided by L. Pure TCP/IP protocol is not supported. -=item * The file containing the last serial number of the TSA is not +=item * + +The file containing the last serial number of the TSA is not locked when being read or written. This is a problem if more than one instance of L is trying to create a time stamp response at the same time. This is not an issue when using the apache server module, it does proper locking. -=item * Look for the FIXME word in the source files. +=item * + +Look for the FIXME word in the source files. + +=item * + +The source code should really be reviewed by somebody else, too. -=item * The source code should really be reviewed by somebody else, too. +=item * -=item * More testing is needed, I have done only some basic tests (see +More testing is needed, I have done only some basic tests (see test/testtsa). =back @@ -640,7 +649,7 @@ L =head1 COPYRIGHT -Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2006-2017 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/crypto/ASN1_generate_nconf.pod b/doc/crypto/ASN1_generate_nconf.pod index 92f624f..bf29af6 100644 --- a/doc/crypto/ASN1_generate_nconf.pod +++ b/doc/crypto/ASN1_generate_nconf.pod @@ -30,7 +30,7 @@ The actual data encoded is determined by the string B and the configuration information. The general format of the string is: -=over 2 +=over 4 =item B<[modifier,]type[:value]> @@ -45,7 +45,7 @@ B and B are explained below. The supported types are listed below. Unless otherwise specified only the B format is permissible. -=over 2 +=over 4 =item B, B @@ -126,7 +126,7 @@ add EXPLICIT or IMPLICIT tagging, add wrappers or to change the string format of the final type and value. The supported formats are documented below. -=over 2 +=over 4 =item B, B diff --git a/doc/crypto/BIO_set_callback.pod b/doc/crypto/BIO_set_callback.pod index ed395fa..3d15859 100644 --- a/doc/crypto/BIO_set_callback.pod +++ b/doc/crypto/BIO_set_callback.pod @@ -52,7 +52,7 @@ BIO_callback_fn_ex() is the type of the callback function and BIO_callback_fn() is the type of the old format callback function. The meaning of each argument is described below: -=over +=over 4 =item B diff --git a/doc/crypto/BN_copy.pod b/doc/crypto/BN_copy.pod index 500f4b2..46de544 100644 --- a/doc/crypto/BN_copy.pod +++ b/doc/crypto/BN_copy.pod @@ -29,7 +29,7 @@ B flag set for constant time operations. The temporary copy in B will share some internal state with B. For this reason the following restrictions apply to the use of B: -=over 4 +=over 2 =item * diff --git a/doc/crypto/BN_generate_prime.pod b/doc/crypto/BN_generate_prime.pod index a4ef230..c97536b 100644 --- a/doc/crypto/BN_generate_prime.pod +++ b/doc/crypto/BN_generate_prime.pod @@ -55,7 +55,7 @@ If B is not B, it will be used to store the number. If B is not B, it is used as follows: -=over 4 +=over 2 =item * diff --git a/doc/crypto/CRYPTO_THREAD_run_once.pod b/doc/crypto/CRYPTO_THREAD_run_once.pod index 7795a04..b256a18 100644 --- a/doc/crypto/CRYPTO_THREAD_run_once.pod +++ b/doc/crypto/CRYPTO_THREAD_run_once.pod @@ -32,9 +32,10 @@ supported by OpenSSL. The following multi-threading function are provided: -=over 4 +=over 2 =item * + CRYPTO_THREAD_run_once() can be used to perform one-time initialization. The B argument must be a pointer to a static object of type B that was statically initialized to the value @@ -45,22 +46,28 @@ In particular, this can be used to allocate locks in a thread-safe manner, which can then be used with the locking functions below. =item * + CRYPTO_THREAD_lock_new() allocates, initializes and returns a new read/write lock. =item * + CRYPTO_THREAD_read_lock() locks the provided B for reading. =item * + CRYPTO_THREAD_write_lock() locks the provided B for writing. =item * + CRYPTO_THREAD_unlock() unlocks the previously locked B. =item * + CRYPTO_THREAD_lock_frees() frees the provided B. =item * + CRYPTO_atomic_add() atomically adds B to B and returns the result of the operation in B. B will be locked, unless atomic operations are supported on the specific platform. Because of this, if a @@ -149,7 +156,7 @@ You can find out if OpenSSL was configured with thread support: =head1 SEE ALSO -L +L =head1 COPYRIGHT diff --git a/doc/crypto/CT_POLICY_EVAL_CTX_new.pod b/doc/crypto/CT_POLICY_EVAL_CTX_new.pod index fedc58d..7839fd3 100644 --- a/doc/crypto/CT_POLICY_EVAL_CTX_new.pod +++ b/doc/crypto/CT_POLICY_EVAL_CTX_new.pod @@ -32,7 +32,7 @@ This policy may be, for example, that at least one valid SCT is available. To determine this, an SCT's timestamp and signature must be verified. This requires: -=over +=over 4 =item * the public key of the log that issued the SCT @@ -49,7 +49,7 @@ The above requirements are met using the setters described below. CT_POLICY_EVAL_CTX_new() creates an empty policy evaluation context. This should then be populated using: -=over +=over 4 =item * CT_POLICY_EVAL_CTX_set1_cert() to provide the certificate the SCTs were issued for diff --git a/doc/crypto/DSA_generate_parameters.pod b/doc/crypto/DSA_generate_parameters.pod index ca2c2ce..fc05149 100644 --- a/doc/crypto/DSA_generate_parameters.pod +++ b/doc/crypto/DSA_generate_parameters.pod @@ -42,7 +42,7 @@ called as shown below. For information on the BN_GENCB structure and the BN_GENCB_call function discussed below, refer to L. -=over 4 +=over 2 =item * @@ -107,7 +107,7 @@ Seed lengths E 20 are not supported. =head1 SEE ALSO -L, L, L, +L, L, L, L, L =head1 COPYRIGHT diff --git a/doc/crypto/EVP_CIPHER_meth_new.pod b/doc/crypto/EVP_CIPHER_meth_new.pod index 6e18ed5..ef47f0f 100644 --- a/doc/crypto/EVP_CIPHER_meth_new.pod +++ b/doc/crypto/EVP_CIPHER_meth_new.pod @@ -82,7 +82,7 @@ With the exception of cipher modes, of which only one may be present, several flags can be or'd together. The available flags are: -=over +=over 4 =item EVP_CIPH_STREAM_CIPHER, EVP_CIPH_ECB_MODE EVP_CIPH_CBC_MODE, EVP_CIPH_CFB_MODE, EVP_CIPH_OFB_MODE, EVP_CIPH_CTR_MODE, EVP_CIPH_GCM_MODE, diff --git a/doc/crypto/OPENSSL_ia32cap.pod b/doc/crypto/OPENSSL_ia32cap.pod index 7ea70c0..b0ab0ce 100644 --- a/doc/crypto/OPENSSL_ia32cap.pod +++ b/doc/crypto/OPENSSL_ia32cap.pod @@ -19,7 +19,7 @@ between different code paths to provide optimal performance across wide range of processors. For the moment of this writing following bits are significant: -=over +=over 4 =item bit #4 denoting presence of Time-Stamp Counter. @@ -86,7 +86,7 @@ are applied, most notably in AES assembler module. The capability vector is further extended with EBX value returned by CPUID with EAX=7 and ECX=0 as input. Following bits are significant: -=over +=over 4 =item bit #64+3 denoting availability of BMI1 instructions, e.g. ANDN; diff --git a/doc/crypto/RSA_generate_key.pod b/doc/crypto/RSA_generate_key.pod index 24e05bd..e51c0b1 100644 --- a/doc/crypto/RSA_generate_key.pod +++ b/doc/crypto/RSA_generate_key.pod @@ -32,7 +32,7 @@ progress of the key generation. If B is not B, it will be called as follows using the BN_GENCB_call() function described on the L page. -=over 4 +=over 2 =item * diff --git a/doc/crypto/SCT_new.pod b/doc/crypto/SCT_new.pod index 086e389..23595e1 100644 --- a/doc/crypto/SCT_new.pod +++ b/doc/crypto/SCT_new.pod @@ -84,7 +84,7 @@ An internal representation of an SCT can be created in one of two ways. The first option is to create a blank SCT, using SCT_new(), and then populate it using: -=over +=over 4 =item * SCT_set_version() to set the SCT version. @@ -117,7 +117,7 @@ The former takes ownership, whereas the latter makes a copy. Alternatively, the SCT can be pre-populated from the following data using SCT_new_from_base64(): -=over +=over 4 =item * The SCT version (only SCT_VERSION_V1 is currently supported). diff --git a/doc/crypto/SCT_validate.pod b/doc/crypto/SCT_validate.pod index 9868a28..3c03e97 100644 --- a/doc/crypto/SCT_validate.pod +++ b/doc/crypto/SCT_validate.pod @@ -31,7 +31,7 @@ SCT_get_validation_status(). A CT_POLICY_EVAL_CTX must be provided that specifies: -=over +=over 4 =item * The certificate the SCT was issued for. diff --git a/doc/crypto/d2i_X509.pod b/doc/crypto/d2i_X509.pod index 06546a4..f78d020 100644 --- a/doc/crypto/d2i_X509.pod +++ b/doc/crypto/d2i_X509.pod @@ -349,10 +349,10 @@ i2d_X509_SIG, i2d_X509_VAL, - convert objects from/to ASN.1/DER representation -=for comment generic - =head1 SYNOPSIS +=for comment generic + TYPE *d2i_TYPE(TYPE **a, unsigned char **pp, long length); TYPE *d2i_TYPE_bio(BIO *bp, TYPE **a); TYPE *d2i_TYPE_fp(FILE *fp, TYPE **a); @@ -436,7 +436,7 @@ another will be processed after it. The following points about the data types might be useful: -=over +=over 4 =item B diff --git a/doc/crypto/des_modes.pod b/doc/crypto/des_modes.pod index 5107b77..7c17969 100644 --- a/doc/crypto/des_modes.pod +++ b/doc/crypto/des_modes.pod @@ -1,5 +1,4 @@ =pod - =for comment openssl_manual_section:7 =head1 NAME @@ -18,7 +17,7 @@ other things. Normally, this is found as the function I_ecb_encrypt(). -=over 2 +=over 4 =item * @@ -45,7 +44,7 @@ Normally, this is found as the function I_cbc_encrypt(). Be aware that des_cbc_encrypt() is not really DES CBC (it does not update the IV); use des_ncbc_encrypt() instead. -=over 2 +=over 4 =item * @@ -77,7 +76,7 @@ An error will affect the current and the following ciphertext blocks. Normally, this is found as the function I_cfb_encrypt(). -=over 2 +=over 4 =item * @@ -124,7 +123,7 @@ An error will affect the current and the following ciphertext variables. Normally, this is found as the function I_ofb_encrypt(). -=over 2 +=over 4 =item * @@ -185,7 +184,7 @@ susceptible to a 'known plaintext' attack. Normally, this is found as the function I_ecb3_encrypt(). -=over 2 +=over 4 =item * @@ -220,8 +219,7 @@ ecb mode. Normally, this is found as the function I_ede3_cbc_encrypt(). -=over 2 - +=over 4 =item * @@ -248,12 +246,11 @@ it to: =head1 SEE ALSO -L, L, L, -L +L, L =head1 COPYRIGHT -Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-2017 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/crypto/evp.pod b/doc/crypto/evp.pod index 31f4590..02051df 100644 --- a/doc/crypto/evp.pod +++ b/doc/crypto/evp.pod @@ -38,7 +38,7 @@ L. The EVP_PKEY functions support the full range of asymmetric algorithm operations: -=over +=over 4 =item For key agreement see L diff --git a/doc/ssl/SSL_set_bio.pod b/doc/ssl/SSL_set_bio.pod index 104f406..4230940 100644 --- a/doc/ssl/SSL_set_bio.pod +++ b/doc/ssl/SSL_set_bio.pod @@ -37,7 +37,7 @@ the rules for this are much more complex. For this reason this function is considered a legacy function and SSL_set0_rbio() and SSL_set0_wbio() should be used in preference. The ownership rules are as follows: -=over 4 +=over 2 =item * diff --git a/util/find-doc-nits b/util/find-doc-nits deleted file mode 100755 index f14e36e..0000000 --- a/util/find-doc-nits +++ /dev/null @@ -1,372 +0,0 @@ -#! /usr/bin/env perl -# Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. -# -# Licensed under the OpenSSL license (the "License"). You may not use -# this file except in compliance with the License. You can obtain a copy -# in the file LICENSE in the source distribution or at -# https://www.openssl.org/source/license.html - - -require 5.10.0; -use warnings; -use strict; -use Pod::Checker; -use File::Find; -use File::Basename; -use File::Spec::Functions; -use Getopt::Std; -use lib catdir(dirname($0), "perl"); -use OpenSSL::Util::Pod; - -# Options. -our($opt_s); -our($opt_u); -our($opt_h); -our($opt_n); -our($opt_l); - -sub help() -{ - print < [ 'NAME', 'DESCRIPTION', 'COPYRIGHT' ], - 1 => [ 'SYNOPSIS', 'OPTIONS' ], - 3 => [ 'SYNOPSIS', 'RETURN VALUES' ], - 5 => [ ], - 7 => [ ] ); - -# Cross-check functions in the NAME and SYNOPSIS section. -sub name_synopsis() -{ - my $id = shift; - my $filename = shift; - my $contents = shift; - - # Get NAME section and all words in it. - return unless $contents =~ /=head1 NAME(.*)=head1 SYNOPSIS/ms; - my $tmp = $1; - $tmp =~ tr/\n/ /; - print "$id trailing comma before - in NAME\n" if $tmp =~ /, *-/; - $tmp =~ s/-.*//g; - $tmp =~ s/,//g; - - my $dirname = dirname($filename); - my $simplename = basename($filename); - $simplename =~ s/.pod$//; - my $foundfilename = 0; - my %foundfilenames = (); - my %names; - foreach my $n ( split ' ', $tmp ) { - $names{$n} = 1; - $foundfilename++ if $n eq $simplename; - $foundfilenames{$n} = 1 - if -f "$dirname/$n.pod" && $n ne $simplename; - } - print "$id the following exist as other .pod files:\n", - join(" ", sort keys %foundfilenames), "\n" - if %foundfilenames; - print "$id $simplename (filename) missing from NAME section\n", - unless $foundfilename; - - # Find all functions in SYNOPSIS - return unless $contents =~ /=head1 SYNOPSIS(.*)=head1 DESCRIPTION/ms; - my $syn = $1; - foreach my $line ( split /\n+/, $syn ) { - my $sym; - $line =~ s/STACK_OF\([^)]+\)/int/g; - $line =~ s/__declspec\([^)]+\)//; - if ( $line =~ /env (\S*)=/ ) { - # environment variable env NAME=... - $sym = $1; - } elsif ( $line =~ /typedef.*\(\*(\S+)\)\(.*/ ) { - # a callback function: typedef ... (*NAME)(... - $sym = $1; - } elsif ( $line =~ /typedef.* (\S+);/ ) { - # a simple typedef: typedef ... NAME; - $sym = $1; - } elsif ( $line =~ /enum (\S*) \{/ ) { - # an enumeration: enum ... { - $sym = $1; - } elsif ( $line =~ /#define ([A-Za-z0-9_]+)/ ) { - $sym = $1; - } elsif ( $line =~ /([A-Za-z0-9_]+)\(/ ) { - $sym = $1; - } - else { - next; - } - print "$id $sym missing from NAME section\n" - unless defined $names{$sym}; - $names{$sym} = 2; - - # Do some sanity checks on the prototype. - print "$id prototype missing spaces around commas: $line\n" - if ( $line =~ /[a-z0-9],[^ ]/ ); - } - - foreach my $n ( keys %names ) { - next if $names{$n} == 2; - print "$id $n missing from SYNOPSIS\n"; - } -} - -sub check() -{ - my $filename = shift; - my $dirname = basename(dirname($filename)); - - my $contents = ''; - { - local $/ = undef; - open POD, $filename or die "Couldn't open $filename, $!"; - $contents = ; - close POD; - } - - my $id = "${filename}:1:"; - - &name_synopsis($id, $filename, $contents) - unless $contents =~ /=for comment generic/ - or $filename =~ m at man[157]/@; - - print "$id doesn't start with =pod\n" - if $contents !~ /^=pod/; - print "$id doesn't end with =cut\n" - if $contents !~ /=cut\n$/; - print "$id more than one cut line.\n" - if $contents =~ /=cut.*=cut/ms; - print "$id missing copyright\n" - if $contents !~ /Copyright .* The OpenSSL Project Authors/; - print "$id copyright not last\n" - if $contents =~ /head1 COPYRIGHT.*=head/ms; - print "$id head2 in All uppercase\n" - if $contents =~ /head2\s+[A-Z ]+\n/; - print "$id extra space after head\n" - if $contents =~ /=head\d\s\s+/; - print "$id period in NAME section\n" - if $contents =~ /=head1 NAME.*\.\n.*=head1 SYNOPSIS/ms; - print "$id POD markup in NAME section\n" - if $contents =~ /=head1 NAME.*[<>].*=head1 SYNOPSIS/ms; - - # Look for multiple consecutive openssl #include lines. - # Consecutive because of files like md5.pod. Sometimes it's okay - # or necessary, as in ssl/SSL_set1_host.pod - if ( $contents !~ /=for comment multiple includes/ ) { - if ( $contents =~ /=head1 SYNOPSIS(.*)=head1 DESCRIPTION/ms ) { - my $count = 0; - foreach my $line ( split /\n+/, $1 ) { - if ( $line =~ m at include ', $temp - or die "Can't open $temp, $!"; - podchecker($filename, $OUT); - close $OUT; - open $OUT, '<', $temp - or die "Can't read $temp, $!"; - while ( <$OUT> ) { - next if /\(section\) in.*deprecated/; - print; - } - close $OUT; - unlink $temp || warn "Can't remove $temp, $!"; -} - -my %dups; - -sub parsenum() -{ - my $file = shift; - my @apis; - - open my $IN, '<', $file - or die "Can't open $file, $!, stopped"; - - while ( <$IN> ) { - next if /\bNOEXIST\b/; - next if /\bEXPORT_VAR_AS_FUNC\b/; - push @apis, $1 if /([^\s]+).\s/; - } - - close $IN; - - print "# Found ", scalar(@apis), " in $file\n"; - return sort @apis; -} - -sub getdocced() -{ - my $dir = shift; - my %return; - - foreach my $pod ( glob("$dir/*.pod") ) { - my %podinfo = extract_pod_info($pod); - foreach my $n ( @{$podinfo{names}} ) { - $return{$n} = $pod; - print "# Duplicate $n in $pod and $dups{$n}\n" - if defined $dups{$n} && $dups{$n} ne $pod; - $dups{$n} = $pod; - } - } - - return %return; -} - -my %docced; - -sub printem() -{ - my $libname = shift; - my $numfile = shift; - my $count = 0; - - foreach my $func ( &parsenum($numfile) ) { - next if $docced{$func}; - - # Skip ASN1 utilities - next if $func =~ /^ASN1_/; - - print "$libname:$func\n"; - $count++; - } - print "# Found $count missing from $numfile\n\n"; -} - - -# Collection of links in each POD file. -# filename => [ "foo(1)", "bar(3)", ... ] -my %link_collection = (); -# Collection of names in each POD file. -# "name(s)" => filename -my %name_collection = (); - -sub collectnames { - my $filename = shift; - $filename =~ m|man(\d)/|; - my $section = $1; - my $simplename = basename($filename, ".pod"); - my $id = "${filename}:1:"; - - my $contents = ''; - { - local $/ = undef; - open POD, $filename or die "Couldn't open $filename, $!"; - $contents = ; - close POD; - } - - $contents =~ /=head1 NAME([^=]*)=head1 /ms; - my $tmp = $1; - unless (defined $tmp) { - print "$id weird name section\n"; - return; - } - $tmp =~ tr/\n/ /; - $tmp =~ s/-.*//g; - - my @names = map { s/\s+//g; $_ } split(/,/, $tmp); - unless (grep { $simplename eq $_ } @names) { - print "$id missing $simplename\n"; - push @names, $simplename; - } - foreach my $name (@names) { - next if $name eq ""; - my $name_sec = "$name($section)"; - if (! exists $name_collection{$name_sec}) { - $name_collection{$name_sec} = $filename; - } else { #elsif ($filename ne $name_collection{$name_sec}) { - print "$id $name_sec also in $name_collection{$name_sec}\n"; - } - } - - my @foreign_names = - map { map { s/\s+//g; $_ } split(/,/, $_) } - $contents =~ /=for\s+comment\s+foreign\s+manuals:\s*(.*)\n\n/; - foreach (@foreign_names) { - $name_collection{$_} = undef; # It still exists! - } - - my @links = $contents =~ /L< - # if the link is of the form L, - # then remove 'something'. Note that 'something' - # may contain POD codes as well... - (?:(?:[^\|]|<[^>]*>)*\|)? - # we're only interested in referenses that have - # a one digit section number - ([^\/>\(]+\(\d\)) - /gx; - $link_collection{$filename} = [ @links ]; -} - -sub checklinks { - foreach my $filename (sort keys %link_collection) { - foreach my $link (@{$link_collection{$filename}}) { - print "${filename}:1: reference to non-existing $link\n" - unless exists $name_collection{$link}; - } - } -} - -getopts('lnshu'); - -&help() if ( $opt_h ); - -die "Need one of -l -n -s or -u flags.\n" - unless $opt_l or $opt_n or $opt_s or $opt_u; - -if ( $opt_n or $opt_s ) { - foreach (@ARGV ? @ARGV : glob('doc/*/*.pod')) { - &check($_); - } -} - -if ( $opt_l ) { - foreach (@ARGV ? @ARGV : glob('doc/*/*.pod')) { - collectnames($_); - } - checklinks(); -} - -if ( $opt_u ) { - my %temp = &getdocced('doc/man3'); - foreach ( keys %temp ) { - $docced{$_} = $temp{$_}; - } - &printem('crypto', 'util/libcrypto.num'); - &printem('ssl', 'util/libssl.num'); -} - -exit; From builds at travis-ci.org Fri Apr 7 19:06:55 2017 From: builds at travis-ci.org (Travis CI) Date: Fri, 07 Apr 2017 19:06:55 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10063 (OpenSSL_1_1_0-stable - 74c29dc) In-Reply-To: Message-ID: <58e7e34f5bf03_43fa5603e38f8206499d@54406ac8-d063-440e-88ea-c94db123a7ce.mail> Build Update for openssl/openssl ------------------------------------- Build: #10063 Status: Still Failing Duration: 10 minutes and 4 seconds Commit: 74c29dc (OpenSSL_1_1_0-stable) Author: Rich Salz Message: Standardize on =over 4 and check for it. (cherry picked from commit dfc63ccebd8262648640fc6e35fffa132102b967) Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3117) View the changeset: https://github.com/openssl/openssl/compare/8d8cae7d3028...74c29dc6eac1 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/219813992 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From appro at openssl.org Sat Apr 8 08:56:23 2017 From: appro at openssl.org (Andy Polyakov) Date: Sat, 08 Apr 2017 08:56:23 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491641783.687681.8339.nullmailer@dev.openssl.org> The branch master has been updated via 3de47fb2c56e497873572a22167e3a7619ff0425 (commit) from 2f61bc2ea306c059d8b00ddf32025a0b30346d8f (commit) - Log ----------------------------------------------------------------- commit 3de47fb2c56e497873572a22167e3a7619ff0425 Author: Andy Polyakov Date: Fri Apr 7 14:27:54 2017 +0200 appveyor.yml: split {build,test}_scripts to avoid exit code masking. Last modification effectively masked test failures, so that builds were reported successful even if they failed. Reviewed-by: Richard Levitte ----------------------------------------------------------------------- Summary of changes: appveyor.yml | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index a5d05c6..f2eab32 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -39,26 +39,29 @@ before_build: } build_script: + - cd _build - ps: >- If ($env:Configuration -Match "shared" -or $env:EXTENDED_TESTS) { - cd _build cmd /c "nmake 2>&1" - cd .. } + - cd .. test_script: + - cd _build - ps: >- If ($env:Configuration -Match "shared" -or $env:EXTENDED_TESTS) { - cd _build if ($env:EXTENDED_TESTS) { cmd /c "nmake test V=1 2>&1" - mkdir ..\_install - cmd /c "nmake install install_docs DESTDIR=..\_install 2>&1" } Else { cmd /c "nmake test V=1 TESTS=-test_fuzz 2>&1" } - cd .. } + - ps: >- + if ($env:EXTENDED_TESTS) { + mkdir ..\_install + cmd /c "nmake install install_docs DESTDIR=..\_install 2>&1" + } + - cd .. notifications: - provider: Email From no-reply at appveyor.com Sat Apr 8 09:50:17 2017 From: no-reply at appveyor.com (AppVeyor) Date: Sat, 08 Apr 2017 09:50:17 +0000 Subject: [openssl-commits] Build failed: openssl master.9387 Message-ID: <20170408095015.3773.2791.A0C79BB8@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Sat Apr 8 13:32:49 2017 From: no-reply at appveyor.com (AppVeyor) Date: Sat, 08 Apr 2017 13:32:49 +0000 Subject: [openssl-commits] Build failed: openssl master.9388 Message-ID: <20170408133248.3773.74528.FB88356F@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Sat Apr 8 13:44:05 2017 From: no-reply at appveyor.com (AppVeyor) Date: Sat, 08 Apr 2017 13:44:05 +0000 Subject: [openssl-commits] Build failed: openssl master.9389 Message-ID: <20170408134404.105213.29839.30D678D4@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Sat Apr 8 14:04:18 2017 From: no-reply at appveyor.com (AppVeyor) Date: Sat, 08 Apr 2017 14:04:18 +0000 Subject: [openssl-commits] Build failed: openssl master.9390 Message-ID: <20170408140416.41601.65719.C7A2B408@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Sat Apr 8 18:05:50 2017 From: no-reply at appveyor.com (AppVeyor) Date: Sat, 08 Apr 2017 18:05:50 +0000 Subject: [openssl-commits] Build completed: openssl master.9391 Message-ID: <20170408180548.41827.84598.5F652909@appveyor.com> An HTML attachment was scrubbed... URL: From appro at openssl.org Sat Apr 8 18:36:53 2017 From: appro at openssl.org (Andy Polyakov) Date: Sat, 08 Apr 2017 18:36:53 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1491676613.632512.32071.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 70b9063cd24904fd3d0b83173c51fdcf34085967 (commit) via 00eae742694a87978e5e07593109f3cd895b4bc8 (commit) from 74c29dc6eac1f6f8a8c2ca28f8c01a43beb8c15b (commit) - Log ----------------------------------------------------------------- commit 70b9063cd24904fd3d0b83173c51fdcf34085967 Author: Andy Polyakov Date: Fri Apr 7 22:30:13 2017 +0200 e_os.h: omit PRIu64. PRIu64 is error-prone with BIO_printf, so introduce and stick to custom platform-neutral macro. 'll' allows to print 64-bit values on *all* supported platforms, but it's problematic with -Wformat -Werror. Hence use 'l' in identifiable LP64 cases. Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3148) commit 00eae742694a87978e5e07593109f3cd895b4bc8 Author: Andy Polyakov Date: Fri Apr 7 20:26:59 2017 +0200 bio/b_print.c: drop dependency on BN config. This might seem controversial, but it doesn't actually affect anything. Or rather it doesn't make worse cases when it was problematic [with code additions to 1.1.0]. One of such rare cases is 32-bit PA-RISC target with *vendor* compiler. Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3148) ----------------------------------------------------------------------- Summary of changes: apps/enc.c | 4 ++-- apps/s_cb.c | 2 +- apps/s_client.c | 4 ++-- crypto/asn1/x_int64.c | 4 ++-- crypto/bio/b_print.c | 44 ++++++++++++-------------------------------- e_os.h | 17 ++++++----------- 6 files changed, 25 insertions(+), 50 deletions(-) diff --git a/apps/enc.c b/apps/enc.c index 85182dc..b11d553 100644 --- a/apps/enc.c +++ b/apps/enc.c @@ -548,8 +548,8 @@ int enc_main(int argc, char **argv) ret = 0; if (verbose) { - BIO_printf(bio_err, "bytes read :%8"PRIu64"\n", BIO_number_read(in)); - BIO_printf(bio_err, "bytes written:%8"PRIu64"\n", BIO_number_written(out)); + BIO_printf(bio_err, "bytes read :%8"BIO_PRI64"u\n", BIO_number_read(in)); + BIO_printf(bio_err, "bytes written:%8"BIO_PRI64"u\n", BIO_number_written(out)); } end: ERR_print_errors(bio_err); diff --git a/apps/s_cb.c b/apps/s_cb.c index e0acd51..afa3065 100644 --- a/apps/s_cb.c +++ b/apps/s_cb.c @@ -1002,7 +1002,7 @@ static char *hexencode(const unsigned char *data, size_t len) int ilen = (int) outlen; if (outlen < len || ilen < 0 || outlen != (size_t)ilen) { - BIO_printf(bio_err, "%s: %" PRIu64 "-byte buffer too large to hexencode\n", + BIO_printf(bio_err, "%s: %"BIO_PRI64"u-byte buffer too large to hexencode\n", opt_getprog(), (uint64_t)len); exit(1); } diff --git a/apps/s_client.c b/apps/s_client.c index 0292e5f..2992595 100644 --- a/apps/s_client.c +++ b/apps/s_client.c @@ -2615,8 +2615,8 @@ static void print_stuff(BIO *bio, SSL *s, int full) #endif BIO_printf(bio, - "---\nSSL handshake has read %" PRIu64 - " bytes and written %" PRIu64 " bytes\n", + "---\nSSL handshake has read %"BIO_PRI64"u" + " bytes and written %"BIO_PRI64"u bytes\n", BIO_number_read(SSL_get_rbio(s)), BIO_number_written(SSL_get_wbio(s))); } diff --git a/crypto/asn1/x_int64.c b/crypto/asn1/x_int64.c index d180a3b..e0520ff 100644 --- a/crypto/asn1/x_int64.c +++ b/crypto/asn1/x_int64.c @@ -79,8 +79,8 @@ static int uint64_print(BIO *out, ASN1_VALUE **pval, const ASN1_ITEM *it, int indent, const ASN1_PCTX *pctx) { if ((it->size & INTxx_FLAG_SIGNED) == INTxx_FLAG_SIGNED) - return BIO_printf(out, "%jd\n", *(int64_t *)pval); - return BIO_printf(out, "%ju\n", *(uint64_t *)pval); + return BIO_printf(out, "%"BIO_PRI64"d\n", *(int64_t *)pval); + return BIO_printf(out, "%"BIO_PRI64"u\n", *(uint64_t *)pval); } /* 32-bit variants */ diff --git a/crypto/bio/b_print.c b/crypto/bio/b_print.c index e91ab6d..7bbc551 100644 --- a/crypto/bio/b_print.c +++ b/crypto/bio/b_print.c @@ -12,18 +12,8 @@ #include #include "internal/numbers.h" #include "internal/cryptlib.h" -#ifndef NO_SYS_TYPES_H -# include -#endif -#include /* To get BN_LLONG properly defined */ #include -#if defined(BN_LLONG) || defined(SIXTY_FOUR_BIT) -# ifndef HAVE_LONG_LONG -# define HAVE_LONG_LONG 1 -# endif -#endif - /* * Copyright Patrick Powell 1995 * This code is based on code written by Patrick Powell @@ -37,20 +27,10 @@ # define LDOUBLE double #endif -#ifdef HAVE_LONG_LONG -# if defined(_WIN32) && !defined(__GNUC__) -# define LLONG __int64 -# else -# define LLONG long long -# endif -#else -# define LLONG long -#endif - static int fmtstr(char **, char **, size_t *, size_t *, const char *, int, int, int); static int fmtint(char **, char **, size_t *, size_t *, - LLONG, int, int, int, int); + int64_t, int, int, int, int); static int fmtfp(char **, char **, size_t *, size_t *, LDOUBLE, int, int, int, int); static int doapr_outch(char **, char **, size_t *, size_t *, int); @@ -106,7 +86,7 @@ _dopr(char **sbuffer, size_t *retlen, int *truncated, const char *format, va_list args) { char ch; - LLONG value; + int64_t value; LDOUBLE fvalue; char *strvalue; int min; @@ -231,7 +211,7 @@ _dopr(char **sbuffer, value = va_arg(args, long int); break; case DP_C_LLONG: - value = va_arg(args, LLONG); + value = va_arg(args, int64_t); break; default: value = va_arg(args, int); @@ -253,13 +233,13 @@ _dopr(char **sbuffer, value = (unsigned short int)va_arg(args, unsigned int); break; case DP_C_LONG: - value = (LLONG) va_arg(args, unsigned long int); + value = va_arg(args, unsigned long int); break; case DP_C_LLONG: - value = va_arg(args, unsigned LLONG); + value = va_arg(args, uint64_t); break; default: - value = (LLONG) va_arg(args, unsigned int); + value = va_arg(args, unsigned int); break; } if (!fmtint(sbuffer, buffer, &currlen, maxlen, value, @@ -331,9 +311,9 @@ _dopr(char **sbuffer, num = va_arg(args, long int *); *num = (long int)currlen; } else if (cflags == DP_C_LLONG) { /* XXX */ - LLONG *num; - num = va_arg(args, LLONG *); - *num = (LLONG) currlen; + int64_t *num; + num = va_arg(args, int64_t *); + *num = (int64_t)currlen; } else { int *num; num = va_arg(args, int *); @@ -434,11 +414,11 @@ static int fmtint(char **sbuffer, char **buffer, size_t *currlen, - size_t *maxlen, LLONG value, int base, int min, int max, int flags) + size_t *maxlen, int64_t value, int base, int min, int max, int flags) { int signvalue = 0; const char *prefix = ""; - unsigned LLONG uvalue; + uint64_t uvalue; char convert[DECIMAL_SIZE(value) + 3]; int place = 0; int spadlen = 0; @@ -451,7 +431,7 @@ fmtint(char **sbuffer, if (!(flags & DP_F_UNSIGNED)) { if (value < 0) { signvalue = '-'; - uvalue = 0 - (unsigned LLONG)value; + uvalue = 0 - (uint64_t)value; } else if (flags & DP_F_PLUS) signvalue = '+'; else if (flags & DP_F_SPACE) diff --git a/e_os.h b/e_os.h index 6819271..559bf90 100644 --- a/e_os.h +++ b/e_os.h @@ -30,18 +30,13 @@ extern "C" { # endif /* - * We need a format operator for some client tools for uint64_t. If inttypes.h - * isn't available or did not define it, just go with hard-coded. + * BIO_printf format modifier for [u]int64_t. */ -# if defined(OPENSSL_SYS_UEFI) -# define PRIu64 "Lu" -# endif -# ifndef PRIu64 -# ifdef SIXTY_FOUR_BIT_LONG -# define PRIu64 "lu" -# else -# define PRIu64 "llu" -# endif +# if defined(__LP64__) || (defined(__SIZEOF_LONG__) && __SIZEOF_LONG__==8) +# define BIO_PRI64 "l" /* 'll' does work "universally", but 'l' is + * here to shut -Wformat warnings in LP64... */ +# else +# define BIO_PRI64 "ll" # endif # if !defined(NDEBUG) && !defined(OPENSSL_NO_STDIO) From builds at travis-ci.org Sat Apr 8 18:50:54 2017 From: builds at travis-ci.org (Travis CI) Date: Sat, 08 Apr 2017 18:50:54 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10076 (OpenSSL_1_1_0-stable - 70b9063) In-Reply-To: Message-ID: <58e931149876d_43f8ad45c6d10909466@87accbf0-cbbc-4d24-99f5-2986409542b9.mail> Build Update for openssl/openssl ------------------------------------- Build: #10076 Status: Still Failing Duration: 13 minutes and 0 seconds Commit: 70b9063 (OpenSSL_1_1_0-stable) Author: Andy Polyakov Message: e_os.h: omit PRIu64. PRIu64 is error-prone with BIO_printf, so introduce and stick to custom platform-neutral macro. 'll' allows to print 64-bit values on *all* supported platforms, but it's problematic with -Wformat -Werror. Hence use 'l' in identifiable LP64 cases. Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3148) View the changeset: https://github.com/openssl/openssl/compare/74c29dc6eac1...70b9063cd249 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/220086742 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Sat Apr 8 20:14:47 2017 From: no-reply at appveyor.com (AppVeyor) Date: Sat, 08 Apr 2017 20:14:47 +0000 Subject: [openssl-commits] Build failed: openssl master.9393 Message-ID: <20170408201446.3467.98940.CFA32BAB@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Sat Apr 8 20:43:00 2017 From: no-reply at appveyor.com (AppVeyor) Date: Sat, 08 Apr 2017 20:43:00 +0000 Subject: [openssl-commits] Build failed: openssl master.9394 Message-ID: <20170408204300.41349.53802.F8C9CC25@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Sat Apr 8 21:02:46 2017 From: no-reply at appveyor.com (AppVeyor) Date: Sat, 08 Apr 2017 21:02:46 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.1943 Message-ID: <20170408210239.105879.52266.2E7F4FA9@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Sun Apr 9 09:16:53 2017 From: no-reply at appveyor.com (AppVeyor) Date: Sun, 09 Apr 2017 09:16:53 +0000 Subject: [openssl-commits] Build completed: openssl master.9395 Message-ID: <20170409091653.3230.2593.02B3F751@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Sun Apr 9 21:26:35 2017 From: no-reply at appveyor.com (AppVeyor) Date: Sun, 09 Apr 2017 21:26:35 +0000 Subject: [openssl-commits] Build failed: openssl master.9398 Message-ID: <20170409212634.105427.82063.65A0A8D6@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Mon Apr 10 02:27:59 2017 From: no-reply at appveyor.com (AppVeyor) Date: Mon, 10 Apr 2017 02:27:59 +0000 Subject: [openssl-commits] Build failed: openssl master.9399 Message-ID: <20170410022758.46295.93651.D610A1E5@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Mon Apr 10 03:57:19 2017 From: no-reply at appveyor.com (AppVeyor) Date: Mon, 10 Apr 2017 03:57:19 +0000 Subject: [openssl-commits] Build failed: openssl master.9400 Message-ID: <20170410035719.94137.67980.72261254@appveyor.com> An HTML attachment was scrubbed... URL: From appro at openssl.org Mon Apr 10 10:07:05 2017 From: appro at openssl.org (Andy Polyakov) Date: Mon, 10 Apr 2017 10:07:05 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491818825.471942.15445.nullmailer@dev.openssl.org> The branch master has been updated via e128f891de71bbdba8391355af8d6d47d20b1969 (commit) from 3de47fb2c56e497873572a22167e3a7619ff0425 (commit) - Log ----------------------------------------------------------------- commit e128f891de71bbdba8391355af8d6d47d20b1969 Author: Andy Polyakov Date: Sat Apr 8 18:01:36 2017 +0200 asn1/x_long.c: remove conditions in inner loops and dependency on BN. Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3152) ----------------------------------------------------------------------- Summary of changes: crypto/asn1/x_long.c | 73 +++++++++++++++++++++++++++++++++------------------- 1 file changed, 47 insertions(+), 26 deletions(-) diff --git a/crypto/asn1/x_long.c b/crypto/asn1/x_long.c index a7b9023..5895345 100644 --- a/crypto/asn1/x_long.c +++ b/crypto/asn1/x_long.c @@ -10,7 +10,6 @@ #include #include "internal/cryptlib.h" #include -#include /* * Custom primitive type for long handling. This converts between an @@ -56,11 +55,36 @@ static void long_free(ASN1_VALUE **pval, const ASN1_ITEM *it) *(long *)pval = it->size; } +/* + * Originally BN_num_bits_word was called to perform this operation, but + * trouble is that there is no guarantee that sizeof(long) equals to + * sizeof(BN_ULONG). BN_ULONG is a configurable type that can be as wide + * as long, but also double or half... + */ +static int num_bits_ulong(unsigned long value) +{ + size_t i; + unsigned long ret = 0; + + /* + * It is argued that *on average* constant counter loop performs + * not worse [if not better] than one with conditional break or + * mask-n-table-lookup-style, because of branch misprediction + * penalties. + */ + for (i = 0; i < sizeof(value) * 8; i++) { + ret += (value != 0); + value >>= 1; + } + + return (int)ret; +} + static int long_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, const ASN1_ITEM *it) { long ltmp; - unsigned long utmp; + unsigned long utmp, sign; int clen, pad, i; /* this exists to bypass broken gcc optimization */ char *cp = (char *)pval; @@ -75,11 +99,14 @@ static int long_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, * cleanly handle the padding if only the MSB of the leading octet is * set. */ - if (ltmp < 0) + if (ltmp < 0) { + sign = 0xff; utmp = 0 - (unsigned long)ltmp - 1; - else + } else { + sign = 0; utmp = ltmp; - clen = BN_num_bits_word(utmp); + } + clen = num_bits_ulong(utmp); /* If MSB of leading octet set we need to pad */ if (!(clen & 0x7)) pad = 1; @@ -89,13 +116,11 @@ static int long_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, /* Convert number of bits to number of octets */ clen = (clen + 7) >> 3; - if (cont) { + if (cont != NULL) { if (pad) - *cont++ = (ltmp < 0) ? 0xff : 0; + *cont++ = (unsigned char)sign; for (i = clen - 1; i >= 0; i--) { - cont[i] = (unsigned char)(utmp & 0xff); - if (ltmp < 0) - cont[i] ^= 0xff; + cont[i] = (unsigned char)(utmp ^ sign); utmp >>= 8; } } @@ -105,9 +130,9 @@ static int long_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, static int long_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, int utype, char *free_cont, const ASN1_ITEM *it) { - int neg = -1, i; + int i; long ltmp; - unsigned long utmp = 0; + unsigned long utmp = 0, sign = 0x100; char *cp = (char *)pval; if (len > 1) { @@ -120,12 +145,12 @@ static int long_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, case 0xff: cont++; len--; - neg = 0x80; + sign = 0xff; break; case 0: cont++; len--; - neg = 0; + sign = 0; break; } } @@ -133,33 +158,29 @@ static int long_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, ASN1err(ASN1_F_LONG_C2I, ASN1_R_INTEGER_TOO_LARGE_FOR_LONG); return 0; } - if (neg == -1) { + + if (sign == 0x100) { /* Is it negative? */ if (len && (cont[0] & 0x80)) - neg = 1; + sign = 0xff; else - neg = 0; - } else if (neg == (cont[0] & 0x80)) { + sign = 0; + } else if (((sign ^ cont[0]) & 0x80) == 0) { /* same sign bit? */ ASN1err(ASN1_F_LONG_C2I, ASN1_R_ILLEGAL_PADDING); return 0; } utmp = 0; for (i = 0; i < len; i++) { utmp <<= 8; - if (neg) - utmp |= cont[i] ^ 0xff; - else - utmp |= cont[i]; + utmp |= cont[i] ^ sign; } ltmp = (long)utmp; if (ltmp < 0) { ASN1err(ASN1_F_LONG_C2I, ASN1_R_INTEGER_TOO_LARGE_FOR_LONG); return 0; } - if (neg) { - ltmp = -ltmp; - ltmp--; - } + if (sign) + ltmp = -ltmp - 1; if (ltmp == it->size) { ASN1err(ASN1_F_LONG_C2I, ASN1_R_INTEGER_TOO_LARGE_FOR_LONG); return 0; From appro at openssl.org Mon Apr 10 10:08:03 2017 From: appro at openssl.org (Andy Polyakov) Date: Mon, 10 Apr 2017 10:08:03 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1491818883.138055.16403.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via c74be80027e30201e176f3fa7ace64e5e8ad4691 (commit) from 70b9063cd24904fd3d0b83173c51fdcf34085967 (commit) - Log ----------------------------------------------------------------- commit c74be80027e30201e176f3fa7ace64e5e8ad4691 Author: Andy Polyakov Date: Sat Apr 8 18:01:36 2017 +0200 asn1/x_long.c: remove conditions in inner loops and dependency on BN. Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3152) (cherry picked from commit e128f891de71bbdba8391355af8d6d47d20b1969) ----------------------------------------------------------------------- Summary of changes: crypto/asn1/x_long.c | 73 +++++++++++++++++++++++++++++++++------------------- 1 file changed, 47 insertions(+), 26 deletions(-) diff --git a/crypto/asn1/x_long.c b/crypto/asn1/x_long.c index a7b9023..5895345 100644 --- a/crypto/asn1/x_long.c +++ b/crypto/asn1/x_long.c @@ -10,7 +10,6 @@ #include #include "internal/cryptlib.h" #include -#include /* * Custom primitive type for long handling. This converts between an @@ -56,11 +55,36 @@ static void long_free(ASN1_VALUE **pval, const ASN1_ITEM *it) *(long *)pval = it->size; } +/* + * Originally BN_num_bits_word was called to perform this operation, but + * trouble is that there is no guarantee that sizeof(long) equals to + * sizeof(BN_ULONG). BN_ULONG is a configurable type that can be as wide + * as long, but also double or half... + */ +static int num_bits_ulong(unsigned long value) +{ + size_t i; + unsigned long ret = 0; + + /* + * It is argued that *on average* constant counter loop performs + * not worse [if not better] than one with conditional break or + * mask-n-table-lookup-style, because of branch misprediction + * penalties. + */ + for (i = 0; i < sizeof(value) * 8; i++) { + ret += (value != 0); + value >>= 1; + } + + return (int)ret; +} + static int long_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, const ASN1_ITEM *it) { long ltmp; - unsigned long utmp; + unsigned long utmp, sign; int clen, pad, i; /* this exists to bypass broken gcc optimization */ char *cp = (char *)pval; @@ -75,11 +99,14 @@ static int long_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, * cleanly handle the padding if only the MSB of the leading octet is * set. */ - if (ltmp < 0) + if (ltmp < 0) { + sign = 0xff; utmp = 0 - (unsigned long)ltmp - 1; - else + } else { + sign = 0; utmp = ltmp; - clen = BN_num_bits_word(utmp); + } + clen = num_bits_ulong(utmp); /* If MSB of leading octet set we need to pad */ if (!(clen & 0x7)) pad = 1; @@ -89,13 +116,11 @@ static int long_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, /* Convert number of bits to number of octets */ clen = (clen + 7) >> 3; - if (cont) { + if (cont != NULL) { if (pad) - *cont++ = (ltmp < 0) ? 0xff : 0; + *cont++ = (unsigned char)sign; for (i = clen - 1; i >= 0; i--) { - cont[i] = (unsigned char)(utmp & 0xff); - if (ltmp < 0) - cont[i] ^= 0xff; + cont[i] = (unsigned char)(utmp ^ sign); utmp >>= 8; } } @@ -105,9 +130,9 @@ static int long_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, static int long_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, int utype, char *free_cont, const ASN1_ITEM *it) { - int neg = -1, i; + int i; long ltmp; - unsigned long utmp = 0; + unsigned long utmp = 0, sign = 0x100; char *cp = (char *)pval; if (len > 1) { @@ -120,12 +145,12 @@ static int long_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, case 0xff: cont++; len--; - neg = 0x80; + sign = 0xff; break; case 0: cont++; len--; - neg = 0; + sign = 0; break; } } @@ -133,33 +158,29 @@ static int long_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, ASN1err(ASN1_F_LONG_C2I, ASN1_R_INTEGER_TOO_LARGE_FOR_LONG); return 0; } - if (neg == -1) { + + if (sign == 0x100) { /* Is it negative? */ if (len && (cont[0] & 0x80)) - neg = 1; + sign = 0xff; else - neg = 0; - } else if (neg == (cont[0] & 0x80)) { + sign = 0; + } else if (((sign ^ cont[0]) & 0x80) == 0) { /* same sign bit? */ ASN1err(ASN1_F_LONG_C2I, ASN1_R_ILLEGAL_PADDING); return 0; } utmp = 0; for (i = 0; i < len; i++) { utmp <<= 8; - if (neg) - utmp |= cont[i] ^ 0xff; - else - utmp |= cont[i]; + utmp |= cont[i] ^ sign; } ltmp = (long)utmp; if (ltmp < 0) { ASN1err(ASN1_F_LONG_C2I, ASN1_R_INTEGER_TOO_LARGE_FOR_LONG); return 0; } - if (neg) { - ltmp = -ltmp; - ltmp--; - } + if (sign) + ltmp = -ltmp - 1; if (ltmp == it->size) { ASN1err(ASN1_F_LONG_C2I, ASN1_R_INTEGER_TOO_LARGE_FOR_LONG); return 0; From appro at openssl.org Mon Apr 10 10:09:39 2017 From: appro at openssl.org (Andy Polyakov) Date: Mon, 10 Apr 2017 10:09:39 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491818979.091559.17608.nullmailer@dev.openssl.org> The branch master has been updated via ce57ac431964f7692af674fd124103d6fe07af2e (commit) from e128f891de71bbdba8391355af8d6d47d20b1969 (commit) - Log ----------------------------------------------------------------- commit ce57ac431964f7692af674fd124103d6fe07af2e Author: Andy Polyakov Date: Sat Apr 8 22:29:09 2017 +0200 rand/rand_lib.c: keep fixing no-engine configuration. Reviewed-by: Richard Levitte ----------------------------------------------------------------------- Summary of changes: crypto/rand/rand_lib.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/crypto/rand/rand_lib.c b/crypto/rand/rand_lib.c index 40e2464..7ffd10b 100644 --- a/crypto/rand/rand_lib.c +++ b/crypto/rand/rand_lib.c @@ -113,7 +113,9 @@ void rand_cleanup_int(void) meth->cleanup(); RAND_set_rand_method(NULL); CRYPTO_THREAD_lock_free(rand_meth_lock); +#ifndef OPENSSL_NO_ENGINE CRYPTO_THREAD_lock_free(rand_engine_lock); +#endif } void RAND_seed(const void *buf, int num) From appro at openssl.org Mon Apr 10 10:10:07 2017 From: appro at openssl.org (Andy Polyakov) Date: Mon, 10 Apr 2017 10:10:07 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1491819007.347131.18388.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 6d1ab3f5c87e44f9092f3eafe88dc5014e1af2f1 (commit) from c74be80027e30201e176f3fa7ace64e5e8ad4691 (commit) - Log ----------------------------------------------------------------- commit 6d1ab3f5c87e44f9092f3eafe88dc5014e1af2f1 Author: Andy Polyakov Date: Sat Apr 8 22:29:09 2017 +0200 rand/rand_lib.c: keep fixing no-engine configuration. Reviewed-by: Richard Levitte (cherry picked from commit ce57ac431964f7692af674fd124103d6fe07af2e) ----------------------------------------------------------------------- Summary of changes: crypto/rand/rand_lib.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/crypto/rand/rand_lib.c b/crypto/rand/rand_lib.c index c1373e5..62770d4 100644 --- a/crypto/rand/rand_lib.c +++ b/crypto/rand/rand_lib.c @@ -118,7 +118,9 @@ void rand_cleanup_int(void) meth->cleanup(); RAND_set_rand_method(NULL); CRYPTO_THREAD_lock_free(rand_meth_lock); +#ifndef OPENSSL_NO_ENGINE CRYPTO_THREAD_lock_free(rand_engine_lock); +#endif } void RAND_seed(const void *buf, int num) From levitte at openssl.org Mon Apr 10 10:11:09 2017 From: levitte at openssl.org (Richard Levitte) Date: Mon, 10 Apr 2017 10:11:09 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491819069.704271.19434.nullmailer@dev.openssl.org> The branch master has been updated via f120fa1efe6377850d1ecd389a02e0e2241912bc (commit) via e361a7b285f954aead44f70f0dde35e120e1e0b3 (commit) via 676cc3a67faf8170be910c2149d65616697cb126 (commit) via 6a32a3c058dbd9fa7cec5b020e4f027808972e4a (commit) via 31ae516116343defd39d5b5ee800fa25eeab7638 (commit) via 7eb4c1eb50785c0b32f52e8a5bf20328b6baca34 (commit) via 64f11ee88883af8995d2991307ff3fb560a96fa6 (commit) from ce57ac431964f7692af674fd124103d6fe07af2e (commit) - Log ----------------------------------------------------------------- commit f120fa1efe6377850d1ecd389a02e0e2241912bc Author: Richard Levitte Date: Thu Apr 6 14:11:19 2017 +0200 Fix util/mkdef.pl The deprecation checking code here didn't work the same way as in Configure, and used $config{options} to find an --api= option that was never there. This is replaced with checking $config{api}, which is the controlling variable for deprecation. Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3126) commit e361a7b285f954aead44f70f0dde35e120e1e0b3 Author: Richard Levitte Date: Wed Apr 5 22:38:03 2017 +0200 Add a note in CHANGES Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3126) commit 676cc3a67faf8170be910c2149d65616697cb126 Author: Richard Levitte Date: Wed Apr 5 17:06:01 2017 +0200 Act on deprecation of LONG and ZLONG, step 3 Teach util/mkdef.pl to recognise these lines: #if OPENSSL_API_COMPAT < 0xXXXXXXXXL #if OPENSSL_API_COMPAT >= 0xXXXXXXXXL and add corresponding markers in util/*.num A final 'make update' sets those markers right for LONG and ZLONG. Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3126) commit 6a32a3c058dbd9fa7cec5b020e4f027808972e4a Author: Richard Levitte Date: Wed Apr 5 13:24:14 2017 +0200 Act on deprecation of LONG and ZLONG, step 2 Replace all remaining uses of LONG and ZLONG with INT32 / ZINT32. Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3126) commit 31ae516116343defd39d5b5ee800fa25eeab7638 Author: Richard Levitte Date: Wed Apr 5 13:21:06 2017 +0200 Act on deprecation of LONG and ZLONG, step 1 Don't compile code that still uses LONG when it's deprecated Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3126) commit 7eb4c1eb50785c0b32f52e8a5bf20328b6baca34 Author: Richard Levitte Date: Wed Apr 5 12:09:21 2017 +0200 Discourage the use of LONG and ZLONG, and deprecate it in the future Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3126) commit 64f11ee88883af8995d2991307ff3fb560a96fa6 Author: Richard Levitte Date: Wed Apr 5 12:07:48 2017 +0200 Publish our INT32, UINT32, INT64, UINT64 ASN.1 types and Z variants Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3126) ----------------------------------------------------------------------- Summary of changes: CHANGES | 6 ++++++ crypto/asn1/asn1_item_list.h | 12 +++++++++++ crypto/asn1/evp_asn1.c | 4 ++-- crypto/asn1/n_pkey.c | 4 ++-- crypto/asn1/x_int64.c | 2 +- crypto/asn1/x_long.c | 4 ++++ crypto/cms/cms_asn1.c | 26 +++++++++++----------- crypto/cms/cms_lcl.h | 26 +++++++++++----------- crypto/dh/dh_asn1.c | 2 +- crypto/dh/dh_locl.h | 2 +- crypto/dsa/dsa_asn1.c | 2 +- crypto/dsa/dsa_locl.h | 2 +- crypto/ec/ec_asn1.c | 24 ++++++++++----------- crypto/rsa/rsa_asn1.c | 2 +- crypto/rsa/rsa_locl.h | 2 +- fuzz/asn1.c | 12 +++++++++++ include/internal/asn1t.h | 19 ----------------- include/openssl/asn1t.h | 16 ++++++++++++++ ssl/ssl_asn1.c | 2 +- test/asn1_encode_test.c | 8 ++++++- util/libcrypto.num | 8 +++---- util/mkdef.pl | 51 +++++++++++++++++++++++++++----------------- 22 files changed, 142 insertions(+), 94 deletions(-) delete mode 100644 include/internal/asn1t.h diff --git a/CHANGES b/CHANGES index 72c78ea..3617e8f 100644 --- a/CHANGES +++ b/CHANGES @@ -4,6 +4,12 @@ Changes between 1.1.0e and 1.1.1 [xx XXX xxxx] + *) Add the ASN.1 types INT32, UINT32, INT64, UINT64 and variants prefixed + with Z. These are meant to replace LONG and ZLONG and to be size safe. + The use of LONG and ZLONG is discouraged and scheduled for deprecation + in OpenSSL 1.2.0. + [Richard Levitte] + *) Add the 'z' and 'j' modifiers to BIO_printf() et al formatting string, 'z' is to be used for [s]size_t, and 'j' - with [u]int64_t. [Richard Levitte, Andy Polyakov] diff --git a/crypto/asn1/asn1_item_list.h b/crypto/asn1/asn1_item_list.h index 909ea3e..27608b7 100644 --- a/crypto/asn1/asn1_item_list.h +++ b/crypto/asn1/asn1_item_list.h @@ -78,7 +78,9 @@ static ASN1_ITEM_EXP *asn1_item_list[] = { ASN1_ITEM_ref(IPAddressRange), #endif ASN1_ITEM_ref(ISSUING_DIST_POINT), +#if OPENSSL_API_COMPAT < 0x10200000L ASN1_ITEM_ref(LONG), +#endif ASN1_ITEM_ref(NAME_CONSTRAINTS), ASN1_ITEM_ref(NETSCAPE_CERT_SEQUENCE), ASN1_ITEM_ref(NETSCAPE_SPKAC), @@ -159,5 +161,15 @@ static ASN1_ITEM_EXP *asn1_item_list[] = { ASN1_ITEM_ref(X509_SIG), ASN1_ITEM_ref(X509_VAL), ASN1_ITEM_ref(X509), +#if OPENSSL_API_COMPAT < 0x10200000L ASN1_ITEM_ref(ZLONG), +#endif + ASN1_ITEM_ref(INT32), + ASN1_ITEM_ref(UINT32), + ASN1_ITEM_ref(ZINT32), + ASN1_ITEM_ref(ZUINT32), + ASN1_ITEM_ref(INT64), + ASN1_ITEM_ref(UINT64), + ASN1_ITEM_ref(ZINT64), + ASN1_ITEM_ref(ZUINT64), }; diff --git a/crypto/asn1/evp_asn1.c b/crypto/asn1/evp_asn1.c index a458367..718e688 100644 --- a/crypto/asn1/evp_asn1.c +++ b/crypto/asn1/evp_asn1.c @@ -47,12 +47,12 @@ int ASN1_TYPE_get_octetstring(const ASN1_TYPE *a, unsigned char *data, int max_l } typedef struct { - long num; + int32_t num; ASN1_OCTET_STRING *oct; } asn1_int_oct; ASN1_SEQUENCE(asn1_int_oct) = { - ASN1_SIMPLE(asn1_int_oct, num, LONG), + ASN1_SIMPLE(asn1_int_oct, num, INT32), ASN1_SIMPLE(asn1_int_oct, oct, ASN1_OCTET_STRING) } static_ASN1_SEQUENCE_END(asn1_int_oct) diff --git a/crypto/asn1/n_pkey.c b/crypto/asn1/n_pkey.c index 267ce60..34a0d03 100644 --- a/crypto/asn1/n_pkey.c +++ b/crypto/asn1/n_pkey.c @@ -23,7 +23,7 @@ NON_EMPTY_TRANSLATION_UNIT # ifndef OPENSSL_NO_RC4 typedef struct netscape_pkey_st { - long version; + int32_t version; X509_ALGOR *algor; ASN1_OCTET_STRING *private_key; } NETSCAPE_PKEY; @@ -48,7 +48,7 @@ DECLARE_ASN1_ENCODE_FUNCTIONS_const(NETSCAPE_ENCRYPTED_PKEY,NETSCAPE_ENCRYPTED_P IMPLEMENT_ASN1_FUNCTIONS_const(NETSCAPE_ENCRYPTED_PKEY) ASN1_SEQUENCE(NETSCAPE_PKEY) = { - ASN1_SIMPLE(NETSCAPE_PKEY, version, LONG), + ASN1_SIMPLE(NETSCAPE_PKEY, version, INT32), ASN1_SIMPLE(NETSCAPE_PKEY, algor, X509_ALGOR), ASN1_SIMPLE(NETSCAPE_PKEY, private_key, ASN1_OCTET_STRING) } static_ASN1_SEQUENCE_END(NETSCAPE_PKEY) diff --git a/crypto/asn1/x_int64.c b/crypto/asn1/x_int64.c index d180a3b..9da692c 100644 --- a/crypto/asn1/x_int64.c +++ b/crypto/asn1/x_int64.c @@ -9,8 +9,8 @@ #include #include "internal/cryptlib.h" -#include "internal/asn1t.h" #include "internal/numbers.h" +#include #include #include "asn1_locl.h" diff --git a/crypto/asn1/x_long.c b/crypto/asn1/x_long.c index 5895345..4bb6611 100644 --- a/crypto/asn1/x_long.c +++ b/crypto/asn1/x_long.c @@ -11,6 +11,9 @@ #include "internal/cryptlib.h" #include +#if !(OPENSSL_API_COMPAT < 0x10200000L) +NON_EMPTY_TRANSLATION_UNIT +#else /* * Custom primitive type for long handling. This converts between an * ASN1_INTEGER and a long directly. @@ -194,3 +197,4 @@ static int long_print(BIO *out, ASN1_VALUE **pval, const ASN1_ITEM *it, { return BIO_printf(out, "%ld\n", *(long *)pval); } +#endif diff --git a/crypto/cms/cms_asn1.c b/crypto/cms/cms_asn1.c index 81e9a53..a6981a7 100644 --- a/crypto/cms/cms_asn1.c +++ b/crypto/cms/cms_asn1.c @@ -56,7 +56,7 @@ static int cms_si_cb(int operation, ASN1_VALUE **pval, const ASN1_ITEM *it, } ASN1_SEQUENCE_cb(CMS_SignerInfo, cms_si_cb) = { - ASN1_SIMPLE(CMS_SignerInfo, version, LONG), + ASN1_SIMPLE(CMS_SignerInfo, version, INT32), ASN1_SIMPLE(CMS_SignerInfo, sid, CMS_SignerIdentifier), ASN1_SIMPLE(CMS_SignerInfo, digestAlgorithm, X509_ALGOR), ASN1_IMP_SET_OF_OPT(CMS_SignerInfo, signedAttrs, X509_ATTRIBUTE, 0), @@ -76,7 +76,7 @@ ASN1_CHOICE(CMS_RevocationInfoChoice) = { } ASN1_CHOICE_END(CMS_RevocationInfoChoice) ASN1_NDEF_SEQUENCE(CMS_SignedData) = { - ASN1_SIMPLE(CMS_SignedData, version, LONG), + ASN1_SIMPLE(CMS_SignedData, version, INT32), ASN1_SET_OF(CMS_SignedData, digestAlgorithms, X509_ALGOR), ASN1_SIMPLE(CMS_SignedData, encapContentInfo, CMS_EncapsulatedContentInfo), ASN1_IMP_SET_OF_OPT(CMS_SignedData, certificates, CMS_CertificateChoices, 0), @@ -96,7 +96,7 @@ ASN1_NDEF_SEQUENCE(CMS_EncryptedContentInfo) = { } static_ASN1_NDEF_SEQUENCE_END(CMS_EncryptedContentInfo) ASN1_SEQUENCE(CMS_KeyTransRecipientInfo) = { - ASN1_SIMPLE(CMS_KeyTransRecipientInfo, version, LONG), + ASN1_SIMPLE(CMS_KeyTransRecipientInfo, version, INT32), ASN1_SIMPLE(CMS_KeyTransRecipientInfo, rid, CMS_SignerIdentifier), ASN1_SIMPLE(CMS_KeyTransRecipientInfo, keyEncryptionAlgorithm, X509_ALGOR), ASN1_SIMPLE(CMS_KeyTransRecipientInfo, encryptedKey, ASN1_OCTET_STRING) @@ -162,7 +162,7 @@ static int cms_kari_cb(int operation, ASN1_VALUE **pval, const ASN1_ITEM *it, } ASN1_SEQUENCE_cb(CMS_KeyAgreeRecipientInfo, cms_kari_cb) = { - ASN1_SIMPLE(CMS_KeyAgreeRecipientInfo, version, LONG), + ASN1_SIMPLE(CMS_KeyAgreeRecipientInfo, version, INT32), ASN1_EXP(CMS_KeyAgreeRecipientInfo, originator, CMS_OriginatorIdentifierOrKey, 0), ASN1_EXP_OPT(CMS_KeyAgreeRecipientInfo, ukm, ASN1_OCTET_STRING, 1), ASN1_SIMPLE(CMS_KeyAgreeRecipientInfo, keyEncryptionAlgorithm, X509_ALGOR), @@ -176,14 +176,14 @@ ASN1_SEQUENCE(CMS_KEKIdentifier) = { } static_ASN1_SEQUENCE_END(CMS_KEKIdentifier) ASN1_SEQUENCE(CMS_KEKRecipientInfo) = { - ASN1_SIMPLE(CMS_KEKRecipientInfo, version, LONG), + ASN1_SIMPLE(CMS_KEKRecipientInfo, version, INT32), ASN1_SIMPLE(CMS_KEKRecipientInfo, kekid, CMS_KEKIdentifier), ASN1_SIMPLE(CMS_KEKRecipientInfo, keyEncryptionAlgorithm, X509_ALGOR), ASN1_SIMPLE(CMS_KEKRecipientInfo, encryptedKey, ASN1_OCTET_STRING) } ASN1_SEQUENCE_END(CMS_KEKRecipientInfo) ASN1_SEQUENCE(CMS_PasswordRecipientInfo) = { - ASN1_SIMPLE(CMS_PasswordRecipientInfo, version, LONG), + ASN1_SIMPLE(CMS_PasswordRecipientInfo, version, INT32), ASN1_IMP_OPT(CMS_PasswordRecipientInfo, keyDerivationAlgorithm, X509_ALGOR, 0), ASN1_SIMPLE(CMS_PasswordRecipientInfo, keyEncryptionAlgorithm, X509_ALGOR), ASN1_SIMPLE(CMS_PasswordRecipientInfo, encryptedKey, ASN1_OCTET_STRING) @@ -225,7 +225,7 @@ ASN1_CHOICE_cb(CMS_RecipientInfo, cms_ri_cb) = { } ASN1_CHOICE_END_cb(CMS_RecipientInfo, CMS_RecipientInfo, type) ASN1_NDEF_SEQUENCE(CMS_EnvelopedData) = { - ASN1_SIMPLE(CMS_EnvelopedData, version, LONG), + ASN1_SIMPLE(CMS_EnvelopedData, version, INT32), ASN1_IMP_OPT(CMS_EnvelopedData, originatorInfo, CMS_OriginatorInfo, 0), ASN1_SET_OF(CMS_EnvelopedData, recipientInfos, CMS_RecipientInfo), ASN1_SIMPLE(CMS_EnvelopedData, encryptedContentInfo, CMS_EncryptedContentInfo), @@ -233,20 +233,20 @@ ASN1_NDEF_SEQUENCE(CMS_EnvelopedData) = { } ASN1_NDEF_SEQUENCE_END(CMS_EnvelopedData) ASN1_NDEF_SEQUENCE(CMS_DigestedData) = { - ASN1_SIMPLE(CMS_DigestedData, version, LONG), + ASN1_SIMPLE(CMS_DigestedData, version, INT32), ASN1_SIMPLE(CMS_DigestedData, digestAlgorithm, X509_ALGOR), ASN1_SIMPLE(CMS_DigestedData, encapContentInfo, CMS_EncapsulatedContentInfo), ASN1_SIMPLE(CMS_DigestedData, digest, ASN1_OCTET_STRING) } ASN1_NDEF_SEQUENCE_END(CMS_DigestedData) ASN1_NDEF_SEQUENCE(CMS_EncryptedData) = { - ASN1_SIMPLE(CMS_EncryptedData, version, LONG), + ASN1_SIMPLE(CMS_EncryptedData, version, INT32), ASN1_SIMPLE(CMS_EncryptedData, encryptedContentInfo, CMS_EncryptedContentInfo), ASN1_IMP_SET_OF_OPT(CMS_EncryptedData, unprotectedAttrs, X509_ATTRIBUTE, 1) } ASN1_NDEF_SEQUENCE_END(CMS_EncryptedData) ASN1_NDEF_SEQUENCE(CMS_AuthenticatedData) = { - ASN1_SIMPLE(CMS_AuthenticatedData, version, LONG), + ASN1_SIMPLE(CMS_AuthenticatedData, version, INT32), ASN1_IMP_OPT(CMS_AuthenticatedData, originatorInfo, CMS_OriginatorInfo, 0), ASN1_SET_OF(CMS_AuthenticatedData, recipientInfos, CMS_RecipientInfo), ASN1_SIMPLE(CMS_AuthenticatedData, macAlgorithm, X509_ALGOR), @@ -258,7 +258,7 @@ ASN1_NDEF_SEQUENCE(CMS_AuthenticatedData) = { } static_ASN1_NDEF_SEQUENCE_END(CMS_AuthenticatedData) ASN1_NDEF_SEQUENCE(CMS_CompressedData) = { - ASN1_SIMPLE(CMS_CompressedData, version, LONG), + ASN1_SIMPLE(CMS_CompressedData, version, INT32), ASN1_SIMPLE(CMS_CompressedData, compressionAlgorithm, X509_ALGOR), ASN1_SIMPLE(CMS_CompressedData, encapContentInfo, CMS_EncapsulatedContentInfo), } ASN1_NDEF_SEQUENCE_END(CMS_CompressedData) @@ -337,7 +337,7 @@ ASN1_ITEM_TEMPLATE_END(CMS_Attributes_Verify) ASN1_CHOICE(CMS_ReceiptsFrom) = { - ASN1_IMP(CMS_ReceiptsFrom, d.allOrFirstTier, LONG, 0), + ASN1_IMP(CMS_ReceiptsFrom, d.allOrFirstTier, INT32, 0), ASN1_IMP_SEQUENCE_OF(CMS_ReceiptsFrom, d.receiptList, GENERAL_NAMES, 1) } static_ASN1_CHOICE_END(CMS_ReceiptsFrom) @@ -348,7 +348,7 @@ ASN1_SEQUENCE(CMS_ReceiptRequest) = { } ASN1_SEQUENCE_END(CMS_ReceiptRequest) ASN1_SEQUENCE(CMS_Receipt) = { - ASN1_SIMPLE(CMS_Receipt, version, LONG), + ASN1_SIMPLE(CMS_Receipt, version, INT32), ASN1_SIMPLE(CMS_Receipt, contentType, ASN1_OBJECT), ASN1_SIMPLE(CMS_Receipt, signedContentIdentifier, ASN1_OCTET_STRING), ASN1_SIMPLE(CMS_Receipt, originatorSignatureValue, ASN1_OCTET_STRING) diff --git a/crypto/cms/cms_lcl.h b/crypto/cms/cms_lcl.h index d0c0e81..c277f71 100644 --- a/crypto/cms/cms_lcl.h +++ b/crypto/cms/cms_lcl.h @@ -67,7 +67,7 @@ struct CMS_ContentInfo_st { DEFINE_STACK_OF(CMS_CertificateChoices) struct CMS_SignedData_st { - long version; + int32_t version; STACK_OF(X509_ALGOR) *digestAlgorithms; CMS_EncapsulatedContentInfo *encapContentInfo; STACK_OF(CMS_CertificateChoices) *certificates; @@ -83,7 +83,7 @@ struct CMS_EncapsulatedContentInfo_st { }; struct CMS_SignerInfo_st { - long version; + int32_t version; CMS_SignerIdentifier *sid; X509_ALGOR *digestAlgorithm; STACK_OF(X509_ATTRIBUTE) *signedAttrs; @@ -107,7 +107,7 @@ struct CMS_SignerIdentifier_st { }; struct CMS_EnvelopedData_st { - long version; + int32_t version; CMS_OriginatorInfo *originatorInfo; STACK_OF(CMS_RecipientInfo) *recipientInfos; CMS_EncryptedContentInfo *encryptedContentInfo; @@ -145,7 +145,7 @@ struct CMS_RecipientInfo_st { typedef CMS_SignerIdentifier CMS_RecipientIdentifier; struct CMS_KeyTransRecipientInfo_st { - long version; + int32_t version; CMS_RecipientIdentifier *rid; X509_ALGOR *keyEncryptionAlgorithm; ASN1_OCTET_STRING *encryptedKey; @@ -157,7 +157,7 @@ struct CMS_KeyTransRecipientInfo_st { }; struct CMS_KeyAgreeRecipientInfo_st { - long version; + int32_t version; CMS_OriginatorIdentifierOrKey *originator; ASN1_OCTET_STRING *ukm; X509_ALGOR *keyEncryptionAlgorithm; @@ -204,7 +204,7 @@ struct CMS_RecipientKeyIdentifier_st { }; struct CMS_KEKRecipientInfo_st { - long version; + int32_t version; CMS_KEKIdentifier *kekid; X509_ALGOR *keyEncryptionAlgorithm; ASN1_OCTET_STRING *encryptedKey; @@ -220,7 +220,7 @@ struct CMS_KEKIdentifier_st { }; struct CMS_PasswordRecipientInfo_st { - long version; + int32_t version; X509_ALGOR *keyDerivationAlgorithm; X509_ALGOR *keyEncryptionAlgorithm; ASN1_OCTET_STRING *encryptedKey; @@ -235,20 +235,20 @@ struct CMS_OtherRecipientInfo_st { }; struct CMS_DigestedData_st { - long version; + int32_t version; X509_ALGOR *digestAlgorithm; CMS_EncapsulatedContentInfo *encapContentInfo; ASN1_OCTET_STRING *digest; }; struct CMS_EncryptedData_st { - long version; + int32_t version; CMS_EncryptedContentInfo *encryptedContentInfo; STACK_OF(X509_ATTRIBUTE) *unprotectedAttrs; }; struct CMS_AuthenticatedData_st { - long version; + int32_t version; CMS_OriginatorInfo *originatorInfo; STACK_OF(CMS_RecipientInfo) *recipientInfos; X509_ALGOR *macAlgorithm; @@ -260,7 +260,7 @@ struct CMS_AuthenticatedData_st { }; struct CMS_CompressedData_st { - long version; + int32_t version; X509_ALGOR *compressionAlgorithm; STACK_OF(CMS_RecipientInfo) *recipientInfos; CMS_EncapsulatedContentInfo *encapContentInfo; @@ -332,14 +332,14 @@ struct CMS_ReceiptRequest_st { struct CMS_ReceiptsFrom_st { int type; union { - long allOrFirstTier; + int32_t allOrFirstTier; STACK_OF(GENERAL_NAMES) *receiptList; } d; }; # endif struct CMS_Receipt_st { - long version; + int32_t version; ASN1_OBJECT *contentType; ASN1_OCTET_STRING *signedContentIdentifier; ASN1_OCTET_STRING *originatorSignatureValue; diff --git a/crypto/dh/dh_asn1.c b/crypto/dh/dh_asn1.c index 7c72fd6..f65d065 100644 --- a/crypto/dh/dh_asn1.c +++ b/crypto/dh/dh_asn1.c @@ -34,7 +34,7 @@ static int dh_cb(int operation, ASN1_VALUE **pval, const ASN1_ITEM *it, ASN1_SEQUENCE_cb(DHparams, dh_cb) = { ASN1_SIMPLE(DH, p, BIGNUM), ASN1_SIMPLE(DH, g, BIGNUM), - ASN1_OPT(DH, length, ZLONG), + ASN1_OPT(DH, length, ZINT32), } ASN1_SEQUENCE_END_cb(DH, DHparams) IMPLEMENT_ASN1_ENCODE_FUNCTIONS_const_fname(DH, DHparams, DHparams) diff --git a/crypto/dh/dh_locl.h b/crypto/dh/dh_locl.h index 6867555..0a8391a 100644 --- a/crypto/dh/dh_locl.h +++ b/crypto/dh/dh_locl.h @@ -19,7 +19,7 @@ struct dh_st { int version; BIGNUM *p; BIGNUM *g; - long length; /* optional */ + int32_t length; /* optional */ BIGNUM *pub_key; /* g^x % p */ BIGNUM *priv_key; /* x */ int flags; diff --git a/crypto/dsa/dsa_asn1.c b/crypto/dsa/dsa_asn1.c index 551c107..6f9fe3e 100644 --- a/crypto/dsa/dsa_asn1.c +++ b/crypto/dsa/dsa_asn1.c @@ -75,7 +75,7 @@ static int dsa_cb(int operation, ASN1_VALUE **pval, const ASN1_ITEM *it, } ASN1_SEQUENCE_cb(DSAPrivateKey, dsa_cb) = { - ASN1_SIMPLE(DSA, version, LONG), + ASN1_SIMPLE(DSA, version, INT32), ASN1_SIMPLE(DSA, p, BIGNUM), ASN1_SIMPLE(DSA, q, BIGNUM), ASN1_SIMPLE(DSA, g, BIGNUM), diff --git a/crypto/dsa/dsa_locl.h b/crypto/dsa/dsa_locl.h index f575195..a81a4b4 100644 --- a/crypto/dsa/dsa_locl.h +++ b/crypto/dsa/dsa_locl.h @@ -16,7 +16,7 @@ struct dsa_st { * instead of of a EVP_PKEY */ int pad; - long version; + int32_t version; BIGNUM *p; BIGNUM *q; /* == 20 */ BIGNUM *g; diff --git a/crypto/ec/ec_asn1.c b/crypto/ec/ec_asn1.c index 271178f..6493515 100644 --- a/crypto/ec/ec_asn1.c +++ b/crypto/ec/ec_asn1.c @@ -87,13 +87,13 @@ int EC_GROUP_get_pentanomial_basis(const EC_GROUP *group, unsigned int *k1, /* some structures needed for the asn1 encoding */ typedef struct x9_62_pentanomial_st { - long k1; - long k2; - long k3; + int32_t k1; + int32_t k2; + int32_t k3; } X9_62_PENTANOMIAL; typedef struct x9_62_characteristic_two_st { - long m; + int32_t m; ASN1_OBJECT *type; union { char *ptr; @@ -128,7 +128,7 @@ typedef struct x9_62_curve_st { } X9_62_CURVE; struct ec_parameters_st { - long version; + int32_t version; X9_62_FIELDID *fieldID; X9_62_CURVE *curve; ASN1_OCTET_STRING *base; @@ -147,7 +147,7 @@ struct ecpk_parameters_st { /* SEC1 ECPrivateKey */ typedef struct ec_privatekey_st { - long version; + int32_t version; ASN1_OCTET_STRING *privateKey; ECPKPARAMETERS *parameters; ASN1_BIT_STRING *publicKey; @@ -155,9 +155,9 @@ typedef struct ec_privatekey_st { /* the OpenSSL ASN.1 definitions */ ASN1_SEQUENCE(X9_62_PENTANOMIAL) = { - ASN1_SIMPLE(X9_62_PENTANOMIAL, k1, LONG), - ASN1_SIMPLE(X9_62_PENTANOMIAL, k2, LONG), - ASN1_SIMPLE(X9_62_PENTANOMIAL, k3, LONG) + ASN1_SIMPLE(X9_62_PENTANOMIAL, k1, INT32), + ASN1_SIMPLE(X9_62_PENTANOMIAL, k2, INT32), + ASN1_SIMPLE(X9_62_PENTANOMIAL, k3, INT32) } static_ASN1_SEQUENCE_END(X9_62_PENTANOMIAL) DECLARE_ASN1_ALLOC_FUNCTIONS(X9_62_PENTANOMIAL) @@ -172,7 +172,7 @@ ASN1_ADB(X9_62_CHARACTERISTIC_TWO) = { } ASN1_ADB_END(X9_62_CHARACTERISTIC_TWO, 0, type, 0, &char_two_def_tt, NULL); ASN1_SEQUENCE(X9_62_CHARACTERISTIC_TWO) = { - ASN1_SIMPLE(X9_62_CHARACTERISTIC_TWO, m, LONG), + ASN1_SIMPLE(X9_62_CHARACTERISTIC_TWO, m, INT32), ASN1_SIMPLE(X9_62_CHARACTERISTIC_TWO, type, ASN1_OBJECT), ASN1_ADB_OBJECT(X9_62_CHARACTERISTIC_TWO) } static_ASN1_SEQUENCE_END(X9_62_CHARACTERISTIC_TWO) @@ -199,7 +199,7 @@ ASN1_SEQUENCE(X9_62_CURVE) = { } static_ASN1_SEQUENCE_END(X9_62_CURVE) ASN1_SEQUENCE(ECPARAMETERS) = { - ASN1_SIMPLE(ECPARAMETERS, version, LONG), + ASN1_SIMPLE(ECPARAMETERS, version, INT32), ASN1_SIMPLE(ECPARAMETERS, fieldID, X9_62_FIELDID), ASN1_SIMPLE(ECPARAMETERS, curve, X9_62_CURVE), ASN1_SIMPLE(ECPARAMETERS, base, ASN1_OCTET_STRING), @@ -221,7 +221,7 @@ DECLARE_ASN1_ENCODE_FUNCTIONS_const(ECPKPARAMETERS, ECPKPARAMETERS) IMPLEMENT_ASN1_FUNCTIONS_const(ECPKPARAMETERS) ASN1_SEQUENCE(EC_PRIVATEKEY) = { - ASN1_SIMPLE(EC_PRIVATEKEY, version, LONG), + ASN1_SIMPLE(EC_PRIVATEKEY, version, INT32), ASN1_SIMPLE(EC_PRIVATEKEY, privateKey, ASN1_OCTET_STRING), ASN1_EXP_OPT(EC_PRIVATEKEY, parameters, ECPKPARAMETERS, 0), ASN1_EXP_OPT(EC_PRIVATEKEY, publicKey, ASN1_BIT_STRING, 1) diff --git a/crypto/rsa/rsa_asn1.c b/crypto/rsa/rsa_asn1.c index 626a479..ef79a27 100644 --- a/crypto/rsa/rsa_asn1.c +++ b/crypto/rsa/rsa_asn1.c @@ -32,7 +32,7 @@ static int rsa_cb(int operation, ASN1_VALUE **pval, const ASN1_ITEM *it, } ASN1_SEQUENCE_cb(RSAPrivateKey, rsa_cb) = { - ASN1_SIMPLE(RSA, version, LONG), + ASN1_SIMPLE(RSA, version, INT32), ASN1_SIMPLE(RSA, n, BIGNUM), ASN1_SIMPLE(RSA, e, BIGNUM), ASN1_SIMPLE(RSA, d, CBIGNUM), diff --git a/crypto/rsa/rsa_locl.h b/crypto/rsa/rsa_locl.h index f2681f9..be3ef0c 100644 --- a/crypto/rsa/rsa_locl.h +++ b/crypto/rsa/rsa_locl.h @@ -16,7 +16,7 @@ struct rsa_st { * instead of aEVP_PKEY, it is set to 0 */ int pad; - long version; + int32_t version; const RSA_METHOD *meth; /* functional reference if 'meth' is ENGINE-provided */ ENGINE *engine; diff --git a/fuzz/asn1.c b/fuzz/asn1.c index f29fde5..0c61315 100644 --- a/fuzz/asn1.c +++ b/fuzz/asn1.c @@ -100,7 +100,9 @@ static ASN1_ITEM_EXP *item_type[] = { ASN1_ITEM_ref(IPAddressRange), #endif ASN1_ITEM_ref(ISSUING_DIST_POINT), +#if OPENSSL_API_COMPAT < 0x10200000L ASN1_ITEM_ref(LONG), +#endif ASN1_ITEM_ref(NAME_CONSTRAINTS), ASN1_ITEM_ref(NETSCAPE_CERT_SEQUENCE), ASN1_ITEM_ref(NETSCAPE_SPKAC), @@ -180,7 +182,17 @@ static ASN1_ITEM_EXP *item_type[] = { ASN1_ITEM_ref(X509_REVOKED), ASN1_ITEM_ref(X509_SIG), ASN1_ITEM_ref(X509_VAL), +#if OPENSSL_API_COMPAT < 0x10200000L ASN1_ITEM_ref(ZLONG), +#endif + ASN1_ITEM_ref(INT32), + ASN1_ITEM_ref(ZINT32), + ASN1_ITEM_ref(UINT32), + ASN1_ITEM_ref(ZUINT32), + ASN1_ITEM_ref(INT64), + ASN1_ITEM_ref(ZINT64), + ASN1_ITEM_ref(UINT64), + ASN1_ITEM_ref(ZUINT64), NULL }; diff --git a/include/internal/asn1t.h b/include/internal/asn1t.h deleted file mode 100644 index 32d637d..0000000 --- a/include/internal/asn1t.h +++ /dev/null @@ -1,19 +0,0 @@ -/* - * Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. - * - * Licensed under the OpenSSL license (the "License"). You may not use - * this file except in compliance with the License. You can obtain a copy - * in the file LICENSE in the source distribution or at - * https://www.openssl.org/source/license.html - */ - -#include - -DECLARE_ASN1_ITEM(INT32) -DECLARE_ASN1_ITEM(ZINT32) -DECLARE_ASN1_ITEM(UINT32) -DECLARE_ASN1_ITEM(ZUINT32) -DECLARE_ASN1_ITEM(INT64) -DECLARE_ASN1_ITEM(ZINT64) -DECLARE_ASN1_ITEM(UINT64) -DECLARE_ASN1_ITEM(ZUINT64) diff --git a/include/openssl/asn1t.h b/include/openssl/asn1t.h index 59b28cf..a73d4a8 100644 --- a/include/openssl/asn1t.h +++ b/include/openssl/asn1t.h @@ -901,8 +901,24 @@ DECLARE_ASN1_ITEM(ASN1_FBOOLEAN) DECLARE_ASN1_ITEM(ASN1_SEQUENCE) DECLARE_ASN1_ITEM(CBIGNUM) DECLARE_ASN1_ITEM(BIGNUM) +DECLARE_ASN1_ITEM(INT32) +DECLARE_ASN1_ITEM(ZINT32) +DECLARE_ASN1_ITEM(UINT32) +DECLARE_ASN1_ITEM(ZUINT32) +DECLARE_ASN1_ITEM(INT64) +DECLARE_ASN1_ITEM(ZINT64) +DECLARE_ASN1_ITEM(UINT64) +DECLARE_ASN1_ITEM(ZUINT64) + +# if OPENSSL_API_COMPAT < 0x10200000L +/* + * LONG and ZLONG are strongly discouraged for use as stored data, as the + * underlying C type (long) differs in size depending on the architecture. + * They are designed with 32-bit longs in mind. + */ DECLARE_ASN1_ITEM(LONG) DECLARE_ASN1_ITEM(ZLONG) +# endif DEFINE_STACK_OF(ASN1_VALUE) diff --git a/ssl/ssl_asn1.c b/ssl/ssl_asn1.c index 0802dd4..b4eb98e 100644 --- a/ssl/ssl_asn1.c +++ b/ssl/ssl_asn1.c @@ -37,7 +37,7 @@ #include #include #include "ssl_locl.h" -#include "internal/asn1t.h" +#include #include typedef struct { diff --git a/test/asn1_encode_test.c b/test/asn1_encode_test.c index 02455fc..9b33314 100644 --- a/test/asn1_encode_test.c +++ b/test/asn1_encode_test.c @@ -10,7 +10,7 @@ #include #include -#include "internal/asn1t.h" +#include #include "internal/numbers.h" #include "test_main.h" #include "testutil.h" @@ -170,6 +170,7 @@ typedef struct { ENCDEC_DATA(-1, -1), \ ENCDEC_DATA(0, ASN1_LONG_UNDEF) +#if OPENSSL_API_COMPAT < 0x10200000L /***** LONG ******************************************************************/ typedef struct { @@ -255,6 +256,7 @@ static TEST_PACKAGE long_test_package_64bit = { (i2d_fn *)i2d_ASN1_LONG_DATA, (d2i_fn *)d2i_ASN1_LONG_DATA, (ifree_fn *)ASN1_LONG_DATA_free }; +#endif /***** INT32 *****************************************************************/ @@ -676,6 +678,7 @@ static int test_intern(const TEST_PACKAGE *package) return fail == 0; } +#if OPENSSL_API_COMPAT < 0x10200000L static int test_long_32bit(void) { return test_intern(&long_test_package_32bit); @@ -685,6 +688,7 @@ static int test_long_64bit(void) { return test_intern(&long_test_package_64bit); } +#endif static int test_int32(void) { @@ -708,8 +712,10 @@ static int test_uint64(void) void register_tests(void) { +#if OPENSSL_API_COMPAT < 0x10200000L ADD_TEST(test_long_32bit); ADD_TEST(test_long_64bit); +#endif ADD_TEST(test_int32); ADD_TEST(test_uint32); ADD_TEST(test_int64); diff --git a/util/libcrypto.num b/util/libcrypto.num index 4df5422..1a19273 100644 --- a/util/libcrypto.num +++ b/util/libcrypto.num @@ -1768,8 +1768,8 @@ ASYNC_init_thread 1755 1_1_0 EXIST::FUNCTION: OCSP_BASICRESP_get_ext_by_OBJ 1756 1_1_0 EXIST::FUNCTION:OCSP X509_reject_clear 1757 1_1_0 EXIST::FUNCTION: DH_security_bits 1758 1_1_0 EXIST::FUNCTION:DH -LONG_it 1759 1_1_0 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: -LONG_it 1759 1_1_0 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +LONG_it 1759 1_1_0 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:DEPRECATEDIN_1_2_0 +LONG_it 1759 1_1_0 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:DEPRECATEDIN_1_2_0 ASN1_dup 1760 1_1_0 EXIST::FUNCTION: TS_RESP_new 1761 1_1_0 EXIST::FUNCTION:TS i2d_PKCS8PrivateKeyInfo_fp 1762 1_1_0 EXIST::FUNCTION:STDIO @@ -1834,8 +1834,8 @@ X509V3_EXT_add_list 1821 1_1_0 EXIST::FUNCTION: CMS_compress 1822 1_1_0 EXIST::FUNCTION:CMS X509_get_ext_by_critical 1823 1_1_0 EXIST::FUNCTION: ASYNC_WAIT_CTX_clear_fd 1824 1_1_0 EXIST::FUNCTION: -ZLONG_it 1825 1_1_0 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: -ZLONG_it 1825 1_1_0 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +ZLONG_it 1825 1_1_0 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:DEPRECATEDIN_1_2_0 +ZLONG_it 1825 1_1_0 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:DEPRECATEDIN_1_2_0 OPENSSL_sk_find_ex 1826 1_1_0 EXIST::FUNCTION: ASN1_ENUMERATED_to_BN 1827 1_1_0 EXIST::FUNCTION: X509_CRL_get_ext_d2i 1828 1_1_0 EXIST::FUNCTION: diff --git a/util/mkdef.pl b/util/mkdef.pl index 36b4efe..c9fa98e 100755 --- a/util/mkdef.pl +++ b/util/mkdef.pl @@ -114,6 +114,7 @@ my @known_algorithms = ( "RC2", "RC4", "RC5", "IDEA", "DES", "BF", "DEPRECATEDIN_0_9_8", "DEPRECATEDIN_1_0_0", "DEPRECATEDIN_1_1_0", + "DEPRECATEDIN_1_2_0", # SCTP "SCTP", # SRTP @@ -141,6 +142,14 @@ foreach (@known_algorithms) { # disabled by default $disabled_algorithms{"STATIC_ENGINE"} = 1; +my $apiv = sprintf "%x%02x%02x", split(/\./, $config{api}); +foreach (keys %disabled_algorithms) { + if (/^DEPRECATEDIN_(\d+)_(\d+)_(\d+)$/) { + my $depv = sprintf "%x%02x%02x", $1, $2, $3; + $disabled_algorithms{$_} = 1 if $apiv ge $depv; + } +} + my $zlib; foreach (@ARGV, split(/ /, $config{options})) @@ -176,25 +185,9 @@ foreach (@ARGV, split(/ /, $config{options})) $do_ctest=1 if $_ eq "ctest"; $do_ctestall=1 if $_ eq "ctestall"; $do_checkexist=1 if $_ eq "exist"; - if (/^--api=(\d+)\.(\d+)\.(\d+)$/) { - my $apiv = sprintf "%x%02x%02x", $1, $2, $3; - foreach (keys %disabled_algorithms) { - if (/^DEPRECATEDIN_(\d+)_(\d+)_(\d+)$/) { - my $depv = sprintf "%x%02x%02x", $1, $2, $3; - $disabled_algorithms{$_} = 1 if $apiv ge $depv; - } - } - } - if (/^no-deprecated$/) { - foreach (keys %disabled_algorithms) { - if (/^DEPRECATEDIN_/) { - $disabled_algorithms{$_} = 1; - } - } - } - elsif (/^(enable|disable|no)-(.*)$/) { + if (/^(enable|disable|no)-(.*)$/) { my $alg = uc $2; - $alg =~ tr/-/_/; + $alg =~ tr/-/_/; if (exists $disabled_algorithms{$alg}) { $disabled_algorithms{$alg} = $1 eq "enable" ? 0 : 1; } @@ -239,7 +232,6 @@ my $crypto ="include/openssl/crypto.h"; $crypto.=" include/internal/o_dir.h"; $crypto.=" include/internal/o_str.h"; $crypto.=" include/internal/err.h"; -$crypto.=" include/internal/asn1t.h"; $crypto.=" include/openssl/des.h" ; # unless $no_des; $crypto.=" include/openssl/idea.h" ; # unless $no_idea; $crypto.=" include/openssl/rc4.h" ; # unless $no_rc4; @@ -395,6 +387,7 @@ sub do_defs (map { "OPENSSL_SYS_".$_ => 0 } @known_ossl_platforms), (map { "OPENSSL_NO_".$_ => 0 } @known_algorithms), (map { "OPENSSL_USE_".$_ => 0 } @known_algorithms), + (grep /^DEPRECATED_/, @known_algorithms), NOPROTO => 0, PERL5 => 0, _WINDLL => 0, @@ -507,7 +500,22 @@ sub do_defs s/{[^{}]*}//gs; # ignore {} blocks print STDERR "DEBUG: \$def=\"$def\"\n" if $debug && $def ne ""; print STDERR "DEBUG: \$_=\"$_\"\n" if $debug; - if (/^\#\s*ifndef\s+(.*)/) { + if (/^\#\s*if\s+OPENSSL_API_COMPAT\s*(\S)\s*(0x[0-9a-fA-F]{8})L\s*$/) { + my $op = $1; + my $v = hex($2); + if ($op ne '<' && $op ne '>=') { + die "$file unacceptable operator $op: $_\n"; + } + my ($one, $major, $minor) = + ( ($v >> 28) & 0xf, + ($v >> 20) & 0xff, + ($v >> 12) & 0xff ); + my $t = "DEPRECATEDIN_${one}_${major}_${minor}"; + push(@tag,"-"); + push(@tag,$t); + $tag{$t}=($op eq '<' ? 1 : -1); + print STDERR "DEBUG: $file: found tag $t = $tag{$t}\n" if $debug; + } elsif (/^\#\s*ifndef\s+(.*)/) { push(@tag,"-"); push(@tag,$1); $tag{$1}=-1; @@ -638,6 +646,9 @@ sub do_defs , grep(!/^$/, map { $tag{"OPENSSL_USE_".$_} == 1 ? $_ : "" } @known_algorithms); + push @current_algorithms, + grep { /^DEPRECATEDIN_/ && $tag{$_} == 1 } + @known_algorithms; $def .= "#INFO:" .join(',', at current_platforms).":" From builds at travis-ci.org Mon Apr 10 10:27:12 2017 From: builds at travis-ci.org (Travis CI) Date: Mon, 10 Apr 2017 10:27:12 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10086 (OpenSSL_1_1_0-stable - c74be80) In-Reply-To: Message-ID: <58eb5e004ff4b_43fbc956cb8806097ea@a432ec9e-5581-46cb-83ac-18511200c94f.mail> Build Update for openssl/openssl ------------------------------------- Build: #10086 Status: Still Failing Duration: 13 minutes and 50 seconds Commit: c74be80 (OpenSSL_1_1_0-stable) Author: Andy Polyakov Message: asn1/x_long.c: remove conditions in inner loops and dependency on BN. Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3152) (cherry picked from commit e128f891de71bbdba8391355af8d6d47d20b1969) View the changeset: https://github.com/openssl/openssl/compare/70b9063cd249...c74be80027e3 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/220498283 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Mon Apr 10 10:46:45 2017 From: builds at travis-ci.org (Travis CI) Date: Mon, 10 Apr 2017 10:46:45 +0000 Subject: [openssl-commits] Fixed: openssl/openssl#10088 (OpenSSL_1_1_0-stable - 6d1ab3f) In-Reply-To: Message-ID: <58eb6294d4166_43ff22b0d33f84857ae@7af38c01-f329-4b9f-b2bd-cf829bd4350f.mail> Build Update for openssl/openssl ------------------------------------- Build: #10088 Status: Fixed Duration: 16 minutes and 15 seconds Commit: 6d1ab3f (OpenSSL_1_1_0-stable) Author: Andy Polyakov Message: rand/rand_lib.c: keep fixing no-engine configuration. Reviewed-by: Richard Levitte (cherry picked from commit ce57ac431964f7692af674fd124103d6fe07af2e) View the changeset: https://github.com/openssl/openssl/compare/c74be80027e3...6d1ab3f5c87e View the full build log and details: https://travis-ci.org/openssl/openssl/builds/220498835 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Mon Apr 10 11:03:33 2017 From: builds at travis-ci.org (Travis CI) Date: Mon, 10 Apr 2017 11:03:33 +0000 Subject: [openssl-commits] Broken: openssl/openssl#10089 (master - f120fa1) In-Reply-To: Message-ID: <58eb668590992_43fbc953bf95c658374@a432ec9e-5581-46cb-83ac-18511200c94f.mail> Build Update for openssl/openssl ------------------------------------- Build: #10089 Status: Broken Duration: 19 minutes and 39 seconds Commit: f120fa1 (master) Author: Richard Levitte Message: Fix util/mkdef.pl The deprecation checking code here didn't work the same way as in Configure, and used $config{options} to find an --api= option that was never there. This is replaced with checking $config{api}, which is the controlling variable for deprecation. Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3126) View the changeset: https://github.com/openssl/openssl/compare/ce57ac431964...f120fa1efe63 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/220499204 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From openssl at openssl.org Mon Apr 10 12:28:15 2017 From: openssl at openssl.org (OpenSSL run-checker) Date: Mon, 10 Apr 2017 12:28:15 +0000 Subject: [openssl-commits] Still FAILED build of OpenSSL branch OpenSSL_1_1_0-stable with options -d --strict-warnings no-engine Message-ID: <1491827295.435276.21626.nullmailer@run.openssl.org> Platform and configuration command: $ uname -a Linux run 4.4.0-71-generic #92-Ubuntu SMP Fri Mar 24 12:59:01 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux $ CC=clang ../openssl/config -d --strict-warnings no-engine Commit log since last time: 70b9063 e_os.h: omit PRIu64. 00eae74 bio/b_print.c: drop dependency on BN config. 74c29dc Standardize on =over 4 and check for it. ae9b7e0 Use 'over 2' for bullet lists. 8d8cae7 Fix rand_lib.c for no-engine configuration Build log ended with (last 100 lines): clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/md4/md4_one.d.tmp -MT crypto/md4/md4_one.o -c -o crypto/md4/md4_one.o ../openssl/crypto/md4/md4_one.c CC="clang" /usr/bin/perl ../openssl/crypto/md5/asm/md5-x86_64.pl elf crypto/md5/md5-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/md5/md5-x86_64.d.tmp -MT crypto/md5/md5-x86_64.o -c -o crypto/md5/md5-x86_64.o crypto/md5/md5-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/md5/md5_dgst.d.tmp -MT crypto/md5/md5_dgst.o -c -o crypto/md5/md5_dgst.o ../openssl/crypto/md5/md5_dgst.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/md5/md5_one.d.tmp -MT crypto/md5/md5_one.o -c -o crypto/md5/md5_one.o ../openssl/crypto/md5/md5_one.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/mdc2/mdc2_one.d.tmp -MT crypto/mdc2/mdc2_one.o -c -o crypto/mdc2/mdc2_one.o ../openssl/crypto/mdc2/mdc2_one.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/mdc2/mdc2dgst.d.tmp -MT crypto/mdc2/mdc2dgst.o -c -o crypto/mdc2/mdc2dgst.o ../openssl/crypto/mdc2/mdc2dgst.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/mem.d.tmp -MT crypto/mem.o -c -o crypto/mem.o ../openssl/crypto/mem.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/mem_dbg.d.tmp -MT crypto/mem_dbg.o -c -o crypto/mem_dbg.o ../openssl/crypto/mem_dbg.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/mem_sec.d.tmp -MT crypto/mem_sec.o -c -o crypto/mem_sec.o ../openssl/crypto/mem_sec.c CC="clang" /usr/bin/perl ../openssl/crypto/modes/asm/aesni-gcm-x86_64.pl elf crypto/modes/aesni-gcm-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/aesni-gcm-x86_64.d.tmp -MT crypto/modes/aesni-gcm-x86_64.o -c -o crypto/modes/aesni-gcm-x86_64.o crypto/modes/aesni-gcm-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/cbc128.d.tmp -MT crypto/modes/cbc128.o -c -o crypto/modes/cbc128.o ../openssl/crypto/modes/cbc128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/ccm128.d.tmp -MT crypto/modes/ccm128.o -c -o crypto/modes/ccm128.o ../openssl/crypto/modes/ccm128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/cfb128.d.tmp -MT crypto/modes/cfb128.o -c -o crypto/modes/cfb128.o ../openssl/crypto/modes/cfb128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/ctr128.d.tmp -MT crypto/modes/ctr128.o -c -o crypto/modes/ctr128.o ../openssl/crypto/modes/ctr128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/cts128.d.tmp -MT crypto/modes/cts128.o -c -o crypto/modes/cts128.o ../openssl/crypto/modes/cts128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -Icrypto -I../openssl/crypto -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/gcm128.d.tmp -MT crypto/modes/gcm128.o -c -o crypto/modes/gcm128.o ../openssl/crypto/modes/gcm128.c CC="clang" /usr/bin/perl ../openssl/crypto/modes/asm/ghash-x86_64.pl elf crypto/modes/ghash-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/ghash-x86_64.d.tmp -MT crypto/modes/ghash-x86_64.o -c -o crypto/modes/ghash-x86_64.o crypto/modes/ghash-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/ocb128.d.tmp -MT crypto/modes/ocb128.o -c -o crypto/modes/ocb128.o ../openssl/crypto/modes/ocb128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/ofb128.d.tmp -MT crypto/modes/ofb128.o -c -o crypto/modes/ofb128.o ../openssl/crypto/modes/ofb128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/wrap128.d.tmp -MT crypto/modes/wrap128.o -c -o crypto/modes/wrap128.o ../openssl/crypto/modes/wrap128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/xts128.d.tmp -MT crypto/modes/xts128.o -c -o crypto/modes/xts128.o ../openssl/crypto/modes/xts128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/o_dir.d.tmp -MT crypto/o_dir.o -c -o crypto/o_dir.o ../openssl/crypto/o_dir.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/o_fips.d.tmp -MT crypto/o_fips.o -c -o crypto/o_fips.o ../openssl/crypto/o_fips.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/o_fopen.d.tmp -MT crypto/o_fopen.o -c -o crypto/o_fopen.o ../openssl/crypto/o_fopen.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/o_init.d.tmp -MT crypto/o_init.o -c -o crypto/o_init.o ../openssl/crypto/o_init.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/o_str.d.tmp -MT crypto/o_str.o -c -o crypto/o_str.o ../openssl/crypto/o_str.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/o_time.d.tmp -MT crypto/o_time.o -c -o crypto/o_time.o ../openssl/crypto/o_time.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/objects/o_names.d.tmp -MT crypto/objects/o_names.o -c -o crypto/objects/o_names.o ../openssl/crypto/objects/o_names.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/objects/obj_dat.d.tmp -MT crypto/objects/obj_dat.o -c -o crypto/objects/obj_dat.o ../openssl/crypto/objects/obj_dat.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/objects/obj_err.d.tmp -MT crypto/objects/obj_err.o -c -o crypto/objects/obj_err.o ../openssl/crypto/objects/obj_err.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/objects/obj_lib.d.tmp -MT crypto/objects/obj_lib.o -c -o crypto/objects/obj_lib.o ../openssl/crypto/objects/obj_lib.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/objects/obj_xref.d.tmp -MT crypto/objects/obj_xref.o -c -o crypto/objects/obj_xref.o ../openssl/crypto/objects/obj_xref.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_asn.d.tmp -MT crypto/ocsp/ocsp_asn.o -c -o crypto/ocsp/ocsp_asn.o ../openssl/crypto/ocsp/ocsp_asn.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_cl.d.tmp -MT crypto/ocsp/ocsp_cl.o -c -o crypto/ocsp/ocsp_cl.o ../openssl/crypto/ocsp/ocsp_cl.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_err.d.tmp -MT crypto/ocsp/ocsp_err.o -c -o crypto/ocsp/ocsp_err.o ../openssl/crypto/ocsp/ocsp_err.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_ext.d.tmp -MT crypto/ocsp/ocsp_ext.o -c -o crypto/ocsp/ocsp_ext.o ../openssl/crypto/ocsp/ocsp_ext.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_ht.d.tmp -MT crypto/ocsp/ocsp_ht.o -c -o crypto/ocsp/ocsp_ht.o ../openssl/crypto/ocsp/ocsp_ht.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_lib.d.tmp -MT crypto/ocsp/ocsp_lib.o -c -o crypto/ocsp/ocsp_lib.o ../openssl/crypto/ocsp/ocsp_lib.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_prn.d.tmp -MT crypto/ocsp/ocsp_prn.o -c -o crypto/ocsp/ocsp_prn.o ../openssl/crypto/ocsp/ocsp_prn.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_srv.d.tmp -MT crypto/ocsp/ocsp_srv.o -c -o crypto/ocsp/ocsp_srv.o ../openssl/crypto/ocsp/ocsp_srv.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_vfy.d.tmp -MT crypto/ocsp/ocsp_vfy.o -c -o crypto/ocsp/ocsp_vfy.o ../openssl/crypto/ocsp/ocsp_vfy.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/v3_ocsp.d.tmp -MT crypto/ocsp/v3_ocsp.o -c -o crypto/ocsp/v3_ocsp.o ../openssl/crypto/ocsp/v3_ocsp.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_all.d.tmp -MT crypto/pem/pem_all.o -c -o crypto/pem/pem_all.o ../openssl/crypto/pem/pem_all.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_err.d.tmp -MT crypto/pem/pem_err.o -c -o crypto/pem/pem_err.o ../openssl/crypto/pem/pem_err.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_info.d.tmp -MT crypto/pem/pem_info.o -c -o crypto/pem/pem_info.o ../openssl/crypto/pem/pem_info.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_lib.d.tmp -MT crypto/pem/pem_lib.o -c -o crypto/pem/pem_lib.o ../openssl/crypto/pem/pem_lib.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_oth.d.tmp -MT crypto/pem/pem_oth.o -c -o crypto/pem/pem_oth.o ../openssl/crypto/pem/pem_oth.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_pk8.d.tmp -MT crypto/pem/pem_pk8.o -c -o crypto/pem/pem_pk8.o ../openssl/crypto/pem/pem_pk8.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_pkey.d.tmp -MT crypto/pem/pem_pkey.o -c -o crypto/pem/pem_pkey.o ../openssl/crypto/pem/pem_pkey.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_sign.d.tmp -MT crypto/pem/pem_sign.o -c -o crypto/pem/pem_sign.o ../openssl/crypto/pem/pem_sign.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_x509.d.tmp -MT crypto/pem/pem_x509.o -c -o crypto/pem/pem_x509.o ../openssl/crypto/pem/pem_x509.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_xaux.d.tmp -MT crypto/pem/pem_xaux.o -c -o crypto/pem/pem_xaux.o ../openssl/crypto/pem/pem_xaux.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pvkfmt.d.tmp -MT crypto/pem/pvkfmt.o -c -o crypto/pem/pvkfmt.o ../openssl/crypto/pem/pvkfmt.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_add.d.tmp -MT crypto/pkcs12/p12_add.o -c -o crypto/pkcs12/p12_add.o ../openssl/crypto/pkcs12/p12_add.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_asn.d.tmp -MT crypto/pkcs12/p12_asn.o -c -o crypto/pkcs12/p12_asn.o ../openssl/crypto/pkcs12/p12_asn.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_attr.d.tmp -MT crypto/pkcs12/p12_attr.o -c -o crypto/pkcs12/p12_attr.o ../openssl/crypto/pkcs12/p12_attr.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_crpt.d.tmp -MT crypto/pkcs12/p12_crpt.o -c -o crypto/pkcs12/p12_crpt.o ../openssl/crypto/pkcs12/p12_crpt.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_crt.d.tmp -MT crypto/pkcs12/p12_crt.o -c -o crypto/pkcs12/p12_crt.o ../openssl/crypto/pkcs12/p12_crt.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_decr.d.tmp -MT crypto/pkcs12/p12_decr.o -c -o crypto/pkcs12/p12_decr.o ../openssl/crypto/pkcs12/p12_decr.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_init.d.tmp -MT crypto/pkcs12/p12_init.o -c -o crypto/pkcs12/p12_init.o ../openssl/crypto/pkcs12/p12_init.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_key.d.tmp -MT crypto/pkcs12/p12_key.o -c -o crypto/pkcs12/p12_key.o ../openssl/crypto/pkcs12/p12_key.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_kiss.d.tmp -MT crypto/pkcs12/p12_kiss.o -c -o crypto/pkcs12/p12_kiss.o ../openssl/crypto/pkcs12/p12_kiss.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_mutl.d.tmp -MT crypto/pkcs12/p12_mutl.o -c -o crypto/pkcs12/p12_mutl.o ../openssl/crypto/pkcs12/p12_mutl.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_npas.d.tmp -MT crypto/pkcs12/p12_npas.o -c -o crypto/pkcs12/p12_npas.o ../openssl/crypto/pkcs12/p12_npas.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_p8d.d.tmp -MT crypto/pkcs12/p12_p8d.o -c -o crypto/pkcs12/p12_p8d.o ../openssl/crypto/pkcs12/p12_p8d.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_p8e.d.tmp -MT crypto/pkcs12/p12_p8e.o -c -o crypto/pkcs12/p12_p8e.o ../openssl/crypto/pkcs12/p12_p8e.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_sbag.d.tmp -MT crypto/pkcs12/p12_sbag.o -c -o crypto/pkcs12/p12_sbag.o ../openssl/crypto/pkcs12/p12_sbag.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_utl.d.tmp -MT crypto/pkcs12/p12_utl.o -c -o crypto/pkcs12/p12_utl.o ../openssl/crypto/pkcs12/p12_utl.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/pk12err.d.tmp -MT crypto/pkcs12/pk12err.o -c -o crypto/pkcs12/pk12err.o ../openssl/crypto/pkcs12/pk12err.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/bio_pk7.d.tmp -MT crypto/pkcs7/bio_pk7.o -c -o crypto/pkcs7/bio_pk7.o ../openssl/crypto/pkcs7/bio_pk7.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pk7_asn1.d.tmp -MT crypto/pkcs7/pk7_asn1.o -c -o crypto/pkcs7/pk7_asn1.o ../openssl/crypto/pkcs7/pk7_asn1.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pk7_attr.d.tmp -MT crypto/pkcs7/pk7_attr.o -c -o crypto/pkcs7/pk7_attr.o ../openssl/crypto/pkcs7/pk7_attr.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pk7_doit.d.tmp -MT crypto/pkcs7/pk7_doit.o -c -o crypto/pkcs7/pk7_doit.o ../openssl/crypto/pkcs7/pk7_doit.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pk7_lib.d.tmp -MT crypto/pkcs7/pk7_lib.o -c -o crypto/pkcs7/pk7_lib.o ../openssl/crypto/pkcs7/pk7_lib.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pk7_mime.d.tmp -MT crypto/pkcs7/pk7_mime.o -c -o crypto/pkcs7/pk7_mime.o ../openssl/crypto/pkcs7/pk7_mime.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pk7_smime.d.tmp -MT crypto/pkcs7/pk7_smime.o -c -o crypto/pkcs7/pk7_smime.o ../openssl/crypto/pkcs7/pk7_smime.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pkcs7err.d.tmp -MT crypto/pkcs7/pkcs7err.o -c -o crypto/pkcs7/pkcs7err.o ../openssl/crypto/pkcs7/pkcs7err.c CC="clang" /usr/bin/perl ../openssl/crypto/poly1305/asm/poly1305-x86_64.pl elf crypto/poly1305/poly1305-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/poly1305/poly1305-x86_64.d.tmp -MT crypto/poly1305/poly1305-x86_64.o -c -o crypto/poly1305/poly1305-x86_64.o crypto/poly1305/poly1305-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/poly1305/poly1305.d.tmp -MT crypto/poly1305/poly1305.o -c -o crypto/poly1305/poly1305.o ../openssl/crypto/poly1305/poly1305.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/rand/md_rand.d.tmp -MT crypto/rand/md_rand.o -c -o crypto/rand/md_rand.o ../openssl/crypto/rand/md_rand.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/rand/rand_egd.d.tmp -MT crypto/rand/rand_egd.o -c -o crypto/rand/rand_egd.o ../openssl/crypto/rand/rand_egd.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/rand/rand_err.d.tmp -MT crypto/rand/rand_err.o -c -o crypto/rand/rand_err.o ../openssl/crypto/rand/rand_err.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/rand/rand_lib.d.tmp -MT crypto/rand/rand_lib.o -c -o crypto/rand/rand_lib.o ../openssl/crypto/rand/rand_lib.c ../openssl/crypto/rand/rand_lib.c:121:29: error: use of undeclared identifier 'rand_engine_lock'; did you mean 'rand_meth_lock'? CRYPTO_THREAD_lock_free(rand_engine_lock); ^~~~~~~~~~~~~~~~ rand_meth_lock ../openssl/crypto/rand/rand_lib.c:29:23: note: 'rand_meth_lock' declared here static CRYPTO_RWLOCK *rand_meth_lock = NULL; ^ 1 error generated. Makefile:4311: recipe for target 'crypto/rand/rand_lib.o' failed make[1]: *** [crypto/rand/rand_lib.o] Error 1 make[1]: Leaving directory '/home/openssl/run-checker-1.1.0/no-engine' Makefile:128: recipe for target 'all' failed make: *** [all] Error 2 From openssl at openssl.org Mon Apr 10 12:29:19 2017 From: openssl at openssl.org (OpenSSL run-checker) Date: Mon, 10 Apr 2017 12:29:19 +0000 Subject: [openssl-commits] Still FAILED build of OpenSSL branch OpenSSL_1_1_0-stable with options -d --strict-warnings no-engine no-shared Message-ID: <1491827359.921976.25035.nullmailer@run.openssl.org> Platform and configuration command: $ uname -a Linux run 4.4.0-71-generic #92-Ubuntu SMP Fri Mar 24 12:59:01 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux $ CC=clang ../openssl/config -d --strict-warnings no-engine no-shared Commit log since last time: 70b9063 e_os.h: omit PRIu64. 00eae74 bio/b_print.c: drop dependency on BN config. 74c29dc Standardize on =over 4 and check for it. ae9b7e0 Use 'over 2' for bullet lists. 8d8cae7 Fix rand_lib.c for no-engine configuration Build log ended with (last 100 lines): clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/md4/md4_one.d.tmp -MT crypto/md4/md4_one.o -c -o crypto/md4/md4_one.o ../openssl/crypto/md4/md4_one.c CC="clang" /usr/bin/perl ../openssl/crypto/md5/asm/md5-x86_64.pl elf crypto/md5/md5-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/md5/md5-x86_64.d.tmp -MT crypto/md5/md5-x86_64.o -c -o crypto/md5/md5-x86_64.o crypto/md5/md5-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/md5/md5_dgst.d.tmp -MT crypto/md5/md5_dgst.o -c -o crypto/md5/md5_dgst.o ../openssl/crypto/md5/md5_dgst.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/md5/md5_one.d.tmp -MT crypto/md5/md5_one.o -c -o crypto/md5/md5_one.o ../openssl/crypto/md5/md5_one.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/mdc2/mdc2_one.d.tmp -MT crypto/mdc2/mdc2_one.o -c -o crypto/mdc2/mdc2_one.o ../openssl/crypto/mdc2/mdc2_one.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/mdc2/mdc2dgst.d.tmp -MT crypto/mdc2/mdc2dgst.o -c -o crypto/mdc2/mdc2dgst.o ../openssl/crypto/mdc2/mdc2dgst.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/mem.d.tmp -MT crypto/mem.o -c -o crypto/mem.o ../openssl/crypto/mem.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/mem_dbg.d.tmp -MT crypto/mem_dbg.o -c -o crypto/mem_dbg.o ../openssl/crypto/mem_dbg.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/mem_sec.d.tmp -MT crypto/mem_sec.o -c -o crypto/mem_sec.o ../openssl/crypto/mem_sec.c CC="clang" /usr/bin/perl ../openssl/crypto/modes/asm/aesni-gcm-x86_64.pl elf crypto/modes/aesni-gcm-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/aesni-gcm-x86_64.d.tmp -MT crypto/modes/aesni-gcm-x86_64.o -c -o crypto/modes/aesni-gcm-x86_64.o crypto/modes/aesni-gcm-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/cbc128.d.tmp -MT crypto/modes/cbc128.o -c -o crypto/modes/cbc128.o ../openssl/crypto/modes/cbc128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/ccm128.d.tmp -MT crypto/modes/ccm128.o -c -o crypto/modes/ccm128.o ../openssl/crypto/modes/ccm128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/cfb128.d.tmp -MT crypto/modes/cfb128.o -c -o crypto/modes/cfb128.o ../openssl/crypto/modes/cfb128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/ctr128.d.tmp -MT crypto/modes/ctr128.o -c -o crypto/modes/ctr128.o ../openssl/crypto/modes/ctr128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/cts128.d.tmp -MT crypto/modes/cts128.o -c -o crypto/modes/cts128.o ../openssl/crypto/modes/cts128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -Icrypto -I../openssl/crypto -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/gcm128.d.tmp -MT crypto/modes/gcm128.o -c -o crypto/modes/gcm128.o ../openssl/crypto/modes/gcm128.c CC="clang" /usr/bin/perl ../openssl/crypto/modes/asm/ghash-x86_64.pl elf crypto/modes/ghash-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/ghash-x86_64.d.tmp -MT crypto/modes/ghash-x86_64.o -c -o crypto/modes/ghash-x86_64.o crypto/modes/ghash-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/ocb128.d.tmp -MT crypto/modes/ocb128.o -c -o crypto/modes/ocb128.o ../openssl/crypto/modes/ocb128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/ofb128.d.tmp -MT crypto/modes/ofb128.o -c -o crypto/modes/ofb128.o ../openssl/crypto/modes/ofb128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/wrap128.d.tmp -MT crypto/modes/wrap128.o -c -o crypto/modes/wrap128.o ../openssl/crypto/modes/wrap128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/modes/xts128.d.tmp -MT crypto/modes/xts128.o -c -o crypto/modes/xts128.o ../openssl/crypto/modes/xts128.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/o_dir.d.tmp -MT crypto/o_dir.o -c -o crypto/o_dir.o ../openssl/crypto/o_dir.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/o_fips.d.tmp -MT crypto/o_fips.o -c -o crypto/o_fips.o ../openssl/crypto/o_fips.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/o_fopen.d.tmp -MT crypto/o_fopen.o -c -o crypto/o_fopen.o ../openssl/crypto/o_fopen.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/o_init.d.tmp -MT crypto/o_init.o -c -o crypto/o_init.o ../openssl/crypto/o_init.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/o_str.d.tmp -MT crypto/o_str.o -c -o crypto/o_str.o ../openssl/crypto/o_str.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/o_time.d.tmp -MT crypto/o_time.o -c -o crypto/o_time.o ../openssl/crypto/o_time.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/objects/o_names.d.tmp -MT crypto/objects/o_names.o -c -o crypto/objects/o_names.o ../openssl/crypto/objects/o_names.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/objects/obj_dat.d.tmp -MT crypto/objects/obj_dat.o -c -o crypto/objects/obj_dat.o ../openssl/crypto/objects/obj_dat.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/objects/obj_err.d.tmp -MT crypto/objects/obj_err.o -c -o crypto/objects/obj_err.o ../openssl/crypto/objects/obj_err.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/objects/obj_lib.d.tmp -MT crypto/objects/obj_lib.o -c -o crypto/objects/obj_lib.o ../openssl/crypto/objects/obj_lib.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/objects/obj_xref.d.tmp -MT crypto/objects/obj_xref.o -c -o crypto/objects/obj_xref.o ../openssl/crypto/objects/obj_xref.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_asn.d.tmp -MT crypto/ocsp/ocsp_asn.o -c -o crypto/ocsp/ocsp_asn.o ../openssl/crypto/ocsp/ocsp_asn.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_cl.d.tmp -MT crypto/ocsp/ocsp_cl.o -c -o crypto/ocsp/ocsp_cl.o ../openssl/crypto/ocsp/ocsp_cl.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_err.d.tmp -MT crypto/ocsp/ocsp_err.o -c -o crypto/ocsp/ocsp_err.o ../openssl/crypto/ocsp/ocsp_err.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_ext.d.tmp -MT crypto/ocsp/ocsp_ext.o -c -o crypto/ocsp/ocsp_ext.o ../openssl/crypto/ocsp/ocsp_ext.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_ht.d.tmp -MT crypto/ocsp/ocsp_ht.o -c -o crypto/ocsp/ocsp_ht.o ../openssl/crypto/ocsp/ocsp_ht.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_lib.d.tmp -MT crypto/ocsp/ocsp_lib.o -c -o crypto/ocsp/ocsp_lib.o ../openssl/crypto/ocsp/ocsp_lib.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_prn.d.tmp -MT crypto/ocsp/ocsp_prn.o -c -o crypto/ocsp/ocsp_prn.o ../openssl/crypto/ocsp/ocsp_prn.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_srv.d.tmp -MT crypto/ocsp/ocsp_srv.o -c -o crypto/ocsp/ocsp_srv.o ../openssl/crypto/ocsp/ocsp_srv.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/ocsp_vfy.d.tmp -MT crypto/ocsp/ocsp_vfy.o -c -o crypto/ocsp/ocsp_vfy.o ../openssl/crypto/ocsp/ocsp_vfy.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/ocsp/v3_ocsp.d.tmp -MT crypto/ocsp/v3_ocsp.o -c -o crypto/ocsp/v3_ocsp.o ../openssl/crypto/ocsp/v3_ocsp.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_all.d.tmp -MT crypto/pem/pem_all.o -c -o crypto/pem/pem_all.o ../openssl/crypto/pem/pem_all.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_err.d.tmp -MT crypto/pem/pem_err.o -c -o crypto/pem/pem_err.o ../openssl/crypto/pem/pem_err.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_info.d.tmp -MT crypto/pem/pem_info.o -c -o crypto/pem/pem_info.o ../openssl/crypto/pem/pem_info.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_lib.d.tmp -MT crypto/pem/pem_lib.o -c -o crypto/pem/pem_lib.o ../openssl/crypto/pem/pem_lib.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_oth.d.tmp -MT crypto/pem/pem_oth.o -c -o crypto/pem/pem_oth.o ../openssl/crypto/pem/pem_oth.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_pk8.d.tmp -MT crypto/pem/pem_pk8.o -c -o crypto/pem/pem_pk8.o ../openssl/crypto/pem/pem_pk8.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_pkey.d.tmp -MT crypto/pem/pem_pkey.o -c -o crypto/pem/pem_pkey.o ../openssl/crypto/pem/pem_pkey.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_sign.d.tmp -MT crypto/pem/pem_sign.o -c -o crypto/pem/pem_sign.o ../openssl/crypto/pem/pem_sign.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_x509.d.tmp -MT crypto/pem/pem_x509.o -c -o crypto/pem/pem_x509.o ../openssl/crypto/pem/pem_x509.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pem_xaux.d.tmp -MT crypto/pem/pem_xaux.o -c -o crypto/pem/pem_xaux.o ../openssl/crypto/pem/pem_xaux.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pem/pvkfmt.d.tmp -MT crypto/pem/pvkfmt.o -c -o crypto/pem/pvkfmt.o ../openssl/crypto/pem/pvkfmt.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_add.d.tmp -MT crypto/pkcs12/p12_add.o -c -o crypto/pkcs12/p12_add.o ../openssl/crypto/pkcs12/p12_add.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_asn.d.tmp -MT crypto/pkcs12/p12_asn.o -c -o crypto/pkcs12/p12_asn.o ../openssl/crypto/pkcs12/p12_asn.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_attr.d.tmp -MT crypto/pkcs12/p12_attr.o -c -o crypto/pkcs12/p12_attr.o ../openssl/crypto/pkcs12/p12_attr.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_crpt.d.tmp -MT crypto/pkcs12/p12_crpt.o -c -o crypto/pkcs12/p12_crpt.o ../openssl/crypto/pkcs12/p12_crpt.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_crt.d.tmp -MT crypto/pkcs12/p12_crt.o -c -o crypto/pkcs12/p12_crt.o ../openssl/crypto/pkcs12/p12_crt.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_decr.d.tmp -MT crypto/pkcs12/p12_decr.o -c -o crypto/pkcs12/p12_decr.o ../openssl/crypto/pkcs12/p12_decr.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_init.d.tmp -MT crypto/pkcs12/p12_init.o -c -o crypto/pkcs12/p12_init.o ../openssl/crypto/pkcs12/p12_init.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_key.d.tmp -MT crypto/pkcs12/p12_key.o -c -o crypto/pkcs12/p12_key.o ../openssl/crypto/pkcs12/p12_key.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_kiss.d.tmp -MT crypto/pkcs12/p12_kiss.o -c -o crypto/pkcs12/p12_kiss.o ../openssl/crypto/pkcs12/p12_kiss.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_mutl.d.tmp -MT crypto/pkcs12/p12_mutl.o -c -o crypto/pkcs12/p12_mutl.o ../openssl/crypto/pkcs12/p12_mutl.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_npas.d.tmp -MT crypto/pkcs12/p12_npas.o -c -o crypto/pkcs12/p12_npas.o ../openssl/crypto/pkcs12/p12_npas.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_p8d.d.tmp -MT crypto/pkcs12/p12_p8d.o -c -o crypto/pkcs12/p12_p8d.o ../openssl/crypto/pkcs12/p12_p8d.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_p8e.d.tmp -MT crypto/pkcs12/p12_p8e.o -c -o crypto/pkcs12/p12_p8e.o ../openssl/crypto/pkcs12/p12_p8e.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_sbag.d.tmp -MT crypto/pkcs12/p12_sbag.o -c -o crypto/pkcs12/p12_sbag.o ../openssl/crypto/pkcs12/p12_sbag.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/p12_utl.d.tmp -MT crypto/pkcs12/p12_utl.o -c -o crypto/pkcs12/p12_utl.o ../openssl/crypto/pkcs12/p12_utl.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs12/pk12err.d.tmp -MT crypto/pkcs12/pk12err.o -c -o crypto/pkcs12/pk12err.o ../openssl/crypto/pkcs12/pk12err.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/bio_pk7.d.tmp -MT crypto/pkcs7/bio_pk7.o -c -o crypto/pkcs7/bio_pk7.o ../openssl/crypto/pkcs7/bio_pk7.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pk7_asn1.d.tmp -MT crypto/pkcs7/pk7_asn1.o -c -o crypto/pkcs7/pk7_asn1.o ../openssl/crypto/pkcs7/pk7_asn1.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pk7_attr.d.tmp -MT crypto/pkcs7/pk7_attr.o -c -o crypto/pkcs7/pk7_attr.o ../openssl/crypto/pkcs7/pk7_attr.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pk7_doit.d.tmp -MT crypto/pkcs7/pk7_doit.o -c -o crypto/pkcs7/pk7_doit.o ../openssl/crypto/pkcs7/pk7_doit.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pk7_lib.d.tmp -MT crypto/pkcs7/pk7_lib.o -c -o crypto/pkcs7/pk7_lib.o ../openssl/crypto/pkcs7/pk7_lib.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pk7_mime.d.tmp -MT crypto/pkcs7/pk7_mime.o -c -o crypto/pkcs7/pk7_mime.o ../openssl/crypto/pkcs7/pk7_mime.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pk7_smime.d.tmp -MT crypto/pkcs7/pk7_smime.o -c -o crypto/pkcs7/pk7_smime.o ../openssl/crypto/pkcs7/pk7_smime.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/pkcs7/pkcs7err.d.tmp -MT crypto/pkcs7/pkcs7err.o -c -o crypto/pkcs7/pkcs7err.o ../openssl/crypto/pkcs7/pkcs7err.c CC="clang" /usr/bin/perl ../openssl/crypto/poly1305/asm/poly1305-x86_64.pl elf crypto/poly1305/poly1305-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/poly1305/poly1305-x86_64.d.tmp -MT crypto/poly1305/poly1305-x86_64.o -c -o crypto/poly1305/poly1305-x86_64.o crypto/poly1305/poly1305-x86_64.s clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/poly1305/poly1305.d.tmp -MT crypto/poly1305/poly1305.o -c -o crypto/poly1305/poly1305.o ../openssl/crypto/poly1305/poly1305.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/rand/md_rand.d.tmp -MT crypto/rand/md_rand.o -c -o crypto/rand/md_rand.o ../openssl/crypto/rand/md_rand.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/rand/rand_egd.d.tmp -MT crypto/rand/rand_egd.o -c -o crypto/rand/rand_egd.o ../openssl/crypto/rand/rand_egd.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/rand/rand_err.d.tmp -MT crypto/rand/rand_err.o -c -o crypto/rand/rand_err.o ../openssl/crypto/rand/rand_err.c clang -I. -Icrypto/include -Iinclude -I../openssl -I../openssl/crypto/include -I../openssl/include -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O0 -g -pthread -m64 -DL_ENDIAN -Wextra -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror -Qunused-arguments -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/rand/rand_lib.d.tmp -MT crypto/rand/rand_lib.o -c -o crypto/rand/rand_lib.o ../openssl/crypto/rand/rand_lib.c ../openssl/crypto/rand/rand_lib.c:121:29: error: use of undeclared identifier 'rand_engine_lock'; did you mean 'rand_meth_lock'? CRYPTO_THREAD_lock_free(rand_engine_lock); ^~~~~~~~~~~~~~~~ rand_meth_lock ../openssl/crypto/rand/rand_lib.c:29:23: note: 'rand_meth_lock' declared here static CRYPTO_RWLOCK *rand_meth_lock = NULL; ^ 1 error generated. Makefile:4258: recipe for target 'crypto/rand/rand_lib.o' failed make[1]: *** [crypto/rand/rand_lib.o] Error 1 make[1]: Leaving directory '/home/openssl/run-checker-1.1.0/no-engine_no-shared' Makefile:128: recipe for target 'all' failed make: *** [all] Error 2 From no-reply at appveyor.com Mon Apr 10 13:11:59 2017 From: no-reply at appveyor.com (AppVeyor) Date: Mon, 10 Apr 2017 13:11:59 +0000 Subject: [openssl-commits] Build failed: openssl master.9409 Message-ID: <20170410131158.46155.21662.DFA7EF5D@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Mon Apr 10 13:20:19 2017 From: no-reply at appveyor.com (AppVeyor) Date: Mon, 10 Apr 2017 13:20:19 +0000 Subject: [openssl-commits] Build failed: openssl master.9410 Message-ID: <20170410132018.93482.52161.EEC3F961@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Mon Apr 10 13:33:40 2017 From: no-reply at appveyor.com (AppVeyor) Date: Mon, 10 Apr 2017 13:33:40 +0000 Subject: [openssl-commits] Build completed: openssl master.9411 Message-ID: <20170410133338.67897.24375.EDA3205C@appveyor.com> An HTML attachment was scrubbed... URL: From rsalz at openssl.org Mon Apr 10 16:06:05 2017 From: rsalz at openssl.org (Rich Salz) Date: Mon, 10 Apr 2017 16:06:05 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491840365.423028.1940.nullmailer@dev.openssl.org> The branch master has been updated via 8313a787d770ac1d7ddafcbc41b13e7fb5841eae (commit) from f120fa1efe6377850d1ecd389a02e0e2241912bc (commit) - Log ----------------------------------------------------------------- commit 8313a787d770ac1d7ddafcbc41b13e7fb5841eae Author: Benjamin Kaduk Date: Tue Feb 7 16:23:16 2017 -0600 Allow an ALPN callback to pretend to not exist RFC 7301 mandates that the server SHALL respond with a fatal "no_application_protocol" alert when there is no overlap between the client's supplied list and the server's list of supported protocols. In commit 062178678f5374b09f00d70796f6e692e8775aca we changed from ignoring non-success returns from the supplied alpn_select_cb() to treating such non-success returns as indicative of non-overlap and sending the fatal alert. In effect, this is using the presence of an alpn_select_cb() as a proxy to attempt to determine whether the application has configured a list of supported protocols. However, there may be cases in which an application's architecture leads it to supply an alpn_select_cb() but have that callback be configured to take no action on connections that do not have ALPN configured; returning SSL_TLSEXT_ERR_NOACK from the callback would be the natural way to do so. Unfortunately, the aforementioned behavior change also treated SSL_TLSEXT_ERR_NOACK as indicative of no overlap and terminated the connection; this change supplies special handling for SSL_TLSEXT_ERR_NOACK returns from the callback. In effect, it provides a way for a callback to obtain the behavior that would have occurred if no callback was registered at all, which was not possible prior to this change. Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/2570) ----------------------------------------------------------------------- Summary of changes: doc/man3/SSL_CTX_set_alpn_select_cb.pod | 8 +++++++- ssl/statem/extensions.c | 3 +++ test/handshake_helper.c | 2 +- 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/doc/man3/SSL_CTX_set_alpn_select_cb.pod b/doc/man3/SSL_CTX_set_alpn_select_cb.pod index 5ff5a93..5ad063e 100644 --- a/doc/man3/SSL_CTX_set_alpn_select_cb.pod +++ b/doc/man3/SSL_CTX_set_alpn_select_cb.pod @@ -113,9 +113,15 @@ The ALPN select callback B, must return one of the following: ALPN protocol selected. +=item SSL_TLSEXT_ERR_ALERT_FATAL + +There was no overlap between the client's supplied list and the server +configuration. + =item SSL_TLSEXT_ERR_NOACK -ALPN protocol not selected. +ALPN protocol not selected, e.g., because no ALPN protocols are configured for +this connection. =back diff --git a/ssl/statem/extensions.c b/ssl/statem/extensions.c index cd1d0bd..7ec7128 100644 --- a/ssl/statem/extensions.c +++ b/ssl/statem/extensions.c @@ -919,6 +919,9 @@ static int final_alpn(SSL *s, unsigned int context, int sent, int *al) /* ALPN takes precedence over NPN. */ s->s3->npn_seen = 0; #endif + } else if (r == SSL_TLSEXT_ERR_NOACK) { + /* Behave as if no callback was present. */ + return 1; } else { *al = SSL_AD_NO_APPLICATION_PROTOCOL; return 0; diff --git a/test/handshake_helper.c b/test/handshake_helper.c index 47af3fe..94fa5c5 100644 --- a/test/handshake_helper.c +++ b/test/handshake_helper.c @@ -413,7 +413,7 @@ static int server_alpn_cb(SSL *s, const unsigned char **out, *out = tmp_out; /* Unlike NPN, we don't tolerate a mismatch. */ return ret == OPENSSL_NPN_NEGOTIATED ? SSL_TLSEXT_ERR_OK - : SSL_TLSEXT_ERR_NOACK; + : SSL_TLSEXT_ERR_ALERT_FATAL; } #ifndef OPENSSL_NO_SRP From builds at travis-ci.org Mon Apr 10 16:26:58 2017 From: builds at travis-ci.org (Travis CI) Date: Mon, 10 Apr 2017 16:26:58 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10097 (master - 8313a78) In-Reply-To: Message-ID: <58ebb2529c844_43f98889d166410982e7@46e5d348-6e5a-45a1-96a2-85da28a2a5be.mail> Build Update for openssl/openssl ------------------------------------- Build: #10097 Status: Still Failing Duration: 18 minutes and 20 seconds Commit: 8313a78 (master) Author: Benjamin Kaduk Message: Allow an ALPN callback to pretend to not exist RFC 7301 mandates that the server SHALL respond with a fatal "no_application_protocol" alert when there is no overlap between the client's supplied list and the server's list of supported protocols. In commit 062178678f5374b09f00d70796f6e692e8775aca we changed from ignoring non-success returns from the supplied alpn_select_cb() to treating such non-success returns as indicative of non-overlap and sending the fatal alert. In effect, this is using the presence of an alpn_select_cb() as a proxy to attempt to determine whether the application has configured a list of supported protocols. However, there may be cases in which an application's architecture leads it to supply an alpn_select_cb() but have that callback be configured to take no action on connections that do not have ALPN configured; returning SSL_TLSEXT_ERR_NOACK from the callback would be the natural way to do so. Unfortunately, the aforementioned behavior change also treated SSL_TLSEXT_ERR_NOACK as indicative of no overlap and terminated the connection; this change supplies special handling for SSL_TLSEXT_ERR_NOACK returns from the callback. In effect, it provides a way for a callback to obtain the behavior that would have occurred if no callback was registered at all, which was not possible prior to this change. Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/2570) View the changeset: https://github.com/openssl/openssl/compare/f120fa1efe63...8313a787d770 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/220617660 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Mon Apr 10 20:06:05 2017 From: no-reply at appveyor.com (AppVeyor) Date: Mon, 10 Apr 2017 20:06:05 +0000 Subject: [openssl-commits] Build completed: openssl 1.0.1944 Message-ID: <20170410200604.68815.2641.7CE4360B@appveyor.com> An HTML attachment was scrubbed... URL: From rsalz at openssl.org Mon Apr 10 23:51:45 2017 From: rsalz at openssl.org (Rich Salz) Date: Mon, 10 Apr 2017 23:51:45 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491868305.676453.26651.nullmailer@dev.openssl.org> The branch master has been updated via 298f40e1f14981e535f82edf407718680ad7f86a (commit) from 8313a787d770ac1d7ddafcbc41b13e7fb5841eae (commit) - Log ----------------------------------------------------------------- commit 298f40e1f14981e535f82edf407718680ad7f86a Author: Pauli Date: Mon Apr 10 07:13:59 2017 +1000 Make test marcos for true/false checks reliable for all integral types. Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3154) ----------------------------------------------------------------------- Summary of changes: test/testutil.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/testutil.h b/test/testutil.h index 1ca295c..a83323b 100644 --- a/test/testutil.h +++ b/test/testutil.h @@ -291,8 +291,8 @@ void test_info_c90(const char *desc, ...) PRINTF_FORMAT(1, 2); # define TEST_mem_eq(a, m, b, n) test_mem_eq(__FILE__, __LINE__, #a, #b, a, m, b, n) # define TEST_mem_ne(a, m, b, n) test_mem_ne(__FILE__, __LINE__, #a, #b, a, m, b, n) -# define TEST_true(a) test_true(__FILE__, __LINE__, #a, a) -# define TEST_false(a) test_false(__FILE__, __LINE__, #a, a) +# define TEST_true(a) test_true(__FILE__, __LINE__, #a, (a) != 0) +# define TEST_false(a) test_false(__FILE__, __LINE__, #a, (a) != 0) /* * TEST_error(desc, ...) prints an informative error message in the standard From builds at travis-ci.org Tue Apr 11 00:09:54 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 11 Apr 2017 00:09:54 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10133 (master - 298f40e) In-Reply-To: Message-ID: <58ec1ed13b985_43fd1a64ec5fc901b5@d224b872-5ec6-4ebd-a0d8-b4aef5018b19.mail> Build Update for openssl/openssl ------------------------------------- Build: #10133 Status: Still Failing Duration: 17 minutes and 12 seconds Commit: 298f40e (master) Author: Pauli Message: Make test marcos for true/false checks reliable for all integral types. Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3154) View the changeset: https://github.com/openssl/openssl/compare/8313a787d770...298f40e1f149 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/220767959 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From rsalz at openssl.org Tue Apr 11 00:36:19 2017 From: rsalz at openssl.org (Rich Salz) Date: Tue, 11 Apr 2017 00:36:19 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491870979.725539.32455.nullmailer@dev.openssl.org> The branch master has been updated via 05d775288effa21c39e9d6b4e1c82cf06cf9ba43 (commit) from 298f40e1f14981e535f82edf407718680ad7f86a (commit) - Log ----------------------------------------------------------------- commit 05d775288effa21c39e9d6b4e1c82cf06cf9ba43 Author: Pauli Date: Fri Apr 7 13:54:09 2017 +1000 Update rc2test to use the test infrastructure Reviewed-by: Kurt Roeckx Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3161) ----------------------------------------------------------------------- Summary of changes: test/build.info | 2 +- test/rc2test.c | 73 +++++++++++++++++---------------------------------------- 2 files changed, 22 insertions(+), 53 deletions(-) diff --git a/test/build.info b/test/build.info index 3104b0e..116262f 100644 --- a/test/build.info +++ b/test/build.info @@ -83,7 +83,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[hmactest]=../include DEPEND[hmactest]=../libcrypto - SOURCE[rc2test]=rc2test.c + SOURCE[rc2test]=rc2test.c testutil.c test_main.c INCLUDE[rc2test]=../include DEPEND[rc2test]=../libcrypto diff --git a/test/rc2test.c b/test/rc2test.c index 2d0a01d..2553c91 100644 --- a/test/rc2test.c +++ b/test/rc2test.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,24 +7,11 @@ * https://www.openssl.org/source/license.html */ -/* - * This has been a quickly hacked 'ideatest.c'. When I add tests for other - * RC2 modes, more of the code will be uncommented. - */ - -#include -#include -#include - #include "../e_os.h" +#include "test_main.h" +#include "testutil.h" -#ifdef OPENSSL_NO_RC2 -int main(int argc, char *argv[]) -{ - printf("No RC2 support\n"); - return (0); -} -#else +#ifndef OPENSSL_NO_RC2 # include static unsigned char RC2key[4][16] = { @@ -52,48 +39,30 @@ static unsigned char RC2cipher[4][8] = { {0x50, 0xDC, 0x01, 0x62, 0xBD, 0x75, 0x7F, 0x31}, }; -int main(int argc, char *argv[]) +static int test_rc2(const int n) { - int i, n, err = 0; + int testresult = 1; RC2_KEY key; unsigned char buf[8], buf2[8]; - for (n = 0; n < 4; n++) { - RC2_set_key(&key, 16, &(RC2key[n][0]), 0 /* or 1024 */ ); + RC2_set_key(&key, 16, &(RC2key[n][0]), 0 /* or 1024 */ ); - RC2_ecb_encrypt(&(RC2plain[n][0]), buf, &key, RC2_ENCRYPT); - if (memcmp(&(RC2cipher[n][0]), buf, 8) != 0) { - printf("ecb rc2 error encrypting\n"); - printf("got :"); - for (i = 0; i < 8; i++) - printf("%02X ", buf[i]); - printf("\n"); - printf("expected:"); - for (i = 0; i < 8; i++) - printf("%02X ", RC2cipher[n][i]); - err = 20; - printf("\n"); - } + RC2_ecb_encrypt(&RC2plain[n][0], buf, &key, RC2_ENCRYPT); + if (!TEST_mem_eq(&RC2cipher[n][0], 8, buf, 8)) + testresult = 0; - RC2_ecb_encrypt(buf, buf2, &key, RC2_DECRYPT); - if (memcmp(&(RC2plain[n][0]), buf2, 8) != 0) { - printf("ecb RC2 error decrypting\n"); - printf("got :"); - for (i = 0; i < 8; i++) - printf("%02X ", buf[i]); - printf("\n"); - printf("expected:"); - for (i = 0; i < 8; i++) - printf("%02X ", RC2plain[n][i]); - printf("\n"); - err = 3; - } - } + RC2_ecb_encrypt(buf, buf2, &key, RC2_DECRYPT); + if (!TEST_mem_eq(&RC2plain[n][0], 8, buf2, 8)) + testresult = 0; - if (err == 0) - printf("ecb RC2 ok\n"); - - EXIT(err); + return testresult; } #endif + +void register_tests(void) +{ +#ifndef OPENSSL_NO_RC2 + ADD_ALL_TESTS(test_rc2, OSSL_NELEM(RC2key)); +#endif +} From builds at travis-ci.org Tue Apr 11 00:55:00 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 11 Apr 2017 00:55:00 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10136 (master - 05d7752) In-Reply-To: Message-ID: <58ec2963f2a1b_43fd1a64f2a741203de@d224b872-5ec6-4ebd-a0d8-b4aef5018b19.mail> Build Update for openssl/openssl ------------------------------------- Build: #10136 Status: Still Failing Duration: 17 minutes and 35 seconds Commit: 05d7752 (master) Author: Pauli Message: Update rc2test to use the test infrastructure Reviewed-by: Kurt Roeckx Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3161) View the changeset: https://github.com/openssl/openssl/compare/298f40e1f149...05d775288eff View the full build log and details: https://travis-ci.org/openssl/openssl/builds/220776774 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Tue Apr 11 01:44:08 2017 From: no-reply at appveyor.com (AppVeyor) Date: Tue, 11 Apr 2017 01:44:08 +0000 Subject: [openssl-commits] Build failed: openssl master.9448 Message-ID: <20170411014407.60048.54360.52846C5D@appveyor.com> An HTML attachment was scrubbed... URL: From openssl at openssl.org Tue Apr 11 12:30:50 2017 From: openssl at openssl.org (OpenSSL run-checker) Date: Tue, 11 Apr 2017 12:30:50 +0000 Subject: [openssl-commits] SUCCESSFUL build of OpenSSL branch OpenSSL_1_1_0-stable with options -d --strict-warnings no-engine Message-ID: <1491913850.138435.5808.nullmailer@run.openssl.org> Platform and configuration command: $ uname -a Linux run 4.4.0-71-generic #92-Ubuntu SMP Fri Mar 24 12:59:01 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux $ CC=clang ../openssl/config -d --strict-warnings no-engine Commit log since last time: 6d1ab3f rand/rand_lib.c: keep fixing no-engine configuration. c74be80 asn1/x_long.c: remove conditions in inner loops and dependency on BN. From openssl at openssl.org Tue Apr 11 12:36:32 2017 From: openssl at openssl.org (OpenSSL run-checker) Date: Tue, 11 Apr 2017 12:36:32 +0000 Subject: [openssl-commits] SUCCESSFUL build of OpenSSL branch OpenSSL_1_1_0-stable with options -d --strict-warnings no-engine no-shared Message-ID: <1491914192.801689.15591.nullmailer@run.openssl.org> Platform and configuration command: $ uname -a Linux run 4.4.0-71-generic #92-Ubuntu SMP Fri Mar 24 12:59:01 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux $ CC=clang ../openssl/config -d --strict-warnings no-engine no-shared Commit log since last time: 6d1ab3f rand/rand_lib.c: keep fixing no-engine configuration. c74be80 asn1/x_long.c: remove conditions in inner loops and dependency on BN. From matt at openssl.org Tue Apr 11 12:48:28 2017 From: matt at openssl.org (Matt Caswell) Date: Tue, 11 Apr 2017 12:48:28 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1491914908.192382.1862.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via a504540fcbc779e7e2b855dccaae9e4d7156c88d (commit) from 6d1ab3f5c87e44f9092f3eafe88dc5014e1af2f1 (commit) - Log ----------------------------------------------------------------- commit a504540fcbc779e7e2b855dccaae9e4d7156c88d Author: Benjamin Kaduk Date: Tue Feb 7 16:23:16 2017 -0600 Allow an ALPN callback to pretend to not exist RFC 7301 mandates that the server SHALL respond with a fatal "no_application_protocol" alert when there is no overlap between the client's supplied list and the server's list of supported protocols. In commit 062178678f5374b09f00d70796f6e692e8775aca we changed from ignoring non-success returns from the supplied alpn_select_cb() to treating such non-success returns as indicative of non-overlap and sending the fatal alert. In effect, this is using the presence of an alpn_select_cb() as a proxy to attempt to determine whether the application has configured a list of supported protocols. However, there may be cases in which an application's architecture leads it to supply an alpn_select_cb() but have that callback be configured to take no action on connections that do not have ALPN configured; returning SSL_TLSEXT_ERR_NOACK from the callback would be the natural way to do so. Unfortunately, the aforementioned behavior change also treated SSL_TLSEXT_ERR_NOACK as indicative of no overlap and terminated the connection; this change supplies special handling for SSL_TLSEXT_ERR_NOACK returns from the callback. In effect, it provides a way for a callback to obtain the behavior that would have occurred if no callback was registered at all, which was not possible prior to this change. Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3158) (cherry picked from commit 8313a787d770ac1d7ddafcbc41b13e7fb5841eae) ----------------------------------------------------------------------- Summary of changes: doc/ssl/SSL_CTX_set_alpn_select_cb.pod | 8 +++++++- ssl/t1_lib.c | 3 +++ test/handshake_helper.c | 2 +- 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/doc/ssl/SSL_CTX_set_alpn_select_cb.pod b/doc/ssl/SSL_CTX_set_alpn_select_cb.pod index 59acbad..d96185c 100644 --- a/doc/ssl/SSL_CTX_set_alpn_select_cb.pod +++ b/doc/ssl/SSL_CTX_set_alpn_select_cb.pod @@ -113,9 +113,15 @@ The ALPN select callback B, must return one of the following: ALPN protocol selected. +=item SSL_TLSEXT_ERR_ALERT_FATAL + +There was no overlap between the client's supplied list and the server +configuration. + =item SSL_TLSEXT_ERR_NOACK -ALPN protocol not selected. +ALPN protocol not selected, e.g., because no ALPN protocols are configured for +this connection. =back diff --git a/ssl/t1_lib.c b/ssl/t1_lib.c index b3855d6..3f9702b 100644 --- a/ssl/t1_lib.c +++ b/ssl/t1_lib.c @@ -1799,6 +1799,9 @@ static int tls1_alpn_handle_client_hello_late(SSL *s, int *al) /* ALPN takes precedence over NPN. */ s->s3->next_proto_neg_seen = 0; #endif + } else if (r == SSL_TLSEXT_ERR_NOACK) { + /* Behave as if no callback was present. */ + return 1; } else { *al = SSL_AD_NO_APPLICATION_PROTOCOL; return 0; diff --git a/test/handshake_helper.c b/test/handshake_helper.c index 7ef015f..bb042be 100644 --- a/test/handshake_helper.c +++ b/test/handshake_helper.c @@ -297,7 +297,7 @@ static int server_alpn_cb(SSL *s, const unsigned char **out, *out = tmp_out; /* Unlike NPN, we don't tolerate a mismatch. */ return ret == OPENSSL_NPN_NEGOTIATED ? SSL_TLSEXT_ERR_OK - : SSL_TLSEXT_ERR_NOACK; + : SSL_TLSEXT_ERR_ALERT_FATAL; } /* From matt at openssl.org Tue Apr 11 12:51:10 2017 From: matt at openssl.org (Matt Caswell) Date: Tue, 11 Apr 2017 12:51:10 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491915070.131583.3272.nullmailer@dev.openssl.org> The branch master has been updated via 524080c688cc55123250e48061a8c87f0d0ce1e7 (commit) from 05d775288effa21c39e9d6b4e1c82cf06cf9ba43 (commit) - Log ----------------------------------------------------------------- commit 524080c688cc55123250e48061a8c87f0d0ce1e7 Author: Pauli Date: Fri Apr 7 14:09:53 2017 +1000 Update md2test to use the test infrastructure Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3165) ----------------------------------------------------------------------- Summary of changes: test/build.info | 2 +- test/md2test.c | 65 ++++++++++++++++++--------------------------------------- 2 files changed, 21 insertions(+), 46 deletions(-) diff --git a/test/build.info b/test/build.info index 116262f..666cf53 100644 --- a/test/build.info +++ b/test/build.info @@ -75,7 +75,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[ideatest]=../include DEPEND[ideatest]=../libcrypto - SOURCE[md2test]=md2test.c + SOURCE[md2test]=md2test.c testutil.c test_main.c INCLUDE[md2test]=../include DEPEND[md2test]=../libcrypto diff --git a/test/md2test.c b/test/md2test.c index cb667cb..81a1760 100644 --- a/test/md2test.c +++ b/test/md2test.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,19 +7,13 @@ * https://www.openssl.org/source/license.html */ -#include -#include #include #include "../e_os.h" +#include "test_main.h" +#include "testutil.h" -#ifdef OPENSSL_NO_MD2 -int main(int argc, char *argv[]) -{ - printf("No MD2 support\n"); - return (0); -} -#else +#ifndef OPENSSL_NO_MD2 # include # include @@ -35,7 +29,6 @@ static char *test[] = { "abcdefghijklmnopqrstuvwxyz", "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789", "12345678901234567890123456789012345678901234567890123456789012345678901234567890", - NULL, }; static char *ret[] = { @@ -48,45 +41,27 @@ static char *ret[] = { "d5976f79d83d3a0dc9806c3c66f3efd8", }; -static char *pt(unsigned char *md); -int main(int argc, char *argv[]) +static int test_md2(int n) { - int i, err = 0; - char **P, **R; - char *p; + char buf[80]; unsigned char md[MD2_DIGEST_LENGTH]; - - P = test; - R = ret; - i = 1; - while (*P != NULL) { - if (!EVP_Digest((unsigned char *)*P, strlen(*P), md, NULL, EVP_md2(), - NULL)) { - printf("EVP Digest error.\n"); - EXIT(1); - } - p = pt(md); - if (strcmp(p, *R) != 0) { - printf("error calculating MD2 on '%s'\n", *P); - printf("got %s instead of %s\n", p, *R); - err++; - } else - printf("test %d ok\n", i); - i++; - R++; - P++; - } - EXIT(err); - return err; -} - -static char *pt(unsigned char *md) -{ int i; - static char buf[80]; + + if (!TEST_true(EVP_Digest((unsigned char *)test[n], strlen(test[n]), + md, NULL, EVP_md2(), NULL))) + return 0; for (i = 0; i < MD2_DIGEST_LENGTH; i++) sprintf(&(buf[i * 2]), "%02x", md[i]); - return (buf); + if (!TEST_str_eq(buf, ret[n])) + return 0; + return 1; } #endif + +void register_tests(void) +{ +#ifndef OPENSSL_NO_MD2 + ADD_ALL_TESTS(test_md2, OSSL_NELEM(test)); +#endif +} From matt at openssl.org Tue Apr 11 12:55:22 2017 From: matt at openssl.org (Matt Caswell) Date: Tue, 11 Apr 2017 12:55:22 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491915322.091672.4275.nullmailer@dev.openssl.org> The branch master has been updated via 745dec3aed750d681a81a049152edbb57c1f8c2d (commit) from 524080c688cc55123250e48061a8c87f0d0ce1e7 (commit) - Log ----------------------------------------------------------------- commit 745dec3aed750d681a81a049152edbb57c1f8c2d Author: Pauli Date: Mon Apr 10 13:45:01 2017 +1000 Update dtlstest to use the test infrastructure Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3170) ----------------------------------------------------------------------- Summary of changes: test/dtlstest.c | 37 ++++++++++++------------------------- 1 file changed, 12 insertions(+), 25 deletions(-) diff --git a/test/dtlstest.c b/test/dtlstest.c index bc22d32..cb58b18 100644 --- a/test/dtlstest.c +++ b/test/dtlstest.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -48,31 +48,22 @@ static int test_dtls_unprocessed(int testidx) BIO *c_to_s_fbio, *c_to_s_mempacket; int testresult = 0; - printf("Starting Test %d\n", testidx); - - if (!create_ssl_ctx_pair(DTLS_server_method(), DTLS_client_method(), &sctx, - &cctx, cert, privkey)) { - printf("Unable to create SSL_CTX pair\n"); + if (!TEST_true(create_ssl_ctx_pair(DTLS_server_method(), + DTLS_client_method(), &sctx, + &cctx, cert, privkey))) return 0; - } - if (!SSL_CTX_set_cipher_list(cctx, "AES128-SHA")) { - printf("Failed setting cipher list\n"); - } + if (!TEST_true(SSL_CTX_set_cipher_list(cctx, "AES128-SHA"))) + goto end; c_to_s_fbio = BIO_new(bio_f_tls_dump_filter()); - if (c_to_s_fbio == NULL) { - printf("Failed to create filter BIO\n"); + if (!TEST_ptr(c_to_s_fbio)) goto end; - } /* BIO is freed by create_ssl_connection on error */ - if (!create_ssl_objects(sctx, cctx, &serverssl1, &clientssl1, NULL, - c_to_s_fbio)) { - printf("Unable to create SSL objects\n"); - ERR_print_errors_fp(stdout); + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl1, &clientssl1, + NULL, c_to_s_fbio))) goto end; - } if (testidx == 1) certstatus[RECORD_SEQUENCE] = 0xff; @@ -89,11 +80,9 @@ static int test_dtls_unprocessed(int testidx) mempacket_test_inject(c_to_s_mempacket, (char *)certstatus, sizeof(certstatus), 1, INJECT_PACKET_IGNORE_REC_SEQ); - if (!create_ssl_connection(serverssl1, clientssl1, SSL_ERROR_NONE)) { - printf("Unable to create SSL connection\n"); - ERR_print_errors_fp(stdout); + if (!TEST_true(create_ssl_connection(serverssl1, clientssl1, + SSL_ERROR_NONE))) goto end; - } testresult = 1; end: @@ -109,10 +98,8 @@ int test_main(int argc, char *argv[]) { int testresult = 1; - if (argc != 3) { - printf("Invalid argument count\n"); + if (!TEST_int_eq(argc, 3)) return 1; - } cert = argv[1]; privkey = argv[2]; From builds at travis-ci.org Tue Apr 11 13:19:43 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 11 Apr 2017 13:19:43 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10147 (master - 524080c) In-Reply-To: Message-ID: <58ecd7eed88e4_43fc9b77cee4c102451d@5145e08d-18ed-4f9d-818d-021bf0aa4515.mail> Build Update for openssl/openssl ------------------------------------- Build: #10147 Status: Still Failing Duration: 23 minutes and 43 seconds Commit: 524080c (master) Author: Pauli Message: Update md2test to use the test infrastructure Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3165) View the changeset: https://github.com/openssl/openssl/compare/05d775288eff...524080c688cc View the full build log and details: https://travis-ci.org/openssl/openssl/builds/220945685 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Tue Apr 11 13:25:36 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 11 Apr 2017 13:25:36 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10148 (master - 745dec3) In-Reply-To: Message-ID: <58ecd950d71f_43fc9b77ce75810355bc@5145e08d-18ed-4f9d-818d-021bf0aa4515.mail> Build Update for openssl/openssl ------------------------------------- Build: #10148 Status: Still Failing Duration: 23 minutes and 57 seconds Commit: 745dec3 (master) Author: Pauli Message: Update dtlstest to use the test infrastructure Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3170) View the changeset: https://github.com/openssl/openssl/compare/524080c688cc...745dec3aed75 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/220946826 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From matt at openssl.org Tue Apr 11 14:33:23 2017 From: matt at openssl.org (Matt Caswell) Date: Tue, 11 Apr 2017 14:33:23 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491921203.255002.20863.nullmailer@dev.openssl.org> The branch master has been updated via 0856e3f167964f58c26796331eab9d8b0a883921 (commit) from 745dec3aed750d681a81a049152edbb57c1f8c2d (commit) - Log ----------------------------------------------------------------- commit 0856e3f167964f58c26796331eab9d8b0a883921 Author: Matt Caswell Date: Mon Apr 10 17:33:29 2017 +0100 Reject decoding of an INT64 with a value >INT64_MAX Reviewed-by: Richard Levitte Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3159) ----------------------------------------------------------------------- Summary of changes: crypto/asn1/x_int64.c | 5 +++++ test/asn1_encode_test.c | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/crypto/asn1/x_int64.c b/crypto/asn1/x_int64.c index 9da692c..33e4061 100644 --- a/crypto/asn1/x_int64.c +++ b/crypto/asn1/x_int64.c @@ -71,6 +71,11 @@ static int uint64_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, ASN1err(ASN1_F_UINT64_C2I, ASN1_R_ILLEGAL_NEGATIVE_VALUE); return 0; } + if ((it->size & INTxx_FLAG_SIGNED) == INTxx_FLAG_SIGNED + && !neg && utmp > INT64_MAX) { + ASN1err(ASN1_F_UINT64_C2I, ASN1_R_TOO_LARGE); + return 0; + } memcpy(cp, &utmp, sizeof(utmp)); return 1; } diff --git a/test/asn1_encode_test.c b/test/asn1_encode_test.c index 9b33314..45e3005 100644 --- a/test/asn1_encode_test.c +++ b/test/asn1_encode_test.c @@ -372,7 +372,7 @@ static ASN1_INT64_DATA int64_expected[] = { CUSTOM_EXPECTED_SUCCESS(ASN1_LONG_UNDEF, ASN1_LONG_UNDEF), /* t_zero */ CUSTOM_EXPECTED_SUCCESS(1, 1), /* t_one */ CUSTOM_EXPECTED_FAILURE, /* t_9bytes_1 */ - CUSTOM_EXPECTED_SUCCESS(INT64_MIN, INT64_MIN), /* t_8bytes_1 */ + CUSTOM_EXPECTED_FAILURE, /* t_8bytes_1 (too large positive) */ CUSTOM_EXPECTED_SUCCESS(INT64_MAX, INT64_MAX), /* t_8bytes_2 */ CUSTOM_EXPECTED_FAILURE, /* t_8bytes_3_pad (illegal padding) */ CUSTOM_EXPECTED_SUCCESS(INT64_MIN, INT64_MIN), /* t_8bytes_4_neg */ From matt at openssl.org Tue Apr 11 14:36:18 2017 From: matt at openssl.org (Matt Caswell) Date: Tue, 11 Apr 2017 14:36:18 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1491921378.370075.22272.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 376dc4e06b4936ff0c9c53b8f53795d0b3774ab3 (commit) from a504540fcbc779e7e2b855dccaae9e4d7156c88d (commit) - Log ----------------------------------------------------------------- commit 376dc4e06b4936ff0c9c53b8f53795d0b3774ab3 Author: Matt Caswell Date: Mon Apr 10 17:33:29 2017 +0100 Reject decoding of an INT64 with a value >INT64_MAX Reviewed-by: Richard Levitte Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3159) (cherry picked from commit 0856e3f167964f58c26796331eab9d8b0a883921) ----------------------------------------------------------------------- Summary of changes: crypto/asn1/x_int64.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/crypto/asn1/x_int64.c b/crypto/asn1/x_int64.c index e0520ff..26578b2 100644 --- a/crypto/asn1/x_int64.c +++ b/crypto/asn1/x_int64.c @@ -71,6 +71,11 @@ static int uint64_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, ASN1err(ASN1_F_UINT64_C2I, ASN1_R_ILLEGAL_NEGATIVE_VALUE); return 0; } + if ((it->size & INTxx_FLAG_SIGNED) == INTxx_FLAG_SIGNED + && !neg && utmp > INT64_MAX) { + ASN1err(ASN1_F_UINT64_C2I, ASN1_R_TOO_LARGE); + return 0; + } memcpy(cp, &utmp, sizeof(utmp)); return 1; } From builds at travis-ci.org Tue Apr 11 14:52:30 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 11 Apr 2017 14:52:30 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10152 (master - 0856e3f) In-Reply-To: Message-ID: <58ecedae75125_43fc9bf1adec01209748@5145e08d-18ed-4f9d-818d-021bf0aa4515.mail> Build Update for openssl/openssl ------------------------------------- Build: #10152 Status: Still Failing Duration: 18 minutes and 12 seconds Commit: 0856e3f (master) Author: Matt Caswell Message: Reject decoding of an INT64 with a value >INT64_MAX Reviewed-by: Richard Levitte Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3159) View the changeset: https://github.com/openssl/openssl/compare/745dec3aed75...0856e3f16796 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/220983474 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From rsalz at openssl.org Tue Apr 11 16:10:32 2017 From: rsalz at openssl.org (Rich Salz) Date: Tue, 11 Apr 2017 16:10:32 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491927032.716959.4476.nullmailer@dev.openssl.org> The branch master has been updated via cbbe9186f3d625f98aecb3f4dd4aaf457066b25c (commit) from 0856e3f167964f58c26796331eab9d8b0a883921 (commit) - Log ----------------------------------------------------------------- commit cbbe9186f3d625f98aecb3f4dd4aaf457066b25c Author: Rich Salz Date: Tue Apr 11 11:59:59 2017 -0400 Additional check to handle BAD SSL_write retry Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3124) ----------------------------------------------------------------------- Summary of changes: ssl/record/rec_layer_s3.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ssl/record/rec_layer_s3.c b/ssl/record/rec_layer_s3.c index 562b9e4..14c6778 100644 --- a/ssl/record/rec_layer_s3.c +++ b/ssl/record/rec_layer_s3.c @@ -356,7 +356,8 @@ int ssl3_write_bytes(SSL *s, int type, const void *buf_, size_t len, * promptly send beyond the end of the users buffer ... so we trap and * report the error in a way the user will notice */ - if (len < s->rlayer.wnum) { + if ((len < s->rlayer.wnum) + || ((wb->left != 0) && (len < (s->rlayer.wnum + s->rlayer.wpend_tot)))) { SSLerr(SSL_F_SSL3_WRITE_BYTES, SSL_R_BAD_LENGTH); return -1; } From rsalz at openssl.org Tue Apr 11 16:16:28 2017 From: rsalz at openssl.org (Rich Salz) Date: Tue, 11 Apr 2017 16:16:28 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1491927388.444819.6044.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 6302d9373829ff37c257d93f8566f2272968d67d (commit) from 376dc4e06b4936ff0c9c53b8f53795d0b3774ab3 (commit) - Log ----------------------------------------------------------------- commit 6302d9373829ff37c257d93f8566f2272968d67d Author: Rich Salz Date: Tue Apr 11 12:11:34 2017 -0400 Additional check to handle BAD SSL_write retry Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3123) ----------------------------------------------------------------------- Summary of changes: ssl/record/rec_layer_s3.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ssl/record/rec_layer_s3.c b/ssl/record/rec_layer_s3.c index 2f105a4..c533bbd 100644 --- a/ssl/record/rec_layer_s3.c +++ b/ssl/record/rec_layer_s3.c @@ -368,7 +368,8 @@ int ssl3_write_bytes(SSL *s, int type, const void *buf_, int len) * promptly send beyond the end of the users buffer ... so we trap and * report the error in a way the user will notice */ - if ((unsigned int)len < s->rlayer.wnum) { + if (((unsigned int)len < s->rlayer.wnum) + || ((wb->left != 0) && ((unsigned int)len < (s->rlayer.wnum + s->rlayer.wpend_tot)))) { SSLerr(SSL_F_SSL3_WRITE_BYTES, SSL_R_BAD_LENGTH); return -1; } From rsalz at openssl.org Tue Apr 11 16:20:36 2017 From: rsalz at openssl.org (Rich Salz) Date: Tue, 11 Apr 2017 16:20:36 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_0_2-stable update Message-ID: <1491927636.427909.7331.nullmailer@dev.openssl.org> The branch OpenSSL_1_0_2-stable has been updated via 71d66c46c725a88a8d14b747610656e15610109e (commit) from a91bfe2f55892f625d5a30171efa0fdfd2814abe (commit) - Log ----------------------------------------------------------------- commit 71d66c46c725a88a8d14b747610656e15610109e Author: Rich Salz Date: Tue Apr 11 12:17:54 2017 -0400 Additional check to handle BAD SSL_write retry Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3122) ----------------------------------------------------------------------- Summary of changes: ssl/s3_pkt.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ssl/s3_pkt.c b/ssl/s3_pkt.c index 39cdbaf..0290c99 100644 --- a/ssl/s3_pkt.c +++ b/ssl/s3_pkt.c @@ -670,7 +670,7 @@ int ssl3_write_bytes(SSL *s, int type, const void *buf_, int len) * promptly send beyond the end of the users buffer ... so we trap and * report the error in a way the user will notice */ - if (len < tot) { + if ((len < tot) || ((wb->left != 0) && (len < (tot + s->s3->wpend_tot)))) { SSLerr(SSL_F_SSL3_WRITE_BYTES, SSL_R_BAD_LENGTH); return (-1); } From builds at travis-ci.org Tue Apr 11 16:32:40 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 11 Apr 2017 16:32:40 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10157 (master - cbbe918) In-Reply-To: Message-ID: <58ed0527eb95d_43fd1a62ebaa01042126@d224b872-5ec6-4ebd-a0d8-b4aef5018b19.mail> Build Update for openssl/openssl ------------------------------------- Build: #10157 Status: Still Failing Duration: 20 minutes and 1 second Commit: cbbe918 (master) Author: Rich Salz Message: Additional check to handle BAD SSL_write retry Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3124) View the changeset: https://github.com/openssl/openssl/compare/0856e3f16796...cbbe9186f3d6 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221021008 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From rsalz at openssl.org Tue Apr 11 17:38:40 2017 From: rsalz at openssl.org (Rich Salz) Date: Tue, 11 Apr 2017 17:38:40 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491932320.199993.18120.nullmailer@dev.openssl.org> The branch master has been updated via fe55c4a20f79c77c64a082c5df2c5e8a61317162 (commit) from cbbe9186f3d625f98aecb3f4dd4aaf457066b25c (commit) - Log ----------------------------------------------------------------- commit fe55c4a20f79c77c64a082c5df2c5e8a61317162 Author: Todd Short Date: Tue Apr 11 09:02:05 2017 -0400 Remove ECDH(E) ciphers from SSLv3 SSLv3 does not support TLS extensions, and thus, cannot provide any curves for ECDH(E). With the removal of the default (all) list of curves being used for connections that didn't provide any curves, ECDHE is no longer possible. Reviewed-by: Kurt Roeckx Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3181) ----------------------------------------------------------------------- Summary of changes: ssl/s3_lib.c | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/ssl/s3_lib.c b/ssl/s3_lib.c index 54c49ab..289dc51 100644 --- a/ssl/s3_lib.c +++ b/ssl/s3_lib.c @@ -931,7 +931,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aECDSA, SSL_eNULL, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_STRONG_NONE | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -947,7 +947,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aECDSA, SSL_3DES, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_NOT_DEFAULT | SSL_MEDIUM | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -963,7 +963,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aECDSA, SSL_AES128, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_HIGH | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -978,7 +978,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aECDSA, SSL_AES256, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_HIGH | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -993,7 +993,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aRSA, SSL_eNULL, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_STRONG_NONE | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -1009,7 +1009,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aRSA, SSL_3DES, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_NOT_DEFAULT | SSL_MEDIUM | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -1025,7 +1025,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aRSA, SSL_AES128, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_HIGH | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -1040,7 +1040,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aRSA, SSL_AES256, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_HIGH | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -1055,7 +1055,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aNULL, SSL_eNULL, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_STRONG_NONE | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -1071,7 +1071,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aNULL, SSL_3DES, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_NOT_DEFAULT | SSL_MEDIUM | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -1087,7 +1087,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aNULL, SSL_AES128, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_NOT_DEFAULT | SSL_HIGH | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -1102,7 +1102,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aNULL, SSL_AES256, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_NOT_DEFAULT | SSL_HIGH | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -1698,7 +1698,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aPSK, SSL_3DES, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_NOT_DEFAULT | SSL_MEDIUM | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -1714,7 +1714,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aPSK, SSL_AES128, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_HIGH | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -1729,7 +1729,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aPSK, SSL_AES256, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_HIGH | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -1774,7 +1774,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aPSK, SSL_eNULL, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_STRONG_NONE | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -2701,7 +2701,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aPSK, SSL_RC4, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, 0, 0, SSL_NOT_DEFAULT | SSL_MEDIUM, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -2716,7 +2716,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aNULL, SSL_RC4, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, 0, 0, SSL_NOT_DEFAULT | SSL_MEDIUM, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -2731,7 +2731,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aECDSA, SSL_RC4, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, 0, 0, SSL_NOT_DEFAULT | SSL_MEDIUM, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -2746,7 +2746,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aRSA, SSL_RC4, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, 0, 0, SSL_NOT_DEFAULT | SSL_MEDIUM, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, From rsalz at openssl.org Tue Apr 11 17:39:03 2017 From: rsalz at openssl.org (Rich Salz) Date: Tue, 11 Apr 2017 17:39:03 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1491932343.732668.18969.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 9d522f08817b6e706ae54c2688b215ff1c631b49 (commit) from 6302d9373829ff37c257d93f8566f2272968d67d (commit) - Log ----------------------------------------------------------------- commit 9d522f08817b6e706ae54c2688b215ff1c631b49 Author: Todd Short Date: Tue Apr 11 09:02:05 2017 -0400 Remove ECDH(E) ciphers from SSLv3 SSLv3 does not support TLS extensions, and thus, cannot provide any curves for ECDH(E). With the removal of the default (all) list of curves being used for connections that didn't provide any curves, ECDHE is no longer possible. Reviewed-by: Kurt Roeckx Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3181) (cherry picked from commit fe55c4a20f79c77c64a082c5df2c5e8a61317162) ----------------------------------------------------------------------- Summary of changes: ssl/s3_lib.c | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/ssl/s3_lib.c b/ssl/s3_lib.c index e94ee83..bbfed91 100644 --- a/ssl/s3_lib.c +++ b/ssl/s3_lib.c @@ -844,7 +844,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aECDSA, SSL_eNULL, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_STRONG_NONE | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -860,7 +860,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aECDSA, SSL_3DES, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_NOT_DEFAULT | SSL_MEDIUM | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -876,7 +876,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aECDSA, SSL_AES128, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_HIGH | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -891,7 +891,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aECDSA, SSL_AES256, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_HIGH | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -906,7 +906,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aRSA, SSL_eNULL, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_STRONG_NONE | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -922,7 +922,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aRSA, SSL_3DES, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_NOT_DEFAULT | SSL_MEDIUM | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -938,7 +938,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aRSA, SSL_AES128, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_HIGH | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -953,7 +953,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aRSA, SSL_AES256, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_HIGH | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -968,7 +968,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aNULL, SSL_eNULL, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_STRONG_NONE | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -984,7 +984,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aNULL, SSL_3DES, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_NOT_DEFAULT | SSL_MEDIUM | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -1000,7 +1000,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aNULL, SSL_AES128, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_NOT_DEFAULT | SSL_HIGH | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -1015,7 +1015,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aNULL, SSL_AES256, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_NOT_DEFAULT | SSL_HIGH | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -1611,7 +1611,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aPSK, SSL_3DES, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_NOT_DEFAULT | SSL_MEDIUM | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -1627,7 +1627,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aPSK, SSL_AES128, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_HIGH | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -1642,7 +1642,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aPSK, SSL_AES256, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_HIGH | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -1687,7 +1687,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aPSK, SSL_eNULL, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, DTLS1_BAD_VER, DTLS1_2_VERSION, SSL_STRONG_NONE | SSL_FIPS, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -2614,7 +2614,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aPSK, SSL_RC4, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, 0, 0, SSL_NOT_DEFAULT | SSL_MEDIUM, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -2629,7 +2629,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aNULL, SSL_RC4, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, 0, 0, SSL_NOT_DEFAULT | SSL_MEDIUM, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -2644,7 +2644,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aECDSA, SSL_RC4, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, 0, 0, SSL_NOT_DEFAULT | SSL_MEDIUM, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, @@ -2659,7 +2659,7 @@ static SSL_CIPHER ssl3_ciphers[] = { SSL_aRSA, SSL_RC4, SSL_SHA1, - SSL3_VERSION, TLS1_2_VERSION, + TLS1_VERSION, TLS1_2_VERSION, 0, 0, SSL_NOT_DEFAULT | SSL_MEDIUM, SSL_HANDSHAKE_MAC_DEFAULT | TLS1_PRF, From builds at travis-ci.org Tue Apr 11 18:05:05 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 11 Apr 2017 18:05:05 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10163 (master - fe55c4a) In-Reply-To: Message-ID: <58ed1ad8b0a3c_43fc9bf1adec0153371@5145e08d-18ed-4f9d-818d-021bf0aa4515.mail> Build Update for openssl/openssl ------------------------------------- Build: #10163 Status: Still Failing Duration: 19 minutes and 46 seconds Commit: fe55c4a (master) Author: Todd Short Message: Remove ECDH(E) ciphers from SSLv3 SSLv3 does not support TLS extensions, and thus, cannot provide any curves for ECDH(E). With the removal of the default (all) list of curves being used for connections that didn't provide any curves, ECDHE is no longer possible. Reviewed-by: Kurt Roeckx Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3181) View the changeset: https://github.com/openssl/openssl/compare/cbbe9186f3d6...fe55c4a20f79 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221049329 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From levitte at openssl.org Tue Apr 11 20:08:50 2017 From: levitte at openssl.org (Richard Levitte) Date: Tue, 11 Apr 2017 20:08:50 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491941330.218919.32525.nullmailer@dev.openssl.org> The branch master has been updated via 429223d198aabacd129cf6dde5a4203b5af41737 (commit) via afd7cae2713e407bce5cd7bbc47fcf9c1d7c3862 (commit) from fe55c4a20f79c77c64a082c5df2c5e8a61317162 (commit) - Log ----------------------------------------------------------------- commit 429223d198aabacd129cf6dde5a4203b5af41737 Author: Richard Levitte Date: Mon Apr 10 22:01:05 2017 +0200 Fix x_int64.c Clearing a misunderstanding. The routines c2i_uint64_int() and i2c_uint64_int() expect to receive that internal values are absolute and with a separate sign flag, and the x_int64.c code handles values that aren't absolute and have the sign bit embedded. We therefore need to convert between absolute and non-absolute values for the encoding of negative values to be correct. [extended tests] Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3160) commit afd7cae2713e407bce5cd7bbc47fcf9c1d7c3862 Author: Richard Levitte Date: Mon Apr 10 21:50:25 2017 +0200 Fix int64 test of t_4bytes_4_neg { 0x80, 0x00, 0x00, 0x00 } decoded isn't (positive) 0x80000000, it's (negative) INT32_MIN. Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3160) ----------------------------------------------------------------------- Summary of changes: crypto/asn1/x_int64.c | 39 +++++++++++++++++++++++++++++++-------- test/asn1_encode_test.c | 5 +++-- 2 files changed, 34 insertions(+), 10 deletions(-) diff --git a/crypto/asn1/x_int64.c b/crypto/asn1/x_int64.c index 33e4061..63a3277 100644 --- a/crypto/asn1/x_int64.c +++ b/crypto/asn1/x_int64.c @@ -52,8 +52,11 @@ static int uint64_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, && utmp == 0) return -1; if ((it->size & INTxx_FLAG_SIGNED) == INTxx_FLAG_SIGNED - && (int64_t)utmp < 0) + && (int64_t)utmp < 0) { + /* i2c_uint64_int() assumes positive values */ + utmp = 0 - utmp; neg = 1; + } return i2c_uint64_int(cont, utmp, neg); } @@ -76,6 +79,9 @@ static int uint64_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, ASN1err(ASN1_F_UINT64_C2I, ASN1_R_TOO_LARGE); return 0; } + if (neg) + /* c2i_uint64_int() returns positive values */ + utmp = 0 - utmp; memcpy(cp, &utmp, sizeof(utmp)); return 1; } @@ -116,12 +122,22 @@ static int uint32_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, && utmp == 0) return -1; if ((it->size & INTxx_FLAG_SIGNED) == INTxx_FLAG_SIGNED - && (int32_t)utmp < 0) + && (int32_t)utmp < 0) { + /* i2c_uint64_int() assumes positive values */ + utmp = 0 - utmp; neg = 1; + } return i2c_uint64_int(cont, (uint64_t)utmp, neg); } +/* + * Absolute value of INT32_MIN: we can't just use -INT32_MIN as it produces + * overflow warnings. + */ + +#define ABS_INT32_MIN ((uint32_t)INT32_MAX + 1) + static int uint32_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, int utype, char *free_cont, const ASN1_ITEM *it) { @@ -136,13 +152,20 @@ static int uint32_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, ASN1err(ASN1_F_UINT32_C2I, ASN1_R_ILLEGAL_NEGATIVE_VALUE); return 0; } - utmp2 = (uint32_t)utmp; - if (utmp != utmp2 - || ((it->size & INTxx_FLAG_SIGNED) == INTxx_FLAG_SIGNED - && !neg && utmp2 > INT32_MAX)) { - ASN1err(ASN1_F_UINT32_C2I, ASN1_R_TOO_LARGE); - return 0; + if (neg) { + if (utmp > ABS_INT32_MIN) { + ASN1err(ASN1_F_UINT32_C2I, ASN1_R_TOO_SMALL); + return 0; + } + utmp = 0 - utmp; + } else { + if (((it->size & INTxx_FLAG_SIGNED) != 0 && utmp > INT32_MAX) + || ((it->size & INTxx_FLAG_SIGNED) == 0 && utmp > UINT32_MAX)) { + ASN1err(ASN1_F_UINT32_C2I, ASN1_R_TOO_LARGE); + return 0; + } } + utmp2 = (uint32_t)utmp; memcpy(cp, &utmp2, sizeof(utmp2)); return 1; } diff --git a/test/asn1_encode_test.c b/test/asn1_encode_test.c index 45e3005..36cf7f9 100644 --- a/test/asn1_encode_test.c +++ b/test/asn1_encode_test.c @@ -381,7 +381,7 @@ static ASN1_INT64_DATA int64_expected[] = { CUSTOM_EXPECTED_SUCCESS(0x80000000, 0x80000000), /* t_4bytes_1 */ CUSTOM_EXPECTED_SUCCESS(INT32_MAX - 1, INT32_MAX -1), /* t_4bytes_2 */ CUSTOM_EXPECTED_FAILURE, /* t_4bytes_3_pad (illegal padding) */ - CUSTOM_EXPECTED_SUCCESS(0x80000000, 0x80000000), /* t_4bytes_4_neg */ + CUSTOM_EXPECTED_SUCCESS(INT32_MIN, INT32_MIN), /* t_4bytes_4_neg */ CUSTOM_EXPECTED_FAILURE, /* t_4bytes_5_negpad (illegal padding) */ }; static ASN1_INT64_DATA int64_encdec_data[] = { @@ -419,7 +419,8 @@ static ASN1_UINT64_DATA uint64_expected[] = { CUSTOM_EXPECTED_SUCCESS(ASN1_LONG_UNDEF, ASN1_LONG_UNDEF), /* t_zero */ CUSTOM_EXPECTED_SUCCESS(1, 1), /* t_one */ CUSTOM_EXPECTED_FAILURE, /* t_9bytes_1 */ - CUSTOM_EXPECTED_SUCCESS(INT64_MIN, INT64_MIN), /* t_8bytes_1 */ + CUSTOM_EXPECTED_SUCCESS((uint64_t)INT64_MAX+1, (uint64_t)INT64_MAX+1), + /* t_8bytes_1 */ CUSTOM_EXPECTED_SUCCESS(INT64_MAX, INT64_MAX), /* t_8bytes_2 */ CUSTOM_EXPECTED_FAILURE, /* t_8bytes_3_pad */ CUSTOM_EXPECTED_FAILURE, /* t_8bytes_4_neg */ From levitte at openssl.org Tue Apr 11 20:09:40 2017 From: levitte at openssl.org (Richard Levitte) Date: Tue, 11 Apr 2017 20:09:40 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1491941380.894096.979.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 8e4fa6f7f0a1f648911088c2f1e432ca8c2b78e5 (commit) from 9d522f08817b6e706ae54c2688b215ff1c631b49 (commit) - Log ----------------------------------------------------------------- commit 8e4fa6f7f0a1f648911088c2f1e432ca8c2b78e5 Author: Richard Levitte Date: Mon Apr 10 22:01:05 2017 +0200 Fix x_int64.c Clearing a misunderstanding. The routines c2i_uint64_int() and i2c_uint64_int() expect to receive that internal values are absolute and with a separate sign flag, and the x_int64.c code handles values that aren't absolute and have the sign bit embedded. We therefore need to convert between absolute and non-absolute values for the encoding of negative values to be correct. [extended tests] Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3160) (cherry picked from commit 429223d198aabacd129cf6dde5a4203b5af41737) ----------------------------------------------------------------------- Summary of changes: crypto/asn1/x_int64.c | 39 +++++++++++++++++++++++++++++++-------- 1 file changed, 31 insertions(+), 8 deletions(-) diff --git a/crypto/asn1/x_int64.c b/crypto/asn1/x_int64.c index 26578b2..eb3bf8f 100644 --- a/crypto/asn1/x_int64.c +++ b/crypto/asn1/x_int64.c @@ -52,8 +52,11 @@ static int uint64_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, && utmp == 0) return -1; if ((it->size & INTxx_FLAG_SIGNED) == INTxx_FLAG_SIGNED - && (int64_t)utmp < 0) + && (int64_t)utmp < 0) { + /* i2c_uint64_int() assumes positive values */ + utmp = 0 - utmp; neg = 1; + } return i2c_uint64_int(cont, utmp, neg); } @@ -76,6 +79,9 @@ static int uint64_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, ASN1err(ASN1_F_UINT64_C2I, ASN1_R_TOO_LARGE); return 0; } + if (neg) + /* c2i_uint64_int() returns positive values */ + utmp = 0 - utmp; memcpy(cp, &utmp, sizeof(utmp)); return 1; } @@ -116,12 +122,22 @@ static int uint32_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, && utmp == 0) return -1; if ((it->size & INTxx_FLAG_SIGNED) == INTxx_FLAG_SIGNED - && (int32_t)utmp < 0) + && (int32_t)utmp < 0) { + /* i2c_uint64_int() assumes positive values */ + utmp = 0 - utmp; neg = 1; + } return i2c_uint64_int(cont, (uint64_t)utmp, neg); } +/* + * Absolute value of INT32_MIN: we can't just use -INT32_MIN as it produces + * overflow warnings. + */ + +#define ABS_INT32_MIN ((uint32_t)INT32_MAX + 1) + static int uint32_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, int utype, char *free_cont, const ASN1_ITEM *it) { @@ -136,13 +152,20 @@ static int uint32_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, ASN1err(ASN1_F_UINT32_C2I, ASN1_R_ILLEGAL_NEGATIVE_VALUE); return 0; } - utmp2 = (uint32_t)utmp; - if (utmp != utmp2 - || ((it->size & INTxx_FLAG_SIGNED) == INTxx_FLAG_SIGNED - && !neg && utmp2 > INT32_MAX)) { - ASN1err(ASN1_F_UINT32_C2I, ASN1_R_TOO_LARGE); - return 0; + if (neg) { + if (utmp > ABS_INT32_MIN) { + ASN1err(ASN1_F_UINT32_C2I, ASN1_R_TOO_SMALL); + return 0; + } + utmp = 0 - utmp; + } else { + if (((it->size & INTxx_FLAG_SIGNED) != 0 && utmp > INT32_MAX) + || ((it->size & INTxx_FLAG_SIGNED) == 0 && utmp > UINT32_MAX)) { + ASN1err(ASN1_F_UINT32_C2I, ASN1_R_TOO_LARGE); + return 0; + } } + utmp2 = (uint32_t)utmp; memcpy(cp, &utmp2, sizeof(utmp2)); return 1; } From builds at travis-ci.org Tue Apr 11 20:30:04 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 11 Apr 2017 20:30:04 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10166 (master - 429223d) In-Reply-To: Message-ID: <58ed3ccadf826_43fc9b75e1cec1760541@5145e08d-18ed-4f9d-818d-021bf0aa4515.mail> Build Update for openssl/openssl ------------------------------------- Build: #10166 Status: Still Failing Duration: 19 minutes and 25 seconds Commit: 429223d (master) Author: Richard Levitte Message: Fix x_int64.c Clearing a misunderstanding. The routines c2i_uint64_int() and i2c_uint64_int() expect to receive that internal values are absolute and with a separate sign flag, and the x_int64.c code handles values that aren't absolute and have the sign bit embedded. We therefore need to convert between absolute and non-absolute values for the encoding of negative values to be correct. [extended tests] Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3160) View the changeset: https://github.com/openssl/openssl/compare/fe55c4a20f79...429223d198aa View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221098597 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From matt at openssl.org Tue Apr 11 22:47:18 2017 From: matt at openssl.org (Matt Caswell) Date: Tue, 11 Apr 2017 22:47:18 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491950838.955463.18579.nullmailer@dev.openssl.org> The branch master has been updated via 829b2b854332bb3ccacc12c86e8fac1cfebb03bb (commit) from 429223d198aabacd129cf6dde5a4203b5af41737 (commit) - Log ----------------------------------------------------------------- commit 829b2b854332bb3ccacc12c86e8fac1cfebb03bb Author: Matt Caswell Date: Tue Apr 11 16:26:13 2017 +0100 Convert bad_dtls_test for the new test framework Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3184) ----------------------------------------------------------------------- Summary of changes: test/bad_dtls_test.c | 218 +++++++++++++++++++++------------------------------ test/build.info | 2 +- 2 files changed, 92 insertions(+), 128 deletions(-) diff --git a/test/bad_dtls_test.c b/test/bad_dtls_test.c index 1408a13..43733e9 100644 --- a/test/bad_dtls_test.c +++ b/test/bad_dtls_test.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -41,6 +41,9 @@ #include "../ssl/packet_locl.h" #include "../e_os.h" /* for OSSL_NELEM() */ +#include "test_main.h" +#include "testutil.h" + /* For DTLS1_BAD_VER packets the MAC doesn't include the handshake header */ #define MAC_OFFSET (DTLS1_RT_HEADER_LENGTH + DTLS1_HM_HEADER_LENGTH) @@ -182,7 +185,7 @@ static int validate_client_hello(BIO *wbio) /* Update handshake MAC for second ClientHello (with cookie) */ if (cookie_found && !EVP_DigestUpdate(handshake_md, data + MAC_OFFSET, len - MAC_OFFSET)) - printf("EVP_DigestUpdate() failed\n"); + return 0; (void)BIO_reset(wbio); @@ -259,7 +262,7 @@ static int send_server_hello(BIO *rbio) if (!EVP_DigestUpdate(handshake_md, server_hello + MAC_OFFSET, sizeof(server_hello) - MAC_OFFSET)) - printf("EVP_DigestUpdate() failed\n"); + return 0; BIO_write(rbio, server_hello, sizeof(server_hello)); BIO_write(rbio, change_cipher_spec, sizeof(change_cipher_spec)); @@ -268,7 +271,7 @@ static int send_server_hello(BIO *rbio) } /* Create header, HMAC, pad, encrypt and send a record */ -static int send_record(BIO *rbio, unsigned char type, unsigned long seqnr, +static int send_record(BIO *rbio, unsigned char type, uint64_t seqnr, const void *msg, size_t len) { /* Note that the order of the record header fields on the wire, @@ -284,10 +287,8 @@ static int send_record(BIO *rbio, unsigned char type, unsigned long seqnr, unsigned char pad; unsigned char *enc; -#ifdef SIXTY_FOUR_BIT_LONG seq[0] = (seqnr >> 40) & 0xff; seq[1] = (seqnr >> 32) & 0xff; -#endif seq[2] = (seqnr >> 24) & 0xff; seq[3] = (seqnr >> 16) & 0xff; seq[4] = (seqnr >> 8) & 0xff; @@ -365,7 +366,7 @@ static int send_finished(SSL *s, BIO *rbio) /* Generate Finished MAC */ if (!EVP_DigestFinal_ex(handshake_md, handshake_hash, NULL)) - printf("EVP_DigestFinal_ex() failed\n"); + return 0; do_PRF(TLS_MD_SERVER_FINISH_CONST, TLS_MD_SERVER_FINISH_CONST_SIZE, handshake_hash, EVP_MD_CTX_size(handshake_md), @@ -428,7 +429,7 @@ static int validate_ccs(BIO *wbio) #define DROP(x) { x##UL, 1 } static struct { - unsigned long seq; + uint64_t seq; int drop; } tests[] = { NODROP(1), NODROP(3), NODROP(2), @@ -443,24 +444,18 @@ static struct { /* The last test should be NODROP, because a DROP wouldn't get tested. */ }; -int main(int argc, char *argv[]) +static int test_bad_dtls(void) { - SSL_SESSION *sess; - SSL_CTX *ctx; - SSL *con; - BIO *rbio; - BIO *wbio; - BIO *err; + SSL_SESSION *sess = NULL; + SSL_CTX *ctx = NULL; + SSL *con = NULL; + BIO *rbio = NULL; + BIO *wbio = NULL; time_t now = 0; int testresult = 0; int ret; int i; - err = BIO_new_fp(stderr, BIO_NOCLOSE | BIO_FP_TEXT); - - CRYPTO_set_mem_debug(1); - CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON); - RAND_bytes(session_id, sizeof(session_id)); RAND_bytes(master_secret, sizeof(master_secret)); RAND_bytes(cookie, sizeof(cookie)); @@ -470,99 +465,78 @@ int main(int argc, char *argv[]) memcpy(server_random, &now, sizeof(now)); sess = client_session(); - if (sess == NULL) { - printf("Failed to generate SSL_SESSION\n"); + if (!TEST_ptr(sess)) goto end; - } handshake_md = EVP_MD_CTX_new(); - if (handshake_md == NULL || - !EVP_DigestInit_ex(handshake_md, EVP_md5_sha1(), NULL)) { - printf("Failed to initialise handshake_md\n"); + if (!TEST_ptr(handshake_md) + || !TEST_true(EVP_DigestInit_ex(handshake_md, EVP_md5_sha1(), + NULL))) goto end; - } ctx = SSL_CTX_new(DTLS_client_method()); - if (ctx == NULL) { - printf("Failed to allocate SSL_CTX\n"); - goto end_md; - } - if (!SSL_CTX_set_min_proto_version(ctx, DTLS1_BAD_VER)) { - printf("SSL_CTX_set_min_proto_version() failed\n"); - goto end_ctx; - } - if (!SSL_CTX_set_max_proto_version(ctx, DTLS1_BAD_VER)) { - printf("SSL_CTX_set_max_proto_version() failed\n"); - goto end_ctx; - } - - if (!SSL_CTX_set_cipher_list(ctx, "AES128-SHA")) { - printf("SSL_CTX_set_cipher_list() failed\n"); - goto end_ctx; - } + if (!TEST_ptr(ctx) + || !TEST_true(SSL_CTX_set_min_proto_version(ctx, DTLS1_BAD_VER)) + || !TEST_true(SSL_CTX_set_max_proto_version(ctx, DTLS1_BAD_VER)) + || !TEST_true(SSL_CTX_set_cipher_list(ctx, "AES128-SHA"))) + goto end; con = SSL_new(ctx); - if (!SSL_set_session(con, sess)) { - printf("SSL_set_session() failed\n"); - goto end_con; - } + if (!TEST_ptr(con) + || !TEST_true(SSL_set_session(con, sess))) + goto end; SSL_SESSION_free(sess); rbio = BIO_new(BIO_s_mem()); wbio = BIO_new(BIO_s_mem()); - BIO_set_nbio(rbio, 1); - BIO_set_nbio(wbio, 1); + if (!TEST_ptr(rbio) + || !TEST_ptr(wbio)) + goto end; SSL_set_bio(con, rbio, wbio); + + if (!TEST_true(BIO_up_ref(rbio))) { + /* + * We can't up-ref but we assigned ownership to con, so we shouldn't + * free in the "end" block + */ + rbio = wbio = NULL; + goto end; + } + + if (!TEST_true(BIO_up_ref(wbio))) { + wbio = NULL; + goto end; + } + SSL_set_connect_state(con); /* Send initial ClientHello */ ret = SSL_do_handshake(con); - if (ret > 0 || SSL_get_error(con, ret) != SSL_ERROR_WANT_READ) { - printf("Unexpected handshake result at initial call!\n"); - goto end_con; - } + if (!TEST_int_le(ret, 0) + || !TEST_int_eq(SSL_get_error(con, ret), SSL_ERROR_WANT_READ) + || !TEST_int_eq(validate_client_hello(wbio), 1) + || !TEST_true(send_hello_verify(rbio))) + goto end; - if (validate_client_hello(wbio) != 1) { - printf("Initial ClientHello failed validation\n"); - goto end_con; - } - if (send_hello_verify(rbio) != 1) { - printf("Failed to send HelloVerify\n"); - goto end_con; - } ret = SSL_do_handshake(con); - if (ret > 0 || SSL_get_error(con, ret) != SSL_ERROR_WANT_READ) { - printf("Unexpected handshake result after HelloVerify!\n"); - goto end_con; - } - if (validate_client_hello(wbio) != 2) { - printf("Second ClientHello failed validation\n"); - goto end_con; - } - if (send_server_hello(rbio) != 1) { - printf("Failed to send ServerHello\n"); - goto end_con; - } + if (!TEST_int_le(ret, 0) + || !TEST_int_eq(SSL_get_error(con, ret), SSL_ERROR_WANT_READ) + || !TEST_int_eq(validate_client_hello(wbio), 2) + || !TEST_true(send_server_hello(rbio))) + goto end; + ret = SSL_do_handshake(con); - if (ret > 0 || SSL_get_error(con, ret) != SSL_ERROR_WANT_READ) { - printf("Unexpected handshake result after ServerHello!\n"); - goto end_con; - } - if (send_finished(con, rbio) != 1) { - printf("Failed to send Finished\n"); - goto end_con; - } + if (!TEST_int_le(ret, 0) + || !TEST_int_eq(SSL_get_error(con, ret), SSL_ERROR_WANT_READ) + || !TEST_true(send_finished(con, rbio))) + goto end; + ret = SSL_do_handshake(con); - if (ret < 1) { - printf("Handshake not successful after Finished!\n"); - goto end_con; - } - if (validate_ccs(wbio) != 1) { - printf("Failed to validate client CCS/Finished\n"); - goto end_con; - } + if (!TEST_int_gt(ret, 0) + || !TEST_true(validate_ccs(wbio))) + goto end; /* While we're here and crafting packets by hand, we might as well do a bit of a stress test on the DTLS record replay handling. Not Cisco-DTLS @@ -570,55 +544,45 @@ int main(int argc, char *argv[]) before, and in fact was broken even for a basic 0, 2, 1 test case when this test was first added.... */ for (i = 0; i < (int)OSSL_NELEM(tests); i++) { - unsigned long recv_buf[2]; + uint64_t recv_buf[2]; - if (send_record(rbio, SSL3_RT_APPLICATION_DATA, tests[i].seq, - &tests[i].seq, sizeof(unsigned long)) != 1) { - printf("Failed to send data seq #0x%lx (%d)\n", - tests[i].seq, i); - goto end_con; + if (!TEST_true(send_record(rbio, SSL3_RT_APPLICATION_DATA, tests[i].seq, + &tests[i].seq, sizeof(uint64_t)))) { + TEST_error("Failed to send data seq #0x%lx (%d)\n", + tests[i].seq, i); + goto end; } if (tests[i].drop) continue; - ret = SSL_read(con, recv_buf, 2 * sizeof(unsigned long)); - if (ret != sizeof(unsigned long)) { - printf("SSL_read failed or wrong size on seq#0x%lx (%d)\n", - tests[i].seq, i); - goto end_con; - } - if (recv_buf[0] != tests[i].seq) { - printf("Wrong data packet received (0x%lx not 0x%lx) at packet %d\n", - recv_buf[0], tests[i].seq, i); - goto end_con; + ret = SSL_read(con, recv_buf, 2 * sizeof(uint64_t)); + if (!TEST_int_eq(ret, (int)sizeof(uint64_t))) { + TEST_error("SSL_read failed or wrong size on seq#0x%lx (%d)\n", + tests[i].seq, i); + goto end; } + if (!TEST_true(recv_buf[0] == tests[i].seq)) + goto end; } - if (tests[i-1].drop) { - printf("Error: last test cannot be DROP()\n"); - goto end_con; - } - testresult=1; - end_con: + /* The last test cannot be DROP() */ + if (!TEST_false(tests[i-1].drop)) + goto end; + + testresult = 1; + + end: + BIO_free(rbio); + BIO_free(wbio); SSL_free(con); - end_ctx: SSL_CTX_free(ctx); - end_md: EVP_MD_CTX_free(handshake_md); - end: - ERR_print_errors_fp(stderr); - - if (!testresult) { - printf("Cisco BadDTLS test: FAILED\n"); - } + return testresult; +} -#ifndef OPENSSL_NO_CRYPTO_MDEBUG - if (CRYPTO_mem_leaks(err) <= 0) - testresult = 0; -#endif - BIO_free(err); - - return testresult?0:1; +void register_tests(void) +{ + ADD_TEST(test_bad_dtls); } diff --git a/test/build.info b/test/build.info index 666cf53..0d82469 100644 --- a/test/build.info +++ b/test/build.info @@ -191,7 +191,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[clienthellotest]=../include DEPEND[clienthellotest]=../libcrypto ../libssl - SOURCE[bad_dtls_test]=bad_dtls_test.c + SOURCE[bad_dtls_test]=bad_dtls_test.c testutil.c test_main.c INCLUDE[bad_dtls_test]=../include DEPEND[bad_dtls_test]=../libcrypto ../libssl From matt at openssl.org Tue Apr 11 23:01:54 2017 From: matt at openssl.org (Matt Caswell) Date: Tue, 11 Apr 2017 23:01:54 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491951714.421427.22764.nullmailer@dev.openssl.org> The branch master has been updated via c79107961046be77ea4509991f97b8627d25ddc1 (commit) from 829b2b854332bb3ccacc12c86e8fac1cfebb03bb (commit) - Log ----------------------------------------------------------------- commit c79107961046be77ea4509991f97b8627d25ddc1 Author: Matt Caswell Date: Tue Apr 11 15:23:07 2017 +0100 Convert asynciotest for the new test framework Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3182) ----------------------------------------------------------------------- Summary of changes: test/asynciotest.c | 217 +++++++++++++++++++++++++---------------------------- test/build.info | 2 +- 2 files changed, 103 insertions(+), 116 deletions(-) diff --git a/test/asynciotest.c b/test/asynciotest.c index f418bbe..f78b86f 100644 --- a/test/asynciotest.c +++ b/test/asynciotest.c @@ -16,10 +16,15 @@ #include "../ssl/packet_locl.h" #include "ssltestlib.h" +#include "testutil.h" +#include "test_main_custom.h" /* Should we fragment records or not? 0 = no, !0 = yes*/ static int fragment = 0; +static char *cert = NULL; +static char *privkey = NULL; + static int async_new(BIO *bi); static int async_free(BIO *a); static int async_read(BIO *b, char *out, int outl); @@ -139,18 +144,18 @@ static int async_write(BIO *bio, const char *in, int inl) PACKET pkt; if (!PACKET_buf_init(&pkt, (const unsigned char *)in, inl)) - abort(); + return -1; while (PACKET_remaining(&pkt) > 0) { PACKET payload, wholebody; unsigned int contenttype, versionhi, versionlo, data; unsigned int msgtype = 0, negversion = 0; - if ( !PACKET_get_1(&pkt, &contenttype) - || !PACKET_get_1(&pkt, &versionhi) - || !PACKET_get_1(&pkt, &versionlo) - || !PACKET_get_length_prefixed_2(&pkt, &payload)) - abort(); + if (!PACKET_get_1(&pkt, &contenttype) + || !PACKET_get_1(&pkt, &versionhi) + || !PACKET_get_1(&pkt, &versionlo) + || !PACKET_get_length_prefixed_2(&pkt, &payload)) + return -1; /* Pretend we wrote out the record header */ written += SSL3_RT_HEADER_LENGTH; @@ -158,13 +163,13 @@ static int async_write(BIO *bio, const char *in, int inl) wholebody = payload; if (contenttype == SSL3_RT_HANDSHAKE && !PACKET_get_1(&wholebody, &msgtype)) - abort(); + return -1; if (msgtype == SSL3_MT_SERVER_HELLO && (!PACKET_forward(&wholebody, SSL3_HM_HEADER_LENGTH - 1) || !PACKET_get_net_2(&wholebody, &negversion))) - abort(); + return -1; while (PACKET_get_1(&payload, &data)) { /* Create a new one byte long record for each byte in the @@ -185,7 +190,7 @@ static int async_write(BIO *bio, const char *in, int inl) smallrec[DATAPOS] = data; ret = BIO_write(next, smallrec, MIN_RECORD_LEN); if (ret <= 0) - abort(); + return -1; written++; } /* @@ -252,29 +257,19 @@ static int async_puts(BIO *bio, const char *str) #define MAX_ATTEMPTS 100 -int main(int argc, char *argv[]) +static int test_asyncio(int test) { SSL_CTX *serverctx = NULL, *clientctx = NULL; SSL *serverssl = NULL, *clientssl = NULL; BIO *s_to_c_fbio = NULL, *c_to_s_fbio = NULL; - int test, err = 1, ret; + int testresult = 0, ret; size_t i, j; const char testdata[] = "Test data"; char buf[sizeof(testdata)]; - CRYPTO_set_mem_debug(1); - CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON); - - if (argc != 3) { - printf("Invalid argument count\n"); - goto end; - } - - if (!create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), - &serverctx, &clientctx, argv[1], argv[2])) { - printf("Failed to create SSL_CTX pair\n"); + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), + &serverctx, &clientctx, cert, privkey))) goto end; - } /* * We do 2 test runs. The first time around we just do a normal handshake @@ -282,116 +277,108 @@ int main(int argc, char *argv[]) * all records so that the content is only one byte length (up until the * CCS) */ - for (test = 1; test < 3; test++) { - if (test == 2) - fragment = 1; + if (test == 1) + fragment = 1; - s_to_c_fbio = BIO_new(bio_f_async_filter()); - c_to_s_fbio = BIO_new(bio_f_async_filter()); - if (s_to_c_fbio == NULL || c_to_s_fbio == NULL) { - printf("Failed to create filter BIOs\n"); - BIO_free(s_to_c_fbio); - BIO_free(c_to_s_fbio); - goto end; - } + s_to_c_fbio = BIO_new(bio_f_async_filter()); + c_to_s_fbio = BIO_new(bio_f_async_filter()); + if (!TEST_ptr(s_to_c_fbio) + || !TEST_ptr(c_to_s_fbio)) { + BIO_free(s_to_c_fbio); + BIO_free(c_to_s_fbio); + goto end; + } - /* BIOs get freed on error */ - if (!create_ssl_objects(serverctx, clientctx, &serverssl, &clientssl, - s_to_c_fbio, c_to_s_fbio)) { - printf("Test %d failed: Create SSL objects failed\n", test); - goto end; - } + /* BIOs get freed on error */ + if (!TEST_true(create_ssl_objects(serverctx, clientctx, &serverssl, + &clientssl, s_to_c_fbio, c_to_s_fbio)) + || !TEST_true(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE))) + goto end; - if (!create_ssl_connection(serverssl, clientssl, SSL_ERROR_NONE)) { - printf("Test %d failed: Create SSL connection failed\n", test); - goto end; - } + /* + * Send and receive some test data. Do the whole thing twice to ensure + * we hit at least one async event in both reading and writing + */ + for (j = 0; j < 2; j++) { + int len; /* - * Send and receive some test data. Do the whole thing twice to ensure - * we hit at least one async event in both reading and writing + * Write some test data. It should never take more than 2 attempts + * (the first one might be a retryable fail). */ - for (j = 0; j < 2; j++) { - int len; - - /* - * Write some test data. It should never take more than 2 attempts - * (the first one might be a retryable fail). - */ - for (ret = -1, i = 0, len = 0; len != sizeof(testdata) && i < 2; - i++) { - ret = SSL_write(clientssl, testdata + len, - sizeof(testdata) - len); - if (ret > 0) { - len += ret; - } else { - int ssl_error = SSL_get_error(clientssl, ret); - - if (ssl_error == SSL_ERROR_SYSCALL || - ssl_error == SSL_ERROR_SSL) { - printf("Test %d failed: Failed to write app data\n", test); - err = -1; - goto end; - } - } - } - if (len != sizeof(testdata)) { - err = -1; - printf("Test %d failed: Failed to write all app data\n", test); - goto end; - } - /* - * Now read the test data. It may take more attemps here because - * it could fail once for each byte read, including all overhead - * bytes from the record header/padding etc. - */ - for (ret = -1, i = 0, len = 0; len != sizeof(testdata) && - i < MAX_ATTEMPTS; i++) - { - ret = SSL_read(serverssl, buf + len, sizeof(buf) - len); - if (ret > 0) { - len += ret; - } else { - int ssl_error = SSL_get_error(serverssl, ret); - - if (ssl_error == SSL_ERROR_SYSCALL || - ssl_error == SSL_ERROR_SSL) { - printf("Test %d failed: Failed to read app data\n", test); - err = -1; - goto end; - } - } - } - if (len != sizeof(testdata) - || memcmp(buf, testdata, sizeof(testdata)) != 0) { - err = -1; - printf("Test %d failed: Unexpected app data received\n", test); - goto end; + for (ret = -1, i = 0, len = 0; len != sizeof(testdata) && i < 2; + i++) { + ret = SSL_write(clientssl, testdata + len, + sizeof(testdata) - len); + if (ret > 0) { + len += ret; + } else { + int ssl_error = SSL_get_error(clientssl, ret); + + if (!TEST_false(ssl_error == SSL_ERROR_SYSCALL || + ssl_error == SSL_ERROR_SSL)) + goto end; } } + if (!TEST_size_t_eq(len, sizeof(testdata))) + goto end; - /* Also frees the BIOs */ - SSL_free(clientssl); - SSL_free(serverssl); - clientssl = serverssl = NULL; + /* + * Now read the test data. It may take more attemps here because + * it could fail once for each byte read, including all overhead + * bytes from the record header/padding etc. + */ + for (ret = -1, i = 0, len = 0; len != sizeof(testdata) && + i < MAX_ATTEMPTS; i++) { + ret = SSL_read(serverssl, buf + len, sizeof(buf) - len); + if (ret > 0) { + len += ret; + } else { + int ssl_error = SSL_get_error(serverssl, ret); + + if (!TEST_false(ssl_error == SSL_ERROR_SYSCALL || + ssl_error == SSL_ERROR_SSL)) + goto end; + } + } + if (!TEST_mem_eq(testdata, sizeof(testdata), buf, len)) + goto end; } - printf("Test success\n"); + /* Also frees the BIOs */ + SSL_free(clientssl); + SSL_free(serverssl); + clientssl = serverssl = NULL; - err = 0; - end: - if (err) - ERR_print_errors_fp(stderr); + testresult = 1; + end: SSL_free(clientssl); SSL_free(serverssl); SSL_CTX_free(clientctx); SSL_CTX_free(serverctx); -# ifndef OPENSSL_NO_CRYPTO_MDEBUG - CRYPTO_mem_leaks_fp(stderr); -# endif + return testresult; +} + +int test_main(int argc, char *argv[]) +{ + int testresult = 0; + + if (!TEST_int_eq(argc, 3)) + goto end; + + cert = argv[1]; + privkey = argv[2]; + + ADD_ALL_TESTS(test_asyncio, 2); + + testresult = run_tests(argv[0]); + + end: + BIO_meth_free(methods_async); - return err; + return testresult; } diff --git a/test/build.info b/test/build.info index 0d82469..33d5199 100644 --- a/test/build.info +++ b/test/build.info @@ -264,7 +264,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[x509aux]=../include DEPEND[x509aux]=../libcrypto - SOURCE[asynciotest]=asynciotest.c ssltestlib.c + SOURCE[asynciotest]=asynciotest.c ssltestlib.c testutil.c test_main_custom.c INCLUDE[asynciotest]=../include DEPEND[asynciotest]=../libcrypto ../libssl From matt at openssl.org Tue Apr 11 23:09:32 2017 From: matt at openssl.org (Matt Caswell) Date: Tue, 11 Apr 2017 23:09:32 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491952172.885539.25913.nullmailer@dev.openssl.org> The branch master has been updated via a105d5603bcb93597866ab20a0ef2acaf6e7b3f6 (commit) from c79107961046be77ea4509991f97b8627d25ddc1 (commit) - Log ----------------------------------------------------------------- commit a105d5603bcb93597866ab20a0ef2acaf6e7b3f6 Author: Matt Caswell Date: Tue Apr 11 17:36:01 2017 +0100 Convert clienthellotest for the new test framework Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3186) ----------------------------------------------------------------------- Summary of changes: test/clienthellotest.c | 110 +++++++++++++++++++++---------------------------- 1 file changed, 46 insertions(+), 64 deletions(-) diff --git a/test/clienthellotest.c b/test/clienthellotest.c index e72ecc2..a5d3ad3 100644 --- a/test/clienthellotest.c +++ b/test/clienthellotest.c @@ -60,7 +60,7 @@ static int test_client_hello(int currtest) unsigned char *data; PACKET pkt, pkt2, pkt3; char *dummytick = "Hello World!"; - unsigned int type; + unsigned int type = 0; int testresult = 0; size_t msglen; BIO *sessbio = NULL; @@ -76,13 +76,13 @@ static int test_client_hello(int currtest) * produced when we try to connect */ ctx = SSL_CTX_new(TLS_method()); - if (ctx == NULL) + if (!TEST_ptr(ctx)) goto end; switch(currtest) { case TEST_SET_SESSION_TICK_DATA_VER_NEG: /* Testing for session tickets <= TLS1.2; not relevant for 1.3 */ - if (!SSL_CTX_set_max_proto_version(ctx, TLS1_2_VERSION)) + if (!TEST_true(SSL_CTX_set_max_proto_version(ctx, TLS1_2_VERSION))) goto end; break; @@ -95,17 +95,14 @@ static int test_client_hello(int currtest) * F5_WORKAROUND_MIN_MSG_LEN bytes long - meaning padding will be * needed. Also add some dummy ALPN protocols in case we still don't * have enough. - * In the padding not needed case we assume the test will pass, but then - * set testresult to 0 if we see the padding extension. */ if (currtest == TEST_ADD_PADDING - && (!SSL_CTX_set_cipher_list(ctx, "ALL") - || SSL_CTX_set_alpn_protos(ctx, + && (!TEST_true(SSL_CTX_set_cipher_list(ctx, "ALL")) + || !TEST_false(SSL_CTX_set_alpn_protos(ctx, (unsigned char *)alpn_prots, - sizeof(alpn_prots) - 1))) + sizeof(alpn_prots) - 1)))) goto end; - else if (currtest == TEST_PADDING_NOT_NEEDED) - testresult = 1; + break; default: @@ -113,37 +110,32 @@ static int test_client_hello(int currtest) } con = SSL_new(ctx); - if (con == NULL) + if (!TEST_ptr(con)) goto end; if (currtest == TEST_ADD_PADDING_AND_PSK) { sessbio = BIO_new_file(sessionfile, "r"); - if (sessbio == NULL) { - printf("Unable to open session.pem\n"); + if (!TEST_ptr(sessbio)) { + TEST_info("Unable to open session.pem"); goto end; } sess = PEM_read_bio_SSL_SESSION(sessbio, NULL, NULL, NULL); - if (sess == NULL) { - printf("Unable to load SSL_SESSION\n"); + if (!TEST_ptr(sess)) { + TEST_info("Unable to load SSL_SESSION"); goto end; } /* * We reset the creation time so that we don't discard the session as * too old. */ - if (!SSL_SESSION_set_time(sess, time(NULL))) { - printf("Unable to set creation time on SSL_SESSION\n"); - goto end; - } - if (!SSL_set_session(con, sess)) { - printf("Unable to set the session on the connection\n"); + if (!TEST_true(SSL_SESSION_set_time(sess, time(NULL))) + || !TEST_true(SSL_set_session(con, sess))) goto end; - } } rbio = BIO_new(BIO_s_mem()); wbio = BIO_new(BIO_s_mem()); - if (rbio == NULL || wbio == NULL) { + if (!TEST_ptr(rbio)|| !TEST_ptr(wbio)) { BIO_free(rbio); BIO_free(wbio); goto end; @@ -153,83 +145,73 @@ static int test_client_hello(int currtest) SSL_set_connect_state(con); if (currtest == TEST_SET_SESSION_TICK_DATA_VER_NEG) { - if (!SSL_set_session_ticket_ext(con, dummytick, strlen(dummytick))) + if (!TEST_true(SSL_set_session_ticket_ext(con, dummytick, + strlen(dummytick)))) goto end; } - if (SSL_connect(con) > 0) { + if (!TEST_int_le(SSL_connect(con), 0)) { /* This shouldn't succeed because we don't have a server! */ goto end; } len = BIO_get_mem_data(wbio, (char **)&data); - if (!PACKET_buf_init(&pkt, data, len)) - goto end; - - /* Skip the record header */ - if (!PACKET_forward(&pkt, SSL3_RT_HEADER_LENGTH)) + if (!TEST_true(PACKET_buf_init(&pkt, data, len)) + /* Skip the record header */ + || !PACKET_forward(&pkt, SSL3_RT_HEADER_LENGTH)) goto end; msglen = PACKET_remaining(&pkt); /* Skip the handshake message header */ - if (!PACKET_forward(&pkt, SSL3_HM_HEADER_LENGTH)) - goto end; - - /* Skip client version and random */ - if (!PACKET_forward(&pkt, CLIENT_VERSION_LEN + SSL3_RANDOM_SIZE)) - goto end; - - /* Skip session id */ - if (!PACKET_get_length_prefixed_1(&pkt, &pkt2)) - goto end; - - /* Skip ciphers */ - if (!PACKET_get_length_prefixed_2(&pkt, &pkt2)) - goto end; - - /* Skip compression */ - if (!PACKET_get_length_prefixed_1(&pkt, &pkt2)) - goto end; - - /* Extensions len */ - if (!PACKET_as_length_prefixed_2(&pkt, &pkt2)) + if (!TEST_true(PACKET_forward(&pkt, SSL3_HM_HEADER_LENGTH)) + /* Skip client version and random */ + || !TEST_true(PACKET_forward(&pkt, CLIENT_VERSION_LEN + + SSL3_RANDOM_SIZE)) + /* Skip session id */ + || !TEST_true(PACKET_get_length_prefixed_1(&pkt, &pkt2)) + /* Skip ciphers */ + || !TEST_true(PACKET_get_length_prefixed_2(&pkt, &pkt2)) + /* Skip compression */ + || !TEST_true(PACKET_get_length_prefixed_1(&pkt, &pkt2)) + /* Extensions len */ + || !TEST_true(PACKET_as_length_prefixed_2(&pkt, &pkt2))) goto end; /* Loop through all extensions */ while (PACKET_remaining(&pkt2)) { - if (!PACKET_get_net_2(&pkt2, &type) || - !PACKET_get_length_prefixed_2(&pkt2, &pkt3)) + if (!TEST_true(PACKET_get_net_2(&pkt2, &type)) + || !TEST_true(PACKET_get_length_prefixed_2(&pkt2, &pkt3))) goto end; if (type == TLSEXT_TYPE_session_ticket) { if (currtest == TEST_SET_SESSION_TICK_DATA_VER_NEG) { - if (PACKET_equal(&pkt3, dummytick, strlen(dummytick))) { + if (TEST_true(PACKET_equal(&pkt3, dummytick, + strlen(dummytick)))) { /* Ticket data is as we expected */ testresult = 1; - } else { - printf("Received session ticket is not as expected\n"); } - break; + goto end; } } if (type == TLSEXT_TYPE_padding) { - if (currtest == TEST_ADD_PADDING - || currtest == TEST_ADD_PADDING_AND_PSK) - testresult = (msglen == F5_WORKAROUND_MAX_MSG_LEN); - else - testresult = 0; + if (!TEST_false(currtest == TEST_PADDING_NOT_NEEDED)) + goto end; + else if (TEST_true(currtest == TEST_ADD_PADDING + || currtest == TEST_ADD_PADDING_AND_PSK)) + testresult = TEST_true(msglen == F5_WORKAROUND_MAX_MSG_LEN); } } + if (currtest == TEST_PADDING_NOT_NEEDED) + testresult = 1; + end: SSL_free(con); SSL_CTX_free(ctx); SSL_SESSION_free(sess); BIO_free(sessbio); - if (!testresult) - printf("ClientHello test: FAILED (Test %d)\n", currtest); return testresult; } From builds at travis-ci.org Tue Apr 11 23:10:09 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 11 Apr 2017 23:10:09 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10186 (master - 829b2b8) In-Reply-To: Message-ID: <58ed6250292cb_43fc9b17a8e00197934c@5145e08d-18ed-4f9d-818d-021bf0aa4515.mail> Build Update for openssl/openssl ------------------------------------- Build: #10186 Status: Still Failing Duration: 18 minutes and 50 seconds Commit: 829b2b8 (master) Author: Matt Caswell Message: Convert bad_dtls_test for the new test framework Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3184) View the changeset: https://github.com/openssl/openssl/compare/429223d198aa...829b2b854332 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221148861 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From rsalz at openssl.org Tue Apr 11 23:16:04 2017 From: rsalz at openssl.org (Rich Salz) Date: Tue, 11 Apr 2017 23:16:04 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491952564.967086.28201.nullmailer@dev.openssl.org> The branch master has been updated via 487a73def65aa6ffedf5baf353e912fe61aa3c7c (commit) from a105d5603bcb93597866ab20a0ef2acaf6e7b3f6 (commit) - Log ----------------------------------------------------------------- commit 487a73def65aa6ffedf5baf353e912fe61aa3c7c Author: Frank Morgner Date: Mon Apr 10 14:15:09 2017 +0200 Added error checking for OBJ_create fixes segmentation fault in case of not enough memory for object creation CLA: trivial Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3157) ----------------------------------------------------------------------- Summary of changes: crypto/objects/obj_dat.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/crypto/objects/obj_dat.c b/crypto/objects/obj_dat.c index f37e947..2f86cd5 100644 --- a/crypto/objects/obj_dat.c +++ b/crypto/objects/obj_dat.c @@ -691,6 +691,8 @@ int OBJ_create(const char *oid, const char *sn, const char *ln) /* Convert numerical OID string to an ASN1_OBJECT structure */ tmpoid = OBJ_txt2obj(oid, 1); + if (tmpoid == NULL) + return 0; /* If NID is not NID_undef then object already exists */ if (OBJ_obj2nid(tmpoid) != NID_undef) { From rsalz at openssl.org Tue Apr 11 23:16:24 2017 From: rsalz at openssl.org (Rich Salz) Date: Tue, 11 Apr 2017 23:16:24 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1491952584.504390.29019.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 3906d9e8df270641a98afbc3c658e2570db70731 (commit) from 8e4fa6f7f0a1f648911088c2f1e432ca8c2b78e5 (commit) - Log ----------------------------------------------------------------- commit 3906d9e8df270641a98afbc3c658e2570db70731 Author: Frank Morgner Date: Mon Apr 10 14:15:09 2017 +0200 Added error checking for OBJ_create fixes segmentation fault in case of not enough memory for object creation CLA: trivial Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3157) (cherry picked from commit 487a73def65aa6ffedf5baf353e912fe61aa3c7c) ----------------------------------------------------------------------- Summary of changes: crypto/objects/obj_dat.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/crypto/objects/obj_dat.c b/crypto/objects/obj_dat.c index 259851b..9f37417 100644 --- a/crypto/objects/obj_dat.c +++ b/crypto/objects/obj_dat.c @@ -692,6 +692,8 @@ int OBJ_create(const char *oid, const char *sn, const char *ln) /* Convert numerical OID string to an ASN1_OBJECT structure */ tmpoid = OBJ_txt2obj(oid, 1); + if (tmpoid == NULL) + return 0; /* If NID is not NID_undef then object already exists */ if (OBJ_obj2nid(tmpoid) != NID_undef) { From builds at travis-ci.org Tue Apr 11 23:30:45 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 11 Apr 2017 23:30:45 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10189 (master - c791079) In-Reply-To: Message-ID: <58ed6725473fc_43fc9b7cb59b020033f9@5145e08d-18ed-4f9d-818d-021bf0aa4515.mail> Build Update for openssl/openssl ------------------------------------- Build: #10189 Status: Still Failing Duration: 20 minutes and 3 seconds Commit: c791079 (master) Author: Matt Caswell Message: Convert asynciotest for the new test framework Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3182) View the changeset: https://github.com/openssl/openssl/compare/829b2b854332...c79107961046 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221152196 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Tue Apr 11 23:37:48 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 11 Apr 2017 23:37:48 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10190 (master - a105d56) In-Reply-To: Message-ID: <58ed690e22291_43fc9b7a849c020133af@5145e08d-18ed-4f9d-818d-021bf0aa4515.mail> Build Update for openssl/openssl ------------------------------------- Build: #10190 Status: Still Failing Duration: 22 minutes and 28 seconds Commit: a105d56 (master) Author: Matt Caswell Message: Convert clienthellotest for the new test framework Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3186) View the changeset: https://github.com/openssl/openssl/compare/c79107961046...a105d5603bcb View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221153871 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Tue Apr 11 23:49:29 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 11 Apr 2017 23:49:29 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10191 (master - 487a73d) In-Reply-To: Message-ID: <58ed6b89f130_43fd19b6093dc15609d4@d224b872-5ec6-4ebd-a0d8-b4aef5018b19.mail> Build Update for openssl/openssl ------------------------------------- Build: #10191 Status: Still Failing Duration: 22 minutes and 55 seconds Commit: 487a73d (master) Author: Frank Morgner Message: Added error checking for OBJ_create fixes segmentation fault in case of not enough memory for object creation CLA: trivial Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3157) View the changeset: https://github.com/openssl/openssl/compare/a105d5603bcb...487a73def65a View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221155578 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Wed Apr 12 03:24:31 2017 From: no-reply at appveyor.com (AppVeyor) Date: Wed, 12 Apr 2017 03:24:31 +0000 Subject: [openssl-commits] Build failed: openssl master.9514 Message-ID: <20170412032431.60427.57268.8ABE68EF@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Wed Apr 12 03:48:22 2017 From: no-reply at appveyor.com (AppVeyor) Date: Wed, 12 Apr 2017 03:48:22 +0000 Subject: [openssl-commits] Build completed: openssl master.9515 Message-ID: <20170412034822.92295.28012.51A3A13C@appveyor.com> An HTML attachment was scrubbed... URL: From levitte at openssl.org Wed Apr 12 06:32:17 2017 From: levitte at openssl.org (Richard Levitte) Date: Wed, 12 Apr 2017 06:32:17 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491978737.424259.32012.nullmailer@dev.openssl.org> The branch master has been updated via eb16fc8fb6087ae1aeb22634e2c4b5c913d1836e (commit) from 487a73def65aa6ffedf5baf353e912fe61aa3c7c (commit) - Log ----------------------------------------------------------------- commit eb16fc8fb6087ae1aeb22634e2c4b5c913d1836e Author: Jon Spillett Date: Wed Apr 12 11:40:48 2017 +1000 Convert exdata tests to new test framework Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3193) ----------------------------------------------------------------------- Summary of changes: test/build.info | 2 +- test/exdatatest.c | 76 +++++++++++++++++++++++++++++++++++-------------------- 2 files changed, 50 insertions(+), 28 deletions(-) diff --git a/test/build.info b/test/build.info index 33d5199..d712b71 100644 --- a/test/build.info +++ b/test/build.info @@ -43,7 +43,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[test_test]=.. ../include DEPEND[test_test]=../libcrypto - SOURCE[exdatatest]=exdatatest.c + SOURCE[exdatatest]=exdatatest.c testutil.c test_main.c INCLUDE[exdatatest]=../include DEPEND[exdatatest]=../libcrypto diff --git a/test/exdatatest.c b/test/exdatatest.c index e0eadd3..fb1694d 100644 --- a/test/exdatatest.c +++ b/test/exdatatest.c @@ -12,35 +12,42 @@ #include #include +#include "test_main.h" +#include "testutil.h" + static long saved_argl; static void *saved_argp; static int saved_idx; +static int gbl_result; static void exnew(void *parent, void *ptr, CRYPTO_EX_DATA *ad, int idx, long argl, void *argp) { - OPENSSL_assert(idx == saved_idx); - OPENSSL_assert(argl == saved_argl); - OPENSSL_assert(argp == saved_argp); - OPENSSL_assert(ptr == NULL); + if (!TEST_int_eq(idx, saved_idx) + || !TEST_long_eq(argl, saved_argl) + || !TEST_ptr_eq(argp, saved_argp) + || !TEST_ptr_null(ptr)) + gbl_result = 0; } static int exdup(CRYPTO_EX_DATA *to, const CRYPTO_EX_DATA *from, void *from_d, int idx, long argl, void *argp) { - OPENSSL_assert(idx == saved_idx); - OPENSSL_assert(argl == saved_argl); - OPENSSL_assert(argp == saved_argp); - OPENSSL_assert(from_d != NULL); + if (!TEST_int_eq(idx, saved_idx) + || !TEST_long_eq(argl, saved_argl) + || !TEST_ptr_eq(argp, saved_argp) + || !TEST_ptr(from_d)) + gbl_result = 0; return 1; } static void exfree(void *parent, void *ptr, CRYPTO_EX_DATA *ad, int idx, long argl, void *argp) { - OPENSSL_assert(idx == saved_idx); - OPENSSL_assert(argl == saved_argl); - OPENSSL_assert(argp == saved_argp); + if (!TEST_int_eq(idx, saved_idx) + || !TEST_long_eq(argl, saved_argl) + || !TEST_ptr_eq(argp, saved_argp)) + gbl_result = 0; } typedef struct myobj_st { @@ -56,14 +63,14 @@ static MYOBJ *MYOBJ_new() obj->id = ++count; obj->st = CRYPTO_new_ex_data(CRYPTO_EX_INDEX_APP, obj, &obj->ex_data); - OPENSSL_assert(obj->st != 0); return obj; } static void MYOBJ_sethello(MYOBJ *obj, char *cp) { obj->st = CRYPTO_set_ex_data(&obj->ex_data, saved_idx, cp); - OPENSSL_assert(obj->st != 0); + if (!TEST_int_eq(obj->st, 1)) + gbl_result = 0; } static char *MYOBJ_gethello(MYOBJ *obj) @@ -81,18 +88,19 @@ static MYOBJ *MYOBJ_dup(MYOBJ *in) { MYOBJ *obj = MYOBJ_new(); - obj->st = CRYPTO_dup_ex_data(CRYPTO_EX_INDEX_APP, &obj->ex_data, + obj->st |= CRYPTO_dup_ex_data(CRYPTO_EX_INDEX_APP, &obj->ex_data, &in->ex_data); - OPENSSL_assert(obj->st != 0); return obj; } -int main() +static int test_exdata(void) { MYOBJ *t1, *t2, *t3; const char *cp; char *p; + gbl_result = 1; + p = strdup("hello world"); saved_argl = 21; saved_argp = malloc(1); @@ -101,25 +109,39 @@ int main() exnew, exdup, exfree); t1 = MYOBJ_new(); t2 = MYOBJ_new(); + if (!TEST_int_eq(t1->st, 1) || !TEST_int_eq(t2->st, 1)) + return 0; + MYOBJ_sethello(t1, p); cp = MYOBJ_gethello(t1); - OPENSSL_assert(cp == p); - if (cp != p) - return 1; + if (!TEST_ptr_eq(cp, p)) + return 0; + cp = MYOBJ_gethello(t2); - OPENSSL_assert(cp == NULL); - if (cp != NULL) - return 1; + if (!TEST_ptr_null(cp)) + return 0; + t3 = MYOBJ_dup(t1); + if (!TEST_int_eq(t3->st, 1)) + return 0; + cp = MYOBJ_gethello(t3); - OPENSSL_assert(cp == p); - if (cp != p) - return 1; - cp = MYOBJ_gethello(t2); + if (!TEST_ptr_eq(cp, p)) + return 0; + MYOBJ_free(t1); MYOBJ_free(t2); MYOBJ_free(t3); free(saved_argp); free(p); - return 0; + + if (gbl_result) + return 1; + else + return 0; +} + +void register_tests(void) +{ + ADD_TEST(test_exdata); } From builds at travis-ci.org Wed Apr 12 06:52:36 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 12 Apr 2017 06:52:36 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10207 (master - eb16fc8) In-Reply-To: Message-ID: <58edceb2d2fac_43fb0fcfcb4482840e@93470f4d-59d8-40ed-ac6f-3cc4207b8a52.mail> Build Update for openssl/openssl ------------------------------------- Build: #10207 Status: Still Failing Duration: 19 minutes and 26 seconds Commit: eb16fc8 (master) Author: Jon Spillett Message: Convert exdata tests to new test framework Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3193) View the changeset: https://github.com/openssl/openssl/compare/487a73def65a...eb16fc8fb608 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221233416 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From matt at openssl.org Wed Apr 12 08:41:14 2017 From: matt at openssl.org (Matt Caswell) Date: Wed, 12 Apr 2017 08:41:14 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491986474.670884.16958.nullmailer@dev.openssl.org> The branch master has been updated via f46074c7b9d03235e2968546c28a6057db9f8725 (commit) from eb16fc8fb6087ae1aeb22634e2c4b5c913d1836e (commit) - Log ----------------------------------------------------------------- commit f46074c7b9d03235e2968546c28a6057db9f8725 Author: Pauli Date: Mon Apr 10 09:14:49 2017 +1000 Update sha256t and sha512t to use the test infrastructure Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3168) ----------------------------------------------------------------------- Summary of changes: test/build.info | 4 +- test/sha256t.c | 217 ++++++++++++++++++++++++++---------------------------- test/sha512t.c | 225 +++++++++++++++++++++++++++----------------------------- 3 files changed, 214 insertions(+), 232 deletions(-) diff --git a/test/build.info b/test/build.info index d712b71..cc0820d 100644 --- a/test/build.info +++ b/test/build.info @@ -103,11 +103,11 @@ IF[{- !$disabled{tests} -}] INCLUDE[sha1test]=../include DEPEND[sha1test]=../libcrypto - SOURCE[sha256t]=sha256t.c + SOURCE[sha256t]=sha256t.c testutil.c test_main.c INCLUDE[sha256t]=../include DEPEND[sha256t]=../libcrypto - SOURCE[sha512t]=sha512t.c + SOURCE[sha512t]=sha512t.c testutil.c test_main.c INCLUDE[sha512t]=../include DEPEND[sha512t]=../libcrypto diff --git a/test/sha256t.c b/test/sha256t.c index 90262d9..29e65d5 100644 --- a/test/sha256t.c +++ b/test/sha256t.c @@ -1,5 +1,5 @@ /* - * Copyright 2004-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2004-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,13 +7,12 @@ * https://www.openssl.org/source/license.html */ -#include -#include -#include - #include #include +#include "test_main.h" +#include "testutil.h" + static const unsigned char app_b1[SHA256_DIGEST_LENGTH] = { 0xba, 0x78, 0x16, 0xbf, 0x8f, 0x01, 0xcf, 0xea, 0x41, 0x41, 0x40, 0xde, 0x5d, 0xae, 0x22, 0x23, @@ -56,122 +55,114 @@ static const unsigned char addenum_3[SHA224_DIGEST_LENGTH] = { 0x4e, 0xe7, 0xad, 0x67 }; -int main(int argc, char **argv) +static int test_sha256_short(void) +{ + unsigned char md[SHA256_DIGEST_LENGTH]; + + if (!TEST_true(EVP_Digest("abc", 3, md, NULL, EVP_sha256(), NULL))) + return 0; + return TEST_mem_eq(md, sizeof(md), app_b1, sizeof(app_b1)); +} + +static int test_sha256_long(void) { unsigned char md[SHA256_DIGEST_LENGTH]; - int i; - EVP_MD_CTX *evp; - fprintf(stdout, "Testing SHA-256 "); - - if (!EVP_Digest("abc", 3, md, NULL, EVP_sha256(), NULL)) - goto err; - if (memcmp(md, app_b1, sizeof(app_b1))) { - fflush(stdout); - fprintf(stderr, "\nTEST 1 of 3 failed.\n"); - return 1; - } else - fprintf(stdout, "."); - fflush(stdout); - - if (!EVP_Digest("abcdbcde" "cdefdefg" "efghfghi" "ghijhijk" - "ijkljklm" "klmnlmno" "mnopnopq", 56, md, - NULL, EVP_sha256(), NULL)) - goto err; - if (memcmp(md, app_b2, sizeof(app_b2))) { - fflush(stdout); - fprintf(stderr, "\nTEST 2 of 3 failed.\n"); - return 1; - } else - fprintf(stdout, "."); - fflush(stdout); + if (!TEST_true(EVP_Digest("abcdbcde" "cdefdefg" "efghfghi" "ghijhijk" + "ijkljklm" "klmnlmno" "mnopnopq", 56, md, + NULL, EVP_sha256(), NULL))) + return 0; + return TEST_mem_eq(md, sizeof(md), app_b2, sizeof(app_b2)); +} + +static int test_sha256_multi(void) +{ + unsigned char md[SHA256_DIGEST_LENGTH]; + int i, testresult = 0; + EVP_MD_CTX *evp; + static const char *updstr = "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" + "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" + "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" + "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" + "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" + "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" + "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" + "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" + "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa"; evp = EVP_MD_CTX_new(); - if (evp == NULL) { - fflush(stdout); - fprintf(stderr, "\nTEST 3 of 3 failed. (malloc failure)\n"); - return 1; - } - if (!EVP_DigestInit_ex(evp, EVP_sha256(), NULL)) - goto err; - for (i = 0; i < 1000000; i += 288) { - if (!EVP_DigestUpdate(evp, "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" - "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" - "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" - "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" - "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" - "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" - "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" - "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" - "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa", - (1000000 - i) < 288 ? 1000000 - i : 288)) - goto err; - } - if (!EVP_DigestFinal_ex(evp, md, NULL)) - goto err; - - if (memcmp(md, app_b3, sizeof(app_b3))) { - fflush(stdout); - fprintf(stderr, "\nTEST 3 of 3 failed.\n"); - return 1; - } else - fprintf(stdout, "."); - fflush(stdout); - - fprintf(stdout, " passed.\n"); - fflush(stdout); - - fprintf(stdout, "Testing SHA-224 "); - - if (!EVP_Digest("abc", 3, md, NULL, EVP_sha224(), NULL)) - goto err; - if (memcmp(md, addenum_1, sizeof(addenum_1))) { - fflush(stdout); - fprintf(stderr, "\nTEST 1 of 3 failed.\n"); - return 1; - } else - fprintf(stdout, "."); - fflush(stdout); - - if (!EVP_Digest("abcdbcde" "cdefdefg" "efghfghi" "ghijhijk" - "ijkljklm" "klmnlmno" "mnopnopq", 56, md, - NULL, EVP_sha224(), NULL)) - goto err; - if (memcmp(md, addenum_2, sizeof(addenum_2))) { - fflush(stdout); - fprintf(stderr, "\nTEST 2 of 3 failed.\n"); - return 1; - } else - fprintf(stdout, "."); - fflush(stdout); - - EVP_MD_CTX_reset(evp); - if (!EVP_DigestInit_ex(evp, EVP_sha224(), NULL)) - goto err; - for (i = 0; i < 1000000; i += 64) { - if (!EVP_DigestUpdate(evp, "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" - "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa", - (1000000 - i) < 64 ? 1000000 - i : 64)) - goto err; - } - if (!EVP_DigestFinal_ex(evp, md, NULL)) - goto err; + if (!TEST_ptr(evp)) + return 0; + if (!TEST_true(EVP_DigestInit_ex(evp, EVP_sha256(), NULL))) + goto end; + for (i = 0; i < 1000000; i += 288) + if (!TEST_true(EVP_DigestUpdate(evp, updstr, + (1000000 - i) < 288 ? 1000000 - i + : 288))) + goto end; + if (!TEST_true(EVP_DigestFinal_ex(evp, md, NULL)) + || !TEST_mem_eq(md, sizeof(md), app_b3, sizeof(app_b3))) + goto end; + + testresult = 1; + end: EVP_MD_CTX_free(evp); + return testresult; +} - if (memcmp(md, addenum_3, sizeof(addenum_3))) { - fflush(stdout); - fprintf(stderr, "\nTEST 3 of 3 failed.\n"); - return 1; - } else - fprintf(stdout, "."); - fflush(stdout); +static int test_sha224_short(void) +{ + unsigned char md[SHA224_DIGEST_LENGTH]; - fprintf(stdout, " passed.\n"); - fflush(stdout); + if (!TEST_true(EVP_Digest("abc", 3, md, NULL, EVP_sha224(), NULL))) + return 0; + return TEST_mem_eq(md, sizeof(md), addenum_1, sizeof(addenum_1)); +} - return 0; +static int test_sha224_long(void) +{ + unsigned char md[SHA224_DIGEST_LENGTH]; - err: - fprintf(stderr, "Fatal EVP error!\n"); - return 1; + if (!TEST_true(EVP_Digest("abcdbcde" "cdefdefg" "efghfghi" "ghijhijk" + "ijkljklm" "klmnlmno" "mnopnopq", 56, md, + NULL, EVP_sha224(), NULL))) + return 0; + return TEST_mem_eq(md, sizeof(md), addenum_2, sizeof(addenum_2)); +} + +static int test_sha224_multi(void) +{ + unsigned char md[SHA224_DIGEST_LENGTH]; + int i, testresult = 0; + EVP_MD_CTX *evp; + static const char *updstr = "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" + "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa"; + + evp = EVP_MD_CTX_new(); + if (!TEST_ptr(evp)) + return 0; + if (!TEST_true(EVP_DigestInit_ex(evp, EVP_sha224(), NULL))) + goto end; + for (i = 0; i < 1000000; i += 64) + if (!TEST_true(EVP_DigestUpdate(evp, updstr, + (1000000 - i) < 64 ? 1000000 - i : 64))) + goto end; + if (!TEST_true(EVP_DigestFinal_ex(evp, md, NULL)) + || !TEST_mem_eq(md, sizeof(md), addenum_3, sizeof(addenum_3))) + goto end; + + testresult = 1; + end: + EVP_MD_CTX_free(evp); + return testresult; +} + +void register_tests(void) +{ + ADD_TEST(test_sha256_short); + ADD_TEST(test_sha256_long); + ADD_TEST(test_sha256_multi); + ADD_TEST(test_sha224_short); + ADD_TEST(test_sha224_long); + ADD_TEST(test_sha224_multi); } diff --git a/test/sha512t.c b/test/sha512t.c index 18cdf39..91efa32 100644 --- a/test/sha512t.c +++ b/test/sha512t.c @@ -1,5 +1,5 @@ /* - * Copyright 2004-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2004-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,13 +7,11 @@ * https://www.openssl.org/source/license.html */ -#include -#include -#include - #include #include -#include + +#include "test_main.h" +#include "testutil.h" static const unsigned char app_c1[SHA512_DIGEST_LENGTH] = { 0xdd, 0xaf, 0x35, 0xa1, 0x93, 0x61, 0x7a, 0xba, @@ -75,125 +73,118 @@ static const unsigned char app_d3[SHA384_DIGEST_LENGTH] = { 0xae, 0x97, 0xdd, 0xd8, 0x7f, 0x3d, 0x89, 0x85 }; -int main(int argc, char **argv) +static int test_sha512_short(void) { unsigned char md[SHA512_DIGEST_LENGTH]; - int i; - EVP_MD_CTX *evp; - fprintf(stdout, "Testing SHA-512 "); - - if (!EVP_Digest("abc", 3, md, NULL, EVP_sha512(), NULL)) - goto err; - if (memcmp(md, app_c1, sizeof(app_c1))) { - fflush(stdout); - fprintf(stderr, "\nTEST 1 of 3 failed.\n"); - return 1; - } else - fprintf(stdout, "."); - fflush(stdout); - - if (!EVP_Digest("abcdefgh" "bcdefghi" "cdefghij" "defghijk" - "efghijkl" "fghijklm" "ghijklmn" "hijklmno" - "ijklmnop" "jklmnopq" "klmnopqr" "lmnopqrs" - "mnopqrst" "nopqrstu", 112, md, NULL, EVP_sha512(), NULL)) - goto err; - if (memcmp(md, app_c2, sizeof(app_c2))) { - fflush(stdout); - fprintf(stderr, "\nTEST 2 of 3 failed.\n"); - return 1; - } else - fprintf(stdout, "."); - fflush(stdout); + if (!TEST_true(EVP_Digest("abc", 3, md, NULL, EVP_sha512(), NULL))) + return 0; + return TEST_mem_eq(md, sizeof(md), app_c1, sizeof(app_c1)); +} + +static int test_sha512_long(void) +{ + unsigned char md[SHA512_DIGEST_LENGTH]; + + if (!TEST_true(EVP_Digest("abcdefgh" "bcdefghi" "cdefghij" "defghijk" + "efghijkl" "fghijklm" "ghijklmn" "hijklmno" + "ijklmnop" "jklmnopq" "klmnopqr" "lmnopqrs" + "mnopqrst" "nopqrstu", 112, md, NULL, + EVP_sha512(), NULL))) + return 0; + return TEST_mem_eq(md, sizeof(md), app_c2, sizeof(app_c2)); +} + +static int test_sha512_multi(void) +{ + unsigned char md[SHA512_DIGEST_LENGTH]; + int i, testresult = 0; + EVP_MD_CTX *evp; + static const char *updstr = "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" + "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" + "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" + "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" + "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" + "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" + "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" + "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" + "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa"; evp = EVP_MD_CTX_new(); - if (evp == NULL) { - fflush(stdout); - fprintf(stderr, "\nTEST 3 of 3 failed. (malloc failure)\n"); - return 1; - } - if (!EVP_DigestInit_ex(evp, EVP_sha512(), NULL)) - goto err; - for (i = 0; i < 1000000; i += 288) { - if (!EVP_DigestUpdate(evp, "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" - "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" - "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" - "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" - "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" - "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" - "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" - "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" - "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa", - (1000000 - i) < 288 ? 1000000 - i : 288)) - goto err; - } - if (!EVP_DigestFinal_ex(evp, md, NULL)) - goto err; - EVP_MD_CTX_reset(evp); - - if (memcmp(md, app_c3, sizeof(app_c3))) { - fflush(stdout); - fprintf(stderr, "\nTEST 3 of 3 failed.\n"); - return 1; - } else - fprintf(stdout, "."); - fflush(stdout); - - fprintf(stdout, " passed.\n"); - fflush(stdout); - - fprintf(stdout, "Testing SHA-384 "); - - if (!EVP_Digest("abc", 3, md, NULL, EVP_sha384(), NULL)) - goto err; - if (memcmp(md, app_d1, sizeof(app_d1))) { - fflush(stdout); - fprintf(stderr, "\nTEST 1 of 3 failed.\n"); - return 1; - } else - fprintf(stdout, "."); - fflush(stdout); - - if (!EVP_Digest("abcdefgh" "bcdefghi" "cdefghij" "defghijk" - "efghijkl" "fghijklm" "ghijklmn" "hijklmno" - "ijklmnop" "jklmnopq" "klmnopqr" "lmnopqrs" - "mnopqrst" "nopqrstu", 112, md, NULL, EVP_sha384(), NULL)) - goto err; - if (memcmp(md, app_d2, sizeof(app_d2))) { - fflush(stdout); - fprintf(stderr, "\nTEST 2 of 3 failed.\n"); - return 1; - } else - fprintf(stdout, "."); - fflush(stdout); - - if (!EVP_DigestInit_ex(evp, EVP_sha384(), NULL)) - goto err; - for (i = 0; i < 1000000; i += 64) { - if (!EVP_DigestUpdate(evp, "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" - "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa", - (1000000 - i) < 64 ? 1000000 - i : 64)) - goto err; - } - if (!EVP_DigestFinal_ex(evp, md, NULL)) - goto err; + if (!TEST_ptr(evp)) + return 0; + if (!TEST_true(EVP_DigestInit_ex(evp, EVP_sha512(), NULL))) + goto end; + for (i = 0; i < 1000000; i += 288) + if (!TEST_true(EVP_DigestUpdate(evp, updstr, + (1000000 - i) < 288 ? 1000000 - i + : 288))) + goto end; + if (!TEST_true(EVP_DigestFinal_ex(evp, md, NULL)) + || !TEST_mem_eq(md, sizeof(md), app_c3, sizeof(app_c3))) + goto end; + + testresult = 1; + end: EVP_MD_CTX_free(evp); + return testresult; +} - if (memcmp(md, app_d3, sizeof(app_d3))) { - fflush(stdout); - fprintf(stderr, "\nTEST 3 of 3 failed.\n"); - return 1; - } else - fprintf(stdout, "."); - fflush(stdout); +static int test_sha384_short(void) +{ + unsigned char md[SHA384_DIGEST_LENGTH]; - fprintf(stdout, " passed.\n"); - fflush(stdout); + if (!TEST_true(EVP_Digest("abc", 3, md, NULL, EVP_sha384(), NULL))) + return 0; + return TEST_mem_eq(md, sizeof(md), app_d1, sizeof(app_d1)); +} - return 0; +static int test_sha384_long(void) +{ + unsigned char md[SHA384_DIGEST_LENGTH]; + + if (!TEST_true(EVP_Digest("abcdefgh" "bcdefghi" "cdefghij" "defghijk" + "efghijkl" "fghijklm" "ghijklmn" "hijklmno" + "ijklmnop" "jklmnopq" "klmnopqr" "lmnopqrs" + "mnopqrst" "nopqrstu", 112, md, NULL, + EVP_sha384(), NULL))) + return 0; + return TEST_mem_eq(md, sizeof(md), app_d2, sizeof(app_d2)); +} - err: - fflush(stdout); - fprintf(stderr, "\nFatal EVP error!\n"); - return 1; +static int test_sha384_multi(void) +{ + unsigned char md[SHA384_DIGEST_LENGTH]; + int i, testresult = 0; + EVP_MD_CTX *evp; + static const char *updstr = "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" + "aaaaaaaa" "aaaaaaaa" "aaaaaaaa" "aaaaaaaa"; + + evp = EVP_MD_CTX_new(); + if (!TEST_ptr(evp)) + return 0; + if (!TEST_true(EVP_DigestInit_ex(evp, EVP_sha384(), NULL))) + goto end; + for (i = 0; i < 1000000; i += 64) + if (!TEST_true(EVP_DigestUpdate(evp, updstr, + (1000000 - i) < 64 ? 1000000 - i : 64))) + goto end; + if (!TEST_true(EVP_DigestFinal_ex(evp, md, NULL)) + || !TEST_mem_eq(md, sizeof(md), app_d3, sizeof(app_d3))) + goto end; + + testresult = 1; + end: + EVP_MD_CTX_free(evp); + return testresult; +} + +void register_tests(void) +{ + ADD_TEST(test_sha512_short); + ADD_TEST(test_sha512_long); + ADD_TEST(test_sha512_multi); + ADD_TEST(test_sha384_short); + ADD_TEST(test_sha384_long); + ADD_TEST(test_sha384_multi); } From matt at openssl.org Wed Apr 12 08:44:21 2017 From: matt at openssl.org (Matt Caswell) Date: Wed, 12 Apr 2017 08:44:21 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491986661.320710.18197.nullmailer@dev.openssl.org> The branch master has been updated via e49429aa3f94b38de82d9da1471e8c2a25b95237 (commit) from f46074c7b9d03235e2968546c28a6057db9f8725 (commit) - Log ----------------------------------------------------------------- commit e49429aa3f94b38de82d9da1471e8c2a25b95237 Author: Pauli Date: Mon Apr 10 08:20:10 2017 +1000 Update sha1test to use the test infrastructure Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3167) ----------------------------------------------------------------------- Summary of changes: test/build.info | 2 +- test/sha1test.c | 121 +++++++++++++++++++++++++++----------------------------- 2 files changed, 59 insertions(+), 64 deletions(-) diff --git a/test/build.info b/test/build.info index cc0820d..5d418f8 100644 --- a/test/build.info +++ b/test/build.info @@ -99,7 +99,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[destest]=../include DEPEND[destest]=../libcrypto - SOURCE[sha1test]=sha1test.c + SOURCE[sha1test]=sha1test.c testutil.c test_main.c INCLUDE[sha1test]=../include DEPEND[sha1test]=../libcrypto diff --git a/test/sha1test.c b/test/sha1test.c index 80ab122..25c7f10 100644 --- a/test/sha1test.c +++ b/test/sha1test.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -9,9 +9,11 @@ #include #include -#include #include "../e_os.h" +#include "test_main.h" +#include "testutil.h" + #include #include @@ -31,81 +33,74 @@ static char *ret[] = { static char *bigret = "34aa973cd4c4daa4f61eeb2bdbad27316534016f"; -static char *pt(unsigned char *md); -int main(int argc, char *argv[]) +static char *pt(unsigned char *md) +{ + int i; + static char buf[80]; + + for (i = 0; i < SHA_DIGEST_LENGTH; i++) + sprintf(&(buf[i * 2]), "%02x", md[i]); + return buf; +} + +static int test_sha1(int i) { - unsigned int i; - int err = 0; - char **R; - static unsigned char buf[1000]; - char *p, *r; EVP_MD_CTX *c; unsigned char md[SHA_DIGEST_LENGTH]; + const size_t tlen = strlen(test[i]); + int testresult = 0; c = EVP_MD_CTX_new(); - R = ret; - for (i = 0; i < OSSL_NELEM(test); i++) { + if (!TEST_ptr(c)) + goto end; + # ifdef CHARSET_EBCDIC - ebcdic2ascii(test[i], test[i], strlen(test[i])); + ebcdic2ascii(test[i], test[i], tlen); # endif - if (!EVP_Digest(test[i], strlen(test[i]), md, NULL, EVP_sha1(), - NULL)) { - printf("EVP_Digest() error\n"); - err++; - goto err; - } - p = pt(md); - if (strcmp(p, (char *)*R) != 0) { - printf("error calculating SHA1 on '%s'\n", test[i]); - printf("got %s instead of %s\n", p, *R); - err++; - } else - printf("test %d ok\n", i + 1); - R++; - } + if (!TEST_true(EVP_Digest(test[i], tlen, md, NULL, EVP_sha1(), NULL)) + || !TEST_str_eq(pt(md), ret[i])) + goto end; + + testresult = 1; + end: + EVP_MD_CTX_free(c); + return testresult; +} + +static int test_sha1_big(void) +{ + static unsigned char buf[1000]; + EVP_MD_CTX *c; + unsigned char md[SHA_DIGEST_LENGTH]; + int i, testresult = 0; + + c = EVP_MD_CTX_new(); + if (!TEST_ptr(c)) + goto end; memset(buf, 'a', 1000); #ifdef CHARSET_EBCDIC ebcdic2ascii(buf, buf, 1000); #endif /* CHARSET_EBCDIC */ - if (!EVP_DigestInit_ex(c, EVP_sha1(), NULL)) { - printf("EVP_DigestInit_ex() error\n"); - err++; - goto err; - } - for (i = 0; i < 1000; i++) { - if (!EVP_DigestUpdate(c, buf, 1000)) { - printf("EVP_DigestUpdate() error\n"); - err++; - goto err; - } - } - if (!EVP_DigestFinal_ex(c, md, NULL)) { - printf("EVP_DigestFinal() error\n"); - err++; - goto err; - } - p = pt(md); - - r = bigret; - if (strcmp(p, r) != 0) { - printf("error calculating SHA1 on 'a' * 1000\n"); - printf("got %s instead of %s\n", p, r); - err++; - } else - printf("test 3 ok\n"); - err: + if (!TEST_true(EVP_DigestInit_ex(c, EVP_sha1(), NULL))) + goto end; + for (i = 0; i < 1000; i++) + if (!TEST_true(EVP_DigestUpdate(c, buf, 1000))) + goto end; + if (!TEST_true(EVP_DigestFinal_ex(c, md, NULL))) + goto end; + + if (!TEST_str_eq(pt(md), bigret)) + goto end; + + testresult = 1; + end: EVP_MD_CTX_free(c); - EXIT(err); - return (0); + return testresult; } -static char *pt(unsigned char *md) +void register_tests(void) { - int i; - static char buf[80]; - - for (i = 0; i < SHA_DIGEST_LENGTH; i++) - sprintf(&(buf[i * 2]), "%02x", md[i]); - return (buf); + ADD_ALL_TESTS(test_sha1, OSSL_NELEM(test)); + ADD_TEST(test_sha1_big); } From matt at openssl.org Wed Apr 12 08:47:53 2017 From: matt at openssl.org (Matt Caswell) Date: Wed, 12 Apr 2017 08:47:53 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491986873.779497.19349.nullmailer@dev.openssl.org> The branch master has been updated via 850b55a98559e11444d407d136b3d1ec3e2e5dc3 (commit) from e49429aa3f94b38de82d9da1471e8c2a25b95237 (commit) - Log ----------------------------------------------------------------- commit 850b55a98559e11444d407d136b3d1ec3e2e5dc3 Author: Pauli Date: Fri Apr 7 13:49:26 2017 +1000 Update mdc2test to use the test infrastructure Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3164) ----------------------------------------------------------------------- Summary of changes: test/build.info | 2 +- test/mdc2test.c | 79 +++++++++++++++++++++------------------------------------ 2 files changed, 30 insertions(+), 51 deletions(-) diff --git a/test/build.info b/test/build.info index 5d418f8..654ca99 100644 --- a/test/build.info +++ b/test/build.info @@ -111,7 +111,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[sha512t]=../include DEPEND[sha512t]=../libcrypto - SOURCE[mdc2test]=mdc2test.c + SOURCE[mdc2test]=mdc2test.c testutil.c test_main.c INCLUDE[mdc2test]=../include DEPEND[mdc2test]=../libcrypto diff --git a/test/mdc2test.c b/test/mdc2test.c index d56bdcd..fb513e1 100644 --- a/test/mdc2test.c +++ b/test/mdc2test.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,23 +7,17 @@ * https://www.openssl.org/source/license.html */ -#include -#include #include #include "../e_os.h" +#include "test_main.h" +#include "testutil.h" #if defined(OPENSSL_NO_DES) && !defined(OPENSSL_NO_MDC2) # define OPENSSL_NO_MDC2 #endif -#ifdef OPENSSL_NO_MDC2 -int main(int argc, char *argv[]) -{ - printf("No MDC2 support\n"); - return (0); -} -#else +#ifndef OPENSSL_NO_MDC2 # include # include @@ -41,59 +35,44 @@ static unsigned char pad2[16] = { 0x35, 0xD8, 0x7A, 0xFE, 0xAB, 0x33, 0xBE, 0xE2 }; -int main(int argc, char *argv[]) +static int test_mdc2(void) { - int ret = 1; + int testresult = 0; unsigned char md[MDC2_DIGEST_LENGTH]; - int i; EVP_MD_CTX *c; static char text[] = "Now is the time for all "; + size_t tlen = strlen(text); # ifdef CHARSET_EBCDIC - ebcdic2ascii(text, text, strlen(text)); + ebcdic2ascii(text, text, tlen); # endif c = EVP_MD_CTX_new(); - if (c == NULL - || !EVP_DigestInit_ex(c, EVP_mdc2(), NULL) - || !EVP_DigestUpdate(c, (unsigned char *)text, strlen(text)) - || !EVP_DigestFinal_ex(c, &(md[0]), NULL)) - goto err; + if (!TEST_ptr(c) + || !TEST_true(EVP_DigestInit_ex(c, EVP_mdc2(), NULL)) + || !TEST_true(EVP_DigestUpdate(c, (unsigned char *)text, tlen)) + || !TEST_true(EVP_DigestFinal_ex(c, &(md[0]), NULL)) + || !TEST_mem_eq(md, MDC2_DIGEST_LENGTH, pad1, MDC2_DIGEST_LENGTH) + || !TEST_true(EVP_DigestInit_ex(c, EVP_mdc2(), NULL))) + goto end; - if (memcmp(md, pad1, MDC2_DIGEST_LENGTH) != 0) { - for (i = 0; i < MDC2_DIGEST_LENGTH; i++) - printf("%02X", md[i]); - printf(" <- generated\n"); - for (i = 0; i < MDC2_DIGEST_LENGTH; i++) - printf("%02X", pad1[i]); - printf(" <- correct\n"); - goto err; - } else { - printf("pad1 - ok\n"); - } - - if (!EVP_DigestInit_ex(c, EVP_mdc2(), NULL)) - goto err; /* FIXME: use a ctl function? */ ((MDC2_CTX *)EVP_MD_CTX_md_data(c))->pad_type = 2; - if (!EVP_DigestUpdate(c, (unsigned char *)text, strlen(text)) - || !EVP_DigestFinal_ex(c, &(md[0]), NULL)) - goto err; - - if (memcmp(md, pad2, MDC2_DIGEST_LENGTH) != 0) { - for (i = 0; i < MDC2_DIGEST_LENGTH; i++) - printf("%02X", md[i]); - printf(" <- generated\n"); - for (i = 0; i < MDC2_DIGEST_LENGTH; i++) - printf("%02X", pad2[i]); - printf(" <- correct\n"); - } else { - printf("pad2 - ok\n"); - ret = 0; - } + if (!TEST_true(EVP_DigestUpdate(c, (unsigned char *)text, tlen)) + || !TEST_true(EVP_DigestFinal_ex(c, &(md[0]), NULL)) + || !TEST_mem_eq(md, MDC2_DIGEST_LENGTH, pad2, MDC2_DIGEST_LENGTH)) + goto end; - err: + testresult = 1; + end: EVP_MD_CTX_free(c); - EXIT(ret); + return testresult; } #endif + +void register_tests(void) +{ +#ifndef OPENSSL_NO_MDC2 + ADD_TEST(test_mdc2); +#endif +} From matt at openssl.org Wed Apr 12 08:53:20 2017 From: matt at openssl.org (Matt Caswell) Date: Wed, 12 Apr 2017 08:53:20 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491987200.662409.21122.nullmailer@dev.openssl.org> The branch master has been updated via 7f13fad218b5a55fcb13caf2b9cb7ac5e4bd8950 (commit) from 850b55a98559e11444d407d136b3d1ec3e2e5dc3 (commit) - Log ----------------------------------------------------------------- commit 7f13fad218b5a55fcb13caf2b9cb7ac5e4bd8950 Author: Pauli Date: Fri Apr 7 13:27:35 2017 +1000 Update rc5test to use the test infrastructure Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3163) ----------------------------------------------------------------------- Summary of changes: test/build.info | 2 +- test/rc5test.c | 132 +++++++++++++++++++------------------------------------- 2 files changed, 46 insertions(+), 88 deletions(-) diff --git a/test/build.info b/test/build.info index 654ca99..bee6024 100644 --- a/test/build.info +++ b/test/build.info @@ -91,7 +91,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[rc4test]=../include DEPEND[rc4test]=../libcrypto - SOURCE[rc5test]=rc5test.c + SOURCE[rc5test]=rc5test.c testutil.c test_main.c INCLUDE[rc5test]=../include DEPEND[rc5test]=../libcrypto diff --git a/test/rc5test.c b/test/rc5test.c index 6567bcb..bc2cd97 100644 --- a/test/rc5test.c +++ b/test/rc5test.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,24 +7,13 @@ * https://www.openssl.org/source/license.html */ -/* - * This has been a quickly hacked 'ideatest.c'. When I add tests for other - * RC5 modes, more of the code will be uncommented. - */ - -#include #include -#include #include "../e_os.h" +#include "test_main.h" +#include "testutil.h" -#ifdef OPENSSL_NO_RC5 -int main(int argc, char *argv[]) -{ - printf("No RC5 support\n"); - return (0); -} -#else +#ifndef OPENSSL_NO_RC5 # include static unsigned char RC5key[5][16] = { @@ -187,90 +176,59 @@ static unsigned char rc5_cbc_iv[RC5_CBC_NUM][8] = { {0x7c, 0xb3, 0xf1, 0xdf, 0x34, 0xf9, 0x48, 0x11}, }; -int main(int argc, char *argv[]) +static int test_rc5_ecb(int n) { - int i, n, err = 0; + int testresult = 1; RC5_32_KEY key; - unsigned char buf[8], buf2[8], ivb[8]; + unsigned char buf[8], buf2[8]; - for (n = 0; n < 5; n++) { - RC5_32_set_key(&key, 16, &(RC5key[n][0]), 12); + RC5_32_set_key(&key, 16, &RC5key[n][0], 12); - RC5_32_ecb_encrypt(&(RC5plain[n][0]), buf, &key, RC5_ENCRYPT); - if (memcmp(&(RC5cipher[n][0]), buf, 8) != 0) { - printf("ecb RC5 error encrypting (%d)\n", n + 1); - printf("got :"); - for (i = 0; i < 8; i++) - printf("%02X ", buf[i]); - printf("\n"); - printf("expected:"); - for (i = 0; i < 8; i++) - printf("%02X ", RC5cipher[n][i]); - err = 20; - printf("\n"); - } + RC5_32_ecb_encrypt(&RC5plain[n][0], buf, &key, RC5_ENCRYPT); + if (!TEST_mem_eq(&RC5cipher[n][0], sizeof(RC5cipher[0]), buf, sizeof(buf))) + testresult = 0; - RC5_32_ecb_encrypt(buf, buf2, &key, RC5_DECRYPT); - if (memcmp(&(RC5plain[n][0]), buf2, 8) != 0) { - printf("ecb RC5 error decrypting (%d)\n", n + 1); - printf("got :"); - for (i = 0; i < 8; i++) - printf("%02X ", buf2[i]); - printf("\n"); - printf("expected:"); - for (i = 0; i < 8; i++) - printf("%02X ", RC5plain[n][i]); - printf("\n"); - err = 3; - } - } - if (err == 0) - printf("ecb RC5 ok\n"); + RC5_32_ecb_encrypt(buf, buf2, &key, RC5_DECRYPT); + if (!TEST_mem_eq(&RC5plain[n][0], sizeof(RC5cipher[0]), buf2, sizeof(buf2))) + testresult = 0; - for (n = 0; n < RC5_CBC_NUM; n++) { - i = rc5_cbc_rounds[n]; - if (i < 8) - continue; + return testresult; +} - RC5_32_set_key(&key, rc5_cbc_key[n][0], &(rc5_cbc_key[n][1]), i); +static int test_rc5_cbc(int n) +{ + int testresult = 1; + int i; + RC5_32_KEY key; + unsigned char buf[8], buf2[8], ivb[8]; + + i = rc5_cbc_rounds[n]; + if (i >= 8) { + RC5_32_set_key(&key, rc5_cbc_key[n][0], &rc5_cbc_key[n][1], i); - memcpy(ivb, &(rc5_cbc_iv[n][0]), 8); - RC5_32_cbc_encrypt(&(rc5_cbc_plain[n][0]), buf, 8, - &key, &(ivb[0]), RC5_ENCRYPT); + memcpy(ivb, &rc5_cbc_iv[n][0], 8); + RC5_32_cbc_encrypt(&rc5_cbc_plain[n][0], buf, 8, + &key, &ivb[0], RC5_ENCRYPT); - if (memcmp(&(rc5_cbc_cipher[n][0]), buf, 8) != 0) { - printf("cbc RC5 error encrypting (%d)\n", n + 1); - printf("got :"); - for (i = 0; i < 8; i++) - printf("%02X ", buf[i]); - printf("\n"); - printf("expected:"); - for (i = 0; i < 8; i++) - printf("%02X ", rc5_cbc_cipher[n][i]); - err = 30; - printf("\n"); - } + if (!TEST_mem_eq(&rc5_cbc_cipher[n][0], sizeof(rc5_cbc_cipher[0]), + buf, sizeof(buf))) + testresult = 0; - memcpy(ivb, &(rc5_cbc_iv[n][0]), 8); - RC5_32_cbc_encrypt(buf, buf2, 8, &key, &(ivb[0]), RC5_DECRYPT); - if (memcmp(&(rc5_cbc_plain[n][0]), buf2, 8) != 0) { - printf("cbc RC5 error decrypting (%d)\n", n + 1); - printf("got :"); - for (i = 0; i < 8; i++) - printf("%02X ", buf2[i]); - printf("\n"); - printf("expected:"); - for (i = 0; i < 8; i++) - printf("%02X ", rc5_cbc_plain[n][i]); - printf("\n"); - err = 3; - } + memcpy(ivb, &rc5_cbc_iv[n][0], 8); + RC5_32_cbc_encrypt(buf, buf2, 8, &key, &ivb[0], RC5_DECRYPT); + if (!TEST_mem_eq(&rc5_cbc_plain[n][0], sizeof(rc5_cbc_plain[0]), + buf2, sizeof(buf2)) != 0) + testresult = 0; } - if (err == 0) - printf("cbc RC5 ok\n"); - EXIT(err); - return (err); + return testresult; } +#endif +void register_tests(void) +{ +#ifndef OPENSSL_NO_RC5 + ADD_ALL_TESTS(test_rc5_ecb, OSSL_NELEM(RC5key)); + ADD_ALL_TESTS(test_rc5_cbc, RC5_CBC_NUM); #endif +} From matt at openssl.org Wed Apr 12 08:57:28 2017 From: matt at openssl.org (Matt Caswell) Date: Wed, 12 Apr 2017 08:57:28 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491987448.514213.22587.nullmailer@dev.openssl.org> The branch master has been updated via 74284c887e4a54cf0d2378535ef5f98e7b722483 (commit) from 7f13fad218b5a55fcb13caf2b9cb7ac5e4bd8950 (commit) - Log ----------------------------------------------------------------- commit 74284c887e4a54cf0d2378535ef5f98e7b722483 Author: Pauli Date: Fri Apr 7 13:11:57 2017 +1000 Update rc4test to use the test infrastructure Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3162) ----------------------------------------------------------------------- Summary of changes: test/build.info | 2 +- test/rc4test.c | 189 +++++++++++++++++++++----------------------------------- 2 files changed, 72 insertions(+), 119 deletions(-) diff --git a/test/build.info b/test/build.info index bee6024..2f9ea8d 100644 --- a/test/build.info +++ b/test/build.info @@ -87,7 +87,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[rc2test]=../include DEPEND[rc2test]=../libcrypto - SOURCE[rc4test]=rc4test.c + SOURCE[rc4test]=rc4test.c testutil.c test_main.c INCLUDE[rc4test]=../include DEPEND[rc4test]=../libcrypto diff --git a/test/rc4test.c b/test/rc4test.c index 7a77b82..e6d4ccf 100644 --- a/test/rc4test.c +++ b/test/rc4test.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,23 +7,17 @@ * https://www.openssl.org/source/license.html */ -#include -#include #include #include "../e_os.h" +#include "test_main.h" +#include "testutil.h" -#ifdef OPENSSL_NO_RC4 -int main(int argc, char *argv[]) -{ - printf("No RC4 support\n"); - return (0); -} -#else +#ifndef OPENSSL_NO_RC4 # include # include -static unsigned char keys[7][30] = { +static unsigned char keys[6][30] = { {8, 0x01, 0x23, 0x45, 0x67, 0x89, 0xab, 0xcd, 0xef}, {8, 0x01, 0x23, 0x45, 0x67, 0x89, 0xab, 0xcd, 0xef}, {8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, @@ -32,9 +26,9 @@ static unsigned char keys[7][30] = { {4, 0xef, 0x01, 0x23, 0x45}, }; -static unsigned char data_len[7] = { 8, 8, 8, 20, 28, 10 }; +static unsigned char data_len[6] = { 8, 8, 8, 20, 28, 10 }; -static unsigned char data[7][30] = { +static unsigned char data[6][30] = { {0x01, 0x23, 0x45, 0x67, 0x89, 0xab, 0xcd, 0xef, 0xff}, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff}, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff}, @@ -46,10 +40,9 @@ static unsigned char data[7][30] = { 0x12, 0x34, 0x56, 0x78, 0x9A, 0xBC, 0xDE, 0xF0, 0x12, 0x34, 0x56, 0x78, 0xff}, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff}, - {0}, }; -static unsigned char output[7][30] = { +static unsigned char output[6][30] = { {0x75, 0xb7, 0x87, 0x80, 0x99, 0xe0, 0xc5, 0x96, 0x00}, {0x74, 0x94, 0xc2, 0xe7, 0x10, 0x4b, 0x08, 0x79, 0x00}, {0xde, 0x18, 0x89, 0x41, 0xa3, 0x37, 0x5d, 0x3a, 0x00}, @@ -61,115 +54,75 @@ static unsigned char output[7][30] = { 0x89, 0x2e, 0xbe, 0x30, 0x14, 0x3c, 0xe2, 0x87, 0x40, 0x01, 0x1e, 0xcf, 0x00}, {0xd6, 0xa1, 0x41, 0xa7, 0xec, 0x3c, 0x38, 0xdf, 0xbd, 0x61, 0x00}, - {0}, }; -int main(int argc, char *argv[]) +static int test_rc4_encrypt(const int i) { - int i, err = 0; - int j; - unsigned char *p; + unsigned char obuf[512]; RC4_KEY key; + + RC4_set_key(&key, keys[i][0], &(keys[i][1])); + memset(obuf, 0, sizeof(obuf)); + RC4(&key, data_len[i], &(data[i][0]), obuf); + return TEST_mem_eq(obuf, data_len[i] + 1, output[i], data_len[i] + 1); +} + +static int test_rc4_end_processing(const int i) +{ unsigned char obuf[512]; + RC4_KEY key; - for (i = 0; i < 6; i++) { - RC4_set_key(&key, keys[i][0], &(keys[i][1])); - memset(obuf, 0, sizeof(obuf)); - RC4(&key, data_len[i], &(data[i][0]), obuf); - if (memcmp(obuf, output[i], data_len[i] + 1) != 0) { - printf("error calculating RC4\n"); - printf("output:"); - for (j = 0; j < data_len[i] + 1; j++) - printf(" %02x", obuf[j]); - printf("\n"); - printf("expect:"); - p = &(output[i][0]); - for (j = 0; j < data_len[i] + 1; j++) - printf(" %02x", *(p++)); - printf("\n"); - err++; - } else - printf("test %d ok\n", i); - } - printf("test end processing "); - for (i = 0; i < data_len[3]; i++) { - RC4_set_key(&key, keys[3][0], &(keys[3][1])); - memset(obuf, 0, sizeof(obuf)); - RC4(&key, i, &(data[3][0]), obuf); - if ((memcmp(obuf, output[3], i) != 0) || (obuf[i] != 0)) { - printf("error in RC4 length processing\n"); - printf("output:"); - for (j = 0; j < i + 1; j++) - printf(" %02x", obuf[j]); - printf("\n"); - printf("expect:"); - p = &(output[3][0]); - for (j = 0; j < i; j++) - printf(" %02x", *(p++)); - printf(" 00\n"); - err++; - } else { - printf("."); - fflush(stdout); - } - } - printf("done\n"); - printf("test multi-call "); - for (i = 0; i < data_len[3]; i++) { - RC4_set_key(&key, keys[3][0], &(keys[3][1])); - memset(obuf, 0, sizeof(obuf)); - RC4(&key, i, &(data[3][0]), obuf); - RC4(&key, data_len[3] - i, &(data[3][i]), &(obuf[i])); - if (memcmp(obuf, output[3], data_len[3] + 1) != 0) { - printf("error in RC4 multi-call processing\n"); - printf("output:"); - for (j = 0; j < data_len[3] + 1; j++) - printf(" %02x", obuf[j]); - printf("\n"); - printf("expect:"); - p = &(output[3][0]); - for (j = 0; j < data_len[3] + 1; j++) - printf(" %02x", *(p++)); - err++; - } else { - printf("."); - fflush(stdout); - } - } - printf("done\n"); - printf("bulk test "); - { - unsigned char buf[513]; - SHA_CTX c; - unsigned char md[SHA_DIGEST_LENGTH]; - static unsigned char expected[] = { - 0xa4, 0x7b, 0xcc, 0x00, 0x3d, 0xd0, 0xbd, 0xe1, 0xac, 0x5f, - 0x12, 0x1e, 0x45, 0xbc, 0xfb, 0x1a, 0xa1, 0xf2, 0x7f, 0xc5 - }; - - RC4_set_key(&key, keys[0][0], &(keys[3][1])); - memset(buf, 0, sizeof(buf)); - SHA1_Init(&c); - for (i = 0; i < 2571; i++) { - RC4(&key, sizeof(buf), buf, buf); - SHA1_Update(&c, buf, sizeof(buf)); - } - SHA1_Final(md, &c); - - if (memcmp(md, expected, sizeof(md))) { - printf("error in RC4 bulk test\n"); - printf("output:"); - for (j = 0; j < (int)sizeof(md); j++) - printf(" %02x", md[j]); - printf("\n"); - printf("expect:"); - for (j = 0; j < (int)sizeof(md); j++) - printf(" %02x", expected[j]); - printf("\n"); - err++; - } else - printf("ok\n"); + RC4_set_key(&key, keys[3][0], &(keys[3][1])); + memset(obuf, 0, sizeof(obuf)); + RC4(&key, i, &(data[3][0]), obuf); + if (!TEST_mem_eq(obuf, i, output[3], i)) + return 0; + return TEST_uchar_eq(obuf[i], 0); +} + +static int test_rc4_multi_call(const int i) +{ + unsigned char obuf[512]; + RC4_KEY key; + + RC4_set_key(&key, keys[3][0], &(keys[3][1])); + memset(obuf, 0, sizeof(obuf)); + RC4(&key, i, &(data[3][0]), obuf); + RC4(&key, data_len[3] - i, &(data[3][i]), &(obuf[i])); + return TEST_mem_eq(obuf, data_len[3] + 1, output[3], data_len[3] + 1); +} + +static int test_rc_bulk(void) +{ + RC4_KEY key; + unsigned char buf[513]; + SHA_CTX c; + unsigned char md[SHA_DIGEST_LENGTH]; + int i; + static unsigned char expected[] = { + 0xa4, 0x7b, 0xcc, 0x00, 0x3d, 0xd0, 0xbd, 0xe1, 0xac, 0x5f, + 0x12, 0x1e, 0x45, 0xbc, 0xfb, 0x1a, 0xa1, 0xf2, 0x7f, 0xc5 + }; + + RC4_set_key(&key, keys[0][0], &(keys[3][1])); + memset(buf, 0, sizeof(buf)); + SHA1_Init(&c); + for (i = 0; i < 2571; i++) { + RC4(&key, sizeof(buf), buf, buf); + SHA1_Update(&c, buf, sizeof(buf)); } - EXIT(err); + SHA1_Final(md, &c); + + return TEST_mem_eq(md, sizeof(md), expected, sizeof(expected)); } #endif + +void register_tests(void) +{ +#ifndef OPENSSL_NO_RC4 + ADD_ALL_TESTS(test_rc4_encrypt, OSSL_NELEM(data_len)); + ADD_ALL_TESTS(test_rc4_end_processing, data_len[3]); + ADD_ALL_TESTS(test_rc4_multi_call, data_len[3]); + ADD_TEST(test_rc_bulk); +#endif +} From builds at travis-ci.org Wed Apr 12 08:59:51 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 12 Apr 2017 08:59:51 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10212 (master - f46074c) In-Reply-To: Message-ID: <58edec85dcb6c_43fb0fcfcada442109d@93470f4d-59d8-40ed-ac6f-3cc4207b8a52.mail> Build Update for openssl/openssl ------------------------------------- Build: #10212 Status: Still Failing Duration: 17 minutes and 34 seconds Commit: f46074c (master) Author: Pauli Message: Update sha256t and sha512t to use the test infrastructure Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3168) View the changeset: https://github.com/openssl/openssl/compare/eb16fc8fb608...f46074c7b9d0 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221264671 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From matt at openssl.org Wed Apr 12 09:07:52 2017 From: matt at openssl.org (Matt Caswell) Date: Wed, 12 Apr 2017 09:07:52 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491988072.254702.25378.nullmailer@dev.openssl.org> The branch master has been updated via b19e93ec3d3fc569e58b442a355cc761eda14e96 (commit) via 14281c47aa0dae47bf0e3c233bb500fc32dc51bb (commit) via 48f1739600f33c92387debce2002acec6e365f1d (commit) from 74284c887e4a54cf0d2378535ef5f98e7b722483 (commit) - Log ----------------------------------------------------------------- commit b19e93ec3d3fc569e58b442a355cc761eda14e96 Author: Jon Spillett Date: Wed Apr 12 14:43:02 2017 +1000 Remove seed completely... Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3179) commit 14281c47aa0dae47bf0e3c233bb500fc32dc51bb Author: Jon Spillett Date: Wed Apr 12 09:45:54 2017 +1000 Updates after code review Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3179) commit 48f1739600f33c92387debce2002acec6e365f1d Author: Jon Spillett Date: Tue Apr 11 16:42:20 2017 +1000 Convert RSA tests to new framework Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3179) ----------------------------------------------------------------------- Summary of changes: test/build.info | 2 +- test/rsa_test.c | 203 ++++++++++++++++++++++++++++---------------------------- 2 files changed, 101 insertions(+), 104 deletions(-) diff --git a/test/build.info b/test/build.info index 2f9ea8d..9b816ef 100644 --- a/test/build.info +++ b/test/build.info @@ -147,7 +147,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[exptest]=../include DEPEND[exptest]=../libcrypto - SOURCE[rsa_test]=rsa_test.c + SOURCE[rsa_test]=rsa_test.c testutil.c test_main.c INCLUDE[rsa_test]=.. ../include DEPEND[rsa_test]=../libcrypto diff --git a/test/rsa_test.c b/test/rsa_test.c index a38be33..ea10c8e 100644 --- a/test/rsa_test.c +++ b/test/rsa_test.c @@ -18,11 +18,14 @@ #include #include #include + +#include "test_main.h" +#include "testutil.h" + #ifdef OPENSSL_NO_RSA -int main(int argc, char *argv[]) +void register_tests(void) { - printf("No RSA support\n"); - return (0); + /* No tests */ } #else # include @@ -217,13 +220,27 @@ static int pad_unknown(void) return (0); } -static const char rnd_seed[] = - "string to make the random number generator think it has entropy"; +static int rsa_setkey(RSA** key, unsigned char* ctext, int idx) +{ + int clen = 0; + *key = RSA_new(); + switch (idx) { + case 0: + clen = key1(*key, ctext); + break; + case 1: + clen = key2(*key, ctext); + break; + case 2: + clen = key3(*key, ctext); + break; + } + return clen; +} -int main(int argc, char *argv[]) +static int test_rsa_pkcs1(int idx) { - int err = 0; - int v; + int ret = 0; RSA *key; unsigned char ptext[256]; unsigned char ctext[256]; @@ -232,109 +249,89 @@ int main(int argc, char *argv[]) int plen; int clen = 0; int num; - int n; - CRYPTO_set_mem_debug(1); - CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON); + plen = sizeof(ptext_ex) - 1; + clen = rsa_setkey(&key, ctext_ex, idx); - RAND_seed(rnd_seed, sizeof rnd_seed); /* or OAEP may fail */ + num = RSA_public_encrypt(plen, ptext_ex, ctext, key, + RSA_PKCS1_PADDING); + if (!TEST_int_eq(num, clen)) + goto err; - plen = sizeof(ptext_ex) - 1; + num = RSA_private_decrypt(num, ctext, ptext, key, RSA_PKCS1_PADDING); + if (!TEST_mem_eq(ptext, num, ptext_ex, plen)) + goto err; - for (v = 0; v < 3; v++) { - key = RSA_new(); - switch (v) { - case 0: - clen = key1(key, ctext_ex); - break; - case 1: - clen = key2(key, ctext_ex); - break; - case 2: - clen = key3(key, ctext_ex); - break; - } - - num = RSA_public_encrypt(plen, ptext_ex, ctext, key, - RSA_PKCS1_PADDING); - if (num != clen) { - printf("PKCS#1 v1.5 encryption failed!\n"); - err = 1; - goto oaep; - } - - num = RSA_private_decrypt(num, ctext, ptext, key, RSA_PKCS1_PADDING); - if (num != plen || memcmp(ptext, ptext_ex, num) != 0) { - printf("PKCS#1 v1.5 decryption failed!\n"); - err = 1; - } else - printf("PKCS #1 v1.5 encryption/decryption ok\n"); - - oaep: - ERR_clear_error(); - num = RSA_public_encrypt(plen, ptext_ex, ctext, key, - RSA_PKCS1_OAEP_PADDING); - if (num == -1 && pad_unknown()) { - printf("No OAEP support\n"); - goto next; - } - if (num != clen) { - printf("OAEP encryption failed!\n"); - err = 1; - goto next; - } - - num = RSA_private_decrypt(num, ctext, ptext, key, - RSA_PKCS1_OAEP_PADDING); - if (num != plen || memcmp(ptext, ptext_ex, num) != 0) { - printf("OAEP decryption (encrypted data) failed!\n"); - err = 1; - } else if (memcmp(ctext, ctext_ex, num) == 0) - printf("OAEP test vector %d passed!\n", v); - - /* Different ciphertexts. Try decrypting ctext_ex */ - num = RSA_private_decrypt(clen, ctext_ex, ptext, key, - RSA_PKCS1_OAEP_PADDING); + ret = 1; +err: + RSA_free(key); + return ret; +} + +static int test_rsa_oaep(int idx) +{ + int ret = 0; + RSA *key; + unsigned char ptext[256]; + unsigned char ctext[256]; + static unsigned char ptext_ex[] = "\x54\x85\x9b\x34\x2c\x49\xea\x2a"; + unsigned char ctext_ex[256]; + int plen; + int clen = 0; + int num; + int n; - if (num != plen || memcmp(ptext, ptext_ex, num) != 0) { - printf("OAEP decryption (test vector data) failed!\n"); - err = 1; - } else - printf("OAEP encryption/decryption ok\n"); - - /* Try decrypting corrupted ciphertexts. */ - for (n = 0; n < clen; ++n) { - ctext[n] ^= 1; - num = RSA_private_decrypt(clen, ctext, ptext, key, - RSA_PKCS1_OAEP_PADDING); - if (num > 0) { - printf("Corrupt data decrypted!\n"); - err = 1; - break; - } - ctext[n] ^= 1; - } - - /* Test truncated ciphertexts, as well as negative length. */ - for (n = -1; n < clen; ++n) { - num = RSA_private_decrypt(n, ctext, ptext, key, + plen = sizeof(ptext_ex) - 1; + clen = rsa_setkey(&key, ctext_ex, idx); + + num = RSA_public_encrypt(plen, ptext_ex, ctext, key, + RSA_PKCS1_OAEP_PADDING); + if (num == -1 && pad_unknown()) { + TEST_info("Skipping: No OAEP support"); + ret = 1; + goto err; + } + if (!TEST_int_eq(num, clen)) + goto err; + + num = RSA_private_decrypt(num, ctext, ptext, key, + RSA_PKCS1_OAEP_PADDING); + if (!TEST_mem_eq(ptext, num, ptext_ex, plen)) + goto err; + + /* Different ciphertexts. Try decrypting ctext_ex */ + num = RSA_private_decrypt(clen, ctext_ex, ptext, key, + RSA_PKCS1_OAEP_PADDING); + if (!TEST_mem_eq(ptext, num, ptext_ex, plen)) + goto err; + + /* Try decrypting corrupted ciphertexts. */ + for (n = 0; n < clen; ++n) { + ctext[n] ^= 1; + num = RSA_private_decrypt(clen, ctext, ptext, key, RSA_PKCS1_OAEP_PADDING); - if (num > 0) { - printf("Truncated data decrypted!\n"); - err = 1; - break; - } - } - - next: - RSA_free(key); + if (!TEST_int_le(num, 0)) + goto err; + ctext[n] ^= 1; } -#ifndef OPENSSL_NO_CRYPTO_MDEBUG - if (CRYPTO_mem_leaks_fp(stderr) <= 0) - err = 1; -#endif + /* Test truncated ciphertexts, as well as negative length. */ + for (n = -1; n < clen; ++n) { + num = RSA_private_decrypt(n, ctext, ptext, key, + RSA_PKCS1_OAEP_PADDING); + if (!TEST_int_le(num, 0)) + goto err; + } + + ret = 1; +err: + RSA_free(key); + return ret; +} - return err; +void register_tests(void) +{ + ADD_ALL_TESTS(test_rsa_pkcs1, 3); + ADD_ALL_TESTS(test_rsa_oaep, 3); } #endif From builds at travis-ci.org Wed Apr 12 09:10:01 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 12 Apr 2017 09:10:01 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10213 (master - e49429a) In-Reply-To: Message-ID: <58edeee8a98f8_43fb0fcfb77f44314c1@93470f4d-59d8-40ed-ac6f-3cc4207b8a52.mail> Build Update for openssl/openssl ------------------------------------- Build: #10213 Status: Still Failing Duration: 22 minutes and 25 seconds Commit: e49429a (master) Author: Pauli Message: Update sha1test to use the test infrastructure Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3167) View the changeset: https://github.com/openssl/openssl/compare/f46074c7b9d0...e49429aa3f94 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221265391 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Wed Apr 12 09:21:52 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 12 Apr 2017 09:21:52 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10214 (master - 850b55a) In-Reply-To: Message-ID: <58edf1afcc4b0_43fcd7b4d63f85435ec@53287edb-bbc6-477a-a4d1-0710482f628e.mail> Build Update for openssl/openssl ------------------------------------- Build: #10214 Status: Still Failing Duration: 22 minutes and 3 seconds Commit: 850b55a (master) Author: Pauli Message: Update mdc2test to use the test infrastructure Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3164) View the changeset: https://github.com/openssl/openssl/compare/e49429aa3f94...850b55a98559 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221266466 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Wed Apr 12 09:30:01 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 12 Apr 2017 09:30:01 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10215 (master - 7f13fad) In-Reply-To: Message-ID: <58edf39f829f6_43fb0fcfcb7184554cd@93470f4d-59d8-40ed-ac6f-3cc4207b8a52.mail> Build Update for openssl/openssl ------------------------------------- Build: #10215 Status: Still Failing Duration: 22 minutes and 28 seconds Commit: 7f13fad (master) Author: Pauli Message: Update rc5test to use the test infrastructure Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3163) View the changeset: https://github.com/openssl/openssl/compare/850b55a98559...7f13fad218b5 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221268145 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From matt at openssl.org Wed Apr 12 09:33:21 2017 From: matt at openssl.org (Matt Caswell) Date: Wed, 12 Apr 2017 09:33:21 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491989601.745196.30443.nullmailer@dev.openssl.org> The branch master has been updated via 0bf3c66c9d5cfc4dc7b0eee326ac3554956d7aa3 (commit) via 56bf5c55cd7d751390e92aad2b2bd9cc031b1e43 (commit) via 70e1acd786511724e3680790f358d1fc4756a49b (commit) from b19e93ec3d3fc569e58b442a355cc761eda14e96 (commit) - Log ----------------------------------------------------------------- commit 0bf3c66c9d5cfc4dc7b0eee326ac3554956d7aa3 Author: Jon Spillett Date: Wed Apr 12 11:56:45 2017 +1000 Remove unused variable. Thanks @pauli-oracle Reviewed-by: Richard Levitte Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3177) commit 56bf5c55cd7d751390e92aad2b2bd9cc031b1e43 Author: Jon Spillett Date: Wed Apr 12 11:03:29 2017 +1000 Code review. Split tests up Reviewed-by: Richard Levitte Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3177) commit 70e1acd786511724e3680790f358d1fc4756a49b Author: Jon Spillett Date: Tue Apr 11 14:31:28 2017 +1000 Convert blowfish tests to new framework Reviewed-by: Richard Levitte Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3177) ----------------------------------------------------------------------- Summary of changes: test/bftest.c | 254 ++++++++++++++++++++++++++------------------------------ test/build.info | 2 +- 2 files changed, 121 insertions(+), 135 deletions(-) diff --git a/test/bftest.c b/test/bftest.c index eb8d8a6..978fd58 100644 --- a/test/bftest.c +++ b/test/bftest.c @@ -17,6 +17,9 @@ #include #include /* To see if OPENSSL_NO_BF is defined */ +#include "test_main_custom.h" +#include "testutil.h" + #include "../e_os.h" #ifdef OPENSSL_NO_BF @@ -229,20 +232,6 @@ static unsigned char key_out[KEY_TEST_NUM][8] = { {0x05, 0x04, 0x4B, 0x62, 0xFA, 0x52, 0xD0, 0x80}, }; -static int test(void); -static int print_test_data(void); -int main(int argc, char *argv[]) -{ - int ret; - - if (argc > 1) - ret = print_test_data(); - else - ret = test(); - - EXIT(ret); -} - static int print_test_data(void) { unsigned int i, j; @@ -308,103 +297,68 @@ static int print_test_data(void) return (0); } -static int test(void) +static int test_bf_ecb_raw(int n) { - unsigned char cbc_in[40], cbc_out[40], iv[8]; - int i, n, err = 0; + int ret = 1; BF_KEY key; BF_LONG data[2]; + + BF_set_key(&key, strlen(bf_key[n]), (unsigned char *)bf_key[n]); + + data[0] = bf_plain[n][0]; + data[1] = bf_plain[n][1]; + BF_encrypt(data, &key); + if (!TEST_mem_eq(&(bf_cipher[n][0]), BF_BLOCK, &(data[0]), BF_BLOCK)) + ret = 0; + + BF_decrypt(&(data[0]), &key); + if (!TEST_mem_eq(&(bf_plain[n][0]), BF_BLOCK, &(data[0]), BF_BLOCK)) + ret = 0; + + return ret; +} + +static int test_bf_ecb(int n) +{ + int ret = 1; + BF_KEY key; unsigned char out[8]; - BF_LONG len; -# ifdef CHARSET_EBCDIC - ebcdic2ascii(cbc_data, cbc_data, strlen(cbc_data)); -# endif + BF_set_key(&key, 8, ecb_data[n]); - printf("testing blowfish in raw ecb mode\n"); - for (n = 0; n < 2; n++) { -# ifdef CHARSET_EBCDIC - ebcdic2ascii(bf_key[n], bf_key[n], strlen(bf_key[n])); -# endif - BF_set_key(&key, strlen(bf_key[n]), (unsigned char *)bf_key[n]); - - data[0] = bf_plain[n][0]; - data[1] = bf_plain[n][1]; - BF_encrypt(data, &key); - if (memcmp(&(bf_cipher[n][0]), &(data[0]), 8) != 0) { - printf("BF_encrypt error encrypting\n"); - printf("got :"); - for (i = 0; i < 2; i++) - printf("%08lX ", (unsigned long)data[i]); - printf("\n"); - printf("expected:"); - for (i = 0; i < 2; i++) - printf("%08lX ", (unsigned long)bf_cipher[n][i]); - err = 1; - printf("\n"); - } - - BF_decrypt(&(data[0]), &key); - if (memcmp(&(bf_plain[n][0]), &(data[0]), 8) != 0) { - printf("BF_encrypt error decrypting\n"); - printf("got :"); - for (i = 0; i < 2; i++) - printf("%08lX ", (unsigned long)data[i]); - printf("\n"); - printf("expected:"); - for (i = 0; i < 2; i++) - printf("%08lX ", (unsigned long)bf_plain[n][i]); - printf("\n"); - err = 1; - } - } + BF_ecb_encrypt(&(plain_data[n][0]), out, &key, BF_ENCRYPT); + if (!TEST_mem_eq(&(cipher_data[n][0]), BF_BLOCK, out, BF_BLOCK)) + ret = 0; - printf("testing blowfish in ecb mode\n"); - - for (n = 0; n < NUM_TESTS; n++) { - BF_set_key(&key, 8, ecb_data[n]); - - BF_ecb_encrypt(&(plain_data[n][0]), out, &key, BF_ENCRYPT); - if (memcmp(&(cipher_data[n][0]), out, 8) != 0) { - printf("BF_ecb_encrypt blowfish error encrypting\n"); - printf("got :"); - for (i = 0; i < 8; i++) - printf("%02X ", out[i]); - printf("\n"); - printf("expected:"); - for (i = 0; i < 8; i++) - printf("%02X ", cipher_data[n][i]); - err = 1; - printf("\n"); - } - - BF_ecb_encrypt(out, out, &key, BF_DECRYPT); - if (memcmp(&(plain_data[n][0]), out, 8) != 0) { - printf("BF_ecb_encrypt error decrypting\n"); - printf("got :"); - for (i = 0; i < 8; i++) - printf("%02X ", out[i]); - printf("\n"); - printf("expected:"); - for (i = 0; i < 8; i++) - printf("%02X ", plain_data[n][i]); - printf("\n"); - err = 1; - } - } + BF_ecb_encrypt(out, out, &key, BF_DECRYPT); + if (!TEST_mem_eq(&(plain_data[n][0]), BF_BLOCK, out, BF_BLOCK)) + ret = 0; - printf("testing blowfish set_key\n"); - for (n = 1; n < KEY_TEST_NUM; n++) { - BF_set_key(&key, n, key_test); - BF_ecb_encrypt(key_data, out, &key, BF_ENCRYPT); - /* mips-sgi-irix6.5-gcc vv -mabi=64 bug workaround */ - if (memcmp(out, &(key_out[i = n - 1][0]), 8) != 0) { - printf("blowfish setkey error\n"); - err = 1; - } - } + return ret; +} + +static int test_bf_set_key(int n) +{ + int ret = 1; + BF_KEY key; + unsigned char out[8]; + + BF_set_key(&key, n+1, key_test); + BF_ecb_encrypt(key_data, out, &key, BF_ENCRYPT); + /* mips-sgi-irix6.5-gcc vv -mabi=64 bug workaround */ + if (!TEST_mem_eq(out, 8, &(key_out[n][0]), 8)) + ret = 0; + + return ret; +} + +static int test_bf_cbc(void) +{ + unsigned char cbc_in[40], cbc_out[40], iv[8]; + int ret = 1; + BF_KEY key; + BF_LONG len; - printf("testing blowfish in cbc mode\n"); len = strlen(cbc_data) + 1; BF_set_key(&key, 16, cbc_key); @@ -413,20 +367,25 @@ static int test(void) memcpy(iv, cbc_iv, sizeof iv); BF_cbc_encrypt((unsigned char *)cbc_data, cbc_out, len, &key, iv, BF_ENCRYPT); - if (memcmp(cbc_out, cbc_ok, 32) != 0) { - err = 1; - printf("BF_cbc_encrypt encrypt error\n"); - for (i = 0; i < 32; i++) - printf("0x%02X,", cbc_out[i]); - } + if (!TEST_mem_eq(cbc_out, 32, cbc_ok, 32)) + ret = 0; + memcpy(iv, cbc_iv, 8); BF_cbc_encrypt(cbc_out, cbc_in, len, &key, iv, BF_DECRYPT); - if (memcmp(cbc_in, cbc_data, strlen(cbc_data) + 1) != 0) { - printf("BF_cbc_encrypt decrypt error\n"); - err = 1; - } + if (!TEST_mem_eq(cbc_in, len, cbc_data, strlen(cbc_data) + 1)) + ret = 0; - printf("testing blowfish in cfb64 mode\n"); + return ret; +} + +static int test_bf_cfb64(void) +{ + unsigned char cbc_in[40], cbc_out[40], iv[8]; + int n, ret = 1; + BF_KEY key; + BF_LONG len; + + len = strlen(cbc_data) + 1; BF_set_key(&key, 16, cbc_key); memset(cbc_in, 0, 40); @@ -437,23 +396,28 @@ static int test(void) &key, iv, &n, BF_ENCRYPT); BF_cfb64_encrypt((unsigned char *)&(cbc_data[13]), &(cbc_out[13]), len - 13, &key, iv, &n, BF_ENCRYPT); - if (memcmp(cbc_out, cfb64_ok, (int)len) != 0) { - err = 1; - printf("BF_cfb64_encrypt encrypt error\n"); - for (i = 0; i < (int)len; i++) - printf("0x%02X,", cbc_out[i]); - } + if (!TEST_mem_eq(cbc_out, (int)len, cfb64_ok, (int)len)) + ret = 0; + n = 0; memcpy(iv, cbc_iv, 8); BF_cfb64_encrypt(cbc_out, cbc_in, 17, &key, iv, &n, BF_DECRYPT); BF_cfb64_encrypt(&(cbc_out[17]), &(cbc_in[17]), len - 17, &key, iv, &n, BF_DECRYPT); - if (memcmp(cbc_in, cbc_data, (int)len) != 0) { - printf("BF_cfb64_encrypt decrypt error\n"); - err = 1; - } + if (!TEST_mem_eq(cbc_in, (int)len, cbc_data, (int)len)) + ret = 0; + + return ret; +} + +static int test_bf_ofb64(void) +{ + unsigned char cbc_in[40], cbc_out[40], iv[8]; + int n, ret = 1; + BF_KEY key; + BF_LONG len; - printf("testing blowfish in ofb64\n"); + len = strlen(cbc_data) + 1; BF_set_key(&key, 16, cbc_key); memset(cbc_in, 0, 40); @@ -464,21 +428,43 @@ static int test(void) &n); BF_ofb64_encrypt((unsigned char *)&(cbc_data[13]), &(cbc_out[13]), len - 13, &key, iv, &n); - if (memcmp(cbc_out, ofb64_ok, (int)len) != 0) { - err = 1; - printf("BF_ofb64_encrypt encrypt error\n"); - for (i = 0; i < (int)len; i++) - printf("0x%02X,", cbc_out[i]); - } + if (!TEST_mem_eq(cbc_out, (int)len, ofb64_ok, (int)len)) + ret = 0; + n = 0; memcpy(iv, cbc_iv, 8); BF_ofb64_encrypt(cbc_out, cbc_in, 17, &key, iv, &n); BF_ofb64_encrypt(&(cbc_out[17]), &(cbc_in[17]), len - 17, &key, iv, &n); - if (memcmp(cbc_in, cbc_data, (int)len) != 0) { - printf("BF_ofb64_encrypt decrypt error\n"); - err = 1; + if (!TEST_mem_eq(cbc_in, (int)len, cbc_data, (int)len)) + ret = 0; + + return ret; +} + +int test_main(int argc, char *argv[]) +{ + int ret; +# ifdef CHARSET_EBCDIC + int n; + + ebcdic2ascii(cbc_data, cbc_data, strlen(cbc_data)); + for (n = 0; n < 2; n++) { + ebcdic2ascii(bf_key[n], bf_key[n], strlen(bf_key[n])); } +# endif + + ADD_ALL_TESTS(test_bf_ecb_raw, 2); + ADD_ALL_TESTS(test_bf_ecb, NUM_TESTS); + ADD_ALL_TESTS(test_bf_set_key, KEY_TEST_NUM-1); + ADD_TEST(test_bf_cbc); + ADD_TEST(test_bf_cfb64); + ADD_TEST(test_bf_ofb64); + + if (argc > 1) + ret = print_test_data(); + else + ret = run_tests(argv[0]); - return (err); + return ret; } #endif diff --git a/test/build.info b/test/build.info index 9b816ef..2094672 100644 --- a/test/build.info +++ b/test/build.info @@ -131,7 +131,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[casttest]=../include DEPEND[casttest]=../libcrypto - SOURCE[bftest]=bftest.c + SOURCE[bftest]=bftest.c testutil.c test_main_custom.c INCLUDE[bftest]=../include DEPEND[bftest]=../libcrypto From builds at travis-ci.org Wed Apr 12 09:41:52 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 12 Apr 2017 09:41:52 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10216 (master - 74284c8) In-Reply-To: Message-ID: <58edf660c63af_43fb0fcddfdf04692c8@93470f4d-59d8-40ed-ac6f-3cc4207b8a52.mail> Build Update for openssl/openssl ------------------------------------- Build: #10216 Status: Still Failing Duration: 23 minutes and 3 seconds Commit: 74284c8 (master) Author: Pauli Message: Update rc4test to use the test infrastructure Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3162) View the changeset: https://github.com/openssl/openssl/compare/7f13fad218b5...74284c887e4a View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221269346 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Wed Apr 12 09:51:52 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 12 Apr 2017 09:51:52 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10217 (master - b19e93e) In-Reply-To: Message-ID: <58edf8b8b5bf_43fcd7b4cdd0c59314d@53287edb-bbc6-477a-a4d1-0710482f628e.mail> Build Update for openssl/openssl ------------------------------------- Build: #10217 Status: Still Failing Duration: 23 minutes and 24 seconds Commit: b19e93e (master) Author: Jon Spillett Message: Remove seed completely... Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3179) View the changeset: https://github.com/openssl/openssl/compare/74284c887e4a...b19e93ec3d3f View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221272717 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From matt at openssl.org Wed Apr 12 09:58:45 2017 From: matt at openssl.org (Matt Caswell) Date: Wed, 12 Apr 2017 09:58:45 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491991125.971288.3128.nullmailer@dev.openssl.org> The branch master has been updated via f5864227dced7e214fdcf338d024a7431f22a788 (commit) from 0bf3c66c9d5cfc4dc7b0eee326ac3554956d7aa3 (commit) - Log ----------------------------------------------------------------- commit f5864227dced7e214fdcf338d024a7431f22a788 Author: Pauli Date: Mon Apr 10 07:44:08 2017 +1000 Update d2i_test to use the test infrastructure Reviewed-by: Richard Levitte Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3166) ----------------------------------------------------------------------- Summary of changes: test/d2i_test.c | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/test/d2i_test.c b/test/d2i_test.c index e771e01..0413ceb 100644 --- a/test/d2i_test.c +++ b/test/d2i_test.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -53,12 +53,12 @@ static int test_bad_asn1() int derlen; int len; - if ((bio = BIO_new_file(test_file, "r")) == NULL) + bio = BIO_new_file(test_file, "r"); + if (!TEST_ptr(bio)) return 0; if (expected_error == ASN1_BIO) { - value = ASN1_item_d2i_bio(item_type, bio, NULL); - if (value == NULL) + if (TEST_ptr_null(ASN1_item_d2i_bio(item_type, bio, NULL))) ret = 1; goto err; } @@ -69,12 +69,12 @@ static int test_bad_asn1() * decoder is called. */ len = BIO_read(bio, buf, sizeof buf); - if (len < 0) + if (!TEST_int_ge(len, 0)) goto err; value = ASN1_item_d2i(NULL, &buf_ptr, len, item_type); if (value == NULL) { - if (expected_error == ASN1_DECODE) + if (TEST_int_eq(expected_error, ASN1_DECODE)) ret = 1; goto err; } @@ -82,23 +82,24 @@ static int test_bad_asn1() derlen = ASN1_item_i2d(value, &der, item_type); if (der == NULL || derlen < 0) { - if (expected_error == ASN1_ENCODE) + if (TEST_int_eq(expected_error, ASN1_ENCODE)) ret = 1; goto err; } if (derlen != len || memcmp(der, buf, derlen) != 0) { - if (expected_error == ASN1_COMPARE) + if (TEST_int_eq(expected_error, ASN1_COMPARE)) ret = 1; goto err; } - if (expected_error == ASN1_OK) + if (TEST_int_eq(expected_error, ASN1_OK)) ret = 1; err: /* Don't indicate success for memory allocation errors */ - if (ret == 1 && ERR_GET_REASON(ERR_peek_error()) == ERR_R_MALLOC_FAILURE) + if (ret == 1 + && !TEST_false(ERR_GET_REASON(ERR_peek_error()) == ERR_R_MALLOC_FAILURE)) ret = 0; BIO_free(bio); OPENSSL_free(der); @@ -125,9 +126,8 @@ int test_main(int argc, char *argv[]) {"compare", ASN1_COMPARE} }; - if (argc != 4) { - fprintf(stderr, - "Usage: d2i_test item_name expected_error file.der\n"); + if (!TEST_int_eq(argc, 4)) { + fprintf(stderr, "Usage: d2i_test item_name expected_error file.der\n"); return 1; } @@ -138,7 +138,7 @@ int test_main(int argc, char *argv[]) item_type = ASN1_ITEM_lookup(test_type_name); if (item_type == NULL) { - fprintf(stderr, "Unknown type %s\n", test_type_name); + TEST_error("Unknown type %s\n", test_type_name); fprintf(stderr, "Supported types:\n"); for (i = 0;; i++) { const ASN1_ITEM *it = ASN1_ITEM_get(i); @@ -158,7 +158,7 @@ int test_main(int argc, char *argv[]) } if (expected_error == ASN1_UNKNOWN) { - fprintf(stderr, "Unknown expected error %s\n", expected_error_string); + TEST_error("Unknown expected error %s\n", expected_error_string); return 1; } From builds at travis-ci.org Wed Apr 12 10:01:35 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 12 Apr 2017 10:01:35 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10218 (master - 0bf3c66) In-Reply-To: Message-ID: <58edfaff6ed52_43fb0fcddfbfc493864@93470f4d-59d8-40ed-ac6f-3cc4207b8a52.mail> Build Update for openssl/openssl ------------------------------------- Build: #10218 Status: Still Failing Duration: 21 minutes and 51 seconds Commit: 0bf3c66 (master) Author: Jon Spillett Message: Remove unused variable. Thanks @pauli-oracle Reviewed-by: Richard Levitte Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3177) View the changeset: https://github.com/openssl/openssl/compare/b19e93ec3d3f...0bf3c66c9d5c View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221280685 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From matt at openssl.org Wed Apr 12 10:01:54 2017 From: matt at openssl.org (Matt Caswell) Date: Wed, 12 Apr 2017 10:01:54 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491991314.178929.4546.nullmailer@dev.openssl.org> The branch master has been updated via 789dfc478eea50d8f47f192ef8f3d359ae386c78 (commit) from f5864227dced7e214fdcf338d024a7431f22a788 (commit) - Log ----------------------------------------------------------------- commit 789dfc478eea50d8f47f192ef8f3d359ae386c78 Author: Pauli Date: Mon Apr 10 10:05:55 2017 +1000 Update secmemtest and memeleaktest to use the test infrastructure. It isn't easy to use the test framework since it turns memory debugging on as well and the CRYPTO_mem_leaks_fp function cannot be called twice. Reviewed-by: Richard Levitte Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3169) ----------------------------------------------------------------------- Summary of changes: test/build.info | 4 +- test/memleaktest.c | 32 +++++++++----- test/secmemtest.c | 119 ++++++++++++++++++++++------------------------------- 3 files changed, 72 insertions(+), 83 deletions(-) diff --git a/test/build.info b/test/build.info index 2094672..9d6a782 100644 --- a/test/build.info +++ b/test/build.info @@ -203,7 +203,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[asynctest]=.. ../include DEPEND[asynctest]=../libcrypto - SOURCE[secmemtest]=secmemtest.c + SOURCE[secmemtest]=secmemtest.c testutil.c test_main.c INCLUDE[secmemtest]=../include DEPEND[secmemtest]=../libcrypto @@ -211,7 +211,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[srptest]=../include DEPEND[srptest]=../libcrypto - SOURCE[memleaktest]=memleaktest.c + SOURCE[memleaktest]=memleaktest.c testutil.c INCLUDE[memleaktest]=../include DEPEND[memleaktest]=../libcrypto diff --git a/test/memleaktest.c b/test/memleaktest.c index 2b23df7..d239bd2 100644 --- a/test/memleaktest.c +++ b/test/memleaktest.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,12 +7,23 @@ * https://www.openssl.org/source/license.html */ -#include #include #include #include -int main(int argc, char **argv) +#include "testutil.h" + +/* + * We use a proper main function here instead of the custom main from the + * test framework because the CRYPTO_mem_leaks_fp function cannot be called + * a second time without trying to use a null pointer. The test framework + * calls this function as part of its close down. + * + * A work around is to call putenv("OPENSSL_DEBUG_MEMORY=0"); before exiting + * but that is worse than avoiding the test framework's main. + */ + +int main(int argc, char *argv[]) { #ifndef OPENSSL_NO_CRYPTO_MDEBUG char *p; @@ -25,10 +36,8 @@ int main(int argc, char **argv) CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON); lost = OPENSSL_malloc(3); - if (lost == NULL) { - fprintf(stderr, "OPENSSL_malloc failed\n"); - return 1; - } + if (!TEST_ptr(lost)) + return EXIT_FAILURE; if (argv[1] && strcmp(argv[1], "freeit") == 0) { OPENSSL_free(lost); @@ -37,10 +46,11 @@ int main(int argc, char **argv) noleak = CRYPTO_mem_leaks_fp(stderr); /* If -1 return value something bad happened */ - if (noleak == -1) - return 1; - return ((lost != NULL) ^ (noleak == 0)); + if (!TEST_int_ne(noleak, -1)) + return EXIT_FAILURE; + + return TEST_int_eq(lost != NULL, noleak == 0) ? EXIT_SUCCESS : EXIT_FAILURE; #else - return 0; + return EXIT_SUCCESS; #endif } diff --git a/test/secmemtest.c b/test/secmemtest.c index c31f391..9fd0235 100644 --- a/test/secmemtest.c +++ b/test/secmemtest.c @@ -1,5 +1,5 @@ /* - * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2015-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -9,95 +9,74 @@ #include -#define perror_line() perror_line1(__LINE__) -#define perror_line1(l) perror_line2(l) -#define perror_line2(l) perror("failed " #l) +#include "test_main.h" +#include "testutil.h" -int main(int argc, char **argv) +static int test_sec_mem(void) { #if defined(OPENSSL_SYS_LINUX) || defined(OPENSSL_SYS_UNIX) + int testresult = 0; char *p = NULL, *q = NULL, *r = NULL, *s = NULL; r = OPENSSL_secure_malloc(20); /* r = non-secure 20 */ - if (r == NULL) { - perror_line(); - return 1; - } - if (!CRYPTO_secure_malloc_init(4096, 32)) { - perror_line(); - return 1; - } - if (CRYPTO_secure_allocated(r)) { - perror_line(); - return 1; - } + if (!TEST_ptr(r) + || !TEST_true(CRYPTO_secure_malloc_init(4096, 32)) + || !TEST_false(CRYPTO_secure_allocated(r))) + goto end; p = OPENSSL_secure_malloc(20); - /* r = non-secure 20, p = secure 20 */ - if (!CRYPTO_secure_allocated(p)) { - perror_line(); - return 1; - } - /* 20 secure -> 32-byte minimum allocaton unit */ - if (CRYPTO_secure_used() != 32) { - perror_line(); - return 1; - } + if (!TEST_ptr(p) + /* r = non-secure 20, p = secure 20 */ + || !TEST_true(CRYPTO_secure_allocated(p)) + /* 20 secure -> 32-byte minimum allocaton unit */ + || !TEST_size_t_eq(CRYPTO_secure_used(), 32)) + goto end; q = OPENSSL_malloc(20); + if (!TEST_ptr(q)) + goto end; /* r = non-secure 20, p = secure 20, q = non-secure 20 */ - if (CRYPTO_secure_allocated(q)) { - perror_line(); - return 1; - } + if (!TEST_false(CRYPTO_secure_allocated(q))) + goto end; s = OPENSSL_secure_malloc(20); - /* r = non-secure 20, p = secure 20, q = non-secure 20, s = secure 20 */ - if (!CRYPTO_secure_allocated(s)) { - perror_line(); - return 1; - } - /* 2 * 20 secure -> 64 bytes allocated */ - if (CRYPTO_secure_used() != 64) { - perror_line(); - return 1; - } + if (!TEST_ptr(s) + /* r = non-secure 20, p = secure 20, q = non-secure 20, s = secure 20 */ + || !TEST_true(CRYPTO_secure_allocated(s)) + /* 2 * 20 secure -> 64 bytes allocated */ + || !TEST_size_t_eq(CRYPTO_secure_used(), 64)) + goto end; OPENSSL_secure_free(p); + p = NULL; /* 20 secure -> 32 bytes allocated */ - if (CRYPTO_secure_used() != 32) { - perror_line(); - return 1; - } + if (!TEST_size_t_eq(CRYPTO_secure_used(), 32)) + goto end; OPENSSL_free(q); + q = NULL; /* should not complete, as secure memory is still allocated */ - if (CRYPTO_secure_malloc_done()) { - perror_line(); - return 1; - } - if (!CRYPTO_secure_malloc_initialized()) { - perror_line(); - return 1; - } + if (!TEST_false(CRYPTO_secure_malloc_done()) + || !TEST_true(CRYPTO_secure_malloc_initialized())) + goto end; OPENSSL_secure_free(s); + s = NULL; /* secure memory should now be 0, so done should complete */ - if (CRYPTO_secure_used() != 0) { - perror_line(); - return 1; - } - if (!CRYPTO_secure_malloc_done()) { - perror_line(); - return 1; - } - if (CRYPTO_secure_malloc_initialized()) { - perror_line(); - return 1; - } + if (!TEST_size_t_eq(CRYPTO_secure_used(), 0) + || !TEST_true(CRYPTO_secure_malloc_done()) + || !TEST_false(CRYPTO_secure_malloc_initialized())) + goto end; /* this can complete - it was not really secure */ + testresult = 1; + end: + OPENSSL_secure_free(p); + OPENSSL_free(q); OPENSSL_secure_free(r); + OPENSSL_secure_free(s); + return testresult; #else /* Should fail. */ - if (CRYPTO_secure_malloc_init(4096, 32)) { - perror_line(); - return 1; - } + return TEST_false(CRYPTO_secure_malloc_init(4096, 32)); #endif - return 0; +} + +void register_tests(void) +{ + ADD_TEST(test_sec_mem); } From matt at openssl.org Wed Apr 12 10:05:01 2017 From: matt at openssl.org (Matt Caswell) Date: Wed, 12 Apr 2017 10:05:01 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491991501.304709.6308.nullmailer@dev.openssl.org> The branch master has been updated via 7635e5bccce9d865c1c006105421ca82dae064b5 (commit) from 789dfc478eea50d8f47f192ef8f3d359ae386c78 (commit) - Log ----------------------------------------------------------------- commit 7635e5bccce9d865c1c006105421ca82dae064b5 Author: Pauli Date: Mon Apr 10 14:05:41 2017 +1000 Update gmdifftime to use the test infrastructure Reviewed-by: Richard Levitte Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3171) ----------------------------------------------------------------------- Summary of changes: test/build.info | 2 +- test/gmdifftest.c | 68 +++++++++++++++++++++---------------------------------- 2 files changed, 27 insertions(+), 43 deletions(-) diff --git a/test/build.info b/test/build.info index 9d6a782..b376d3c 100644 --- a/test/build.info +++ b/test/build.info @@ -63,7 +63,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[ecdhtest]=../include DEPEND[ecdhtest]=../libcrypto - SOURCE[gmdifftest]=gmdifftest.c + SOURCE[gmdifftest]=gmdifftest.c testutil.c test_main.c INCLUDE[gmdifftest]=../include DEPEND[gmdifftest]=../libcrypto diff --git a/test/gmdifftest.c b/test/gmdifftest.c index 73c910d..462436f 100644 --- a/test/gmdifftest.c +++ b/test/gmdifftest.c @@ -1,5 +1,5 @@ /* - * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2015-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -8,7 +8,9 @@ */ #include -#include + +#include "test_main.h" +#include "testutil.h" #define SECS_PER_DAY (24 * 60 * 60) @@ -24,6 +26,7 @@ static int check_time(long offset) int off_day, off_sec; long toffset; time_t t1, t2; + time(&t1); t2 = t1 + offset; @@ -31,51 +34,32 @@ static int check_time(long offset) OPENSSL_gmtime(&t1, &tm1); o1 = tm1; OPENSSL_gmtime_adj(&tm1, 0, offset); - if ((tm1.tm_year != tm2.tm_year) || - (tm1.tm_mon != tm2.tm_mon) || - (tm1.tm_mday != tm2.tm_mday) || - (tm1.tm_hour != tm2.tm_hour) || - (tm1.tm_min != tm2.tm_min) || (tm1.tm_sec != tm2.tm_sec)) { - fprintf(stderr, "TIME ERROR!!\n"); - fprintf(stderr, "Time1: %d/%d/%d, %d:%02d:%02d\n", - tm2.tm_mday, tm2.tm_mon + 1, tm2.tm_year + 1900, - tm2.tm_hour, tm2.tm_min, tm2.tm_sec); - fprintf(stderr, "Time2: %d/%d/%d, %d:%02d:%02d\n", - tm1.tm_mday, tm1.tm_mon + 1, tm1.tm_year + 1900, - tm1.tm_hour, tm1.tm_min, tm1.tm_sec); + if (!TEST_int_eq(tm1.tm_year, tm2.tm_year) + || !TEST_int_eq(tm1.tm_mon, tm2.tm_mon) + || !TEST_int_eq(tm1.tm_mday, tm2.tm_mday) + || !TEST_int_eq(tm1.tm_hour, tm2.tm_hour) + || !TEST_int_eq(tm1.tm_min, tm2.tm_min) + || !TEST_int_eq(tm1.tm_sec, tm2.tm_sec) + || !TEST_true(OPENSSL_gmtime_diff(&off_day, &off_sec, &o1, &tm1))) return 0; - } - if (!OPENSSL_gmtime_diff(&off_day, &off_sec, &o1, &tm1)) + toffset = (long)off_day * SECS_PER_DAY + off_sec; + if (!TEST_long_eq(offset, toffset)) return 0; - toffset = (long)off_day *SECS_PER_DAY + off_sec; - if (offset != toffset) { - fprintf(stderr, "TIME OFFSET ERROR!!\n"); - fprintf(stderr, "Expected %ld, Got %ld (%d:%d)\n", - offset, toffset, off_day, off_sec); - return 0; - } return 1; } -int main(int argc, char **argv) +static int test_gmtime(int offset) { - long offset; - int fails; - - if (sizeof(time_t) < 8) { - fprintf(stderr, "Skipping; time_t is less than 64-bits\n"); - return 0; - } - for (fails = 0, offset = 0; offset < 1000000; offset++) { - if (!check_time(offset)) - fails++; - if (!check_time(-offset)) - fails++; - if (!check_time(offset * 1000)) - fails++; - if (!check_time(-offset * 1000)) - fails++; - } + return check_time(offset) && + check_time(-offset) && + check_time(offset * 1000L) && + check_time(-offset * 1000L); +} - return fails ? 1 : 0; +void register_tests(void) +{ + if (sizeof(time_t) < 8) + TEST_info("Skipping; time_t is less than 64-bits"); + else + ADD_ALL_TESTS(test_gmtime, 1000000); } From matt at openssl.org Wed Apr 12 10:07:59 2017 From: matt at openssl.org (Matt Caswell) Date: Wed, 12 Apr 2017 10:07:59 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491991679.414028.7454.nullmailer@dev.openssl.org> The branch master has been updated via deeac6c346f73a1b6106f44160b62e883ee71a40 (commit) from 7635e5bccce9d865c1c006105421ca82dae064b5 (commit) - Log ----------------------------------------------------------------- commit deeac6c346f73a1b6106f44160b62e883ee71a40 Author: Pauli Date: Mon Apr 10 14:21:44 2017 +1000 Update ideatest to use the test infrastructure Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3172) ----------------------------------------------------------------------- Summary of changes: test/build.info | 2 +- test/ideatest.c | 139 ++++++++++++++++---------------------------------------- 2 files changed, 41 insertions(+), 100 deletions(-) diff --git a/test/build.info b/test/build.info index b376d3c..fce0098 100644 --- a/test/build.info +++ b/test/build.info @@ -71,7 +71,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[pbelutest]=../include DEPEND[pbelutest]=../libcrypto - SOURCE[ideatest]=ideatest.c + SOURCE[ideatest]=ideatest.c testutil.c test_main.c INCLUDE[ideatest]=../include DEPEND[ideatest]=../libcrypto diff --git a/test/ideatest.c b/test/ideatest.c index 3849670..a208334 100644 --- a/test/ideatest.c +++ b/test/ideatest.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,19 +7,13 @@ * https://www.openssl.org/source/license.html */ -#include #include -#include #include "../e_os.h" +#include "test_main.h" +#include "testutil.h" -#ifdef OPENSSL_NO_IDEA -int main(int argc, char *argv[]) -{ - printf("No IDEA support\n"); - return (0); -} -#else +#ifndef OPENSSL_NO_IDEA # include static const unsigned char k[16] = { @@ -58,121 +52,68 @@ static const unsigned char cfb_cipher64[CFB_TEST_SIZE] = { 0x3D,0x1E,0xAE,0x47,0xFC,0xCF,0x29,0x0B,*/ }; -static int cfb64_test(const unsigned char *cfb_cipher); -static char *pt(unsigned char *p); -int main(int argc, char *argv[]) +static int test_idea_ecb(void) { - int i, err = 0; IDEA_KEY_SCHEDULE key, dkey; - unsigned char iv[8]; IDEA_set_encrypt_key(k, &key); IDEA_ecb_encrypt(in, out, &key); - if (memcmp(out, c, 8) != 0) { - printf("ecb idea error encrypting\n"); - printf("got :"); - for (i = 0; i < 8; i++) - printf("%02X ", out[i]); - printf("\n"); - printf("expected:"); - for (i = 0; i < 8; i++) - printf("%02X ", c[i]); - err = 20; - printf("\n"); - } + if (!TEST_mem_eq(out, IDEA_BLOCK, c, sizeof(c))) + return 0; IDEA_set_decrypt_key(&key, &dkey); IDEA_ecb_encrypt(c, out, &dkey); - if (memcmp(out, in, 8) != 0) { - printf("ecb idea error decrypting\n"); - printf("got :"); - for (i = 0; i < 8; i++) - printf("%02X ", out[i]); - printf("\n"); - printf("expected:"); - for (i = 0; i < 8; i++) - printf("%02X ", in[i]); - printf("\n"); - err = 3; - } - - if (err == 0) - printf("ecb idea ok\n"); - - memcpy(iv, k, 8); - IDEA_cbc_encrypt((unsigned char *)text, out, strlen(text) + 1, &key, iv, - 1); - memcpy(iv, k, 8); - IDEA_cbc_encrypt(out, out, 8, &dkey, iv, 0); - IDEA_cbc_encrypt(&(out[8]), &(out[8]), strlen(text) + 1 - 8, &dkey, iv, - 0); - if (memcmp(text, out, strlen(text) + 1) != 0) { - printf("cbc idea bad\n"); - err = 4; - } else - printf("cbc idea ok\n"); - - printf("cfb64 idea "); - if (cfb64_test(cfb_cipher64)) { - printf("bad\n"); - err = 5; - } else - printf("ok\n"); - - EXIT(err); + return TEST_mem_eq(out, IDEA_BLOCK, in, sizeof(in)); +} + +static int test_idea_cbc(void) +{ + IDEA_KEY_SCHEDULE key, dkey; + unsigned char iv[IDEA_BLOCK]; + const size_t text_len = sizeof(text); + + IDEA_set_encrypt_key(k, &key); + IDEA_set_decrypt_key(&key, &dkey); + memcpy(iv, k, sizeof(iv)); + IDEA_cbc_encrypt((unsigned char *)text, out, text_len, &key, iv, 1); + memcpy(iv, k, sizeof(iv)); + IDEA_cbc_encrypt(out, out, IDEA_BLOCK, &dkey, iv, 0); + IDEA_cbc_encrypt(&out[8], &out[8], text_len - 8, &dkey, iv, 0); + return TEST_mem_eq(text, text_len, out, text_len); } -static int cfb64_test(const unsigned char *cfb_cipher) +static int test_idea_cfb64(void) { IDEA_KEY_SCHEDULE eks, dks; - int err = 0, i, n; + int n; IDEA_set_encrypt_key(cfb_key, &eks); IDEA_set_decrypt_key(&eks, &dks); - memcpy(cfb_tmp, cfb_iv, 8); + memcpy(cfb_tmp, cfb_iv, sizeof(cfb_tmp)); n = 0; IDEA_cfb64_encrypt(plain, cfb_buf1, (long)12, &eks, cfb_tmp, &n, IDEA_ENCRYPT); - IDEA_cfb64_encrypt(&(plain[12]), &(cfb_buf1[12]), + IDEA_cfb64_encrypt(&plain[12], &cfb_buf1[12], (long)CFB_TEST_SIZE - 12, &eks, cfb_tmp, &n, IDEA_ENCRYPT); - if (memcmp(cfb_cipher, cfb_buf1, CFB_TEST_SIZE) != 0) { - err = 1; - printf("IDEA_cfb64_encrypt encrypt error\n"); - for (i = 0; i < CFB_TEST_SIZE; i += 8) - printf("%s\n", pt(&(cfb_buf1[i]))); - } - memcpy(cfb_tmp, cfb_iv, 8); + if (!TEST_mem_eq(cfb_cipher64, CFB_TEST_SIZE, cfb_buf1, CFB_TEST_SIZE)) + return 0; + memcpy(cfb_tmp, cfb_iv, sizeof(cfb_tmp)); n = 0; IDEA_cfb64_encrypt(cfb_buf1, cfb_buf2, (long)13, &eks, cfb_tmp, &n, IDEA_DECRYPT); - IDEA_cfb64_encrypt(&(cfb_buf1[13]), &(cfb_buf2[13]), + IDEA_cfb64_encrypt(&cfb_buf1[13], &cfb_buf2[13], (long)CFB_TEST_SIZE - 13, &eks, cfb_tmp, &n, IDEA_DECRYPT); - if (memcmp(plain, cfb_buf2, CFB_TEST_SIZE) != 0) { - err = 1; - printf("IDEA_cfb_encrypt decrypt error\n"); - for (i = 0; i < 24; i += 8) - printf("%s\n", pt(&(cfb_buf2[i]))); - } - return (err); + return TEST_mem_eq(plain, CFB_TEST_SIZE, cfb_buf2, CFB_TEST_SIZE); } +#endif -static char *pt(unsigned char *p) +void register_tests(void) { - static char bufs[10][20]; - static int bnum = 0; - char *ret; - int i; - static char *f = "0123456789ABCDEF"; - - ret = &(bufs[bnum++][0]); - bnum %= 10; - for (i = 0; i < 8; i++) { - ret[i * 2] = f[(p[i] >> 4) & 0xf]; - ret[i * 2 + 1] = f[p[i] & 0xf]; - } - ret[16] = '\0'; - return (ret); -} +#ifndef OPENSSL_NO_IDEA + ADD_TEST(test_idea_ecb); + ADD_TEST(test_idea_cbc); + ADD_TEST(test_idea_cfb64); #endif +} From matt at openssl.org Wed Apr 12 10:12:13 2017 From: matt at openssl.org (Matt Caswell) Date: Wed, 12 Apr 2017 10:12:13 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491991933.128807.8875.nullmailer@dev.openssl.org> The branch master has been updated via cbf0cfafd14038a7bc9674aaf9200eced7fcc842 (commit) from deeac6c346f73a1b6106f44160b62e883ee71a40 (commit) - Log ----------------------------------------------------------------- commit cbf0cfafd14038a7bc9674aaf9200eced7fcc842 Author: Pauli Date: Tue Apr 11 12:47:00 2017 +1000 Update sanitytest to use the test infrastructure Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3176) ----------------------------------------------------------------------- Summary of changes: test/build.info | 2 +- test/sanitytest.c | 98 +++++++++++++++++++++++++++++++++---------------------- 2 files changed, 60 insertions(+), 40 deletions(-) diff --git a/test/build.info b/test/build.info index fce0098..658509f 100644 --- a/test/build.info +++ b/test/build.info @@ -35,7 +35,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[aborttest]=../include DEPEND[aborttest]=../libcrypto - SOURCE[sanitytest]=sanitytest.c + SOURCE[sanitytest]=sanitytest.c testutil.c test_main.c INCLUDE[sanitytest]=../include DEPEND[sanitytest]=../libcrypto diff --git a/test/sanitytest.c b/test/sanitytest.c index 9c968f4..3ef0a37 100644 --- a/test/sanitytest.c +++ b/test/sanitytest.c @@ -1,5 +1,5 @@ /* - * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2015-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,61 +7,81 @@ * https://www.openssl.org/source/license.html */ -#include #include #include +#include "test_main.h" +#include "testutil.h" -#define TEST(e) \ - do { \ - if (!(e)) { \ - fprintf(stderr, "Failed " #e "\n"); \ - failures++; \ - } \ - } while (0) - - -enum smallchoices { sa, sb, sc }; -enum medchoices { ma, mb, mc, md, me, mf, mg, mh, mi, mj, mk, ml }; -enum largechoices { - a01, b01, c01, d01, e01, f01, g01, h01, i01, j01, - a02, b02, c02, d02, e02, f02, g02, h02, i02, j02, - a03, b03, c03, d03, e03, f03, g03, h03, i03, j03, - a04, b04, c04, d04, e04, f04, g04, h04, i04, j04, - a05, b05, c05, d05, e05, f05, g05, h05, i05, j05, - a06, b06, c06, d06, e06, f06, g06, h06, i06, j06, - a07, b07, c07, d07, e07, f07, g07, h07, i07, j07, - a08, b08, c08, d08, e08, f08, g08, h08, i08, j08, - a09, b09, c09, d09, e09, f09, g09, h09, i09, j09, - a10, b10, c10, d10, e10, f10, g10, h10, i10, j10, - xxx }; - -int main() +static int test_sanity_null_zero(void) { char *p; char bytes[sizeof(p)]; - int failures = 0; /* Is NULL equivalent to all-bytes-zero? */ p = NULL; memset(bytes, 0, sizeof bytes); - TEST(memcmp(&p, bytes, sizeof(bytes)) == 0); + return TEST_mem_eq(&p, sizeof(p), bytes, sizeof(bytes)); +} + +static int test_sanity_enum_size(void) +{ + enum smallchoices { sa, sb, sc }; + enum medchoices { ma, mb, mc, md, me, mf, mg, mh, mi, mj, mk, ml }; + enum largechoices { + a01, b01, c01, d01, e01, f01, g01, h01, i01, j01, + a02, b02, c02, d02, e02, f02, g02, h02, i02, j02, + a03, b03, c03, d03, e03, f03, g03, h03, i03, j03, + a04, b04, c04, d04, e04, f04, g04, h04, i04, j04, + a05, b05, c05, d05, e05, f05, g05, h05, i05, j05, + a06, b06, c06, d06, e06, f06, g06, h06, i06, j06, + a07, b07, c07, d07, e07, f07, g07, h07, i07, j07, + a08, b08, c08, d08, e08, f08, g08, h08, i08, j08, + a09, b09, c09, d09, e09, f09, g09, h09, i09, j09, + a10, b10, c10, d10, e10, f10, g10, h10, i10, j10, + xxx }; /* Enum size */ - TEST(sizeof(enum smallchoices) == sizeof(int)); - TEST(sizeof(enum medchoices) == sizeof(int)); - TEST(sizeof(enum largechoices) == sizeof(int)); + if (!TEST_size_t_eq(sizeof(enum smallchoices), sizeof(int)) + || !TEST_size_t_eq(sizeof(enum medchoices), sizeof(int)) + || !TEST_size_t_eq(sizeof(enum largechoices), sizeof(int))) + return 0; + return 1; +} + +static int test_sanity_twos_complement(void) +{ /* Basic two's complement checks. */ - TEST(~(-1) == 0); - TEST(~(-1L) == 0L); + if (!TEST_int_eq(~(-1), 0) + || !TEST_long_eq(~(-1L), 0L)) + return 0; + return 1; +} +static int test_sanity_sign(void) +{ /* Check that values with sign bit 1 and value bits 0 are valid */ - TEST(-(INT_MIN + 1) == INT_MAX); - TEST(-(LONG_MIN + 1) == LONG_MAX); + if (!TEST_int_eq(-(INT_MIN + 1), INT_MAX) + || !TEST_long_eq(-(LONG_MIN + 1), LONG_MAX)) + return 0; + return 1; +} +static int test_sanity_unsigned_convertion(void) +{ /* Check that unsigned-to-signed conversions preserve bit patterns */ - TEST((int)((unsigned int)INT_MAX + 1) == INT_MIN); - TEST((long)((unsigned long)LONG_MAX + 1) == LONG_MIN); + if (!TEST_int_eq((int)((unsigned int)INT_MAX + 1), INT_MIN) + || !TEST_long_eq((long)((unsigned long)LONG_MAX + 1), LONG_MIN)) + return 0; + return 1; +} - return failures; +void register_tests(void) +{ + ADD_TEST(test_sanity_null_zero); + ADD_TEST(test_sanity_enum_size); + ADD_TEST(test_sanity_twos_complement); + ADD_TEST(test_sanity_sign); + ADD_TEST(test_sanity_unsigned_convertion); } + From builds at travis-ci.org Wed Apr 12 10:18:35 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 12 Apr 2017 10:18:35 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10220 (master - f586422) In-Reply-To: Message-ID: <58edfefb8515e_43fd2019ce5ec374834@028cafeb-9871-44b2-8d1d-542f5447d39a.mail> Build Update for openssl/openssl ------------------------------------- Build: #10220 Status: Still Failing Duration: 18 minutes and 57 seconds Commit: f586422 (master) Author: Pauli Message: Update d2i_test to use the test infrastructure Reviewed-by: Richard Levitte Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3166) View the changeset: https://github.com/openssl/openssl/compare/0bf3c66c9d5c...f5864227dced View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221288393 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From levitte at openssl.org Wed Apr 12 10:30:42 2017 From: levitte at openssl.org (Richard Levitte) Date: Wed, 12 Apr 2017 10:30:42 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491993042.473493.12824.nullmailer@dev.openssl.org> The branch master has been updated via c983bc4fb2a501df36b95da160ef9002c15cb8fe (commit) via 9fea3a51e5a1816c95bb687ebab4b64656e1b2bb (commit) via fa2274e805b9787d90306963e3921a9e6f7010eb (commit) from cbf0cfafd14038a7bc9674aaf9200eced7fcc842 (commit) - Log ----------------------------------------------------------------- commit c983bc4fb2a501df36b95da160ef9002c15cb8fe Author: Richard Levitte Date: Tue Apr 11 01:38:00 2017 +0200 Add tests of custom negative 1 Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3174) commit 9fea3a51e5a1816c95bb687ebab4b64656e1b2bb Author: Richard Levitte Date: Tue Apr 11 01:37:28 2017 +0200 Fix definition of i2d_fn in asn1_encode_test.c Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3174) commit fa2274e805b9787d90306963e3921a9e6f7010eb Author: Richard Levitte Date: Tue Apr 11 01:33:50 2017 +0200 In asn1_encode_test.c, add custom DER encoding checks We're already checking that custom DER decodes to expected values (or fails to do so), but we didn't check if values encode back to expected DER. Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3174) ----------------------------------------------------------------------- Summary of changes: test/asn1_encode_test.c | 176 +++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 145 insertions(+), 31 deletions(-) diff --git a/test/asn1_encode_test.c b/test/asn1_encode_test.c index 36cf7f9..763c427 100644 --- a/test/asn1_encode_test.c +++ b/test/asn1_encode_test.c @@ -38,6 +38,9 @@ static unsigned char t_zero[] = { static unsigned char t_one[] = { 0x01 }; +static unsigned char t_one_neg[] = { + 0xff +}; static unsigned char t_longundef[] = { 0x7f, 0xff, 0xff, 0xff }; @@ -95,6 +98,7 @@ static TEST_CUSTOM_DATA test_custom_data[] = { CUSTOM_DATA(t_zero), CUSTOM_DATA(t_longundef), CUSTOM_DATA(t_one), + CUSTOM_DATA(t_one_neg), CUSTOM_DATA(t_9bytes_1), CUSTOM_DATA(t_8bytes_1), CUSTOM_DATA(t_8bytes_2), @@ -132,7 +136,7 @@ static TEST_CUSTOM_DATA test_custom_data[] = { * A structure to collect all test information in. There MUST be one instance * of this for each test */ -typedef int i2d_fn(void **a, unsigned char **pp); +typedef int i2d_fn(void *a, unsigned char **pp); typedef void *d2i_fn(void **a, unsigned char **pp, long length); typedef void ifree_fn(void *a); typedef struct { @@ -194,6 +198,7 @@ static ASN1_LONG_DATA long_expected_32bit[] = { { 0xff, 0, 1 }, { 0, 0, 0 }, /* t_zero */ { 0, 0, 0 }, { 0xff, 1, 0x7fffffff }, /* t_longundef */ CUSTOM_EXPECTED_SUCCESS(1, 1), /* t_one */ + CUSTOM_EXPECTED_SUCCESS(-1, -1), /* t_one_neg */ CUSTOM_EXPECTED_FAILURE, /* t_9bytes_1 */ CUSTOM_EXPECTED_FAILURE, /* t_8bytes_1 */ CUSTOM_EXPECTED_FAILURE, /* t_8bytes_2 */ @@ -228,6 +233,7 @@ static ASN1_LONG_DATA long_expected_64bit[] = { { 0xff, 0, 1 }, { 0, 0, 0 }, /* t_zero */ { 0, 0, 0 }, { 0xff, 1, 0x7fffffff }, /* t_longundef */ CUSTOM_EXPECTED_SUCCESS(1, 1), /* t_one */ + CUSTOM_EXPECTED_SUCCESS(-1, -1), /* t_one_neg */ CUSTOM_EXPECTED_FAILURE, /* t_9bytes_1 */ CUSTOM_EXPECTED_FAILURE, /* t_8bytes_1 */ CUSTOM_EXPECTED_SUCCESS(LONG_MAX, LONG_MAX), /* t_8bytes_2 */ @@ -279,6 +285,7 @@ static ASN1_INT32_DATA int32_expected[] = { CUSTOM_EXPECTED_SUCCESS(0, 0), /* t_zero */ CUSTOM_EXPECTED_SUCCESS(ASN1_LONG_UNDEF, ASN1_LONG_UNDEF), /* t_zero */ CUSTOM_EXPECTED_SUCCESS(1, 1), /* t_one */ + CUSTOM_EXPECTED_SUCCESS(-1, -1), /* t_one_neg */ CUSTOM_EXPECTED_FAILURE, /* t_9bytes_1 */ CUSTOM_EXPECTED_FAILURE, /* t_8bytes_1 */ CUSTOM_EXPECTED_FAILURE, /* t_8bytes_2 */ @@ -325,6 +332,7 @@ static ASN1_UINT32_DATA uint32_expected[] = { CUSTOM_EXPECTED_SUCCESS(0, 0), /* t_zero */ CUSTOM_EXPECTED_SUCCESS(ASN1_LONG_UNDEF, ASN1_LONG_UNDEF), /* t_zero */ CUSTOM_EXPECTED_SUCCESS(1, 1), /* t_one */ + CUSTOM_EXPECTED_FAILURE, /* t_one_neg (illegal negative value) */ CUSTOM_EXPECTED_FAILURE, /* t_9bytes_1 */ CUSTOM_EXPECTED_FAILURE, /* t_8bytes_1 */ CUSTOM_EXPECTED_FAILURE, /* t_8bytes_2 */ @@ -371,6 +379,7 @@ static ASN1_INT64_DATA int64_expected[] = { CUSTOM_EXPECTED_SUCCESS(0, 0), /* t_zero */ CUSTOM_EXPECTED_SUCCESS(ASN1_LONG_UNDEF, ASN1_LONG_UNDEF), /* t_zero */ CUSTOM_EXPECTED_SUCCESS(1, 1), /* t_one */ + CUSTOM_EXPECTED_SUCCESS(-1, -1), /* t_one_neg */ CUSTOM_EXPECTED_FAILURE, /* t_9bytes_1 */ CUSTOM_EXPECTED_FAILURE, /* t_8bytes_1 (too large positive) */ CUSTOM_EXPECTED_SUCCESS(INT64_MAX, INT64_MAX), /* t_8bytes_2 */ @@ -418,6 +427,7 @@ static ASN1_UINT64_DATA uint64_expected[] = { CUSTOM_EXPECTED_SUCCESS(0, 0), /* t_zero */ CUSTOM_EXPECTED_SUCCESS(ASN1_LONG_UNDEF, ASN1_LONG_UNDEF), /* t_zero */ CUSTOM_EXPECTED_SUCCESS(1, 1), /* t_one */ + CUSTOM_EXPECTED_FAILURE, /* t_one_neg (illegal negative value) */ CUSTOM_EXPECTED_FAILURE, /* t_9bytes_1 */ CUSTOM_EXPECTED_SUCCESS((uint64_t)INT64_MAX+1, (uint64_t)INT64_MAX+1), /* t_8bytes_1 */ @@ -489,6 +499,41 @@ static int do_decode(unsigned char *bytes, long nbytes, return ret; } +/* + * do_encode returns a tristate: + * + * -1 Couldn't encode + * 0 encoded DER wasn't what was expected (failure) + * 1 encoded DER was what was expected (success) + */ +static int do_encode(EXPECTED *input, + const unsigned char *expected, size_t expected_len, + const TEST_PACKAGE *package) +{ + unsigned char *data = NULL; + int len; + int ret = 0; + + len = package->i2d(input, &data); + if (len < 0) + return -1; + + if ((size_t)len != expected_len + || memcmp(data, expected, expected_len) != 0) { + if (input->success == 0) { + ret = 1; + ERR_clear_error(); + } else { + ret = 0; + } + } else { + ret = 1; + } + + OPENSSL_free(data); + return ret; +} + /* Do an encode/decode round trip */ static int do_enc_dec(EXPECTED *bytes, long nbytes, const TEST_PACKAGE *package) @@ -535,15 +580,13 @@ static size_t der_encode_length(size_t len, unsigned char **pp) return lenbytes; } -/* Attempt to decode a custom encoding of the test structure */ -static int do_decode_custom(const TEST_CUSTOM_DATA *custom_data, - const EXPECTED *expected, size_t expected_size, - const TEST_PACKAGE *package) +static size_t make_custom_der(const TEST_CUSTOM_DATA *custom_data, + unsigned char **encoding, int explicit_default) { - size_t firstbytes, secondbytes, secondbytesinner, seqbytes; + size_t firstbytes, secondbytes = 0, secondbytesinner = 0, seqbytes; const unsigned char t_true[] = { V_ASN1_BOOLEAN, 0x01, 0xff }; - unsigned char *encoding, *p = NULL; - int ret; + unsigned char *p = NULL; + size_t i; /* * The first item is just an INTEGER tag, INTEGER length and INTEGER content @@ -552,15 +595,21 @@ static int do_decode_custom(const TEST_CUSTOM_DATA *custom_data, 1 + der_encode_length(custom_data->nbytes1, NULL) + custom_data->nbytes1; - /* - * The second item is an explicit tag, content length, INTEGER tag, - * INTEGER length, INTEGER bytes - */ - secondbytesinner = - 1 + der_encode_length(custom_data->nbytes2, NULL) - + custom_data->nbytes2; - secondbytes = - 1 + der_encode_length(secondbytesinner, NULL) + secondbytesinner; + for (i = custom_data->nbytes2; i > 0; i--) { + if (custom_data->bytes2[i - 1] != '\0') + break; + } + if (explicit_default || i > 0) { + /* + * The second item is an explicit tag, content length, INTEGER tag, + * INTEGER length, INTEGER bytes + */ + secondbytesinner = + 1 + der_encode_length(custom_data->nbytes2, NULL) + + custom_data->nbytes2; + secondbytes = + 1 + der_encode_length(secondbytesinner, NULL) + secondbytesinner; + } /* * The whole sequence is the sequence tag, content length, BOOLEAN true @@ -571,9 +620,9 @@ static int do_decode_custom(const TEST_CUSTOM_DATA *custom_data, 1 + der_encode_length(sizeof(t_true) + firstbytes + secondbytes, NULL) + sizeof(t_true) + firstbytes + secondbytes; - encoding = p = OPENSSL_malloc(seqbytes); - if (encoding == NULL) - return -1; + *encoding = p = OPENSSL_malloc(seqbytes); + if (*encoding == NULL) + return 0; /* Sequence tag */ *p++ = 0x30; @@ -589,23 +638,63 @@ static int do_decode_custom(const TEST_CUSTOM_DATA *custom_data, memcpy(p, custom_data->bytes1, custom_data->nbytes1); p += custom_data->nbytes1; - /* Second INTEGER item (optional) */ - /* Start with the explicit optional tag */ - *p++ = 0xa0; - der_encode_length(secondbytesinner, &p); - *p++ = V_ASN1_INTEGER; - der_encode_length(custom_data->nbytes2, &p); - memcpy(p, custom_data->bytes2, custom_data->nbytes2); - p += custom_data->nbytes2; + if (secondbytes > 0) { + /* Second INTEGER item (optional) */ + /* Start with the explicit optional tag */ + *p++ = 0xa0; + der_encode_length(secondbytesinner, &p); + *p++ = V_ASN1_INTEGER; + der_encode_length(custom_data->nbytes2, &p); + memcpy(p, custom_data->bytes2, custom_data->nbytes2); + p += custom_data->nbytes2; + } + + OPENSSL_assert(seqbytes == (size_t)(p - *encoding)); + + return seqbytes; +} - OPENSSL_assert(seqbytes == (size_t)(p - encoding)); +/* Attempt to decode a custom encoding of the test structure */ +static int do_decode_custom(const TEST_CUSTOM_DATA *custom_data, + const EXPECTED *expected, size_t expected_size, + const TEST_PACKAGE *package) +{ + unsigned char *encoding = NULL; + /* + * We force the defaults to be explicitely encoded to make sure we test + * for defaults that shouldn't be present (i.e. we check for failure) + */ + size_t encoding_length = make_custom_der(custom_data, &encoding, 1); + int ret; - ret = do_decode(encoding, seqbytes, expected, expected_size, package); + if (encoding_length == 0) + return -1; + + ret = do_decode(encoding, encoding_length, expected, expected_size, + package); OPENSSL_free(encoding); return ret; } +/* Attempt to encode the test structure and compare it to custom DER */ +static int do_encode_custom(EXPECTED *input, + const TEST_CUSTOM_DATA *custom_data, + const TEST_PACKAGE *package) +{ + unsigned char *expected = NULL; + size_t expected_length = make_custom_der(custom_data, &expected, 0); + int ret; + + if (expected_length == 0) + return -1; + + ret = do_encode(input, expected, expected_length, package); + OPENSSL_free(expected); + + return ret; +} + static int test_intern(const TEST_PACKAGE *package) { @@ -623,6 +712,29 @@ static int test_intern(const TEST_PACKAGE *package) sizeof(test_custom_data) / sizeof(test_custom_data[0])); for (i = 0; i < nelems; i++) { size_t pos = i * package->encode_expectations_elem_size; + switch (do_encode_custom((EXPECTED *)&((unsigned char *)package + ->encode_expectations)[pos], + &test_custom_data[i], package)) { + case -1: + fprintf(stderr, "Failed custom encode round trip %u of %s\n", + i, package->name); + ERR_print_errors_fp(stderr); + fail++; + ERR_clear_error(); + break; + case 0: + fprintf(stderr, "Custom encode round trip %u of %s mismatch\n", + i, package->name); + ERR_print_errors_fp(stderr); + fail++; + ERR_clear_error(); + break; + case 1: + break; + default: + OPENSSL_die("do_encode_custom() return unknown value", + __FILE__, __LINE__); + } switch (do_decode_custom(&test_custom_data[i], (EXPECTED *)&((unsigned char *)package ->encode_expectations)[pos], @@ -638,12 +750,14 @@ static int test_intern(const TEST_PACKAGE *package) case 0: fprintf(stderr, "Custom decode round trip %u of %s mismatch\n", i, package->name); + ERR_print_errors_fp(stderr); fail++; + ERR_clear_error(); break; case 1: break; default: - OPENSSL_die("do_enc_dec() return unknown value", + OPENSSL_die("do_decode_custom() return unknown value", __FILE__, __LINE__); } } From builds at travis-ci.org Wed Apr 12 10:33:13 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 12 Apr 2017 10:33:13 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10222 (master - 789dfc4) In-Reply-To: Message-ID: <58ee026947e0e_43fd2019ce6f0385240@028cafeb-9871-44b2-8d1d-542f5447d39a.mail> Build Update for openssl/openssl ------------------------------------- Build: #10222 Status: Still Failing Duration: 21 minutes and 0 seconds Commit: 789dfc4 (master) Author: Pauli Message: Update secmemtest and memeleaktest to use the test infrastructure. It isn't easy to use the test framework since it turns memory debugging on as well and the CRYPTO_mem_leaks_fp function cannot be called twice. Reviewed-by: Richard Levitte Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3169) View the changeset: https://github.com/openssl/openssl/compare/f5864227dced...789dfc478eea View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221289262 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Wed Apr 12 10:42:21 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 12 Apr 2017 10:42:21 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10223 (master - 7635e5b) In-Reply-To: Message-ID: <58ee048d66223_43fd2017e1cfc3904b6@028cafeb-9871-44b2-8d1d-542f5447d39a.mail> Build Update for openssl/openssl ------------------------------------- Build: #10223 Status: Still Failing Duration: 23 minutes and 52 seconds Commit: 7635e5b (master) Author: Pauli Message: Update gmdifftime to use the test infrastructure Reviewed-by: Richard Levitte Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3171) View the changeset: https://github.com/openssl/openssl/compare/789dfc478eea...7635e5bccce9 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221290219 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From matt at openssl.org Wed Apr 12 10:53:48 2017 From: matt at openssl.org (Matt Caswell) Date: Wed, 12 Apr 2017 10:53:48 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491994428.372559.18078.nullmailer@dev.openssl.org> The branch master has been updated via bea4ac2b2e6499e1f0844c9dbacd670955d94ccb (commit) from c983bc4fb2a501df36b95da160ef9002c15cb8fe (commit) - Log ----------------------------------------------------------------- commit bea4ac2b2e6499e1f0844c9dbacd670955d94ccb Author: Pauli Date: Wed Apr 12 13:45:02 2017 +1000 Update the internal chacha test to use the framework Reviewed-by: Richard Levitte Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3195) ----------------------------------------------------------------------- Summary of changes: test/build.info | 2 +- test/chacha_internal_test.c | 49 ++++++++++++++++++++++----------------------- 2 files changed, 25 insertions(+), 26 deletions(-) diff --git a/test/build.info b/test/build.info index 658509f..85977b1 100644 --- a/test/build.info +++ b/test/build.info @@ -358,7 +358,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[poly1305_internal_test]=.. ../include ../crypto/include DEPEND[poly1305_internal_test]=../libcrypto.a - SOURCE[chacha_internal_test]=chacha_internal_test.c + SOURCE[chacha_internal_test]=chacha_internal_test.c testutil.c test_main.c INCLUDE[chacha_internal_test]=.. ../include ../crypto/include DEPEND[chacha_internal_test]=../libcrypto.a diff --git a/test/chacha_internal_test.c b/test/chacha_internal_test.c index 9b2f361..0c0be9b 100644 --- a/test/chacha_internal_test.c +++ b/test/chacha_internal_test.c @@ -12,10 +12,10 @@ * complete 32-byte blocks. This test goes per byte... */ -#include #include - #include +#include "test_main.h" +#include "testutil.h" #include "internal/chacha.h" const static unsigned int key[] = { @@ -158,34 +158,33 @@ const static unsigned char ref[] = { 0xd3, 0x3e, 0xa2, 0x15, 0x5d, 0x10, 0x5d, 0x4e }; -int main(void) +static int test_cha_cha_internal(int n) { unsigned char buf[sizeof(ref)]; - unsigned int i,j; - int ret = 0; - -#ifdef CPUID_OBJ - OPENSSL_cpuid_setup(); -#endif + unsigned int i = n + 1, j; - for (i = 1; i <= sizeof(ref); i++) { - memset(buf, 0, i); - memcpy(buf + i, ref + i, sizeof(ref) - i); + memset(buf, 0, i); + memcpy(buf + i, ref + i, sizeof(ref) - i); - ChaCha20_ctr32(buf, buf, i, key, ivp); + ChaCha20_ctr32(buf, buf, i, key, ivp); - /* - * Idea behind checking for whole sizeof(ref) is that if - * ChaCha20_ctr32 oversteps i-th byte, then we'd know - */ - for (j = 0; j < sizeof(ref); j++) { - if (buf[j] != ref[j]) { - fprintf(stderr, "%u failed at %u (%02x)\n", i, j, buf[j]); - ret = 1; - break; - } + /* + * Idea behind checking for whole sizeof(ref) is that if + * ChaCha20_ctr32 oversteps i-th byte, then we'd know + */ + for (j = 0; j < sizeof(ref); j++) + if (!TEST_uchar_eq(buf[j], ref[j])) { + TEST_info("%d failed at %u (%02x)\n", i, j, buf[j]); + return 0; } - } + return 1; +} + +void register_tests(void) +{ +#ifdef CPUID_OBJ + OPENSSL_cpuid_setup(); +#endif - return ret; + ADD_ALL_TESTS(test_cha_cha_internal, sizeof(ref)); } From builds at travis-ci.org Wed Apr 12 10:54:07 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 12 Apr 2017 10:54:07 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10224 (master - deeac6c) In-Reply-To: Message-ID: <58ee074fa828_43fcd7b3653ac67752d@53287edb-bbc6-477a-a4d1-0710482f628e.mail> Build Update for openssl/openssl ------------------------------------- Build: #10224 Status: Still Failing Duration: 22 minutes and 18 seconds Commit: deeac6c (master) Author: Pauli Message: Update ideatest to use the test infrastructure Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3172) View the changeset: https://github.com/openssl/openssl/compare/7635e5bccce9...deeac6c346f7 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221291198 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From levitte at openssl.org Wed Apr 12 11:01:15 2017 From: levitte at openssl.org (Richard Levitte) Date: Wed, 12 Apr 2017 11:01:15 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491994875.707428.20312.nullmailer@dev.openssl.org> The branch master has been updated via ee25dd45cb1dd7efa1af2574566ae04537907461 (commit) from bea4ac2b2e6499e1f0844c9dbacd670955d94ccb (commit) - Log ----------------------------------------------------------------- commit ee25dd45cb1dd7efa1af2574566ae04537907461 Author: Pauli Date: Wed Apr 12 14:24:21 2017 +1000 Update threadstest to use the test framework Reviewed-by: Matt Caswell Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3196) ----------------------------------------------------------------------- Summary of changes: test/build.info | 2 +- test/threadstest.c | 105 +++++++++++++---------------------------------------- 2 files changed, 27 insertions(+), 80 deletions(-) diff --git a/test/build.info b/test/build.info index 85977b1..7f03913 100644 --- a/test/build.info +++ b/test/build.info @@ -231,7 +231,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[ct_test]=../crypto/include ../include DEPEND[ct_test]=../libcrypto - SOURCE[threadstest]=threadstest.c + SOURCE[threadstest]=threadstest.c testutil.c test_main.c INCLUDE[threadstest]=.. ../include DEPEND[threadstest]=../libcrypto diff --git a/test/threadstest.c b/test/threadstest.c index b2e96fa..9c735ff 100644 --- a/test/threadstest.c +++ b/test/threadstest.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -11,9 +11,9 @@ # include #endif -#include - #include +#include "test_main.h" +#include "testutil.h" #if !defined(OPENSSL_THREADS) || defined(CRYPTO_TDEBUG) @@ -85,15 +85,9 @@ static int test_lock(void) { CRYPTO_RWLOCK *lock = CRYPTO_THREAD_lock_new(); - if (!CRYPTO_THREAD_read_lock(lock)) { - fprintf(stderr, "CRYPTO_THREAD_read_lock() failed\n"); - return 0; - } - - if (!CRYPTO_THREAD_unlock(lock)) { - fprintf(stderr, "CRYPTO_THREAD_unlock() failed\n"); + if (!TEST_true(CRYPTO_THREAD_read_lock(lock)) + || !TEST_true(CRYPTO_THREAD_unlock(lock))) return 0; - } CRYPTO_THREAD_lock_free(lock); @@ -116,23 +110,12 @@ static void once_run_thread_cb(void) static int test_once(void) { thread_t thread; - if (!run_thread(&thread, once_run_thread_cb) || - !wait_for_thread(thread)) - { - fprintf(stderr, "run_thread() failed\n"); - return 0; - } - - if (!CRYPTO_THREAD_run_once(&once_run, once_do_run)) { - fprintf(stderr, "CRYPTO_THREAD_run_once() failed\n"); - return 0; - } - if (once_run_count != 1) { - fprintf(stderr, "once run %u times\n", once_run_count); + if (!TEST_true(run_thread(&thread, once_run_thread_cb)) + || !TEST_true(wait_for_thread(thread)) + || !CRYPTO_THREAD_run_once(&once_run, once_do_run) + || !TEST_int_eq(once_run_count, 1)) return 0; - } - return 1; } @@ -157,21 +140,14 @@ static void thread_local_thread_cb(void) void *ptr; ptr = CRYPTO_THREAD_get_local(&thread_local_key); - if (ptr != NULL) { - fprintf(stderr, "ptr not NULL\n"); + if (!TEST_ptr_null(ptr) + || !TEST_true(CRYPTO_THREAD_set_local(&thread_local_key, + &destructor_run_count))) return; - } - - if (!CRYPTO_THREAD_set_local(&thread_local_key, &destructor_run_count)) { - fprintf(stderr, "CRYPTO_THREAD_set_local() failed\n"); - return; - } ptr = CRYPTO_THREAD_get_local(&thread_local_key); - if (ptr != &destructor_run_count) { - fprintf(stderr, "invalid ptr\n"); + if (!TEST_ptr_eq(ptr, &destructor_run_count)) return; - } thread_local_thread_cb_ok = 1; } @@ -181,66 +157,37 @@ static int test_thread_local(void) thread_t thread; void *ptr = NULL; - if (!CRYPTO_THREAD_init_local(&thread_local_key, thread_local_destructor)) { - fprintf(stderr, "CRYPTO_THREAD_init_local() failed\n"); + if (!TEST_true(CRYPTO_THREAD_init_local(&thread_local_key, + thread_local_destructor))) return 0; - } ptr = CRYPTO_THREAD_get_local(&thread_local_key); - if (ptr != NULL) { - fprintf(stderr, "ptr not NULL\n"); + if (!TEST_ptr_null(ptr) + || !TEST_true(run_thread(&thread, thread_local_thread_cb)) + || !TEST_true(wait_for_thread(thread)) + || !TEST_int_eq(thread_local_thread_cb_ok, 1)) return 0; - } - - if (!run_thread(&thread, thread_local_thread_cb) || - !wait_for_thread(thread)) - { - fprintf(stderr, "run_thread() failed\n"); - return 0; - } - - if (thread_local_thread_cb_ok != 1) { - fprintf(stderr, "thread-local thread callback failed\n"); - return 0; - } #if defined(OPENSSL_THREADS) && !defined(CRYPTO_TDEBUG) ptr = CRYPTO_THREAD_get_local(&thread_local_key); - if (ptr != NULL) { - fprintf(stderr, "ptr not NULL\n"); + if (!TEST_ptr_null(ptr)) return 0; - } # if !defined(OPENSSL_SYS_WINDOWS) - if (destructor_run_count != 1) { - fprintf(stderr, "thread-local destructor run %u times\n", - destructor_run_count); + if (!TEST_int_eq(destructor_run_count, 1)) return 0; - } # endif - #endif - if (!CRYPTO_THREAD_cleanup_local(&thread_local_key)) { - fprintf(stderr, "CRYPTO_THREAD_cleanup_local() failed\n"); + if (!TEST_true(CRYPTO_THREAD_cleanup_local(&thread_local_key))) return 0; - } - return 1; } -int main(int argc, char **argv) +void register_tests(void) { - if (!test_lock()) - return 1; - - if (!test_once()) - return 1; - - if (!test_thread_local()) - return 1; - - printf("PASS\n"); - return 0; + ADD_TEST(test_lock); + ADD_TEST(test_once); + ADD_TEST(test_thread_local); } From builds at travis-ci.org Wed Apr 12 11:04:48 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 12 Apr 2017 11:04:48 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10225 (master - cbf0cfa) In-Reply-To: Message-ID: <58ee09d5702a6_43fb0fcfcada4561011@93470f4d-59d8-40ed-ac6f-3cc4207b8a52.mail> Build Update for openssl/openssl ------------------------------------- Build: #10225 Status: Still Failing Duration: 24 minutes and 43 seconds Commit: cbf0cfa (master) Author: Pauli Message: Update sanitytest to use the test infrastructure Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3176) View the changeset: https://github.com/openssl/openssl/compare/deeac6c346f7...cbf0cfafd140 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221292219 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Wed Apr 12 11:23:54 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 12 Apr 2017 11:23:54 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10228 (master - c983bc4) In-Reply-To: Message-ID: <58ee0e6365a96_43fcd7b4d660071096@53287edb-bbc6-477a-a4d1-0710482f628e.mail> Build Update for openssl/openssl ------------------------------------- Build: #10228 Status: Still Failing Duration: 20 minutes and 30 seconds Commit: c983bc4 (master) Author: Richard Levitte Message: Add tests of custom negative 1 Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3174) View the changeset: https://github.com/openssl/openssl/compare/cbf0cfafd140...c983bc4fb2a5 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221297175 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From levitte at openssl.org Wed Apr 12 11:37:55 2017 From: levitte at openssl.org (Richard Levitte) Date: Wed, 12 Apr 2017 11:37:55 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1491997075.567181.27610.nullmailer@dev.openssl.org> The branch master has been updated via 4833caed466ce8b7ae1d5fbafc23740885dbd9cc (commit) from ee25dd45cb1dd7efa1af2574566ae04537907461 (commit) - Log ----------------------------------------------------------------- commit 4833caed466ce8b7ae1d5fbafc23740885dbd9cc Author: Pauli Date: Mon Apr 10 13:38:24 2017 +1000 Remove fprintfs from the poly1305 internal test but keep the test number information. The framework will display the non-matching memory. Reviewed-by: Matt Caswell Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3156) ----------------------------------------------------------------------- Summary of changes: test/poly1305_internal_test.c | 39 +++++---------------------------------- 1 file changed, 5 insertions(+), 34 deletions(-) diff --git a/test/poly1305_internal_test.c b/test/poly1305_internal_test.c index af54ac3..03b0fa9 100644 --- a/test/poly1305_internal_test.c +++ b/test/poly1305_internal_test.c @@ -35,15 +35,6 @@ typedef struct { * ***/ -/* TODO : hex decoder / encoder should be implemented in testutil.c */ -static void hexdump(const unsigned char *a, size_t len) -{ - size_t i; - - for (i = 0; i < len; i++) - fprintf(stderr, "%02x", a[i]); -} - static void benchmark_poly1305() { # ifdef OPENSSL_CPUID_OBJ @@ -1573,12 +1564,7 @@ static int test_poly1305(int idx) Poly1305_Final(&poly1305, out); if (!TEST_mem_eq(out, expectedlen, expected, expectedlen)) { - fprintf(stderr, "Poly1305 test #%d failed.\n", idx); - fprintf(stderr, "got: "); - hexdump(out, sizeof(out)); - fprintf(stderr, "\nexpected: "); - hexdump(expected, expectedlen); - fprintf(stderr, "\n"); + TEST_info("Poly1305 test #%d failed.", idx); return 0; } @@ -1589,12 +1575,7 @@ static int test_poly1305(int idx) Poly1305_Final(&poly1305, out); if (!TEST_mem_eq(out, expectedlen, expected, expectedlen)) { - fprintf(stderr, "Poly1305 test #%d/1+(N-1) failed.\n", idx); - fprintf(stderr, "got: "); - hexdump(out, sizeof(out)); - fprintf(stderr, "\nexpected: "); - hexdump(expected, expectedlen); - fprintf(stderr, "\n"); + TEST_info("Poly1305 test #%d/1+(N-1) failed.", idx); return 0; } } @@ -1608,12 +1589,7 @@ static int test_poly1305(int idx) Poly1305_Final(&poly1305, out); if (!TEST_mem_eq(out, expectedlen, expected, expectedlen)) { - fprintf(stderr, "Poly1305 test #%d/2 failed.\n", idx); - fprintf(stderr, "got: "); - hexdump(out, sizeof(out)); - fprintf(stderr, "\nexpected: "); - hexdump(expected, expectedlen); - fprintf(stderr, "\n"); + TEST_info("Poly1305 test #%d/2 failed.", idx); return 0; } @@ -1624,13 +1600,8 @@ static int test_poly1305(int idx) Poly1305_Final(&poly1305, out); if (!TEST_mem_eq(out, expectedlen, expected, expectedlen)) { - fprintf(stderr, "Poly1305 test #%d/%" OSSLzu "+%" OSSLzu " failed.\n", - idx, half, inlen-half); - fprintf(stderr, "got: "); - hexdump(out, sizeof(out)); - fprintf(stderr, "\nexpected: "); - hexdump(expected, expectedlen); - fprintf(stderr, "\n"); + TEST_info("Poly1305 test #%d/%" OSSLzu "+%" OSSLzu " failed.", + idx, half, inlen-half); return 0; } } From builds at travis-ci.org Wed Apr 12 11:52:29 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 12 Apr 2017 11:52:29 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10230 (master - bea4ac2) In-Reply-To: Message-ID: <58ee14fdaaa97_43fcd7b2ddeac74996c@53287edb-bbc6-477a-a4d1-0710482f628e.mail> Build Update for openssl/openssl ------------------------------------- Build: #10230 Status: Still Failing Duration: 25 minutes and 42 seconds Commit: bea4ac2 (master) Author: Pauli Message: Update the internal chacha test to use the framework Reviewed-by: Richard Levitte Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3195) View the changeset: https://github.com/openssl/openssl/compare/c983bc4fb2a5...bea4ac2b2e64 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221302888 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Wed Apr 12 12:08:36 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 12 Apr 2017 12:08:36 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10231 (master - ee25dd4) In-Reply-To: Message-ID: <58ee19049123_43fb0fcfcacb46310a8@93470f4d-59d8-40ed-ac6f-3cc4207b8a52.mail> Build Update for openssl/openssl ------------------------------------- Build: #10231 Status: Still Failing Duration: 28 minutes and 22 seconds Commit: ee25dd4 (master) Author: Pauli Message: Update threadstest to use the test framework Reviewed-by: Matt Caswell Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3196) View the changeset: https://github.com/openssl/openssl/compare/bea4ac2b2e64...ee25dd45cb1d View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221304877 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Wed Apr 12 12:16:20 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 12 Apr 2017 12:16:20 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10232 (master - 4833cae) In-Reply-To: Message-ID: <58ee1a93f25fd_43fb0fcddfdf06398d@93470f4d-59d8-40ed-ac6f-3cc4207b8a52.mail> Build Update for openssl/openssl ------------------------------------- Build: #10232 Status: Still Failing Duration: 22 minutes and 52 seconds Commit: 4833cae (master) Author: Pauli Message: Remove fprintfs from the poly1305 internal test but keep the test number information. The framework will display the non-matching memory. Reviewed-by: Matt Caswell Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3156) View the changeset: https://github.com/openssl/openssl/compare/ee25dd45cb1d...4833caed466c View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221314935 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From levitte at openssl.org Wed Apr 12 13:01:29 2017 From: levitte at openssl.org (Richard Levitte) Date: Wed, 12 Apr 2017 13:01:29 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492002089.361244.7932.nullmailer@dev.openssl.org> The branch master has been updated via a743b817d28ced8c8a4f2250ae9cbec39af937aa (commit) from 4833caed466ce8b7ae1d5fbafc23740885dbd9cc (commit) - Log ----------------------------------------------------------------- commit a743b817d28ced8c8a4f2250ae9cbec39af937aa Author: Richard Levitte Date: Wed Apr 12 08:55:34 2017 +0200 test/testutil.c: Flush stdout when running tests Because stdout is usually buffered and stderr isn't, error output might get printed in one bunch and all the lines saying which test failed all in one bunch, making it difficult to see exactly what error output belongs to what test. Flushing stdout makes sure the runner output is displayed together with the corresponding error output. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3198) ----------------------------------------------------------------------- Summary of changes: test/testutil.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/test/testutil.c b/test/testutil.c index 867be17..3d2824c 100644 --- a/test/testutil.c +++ b/test/testutil.c @@ -114,6 +114,7 @@ int run_tests(const char *test_prog_name) printf("%s: %d test case%s\n", test_prog_name, num_test_cases, num_test_cases == 1 ? "" : "s"); + fflush(stdout); for (i = 0; i != num_tests; ++i) { if (all_tests[i].num == -1) { @@ -122,6 +123,7 @@ int run_tests(const char *test_prog_name) if (!ret) { printf("** %s failed **\n--------\n", all_tests[i].test_case_name); + fflush(stdout); ++num_failed; } finalize(ret); @@ -132,6 +134,7 @@ int run_tests(const char *test_prog_name) if (!ret) { printf("** %s failed test %d\n--------\n", all_tests[i].test_case_name, j); + fflush(stdout); ++num_failed; } finalize(ret); @@ -142,9 +145,11 @@ int run_tests(const char *test_prog_name) if (num_failed != 0) { printf("%s: %d test%s failed (out of %d)\n", test_prog_name, num_failed, num_failed != 1 ? "s" : "", num_test_cases); + fflush(stdout); return EXIT_FAILURE; } printf(" All tests passed.\n"); + fflush(stdout); return EXIT_SUCCESS; } From levitte at openssl.org Wed Apr 12 13:03:22 2017 From: levitte at openssl.org (Richard Levitte) Date: Wed, 12 Apr 2017 13:03:22 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492002202.420838.9517.nullmailer@dev.openssl.org> The branch master has been updated via c491a39986610e499b44e6fee404475946a4b895 (commit) from a743b817d28ced8c8a4f2250ae9cbec39af937aa (commit) - Log ----------------------------------------------------------------- commit c491a39986610e499b44e6fee404475946a4b895 Author: Pauli Date: Mon Apr 10 13:36:59 2017 +1000 Update destest to use the test infrastructure Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3173) ----------------------------------------------------------------------- Summary of changes: test/build.info | 2 +- test/destest.c | 821 +++++++++++++++++++++++++------------------------------- 2 files changed, 370 insertions(+), 453 deletions(-) diff --git a/test/build.info b/test/build.info index 7f03913..c26dc6d 100644 --- a/test/build.info +++ b/test/build.info @@ -95,7 +95,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[rc5test]=../include DEPEND[rc5test]=../libcrypto - SOURCE[destest]=destest.c + SOURCE[destest]=destest.c testutil.c test_main.c INCLUDE[destest]=../include DEPEND[destest]=../libcrypto diff --git a/test/destest.c b/test/destest.c index 84d753d..b863ee8 100644 --- a/test/destest.c +++ b/test/destest.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,34 +7,20 @@ * https://www.openssl.org/source/license.html */ -#include -#include - #include -#if defined(OPENSSL_SYS_WIN32) || defined(OPENSSL_SYS_WINDOWS) -# ifndef OPENSSL_SYS_MSDOS -# define OPENSSL_SYS_MSDOS -# endif -#endif - -#ifndef OPENSSL_SYS_MSDOS -# if !defined(OPENSSL_SYS_VMS) || defined(OPENSSL_SYS_VMS_DECC) -# include OPENSSL_UNISTD -# endif -#else -# include -#endif #include -#ifdef OPENSSL_NO_DES -int main(int argc, char *argv[]) -{ - printf("No DES support\n"); - return (0); -} -#else +#include "test_main.h" +#include "testutil.h" + +#ifndef OPENSSL_NO_DES # include +/* In case any platform doesn't use unsigned int for its checksums */ +# define TEST_cs_eq TEST_uint_eq + +# define DATA_BUF_SIZE 20 + /* tisk tisk - the test keys don't all have odd parity :-( */ /* test data */ # define NUM_TESTS 34 @@ -298,507 +284,438 @@ static DES_LONG cbc_cksum_ret = 0xF7FE62B4L; static unsigned char cbc_cksum_data[8] = { 0x1D, 0x26, 0x93, 0x97, 0xf7, 0xfe, 0x62, 0xb4 }; -static char *pt(unsigned char *p); -static int cfb_test(int bits, unsigned char *cfb_cipher); -static int cfb64_test(unsigned char *cfb_cipher); -static int ede_cfb64_test(unsigned char *cfb_cipher); -int main(int argc, char *argv[]) +static char *pt(const unsigned char *p, char buf[DATA_BUF_SIZE]) { - int j, err = 0; - unsigned int i; - DES_cblock in, out, outin, iv3; + char *ret; + int i; + static char *f = "0123456789ABCDEF"; + + ret = &(buf[0]); + for (i = 0; i < 8; i++) { + ret[i * 2] = f[(p[i] >> 4) & 0xf]; + ret[i * 2 + 1] = f[p[i] & 0xf]; + } + ret[16] = '\0'; + return ret; +} + +static int test_des_ecb(int i) +{ + DES_key_schedule ks; + DES_cblock in, out, outin; + char b1[DATA_BUF_SIZE], b2[DATA_BUF_SIZE]; + + DES_set_key_unchecked(&key_data[i], &ks); + memcpy(in, plain_data[i], 8); + memset(out, 0, 8); + memset(outin, 0, 8); + DES_ecb_encrypt(&in, &out, &ks, DES_ENCRYPT); + DES_ecb_encrypt(&out, &outin, &ks, DES_DECRYPT); + + if (!TEST_mem_eq(out, 8, cipher_data[i], 8)) { + TEST_info("Encryption error %2d k=%s p=%s", i + 1, + pt(key_data[i], b1), pt(in, b2)); + return 0; + } + if (!TEST_mem_eq(in, 8, outin, 8)) { + TEST_info("Decryption error %2d k=%s p=%s", i + 1, + pt(key_data[i], b1), pt(out, b2)); + return 0; + } + return 1; +} + +static int test_des_ede_ecb(int i) +{ + DES_cblock in, out, outin; DES_key_schedule ks, ks2, ks3; + char b1[DATA_BUF_SIZE], b2[DATA_BUF_SIZE]; + + DES_set_key_unchecked(&key_data[i], &ks); + DES_set_key_unchecked(&key_data[i + 1], &ks2); + DES_set_key_unchecked(&key_data[i + 2], &ks3); + memcpy(in, plain_data[i], 8); + memset(out, 0, 8); + memset(outin, 0, 8); + DES_ecb3_encrypt(&in, &out, &ks, &ks2, &ks, DES_ENCRYPT); + DES_ecb3_encrypt(&out, &outin, &ks, &ks2, &ks, DES_DECRYPT); + + if (!TEST_mem_eq(out, 8, cipher_ecb2[i], 8)) { + TEST_info("Encryption error %2d k=%s p=%s", i + 1, + pt(key_data[i], b1), pt(in, b2)); + return 0; + } + if (!TEST_mem_eq(in, 8, outin, 8)) { + TEST_info("Decryption error %2d k=%s p=%s ", i + 1, + pt(key_data[i], b1), pt(out, b2)); + return 0; + } + return 1; +} + +static int test_des_cbc(void) +{ unsigned char cbc_in[40]; unsigned char cbc_out[40]; - DES_LONG cs; - unsigned char cret[8]; - DES_LONG lqret[4]; - int num; - char *str; - - printf("Doing ecb\n"); - for (i = 0; i < NUM_TESTS; i++) { - DES_set_key_unchecked(&key_data[i], &ks); - memcpy(in, plain_data[i], 8); - memset(out, 0, 8); - memset(outin, 0, 8); - DES_ecb_encrypt(&in, &out, &ks, DES_ENCRYPT); - DES_ecb_encrypt(&out, &outin, &ks, DES_DECRYPT); - - if (memcmp(out, cipher_data[i], 8) != 0) { - printf("Encryption error %2d\nk=%s p=%s o=%s act=%s\n", - i + 1, pt(key_data[i]), pt(in), pt(cipher_data[i]), - pt(out)); - err = 1; - } - if (memcmp(in, outin, 8) != 0) { - printf("Decryption error %2d\nk=%s p=%s o=%s act=%s\n", - i + 1, pt(key_data[i]), pt(out), pt(in), pt(outin)); - err = 1; - } - } - -# ifndef LIBDES_LIT - printf("Doing ede ecb\n"); - for (i = 0; i < (NUM_TESTS - 2); i++) { - DES_set_key_unchecked(&key_data[i], &ks); - DES_set_key_unchecked(&key_data[i + 1], &ks2); - DES_set_key_unchecked(&key_data[i + 2], &ks3); - memcpy(in, plain_data[i], 8); - memset(out, 0, 8); - memset(outin, 0, 8); - DES_ecb3_encrypt(&in,&out,&ks,&ks2,&ks,DES_ENCRYPT); - DES_ecb3_encrypt(&out,&outin,&ks,&ks2,&ks,DES_DECRYPT); - - if (memcmp(out, cipher_ecb2[i], 8) != 0) { - printf("Encryption error %2d\nk=%s p=%s o=%s act=%s\n", - i + 1, pt(key_data[i]), pt(in), pt(cipher_ecb2[i]), - pt(out)); - err = 1; - } - if (memcmp(in, outin, 8) != 0) { - printf("Decryption error %2d\nk=%s p=%s o=%s act=%s\n", - i + 1, pt(key_data[i]), pt(out), pt(in), pt(outin)); - err = 1; - } - } -# endif + DES_cblock iv3; + DES_key_schedule ks; + const size_t cbc_data_len = strlen((char *)cbc_data); - printf("Doing cbc\n"); - if ((j = DES_set_key_checked(&cbc_key, &ks)) != 0) { - printf("Key error %d\n", j); - err = 1; - } - memset(cbc_out, 0, 40); - memset(cbc_in, 0, 40); + if (!TEST_int_eq(DES_set_key_checked(&cbc_key, &ks), 0)) + return 0; + memset(cbc_out, 0, sizeof(cbc_out)); + memset(cbc_in, 0, sizeof(cbc_in)); memcpy(iv3, cbc_iv, sizeof(cbc_iv)); - DES_ncbc_encrypt(cbc_data, cbc_out, strlen((char *)cbc_data) + 1, &ks, + DES_ncbc_encrypt(cbc_data, cbc_out, cbc_data_len + 1, &ks, &iv3, DES_ENCRYPT); - if (memcmp(cbc_out, cbc_ok, 32) != 0) { - printf("cbc_encrypt encrypt error\n"); - err = 1; - } + if (!TEST_mem_eq(cbc_out, 32, cbc_ok, 32)) + return 0; memcpy(iv3, cbc_iv, sizeof(cbc_iv)); - DES_ncbc_encrypt(cbc_out, cbc_in, strlen((char *)cbc_data) + 1, &ks, + DES_ncbc_encrypt(cbc_out, cbc_in, cbc_data_len + 1, &ks, &iv3, DES_DECRYPT); - if (memcmp(cbc_in, cbc_data, strlen((char *)cbc_data)) != 0) { - printf("cbc_encrypt decrypt error\n"); - err = 1; - } -# ifndef LIBDES_LIT - printf("Doing desx cbc\n"); - if ((j = DES_set_key_checked(&cbc_key, &ks)) != 0) { - printf("Key error %d\n", j); - err = 1; - } - memset(cbc_out, 0, 40); - memset(cbc_in, 0, 40); + return TEST_mem_eq(cbc_in, cbc_data_len, cbc_data, cbc_data_len); +} + +static int test_des_ede_cbc(void) +{ + DES_cblock iv3; + DES_key_schedule ks; + unsigned char cbc_in[40]; + unsigned char cbc_out[40]; + const size_t n = strlen((char *)cbc_data) + 1; + + if (!TEST_int_eq(DES_set_key_checked(&cbc_key, &ks), 0)) + return 0; + memset(cbc_out, 0, sizeof(cbc_out)); + memset(cbc_in, 0, sizeof(cbc_in)); memcpy(iv3, cbc_iv, sizeof(cbc_iv)); - DES_xcbc_encrypt(cbc_data, cbc_out, strlen((char *)cbc_data) + 1, &ks, - &iv3, &cbc2_key, &cbc3_key, DES_ENCRYPT); - if (memcmp(cbc_out, xcbc_ok, 32) != 0) { - printf("des_xcbc_encrypt encrypt error\n"); - err = 1; - } + DES_xcbc_encrypt(cbc_data, cbc_out, n, &ks, &iv3, &cbc2_key, &cbc3_key, + DES_ENCRYPT); + if (!TEST_mem_eq(cbc_out, sizeof(xcbc_ok), xcbc_ok, sizeof(xcbc_ok))) + return 0; memcpy(iv3, cbc_iv, sizeof(cbc_iv)); - DES_xcbc_encrypt(cbc_out, cbc_in, strlen((char *)cbc_data) + 1, &ks, - &iv3, &cbc2_key, &cbc3_key, DES_DECRYPT); - if (memcmp(cbc_in, cbc_data, strlen((char *)cbc_data) + 1) != 0) { - printf("des_xcbc_encrypt decrypt error\n"); - err = 1; - } -# endif + DES_xcbc_encrypt(cbc_out, cbc_in, n, &ks, &iv3, &cbc2_key, &cbc3_key, + DES_DECRYPT); + return TEST_mem_eq(cbc_data, n, cbc_data, n); +} - printf("Doing ede cbc\n"); - if ((j = DES_set_key_checked(&cbc_key, &ks)) != 0) { - printf("Key error %d\n", j); - err = 1; - } - if ((j = DES_set_key_checked(&cbc2_key, &ks2)) != 0) { - printf("Key error %d\n", j); - err = 1; - } - if ((j = DES_set_key_checked(&cbc3_key, &ks3)) != 0) { - printf("Key error %d\n", j); - err = 1; - } - memset(cbc_out, 0, 40); - memset(cbc_in, 0, 40); - i = strlen((char *)cbc_data) + 1; - /* i=((i+7)/8)*8; */ +static int test_ede_cbc(void) +{ + DES_cblock iv3; + DES_key_schedule ks, ks2, ks3; + unsigned char cbc_in[40]; + unsigned char cbc_out[40]; + const size_t i = strlen((char *)cbc_data) + 1; + const size_t n = (i + 7) / 8 * 8; + + if (!TEST_int_eq(DES_set_key_checked(&cbc_key, &ks), 0)) + return 0; + if (!TEST_int_eq(DES_set_key_checked(&cbc2_key, &ks2), 0)) + return 0; + if (!TEST_int_eq(DES_set_key_checked(&cbc3_key, &ks3), 0)) + return 0; + memset(cbc_out, 0, sizeof(cbc_out)); + memset(cbc_in, 0, sizeof(cbc_in)); memcpy(iv3, cbc_iv, sizeof(cbc_iv)); DES_ede3_cbc_encrypt(cbc_data, cbc_out, 16L, &ks, &ks2, &ks3, &iv3, DES_ENCRYPT); - DES_ede3_cbc_encrypt(&(cbc_data[16]), &(cbc_out[16]), i - 16, &ks, &ks2, + DES_ede3_cbc_encrypt(&cbc_data[16], &cbc_out[16], i - 16, &ks, &ks2, &ks3, &iv3, DES_ENCRYPT); - if (memcmp - (cbc_out, cbc3_ok, - (unsigned int)(strlen((char *)cbc_data) + 1 + 7) / 8 * 8) != 0) { - unsigned int n; - - printf("des_ede3_cbc_encrypt encrypt error\n"); - for (n = 0; n < i; ++n) - printf(" %02x", cbc_out[n]); - printf("\n"); - for (n = 0; n < i; ++n) - printf(" %02x", cbc3_ok[n]); - printf("\n"); - err = 1; - } + if (!TEST_mem_eq(cbc_out, n, cbc3_ok, n)) + return 0; memcpy(iv3, cbc_iv, sizeof(cbc_iv)); - DES_ede3_cbc_encrypt(cbc_out, cbc_in, i, &ks, &ks2, &ks3, &iv3, DES_DECRYPT); - if (memcmp(cbc_in, cbc_data, strlen((char *)cbc_data) + 1) != 0) { - unsigned int n; - - printf("DES_ede3_cbc_encrypt decrypt error\n"); - for (n = 0; n < i; ++n) - printf(" %02x", cbc_data[n]); - printf("\n"); - for (n = 0; n < i; ++n) - printf(" %02x", cbc_in[n]); - printf("\n"); - err = 1; - } -# ifndef LIBDES_LIT - printf("Doing pcbc\n"); - if ((j = DES_set_key_checked(&cbc_key, &ks)) != 0) { - printf("Key error %d\n", j); - err = 1; - } - memset(cbc_out, 0, 40); - memset(cbc_in, 0, 40); - DES_pcbc_encrypt(cbc_data, cbc_out, strlen((char *)cbc_data) + 1, &ks, + DES_ede3_cbc_encrypt(cbc_out, cbc_in, i, &ks, &ks2, &ks3, &iv3, + DES_DECRYPT); + return TEST_mem_eq(cbc_in, i, cbc_data, i); +} + +static int test_input_align(int i) +{ + unsigned char cbc_out[40]; + DES_cblock iv; + DES_key_schedule ks; + const size_t n = strlen(i + (char *)cbc_data) + 1; + + memset(cbc_out, 0, sizeof(cbc_out)); + memcpy(iv, cbc_iv, sizeof(cbc_iv)); + if (!TEST_int_eq(DES_set_key_checked(&cbc_key, &ks), 0)) + return 0; + DES_ncbc_encrypt(&cbc_data[i], cbc_out, n, &ks, &iv, DES_ENCRYPT); + return 1; +} + +static int test_output_align(int i) +{ + unsigned char cbc_out[40]; + DES_cblock iv; + DES_key_schedule ks; + const size_t n = strlen((char *)cbc_data) + 1; + + memset(cbc_out, 0, sizeof(cbc_out)); + memcpy(iv, cbc_iv, sizeof(cbc_iv)); + if (!TEST_int_eq(DES_set_key_checked(&cbc_key, &ks), 0)) + return 0; + DES_ncbc_encrypt(cbc_data, &cbc_out[i], n, &ks, &iv, DES_ENCRYPT); + return 1; +} + +static int test_des_crypt(void) +{ + if (!TEST_str_eq("efGnQx2725bI2", DES_crypt("testing", "ef"))) + return 0; + if (!TEST_str_eq("yA1Rp/1hZXIJk", DES_crypt("bca76;23", "yA"))) + return 0; + + if (!TEST_ptr_null(DES_crypt("testing", "y\202"))) + return 0; + if (!TEST_ptr_null(DES_crypt("testing", "\0A"))) + return 0; + if (!TEST_ptr_null(DES_crypt("testing", "A"))) + return 0; + return 1; +} + +static int test_des_pcbc(void) +{ + unsigned char cbc_in[40]; + unsigned char cbc_out[40]; + DES_key_schedule ks; + const int n = strlen((char *)cbc_data) + 1; + + if (!TEST_int_eq(DES_set_key_checked(&cbc_key, &ks), 0)) + return 0; + memset(cbc_out, 0, sizeof(cbc_out)); + memset(cbc_in, 0, sizeof(cbc_in)); + DES_pcbc_encrypt(cbc_data, cbc_out, n, &ks, &cbc_iv, DES_ENCRYPT); - if (memcmp(cbc_out, pcbc_ok, 32) != 0) { - printf("pcbc_encrypt encrypt error\n"); - err = 1; - } - DES_pcbc_encrypt(cbc_out, cbc_in, strlen((char *)cbc_data) + 1, &ks, + if (!TEST_mem_eq(cbc_out, sizeof(pcbc_ok), pcbc_ok, sizeof(pcbc_ok))) + return 0; + DES_pcbc_encrypt(cbc_out, cbc_in, n, &ks, &cbc_iv, DES_DECRYPT); - if (memcmp(cbc_in, cbc_data, strlen((char *)cbc_data) + 1) != 0) { - printf("pcbc_encrypt decrypt error\n"); - err = 1; - } + return TEST_mem_eq(cbc_in, n, cbc_data, n); +} - printf("Doing "); - printf("cfb8 "); - err += cfb_test(8, cfb_cipher8); - printf("cfb16 "); - err += cfb_test(16, cfb_cipher16); - printf("cfb32 "); - err += cfb_test(32, cfb_cipher32); - printf("cfb48 "); - err += cfb_test(48, cfb_cipher48); - printf("cfb64 "); - err += cfb_test(64, cfb_cipher64); - - printf("cfb64() "); - err += cfb64_test(cfb_cipher64); +static int cfb_test(int bits, unsigned char *cfb_cipher) +{ + DES_key_schedule ks; + + DES_set_key_checked(&cfb_key, &ks); + memcpy(cfb_tmp, cfb_iv, sizeof(cfb_iv)); + DES_cfb_encrypt(plain, cfb_buf1, bits, sizeof(plain), &ks, &cfb_tmp, + DES_ENCRYPT); + if (!TEST_mem_eq(cfb_cipher, sizeof(plain), cfb_buf1, sizeof(plain))) + return 0; + memcpy(cfb_tmp, cfb_iv, sizeof(cfb_iv)); + DES_cfb_encrypt(cfb_buf1, cfb_buf2, bits, sizeof(plain), &ks, &cfb_tmp, + DES_DECRYPT); + return TEST_mem_eq(plain, sizeof(plain), cfb_buf2, sizeof(plain)); +} + +static int test_des_cfb8(void) +{ + return cfb_test(8, cfb_cipher8); +} + +static int test_des_cfb16(void) +{ + return cfb_test(16, cfb_cipher16); +} + +static int test_des_cfb32(void) +{ + return cfb_test(32, cfb_cipher32); +} + +static int test_des_cfb48(void) +{ + return cfb_test(48, cfb_cipher48); +} + +static int test_des_cfb64(void) +{ + DES_key_schedule ks; + int n; + size_t i; + + if (!cfb_test(64, cfb_cipher64)) + return 0; + + DES_set_key_checked(&cfb_key, &ks); + memcpy(cfb_tmp, cfb_iv, sizeof(cfb_iv)); + n = 0; + DES_cfb64_encrypt(plain, cfb_buf1, 12, &ks, &cfb_tmp, &n, DES_ENCRYPT); + DES_cfb64_encrypt(&plain[12], &cfb_buf1[12], sizeof(plain) - 12, &ks, + &cfb_tmp, &n, DES_ENCRYPT); + if (!TEST_mem_eq(cfb_cipher64, sizeof(plain), cfb_buf1, sizeof(plain))) + return 0; + memcpy(cfb_tmp, cfb_iv, sizeof(cfb_iv)); + n = 0; + DES_cfb64_encrypt(cfb_buf1, cfb_buf2, 17, &ks, &cfb_tmp, &n, DES_DECRYPT); + DES_cfb64_encrypt(&cfb_buf1[17], &cfb_buf2[17], + sizeof(plain) - 17, &ks, &cfb_tmp, &n, DES_DECRYPT); + if (!TEST_mem_eq(plain, sizeof(plain), cfb_buf2, sizeof(plain))) + return 0; memcpy(cfb_tmp, cfb_iv, sizeof(cfb_iv)); for (i = 0; i < sizeof(plain); i++) - DES_cfb_encrypt(&(plain[i]), &(cfb_buf1[i]), - 8, 1, &ks, &cfb_tmp, DES_ENCRYPT); - if (memcmp(cfb_cipher8, cfb_buf1, sizeof(plain)) != 0) { - printf("cfb_encrypt small encrypt error\n"); - err = 1; - } + DES_cfb_encrypt(&plain[i], &cfb_buf1[i], 8, 1, &ks, &cfb_tmp, + DES_ENCRYPT); + if (!TEST_mem_eq(cfb_cipher8, sizeof(plain), cfb_buf1, sizeof(plain))) + return 0; memcpy(cfb_tmp, cfb_iv, sizeof(cfb_iv)); for (i = 0; i < sizeof(plain); i++) - DES_cfb_encrypt(&(cfb_buf1[i]), &(cfb_buf2[i]), - 8, 1, &ks, &cfb_tmp, DES_DECRYPT); - if (memcmp(plain, cfb_buf2, sizeof(plain)) != 0) { - printf("cfb_encrypt small decrypt error\n"); - err = 1; - } + DES_cfb_encrypt(&cfb_buf1[i], &cfb_buf2[i], 8, 1, &ks, &cfb_tmp, + DES_DECRYPT); + return TEST_mem_eq(plain, sizeof(plain), cfb_buf2, sizeof(plain)); +} - printf("ede_cfb64() "); - err += ede_cfb64_test(cfb_cipher64); +static int test_des_ede_cfb64(void) +{ + DES_key_schedule ks; + int n; - printf("done\n"); + DES_set_key_checked(&cfb_key, &ks); + memcpy(cfb_tmp, cfb_iv, sizeof(cfb_iv)); + n = 0; + DES_ede3_cfb64_encrypt(plain, cfb_buf1, 12, &ks, &ks, &ks, &cfb_tmp, &n, + DES_ENCRYPT); + DES_ede3_cfb64_encrypt(&plain[12], &cfb_buf1[12], sizeof(plain) - 12, &ks, + &ks, &ks, &cfb_tmp, &n, DES_ENCRYPT); + if (!TEST_mem_eq(cfb_cipher64, sizeof(plain), cfb_buf1, sizeof(plain))) + return 0; + memcpy(cfb_tmp, cfb_iv, sizeof(cfb_iv)); + n = 0; + DES_ede3_cfb64_encrypt(cfb_buf1, cfb_buf2, (long)17, &ks, &ks, &ks, + &cfb_tmp, &n, DES_DECRYPT); + DES_ede3_cfb64_encrypt(&cfb_buf1[17], &cfb_buf2[17], sizeof(plain) - 17, + &ks, &ks, &ks, &cfb_tmp, &n, DES_DECRYPT); + return TEST_mem_eq(plain, sizeof(plain), cfb_buf2, sizeof(plain)); +} + +static int test_des_ofb(void) +{ + DES_key_schedule ks; - printf("Doing ofb\n"); DES_set_key_checked(&ofb_key, &ks); memcpy(ofb_tmp, ofb_iv, sizeof(ofb_iv)); DES_ofb_encrypt(plain, ofb_buf1, 64, sizeof(plain) / 8, &ks, &ofb_tmp); - if (memcmp(ofb_cipher, ofb_buf1, sizeof(ofb_buf1)) != 0) { - printf("ofb_encrypt encrypt error\n"); - printf("%02X %02X %02X %02X %02X %02X %02X %02X\n", - ofb_buf1[8 + 0], ofb_buf1[8 + 1], ofb_buf1[8 + 2], - ofb_buf1[8 + 3], ofb_buf1[8 + 4], ofb_buf1[8 + 5], - ofb_buf1[8 + 6], ofb_buf1[8 + 7]); - printf("%02X %02X %02X %02X %02X %02X %02X %02X\n", ofb_buf1[8 + 0], - ofb_cipher[8 + 1], ofb_cipher[8 + 2], ofb_cipher[8 + 3], - ofb_buf1[8 + 4], ofb_cipher[8 + 5], ofb_cipher[8 + 6], - ofb_cipher[8 + 7]); - err = 1; - } + if (!TEST_mem_eq(ofb_cipher, sizeof(ofb_buf1), ofb_buf1, sizeof(ofb_buf1))) + return 0; + memcpy(ofb_tmp, ofb_iv, sizeof(ofb_iv)); DES_ofb_encrypt(ofb_buf1, ofb_buf2, 64, sizeof(ofb_buf1) / 8, &ks, &ofb_tmp); - if (memcmp(plain, ofb_buf2, sizeof(ofb_buf2)) != 0) { - printf("ofb_encrypt decrypt error\n"); - printf("%02X %02X %02X %02X %02X %02X %02X %02X\n", - ofb_buf2[8 + 0], ofb_buf2[8 + 1], ofb_buf2[8 + 2], - ofb_buf2[8 + 3], ofb_buf2[8 + 4], ofb_buf2[8 + 5], - ofb_buf2[8 + 6], ofb_buf2[8 + 7]); - printf("%02X %02X %02X %02X %02X %02X %02X %02X\n", plain[8 + 0], - plain[8 + 1], plain[8 + 2], plain[8 + 3], plain[8 + 4], - plain[8 + 5], plain[8 + 6], plain[8 + 7]); - err = 1; - } + return TEST_mem_eq(plain, sizeof(ofb_buf2), ofb_buf2, sizeof(ofb_buf2)); +} + +static int test_des_ofb64(void) +{ + DES_key_schedule ks; + int num; + size_t i; - printf("Doing ofb64\n"); DES_set_key_checked(&ofb_key, &ks); memcpy(ofb_tmp, ofb_iv, sizeof(ofb_iv)); memset(ofb_buf1, 0, sizeof(ofb_buf1)); memset(ofb_buf2, 0, sizeof(ofb_buf1)); num = 0; for (i = 0; i < sizeof(plain); i++) { - DES_ofb64_encrypt(&(plain[i]), &(ofb_buf1[i]), 1, &ks, &ofb_tmp, &num); - } - if (memcmp(ofb_cipher, ofb_buf1, sizeof(ofb_buf1)) != 0) { - printf("ofb64_encrypt encrypt error\n"); - err = 1; + DES_ofb64_encrypt(&plain[i], &ofb_buf1[i], 1, &ks, &ofb_tmp, &num); } + if (!TEST_mem_eq(ofb_cipher, sizeof(ofb_buf1), ofb_buf1, sizeof(ofb_buf1))) + return 0; memcpy(ofb_tmp, ofb_iv, sizeof(ofb_iv)); num = 0; DES_ofb64_encrypt(ofb_buf1, ofb_buf2, sizeof(ofb_buf1), &ks, &ofb_tmp, &num); - if (memcmp(plain, ofb_buf2, sizeof(ofb_buf2)) != 0) { - printf("ofb64_encrypt decrypt error\n"); - err = 1; - } + return TEST_mem_eq(plain, sizeof(ofb_buf2), ofb_buf2, sizeof(ofb_buf2)); +} + +static int test_des_ede_ofb64(void) +{ + DES_key_schedule ks; + int num; + size_t i; - printf("Doing ede_ofb64\n"); DES_set_key_checked(&ofb_key, &ks); memcpy(ofb_tmp, ofb_iv, sizeof(ofb_iv)); memset(ofb_buf1, 0, sizeof(ofb_buf1)); memset(ofb_buf2, 0, sizeof(ofb_buf1)); num = 0; for (i = 0; i < sizeof(plain); i++) { - DES_ede3_ofb64_encrypt(&(plain[i]), &(ofb_buf1[i]), 1, &ks, &ks, + DES_ede3_ofb64_encrypt(&plain[i], &ofb_buf1[i], 1, &ks, &ks, &ks, &ofb_tmp, &num); } - if (memcmp(ofb_cipher, ofb_buf1, sizeof(ofb_buf1)) != 0) { - printf("ede_ofb64_encrypt encrypt error\n"); - err = 1; - } + if (!TEST_mem_eq(ofb_cipher, sizeof(ofb_buf1), ofb_buf1, sizeof(ofb_buf1))) + return 0; memcpy(ofb_tmp, ofb_iv, sizeof(ofb_iv)); num = 0; DES_ede3_ofb64_encrypt(ofb_buf1, ofb_buf2, sizeof(ofb_buf1), &ks, &ks, &ks, &ofb_tmp, &num); - if (memcmp(plain, ofb_buf2, sizeof(ofb_buf2)) != 0) { - printf("ede_ofb64_encrypt decrypt error\n"); - err = 1; - } - - printf("Doing cbc_cksum\n"); - DES_set_key_checked(&cbc_key, &ks); - cs = DES_cbc_cksum(cbc_data, &cret, strlen((char *)cbc_data), &ks, - &cbc_iv); - if (cs != cbc_cksum_ret) { - printf("bad return value (%08lX), should be %08lX\n", - (unsigned long)cs, (unsigned long)cbc_cksum_ret); - err = 1; - } - if (memcmp(cret, cbc_cksum_data, 8) != 0) { - printf("bad cbc_cksum block returned\n"); - err = 1; - } - - printf("Doing quad_cksum\n"); - cs = DES_quad_cksum(cbc_data, (DES_cblock *)lqret, - (long)strlen((char *)cbc_data), 2, - (DES_cblock *)cbc_iv); - if (cs != 0x70d7a63aL) { - printf("quad_cksum error, ret %08lx should be 70d7a63a\n", - (unsigned long)cs); - err = 1; - } - if (lqret[0] != 0x327eba8dL) { - printf("quad_cksum error, out[0] %08lx is not %08lx\n", - (unsigned long)lqret[0], 0x327eba8dUL); - err = 1; - } - if (lqret[1] != 0x201a49ccL) { - printf("quad_cksum error, out[1] %08lx is not %08lx\n", - (unsigned long)lqret[1], 0x201a49ccUL); - err = 1; - } - if (lqret[2] != 0x70d7a63aL) { - printf("quad_cksum error, out[2] %08lx is not %08lx\n", - (unsigned long)lqret[2], 0x70d7a63aUL); - err = 1; - } - if (lqret[3] != 0x501c2c26L) { - printf("quad_cksum error, out[3] %08lx is not %08lx\n", - (unsigned long)lqret[3], 0x501c2c26UL); - err = 1; - } -# endif - - printf("input word alignment test"); - for (i = 0; i < 4; i++) { - printf(" %d", i); - DES_ncbc_encrypt(&(cbc_out[i]), cbc_in, - strlen((char *)cbc_data) + 1, &ks, - &cbc_iv, DES_ENCRYPT); - } - printf("\noutput word alignment test"); - for (i = 0; i < 4; i++) { - printf(" %d", i); - DES_ncbc_encrypt(cbc_out, &(cbc_in[i]), - strlen((char *)cbc_data) + 1, &ks, - &cbc_iv, DES_ENCRYPT); - } - printf("\n"); - printf("fast crypt test "); - str = DES_crypt("testing", "ef"); - if (strcmp("efGnQx2725bI2", str) != 0) { - printf("fast crypt error, %s should be efGnQx2725bI2\n", str); - err = 1; - } - str = DES_crypt("bca76;23", "yA"); - if (strcmp("yA1Rp/1hZXIJk", str) != 0) { - printf("fast crypt error, %s should be yA1Rp/1hZXIJk\n", str); - err = 1; - } - str = DES_crypt("testing", "y\202"); - if (str != NULL) { - printf("salt error only usascii are accepted\n"); - err = 1; - } - str = DES_crypt("testing", "\0A"); - if (str != NULL) { - printf("salt error cannot contain null terminator\n"); - err = 1; - } - str = DES_crypt("testing", "A"); - if (str != NULL) { - printf("salt error must be at least 2\n"); - err = 1; - } - printf("\n"); - return (err); -} - -static char *pt(unsigned char *p) -{ - static char bufs[10][20]; - static int bnum = 0; - char *ret; - int i; - static char *f = "0123456789ABCDEF"; - - ret = &(bufs[bnum++][0]); - bnum %= 10; - for (i = 0; i < 8; i++) { - ret[i * 2] = f[(p[i] >> 4) & 0xf]; - ret[i * 2 + 1] = f[p[i] & 0xf]; - } - ret[16] = '\0'; - return (ret); + return TEST_mem_eq(plain, sizeof(ofb_buf2), ofb_buf2, sizeof(ofb_buf2)); } -# ifndef LIBDES_LIT - -static int cfb_test(int bits, unsigned char *cfb_cipher) +static int test_des_cbc_cksum(void) { + DES_LONG cs; DES_key_schedule ks; - int i, err = 0; + unsigned char cret[8]; - DES_set_key_checked(&cfb_key, &ks); - memcpy(cfb_tmp, cfb_iv, sizeof(cfb_iv)); - DES_cfb_encrypt(plain, cfb_buf1, bits, sizeof(plain), &ks, &cfb_tmp, - DES_ENCRYPT); - if (memcmp(cfb_cipher, cfb_buf1, sizeof(plain)) != 0) { - err = 1; - printf("cfb_encrypt encrypt error\n"); - for (i = 0; i < 24; i += 8) - printf("%s\n", pt(&(cfb_buf1[i]))); - } - memcpy(cfb_tmp, cfb_iv, sizeof(cfb_iv)); - DES_cfb_encrypt(cfb_buf1, cfb_buf2, bits, sizeof(plain), &ks, &cfb_tmp, - DES_DECRYPT); - if (memcmp(plain, cfb_buf2, sizeof(plain)) != 0) { - err = 1; - printf("cfb_encrypt decrypt error\n"); - for (i = 0; i < 24; i += 8) - printf("%s\n", pt(&(cfb_buf1[i]))); - } - return (err); + DES_set_key_checked(&cbc_key, &ks); + cs = DES_cbc_cksum(cbc_data, &cret, strlen((char *)cbc_data), &ks, + &cbc_iv); + if (!TEST_cs_eq(cs, cbc_cksum_ret)) + return 0; + return TEST_mem_eq(cret, 8, cbc_cksum_data, 8); } -static int cfb64_test(unsigned char *cfb_cipher) +static int test_des_quad_cksum(void) { - DES_key_schedule ks; - int err = 0, i, n; + DES_LONG cs, lqret[4]; - DES_set_key_checked(&cfb_key, &ks); - memcpy(cfb_tmp, cfb_iv, sizeof(cfb_iv)); - n = 0; - DES_cfb64_encrypt(plain, cfb_buf1, 12, &ks, &cfb_tmp, &n, DES_ENCRYPT); - DES_cfb64_encrypt(&(plain[12]), &(cfb_buf1[12]), sizeof(plain) - 12, &ks, - &cfb_tmp, &n, DES_ENCRYPT); - if (memcmp(cfb_cipher, cfb_buf1, sizeof(plain)) != 0) { - err = 1; - printf("cfb_encrypt encrypt error\n"); - for (i = 0; i < 24; i += 8) - printf("%s\n", pt(&(cfb_buf1[i]))); - } - memcpy(cfb_tmp, cfb_iv, sizeof(cfb_iv)); - n = 0; - DES_cfb64_encrypt(cfb_buf1, cfb_buf2, 17, &ks, &cfb_tmp, &n, DES_DECRYPT); - DES_cfb64_encrypt(&(cfb_buf1[17]), &(cfb_buf2[17]), - sizeof(plain) - 17, &ks, &cfb_tmp, &n, DES_DECRYPT); - if (memcmp(plain, cfb_buf2, sizeof(plain)) != 0) { - err = 1; - printf("cfb_encrypt decrypt error\n"); - for (i = 0; i < 24; i += 8) - printf("%s\n", pt(&(cfb_buf2[i]))); - } - return (err); + cs = DES_quad_cksum(cbc_data, (DES_cblock *)lqret, + (long)strlen((char *)cbc_data), 2, + (DES_cblock *)cbc_iv); + if (!TEST_cs_eq(cs, 0x70d7a63aL)) + return 0; + if (!TEST_cs_eq(lqret[0], 0x327eba8dL)) + return 0; + if (!TEST_cs_eq(lqret[1], 0x201a49ccL)) + return 0; + if (!TEST_cs_eq(lqret[2], 0x70d7a63aL)) + return 0; + if (!TEST_cs_eq(lqret[3], 0x501c2c26L)) + return 0; + return 1; } +#endif -static int ede_cfb64_test(unsigned char *cfb_cipher) +void register_tests(void) { - DES_key_schedule ks; - int err = 0, i, n; - - DES_set_key_checked(&cfb_key, &ks); - memcpy(cfb_tmp, cfb_iv, sizeof(cfb_iv)); - n = 0; - DES_ede3_cfb64_encrypt(plain, cfb_buf1, 12, &ks, &ks, &ks, &cfb_tmp, &n, - DES_ENCRYPT); - DES_ede3_cfb64_encrypt(&(plain[12]), &(cfb_buf1[12]), - sizeof(plain) - 12, &ks, &ks, &ks, - &cfb_tmp, &n, DES_ENCRYPT); - if (memcmp(cfb_cipher, cfb_buf1, sizeof(plain)) != 0) { - err = 1; - printf("ede_cfb_encrypt encrypt error\n"); - for (i = 0; i < 24; i += 8) - printf("%s\n", pt(&(cfb_buf1[i]))); - } - memcpy(cfb_tmp, cfb_iv, sizeof(cfb_iv)); - n = 0; - DES_ede3_cfb64_encrypt(cfb_buf1, cfb_buf2, (long)17, &ks, &ks, &ks, - &cfb_tmp, &n, DES_DECRYPT); - DES_ede3_cfb64_encrypt(&(cfb_buf1[17]), &(cfb_buf2[17]), - sizeof(plain) - 17, &ks, &ks, &ks, - &cfb_tmp, &n, DES_DECRYPT); - if (memcmp(plain, cfb_buf2, sizeof(plain)) != 0) { - err = 1; - printf("ede_cfb_encrypt decrypt error\n"); - for (i = 0; i < 24; i += 8) - printf("%s\n", pt(&(cfb_buf2[i]))); - } - return (err); -} - -# endif +#ifndef OPENSSL_NO_DES + ADD_ALL_TESTS(test_des_ecb, NUM_TESTS); + ADD_TEST(test_des_cbc); + ADD_TEST(test_ede_cbc); + ADD_ALL_TESTS(test_des_ede_ecb, NUM_TESTS - 2); + ADD_TEST(test_des_ede_cbc); + ADD_TEST(test_des_pcbc); + ADD_TEST(test_des_cfb8); + ADD_TEST(test_des_cfb16); + ADD_TEST(test_des_cfb32); + ADD_TEST(test_des_cfb48); + ADD_TEST(test_des_cfb64); + ADD_TEST(test_des_ede_cfb64); + ADD_TEST(test_des_ofb); + ADD_TEST(test_des_ofb64); + ADD_TEST(test_des_ede_ofb64); + ADD_TEST(test_des_cbc_cksum); + ADD_TEST(test_des_quad_cksum); + ADD_TEST(test_des_crypt); + ADD_ALL_TESTS(test_input_align, 4); + ADD_ALL_TESTS(test_output_align, 4); #endif +} From levitte at openssl.org Wed Apr 12 13:05:03 2017 From: levitte at openssl.org (Richard Levitte) Date: Wed, 12 Apr 2017 13:05:03 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492002303.073451.10521.nullmailer@dev.openssl.org> The branch master has been updated via e80a0f65d473833908bece6f2d0a2ecc16639474 (commit) via 29cbf152ffc3930d98738e49a65a6828da5cab37 (commit) via 5c64c1bfdedf96c60bc384dedc98ee824654f6a6 (commit) via d663c2db5619088800695d5cb074c3ec5d158aec (commit) from c491a39986610e499b44e6fee404475946a4b895 (commit) - Log ----------------------------------------------------------------- commit e80a0f65d473833908bece6f2d0a2ecc16639474 Author: Nicola Tuveri Date: Wed Apr 12 06:36:50 2017 +0300 Remove more stale code in ecdhtest.c Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3187) commit 29cbf152ffc3930d98738e49a65a6828da5cab37 Author: Nicola Tuveri Date: Tue Apr 11 19:46:13 2017 +0300 ecdhtest.c: move KATs to evptests.txt Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3187) commit 5c64c1bfdedf96c60bc384dedc98ee824654f6a6 Author: Nicola Tuveri Date: Tue Apr 11 19:36:06 2017 +0300 Remove stale code in ecdhtest.c Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3187) commit d663c2db5619088800695d5cb074c3ec5d158aec Author: Nicola Tuveri Date: Tue Apr 11 19:22:13 2017 +0300 ecdhtest.c: move NAMED CURVES TESTS to evptests.txt Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3187) ----------------------------------------------------------------------- Summary of changes: test/ecdhtest.c | 369 +----- test/evptests.txt | 3466 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 3470 insertions(+), 365 deletions(-) diff --git a/test/ecdhtest.c b/test/ecdhtest.c index b327847..11e0903 100644 --- a/test/ecdhtest.c +++ b/test/ecdhtest.c @@ -49,281 +49,6 @@ int main(int argc, char *argv[]) static const char rnd_seed[] = "string to make the random number generator think it has entropy"; -static const int KDF1_SHA1_len = 20; -static void *KDF1_SHA1(const void *in, size_t inlen, void *out, - size_t *outlen) -{ - if (*outlen < SHA_DIGEST_LENGTH) - return NULL; - *outlen = SHA_DIGEST_LENGTH; - return SHA1(in, inlen, out); -} - -static int test_ecdh_curve(int nid, BN_CTX *ctx, BIO *out) -{ - EC_KEY *a = NULL; - EC_KEY *b = NULL; - BIGNUM *x_a = NULL, *y_a = NULL, *x_b = NULL, *y_b = NULL; - char buf[12]; - unsigned char *abuf = NULL, *bbuf = NULL; - int i, alen, blen, aout, bout, ret = 0; - const EC_GROUP *group; - - a = EC_KEY_new_by_curve_name(nid); - b = EC_KEY_new_by_curve_name(nid); - if (a == NULL || b == NULL) - goto err; - - group = EC_KEY_get0_group(a); - - if ((x_a = BN_new()) == NULL) - goto err; - if ((y_a = BN_new()) == NULL) - goto err; - if ((x_b = BN_new()) == NULL) - goto err; - if ((y_b = BN_new()) == NULL) - goto err; - - BIO_puts(out, "Testing key generation with "); - BIO_puts(out, OBJ_nid2sn(nid)); -# ifdef NOISY - BIO_puts(out, "\n"); -# else - (void)BIO_flush(out); -# endif - - if (!EC_KEY_generate_key(a)) - goto err; - - if (EC_METHOD_get_field_type(EC_GROUP_method_of(group)) == - NID_X9_62_prime_field) { - if (!EC_POINT_get_affine_coordinates_GFp - (group, EC_KEY_get0_public_key(a), x_a, y_a, ctx)) - goto err; - } -# ifndef OPENSSL_NO_EC2M - else { - if (!EC_POINT_get_affine_coordinates_GF2m(group, - EC_KEY_get0_public_key(a), - x_a, y_a, ctx)) - goto err; - } -# endif -# ifdef NOISY - BIO_puts(out, " pri 1="); - BN_print(out, a->priv_key); - BIO_puts(out, "\n pub 1="); - BN_print(out, x_a); - BIO_puts(out, ","); - BN_print(out, y_a); - BIO_puts(out, "\n"); -# else - BIO_printf(out, " ."); - (void)BIO_flush(out); -# endif - - if (!EC_KEY_generate_key(b)) - goto err; - - if (EC_METHOD_get_field_type(EC_GROUP_method_of(group)) == - NID_X9_62_prime_field) { - if (!EC_POINT_get_affine_coordinates_GFp - (group, EC_KEY_get0_public_key(b), x_b, y_b, ctx)) - goto err; - } -# ifndef OPENSSL_NO_EC2M - else { - if (!EC_POINT_get_affine_coordinates_GF2m(group, - EC_KEY_get0_public_key(b), - x_b, y_b, ctx)) - goto err; - } -# endif - -# ifdef NOISY - BIO_puts(out, " pri 2="); - BN_print(out, b->priv_key); - BIO_puts(out, "\n pub 2="); - BN_print(out, x_b); - BIO_puts(out, ","); - BN_print(out, y_b); - BIO_puts(out, "\n"); -# else - BIO_printf(out, "."); - (void)BIO_flush(out); -# endif - - alen = KDF1_SHA1_len; - abuf = OPENSSL_malloc(alen); - aout = - ECDH_compute_key(abuf, alen, EC_KEY_get0_public_key(b), a, KDF1_SHA1); - -# ifdef NOISY - BIO_puts(out, " key1 ="); - for (i = 0; i < aout; i++) { - sprintf(buf, "%02X", abuf[i]); - BIO_puts(out, buf); - } - BIO_puts(out, "\n"); -# else - BIO_printf(out, "."); - (void)BIO_flush(out); -# endif - - blen = KDF1_SHA1_len; - bbuf = OPENSSL_malloc(blen); - bout = - ECDH_compute_key(bbuf, blen, EC_KEY_get0_public_key(a), b, KDF1_SHA1); - -# ifdef NOISY - BIO_puts(out, " key2 ="); - for (i = 0; i < bout; i++) { - sprintf(buf, "%02X", bbuf[i]); - BIO_puts(out, buf); - } - BIO_puts(out, "\n"); -# else - BIO_printf(out, "."); - (void)BIO_flush(out); -# endif - - if ((aout < 4) || (bout != aout) || (memcmp(abuf, bbuf, aout) != 0)) { -# ifndef NOISY - BIO_printf(out, " failed\n\n"); - BIO_printf(out, "key a:\n"); - BIO_printf(out, "private key: "); - BN_print(out, EC_KEY_get0_private_key(a)); - BIO_printf(out, "\n"); - BIO_printf(out, "public key (x,y): "); - BN_print(out, x_a); - BIO_printf(out, ","); - BN_print(out, y_a); - BIO_printf(out, "\nkey b:\n"); - BIO_printf(out, "private key: "); - BN_print(out, EC_KEY_get0_private_key(b)); - BIO_printf(out, "\n"); - BIO_printf(out, "public key (x,y): "); - BN_print(out, x_b); - BIO_printf(out, ","); - BN_print(out, y_b); - BIO_printf(out, "\n"); - BIO_printf(out, "generated key a: "); - for (i = 0; i < bout; i++) { - sprintf(buf, "%02X", bbuf[i]); - BIO_puts(out, buf); - } - BIO_printf(out, "\n"); - BIO_printf(out, "generated key b: "); - for (i = 0; i < aout; i++) { - sprintf(buf, "%02X", abuf[i]); - BIO_puts(out, buf); - } - BIO_printf(out, "\n"); -# endif - fprintf(stderr, "Error in ECDH routines\n"); - ret = 0; - } else { -# ifndef NOISY - BIO_printf(out, " ok\n"); -# endif - ret = 1; - } - err: - ERR_print_errors_fp(stderr); - - OPENSSL_free(abuf); - OPENSSL_free(bbuf); - BN_free(x_a); - BN_free(y_a); - BN_free(x_b); - BN_free(y_b); - EC_KEY_free(b); - EC_KEY_free(a); - return (ret); -} - -typedef struct { - const int nid; - const char *da; - const char *db; - const char *Z; -} ecdh_kat_t; - -static const ecdh_kat_t ecdh_kats[] = { - /* Keys and shared secrets from RFC 5114 */ - { NID_X9_62_prime192v1, - "323FA3169D8E9C6593F59476BC142000AB5BE0E249C43426", - "631F95BB4A67632C9C476EEE9AB695AB240A0499307FCF62", - "AD420182633F8526BFE954ACDA376F05E5FF4F837F54FEBE" }, - { NID_secp224r1, - "B558EB6C288DA707BBB4F8FBAE2AB9E9CB62E3BC5C7573E22E26D37F", - "AC3B1ADD3D9770E6F6A708EE9F3B8E0AB3B480E9F27F85C88B5E6D18", - "52272F50F46F4EDC9151569092F46DF2D96ECC3B6DC1714A4EA949FA" }, - { NID_X9_62_prime256v1, - "814264145F2F56F2E96A8E337A1284993FAF432A5ABCE59E867B7291D507A3AF", - "2CE1788EC197E096DB95A200CC0AB26A19CE6BCCAD562B8EEE1B593761CF7F41", - "DD0F5396219D1EA393310412D19A08F1F5811E9DC8EC8EEA7F80D21C820C2788" }, - { NID_secp384r1, - "D27335EA71664AF244DD14E9FD1260715DFD8A7965571C48D709EE7A7962A156" - "D706A90CBCB5DF2986F05FEADB9376F1", - "52D1791FDB4B70F89C0F00D456C2F7023B6125262C36A7DF1F80231121CCE3D3" - "9BE52E00C194A4132C4A6C768BCD94D2", - "5EA1FC4AF7256D2055981B110575E0A8CAE53160137D904C59D926EB1B8456E4" - "27AA8A4540884C37DE159A58028ABC0E" }, - { NID_secp521r1, - "0113F82DA825735E3D97276683B2B74277BAD27335EA71664AF2430CC4F33459" - "B9669EE78B3FFB9B8683015D344DCBFEF6FB9AF4C6C470BE254516CD3C1A1FB4" - "7362", - "00CEE3480D8645A17D249F2776D28BAE616952D1791FDB4B70F7C3378732AA1B" - "22928448BCD1DC2496D435B01048066EBE4F72903C361B1A9DC1193DC2C9D089" - "1B96", - "00CDEA89621CFA46B132F9E4CFE2261CDE2D4368EB5656634C7CC98C7A00CDE5" - "4ED1866A0DD3E6126C9D2F845DAFF82CEB1DA08F5D87521BB0EBECA77911169C" - "20CC" }, - /* Keys and shared secrets from RFC 5903 */ - { NID_X9_62_prime256v1, - "C88F01F510D9AC3F70A292DAA2316DE544E9AAB8AFE84049C62A9C57862D1433", - "C6EF9C5D78AE012A011164ACB397CE2088685D8F06BF9BE0B283AB46476BEE53", - "D6840F6B42F6EDAFD13116E0E12565202FEF8E9ECE7DCE03812464D04B9442DE" }, - { NID_secp384r1, - "099F3C7034D4A2C699884D73A375A67F7624EF7C6B3C0F160647B67414DCE655" - "E35B538041E649EE3FAEF896783AB194", - "41CB0779B4BDB85D47846725FBEC3C9430FAB46CC8DC5060855CC9BDA0AA2942" - "E0308312916B8ED2960E4BD55A7448FC", - "11187331C279962D93D604243FD592CB9D0A926F422E47187521287E7156C5C4" - "D603135569B9E9D09CF5D4A270F59746" }, - { NID_secp521r1, - "0037ADE9319A89F4DABDB3EF411AACCCA5123C61ACAB57B5393DCE47608172A0" - "95AA85A30FE1C2952C6771D937BA9777F5957B2639BAB072462F68C27A57382D" - "4A52", - "0145BA99A847AF43793FDD0E872E7CDFA16BE30FDC780F97BCCC3F078380201E" - "9C677D600B343757A3BDBF2A3163E4C2F869CCA7458AA4A4EFFC311F5CB15168" - "5EB9", - "01144C7D79AE6956BC8EDB8E7C787C4521CB086FA64407F97894E5E6B2D79B04" - "D1427E73CA4BAA240A34786859810C06B3C715A3A8CC3151F2BEE417996D19F3" - "DDEA" }, - /* Keys and shared secrets from RFC 7027 */ - { NID_brainpoolP256r1, - "81DB1EE100150FF2EA338D708271BE38300CB54241D79950F77B063039804F1D", - "55E40BC41E37E3E2AD25C3C6654511FFA8474A91A0032087593852D3E7D76BD3", - "89AFC39D41D3B327814B80940B042590F96556EC91E6AE7939BCE31F3A18BF2B" }, - { NID_brainpoolP384r1, - "1E20F5E048A5886F1F157C74E91BDE2B98C8B52D58E5003D57053FC4B0BD65D6" - "F15EB5D1EE1610DF870795143627D042", - "032640BC6003C59260F7250C3DB58CE647F98E1260ACCE4ACDA3DD869F74E01F" - "8BA5E0324309DB6A9831497ABAC96670", - "0BD9D3A7EA0B3D519D09D8E48D0785FB744A6B355E6304BC51C229FBBCE239BB" - "ADF6403715C35D4FB2A5444F575D4F42" }, - { NID_brainpoolP512r1, - "16302FF0DBBB5A8D733DAB7141C1B45ACBC8715939677F6A56850A38BD87BD59" - "B09E80279609FF333EB9D4C061231FB26F92EEB04982A5F1D1764CAD57665422", - "230E18E1BCC88A362FA54E4EA3902009292F7F8033624FD471B5D8ACE49D12CF" - "ABBC19963DAB8E2F1EBA00BFFB29E4D72D13F2224562F405CB80503666B25429", - "A7927098655F1F9976FA50A9D566865DC530331846381C87256BAF3226244B76" - "D36403C024D7BBF0AA0803EAFF405D3D24F11A9B5C0BEF679FE1454B21C4CD1F" } -}; - /* Given private value and NID, create EC_KEY structure */ static EC_KEY *mk_eckey(int nid, const char *str) @@ -360,63 +85,6 @@ static EC_KEY *mk_eckey(int nid, const char *str) return NULL; } -/* - * Known answer test: compute shared secret and check it matches expected - * value. - */ - -static int ecdh_kat(BIO *out, const ecdh_kat_t *kat) -{ - int rv = 0; - EC_KEY *key1 = NULL, *key2 = NULL; - BIGNUM *bnz = NULL; - unsigned char *Ztmp = NULL, *Z = NULL; - size_t Ztmplen, Zlen; - BIO_puts(out, "Testing ECDH shared secret with "); - BIO_puts(out, OBJ_nid2sn(kat->nid)); - if(!BN_hex2bn(&bnz, kat->Z)) - goto err; - key1 = mk_eckey(kat->nid, kat->da); - key2 = mk_eckey(kat->nid, kat->db); - if (!key1 || !key2) - goto err; - Ztmplen = (EC_GROUP_get_degree(EC_KEY_get0_group(key1)) + 7) / 8; - Zlen = BN_num_bytes(bnz); - if (Zlen > Ztmplen) - goto err; - if((Ztmp = OPENSSL_zalloc(Ztmplen)) == NULL) - goto err; - if((Z = OPENSSL_zalloc(Ztmplen)) == NULL) - goto err; - if(!BN_bn2binpad(bnz, Z, Ztmplen)) - goto err; - if (!ECDH_compute_key(Ztmp, Ztmplen, - EC_KEY_get0_public_key(key2), key1, 0)) - goto err; - if (memcmp(Ztmp, Z, Ztmplen)) - goto err; - memset(Ztmp, 0, Ztmplen); - if (!ECDH_compute_key(Ztmp, Ztmplen, - EC_KEY_get0_public_key(key1), key2, 0)) - goto err; - if (memcmp(Ztmp, Z, Ztmplen)) - goto err; - rv = 1; - err: - EC_KEY_free(key1); - EC_KEY_free(key2); - OPENSSL_free(Ztmp); - OPENSSL_free(Z); - BN_free(bnz); - if (rv) - BIO_puts(out, " ok\n"); - else { - fprintf(stderr, "Error in ECDH routines\n"); - ERR_print_errors_fp(stderr); - } - return rv; -} - #include "ecdhtest_cavs.h" /* @@ -544,10 +212,8 @@ static int ecdh_cavs_kat(BIO *out, const ecdh_cavs_kat_t *kat) int main(int argc, char *argv[]) { - BN_CTX *ctx = NULL; - int nid, ret = 1; - EC_builtin_curve *curves = NULL; - size_t crv_len = 0, n = 0; + int ret = 1; + size_t n = 0; BIO *out; CRYPTO_set_mem_debug(1); @@ -560,34 +226,9 @@ int main(int argc, char *argv[]) EXIT(1); BIO_set_fp(out, stdout, BIO_NOCLOSE | BIO_FP_TEXT); - if ((ctx = BN_CTX_new()) == NULL) - goto err; - - /* get a list of all internal curves */ - crv_len = EC_get_builtin_curves(NULL, 0); - curves = OPENSSL_malloc(sizeof(*curves) * crv_len); - if (curves == NULL) goto err; + /* NAMED CURVES TESTS: moved to evptests.txt */ - if (!EC_get_builtin_curves(curves, crv_len)) goto err; - - /* NAMED CURVES TESTS */ - for (n = 0; n < crv_len; n++) { - nid = curves[n].nid; - /* - * Skipped for X25519 because affine coordinate operations are not - * supported for this curve. - * Higher level ECDH tests are performed in evptests.txt instead. - */ - if (nid == NID_X25519) - continue; - if (!test_ecdh_curve(nid, ctx, out)) goto err; - } - - /* KATs */ - for (n = 0; n < (sizeof(ecdh_kats)/sizeof(ecdh_kat_t)); n++) { - if (!ecdh_kat(out, &ecdh_kats[n])) - goto err; - } + /* KATs: moved to evptests.txt */ /* NIST SP800-56A co-factor ECDH KATs */ for (n = 0; n < (sizeof(ecdh_cavs_kats)/sizeof(ecdh_cavs_kat_t)); n++) { @@ -599,8 +240,6 @@ int main(int argc, char *argv[]) err: ERR_print_errors_fp(stderr); - OPENSSL_free(curves); - BN_CTX_free(ctx); BIO_free(out); #ifndef OPENSSL_NO_CRYPTO_MDEBUG diff --git a/test/evptests.txt b/test/evptests.txt index a305b02..cd78176 100644 --- a/test/evptests.txt +++ b/test/evptests.txt @@ -5251,3 +5251,3469 @@ Ctrl = rsa_padding_mode:oaep Ctrl = rsa_mgf1_md:sha1 Input=2d207a73432a8fb4c03051b3f73b28a61764098dfa34c47a20995f8115aa6816679b557e82dbee584908c6e69782d7deb34dbd65af063d57fca76a5fd069492fd6068d9984d209350565a62e5c77f23038c12cb10c6634709b547c46f6b4a709bd85ca122d74465ef97762c29763e06dbc7a9e738c78bfca0102dc5e79d65b973f28240caab2e161a78b57d262457ed8195d53e3c7ae9da021883c6db7c24afdd2322eac972ad3c354c5fcef1e146c3a0290fb67adf007066e00428d2cec18ce58f9328698defef4b2eb5ec76918fde1c198cbb38b7afc67626a9aefec4322bfd90d2563481c9a221f78c8272c82d1b62ab914e1c69f6af6ef30ca5260db4a46 Output=eaf1a73a1b0c4609537de69cd9228bbcfb9a8ca8c6c3efaf056fe4a7f4634ed00b7c39ec6922d7b8ea2c04ebac + +## ECDH Tests: test with randomly generated keys for all the listed curves + + +# TEST CURVE secp112r1 + +PrivateKey=ALICE_secp112r1 +-----BEGIN EC PRIVATE KEY----- +MD4CAQEEDqyoqnf0BYsKW6zaFrmuoAcGBSuBBAAGoSADHgAEng1OA5HXFACvczp4 +zjpapdbbMDoWexQwoUXBzA== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_secp112r1_PUB +-----BEGIN PUBLIC KEY----- +MDIwEAYHKoZIzj0CAQYFK4EEAAYDHgAEng1OA5HXFACvczp4zjpapdbbMDoWexQw +oUXBzA== +-----END PUBLIC KEY----- + +PrivateKey=BOB_secp112r1 +-----BEGIN EC PRIVATE KEY----- +MD4CAQEEDmkhtf6ESrj2YU+NSXj/oAcGBSuBBAAGoSADHgAEGw81kebWlx3DXTiJ +vAjJwJ76vm+h5F9BRlFndw== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_secp112r1_PUB +-----BEGIN PUBLIC KEY----- +MDIwEAYHKoZIzj0CAQYFK4EEAAYDHgAEGw81kebWlx3DXTiJvAjJwJ76vm+h5F9B +RlFndw== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_secp112r1 +PeerKey=BOB_secp112r1_PUB +SharedSecret=a6cefb5aa7a352afe818749eb401 + +# ECDH Bob with Alice peer +Derive=BOB_secp112r1 +PeerKey=ALICE_secp112r1_PUB +SharedSecret=a6cefb5aa7a352afe818749eb401 + +# TEST CURVE secp112r2 + +PrivateKey=ALICE_secp112r2 +-----BEGIN EC PRIVATE KEY----- +MD4CAQEEDiDPNuUp8TpnChRbQVCZoAcGBSuBBAAHoSADHgAEkngvtWjnQ1nlUZni +c2TEU1yMlDAMhBvX/0iQsQ== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_secp112r2_PUB +-----BEGIN PUBLIC KEY----- +MDIwEAYHKoZIzj0CAQYFK4EEAAcDHgAEkngvtWjnQ1nlUZnic2TEU1yMlDAMhBvX +/0iQsQ== +-----END PUBLIC KEY----- + +PrivateKey=BOB_secp112r2 +-----BEGIN EC PRIVATE KEY----- +MD4CAQEEDgP2gYaP47y+NnPc5k1qoAcGBSuBBAAHoSADHgAE1k6/mBTO9VuAAelO +C7eFSFNC0HwtqZMQh9pFYQ== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_secp112r2_PUB +-----BEGIN PUBLIC KEY----- +MDIwEAYHKoZIzj0CAQYFK4EEAAcDHgAE1k6/mBTO9VuAAelOC7eFSFNC0HwtqZMQ +h9pFYQ== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_secp112r2 +PeerKey=BOB_secp112r2_PUB +SharedSecret=6bed2c55e233e9214d5898c4c12a + +# ECDH Bob with Alice peer +Derive=BOB_secp112r2 +PeerKey=ALICE_secp112r2_PUB +SharedSecret=6bed2c55e233e9214d5898c4c12a + +# TEST CURVE secp128r1 + +PrivateKey=ALICE_secp128r1 +-----BEGIN EC PRIVATE KEY----- +MEQCAQEEEI/Vz6XF9FP4xlZny4YJhiWgBwYFK4EEAByhJAMiAAQfafSJynzuKe/u +RRisQWOlm4cngOoCuEdL5l+nZdc7UA== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_secp128r1_PUB +-----BEGIN PUBLIC KEY----- +MDYwEAYHKoZIzj0CAQYFK4EEABwDIgAEH2n0icp87inv7kUYrEFjpZuHJ4DqArhH +S+Zfp2XXO1A= +-----END PUBLIC KEY----- + +PrivateKey=BOB_secp128r1 +-----BEGIN EC PRIVATE KEY----- +MEQCAQEEEIZsR3ceHCvvpdtB6SEisNOgBwYFK4EEAByhJAMiAAQ0qNLQc3H+AQph +A01pv2/zOVb8PjNKO/c3LcSnQZViaw== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_secp128r1_PUB +-----BEGIN PUBLIC KEY----- +MDYwEAYHKoZIzj0CAQYFK4EEABwDIgAENKjS0HNx/gEKYQNNab9v8zlW/D4zSjv3 +Ny3Ep0GVYms= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_secp128r1 +PeerKey=BOB_secp128r1_PUB +SharedSecret=91ded46ac404afdbd708fdcc1cac6842 + +# ECDH Bob with Alice peer +Derive=BOB_secp128r1 +PeerKey=ALICE_secp128r1_PUB +SharedSecret=91ded46ac404afdbd708fdcc1cac6842 + +# TEST CURVE secp128r2 + +PrivateKey=ALICE_secp128r2 +-----BEGIN EC PRIVATE KEY----- +MEQCAQEEECBEpKM+xnvosMYgDaK3lIKgBwYFK4EEAB2hJAMiAAQFV2NxSlH5votE ++bpHx8AP/qQHFXQqXf3f1afT6dSl/w== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_secp128r2_PUB +-----BEGIN PUBLIC KEY----- +MDYwEAYHKoZIzj0CAQYFK4EEAB0DIgAEBVdjcUpR+b6LRPm6R8fAD/6kBxV0Kl39 +39Wn0+nUpf8= +-----END PUBLIC KEY----- + +PrivateKey=BOB_secp128r2 +-----BEGIN EC PRIVATE KEY----- +MEQCAQEEEAKnTSPDkPuhu8OYmnvAO4CgBwYFK4EEAB2hJAMiAAQE7cFtWtzlK+G8 +35+ZZKG7a1YgVBqnnKzlEcwIsuXT3w== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_secp128r2_PUB +-----BEGIN PUBLIC KEY----- +MDYwEAYHKoZIzj0CAQYFK4EEAB0DIgAEBO3BbVrc5SvhvN+fmWShu2tWIFQap5ys +5RHMCLLl098= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_secp128r2 +PeerKey=BOB_secp128r2_PUB +SharedSecret=dc32faa978008a694672076b756a1e4b + +# ECDH Bob with Alice peer +Derive=BOB_secp128r2 +PeerKey=ALICE_secp128r2_PUB +SharedSecret=dc32faa978008a694672076b756a1e4b + +# TEST CURVE secp160k1 + +PrivateKey=ALICE_secp160k1 +-----BEGIN EC PRIVATE KEY----- +MFECAQEEFQC503dg5c3S67QIvZMZl09h41T/vaAHBgUrgQQACaEsAyoABHcO7R0r +by1LJbFhLP8SzZaqvgL5s18nW6IrgncEVLlR1zjyezHF+OM= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_secp160k1_PUB +-----BEGIN PUBLIC KEY----- +MD4wEAYHKoZIzj0CAQYFK4EEAAkDKgAEdw7tHStvLUslsWEs/xLNlqq+AvmzXydb +oiuCdwRUuVHXOPJ7McX44w== +-----END PUBLIC KEY----- + +PrivateKey=BOB_secp160k1 +-----BEGIN EC PRIVATE KEY----- +MFECAQEEFQDl82IIVUY8zVoe7BdS+6HGhjbJT6AHBgUrgQQACaEsAyoABAeUzqi2 +Zqm3T/Sxz7ltw+hhPpx/IBG/hVQ46jojZ4EZcsibzXbWuJw= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_secp160k1_PUB +-----BEGIN PUBLIC KEY----- +MD4wEAYHKoZIzj0CAQYFK4EEAAkDKgAEB5TOqLZmqbdP9LHPuW3D6GE+nH8gEb+F +VDjqOiNngRlyyJvNdta4nA== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_secp160k1 +PeerKey=BOB_secp160k1_PUB +SharedSecret=5457d367346cc3e82031784f95ebcd856de0c735 + +# ECDH Bob with Alice peer +Derive=BOB_secp160k1 +PeerKey=ALICE_secp160k1_PUB +SharedSecret=5457d367346cc3e82031784f95ebcd856de0c735 + +# TEST CURVE secp160r1 + +PrivateKey=ALICE_secp160r1 +-----BEGIN EC PRIVATE KEY----- +MFECAQEEFQDQoO1qIVRZ3w0bSU71Mu7OMtZcl6AHBgUrgQQACKEsAyoABIdA3UMY +Fe13IXf4GN8h9taDjTd1SpdshfNmhy0PI49NBoZVuWZLBcI= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_secp160r1_PUB +-----BEGIN PUBLIC KEY----- +MD4wEAYHKoZIzj0CAQYFK4EEAAgDKgAEh0DdQxgV7Xchd/gY3yH21oONN3VKl2yF +82aHLQ8jj00GhlW5ZksFwg== +-----END PUBLIC KEY----- + +PrivateKey=BOB_secp160r1 +-----BEGIN EC PRIVATE KEY----- +MFECAQEEFQCwEjC/HpkAGKeGyL5sZqIK962K5aAHBgUrgQQACKEsAyoABAnb5GGk +Z52RRhdSI9n+mUdcUHLpHdfMxQYgqJcUZIGnAXyEZE2pQPI= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_secp160r1_PUB +-----BEGIN PUBLIC KEY----- +MD4wEAYHKoZIzj0CAQYFK4EEAAgDKgAECdvkYaRnnZFGF1Ij2f6ZR1xQcukd18zF +BiColxRkgacBfIRkTalA8g== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_secp160r1 +PeerKey=BOB_secp160r1_PUB +SharedSecret=87856536b6a295ea94d3e483d69c6212d5c7afcf + +# ECDH Bob with Alice peer +Derive=BOB_secp160r1 +PeerKey=ALICE_secp160r1_PUB +SharedSecret=87856536b6a295ea94d3e483d69c6212d5c7afcf + +# TEST CURVE secp160r2 + +PrivateKey=ALICE_secp160r2 +-----BEGIN EC PRIVATE KEY----- +MFECAQEEFQCGYs4AkY25KhlQI3h/Q6ctnqtFJKAHBgUrgQQAHqEsAyoABA9I2+El +CiEwR+KNer4mWrtr2XOixB8++4jI6DqyHLNRVLjdH7suCvk= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_secp160r2_PUB +-----BEGIN PUBLIC KEY----- +MD4wEAYHKoZIzj0CAQYFK4EEAB4DKgAED0jb4SUKITBH4o16viZau2vZc6LEHz77 +iMjoOrIcs1FUuN0fuy4K+Q== +-----END PUBLIC KEY----- + +PrivateKey=BOB_secp160r2 +-----BEGIN EC PRIVATE KEY----- +MFECAQEEFQDXSaPNHYPLQIuab8xMAdNvkIF6c6AHBgUrgQQAHqEsAyoABGrNgBxK +KPMCja/OYy4ry1ryyX9uC64KlHAUP3cAI/rhPOAjet4WGxc= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_secp160r2_PUB +-----BEGIN PUBLIC KEY----- +MD4wEAYHKoZIzj0CAQYFK4EEAB4DKgAEas2AHEoo8wKNr85jLivLWvLJf24LrgqU +cBQ/dwAj+uE84CN63hYbFw== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_secp160r2 +PeerKey=BOB_secp160r2_PUB +SharedSecret=5481e282c47cbd37c84873847c4fc2f31fc15a1a + +# ECDH Bob with Alice peer +Derive=BOB_secp160r2 +PeerKey=ALICE_secp160r2_PUB +SharedSecret=5481e282c47cbd37c84873847c4fc2f31fc15a1a + +# TEST CURVE secp192k1 + +PrivateKey=ALICE_secp192k1 +-----BEGIN EC PRIVATE KEY----- +MFwCAQEEGLMXcp4cyxpX8o5H+i0KZ0tBPaoY2rceFaAHBgUrgQQAH6E0AzIABM/4 +v1IaXcrrCZ6+QvAmeQw0enQjlF9e6VJ8e4dk+ngIauGLp4o1AuSlnY5Bo8gTEA== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_secp192k1_PUB +-----BEGIN PUBLIC KEY----- +MEYwEAYHKoZIzj0CAQYFK4EEAB8DMgAEz/i/UhpdyusJnr5C8CZ5DDR6dCOUX17p +Unx7h2T6eAhq4YunijUC5KWdjkGjyBMQ +-----END PUBLIC KEY----- + +PrivateKey=BOB_secp192k1 +-----BEGIN EC PRIVATE KEY----- +MFwCAQEEGHwFc9UZApgLDS/sNjfBlVpzKHJSMhtTKaAHBgUrgQQAH6E0AzIABOAj +uHDYtKPq43fIvme8c46QyI+1qUqv4EawVpzf1Fianriav7DrpsMhY3dWWU7otg== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_secp192k1_PUB +-----BEGIN PUBLIC KEY----- +MEYwEAYHKoZIzj0CAQYFK4EEAB8DMgAE4CO4cNi0o+rjd8i+Z7xzjpDIj7WpSq/g +RrBWnN/UWJqeuJq/sOumwyFjd1ZZTui2 +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_secp192k1 +PeerKey=BOB_secp192k1_PUB +SharedSecret=6a4daca0412284172e8fcaafa0d9df76257d899752bf0f23 + +# ECDH Bob with Alice peer +Derive=BOB_secp192k1 +PeerKey=ALICE_secp192k1_PUB +SharedSecret=6a4daca0412284172e8fcaafa0d9df76257d899752bf0f23 + +# TEST CURVE secp224k1 + +PrivateKey=ALICE_secp224k1 +-----BEGIN EC PRIVATE KEY----- +MGkCAQEEHQCFcoYkWo4jg/U8sVHczoyR6lP/YO13bsjUDDPHoAcGBSuBBAAgoTwD +OgAE9U3/VvpUdurtTqlZo6tR6onm9KBYvj27+64PjwPgVF/ugV2LE31VYivGvQ9E +HJ4RiaUfDgw4RAo= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_secp224k1_PUB +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACADOgAE9U3/VvpUdurtTqlZo6tR6onm9KBYvj27 ++64PjwPgVF/ugV2LE31VYivGvQ9EHJ4RiaUfDgw4RAo= +-----END PUBLIC KEY----- + +PrivateKey=BOB_secp224k1 +-----BEGIN EC PRIVATE KEY----- +MGkCAQEEHQA6MRdijPxhxaiRJ/hTmBcduMN8gs9096OUTRP8oAcGBSuBBAAgoTwD +OgAEZcBD4Ce1fs6fhwrA/5/grNkZolnCMGreMKPKayv0DdzxUKhFdcGD5U+gqDt8 +OQwiAjyo+asL3lA= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_secp224k1_PUB +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACADOgAEZcBD4Ce1fs6fhwrA/5/grNkZolnCMGre +MKPKayv0DdzxUKhFdcGD5U+gqDt8OQwiAjyo+asL3lA= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_secp224k1 +PeerKey=BOB_secp224k1_PUB +SharedSecret=80b65e65fe29c779213dd31189d371ff57b0b2bf08c6458ed142399a + +# ECDH Bob with Alice peer +Derive=BOB_secp224k1 +PeerKey=ALICE_secp224k1_PUB +SharedSecret=80b65e65fe29c779213dd31189d371ff57b0b2bf08c6458ed142399a + +# TEST CURVE secp224r1 + +PrivateKey=ALICE_secp224r1 +-----BEGIN EC PRIVATE KEY----- +MGgCAQEEHEsqRcUldioZSVOyaCOV6yKTCp6Ot6SuRJNt6HKgBwYFK4EEACGhPAM6 +AARRwSHQaDL+sP42P0lCjPMj6rM+2JTtvYPYe10JriF9tU9eeBxEfYHbE3xb51we +gjGvE7ZQVfLjGg== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_secp224r1_PUB +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEUcEh0Ggy/rD+Nj9JQozzI+qzPtiU7b2D +2HtdCa4hfbVPXngcRH2B2xN8W+dcHoIxrxO2UFXy4xo= +-----END PUBLIC KEY----- + +PrivateKey=BOB_secp224r1 +-----BEGIN EC PRIVATE KEY----- +MGgCAQEEHM4cYZRHd9liDcZJpQ3qnGg1C0CU7MzdRyUSEzOgBwYFK4EEACGhPAM6 +AAR3AWSUr9igNFTpsztfa6U0vCrH1NQRMwVQzpVX0MHhhy8DO/qlCBXBgRTshqGZ +IqlfX1yFs+3YjQ== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_secp224r1_PUB +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEdwFklK/YoDRU6bM7X2ulNLwqx9TUETMF +UM6VV9DB4YcvAzv6pQgVwYEU7IahmSKpX19chbPt2I0= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_secp224r1 +PeerKey=BOB_secp224r1_PUB +SharedSecret=34ea06d16d82f0d1725de47f3639ac0c23db7d7ed68f01488539a2a5 + +# ECDH Bob with Alice peer +Derive=BOB_secp224r1 +PeerKey=ALICE_secp224r1_PUB +SharedSecret=34ea06d16d82f0d1725de47f3639ac0c23db7d7ed68f01488539a2a5 + +# TEST CURVE secp256k1 + +PrivateKey=ALICE_secp256k1 +-----BEGIN EC PRIVATE KEY----- +MHQCAQEEIBwkc8tCHBMegngOqIDTSkjn7k5R8uHxPyzcZADVEuJPoAcGBSuBBAAK +oUQDQgAEgwZsCpJV+DnG2UiSV/ZsZtVq+0z0y6W8qcSnCkZtFyjcVZa2VPFkApeu +hrV9gw8l/tPl4gt4W2kVnGLYOz+ljg== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_secp256k1_PUB +-----BEGIN PUBLIC KEY----- +MFYwEAYHKoZIzj0CAQYFK4EEAAoDQgAEgwZsCpJV+DnG2UiSV/ZsZtVq+0z0y6W8 +qcSnCkZtFyjcVZa2VPFkApeuhrV9gw8l/tPl4gt4W2kVnGLYOz+ljg== +-----END PUBLIC KEY----- + +PrivateKey=BOB_secp256k1 +-----BEGIN EC PRIVATE KEY----- +MHQCAQEEIAoQpBb1rTnK1y5l1RqpEdIHZ7csrYxsxCrnubfiC9pYoAcGBSuBBAAK +oUQDQgAEBUKCHJHsvlcod0MCVlFHylzW241nveMmRAFhryNgX6rVqooGReVUm+Wi +F7Uz0ZsIjdHKd9HHe+2BOWfnuWyR1A== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_secp256k1_PUB +-----BEGIN PUBLIC KEY----- +MFYwEAYHKoZIzj0CAQYFK4EEAAoDQgAEBUKCHJHsvlcod0MCVlFHylzW241nveMm +RAFhryNgX6rVqooGReVUm+WiF7Uz0ZsIjdHKd9HHe+2BOWfnuWyR1A== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_secp256k1 +PeerKey=BOB_secp256k1_PUB +SharedSecret=af43b52790082fd87afb1d14b883c12d12bb9e554080d1f8e527920676e31f3e + +# ECDH Bob with Alice peer +Derive=BOB_secp256k1 +PeerKey=ALICE_secp256k1_PUB +SharedSecret=af43b52790082fd87afb1d14b883c12d12bb9e554080d1f8e527920676e31f3e + +# TEST CURVE secp384r1 + +PrivateKey=ALICE_secp384r1 +-----BEGIN EC PRIVATE KEY----- +MIGkAgEBBDCxE7Q4m1dsK7M3OtxocgY/ejX9JOKKdAtSnRiU4bnK3eFmALkMN7XI +veQnWLB1PEKgBwYFK4EEACKhZANiAAQaUsvUFr/uISpAmYqYZIme4VassCtb0tNG +U97s3qt4ozcogZ4z+fIzXZ4YXqfGoEa57+uQDgqr+jNOTji7Gxopt6AqZ9EvwuVa +CuunUi0pcx6cc8IuUfrwMwSFovV/7sM= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_secp384r1_PUB +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEGlLL1Ba/7iEqQJmKmGSJnuFWrLArW9LT +RlPe7N6reKM3KIGeM/nyM12eGF6nxqBGue/rkA4Kq/ozTk44uxsaKbegKmfRL8Ll +Wgrrp1ItKXMenHPCLlH68DMEhaL1f+7D +-----END PUBLIC KEY----- + +PrivateKey=BOB_secp384r1 +-----BEGIN EC PRIVATE KEY----- +MIGkAgEBBDBRiGXRsb5sUq0b3/dgZ+pA9kbrSivBMCUCXVwxno1d/30hI/Yy0Z5P +WwbBgwTFprWgBwYFK4EEACKhZANiAASp1FeUOBJFmzQCNbGiOz8He0kF+KIf24UG +YVO5MC7u5rV9hpoYsbcgmwxALskPN18os2ygK1Pnf/h+WALIsG2RknSTbiyvBYko +IhJV9cflvEDpMeaWSLF7qJ5YjEIf9PM= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_secp384r1_PUB +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEqdRXlDgSRZs0AjWxojs/B3tJBfiiH9uF +BmFTuTAu7ua1fYaaGLG3IJsMQC7JDzdfKLNsoCtT53/4flgCyLBtkZJ0k24srwWJ +KCISVfXH5bxA6THmlkixe6ieWIxCH/Tz +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_secp384r1 +PeerKey=BOB_secp384r1_PUB +SharedSecret=2006ed49acbb991b8fbf8a15c3f263542496eaefe1e2952591b72fb929463eac7a403a5419cebbfb73734918eaed59fd + +# ECDH Bob with Alice peer +Derive=BOB_secp384r1 +PeerKey=ALICE_secp384r1_PUB +SharedSecret=2006ed49acbb991b8fbf8a15c3f263542496eaefe1e2952591b72fb929463eac7a403a5419cebbfb73734918eaed59fd + +# TEST CURVE secp521r1 + +PrivateKey=ALICE_secp521r1 +-----BEGIN EC PRIVATE KEY----- +MIHcAgEBBEIAFBIz3FLAuX8VCWzMwu1f/tm8pf1QqnsdLqaIWCQAJa2W5ldpJTYf +kj1gGxM44AD3qHnkXISvNLwwuxI1hr2+pOGgBwYFK4EEACOhgYkDgYYABACWlOOF +Yk/p3AS2LxEQWBuMm6uIjo3XArjh1QrsLcUc5hhi82CIz6kKwKjCnYRDHq4iv1x6 +3rVEzGGhQOM1g+cRVwHSpfbBpaxK7bMLkVFOOavvOdcdyRHaHsvxw2pREmdS/Gwt +fgT8odQrG06KMIwVeL+H08fGJSbPX0Zock0DOPCpaw== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_secp521r1_PUB +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAlpTjhWJP6dwEti8REFgbjJuriI6N +1wK44dUK7C3FHOYYYvNgiM+pCsCowp2EQx6uIr9cet61RMxhoUDjNYPnEVcB0qX2 +waWsSu2zC5FRTjmr7znXHckR2h7L8cNqURJnUvxsLX4E/KHUKxtOijCMFXi/h9PH +xiUmz19GaHJNAzjwqWs= +-----END PUBLIC KEY----- + +PrivateKey=BOB_secp521r1 +-----BEGIN EC PRIVATE KEY----- +MIHcAgEBBEIA9C/sMWveRlHPr9P5cc3U+1L2/zB0VtHewKSQRWZ67SmS4+m7uXTq +UVSLRHiQEgQid0cg77gSxXPlmV+zy0f3zd+gBwYFK4EEACOhgYkDgYYABAE18N3S +wDGtea3IOqUdh3j0JtnMeP41i/agEBlxK8/iEBXcQ61mkIrQIKcabRhoylEugXHi +yNnqNQOD4DUa0bTKzAHtJ4UqqbEVno6byRmcUQwbmvG89eS8GLEmk5X/O2atHU4y +IGTuTRQWn/BTJUCS+OgJz4FZdadscc5Z640EZqSDiw== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_secp521r1_PUB +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBNfDd0sAxrXmtyDqlHYd49CbZzHj+ +NYv2oBAZcSvP4hAV3EOtZpCK0CCnGm0YaMpRLoFx4sjZ6jUDg+A1GtG0yswB7SeF +KqmxFZ6Om8kZnFEMG5rxvPXkvBixJpOV/ztmrR1OMiBk7k0UFp/wUyVAkvjoCc+B +WXWnbHHOWeuNBGakg4s= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_secp521r1 +PeerKey=BOB_secp521r1_PUB +SharedSecret=018c8f33e544a0fa8854dcd96bdba75b7687d1c42b2ff1bf0a06d49c424fee96d8a7f3af3119dcbfabc1c147477c50f7c72971956f9bb17ddec6d02b2187f06cf4be + +# ECDH Bob with Alice peer +Derive=BOB_secp521r1 +PeerKey=ALICE_secp521r1_PUB +SharedSecret=018c8f33e544a0fa8854dcd96bdba75b7687d1c42b2ff1bf0a06d49c424fee96d8a7f3af3119dcbfabc1c147477c50f7c72971956f9bb17ddec6d02b2187f06cf4be + +# TEST CURVE prime192v1 + +PrivateKey=ALICE_prime192v1 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGPF9e9IU2oPZTMVU3UttCs+XOint3FCr96AKBggqhkjOPQMBAaE0AzIA +BOJuka5jMKORPW1YtgSiCkrPvhaqG9tC1k+QJhAKKfVyZm41b4FnSPJUSkaWmdk8 +yA== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_prime192v1_PUB +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE4m6RrmMwo5E9bVi2BKIKSs++Fqob +20LWT5AmEAop9XJmbjVvgWdI8lRKRpaZ2TzI +-----END PUBLIC KEY----- + +PrivateKey=BOB_prime192v1 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGF7Bqpc1mVjKqea4QQRj+hRd7f+OnOGbIaAKBggqhkjOPQMBAaE0AzIA +BKSnA0kQ//UW65YoIMNSbbqLKquz7MrBrJmdoXvtgLqoK2CJrvI1xKX22VYeHeBC +DA== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_prime192v1_PUB +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEpKcDSRD/9Rbrliggw1Jtuosqq7Ps +ysGsmZ2he+2AuqgrYImu8jXEpfbZVh4d4EIM +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_prime192v1 +PeerKey=BOB_prime192v1_PUB +SharedSecret=be2a779b587f8f5d7c9d8f006e0a6d0e996c9c63c255f861 + +# ECDH Bob with Alice peer +Derive=BOB_prime192v1 +PeerKey=ALICE_prime192v1_PUB +SharedSecret=be2a779b587f8f5d7c9d8f006e0a6d0e996c9c63c255f861 + +# TEST CURVE prime192v2 + +PrivateKey=ALICE_prime192v2 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGC0i4qqlFzusRi4bHVp0PFy+yjQ0BnD59aAKBggqhkjOPQMBAqE0AzIA +BMxIfAk+rvrVVrClFsosHe64NKeDhZ4U+OG+5svqDxXxSoVopEQPk9QhDSVhK1UJ +qg== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_prime192v2_PUB +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQIDMgAEzEh8CT6u+tVWsKUWyiwd7rg0p4OF +nhT44b7my+oPFfFKhWikRA+T1CENJWErVQmq +-----END PUBLIC KEY----- + +PrivateKey=BOB_prime192v2 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGCBOOpYLX+Ieu8pH3+7WDGkva1YmSQAxi6AKBggqhkjOPQMBAqE0AzIA +BJricb7As9MfF+SqJMgjk8EsApeZdR/l0y2mYClyOuNeOfAkgkRCvzQwr36DWtqo +3w== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_prime192v2_PUB +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQIDMgAEmuJxvsCz0x8X5KokyCOTwSwCl5l1 +H+XTLaZgKXI641458CSCREK/NDCvfoNa2qjf +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_prime192v2 +PeerKey=BOB_prime192v2_PUB +SharedSecret=9b37033a48af7fe1825c062625f8b57d4b3ac48c12bec69c + +# ECDH Bob with Alice peer +Derive=BOB_prime192v2 +PeerKey=ALICE_prime192v2_PUB +SharedSecret=9b37033a48af7fe1825c062625f8b57d4b3ac48c12bec69c + +# TEST CURVE prime192v3 + +PrivateKey=ALICE_prime192v3 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGDSIN1yCKx7X+/aTqOxSSArBc+rH+4klN6AKBggqhkjOPQMBA6E0AzIA +BDr+LSlI0eTzbhc7oy/SKtB9K/bLMZDL4PBaj+SVlyiQ8NxcoR1TxmacAAEfuPpR +Xw== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_prime192v3_PUB +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQMDMgAEOv4tKUjR5PNuFzujL9Iq0H0r9ssx +kMvg8FqP5JWXKJDw3FyhHVPGZpwAAR+4+lFf +-----END PUBLIC KEY----- + +PrivateKey=BOB_prime192v3 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGJ5bWG6rBVTd6/uqClMsWNgQxE8404BxoqAKBggqhkjOPQMBA6E0AzIA +BJdpOMEhBfrzoFkkCJ1f6EW68PLFs3W8FC+njQ5WXQsIbiGhn7kxwu08BMv6iwq9 +fw== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_prime192v3_PUB +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQMDMgAEl2k4wSEF+vOgWSQInV/oRbrw8sWz +dbwUL6eNDlZdCwhuIaGfuTHC7TwEy/qLCr1/ +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_prime192v3 +PeerKey=BOB_prime192v3_PUB +SharedSecret=7133f1d99b0e03ed9c4d78d3be40598cf419cd588283ac29 + +# ECDH Bob with Alice peer +Derive=BOB_prime192v3 +PeerKey=ALICE_prime192v3_PUB +SharedSecret=7133f1d99b0e03ed9c4d78d3be40598cf419cd588283ac29 + +# TEST CURVE prime239v1 + +PrivateKey=ALICE_prime239v1 +-----BEGIN EC PRIVATE KEY----- +MHECAQEEHkZomV2qq97tdYYhitXB++VP6ynNfvGDKsXF4QAkZKAKBggqhkjOPQMB +BKFAAz4ABHyCaVYIAl1ETh4F+IeYeuv9D4K/2jLTKhMR0D+88VmM393GAD+Ff7fT +gk+fNlozC5wpnZRZ2FDw+dHclA== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_prime239v1_PUB +-----BEGIN PUBLIC KEY----- +MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQQDPgAEfIJpVggCXUROHgX4h5h66/0Pgr/a +MtMqExHQP7zxWYzf3cYAP4V/t9OCT582WjMLnCmdlFnYUPD50dyU +-----END PUBLIC KEY----- + +PrivateKey=BOB_prime239v1 +-----BEGIN EC PRIVATE KEY----- +MHECAQEEHgGxkUaAYKh1VARaLeZvWLZvEVPiEpAN91YEKxxjP6AKBggqhkjOPQMB +BKFAAz4ABHUYD7C/zIt7nCXGIm7xSUMQw8i6oFB94jJNuukQBxaqIqIhk+9kzonQ +YYvla1J+jTiMp2vH6MMNjOOb0Q== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_prime239v1_PUB +-----BEGIN PUBLIC KEY----- +MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQQDPgAEdRgPsL/Mi3ucJcYibvFJQxDDyLqg +UH3iMk266RAHFqoioiGT72TOidBhi+VrUn6NOIyna8foww2M45vR +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_prime239v1 +PeerKey=BOB_prime239v1_PUB +SharedSecret=2ef92070f7a5fa14c8a67a8aa3080b4c4a597eafaa81d3f698599ac0be1e + +# ECDH Bob with Alice peer +Derive=BOB_prime239v1 +PeerKey=ALICE_prime239v1_PUB +SharedSecret=2ef92070f7a5fa14c8a67a8aa3080b4c4a597eafaa81d3f698599ac0be1e + +# TEST CURVE prime239v2 + +PrivateKey=ALICE_prime239v2 +-----BEGIN EC PRIVATE KEY----- +MHECAQEEHnpqukuabhxfeGVv1ugTEYpvhxRTNM8VWUKVhvm39qAKBggqhkjOPQMB +BaFAAz4ABC7pFKHQkLJsMxlUd5SxBikOqrhnepA1zQ443DKw2mwbVig7rlK4IwRr +COzUWwkNGuTVk6PhJ1ntC122DQ== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_prime239v2_PUB +-----BEGIN PUBLIC KEY----- +MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQUDPgAELukUodCQsmwzGVR3lLEGKQ6quGd6 +kDXNDjjcMrDabBtWKDuuUrgjBGsI7NRbCQ0a5NWTo+EnWe0LXbYN +-----END PUBLIC KEY----- + +PrivateKey=BOB_prime239v2 +-----BEGIN EC PRIVATE KEY----- +MHECAQEEHgBGgsO7pRfBmXJm42g5nK8PBnsfoV9Kzb8M6Au/uqAKBggqhkjOPQMB +BaFAAz4ABCodBJmFKY+l27hBsTAWj5hAk/C/vooVFprOMWrtEVGIo+B4EtYI0jA3 +8r7wgVMtdESJMPoKMVXVIX1trg== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_prime239v2_PUB +-----BEGIN PUBLIC KEY----- +MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQUDPgAEKh0EmYUpj6XbuEGxMBaPmECT8L++ +ihUWms4xau0RUYij4HgS1gjSMDfyvvCBUy10RIkw+goxVdUhfW2u +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_prime239v2 +PeerKey=BOB_prime239v2_PUB +SharedSecret=5bdab282dc371ee88ade318a6aad2b329ec3ea957e0df18b7a691c1bf703 + +# ECDH Bob with Alice peer +Derive=BOB_prime239v2 +PeerKey=ALICE_prime239v2_PUB +SharedSecret=5bdab282dc371ee88ade318a6aad2b329ec3ea957e0df18b7a691c1bf703 + +# TEST CURVE prime239v3 + +PrivateKey=ALICE_prime239v3 +-----BEGIN EC PRIVATE KEY----- +MHECAQEEHhpcEjwGH5oj/a9pwEg+dlaismaRJ1PiZsp5X9gyO6AKBggqhkjOPQMB +BqFAAz4ABBZSAeGJfuSdruCS2L/M/orcH/l5zi/wQ6jSt7kaGDyh2HWFiZIF8ZEN +UA2cDaaQEEXMUoEypyelfHK26Q== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_prime239v3_PUB +-----BEGIN PUBLIC KEY----- +MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQYDPgAEFlIB4Yl+5J2u4JLYv8z+itwf+XnO +L/BDqNK3uRoYPKHYdYWJkgXxkQ1QDZwNppAQRcxSgTKnJ6V8crbp +-----END PUBLIC KEY----- + +PrivateKey=BOB_prime239v3 +-----BEGIN EC PRIVATE KEY----- +MHECAQEEHlNSiHyQRryLa/P/4JFtc6D5L3qPZb1wZZ1Fef+aw6AKBggqhkjOPQMB +BqFAAz4ABHqXNNwBBIDpyPor6YxleMqb5/LEUGlQG90AHiBGA0C1ARTnW95BdjL5 +ZyyldzgnQdxkIDX2bRB23Z9G6g== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_prime239v3_PUB +-----BEGIN PUBLIC KEY----- +MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQYDPgAEepc03AEEgOnI+ivpjGV4ypvn8sRQ +aVAb3QAeIEYDQLUBFOdb3kF2MvlnLKV3OCdB3GQgNfZtEHbdn0bq +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_prime239v3 +PeerKey=BOB_prime239v3_PUB +SharedSecret=78e80ae760061178bd005e9e3634333971468bc6d3f82baee238c5ed32f9 + +# ECDH Bob with Alice peer +Derive=BOB_prime239v3 +PeerKey=ALICE_prime239v3_PUB +SharedSecret=78e80ae760061178bd005e9e3634333971468bc6d3f82baee238c5ed32f9 + +# TEST CURVE prime256v1 + +PrivateKey=ALICE_prime256v1 +-----BEGIN EC PRIVATE KEY----- +MHcCAQEEIJVDw5PIEPJTI9/Fe9IzwWQ30FMeaTTlUijjE6pYdODzoAoGCCqGSM49 +AwEHoUQDQgAEavO8PitKvW9ZsyRod9PZIzb2E0tNpmJBysQHsImcJrf+cPubssM/ +/tNd9EnQFm17RAo2h1CveGBB86dBvzwpeQ== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_prime256v1_PUB +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEavO8PitKvW9ZsyRod9PZIzb2E0tN +pmJBysQHsImcJrf+cPubssM//tNd9EnQFm17RAo2h1CveGBB86dBvzwpeQ== +-----END PUBLIC KEY----- + +PrivateKey=BOB_prime256v1 +-----BEGIN EC PRIVATE KEY----- +MHcCAQEEIDbC35/7EWX5vWXDO8VEYlB0+/sPCYJPUm8E1Q46S2GJoAoGCCqGSM49 +AwEHoUQDQgAEkZsijYFGwAxsZCDgFYfU+yF79mQ0+iOWDFusDrNu1TDgA9AIjS67 ++7FtU3asZFLRde/xhaS7xTrmXG3V+Kd4vw== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_prime256v1_PUB +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEkZsijYFGwAxsZCDgFYfU+yF79mQ0 ++iOWDFusDrNu1TDgA9AIjS67+7FtU3asZFLRde/xhaS7xTrmXG3V+Kd4vw== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_prime256v1 +PeerKey=BOB_prime256v1_PUB +SharedSecret=390021fbca00d959c1adaf7e9cedef0e65a582489eab9adbe739ef66bf82adb4 + +# ECDH Bob with Alice peer +Derive=BOB_prime256v1 +PeerKey=ALICE_prime256v1_PUB +SharedSecret=390021fbca00d959c1adaf7e9cedef0e65a582489eab9adbe739ef66bf82adb4 + +# TEST CURVE sect113r1 + +PrivateKey=ALICE_sect113r1 +-----BEGIN EC PRIVATE KEY----- +MEECAQEEDwBys/27wGVZviSeQZVmZKAHBgUrgQQABKEiAyAABAG+JN/rb7VXh60l +vYP0uQFp0AWZ2ZFL6tUjeylNiw== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect113r1_PUB +-----BEGIN PUBLIC KEY----- +MDQwEAYHKoZIzj0CAQYFK4EEAAQDIAAEAb4k3+tvtVeHrSW9g/S5AWnQBZnZkUvq +1SN7KU2L +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect113r1 +-----BEGIN EC PRIVATE KEY----- +MEECAQEEDwCaESrcD0p1spBTPUX8zKAHBgUrgQQABKEiAyAABAC5JEE3FeMiN7PC +sYXxWQHFZHr2DRQloEggCul02g== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect113r1_PUB +-----BEGIN PUBLIC KEY----- +MDQwEAYHKoZIzj0CAQYFK4EEAAQDIAAEALkkQTcV4yI3s8KxhfFZAcVkevYNFCWg +SCAK6XTa +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect113r1 +PeerKey=BOB_sect113r1_PUB +SharedSecret=015405437add26b8841c62a9016c85 + +# ECDH Bob with Alice peer +Derive=BOB_sect113r1 +PeerKey=ALICE_sect113r1_PUB +SharedSecret=015405437add26b8841c62a9016c85 + +# TEST CURVE sect113r2 + +PrivateKey=ALICE_sect113r2 +-----BEGIN EC PRIVATE KEY----- +MEECAQEEDwAGoVnpnsEoqO+vNeH31aAHBgUrgQQABaEiAyAABAFNBMcD25LFxnyS ++xJVRQFwtDibjlTXRXBUJD6gZA== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect113r2_PUB +-----BEGIN PUBLIC KEY----- +MDQwEAYHKoZIzj0CAQYFK4EEAAUDIAAEAU0ExwPbksXGfJL7ElVFAXC0OJuOVNdF +cFQkPqBk +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect113r2 +-----BEGIN EC PRIVATE KEY----- +MEECAQEEDwAE8eFnSQKnROhxAki6K6AHBgUrgQQABaEiAyAABAFKLu75SvvvqIbK +DQiPpQA3vQjM9VnEYrnM/GnrCg== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect113r2_PUB +-----BEGIN PUBLIC KEY----- +MDQwEAYHKoZIzj0CAQYFK4EEAAUDIAAEAUou7vlK+++ohsoNCI+lADe9CMz1WcRi +ucz8aesK +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect113r2 +PeerKey=BOB_sect113r2_PUB +SharedSecret=014231c5e9e28d451aa44a755407e1 + +# ECDH Bob with Alice peer +Derive=BOB_sect113r2 +PeerKey=ALICE_sect113r2_PUB +SharedSecret=014231c5e9e28d451aa44a755407e1 + +# TEST CURVE sect131r1 + +PrivateKey=ALICE_sect131r1 +-----BEGIN EC PRIVATE KEY----- +MEcCAQEEEQBQIUPAkstOEseIOXD9ByfxoAcGBSuBBAAWoSYDJAAEABT7LAX2I+/o +sOV0o4uEuBcFEjsSlmdtc9eFSaRBY+EcBA== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect131r1_PUB +-----BEGIN PUBLIC KEY----- +MDgwEAYHKoZIzj0CAQYFK4EEABYDJAAEABT7LAX2I+/osOV0o4uEuBcFEjsSlmdt +c9eFSaRBY+EcBA== +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect131r1 +-----BEGIN EC PRIVATE KEY----- +MEcCAQEEEQPHEzPGPEmZh9Jm9Ykqr5W8oAcGBSuBBAAWoSYDJAAEAUdDZr6H5ifk +3gu3QiglxVUGt/3GRk1LTHFuWH7TCd2r2w== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect131r1_PUB +-----BEGIN PUBLIC KEY----- +MDgwEAYHKoZIzj0CAQYFK4EEABYDJAAEAUdDZr6H5ifk3gu3QiglxVUGt/3GRk1L +THFuWH7TCd2r2w== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect131r1 +PeerKey=BOB_sect131r1_PUB +SharedSecret=009e4acc8c1ba3a129a9ad83a733d7d702 + +# ECDH Bob with Alice peer +Derive=BOB_sect131r1 +PeerKey=ALICE_sect131r1_PUB +SharedSecret=009e4acc8c1ba3a129a9ad83a733d7d702 + +# TEST CURVE sect131r2 + +PrivateKey=ALICE_sect131r2 +-----BEGIN EC PRIVATE KEY----- +MEcCAQEEEQMc8+1AIokHyDTWsyRPxKT1oAcGBSuBBAAXoSYDJAAEBxaXZn/WQhzi +ZYJtEfj5z/YHjtELfUnKJ8q+TGQe3TnHeA== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect131r2_PUB +-----BEGIN PUBLIC KEY----- +MDgwEAYHKoZIzj0CAQYFK4EEABcDJAAEBxaXZn/WQhziZYJtEfj5z/YHjtELfUnK +J8q+TGQe3TnHeA== +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect131r2 +-----BEGIN EC PRIVATE KEY----- +MEcCAQEEEQNH17P9i1Lb1Lv9Hn6tSJdUoAcGBSuBBAAXoSYDJAAEAtkc0EhMOiKC +k7BPNzOVo30CxGTknMxQldiS8ESqP5ggtA== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect131r2_PUB +-----BEGIN PUBLIC KEY----- +MDgwEAYHKoZIzj0CAQYFK4EEABcDJAAEAtkc0EhMOiKCk7BPNzOVo30CxGTknMxQ +ldiS8ESqP5ggtA== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect131r2 +PeerKey=BOB_sect131r2_PUB +SharedSecret=03cbec3a3050c7f13d4801ad692d61c417 + +# ECDH Bob with Alice peer +Derive=BOB_sect131r2 +PeerKey=ALICE_sect131r2_PUB +SharedSecret=03cbec3a3050c7f13d4801ad692d61c417 + +# TEST CURVE sect163k1 + +PrivateKey=ALICE_sect163k1 +-----BEGIN EC PRIVATE KEY----- +MFMCAQEEFQHGR4Y5cTzo8CKOmTy2s39/eSXhSaAHBgUrgQQAAaEuAywABAPWGsMI +nYxIUpnpDXVxOWVf+XkdjQeDldkLEwULzgBpzPA+00lg0LF8KQ== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect163k1_PUB +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEA9YawwidjEhSmekNdXE5ZV/5eR2NB4OV +2QsTBQvOAGnM8D7TSWDQsXwp +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect163k1 +-----BEGIN EC PRIVATE KEY----- +MFMCAQEEFQJQnmQi1J9eJ0deyCiRxLufM8Vs5KAHBgUrgQQAAaEuAywABAatg0nW +qB1vcD0hI6ZO6N9L5ZgUrAFdeskSW4CR42HeNecOrxf5cEHSTw== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect163k1_PUB +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBq2DSdaoHW9wPSEjpk7o30vlmBSsAV16 +yRJbgJHjYd415w6vF/lwQdJP +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect163k1 +PeerKey=BOB_sect163k1_PUB +SharedSecret=07bfdf00759b383aa7741ae4634400f8ddf2047092 + +# ECDH Bob with Alice peer +Derive=BOB_sect163k1 +PeerKey=ALICE_sect163k1_PUB +SharedSecret=07bfdf00759b383aa7741ae4634400f8ddf2047092 + +# TEST CURVE sect163r1 + +PrivateKey=ALICE_sect163r1 +-----BEGIN EC PRIVATE KEY----- +MFMCAQEEFQGX3OaU+YUXm/2HUggQ0DHVvy2PT6AHBgUrgQQAAqEuAywABATePwmf +nwIK0QPC85nkPCBgYFi8gQLPXM3xTA99MVJ1eNNZByv2BbE0wA== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect163r1_PUB +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAIDLAAEBN4/CZ+fAgrRA8LzmeQ8IGBgWLyBAs9c +zfFMD30xUnV401kHK/YFsTTA +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect163r1 +-----BEGIN EC PRIVATE KEY----- +MFMCAQEEFQD+fM3nIJq+9mVfIMYSKFavAbfrT6AHBgUrgQQAAqEuAywABAO3pdkd +/NcAFJOcaHN+g+190tmBqgaEF15bP7fXy82YLoAwk/4+e0fOwA== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect163r1_PUB +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAIDLAAEA7el2R381wAUk5xoc36D7X3S2YGqBoQX +Xls/t9fLzZgugDCT/j57R87A +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect163r1 +PeerKey=BOB_sect163r1_PUB +SharedSecret=02355c765bbc07fcc44bb1496e490912f6df56e6d4 + +# ECDH Bob with Alice peer +Derive=BOB_sect163r1 +PeerKey=ALICE_sect163r1_PUB +SharedSecret=02355c765bbc07fcc44bb1496e490912f6df56e6d4 + +# TEST CURVE sect163r2 + +PrivateKey=ALICE_sect163r2 +-----BEGIN EC PRIVATE KEY----- +MFMCAQEEFQOMfYbsGQ9MEzhW2WNpCvyxdUs06qAHBgUrgQQAD6EuAywABAcepbEl +ZHYqscI+n89KNkh0rzwRPQDfbf9Q5PGFgfCwulHuundqGrWVDw== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect163r2_PUB +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBx6lsSVkdiqxwj6fz0o2SHSvPBE9AN9t +/1Dk8YWB8LC6Ue66d2oatZUP +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect163r2 +-----BEGIN EC PRIVATE KEY----- +MFMCAQEEFQFc4z1ObqwpdSVEuVbQeAI1MPFbaKAHBgUrgQQAD6EuAywABAbFrzFF +wL5MhwOAa16ENURXU+gGiQHC0guPXo09gLRoFkjz+cUXiOGCZw== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect163r2_PUB +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBsWvMUXAvkyHA4BrXoQ1RFdT6AaJAcLS +C49ejT2AtGgWSPP5xReI4YJn +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect163r2 +PeerKey=BOB_sect163r2_PUB +SharedSecret=040df54e6df412790ef5c0fafbbfcba5136b872951 + +# ECDH Bob with Alice peer +Derive=BOB_sect163r2 +PeerKey=ALICE_sect163r2_PUB +SharedSecret=040df54e6df412790ef5c0fafbbfcba5136b872951 + +# TEST CURVE sect193r1 + +PrivateKey=ALICE_sect193r1 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGQARCWh8GW+PzMMrmjgIJ8Bo5A6aUDJOKYGgBwYFK4EEABihNgM0AAQA +oFzJEHFANlO+k8zf1lVdhBLlonBl9Sc3AGflPbqbXlEzgwudgZ2SVwAzygw4wv33 +3A== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect193r1_PUB +-----BEGIN PUBLIC KEY----- +MEgwEAYHKoZIzj0CAQYFK4EEABgDNAAEAKBcyRBxQDZTvpPM39ZVXYQS5aJwZfUn +NwBn5T26m15RM4MLnYGdklcAM8oMOML999w= +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect193r1 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGQCfG9gsplrDhGPbhZNEF+CJqvm+ndHekImgBwYFK4EEABihNgM0AAQB +fDQ9a3c+1lPm/1ofSjpacW0UY4E0RSlhAT+MGPNQcgKow1lMfL2BPZH3JzQYFn8O +Jw== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect193r1_PUB +-----BEGIN PUBLIC KEY----- +MEgwEAYHKoZIzj0CAQYFK4EEABgDNAAEAXw0PWt3PtZT5v9aH0o6WnFtFGOBNEUp +YQE/jBjzUHICqMNZTHy9gT2R9yc0GBZ/Dic= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect193r1 +PeerKey=BOB_sect193r1_PUB +SharedSecret=00458b4c5ad122de5a377bea0adf1ab87bcb961b24ed764f47 + +# ECDH Bob with Alice peer +Derive=BOB_sect193r1 +PeerKey=ALICE_sect193r1_PUB +SharedSecret=00458b4c5ad122de5a377bea0adf1ab87bcb961b24ed764f47 + +# TEST CURVE sect193r2 + +PrivateKey=ALICE_sect193r2 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGQCPnhdBb5vdudf126+ppr6U9M1y86XFEC+gBwYFK4EEABmhNgM0AAQA +eFbrGMfhM0+z97Xa2xlywYP5r3aQBaTBAVzibUhLHiia03IJUjsVdXnM2doZZUAJ +Pg== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect193r2_PUB +-----BEGIN PUBLIC KEY----- +MEgwEAYHKoZIzj0CAQYFK4EEABkDNAAEAHhW6xjH4TNPs/e12tsZcsGD+a92kAWk +wQFc4m1ISx4omtNyCVI7FXV5zNnaGWVACT4= +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect193r2 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGQC8yJVHRpuTqkeh44gERIt8H0HiCxkmMuygBwYFK4EEABmhNgM0AAQA +O0oNzAvrrT4ybXVWXbngYjdOcP5+tqB3AX7BjmqUy7lW2tQMwe4A/Srd4ZBSyvM2 +jQ== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect193r2_PUB +-----BEGIN PUBLIC KEY----- +MEgwEAYHKoZIzj0CAQYFK4EEABkDNAAEADtKDcwL660+Mm11Vl254GI3TnD+frag +dwF+wY5qlMu5VtrUDMHuAP0q3eGQUsrzNo0= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect193r2 +PeerKey=BOB_sect193r2_PUB +SharedSecret=019d1f316d204a9cd1b9632cebb4accddb204158be3e435891 + +# ECDH Bob with Alice peer +Derive=BOB_sect193r2 +PeerKey=ALICE_sect193r2_PUB +SharedSecret=019d1f316d204a9cd1b9632cebb4accddb204158be3e435891 + +# TEST CURVE sect233k1 + +PrivateKey=ALICE_sect233k1 +-----BEGIN EC PRIVATE KEY----- +MG0CAQEEHVpHupoqbW+ZlYrZsawnWteYfoGlORbi3UvjNJ/8oAcGBSuBBAAaoUAD +PgAEANwOK/5tO89VWKpgs3PTpU7nCh2vL6waLp+ckitBAJN9n13nCGIixtjlOGVy +bsjQD9wgahKED/ou6Y5U +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect233k1_PUB +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEANwOK/5tO89VWKpgs3PTpU7nCh2vL6wa +Lp+ckitBAJN9n13nCGIixtjlOGVybsjQD9wgahKED/ou6Y5U +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect233k1 +-----BEGIN EC PRIVATE KEY----- +MG0CAQEEHShrkGvNjGbqafnVfKmGfpc5SMpz2gwMcKjADIdNoAcGBSuBBAAaoUAD +PgAEAYqIW4UlVB7KYdhFWe3Ys0XYxJpMxwv0kZI+fbM7AGKzkxLiSAQVqRZCXsqk +aLLe9Lz3CaluW8csn/4h +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect233k1_PUB +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAYqIW4UlVB7KYdhFWe3Ys0XYxJpMxwv0 +kZI+fbM7AGKzkxLiSAQVqRZCXsqkaLLe9Lz3CaluW8csn/4h +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect233k1 +PeerKey=BOB_sect233k1_PUB +SharedSecret=00a5e5f2e992f4360d530dd365d14f5c6013212e14f4ea258c91c71f1512 + +# ECDH Bob with Alice peer +Derive=BOB_sect233k1 +PeerKey=ALICE_sect233k1_PUB +SharedSecret=00a5e5f2e992f4360d530dd365d14f5c6013212e14f4ea258c91c71f1512 + +# TEST CURVE sect233r1 + +PrivateKey=ALICE_sect233r1 +-----BEGIN EC PRIVATE KEY----- +MG4CAQEEHgAQ3p949HaCLPJfNTqQiBQaKOnn4hABeg0F8qdV4KAHBgUrgQQAG6FA +Az4ABAHSQTC7Z/BBajW/WPtdDy4lPeIzBELzD5zGDHEZDgH8XKOuEhSkQNZoyp9X +bcxxnpZ1shR7cxnsrmkbfw== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect233r1_PUB +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAdJBMLtn8EFqNb9Y+10PLiU94jMEQvMP +nMYMcRkOAfxco64SFKRA1mjKn1dtzHGelnWyFHtzGeyuaRt/ +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect233r1 +-----BEGIN EC PRIVATE KEY----- +MG4CAQEEHgBcdY55Lp8bRcIfcWccO5IhwQtR4Mb4Bg014tVl3qAHBgUrgQQAG6FA +Az4ABABhFFgfTXu7Fxow8XcY6wvhu+h1bXJksS0vemYKRwB+okj/ieIKvy4cqHSA +FrYkGMFYxXW7wyl/rS6+iQ== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect233r1_PUB +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAGEUWB9Ne7sXGjDxdxjrC+G76HVtcmSx +LS96ZgpHAH6iSP+J4gq/LhyodIAWtiQYwVjFdbvDKX+tLr6J +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect233r1 +PeerKey=BOB_sect233r1_PUB +SharedSecret=01625f3fcd367ee7cd74c67cca02dccfce6c3b19ef07e358ed943d17a8e2 + +# ECDH Bob with Alice peer +Derive=BOB_sect233r1 +PeerKey=ALICE_sect233r1_PUB +SharedSecret=01625f3fcd367ee7cd74c67cca02dccfce6c3b19ef07e358ed943d17a8e2 + +# TEST CURVE sect239k1 + +PrivateKey=ALICE_sect239k1 +-----BEGIN EC PRIVATE KEY----- +MG4CAQEEHgyGm5BO0N4sFuhmCJbXV38oGWBQvhi9ONnzODgdHaAHBgUrgQQAA6FA +Az4ABBp9EPpfcv/tz8U3r0q4DThrhuHEdl7ObPUbXma2W3CXzOVaxHn4Y1OjFXQ4 +EttK0BBtfGoFrYaDzcHShw== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect239k1_PUB +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEAAMDPgAEGn0Q+l9y/+3PxTevSrgNOGuG4cR2Xs5s +9RteZrZbcJfM5VrEefhjU6MVdDgS20rQEG18agWthoPNwdKH +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect239k1 +-----BEGIN EC PRIVATE KEY----- +MG4CAQEEHgUEbjvsq/KWKymlQXBsOX9JEadfkUWZ/D/FYiIQx6AHBgUrgQQAA6FA +Az4ABAWKLT3hRfoXmbwOTR4j8OEXf4gNS7uHzWFN3JnHERPQiiTEWRNR/+t71Y8D +svE84K6Ig9lQ1UJHFFZK5Q== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect239k1_PUB +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEAAMDPgAEBYotPeFF+heZvA5NHiPw4Rd/iA1Lu4fN +YU3cmccRE9CKJMRZE1H/63vVjwOy8TzgroiD2VDVQkcUVkrl +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect239k1 +PeerKey=BOB_sect239k1_PUB +SharedSecret=4d1c9a8ae73f754d0a593d6e426114f4f67d7c8082ccc4e04a72b0d2aff8 + +# ECDH Bob with Alice peer +Derive=BOB_sect239k1 +PeerKey=ALICE_sect239k1_PUB +SharedSecret=4d1c9a8ae73f754d0a593d6e426114f4f67d7c8082ccc4e04a72b0d2aff8 + +# TEST CURVE sect283k1 + +PrivateKey=ALICE_sect283k1 +-----BEGIN EC PRIVATE KEY----- +MIGAAgEBBCQAaGeyZnZQMpXdAqareT7fctDqfloJi8pdwyCJmUFL9GtWAhGgBwYF +K4EEABChTANKAAQFKCk7DlMxNzg7wceHDlq0mXmauda4LqhZVhFikPUgy881NGwB +ijhJhGY8h+DNW/8RJVwdVoPWU82j56rQc3WqG9Ff7iuYY7s= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect283k1_PUB +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBSgpOw5TMTc4O8HHhw5atJl5mrnWuC6o +WVYRYpD1IMvPNTRsAYo4SYRmPIfgzVv/ESVcHVaD1lPNo+eq0HN1qhvRX+4rmGO7 +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect283k1 +-----BEGIN EC PRIVATE KEY----- +MIGAAgEBBCQAAlcjB9aNhuIzmMRw3Dzz/WRsSeFWNYaK87vMM+2zsC4pIySgBwYF +K4EEABChTANKAAQDkC6x7ml0fqSzs93I96g9tgCTPpUPm/wpNXVv3s+JiZk0N6gF +jvwVDIdFK91Kj6hF7DZFpyloICe1GiJYfI3WcB0NLOMI3+Y= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect283k1_PUB +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEA5Ause5pdH6ks7PdyPeoPbYAkz6VD5v8 +KTV1b97PiYmZNDeoBY78FQyHRSvdSo+oRew2RacpaCAntRoiWHyN1nAdDSzjCN/m +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect283k1 +PeerKey=BOB_sect283k1_PUB +SharedSecret=02f2e682c2f60d7261624f3661a5e85fca920443b72aa4dd5a540082e65e552302d8f825 + +# ECDH Bob with Alice peer +Derive=BOB_sect283k1 +PeerKey=ALICE_sect283k1_PUB +SharedSecret=02f2e682c2f60d7261624f3661a5e85fca920443b72aa4dd5a540082e65e552302d8f825 + +# TEST CURVE sect283r1 + +PrivateKey=ALICE_sect283r1 +-----BEGIN EC PRIVATE KEY----- +MIGAAgEBBCQCLgmuG7X2S3sfyPDUU7tXMLGHqnSkjSiCXer16/k0WS59mRmgBwYF +K4EEABGhTANKAAQAfHpzCdbD72XehkenH5Hye7tIupRLjRNTa4vRbpVM0A0i9wkH +Vv77eiQfQUmAUBqFtqi1p9hPJ+oKhjXVVrGdWpTn9oTuOwM= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect283r1_PUB +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAHx6cwnWw+9l3oZHpx+R8nu7SLqUS40T +U2uL0W6VTNANIvcJB1b++3okH0FJgFAahbaotafYTyfqCoY11VaxnVqU5/aE7jsD +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect283r1 +-----BEGIN EC PRIVATE KEY----- +MIGAAgEBBCQAIPTiAlpV9XEr8OlvGOqvNlZzoHvprbcwr8hAPWMyUY9DPPGgBwYF +K4EEABGhTANKAAQDXeYhgy+KTXYMGnwmR0RMwHV7A7DbYL/GGfMsQeaCsbR7DF4A +1UCghnLa6/m3RVQking9h0s1qoiC4372/pTvw7iVqywirkg= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect283r1_PUB +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEA13mIYMvik12DBp8JkdETMB1ewOw22C/ +xhnzLEHmgrG0ewxeANVAoIZy2uv5t0VUJIp4PYdLNaqIguN+9v6U78O4lassIq5I +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect283r1 +PeerKey=BOB_sect283r1_PUB +SharedSecret=05778bc1afcf38d7dddb2150cacbfe4d38dc588968fd8b2e859c28ae2629d3435f89f6cc + +# ECDH Bob with Alice peer +Derive=BOB_sect283r1 +PeerKey=ALICE_sect283r1_PUB +SharedSecret=05778bc1afcf38d7dddb2150cacbfe4d38dc588968fd8b2e859c28ae2629d3435f89f6cc + +# TEST CURVE sect409k1 + +PrivateKey=ALICE_sect409k1 +-----BEGIN EC PRIVATE KEY----- +MIGvAgEBBDMg1vV7wiPe1ovX+ukzVfwPZoqvyj/vdif04Opi9PcjV5mPBEZgSFBg +8hbutNxZJdVLrxSgBwYFK4EEACShbANqAAQACe1IJ5ilSk1pPLvbcjEZIE6abC9L +Z9WmHuNJxM9LAW1OuLvJGi72AsGYUOGpX0WGmK6CAYaqZb2Qeedq/yUIljDHYi66 +J+26owYl7lOMpRzZ9U2QDJrZ7TYuxeMUui6re0B+JuZdYw== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect409k1_PUB +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAAntSCeYpUpNaTy723IxGSBOmmwvS2fV +ph7jScTPSwFtTri7yRou9gLBmFDhqV9FhpiuggGGqmW9kHnnav8lCJYwx2Iuuift +uqMGJe5TjKUc2fVNkAya2e02LsXjFLouq3tAfibmXWM= +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect409k1 +-----BEGIN EC PRIVATE KEY----- +MIGvAgEBBDMIYBGZZcZz4qCdhAV9vqpfe8vV+vJEhjawR52JUV1rumWEBPAx0o6E ++gaxHBr5hzVGkIKgBwYFK4EEACShbANqAAQAAQKKs60CTUUkltsT+lIBukjz850p +kGGLltJ4eaZn4k9AtN/lFTCq6Vgqe2sDrjA3b45qAdWjf1vRaP0wawJ13SjApJmy +Xg5hQks6d0Zqz2OHYhGEGiM159VtTlStK067dVe1fGVDeg== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect409k1_PUB +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAAECirOtAk1FJJbbE/pSAbpI8/OdKZBh +i5bSeHmmZ+JPQLTf5RUwqulYKntrA64wN2+OagHVo39b0Wj9MGsCdd0owKSZsl4O +YUJLOndGas9jh2IRhBojNefVbU5UrStOu3VXtXxlQ3o= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect409k1 +PeerKey=BOB_sect409k1_PUB +SharedSecret=01523ec40ad40226a57281a4c423801ae9495dcf736eddd667023b1390977d018ce79313fb99c503f39cbee80f5c1968f3bd02e0 + +# ECDH Bob with Alice peer +Derive=BOB_sect409k1 +PeerKey=ALICE_sect409k1_PUB +SharedSecret=01523ec40ad40226a57281a4c423801ae9495dcf736eddd667023b1390977d018ce79313fb99c503f39cbee80f5c1968f3bd02e0 + +# TEST CURVE sect409r1 + +PrivateKey=ALICE_sect409r1 +-----BEGIN EC PRIVATE KEY----- +MIGwAgEBBDQAYTMsTpey51D2ULndpN+AAWnJLy9pTerziakhjii8OyWKpUVfpDFN +neCCd2oQTDcPX5vdoAcGBSuBBAAloWwDagAEAYfk3ZejxpVYCG7dYHTVhhcqILEy +TYoQa4YehGPxKcbmgpqW4Wev1tEDVI3JIowICYGUowHXXzgDXoJeR79wgb7ySAlX +JXgQ8Ficr7i0CaqyAuIpFw9FWJT3jheFwnbpDTvIeIozlf4= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect409r1_PUB +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAYfk3ZejxpVYCG7dYHTVhhcqILEyTYoQ +a4YehGPxKcbmgpqW4Wev1tEDVI3JIowICYGUowHXXzgDXoJeR79wgb7ySAlXJXgQ +8Ficr7i0CaqyAuIpFw9FWJT3jheFwnbpDTvIeIozlf4= +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect409r1 +-----BEGIN EC PRIVATE KEY----- +MIGwAgEBBDQAsCs1nRgwW97TdKIHPRcsqmK1e8TIZ00e6rqLb3nD4sIe+Gw/fGhS +UER9akQ7lAluEUnfoAcGBSuBBAAloWwDagAEAfM2fvBEic+7jV4oC+v8GfsunD9Z +p9rzNgMp3dJ+ZU7r6Bp+ZH3dL9Uvv8kUiB89UlDlLwBm/W6TlzGuh1FnzXYKVnhn +XpzSlRZQsPCceKukbV46Asl8O23b2+DPJgQBGbMfWsgK+KA= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect409r1_PUB +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAfM2fvBEic+7jV4oC+v8GfsunD9Zp9rz +NgMp3dJ+ZU7r6Bp+ZH3dL9Uvv8kUiB89UlDlLwBm/W6TlzGuh1FnzXYKVnhnXpzS +lRZQsPCceKukbV46Asl8O23b2+DPJgQBGbMfWsgK+KA= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect409r1 +PeerKey=BOB_sect409r1_PUB +SharedSecret=019dc849870dc6f79978aca8e1fc6aa6836c8fcb25bbfe3d5ab41ea53eae2c7329952280efb30f9097a31a774191e476dbd842d5 + +# ECDH Bob with Alice peer +Derive=BOB_sect409r1 +PeerKey=ALICE_sect409r1_PUB +SharedSecret=019dc849870dc6f79978aca8e1fc6aa6836c8fcb25bbfe3d5ab41ea53eae2c7329952280efb30f9097a31a774191e476dbd842d5 + +# TEST CURVE sect571k1 + +PrivateKey=ALICE_sect571k1 +-----BEGIN EC PRIVATE KEY----- +MIHuAgEBBEgBE7yEjyPpNnnnr91Fx0Zi91uWcAsPZdkIq7ZzcLnJAh4DxOJ2L5/y +fpwKdvkW0k1Ngqo/y1F8eXABm1b+CJeL/jIXkra3BLegBwYFK4EEACahgZUDgZIA +BAC2K5RvPu/qeOG6OcOFqcPiJXzgrQtB33A/X6S/QGfzfecq0WtkKiaCuKnZLBRo +Rg4Tohw/IInjy9Y4q8hHp9TXW1bCwVE9TQJy3RKpVsA0AnPAvW6bC4o09uUnpkTB +wF2DDuFYUvqyH7RrIBDdrzM6LOFWIk8KdopH86gC1pSkJYtJMcMXWArj+SaXATH7 +yg== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect571k1_PUB +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQAtiuUbz7v6njhujnDhanD4iV84K0L +Qd9wP1+kv0Bn833nKtFrZComgrip2SwUaEYOE6IcPyCJ48vWOKvIR6fU11tWwsFR +PU0Cct0SqVbANAJzwL1umwuKNPblJ6ZEwcBdgw7hWFL6sh+0ayAQ3a8zOizhViJP +CnaKR/OoAtaUpCWLSTHDF1gK4/kmlwEx+8o= +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect571k1 +-----BEGIN EC PRIVATE KEY----- +MIHuAgEBBEgBVlPi2df10xZLpV1gKhhGX2j+P8fPsoaoXhSOT2f1vj6Zdsnfu2hu +mOek2oqUl8jTjDzQk+n43GmgFHfynVtxz2IvhKaHjxigBwYFK4EEACahgZUDgZIA +BABHMDH3JWQcvylt7WbKiwgsiGEstRFhEMeaik4iKMtCZMBNX2lg7sKsUE8GNoo1 +GM+nD9xU6zz1f0l3PH9uiWQapUCyMs3W2wKuoRPfUXiamd+w/BwzrNunqUTg3aAv +lxqQoybI80zh3ebzGXV/p7nosFh9rE5qpxjNtcJD8CKKPXcfTqoqG4UziKIH/QPX +rg== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect571k1_PUB +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQARzAx9yVkHL8pbe1myosILIhhLLUR +YRDHmopOIijLQmTATV9pYO7CrFBPBjaKNRjPpw/cVOs89X9Jdzx/bolkGqVAsjLN +1tsCrqET31F4mpnfsPwcM6zbp6lE4N2gL5cakKMmyPNM4d3m8xl1f6e56LBYfaxO +aqcYzbXCQ/Aiij13H06qKhuFM4iiB/0D164= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect571k1 +PeerKey=BOB_sect571k1_PUB +SharedSecret=05a423515fcc91b3171c83edd5c4085ff729a8ff0a3fa1578ebf769523ded0f5c1e387cf63109f2fbd95e117345b788b4577fdc6b6e727230bfc73eae0d4e851cb6f6e616eddb13e + +# ECDH Bob with Alice peer +Derive=BOB_sect571k1 +PeerKey=ALICE_sect571k1_PUB +SharedSecret=05a423515fcc91b3171c83edd5c4085ff729a8ff0a3fa1578ebf769523ded0f5c1e387cf63109f2fbd95e117345b788b4577fdc6b6e727230bfc73eae0d4e851cb6f6e616eddb13e + +# TEST CURVE sect571r1 + +PrivateKey=ALICE_sect571r1 +-----BEGIN EC PRIVATE KEY----- +MIHuAgEBBEgCuyL/9mn2955RFhXMZgefgyU0jE23pTq+2ZM9L81qiJpq/Fs6Kake +DFg8KOmg9iEzfdnZUGHumXZqhFbcYF6ksUugXyiJBougBwYFK4EEACehgZUDgZIA +BANEbZvsoJQpsYNNZWBbSqo0LehhzPh/8DBMeahRLWbN1FmP9J/ohT7uYhMadDqW +DUSRNqz9fpMrWE0xXu0CNJ6jB03vnDN3xgXfZIUcwhxZ7DmDnqgX3rWq/ci8gJmd +EA6ZbIYd4d1jAfEwFIE82C5rjZAagnPonp1gBR68T4Xc3b2n+1EEY3MwUiqgN1b4 +0A== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect571r1_PUB +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQDRG2b7KCUKbGDTWVgW0qqNC3oYcz4 +f/AwTHmoUS1mzdRZj/Sf6IU+7mITGnQ6lg1EkTas/X6TK1hNMV7tAjSeowdN75wz +d8YF32SFHMIcWew5g56oF961qv3IvICZnRAOmWyGHeHdYwHxMBSBPNgua42QGoJz +6J6dYAUevE+F3N29p/tRBGNzMFIqoDdW+NA= +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect571r1 +-----BEGIN EC PRIVATE KEY----- +MIHuAgEBBEgBiPrk3lclNC6yf6Fn3GP92BnipHUYMLUiPuNi6jD5O8asbbDP9ZPv +r+Us22UIt8NbaQ4MNSYMAl4r975Uw7uy4lNcaesYUeKgBwYFK4EEACehgZUDgZIA +BAbHKRgXGrPuNnFwFuI8th8kSFeV/ZJiYwq97vi2s5P6qMibfn65QByDaSs7Mftf +/zAfptVKf9Qob+TbvBmsCdbNnlcp3xAjvQfxoe8uCsKgyio6ej6HonhOC+UOrsUg +Znx+8Noztgnx0c9fkULxXKmG7zZNw12c0BMGqibpYNZztFMVniyKMvnLBWGi/AnW +AA== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect571r1_PUB +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQGxykYFxqz7jZxcBbiPLYfJEhXlf2S +YmMKve74trOT+qjIm35+uUAcg2krOzH7X/8wH6bVSn/UKG/k27wZrAnWzZ5XKd8Q +I70H8aHvLgrCoMoqOno+h6J4TgvlDq7FIGZ8fvDaM7YJ8dHPX5FC8Vyphu82TcNd +nNATBqom6WDWc7RTFZ4sijL5ywVhovwJ1gA= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect571r1 +PeerKey=BOB_sect571r1_PUB +SharedSecret=004b397e564055e2c7d87648183c948655ccb0ebb20bd441f9b11635cf461cb5815ff060eab33091b9f7aed67bec8ba1bb7b22437ece3c92c7cf76124408fb951595dfb4a512b2ae + +# ECDH Bob with Alice peer +Derive=BOB_sect571r1 +PeerKey=ALICE_sect571r1_PUB +SharedSecret=004b397e564055e2c7d87648183c948655ccb0ebb20bd441f9b11635cf461cb5815ff060eab33091b9f7aed67bec8ba1bb7b22437ece3c92c7cf76124408fb951595dfb4a512b2ae + +# TEST CURVE c2pnb163v1 + +PrivateKey=ALICE_c2pnb163v1 +-----BEGIN EC PRIVATE KEY----- +MFYCAQEEFQNNUFcMh0wyDkkhvrJkcumQ41q7O6AKBggqhkjOPQMAAaEuAywABAL9 +NoyLZgZjhKZhUKshVWiaYOc7IwclnVVnj59P6ET+pGlYcwxbmA5k7g== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2pnb163v1_PUB +-----BEGIN PUBLIC KEY----- +MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAEDLAAEAv02jItmBmOEpmFQqyFVaJpg5zsj +ByWdVWePn0/oRP6kaVhzDFuYDmTu +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2pnb163v1 +-----BEGIN EC PRIVATE KEY----- +MFYCAQEEFQLe4QB8Zzf5rQU6sWF+11QG1nkE86AKBggqhkjOPQMAAaEuAywABAai +MqSGc525RBjpdPQbBBsN7VgzXAWSPe9kaSE7k7OyobVCpAuQV4zAqg== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2pnb163v1_PUB +-----BEGIN PUBLIC KEY----- +MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAEDLAAEBqIypIZznblEGOl09BsEGw3tWDNc +BZI972RpITuTs7KhtUKkC5BXjMCq +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2pnb163v1 +PeerKey=BOB_c2pnb163v1_PUB +SharedSecret=05939a47cb503656e684f433001e45776c7620e13b + +# ECDH Bob with Alice peer +Derive=BOB_c2pnb163v1 +PeerKey=ALICE_c2pnb163v1_PUB +SharedSecret=05939a47cb503656e684f433001e45776c7620e13b + +# TEST CURVE c2pnb163v2 + +PrivateKey=ALICE_c2pnb163v2 +-----BEGIN EC PRIVATE KEY----- +MFYCAQEEFQLebeZ4k1uEPDAUfcL/8vYTI5A2u6AKBggqhkjOPQMAAqEuAywABAFo +BM6I9XpzyJwFhZzMtczqT63xTgUg3nuKILxGyYhLf5XIz+s3dQFlrA== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2pnb163v2_PUB +-----BEGIN PUBLIC KEY----- +MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAIDLAAEAWgEzoj1enPInAWFnMy1zOpPrfFO +BSDee4ogvEbJiEt/lcjP6zd1AWWs +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2pnb163v2 +-----BEGIN EC PRIVATE KEY----- +MFYCAQEEFQG938O8qFqvLByRJpZoCeIoHJcHCKAKBggqhkjOPQMAAqEuAywABAfT +4VZ7iZvXdCsRkI/B8hL6AKERegaHIFW5u3r5JKBLmdJ4MaCNb/fpDA== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2pnb163v2_PUB +-----BEGIN PUBLIC KEY----- +MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAIDLAAEB9PhVnuJm9d0KxGQj8HyEvoAoRF6 +BocgVbm7evkkoEuZ0ngxoI1v9+kM +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2pnb163v2 +PeerKey=BOB_c2pnb163v2_PUB +SharedSecret=0779fb5f6ac7892f2f342b785d71244e0b03ca562d + +# ECDH Bob with Alice peer +Derive=BOB_c2pnb163v2 +PeerKey=ALICE_c2pnb163v2_PUB +SharedSecret=0779fb5f6ac7892f2f342b785d71244e0b03ca562d + +# TEST CURVE c2pnb163v3 + +PrivateKey=ALICE_c2pnb163v3 +-----BEGIN EC PRIVATE KEY----- +MFYCAQEEFQK0nRlAwPlPpib+NnEXNv21CQs6G6AKBggqhkjOPQMAA6EuAywABATb +pgPuEb4JjTb6cEMUogGcy8dZRAZ+SIh8b3LFX4um04wJ1TjL1GEz7A== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2pnb163v3_PUB +-----BEGIN PUBLIC KEY----- +MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAMDLAAEBNumA+4RvgmNNvpwQxSiAZzLx1lE +Bn5IiHxvcsVfi6bTjAnVOMvUYTPs +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2pnb163v3 +-----BEGIN EC PRIVATE KEY----- +MFYCAQEEFQH0ydhH01czw6gKto6itDPUtchkkKAKBggqhkjOPQMAA6EuAywABAfX +lH/EAbKu2aD6Gt0Boaf2tUR9ZADvJQKfi8pHZ4jL+o1h9t4dMhpMFg== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2pnb163v3_PUB +-----BEGIN PUBLIC KEY----- +MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAMDLAAEB9eUf8QBsq7ZoPoa3QGhp/a1RH1k +AO8lAp+LykdniMv6jWH23h0yGkwW +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2pnb163v3 +PeerKey=BOB_c2pnb163v3_PUB +SharedSecret=02bf68863a8798e72cdc9cd3b9ce731f12654bfa81 + +# ECDH Bob with Alice peer +Derive=BOB_c2pnb163v3 +PeerKey=ALICE_c2pnb163v3_PUB +SharedSecret=02bf68863a8798e72cdc9cd3b9ce731f12654bfa81 + +# TEST CURVE c2pnb176v1 + +PrivateKey=ALICE_c2pnb176v1 +-----BEGIN EC PRIVATE KEY----- +MFgCAQEEFQDFcTPU+O2GqwjrriU3ktEs3wLa7KAKBggqhkjOPQMABKEwAy4ABEPW +pUkdsvkDsGEQp4dK4N5Ppd5nc4MWf15/rup0X61LunfOBcYq3ikoyhhy +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2pnb176v1_PUB +-----BEGIN PUBLIC KEY----- +MEUwEwYHKoZIzj0CAQYIKoZIzj0DAAQDLgAEQ9alSR2y+QOwYRCnh0rg3k+l3mdz +gxZ/Xn+u6nRfrUu6d84FxireKSjKGHI= +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2pnb176v1 +-----BEGIN EC PRIVATE KEY----- +MFgCAQEEFQAm8ccVbS/79yNot3teC3oW1KBrn6AKBggqhkjOPQMABKEwAy4ABJSz +utQCW/WqGmkjzaKQu9nxjQMCkLfnqeGztLJBh0u0dEz6pQcEHcjOssp1 +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2pnb176v1_PUB +-----BEGIN PUBLIC KEY----- +MEUwEwYHKoZIzj0CAQYIKoZIzj0DAAQDLgAElLO61AJb9aoaaSPNopC72fGNAwKQ +t+ep4bO0skGHS7R0TPqlBwQdyM6yynU= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2pnb176v1 +PeerKey=BOB_c2pnb176v1_PUB +SharedSecret=b204734417542df762e09013d6ba958940837a2aa25a + +# ECDH Bob with Alice peer +Derive=BOB_c2pnb176v1 +PeerKey=ALICE_c2pnb176v1_PUB +SharedSecret=b204734417542df762e09013d6ba958940837a2aa25a + +# TEST CURVE c2tnb191v1 + +PrivateKey=ALICE_c2tnb191v1 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGBiCk77CCKtS26ocXTTajTZVzvFCMqBLMKAKBggqhkjOPQMABaE0AzIA +BDZp77m0NDYINpXlc90L5G0uBwdLmVM5yVMKWv9ZKk9OUy3ZMaH8pGsPzn2heDop +hg== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2tnb191v1_PUB +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAUDMgAENmnvubQ0Ngg2leVz3QvkbS4HB0uZ +UznJUwpa/1kqT05TLdkxofykaw/OfaF4OimG +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2tnb191v1 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGC7Obm4U1HL+Vfc4q4mPyL+8f/6+Ix3jzKAKBggqhkjOPQMABaE0AzIA +BGRrmuF1Oa1upBVExZlCNSqwdQxfjeyJG3l/ZZBJl+D4hDaX/y95rLJf16tRK3eA +rg== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2tnb191v1_PUB +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAUDMgAEZGua4XU5rW6kFUTFmUI1KrB1DF+N +7IkbeX9lkEmX4PiENpf/L3mssl/Xq1Erd4Cu +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2tnb191v1 +PeerKey=BOB_c2tnb191v1_PUB +SharedSecret=7a30d30acd3b067f38bb3be9e8cdef739483df26455e36e1 + +# ECDH Bob with Alice peer +Derive=BOB_c2tnb191v1 +PeerKey=ALICE_c2tnb191v1_PUB +SharedSecret=7a30d30acd3b067f38bb3be9e8cdef739483df26455e36e1 + +# TEST CURVE c2tnb191v2 + +PrivateKey=ALICE_c2tnb191v2 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGA6WyWAnRdIre8oLkuxCZjFl+vw4QpdFDaAKBggqhkjOPQMABqE0AzIA +BAAeK8uFLBbZIlm1Q+G5XWn19BJ/PvD1Iljx0k6lV/z0N689SUkw9xpIbKNf7ecl +lw== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2tnb191v2_PUB +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAYDMgAEAB4ry4UsFtkiWbVD4bldafX0En8+ +8PUiWPHSTqVX/PQ3rz1JSTD3Gkhso1/t5yWX +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2tnb191v2 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGAr1BpLZINTrLPu5eo77/4L5tpNNUwAZUaAKBggqhkjOPQMABqE0AzIA +BCJHS32mWbvt7N9e8nMM12XJgLSlZf5CYnwRq+AQSWSTL8z5hdvm5+QXMVcgR9T2 +kw== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2tnb191v2_PUB +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAYDMgAEIkdLfaZZu+3s317ycwzXZcmAtKVl +/kJifBGr4BBJZJMvzPmF2+bn5BcxVyBH1PaT +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2tnb191v2 +PeerKey=BOB_c2tnb191v2_PUB +SharedSecret=5ec2b6ccd193620dbad302c4ad8f8909a40698bf454d7534 + +# ECDH Bob with Alice peer +Derive=BOB_c2tnb191v2 +PeerKey=ALICE_c2tnb191v2_PUB +SharedSecret=5ec2b6ccd193620dbad302c4ad8f8909a40698bf454d7534 + +# TEST CURVE c2tnb191v3 + +PrivateKey=ALICE_c2tnb191v3 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGBJoE5DKrpdfeFlVWBUWVGvFO6+C2/fcLqAKBggqhkjOPQMAB6E0AzIA +BEv4W6nyM6eLFBg/HylT9vTro8euFNd+I16sURgD/k5cIoISR1EKm4MmfKqmZoLa +/A== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2tnb191v3_PUB +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAcDMgAES/hbqfIzp4sUGD8fKVP29Oujx64U +134jXqxRGAP+TlwighJHUQqbgyZ8qqZmgtr8 +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2tnb191v3 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGAQTwuzulzX+rf/Su5GAytYaEYivhUu3i6AKBggqhkjOPQMAB6E0AzIA +BAcBmyOQBdqfAZtdHdIqSgqWLqtJ9KK7SVTZccOJl20to834SKHPgp4bZgz+nebV +2g== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2tnb191v3_PUB +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAcDMgAEBwGbI5AF2p8Bm10d0ipKCpYuq0n0 +ortJVNlxw4mXbS2jzfhIoc+CnhtmDP6d5tXa +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2tnb191v3 +PeerKey=BOB_c2tnb191v3_PUB +SharedSecret=39093dc8a2e6724a6206ed41bb99490d527d80c902c41891 + +# ECDH Bob with Alice peer +Derive=BOB_c2tnb191v3 +PeerKey=ALICE_c2tnb191v3_PUB +SharedSecret=39093dc8a2e6724a6206ed41bb99490d527d80c902c41891 + +# TEST CURVE c2pnb208w1 + +PrivateKey=ALICE_c2pnb208w1 +-----BEGIN EC PRIVATE KEY----- +MGQCAQEEGQBt+c1uhfoOT40ugE7qoEHZoTWyuZOBL3qgCgYIKoZIzj0DAAqhOAM2 +AAQUsdyIC7h7FxgHSa3LysXjjZQtdl+ov3QiSA/kbbPDNjWYCUQEUyDzeLN5FoIn ++9GKFkMn +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2pnb208w1_PUB +-----BEGIN PUBLIC KEY----- +ME0wEwYHKoZIzj0CAQYIKoZIzj0DAAoDNgAEFLHciAu4excYB0mty8rF442ULXZf +qL90IkgP5G2zwzY1mAlEBFMg83izeRaCJ/vRihZDJw== +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2pnb208w1 +-----BEGIN EC PRIVATE KEY----- +MGQCAQEEGQDCMYUk4+RmpA9n6YgB7cbXbOlSJrjS1GOgCgYIKoZIzj0DAAqhOAM2 +AAQPFo/q7SmEMt8zhGxmGAh9nLwK6tHj8g+2owbFt/Ok8o8xldXXYXoytauitIUN +nwoV3nxb +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2pnb208w1_PUB +-----BEGIN PUBLIC KEY----- +ME0wEwYHKoZIzj0CAQYIKoZIzj0DAAoDNgAEDxaP6u0phDLfM4RsZhgIfZy8CurR +4/IPtqMGxbfzpPKPMZXV12F6MrWrorSFDZ8KFd58Ww== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2pnb208w1 +PeerKey=BOB_c2pnb208w1_PUB +SharedSecret=59bf3c91bd168d4d4d900d9ce155933045e0fd16dcf0511bb5af + +# ECDH Bob with Alice peer +Derive=BOB_c2pnb208w1 +PeerKey=ALICE_c2pnb208w1_PUB +SharedSecret=59bf3c91bd168d4d4d900d9ce155933045e0fd16dcf0511bb5af + +# TEST CURVE c2tnb239v1 + +PrivateKey=ALICE_c2tnb239v1 +-----BEGIN EC PRIVATE KEY----- +MHECAQEEHhOAgsFxCrD9wnywvwy0khfZX8jmjUrkF5qva8y6sKAKBggqhkjOPQMA +C6FAAz4ABDOqECLFybPgDSkKRdw8wXRuBXUuQ0vqqXOX1U7GYiOBQFgl1L88z00Q +Hsd8MLxf+Ca2CunClYfItRDqzQ== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2tnb239v1_PUB +-----BEGIN PUBLIC KEY----- +MFUwEwYHKoZIzj0CAQYIKoZIzj0DAAsDPgAEM6oQIsXJs+ANKQpF3DzBdG4FdS5D +S+qpc5fVTsZiI4FAWCXUvzzPTRAex3wwvF/4JrYK6cKVh8i1EOrN +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2tnb239v1 +-----BEGIN EC PRIVATE KEY----- +MHECAQEEHgBg2AhgF6g9N8eddId+SUs5YEXlulv0/JWDxAONnaAKBggqhkjOPQMA +C6FAAz4ABApOlMofFC5DlTsWUjWWBsLZKP6Mu2SwzxfHW7BGU3mCAaUOoVqmf+Dc +90cs36LpMnwm92/DjLaavkIIqA== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2tnb239v1_PUB +-----BEGIN PUBLIC KEY----- +MFUwEwYHKoZIzj0CAQYIKoZIzj0DAAsDPgAECk6Uyh8ULkOVOxZSNZYGwtko/oy7 +ZLDPF8dbsEZTeYIBpQ6hWqZ/4Nz3RyzfoukyfCb3b8OMtpq+Qgio +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2tnb239v1 +PeerKey=BOB_c2tnb239v1_PUB +SharedSecret=78c42256900725df9a47bb042cef7dad9f639b32e3010738a144e7472d1a + +# ECDH Bob with Alice peer +Derive=BOB_c2tnb239v1 +PeerKey=ALICE_c2tnb239v1_PUB +SharedSecret=78c42256900725df9a47bb042cef7dad9f639b32e3010738a144e7472d1a + +# TEST CURVE c2tnb239v2 + +PrivateKey=ALICE_c2tnb239v2 +-----BEGIN EC PRIVATE KEY----- +MHECAQEEHhPJAYxy4xXgvmdoGatLJ8Ed1IBIFjFtMYpYSTY1tqAKBggqhkjOPQMA +DKFAAz4ABEPrmyGIYfNlaIcCklc+9D5B7I5mFg7w1P0gUZPAIj+9QjPQ+1xCiubZ +1PeDLStirHMeZ1mRXPqCIdfrGA== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2tnb239v2_PUB +-----BEGIN PUBLIC KEY----- +MFUwEwYHKoZIzj0CAQYIKoZIzj0DAAwDPgAEQ+ubIYhh82VohwKSVz70PkHsjmYW +DvDU/SBRk8AiP71CM9D7XEKK5tnU94MtK2Kscx5nWZFc+oIh1+sY +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2tnb239v2 +-----BEGIN EC PRIVATE KEY----- +MHECAQEEHhO24cymWVJu/NHNHtxAVmNRsQ/dDM7u860DIu2wM6AKBggqhkjOPQMA +DKFAAz4ABGIFe26JGOoizM2UxtdHOjQ2ltdaZQJtEzSlVcMz6nt8pYbEJpptNixy +l9IDeBNXVEtLgpQWzBjatpoZZw== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2tnb239v2_PUB +-----BEGIN PUBLIC KEY----- +MFUwEwYHKoZIzj0CAQYIKoZIzj0DAAwDPgAEYgV7bokY6iLMzZTG10c6NDaW11pl +Am0TNKVVwzPqe3ylhsQmmm02LHKX0gN4E1dUS0uClBbMGNq2mhln +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2tnb239v2 +PeerKey=BOB_c2tnb239v2_PUB +SharedSecret=4ba2ecfa8ec7a375594d1673886cccf96d7763c55611b3c9008a35160192 + +# ECDH Bob with Alice peer +Derive=BOB_c2tnb239v2 +PeerKey=ALICE_c2tnb239v2_PUB +SharedSecret=4ba2ecfa8ec7a375594d1673886cccf96d7763c55611b3c9008a35160192 + +# TEST CURVE c2tnb239v3 + +PrivateKey=ALICE_c2tnb239v3 +-----BEGIN EC PRIVATE KEY----- +MHECAQEEHgsYguZWx2C9UGG29os2YkqCz51gmSHbPNdSdTeyraAKBggqhkjOPQMA +DaFAAz4ABHRzM/rbLju1XDvSBYLElk8Hi6AdWoeViIOnFq7XFH5juxBnz8DZ4uAX +/DaO6xhjMG4rFtL+ib9qZE0jPA== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2tnb239v3_PUB +-----BEGIN PUBLIC KEY----- +MFUwEwYHKoZIzj0CAQYIKoZIzj0DAA0DPgAEdHMz+tsuO7VcO9IFgsSWTweLoB1a +h5WIg6cWrtcUfmO7EGfPwNni4Bf8No7rGGMwbisW0v6Jv2pkTSM8 +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2tnb239v3 +-----BEGIN EC PRIVATE KEY----- +MHECAQEEHgQT8XXlNzKIWXOSce1mnS7j0nl3joO+a1wtRJXsbKAKBggqhkjOPQMA +DaFAAz4ABGh8IsEJqKmz4o/PpeoSx1UM9AGSwU+bl4QIfH4UwASqiO6mEoSAgAF9 +Lb7txL0PAUCz9eIK8VLEqBKgBQ== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2tnb239v3_PUB +-----BEGIN PUBLIC KEY----- +MFUwEwYHKoZIzj0CAQYIKoZIzj0DAA0DPgAEaHwiwQmoqbPij8+l6hLHVQz0AZLB +T5uXhAh8fhTABKqI7qYShICAAX0tvu3EvQ8BQLP14grxUsSoEqAF +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2tnb239v3 +PeerKey=BOB_c2tnb239v3_PUB +SharedSecret=47ad60e5480375fccd9246c93ab04da8e5da83e1dbf5f177f10a47cb54a0 + +# ECDH Bob with Alice peer +Derive=BOB_c2tnb239v3 +PeerKey=ALICE_c2tnb239v3_PUB +SharedSecret=47ad60e5480375fccd9246c93ab04da8e5da83e1dbf5f177f10a47cb54a0 + +# TEST CURVE c2pnb272w1 + +PrivateKey=ALICE_c2pnb272w1 +-----BEGIN EC PRIVATE KEY----- +MHwCAQEEIQCjLSnXRDVRo801OMPoVtEoAzrSBJXLOdsG+NEtPI+oDKAKBggqhkjO +PQMAEKFIA0YABHxr0s0KPtNFVyA11e4ohl6SNepM7OgvK5HIQObFQQWOep0gqdJ+ +BaSF0c2n4hUJJSQ/TqycwOj13O7adp9l4SML7jpi +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2pnb272w1_PUB +-----BEGIN PUBLIC KEY----- +MF0wEwYHKoZIzj0CAQYIKoZIzj0DABADRgAEfGvSzQo+00VXIDXV7iiGXpI16kzs +6C8rkchA5sVBBY56nSCp0n4FpIXRzafiFQklJD9OrJzA6PXc7tp2n2XhIwvuOmI= +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2pnb272w1 +-----BEGIN EC PRIVATE KEY----- +MHwCAQEEIQBQCjwcl9cJWFKVOJhAgwMYPlTOWhaOCT5ahM0dG/YSOqAKBggqhkjO +PQMAEKFIA0YABC/PvOtyFOLsWxGPI1QY4bKxuFugBTBerfmhr6Iih7RDC0GulNef +E0WqQ1qeHkbq5uiHb7+4XqQj6jjBBskg1MDBAokD +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2pnb272w1_PUB +-----BEGIN PUBLIC KEY----- +MF0wEwYHKoZIzj0CAQYIKoZIzj0DABADRgAEL8+863IU4uxbEY8jVBjhsrG4W6AF +MF6t+aGvoiKHtEMLQa6U158TRapDWp4eRurm6Idvv7hepCPqOMEGySDUwMECiQM= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2pnb272w1 +PeerKey=BOB_c2pnb272w1_PUB +SharedSecret=3ae063b2bed6ba8aa28ff35e9bd2673f22ee8087860c86b89429a5b52538216632a3 + +# ECDH Bob with Alice peer +Derive=BOB_c2pnb272w1 +PeerKey=ALICE_c2pnb272w1_PUB +SharedSecret=3ae063b2bed6ba8aa28ff35e9bd2673f22ee8087860c86b89429a5b52538216632a3 + +# TEST CURVE c2pnb304w1 + +PrivateKey=ALICE_c2pnb304w1 +-----BEGIN EC PRIVATE KEY----- +MIGIAgEBBCUA4rN9xXZc69WxJSGhXPdIcbNIJ/Sr2L6KXPll8HFz7myyMruMoAoG +CCqGSM49AwARoVADTgAENzjNA0Vpm6SP2LPeJdNh3Nq0I5hm+t86OtuDOX/w+gXG +3mrrIlO7flW71dWnmlMK2OkMSnLAGPTFvTtFG5UMSTxO2EU/m8Z5MhYsPg== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2pnb304w1_PUB +-----BEGIN PUBLIC KEY----- +MGUwEwYHKoZIzj0CAQYIKoZIzj0DABEDTgAENzjNA0Vpm6SP2LPeJdNh3Nq0I5hm ++t86OtuDOX/w+gXG3mrrIlO7flW71dWnmlMK2OkMSnLAGPTFvTtFG5UMSTxO2EU/ +m8Z5MhYsPg== +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2pnb304w1 +-----BEGIN EC PRIVATE KEY----- +MIGIAgEBBCUA8/iHPqxr4p1MniF8F4JSIkF+yFxmhqmRkwWuEjW91xFjsx4BoAoG +CCqGSM49AwARoVADTgAEwdFTMuJRjs7icQF2Z7HfVTiXpM790P7kxX+1U2LNWxaO +RO+LZ+zvvaVn0x42npCcYxnmfmy5sexrRA4kvUumZdcrRQhYZtbSdBvnaA== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2pnb304w1_PUB +-----BEGIN PUBLIC KEY----- +MGUwEwYHKoZIzj0CAQYIKoZIzj0DABEDTgAEwdFTMuJRjs7icQF2Z7HfVTiXpM79 +0P7kxX+1U2LNWxaORO+LZ+zvvaVn0x42npCcYxnmfmy5sexrRA4kvUumZdcrRQhY +ZtbSdBvnaA== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2pnb304w1 +PeerKey=BOB_c2pnb304w1_PUB +SharedSecret=6df88b20de9f095c7632234291ea4658a9265cd2293424e11ed56705b09a069f09dc4e055eb7 + +# ECDH Bob with Alice peer +Derive=BOB_c2pnb304w1 +PeerKey=ALICE_c2pnb304w1_PUB +SharedSecret=6df88b20de9f095c7632234291ea4658a9265cd2293424e11ed56705b09a069f09dc4e055eb7 + +# TEST CURVE c2tnb359v1 + +PrivateKey=ALICE_c2tnb359v1 +-----BEGIN EC PRIVATE KEY----- +MIGeAgEBBC0BeMU97SvjsIvQ1v+Ztf56OCL8JXHxRJDQZ5gWEa4c2b3FZXFVC4Cw +EPd7cB+gCgYIKoZIzj0DABKhXgNcAAQOBgLp0TzS4Hf/VYbJCFuj3OlRC5JMzFV7 +ox41ubhl5Ij+gHIodu1bQ6cqd0YAb2/30PxwX++NNpFvq8u8435zhPYXsut6txOP +NU5ZzCeagy2xsKacXSZc7D0= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2tnb359v1_PUB +-----BEGIN PUBLIC KEY----- +MHMwEwYHKoZIzj0CAQYIKoZIzj0DABIDXAAEDgYC6dE80uB3/1WGyQhbo9zpUQuS +TMxVe6MeNbm4ZeSI/oByKHbtW0OnKndGAG9v99D8cF/vjTaRb6vLvON+c4T2F7Lr +ercTjzVOWcwnmoMtsbCmnF0mXOw9 +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2tnb359v1 +-----BEGIN EC PRIVATE KEY----- +MIGeAgEBBC0BRZ3IIh3mrLIXKBbh6Vj7TXNY5bzRuD5/ayHPlHQkJcd8K66dOqu7 +hgaN91GgCgYIKoZIzj0DABKhXgNcAAQ7njbTQ2xYYZtkKswYr8E6P/R3Dg/XEZgQ +Q72B4qXnqbK/SgYsZAntFg7CRztcTkHjKAgdSz6fTRIc4///gwXN3Oi6D8Peswhz +PJi/uLmCAHMm3GT6SUO3aTY= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2tnb359v1_PUB +-----BEGIN PUBLIC KEY----- +MHMwEwYHKoZIzj0CAQYIKoZIzj0DABIDXAAEO54200NsWGGbZCrMGK/BOj/0dw4P +1xGYEEO9geKl56myv0oGLGQJ7RYOwkc7XE5B4ygIHUs+n00SHOP//4MFzdzoug/D +3rMIczyYv7i5ggBzJtxk+klDt2k2 +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2tnb359v1 +PeerKey=BOB_c2tnb359v1_PUB +SharedSecret=1d3f3396492d130caea54233c79833e90a072fe883071bb08cec671ce0319f0bc39c68dda0199952152a5c3563 + +# ECDH Bob with Alice peer +Derive=BOB_c2tnb359v1 +PeerKey=ALICE_c2tnb359v1_PUB +SharedSecret=1d3f3396492d130caea54233c79833e90a072fe883071bb08cec671ce0319f0bc39c68dda0199952152a5c3563 + +# TEST CURVE c2pnb368w1 + +PrivateKey=ALICE_c2pnb368w1 +-----BEGIN EC PRIVATE KEY----- +MIGgAgEBBC0AFagbth/4/M2sb1G4FpxbFEVLIulioS34v0hrClpZ38/Z+PHmIhOf +EFminyegCgYIKoZIzj0DABOhYANeAAQAU42w7mIIjkyAdnCC4qoEPdH42fh3oVyC +tnaRtKUmdhUdXm0IgSM4T4SYEOsx+aQZLGIjnhHJCabcaKPQ0sai3dirUr2YsNXN +DJiU93T7buUr+DnRPGsfBy/nEg== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2pnb368w1_PUB +-----BEGIN PUBLIC KEY----- +MHUwEwYHKoZIzj0CAQYIKoZIzj0DABMDXgAEAFONsO5iCI5MgHZwguKqBD3R+Nn4 +d6FcgrZ2kbSlJnYVHV5tCIEjOE+EmBDrMfmkGSxiI54RyQmm3Gij0NLGot3Yq1K9 +mLDVzQyYlPd0+27lK/g50TxrHwcv5xI= +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2pnb368w1 +-----BEGIN EC PRIVATE KEY----- +MIGgAgEBBC0AA/woMzOFy8k2zBqBkubhkOIwc7sx0u+JadM9f7V45L4P8nK7bjJa +sOqrHRagCgYIKoZIzj0DABOhYANeAATKE6jcstacH8yWzg/qBgvGoGan2PVwTN/U ++68K4WxHO7+oPHviUh1OVF7ZxYjsVSdyno83iHE33sq2Ej6j26f+uVs/fuWk19t8 +NpAQ6+sVETZszuMDm5adqtVZRQ== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2pnb368w1_PUB +-----BEGIN PUBLIC KEY----- +MHUwEwYHKoZIzj0CAQYIKoZIzj0DABMDXgAEyhOo3LLWnB/Mls4P6gYLxqBmp9j1 +cEzf1PuvCuFsRzu/qDx74lIdTlRe2cWI7FUncp6PN4hxN97KthI+o9un/rlbP37l +pNfbfDaQEOvrFRE2bM7jA5uWnarVWUU= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2pnb368w1 +PeerKey=BOB_c2pnb368w1_PUB +SharedSecret=d191710b156d1b1d14242843a7f0abf28060bbb9e655655b53852a8b0f250ef1eee37d59364d9791c8e1bc526cbb + +# ECDH Bob with Alice peer +Derive=BOB_c2pnb368w1 +PeerKey=ALICE_c2pnb368w1_PUB +SharedSecret=d191710b156d1b1d14242843a7f0abf28060bbb9e655655b53852a8b0f250ef1eee37d59364d9791c8e1bc526cbb + +# TEST CURVE c2tnb431r1 + +PrivateKey=ALICE_c2tnb431r1 +-----BEGIN EC PRIVATE KEY----- +MIG4AgEBBDUC18JhUt+NCIZ/q6kdjNZ7zX72UqpW4K6Uc2bAWu2PXK1aL573LNzu +4oUlHfbvuE1BUrxNpaAKBggqhkjOPQMAFKFwA24ABDrG8SG4lckR1rrvLRpXYf7W +spmh/fbql+Zpulyl896XtwQK2BkLVRkZ5ixTG4PUyb64OiffdSnvIaM++cb7LgJL +BBgT3d5le8V1gtxWFFm0NggUyF6glmUqHQL0LuhXWS468O6w05KS0AL6vQ== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2tnb431r1_PUB +-----BEGIN PUBLIC KEY----- +MIGFMBMGByqGSM49AgEGCCqGSM49AwAUA24ABDrG8SG4lckR1rrvLRpXYf7Wspmh +/fbql+Zpulyl896XtwQK2BkLVRkZ5ixTG4PUyb64OiffdSnvIaM++cb7LgJLBBgT +3d5le8V1gtxWFFm0NggUyF6glmUqHQL0LuhXWS468O6w05KS0AL6vQ== +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2tnb431r1 +-----BEGIN EC PRIVATE KEY----- +MIG4AgEBBDUApanyPgvpfrAu1jNAKGpctH71v0+P/kFF9JxdFYarpWEwBBd4tz6C +xoYKmvDZ9ukOOqBbX6AKBggqhkjOPQMAFKFwA24ABGh3JXuYmh6dGGEmbRhoR2T5 +pVD/5Mq2ZKKzfzY2NOoKiIs6rVzv2SW7S6BScYlRqRWiXCeZVFvT0crDY/5uodkH +bcRw6B/Yo/iMN8wLI257Tjm9/C5G+JPCLopCcLILgTwAJM2ZhtPnc08LyQ== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2tnb431r1_PUB +-----BEGIN PUBLIC KEY----- +MIGFMBMGByqGSM49AgEGCCqGSM49AwAUA24ABGh3JXuYmh6dGGEmbRhoR2T5pVD/ +5Mq2ZKKzfzY2NOoKiIs6rVzv2SW7S6BScYlRqRWiXCeZVFvT0crDY/5uodkHbcRw +6B/Yo/iMN8wLI257Tjm9/C5G+JPCLopCcLILgTwAJM2ZhtPnc08LyQ== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2tnb431r1 +PeerKey=BOB_c2tnb431r1_PUB +SharedSecret=4c4d7d387843ff5152f22f101b0609238819357fae2ccc9097b818e383ef6809cb46671fb514009d4d1d3d0119fba265107302e95748 + +# ECDH Bob with Alice peer +Derive=BOB_c2tnb431r1 +PeerKey=ALICE_c2tnb431r1_PUB +SharedSecret=4c4d7d387843ff5152f22f101b0609238819357fae2ccc9097b818e383ef6809cb46671fb514009d4d1d3d0119fba265107302e95748 + +# TEST CURVE wap-wsg-idm-ecid-wtls1 + +PrivateKey=ALICE_wap-wsg-idm-ecid-wtls1 +-----BEGIN EC PRIVATE KEY----- +MEACAQEEDle73WoHDFMOaEP/fQp/oAcGBWcrAQQBoSIDIAAEAVBJnQb5p9rXHgrB +TMGNARYU11mgXpQ1gaQJEg3K +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_wap-wsg-idm-ecid-wtls1_PUB +-----BEGIN PUBLIC KEY----- +MDQwEAYHKoZIzj0CAQYFZysBBAEDIAAEAVBJnQb5p9rXHgrBTMGNARYU11mgXpQ1 +gaQJEg3K +-----END PUBLIC KEY----- + +PrivateKey=BOB_wap-wsg-idm-ecid-wtls1 +-----BEGIN EC PRIVATE KEY----- +MEACAQEEDlpToJDjvhnV8ffEC2f/oAcGBWcrAQQBoSIDIAAEAWlvgZNz7m9/meS3 +jMvHAZlDqpJtiUfylRum/Byo +-----END EC PRIVATE KEY----- + +PublicKey=BOB_wap-wsg-idm-ecid-wtls1_PUB +-----BEGIN PUBLIC KEY----- +MDQwEAYHKoZIzj0CAQYFZysBBAEDIAAEAWlvgZNz7m9/meS3jMvHAZlDqpJtiUfy +lRum/Byo +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_wap-wsg-idm-ecid-wtls1 +PeerKey=BOB_wap-wsg-idm-ecid-wtls1_PUB +SharedSecret=0000fc6e280987e8b9bf6e3c7fa003 + +# ECDH Bob with Alice peer +Derive=BOB_wap-wsg-idm-ecid-wtls1 +PeerKey=ALICE_wap-wsg-idm-ecid-wtls1_PUB +SharedSecret=0000fc6e280987e8b9bf6e3c7fa003 + +# TEST CURVE wap-wsg-idm-ecid-wtls3 + +PrivateKey=ALICE_wap-wsg-idm-ecid-wtls3 +-----BEGIN EC PRIVATE KEY----- +MFMCAQEEFQE3YUWBCLPgo8n0YSyuPkGb3TyJ+6AHBgVnKwEEA6EuAywABAFXbVPH +e/z7XAUqrs+KWhHULHOaVQO+fJeuziY2Zzk2zfybM94255A2jQ== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_wap-wsg-idm-ecid-wtls3_PUB +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFZysBBAMDLAAEAVdtU8d7/PtcBSquz4paEdQsc5pVA758 +l67OJjZnOTbN/Jsz3jbnkDaN +-----END PUBLIC KEY----- + +PrivateKey=BOB_wap-wsg-idm-ecid-wtls3 +-----BEGIN EC PRIVATE KEY----- +MFMCAQEEFQD/RSy3signnbrOfbCJYG6tHk15JaAHBgVnKwEEA6EuAywABAHt37/M +wy2Lh2OGVWdoapqqiduajgK/6IpPVwXefNdX8pcdIkin2Jl5qw== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_wap-wsg-idm-ecid-wtls3_PUB +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFZysBBAMDLAAEAe3fv8zDLYuHY4ZVZ2hqmqqJ25qOAr/o +ik9XBd5811fylx0iSKfYmXmr +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_wap-wsg-idm-ecid-wtls3 +PeerKey=BOB_wap-wsg-idm-ecid-wtls3_PUB +SharedSecret=00cf1d850f396436be68f1e5502935853ed054511f + +# ECDH Bob with Alice peer +Derive=BOB_wap-wsg-idm-ecid-wtls3 +PeerKey=ALICE_wap-wsg-idm-ecid-wtls3_PUB +SharedSecret=00cf1d850f396436be68f1e5502935853ed054511f + +# TEST CURVE wap-wsg-idm-ecid-wtls4 + +PrivateKey=ALICE_wap-wsg-idm-ecid-wtls4 +-----BEGIN EC PRIVATE KEY----- +MEECAQEEDwCy4Qa59I1KsM+7djU1qaAHBgVnKwEEBKEiAyAABABy89FsCuyR4Gzp +bag56wAcxCjwuT8UdxgpR8w4pg== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_wap-wsg-idm-ecid-wtls4_PUB +-----BEGIN PUBLIC KEY----- +MDQwEAYHKoZIzj0CAQYFZysBBAQDIAAEAHLz0WwK7JHgbOltqDnrABzEKPC5PxR3 +GClHzDim +-----END PUBLIC KEY----- + +PrivateKey=BOB_wap-wsg-idm-ecid-wtls4 +-----BEGIN EC PRIVATE KEY----- +MEECAQEEDwAUnCZSQptZ2bO+q/4BtaAHBgVnKwEEBKEiAyAABAGuI4lLJEviujnk +JsLB6QGW4QrAh8/rg58kIR9ZNQ== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_wap-wsg-idm-ecid-wtls4_PUB +-----BEGIN PUBLIC KEY----- +MDQwEAYHKoZIzj0CAQYFZysBBAQDIAAEAa4jiUskS+K6OeQmwsHpAZbhCsCHz+uD +nyQhH1k1 +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_wap-wsg-idm-ecid-wtls4 +PeerKey=BOB_wap-wsg-idm-ecid-wtls4_PUB +SharedSecret=01076232302ca32b5f3daf075e5213 + +# ECDH Bob with Alice peer +Derive=BOB_wap-wsg-idm-ecid-wtls4 +PeerKey=ALICE_wap-wsg-idm-ecid-wtls4_PUB +SharedSecret=01076232302ca32b5f3daf075e5213 + +# TEST CURVE wap-wsg-idm-ecid-wtls5 + +PrivateKey=ALICE_wap-wsg-idm-ecid-wtls5 +-----BEGIN EC PRIVATE KEY----- +MFMCAQEEFQKaeBto7ZL/9NrRlSGf+dtnJ1MoP6AHBgVnKwEEBaEuAywABADXv3aJ +3eEsi7bPQoQKQEJRtNI/1QUu7YVMmQtryo/hkisG3kVcomjYPA== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_wap-wsg-idm-ecid-wtls5_PUB +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFZysBBAUDLAAEANe/dond4SyLts9ChApAQlG00j/VBS7t +hUyZC2vKj+GSKwbeRVyiaNg8 +-----END PUBLIC KEY----- + +PrivateKey=BOB_wap-wsg-idm-ecid-wtls5 +-----BEGIN EC PRIVATE KEY----- +MFMCAQEEFQGtprhp5jEd30cnS8sigLBq4Yp33KAHBgVnKwEEBaEuAywABAfNzYWB +8kZqw2Uxwk0MOs1ASWEDVwcPiLOoR52YLe54y7vb9KlUXY+mKA== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_wap-wsg-idm-ecid-wtls5_PUB +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFZysBBAUDLAAEB83NhYHyRmrDZTHCTQw6zUBJYQNXBw+I +s6hHnZgt7njLu9v0qVRdj6Yo +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_wap-wsg-idm-ecid-wtls5 +PeerKey=BOB_wap-wsg-idm-ecid-wtls5_PUB +SharedSecret=066091c591278f5b949106052b2546aacc20917c20 + +# ECDH Bob with Alice peer +Derive=BOB_wap-wsg-idm-ecid-wtls5 +PeerKey=ALICE_wap-wsg-idm-ecid-wtls5_PUB +SharedSecret=066091c591278f5b949106052b2546aacc20917c20 + +# TEST CURVE wap-wsg-idm-ecid-wtls6 + +PrivateKey=ALICE_wap-wsg-idm-ecid-wtls6 +-----BEGIN EC PRIVATE KEY----- +MD4CAQEEDksnBE2s80zAbKgE/3lroAcGBWcrAQQGoSADHgAExnEWLvXVaXmvu1vV +cn18ncfVbUwq9Wti9+Y0Wg== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_wap-wsg-idm-ecid-wtls6_PUB +-----BEGIN PUBLIC KEY----- +MDIwEAYHKoZIzj0CAQYFZysBBAYDHgAExnEWLvXVaXmvu1vVcn18ncfVbUwq9Wti +9+Y0Wg== +-----END PUBLIC KEY----- + +PrivateKey=BOB_wap-wsg-idm-ecid-wtls6 +-----BEGIN EC PRIVATE KEY----- +MD4CAQEEDreLXPgqXwEQTUjcJhT0oAcGBWcrAQQGoSADHgAEbcW3kXzC+caKZQCY +ZCt+oCVUkp3OE1Jre/jspw== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_wap-wsg-idm-ecid-wtls6_PUB +-----BEGIN PUBLIC KEY----- +MDIwEAYHKoZIzj0CAQYFZysBBAYDHgAEbcW3kXzC+caKZQCYZCt+oCVUkp3OE1Jr +e/jspw== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_wap-wsg-idm-ecid-wtls6 +PeerKey=BOB_wap-wsg-idm-ecid-wtls6_PUB +SharedSecret=8d184455748c56115ba2183070b0 + +# ECDH Bob with Alice peer +Derive=BOB_wap-wsg-idm-ecid-wtls6 +PeerKey=ALICE_wap-wsg-idm-ecid-wtls6_PUB +SharedSecret=8d184455748c56115ba2183070b0 + +# TEST CURVE wap-wsg-idm-ecid-wtls7 + +PrivateKey=ALICE_wap-wsg-idm-ecid-wtls7 +-----BEGIN EC PRIVATE KEY----- +MFECAQEEFQC56iKyI36W4kTLTB2IjuNwAuVOoKAHBgVnKwEEB6EsAyoABD8VawbE +Py+68QVZd9ZF46q8HOpasX2Z0x5N44TXL2v0844hRUk820s= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_wap-wsg-idm-ecid-wtls7_PUB +-----BEGIN PUBLIC KEY----- +MD4wEAYHKoZIzj0CAQYFZysBBAcDKgAEPxVrBsQ/L7rxBVl31kXjqrwc6lqxfZnT +Hk3jhNcva/TzjiFFSTzbSw== +-----END PUBLIC KEY----- + +PrivateKey=BOB_wap-wsg-idm-ecid-wtls7 +-----BEGIN EC PRIVATE KEY----- +MFECAQEEFQCvja8qNtRcVqTaZXMVim7KE39wPKAHBgVnKwEEB6EsAyoABIlmm4WD +6fy+xy6r6mp8UU9h6ad8t2F0AHgmh19HcnkHO7ruESZsgpA= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_wap-wsg-idm-ecid-wtls7_PUB +-----BEGIN PUBLIC KEY----- +MD4wEAYHKoZIzj0CAQYFZysBBAcDKgAEiWabhYPp/L7HLqvqanxRT2Hpp3y3YXQA +eCaHX0dyeQc7uu4RJmyCkA== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_wap-wsg-idm-ecid-wtls7 +PeerKey=BOB_wap-wsg-idm-ecid-wtls7_PUB +SharedSecret=990eda6a0406caef965018b97c94d0faa200f6e4 + +# ECDH Bob with Alice peer +Derive=BOB_wap-wsg-idm-ecid-wtls7 +PeerKey=ALICE_wap-wsg-idm-ecid-wtls7_PUB +SharedSecret=990eda6a0406caef965018b97c94d0faa200f6e4 + +# TEST CURVE wap-wsg-idm-ecid-wtls8 + +PrivateKey=ALICE_wap-wsg-idm-ecid-wtls8 +-----BEGIN EC PRIVATE KEY----- +MD8CAQEEDwDWbrZ9+XqeK4zjpc5TKKAHBgVnKwEECKEgAx4ABPiapgCh7s0S0p8Q +xCzah8ieFlFkIWsVTlyMRaI= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_wap-wsg-idm-ecid-wtls8_PUB +-----BEGIN PUBLIC KEY----- +MDIwEAYHKoZIzj0CAQYFZysBBAgDHgAE+JqmAKHuzRLSnxDELNqHyJ4WUWQhaxVO +XIxFog== +-----END PUBLIC KEY----- + +PrivateKey=BOB_wap-wsg-idm-ecid-wtls8 +-----BEGIN EC PRIVATE KEY----- +MD8CAQEEDwB6BOsugxHI+XhTjE52DqAHBgVnKwEECKEgAx4ABNAqTJDeMvYSS7oL +69JBrNuONKTM17rs5xyqPY8= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_wap-wsg-idm-ecid-wtls8_PUB +-----BEGIN PUBLIC KEY----- +MDIwEAYHKoZIzj0CAQYFZysBBAgDHgAE0CpMkN4y9hJLugvr0kGs2440pMzXuuzn +HKo9jw== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_wap-wsg-idm-ecid-wtls8 +PeerKey=BOB_wap-wsg-idm-ecid-wtls8_PUB +SharedSecret=7524c547bd6b26644ce70571cb06 + +# ECDH Bob with Alice peer +Derive=BOB_wap-wsg-idm-ecid-wtls8 +PeerKey=ALICE_wap-wsg-idm-ecid-wtls8_PUB +SharedSecret=7524c547bd6b26644ce70571cb06 + +# TEST CURVE wap-wsg-idm-ecid-wtls9 + +PrivateKey=ALICE_wap-wsg-idm-ecid-wtls9 +-----BEGIN EC PRIVATE KEY----- +MFECAQEEFQATTfvo2/OwheLpdp2tWfjTqhtNEKAHBgVnKwEECaEsAyoABFsLXLD1 +/W4E5WUx/lkVB7BODJzzUCqHZMUxJF+6MIiF28ZNiBG27oU= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_wap-wsg-idm-ecid-wtls9_PUB +-----BEGIN PUBLIC KEY----- +MD4wEAYHKoZIzj0CAQYFZysBBAkDKgAEWwtcsPX9bgTlZTH+WRUHsE4MnPNQKodk +xTEkX7owiIXbxk2IEbbuhQ== +-----END PUBLIC KEY----- + +PrivateKey=BOB_wap-wsg-idm-ecid-wtls9 +-----BEGIN EC PRIVATE KEY----- +MFECAQEEFQB3aR8xyVolTZuDxrJOuNmiiUjzbKAHBgVnKwEECaEsAyoABDQ15b1M +qFB4WutPIxH0Zvnn4Gd4JBIHIBKEzwOfdXUUVjPufTJu8Fc= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_wap-wsg-idm-ecid-wtls9_PUB +-----BEGIN PUBLIC KEY----- +MD4wEAYHKoZIzj0CAQYFZysBBAkDKgAENDXlvUyoUHha608jEfRm+efgZ3gkEgcg +EoTPA591dRRWM+59Mm7wVw== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_wap-wsg-idm-ecid-wtls9 +PeerKey=BOB_wap-wsg-idm-ecid-wtls9_PUB +SharedSecret=5ca1d9eed44def2c390fd5bbb16ca2c3a09eb7b1 + +# ECDH Bob with Alice peer +Derive=BOB_wap-wsg-idm-ecid-wtls9 +PeerKey=ALICE_wap-wsg-idm-ecid-wtls9_PUB +SharedSecret=5ca1d9eed44def2c390fd5bbb16ca2c3a09eb7b1 + +# TEST CURVE wap-wsg-idm-ecid-wtls10 + +PrivateKey=ALICE_wap-wsg-idm-ecid-wtls10 +-----BEGIN EC PRIVATE KEY----- +MG0CAQEEHTVMOCMgZ36Bc9nh6xCdbPP/LW/MmeJQEzlc3I+roAcGBWcrAQQKoUAD +PgAEAdWzmBilsnOrI7wuTeeRPCG7gG5dvjC2uAZxjYtPAbGQLhmrhqoujCx7EaNV +rQiMYp1bPn9N/AvAak3g +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_wap-wsg-idm-ecid-wtls10_PUB +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFZysBBAoDPgAEAdWzmBilsnOrI7wuTeeRPCG7gG5dvjC2 +uAZxjYtPAbGQLhmrhqoujCx7EaNVrQiMYp1bPn9N/AvAak3g +-----END PUBLIC KEY----- + +PrivateKey=BOB_wap-wsg-idm-ecid-wtls10 +-----BEGIN EC PRIVATE KEY----- +MG0CAQEEHSZOrBjAHJG67jNxTVAspwabzB7C5qgqpVKmnzFBoAcGBWcrAQQKoUAD +PgAEAQXjFOtYAgXURpw0ypMbeTDHBqu0AoUWrI6V77AHAOLqCtrtwVV50PWnlHAP +iBlThDOAItLBrvFlsHOC +-----END EC PRIVATE KEY----- + +PublicKey=BOB_wap-wsg-idm-ecid-wtls10_PUB +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFZysBBAoDPgAEAQXjFOtYAgXURpw0ypMbeTDHBqu0AoUW +rI6V77AHAOLqCtrtwVV50PWnlHAPiBlThDOAItLBrvFlsHOC +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_wap-wsg-idm-ecid-wtls10 +PeerKey=BOB_wap-wsg-idm-ecid-wtls10_PUB +SharedSecret=0199de137bc263e25b543994d6315b5a3f1e38e7e1f60662cb5cbaab5f98 + +# ECDH Bob with Alice peer +Derive=BOB_wap-wsg-idm-ecid-wtls10 +PeerKey=ALICE_wap-wsg-idm-ecid-wtls10_PUB +SharedSecret=0199de137bc263e25b543994d6315b5a3f1e38e7e1f60662cb5cbaab5f98 + +# TEST CURVE wap-wsg-idm-ecid-wtls11 + +PrivateKey=ALICE_wap-wsg-idm-ecid-wtls11 +-----BEGIN EC PRIVATE KEY----- +MG4CAQEEHgC7qWvMLdEiTeNea1t44Cktk9HQ1Suvp1N/WVIIaqAHBgVnKwEEC6FA +Az4ABAGXvdXZMRnwE7hAL5iIGUnQaZbxYtzdG1LeIiv+hQBoNBAAZUkUPcaCGME9 +8j0pUFxnY/y1RdS/mJ+tZw== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_wap-wsg-idm-ecid-wtls11_PUB +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFZysBBAsDPgAEAZe91dkxGfATuEAvmIgZSdBplvFi3N0b +Ut4iK/6FAGg0EABlSRQ9xoIYwT3yPSlQXGdj/LVF1L+Yn61n +-----END PUBLIC KEY----- + +PrivateKey=BOB_wap-wsg-idm-ecid-wtls11 +-----BEGIN EC PRIVATE KEY----- +MG4CAQEEHgAYm4a1AjUW8d+nYCx0pvc1VZrCOllC7IzVp6XCzaAHBgVnKwEEC6FA +Az4ABAB1NbfFToiN/9jzflnaFLh86fpeanc7qJuVceucqgE5G7EdVF9eR90vlOp8 +Wm4OCHMLIBLpkxJaGMZXmg== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_wap-wsg-idm-ecid-wtls11_PUB +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFZysBBAsDPgAEAHU1t8VOiI3/2PN+WdoUuHzp+l5qdzuo +m5Vx65yqATkbsR1UX15H3S+U6nxabg4IcwsgEumTEloYxlea +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_wap-wsg-idm-ecid-wtls11 +PeerKey=BOB_wap-wsg-idm-ecid-wtls11_PUB +SharedSecret=01ee4b517d8a64be5ee32e10152c7bbcb8cde73a3da8e9643bce173011f7 + +# ECDH Bob with Alice peer +Derive=BOB_wap-wsg-idm-ecid-wtls11 +PeerKey=ALICE_wap-wsg-idm-ecid-wtls11_PUB +SharedSecret=01ee4b517d8a64be5ee32e10152c7bbcb8cde73a3da8e9643bce173011f7 + +# TEST CURVE wap-wsg-idm-ecid-wtls12 + +PrivateKey=ALICE_wap-wsg-idm-ecid-wtls12 +-----BEGIN EC PRIVATE KEY----- +MGgCAQEEHICdS9BmFmvWWBNGLFIwjHQoe5Xi3xxtcJbjXmygBwYFZysBBAyhPAM6 +AATcbzAiX1InSYCa4gxZsmkWN/3A7yAo27qcCnJ7f1iGld5hEv+ebsboeaKIDk7W +K51YLeENsEfRxw== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_wap-wsg-idm-ecid-wtls12_PUB +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFZysBBAwDOgAE3G8wIl9SJ0mAmuIMWbJpFjf9wO8gKNu6 +nApye39YhpXeYRL/nm7G6HmiiA5O1iudWC3hDbBH0cc= +-----END PUBLIC KEY----- + +PrivateKey=BOB_wap-wsg-idm-ecid-wtls12 +-----BEGIN EC PRIVATE KEY----- +MGgCAQEEHNnue3gKs+uTabmJHri+mSP3kkc6bNZ/hWFFmp2gBwYFZysBBAyhPAM6 +AAS6TPjQjiBalSZcIz48uZYZ3Qg7Rcg9Br0pfNe+Fst0kfTIWQn4KVJug4LbqC0x +MgKI+ESBiN4oRA== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_wap-wsg-idm-ecid-wtls12_PUB +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFZysBBAwDOgAEukz40I4gWpUmXCM+PLmWGd0IO0XIPQa9 +KXzXvhbLdJH0yFkJ+ClSboOC26gtMTICiPhEgYjeKEQ= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_wap-wsg-idm-ecid-wtls12 +PeerKey=BOB_wap-wsg-idm-ecid-wtls12_PUB +SharedSecret=c75a8283a73312de82c8f99d41a9173a43b8f921e8161dd140131b36 + +# ECDH Bob with Alice peer +Derive=BOB_wap-wsg-idm-ecid-wtls12 +PeerKey=ALICE_wap-wsg-idm-ecid-wtls12_PUB +SharedSecret=c75a8283a73312de82c8f99d41a9173a43b8f921e8161dd140131b36 + +# TEST CURVE brainpoolP160r1 + +PrivateKey=ALICE_brainpoolP160r1 +-----BEGIN EC PRIVATE KEY----- +MFQCAQEEFGU0GLeiDrGVFIK9+lmBik49dHq0oAsGCSskAwMCCAEBAaEsAyoABCQx +/ve3cKi/Zx17M9JS31afTJ2GmT37YfBnXdi59TJ9y8+KN0n/MU4= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP160r1_PUB +-----BEGIN PUBLIC KEY----- +MEIwFAYHKoZIzj0CAQYJKyQDAwIIAQEBAyoABCQx/ve3cKi/Zx17M9JS31afTJ2G +mT37YfBnXdi59TJ9y8+KN0n/MU4= +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP160r1 +-----BEGIN EC PRIVATE KEY----- +MFQCAQEEFG/7pSERuMqDjooVgwFeJe/CNhi1oAsGCSskAwMCCAEBAaEsAyoABE+M +Qx609ZLgWWAUIe9V8rWdMr9MuxhJwet6B5kBmqfyBoW+CrhsTy8= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP160r1_PUB +-----BEGIN PUBLIC KEY----- +MEIwFAYHKoZIzj0CAQYJKyQDAwIIAQEBAyoABE+MQx609ZLgWWAUIe9V8rWdMr9M +uxhJwet6B5kBmqfyBoW+CrhsTy8= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP160r1 +PeerKey=BOB_brainpoolP160r1_PUB +SharedSecret=e4fe5ae99a60d17b597f5705a719cea6709c63b9 + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP160r1 +PeerKey=ALICE_brainpoolP160r1_PUB +SharedSecret=e4fe5ae99a60d17b597f5705a719cea6709c63b9 + +# TEST CURVE brainpoolP160t1 + +PrivateKey=ALICE_brainpoolP160t1 +-----BEGIN EC PRIVATE KEY----- +MFQCAQEEFFlgMlJzL5kMninhxGyI8q1tCc1aoAsGCSskAwMCCAEBAqEsAyoABD+H +VVI8q+fZxM+Z8yrQVnebHKmMIha0Ixq/sYf0VvL6QKtYoDSUVXA= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP160t1_PUB +-----BEGIN PUBLIC KEY----- +MEIwFAYHKoZIzj0CAQYJKyQDAwIIAQECAyoABD+HVVI8q+fZxM+Z8yrQVnebHKmM +Iha0Ixq/sYf0VvL6QKtYoDSUVXA= +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP160t1 +-----BEGIN EC PRIVATE KEY----- +MFQCAQEEFAxaVMfEme9fF9HML/qEGk10itM8oAsGCSskAwMCCAEBAqEsAyoABAiA +NiG7L1yPTggUTQt+iuAk+32uByO47zVXpZH4Tcs0RMmtizLVf2Q= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP160t1_PUB +-----BEGIN PUBLIC KEY----- +MEIwFAYHKoZIzj0CAQYJKyQDAwIIAQECAyoABAiANiG7L1yPTggUTQt+iuAk+32u +ByO47zVXpZH4Tcs0RMmtizLVf2Q= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP160t1 +PeerKey=BOB_brainpoolP160t1_PUB +SharedSecret=199a218458b71a4e13f05a599fc17bc76f30ea2f + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP160t1 +PeerKey=ALICE_brainpoolP160t1_PUB +SharedSecret=199a218458b71a4e13f05a599fc17bc76f30ea2f + +# TEST CURVE brainpoolP192r1 + +PrivateKey=ALICE_brainpoolP192r1 +-----BEGIN EC PRIVATE KEY----- +MGACAQEEGBoiKWVUe9Qt9W/QBJS4hIhMs3YUbL025KALBgkrJAMDAggBAQOhNAMy +AAQcCi9Vkl+bnYpaomv0grPvDtNr7sdQ3kGPL6pHzuQ6jec/7jf1Ms6ziIOEi/M/ +yPU= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP192r1_PUB +-----BEGIN PUBLIC KEY----- +MEowFAYHKoZIzj0CAQYJKyQDAwIIAQEDAzIABBwKL1WSX5udilqia/SCs+8O02vu +x1DeQY8vqkfO5DqN5z/uN/UyzrOIg4SL8z/I9Q== +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP192r1 +-----BEGIN EC PRIVATE KEY----- +MGACAQEEGJLrfB5Y8Ms8TgKygGs4pW6APMmOqMuLL6ALBgkrJAMDAggBAQOhNAMy +AAS//c2Gt1UQD48wUKb6a5eGsLTDFflQe8JR384DJ1pzYmXtdXDaBLiF9eRN5Psx +Ay4= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP192r1_PUB +-----BEGIN PUBLIC KEY----- +MEowFAYHKoZIzj0CAQYJKyQDAwIIAQEDAzIABL/9zYa3VRAPjzBQpvprl4awtMMV ++VB7wlHfzgMnWnNiZe11cNoEuIX15E3k+zEDLg== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP192r1 +PeerKey=BOB_brainpoolP192r1_PUB +SharedSecret=7ce122b49afdfd1adde6cdfaa13dc7180d6d4e70322c8773 + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP192r1 +PeerKey=ALICE_brainpoolP192r1_PUB +SharedSecret=7ce122b49afdfd1adde6cdfaa13dc7180d6d4e70322c8773 + +# TEST CURVE brainpoolP192t1 + +PrivateKey=ALICE_brainpoolP192t1 +-----BEGIN EC PRIVATE KEY----- +MGACAQEEGAldTbmMOw8DmsKoGJAC3xaRMxRNq416mKALBgkrJAMDAggBAQShNAMy +AASYGYnbbT9klV3F9KAcVPPcU4LY8eqXYi1sbQtez+/uf+qRYZbP0HtHYUGoVosG +TQs= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP192t1_PUB +-----BEGIN PUBLIC KEY----- +MEowFAYHKoZIzj0CAQYJKyQDAwIIAQEEAzIABJgZidttP2SVXcX0oBxU89xTgtjx +6pdiLWxtC17P7+5/6pFhls/Qe0dhQahWiwZNCw== +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP192t1 +-----BEGIN EC PRIVATE KEY----- +MGACAQEEGJmT9r5mKXyb0p6hJeCtGI9IjAq+HbPW26ALBgkrJAMDAggBAQShNAMy +AARxK4tIQPazhIi4R2iZlt0MxKY2umd7MlG/9b5sJCnhtydABvbS2njshLD/JehB +IDQ= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP192t1_PUB +-----BEGIN PUBLIC KEY----- +MEowFAYHKoZIzj0CAQYJKyQDAwIIAQEEAzIABHEri0hA9rOEiLhHaJmW3QzEpja6 +Z3syUb/1vmwkKeG3J0AG9tLaeOyEsP8l6EEgNA== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP192t1 +PeerKey=BOB_brainpoolP192t1_PUB +SharedSecret=1a5444c2600d9d21d6a450d158fd25272ade262ab519790b + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP192t1 +PeerKey=ALICE_brainpoolP192t1_PUB +SharedSecret=1a5444c2600d9d21d6a450d158fd25272ade262ab519790b + +# TEST CURVE brainpoolP224r1 + +PrivateKey=ALICE_brainpoolP224r1 +-----BEGIN EC PRIVATE KEY----- +MGwCAQEEHIfdRZjs/bSfVn3csJKzjOlF4p07mAcY1FrVNBygCwYJKyQDAwIIAQEF +oTwDOgAEirRPkAknN0OX3BtirLETEx9Ns0O3pb+i6d1lNLqpdi8x6An6cFxd4KL4 +UEjSm7qUe/y0XVmNYtI= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP224r1_PUB +-----BEGIN PUBLIC KEY----- +MFIwFAYHKoZIzj0CAQYJKyQDAwIIAQEFAzoABIq0T5AJJzdDl9wbYqyxExMfTbND +t6W/oundZTS6qXYvMegJ+nBcXeCi+FBI0pu6lHv8tF1ZjWLS +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP224r1 +-----BEGIN EC PRIVATE KEY----- +MGwCAQEEHL2m5CVp60eC7hlMXyzvA6gwXC+Hosf2tKkVsZugCwYJKyQDAwIIAQEF +oTwDOgAEzqqAEj1uZnDJgTRAUEl/k2ld7amGBw5sqsbhRGN2w5GXhQnCWrt4vAg0 +ks/10+XRCVvQW/+A1Wg= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP224r1_PUB +-----BEGIN PUBLIC KEY----- +MFIwFAYHKoZIzj0CAQYJKyQDAwIIAQEFAzoABM6qgBI9bmZwyYE0QFBJf5NpXe2p +hgcObKrG4URjdsORl4UJwlq7eLwINJLP9dPl0Qlb0Fv/gNVo +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP224r1 +PeerKey=BOB_brainpoolP224r1_PUB +SharedSecret=419e446a66968fcc372126cff4d637505c848c3a9b82503f2d441215 + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP224r1 +PeerKey=ALICE_brainpoolP224r1_PUB +SharedSecret=419e446a66968fcc372126cff4d637505c848c3a9b82503f2d441215 + +# TEST CURVE brainpoolP224t1 + +PrivateKey=ALICE_brainpoolP224t1 +-----BEGIN EC PRIVATE KEY----- +MGwCAQEEHEsFgnKmLojcsUdIGFQjAUNe8pH2sRIDDMgcmaKgCwYJKyQDAwIIAQEG +oTwDOgAEmJWHAhkCrL44qPxF7COx1c88I4N+b7hEZXzZtgtbxKqIN4QMH5G8mKtj +DP9rlGL4QvleT1BWRAU= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP224t1_PUB +-----BEGIN PUBLIC KEY----- +MFIwFAYHKoZIzj0CAQYJKyQDAwIIAQEGAzoABJiVhwIZAqy+OKj8RewjsdXPPCOD +fm+4RGV82bYLW8SqiDeEDB+RvJirYwz/a5Ri+EL5Xk9QVkQF +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP224t1 +-----BEGIN EC PRIVATE KEY----- +MGwCAQEEHCyuUfonb86gtWtvBnvZuhIebqfNmrVUk0Vnl8CgCwYJKyQDAwIIAQEG +oTwDOgAEGDpqveWRhK/QBw4znjZJs+ECrGfL9qdL4OgQtWIzSuh/GVy+TLBmIFjR +PjTFS9cEgsOxj/SF7bY= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP224t1_PUB +-----BEGIN PUBLIC KEY----- +MFIwFAYHKoZIzj0CAQYJKyQDAwIIAQEGAzoABBg6ar3lkYSv0AcOM542SbPhAqxn +y/anS+DoELViM0rofxlcvkywZiBY0T40xUvXBILDsY/0he22 +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP224t1 +PeerKey=BOB_brainpoolP224t1_PUB +SharedSecret=8f83465fb6353912a51c2809ea30b19b73b3e391c0422650e0f20b58 + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP224t1 +PeerKey=ALICE_brainpoolP224t1_PUB +SharedSecret=8f83465fb6353912a51c2809ea30b19b73b3e391c0422650e0f20b58 + +# TEST CURVE brainpoolP256r1 + +PrivateKey=ALICE_brainpoolP256r1 +-----BEGIN EC PRIVATE KEY----- +MHgCAQEEIBMmEFKb8UQb4oCuk226EiMpk/omRsx/rrRNuh9WGB/zoAsGCSskAwMC +CAEBB6FEA0IABHiGHSaSKZMZ3imy/aj/70idv3e3BwrNmV4IHEYn+yijeeSKIre0 +NbFRHhsxAxW8aUViugPioLvLBZBPix6+QRk= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP256r1_PUB +-----BEGIN PUBLIC KEY----- +MFowFAYHKoZIzj0CAQYJKyQDAwIIAQEHA0IABHiGHSaSKZMZ3imy/aj/70idv3e3 +BwrNmV4IHEYn+yijeeSKIre0NbFRHhsxAxW8aUViugPioLvLBZBPix6+QRk= +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP256r1 +-----BEGIN EC PRIVATE KEY----- +MHgCAQEEIKXsf2pxFfTQiwbW2SKwZq50UOGhJYJZYO/xY33RHuQaoAsGCSskAwMC +CAEBB6FEA0IABAvxQjYcsWeFXB2PMwXoRW4NzOeAFMOosSevYCNvsaMgFwZ+XfqX +/LQBtA9E1KrcUbcAYD1pLeqWOGGAUDGPjTg= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP256r1_PUB +-----BEGIN PUBLIC KEY----- +MFowFAYHKoZIzj0CAQYJKyQDAwIIAQEHA0IABAvxQjYcsWeFXB2PMwXoRW4NzOeA +FMOosSevYCNvsaMgFwZ+XfqX/LQBtA9E1KrcUbcAYD1pLeqWOGGAUDGPjTg= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP256r1 +PeerKey=BOB_brainpoolP256r1_PUB +SharedSecret=78ed4b7bb4ed808813f8c27132fe04f5d805365549b754994d83b002416b6ba0 + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP256r1 +PeerKey=ALICE_brainpoolP256r1_PUB +SharedSecret=78ed4b7bb4ed808813f8c27132fe04f5d805365549b754994d83b002416b6ba0 + +# TEST CURVE brainpoolP256t1 + +PrivateKey=ALICE_brainpoolP256t1 +-----BEGIN EC PRIVATE KEY----- +MHgCAQEEIC4yFvVLhvRyF9wuyYJbncxLagsMCD+Sxt2vAJiKFpKdoAsGCSskAwMC +CAEBCKFEA0IABIhsZfBNMo94BOIjshQ1XtLVGEvXzXDc5MRMdgomcJtPY20jUBdq +SgKApi2UGvFQc/lGanXl2cvUnPFKSVNxYIY= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP256t1_PUB +-----BEGIN PUBLIC KEY----- +MFowFAYHKoZIzj0CAQYJKyQDAwIIAQEIA0IABIhsZfBNMo94BOIjshQ1XtLVGEvX +zXDc5MRMdgomcJtPY20jUBdqSgKApi2UGvFQc/lGanXl2cvUnPFKSVNxYIY= +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP256t1 +-----BEGIN EC PRIVATE KEY----- +MHgCAQEEIIfXus/y+3RdwUZ00db3boxPCzzRcI3CgIC8ggdGDPqPoAsGCSskAwMC +CAEBCKFEA0IABHZWdsjogbJkRD2sPE7KxjZkyy+qtZVc/PjkO/NF8X6PVSBXkdEG +5PAoKl9JVreYWxG28xGxeiNp2QiZ3UPVSKA= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP256t1_PUB +-----BEGIN PUBLIC KEY----- +MFowFAYHKoZIzj0CAQYJKyQDAwIIAQEIA0IABHZWdsjogbJkRD2sPE7KxjZkyy+q +tZVc/PjkO/NF8X6PVSBXkdEG5PAoKl9JVreYWxG28xGxeiNp2QiZ3UPVSKA= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP256t1 +PeerKey=BOB_brainpoolP256t1_PUB +SharedSecret=287a8f19e6f06476b222805eb11907c536fa6ea02b8877ea6d5323f9fabccdd8 + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP256t1 +PeerKey=ALICE_brainpoolP256t1_PUB +SharedSecret=287a8f19e6f06476b222805eb11907c536fa6ea02b8877ea6d5323f9fabccdd8 + +# TEST CURVE brainpoolP320r1 + +PrivateKey=ALICE_brainpoolP320r1 +-----BEGIN EC PRIVATE KEY----- +MIGQAgEBBChEG+GykvgdkDphx+i7OI1YW4TV7VFw3r3GWwnw4ZkQyhtXb2me1CVJ +oAsGCSskAwMCCAEBCaFUA1IABFDmVKAu6UDU1doe67Fzp3WeLAKNcaLjX13W0X70 +4bqNvSU7q747RCCbd46miRYsiqYejnsX0A/A5bOiI1LJixCGcAgm1pnGajKeok/e +csl+ +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP320r1_PUB +-----BEGIN PUBLIC KEY----- +MGowFAYHKoZIzj0CAQYJKyQDAwIIAQEJA1IABFDmVKAu6UDU1doe67Fzp3WeLAKN +caLjX13W0X704bqNvSU7q747RCCbd46miRYsiqYejnsX0A/A5bOiI1LJixCGcAgm +1pnGajKeok/ecsl+ +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP320r1 +-----BEGIN EC PRIVATE KEY----- +MIGQAgEBBCiL2CGoxCnxl3HFVe44wLrq1Ui9ND0Rfq1pYsPLzZ4FEC3swi1vktoy +oAsGCSskAwMCCAEBCaFUA1IABHFexsmyGSMPdLCma5vzaFlbk/gAkq6yfpE+BMok +I+7GXx4dJz9+sKOi8h++T4SnocW03M7I5zOQVfK+82Kkq/vXCzEdkVRUPU4HVls7 +nil0 +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP320r1_PUB +-----BEGIN PUBLIC KEY----- +MGowFAYHKoZIzj0CAQYJKyQDAwIIAQEJA1IABHFexsmyGSMPdLCma5vzaFlbk/gA +kq6yfpE+BMokI+7GXx4dJz9+sKOi8h++T4SnocW03M7I5zOQVfK+82Kkq/vXCzEd +kVRUPU4HVls7nil0 +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP320r1 +PeerKey=BOB_brainpoolP320r1_PUB +SharedSecret=13a56c63c2dafe3e053534d5bf32c7eb4a0733bf356510725d378c5cbcf6974240719e3e53b352bb + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP320r1 +PeerKey=ALICE_brainpoolP320r1_PUB +SharedSecret=13a56c63c2dafe3e053534d5bf32c7eb4a0733bf356510725d378c5cbcf6974240719e3e53b352bb + +# TEST CURVE brainpoolP320t1 + +PrivateKey=ALICE_brainpoolP320t1 +-----BEGIN EC PRIVATE KEY----- +MIGQAgEBBCjGX454gtrCjrkzhhu0tIBFdgmwUmLgXxxQXq9+jWzBGgIvqwCdXRBJ +oAsGCSskAwMCCAEBCqFUA1IABFN48RBqcd0PyU7NTRjaJsUaYXBlectX7JwhB/X/ +bbuNUK1YW9tZJZSZ/bBUfVfEgUhC+0qrvomc3xhyYBJIQeGWODwC1rHjO2H7GGvx +1HmF +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP320t1_PUB +-----BEGIN PUBLIC KEY----- +MGowFAYHKoZIzj0CAQYJKyQDAwIIAQEKA1IABFN48RBqcd0PyU7NTRjaJsUaYXBl +ectX7JwhB/X/bbuNUK1YW9tZJZSZ/bBUfVfEgUhC+0qrvomc3xhyYBJIQeGWODwC +1rHjO2H7GGvx1HmF +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP320t1 +-----BEGIN EC PRIVATE KEY----- +MIGQAgEBBCgyVOIfYIzdcZpVc85Dm12b4Ymac/TeBs0rg863nJCmdbwehodz5JLn +oAsGCSskAwMCCAEBCqFUA1IABLXO5ngGf17dU+aeQetDyXqlTTxtTrav1/NGb+i9 +BQUAsbIMQkdY0zWWbhksoMn56F2DBTSFwBlb1hBtp9fNIGUbgKqOlvtBpQHIoKXY +Eq3l +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP320t1_PUB +-----BEGIN PUBLIC KEY----- +MGowFAYHKoZIzj0CAQYJKyQDAwIIAQEKA1IABLXO5ngGf17dU+aeQetDyXqlTTxt +Trav1/NGb+i9BQUAsbIMQkdY0zWWbhksoMn56F2DBTSFwBlb1hBtp9fNIGUbgKqO +lvtBpQHIoKXYEq3l +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP320t1 +PeerKey=BOB_brainpoolP320t1_PUB +SharedSecret=170d1f5fc4248700be75499eac813fac642df1311ab005e10796cc2ef43b82f8d788eb232d580243 + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP320t1 +PeerKey=ALICE_brainpoolP320t1_PUB +SharedSecret=170d1f5fc4248700be75499eac813fac642df1311ab005e10796cc2ef43b82f8d788eb232d580243 + +# TEST CURVE brainpoolP384r1 + +PrivateKey=ALICE_brainpoolP384r1 +-----BEGIN EC PRIVATE KEY----- +MIGoAgEBBDB5NssOnd89sgvzDsj5pDNTx51VdeIW23xSXHsdK4C8e7+5p550IoD6 +xcpd7ff9qgOgCwYJKyQDAwIIAQELoWQDYgAEgQEp8Mrclp7hd1kkTnaXCEzAyhlM +UtBIXQGI8ALS3FaMoL4mjIlhAU+vNdIcI9NGBx7QFRUzFIy3IAyF+VPq8fM7Yyjk +0x4P8UB1N+d2odKvKFqFBQBQmd6S5h+0ijis +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP384r1_PUB +-----BEGIN PUBLIC KEY----- +MHowFAYHKoZIzj0CAQYJKyQDAwIIAQELA2IABIEBKfDK3Jae4XdZJE52lwhMwMoZ +TFLQSF0BiPAC0txWjKC+JoyJYQFPrzXSHCPTRgce0BUVMxSMtyAMhflT6vHzO2Mo +5NMeD/FAdTfndqHSryhahQUAUJnekuYftIo4rA== +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP384r1 +-----BEGIN EC PRIVATE KEY----- +MIGoAgEBBDAXoRGwEo8iza9gc2eTJvXl4d9MhDnyqwWUX3SrO050bOHK2JZlc+86 +HiSHO6MV91mgCwYJKyQDAwIIAQELoWQDYgAEDxy4ddTAt+nTw0F16nhHhmmNbns3 +bX3rKEcY+686v58dAvx4VWOC7vHsiwek9ZYbZSkmKy6H78ndkBrmU3BBR7hFGyU7 +CWSDFoH5Oybk0+JzkNa0qAm8+MpAIcFqb+IY +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP384r1_PUB +-----BEGIN PUBLIC KEY----- +MHowFAYHKoZIzj0CAQYJKyQDAwIIAQELA2IABA8cuHXUwLfp08NBdep4R4ZpjW57 +N2196yhHGPuvOr+fHQL8eFVjgu7x7IsHpPWWG2UpJisuh+/J3ZAa5lNwQUe4RRsl +OwlkgxaB+Tsm5NPic5DWtKgJvPjKQCHBam/iGA== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP384r1 +PeerKey=BOB_brainpoolP384r1_PUB +SharedSecret=0b3ad57e83759760d94904d9ea266b538120c6db2b5046217aa1ecd924828b949d335c8ce8a5b36bac7556bf6058c40a + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP384r1 +PeerKey=ALICE_brainpoolP384r1_PUB +SharedSecret=0b3ad57e83759760d94904d9ea266b538120c6db2b5046217aa1ecd924828b949d335c8ce8a5b36bac7556bf6058c40a + +# TEST CURVE brainpoolP384t1 + +PrivateKey=ALICE_brainpoolP384t1 +-----BEGIN EC PRIVATE KEY----- +MIGoAgEBBDBhv/Ff07ybES61s5DBD+kHzraR6r95bGPwZbjWbY6ugS04lkvVKwr/ +xnAAvcF02jKgCwYJKyQDAwIIAQEMoWQDYgAENpcXDPQYBhU8zi4G6mQtjdgVmpdn +4Iuwb0/VVmopmFAL0ISDB0qk9Hn2Lt9rmE8NathqkKKlVHd/Y5FRqf06PZj8jaYH +Axvz5E1J8ykrbT7rUpbj9Df2t+eop9YBbSxc +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP384t1_PUB +-----BEGIN PUBLIC KEY----- +MHowFAYHKoZIzj0CAQYJKyQDAwIIAQEMA2IABDaXFwz0GAYVPM4uBupkLY3YFZqX +Z+CLsG9P1VZqKZhQC9CEgwdKpPR59i7fa5hPDWrYapCipVR3f2ORUan9Oj2Y/I2m +BwMb8+RNSfMpK20+61KW4/Q39rfnqKfWAW0sXA== +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP384t1 +-----BEGIN EC PRIVATE KEY----- +MIGoAgEBBDBsUc4UweUxdFh3b10XofMoyHT13Ds4DLER5E5Oo6MWwj7CFqq0vgZY +fk/RSAU8MAegCwYJKyQDAwIIAQEMoWQDYgAER24uXKoWWnFFusbCPtDzz7n9zDIW +zFqMeP6YE3MOseyfRFcKIVz/omWBVwpUbd3ca6Ord/Mh8hThIV4tZbPUwlyzzEW2 +NMJtd2t5JKdja0aT7fbp7NS9IJzNIRDl7r8z +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP384t1_PUB +-----BEGIN PUBLIC KEY----- +MHowFAYHKoZIzj0CAQYJKyQDAwIIAQEMA2IABEduLlyqFlpxRbrGwj7Q88+5/cwy +FsxajHj+mBNzDrHsn0RXCiFc/6JlgVcKVG3d3Gujq3fzIfIU4SFeLWWz1MJcs8xF +tjTCbXdreSSnY2tGk+326ezUvSCczSEQ5e6/Mw== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP384t1 +PeerKey=BOB_brainpoolP384t1_PUB +SharedSecret=0fde85a61157cdd898196f291802ebd57bb2e39d98c4e6ad9bb3e2e0375e1df9bf7dadb8df7db1fea32818ef2c88babc + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP384t1 +PeerKey=ALICE_brainpoolP384t1_PUB +SharedSecret=0fde85a61157cdd898196f291802ebd57bb2e39d98c4e6ad9bb3e2e0375e1df9bf7dadb8df7db1fea32818ef2c88babc + +# TEST CURVE brainpoolP512r1 + +PrivateKey=ALICE_brainpoolP512r1 +-----BEGIN EC PRIVATE KEY----- +MIHaAgEBBECMxUrk8DnFiTzmA2zbxijR6tBKSCaKV0vtbAxV5PrpqWCghKV4UpP5 +9CQNGV9Io9cJmMrQ2cpfkr2uQybzD3LAoAsGCSskAwMCCAEBDaGBhQOBggAEHlj4 +gsnR2wN53k/hSIcAtbgHwbld5uS1/gR8RtoyaEDit4Ti59/I9kRkZFEHJemhpTP2 +xY03j3M5rHP7vzk1NVKgYHJQ9MvMtPd6G+Fj5D0YN1nnyqP3IJ8PyXmOdXBMoMHu ++H50QbYZpcUFOqJhKp1T0+58xTXJdP8axl1IjtI= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP512r1_PUB +-----BEGIN PUBLIC KEY----- +MIGbMBQGByqGSM49AgEGCSskAwMCCAEBDQOBggAEHlj4gsnR2wN53k/hSIcAtbgH +wbld5uS1/gR8RtoyaEDit4Ti59/I9kRkZFEHJemhpTP2xY03j3M5rHP7vzk1NVKg +YHJQ9MvMtPd6G+Fj5D0YN1nnyqP3IJ8PyXmOdXBMoMHu+H50QbYZpcUFOqJhKp1T +0+58xTXJdP8axl1IjtI= +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP512r1 +-----BEGIN EC PRIVATE KEY----- +MIHaAgEBBEBkDXT6Tj4SyZ6+ORP0t1JfTtqZHBetPsIGcSyRmkeRkShhVBroW4Ts +VqLSSMvzqVQILjGhOMVsfe0susPS/u/CoAsGCSskAwMCCAEBDaGBhQOBggAEo3NA +MIGp0rJxReih4nbEiTegA4pSEk84CUHHBLGuLsekVo1vmj1LTnu4dVuILLf+MSZh +9jjNmsWuEGSHIaZx6hniFHGdaRQ3GFODGvkE6z2d2kwv3Fmsq9+gu4By2OhSCfP+ +hpFhobXAYwWXzgaBFH+TqlF31Dyr2fuPnkL7tK4= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP512r1_PUB +-----BEGIN PUBLIC KEY----- +MIGbMBQGByqGSM49AgEGCSskAwMCCAEBDQOBggAEo3NAMIGp0rJxReih4nbEiTeg +A4pSEk84CUHHBLGuLsekVo1vmj1LTnu4dVuILLf+MSZh9jjNmsWuEGSHIaZx6hni +FHGdaRQ3GFODGvkE6z2d2kwv3Fmsq9+gu4By2OhSCfP+hpFhobXAYwWXzgaBFH+T +qlF31Dyr2fuPnkL7tK4= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP512r1 +PeerKey=BOB_brainpoolP512r1_PUB +SharedSecret=80751feb09215a9da32f9f8c97133f53f0286a89969bd00d7f365da7f7736f45e634a35012d71b22f09bd89760ab0d2b0d426133cd9a379da9739d0f5f2e0360 + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP512r1 +PeerKey=ALICE_brainpoolP512r1_PUB +SharedSecret=80751feb09215a9da32f9f8c97133f53f0286a89969bd00d7f365da7f7736f45e634a35012d71b22f09bd89760ab0d2b0d426133cd9a379da9739d0f5f2e0360 + +# TEST CURVE brainpoolP512t1 + +PrivateKey=ALICE_brainpoolP512t1 +-----BEGIN EC PRIVATE KEY----- +MIHaAgEBBECbwO3WdaC7ErmKqF/qaKD9jty2YyBtEJZIkwx3eXDn+Izia0/1pyGF +oRYYiYhZXoVuvKLom/eeK0IFTGmpESlyoAsGCSskAwMCCAEBDqGBhQOBggAEH/z+ +dOHhLfxI0GLpmUjYaSlC2H380nBhe6P4GSrnpya/Yew0IRyDfo0p99vwgOaLh8wJ +IH3Joy4NMtHthg8IAFmoctAoWkQ21E0HjPjwqZbxmvBD0S9opVycFR8XUSaK0EHy +HO7hfuVsdyYzIIjpKViP7uOOtrggsTepWzBQt9I= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP512t1_PUB +-----BEGIN PUBLIC KEY----- +MIGbMBQGByqGSM49AgEGCSskAwMCCAEBDgOBggAEH/z+dOHhLfxI0GLpmUjYaSlC +2H380nBhe6P4GSrnpya/Yew0IRyDfo0p99vwgOaLh8wJIH3Joy4NMtHthg8IAFmo +ctAoWkQ21E0HjPjwqZbxmvBD0S9opVycFR8XUSaK0EHyHO7hfuVsdyYzIIjpKViP +7uOOtrggsTepWzBQt9I= +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP512t1 +-----BEGIN EC PRIVATE KEY----- +MIHaAgEBBEAVK2tYHA61OVj+kF5PadyNMdw3Mqb6hxOIi+vRFQS5fwhN34vnH0f5 +kuTjhPzn/zKpM+WTpxlIdvJMblSQ8ZW9oAsGCSskAwMCCAEBDqGBhQOBggAEE6EY +YwpBA3NBflj/HYwxzbaxuALefTsTr5O0bLqh4J6SxkAwsQnlkU8PCnzEuvdBNxSw +W7276VGfwDO7kFKEdZq3cnT+P41yi/XBVK7xgaL1R2U+vCxWsje6JLixWEdJkJ+6 +TqPKICdriNge1zbjvfhb01zP58E/Xsgh5/deJco= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP512t1_PUB +-----BEGIN PUBLIC KEY----- +MIGbMBQGByqGSM49AgEGCSskAwMCCAEBDgOBggAEE6EYYwpBA3NBflj/HYwxzbax +uALefTsTr5O0bLqh4J6SxkAwsQnlkU8PCnzEuvdBNxSwW7276VGfwDO7kFKEdZq3 +cnT+P41yi/XBVK7xgaL1R2U+vCxWsje6JLixWEdJkJ+6TqPKICdriNge1zbjvfhb +01zP58E/Xsgh5/deJco= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP512t1 +PeerKey=BOB_brainpoolP512t1_PUB +SharedSecret=0afecb44d108c9bf2bc159fcc613a1429e3906d5d201d579adc2167058e972ef85fc13d837f3566a2ff3a881e47bfe36b722baf4a9f865097fe11e171189a944 + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP512t1 +PeerKey=ALICE_brainpoolP512t1_PUB +SharedSecret=0afecb44d108c9bf2bc159fcc613a1429e3906d5d201d579adc2167058e972ef85fc13d837f3566a2ff3a881e47bfe36b722baf4a9f865097fe11e171189a944 + + +## ECDH Tests: KATs from RFC 5114, RFC 5903 and RFC 7027 + + +# Keys and shared secrets from RFC 5114 +PrivateKey=PRIME192V1_RFC5114 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBgyP6MWnY6cZZP1lHa8 +FCAAq1vg4knENCahNAMyAATNRkiez9bBBeez0yVm4rEi4kmrqt2HBhJoiHtId99R +3U3D1v0R8KJvj9OEQxeRbpo= +-----END PRIVATE KEY----- + +PublicKey=PRIME192V1_RFC5114-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEzUZIns/WwQXns9MlZuKxIuJJq6rd +hwYSaIh7SHffUd1Nw9b9EfCib4/ThEMXkW6a +-----END PUBLIC KEY----- + +PrivateKey=PRIME192V1_RFC5114-Peer +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBhjH5W7SmdjLJxHbu6a +tpWrJAoEmTB/z2KhNAMyAARRmhIWgOAEVGa6Id8u7kf1lztQBXfvE9X/YTq01kzu +OiCHW9sQ+VP2swygcsYKpX8= +-----END PRIVATE KEY----- + +PublicKey=PRIME192V1_RFC5114-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEUZoSFoDgBFRmuiHfLu5H9Zc7UAV3 +7xPV/2E6tNZM7jogh1vbEPlT9rMMoHLGCqV/ +-----END PUBLIC KEY----- + + +Derive=PRIME192V1_RFC5114 +PeerKey=PRIME192V1_RFC5114-Peer-PUBLIC +SharedSecret=AD420182633F8526BFE954ACDA376F05E5FF4F837F54FEBE + +Derive=PRIME192V1_RFC5114-Peer +PeerKey=PRIME192V1_RFC5114-PUBLIC +SharedSecret=AD420182633F8526BFE954ACDA376F05E5FF4F837F54FEBE + +PrivateKey=SECP224R1_RFC5114 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBy1WOtsKI2nB7u0+PuuKrnp +y2LjvFx1c+IuJtN/oTwDOgAESd/vMJ+BSIwwTP9as+5aIVQ2fceDMVDgpR8+608r +XuRXYsT2VMGgxn9Uz4iwFrUbzj18Io1XrbQ= +-----END PRIVATE KEY----- + +PublicKey=SECP224R1_RFC5114-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAESd/vMJ+BSIwwTP9as+5aIVQ2fceDMVDg +pR8+608rXuRXYsT2VMGgxn9Uz4iwFrUbzj18Io1XrbQ= +-----END PUBLIC KEY----- + +PrivateKey=SECP224R1_RFC5114-Peer +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBysOxrdPZdw5vanCO6fO44K +s7SA6fJ/hciLXm0YoTwDOgAEazrJao0M3mpVmb6AMu3xDBYtCorSGVBtzUKiB9SR +vpnCE6fRyjcG3r/jBfNhr8uzPiYJyLFhitU= +-----END PRIVATE KEY----- + +PublicKey=SECP224R1_RFC5114-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEazrJao0M3mpVmb6AMu3xDBYtCorSGVBt +zUKiB9SRvpnCE6fRyjcG3r/jBfNhr8uzPiYJyLFhitU= +-----END PUBLIC KEY----- + + +Derive=SECP224R1_RFC5114 +PeerKey=SECP224R1_RFC5114-Peer-PUBLIC +SharedSecret=52272F50F46F4EDC9151569092F46DF2D96ECC3B6DC1714A4EA949FA + +Derive=SECP224R1_RFC5114-Peer +PeerKey=SECP224R1_RFC5114-PUBLIC +SharedSecret=52272F50F46F4EDC9151569092F46DF2D96ECC3B6DC1714A4EA949FA + +PrivateKey=PRIME256V1_RFC5114 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQggUJkFF8vVvLpao4z +ehKEmT+vQypavOWehntykdUHo6+hRANCAAQq9QLzvolS8sm1qNQWDQnpcWW+ULxC +rkpejTtLqDrrFesPr0yphsTThoGg+YctedVnlb1L/25t48D1AV7OXv2F +-----END PRIVATE KEY----- + +PublicKey=PRIME256V1_RFC5114-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEKvUC876JUvLJtajUFg0J6XFlvlC8 +Qq5KXo07S6g66xXrD69MqYbE04aBoPmHLXnVZ5W9S/9ubePA9QFezl79hQ== +-----END PUBLIC KEY----- + +PrivateKey=PRIME256V1_RFC5114-Peer +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgLOF4jsGX4JbblaIA +zAqyahnOa8ytViuO7htZN2HPf0GhRANCAASxIN5Ko2SSeVNG6N5sLIZGrgaq6ief +p3WzqwcV9s5RsJ8bfuziDXte2OxoX6Pwcdg3JwJwkqhBE4XDTd5XCLK2 +-----END PRIVATE KEY----- + +PublicKey=PRIME256V1_RFC5114-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEsSDeSqNkknlTRujebCyGRq4Gquon +n6d1s6sHFfbOUbCfG37s4g17XtjsaF+j8HHYNycCcJKoQROFw03eVwiytg== +-----END PUBLIC KEY----- + + +Derive=PRIME256V1_RFC5114 +PeerKey=PRIME256V1_RFC5114-Peer-PUBLIC +SharedSecret=DD0F5396219D1EA393310412D19A08F1F5811E9DC8EC8EEA7F80D21C820C2788 + +Derive=PRIME256V1_RFC5114-Peer +PeerKey=PRIME256V1_RFC5114-PUBLIC +SharedSecret=DD0F5396219D1EA393310412D19A08F1F5811E9DC8EC8EEA7F80D21C820C2788 + +PrivateKey=SECP384R1_RFC5114 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDDSczXqcWZK8kTdFOn9 +EmBxXf2KeWVXHEjXCe56eWKhVtcGqQy8td8phvBf6tuTdvGhZANiAAR5MUjxeHY0 +1dpMbZB0QX0F4FerYvggVNEO5rBAPWJ5VH5qjqnR/XdCfQFv4nqLjGbGxBKUMx0j +5vSA9PtM1AUEyUc5LpT0w/BrjzmLsp5CNo96aFkj3jtnus7SFKGh0Sg= +-----END PRIVATE KEY----- + +PublicKey=SECP384R1_RFC5114-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEeTFI8Xh2NNXaTG2QdEF9BeBXq2L4IFTR +DuawQD1ieVR+ao6p0f13Qn0Bb+J6i4xmxsQSlDMdI+b0gPT7TNQFBMlHOS6U9MPw +a485i7KeQjaPemhZI947Z7rO0hShodEo +-----END PUBLIC KEY----- + +PrivateKey=SECP384R1_RFC5114-Peer +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDBS0Xkf20tw+JwPANRW +wvcCO2ElJiw2p98fgCMRIczj05vlLgDBlKQTLEpsdovNlNKhZANiAARc1Cq5xBtT +R/dLjU77cIs9WzbbZZFTWbRKvBdke2uZmXidcqhIZa4vIj8StaGrwSDhcUWP6qk5 +qqOov6xGtAS9j21bNIwPpNgM7KFjVsqTMkC96HI0Fajs4DWw7fNnVd4= +-----END PRIVATE KEY----- + +PublicKey=SECP384R1_RFC5114-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEXNQqucQbU0f3S41O+3CLPVs222WRU1m0 +SrwXZHtrmZl4nXKoSGWuLyI/ErWhq8Eg4XFFj+qpOaqjqL+sRrQEvY9tWzSMD6TY +DOyhY1bKkzJAvehyNBWo7OA1sO3zZ1Xe +-----END PUBLIC KEY----- + + +Derive=SECP384R1_RFC5114 +PeerKey=SECP384R1_RFC5114-Peer-PUBLIC +SharedSecret=5EA1FC4AF7256D2055981B110575E0A8CAE53160137D904C59D926EB1B8456E427AA8A4540884C37DE159A58028ABC0E + +Derive=SECP384R1_RFC5114-Peer +PeerKey=SECP384R1_RFC5114-PUBLIC +SharedSecret=5EA1FC4AF7256D2055981B110575E0A8CAE53160137D904C59D926EB1B8456E427AA8A4540884C37DE159A58028ABC0E + +PrivateKey=SECP521R1_RFC5114 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIBE/gtqCVzXj2XJ2aD +srdCd7rSczXqcWZK8kMMxPM0WblmnueLP/ubhoMBXTRNy/72+5r0xsRwviVFFs08 +Gh+0c2KhgYkDgYYABAHrs03XVyGr+K3J2+0XiJy7l2XZCnxg8s7wB7sPKybhSIH9 +RELmidYcst0EbuMOP/0g+aRbvfZBPVg6Lb9Zkk/TXAD2tjLRlMA4jiLYQ35VjFUq +4ZWt/RU/ktdJCDUbL4xO2pTtsJFtG1PAILXuyu0aX8OKIz5IMFh7su40ibO0KlqG +pA== +-----END PRIVATE KEY----- + +PublicKey=SECP521R1_RFC5114-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQB67NN11chq/itydvtF4icu5dl2Qp8 +YPLO8Ae7Dysm4UiB/URC5onWHLLdBG7jDj/9IPmkW732QT1YOi2/WZJP01wA9rYy +0ZTAOI4i2EN+VYxVKuGVrf0VP5LXSQg1Gy+MTtqU7bCRbRtTwCC17srtGl/DiiM+ +SDBYe7LuNImztCpahqQ= +-----END PUBLIC KEY----- + +PrivateKey=SECP521R1_RFC5114-Peer +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAzuNIDYZFoX0knyd2 +0ouuYWlS0Xkf20tw98M3hzKqGyKShEi80dwkltQ1sBBIBm6+T3KQPDYbGp3BGT3C +ydCJG5ahgYkDgYYABAEOv6/G6F4I0kv//MGkUR2w5jS+6xtt7IxZOa5EdmIBr2IA +QwupfIrGoOnwizPOfp/utbpO5eDYFRDCQpW4oI0CNQCkpuwwDfniV7A3K156v+8J +NDZxmneIfrsLGM+Ambn0IStuMKFBnBjgKdNoY8ydRI9Nuk0qDmBxG+VykV+9T+8m +lQ== +-----END PRIVATE KEY----- + +PublicKey=SECP521R1_RFC5114-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBDr+vxuheCNJL//zBpFEdsOY0vusb +beyMWTmuRHZiAa9iAEMLqXyKxqDp8Iszzn6f7rW6TuXg2BUQwkKVuKCNAjUApKbs +MA354lewNyteer/vCTQ2cZp3iH67CxjPgJm59CErbjChQZwY4CnTaGPMnUSPTbpN +Kg5gcRvlcpFfvU/vJpU= +-----END PUBLIC KEY----- + + +Derive=SECP521R1_RFC5114 +PeerKey=SECP521R1_RFC5114-Peer-PUBLIC +SharedSecret=00CDEA89621CFA46B132F9E4CFE2261CDE2D4368EB5656634C7CC98C7A00CDE54ED1866A0DD3E6126C9D2F845DAFF82CEB1DA08F5D87521BB0EBECA77911169C20CC + +Derive=SECP521R1_RFC5114-Peer +PeerKey=SECP521R1_RFC5114-PUBLIC +SharedSecret=00CDEA89621CFA46B132F9E4CFE2261CDE2D4368EB5656634C7CC98C7A00CDE54ED1866A0DD3E6126C9D2F845DAFF82CEB1DA08F5D87521BB0EBECA77911169C20CC + +# Keys and shared secrets from RFC 5903 +PrivateKey=PRIME256V1_RFC5903 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgyI8B9RDZrD9wopLa +ojFt5UTpqriv6EBJxiqcV4YtFDOhRANCAATa0LZTlCIc+bBR4f7KV4fQmN/mN/yQ +ue+UXQw3clgRgFJxoEYc24JS1h8cRW+j5Zqx9FszrM9fWDieBXe4mQuz +-----END PRIVATE KEY----- + +PublicKey=PRIME256V1_RFC5903-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE2tC2U5QiHPmwUeH+yleH0Jjf5jf8 +kLnvlF0MN3JYEYBScaBGHNuCUtYfHEVvo+WasfRbM6zPX1g4ngV3uJkLsw== +-----END PUBLIC KEY----- + +PrivateKey=PRIME256V1_RFC5903-Peer +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgxu+cXXiuASoBEWSs +s5fOIIhoXY8Gv5vgsoOrRkdr7lOhRANCAATRLftSicjU+BIItwJwOYw0IpaXCgvM +t0xzb8dVRJS/Y1b788o2bMI+gVeFTBPFjWqsI/BGraMPg1PnTzMDmHKr +-----END PRIVATE KEY----- + +PublicKey=PRIME256V1_RFC5903-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE0S37UonI1PgSCLcCcDmMNCKWlwoL +zLdMc2/HVUSUv2NW+/PKNmzCPoFXhUwTxY1qrCPwRq2jD4NT508zA5hyqw== +-----END PUBLIC KEY----- + + +Derive=PRIME256V1_RFC5903 +PeerKey=PRIME256V1_RFC5903-Peer-PUBLIC +SharedSecret=D6840F6B42F6EDAFD13116E0E12565202FEF8E9ECE7DCE03812464D04B9442DE + +Derive=PRIME256V1_RFC5903-Peer +PeerKey=PRIME256V1_RFC5903-PUBLIC +SharedSecret=D6840F6B42F6EDAFD13116E0E12565202FEF8E9ECE7DCE03812464D04B9442DE + +PrivateKey=SECP384R1_RFC5903 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDAJnzxwNNSixpmITXOj +daZ/diTvfGs8DxYGR7Z0FNzmVeNbU4BB5knuP674lng6sZShZANiAARmeELX0YCs +LN5vdPN1UfVXVcdkXCDvc+MWNP5ytMVe5t46yAistL20yIcyrulfQaqUgu0fwO65 +yvxJhGJcz8I/ZQMhSeDhRK2gJBgVNaDzjuufz/PCyUfa5ptMY0VzqBw= +-----END PRIVATE KEY----- + +PublicKey=SECP384R1_RFC5903-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEZnhC19GArCzeb3TzdVH1V1XHZFwg73Pj +FjT+crTFXubeOsgIrLS9tMiHMq7pX0GqlILtH8Duucr8SYRiXM/CP2UDIUng4USt +oCQYFTWg847rn8/zwslH2uabTGNFc6gc +-----END PUBLIC KEY----- + +PrivateKey=SECP384R1_RFC5903-Peer +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDBBywd5tL24XUeEZyX7 +7DyUMPq0bMjcUGCFXMm9oKopQuAwgxKRa47Slg5L1Vp0SPyhZANiAATlWNvvU+7N +49P8z8GuoIqJqYdHXRL9lQ2Dz6QXMrxQnQ0axDoDNt75b9pB0HdKNXHc++x6rPMZ +ZHIWnoOEMDZ/Zu6+PG5wxBbdXwxodZ3R//g/pAFCIJ3/XqrZbbnmOGw= +-----END PRIVATE KEY----- + +PublicKey=SECP384R1_RFC5903-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE5Vjb71PuzePT/M/BrqCKiamHR10S/ZUN +g8+kFzK8UJ0NGsQ6Azbe+W/aQdB3SjVx3PvseqzzGWRyFp6DhDA2f2buvjxucMQW +3V8MaHWd0f/4P6QBQiCd/16q2W255jhs +-----END PUBLIC KEY----- + + +Derive=SECP384R1_RFC5903 +PeerKey=SECP384R1_RFC5903-Peer-PUBLIC +SharedSecret=11187331C279962D93D604243FD592CB9D0A926F422E47187521287E7156C5C4D603135569B9E9D09CF5D4A270F59746 + +Derive=SECP384R1_RFC5903-Peer +PeerKey=SECP384R1_RFC5903-PUBLIC +SharedSecret=11187331C279962D93D604243FD592CB9D0A926F422E47187521287E7156C5C4D603135569B9E9D09CF5D4A270F59746 + +PrivateKey=SECP521R1_RFC5903 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAN63pMZqJ9Nq9s+9B +GqzMpRI8YayrV7U5Pc5HYIFyoJWqhaMP4cKVLGdx2Te6l3f1lXsmObqwckYvaMJ6 +VzgtSlKhgYkDgYYABAAVQX6E2/KMCtPCeHEzSdx98VPIl6GJG9mLq0NXyey+4eO/ +QuALjjgK6uV8LRB1ZJQYhZQq9af0YBcjxBldF2ztPgF8riC2ZB0u62lXhtjJRhRi +OdCZ4Y4dWlFMc518tKEK2KeIAVrEBdd5ncdee31bbPImGmp/FQdDi/Ab62yjkm+V +gg== +-----END PRIVATE KEY----- + +PublicKey=SECP521R1_RFC5903-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAFUF+hNvyjArTwnhxM0ncffFTyJeh +iRvZi6tDV8nsvuHjv0LgC444CurlfC0QdWSUGIWUKvWn9GAXI8QZXRds7T4BfK4g +tmQdLutpV4bYyUYUYjnQmeGOHVpRTHOdfLShCtiniAFaxAXXeZ3HXnt9W2zyJhpq +fxUHQ4vwG+tso5JvlYI= +-----END PUBLIC KEY----- + +PrivateKey=SECP521R1_RFC5903-Peer +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIBRbqZqEevQ3k/3Q6H +LnzfoWvjD9x4D5e8zD8Hg4AgHpxnfWALNDdXo72/KjFj5ML4acynRYqkpO/8MR9c +sVFoXrmhgYkDgYYABADQs5daxLeZ9b6hbV4T6a+XHV6bmEyfOXKLXlc5c1ohm5fD +VkNq3G6VuwNS9r5kpsKRLU7y0EM87SthcWQAEtlGDwFcaCJjg5VuO9Bm55e2I8J8 +4OrC9VGhDCxyTZhSB3uHIgtlNsXECKHSrruOhtZ4rknLVwkfRzIpZXmrRPzRfw/F +ag== +-----END PRIVATE KEY----- + +PublicKey=SECP521R1_RFC5903-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQA0LOXWsS3mfW+oW1eE+mvlx1em5hM +nzlyi15XOXNaIZuXw1ZDatxulbsDUva+ZKbCkS1O8tBDPO0rYXFkABLZRg8BXGgi +Y4OVbjvQZueXtiPCfODqwvVRoQwsck2YUgd7hyILZTbFxAih0q67jobWeK5Jy1cJ +H0cyKWV5q0T80X8PxWo= +-----END PUBLIC KEY----- + + +Derive=SECP521R1_RFC5903 +PeerKey=SECP521R1_RFC5903-Peer-PUBLIC +SharedSecret=01144C7D79AE6956BC8EDB8E7C787C4521CB086FA64407F97894E5E6B2D79B04D1427E73CA4BAA240A34786859810C06B3C715A3A8CC3151F2BEE417996D19F3DDEA + +Derive=SECP521R1_RFC5903-Peer +PeerKey=SECP521R1_RFC5903-PUBLIC +SharedSecret=01144C7D79AE6956BC8EDB8E7C787C4521CB086FA64407F97894E5E6B2D79B04D1427E73CA4BAA240A34786859810C06B3C715A3A8CC3151F2BEE417996D19F3DDEA + +# Keys and shared secrets from RFC 7027 +PrivateKey=BRAINPOOLP256R1_RFC7027 +-----BEGIN PRIVATE KEY----- +MIGIAgEAMBQGByqGSM49AgEGCSskAwMCCAEBBwRtMGsCAQEEIIHbHuEAFQ/y6jON +cIJxvjgwDLVCQdeZUPd7BjA5gE8doUQDQgAERBBukT+SvAKhcF2ZU6hBTbleGqpJ +6B2ehfkpqOMQC+WKtIRvEcrMtzzknL3RIPWpAKaf0ywnIiP3ie8Q6wib3A== +-----END PRIVATE KEY----- + +PublicKey=BRAINPOOLP256R1_RFC7027-PUBLIC +-----BEGIN PUBLIC KEY----- +MFowFAYHKoZIzj0CAQYJKyQDAwIIAQEHA0IABEQQbpE/krwCoXBdmVOoQU25Xhqq +SegdnoX5KajjEAvlirSEbxHKzLc85Jy90SD1qQCmn9MsJyIj94nvEOsIm9w= +-----END PUBLIC KEY----- + +PrivateKey=BRAINPOOLP256R1_RFC7027-Peer +-----BEGIN PRIVATE KEY----- +MIGIAgEAMBQGByqGSM49AgEGCSskAwMCCAEBBwRtMGsCAQEEIFXkC8QeN+PirSXD +xmVFEf+oR0qRoAMgh1k4UtPn12vToUQDQgAEjS1ojGz5PhFgrQTMRCkRfcLEGCXh +6fygrd005vGzn3uZDFdSCBK+USZB5HA0gyEGvH0+jdDkx/ETbXAGVHzsag== +-----END PRIVATE KEY----- + +PublicKey=BRAINPOOLP256R1_RFC7027-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFowFAYHKoZIzj0CAQYJKyQDAwIIAQEHA0IABI0taIxs+T4RYK0EzEQpEX3CxBgl +4en8oK3dNObxs597mQxXUggSvlEmQeRwNIMhBrx9Po3Q5MfxE21wBlR87Go= +-----END PUBLIC KEY----- + + +Derive=BRAINPOOLP256R1_RFC7027 +PeerKey=BRAINPOOLP256R1_RFC7027-Peer-PUBLIC +SharedSecret=89AFC39D41D3B327814B80940B042590F96556EC91E6AE7939BCE31F3A18BF2B + +Derive=BRAINPOOLP256R1_RFC7027-Peer +PeerKey=BRAINPOOLP256R1_RFC7027-PUBLIC +SharedSecret=89AFC39D41D3B327814B80940B042590F96556EC91E6AE7939BCE31F3A18BF2B + +PrivateKey=BRAINPOOLP384R1_RFC7027 +-----BEGIN PRIVATE KEY----- +MIG6AgEAMBQGByqGSM49AgEGCSskAwMCCAEBCwSBnjCBmwIBAQQwHiD14EiliG8f +FXx06RveK5jItS1Y5QA9VwU/xLC9ZdbxXrXR7hYQ34cHlRQ2J9BCoWQDYgAEaLZl +3ZHBlYAGUM3TY8Yl9OdC6BNGZ7dnsbR2eTWI+IWraYyFLUpud6JS1jgPyvBoVbyR +o5yewB3uNgF7fWc6kxI20vH1yDlC0Enj+iBgdJPg0Dj/L9MMKrZ9Fchff6pZ +-----END PRIVATE KEY----- + +PublicKey=BRAINPOOLP384R1_RFC7027-PUBLIC +-----BEGIN PUBLIC KEY----- +MHowFAYHKoZIzj0CAQYJKyQDAwIIAQELA2IABGi2Zd2RwZWABlDN02PGJfTnQugT +Rme3Z7G0dnk1iPiFq2mMhS1KbneiUtY4D8rwaFW8kaOcnsAd7jYBe31nOpMSNtLx +9cg5QtBJ4/ogYHST4NA4/y/TDCq2fRXIX3+qWQ== +-----END PUBLIC KEY----- + +PrivateKey=BRAINPOOLP384R1_RFC7027-Peer +-----BEGIN PRIVATE KEY----- +MIG6AgEAMBQGByqGSM49AgEGCSskAwMCCAEBCwSBnjCBmwIBAQQwAyZAvGADxZJg +9yUMPbWM5kf5jhJgrM5KzaPdhp904B+LpeAyQwnbapgxSXq6yWZwoWQDYgAETUQy +byaaWXpbWLulZdpVVu1/2aip63bCX0bbadGdyM5q0Y5ASxVziyCG3zfnHR60YtaS +E23lbL6Tv1+jGI71i8ijoOxsHhUaIQOKQukYUym1snWQPRkvjU4fMv6cx4xI +-----END PRIVATE KEY----- + +PublicKey=BRAINPOOLP384R1_RFC7027-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHowFAYHKoZIzj0CAQYJKyQDAwIIAQELA2IABE1EMm8mmll6W1i7pWXaVVbtf9mo +qet2wl9G22nRncjOatGOQEsVc4sght835x0etGLWkhNt5Wy+k79foxiO9YvIo6Ds +bB4VGiEDikLpGFMptbJ1kD0ZL41OHzL+nMeMSA== +-----END PUBLIC KEY----- + + +Derive=BRAINPOOLP384R1_RFC7027 +PeerKey=BRAINPOOLP384R1_RFC7027-Peer-PUBLIC +SharedSecret=0BD9D3A7EA0B3D519D09D8E48D0785FB744A6B355E6304BC51C229FBBCE239BBADF6403715C35D4FB2A5444F575D4F42 + +Derive=BRAINPOOLP384R1_RFC7027-Peer +PeerKey=BRAINPOOLP384R1_RFC7027-PUBLIC +SharedSecret=0BD9D3A7EA0B3D519D09D8E48D0785FB744A6B355E6304BC51C229FBBCE239BBADF6403715C35D4FB2A5444F575D4F42 + +PrivateKey=BRAINPOOLP512R1_RFC7027 +-----BEGIN PRIVATE KEY----- +MIHsAgEAMBQGByqGSM49AgEGCSskAwMCCAEBDQSB0DCBzQIBAQRAFjAv8Nu7Wo1z +PatxQcG0WsvIcVk5Z39qVoUKOL2HvVmwnoAnlgn/Mz651MBhIx+yb5LusEmCpfHR +dkytV2ZUIqGBhQOBggAECkIFF+QGqsCs3OkPzXFIdxjTuVPv1/vsX38n4oxhSZmT +l+keAp4GRX2y0+ZAZos5LCp+c3p/C/BENtEWQP0J/XLmiC6NsoqtNiN80l1YDbI3 +g5YcjcUt+i7BOK1HKg/O84h89itiOyqH3lxYgwHqPl/CabNztgck9egqatFH/ec= +-----END PRIVATE KEY----- + +PublicKey=BRAINPOOLP512R1_RFC7027-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBQGByqGSM49AgEGCSskAwMCCAEBDQOBggAECkIFF+QGqsCs3OkPzXFIdxjT +uVPv1/vsX38n4oxhSZmTl+keAp4GRX2y0+ZAZos5LCp+c3p/C/BENtEWQP0J/XLm +iC6NsoqtNiN80l1YDbI3g5YcjcUt+i7BOK1HKg/O84h89itiOyqH3lxYgwHqPl/C +abNztgck9egqatFH/ec= +-----END PUBLIC KEY----- + +PrivateKey=BRAINPOOLP512R1_RFC7027-Peer +-----BEGIN PRIVATE KEY----- +MIHsAgEAMBQGByqGSM49AgEGCSskAwMCCAEBDQSB0DCBzQIBAQRAIw4Y4bzIijYv +pU5Oo5AgCSkvf4AzYk/UcbXYrOSdEs+rvBmWPauOLx66AL/7KeTXLRPyIkVi9AXL +gFA2ZrJUKaGBhQOBggAEnUX2beXWfi5ttuk6Wc4LtIEGCX/3iggd54HNsx/OjMuq +6o3UMgxBGfHpzUN6Lqs3MfqWaKsmjYcd7aVaVHMZny/cMTCVvN1fs6kWNvB6lZyO +hrVjah6TDoOWBJy0gZYdNlzBFFOgbHGYNUdbEstS/Dw4O8414n7xlFErcYdihfo= +-----END PRIVATE KEY----- + +PublicKey=BRAINPOOLP512R1_RFC7027-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBQGByqGSM49AgEGCSskAwMCCAEBDQOBggAEnUX2beXWfi5ttuk6Wc4LtIEG +CX/3iggd54HNsx/OjMuq6o3UMgxBGfHpzUN6Lqs3MfqWaKsmjYcd7aVaVHMZny/c +MTCVvN1fs6kWNvB6lZyOhrVjah6TDoOWBJy0gZYdNlzBFFOgbHGYNUdbEstS/Dw4 +O8414n7xlFErcYdihfo= +-----END PUBLIC KEY----- + + +Derive=BRAINPOOLP512R1_RFC7027 +PeerKey=BRAINPOOLP512R1_RFC7027-Peer-PUBLIC +SharedSecret=A7927098655F1F9976FA50A9D566865DC530331846381C87256BAF3226244B76D36403C024D7BBF0AA0803EAFF405D3D24F11A9B5C0BEF679FE1454B21C4CD1F + +Derive=BRAINPOOLP512R1_RFC7027-Peer +PeerKey=BRAINPOOLP512R1_RFC7027-PUBLIC +SharedSecret=A7927098655F1F9976FA50A9D566865DC530331846381C87256BAF3226244B76D36403C024D7BBF0AA0803EAFF405D3D24F11A9B5C0BEF679FE1454B21C4CD1F + From levitte at openssl.org Wed Apr 12 13:07:02 2017 From: levitte at openssl.org (Richard Levitte) Date: Wed, 12 Apr 2017 13:07:02 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1492002422.764985.11799.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via e7bed7632c33211d5b7b03ace412bf4ffa3b98aa (commit) via 9d5083273a54c990ec509f2e7da240eaaafb52a3 (commit) via 80204e6731ac0fc3438d9b193c749abf8305189b (commit) via 2f62997e90562ebf8a3ff10042ddef71fa45bd4c (commit) from 3906d9e8df270641a98afbc3c658e2570db70731 (commit) - Log ----------------------------------------------------------------- commit e7bed7632c33211d5b7b03ace412bf4ffa3b98aa Author: Nicola Tuveri Date: Wed Apr 12 06:36:50 2017 +0300 Remove more stale code in ecdhtest.c Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3188) commit 9d5083273a54c990ec509f2e7da240eaaafb52a3 Author: Nicola Tuveri Date: Tue Apr 11 19:46:13 2017 +0300 ecdhtest.c: move KATs to evptests.txt Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3188) commit 80204e6731ac0fc3438d9b193c749abf8305189b Author: Nicola Tuveri Date: Tue Apr 11 19:36:06 2017 +0300 Remove stale code in ecdhtest.c Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3188) commit 2f62997e90562ebf8a3ff10042ddef71fa45bd4c Author: Nicola Tuveri Date: Tue Apr 11 19:22:13 2017 +0300 ecdhtest.c: move NAMED CURVES TESTS to evptests.txt Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3188) ----------------------------------------------------------------------- Summary of changes: test/ecdhtest.c | 369 +----- test/evptests.txt | 3466 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 3470 insertions(+), 365 deletions(-) diff --git a/test/ecdhtest.c b/test/ecdhtest.c index b327847..11e0903 100644 --- a/test/ecdhtest.c +++ b/test/ecdhtest.c @@ -49,281 +49,6 @@ int main(int argc, char *argv[]) static const char rnd_seed[] = "string to make the random number generator think it has entropy"; -static const int KDF1_SHA1_len = 20; -static void *KDF1_SHA1(const void *in, size_t inlen, void *out, - size_t *outlen) -{ - if (*outlen < SHA_DIGEST_LENGTH) - return NULL; - *outlen = SHA_DIGEST_LENGTH; - return SHA1(in, inlen, out); -} - -static int test_ecdh_curve(int nid, BN_CTX *ctx, BIO *out) -{ - EC_KEY *a = NULL; - EC_KEY *b = NULL; - BIGNUM *x_a = NULL, *y_a = NULL, *x_b = NULL, *y_b = NULL; - char buf[12]; - unsigned char *abuf = NULL, *bbuf = NULL; - int i, alen, blen, aout, bout, ret = 0; - const EC_GROUP *group; - - a = EC_KEY_new_by_curve_name(nid); - b = EC_KEY_new_by_curve_name(nid); - if (a == NULL || b == NULL) - goto err; - - group = EC_KEY_get0_group(a); - - if ((x_a = BN_new()) == NULL) - goto err; - if ((y_a = BN_new()) == NULL) - goto err; - if ((x_b = BN_new()) == NULL) - goto err; - if ((y_b = BN_new()) == NULL) - goto err; - - BIO_puts(out, "Testing key generation with "); - BIO_puts(out, OBJ_nid2sn(nid)); -# ifdef NOISY - BIO_puts(out, "\n"); -# else - (void)BIO_flush(out); -# endif - - if (!EC_KEY_generate_key(a)) - goto err; - - if (EC_METHOD_get_field_type(EC_GROUP_method_of(group)) == - NID_X9_62_prime_field) { - if (!EC_POINT_get_affine_coordinates_GFp - (group, EC_KEY_get0_public_key(a), x_a, y_a, ctx)) - goto err; - } -# ifndef OPENSSL_NO_EC2M - else { - if (!EC_POINT_get_affine_coordinates_GF2m(group, - EC_KEY_get0_public_key(a), - x_a, y_a, ctx)) - goto err; - } -# endif -# ifdef NOISY - BIO_puts(out, " pri 1="); - BN_print(out, a->priv_key); - BIO_puts(out, "\n pub 1="); - BN_print(out, x_a); - BIO_puts(out, ","); - BN_print(out, y_a); - BIO_puts(out, "\n"); -# else - BIO_printf(out, " ."); - (void)BIO_flush(out); -# endif - - if (!EC_KEY_generate_key(b)) - goto err; - - if (EC_METHOD_get_field_type(EC_GROUP_method_of(group)) == - NID_X9_62_prime_field) { - if (!EC_POINT_get_affine_coordinates_GFp - (group, EC_KEY_get0_public_key(b), x_b, y_b, ctx)) - goto err; - } -# ifndef OPENSSL_NO_EC2M - else { - if (!EC_POINT_get_affine_coordinates_GF2m(group, - EC_KEY_get0_public_key(b), - x_b, y_b, ctx)) - goto err; - } -# endif - -# ifdef NOISY - BIO_puts(out, " pri 2="); - BN_print(out, b->priv_key); - BIO_puts(out, "\n pub 2="); - BN_print(out, x_b); - BIO_puts(out, ","); - BN_print(out, y_b); - BIO_puts(out, "\n"); -# else - BIO_printf(out, "."); - (void)BIO_flush(out); -# endif - - alen = KDF1_SHA1_len; - abuf = OPENSSL_malloc(alen); - aout = - ECDH_compute_key(abuf, alen, EC_KEY_get0_public_key(b), a, KDF1_SHA1); - -# ifdef NOISY - BIO_puts(out, " key1 ="); - for (i = 0; i < aout; i++) { - sprintf(buf, "%02X", abuf[i]); - BIO_puts(out, buf); - } - BIO_puts(out, "\n"); -# else - BIO_printf(out, "."); - (void)BIO_flush(out); -# endif - - blen = KDF1_SHA1_len; - bbuf = OPENSSL_malloc(blen); - bout = - ECDH_compute_key(bbuf, blen, EC_KEY_get0_public_key(a), b, KDF1_SHA1); - -# ifdef NOISY - BIO_puts(out, " key2 ="); - for (i = 0; i < bout; i++) { - sprintf(buf, "%02X", bbuf[i]); - BIO_puts(out, buf); - } - BIO_puts(out, "\n"); -# else - BIO_printf(out, "."); - (void)BIO_flush(out); -# endif - - if ((aout < 4) || (bout != aout) || (memcmp(abuf, bbuf, aout) != 0)) { -# ifndef NOISY - BIO_printf(out, " failed\n\n"); - BIO_printf(out, "key a:\n"); - BIO_printf(out, "private key: "); - BN_print(out, EC_KEY_get0_private_key(a)); - BIO_printf(out, "\n"); - BIO_printf(out, "public key (x,y): "); - BN_print(out, x_a); - BIO_printf(out, ","); - BN_print(out, y_a); - BIO_printf(out, "\nkey b:\n"); - BIO_printf(out, "private key: "); - BN_print(out, EC_KEY_get0_private_key(b)); - BIO_printf(out, "\n"); - BIO_printf(out, "public key (x,y): "); - BN_print(out, x_b); - BIO_printf(out, ","); - BN_print(out, y_b); - BIO_printf(out, "\n"); - BIO_printf(out, "generated key a: "); - for (i = 0; i < bout; i++) { - sprintf(buf, "%02X", bbuf[i]); - BIO_puts(out, buf); - } - BIO_printf(out, "\n"); - BIO_printf(out, "generated key b: "); - for (i = 0; i < aout; i++) { - sprintf(buf, "%02X", abuf[i]); - BIO_puts(out, buf); - } - BIO_printf(out, "\n"); -# endif - fprintf(stderr, "Error in ECDH routines\n"); - ret = 0; - } else { -# ifndef NOISY - BIO_printf(out, " ok\n"); -# endif - ret = 1; - } - err: - ERR_print_errors_fp(stderr); - - OPENSSL_free(abuf); - OPENSSL_free(bbuf); - BN_free(x_a); - BN_free(y_a); - BN_free(x_b); - BN_free(y_b); - EC_KEY_free(b); - EC_KEY_free(a); - return (ret); -} - -typedef struct { - const int nid; - const char *da; - const char *db; - const char *Z; -} ecdh_kat_t; - -static const ecdh_kat_t ecdh_kats[] = { - /* Keys and shared secrets from RFC 5114 */ - { NID_X9_62_prime192v1, - "323FA3169D8E9C6593F59476BC142000AB5BE0E249C43426", - "631F95BB4A67632C9C476EEE9AB695AB240A0499307FCF62", - "AD420182633F8526BFE954ACDA376F05E5FF4F837F54FEBE" }, - { NID_secp224r1, - "B558EB6C288DA707BBB4F8FBAE2AB9E9CB62E3BC5C7573E22E26D37F", - "AC3B1ADD3D9770E6F6A708EE9F3B8E0AB3B480E9F27F85C88B5E6D18", - "52272F50F46F4EDC9151569092F46DF2D96ECC3B6DC1714A4EA949FA" }, - { NID_X9_62_prime256v1, - "814264145F2F56F2E96A8E337A1284993FAF432A5ABCE59E867B7291D507A3AF", - "2CE1788EC197E096DB95A200CC0AB26A19CE6BCCAD562B8EEE1B593761CF7F41", - "DD0F5396219D1EA393310412D19A08F1F5811E9DC8EC8EEA7F80D21C820C2788" }, - { NID_secp384r1, - "D27335EA71664AF244DD14E9FD1260715DFD8A7965571C48D709EE7A7962A156" - "D706A90CBCB5DF2986F05FEADB9376F1", - "52D1791FDB4B70F89C0F00D456C2F7023B6125262C36A7DF1F80231121CCE3D3" - "9BE52E00C194A4132C4A6C768BCD94D2", - "5EA1FC4AF7256D2055981B110575E0A8CAE53160137D904C59D926EB1B8456E4" - "27AA8A4540884C37DE159A58028ABC0E" }, - { NID_secp521r1, - "0113F82DA825735E3D97276683B2B74277BAD27335EA71664AF2430CC4F33459" - "B9669EE78B3FFB9B8683015D344DCBFEF6FB9AF4C6C470BE254516CD3C1A1FB4" - "7362", - "00CEE3480D8645A17D249F2776D28BAE616952D1791FDB4B70F7C3378732AA1B" - "22928448BCD1DC2496D435B01048066EBE4F72903C361B1A9DC1193DC2C9D089" - "1B96", - "00CDEA89621CFA46B132F9E4CFE2261CDE2D4368EB5656634C7CC98C7A00CDE5" - "4ED1866A0DD3E6126C9D2F845DAFF82CEB1DA08F5D87521BB0EBECA77911169C" - "20CC" }, - /* Keys and shared secrets from RFC 5903 */ - { NID_X9_62_prime256v1, - "C88F01F510D9AC3F70A292DAA2316DE544E9AAB8AFE84049C62A9C57862D1433", - "C6EF9C5D78AE012A011164ACB397CE2088685D8F06BF9BE0B283AB46476BEE53", - "D6840F6B42F6EDAFD13116E0E12565202FEF8E9ECE7DCE03812464D04B9442DE" }, - { NID_secp384r1, - "099F3C7034D4A2C699884D73A375A67F7624EF7C6B3C0F160647B67414DCE655" - "E35B538041E649EE3FAEF896783AB194", - "41CB0779B4BDB85D47846725FBEC3C9430FAB46CC8DC5060855CC9BDA0AA2942" - "E0308312916B8ED2960E4BD55A7448FC", - "11187331C279962D93D604243FD592CB9D0A926F422E47187521287E7156C5C4" - "D603135569B9E9D09CF5D4A270F59746" }, - { NID_secp521r1, - "0037ADE9319A89F4DABDB3EF411AACCCA5123C61ACAB57B5393DCE47608172A0" - "95AA85A30FE1C2952C6771D937BA9777F5957B2639BAB072462F68C27A57382D" - "4A52", - "0145BA99A847AF43793FDD0E872E7CDFA16BE30FDC780F97BCCC3F078380201E" - "9C677D600B343757A3BDBF2A3163E4C2F869CCA7458AA4A4EFFC311F5CB15168" - "5EB9", - "01144C7D79AE6956BC8EDB8E7C787C4521CB086FA64407F97894E5E6B2D79B04" - "D1427E73CA4BAA240A34786859810C06B3C715A3A8CC3151F2BEE417996D19F3" - "DDEA" }, - /* Keys and shared secrets from RFC 7027 */ - { NID_brainpoolP256r1, - "81DB1EE100150FF2EA338D708271BE38300CB54241D79950F77B063039804F1D", - "55E40BC41E37E3E2AD25C3C6654511FFA8474A91A0032087593852D3E7D76BD3", - "89AFC39D41D3B327814B80940B042590F96556EC91E6AE7939BCE31F3A18BF2B" }, - { NID_brainpoolP384r1, - "1E20F5E048A5886F1F157C74E91BDE2B98C8B52D58E5003D57053FC4B0BD65D6" - "F15EB5D1EE1610DF870795143627D042", - "032640BC6003C59260F7250C3DB58CE647F98E1260ACCE4ACDA3DD869F74E01F" - "8BA5E0324309DB6A9831497ABAC96670", - "0BD9D3A7EA0B3D519D09D8E48D0785FB744A6B355E6304BC51C229FBBCE239BB" - "ADF6403715C35D4FB2A5444F575D4F42" }, - { NID_brainpoolP512r1, - "16302FF0DBBB5A8D733DAB7141C1B45ACBC8715939677F6A56850A38BD87BD59" - "B09E80279609FF333EB9D4C061231FB26F92EEB04982A5F1D1764CAD57665422", - "230E18E1BCC88A362FA54E4EA3902009292F7F8033624FD471B5D8ACE49D12CF" - "ABBC19963DAB8E2F1EBA00BFFB29E4D72D13F2224562F405CB80503666B25429", - "A7927098655F1F9976FA50A9D566865DC530331846381C87256BAF3226244B76" - "D36403C024D7BBF0AA0803EAFF405D3D24F11A9B5C0BEF679FE1454B21C4CD1F" } -}; - /* Given private value and NID, create EC_KEY structure */ static EC_KEY *mk_eckey(int nid, const char *str) @@ -360,63 +85,6 @@ static EC_KEY *mk_eckey(int nid, const char *str) return NULL; } -/* - * Known answer test: compute shared secret and check it matches expected - * value. - */ - -static int ecdh_kat(BIO *out, const ecdh_kat_t *kat) -{ - int rv = 0; - EC_KEY *key1 = NULL, *key2 = NULL; - BIGNUM *bnz = NULL; - unsigned char *Ztmp = NULL, *Z = NULL; - size_t Ztmplen, Zlen; - BIO_puts(out, "Testing ECDH shared secret with "); - BIO_puts(out, OBJ_nid2sn(kat->nid)); - if(!BN_hex2bn(&bnz, kat->Z)) - goto err; - key1 = mk_eckey(kat->nid, kat->da); - key2 = mk_eckey(kat->nid, kat->db); - if (!key1 || !key2) - goto err; - Ztmplen = (EC_GROUP_get_degree(EC_KEY_get0_group(key1)) + 7) / 8; - Zlen = BN_num_bytes(bnz); - if (Zlen > Ztmplen) - goto err; - if((Ztmp = OPENSSL_zalloc(Ztmplen)) == NULL) - goto err; - if((Z = OPENSSL_zalloc(Ztmplen)) == NULL) - goto err; - if(!BN_bn2binpad(bnz, Z, Ztmplen)) - goto err; - if (!ECDH_compute_key(Ztmp, Ztmplen, - EC_KEY_get0_public_key(key2), key1, 0)) - goto err; - if (memcmp(Ztmp, Z, Ztmplen)) - goto err; - memset(Ztmp, 0, Ztmplen); - if (!ECDH_compute_key(Ztmp, Ztmplen, - EC_KEY_get0_public_key(key1), key2, 0)) - goto err; - if (memcmp(Ztmp, Z, Ztmplen)) - goto err; - rv = 1; - err: - EC_KEY_free(key1); - EC_KEY_free(key2); - OPENSSL_free(Ztmp); - OPENSSL_free(Z); - BN_free(bnz); - if (rv) - BIO_puts(out, " ok\n"); - else { - fprintf(stderr, "Error in ECDH routines\n"); - ERR_print_errors_fp(stderr); - } - return rv; -} - #include "ecdhtest_cavs.h" /* @@ -544,10 +212,8 @@ static int ecdh_cavs_kat(BIO *out, const ecdh_cavs_kat_t *kat) int main(int argc, char *argv[]) { - BN_CTX *ctx = NULL; - int nid, ret = 1; - EC_builtin_curve *curves = NULL; - size_t crv_len = 0, n = 0; + int ret = 1; + size_t n = 0; BIO *out; CRYPTO_set_mem_debug(1); @@ -560,34 +226,9 @@ int main(int argc, char *argv[]) EXIT(1); BIO_set_fp(out, stdout, BIO_NOCLOSE | BIO_FP_TEXT); - if ((ctx = BN_CTX_new()) == NULL) - goto err; - - /* get a list of all internal curves */ - crv_len = EC_get_builtin_curves(NULL, 0); - curves = OPENSSL_malloc(sizeof(*curves) * crv_len); - if (curves == NULL) goto err; + /* NAMED CURVES TESTS: moved to evptests.txt */ - if (!EC_get_builtin_curves(curves, crv_len)) goto err; - - /* NAMED CURVES TESTS */ - for (n = 0; n < crv_len; n++) { - nid = curves[n].nid; - /* - * Skipped for X25519 because affine coordinate operations are not - * supported for this curve. - * Higher level ECDH tests are performed in evptests.txt instead. - */ - if (nid == NID_X25519) - continue; - if (!test_ecdh_curve(nid, ctx, out)) goto err; - } - - /* KATs */ - for (n = 0; n < (sizeof(ecdh_kats)/sizeof(ecdh_kat_t)); n++) { - if (!ecdh_kat(out, &ecdh_kats[n])) - goto err; - } + /* KATs: moved to evptests.txt */ /* NIST SP800-56A co-factor ECDH KATs */ for (n = 0; n < (sizeof(ecdh_cavs_kats)/sizeof(ecdh_cavs_kat_t)); n++) { @@ -599,8 +240,6 @@ int main(int argc, char *argv[]) err: ERR_print_errors_fp(stderr); - OPENSSL_free(curves); - BN_CTX_free(ctx); BIO_free(out); #ifndef OPENSSL_NO_CRYPTO_MDEBUG diff --git a/test/evptests.txt b/test/evptests.txt index 5577c53..f39c740 100644 --- a/test/evptests.txt +++ b/test/evptests.txt @@ -3680,3 +3680,3469 @@ Verify=Alice-25519 Result = KEYOP_INIT_ERROR Function = EVP_PKEY_verify_init Reason = operation not supported for this keytype + +## ECDH Tests: test with randomly generated keys for all the listed curves + + +# TEST CURVE secp112r1 + +PrivateKey=ALICE_secp112r1 +-----BEGIN EC PRIVATE KEY----- +MD4CAQEEDqyoqnf0BYsKW6zaFrmuoAcGBSuBBAAGoSADHgAEng1OA5HXFACvczp4 +zjpapdbbMDoWexQwoUXBzA== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_secp112r1_PUB +-----BEGIN PUBLIC KEY----- +MDIwEAYHKoZIzj0CAQYFK4EEAAYDHgAEng1OA5HXFACvczp4zjpapdbbMDoWexQw +oUXBzA== +-----END PUBLIC KEY----- + +PrivateKey=BOB_secp112r1 +-----BEGIN EC PRIVATE KEY----- +MD4CAQEEDmkhtf6ESrj2YU+NSXj/oAcGBSuBBAAGoSADHgAEGw81kebWlx3DXTiJ +vAjJwJ76vm+h5F9BRlFndw== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_secp112r1_PUB +-----BEGIN PUBLIC KEY----- +MDIwEAYHKoZIzj0CAQYFK4EEAAYDHgAEGw81kebWlx3DXTiJvAjJwJ76vm+h5F9B +RlFndw== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_secp112r1 +PeerKey=BOB_secp112r1_PUB +SharedSecret=a6cefb5aa7a352afe818749eb401 + +# ECDH Bob with Alice peer +Derive=BOB_secp112r1 +PeerKey=ALICE_secp112r1_PUB +SharedSecret=a6cefb5aa7a352afe818749eb401 + +# TEST CURVE secp112r2 + +PrivateKey=ALICE_secp112r2 +-----BEGIN EC PRIVATE KEY----- +MD4CAQEEDiDPNuUp8TpnChRbQVCZoAcGBSuBBAAHoSADHgAEkngvtWjnQ1nlUZni +c2TEU1yMlDAMhBvX/0iQsQ== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_secp112r2_PUB +-----BEGIN PUBLIC KEY----- +MDIwEAYHKoZIzj0CAQYFK4EEAAcDHgAEkngvtWjnQ1nlUZnic2TEU1yMlDAMhBvX +/0iQsQ== +-----END PUBLIC KEY----- + +PrivateKey=BOB_secp112r2 +-----BEGIN EC PRIVATE KEY----- +MD4CAQEEDgP2gYaP47y+NnPc5k1qoAcGBSuBBAAHoSADHgAE1k6/mBTO9VuAAelO +C7eFSFNC0HwtqZMQh9pFYQ== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_secp112r2_PUB +-----BEGIN PUBLIC KEY----- +MDIwEAYHKoZIzj0CAQYFK4EEAAcDHgAE1k6/mBTO9VuAAelOC7eFSFNC0HwtqZMQ +h9pFYQ== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_secp112r2 +PeerKey=BOB_secp112r2_PUB +SharedSecret=6bed2c55e233e9214d5898c4c12a + +# ECDH Bob with Alice peer +Derive=BOB_secp112r2 +PeerKey=ALICE_secp112r2_PUB +SharedSecret=6bed2c55e233e9214d5898c4c12a + +# TEST CURVE secp128r1 + +PrivateKey=ALICE_secp128r1 +-----BEGIN EC PRIVATE KEY----- +MEQCAQEEEI/Vz6XF9FP4xlZny4YJhiWgBwYFK4EEAByhJAMiAAQfafSJynzuKe/u +RRisQWOlm4cngOoCuEdL5l+nZdc7UA== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_secp128r1_PUB +-----BEGIN PUBLIC KEY----- +MDYwEAYHKoZIzj0CAQYFK4EEABwDIgAEH2n0icp87inv7kUYrEFjpZuHJ4DqArhH +S+Zfp2XXO1A= +-----END PUBLIC KEY----- + +PrivateKey=BOB_secp128r1 +-----BEGIN EC PRIVATE KEY----- +MEQCAQEEEIZsR3ceHCvvpdtB6SEisNOgBwYFK4EEAByhJAMiAAQ0qNLQc3H+AQph +A01pv2/zOVb8PjNKO/c3LcSnQZViaw== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_secp128r1_PUB +-----BEGIN PUBLIC KEY----- +MDYwEAYHKoZIzj0CAQYFK4EEABwDIgAENKjS0HNx/gEKYQNNab9v8zlW/D4zSjv3 +Ny3Ep0GVYms= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_secp128r1 +PeerKey=BOB_secp128r1_PUB +SharedSecret=91ded46ac404afdbd708fdcc1cac6842 + +# ECDH Bob with Alice peer +Derive=BOB_secp128r1 +PeerKey=ALICE_secp128r1_PUB +SharedSecret=91ded46ac404afdbd708fdcc1cac6842 + +# TEST CURVE secp128r2 + +PrivateKey=ALICE_secp128r2 +-----BEGIN EC PRIVATE KEY----- +MEQCAQEEECBEpKM+xnvosMYgDaK3lIKgBwYFK4EEAB2hJAMiAAQFV2NxSlH5votE ++bpHx8AP/qQHFXQqXf3f1afT6dSl/w== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_secp128r2_PUB +-----BEGIN PUBLIC KEY----- +MDYwEAYHKoZIzj0CAQYFK4EEAB0DIgAEBVdjcUpR+b6LRPm6R8fAD/6kBxV0Kl39 +39Wn0+nUpf8= +-----END PUBLIC KEY----- + +PrivateKey=BOB_secp128r2 +-----BEGIN EC PRIVATE KEY----- +MEQCAQEEEAKnTSPDkPuhu8OYmnvAO4CgBwYFK4EEAB2hJAMiAAQE7cFtWtzlK+G8 +35+ZZKG7a1YgVBqnnKzlEcwIsuXT3w== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_secp128r2_PUB +-----BEGIN PUBLIC KEY----- +MDYwEAYHKoZIzj0CAQYFK4EEAB0DIgAEBO3BbVrc5SvhvN+fmWShu2tWIFQap5ys +5RHMCLLl098= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_secp128r2 +PeerKey=BOB_secp128r2_PUB +SharedSecret=dc32faa978008a694672076b756a1e4b + +# ECDH Bob with Alice peer +Derive=BOB_secp128r2 +PeerKey=ALICE_secp128r2_PUB +SharedSecret=dc32faa978008a694672076b756a1e4b + +# TEST CURVE secp160k1 + +PrivateKey=ALICE_secp160k1 +-----BEGIN EC PRIVATE KEY----- +MFECAQEEFQC503dg5c3S67QIvZMZl09h41T/vaAHBgUrgQQACaEsAyoABHcO7R0r +by1LJbFhLP8SzZaqvgL5s18nW6IrgncEVLlR1zjyezHF+OM= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_secp160k1_PUB +-----BEGIN PUBLIC KEY----- +MD4wEAYHKoZIzj0CAQYFK4EEAAkDKgAEdw7tHStvLUslsWEs/xLNlqq+AvmzXydb +oiuCdwRUuVHXOPJ7McX44w== +-----END PUBLIC KEY----- + +PrivateKey=BOB_secp160k1 +-----BEGIN EC PRIVATE KEY----- +MFECAQEEFQDl82IIVUY8zVoe7BdS+6HGhjbJT6AHBgUrgQQACaEsAyoABAeUzqi2 +Zqm3T/Sxz7ltw+hhPpx/IBG/hVQ46jojZ4EZcsibzXbWuJw= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_secp160k1_PUB +-----BEGIN PUBLIC KEY----- +MD4wEAYHKoZIzj0CAQYFK4EEAAkDKgAEB5TOqLZmqbdP9LHPuW3D6GE+nH8gEb+F +VDjqOiNngRlyyJvNdta4nA== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_secp160k1 +PeerKey=BOB_secp160k1_PUB +SharedSecret=5457d367346cc3e82031784f95ebcd856de0c735 + +# ECDH Bob with Alice peer +Derive=BOB_secp160k1 +PeerKey=ALICE_secp160k1_PUB +SharedSecret=5457d367346cc3e82031784f95ebcd856de0c735 + +# TEST CURVE secp160r1 + +PrivateKey=ALICE_secp160r1 +-----BEGIN EC PRIVATE KEY----- +MFECAQEEFQDQoO1qIVRZ3w0bSU71Mu7OMtZcl6AHBgUrgQQACKEsAyoABIdA3UMY +Fe13IXf4GN8h9taDjTd1SpdshfNmhy0PI49NBoZVuWZLBcI= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_secp160r1_PUB +-----BEGIN PUBLIC KEY----- +MD4wEAYHKoZIzj0CAQYFK4EEAAgDKgAEh0DdQxgV7Xchd/gY3yH21oONN3VKl2yF +82aHLQ8jj00GhlW5ZksFwg== +-----END PUBLIC KEY----- + +PrivateKey=BOB_secp160r1 +-----BEGIN EC PRIVATE KEY----- +MFECAQEEFQCwEjC/HpkAGKeGyL5sZqIK962K5aAHBgUrgQQACKEsAyoABAnb5GGk +Z52RRhdSI9n+mUdcUHLpHdfMxQYgqJcUZIGnAXyEZE2pQPI= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_secp160r1_PUB +-----BEGIN PUBLIC KEY----- +MD4wEAYHKoZIzj0CAQYFK4EEAAgDKgAECdvkYaRnnZFGF1Ij2f6ZR1xQcukd18zF +BiColxRkgacBfIRkTalA8g== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_secp160r1 +PeerKey=BOB_secp160r1_PUB +SharedSecret=87856536b6a295ea94d3e483d69c6212d5c7afcf + +# ECDH Bob with Alice peer +Derive=BOB_secp160r1 +PeerKey=ALICE_secp160r1_PUB +SharedSecret=87856536b6a295ea94d3e483d69c6212d5c7afcf + +# TEST CURVE secp160r2 + +PrivateKey=ALICE_secp160r2 +-----BEGIN EC PRIVATE KEY----- +MFECAQEEFQCGYs4AkY25KhlQI3h/Q6ctnqtFJKAHBgUrgQQAHqEsAyoABA9I2+El +CiEwR+KNer4mWrtr2XOixB8++4jI6DqyHLNRVLjdH7suCvk= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_secp160r2_PUB +-----BEGIN PUBLIC KEY----- +MD4wEAYHKoZIzj0CAQYFK4EEAB4DKgAED0jb4SUKITBH4o16viZau2vZc6LEHz77 +iMjoOrIcs1FUuN0fuy4K+Q== +-----END PUBLIC KEY----- + +PrivateKey=BOB_secp160r2 +-----BEGIN EC PRIVATE KEY----- +MFECAQEEFQDXSaPNHYPLQIuab8xMAdNvkIF6c6AHBgUrgQQAHqEsAyoABGrNgBxK +KPMCja/OYy4ry1ryyX9uC64KlHAUP3cAI/rhPOAjet4WGxc= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_secp160r2_PUB +-----BEGIN PUBLIC KEY----- +MD4wEAYHKoZIzj0CAQYFK4EEAB4DKgAEas2AHEoo8wKNr85jLivLWvLJf24LrgqU +cBQ/dwAj+uE84CN63hYbFw== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_secp160r2 +PeerKey=BOB_secp160r2_PUB +SharedSecret=5481e282c47cbd37c84873847c4fc2f31fc15a1a + +# ECDH Bob with Alice peer +Derive=BOB_secp160r2 +PeerKey=ALICE_secp160r2_PUB +SharedSecret=5481e282c47cbd37c84873847c4fc2f31fc15a1a + +# TEST CURVE secp192k1 + +PrivateKey=ALICE_secp192k1 +-----BEGIN EC PRIVATE KEY----- +MFwCAQEEGLMXcp4cyxpX8o5H+i0KZ0tBPaoY2rceFaAHBgUrgQQAH6E0AzIABM/4 +v1IaXcrrCZ6+QvAmeQw0enQjlF9e6VJ8e4dk+ngIauGLp4o1AuSlnY5Bo8gTEA== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_secp192k1_PUB +-----BEGIN PUBLIC KEY----- +MEYwEAYHKoZIzj0CAQYFK4EEAB8DMgAEz/i/UhpdyusJnr5C8CZ5DDR6dCOUX17p +Unx7h2T6eAhq4YunijUC5KWdjkGjyBMQ +-----END PUBLIC KEY----- + +PrivateKey=BOB_secp192k1 +-----BEGIN EC PRIVATE KEY----- +MFwCAQEEGHwFc9UZApgLDS/sNjfBlVpzKHJSMhtTKaAHBgUrgQQAH6E0AzIABOAj +uHDYtKPq43fIvme8c46QyI+1qUqv4EawVpzf1Fianriav7DrpsMhY3dWWU7otg== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_secp192k1_PUB +-----BEGIN PUBLIC KEY----- +MEYwEAYHKoZIzj0CAQYFK4EEAB8DMgAE4CO4cNi0o+rjd8i+Z7xzjpDIj7WpSq/g +RrBWnN/UWJqeuJq/sOumwyFjd1ZZTui2 +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_secp192k1 +PeerKey=BOB_secp192k1_PUB +SharedSecret=6a4daca0412284172e8fcaafa0d9df76257d899752bf0f23 + +# ECDH Bob with Alice peer +Derive=BOB_secp192k1 +PeerKey=ALICE_secp192k1_PUB +SharedSecret=6a4daca0412284172e8fcaafa0d9df76257d899752bf0f23 + +# TEST CURVE secp224k1 + +PrivateKey=ALICE_secp224k1 +-----BEGIN EC PRIVATE KEY----- +MGkCAQEEHQCFcoYkWo4jg/U8sVHczoyR6lP/YO13bsjUDDPHoAcGBSuBBAAgoTwD +OgAE9U3/VvpUdurtTqlZo6tR6onm9KBYvj27+64PjwPgVF/ugV2LE31VYivGvQ9E +HJ4RiaUfDgw4RAo= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_secp224k1_PUB +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACADOgAE9U3/VvpUdurtTqlZo6tR6onm9KBYvj27 ++64PjwPgVF/ugV2LE31VYivGvQ9EHJ4RiaUfDgw4RAo= +-----END PUBLIC KEY----- + +PrivateKey=BOB_secp224k1 +-----BEGIN EC PRIVATE KEY----- +MGkCAQEEHQA6MRdijPxhxaiRJ/hTmBcduMN8gs9096OUTRP8oAcGBSuBBAAgoTwD +OgAEZcBD4Ce1fs6fhwrA/5/grNkZolnCMGreMKPKayv0DdzxUKhFdcGD5U+gqDt8 +OQwiAjyo+asL3lA= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_secp224k1_PUB +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACADOgAEZcBD4Ce1fs6fhwrA/5/grNkZolnCMGre +MKPKayv0DdzxUKhFdcGD5U+gqDt8OQwiAjyo+asL3lA= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_secp224k1 +PeerKey=BOB_secp224k1_PUB +SharedSecret=80b65e65fe29c779213dd31189d371ff57b0b2bf08c6458ed142399a + +# ECDH Bob with Alice peer +Derive=BOB_secp224k1 +PeerKey=ALICE_secp224k1_PUB +SharedSecret=80b65e65fe29c779213dd31189d371ff57b0b2bf08c6458ed142399a + +# TEST CURVE secp224r1 + +PrivateKey=ALICE_secp224r1 +-----BEGIN EC PRIVATE KEY----- +MGgCAQEEHEsqRcUldioZSVOyaCOV6yKTCp6Ot6SuRJNt6HKgBwYFK4EEACGhPAM6 +AARRwSHQaDL+sP42P0lCjPMj6rM+2JTtvYPYe10JriF9tU9eeBxEfYHbE3xb51we +gjGvE7ZQVfLjGg== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_secp224r1_PUB +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEUcEh0Ggy/rD+Nj9JQozzI+qzPtiU7b2D +2HtdCa4hfbVPXngcRH2B2xN8W+dcHoIxrxO2UFXy4xo= +-----END PUBLIC KEY----- + +PrivateKey=BOB_secp224r1 +-----BEGIN EC PRIVATE KEY----- +MGgCAQEEHM4cYZRHd9liDcZJpQ3qnGg1C0CU7MzdRyUSEzOgBwYFK4EEACGhPAM6 +AAR3AWSUr9igNFTpsztfa6U0vCrH1NQRMwVQzpVX0MHhhy8DO/qlCBXBgRTshqGZ +IqlfX1yFs+3YjQ== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_secp224r1_PUB +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEdwFklK/YoDRU6bM7X2ulNLwqx9TUETMF +UM6VV9DB4YcvAzv6pQgVwYEU7IahmSKpX19chbPt2I0= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_secp224r1 +PeerKey=BOB_secp224r1_PUB +SharedSecret=34ea06d16d82f0d1725de47f3639ac0c23db7d7ed68f01488539a2a5 + +# ECDH Bob with Alice peer +Derive=BOB_secp224r1 +PeerKey=ALICE_secp224r1_PUB +SharedSecret=34ea06d16d82f0d1725de47f3639ac0c23db7d7ed68f01488539a2a5 + +# TEST CURVE secp256k1 + +PrivateKey=ALICE_secp256k1 +-----BEGIN EC PRIVATE KEY----- +MHQCAQEEIBwkc8tCHBMegngOqIDTSkjn7k5R8uHxPyzcZADVEuJPoAcGBSuBBAAK +oUQDQgAEgwZsCpJV+DnG2UiSV/ZsZtVq+0z0y6W8qcSnCkZtFyjcVZa2VPFkApeu +hrV9gw8l/tPl4gt4W2kVnGLYOz+ljg== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_secp256k1_PUB +-----BEGIN PUBLIC KEY----- +MFYwEAYHKoZIzj0CAQYFK4EEAAoDQgAEgwZsCpJV+DnG2UiSV/ZsZtVq+0z0y6W8 +qcSnCkZtFyjcVZa2VPFkApeuhrV9gw8l/tPl4gt4W2kVnGLYOz+ljg== +-----END PUBLIC KEY----- + +PrivateKey=BOB_secp256k1 +-----BEGIN EC PRIVATE KEY----- +MHQCAQEEIAoQpBb1rTnK1y5l1RqpEdIHZ7csrYxsxCrnubfiC9pYoAcGBSuBBAAK +oUQDQgAEBUKCHJHsvlcod0MCVlFHylzW241nveMmRAFhryNgX6rVqooGReVUm+Wi +F7Uz0ZsIjdHKd9HHe+2BOWfnuWyR1A== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_secp256k1_PUB +-----BEGIN PUBLIC KEY----- +MFYwEAYHKoZIzj0CAQYFK4EEAAoDQgAEBUKCHJHsvlcod0MCVlFHylzW241nveMm +RAFhryNgX6rVqooGReVUm+WiF7Uz0ZsIjdHKd9HHe+2BOWfnuWyR1A== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_secp256k1 +PeerKey=BOB_secp256k1_PUB +SharedSecret=af43b52790082fd87afb1d14b883c12d12bb9e554080d1f8e527920676e31f3e + +# ECDH Bob with Alice peer +Derive=BOB_secp256k1 +PeerKey=ALICE_secp256k1_PUB +SharedSecret=af43b52790082fd87afb1d14b883c12d12bb9e554080d1f8e527920676e31f3e + +# TEST CURVE secp384r1 + +PrivateKey=ALICE_secp384r1 +-----BEGIN EC PRIVATE KEY----- +MIGkAgEBBDCxE7Q4m1dsK7M3OtxocgY/ejX9JOKKdAtSnRiU4bnK3eFmALkMN7XI +veQnWLB1PEKgBwYFK4EEACKhZANiAAQaUsvUFr/uISpAmYqYZIme4VassCtb0tNG +U97s3qt4ozcogZ4z+fIzXZ4YXqfGoEa57+uQDgqr+jNOTji7Gxopt6AqZ9EvwuVa +CuunUi0pcx6cc8IuUfrwMwSFovV/7sM= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_secp384r1_PUB +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEGlLL1Ba/7iEqQJmKmGSJnuFWrLArW9LT +RlPe7N6reKM3KIGeM/nyM12eGF6nxqBGue/rkA4Kq/ozTk44uxsaKbegKmfRL8Ll +Wgrrp1ItKXMenHPCLlH68DMEhaL1f+7D +-----END PUBLIC KEY----- + +PrivateKey=BOB_secp384r1 +-----BEGIN EC PRIVATE KEY----- +MIGkAgEBBDBRiGXRsb5sUq0b3/dgZ+pA9kbrSivBMCUCXVwxno1d/30hI/Yy0Z5P +WwbBgwTFprWgBwYFK4EEACKhZANiAASp1FeUOBJFmzQCNbGiOz8He0kF+KIf24UG +YVO5MC7u5rV9hpoYsbcgmwxALskPN18os2ygK1Pnf/h+WALIsG2RknSTbiyvBYko +IhJV9cflvEDpMeaWSLF7qJ5YjEIf9PM= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_secp384r1_PUB +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEqdRXlDgSRZs0AjWxojs/B3tJBfiiH9uF +BmFTuTAu7ua1fYaaGLG3IJsMQC7JDzdfKLNsoCtT53/4flgCyLBtkZJ0k24srwWJ +KCISVfXH5bxA6THmlkixe6ieWIxCH/Tz +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_secp384r1 +PeerKey=BOB_secp384r1_PUB +SharedSecret=2006ed49acbb991b8fbf8a15c3f263542496eaefe1e2952591b72fb929463eac7a403a5419cebbfb73734918eaed59fd + +# ECDH Bob with Alice peer +Derive=BOB_secp384r1 +PeerKey=ALICE_secp384r1_PUB +SharedSecret=2006ed49acbb991b8fbf8a15c3f263542496eaefe1e2952591b72fb929463eac7a403a5419cebbfb73734918eaed59fd + +# TEST CURVE secp521r1 + +PrivateKey=ALICE_secp521r1 +-----BEGIN EC PRIVATE KEY----- +MIHcAgEBBEIAFBIz3FLAuX8VCWzMwu1f/tm8pf1QqnsdLqaIWCQAJa2W5ldpJTYf +kj1gGxM44AD3qHnkXISvNLwwuxI1hr2+pOGgBwYFK4EEACOhgYkDgYYABACWlOOF +Yk/p3AS2LxEQWBuMm6uIjo3XArjh1QrsLcUc5hhi82CIz6kKwKjCnYRDHq4iv1x6 +3rVEzGGhQOM1g+cRVwHSpfbBpaxK7bMLkVFOOavvOdcdyRHaHsvxw2pREmdS/Gwt +fgT8odQrG06KMIwVeL+H08fGJSbPX0Zock0DOPCpaw== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_secp521r1_PUB +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAlpTjhWJP6dwEti8REFgbjJuriI6N +1wK44dUK7C3FHOYYYvNgiM+pCsCowp2EQx6uIr9cet61RMxhoUDjNYPnEVcB0qX2 +waWsSu2zC5FRTjmr7znXHckR2h7L8cNqURJnUvxsLX4E/KHUKxtOijCMFXi/h9PH +xiUmz19GaHJNAzjwqWs= +-----END PUBLIC KEY----- + +PrivateKey=BOB_secp521r1 +-----BEGIN EC PRIVATE KEY----- +MIHcAgEBBEIA9C/sMWveRlHPr9P5cc3U+1L2/zB0VtHewKSQRWZ67SmS4+m7uXTq +UVSLRHiQEgQid0cg77gSxXPlmV+zy0f3zd+gBwYFK4EEACOhgYkDgYYABAE18N3S +wDGtea3IOqUdh3j0JtnMeP41i/agEBlxK8/iEBXcQ61mkIrQIKcabRhoylEugXHi +yNnqNQOD4DUa0bTKzAHtJ4UqqbEVno6byRmcUQwbmvG89eS8GLEmk5X/O2atHU4y +IGTuTRQWn/BTJUCS+OgJz4FZdadscc5Z640EZqSDiw== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_secp521r1_PUB +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBNfDd0sAxrXmtyDqlHYd49CbZzHj+ +NYv2oBAZcSvP4hAV3EOtZpCK0CCnGm0YaMpRLoFx4sjZ6jUDg+A1GtG0yswB7SeF +KqmxFZ6Om8kZnFEMG5rxvPXkvBixJpOV/ztmrR1OMiBk7k0UFp/wUyVAkvjoCc+B +WXWnbHHOWeuNBGakg4s= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_secp521r1 +PeerKey=BOB_secp521r1_PUB +SharedSecret=018c8f33e544a0fa8854dcd96bdba75b7687d1c42b2ff1bf0a06d49c424fee96d8a7f3af3119dcbfabc1c147477c50f7c72971956f9bb17ddec6d02b2187f06cf4be + +# ECDH Bob with Alice peer +Derive=BOB_secp521r1 +PeerKey=ALICE_secp521r1_PUB +SharedSecret=018c8f33e544a0fa8854dcd96bdba75b7687d1c42b2ff1bf0a06d49c424fee96d8a7f3af3119dcbfabc1c147477c50f7c72971956f9bb17ddec6d02b2187f06cf4be + +# TEST CURVE prime192v1 + +PrivateKey=ALICE_prime192v1 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGPF9e9IU2oPZTMVU3UttCs+XOint3FCr96AKBggqhkjOPQMBAaE0AzIA +BOJuka5jMKORPW1YtgSiCkrPvhaqG9tC1k+QJhAKKfVyZm41b4FnSPJUSkaWmdk8 +yA== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_prime192v1_PUB +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE4m6RrmMwo5E9bVi2BKIKSs++Fqob +20LWT5AmEAop9XJmbjVvgWdI8lRKRpaZ2TzI +-----END PUBLIC KEY----- + +PrivateKey=BOB_prime192v1 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGF7Bqpc1mVjKqea4QQRj+hRd7f+OnOGbIaAKBggqhkjOPQMBAaE0AzIA +BKSnA0kQ//UW65YoIMNSbbqLKquz7MrBrJmdoXvtgLqoK2CJrvI1xKX22VYeHeBC +DA== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_prime192v1_PUB +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEpKcDSRD/9Rbrliggw1Jtuosqq7Ps +ysGsmZ2he+2AuqgrYImu8jXEpfbZVh4d4EIM +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_prime192v1 +PeerKey=BOB_prime192v1_PUB +SharedSecret=be2a779b587f8f5d7c9d8f006e0a6d0e996c9c63c255f861 + +# ECDH Bob with Alice peer +Derive=BOB_prime192v1 +PeerKey=ALICE_prime192v1_PUB +SharedSecret=be2a779b587f8f5d7c9d8f006e0a6d0e996c9c63c255f861 + +# TEST CURVE prime192v2 + +PrivateKey=ALICE_prime192v2 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGC0i4qqlFzusRi4bHVp0PFy+yjQ0BnD59aAKBggqhkjOPQMBAqE0AzIA +BMxIfAk+rvrVVrClFsosHe64NKeDhZ4U+OG+5svqDxXxSoVopEQPk9QhDSVhK1UJ +qg== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_prime192v2_PUB +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQIDMgAEzEh8CT6u+tVWsKUWyiwd7rg0p4OF +nhT44b7my+oPFfFKhWikRA+T1CENJWErVQmq +-----END PUBLIC KEY----- + +PrivateKey=BOB_prime192v2 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGCBOOpYLX+Ieu8pH3+7WDGkva1YmSQAxi6AKBggqhkjOPQMBAqE0AzIA +BJricb7As9MfF+SqJMgjk8EsApeZdR/l0y2mYClyOuNeOfAkgkRCvzQwr36DWtqo +3w== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_prime192v2_PUB +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQIDMgAEmuJxvsCz0x8X5KokyCOTwSwCl5l1 +H+XTLaZgKXI641458CSCREK/NDCvfoNa2qjf +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_prime192v2 +PeerKey=BOB_prime192v2_PUB +SharedSecret=9b37033a48af7fe1825c062625f8b57d4b3ac48c12bec69c + +# ECDH Bob with Alice peer +Derive=BOB_prime192v2 +PeerKey=ALICE_prime192v2_PUB +SharedSecret=9b37033a48af7fe1825c062625f8b57d4b3ac48c12bec69c + +# TEST CURVE prime192v3 + +PrivateKey=ALICE_prime192v3 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGDSIN1yCKx7X+/aTqOxSSArBc+rH+4klN6AKBggqhkjOPQMBA6E0AzIA +BDr+LSlI0eTzbhc7oy/SKtB9K/bLMZDL4PBaj+SVlyiQ8NxcoR1TxmacAAEfuPpR +Xw== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_prime192v3_PUB +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQMDMgAEOv4tKUjR5PNuFzujL9Iq0H0r9ssx +kMvg8FqP5JWXKJDw3FyhHVPGZpwAAR+4+lFf +-----END PUBLIC KEY----- + +PrivateKey=BOB_prime192v3 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGJ5bWG6rBVTd6/uqClMsWNgQxE8404BxoqAKBggqhkjOPQMBA6E0AzIA +BJdpOMEhBfrzoFkkCJ1f6EW68PLFs3W8FC+njQ5WXQsIbiGhn7kxwu08BMv6iwq9 +fw== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_prime192v3_PUB +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQMDMgAEl2k4wSEF+vOgWSQInV/oRbrw8sWz +dbwUL6eNDlZdCwhuIaGfuTHC7TwEy/qLCr1/ +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_prime192v3 +PeerKey=BOB_prime192v3_PUB +SharedSecret=7133f1d99b0e03ed9c4d78d3be40598cf419cd588283ac29 + +# ECDH Bob with Alice peer +Derive=BOB_prime192v3 +PeerKey=ALICE_prime192v3_PUB +SharedSecret=7133f1d99b0e03ed9c4d78d3be40598cf419cd588283ac29 + +# TEST CURVE prime239v1 + +PrivateKey=ALICE_prime239v1 +-----BEGIN EC PRIVATE KEY----- +MHECAQEEHkZomV2qq97tdYYhitXB++VP6ynNfvGDKsXF4QAkZKAKBggqhkjOPQMB +BKFAAz4ABHyCaVYIAl1ETh4F+IeYeuv9D4K/2jLTKhMR0D+88VmM393GAD+Ff7fT +gk+fNlozC5wpnZRZ2FDw+dHclA== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_prime239v1_PUB +-----BEGIN PUBLIC KEY----- +MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQQDPgAEfIJpVggCXUROHgX4h5h66/0Pgr/a +MtMqExHQP7zxWYzf3cYAP4V/t9OCT582WjMLnCmdlFnYUPD50dyU +-----END PUBLIC KEY----- + +PrivateKey=BOB_prime239v1 +-----BEGIN EC PRIVATE KEY----- +MHECAQEEHgGxkUaAYKh1VARaLeZvWLZvEVPiEpAN91YEKxxjP6AKBggqhkjOPQMB +BKFAAz4ABHUYD7C/zIt7nCXGIm7xSUMQw8i6oFB94jJNuukQBxaqIqIhk+9kzonQ +YYvla1J+jTiMp2vH6MMNjOOb0Q== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_prime239v1_PUB +-----BEGIN PUBLIC KEY----- +MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQQDPgAEdRgPsL/Mi3ucJcYibvFJQxDDyLqg +UH3iMk266RAHFqoioiGT72TOidBhi+VrUn6NOIyna8foww2M45vR +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_prime239v1 +PeerKey=BOB_prime239v1_PUB +SharedSecret=2ef92070f7a5fa14c8a67a8aa3080b4c4a597eafaa81d3f698599ac0be1e + +# ECDH Bob with Alice peer +Derive=BOB_prime239v1 +PeerKey=ALICE_prime239v1_PUB +SharedSecret=2ef92070f7a5fa14c8a67a8aa3080b4c4a597eafaa81d3f698599ac0be1e + +# TEST CURVE prime239v2 + +PrivateKey=ALICE_prime239v2 +-----BEGIN EC PRIVATE KEY----- +MHECAQEEHnpqukuabhxfeGVv1ugTEYpvhxRTNM8VWUKVhvm39qAKBggqhkjOPQMB +BaFAAz4ABC7pFKHQkLJsMxlUd5SxBikOqrhnepA1zQ443DKw2mwbVig7rlK4IwRr +COzUWwkNGuTVk6PhJ1ntC122DQ== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_prime239v2_PUB +-----BEGIN PUBLIC KEY----- +MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQUDPgAELukUodCQsmwzGVR3lLEGKQ6quGd6 +kDXNDjjcMrDabBtWKDuuUrgjBGsI7NRbCQ0a5NWTo+EnWe0LXbYN +-----END PUBLIC KEY----- + +PrivateKey=BOB_prime239v2 +-----BEGIN EC PRIVATE KEY----- +MHECAQEEHgBGgsO7pRfBmXJm42g5nK8PBnsfoV9Kzb8M6Au/uqAKBggqhkjOPQMB +BaFAAz4ABCodBJmFKY+l27hBsTAWj5hAk/C/vooVFprOMWrtEVGIo+B4EtYI0jA3 +8r7wgVMtdESJMPoKMVXVIX1trg== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_prime239v2_PUB +-----BEGIN PUBLIC KEY----- +MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQUDPgAEKh0EmYUpj6XbuEGxMBaPmECT8L++ +ihUWms4xau0RUYij4HgS1gjSMDfyvvCBUy10RIkw+goxVdUhfW2u +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_prime239v2 +PeerKey=BOB_prime239v2_PUB +SharedSecret=5bdab282dc371ee88ade318a6aad2b329ec3ea957e0df18b7a691c1bf703 + +# ECDH Bob with Alice peer +Derive=BOB_prime239v2 +PeerKey=ALICE_prime239v2_PUB +SharedSecret=5bdab282dc371ee88ade318a6aad2b329ec3ea957e0df18b7a691c1bf703 + +# TEST CURVE prime239v3 + +PrivateKey=ALICE_prime239v3 +-----BEGIN EC PRIVATE KEY----- +MHECAQEEHhpcEjwGH5oj/a9pwEg+dlaismaRJ1PiZsp5X9gyO6AKBggqhkjOPQMB +BqFAAz4ABBZSAeGJfuSdruCS2L/M/orcH/l5zi/wQ6jSt7kaGDyh2HWFiZIF8ZEN +UA2cDaaQEEXMUoEypyelfHK26Q== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_prime239v3_PUB +-----BEGIN PUBLIC KEY----- +MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQYDPgAEFlIB4Yl+5J2u4JLYv8z+itwf+XnO +L/BDqNK3uRoYPKHYdYWJkgXxkQ1QDZwNppAQRcxSgTKnJ6V8crbp +-----END PUBLIC KEY----- + +PrivateKey=BOB_prime239v3 +-----BEGIN EC PRIVATE KEY----- +MHECAQEEHlNSiHyQRryLa/P/4JFtc6D5L3qPZb1wZZ1Fef+aw6AKBggqhkjOPQMB +BqFAAz4ABHqXNNwBBIDpyPor6YxleMqb5/LEUGlQG90AHiBGA0C1ARTnW95BdjL5 +ZyyldzgnQdxkIDX2bRB23Z9G6g== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_prime239v3_PUB +-----BEGIN PUBLIC KEY----- +MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQYDPgAEepc03AEEgOnI+ivpjGV4ypvn8sRQ +aVAb3QAeIEYDQLUBFOdb3kF2MvlnLKV3OCdB3GQgNfZtEHbdn0bq +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_prime239v3 +PeerKey=BOB_prime239v3_PUB +SharedSecret=78e80ae760061178bd005e9e3634333971468bc6d3f82baee238c5ed32f9 + +# ECDH Bob with Alice peer +Derive=BOB_prime239v3 +PeerKey=ALICE_prime239v3_PUB +SharedSecret=78e80ae760061178bd005e9e3634333971468bc6d3f82baee238c5ed32f9 + +# TEST CURVE prime256v1 + +PrivateKey=ALICE_prime256v1 +-----BEGIN EC PRIVATE KEY----- +MHcCAQEEIJVDw5PIEPJTI9/Fe9IzwWQ30FMeaTTlUijjE6pYdODzoAoGCCqGSM49 +AwEHoUQDQgAEavO8PitKvW9ZsyRod9PZIzb2E0tNpmJBysQHsImcJrf+cPubssM/ +/tNd9EnQFm17RAo2h1CveGBB86dBvzwpeQ== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_prime256v1_PUB +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEavO8PitKvW9ZsyRod9PZIzb2E0tN +pmJBysQHsImcJrf+cPubssM//tNd9EnQFm17RAo2h1CveGBB86dBvzwpeQ== +-----END PUBLIC KEY----- + +PrivateKey=BOB_prime256v1 +-----BEGIN EC PRIVATE KEY----- +MHcCAQEEIDbC35/7EWX5vWXDO8VEYlB0+/sPCYJPUm8E1Q46S2GJoAoGCCqGSM49 +AwEHoUQDQgAEkZsijYFGwAxsZCDgFYfU+yF79mQ0+iOWDFusDrNu1TDgA9AIjS67 ++7FtU3asZFLRde/xhaS7xTrmXG3V+Kd4vw== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_prime256v1_PUB +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEkZsijYFGwAxsZCDgFYfU+yF79mQ0 ++iOWDFusDrNu1TDgA9AIjS67+7FtU3asZFLRde/xhaS7xTrmXG3V+Kd4vw== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_prime256v1 +PeerKey=BOB_prime256v1_PUB +SharedSecret=390021fbca00d959c1adaf7e9cedef0e65a582489eab9adbe739ef66bf82adb4 + +# ECDH Bob with Alice peer +Derive=BOB_prime256v1 +PeerKey=ALICE_prime256v1_PUB +SharedSecret=390021fbca00d959c1adaf7e9cedef0e65a582489eab9adbe739ef66bf82adb4 + +# TEST CURVE sect113r1 + +PrivateKey=ALICE_sect113r1 +-----BEGIN EC PRIVATE KEY----- +MEECAQEEDwBys/27wGVZviSeQZVmZKAHBgUrgQQABKEiAyAABAG+JN/rb7VXh60l +vYP0uQFp0AWZ2ZFL6tUjeylNiw== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect113r1_PUB +-----BEGIN PUBLIC KEY----- +MDQwEAYHKoZIzj0CAQYFK4EEAAQDIAAEAb4k3+tvtVeHrSW9g/S5AWnQBZnZkUvq +1SN7KU2L +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect113r1 +-----BEGIN EC PRIVATE KEY----- +MEECAQEEDwCaESrcD0p1spBTPUX8zKAHBgUrgQQABKEiAyAABAC5JEE3FeMiN7PC +sYXxWQHFZHr2DRQloEggCul02g== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect113r1_PUB +-----BEGIN PUBLIC KEY----- +MDQwEAYHKoZIzj0CAQYFK4EEAAQDIAAEALkkQTcV4yI3s8KxhfFZAcVkevYNFCWg +SCAK6XTa +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect113r1 +PeerKey=BOB_sect113r1_PUB +SharedSecret=015405437add26b8841c62a9016c85 + +# ECDH Bob with Alice peer +Derive=BOB_sect113r1 +PeerKey=ALICE_sect113r1_PUB +SharedSecret=015405437add26b8841c62a9016c85 + +# TEST CURVE sect113r2 + +PrivateKey=ALICE_sect113r2 +-----BEGIN EC PRIVATE KEY----- +MEECAQEEDwAGoVnpnsEoqO+vNeH31aAHBgUrgQQABaEiAyAABAFNBMcD25LFxnyS ++xJVRQFwtDibjlTXRXBUJD6gZA== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect113r2_PUB +-----BEGIN PUBLIC KEY----- +MDQwEAYHKoZIzj0CAQYFK4EEAAUDIAAEAU0ExwPbksXGfJL7ElVFAXC0OJuOVNdF +cFQkPqBk +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect113r2 +-----BEGIN EC PRIVATE KEY----- +MEECAQEEDwAE8eFnSQKnROhxAki6K6AHBgUrgQQABaEiAyAABAFKLu75SvvvqIbK +DQiPpQA3vQjM9VnEYrnM/GnrCg== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect113r2_PUB +-----BEGIN PUBLIC KEY----- +MDQwEAYHKoZIzj0CAQYFK4EEAAUDIAAEAUou7vlK+++ohsoNCI+lADe9CMz1WcRi +ucz8aesK +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect113r2 +PeerKey=BOB_sect113r2_PUB +SharedSecret=014231c5e9e28d451aa44a755407e1 + +# ECDH Bob with Alice peer +Derive=BOB_sect113r2 +PeerKey=ALICE_sect113r2_PUB +SharedSecret=014231c5e9e28d451aa44a755407e1 + +# TEST CURVE sect131r1 + +PrivateKey=ALICE_sect131r1 +-----BEGIN EC PRIVATE KEY----- +MEcCAQEEEQBQIUPAkstOEseIOXD9ByfxoAcGBSuBBAAWoSYDJAAEABT7LAX2I+/o +sOV0o4uEuBcFEjsSlmdtc9eFSaRBY+EcBA== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect131r1_PUB +-----BEGIN PUBLIC KEY----- +MDgwEAYHKoZIzj0CAQYFK4EEABYDJAAEABT7LAX2I+/osOV0o4uEuBcFEjsSlmdt +c9eFSaRBY+EcBA== +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect131r1 +-----BEGIN EC PRIVATE KEY----- +MEcCAQEEEQPHEzPGPEmZh9Jm9Ykqr5W8oAcGBSuBBAAWoSYDJAAEAUdDZr6H5ifk +3gu3QiglxVUGt/3GRk1LTHFuWH7TCd2r2w== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect131r1_PUB +-----BEGIN PUBLIC KEY----- +MDgwEAYHKoZIzj0CAQYFK4EEABYDJAAEAUdDZr6H5ifk3gu3QiglxVUGt/3GRk1L +THFuWH7TCd2r2w== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect131r1 +PeerKey=BOB_sect131r1_PUB +SharedSecret=009e4acc8c1ba3a129a9ad83a733d7d702 + +# ECDH Bob with Alice peer +Derive=BOB_sect131r1 +PeerKey=ALICE_sect131r1_PUB +SharedSecret=009e4acc8c1ba3a129a9ad83a733d7d702 + +# TEST CURVE sect131r2 + +PrivateKey=ALICE_sect131r2 +-----BEGIN EC PRIVATE KEY----- +MEcCAQEEEQMc8+1AIokHyDTWsyRPxKT1oAcGBSuBBAAXoSYDJAAEBxaXZn/WQhzi +ZYJtEfj5z/YHjtELfUnKJ8q+TGQe3TnHeA== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect131r2_PUB +-----BEGIN PUBLIC KEY----- +MDgwEAYHKoZIzj0CAQYFK4EEABcDJAAEBxaXZn/WQhziZYJtEfj5z/YHjtELfUnK +J8q+TGQe3TnHeA== +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect131r2 +-----BEGIN EC PRIVATE KEY----- +MEcCAQEEEQNH17P9i1Lb1Lv9Hn6tSJdUoAcGBSuBBAAXoSYDJAAEAtkc0EhMOiKC +k7BPNzOVo30CxGTknMxQldiS8ESqP5ggtA== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect131r2_PUB +-----BEGIN PUBLIC KEY----- +MDgwEAYHKoZIzj0CAQYFK4EEABcDJAAEAtkc0EhMOiKCk7BPNzOVo30CxGTknMxQ +ldiS8ESqP5ggtA== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect131r2 +PeerKey=BOB_sect131r2_PUB +SharedSecret=03cbec3a3050c7f13d4801ad692d61c417 + +# ECDH Bob with Alice peer +Derive=BOB_sect131r2 +PeerKey=ALICE_sect131r2_PUB +SharedSecret=03cbec3a3050c7f13d4801ad692d61c417 + +# TEST CURVE sect163k1 + +PrivateKey=ALICE_sect163k1 +-----BEGIN EC PRIVATE KEY----- +MFMCAQEEFQHGR4Y5cTzo8CKOmTy2s39/eSXhSaAHBgUrgQQAAaEuAywABAPWGsMI +nYxIUpnpDXVxOWVf+XkdjQeDldkLEwULzgBpzPA+00lg0LF8KQ== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect163k1_PUB +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEA9YawwidjEhSmekNdXE5ZV/5eR2NB4OV +2QsTBQvOAGnM8D7TSWDQsXwp +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect163k1 +-----BEGIN EC PRIVATE KEY----- +MFMCAQEEFQJQnmQi1J9eJ0deyCiRxLufM8Vs5KAHBgUrgQQAAaEuAywABAatg0nW +qB1vcD0hI6ZO6N9L5ZgUrAFdeskSW4CR42HeNecOrxf5cEHSTw== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect163k1_PUB +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBq2DSdaoHW9wPSEjpk7o30vlmBSsAV16 +yRJbgJHjYd415w6vF/lwQdJP +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect163k1 +PeerKey=BOB_sect163k1_PUB +SharedSecret=07bfdf00759b383aa7741ae4634400f8ddf2047092 + +# ECDH Bob with Alice peer +Derive=BOB_sect163k1 +PeerKey=ALICE_sect163k1_PUB +SharedSecret=07bfdf00759b383aa7741ae4634400f8ddf2047092 + +# TEST CURVE sect163r1 + +PrivateKey=ALICE_sect163r1 +-----BEGIN EC PRIVATE KEY----- +MFMCAQEEFQGX3OaU+YUXm/2HUggQ0DHVvy2PT6AHBgUrgQQAAqEuAywABATePwmf +nwIK0QPC85nkPCBgYFi8gQLPXM3xTA99MVJ1eNNZByv2BbE0wA== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect163r1_PUB +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAIDLAAEBN4/CZ+fAgrRA8LzmeQ8IGBgWLyBAs9c +zfFMD30xUnV401kHK/YFsTTA +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect163r1 +-----BEGIN EC PRIVATE KEY----- +MFMCAQEEFQD+fM3nIJq+9mVfIMYSKFavAbfrT6AHBgUrgQQAAqEuAywABAO3pdkd +/NcAFJOcaHN+g+190tmBqgaEF15bP7fXy82YLoAwk/4+e0fOwA== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect163r1_PUB +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAIDLAAEA7el2R381wAUk5xoc36D7X3S2YGqBoQX +Xls/t9fLzZgugDCT/j57R87A +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect163r1 +PeerKey=BOB_sect163r1_PUB +SharedSecret=02355c765bbc07fcc44bb1496e490912f6df56e6d4 + +# ECDH Bob with Alice peer +Derive=BOB_sect163r1 +PeerKey=ALICE_sect163r1_PUB +SharedSecret=02355c765bbc07fcc44bb1496e490912f6df56e6d4 + +# TEST CURVE sect163r2 + +PrivateKey=ALICE_sect163r2 +-----BEGIN EC PRIVATE KEY----- +MFMCAQEEFQOMfYbsGQ9MEzhW2WNpCvyxdUs06qAHBgUrgQQAD6EuAywABAcepbEl +ZHYqscI+n89KNkh0rzwRPQDfbf9Q5PGFgfCwulHuundqGrWVDw== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect163r2_PUB +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBx6lsSVkdiqxwj6fz0o2SHSvPBE9AN9t +/1Dk8YWB8LC6Ue66d2oatZUP +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect163r2 +-----BEGIN EC PRIVATE KEY----- +MFMCAQEEFQFc4z1ObqwpdSVEuVbQeAI1MPFbaKAHBgUrgQQAD6EuAywABAbFrzFF +wL5MhwOAa16ENURXU+gGiQHC0guPXo09gLRoFkjz+cUXiOGCZw== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect163r2_PUB +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBsWvMUXAvkyHA4BrXoQ1RFdT6AaJAcLS +C49ejT2AtGgWSPP5xReI4YJn +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect163r2 +PeerKey=BOB_sect163r2_PUB +SharedSecret=040df54e6df412790ef5c0fafbbfcba5136b872951 + +# ECDH Bob with Alice peer +Derive=BOB_sect163r2 +PeerKey=ALICE_sect163r2_PUB +SharedSecret=040df54e6df412790ef5c0fafbbfcba5136b872951 + +# TEST CURVE sect193r1 + +PrivateKey=ALICE_sect193r1 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGQARCWh8GW+PzMMrmjgIJ8Bo5A6aUDJOKYGgBwYFK4EEABihNgM0AAQA +oFzJEHFANlO+k8zf1lVdhBLlonBl9Sc3AGflPbqbXlEzgwudgZ2SVwAzygw4wv33 +3A== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect193r1_PUB +-----BEGIN PUBLIC KEY----- +MEgwEAYHKoZIzj0CAQYFK4EEABgDNAAEAKBcyRBxQDZTvpPM39ZVXYQS5aJwZfUn +NwBn5T26m15RM4MLnYGdklcAM8oMOML999w= +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect193r1 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGQCfG9gsplrDhGPbhZNEF+CJqvm+ndHekImgBwYFK4EEABihNgM0AAQB +fDQ9a3c+1lPm/1ofSjpacW0UY4E0RSlhAT+MGPNQcgKow1lMfL2BPZH3JzQYFn8O +Jw== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect193r1_PUB +-----BEGIN PUBLIC KEY----- +MEgwEAYHKoZIzj0CAQYFK4EEABgDNAAEAXw0PWt3PtZT5v9aH0o6WnFtFGOBNEUp +YQE/jBjzUHICqMNZTHy9gT2R9yc0GBZ/Dic= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect193r1 +PeerKey=BOB_sect193r1_PUB +SharedSecret=00458b4c5ad122de5a377bea0adf1ab87bcb961b24ed764f47 + +# ECDH Bob with Alice peer +Derive=BOB_sect193r1 +PeerKey=ALICE_sect193r1_PUB +SharedSecret=00458b4c5ad122de5a377bea0adf1ab87bcb961b24ed764f47 + +# TEST CURVE sect193r2 + +PrivateKey=ALICE_sect193r2 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGQCPnhdBb5vdudf126+ppr6U9M1y86XFEC+gBwYFK4EEABmhNgM0AAQA +eFbrGMfhM0+z97Xa2xlywYP5r3aQBaTBAVzibUhLHiia03IJUjsVdXnM2doZZUAJ +Pg== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect193r2_PUB +-----BEGIN PUBLIC KEY----- +MEgwEAYHKoZIzj0CAQYFK4EEABkDNAAEAHhW6xjH4TNPs/e12tsZcsGD+a92kAWk +wQFc4m1ISx4omtNyCVI7FXV5zNnaGWVACT4= +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect193r2 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGQC8yJVHRpuTqkeh44gERIt8H0HiCxkmMuygBwYFK4EEABmhNgM0AAQA +O0oNzAvrrT4ybXVWXbngYjdOcP5+tqB3AX7BjmqUy7lW2tQMwe4A/Srd4ZBSyvM2 +jQ== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect193r2_PUB +-----BEGIN PUBLIC KEY----- +MEgwEAYHKoZIzj0CAQYFK4EEABkDNAAEADtKDcwL660+Mm11Vl254GI3TnD+frag +dwF+wY5qlMu5VtrUDMHuAP0q3eGQUsrzNo0= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect193r2 +PeerKey=BOB_sect193r2_PUB +SharedSecret=019d1f316d204a9cd1b9632cebb4accddb204158be3e435891 + +# ECDH Bob with Alice peer +Derive=BOB_sect193r2 +PeerKey=ALICE_sect193r2_PUB +SharedSecret=019d1f316d204a9cd1b9632cebb4accddb204158be3e435891 + +# TEST CURVE sect233k1 + +PrivateKey=ALICE_sect233k1 +-----BEGIN EC PRIVATE KEY----- +MG0CAQEEHVpHupoqbW+ZlYrZsawnWteYfoGlORbi3UvjNJ/8oAcGBSuBBAAaoUAD +PgAEANwOK/5tO89VWKpgs3PTpU7nCh2vL6waLp+ckitBAJN9n13nCGIixtjlOGVy +bsjQD9wgahKED/ou6Y5U +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect233k1_PUB +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEANwOK/5tO89VWKpgs3PTpU7nCh2vL6wa +Lp+ckitBAJN9n13nCGIixtjlOGVybsjQD9wgahKED/ou6Y5U +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect233k1 +-----BEGIN EC PRIVATE KEY----- +MG0CAQEEHShrkGvNjGbqafnVfKmGfpc5SMpz2gwMcKjADIdNoAcGBSuBBAAaoUAD +PgAEAYqIW4UlVB7KYdhFWe3Ys0XYxJpMxwv0kZI+fbM7AGKzkxLiSAQVqRZCXsqk +aLLe9Lz3CaluW8csn/4h +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect233k1_PUB +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAYqIW4UlVB7KYdhFWe3Ys0XYxJpMxwv0 +kZI+fbM7AGKzkxLiSAQVqRZCXsqkaLLe9Lz3CaluW8csn/4h +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect233k1 +PeerKey=BOB_sect233k1_PUB +SharedSecret=00a5e5f2e992f4360d530dd365d14f5c6013212e14f4ea258c91c71f1512 + +# ECDH Bob with Alice peer +Derive=BOB_sect233k1 +PeerKey=ALICE_sect233k1_PUB +SharedSecret=00a5e5f2e992f4360d530dd365d14f5c6013212e14f4ea258c91c71f1512 + +# TEST CURVE sect233r1 + +PrivateKey=ALICE_sect233r1 +-----BEGIN EC PRIVATE KEY----- +MG4CAQEEHgAQ3p949HaCLPJfNTqQiBQaKOnn4hABeg0F8qdV4KAHBgUrgQQAG6FA +Az4ABAHSQTC7Z/BBajW/WPtdDy4lPeIzBELzD5zGDHEZDgH8XKOuEhSkQNZoyp9X +bcxxnpZ1shR7cxnsrmkbfw== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect233r1_PUB +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAdJBMLtn8EFqNb9Y+10PLiU94jMEQvMP +nMYMcRkOAfxco64SFKRA1mjKn1dtzHGelnWyFHtzGeyuaRt/ +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect233r1 +-----BEGIN EC PRIVATE KEY----- +MG4CAQEEHgBcdY55Lp8bRcIfcWccO5IhwQtR4Mb4Bg014tVl3qAHBgUrgQQAG6FA +Az4ABABhFFgfTXu7Fxow8XcY6wvhu+h1bXJksS0vemYKRwB+okj/ieIKvy4cqHSA +FrYkGMFYxXW7wyl/rS6+iQ== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect233r1_PUB +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAGEUWB9Ne7sXGjDxdxjrC+G76HVtcmSx +LS96ZgpHAH6iSP+J4gq/LhyodIAWtiQYwVjFdbvDKX+tLr6J +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect233r1 +PeerKey=BOB_sect233r1_PUB +SharedSecret=01625f3fcd367ee7cd74c67cca02dccfce6c3b19ef07e358ed943d17a8e2 + +# ECDH Bob with Alice peer +Derive=BOB_sect233r1 +PeerKey=ALICE_sect233r1_PUB +SharedSecret=01625f3fcd367ee7cd74c67cca02dccfce6c3b19ef07e358ed943d17a8e2 + +# TEST CURVE sect239k1 + +PrivateKey=ALICE_sect239k1 +-----BEGIN EC PRIVATE KEY----- +MG4CAQEEHgyGm5BO0N4sFuhmCJbXV38oGWBQvhi9ONnzODgdHaAHBgUrgQQAA6FA +Az4ABBp9EPpfcv/tz8U3r0q4DThrhuHEdl7ObPUbXma2W3CXzOVaxHn4Y1OjFXQ4 +EttK0BBtfGoFrYaDzcHShw== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect239k1_PUB +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEAAMDPgAEGn0Q+l9y/+3PxTevSrgNOGuG4cR2Xs5s +9RteZrZbcJfM5VrEefhjU6MVdDgS20rQEG18agWthoPNwdKH +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect239k1 +-----BEGIN EC PRIVATE KEY----- +MG4CAQEEHgUEbjvsq/KWKymlQXBsOX9JEadfkUWZ/D/FYiIQx6AHBgUrgQQAA6FA +Az4ABAWKLT3hRfoXmbwOTR4j8OEXf4gNS7uHzWFN3JnHERPQiiTEWRNR/+t71Y8D +svE84K6Ig9lQ1UJHFFZK5Q== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect239k1_PUB +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEAAMDPgAEBYotPeFF+heZvA5NHiPw4Rd/iA1Lu4fN +YU3cmccRE9CKJMRZE1H/63vVjwOy8TzgroiD2VDVQkcUVkrl +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect239k1 +PeerKey=BOB_sect239k1_PUB +SharedSecret=4d1c9a8ae73f754d0a593d6e426114f4f67d7c8082ccc4e04a72b0d2aff8 + +# ECDH Bob with Alice peer +Derive=BOB_sect239k1 +PeerKey=ALICE_sect239k1_PUB +SharedSecret=4d1c9a8ae73f754d0a593d6e426114f4f67d7c8082ccc4e04a72b0d2aff8 + +# TEST CURVE sect283k1 + +PrivateKey=ALICE_sect283k1 +-----BEGIN EC PRIVATE KEY----- +MIGAAgEBBCQAaGeyZnZQMpXdAqareT7fctDqfloJi8pdwyCJmUFL9GtWAhGgBwYF +K4EEABChTANKAAQFKCk7DlMxNzg7wceHDlq0mXmauda4LqhZVhFikPUgy881NGwB +ijhJhGY8h+DNW/8RJVwdVoPWU82j56rQc3WqG9Ff7iuYY7s= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect283k1_PUB +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBSgpOw5TMTc4O8HHhw5atJl5mrnWuC6o +WVYRYpD1IMvPNTRsAYo4SYRmPIfgzVv/ESVcHVaD1lPNo+eq0HN1qhvRX+4rmGO7 +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect283k1 +-----BEGIN EC PRIVATE KEY----- +MIGAAgEBBCQAAlcjB9aNhuIzmMRw3Dzz/WRsSeFWNYaK87vMM+2zsC4pIySgBwYF +K4EEABChTANKAAQDkC6x7ml0fqSzs93I96g9tgCTPpUPm/wpNXVv3s+JiZk0N6gF +jvwVDIdFK91Kj6hF7DZFpyloICe1GiJYfI3WcB0NLOMI3+Y= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect283k1_PUB +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEA5Ause5pdH6ks7PdyPeoPbYAkz6VD5v8 +KTV1b97PiYmZNDeoBY78FQyHRSvdSo+oRew2RacpaCAntRoiWHyN1nAdDSzjCN/m +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect283k1 +PeerKey=BOB_sect283k1_PUB +SharedSecret=02f2e682c2f60d7261624f3661a5e85fca920443b72aa4dd5a540082e65e552302d8f825 + +# ECDH Bob with Alice peer +Derive=BOB_sect283k1 +PeerKey=ALICE_sect283k1_PUB +SharedSecret=02f2e682c2f60d7261624f3661a5e85fca920443b72aa4dd5a540082e65e552302d8f825 + +# TEST CURVE sect283r1 + +PrivateKey=ALICE_sect283r1 +-----BEGIN EC PRIVATE KEY----- +MIGAAgEBBCQCLgmuG7X2S3sfyPDUU7tXMLGHqnSkjSiCXer16/k0WS59mRmgBwYF +K4EEABGhTANKAAQAfHpzCdbD72XehkenH5Hye7tIupRLjRNTa4vRbpVM0A0i9wkH +Vv77eiQfQUmAUBqFtqi1p9hPJ+oKhjXVVrGdWpTn9oTuOwM= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect283r1_PUB +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAHx6cwnWw+9l3oZHpx+R8nu7SLqUS40T +U2uL0W6VTNANIvcJB1b++3okH0FJgFAahbaotafYTyfqCoY11VaxnVqU5/aE7jsD +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect283r1 +-----BEGIN EC PRIVATE KEY----- +MIGAAgEBBCQAIPTiAlpV9XEr8OlvGOqvNlZzoHvprbcwr8hAPWMyUY9DPPGgBwYF +K4EEABGhTANKAAQDXeYhgy+KTXYMGnwmR0RMwHV7A7DbYL/GGfMsQeaCsbR7DF4A +1UCghnLa6/m3RVQking9h0s1qoiC4372/pTvw7iVqywirkg= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect283r1_PUB +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEA13mIYMvik12DBp8JkdETMB1ewOw22C/ +xhnzLEHmgrG0ewxeANVAoIZy2uv5t0VUJIp4PYdLNaqIguN+9v6U78O4lassIq5I +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect283r1 +PeerKey=BOB_sect283r1_PUB +SharedSecret=05778bc1afcf38d7dddb2150cacbfe4d38dc588968fd8b2e859c28ae2629d3435f89f6cc + +# ECDH Bob with Alice peer +Derive=BOB_sect283r1 +PeerKey=ALICE_sect283r1_PUB +SharedSecret=05778bc1afcf38d7dddb2150cacbfe4d38dc588968fd8b2e859c28ae2629d3435f89f6cc + +# TEST CURVE sect409k1 + +PrivateKey=ALICE_sect409k1 +-----BEGIN EC PRIVATE KEY----- +MIGvAgEBBDMg1vV7wiPe1ovX+ukzVfwPZoqvyj/vdif04Opi9PcjV5mPBEZgSFBg +8hbutNxZJdVLrxSgBwYFK4EEACShbANqAAQACe1IJ5ilSk1pPLvbcjEZIE6abC9L +Z9WmHuNJxM9LAW1OuLvJGi72AsGYUOGpX0WGmK6CAYaqZb2Qeedq/yUIljDHYi66 +J+26owYl7lOMpRzZ9U2QDJrZ7TYuxeMUui6re0B+JuZdYw== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect409k1_PUB +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAAntSCeYpUpNaTy723IxGSBOmmwvS2fV +ph7jScTPSwFtTri7yRou9gLBmFDhqV9FhpiuggGGqmW9kHnnav8lCJYwx2Iuuift +uqMGJe5TjKUc2fVNkAya2e02LsXjFLouq3tAfibmXWM= +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect409k1 +-----BEGIN EC PRIVATE KEY----- +MIGvAgEBBDMIYBGZZcZz4qCdhAV9vqpfe8vV+vJEhjawR52JUV1rumWEBPAx0o6E ++gaxHBr5hzVGkIKgBwYFK4EEACShbANqAAQAAQKKs60CTUUkltsT+lIBukjz850p +kGGLltJ4eaZn4k9AtN/lFTCq6Vgqe2sDrjA3b45qAdWjf1vRaP0wawJ13SjApJmy +Xg5hQks6d0Zqz2OHYhGEGiM159VtTlStK067dVe1fGVDeg== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect409k1_PUB +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAAECirOtAk1FJJbbE/pSAbpI8/OdKZBh +i5bSeHmmZ+JPQLTf5RUwqulYKntrA64wN2+OagHVo39b0Wj9MGsCdd0owKSZsl4O +YUJLOndGas9jh2IRhBojNefVbU5UrStOu3VXtXxlQ3o= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect409k1 +PeerKey=BOB_sect409k1_PUB +SharedSecret=01523ec40ad40226a57281a4c423801ae9495dcf736eddd667023b1390977d018ce79313fb99c503f39cbee80f5c1968f3bd02e0 + +# ECDH Bob with Alice peer +Derive=BOB_sect409k1 +PeerKey=ALICE_sect409k1_PUB +SharedSecret=01523ec40ad40226a57281a4c423801ae9495dcf736eddd667023b1390977d018ce79313fb99c503f39cbee80f5c1968f3bd02e0 + +# TEST CURVE sect409r1 + +PrivateKey=ALICE_sect409r1 +-----BEGIN EC PRIVATE KEY----- +MIGwAgEBBDQAYTMsTpey51D2ULndpN+AAWnJLy9pTerziakhjii8OyWKpUVfpDFN +neCCd2oQTDcPX5vdoAcGBSuBBAAloWwDagAEAYfk3ZejxpVYCG7dYHTVhhcqILEy +TYoQa4YehGPxKcbmgpqW4Wev1tEDVI3JIowICYGUowHXXzgDXoJeR79wgb7ySAlX +JXgQ8Ficr7i0CaqyAuIpFw9FWJT3jheFwnbpDTvIeIozlf4= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect409r1_PUB +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAYfk3ZejxpVYCG7dYHTVhhcqILEyTYoQ +a4YehGPxKcbmgpqW4Wev1tEDVI3JIowICYGUowHXXzgDXoJeR79wgb7ySAlXJXgQ +8Ficr7i0CaqyAuIpFw9FWJT3jheFwnbpDTvIeIozlf4= +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect409r1 +-----BEGIN EC PRIVATE KEY----- +MIGwAgEBBDQAsCs1nRgwW97TdKIHPRcsqmK1e8TIZ00e6rqLb3nD4sIe+Gw/fGhS +UER9akQ7lAluEUnfoAcGBSuBBAAloWwDagAEAfM2fvBEic+7jV4oC+v8GfsunD9Z +p9rzNgMp3dJ+ZU7r6Bp+ZH3dL9Uvv8kUiB89UlDlLwBm/W6TlzGuh1FnzXYKVnhn +XpzSlRZQsPCceKukbV46Asl8O23b2+DPJgQBGbMfWsgK+KA= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect409r1_PUB +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAfM2fvBEic+7jV4oC+v8GfsunD9Zp9rz +NgMp3dJ+ZU7r6Bp+ZH3dL9Uvv8kUiB89UlDlLwBm/W6TlzGuh1FnzXYKVnhnXpzS +lRZQsPCceKukbV46Asl8O23b2+DPJgQBGbMfWsgK+KA= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect409r1 +PeerKey=BOB_sect409r1_PUB +SharedSecret=019dc849870dc6f79978aca8e1fc6aa6836c8fcb25bbfe3d5ab41ea53eae2c7329952280efb30f9097a31a774191e476dbd842d5 + +# ECDH Bob with Alice peer +Derive=BOB_sect409r1 +PeerKey=ALICE_sect409r1_PUB +SharedSecret=019dc849870dc6f79978aca8e1fc6aa6836c8fcb25bbfe3d5ab41ea53eae2c7329952280efb30f9097a31a774191e476dbd842d5 + +# TEST CURVE sect571k1 + +PrivateKey=ALICE_sect571k1 +-----BEGIN EC PRIVATE KEY----- +MIHuAgEBBEgBE7yEjyPpNnnnr91Fx0Zi91uWcAsPZdkIq7ZzcLnJAh4DxOJ2L5/y +fpwKdvkW0k1Ngqo/y1F8eXABm1b+CJeL/jIXkra3BLegBwYFK4EEACahgZUDgZIA +BAC2K5RvPu/qeOG6OcOFqcPiJXzgrQtB33A/X6S/QGfzfecq0WtkKiaCuKnZLBRo +Rg4Tohw/IInjy9Y4q8hHp9TXW1bCwVE9TQJy3RKpVsA0AnPAvW6bC4o09uUnpkTB +wF2DDuFYUvqyH7RrIBDdrzM6LOFWIk8KdopH86gC1pSkJYtJMcMXWArj+SaXATH7 +yg== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect571k1_PUB +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQAtiuUbz7v6njhujnDhanD4iV84K0L +Qd9wP1+kv0Bn833nKtFrZComgrip2SwUaEYOE6IcPyCJ48vWOKvIR6fU11tWwsFR +PU0Cct0SqVbANAJzwL1umwuKNPblJ6ZEwcBdgw7hWFL6sh+0ayAQ3a8zOizhViJP +CnaKR/OoAtaUpCWLSTHDF1gK4/kmlwEx+8o= +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect571k1 +-----BEGIN EC PRIVATE KEY----- +MIHuAgEBBEgBVlPi2df10xZLpV1gKhhGX2j+P8fPsoaoXhSOT2f1vj6Zdsnfu2hu +mOek2oqUl8jTjDzQk+n43GmgFHfynVtxz2IvhKaHjxigBwYFK4EEACahgZUDgZIA +BABHMDH3JWQcvylt7WbKiwgsiGEstRFhEMeaik4iKMtCZMBNX2lg7sKsUE8GNoo1 +GM+nD9xU6zz1f0l3PH9uiWQapUCyMs3W2wKuoRPfUXiamd+w/BwzrNunqUTg3aAv +lxqQoybI80zh3ebzGXV/p7nosFh9rE5qpxjNtcJD8CKKPXcfTqoqG4UziKIH/QPX +rg== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect571k1_PUB +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQARzAx9yVkHL8pbe1myosILIhhLLUR +YRDHmopOIijLQmTATV9pYO7CrFBPBjaKNRjPpw/cVOs89X9Jdzx/bolkGqVAsjLN +1tsCrqET31F4mpnfsPwcM6zbp6lE4N2gL5cakKMmyPNM4d3m8xl1f6e56LBYfaxO +aqcYzbXCQ/Aiij13H06qKhuFM4iiB/0D164= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect571k1 +PeerKey=BOB_sect571k1_PUB +SharedSecret=05a423515fcc91b3171c83edd5c4085ff729a8ff0a3fa1578ebf769523ded0f5c1e387cf63109f2fbd95e117345b788b4577fdc6b6e727230bfc73eae0d4e851cb6f6e616eddb13e + +# ECDH Bob with Alice peer +Derive=BOB_sect571k1 +PeerKey=ALICE_sect571k1_PUB +SharedSecret=05a423515fcc91b3171c83edd5c4085ff729a8ff0a3fa1578ebf769523ded0f5c1e387cf63109f2fbd95e117345b788b4577fdc6b6e727230bfc73eae0d4e851cb6f6e616eddb13e + +# TEST CURVE sect571r1 + +PrivateKey=ALICE_sect571r1 +-----BEGIN EC PRIVATE KEY----- +MIHuAgEBBEgCuyL/9mn2955RFhXMZgefgyU0jE23pTq+2ZM9L81qiJpq/Fs6Kake +DFg8KOmg9iEzfdnZUGHumXZqhFbcYF6ksUugXyiJBougBwYFK4EEACehgZUDgZIA +BANEbZvsoJQpsYNNZWBbSqo0LehhzPh/8DBMeahRLWbN1FmP9J/ohT7uYhMadDqW +DUSRNqz9fpMrWE0xXu0CNJ6jB03vnDN3xgXfZIUcwhxZ7DmDnqgX3rWq/ci8gJmd +EA6ZbIYd4d1jAfEwFIE82C5rjZAagnPonp1gBR68T4Xc3b2n+1EEY3MwUiqgN1b4 +0A== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_sect571r1_PUB +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQDRG2b7KCUKbGDTWVgW0qqNC3oYcz4 +f/AwTHmoUS1mzdRZj/Sf6IU+7mITGnQ6lg1EkTas/X6TK1hNMV7tAjSeowdN75wz +d8YF32SFHMIcWew5g56oF961qv3IvICZnRAOmWyGHeHdYwHxMBSBPNgua42QGoJz +6J6dYAUevE+F3N29p/tRBGNzMFIqoDdW+NA= +-----END PUBLIC KEY----- + +PrivateKey=BOB_sect571r1 +-----BEGIN EC PRIVATE KEY----- +MIHuAgEBBEgBiPrk3lclNC6yf6Fn3GP92BnipHUYMLUiPuNi6jD5O8asbbDP9ZPv +r+Us22UIt8NbaQ4MNSYMAl4r975Uw7uy4lNcaesYUeKgBwYFK4EEACehgZUDgZIA +BAbHKRgXGrPuNnFwFuI8th8kSFeV/ZJiYwq97vi2s5P6qMibfn65QByDaSs7Mftf +/zAfptVKf9Qob+TbvBmsCdbNnlcp3xAjvQfxoe8uCsKgyio6ej6HonhOC+UOrsUg +Znx+8Noztgnx0c9fkULxXKmG7zZNw12c0BMGqibpYNZztFMVniyKMvnLBWGi/AnW +AA== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_sect571r1_PUB +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQGxykYFxqz7jZxcBbiPLYfJEhXlf2S +YmMKve74trOT+qjIm35+uUAcg2krOzH7X/8wH6bVSn/UKG/k27wZrAnWzZ5XKd8Q +I70H8aHvLgrCoMoqOno+h6J4TgvlDq7FIGZ8fvDaM7YJ8dHPX5FC8Vyphu82TcNd +nNATBqom6WDWc7RTFZ4sijL5ywVhovwJ1gA= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_sect571r1 +PeerKey=BOB_sect571r1_PUB +SharedSecret=004b397e564055e2c7d87648183c948655ccb0ebb20bd441f9b11635cf461cb5815ff060eab33091b9f7aed67bec8ba1bb7b22437ece3c92c7cf76124408fb951595dfb4a512b2ae + +# ECDH Bob with Alice peer +Derive=BOB_sect571r1 +PeerKey=ALICE_sect571r1_PUB +SharedSecret=004b397e564055e2c7d87648183c948655ccb0ebb20bd441f9b11635cf461cb5815ff060eab33091b9f7aed67bec8ba1bb7b22437ece3c92c7cf76124408fb951595dfb4a512b2ae + +# TEST CURVE c2pnb163v1 + +PrivateKey=ALICE_c2pnb163v1 +-----BEGIN EC PRIVATE KEY----- +MFYCAQEEFQNNUFcMh0wyDkkhvrJkcumQ41q7O6AKBggqhkjOPQMAAaEuAywABAL9 +NoyLZgZjhKZhUKshVWiaYOc7IwclnVVnj59P6ET+pGlYcwxbmA5k7g== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2pnb163v1_PUB +-----BEGIN PUBLIC KEY----- +MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAEDLAAEAv02jItmBmOEpmFQqyFVaJpg5zsj +ByWdVWePn0/oRP6kaVhzDFuYDmTu +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2pnb163v1 +-----BEGIN EC PRIVATE KEY----- +MFYCAQEEFQLe4QB8Zzf5rQU6sWF+11QG1nkE86AKBggqhkjOPQMAAaEuAywABAai +MqSGc525RBjpdPQbBBsN7VgzXAWSPe9kaSE7k7OyobVCpAuQV4zAqg== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2pnb163v1_PUB +-----BEGIN PUBLIC KEY----- +MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAEDLAAEBqIypIZznblEGOl09BsEGw3tWDNc +BZI972RpITuTs7KhtUKkC5BXjMCq +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2pnb163v1 +PeerKey=BOB_c2pnb163v1_PUB +SharedSecret=05939a47cb503656e684f433001e45776c7620e13b + +# ECDH Bob with Alice peer +Derive=BOB_c2pnb163v1 +PeerKey=ALICE_c2pnb163v1_PUB +SharedSecret=05939a47cb503656e684f433001e45776c7620e13b + +# TEST CURVE c2pnb163v2 + +PrivateKey=ALICE_c2pnb163v2 +-----BEGIN EC PRIVATE KEY----- +MFYCAQEEFQLebeZ4k1uEPDAUfcL/8vYTI5A2u6AKBggqhkjOPQMAAqEuAywABAFo +BM6I9XpzyJwFhZzMtczqT63xTgUg3nuKILxGyYhLf5XIz+s3dQFlrA== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2pnb163v2_PUB +-----BEGIN PUBLIC KEY----- +MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAIDLAAEAWgEzoj1enPInAWFnMy1zOpPrfFO +BSDee4ogvEbJiEt/lcjP6zd1AWWs +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2pnb163v2 +-----BEGIN EC PRIVATE KEY----- +MFYCAQEEFQG938O8qFqvLByRJpZoCeIoHJcHCKAKBggqhkjOPQMAAqEuAywABAfT +4VZ7iZvXdCsRkI/B8hL6AKERegaHIFW5u3r5JKBLmdJ4MaCNb/fpDA== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2pnb163v2_PUB +-----BEGIN PUBLIC KEY----- +MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAIDLAAEB9PhVnuJm9d0KxGQj8HyEvoAoRF6 +BocgVbm7evkkoEuZ0ngxoI1v9+kM +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2pnb163v2 +PeerKey=BOB_c2pnb163v2_PUB +SharedSecret=0779fb5f6ac7892f2f342b785d71244e0b03ca562d + +# ECDH Bob with Alice peer +Derive=BOB_c2pnb163v2 +PeerKey=ALICE_c2pnb163v2_PUB +SharedSecret=0779fb5f6ac7892f2f342b785d71244e0b03ca562d + +# TEST CURVE c2pnb163v3 + +PrivateKey=ALICE_c2pnb163v3 +-----BEGIN EC PRIVATE KEY----- +MFYCAQEEFQK0nRlAwPlPpib+NnEXNv21CQs6G6AKBggqhkjOPQMAA6EuAywABATb +pgPuEb4JjTb6cEMUogGcy8dZRAZ+SIh8b3LFX4um04wJ1TjL1GEz7A== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2pnb163v3_PUB +-----BEGIN PUBLIC KEY----- +MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAMDLAAEBNumA+4RvgmNNvpwQxSiAZzLx1lE +Bn5IiHxvcsVfi6bTjAnVOMvUYTPs +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2pnb163v3 +-----BEGIN EC PRIVATE KEY----- +MFYCAQEEFQH0ydhH01czw6gKto6itDPUtchkkKAKBggqhkjOPQMAA6EuAywABAfX +lH/EAbKu2aD6Gt0Boaf2tUR9ZADvJQKfi8pHZ4jL+o1h9t4dMhpMFg== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2pnb163v3_PUB +-----BEGIN PUBLIC KEY----- +MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAMDLAAEB9eUf8QBsq7ZoPoa3QGhp/a1RH1k +AO8lAp+LykdniMv6jWH23h0yGkwW +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2pnb163v3 +PeerKey=BOB_c2pnb163v3_PUB +SharedSecret=02bf68863a8798e72cdc9cd3b9ce731f12654bfa81 + +# ECDH Bob with Alice peer +Derive=BOB_c2pnb163v3 +PeerKey=ALICE_c2pnb163v3_PUB +SharedSecret=02bf68863a8798e72cdc9cd3b9ce731f12654bfa81 + +# TEST CURVE c2pnb176v1 + +PrivateKey=ALICE_c2pnb176v1 +-----BEGIN EC PRIVATE KEY----- +MFgCAQEEFQDFcTPU+O2GqwjrriU3ktEs3wLa7KAKBggqhkjOPQMABKEwAy4ABEPW +pUkdsvkDsGEQp4dK4N5Ppd5nc4MWf15/rup0X61LunfOBcYq3ikoyhhy +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2pnb176v1_PUB +-----BEGIN PUBLIC KEY----- +MEUwEwYHKoZIzj0CAQYIKoZIzj0DAAQDLgAEQ9alSR2y+QOwYRCnh0rg3k+l3mdz +gxZ/Xn+u6nRfrUu6d84FxireKSjKGHI= +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2pnb176v1 +-----BEGIN EC PRIVATE KEY----- +MFgCAQEEFQAm8ccVbS/79yNot3teC3oW1KBrn6AKBggqhkjOPQMABKEwAy4ABJSz +utQCW/WqGmkjzaKQu9nxjQMCkLfnqeGztLJBh0u0dEz6pQcEHcjOssp1 +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2pnb176v1_PUB +-----BEGIN PUBLIC KEY----- +MEUwEwYHKoZIzj0CAQYIKoZIzj0DAAQDLgAElLO61AJb9aoaaSPNopC72fGNAwKQ +t+ep4bO0skGHS7R0TPqlBwQdyM6yynU= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2pnb176v1 +PeerKey=BOB_c2pnb176v1_PUB +SharedSecret=b204734417542df762e09013d6ba958940837a2aa25a + +# ECDH Bob with Alice peer +Derive=BOB_c2pnb176v1 +PeerKey=ALICE_c2pnb176v1_PUB +SharedSecret=b204734417542df762e09013d6ba958940837a2aa25a + +# TEST CURVE c2tnb191v1 + +PrivateKey=ALICE_c2tnb191v1 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGBiCk77CCKtS26ocXTTajTZVzvFCMqBLMKAKBggqhkjOPQMABaE0AzIA +BDZp77m0NDYINpXlc90L5G0uBwdLmVM5yVMKWv9ZKk9OUy3ZMaH8pGsPzn2heDop +hg== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2tnb191v1_PUB +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAUDMgAENmnvubQ0Ngg2leVz3QvkbS4HB0uZ +UznJUwpa/1kqT05TLdkxofykaw/OfaF4OimG +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2tnb191v1 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGC7Obm4U1HL+Vfc4q4mPyL+8f/6+Ix3jzKAKBggqhkjOPQMABaE0AzIA +BGRrmuF1Oa1upBVExZlCNSqwdQxfjeyJG3l/ZZBJl+D4hDaX/y95rLJf16tRK3eA +rg== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2tnb191v1_PUB +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAUDMgAEZGua4XU5rW6kFUTFmUI1KrB1DF+N +7IkbeX9lkEmX4PiENpf/L3mssl/Xq1Erd4Cu +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2tnb191v1 +PeerKey=BOB_c2tnb191v1_PUB +SharedSecret=7a30d30acd3b067f38bb3be9e8cdef739483df26455e36e1 + +# ECDH Bob with Alice peer +Derive=BOB_c2tnb191v1 +PeerKey=ALICE_c2tnb191v1_PUB +SharedSecret=7a30d30acd3b067f38bb3be9e8cdef739483df26455e36e1 + +# TEST CURVE c2tnb191v2 + +PrivateKey=ALICE_c2tnb191v2 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGA6WyWAnRdIre8oLkuxCZjFl+vw4QpdFDaAKBggqhkjOPQMABqE0AzIA +BAAeK8uFLBbZIlm1Q+G5XWn19BJ/PvD1Iljx0k6lV/z0N689SUkw9xpIbKNf7ecl +lw== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2tnb191v2_PUB +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAYDMgAEAB4ry4UsFtkiWbVD4bldafX0En8+ +8PUiWPHSTqVX/PQ3rz1JSTD3Gkhso1/t5yWX +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2tnb191v2 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGAr1BpLZINTrLPu5eo77/4L5tpNNUwAZUaAKBggqhkjOPQMABqE0AzIA +BCJHS32mWbvt7N9e8nMM12XJgLSlZf5CYnwRq+AQSWSTL8z5hdvm5+QXMVcgR9T2 +kw== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2tnb191v2_PUB +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAYDMgAEIkdLfaZZu+3s317ycwzXZcmAtKVl +/kJifBGr4BBJZJMvzPmF2+bn5BcxVyBH1PaT +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2tnb191v2 +PeerKey=BOB_c2tnb191v2_PUB +SharedSecret=5ec2b6ccd193620dbad302c4ad8f8909a40698bf454d7534 + +# ECDH Bob with Alice peer +Derive=BOB_c2tnb191v2 +PeerKey=ALICE_c2tnb191v2_PUB +SharedSecret=5ec2b6ccd193620dbad302c4ad8f8909a40698bf454d7534 + +# TEST CURVE c2tnb191v3 + +PrivateKey=ALICE_c2tnb191v3 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGBJoE5DKrpdfeFlVWBUWVGvFO6+C2/fcLqAKBggqhkjOPQMAB6E0AzIA +BEv4W6nyM6eLFBg/HylT9vTro8euFNd+I16sURgD/k5cIoISR1EKm4MmfKqmZoLa +/A== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2tnb191v3_PUB +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAcDMgAES/hbqfIzp4sUGD8fKVP29Oujx64U +134jXqxRGAP+TlwighJHUQqbgyZ8qqZmgtr8 +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2tnb191v3 +-----BEGIN EC PRIVATE KEY----- +MF8CAQEEGAQTwuzulzX+rf/Su5GAytYaEYivhUu3i6AKBggqhkjOPQMAB6E0AzIA +BAcBmyOQBdqfAZtdHdIqSgqWLqtJ9KK7SVTZccOJl20to834SKHPgp4bZgz+nebV +2g== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2tnb191v3_PUB +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAcDMgAEBwGbI5AF2p8Bm10d0ipKCpYuq0n0 +ortJVNlxw4mXbS2jzfhIoc+CnhtmDP6d5tXa +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2tnb191v3 +PeerKey=BOB_c2tnb191v3_PUB +SharedSecret=39093dc8a2e6724a6206ed41bb99490d527d80c902c41891 + +# ECDH Bob with Alice peer +Derive=BOB_c2tnb191v3 +PeerKey=ALICE_c2tnb191v3_PUB +SharedSecret=39093dc8a2e6724a6206ed41bb99490d527d80c902c41891 + +# TEST CURVE c2pnb208w1 + +PrivateKey=ALICE_c2pnb208w1 +-----BEGIN EC PRIVATE KEY----- +MGQCAQEEGQBt+c1uhfoOT40ugE7qoEHZoTWyuZOBL3qgCgYIKoZIzj0DAAqhOAM2 +AAQUsdyIC7h7FxgHSa3LysXjjZQtdl+ov3QiSA/kbbPDNjWYCUQEUyDzeLN5FoIn ++9GKFkMn +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2pnb208w1_PUB +-----BEGIN PUBLIC KEY----- +ME0wEwYHKoZIzj0CAQYIKoZIzj0DAAoDNgAEFLHciAu4excYB0mty8rF442ULXZf +qL90IkgP5G2zwzY1mAlEBFMg83izeRaCJ/vRihZDJw== +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2pnb208w1 +-----BEGIN EC PRIVATE KEY----- +MGQCAQEEGQDCMYUk4+RmpA9n6YgB7cbXbOlSJrjS1GOgCgYIKoZIzj0DAAqhOAM2 +AAQPFo/q7SmEMt8zhGxmGAh9nLwK6tHj8g+2owbFt/Ok8o8xldXXYXoytauitIUN +nwoV3nxb +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2pnb208w1_PUB +-----BEGIN PUBLIC KEY----- +ME0wEwYHKoZIzj0CAQYIKoZIzj0DAAoDNgAEDxaP6u0phDLfM4RsZhgIfZy8CurR +4/IPtqMGxbfzpPKPMZXV12F6MrWrorSFDZ8KFd58Ww== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2pnb208w1 +PeerKey=BOB_c2pnb208w1_PUB +SharedSecret=59bf3c91bd168d4d4d900d9ce155933045e0fd16dcf0511bb5af + +# ECDH Bob with Alice peer +Derive=BOB_c2pnb208w1 +PeerKey=ALICE_c2pnb208w1_PUB +SharedSecret=59bf3c91bd168d4d4d900d9ce155933045e0fd16dcf0511bb5af + +# TEST CURVE c2tnb239v1 + +PrivateKey=ALICE_c2tnb239v1 +-----BEGIN EC PRIVATE KEY----- +MHECAQEEHhOAgsFxCrD9wnywvwy0khfZX8jmjUrkF5qva8y6sKAKBggqhkjOPQMA +C6FAAz4ABDOqECLFybPgDSkKRdw8wXRuBXUuQ0vqqXOX1U7GYiOBQFgl1L88z00Q +Hsd8MLxf+Ca2CunClYfItRDqzQ== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2tnb239v1_PUB +-----BEGIN PUBLIC KEY----- +MFUwEwYHKoZIzj0CAQYIKoZIzj0DAAsDPgAEM6oQIsXJs+ANKQpF3DzBdG4FdS5D +S+qpc5fVTsZiI4FAWCXUvzzPTRAex3wwvF/4JrYK6cKVh8i1EOrN +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2tnb239v1 +-----BEGIN EC PRIVATE KEY----- +MHECAQEEHgBg2AhgF6g9N8eddId+SUs5YEXlulv0/JWDxAONnaAKBggqhkjOPQMA +C6FAAz4ABApOlMofFC5DlTsWUjWWBsLZKP6Mu2SwzxfHW7BGU3mCAaUOoVqmf+Dc +90cs36LpMnwm92/DjLaavkIIqA== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2tnb239v1_PUB +-----BEGIN PUBLIC KEY----- +MFUwEwYHKoZIzj0CAQYIKoZIzj0DAAsDPgAECk6Uyh8ULkOVOxZSNZYGwtko/oy7 +ZLDPF8dbsEZTeYIBpQ6hWqZ/4Nz3RyzfoukyfCb3b8OMtpq+Qgio +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2tnb239v1 +PeerKey=BOB_c2tnb239v1_PUB +SharedSecret=78c42256900725df9a47bb042cef7dad9f639b32e3010738a144e7472d1a + +# ECDH Bob with Alice peer +Derive=BOB_c2tnb239v1 +PeerKey=ALICE_c2tnb239v1_PUB +SharedSecret=78c42256900725df9a47bb042cef7dad9f639b32e3010738a144e7472d1a + +# TEST CURVE c2tnb239v2 + +PrivateKey=ALICE_c2tnb239v2 +-----BEGIN EC PRIVATE KEY----- +MHECAQEEHhPJAYxy4xXgvmdoGatLJ8Ed1IBIFjFtMYpYSTY1tqAKBggqhkjOPQMA +DKFAAz4ABEPrmyGIYfNlaIcCklc+9D5B7I5mFg7w1P0gUZPAIj+9QjPQ+1xCiubZ +1PeDLStirHMeZ1mRXPqCIdfrGA== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2tnb239v2_PUB +-----BEGIN PUBLIC KEY----- +MFUwEwYHKoZIzj0CAQYIKoZIzj0DAAwDPgAEQ+ubIYhh82VohwKSVz70PkHsjmYW +DvDU/SBRk8AiP71CM9D7XEKK5tnU94MtK2Kscx5nWZFc+oIh1+sY +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2tnb239v2 +-----BEGIN EC PRIVATE KEY----- +MHECAQEEHhO24cymWVJu/NHNHtxAVmNRsQ/dDM7u860DIu2wM6AKBggqhkjOPQMA +DKFAAz4ABGIFe26JGOoizM2UxtdHOjQ2ltdaZQJtEzSlVcMz6nt8pYbEJpptNixy +l9IDeBNXVEtLgpQWzBjatpoZZw== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2tnb239v2_PUB +-----BEGIN PUBLIC KEY----- +MFUwEwYHKoZIzj0CAQYIKoZIzj0DAAwDPgAEYgV7bokY6iLMzZTG10c6NDaW11pl +Am0TNKVVwzPqe3ylhsQmmm02LHKX0gN4E1dUS0uClBbMGNq2mhln +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2tnb239v2 +PeerKey=BOB_c2tnb239v2_PUB +SharedSecret=4ba2ecfa8ec7a375594d1673886cccf96d7763c55611b3c9008a35160192 + +# ECDH Bob with Alice peer +Derive=BOB_c2tnb239v2 +PeerKey=ALICE_c2tnb239v2_PUB +SharedSecret=4ba2ecfa8ec7a375594d1673886cccf96d7763c55611b3c9008a35160192 + +# TEST CURVE c2tnb239v3 + +PrivateKey=ALICE_c2tnb239v3 +-----BEGIN EC PRIVATE KEY----- +MHECAQEEHgsYguZWx2C9UGG29os2YkqCz51gmSHbPNdSdTeyraAKBggqhkjOPQMA +DaFAAz4ABHRzM/rbLju1XDvSBYLElk8Hi6AdWoeViIOnFq7XFH5juxBnz8DZ4uAX +/DaO6xhjMG4rFtL+ib9qZE0jPA== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2tnb239v3_PUB +-----BEGIN PUBLIC KEY----- +MFUwEwYHKoZIzj0CAQYIKoZIzj0DAA0DPgAEdHMz+tsuO7VcO9IFgsSWTweLoB1a +h5WIg6cWrtcUfmO7EGfPwNni4Bf8No7rGGMwbisW0v6Jv2pkTSM8 +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2tnb239v3 +-----BEGIN EC PRIVATE KEY----- +MHECAQEEHgQT8XXlNzKIWXOSce1mnS7j0nl3joO+a1wtRJXsbKAKBggqhkjOPQMA +DaFAAz4ABGh8IsEJqKmz4o/PpeoSx1UM9AGSwU+bl4QIfH4UwASqiO6mEoSAgAF9 +Lb7txL0PAUCz9eIK8VLEqBKgBQ== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2tnb239v3_PUB +-----BEGIN PUBLIC KEY----- +MFUwEwYHKoZIzj0CAQYIKoZIzj0DAA0DPgAEaHwiwQmoqbPij8+l6hLHVQz0AZLB +T5uXhAh8fhTABKqI7qYShICAAX0tvu3EvQ8BQLP14grxUsSoEqAF +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2tnb239v3 +PeerKey=BOB_c2tnb239v3_PUB +SharedSecret=47ad60e5480375fccd9246c93ab04da8e5da83e1dbf5f177f10a47cb54a0 + +# ECDH Bob with Alice peer +Derive=BOB_c2tnb239v3 +PeerKey=ALICE_c2tnb239v3_PUB +SharedSecret=47ad60e5480375fccd9246c93ab04da8e5da83e1dbf5f177f10a47cb54a0 + +# TEST CURVE c2pnb272w1 + +PrivateKey=ALICE_c2pnb272w1 +-----BEGIN EC PRIVATE KEY----- +MHwCAQEEIQCjLSnXRDVRo801OMPoVtEoAzrSBJXLOdsG+NEtPI+oDKAKBggqhkjO +PQMAEKFIA0YABHxr0s0KPtNFVyA11e4ohl6SNepM7OgvK5HIQObFQQWOep0gqdJ+ +BaSF0c2n4hUJJSQ/TqycwOj13O7adp9l4SML7jpi +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2pnb272w1_PUB +-----BEGIN PUBLIC KEY----- +MF0wEwYHKoZIzj0CAQYIKoZIzj0DABADRgAEfGvSzQo+00VXIDXV7iiGXpI16kzs +6C8rkchA5sVBBY56nSCp0n4FpIXRzafiFQklJD9OrJzA6PXc7tp2n2XhIwvuOmI= +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2pnb272w1 +-----BEGIN EC PRIVATE KEY----- +MHwCAQEEIQBQCjwcl9cJWFKVOJhAgwMYPlTOWhaOCT5ahM0dG/YSOqAKBggqhkjO +PQMAEKFIA0YABC/PvOtyFOLsWxGPI1QY4bKxuFugBTBerfmhr6Iih7RDC0GulNef +E0WqQ1qeHkbq5uiHb7+4XqQj6jjBBskg1MDBAokD +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2pnb272w1_PUB +-----BEGIN PUBLIC KEY----- +MF0wEwYHKoZIzj0CAQYIKoZIzj0DABADRgAEL8+863IU4uxbEY8jVBjhsrG4W6AF +MF6t+aGvoiKHtEMLQa6U158TRapDWp4eRurm6Idvv7hepCPqOMEGySDUwMECiQM= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2pnb272w1 +PeerKey=BOB_c2pnb272w1_PUB +SharedSecret=3ae063b2bed6ba8aa28ff35e9bd2673f22ee8087860c86b89429a5b52538216632a3 + +# ECDH Bob with Alice peer +Derive=BOB_c2pnb272w1 +PeerKey=ALICE_c2pnb272w1_PUB +SharedSecret=3ae063b2bed6ba8aa28ff35e9bd2673f22ee8087860c86b89429a5b52538216632a3 + +# TEST CURVE c2pnb304w1 + +PrivateKey=ALICE_c2pnb304w1 +-----BEGIN EC PRIVATE KEY----- +MIGIAgEBBCUA4rN9xXZc69WxJSGhXPdIcbNIJ/Sr2L6KXPll8HFz7myyMruMoAoG +CCqGSM49AwARoVADTgAENzjNA0Vpm6SP2LPeJdNh3Nq0I5hm+t86OtuDOX/w+gXG +3mrrIlO7flW71dWnmlMK2OkMSnLAGPTFvTtFG5UMSTxO2EU/m8Z5MhYsPg== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2pnb304w1_PUB +-----BEGIN PUBLIC KEY----- +MGUwEwYHKoZIzj0CAQYIKoZIzj0DABEDTgAENzjNA0Vpm6SP2LPeJdNh3Nq0I5hm ++t86OtuDOX/w+gXG3mrrIlO7flW71dWnmlMK2OkMSnLAGPTFvTtFG5UMSTxO2EU/ +m8Z5MhYsPg== +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2pnb304w1 +-----BEGIN EC PRIVATE KEY----- +MIGIAgEBBCUA8/iHPqxr4p1MniF8F4JSIkF+yFxmhqmRkwWuEjW91xFjsx4BoAoG +CCqGSM49AwARoVADTgAEwdFTMuJRjs7icQF2Z7HfVTiXpM790P7kxX+1U2LNWxaO +RO+LZ+zvvaVn0x42npCcYxnmfmy5sexrRA4kvUumZdcrRQhYZtbSdBvnaA== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2pnb304w1_PUB +-----BEGIN PUBLIC KEY----- +MGUwEwYHKoZIzj0CAQYIKoZIzj0DABEDTgAEwdFTMuJRjs7icQF2Z7HfVTiXpM79 +0P7kxX+1U2LNWxaORO+LZ+zvvaVn0x42npCcYxnmfmy5sexrRA4kvUumZdcrRQhY +ZtbSdBvnaA== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2pnb304w1 +PeerKey=BOB_c2pnb304w1_PUB +SharedSecret=6df88b20de9f095c7632234291ea4658a9265cd2293424e11ed56705b09a069f09dc4e055eb7 + +# ECDH Bob with Alice peer +Derive=BOB_c2pnb304w1 +PeerKey=ALICE_c2pnb304w1_PUB +SharedSecret=6df88b20de9f095c7632234291ea4658a9265cd2293424e11ed56705b09a069f09dc4e055eb7 + +# TEST CURVE c2tnb359v1 + +PrivateKey=ALICE_c2tnb359v1 +-----BEGIN EC PRIVATE KEY----- +MIGeAgEBBC0BeMU97SvjsIvQ1v+Ztf56OCL8JXHxRJDQZ5gWEa4c2b3FZXFVC4Cw +EPd7cB+gCgYIKoZIzj0DABKhXgNcAAQOBgLp0TzS4Hf/VYbJCFuj3OlRC5JMzFV7 +ox41ubhl5Ij+gHIodu1bQ6cqd0YAb2/30PxwX++NNpFvq8u8435zhPYXsut6txOP +NU5ZzCeagy2xsKacXSZc7D0= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2tnb359v1_PUB +-----BEGIN PUBLIC KEY----- +MHMwEwYHKoZIzj0CAQYIKoZIzj0DABIDXAAEDgYC6dE80uB3/1WGyQhbo9zpUQuS +TMxVe6MeNbm4ZeSI/oByKHbtW0OnKndGAG9v99D8cF/vjTaRb6vLvON+c4T2F7Lr +ercTjzVOWcwnmoMtsbCmnF0mXOw9 +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2tnb359v1 +-----BEGIN EC PRIVATE KEY----- +MIGeAgEBBC0BRZ3IIh3mrLIXKBbh6Vj7TXNY5bzRuD5/ayHPlHQkJcd8K66dOqu7 +hgaN91GgCgYIKoZIzj0DABKhXgNcAAQ7njbTQ2xYYZtkKswYr8E6P/R3Dg/XEZgQ +Q72B4qXnqbK/SgYsZAntFg7CRztcTkHjKAgdSz6fTRIc4///gwXN3Oi6D8Peswhz +PJi/uLmCAHMm3GT6SUO3aTY= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2tnb359v1_PUB +-----BEGIN PUBLIC KEY----- +MHMwEwYHKoZIzj0CAQYIKoZIzj0DABIDXAAEO54200NsWGGbZCrMGK/BOj/0dw4P +1xGYEEO9geKl56myv0oGLGQJ7RYOwkc7XE5B4ygIHUs+n00SHOP//4MFzdzoug/D +3rMIczyYv7i5ggBzJtxk+klDt2k2 +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2tnb359v1 +PeerKey=BOB_c2tnb359v1_PUB +SharedSecret=1d3f3396492d130caea54233c79833e90a072fe883071bb08cec671ce0319f0bc39c68dda0199952152a5c3563 + +# ECDH Bob with Alice peer +Derive=BOB_c2tnb359v1 +PeerKey=ALICE_c2tnb359v1_PUB +SharedSecret=1d3f3396492d130caea54233c79833e90a072fe883071bb08cec671ce0319f0bc39c68dda0199952152a5c3563 + +# TEST CURVE c2pnb368w1 + +PrivateKey=ALICE_c2pnb368w1 +-----BEGIN EC PRIVATE KEY----- +MIGgAgEBBC0AFagbth/4/M2sb1G4FpxbFEVLIulioS34v0hrClpZ38/Z+PHmIhOf +EFminyegCgYIKoZIzj0DABOhYANeAAQAU42w7mIIjkyAdnCC4qoEPdH42fh3oVyC +tnaRtKUmdhUdXm0IgSM4T4SYEOsx+aQZLGIjnhHJCabcaKPQ0sai3dirUr2YsNXN +DJiU93T7buUr+DnRPGsfBy/nEg== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2pnb368w1_PUB +-----BEGIN PUBLIC KEY----- +MHUwEwYHKoZIzj0CAQYIKoZIzj0DABMDXgAEAFONsO5iCI5MgHZwguKqBD3R+Nn4 +d6FcgrZ2kbSlJnYVHV5tCIEjOE+EmBDrMfmkGSxiI54RyQmm3Gij0NLGot3Yq1K9 +mLDVzQyYlPd0+27lK/g50TxrHwcv5xI= +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2pnb368w1 +-----BEGIN EC PRIVATE KEY----- +MIGgAgEBBC0AA/woMzOFy8k2zBqBkubhkOIwc7sx0u+JadM9f7V45L4P8nK7bjJa +sOqrHRagCgYIKoZIzj0DABOhYANeAATKE6jcstacH8yWzg/qBgvGoGan2PVwTN/U ++68K4WxHO7+oPHviUh1OVF7ZxYjsVSdyno83iHE33sq2Ej6j26f+uVs/fuWk19t8 +NpAQ6+sVETZszuMDm5adqtVZRQ== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2pnb368w1_PUB +-----BEGIN PUBLIC KEY----- +MHUwEwYHKoZIzj0CAQYIKoZIzj0DABMDXgAEyhOo3LLWnB/Mls4P6gYLxqBmp9j1 +cEzf1PuvCuFsRzu/qDx74lIdTlRe2cWI7FUncp6PN4hxN97KthI+o9un/rlbP37l +pNfbfDaQEOvrFRE2bM7jA5uWnarVWUU= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2pnb368w1 +PeerKey=BOB_c2pnb368w1_PUB +SharedSecret=d191710b156d1b1d14242843a7f0abf28060bbb9e655655b53852a8b0f250ef1eee37d59364d9791c8e1bc526cbb + +# ECDH Bob with Alice peer +Derive=BOB_c2pnb368w1 +PeerKey=ALICE_c2pnb368w1_PUB +SharedSecret=d191710b156d1b1d14242843a7f0abf28060bbb9e655655b53852a8b0f250ef1eee37d59364d9791c8e1bc526cbb + +# TEST CURVE c2tnb431r1 + +PrivateKey=ALICE_c2tnb431r1 +-----BEGIN EC PRIVATE KEY----- +MIG4AgEBBDUC18JhUt+NCIZ/q6kdjNZ7zX72UqpW4K6Uc2bAWu2PXK1aL573LNzu +4oUlHfbvuE1BUrxNpaAKBggqhkjOPQMAFKFwA24ABDrG8SG4lckR1rrvLRpXYf7W +spmh/fbql+Zpulyl896XtwQK2BkLVRkZ5ixTG4PUyb64OiffdSnvIaM++cb7LgJL +BBgT3d5le8V1gtxWFFm0NggUyF6glmUqHQL0LuhXWS468O6w05KS0AL6vQ== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_c2tnb431r1_PUB +-----BEGIN PUBLIC KEY----- +MIGFMBMGByqGSM49AgEGCCqGSM49AwAUA24ABDrG8SG4lckR1rrvLRpXYf7Wspmh +/fbql+Zpulyl896XtwQK2BkLVRkZ5ixTG4PUyb64OiffdSnvIaM++cb7LgJLBBgT +3d5le8V1gtxWFFm0NggUyF6glmUqHQL0LuhXWS468O6w05KS0AL6vQ== +-----END PUBLIC KEY----- + +PrivateKey=BOB_c2tnb431r1 +-----BEGIN EC PRIVATE KEY----- +MIG4AgEBBDUApanyPgvpfrAu1jNAKGpctH71v0+P/kFF9JxdFYarpWEwBBd4tz6C +xoYKmvDZ9ukOOqBbX6AKBggqhkjOPQMAFKFwA24ABGh3JXuYmh6dGGEmbRhoR2T5 +pVD/5Mq2ZKKzfzY2NOoKiIs6rVzv2SW7S6BScYlRqRWiXCeZVFvT0crDY/5uodkH +bcRw6B/Yo/iMN8wLI257Tjm9/C5G+JPCLopCcLILgTwAJM2ZhtPnc08LyQ== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_c2tnb431r1_PUB +-----BEGIN PUBLIC KEY----- +MIGFMBMGByqGSM49AgEGCCqGSM49AwAUA24ABGh3JXuYmh6dGGEmbRhoR2T5pVD/ +5Mq2ZKKzfzY2NOoKiIs6rVzv2SW7S6BScYlRqRWiXCeZVFvT0crDY/5uodkHbcRw +6B/Yo/iMN8wLI257Tjm9/C5G+JPCLopCcLILgTwAJM2ZhtPnc08LyQ== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_c2tnb431r1 +PeerKey=BOB_c2tnb431r1_PUB +SharedSecret=4c4d7d387843ff5152f22f101b0609238819357fae2ccc9097b818e383ef6809cb46671fb514009d4d1d3d0119fba265107302e95748 + +# ECDH Bob with Alice peer +Derive=BOB_c2tnb431r1 +PeerKey=ALICE_c2tnb431r1_PUB +SharedSecret=4c4d7d387843ff5152f22f101b0609238819357fae2ccc9097b818e383ef6809cb46671fb514009d4d1d3d0119fba265107302e95748 + +# TEST CURVE wap-wsg-idm-ecid-wtls1 + +PrivateKey=ALICE_wap-wsg-idm-ecid-wtls1 +-----BEGIN EC PRIVATE KEY----- +MEACAQEEDle73WoHDFMOaEP/fQp/oAcGBWcrAQQBoSIDIAAEAVBJnQb5p9rXHgrB +TMGNARYU11mgXpQ1gaQJEg3K +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_wap-wsg-idm-ecid-wtls1_PUB +-----BEGIN PUBLIC KEY----- +MDQwEAYHKoZIzj0CAQYFZysBBAEDIAAEAVBJnQb5p9rXHgrBTMGNARYU11mgXpQ1 +gaQJEg3K +-----END PUBLIC KEY----- + +PrivateKey=BOB_wap-wsg-idm-ecid-wtls1 +-----BEGIN EC PRIVATE KEY----- +MEACAQEEDlpToJDjvhnV8ffEC2f/oAcGBWcrAQQBoSIDIAAEAWlvgZNz7m9/meS3 +jMvHAZlDqpJtiUfylRum/Byo +-----END EC PRIVATE KEY----- + +PublicKey=BOB_wap-wsg-idm-ecid-wtls1_PUB +-----BEGIN PUBLIC KEY----- +MDQwEAYHKoZIzj0CAQYFZysBBAEDIAAEAWlvgZNz7m9/meS3jMvHAZlDqpJtiUfy +lRum/Byo +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_wap-wsg-idm-ecid-wtls1 +PeerKey=BOB_wap-wsg-idm-ecid-wtls1_PUB +SharedSecret=0000fc6e280987e8b9bf6e3c7fa003 + +# ECDH Bob with Alice peer +Derive=BOB_wap-wsg-idm-ecid-wtls1 +PeerKey=ALICE_wap-wsg-idm-ecid-wtls1_PUB +SharedSecret=0000fc6e280987e8b9bf6e3c7fa003 + +# TEST CURVE wap-wsg-idm-ecid-wtls3 + +PrivateKey=ALICE_wap-wsg-idm-ecid-wtls3 +-----BEGIN EC PRIVATE KEY----- +MFMCAQEEFQE3YUWBCLPgo8n0YSyuPkGb3TyJ+6AHBgVnKwEEA6EuAywABAFXbVPH +e/z7XAUqrs+KWhHULHOaVQO+fJeuziY2Zzk2zfybM94255A2jQ== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_wap-wsg-idm-ecid-wtls3_PUB +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFZysBBAMDLAAEAVdtU8d7/PtcBSquz4paEdQsc5pVA758 +l67OJjZnOTbN/Jsz3jbnkDaN +-----END PUBLIC KEY----- + +PrivateKey=BOB_wap-wsg-idm-ecid-wtls3 +-----BEGIN EC PRIVATE KEY----- +MFMCAQEEFQD/RSy3signnbrOfbCJYG6tHk15JaAHBgVnKwEEA6EuAywABAHt37/M +wy2Lh2OGVWdoapqqiduajgK/6IpPVwXefNdX8pcdIkin2Jl5qw== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_wap-wsg-idm-ecid-wtls3_PUB +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFZysBBAMDLAAEAe3fv8zDLYuHY4ZVZ2hqmqqJ25qOAr/o +ik9XBd5811fylx0iSKfYmXmr +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_wap-wsg-idm-ecid-wtls3 +PeerKey=BOB_wap-wsg-idm-ecid-wtls3_PUB +SharedSecret=00cf1d850f396436be68f1e5502935853ed054511f + +# ECDH Bob with Alice peer +Derive=BOB_wap-wsg-idm-ecid-wtls3 +PeerKey=ALICE_wap-wsg-idm-ecid-wtls3_PUB +SharedSecret=00cf1d850f396436be68f1e5502935853ed054511f + +# TEST CURVE wap-wsg-idm-ecid-wtls4 + +PrivateKey=ALICE_wap-wsg-idm-ecid-wtls4 +-----BEGIN EC PRIVATE KEY----- +MEECAQEEDwCy4Qa59I1KsM+7djU1qaAHBgVnKwEEBKEiAyAABABy89FsCuyR4Gzp +bag56wAcxCjwuT8UdxgpR8w4pg== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_wap-wsg-idm-ecid-wtls4_PUB +-----BEGIN PUBLIC KEY----- +MDQwEAYHKoZIzj0CAQYFZysBBAQDIAAEAHLz0WwK7JHgbOltqDnrABzEKPC5PxR3 +GClHzDim +-----END PUBLIC KEY----- + +PrivateKey=BOB_wap-wsg-idm-ecid-wtls4 +-----BEGIN EC PRIVATE KEY----- +MEECAQEEDwAUnCZSQptZ2bO+q/4BtaAHBgVnKwEEBKEiAyAABAGuI4lLJEviujnk +JsLB6QGW4QrAh8/rg58kIR9ZNQ== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_wap-wsg-idm-ecid-wtls4_PUB +-----BEGIN PUBLIC KEY----- +MDQwEAYHKoZIzj0CAQYFZysBBAQDIAAEAa4jiUskS+K6OeQmwsHpAZbhCsCHz+uD +nyQhH1k1 +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_wap-wsg-idm-ecid-wtls4 +PeerKey=BOB_wap-wsg-idm-ecid-wtls4_PUB +SharedSecret=01076232302ca32b5f3daf075e5213 + +# ECDH Bob with Alice peer +Derive=BOB_wap-wsg-idm-ecid-wtls4 +PeerKey=ALICE_wap-wsg-idm-ecid-wtls4_PUB +SharedSecret=01076232302ca32b5f3daf075e5213 + +# TEST CURVE wap-wsg-idm-ecid-wtls5 + +PrivateKey=ALICE_wap-wsg-idm-ecid-wtls5 +-----BEGIN EC PRIVATE KEY----- +MFMCAQEEFQKaeBto7ZL/9NrRlSGf+dtnJ1MoP6AHBgVnKwEEBaEuAywABADXv3aJ +3eEsi7bPQoQKQEJRtNI/1QUu7YVMmQtryo/hkisG3kVcomjYPA== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_wap-wsg-idm-ecid-wtls5_PUB +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFZysBBAUDLAAEANe/dond4SyLts9ChApAQlG00j/VBS7t +hUyZC2vKj+GSKwbeRVyiaNg8 +-----END PUBLIC KEY----- + +PrivateKey=BOB_wap-wsg-idm-ecid-wtls5 +-----BEGIN EC PRIVATE KEY----- +MFMCAQEEFQGtprhp5jEd30cnS8sigLBq4Yp33KAHBgVnKwEEBaEuAywABAfNzYWB +8kZqw2Uxwk0MOs1ASWEDVwcPiLOoR52YLe54y7vb9KlUXY+mKA== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_wap-wsg-idm-ecid-wtls5_PUB +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFZysBBAUDLAAEB83NhYHyRmrDZTHCTQw6zUBJYQNXBw+I +s6hHnZgt7njLu9v0qVRdj6Yo +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_wap-wsg-idm-ecid-wtls5 +PeerKey=BOB_wap-wsg-idm-ecid-wtls5_PUB +SharedSecret=066091c591278f5b949106052b2546aacc20917c20 + +# ECDH Bob with Alice peer +Derive=BOB_wap-wsg-idm-ecid-wtls5 +PeerKey=ALICE_wap-wsg-idm-ecid-wtls5_PUB +SharedSecret=066091c591278f5b949106052b2546aacc20917c20 + +# TEST CURVE wap-wsg-idm-ecid-wtls6 + +PrivateKey=ALICE_wap-wsg-idm-ecid-wtls6 +-----BEGIN EC PRIVATE KEY----- +MD4CAQEEDksnBE2s80zAbKgE/3lroAcGBWcrAQQGoSADHgAExnEWLvXVaXmvu1vV +cn18ncfVbUwq9Wti9+Y0Wg== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_wap-wsg-idm-ecid-wtls6_PUB +-----BEGIN PUBLIC KEY----- +MDIwEAYHKoZIzj0CAQYFZysBBAYDHgAExnEWLvXVaXmvu1vVcn18ncfVbUwq9Wti +9+Y0Wg== +-----END PUBLIC KEY----- + +PrivateKey=BOB_wap-wsg-idm-ecid-wtls6 +-----BEGIN EC PRIVATE KEY----- +MD4CAQEEDreLXPgqXwEQTUjcJhT0oAcGBWcrAQQGoSADHgAEbcW3kXzC+caKZQCY +ZCt+oCVUkp3OE1Jre/jspw== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_wap-wsg-idm-ecid-wtls6_PUB +-----BEGIN PUBLIC KEY----- +MDIwEAYHKoZIzj0CAQYFZysBBAYDHgAEbcW3kXzC+caKZQCYZCt+oCVUkp3OE1Jr +e/jspw== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_wap-wsg-idm-ecid-wtls6 +PeerKey=BOB_wap-wsg-idm-ecid-wtls6_PUB +SharedSecret=8d184455748c56115ba2183070b0 + +# ECDH Bob with Alice peer +Derive=BOB_wap-wsg-idm-ecid-wtls6 +PeerKey=ALICE_wap-wsg-idm-ecid-wtls6_PUB +SharedSecret=8d184455748c56115ba2183070b0 + +# TEST CURVE wap-wsg-idm-ecid-wtls7 + +PrivateKey=ALICE_wap-wsg-idm-ecid-wtls7 +-----BEGIN EC PRIVATE KEY----- +MFECAQEEFQC56iKyI36W4kTLTB2IjuNwAuVOoKAHBgVnKwEEB6EsAyoABD8VawbE +Py+68QVZd9ZF46q8HOpasX2Z0x5N44TXL2v0844hRUk820s= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_wap-wsg-idm-ecid-wtls7_PUB +-----BEGIN PUBLIC KEY----- +MD4wEAYHKoZIzj0CAQYFZysBBAcDKgAEPxVrBsQ/L7rxBVl31kXjqrwc6lqxfZnT +Hk3jhNcva/TzjiFFSTzbSw== +-----END PUBLIC KEY----- + +PrivateKey=BOB_wap-wsg-idm-ecid-wtls7 +-----BEGIN EC PRIVATE KEY----- +MFECAQEEFQCvja8qNtRcVqTaZXMVim7KE39wPKAHBgVnKwEEB6EsAyoABIlmm4WD +6fy+xy6r6mp8UU9h6ad8t2F0AHgmh19HcnkHO7ruESZsgpA= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_wap-wsg-idm-ecid-wtls7_PUB +-----BEGIN PUBLIC KEY----- +MD4wEAYHKoZIzj0CAQYFZysBBAcDKgAEiWabhYPp/L7HLqvqanxRT2Hpp3y3YXQA +eCaHX0dyeQc7uu4RJmyCkA== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_wap-wsg-idm-ecid-wtls7 +PeerKey=BOB_wap-wsg-idm-ecid-wtls7_PUB +SharedSecret=990eda6a0406caef965018b97c94d0faa200f6e4 + +# ECDH Bob with Alice peer +Derive=BOB_wap-wsg-idm-ecid-wtls7 +PeerKey=ALICE_wap-wsg-idm-ecid-wtls7_PUB +SharedSecret=990eda6a0406caef965018b97c94d0faa200f6e4 + +# TEST CURVE wap-wsg-idm-ecid-wtls8 + +PrivateKey=ALICE_wap-wsg-idm-ecid-wtls8 +-----BEGIN EC PRIVATE KEY----- +MD8CAQEEDwDWbrZ9+XqeK4zjpc5TKKAHBgVnKwEECKEgAx4ABPiapgCh7s0S0p8Q +xCzah8ieFlFkIWsVTlyMRaI= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_wap-wsg-idm-ecid-wtls8_PUB +-----BEGIN PUBLIC KEY----- +MDIwEAYHKoZIzj0CAQYFZysBBAgDHgAE+JqmAKHuzRLSnxDELNqHyJ4WUWQhaxVO +XIxFog== +-----END PUBLIC KEY----- + +PrivateKey=BOB_wap-wsg-idm-ecid-wtls8 +-----BEGIN EC PRIVATE KEY----- +MD8CAQEEDwB6BOsugxHI+XhTjE52DqAHBgVnKwEECKEgAx4ABNAqTJDeMvYSS7oL +69JBrNuONKTM17rs5xyqPY8= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_wap-wsg-idm-ecid-wtls8_PUB +-----BEGIN PUBLIC KEY----- +MDIwEAYHKoZIzj0CAQYFZysBBAgDHgAE0CpMkN4y9hJLugvr0kGs2440pMzXuuzn +HKo9jw== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_wap-wsg-idm-ecid-wtls8 +PeerKey=BOB_wap-wsg-idm-ecid-wtls8_PUB +SharedSecret=7524c547bd6b26644ce70571cb06 + +# ECDH Bob with Alice peer +Derive=BOB_wap-wsg-idm-ecid-wtls8 +PeerKey=ALICE_wap-wsg-idm-ecid-wtls8_PUB +SharedSecret=7524c547bd6b26644ce70571cb06 + +# TEST CURVE wap-wsg-idm-ecid-wtls9 + +PrivateKey=ALICE_wap-wsg-idm-ecid-wtls9 +-----BEGIN EC PRIVATE KEY----- +MFECAQEEFQATTfvo2/OwheLpdp2tWfjTqhtNEKAHBgVnKwEECaEsAyoABFsLXLD1 +/W4E5WUx/lkVB7BODJzzUCqHZMUxJF+6MIiF28ZNiBG27oU= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_wap-wsg-idm-ecid-wtls9_PUB +-----BEGIN PUBLIC KEY----- +MD4wEAYHKoZIzj0CAQYFZysBBAkDKgAEWwtcsPX9bgTlZTH+WRUHsE4MnPNQKodk +xTEkX7owiIXbxk2IEbbuhQ== +-----END PUBLIC KEY----- + +PrivateKey=BOB_wap-wsg-idm-ecid-wtls9 +-----BEGIN EC PRIVATE KEY----- +MFECAQEEFQB3aR8xyVolTZuDxrJOuNmiiUjzbKAHBgVnKwEECaEsAyoABDQ15b1M +qFB4WutPIxH0Zvnn4Gd4JBIHIBKEzwOfdXUUVjPufTJu8Fc= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_wap-wsg-idm-ecid-wtls9_PUB +-----BEGIN PUBLIC KEY----- +MD4wEAYHKoZIzj0CAQYFZysBBAkDKgAENDXlvUyoUHha608jEfRm+efgZ3gkEgcg +EoTPA591dRRWM+59Mm7wVw== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_wap-wsg-idm-ecid-wtls9 +PeerKey=BOB_wap-wsg-idm-ecid-wtls9_PUB +SharedSecret=5ca1d9eed44def2c390fd5bbb16ca2c3a09eb7b1 + +# ECDH Bob with Alice peer +Derive=BOB_wap-wsg-idm-ecid-wtls9 +PeerKey=ALICE_wap-wsg-idm-ecid-wtls9_PUB +SharedSecret=5ca1d9eed44def2c390fd5bbb16ca2c3a09eb7b1 + +# TEST CURVE wap-wsg-idm-ecid-wtls10 + +PrivateKey=ALICE_wap-wsg-idm-ecid-wtls10 +-----BEGIN EC PRIVATE KEY----- +MG0CAQEEHTVMOCMgZ36Bc9nh6xCdbPP/LW/MmeJQEzlc3I+roAcGBWcrAQQKoUAD +PgAEAdWzmBilsnOrI7wuTeeRPCG7gG5dvjC2uAZxjYtPAbGQLhmrhqoujCx7EaNV +rQiMYp1bPn9N/AvAak3g +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_wap-wsg-idm-ecid-wtls10_PUB +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFZysBBAoDPgAEAdWzmBilsnOrI7wuTeeRPCG7gG5dvjC2 +uAZxjYtPAbGQLhmrhqoujCx7EaNVrQiMYp1bPn9N/AvAak3g +-----END PUBLIC KEY----- + +PrivateKey=BOB_wap-wsg-idm-ecid-wtls10 +-----BEGIN EC PRIVATE KEY----- +MG0CAQEEHSZOrBjAHJG67jNxTVAspwabzB7C5qgqpVKmnzFBoAcGBWcrAQQKoUAD +PgAEAQXjFOtYAgXURpw0ypMbeTDHBqu0AoUWrI6V77AHAOLqCtrtwVV50PWnlHAP +iBlThDOAItLBrvFlsHOC +-----END EC PRIVATE KEY----- + +PublicKey=BOB_wap-wsg-idm-ecid-wtls10_PUB +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFZysBBAoDPgAEAQXjFOtYAgXURpw0ypMbeTDHBqu0AoUW +rI6V77AHAOLqCtrtwVV50PWnlHAPiBlThDOAItLBrvFlsHOC +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_wap-wsg-idm-ecid-wtls10 +PeerKey=BOB_wap-wsg-idm-ecid-wtls10_PUB +SharedSecret=0199de137bc263e25b543994d6315b5a3f1e38e7e1f60662cb5cbaab5f98 + +# ECDH Bob with Alice peer +Derive=BOB_wap-wsg-idm-ecid-wtls10 +PeerKey=ALICE_wap-wsg-idm-ecid-wtls10_PUB +SharedSecret=0199de137bc263e25b543994d6315b5a3f1e38e7e1f60662cb5cbaab5f98 + +# TEST CURVE wap-wsg-idm-ecid-wtls11 + +PrivateKey=ALICE_wap-wsg-idm-ecid-wtls11 +-----BEGIN EC PRIVATE KEY----- +MG4CAQEEHgC7qWvMLdEiTeNea1t44Cktk9HQ1Suvp1N/WVIIaqAHBgVnKwEEC6FA +Az4ABAGXvdXZMRnwE7hAL5iIGUnQaZbxYtzdG1LeIiv+hQBoNBAAZUkUPcaCGME9 +8j0pUFxnY/y1RdS/mJ+tZw== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_wap-wsg-idm-ecid-wtls11_PUB +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFZysBBAsDPgAEAZe91dkxGfATuEAvmIgZSdBplvFi3N0b +Ut4iK/6FAGg0EABlSRQ9xoIYwT3yPSlQXGdj/LVF1L+Yn61n +-----END PUBLIC KEY----- + +PrivateKey=BOB_wap-wsg-idm-ecid-wtls11 +-----BEGIN EC PRIVATE KEY----- +MG4CAQEEHgAYm4a1AjUW8d+nYCx0pvc1VZrCOllC7IzVp6XCzaAHBgVnKwEEC6FA +Az4ABAB1NbfFToiN/9jzflnaFLh86fpeanc7qJuVceucqgE5G7EdVF9eR90vlOp8 +Wm4OCHMLIBLpkxJaGMZXmg== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_wap-wsg-idm-ecid-wtls11_PUB +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFZysBBAsDPgAEAHU1t8VOiI3/2PN+WdoUuHzp+l5qdzuo +m5Vx65yqATkbsR1UX15H3S+U6nxabg4IcwsgEumTEloYxlea +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_wap-wsg-idm-ecid-wtls11 +PeerKey=BOB_wap-wsg-idm-ecid-wtls11_PUB +SharedSecret=01ee4b517d8a64be5ee32e10152c7bbcb8cde73a3da8e9643bce173011f7 + +# ECDH Bob with Alice peer +Derive=BOB_wap-wsg-idm-ecid-wtls11 +PeerKey=ALICE_wap-wsg-idm-ecid-wtls11_PUB +SharedSecret=01ee4b517d8a64be5ee32e10152c7bbcb8cde73a3da8e9643bce173011f7 + +# TEST CURVE wap-wsg-idm-ecid-wtls12 + +PrivateKey=ALICE_wap-wsg-idm-ecid-wtls12 +-----BEGIN EC PRIVATE KEY----- +MGgCAQEEHICdS9BmFmvWWBNGLFIwjHQoe5Xi3xxtcJbjXmygBwYFZysBBAyhPAM6 +AATcbzAiX1InSYCa4gxZsmkWN/3A7yAo27qcCnJ7f1iGld5hEv+ebsboeaKIDk7W +K51YLeENsEfRxw== +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_wap-wsg-idm-ecid-wtls12_PUB +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFZysBBAwDOgAE3G8wIl9SJ0mAmuIMWbJpFjf9wO8gKNu6 +nApye39YhpXeYRL/nm7G6HmiiA5O1iudWC3hDbBH0cc= +-----END PUBLIC KEY----- + +PrivateKey=BOB_wap-wsg-idm-ecid-wtls12 +-----BEGIN EC PRIVATE KEY----- +MGgCAQEEHNnue3gKs+uTabmJHri+mSP3kkc6bNZ/hWFFmp2gBwYFZysBBAyhPAM6 +AAS6TPjQjiBalSZcIz48uZYZ3Qg7Rcg9Br0pfNe+Fst0kfTIWQn4KVJug4LbqC0x +MgKI+ESBiN4oRA== +-----END EC PRIVATE KEY----- + +PublicKey=BOB_wap-wsg-idm-ecid-wtls12_PUB +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFZysBBAwDOgAEukz40I4gWpUmXCM+PLmWGd0IO0XIPQa9 +KXzXvhbLdJH0yFkJ+ClSboOC26gtMTICiPhEgYjeKEQ= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_wap-wsg-idm-ecid-wtls12 +PeerKey=BOB_wap-wsg-idm-ecid-wtls12_PUB +SharedSecret=c75a8283a73312de82c8f99d41a9173a43b8f921e8161dd140131b36 + +# ECDH Bob with Alice peer +Derive=BOB_wap-wsg-idm-ecid-wtls12 +PeerKey=ALICE_wap-wsg-idm-ecid-wtls12_PUB +SharedSecret=c75a8283a73312de82c8f99d41a9173a43b8f921e8161dd140131b36 + +# TEST CURVE brainpoolP160r1 + +PrivateKey=ALICE_brainpoolP160r1 +-----BEGIN EC PRIVATE KEY----- +MFQCAQEEFGU0GLeiDrGVFIK9+lmBik49dHq0oAsGCSskAwMCCAEBAaEsAyoABCQx +/ve3cKi/Zx17M9JS31afTJ2GmT37YfBnXdi59TJ9y8+KN0n/MU4= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP160r1_PUB +-----BEGIN PUBLIC KEY----- +MEIwFAYHKoZIzj0CAQYJKyQDAwIIAQEBAyoABCQx/ve3cKi/Zx17M9JS31afTJ2G +mT37YfBnXdi59TJ9y8+KN0n/MU4= +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP160r1 +-----BEGIN EC PRIVATE KEY----- +MFQCAQEEFG/7pSERuMqDjooVgwFeJe/CNhi1oAsGCSskAwMCCAEBAaEsAyoABE+M +Qx609ZLgWWAUIe9V8rWdMr9MuxhJwet6B5kBmqfyBoW+CrhsTy8= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP160r1_PUB +-----BEGIN PUBLIC KEY----- +MEIwFAYHKoZIzj0CAQYJKyQDAwIIAQEBAyoABE+MQx609ZLgWWAUIe9V8rWdMr9M +uxhJwet6B5kBmqfyBoW+CrhsTy8= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP160r1 +PeerKey=BOB_brainpoolP160r1_PUB +SharedSecret=e4fe5ae99a60d17b597f5705a719cea6709c63b9 + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP160r1 +PeerKey=ALICE_brainpoolP160r1_PUB +SharedSecret=e4fe5ae99a60d17b597f5705a719cea6709c63b9 + +# TEST CURVE brainpoolP160t1 + +PrivateKey=ALICE_brainpoolP160t1 +-----BEGIN EC PRIVATE KEY----- +MFQCAQEEFFlgMlJzL5kMninhxGyI8q1tCc1aoAsGCSskAwMCCAEBAqEsAyoABD+H +VVI8q+fZxM+Z8yrQVnebHKmMIha0Ixq/sYf0VvL6QKtYoDSUVXA= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP160t1_PUB +-----BEGIN PUBLIC KEY----- +MEIwFAYHKoZIzj0CAQYJKyQDAwIIAQECAyoABD+HVVI8q+fZxM+Z8yrQVnebHKmM +Iha0Ixq/sYf0VvL6QKtYoDSUVXA= +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP160t1 +-----BEGIN EC PRIVATE KEY----- +MFQCAQEEFAxaVMfEme9fF9HML/qEGk10itM8oAsGCSskAwMCCAEBAqEsAyoABAiA +NiG7L1yPTggUTQt+iuAk+32uByO47zVXpZH4Tcs0RMmtizLVf2Q= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP160t1_PUB +-----BEGIN PUBLIC KEY----- +MEIwFAYHKoZIzj0CAQYJKyQDAwIIAQECAyoABAiANiG7L1yPTggUTQt+iuAk+32u +ByO47zVXpZH4Tcs0RMmtizLVf2Q= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP160t1 +PeerKey=BOB_brainpoolP160t1_PUB +SharedSecret=199a218458b71a4e13f05a599fc17bc76f30ea2f + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP160t1 +PeerKey=ALICE_brainpoolP160t1_PUB +SharedSecret=199a218458b71a4e13f05a599fc17bc76f30ea2f + +# TEST CURVE brainpoolP192r1 + +PrivateKey=ALICE_brainpoolP192r1 +-----BEGIN EC PRIVATE KEY----- +MGACAQEEGBoiKWVUe9Qt9W/QBJS4hIhMs3YUbL025KALBgkrJAMDAggBAQOhNAMy +AAQcCi9Vkl+bnYpaomv0grPvDtNr7sdQ3kGPL6pHzuQ6jec/7jf1Ms6ziIOEi/M/ +yPU= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP192r1_PUB +-----BEGIN PUBLIC KEY----- +MEowFAYHKoZIzj0CAQYJKyQDAwIIAQEDAzIABBwKL1WSX5udilqia/SCs+8O02vu +x1DeQY8vqkfO5DqN5z/uN/UyzrOIg4SL8z/I9Q== +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP192r1 +-----BEGIN EC PRIVATE KEY----- +MGACAQEEGJLrfB5Y8Ms8TgKygGs4pW6APMmOqMuLL6ALBgkrJAMDAggBAQOhNAMy +AAS//c2Gt1UQD48wUKb6a5eGsLTDFflQe8JR384DJ1pzYmXtdXDaBLiF9eRN5Psx +Ay4= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP192r1_PUB +-----BEGIN PUBLIC KEY----- +MEowFAYHKoZIzj0CAQYJKyQDAwIIAQEDAzIABL/9zYa3VRAPjzBQpvprl4awtMMV ++VB7wlHfzgMnWnNiZe11cNoEuIX15E3k+zEDLg== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP192r1 +PeerKey=BOB_brainpoolP192r1_PUB +SharedSecret=7ce122b49afdfd1adde6cdfaa13dc7180d6d4e70322c8773 + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP192r1 +PeerKey=ALICE_brainpoolP192r1_PUB +SharedSecret=7ce122b49afdfd1adde6cdfaa13dc7180d6d4e70322c8773 + +# TEST CURVE brainpoolP192t1 + +PrivateKey=ALICE_brainpoolP192t1 +-----BEGIN EC PRIVATE KEY----- +MGACAQEEGAldTbmMOw8DmsKoGJAC3xaRMxRNq416mKALBgkrJAMDAggBAQShNAMy +AASYGYnbbT9klV3F9KAcVPPcU4LY8eqXYi1sbQtez+/uf+qRYZbP0HtHYUGoVosG +TQs= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP192t1_PUB +-----BEGIN PUBLIC KEY----- +MEowFAYHKoZIzj0CAQYJKyQDAwIIAQEEAzIABJgZidttP2SVXcX0oBxU89xTgtjx +6pdiLWxtC17P7+5/6pFhls/Qe0dhQahWiwZNCw== +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP192t1 +-----BEGIN EC PRIVATE KEY----- +MGACAQEEGJmT9r5mKXyb0p6hJeCtGI9IjAq+HbPW26ALBgkrJAMDAggBAQShNAMy +AARxK4tIQPazhIi4R2iZlt0MxKY2umd7MlG/9b5sJCnhtydABvbS2njshLD/JehB +IDQ= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP192t1_PUB +-----BEGIN PUBLIC KEY----- +MEowFAYHKoZIzj0CAQYJKyQDAwIIAQEEAzIABHEri0hA9rOEiLhHaJmW3QzEpja6 +Z3syUb/1vmwkKeG3J0AG9tLaeOyEsP8l6EEgNA== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP192t1 +PeerKey=BOB_brainpoolP192t1_PUB +SharedSecret=1a5444c2600d9d21d6a450d158fd25272ade262ab519790b + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP192t1 +PeerKey=ALICE_brainpoolP192t1_PUB +SharedSecret=1a5444c2600d9d21d6a450d158fd25272ade262ab519790b + +# TEST CURVE brainpoolP224r1 + +PrivateKey=ALICE_brainpoolP224r1 +-----BEGIN EC PRIVATE KEY----- +MGwCAQEEHIfdRZjs/bSfVn3csJKzjOlF4p07mAcY1FrVNBygCwYJKyQDAwIIAQEF +oTwDOgAEirRPkAknN0OX3BtirLETEx9Ns0O3pb+i6d1lNLqpdi8x6An6cFxd4KL4 +UEjSm7qUe/y0XVmNYtI= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP224r1_PUB +-----BEGIN PUBLIC KEY----- +MFIwFAYHKoZIzj0CAQYJKyQDAwIIAQEFAzoABIq0T5AJJzdDl9wbYqyxExMfTbND +t6W/oundZTS6qXYvMegJ+nBcXeCi+FBI0pu6lHv8tF1ZjWLS +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP224r1 +-----BEGIN EC PRIVATE KEY----- +MGwCAQEEHL2m5CVp60eC7hlMXyzvA6gwXC+Hosf2tKkVsZugCwYJKyQDAwIIAQEF +oTwDOgAEzqqAEj1uZnDJgTRAUEl/k2ld7amGBw5sqsbhRGN2w5GXhQnCWrt4vAg0 +ks/10+XRCVvQW/+A1Wg= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP224r1_PUB +-----BEGIN PUBLIC KEY----- +MFIwFAYHKoZIzj0CAQYJKyQDAwIIAQEFAzoABM6qgBI9bmZwyYE0QFBJf5NpXe2p +hgcObKrG4URjdsORl4UJwlq7eLwINJLP9dPl0Qlb0Fv/gNVo +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP224r1 +PeerKey=BOB_brainpoolP224r1_PUB +SharedSecret=419e446a66968fcc372126cff4d637505c848c3a9b82503f2d441215 + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP224r1 +PeerKey=ALICE_brainpoolP224r1_PUB +SharedSecret=419e446a66968fcc372126cff4d637505c848c3a9b82503f2d441215 + +# TEST CURVE brainpoolP224t1 + +PrivateKey=ALICE_brainpoolP224t1 +-----BEGIN EC PRIVATE KEY----- +MGwCAQEEHEsFgnKmLojcsUdIGFQjAUNe8pH2sRIDDMgcmaKgCwYJKyQDAwIIAQEG +oTwDOgAEmJWHAhkCrL44qPxF7COx1c88I4N+b7hEZXzZtgtbxKqIN4QMH5G8mKtj +DP9rlGL4QvleT1BWRAU= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP224t1_PUB +-----BEGIN PUBLIC KEY----- +MFIwFAYHKoZIzj0CAQYJKyQDAwIIAQEGAzoABJiVhwIZAqy+OKj8RewjsdXPPCOD +fm+4RGV82bYLW8SqiDeEDB+RvJirYwz/a5Ri+EL5Xk9QVkQF +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP224t1 +-----BEGIN EC PRIVATE KEY----- +MGwCAQEEHCyuUfonb86gtWtvBnvZuhIebqfNmrVUk0Vnl8CgCwYJKyQDAwIIAQEG +oTwDOgAEGDpqveWRhK/QBw4znjZJs+ECrGfL9qdL4OgQtWIzSuh/GVy+TLBmIFjR +PjTFS9cEgsOxj/SF7bY= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP224t1_PUB +-----BEGIN PUBLIC KEY----- +MFIwFAYHKoZIzj0CAQYJKyQDAwIIAQEGAzoABBg6ar3lkYSv0AcOM542SbPhAqxn +y/anS+DoELViM0rofxlcvkywZiBY0T40xUvXBILDsY/0he22 +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP224t1 +PeerKey=BOB_brainpoolP224t1_PUB +SharedSecret=8f83465fb6353912a51c2809ea30b19b73b3e391c0422650e0f20b58 + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP224t1 +PeerKey=ALICE_brainpoolP224t1_PUB +SharedSecret=8f83465fb6353912a51c2809ea30b19b73b3e391c0422650e0f20b58 + +# TEST CURVE brainpoolP256r1 + +PrivateKey=ALICE_brainpoolP256r1 +-----BEGIN EC PRIVATE KEY----- +MHgCAQEEIBMmEFKb8UQb4oCuk226EiMpk/omRsx/rrRNuh9WGB/zoAsGCSskAwMC +CAEBB6FEA0IABHiGHSaSKZMZ3imy/aj/70idv3e3BwrNmV4IHEYn+yijeeSKIre0 +NbFRHhsxAxW8aUViugPioLvLBZBPix6+QRk= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP256r1_PUB +-----BEGIN PUBLIC KEY----- +MFowFAYHKoZIzj0CAQYJKyQDAwIIAQEHA0IABHiGHSaSKZMZ3imy/aj/70idv3e3 +BwrNmV4IHEYn+yijeeSKIre0NbFRHhsxAxW8aUViugPioLvLBZBPix6+QRk= +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP256r1 +-----BEGIN EC PRIVATE KEY----- +MHgCAQEEIKXsf2pxFfTQiwbW2SKwZq50UOGhJYJZYO/xY33RHuQaoAsGCSskAwMC +CAEBB6FEA0IABAvxQjYcsWeFXB2PMwXoRW4NzOeAFMOosSevYCNvsaMgFwZ+XfqX +/LQBtA9E1KrcUbcAYD1pLeqWOGGAUDGPjTg= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP256r1_PUB +-----BEGIN PUBLIC KEY----- +MFowFAYHKoZIzj0CAQYJKyQDAwIIAQEHA0IABAvxQjYcsWeFXB2PMwXoRW4NzOeA +FMOosSevYCNvsaMgFwZ+XfqX/LQBtA9E1KrcUbcAYD1pLeqWOGGAUDGPjTg= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP256r1 +PeerKey=BOB_brainpoolP256r1_PUB +SharedSecret=78ed4b7bb4ed808813f8c27132fe04f5d805365549b754994d83b002416b6ba0 + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP256r1 +PeerKey=ALICE_brainpoolP256r1_PUB +SharedSecret=78ed4b7bb4ed808813f8c27132fe04f5d805365549b754994d83b002416b6ba0 + +# TEST CURVE brainpoolP256t1 + +PrivateKey=ALICE_brainpoolP256t1 +-----BEGIN EC PRIVATE KEY----- +MHgCAQEEIC4yFvVLhvRyF9wuyYJbncxLagsMCD+Sxt2vAJiKFpKdoAsGCSskAwMC +CAEBCKFEA0IABIhsZfBNMo94BOIjshQ1XtLVGEvXzXDc5MRMdgomcJtPY20jUBdq +SgKApi2UGvFQc/lGanXl2cvUnPFKSVNxYIY= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP256t1_PUB +-----BEGIN PUBLIC KEY----- +MFowFAYHKoZIzj0CAQYJKyQDAwIIAQEIA0IABIhsZfBNMo94BOIjshQ1XtLVGEvX +zXDc5MRMdgomcJtPY20jUBdqSgKApi2UGvFQc/lGanXl2cvUnPFKSVNxYIY= +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP256t1 +-----BEGIN EC PRIVATE KEY----- +MHgCAQEEIIfXus/y+3RdwUZ00db3boxPCzzRcI3CgIC8ggdGDPqPoAsGCSskAwMC +CAEBCKFEA0IABHZWdsjogbJkRD2sPE7KxjZkyy+qtZVc/PjkO/NF8X6PVSBXkdEG +5PAoKl9JVreYWxG28xGxeiNp2QiZ3UPVSKA= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP256t1_PUB +-----BEGIN PUBLIC KEY----- +MFowFAYHKoZIzj0CAQYJKyQDAwIIAQEIA0IABHZWdsjogbJkRD2sPE7KxjZkyy+q +tZVc/PjkO/NF8X6PVSBXkdEG5PAoKl9JVreYWxG28xGxeiNp2QiZ3UPVSKA= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP256t1 +PeerKey=BOB_brainpoolP256t1_PUB +SharedSecret=287a8f19e6f06476b222805eb11907c536fa6ea02b8877ea6d5323f9fabccdd8 + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP256t1 +PeerKey=ALICE_brainpoolP256t1_PUB +SharedSecret=287a8f19e6f06476b222805eb11907c536fa6ea02b8877ea6d5323f9fabccdd8 + +# TEST CURVE brainpoolP320r1 + +PrivateKey=ALICE_brainpoolP320r1 +-----BEGIN EC PRIVATE KEY----- +MIGQAgEBBChEG+GykvgdkDphx+i7OI1YW4TV7VFw3r3GWwnw4ZkQyhtXb2me1CVJ +oAsGCSskAwMCCAEBCaFUA1IABFDmVKAu6UDU1doe67Fzp3WeLAKNcaLjX13W0X70 +4bqNvSU7q747RCCbd46miRYsiqYejnsX0A/A5bOiI1LJixCGcAgm1pnGajKeok/e +csl+ +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP320r1_PUB +-----BEGIN PUBLIC KEY----- +MGowFAYHKoZIzj0CAQYJKyQDAwIIAQEJA1IABFDmVKAu6UDU1doe67Fzp3WeLAKN +caLjX13W0X704bqNvSU7q747RCCbd46miRYsiqYejnsX0A/A5bOiI1LJixCGcAgm +1pnGajKeok/ecsl+ +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP320r1 +-----BEGIN EC PRIVATE KEY----- +MIGQAgEBBCiL2CGoxCnxl3HFVe44wLrq1Ui9ND0Rfq1pYsPLzZ4FEC3swi1vktoy +oAsGCSskAwMCCAEBCaFUA1IABHFexsmyGSMPdLCma5vzaFlbk/gAkq6yfpE+BMok +I+7GXx4dJz9+sKOi8h++T4SnocW03M7I5zOQVfK+82Kkq/vXCzEdkVRUPU4HVls7 +nil0 +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP320r1_PUB +-----BEGIN PUBLIC KEY----- +MGowFAYHKoZIzj0CAQYJKyQDAwIIAQEJA1IABHFexsmyGSMPdLCma5vzaFlbk/gA +kq6yfpE+BMokI+7GXx4dJz9+sKOi8h++T4SnocW03M7I5zOQVfK+82Kkq/vXCzEd +kVRUPU4HVls7nil0 +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP320r1 +PeerKey=BOB_brainpoolP320r1_PUB +SharedSecret=13a56c63c2dafe3e053534d5bf32c7eb4a0733bf356510725d378c5cbcf6974240719e3e53b352bb + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP320r1 +PeerKey=ALICE_brainpoolP320r1_PUB +SharedSecret=13a56c63c2dafe3e053534d5bf32c7eb4a0733bf356510725d378c5cbcf6974240719e3e53b352bb + +# TEST CURVE brainpoolP320t1 + +PrivateKey=ALICE_brainpoolP320t1 +-----BEGIN EC PRIVATE KEY----- +MIGQAgEBBCjGX454gtrCjrkzhhu0tIBFdgmwUmLgXxxQXq9+jWzBGgIvqwCdXRBJ +oAsGCSskAwMCCAEBCqFUA1IABFN48RBqcd0PyU7NTRjaJsUaYXBlectX7JwhB/X/ +bbuNUK1YW9tZJZSZ/bBUfVfEgUhC+0qrvomc3xhyYBJIQeGWODwC1rHjO2H7GGvx +1HmF +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP320t1_PUB +-----BEGIN PUBLIC KEY----- +MGowFAYHKoZIzj0CAQYJKyQDAwIIAQEKA1IABFN48RBqcd0PyU7NTRjaJsUaYXBl +ectX7JwhB/X/bbuNUK1YW9tZJZSZ/bBUfVfEgUhC+0qrvomc3xhyYBJIQeGWODwC +1rHjO2H7GGvx1HmF +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP320t1 +-----BEGIN EC PRIVATE KEY----- +MIGQAgEBBCgyVOIfYIzdcZpVc85Dm12b4Ymac/TeBs0rg863nJCmdbwehodz5JLn +oAsGCSskAwMCCAEBCqFUA1IABLXO5ngGf17dU+aeQetDyXqlTTxtTrav1/NGb+i9 +BQUAsbIMQkdY0zWWbhksoMn56F2DBTSFwBlb1hBtp9fNIGUbgKqOlvtBpQHIoKXY +Eq3l +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP320t1_PUB +-----BEGIN PUBLIC KEY----- +MGowFAYHKoZIzj0CAQYJKyQDAwIIAQEKA1IABLXO5ngGf17dU+aeQetDyXqlTTxt +Trav1/NGb+i9BQUAsbIMQkdY0zWWbhksoMn56F2DBTSFwBlb1hBtp9fNIGUbgKqO +lvtBpQHIoKXYEq3l +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP320t1 +PeerKey=BOB_brainpoolP320t1_PUB +SharedSecret=170d1f5fc4248700be75499eac813fac642df1311ab005e10796cc2ef43b82f8d788eb232d580243 + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP320t1 +PeerKey=ALICE_brainpoolP320t1_PUB +SharedSecret=170d1f5fc4248700be75499eac813fac642df1311ab005e10796cc2ef43b82f8d788eb232d580243 + +# TEST CURVE brainpoolP384r1 + +PrivateKey=ALICE_brainpoolP384r1 +-----BEGIN EC PRIVATE KEY----- +MIGoAgEBBDB5NssOnd89sgvzDsj5pDNTx51VdeIW23xSXHsdK4C8e7+5p550IoD6 +xcpd7ff9qgOgCwYJKyQDAwIIAQELoWQDYgAEgQEp8Mrclp7hd1kkTnaXCEzAyhlM +UtBIXQGI8ALS3FaMoL4mjIlhAU+vNdIcI9NGBx7QFRUzFIy3IAyF+VPq8fM7Yyjk +0x4P8UB1N+d2odKvKFqFBQBQmd6S5h+0ijis +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP384r1_PUB +-----BEGIN PUBLIC KEY----- +MHowFAYHKoZIzj0CAQYJKyQDAwIIAQELA2IABIEBKfDK3Jae4XdZJE52lwhMwMoZ +TFLQSF0BiPAC0txWjKC+JoyJYQFPrzXSHCPTRgce0BUVMxSMtyAMhflT6vHzO2Mo +5NMeD/FAdTfndqHSryhahQUAUJnekuYftIo4rA== +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP384r1 +-----BEGIN EC PRIVATE KEY----- +MIGoAgEBBDAXoRGwEo8iza9gc2eTJvXl4d9MhDnyqwWUX3SrO050bOHK2JZlc+86 +HiSHO6MV91mgCwYJKyQDAwIIAQELoWQDYgAEDxy4ddTAt+nTw0F16nhHhmmNbns3 +bX3rKEcY+686v58dAvx4VWOC7vHsiwek9ZYbZSkmKy6H78ndkBrmU3BBR7hFGyU7 +CWSDFoH5Oybk0+JzkNa0qAm8+MpAIcFqb+IY +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP384r1_PUB +-----BEGIN PUBLIC KEY----- +MHowFAYHKoZIzj0CAQYJKyQDAwIIAQELA2IABA8cuHXUwLfp08NBdep4R4ZpjW57 +N2196yhHGPuvOr+fHQL8eFVjgu7x7IsHpPWWG2UpJisuh+/J3ZAa5lNwQUe4RRsl +OwlkgxaB+Tsm5NPic5DWtKgJvPjKQCHBam/iGA== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP384r1 +PeerKey=BOB_brainpoolP384r1_PUB +SharedSecret=0b3ad57e83759760d94904d9ea266b538120c6db2b5046217aa1ecd924828b949d335c8ce8a5b36bac7556bf6058c40a + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP384r1 +PeerKey=ALICE_brainpoolP384r1_PUB +SharedSecret=0b3ad57e83759760d94904d9ea266b538120c6db2b5046217aa1ecd924828b949d335c8ce8a5b36bac7556bf6058c40a + +# TEST CURVE brainpoolP384t1 + +PrivateKey=ALICE_brainpoolP384t1 +-----BEGIN EC PRIVATE KEY----- +MIGoAgEBBDBhv/Ff07ybES61s5DBD+kHzraR6r95bGPwZbjWbY6ugS04lkvVKwr/ +xnAAvcF02jKgCwYJKyQDAwIIAQEMoWQDYgAENpcXDPQYBhU8zi4G6mQtjdgVmpdn +4Iuwb0/VVmopmFAL0ISDB0qk9Hn2Lt9rmE8NathqkKKlVHd/Y5FRqf06PZj8jaYH +Axvz5E1J8ykrbT7rUpbj9Df2t+eop9YBbSxc +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP384t1_PUB +-----BEGIN PUBLIC KEY----- +MHowFAYHKoZIzj0CAQYJKyQDAwIIAQEMA2IABDaXFwz0GAYVPM4uBupkLY3YFZqX +Z+CLsG9P1VZqKZhQC9CEgwdKpPR59i7fa5hPDWrYapCipVR3f2ORUan9Oj2Y/I2m +BwMb8+RNSfMpK20+61KW4/Q39rfnqKfWAW0sXA== +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP384t1 +-----BEGIN EC PRIVATE KEY----- +MIGoAgEBBDBsUc4UweUxdFh3b10XofMoyHT13Ds4DLER5E5Oo6MWwj7CFqq0vgZY +fk/RSAU8MAegCwYJKyQDAwIIAQEMoWQDYgAER24uXKoWWnFFusbCPtDzz7n9zDIW +zFqMeP6YE3MOseyfRFcKIVz/omWBVwpUbd3ca6Ord/Mh8hThIV4tZbPUwlyzzEW2 +NMJtd2t5JKdja0aT7fbp7NS9IJzNIRDl7r8z +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP384t1_PUB +-----BEGIN PUBLIC KEY----- +MHowFAYHKoZIzj0CAQYJKyQDAwIIAQEMA2IABEduLlyqFlpxRbrGwj7Q88+5/cwy +FsxajHj+mBNzDrHsn0RXCiFc/6JlgVcKVG3d3Gujq3fzIfIU4SFeLWWz1MJcs8xF +tjTCbXdreSSnY2tGk+326ezUvSCczSEQ5e6/Mw== +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP384t1 +PeerKey=BOB_brainpoolP384t1_PUB +SharedSecret=0fde85a61157cdd898196f291802ebd57bb2e39d98c4e6ad9bb3e2e0375e1df9bf7dadb8df7db1fea32818ef2c88babc + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP384t1 +PeerKey=ALICE_brainpoolP384t1_PUB +SharedSecret=0fde85a61157cdd898196f291802ebd57bb2e39d98c4e6ad9bb3e2e0375e1df9bf7dadb8df7db1fea32818ef2c88babc + +# TEST CURVE brainpoolP512r1 + +PrivateKey=ALICE_brainpoolP512r1 +-----BEGIN EC PRIVATE KEY----- +MIHaAgEBBECMxUrk8DnFiTzmA2zbxijR6tBKSCaKV0vtbAxV5PrpqWCghKV4UpP5 +9CQNGV9Io9cJmMrQ2cpfkr2uQybzD3LAoAsGCSskAwMCCAEBDaGBhQOBggAEHlj4 +gsnR2wN53k/hSIcAtbgHwbld5uS1/gR8RtoyaEDit4Ti59/I9kRkZFEHJemhpTP2 +xY03j3M5rHP7vzk1NVKgYHJQ9MvMtPd6G+Fj5D0YN1nnyqP3IJ8PyXmOdXBMoMHu ++H50QbYZpcUFOqJhKp1T0+58xTXJdP8axl1IjtI= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP512r1_PUB +-----BEGIN PUBLIC KEY----- +MIGbMBQGByqGSM49AgEGCSskAwMCCAEBDQOBggAEHlj4gsnR2wN53k/hSIcAtbgH +wbld5uS1/gR8RtoyaEDit4Ti59/I9kRkZFEHJemhpTP2xY03j3M5rHP7vzk1NVKg +YHJQ9MvMtPd6G+Fj5D0YN1nnyqP3IJ8PyXmOdXBMoMHu+H50QbYZpcUFOqJhKp1T +0+58xTXJdP8axl1IjtI= +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP512r1 +-----BEGIN EC PRIVATE KEY----- +MIHaAgEBBEBkDXT6Tj4SyZ6+ORP0t1JfTtqZHBetPsIGcSyRmkeRkShhVBroW4Ts +VqLSSMvzqVQILjGhOMVsfe0susPS/u/CoAsGCSskAwMCCAEBDaGBhQOBggAEo3NA +MIGp0rJxReih4nbEiTegA4pSEk84CUHHBLGuLsekVo1vmj1LTnu4dVuILLf+MSZh +9jjNmsWuEGSHIaZx6hniFHGdaRQ3GFODGvkE6z2d2kwv3Fmsq9+gu4By2OhSCfP+ +hpFhobXAYwWXzgaBFH+TqlF31Dyr2fuPnkL7tK4= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP512r1_PUB +-----BEGIN PUBLIC KEY----- +MIGbMBQGByqGSM49AgEGCSskAwMCCAEBDQOBggAEo3NAMIGp0rJxReih4nbEiTeg +A4pSEk84CUHHBLGuLsekVo1vmj1LTnu4dVuILLf+MSZh9jjNmsWuEGSHIaZx6hni +FHGdaRQ3GFODGvkE6z2d2kwv3Fmsq9+gu4By2OhSCfP+hpFhobXAYwWXzgaBFH+T +qlF31Dyr2fuPnkL7tK4= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP512r1 +PeerKey=BOB_brainpoolP512r1_PUB +SharedSecret=80751feb09215a9da32f9f8c97133f53f0286a89969bd00d7f365da7f7736f45e634a35012d71b22f09bd89760ab0d2b0d426133cd9a379da9739d0f5f2e0360 + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP512r1 +PeerKey=ALICE_brainpoolP512r1_PUB +SharedSecret=80751feb09215a9da32f9f8c97133f53f0286a89969bd00d7f365da7f7736f45e634a35012d71b22f09bd89760ab0d2b0d426133cd9a379da9739d0f5f2e0360 + +# TEST CURVE brainpoolP512t1 + +PrivateKey=ALICE_brainpoolP512t1 +-----BEGIN EC PRIVATE KEY----- +MIHaAgEBBECbwO3WdaC7ErmKqF/qaKD9jty2YyBtEJZIkwx3eXDn+Izia0/1pyGF +oRYYiYhZXoVuvKLom/eeK0IFTGmpESlyoAsGCSskAwMCCAEBDqGBhQOBggAEH/z+ +dOHhLfxI0GLpmUjYaSlC2H380nBhe6P4GSrnpya/Yew0IRyDfo0p99vwgOaLh8wJ +IH3Joy4NMtHthg8IAFmoctAoWkQ21E0HjPjwqZbxmvBD0S9opVycFR8XUSaK0EHy +HO7hfuVsdyYzIIjpKViP7uOOtrggsTepWzBQt9I= +-----END EC PRIVATE KEY----- + +PublicKey=ALICE_brainpoolP512t1_PUB +-----BEGIN PUBLIC KEY----- +MIGbMBQGByqGSM49AgEGCSskAwMCCAEBDgOBggAEH/z+dOHhLfxI0GLpmUjYaSlC +2H380nBhe6P4GSrnpya/Yew0IRyDfo0p99vwgOaLh8wJIH3Joy4NMtHthg8IAFmo +ctAoWkQ21E0HjPjwqZbxmvBD0S9opVycFR8XUSaK0EHyHO7hfuVsdyYzIIjpKViP +7uOOtrggsTepWzBQt9I= +-----END PUBLIC KEY----- + +PrivateKey=BOB_brainpoolP512t1 +-----BEGIN EC PRIVATE KEY----- +MIHaAgEBBEAVK2tYHA61OVj+kF5PadyNMdw3Mqb6hxOIi+vRFQS5fwhN34vnH0f5 +kuTjhPzn/zKpM+WTpxlIdvJMblSQ8ZW9oAsGCSskAwMCCAEBDqGBhQOBggAEE6EY +YwpBA3NBflj/HYwxzbaxuALefTsTr5O0bLqh4J6SxkAwsQnlkU8PCnzEuvdBNxSw +W7276VGfwDO7kFKEdZq3cnT+P41yi/XBVK7xgaL1R2U+vCxWsje6JLixWEdJkJ+6 +TqPKICdriNge1zbjvfhb01zP58E/Xsgh5/deJco= +-----END EC PRIVATE KEY----- + +PublicKey=BOB_brainpoolP512t1_PUB +-----BEGIN PUBLIC KEY----- +MIGbMBQGByqGSM49AgEGCSskAwMCCAEBDgOBggAEE6EYYwpBA3NBflj/HYwxzbax +uALefTsTr5O0bLqh4J6SxkAwsQnlkU8PCnzEuvdBNxSwW7276VGfwDO7kFKEdZq3 +cnT+P41yi/XBVK7xgaL1R2U+vCxWsje6JLixWEdJkJ+6TqPKICdriNge1zbjvfhb +01zP58E/Xsgh5/deJco= +-----END PUBLIC KEY----- + +# ECDH Alice with Bob peer +Derive=ALICE_brainpoolP512t1 +PeerKey=BOB_brainpoolP512t1_PUB +SharedSecret=0afecb44d108c9bf2bc159fcc613a1429e3906d5d201d579adc2167058e972ef85fc13d837f3566a2ff3a881e47bfe36b722baf4a9f865097fe11e171189a944 + +# ECDH Bob with Alice peer +Derive=BOB_brainpoolP512t1 +PeerKey=ALICE_brainpoolP512t1_PUB +SharedSecret=0afecb44d108c9bf2bc159fcc613a1429e3906d5d201d579adc2167058e972ef85fc13d837f3566a2ff3a881e47bfe36b722baf4a9f865097fe11e171189a944 + + +## ECDH Tests: KATs from RFC 5114, RFC 5903 and RFC 7027 + + +# Keys and shared secrets from RFC 5114 +PrivateKey=PRIME192V1_RFC5114 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBgyP6MWnY6cZZP1lHa8 +FCAAq1vg4knENCahNAMyAATNRkiez9bBBeez0yVm4rEi4kmrqt2HBhJoiHtId99R +3U3D1v0R8KJvj9OEQxeRbpo= +-----END PRIVATE KEY----- + +PublicKey=PRIME192V1_RFC5114-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEzUZIns/WwQXns9MlZuKxIuJJq6rd +hwYSaIh7SHffUd1Nw9b9EfCib4/ThEMXkW6a +-----END PUBLIC KEY----- + +PrivateKey=PRIME192V1_RFC5114-Peer +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBhjH5W7SmdjLJxHbu6a +tpWrJAoEmTB/z2KhNAMyAARRmhIWgOAEVGa6Id8u7kf1lztQBXfvE9X/YTq01kzu +OiCHW9sQ+VP2swygcsYKpX8= +-----END PRIVATE KEY----- + +PublicKey=PRIME192V1_RFC5114-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEUZoSFoDgBFRmuiHfLu5H9Zc7UAV3 +7xPV/2E6tNZM7jogh1vbEPlT9rMMoHLGCqV/ +-----END PUBLIC KEY----- + + +Derive=PRIME192V1_RFC5114 +PeerKey=PRIME192V1_RFC5114-Peer-PUBLIC +SharedSecret=AD420182633F8526BFE954ACDA376F05E5FF4F837F54FEBE + +Derive=PRIME192V1_RFC5114-Peer +PeerKey=PRIME192V1_RFC5114-PUBLIC +SharedSecret=AD420182633F8526BFE954ACDA376F05E5FF4F837F54FEBE + +PrivateKey=SECP224R1_RFC5114 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBy1WOtsKI2nB7u0+PuuKrnp +y2LjvFx1c+IuJtN/oTwDOgAESd/vMJ+BSIwwTP9as+5aIVQ2fceDMVDgpR8+608r +XuRXYsT2VMGgxn9Uz4iwFrUbzj18Io1XrbQ= +-----END PRIVATE KEY----- + +PublicKey=SECP224R1_RFC5114-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAESd/vMJ+BSIwwTP9as+5aIVQ2fceDMVDg +pR8+608rXuRXYsT2VMGgxn9Uz4iwFrUbzj18Io1XrbQ= +-----END PUBLIC KEY----- + +PrivateKey=SECP224R1_RFC5114-Peer +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBysOxrdPZdw5vanCO6fO44K +s7SA6fJ/hciLXm0YoTwDOgAEazrJao0M3mpVmb6AMu3xDBYtCorSGVBtzUKiB9SR +vpnCE6fRyjcG3r/jBfNhr8uzPiYJyLFhitU= +-----END PRIVATE KEY----- + +PublicKey=SECP224R1_RFC5114-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEazrJao0M3mpVmb6AMu3xDBYtCorSGVBt +zUKiB9SRvpnCE6fRyjcG3r/jBfNhr8uzPiYJyLFhitU= +-----END PUBLIC KEY----- + + +Derive=SECP224R1_RFC5114 +PeerKey=SECP224R1_RFC5114-Peer-PUBLIC +SharedSecret=52272F50F46F4EDC9151569092F46DF2D96ECC3B6DC1714A4EA949FA + +Derive=SECP224R1_RFC5114-Peer +PeerKey=SECP224R1_RFC5114-PUBLIC +SharedSecret=52272F50F46F4EDC9151569092F46DF2D96ECC3B6DC1714A4EA949FA + +PrivateKey=PRIME256V1_RFC5114 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQggUJkFF8vVvLpao4z +ehKEmT+vQypavOWehntykdUHo6+hRANCAAQq9QLzvolS8sm1qNQWDQnpcWW+ULxC +rkpejTtLqDrrFesPr0yphsTThoGg+YctedVnlb1L/25t48D1AV7OXv2F +-----END PRIVATE KEY----- + +PublicKey=PRIME256V1_RFC5114-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEKvUC876JUvLJtajUFg0J6XFlvlC8 +Qq5KXo07S6g66xXrD69MqYbE04aBoPmHLXnVZ5W9S/9ubePA9QFezl79hQ== +-----END PUBLIC KEY----- + +PrivateKey=PRIME256V1_RFC5114-Peer +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgLOF4jsGX4JbblaIA +zAqyahnOa8ytViuO7htZN2HPf0GhRANCAASxIN5Ko2SSeVNG6N5sLIZGrgaq6ief +p3WzqwcV9s5RsJ8bfuziDXte2OxoX6Pwcdg3JwJwkqhBE4XDTd5XCLK2 +-----END PRIVATE KEY----- + +PublicKey=PRIME256V1_RFC5114-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEsSDeSqNkknlTRujebCyGRq4Gquon +n6d1s6sHFfbOUbCfG37s4g17XtjsaF+j8HHYNycCcJKoQROFw03eVwiytg== +-----END PUBLIC KEY----- + + +Derive=PRIME256V1_RFC5114 +PeerKey=PRIME256V1_RFC5114-Peer-PUBLIC +SharedSecret=DD0F5396219D1EA393310412D19A08F1F5811E9DC8EC8EEA7F80D21C820C2788 + +Derive=PRIME256V1_RFC5114-Peer +PeerKey=PRIME256V1_RFC5114-PUBLIC +SharedSecret=DD0F5396219D1EA393310412D19A08F1F5811E9DC8EC8EEA7F80D21C820C2788 + +PrivateKey=SECP384R1_RFC5114 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDDSczXqcWZK8kTdFOn9 +EmBxXf2KeWVXHEjXCe56eWKhVtcGqQy8td8phvBf6tuTdvGhZANiAAR5MUjxeHY0 +1dpMbZB0QX0F4FerYvggVNEO5rBAPWJ5VH5qjqnR/XdCfQFv4nqLjGbGxBKUMx0j +5vSA9PtM1AUEyUc5LpT0w/BrjzmLsp5CNo96aFkj3jtnus7SFKGh0Sg= +-----END PRIVATE KEY----- + +PublicKey=SECP384R1_RFC5114-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEeTFI8Xh2NNXaTG2QdEF9BeBXq2L4IFTR +DuawQD1ieVR+ao6p0f13Qn0Bb+J6i4xmxsQSlDMdI+b0gPT7TNQFBMlHOS6U9MPw +a485i7KeQjaPemhZI947Z7rO0hShodEo +-----END PUBLIC KEY----- + +PrivateKey=SECP384R1_RFC5114-Peer +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDBS0Xkf20tw+JwPANRW +wvcCO2ElJiw2p98fgCMRIczj05vlLgDBlKQTLEpsdovNlNKhZANiAARc1Cq5xBtT +R/dLjU77cIs9WzbbZZFTWbRKvBdke2uZmXidcqhIZa4vIj8StaGrwSDhcUWP6qk5 +qqOov6xGtAS9j21bNIwPpNgM7KFjVsqTMkC96HI0Fajs4DWw7fNnVd4= +-----END PRIVATE KEY----- + +PublicKey=SECP384R1_RFC5114-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEXNQqucQbU0f3S41O+3CLPVs222WRU1m0 +SrwXZHtrmZl4nXKoSGWuLyI/ErWhq8Eg4XFFj+qpOaqjqL+sRrQEvY9tWzSMD6TY +DOyhY1bKkzJAvehyNBWo7OA1sO3zZ1Xe +-----END PUBLIC KEY----- + + +Derive=SECP384R1_RFC5114 +PeerKey=SECP384R1_RFC5114-Peer-PUBLIC +SharedSecret=5EA1FC4AF7256D2055981B110575E0A8CAE53160137D904C59D926EB1B8456E427AA8A4540884C37DE159A58028ABC0E + +Derive=SECP384R1_RFC5114-Peer +PeerKey=SECP384R1_RFC5114-PUBLIC +SharedSecret=5EA1FC4AF7256D2055981B110575E0A8CAE53160137D904C59D926EB1B8456E427AA8A4540884C37DE159A58028ABC0E + +PrivateKey=SECP521R1_RFC5114 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIBE/gtqCVzXj2XJ2aD +srdCd7rSczXqcWZK8kMMxPM0WblmnueLP/ubhoMBXTRNy/72+5r0xsRwviVFFs08 +Gh+0c2KhgYkDgYYABAHrs03XVyGr+K3J2+0XiJy7l2XZCnxg8s7wB7sPKybhSIH9 +RELmidYcst0EbuMOP/0g+aRbvfZBPVg6Lb9Zkk/TXAD2tjLRlMA4jiLYQ35VjFUq +4ZWt/RU/ktdJCDUbL4xO2pTtsJFtG1PAILXuyu0aX8OKIz5IMFh7su40ibO0KlqG +pA== +-----END PRIVATE KEY----- + +PublicKey=SECP521R1_RFC5114-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQB67NN11chq/itydvtF4icu5dl2Qp8 +YPLO8Ae7Dysm4UiB/URC5onWHLLdBG7jDj/9IPmkW732QT1YOi2/WZJP01wA9rYy +0ZTAOI4i2EN+VYxVKuGVrf0VP5LXSQg1Gy+MTtqU7bCRbRtTwCC17srtGl/DiiM+ +SDBYe7LuNImztCpahqQ= +-----END PUBLIC KEY----- + +PrivateKey=SECP521R1_RFC5114-Peer +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAzuNIDYZFoX0knyd2 +0ouuYWlS0Xkf20tw98M3hzKqGyKShEi80dwkltQ1sBBIBm6+T3KQPDYbGp3BGT3C +ydCJG5ahgYkDgYYABAEOv6/G6F4I0kv//MGkUR2w5jS+6xtt7IxZOa5EdmIBr2IA +QwupfIrGoOnwizPOfp/utbpO5eDYFRDCQpW4oI0CNQCkpuwwDfniV7A3K156v+8J +NDZxmneIfrsLGM+Ambn0IStuMKFBnBjgKdNoY8ydRI9Nuk0qDmBxG+VykV+9T+8m +lQ== +-----END PRIVATE KEY----- + +PublicKey=SECP521R1_RFC5114-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBDr+vxuheCNJL//zBpFEdsOY0vusb +beyMWTmuRHZiAa9iAEMLqXyKxqDp8Iszzn6f7rW6TuXg2BUQwkKVuKCNAjUApKbs +MA354lewNyteer/vCTQ2cZp3iH67CxjPgJm59CErbjChQZwY4CnTaGPMnUSPTbpN +Kg5gcRvlcpFfvU/vJpU= +-----END PUBLIC KEY----- + + +Derive=SECP521R1_RFC5114 +PeerKey=SECP521R1_RFC5114-Peer-PUBLIC +SharedSecret=00CDEA89621CFA46B132F9E4CFE2261CDE2D4368EB5656634C7CC98C7A00CDE54ED1866A0DD3E6126C9D2F845DAFF82CEB1DA08F5D87521BB0EBECA77911169C20CC + +Derive=SECP521R1_RFC5114-Peer +PeerKey=SECP521R1_RFC5114-PUBLIC +SharedSecret=00CDEA89621CFA46B132F9E4CFE2261CDE2D4368EB5656634C7CC98C7A00CDE54ED1866A0DD3E6126C9D2F845DAFF82CEB1DA08F5D87521BB0EBECA77911169C20CC + +# Keys and shared secrets from RFC 5903 +PrivateKey=PRIME256V1_RFC5903 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgyI8B9RDZrD9wopLa +ojFt5UTpqriv6EBJxiqcV4YtFDOhRANCAATa0LZTlCIc+bBR4f7KV4fQmN/mN/yQ +ue+UXQw3clgRgFJxoEYc24JS1h8cRW+j5Zqx9FszrM9fWDieBXe4mQuz +-----END PRIVATE KEY----- + +PublicKey=PRIME256V1_RFC5903-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE2tC2U5QiHPmwUeH+yleH0Jjf5jf8 +kLnvlF0MN3JYEYBScaBGHNuCUtYfHEVvo+WasfRbM6zPX1g4ngV3uJkLsw== +-----END PUBLIC KEY----- + +PrivateKey=PRIME256V1_RFC5903-Peer +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgxu+cXXiuASoBEWSs +s5fOIIhoXY8Gv5vgsoOrRkdr7lOhRANCAATRLftSicjU+BIItwJwOYw0IpaXCgvM +t0xzb8dVRJS/Y1b788o2bMI+gVeFTBPFjWqsI/BGraMPg1PnTzMDmHKr +-----END PRIVATE KEY----- + +PublicKey=PRIME256V1_RFC5903-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE0S37UonI1PgSCLcCcDmMNCKWlwoL +zLdMc2/HVUSUv2NW+/PKNmzCPoFXhUwTxY1qrCPwRq2jD4NT508zA5hyqw== +-----END PUBLIC KEY----- + + +Derive=PRIME256V1_RFC5903 +PeerKey=PRIME256V1_RFC5903-Peer-PUBLIC +SharedSecret=D6840F6B42F6EDAFD13116E0E12565202FEF8E9ECE7DCE03812464D04B9442DE + +Derive=PRIME256V1_RFC5903-Peer +PeerKey=PRIME256V1_RFC5903-PUBLIC +SharedSecret=D6840F6B42F6EDAFD13116E0E12565202FEF8E9ECE7DCE03812464D04B9442DE + +PrivateKey=SECP384R1_RFC5903 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDAJnzxwNNSixpmITXOj +daZ/diTvfGs8DxYGR7Z0FNzmVeNbU4BB5knuP674lng6sZShZANiAARmeELX0YCs +LN5vdPN1UfVXVcdkXCDvc+MWNP5ytMVe5t46yAistL20yIcyrulfQaqUgu0fwO65 +yvxJhGJcz8I/ZQMhSeDhRK2gJBgVNaDzjuufz/PCyUfa5ptMY0VzqBw= +-----END PRIVATE KEY----- + +PublicKey=SECP384R1_RFC5903-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEZnhC19GArCzeb3TzdVH1V1XHZFwg73Pj +FjT+crTFXubeOsgIrLS9tMiHMq7pX0GqlILtH8Duucr8SYRiXM/CP2UDIUng4USt +oCQYFTWg847rn8/zwslH2uabTGNFc6gc +-----END PUBLIC KEY----- + +PrivateKey=SECP384R1_RFC5903-Peer +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDBBywd5tL24XUeEZyX7 +7DyUMPq0bMjcUGCFXMm9oKopQuAwgxKRa47Slg5L1Vp0SPyhZANiAATlWNvvU+7N +49P8z8GuoIqJqYdHXRL9lQ2Dz6QXMrxQnQ0axDoDNt75b9pB0HdKNXHc++x6rPMZ +ZHIWnoOEMDZ/Zu6+PG5wxBbdXwxodZ3R//g/pAFCIJ3/XqrZbbnmOGw= +-----END PRIVATE KEY----- + +PublicKey=SECP384R1_RFC5903-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE5Vjb71PuzePT/M/BrqCKiamHR10S/ZUN +g8+kFzK8UJ0NGsQ6Azbe+W/aQdB3SjVx3PvseqzzGWRyFp6DhDA2f2buvjxucMQW +3V8MaHWd0f/4P6QBQiCd/16q2W255jhs +-----END PUBLIC KEY----- + + +Derive=SECP384R1_RFC5903 +PeerKey=SECP384R1_RFC5903-Peer-PUBLIC +SharedSecret=11187331C279962D93D604243FD592CB9D0A926F422E47187521287E7156C5C4D603135569B9E9D09CF5D4A270F59746 + +Derive=SECP384R1_RFC5903-Peer +PeerKey=SECP384R1_RFC5903-PUBLIC +SharedSecret=11187331C279962D93D604243FD592CB9D0A926F422E47187521287E7156C5C4D603135569B9E9D09CF5D4A270F59746 + +PrivateKey=SECP521R1_RFC5903 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAN63pMZqJ9Nq9s+9B +GqzMpRI8YayrV7U5Pc5HYIFyoJWqhaMP4cKVLGdx2Te6l3f1lXsmObqwckYvaMJ6 +VzgtSlKhgYkDgYYABAAVQX6E2/KMCtPCeHEzSdx98VPIl6GJG9mLq0NXyey+4eO/ +QuALjjgK6uV8LRB1ZJQYhZQq9af0YBcjxBldF2ztPgF8riC2ZB0u62lXhtjJRhRi +OdCZ4Y4dWlFMc518tKEK2KeIAVrEBdd5ncdee31bbPImGmp/FQdDi/Ab62yjkm+V +gg== +-----END PRIVATE KEY----- + +PublicKey=SECP521R1_RFC5903-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAFUF+hNvyjArTwnhxM0ncffFTyJeh +iRvZi6tDV8nsvuHjv0LgC444CurlfC0QdWSUGIWUKvWn9GAXI8QZXRds7T4BfK4g +tmQdLutpV4bYyUYUYjnQmeGOHVpRTHOdfLShCtiniAFaxAXXeZ3HXnt9W2zyJhpq +fxUHQ4vwG+tso5JvlYI= +-----END PUBLIC KEY----- + +PrivateKey=SECP521R1_RFC5903-Peer +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIBRbqZqEevQ3k/3Q6H +LnzfoWvjD9x4D5e8zD8Hg4AgHpxnfWALNDdXo72/KjFj5ML4acynRYqkpO/8MR9c +sVFoXrmhgYkDgYYABADQs5daxLeZ9b6hbV4T6a+XHV6bmEyfOXKLXlc5c1ohm5fD +VkNq3G6VuwNS9r5kpsKRLU7y0EM87SthcWQAEtlGDwFcaCJjg5VuO9Bm55e2I8J8 +4OrC9VGhDCxyTZhSB3uHIgtlNsXECKHSrruOhtZ4rknLVwkfRzIpZXmrRPzRfw/F +ag== +-----END PRIVATE KEY----- + +PublicKey=SECP521R1_RFC5903-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQA0LOXWsS3mfW+oW1eE+mvlx1em5hM +nzlyi15XOXNaIZuXw1ZDatxulbsDUva+ZKbCkS1O8tBDPO0rYXFkABLZRg8BXGgi +Y4OVbjvQZueXtiPCfODqwvVRoQwsck2YUgd7hyILZTbFxAih0q67jobWeK5Jy1cJ +H0cyKWV5q0T80X8PxWo= +-----END PUBLIC KEY----- + + +Derive=SECP521R1_RFC5903 +PeerKey=SECP521R1_RFC5903-Peer-PUBLIC +SharedSecret=01144C7D79AE6956BC8EDB8E7C787C4521CB086FA64407F97894E5E6B2D79B04D1427E73CA4BAA240A34786859810C06B3C715A3A8CC3151F2BEE417996D19F3DDEA + +Derive=SECP521R1_RFC5903-Peer +PeerKey=SECP521R1_RFC5903-PUBLIC +SharedSecret=01144C7D79AE6956BC8EDB8E7C787C4521CB086FA64407F97894E5E6B2D79B04D1427E73CA4BAA240A34786859810C06B3C715A3A8CC3151F2BEE417996D19F3DDEA + +# Keys and shared secrets from RFC 7027 +PrivateKey=BRAINPOOLP256R1_RFC7027 +-----BEGIN PRIVATE KEY----- +MIGIAgEAMBQGByqGSM49AgEGCSskAwMCCAEBBwRtMGsCAQEEIIHbHuEAFQ/y6jON +cIJxvjgwDLVCQdeZUPd7BjA5gE8doUQDQgAERBBukT+SvAKhcF2ZU6hBTbleGqpJ +6B2ehfkpqOMQC+WKtIRvEcrMtzzknL3RIPWpAKaf0ywnIiP3ie8Q6wib3A== +-----END PRIVATE KEY----- + +PublicKey=BRAINPOOLP256R1_RFC7027-PUBLIC +-----BEGIN PUBLIC KEY----- +MFowFAYHKoZIzj0CAQYJKyQDAwIIAQEHA0IABEQQbpE/krwCoXBdmVOoQU25Xhqq +SegdnoX5KajjEAvlirSEbxHKzLc85Jy90SD1qQCmn9MsJyIj94nvEOsIm9w= +-----END PUBLIC KEY----- + +PrivateKey=BRAINPOOLP256R1_RFC7027-Peer +-----BEGIN PRIVATE KEY----- +MIGIAgEAMBQGByqGSM49AgEGCSskAwMCCAEBBwRtMGsCAQEEIFXkC8QeN+PirSXD +xmVFEf+oR0qRoAMgh1k4UtPn12vToUQDQgAEjS1ojGz5PhFgrQTMRCkRfcLEGCXh +6fygrd005vGzn3uZDFdSCBK+USZB5HA0gyEGvH0+jdDkx/ETbXAGVHzsag== +-----END PRIVATE KEY----- + +PublicKey=BRAINPOOLP256R1_RFC7027-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFowFAYHKoZIzj0CAQYJKyQDAwIIAQEHA0IABI0taIxs+T4RYK0EzEQpEX3CxBgl +4en8oK3dNObxs597mQxXUggSvlEmQeRwNIMhBrx9Po3Q5MfxE21wBlR87Go= +-----END PUBLIC KEY----- + + +Derive=BRAINPOOLP256R1_RFC7027 +PeerKey=BRAINPOOLP256R1_RFC7027-Peer-PUBLIC +SharedSecret=89AFC39D41D3B327814B80940B042590F96556EC91E6AE7939BCE31F3A18BF2B + +Derive=BRAINPOOLP256R1_RFC7027-Peer +PeerKey=BRAINPOOLP256R1_RFC7027-PUBLIC +SharedSecret=89AFC39D41D3B327814B80940B042590F96556EC91E6AE7939BCE31F3A18BF2B + +PrivateKey=BRAINPOOLP384R1_RFC7027 +-----BEGIN PRIVATE KEY----- +MIG6AgEAMBQGByqGSM49AgEGCSskAwMCCAEBCwSBnjCBmwIBAQQwHiD14EiliG8f +FXx06RveK5jItS1Y5QA9VwU/xLC9ZdbxXrXR7hYQ34cHlRQ2J9BCoWQDYgAEaLZl +3ZHBlYAGUM3TY8Yl9OdC6BNGZ7dnsbR2eTWI+IWraYyFLUpud6JS1jgPyvBoVbyR +o5yewB3uNgF7fWc6kxI20vH1yDlC0Enj+iBgdJPg0Dj/L9MMKrZ9Fchff6pZ +-----END PRIVATE KEY----- + +PublicKey=BRAINPOOLP384R1_RFC7027-PUBLIC +-----BEGIN PUBLIC KEY----- +MHowFAYHKoZIzj0CAQYJKyQDAwIIAQELA2IABGi2Zd2RwZWABlDN02PGJfTnQugT +Rme3Z7G0dnk1iPiFq2mMhS1KbneiUtY4D8rwaFW8kaOcnsAd7jYBe31nOpMSNtLx +9cg5QtBJ4/ogYHST4NA4/y/TDCq2fRXIX3+qWQ== +-----END PUBLIC KEY----- + +PrivateKey=BRAINPOOLP384R1_RFC7027-Peer +-----BEGIN PRIVATE KEY----- +MIG6AgEAMBQGByqGSM49AgEGCSskAwMCCAEBCwSBnjCBmwIBAQQwAyZAvGADxZJg +9yUMPbWM5kf5jhJgrM5KzaPdhp904B+LpeAyQwnbapgxSXq6yWZwoWQDYgAETUQy +byaaWXpbWLulZdpVVu1/2aip63bCX0bbadGdyM5q0Y5ASxVziyCG3zfnHR60YtaS +E23lbL6Tv1+jGI71i8ijoOxsHhUaIQOKQukYUym1snWQPRkvjU4fMv6cx4xI +-----END PRIVATE KEY----- + +PublicKey=BRAINPOOLP384R1_RFC7027-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHowFAYHKoZIzj0CAQYJKyQDAwIIAQELA2IABE1EMm8mmll6W1i7pWXaVVbtf9mo +qet2wl9G22nRncjOatGOQEsVc4sght835x0etGLWkhNt5Wy+k79foxiO9YvIo6Ds +bB4VGiEDikLpGFMptbJ1kD0ZL41OHzL+nMeMSA== +-----END PUBLIC KEY----- + + +Derive=BRAINPOOLP384R1_RFC7027 +PeerKey=BRAINPOOLP384R1_RFC7027-Peer-PUBLIC +SharedSecret=0BD9D3A7EA0B3D519D09D8E48D0785FB744A6B355E6304BC51C229FBBCE239BBADF6403715C35D4FB2A5444F575D4F42 + +Derive=BRAINPOOLP384R1_RFC7027-Peer +PeerKey=BRAINPOOLP384R1_RFC7027-PUBLIC +SharedSecret=0BD9D3A7EA0B3D519D09D8E48D0785FB744A6B355E6304BC51C229FBBCE239BBADF6403715C35D4FB2A5444F575D4F42 + +PrivateKey=BRAINPOOLP512R1_RFC7027 +-----BEGIN PRIVATE KEY----- +MIHsAgEAMBQGByqGSM49AgEGCSskAwMCCAEBDQSB0DCBzQIBAQRAFjAv8Nu7Wo1z +PatxQcG0WsvIcVk5Z39qVoUKOL2HvVmwnoAnlgn/Mz651MBhIx+yb5LusEmCpfHR +dkytV2ZUIqGBhQOBggAECkIFF+QGqsCs3OkPzXFIdxjTuVPv1/vsX38n4oxhSZmT +l+keAp4GRX2y0+ZAZos5LCp+c3p/C/BENtEWQP0J/XLmiC6NsoqtNiN80l1YDbI3 +g5YcjcUt+i7BOK1HKg/O84h89itiOyqH3lxYgwHqPl/CabNztgck9egqatFH/ec= +-----END PRIVATE KEY----- + +PublicKey=BRAINPOOLP512R1_RFC7027-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBQGByqGSM49AgEGCSskAwMCCAEBDQOBggAECkIFF+QGqsCs3OkPzXFIdxjT +uVPv1/vsX38n4oxhSZmTl+keAp4GRX2y0+ZAZos5LCp+c3p/C/BENtEWQP0J/XLm +iC6NsoqtNiN80l1YDbI3g5YcjcUt+i7BOK1HKg/O84h89itiOyqH3lxYgwHqPl/C +abNztgck9egqatFH/ec= +-----END PUBLIC KEY----- + +PrivateKey=BRAINPOOLP512R1_RFC7027-Peer +-----BEGIN PRIVATE KEY----- +MIHsAgEAMBQGByqGSM49AgEGCSskAwMCCAEBDQSB0DCBzQIBAQRAIw4Y4bzIijYv +pU5Oo5AgCSkvf4AzYk/UcbXYrOSdEs+rvBmWPauOLx66AL/7KeTXLRPyIkVi9AXL +gFA2ZrJUKaGBhQOBggAEnUX2beXWfi5ttuk6Wc4LtIEGCX/3iggd54HNsx/OjMuq +6o3UMgxBGfHpzUN6Lqs3MfqWaKsmjYcd7aVaVHMZny/cMTCVvN1fs6kWNvB6lZyO +hrVjah6TDoOWBJy0gZYdNlzBFFOgbHGYNUdbEstS/Dw4O8414n7xlFErcYdihfo= +-----END PRIVATE KEY----- + +PublicKey=BRAINPOOLP512R1_RFC7027-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBQGByqGSM49AgEGCSskAwMCCAEBDQOBggAEnUX2beXWfi5ttuk6Wc4LtIEG +CX/3iggd54HNsx/OjMuq6o3UMgxBGfHpzUN6Lqs3MfqWaKsmjYcd7aVaVHMZny/c +MTCVvN1fs6kWNvB6lZyOhrVjah6TDoOWBJy0gZYdNlzBFFOgbHGYNUdbEstS/Dw4 +O8414n7xlFErcYdihfo= +-----END PUBLIC KEY----- + + +Derive=BRAINPOOLP512R1_RFC7027 +PeerKey=BRAINPOOLP512R1_RFC7027-Peer-PUBLIC +SharedSecret=A7927098655F1F9976FA50A9D566865DC530331846381C87256BAF3226244B76D36403C024D7BBF0AA0803EAFF405D3D24F11A9B5C0BEF679FE1454B21C4CD1F + +Derive=BRAINPOOLP512R1_RFC7027-Peer +PeerKey=BRAINPOOLP512R1_RFC7027-PUBLIC +SharedSecret=A7927098655F1F9976FA50A9D566865DC530331846381C87256BAF3226244B76D36403C024D7BBF0AA0803EAFF405D3D24F11A9B5C0BEF679FE1454B21C4CD1F + From builds at travis-ci.org Wed Apr 12 13:21:28 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 12 Apr 2017 13:21:28 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10233 (master - a743b81) In-Reply-To: Message-ID: <58ee29dd6542b_43fb0fcfcaf8473229a@93470f4d-59d8-40ed-ac6f-3cc4207b8a52.mail> Build Update for openssl/openssl ------------------------------------- Build: #10233 Status: Still Failing Duration: 18 minutes and 58 seconds Commit: a743b81 (master) Author: Richard Levitte Message: test/testutil.c: Flush stdout when running tests Because stdout is usually buffered and stderr isn't, error output might get printed in one bunch and all the lines saying which test failed all in one bunch, making it difficult to see exactly what error output belongs to what test. Flushing stdout makes sure the runner output is displayed together with the corresponding error output. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3198) View the changeset: https://github.com/openssl/openssl/compare/4833caed466c...a743b817d28c View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221340258 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Wed Apr 12 13:31:26 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 12 Apr 2017 13:31:26 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10234 (master - c491a39) In-Reply-To: Message-ID: <58ee2c1da08a6_43fcd7b4d6b28896987@53287edb-bbc6-477a-a4d1-0710482f628e.mail> Build Update for openssl/openssl ------------------------------------- Build: #10234 Status: Still Failing Duration: 23 minutes and 28 seconds Commit: c491a39 (master) Author: Pauli Message: Update destest to use the test infrastructure Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3173) View the changeset: https://github.com/openssl/openssl/compare/a743b817d28c...c491a3998661 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221340852 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Wed Apr 12 13:40:53 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 12 Apr 2017 13:40:53 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10235 (master - e80a0f6) In-Reply-To: Message-ID: <58ee2ea58321b_43fcd7b3652a891855d@53287edb-bbc6-477a-a4d1-0710482f628e.mail> Build Update for openssl/openssl ------------------------------------- Build: #10235 Status: Still Failing Duration: 24 minutes and 24 seconds Commit: e80a0f6 (master) Author: Nicola Tuveri Message: Remove more stale code in ecdhtest.c Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3187) View the changeset: https://github.com/openssl/openssl/compare/c491a3998661...e80a0f65d473 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221341421 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From levitte at openssl.org Wed Apr 12 14:00:22 2017 From: levitte at openssl.org (Richard Levitte) Date: Wed, 12 Apr 2017 14:00:22 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492005622.952106.21154.nullmailer@dev.openssl.org> The branch master has been updated via f75f007c35d06717277f78bc8d46af76ee44fe45 (commit) from e80a0f65d473833908bece6f2d0a2ecc16639474 (commit) - Log ----------------------------------------------------------------- commit f75f007c35d06717277f78bc8d46af76ee44fe45 Author: Richard Levitte Date: Wed Apr 12 15:53:09 2017 +0200 OpenSSL::Test: supported filtered command output 95-test_external_boringssl.t had a specialised run() variant to prefix the command output so it wouldn't disturb Test::Harness. This functionality if now moved to the run() command, using the added option 'prefix' that can be set to the string to prefix the output with. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3201) ----------------------------------------------------------------------- Summary of changes: test/recipes/95-test_external_boringssl.t | 22 +++++----------------- test/testlib/OpenSSL/Test.pm | 21 +++++++++++++++++++-- 2 files changed, 24 insertions(+), 19 deletions(-) diff --git a/test/recipes/95-test_external_boringssl.t b/test/recipes/95-test_external_boringssl.t index a49e6ea..56505cf 100644 --- a/test/recipes/95-test_external_boringssl.t +++ b/test/recipes/95-test_external_boringssl.t @@ -22,22 +22,10 @@ plan skip_all => "BoringSSL runner not detected" plan tests => 1; indir $ENV{BORING_RUNNER_DIR} => sub { - ok(filter_run(cmd(["go", "test", "-shim-path", - bldtop_file("test", "ossl_shim", "ossl_shim"), - "-shim-config", - srctop_file("test", "ossl_shim", "ossl_config.json"), - "-pipe", "-allow-unimplemented"])), + ok(run(cmd(["go", "test", "-shim-path", + bldtop_file("test", "ossl_shim", "ossl_shim"), + "-shim-config", + srctop_file("test", "ossl_shim", "ossl_config.json"), + "-pipe", "-allow-unimplemented"]), prefix => "go test: "), "running BoringSSL tests"); }, create => 0, cleanup => 0; - -# Filter the output so that the "ok" printed by go test doesn't confuse -# Test::More. Without that it thinks there has been one more test run than was -# planned -sub filter_run { - my $cmd = cmdstr(shift); - open(PIPE, "-|", $cmd); - while() { - print STDOUT "go test: ", $_; - } - close PIPE; -} diff --git a/test/testlib/OpenSSL/Test.pm b/test/testlib/OpenSSL/Test.pm index 06fea0c..c76ca1c 100644 --- a/test/testlib/OpenSSL/Test.pm +++ b/test/testlib/OpenSSL/Test.pm @@ -403,6 +403,12 @@ return the resulting output as an array of lines. If false or not given, the command will be executed with C, and C will return 1 if the command was successful or 0 if it wasn't. +=item B EXPR> + +If specified, EXPR will be used as a string to prefix the output from the +command. This is useful if the output contains lines starting with C +or C that can disturb Test::Harness. + =item B VARREF> If used, B must be a reference to a scalar variable. It will be @@ -452,8 +458,19 @@ sub run { # do. For example, a program that gets aborted (and therefore signals # SIGABRT = 6) will appear to exit with the code 134. We mimic this # to make it easier to compare with a manual run of the command. - if ($opts{capture}) { - @r = `$prefix$cmd`; + if ($opts{capture} || defined($opts{prefix})) { + my $pipe; + + open($pipe, '-|', "$prefix$cmd") or die "Can't start command: $!"; + while(<$pipe>) { + my $l = ($opts{prefix} // "") . $_; + if ($opts{capture}) { + push @r, $l; + } else { + print STDOUT $l; + } + } + close $pipe; } else { system("$prefix$cmd"); } From builds at travis-ci.org Wed Apr 12 14:25:57 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 12 Apr 2017 14:25:57 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10240 (master - f75f007) In-Reply-To: Message-ID: <58ee390fc8706_43fcd7b4cd6f49861a0@53287edb-bbc6-477a-a4d1-0710482f628e.mail> Build Update for openssl/openssl ------------------------------------- Build: #10240 Status: Still Failing Duration: 22 minutes and 10 seconds Commit: f75f007 (master) Author: Richard Levitte Message: OpenSSL::Test: supported filtered command output 95-test_external_boringssl.t had a specialised run() variant to prefix the command output so it wouldn't disturb Test::Harness. This functionality if now moved to the run() command, using the added option 'prefix' that can be set to the string to prefix the output with. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3201) View the changeset: https://github.com/openssl/openssl/compare/e80a0f65d473...f75f007c35d0 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221360621 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From rsalz at openssl.org Wed Apr 12 16:40:31 2017 From: rsalz at openssl.org (Rich Salz) Date: Wed, 12 Apr 2017 16:40:31 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492015231.319614.14118.nullmailer@dev.openssl.org> The branch master has been updated via f1e793cc974094da7da52c6958ad7b972b4a446d (commit) via e2a29ad6c5f6b42ce71400595cb504cbf8f3646a (commit) from f75f007c35d06717277f78bc8d46af76ee44fe45 (commit) - Log ----------------------------------------------------------------- commit f1e793cc974094da7da52c6958ad7b972b4a446d Author: Rich Salz Date: Wed Apr 12 09:27:33 2017 -0400 Address review feedback (to be squashed) Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3189) commit e2a29ad6c5f6b42ce71400595cb504cbf8f3646a Author: Rich Salz Date: Tue Apr 11 16:16:33 2017 -0400 Convert x509aux, cipherlist, casttest To new test framework Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3189) ----------------------------------------------------------------------- Summary of changes: test/build.info | 8 ++-- test/casttest.c | 120 ++++++++++++++----------------------------------- test/cipherlist_test.c | 10 ++--- test/x509aux.c | 92 ++++++++----------------------------- 4 files changed, 61 insertions(+), 169 deletions(-) diff --git a/test/build.info b/test/build.info index c26dc6d..6d0ffa0 100644 --- a/test/build.info +++ b/test/build.info @@ -127,8 +127,8 @@ IF[{- !$disabled{tests} -}] INCLUDE[enginetest]=../include DEPEND[enginetest]=../libcrypto - SOURCE[casttest]=casttest.c - INCLUDE[casttest]=../include + SOURCE[casttest]=casttest.c testutil.c test_main.o + INCLUDE[casttest]=.. ../include DEPEND[casttest]=../libcrypto SOURCE[bftest]=bftest.c testutil.c test_main_custom.c @@ -260,8 +260,8 @@ IF[{- !$disabled{tests} -}] INCLUDE[handshake_helper.o]=../include INCLUDE[ssltestlib.o]=.. ../include - SOURCE[x509aux]=x509aux.c - INCLUDE[x509aux]=../include + SOURCE[x509aux]=x509aux.c testutil.c test_main_custom.c + INCLUDE[x509aux]=.. ../include DEPEND[x509aux]=../libcrypto SOURCE[asynciotest]=asynciotest.c ssltestlib.c testutil.c test_main_custom.c diff --git a/test/casttest.c b/test/casttest.c index c2a0ab5..1750858 100644 --- a/test/casttest.c +++ b/test/casttest.c @@ -10,9 +10,11 @@ #include #include #include -#include /* To see if OPENSSL_NO_CAST is defined */ -#include "../e_os.h" +#include /* To see if OPENSSL_NO_CAST is defined */ +#include "e_os.h" +#include "test_main.h" +#include "testutil.h" #ifdef OPENSSL_NO_CAST int main(int argc, char *argv[]) @@ -23,8 +25,6 @@ int main(int argc, char *argv[]) #else # include -# define FULL_TEST - static unsigned char k[16] = { 0x01, 0x23, 0x45, 0x67, 0x12, 0x34, 0x56, 0x78, 0x23, 0x45, 0x67, 0x89, 0x34, 0x56, 0x78, 0x9A @@ -63,101 +63,49 @@ static unsigned char c_b[16] = { 0x80, 0xAC, 0x05, 0xB8, 0xE8, 0x3D, 0x69, 0x6E }; -int main(int argc, char *argv[]) +static int cast_test(void) { -# ifdef FULL_TEST long l; - CAST_KEY key_b; -# endif - int i, z, err = 0; - CAST_KEY key; + int z, testresult = 1; + CAST_KEY key, key_b; + unsigned char out_a[16], out_b[16]; for (z = 0; z < 3; z++) { CAST_set_key(&key, k_len[z], k); - CAST_ecb_encrypt(in, out, &key, CAST_ENCRYPT); - if (memcmp(out, &(c[z][0]), 8) != 0) { - printf("ecb cast error encrypting for keysize %d\n", - k_len[z] * 8); - printf("got :"); - for (i = 0; i < 8; i++) - printf("%02X ", out[i]); - printf("\n"); - printf("expected:"); - for (i = 0; i < 8; i++) - printf("%02X ", c[z][i]); - err = 20; - printf("\n"); + if (!TEST_mem_eq(out, sizeof(c[z]), c[z], sizeof(c[z]))) { + TEST_info("CAST_ENCRYPT iteration %d failed (len=%d)", z, k_len[z]); + testresult = 0; } CAST_ecb_encrypt(out, out, &key, CAST_DECRYPT); - if (memcmp(out, in, 8) != 0) { - printf("ecb cast error decrypting for keysize %d\n", - k_len[z] * 8); - printf("got :"); - for (i = 0; i < 8; i++) - printf("%02X ", out[i]); - printf("\n"); - printf("expected:"); - for (i = 0; i < 8; i++) - printf("%02X ", in[i]); - printf("\n"); - err = 3; + if (!TEST_mem_eq(out, sizeof(in), in, sizeof(in))) { + TEST_info("CAST_DECRYPT iteration %d failed (len=%d)", z, k_len[z]); + testresult = 0; } } - if (err == 0) - printf("ecb cast5 ok\n"); - -# ifdef FULL_TEST - { - unsigned char out_a[16], out_b[16]; - static char *hex = "0123456789ABCDEF"; - - printf("This test will take some time...."); - fflush(stdout); - memcpy(out_a, in_a, sizeof(in_a)); - memcpy(out_b, in_b, sizeof(in_b)); - i = 1; - - for (l = 0; l < 1000000L; l++) { - CAST_set_key(&key_b, 16, out_b); - CAST_ecb_encrypt(&(out_a[0]), &(out_a[0]), &key_b, CAST_ENCRYPT); - CAST_ecb_encrypt(&(out_a[8]), &(out_a[8]), &key_b, CAST_ENCRYPT); - CAST_set_key(&key, 16, out_a); - CAST_ecb_encrypt(&(out_b[0]), &(out_b[0]), &key, CAST_ENCRYPT); - CAST_ecb_encrypt(&(out_b[8]), &(out_b[8]), &key, CAST_ENCRYPT); - if ((l & 0xffff) == 0xffff) { - printf("%c", hex[i & 0x0f]); - fflush(stdout); - i++; - } - } - if ((memcmp(out_a, c_a, sizeof(c_a)) != 0) || - (memcmp(out_b, c_b, sizeof(c_b)) != 0)) { - printf("\n"); - printf("Error\n"); - - printf("A out ="); - for (i = 0; i < 16; i++) - printf("%02X ", out_a[i]); - printf("\nactual="); - for (i = 0; i < 16; i++) - printf("%02X ", c_a[i]); - printf("\n"); - - printf("B out ="); - for (i = 0; i < 16; i++) - printf("%02X ", out_b[i]); - printf("\nactual="); - for (i = 0; i < 16; i++) - printf("%02X ", c_b[i]); - printf("\n"); - } else - printf(" ok\n"); + memcpy(out_a, in_a, sizeof(in_a)); + memcpy(out_b, in_b, sizeof(in_b)); + + for (l = 0; l < 1000000L; l++) { + CAST_set_key(&key_b, 16, out_b); + CAST_ecb_encrypt(&(out_a[0]), &(out_a[0]), &key_b, CAST_ENCRYPT); + CAST_ecb_encrypt(&(out_a[8]), &(out_a[8]), &key_b, CAST_ENCRYPT); + CAST_set_key(&key, 16, out_a); + CAST_ecb_encrypt(&(out_b[0]), &(out_b[0]), &key, CAST_ENCRYPT); + CAST_ecb_encrypt(&(out_b[8]), &(out_b[8]), &key, CAST_ENCRYPT); } -# endif - EXIT(err); + if (!TEST_mem_eq(out_a, sizeof(c_a), c_a, sizeof(c_a)) + || !TEST_mem_eq(out_b, sizeof(c_b), c_b, sizeof(c_b))) + testresult = 0; + + return testresult; } #endif + +void register_tests(void) +{ + ADD_TEST(cast_test); +} diff --git a/test/cipherlist_test.c b/test/cipherlist_test.c index 0013994..31063e6 100644 --- a/test/cipherlist_test.c +++ b/test/cipherlist_test.c @@ -34,7 +34,7 @@ static CIPHERLIST_TEST_FIXTURE set_up(const char *const test_case_name) fixture.test_case_name = test_case_name; fixture.server = SSL_CTX_new(TLS_server_method()); fixture.client = SSL_CTX_new(TLS_client_method()); - OPENSSL_assert(fixture.client != NULL && fixture.server != NULL); + TEST_check(fixture.client != NULL && fixture.server != NULL); return fixture; } @@ -130,10 +130,10 @@ static int test_default_cipherlist(SSL_CTX *ctx) uint32_t expected_cipher_id, cipher_id; ssl = SSL_new(ctx); - OPENSSL_assert(ssl != NULL); + TEST_check(ssl != NULL); ciphers = SSL_get1_supported_ciphers(ssl); - OPENSSL_assert(ciphers != NULL); + TEST_check(ciphers != NULL); num_expected_ciphers = OSSL_NELEM(default_ciphers_in_order); num_ciphers = sk_SSL_CIPHER_num(ciphers); if (!TEST_int_eq(num_ciphers, num_expected_ciphers)) @@ -183,8 +183,8 @@ static int test_default_cipherlist_implicit() static int test_default_cipherlist_explicit() { SETUP_CIPHERLIST_TEST_FIXTURE(); - OPENSSL_assert(SSL_CTX_set_cipher_list(fixture.server, "DEFAULT")); - OPENSSL_assert(SSL_CTX_set_cipher_list(fixture.client, "DEFAULT")); + TEST_check(SSL_CTX_set_cipher_list(fixture.server, "DEFAULT")); + TEST_check(SSL_CTX_set_cipher_list(fixture.client, "DEFAULT")); EXECUTE_CIPHERLIST_TEST(); } diff --git a/test/x509aux.c b/test/x509aux.c index 2c20d6d..7030a13 100644 --- a/test/x509aux.c +++ b/test/x509aux.c @@ -16,35 +16,16 @@ #include #include #include +#include "e_os.h" +#include "test_main.h" +#include "test_main_custom.h" +#include "testutil.h" -#include "../e_os.h" -static const char *progname; +/* List of files, from argv */ +static char **files; -static void test_usage(void) -{ - fprintf(stderr, "usage: %s certfile\n", progname); -} - -static void print_errors(void) -{ - unsigned long err; - char buffer[1024]; - const char *file; - const char *data; - int line; - int flags; - - while ((err = ERR_get_error_line_data(&file, &line, &data, &flags)) != 0) { - ERR_error_string_n(err, buffer, sizeof(buffer)); - if (flags & ERR_TXT_STRING) - fprintf(stderr, "Error: %s:%s:%d:%s\n", buffer, file, line, data); - else - fprintf(stderr, "Error: %s:%s:%d\n", buffer, file, line); - } -} - -static int test_certs(BIO *fp) +static int test_certs(int num) { int count; char *name = 0; @@ -54,6 +35,10 @@ static int test_certs(BIO *fp) typedef X509 *(*d2i_X509_t)(X509 **, const unsigned char **, long); typedef int (*i2d_X509_t)(X509 *, unsigned char **); int err = 0; + BIO *fp = BIO_new_file(files[num], "r"); + + if (!TEST_ptr(fp)) + return 0; for (count = 0; !err && PEM_read_bio(fp, &name, &header, &data, &len); @@ -163,6 +148,7 @@ static int test_certs(BIO *fp) OPENSSL_free(header); OPENSSL_free(data); } + BIO_free(fp); if (ERR_GET_REASON(ERR_peek_last_error()) == PEM_R_NO_START_LINE) { /* Reached end of PEM file */ @@ -173,59 +159,17 @@ static int test_certs(BIO *fp) } /* Some other PEM read error */ - print_errors(); return 0; } -int main(int argc, char *argv[]) +int test_main(int argc, char *argv[]) { - BIO *bio_err; - const char *p; - int ret = 1; - - progname = argv[0]; if (argc < 2) { - test_usage(); - EXIT(ret); - } - - bio_err = BIO_new_fp(stderr, BIO_NOCLOSE | BIO_FP_TEXT); - - p = getenv("OPENSSL_DEBUG_MEMORY"); - if (p != NULL && strcmp(p, "on") == 0) - CRYPTO_set_mem_debug(1); - CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON); - - argc--; - argv++; - - while (argc >= 1) { - BIO *f = BIO_new_file(*argv, "r"); - int ok; - - if (f == NULL) { - fprintf(stderr, "%s: Error opening cert file: '%s': %s\n", - progname, *argv, strerror(errno)); - EXIT(ret); - } - ret = !(ok = test_certs(f)); - BIO_free(f); - - if (!ok) { - printf("%s ERROR\n", *argv); - ret = 1; - break; - } - printf("%s OK\n", *argv); - - argc--; - argv++; + TEST_error("usage: %s certfile...", argv[0]); + return 0; } -#ifndef OPENSSL_NO_CRYPTO_MDEBUG - if (CRYPTO_mem_leaks(bio_err) <= 0) - ret = 1; -#endif - BIO_free(bio_err); - EXIT(ret); + files = &argv[1]; + ADD_ALL_TESTS(test_certs, argc - 1); + return run_tests(argv[0]); } From levitte at openssl.org Wed Apr 12 17:09:00 2017 From: levitte at openssl.org (Richard Levitte) Date: Wed, 12 Apr 2017 17:09:00 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492016940.705688.20188.nullmailer@dev.openssl.org> The branch master has been updated via 6a71e06d7aa02b857c8650aa94f6efd9d6531872 (commit) via 2094ea070a1fb6aa06b8e939e6cb735edc2c178b (commit) from f1e793cc974094da7da52c6958ad7b972b4a446d (commit) - Log ----------------------------------------------------------------- commit 6a71e06d7aa02b857c8650aa94f6efd9d6531872 Author: Rob Percival Date: Tue Apr 4 23:24:28 2017 +0100 CT_POLICY_EVAL_CTX_set_time expects milliseconds, but given seconds This resulted in the SCT timestamp check always failing, because the timestamp appeared to be in the future. Reviewed-by: Rich Salz Reviewed-by: Andy Polyakov Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3138) commit 2094ea070a1fb6aa06b8e939e6cb735edc2c178b Author: Rob Percival Date: Thu Apr 6 13:21:27 2017 +0100 Add SSL tests for certificates with embedded SCTs The only SSL tests prior to this tested using certificates with no embedded Signed Certificate Timestamps (SCTs), which meant they couldn't confirm whether Certificate Transparency checks in "strict" mode were working. These tests reveal a bug in the validation of SCT timestamps, which is fixed by the next commit. Reviewed-by: Rich Salz Reviewed-by: Andy Polyakov Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3138) ----------------------------------------------------------------------- Summary of changes: ssl/ssl_lib.c | 3 +- test/certs/embeddedSCTs1-key.pem | 15 ++++ test/ssl-tests/12-ct.conf | 176 ++++++++++++++++++++++++++------------- test/ssl-tests/12-ct.conf.in | 55 ++++++++++-- 4 files changed, 180 insertions(+), 69 deletions(-) create mode 100644 test/certs/embeddedSCTs1-key.pem diff --git a/ssl/ssl_lib.c b/ssl/ssl_lib.c index 4f4eba1..4de2b47 100644 --- a/ssl/ssl_lib.c +++ b/ssl/ssl_lib.c @@ -4361,7 +4361,8 @@ int ssl_validate_ct(SSL *s) CT_POLICY_EVAL_CTX_set1_cert(ctx, cert); CT_POLICY_EVAL_CTX_set1_issuer(ctx, issuer); CT_POLICY_EVAL_CTX_set_shared_CTLOG_STORE(ctx, s->ctx->ctlog_store); - CT_POLICY_EVAL_CTX_set_time(ctx, SSL_SESSION_get_time(SSL_get0_session(s))); + CT_POLICY_EVAL_CTX_set_time( + ctx, (uint64_t)SSL_SESSION_get_time(SSL_get0_session(s)) * 1000); scts = SSL_get0_peer_scts(s); diff --git a/test/certs/embeddedSCTs1-key.pem b/test/certs/embeddedSCTs1-key.pem new file mode 100644 index 0000000..e3e66d5 --- /dev/null +++ b/test/certs/embeddedSCTs1-key.pem @@ -0,0 +1,15 @@ +-----BEGIN RSA PRIVATE KEY----- +MIICWwIBAAKBgQC+75jnwmh3rjhfdTJaDB0ym+3xj6r015a/BH634c4VyVui+A7k +WL19uG+KSyUhkaeb1wDDjpwDibRc1NyaEgqyHgy0HNDnKAWkEM2cW9tdSSdyba8X +EPYBhzd+olsaHjnu0LiBGdwVTcaPfajjDK8VijPmyVCfSgWwFAn/Xdh+tQIDAQAB +AoGAK/daG0vt6Fkqy/hdrtSJSKUVRoGRmS2nnba4Qzlwzh1+x2kdbMFuaOu2a37g +PvmeQclheKZ3EG1+Jb4yShwLcBCV6pkRJhOKuhvqGnjngr6uBH4gMCjpZVj7GDMf +flYHhdJCs3Cz/TY0wKN3o1Fldil2DHR/AEOc1nImeSp5/EUCQQDjKS3W957kYtTU +X5BeRjvg03Ug8tJq6IFuhTFvUJ+XQ5bAc0DmxAbQVKqRS7Wje59zTknVvS+MFdeQ +pz4dGuV7AkEA1y0X2yarIls+0A/S1uwkvwRTIkfS+QwFJ1zVya8sApRdKAcidIzA +b70hkKLilU9+LrXg5iZdFp8l752qJiw9jwJAXjItN/7mfH4fExGto+or2kbVQxxt +9LcFNPc2UJp2ExuL37HrL8YJrUnukOF8KJaSwBWuuFsC5GwKP4maUCdfEQJAUwBR +83c3DEmmMRvpeH4erpA8gTyzZN3+HvDwhpvLnjMcvBQEdnDUykVqbSBnxrCjO+Fs +n1qtDczWFVf8Cj2GgQJAQ14Awx32Cn9sF+3M+sEVtlAf6CqiEbkYeYdSCbsplMmZ +1UoaxiwXY3z+B7epsRnnPR3KaceAlAxw2/zQJMFNOQ== +-----END RSA PRIVATE KEY----- diff --git a/test/ssl-tests/12-ct.conf b/test/ssl-tests/12-ct.conf index 22fa18d..2e6e9de 100644 --- a/test/ssl-tests/12-ct.conf +++ b/test/ssl-tests/12-ct.conf @@ -1,135 +1,191 @@ # Generated with generate_ssl_tests.pl -num_tests = 4 - -test-0 = 0-ct-permissive -test-1 = 1-ct-strict -test-2 = 2-ct-permissive-resumption -test-3 = 3-ct-strict-resumption +num_tests = 6 + +test-0 = 0-ct-permissive-without-scts +test-1 = 1-ct-permissive-with-scts +test-2 = 2-ct-strict-without-scts +test-3 = 3-ct-strict-with-scts +test-4 = 4-ct-permissive-resumption +test-5 = 5-ct-strict-resumption # =========================================================== -[0-ct-permissive] -ssl_conf = 0-ct-permissive-ssl +[0-ct-permissive-without-scts] +ssl_conf = 0-ct-permissive-without-scts-ssl -[0-ct-permissive-ssl] -server = 0-ct-permissive-server -client = 0-ct-permissive-client +[0-ct-permissive-without-scts-ssl] +server = 0-ct-permissive-without-scts-server +client = 0-ct-permissive-without-scts-client -[0-ct-permissive-server] +[0-ct-permissive-without-scts-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[0-ct-permissive-client] +[0-ct-permissive-without-scts-client] CipherString = DEFAULT VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-0] ExpectedResult = Success -client = 0-ct-permissive-client-extra +client = 0-ct-permissive-without-scts-client-extra + +[0-ct-permissive-without-scts-client-extra] +CTValidation = Permissive + + +# =========================================================== + +[1-ct-permissive-with-scts] +ssl_conf = 1-ct-permissive-with-scts-ssl + +[1-ct-permissive-with-scts-ssl] +server = 1-ct-permissive-with-scts-server +client = 1-ct-permissive-with-scts-client + +[1-ct-permissive-with-scts-server] +Certificate = ${ENV::TEST_CERTS_DIR}/embeddedSCTs1.pem +CipherString = DEFAULT +PrivateKey = ${ENV::TEST_CERTS_DIR}/embeddedSCTs1-key.pem + +[1-ct-permissive-with-scts-client] +CipherString = DEFAULT +VerifyCAFile = ${ENV::TEST_CERTS_DIR}/embeddedSCTs1_issuer.pem +VerifyMode = Peer + +[test-1] +ExpectedResult = Success +client = 1-ct-permissive-with-scts-client-extra -[0-ct-permissive-client-extra] +[1-ct-permissive-with-scts-client-extra] CTValidation = Permissive # =========================================================== -[1-ct-strict] -ssl_conf = 1-ct-strict-ssl +[2-ct-strict-without-scts] +ssl_conf = 2-ct-strict-without-scts-ssl -[1-ct-strict-ssl] -server = 1-ct-strict-server -client = 1-ct-strict-client +[2-ct-strict-without-scts-ssl] +server = 2-ct-strict-without-scts-server +client = 2-ct-strict-without-scts-client -[1-ct-strict-server] +[2-ct-strict-without-scts-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[1-ct-strict-client] +[2-ct-strict-without-scts-client] CipherString = DEFAULT VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-1] +[test-2] ExpectedClientAlert = HandshakeFailure ExpectedResult = ClientFail -client = 1-ct-strict-client-extra +client = 2-ct-strict-without-scts-client-extra -[1-ct-strict-client-extra] +[2-ct-strict-without-scts-client-extra] CTValidation = Strict # =========================================================== -[2-ct-permissive-resumption] -ssl_conf = 2-ct-permissive-resumption-ssl +[3-ct-strict-with-scts] +ssl_conf = 3-ct-strict-with-scts-ssl -[2-ct-permissive-resumption-ssl] -server = 2-ct-permissive-resumption-server -client = 2-ct-permissive-resumption-client -resume-server = 2-ct-permissive-resumption-server -resume-client = 2-ct-permissive-resumption-client +[3-ct-strict-with-scts-ssl] +server = 3-ct-strict-with-scts-server +client = 3-ct-strict-with-scts-client -[2-ct-permissive-resumption-server] -Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem +[3-ct-strict-with-scts-server] +Certificate = ${ENV::TEST_CERTS_DIR}/embeddedSCTs1.pem CipherString = DEFAULT -PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem +PrivateKey = ${ENV::TEST_CERTS_DIR}/embeddedSCTs1-key.pem -[2-ct-permissive-resumption-client] +[3-ct-strict-with-scts-client] CipherString = DEFAULT -VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem +VerifyCAFile = ${ENV::TEST_CERTS_DIR}/embeddedSCTs1_issuer.pem VerifyMode = Peer -[test-2] +[test-3] +ExpectedResult = Success +client = 3-ct-strict-with-scts-client-extra + +[3-ct-strict-with-scts-client-extra] +CTValidation = Strict + + +# =========================================================== + +[4-ct-permissive-resumption] +ssl_conf = 4-ct-permissive-resumption-ssl + +[4-ct-permissive-resumption-ssl] +server = 4-ct-permissive-resumption-server +client = 4-ct-permissive-resumption-client +resume-server = 4-ct-permissive-resumption-server +resume-client = 4-ct-permissive-resumption-client + +[4-ct-permissive-resumption-server] +Certificate = ${ENV::TEST_CERTS_DIR}/embeddedSCTs1.pem +CipherString = DEFAULT +PrivateKey = ${ENV::TEST_CERTS_DIR}/embeddedSCTs1-key.pem + +[4-ct-permissive-resumption-client] +CipherString = DEFAULT +VerifyCAFile = ${ENV::TEST_CERTS_DIR}/embeddedSCTs1_issuer.pem +VerifyMode = Peer + +[test-4] ExpectedResult = Success HandshakeMode = Resume ResumptionExpected = Yes -client = 2-ct-permissive-resumption-client-extra -resume-client = 2-ct-permissive-resumption-client-extra +client = 4-ct-permissive-resumption-client-extra +resume-client = 4-ct-permissive-resumption-client-extra -[2-ct-permissive-resumption-client-extra] +[4-ct-permissive-resumption-client-extra] CTValidation = Permissive # =========================================================== -[3-ct-strict-resumption] -ssl_conf = 3-ct-strict-resumption-ssl +[5-ct-strict-resumption] +ssl_conf = 5-ct-strict-resumption-ssl -[3-ct-strict-resumption-ssl] -server = 3-ct-strict-resumption-server -client = 3-ct-strict-resumption-client -resume-server = 3-ct-strict-resumption-server -resume-client = 3-ct-strict-resumption-resume-client +[5-ct-strict-resumption-ssl] +server = 5-ct-strict-resumption-server +client = 5-ct-strict-resumption-client +resume-server = 5-ct-strict-resumption-server +resume-client = 5-ct-strict-resumption-resume-client -[3-ct-strict-resumption-server] -Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem +[5-ct-strict-resumption-server] +Certificate = ${ENV::TEST_CERTS_DIR}/embeddedSCTs1.pem CipherString = DEFAULT -PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem +PrivateKey = ${ENV::TEST_CERTS_DIR}/embeddedSCTs1-key.pem -[3-ct-strict-resumption-client] +[5-ct-strict-resumption-client] CipherString = DEFAULT -VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem +VerifyCAFile = ${ENV::TEST_CERTS_DIR}/embeddedSCTs1_issuer.pem VerifyMode = Peer -[3-ct-strict-resumption-resume-client] +[5-ct-strict-resumption-resume-client] CipherString = DEFAULT VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-3] +[test-5] ExpectedResult = Success HandshakeMode = Resume ResumptionExpected = Yes -client = 3-ct-strict-resumption-client-extra -resume-client = 3-ct-strict-resumption-resume-client-extra +client = 5-ct-strict-resumption-client-extra +resume-client = 5-ct-strict-resumption-resume-client-extra -[3-ct-strict-resumption-client-extra] -CTValidation = Permissive +[5-ct-strict-resumption-client-extra] +CTValidation = Strict -[3-ct-strict-resumption-resume-client-extra] +[5-ct-strict-resumption-resume-client-extra] CTValidation = Strict diff --git a/test/ssl-tests/12-ct.conf.in b/test/ssl-tests/12-ct.conf.in index c27e091..7c03049 100644 --- a/test/ssl-tests/12-ct.conf.in +++ b/test/ssl-tests/12-ct.conf.in @@ -16,9 +16,8 @@ package ssltests; our @tests = ( - # Currently only have tests for certs without SCTs. { - name => "ct-permissive", + name => "ct-permissive-without-scts", server => { }, client => { extra => { @@ -28,9 +27,25 @@ our @tests = ( test => { "ExpectedResult" => "Success", }, - }, + }, { - name => "ct-strict", + name => "ct-permissive-with-scts", + server => { + "Certificate" => test_pem("embeddedSCTs1.pem"), + "PrivateKey" => test_pem("embeddedSCTs1-key.pem"), + }, + client => { + "VerifyCAFile" => test_pem("embeddedSCTs1_issuer.pem"), + extra => { + "CTValidation" => "Permissive", + }, + }, + test => { + "ExpectedResult" => "Success", + }, + }, + { + name => "ct-strict-without-scts", server => { }, client => { extra => { @@ -43,9 +58,29 @@ our @tests = ( }, }, { + name => "ct-strict-with-scts", + server => { + "Certificate" => test_pem("embeddedSCTs1.pem"), + "PrivateKey" => test_pem("embeddedSCTs1-key.pem"), + }, + client => { + "VerifyCAFile" => test_pem("embeddedSCTs1_issuer.pem"), + extra => { + "CTValidation" => "Strict", + }, + }, + test => { + "ExpectedResult" => "Success", + }, + }, + { name => "ct-permissive-resumption", - server => { }, + server => { + "Certificate" => test_pem("embeddedSCTs1.pem"), + "PrivateKey" => test_pem("embeddedSCTs1-key.pem"), + }, client => { + "VerifyCAFile" => test_pem("embeddedSCTs1_issuer.pem"), extra => { "CTValidation" => "Permissive", }, @@ -55,13 +90,17 @@ our @tests = ( "ResumptionExpected" => "Yes", "ExpectedResult" => "Success", }, - }, + }, { name => "ct-strict-resumption", - server => { }, + server => { + "Certificate" => test_pem("embeddedSCTs1.pem"), + "PrivateKey" => test_pem("embeddedSCTs1-key.pem"), + }, client => { + "VerifyCAFile" => test_pem("embeddedSCTs1_issuer.pem"), extra => { - "CTValidation" => "Permissive", + "CTValidation" => "Strict", }, }, # SCTs are not present during resumption, so the resumption From builds at travis-ci.org Wed Apr 12 17:00:49 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 12 Apr 2017 17:00:49 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10244 (master - f1e793c) In-Reply-To: Message-ID: <58ee5d41c8ae6_43fcd7b4cd6f41244349@53287edb-bbc6-477a-a4d1-0710482f628e.mail> Build Update for openssl/openssl ------------------------------------- Build: #10244 Status: Still Failing Duration: 19 minutes and 2 seconds Commit: f1e793c (master) Author: Rich Salz Message: Address review feedback (to be squashed) Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3189) View the changeset: https://github.com/openssl/openssl/compare/f75f007c35d0...f1e793cc9740 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221419880 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From levitte at openssl.org Wed Apr 12 17:29:01 2017 From: levitte at openssl.org (Richard Levitte) Date: Wed, 12 Apr 2017 17:29:01 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492018141.115729.24767.nullmailer@dev.openssl.org> The branch master has been updated via 2da3f9687fc0efd56d1269dfda4c9ca5b388038a (commit) from 6a71e06d7aa02b857c8650aa94f6efd9d6531872 (commit) - Log ----------------------------------------------------------------- commit 2da3f9687fc0efd56d1269dfda4c9ca5b388038a Author: Richard Levitte Date: Wed Apr 12 18:57:02 2017 +0200 Correct travis.yml to only build extended tests when explicitely asked to The check for this was done by checking if $TRAVIS_EVENT_TYPE is "pull_request". The trouble is that when new data is pushed to an already existing pull request, the event type is "push". Better then to go with another documented variable, $TRAVIS_PULL_REQUEST, which is "false" in non-PR builds. Ref: https://docs.travis-ci.com/user/environment-variables/#Default-Environment-Variables Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3205) ----------------------------------------------------------------------- Summary of changes: .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 24214e9..cb08e40 100644 --- a/.travis.yml +++ b/.travis.yml @@ -146,7 +146,7 @@ matrix: before_script: - env - - if [ "$TRAVIS_EVENT_TYPE" == "pull_request" -a -n "$EXTENDED_TEST" ]; then + - if [ "$TRAVIS_PULL_REQUEST" != "false" -a -n "$EXTENDED_TEST" ]; then (git log -1 $TRAVIS_COMMIT_RANGE | grep '\[extended tests\]' > /dev/null) || exit 0; fi - if [ -n "$DESTDIR" ]; then From builds at travis-ci.org Wed Apr 12 17:35:34 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 12 Apr 2017 17:35:34 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10247 (master - 6a71e06) In-Reply-To: Message-ID: <58ee6565a591c_43fcd7b2ddc2c130179@53287edb-bbc6-477a-a4d1-0710482f628e.mail> Build Update for openssl/openssl ------------------------------------- Build: #10247 Status: Still Failing Duration: 24 minutes and 26 seconds Commit: 6a71e06 (master) Author: Rob Percival Message: CT_POLICY_EVAL_CTX_set_time expects milliseconds, but given seconds This resulted in the SCT timestamp check always failing, because the timestamp appeared to be in the future. Reviewed-by: Rich Salz Reviewed-by: Andy Polyakov Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3138) View the changeset: https://github.com/openssl/openssl/compare/f1e793cc9740...6a71e06d7aa0 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221429866 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Wed Apr 12 17:51:30 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 12 Apr 2017 17:51:30 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10249 (master - 2da3f96) In-Reply-To: Message-ID: <58ee6922a0d5e_43fd2017e18d8839415@028cafeb-9871-44b2-8d1d-542f5447d39a.mail> Build Update for openssl/openssl ------------------------------------- Build: #10249 Status: Still Failing Duration: 20 minutes and 39 seconds Commit: 2da3f96 (master) Author: Richard Levitte Message: Correct travis.yml to only build extended tests when explicitely asked to The check for this was done by checking if $TRAVIS_EVENT_TYPE is "pull_request". The trouble is that when new data is pushed to an already existing pull request, the event type is "push". Better then to go with another documented variable, $TRAVIS_PULL_REQUEST, which is "false" in non-PR builds. Ref: https://docs.travis-ci.com/user/environment-variables/#Default-Environment-Variables Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3205) View the changeset: https://github.com/openssl/openssl/compare/6a71e06d7aa0...2da3f9687fc0 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221436224 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From rsalz at openssl.org Wed Apr 12 18:49:14 2017 From: rsalz at openssl.org (Rich Salz) Date: Wed, 12 Apr 2017 18:49:14 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492022954.613781.4938.nullmailer@dev.openssl.org> The branch master has been updated via 3bb0f989b53c59c6d4527a0b5077dbb7fabe14b7 (commit) from 2da3f9687fc0efd56d1269dfda4c9ca5b388038a (commit) - Log ----------------------------------------------------------------- commit 3bb0f989b53c59c6d4527a0b5077dbb7fabe14b7 Author: Todd Short Date: Tue Mar 31 17:06:21 2015 -0400 OCSP Updates: error codes and multiple certificates RT3877: Add X509 OCSP error codes and messages Add additional OCSP error codes for X509 verify usage RT3867: Support Multiple CA certs in ocsp app Add the ability to read multiple CA certs from a single file in the ocsp app. Update some missing X509 errors in documentation. Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/941) ----------------------------------------------------------------------- Summary of changes: apps/ocsp.c | 32 +++++++++++++++++++++----------- crypto/x509/x509_txt.c | 6 ++++++ doc/man1/verify.pod | 41 +++++++++++++++++++++++++++++++++++++++++ include/openssl/x509_vfy.h | 4 ++++ 4 files changed, 72 insertions(+), 11 deletions(-) diff --git a/apps/ocsp.c b/apps/ocsp.c index 8f60842..c461e76 100644 --- a/apps/ocsp.c +++ b/apps/ocsp.c @@ -64,7 +64,7 @@ static void print_ocsp_summary(BIO *out, OCSP_BASICRESP *bs, OCSP_REQUEST *req, STACK_OF(OCSP_CERTID) *ids, long nsec, long maxage); static void make_ocsp_response(OCSP_RESPONSE **resp, OCSP_REQUEST *req, - CA_DB *db, X509 *ca, X509 *rcert, + CA_DB *db, STACK_OF(X509) *ca, X509 *rcert, EVP_PKEY *rkey, const EVP_MD *md, STACK_OF(X509) *rother, unsigned long flags, int nmin, int ndays, int badsig); @@ -192,7 +192,8 @@ int ocsp_main(int argc, char **argv) STACK_OF(OPENSSL_STRING) *reqnames = NULL; STACK_OF(X509) *sign_other = NULL, *verify_other = NULL, *rother = NULL; STACK_OF(X509) *issuers = NULL; - X509 *issuer = NULL, *cert = NULL, *rca_cert = NULL; + X509 *issuer = NULL, *cert = NULL; + STACK_OF(X509) *rca_cert = NULL; X509 *signer = NULL, *rsigner = NULL; X509_STORE *store = NULL; X509_VERIFY_PARAM *vpm = NULL; @@ -506,7 +507,9 @@ int ocsp_main(int argc, char **argv) BIO_printf(bio_err, "Error loading responder certificate\n"); goto end; } - rca_cert = load_cert(rca_filename, FORMAT_PEM, "CA certificate"); + if (!load_certs(rca_filename, &rca_cert, FORMAT_PEM, + NULL, "CA certificate")) + goto end; if (rcertfile) { if (!load_certs(rcertfile, &rother, FORMAT_PEM, NULL, "responder other certificates")) @@ -725,7 +728,7 @@ int ocsp_main(int argc, char **argv) X509_free(cert); sk_X509_pop_free(issuers, X509_free); X509_free(rsigner); - X509_free(rca_cert); + sk_X509_pop_free(rca_cert, X509_free); free_index(rdb); BIO_free_all(cbio); BIO_free_all(acbio); @@ -864,13 +867,13 @@ static void print_ocsp_summary(BIO *out, OCSP_BASICRESP *bs, OCSP_REQUEST *req, } static void make_ocsp_response(OCSP_RESPONSE **resp, OCSP_REQUEST *req, - CA_DB *db, X509 *ca, X509 *rcert, + CA_DB *db, STACK_OF(X509) *ca, X509 *rcert, EVP_PKEY *rkey, const EVP_MD *rmd, STACK_OF(X509) *rother, unsigned long flags, int nmin, int ndays, int badsig) { ASN1_TIME *thisupd = NULL, *nextupd = NULL; - OCSP_CERTID *cid, *ca_id = NULL; + OCSP_CERTID *cid; OCSP_BASICRESP *bs = NULL; int i, id_count; @@ -892,6 +895,8 @@ static void make_ocsp_response(OCSP_RESPONSE **resp, OCSP_REQUEST *req, OCSP_ONEREQ *one; ASN1_INTEGER *serial; char **inf; + int jj; + int found = 0; ASN1_OBJECT *cert_id_md_oid; const EVP_MD *cert_id_md; one = OCSP_request_onereq_get0(req, i); @@ -905,11 +910,17 @@ static void make_ocsp_response(OCSP_RESPONSE **resp, OCSP_REQUEST *req, NULL); goto end; } - OCSP_CERTID_free(ca_id); - ca_id = OCSP_cert_to_id(cert_id_md, NULL, ca); + for (jj = 0; jj < sk_X509_num(ca) && !found; jj++) { + X509 *ca_cert = sk_X509_value(ca, jj); + OCSP_CERTID *ca_id = OCSP_cert_to_id(cert_id_md, NULL, ca_cert); + + if (OCSP_id_issuer_cmp(ca_id, cid) == 0) + found = 1; + + OCSP_CERTID_free(ca_id); + } - /* Is this request about our CA? */ - if (OCSP_id_issuer_cmp(ca_id, cid)) { + if (!found) { OCSP_basic_add1_status(bs, cid, V_OCSP_CERTSTATUS_UNKNOWN, 0, NULL, thisupd, nextupd); @@ -962,7 +973,6 @@ static void make_ocsp_response(OCSP_RESPONSE **resp, OCSP_REQUEST *req, end: ASN1_TIME_free(thisupd); ASN1_TIME_free(nextupd); - OCSP_CERTID_free(ca_id); OCSP_BASICRESP_free(bs); } diff --git a/crypto/x509/x509_txt.c b/crypto/x509/x509_txt.c index 66e5fcd..a460bf5 100644 --- a/crypto/x509/x509_txt.c +++ b/crypto/x509/x509_txt.c @@ -169,6 +169,12 @@ const char *X509_verify_cert_error_string(long n) return ("Certificate Transparency required, but no valid SCTs found"); case X509_V_ERR_PROXY_SUBJECT_NAME_VIOLATION: return ("proxy subject name violation"); + case X509_V_ERR_OCSP_VERIFY_NEEDED: + return("OCSP verification needed"); + case X509_V_ERR_OCSP_VERIFY_FAILED: + return("OCSP verification failed"); + case X509_V_ERR_OCSP_CERT_UNKNOWN: + return("OCSP unknown cert"); default: /* Printing an error number into a static buffer is not thread-safe */ diff --git a/doc/man1/verify.pod b/doc/man1/verify.pod index 6db7cd8..5596e1d 100644 --- a/doc/man1/verify.pod +++ b/doc/man1/verify.pod @@ -696,6 +696,47 @@ DANE TLSA authentication is enabled, but no TLSA records matched the certificate chain. This error is only possible in L. +=item B + +EE certificate key too weak. + +=item B + +CA certificate key too weak. + +=item B + +CA signature digest algorithm too weak. + +=item B + +nvalid certificate verification context. + +=item B + +Issuer certificate lookup error. + +=item B + +Certificate Transparency required, but no valid SCTs found. + +=item B + +Proxy subject name violation. + +=item B + +Returned by the verify callback to indicate an OCSP verification is needed. + +=item B + +Returned by the verify callback to indicate OCSP verification failed. + +=item B + +Returned by the verify callback to indicate that the certificate is not recognized +by the OCSP responder. + =back =head1 BUGS diff --git a/include/openssl/x509_vfy.h b/include/openssl/x509_vfy.h index 1aa0a33..1414781 100644 --- a/include/openssl/x509_vfy.h +++ b/include/openssl/x509_vfy.h @@ -180,6 +180,10 @@ void X509_STORE_CTX_set_depth(X509_STORE_CTX *ctx, int depth); # define X509_V_ERR_NO_VALID_SCTS 71 # define X509_V_ERR_PROXY_SUBJECT_NAME_VIOLATION 72 +/* OCSP status errors */ +# define X509_V_ERR_OCSP_VERIFY_NEEDED 73 /* Need OCSP verification */ +# define X509_V_ERR_OCSP_VERIFY_FAILED 74 /* Couldn't verify cert through OCSP */ +# define X509_V_ERR_OCSP_CERT_UNKNOWN 75 /* Certificate wasn't recognized by the OCSP responder */ /* Certificate verify flags */ From builds at travis-ci.org Wed Apr 12 19:09:32 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 12 Apr 2017 19:09:32 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10250 (master - 3bb0f98) In-Reply-To: Message-ID: <58ee7b6bd0403_43fd2019ce9e894561b@028cafeb-9871-44b2-8d1d-542f5447d39a.mail> Build Update for openssl/openssl ------------------------------------- Build: #10250 Status: Still Failing Duration: 19 minutes and 20 seconds Commit: 3bb0f98 (master) Author: Todd Short Message: OCSP Updates: error codes and multiple certificates RT3877: Add X509 OCSP error codes and messages Add additional OCSP error codes for X509 verify usage RT3867: Support Multiple CA certs in ocsp app Add the ability to read multiple CA certs from a single file in the ocsp app. Update some missing X509 errors in documentation. Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/941) View the changeset: https://github.com/openssl/openssl/compare/2da3f9687fc0...3bb0f989b53c View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221463787 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Wed Apr 12 21:17:52 2017 From: no-reply at appveyor.com (AppVeyor) Date: Wed, 12 Apr 2017 21:17:52 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.1948 Message-ID: <20170412211751.103512.55120.D440BC7F@appveyor.com> An HTML attachment was scrubbed... URL: From levitte at openssl.org Wed Apr 12 21:18:06 2017 From: levitte at openssl.org (Richard Levitte) Date: Wed, 12 Apr 2017 21:18:06 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492031886.774030.26649.nullmailer@dev.openssl.org> The branch master has been updated via 8edefd7bb323f84abfbc381e4ba13c02925673b9 (commit) from 3bb0f989b53c59c6d4527a0b5077dbb7fabe14b7 (commit) - Log ----------------------------------------------------------------- commit 8edefd7bb323f84abfbc381e4ba13c02925673b9 Author: Richard Levitte Date: Tue Apr 11 23:46:44 2017 +0200 Test printing of ASN.1 types INTxx et al [extended tests] Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3190) ----------------------------------------------------------------------- Summary of changes: test/asn1_encode_test.c | 40 +++++++++++++++++++++++++++++++++------- 1 file changed, 33 insertions(+), 7 deletions(-) diff --git a/test/asn1_encode_test.c b/test/asn1_encode_test.c index 763c427..91b1e58 100644 --- a/test/asn1_encode_test.c +++ b/test/asn1_encode_test.c @@ -10,6 +10,7 @@ #include #include +#include #include #include "internal/numbers.h" #include "test_main.h" @@ -140,7 +141,8 @@ typedef int i2d_fn(void *a, unsigned char **pp); typedef void *d2i_fn(void **a, unsigned char **pp, long length); typedef void ifree_fn(void *a); typedef struct { - char *name; + ASN1_ITEM_EXP *asn1_type; + const char *name; int skip; /* 1 if this package should be skipped */ /* An array of structures to compare decoded custom data with */ @@ -219,7 +221,7 @@ static ASN1_LONG_DATA long_encdec_data_32bit[] = { }; static TEST_PACKAGE long_test_package_32bit = { - "LONG", sizeof(long) != 4, + ASN1_ITEM_ref(ASN1_LONG_DATA), "LONG", sizeof(long) != 4, long_expected_32bit, sizeof(long_expected_32bit), sizeof(long_expected_32bit[0]), long_encdec_data_32bit, @@ -254,7 +256,7 @@ static ASN1_LONG_DATA long_encdec_data_64bit[] = { }; static TEST_PACKAGE long_test_package_64bit = { - "LONG", sizeof(long) != 8, + ASN1_ITEM_ref(ASN1_LONG_DATA), "LONG", sizeof(long) != 8, long_expected_64bit, sizeof(long_expected_64bit), sizeof(long_expected_64bit[0]), long_encdec_data_64bit, @@ -304,7 +306,7 @@ static ASN1_INT32_DATA int32_encdec_data[] = { }; static TEST_PACKAGE int32_test_package = { - "INT32", 0, + ASN1_ITEM_ref(ASN1_INT32_DATA), "INT32", 0, int32_expected, sizeof(int32_expected), sizeof(int32_expected[0]), int32_encdec_data, sizeof(int32_encdec_data), sizeof(int32_encdec_data[0]), (i2d_fn *)i2d_ASN1_INT32_DATA, (d2i_fn *)d2i_ASN1_INT32_DATA, @@ -351,7 +353,7 @@ static ASN1_UINT32_DATA uint32_encdec_data[] = { }; static TEST_PACKAGE uint32_test_package = { - "UINT32", 0, + ASN1_ITEM_ref(ASN1_UINT32_DATA), "UINT32", 0, uint32_expected, sizeof(uint32_expected), sizeof(uint32_expected[0]), uint32_encdec_data, sizeof(uint32_encdec_data), sizeof(uint32_encdec_data[0]), (i2d_fn *)i2d_ASN1_UINT32_DATA, (d2i_fn *)d2i_ASN1_UINT32_DATA, @@ -399,7 +401,7 @@ static ASN1_INT64_DATA int64_encdec_data[] = { }; static TEST_PACKAGE int64_test_package = { - "INT64", 0, + ASN1_ITEM_ref(ASN1_INT64_DATA), "INT64", 0, int64_expected, sizeof(int64_expected), sizeof(int64_expected[0]), int64_encdec_data, sizeof(int64_encdec_data), sizeof(int64_encdec_data[0]), (i2d_fn *)i2d_ASN1_INT64_DATA, (d2i_fn *)d2i_ASN1_INT64_DATA, @@ -447,7 +449,7 @@ static ASN1_UINT64_DATA uint64_encdec_data[] = { }; static TEST_PACKAGE uint64_test_package = { - "UINT64", 0, + ASN1_ITEM_ref(ASN1_UINT64_DATA), "UINT64", 0, uint64_expected, sizeof(uint64_expected), sizeof(uint64_expected[0]), uint64_encdec_data, sizeof(uint64_encdec_data), sizeof(uint64_encdec_data[0]), (i2d_fn *)i2d_ASN1_UINT64_DATA, (d2i_fn *)d2i_ASN1_UINT64_DATA, @@ -695,6 +697,24 @@ static int do_encode_custom(EXPECTED *input, return ret; } +static int do_print_item(const TEST_PACKAGE *package) +{ +#define DATA_BUF_SIZE 256 + unsigned char buf[DATA_BUF_SIZE]; + const ASN1_ITEM *i = ASN1_ITEM_ptr(package->asn1_type); + ASN1_VALUE *o = (ASN1_VALUE *)&buf; + BIO *bio = BIO_new_fp(stdout, 0); + int ret; + + OPENSSL_assert(package->encode_expectations_elem_size <= DATA_BUF_SIZE); + + (void)RAND_bytes(buf, (int)package->encode_expectations_elem_size); + ret = ASN1_item_print(bio, o, 0, i, NULL); + BIO_free(bio); + + return ret; +} + static int test_intern(const TEST_PACKAGE *package) { @@ -790,6 +810,12 @@ static int test_intern(const TEST_PACKAGE *package) } } + if (!do_print_item(package)) { + fprintf(stderr, "Printing of %s failed\n", package->name); + ERR_print_errors_fp(stderr); + fail++; + } + return fail == 0; } From no-reply at appveyor.com Wed Apr 12 21:53:27 2017 From: no-reply at appveyor.com (AppVeyor) Date: Wed, 12 Apr 2017 21:53:27 +0000 Subject: [openssl-commits] Build completed: openssl 1.0.1949 Message-ID: <20170412215326.37425.89082.1DBEF452@appveyor.com> An HTML attachment was scrubbed... URL: From builds at travis-ci.org Wed Apr 12 21:40:35 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 12 Apr 2017 21:40:35 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10256 (master - 8edefd7) In-Reply-To: Message-ID: <58ee9efb8b052_43fcd7b3652a816723b@53287edb-bbc6-477a-a4d1-0710482f628e.mail> Build Update for openssl/openssl ------------------------------------- Build: #10256 Status: Still Failing Duration: 21 minutes and 57 seconds Commit: 8edefd7 (master) Author: Richard Levitte Message: Test printing of ASN.1 types INTxx et al [extended tests] Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3190) View the changeset: https://github.com/openssl/openssl/compare/3bb0f989b53c...8edefd7bb323 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221511926 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Wed Apr 12 22:52:31 2017 From: no-reply at appveyor.com (AppVeyor) Date: Wed, 12 Apr 2017 22:52:31 +0000 Subject: [openssl-commits] Build failed: openssl master.9574 Message-ID: <20170412225231.23405.23086.4670F410@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 13 05:13:06 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 13 Apr 2017 05:13:06 +0000 Subject: [openssl-commits] Build failed: openssl master.9588 Message-ID: <20170413051305.10109.95306.90A1E16A@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 13 07:01:15 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 13 Apr 2017 07:01:15 +0000 Subject: [openssl-commits] Build completed: openssl master.9589 Message-ID: <20170413070113.91826.61837.648F024B@appveyor.com> An HTML attachment was scrubbed... URL: From levitte at openssl.org Thu Apr 13 08:23:52 2017 From: levitte at openssl.org (Richard Levitte) Date: Thu, 13 Apr 2017 08:23:52 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492071832.568536.7254.nullmailer@dev.openssl.org> The branch master has been updated via 9612e15760784c59d3104bfe49e75323e5776bb1 (commit) via da26ff3085d895cb732150d1766d3d75dbb85338 (commit) via 49005bb8b3e134d5c8c5c8fc87aecb74d1437286 (commit) from 8edefd7bb323f84abfbc381e4ba13c02925673b9 (commit) - Log ----------------------------------------------------------------- commit 9612e15760784c59d3104bfe49e75323e5776bb1 Author: Richard Levitte Date: Wed Apr 12 11:52:52 2017 +0200 ASN.1: adapt our use of INTxx et al by making them explicitely embedded Fixes #3191 Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3199) commit da26ff3085d895cb732150d1766d3d75dbb85338 Author: Richard Levitte Date: Wed Apr 12 11:50:48 2017 +0200 ASN.1: change INTxx, UINTxx and Z variants to be embedable Fixes #3191 Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3199) commit 49005bb8b3e134d5c8c5c8fc87aecb74d1437286 Author: Richard Levitte Date: Wed Apr 12 11:48:12 2017 +0200 ASN.1: extend the possibilities to embed data instead of pointers Also, when "allocating" or "deallocating" an embedded item, never call prim_new() or prim_free(). Call prim_clear() instead. Fixes #3191 Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3199) ----------------------------------------------------------------------- Summary of changes: crypto/asn1/evp_asn1.c | 2 +- crypto/asn1/n_pkey.c | 2 +- crypto/asn1/tasn_fre.c | 7 ++++++- crypto/asn1/tasn_new.c | 8 +++++++- crypto/asn1/x_int64.c | 52 ++++++++++++++++++++++++++++++++++++------------- crypto/cms/cms_asn1.c | 26 ++++++++++++------------- crypto/dh/dh_asn1.c | 2 +- crypto/dsa/dsa_asn1.c | 2 +- crypto/ec/ec_asn1.c | 12 ++++++------ crypto/rsa/rsa_asn1.c | 2 +- include/openssl/asn1t.h | 5 +++++ ssl/ssl_asn1.c | 18 ++++++++--------- test/asn1_encode_test.c | 16 +++++++-------- 13 files changed, 97 insertions(+), 57 deletions(-) diff --git a/crypto/asn1/evp_asn1.c b/crypto/asn1/evp_asn1.c index 718e688..f3b675e 100644 --- a/crypto/asn1/evp_asn1.c +++ b/crypto/asn1/evp_asn1.c @@ -52,7 +52,7 @@ typedef struct { } asn1_int_oct; ASN1_SEQUENCE(asn1_int_oct) = { - ASN1_SIMPLE(asn1_int_oct, num, INT32), + ASN1_EMBED(asn1_int_oct, num, INT32), ASN1_SIMPLE(asn1_int_oct, oct, ASN1_OCTET_STRING) } static_ASN1_SEQUENCE_END(asn1_int_oct) diff --git a/crypto/asn1/n_pkey.c b/crypto/asn1/n_pkey.c index 34a0d03..d1fb8a1 100644 --- a/crypto/asn1/n_pkey.c +++ b/crypto/asn1/n_pkey.c @@ -48,7 +48,7 @@ DECLARE_ASN1_ENCODE_FUNCTIONS_const(NETSCAPE_ENCRYPTED_PKEY,NETSCAPE_ENCRYPTED_P IMPLEMENT_ASN1_FUNCTIONS_const(NETSCAPE_ENCRYPTED_PKEY) ASN1_SEQUENCE(NETSCAPE_PKEY) = { - ASN1_SIMPLE(NETSCAPE_PKEY, version, INT32), + ASN1_EMBED(NETSCAPE_PKEY, version, INT32), ASN1_SIMPLE(NETSCAPE_PKEY, algor, X509_ALGOR), ASN1_SIMPLE(NETSCAPE_PKEY, private_key, ASN1_OCTET_STRING) } static_ASN1_SEQUENCE_END(NETSCAPE_PKEY) diff --git a/crypto/asn1/tasn_fre.c b/crypto/asn1/tasn_fre.c index 3c98efb..ae91461 100644 --- a/crypto/asn1/tasn_fre.c +++ b/crypto/asn1/tasn_fre.c @@ -155,7 +155,12 @@ void asn1_primitive_free(ASN1_VALUE **pval, const ASN1_ITEM *it, int embed) if (it) { const ASN1_PRIMITIVE_FUNCS *pf = it->funcs; - if (pf && pf->prim_free) { + if (embed) { + if (pf && pf->prim_clear) { + pf->prim_clear(pval, it); + return; + } + } else if (pf && pf->prim_free) { pf->prim_free(pval, it); return; } diff --git a/crypto/asn1/tasn_new.c b/crypto/asn1/tasn_new.c index e9b8377..f695e38 100644 --- a/crypto/asn1/tasn_new.c +++ b/crypto/asn1/tasn_new.c @@ -266,8 +266,14 @@ static int asn1_primitive_new(ASN1_VALUE **pval, const ASN1_ITEM *it, if (it->funcs) { const ASN1_PRIMITIVE_FUNCS *pf = it->funcs; - if (pf->prim_new) + if (embed) { + if (pf->prim_clear) { + pf->prim_clear(pval, it); + return 1; + } + } else if (pf->prim_new) { return pf->prim_new(pval, it); + } } if (it->itype == ASN1_ITYPE_MSTRING) diff --git a/crypto/asn1/x_int64.c b/crypto/asn1/x_int64.c index 63a3277..714e2f7 100644 --- a/crypto/asn1/x_int64.c +++ b/crypto/asn1/x_int64.c @@ -28,13 +28,21 @@ static int uint64_new(ASN1_VALUE **pval, const ASN1_ITEM *it) { - *(uint64_t *)pval = 0; + *pval = (ASN1_VALUE *)OPENSSL_zalloc(sizeof(uint64_t)); + if (*pval == NULL) + return 0; return 1; } static void uint64_free(ASN1_VALUE **pval, const ASN1_ITEM *it) { - *(uint64_t *)pval = 0; + OPENSSL_free(*pval); + *pval = NULL; +} + +static void uint64_clear(ASN1_VALUE **pval, const ASN1_ITEM *it) +{ + **(uint64_t **)pval = 0; } static int uint64_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, @@ -43,7 +51,7 @@ static int uint64_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, uint64_t utmp; int neg = 0; /* this exists to bypass broken gcc optimization */ - char *cp = (char *)pval; + char *cp = (char *)*pval; /* use memcpy, because we may not be uint64_t aligned */ memcpy(&utmp, cp, sizeof(utmp)); @@ -65,9 +73,13 @@ static int uint64_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, int utype, char *free_cont, const ASN1_ITEM *it) { uint64_t utmp = 0; - char *cp = (char *)pval; + char *cp; int neg = 0; + if (*pval == NULL && !uint64_new(pval, it)) + return 0; + + cp = (char *)*pval; if (!c2i_uint64_int(&utmp, &neg, &cont, len)) return 0; if ((it->size & INTxx_FLAG_SIGNED) == 0 && neg) { @@ -90,21 +102,29 @@ static int uint64_print(BIO *out, ASN1_VALUE **pval, const ASN1_ITEM *it, int indent, const ASN1_PCTX *pctx) { if ((it->size & INTxx_FLAG_SIGNED) == INTxx_FLAG_SIGNED) - return BIO_printf(out, "%jd\n", *(int64_t *)pval); - return BIO_printf(out, "%ju\n", *(uint64_t *)pval); + return BIO_printf(out, "%jd\n", **(int64_t **)pval); + return BIO_printf(out, "%ju\n", **(uint64_t **)pval); } /* 32-bit variants */ static int uint32_new(ASN1_VALUE **pval, const ASN1_ITEM *it) { - *(uint32_t *)pval = 0; + *pval = (ASN1_VALUE *)OPENSSL_zalloc(sizeof(uint32_t)); + if (*pval == NULL) + return 0; return 1; } static void uint32_free(ASN1_VALUE **pval, const ASN1_ITEM *it) { - *(uint32_t *)pval = 0; + OPENSSL_free(*pval); + *pval = NULL; +} + +static void uint32_clear(ASN1_VALUE **pval, const ASN1_ITEM *it) +{ + **(uint32_t **)pval = 0; } static int uint32_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, @@ -113,7 +133,7 @@ static int uint32_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, uint32_t utmp; int neg = 0; /* this exists to bypass broken gcc optimization */ - char *cp = (char *)pval; + char *cp = (char *)*pval; /* use memcpy, because we may not be uint32_t aligned */ memcpy(&utmp, cp, sizeof(utmp)); @@ -143,9 +163,13 @@ static int uint32_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, { uint64_t utmp = 0; uint32_t utmp2 = 0; - char *cp = (char *)pval; + char *cp; int neg = 0; + if (*pval == NULL && !uint64_new(pval, it)) + return 0; + + cp = (char *)*pval; if (!c2i_uint64_int(&utmp, &neg, &cont, len)) return 0; if ((it->size & INTxx_FLAG_SIGNED) == 0 && neg) { @@ -174,8 +198,8 @@ static int uint32_print(BIO *out, ASN1_VALUE **pval, const ASN1_ITEM *it, int indent, const ASN1_PCTX *pctx) { if ((it->size & INTxx_FLAG_SIGNED) == INTxx_FLAG_SIGNED) - return BIO_printf(out, "%d\n", *(int32_t *)pval); - return BIO_printf(out, "%u\n", *(uint32_t *)pval); + return BIO_printf(out, "%d\n", **(int32_t **)pval); + return BIO_printf(out, "%u\n", **(uint32_t **)pval); } @@ -185,7 +209,7 @@ static ASN1_PRIMITIVE_FUNCS uint32_pf = { NULL, 0, uint32_new, uint32_free, - uint32_free, /* Clear should set to initial value */ + uint32_clear, uint32_c2i, uint32_i2c, uint32_print @@ -195,7 +219,7 @@ static ASN1_PRIMITIVE_FUNCS uint64_pf = { NULL, 0, uint64_new, uint64_free, - uint64_free, /* Clear should set to initial value */ + uint64_clear, uint64_c2i, uint64_i2c, uint64_print diff --git a/crypto/cms/cms_asn1.c b/crypto/cms/cms_asn1.c index a6981a7..8b32abe 100644 --- a/crypto/cms/cms_asn1.c +++ b/crypto/cms/cms_asn1.c @@ -56,7 +56,7 @@ static int cms_si_cb(int operation, ASN1_VALUE **pval, const ASN1_ITEM *it, } ASN1_SEQUENCE_cb(CMS_SignerInfo, cms_si_cb) = { - ASN1_SIMPLE(CMS_SignerInfo, version, INT32), + ASN1_EMBED(CMS_SignerInfo, version, INT32), ASN1_SIMPLE(CMS_SignerInfo, sid, CMS_SignerIdentifier), ASN1_SIMPLE(CMS_SignerInfo, digestAlgorithm, X509_ALGOR), ASN1_IMP_SET_OF_OPT(CMS_SignerInfo, signedAttrs, X509_ATTRIBUTE, 0), @@ -76,7 +76,7 @@ ASN1_CHOICE(CMS_RevocationInfoChoice) = { } ASN1_CHOICE_END(CMS_RevocationInfoChoice) ASN1_NDEF_SEQUENCE(CMS_SignedData) = { - ASN1_SIMPLE(CMS_SignedData, version, INT32), + ASN1_EMBED(CMS_SignedData, version, INT32), ASN1_SET_OF(CMS_SignedData, digestAlgorithms, X509_ALGOR), ASN1_SIMPLE(CMS_SignedData, encapContentInfo, CMS_EncapsulatedContentInfo), ASN1_IMP_SET_OF_OPT(CMS_SignedData, certificates, CMS_CertificateChoices, 0), @@ -96,7 +96,7 @@ ASN1_NDEF_SEQUENCE(CMS_EncryptedContentInfo) = { } static_ASN1_NDEF_SEQUENCE_END(CMS_EncryptedContentInfo) ASN1_SEQUENCE(CMS_KeyTransRecipientInfo) = { - ASN1_SIMPLE(CMS_KeyTransRecipientInfo, version, INT32), + ASN1_EMBED(CMS_KeyTransRecipientInfo, version, INT32), ASN1_SIMPLE(CMS_KeyTransRecipientInfo, rid, CMS_SignerIdentifier), ASN1_SIMPLE(CMS_KeyTransRecipientInfo, keyEncryptionAlgorithm, X509_ALGOR), ASN1_SIMPLE(CMS_KeyTransRecipientInfo, encryptedKey, ASN1_OCTET_STRING) @@ -162,7 +162,7 @@ static int cms_kari_cb(int operation, ASN1_VALUE **pval, const ASN1_ITEM *it, } ASN1_SEQUENCE_cb(CMS_KeyAgreeRecipientInfo, cms_kari_cb) = { - ASN1_SIMPLE(CMS_KeyAgreeRecipientInfo, version, INT32), + ASN1_EMBED(CMS_KeyAgreeRecipientInfo, version, INT32), ASN1_EXP(CMS_KeyAgreeRecipientInfo, originator, CMS_OriginatorIdentifierOrKey, 0), ASN1_EXP_OPT(CMS_KeyAgreeRecipientInfo, ukm, ASN1_OCTET_STRING, 1), ASN1_SIMPLE(CMS_KeyAgreeRecipientInfo, keyEncryptionAlgorithm, X509_ALGOR), @@ -176,14 +176,14 @@ ASN1_SEQUENCE(CMS_KEKIdentifier) = { } static_ASN1_SEQUENCE_END(CMS_KEKIdentifier) ASN1_SEQUENCE(CMS_KEKRecipientInfo) = { - ASN1_SIMPLE(CMS_KEKRecipientInfo, version, INT32), + ASN1_EMBED(CMS_KEKRecipientInfo, version, INT32), ASN1_SIMPLE(CMS_KEKRecipientInfo, kekid, CMS_KEKIdentifier), ASN1_SIMPLE(CMS_KEKRecipientInfo, keyEncryptionAlgorithm, X509_ALGOR), ASN1_SIMPLE(CMS_KEKRecipientInfo, encryptedKey, ASN1_OCTET_STRING) } ASN1_SEQUENCE_END(CMS_KEKRecipientInfo) ASN1_SEQUENCE(CMS_PasswordRecipientInfo) = { - ASN1_SIMPLE(CMS_PasswordRecipientInfo, version, INT32), + ASN1_EMBED(CMS_PasswordRecipientInfo, version, INT32), ASN1_IMP_OPT(CMS_PasswordRecipientInfo, keyDerivationAlgorithm, X509_ALGOR, 0), ASN1_SIMPLE(CMS_PasswordRecipientInfo, keyEncryptionAlgorithm, X509_ALGOR), ASN1_SIMPLE(CMS_PasswordRecipientInfo, encryptedKey, ASN1_OCTET_STRING) @@ -225,7 +225,7 @@ ASN1_CHOICE_cb(CMS_RecipientInfo, cms_ri_cb) = { } ASN1_CHOICE_END_cb(CMS_RecipientInfo, CMS_RecipientInfo, type) ASN1_NDEF_SEQUENCE(CMS_EnvelopedData) = { - ASN1_SIMPLE(CMS_EnvelopedData, version, INT32), + ASN1_EMBED(CMS_EnvelopedData, version, INT32), ASN1_IMP_OPT(CMS_EnvelopedData, originatorInfo, CMS_OriginatorInfo, 0), ASN1_SET_OF(CMS_EnvelopedData, recipientInfos, CMS_RecipientInfo), ASN1_SIMPLE(CMS_EnvelopedData, encryptedContentInfo, CMS_EncryptedContentInfo), @@ -233,20 +233,20 @@ ASN1_NDEF_SEQUENCE(CMS_EnvelopedData) = { } ASN1_NDEF_SEQUENCE_END(CMS_EnvelopedData) ASN1_NDEF_SEQUENCE(CMS_DigestedData) = { - ASN1_SIMPLE(CMS_DigestedData, version, INT32), + ASN1_EMBED(CMS_DigestedData, version, INT32), ASN1_SIMPLE(CMS_DigestedData, digestAlgorithm, X509_ALGOR), ASN1_SIMPLE(CMS_DigestedData, encapContentInfo, CMS_EncapsulatedContentInfo), ASN1_SIMPLE(CMS_DigestedData, digest, ASN1_OCTET_STRING) } ASN1_NDEF_SEQUENCE_END(CMS_DigestedData) ASN1_NDEF_SEQUENCE(CMS_EncryptedData) = { - ASN1_SIMPLE(CMS_EncryptedData, version, INT32), + ASN1_EMBED(CMS_EncryptedData, version, INT32), ASN1_SIMPLE(CMS_EncryptedData, encryptedContentInfo, CMS_EncryptedContentInfo), ASN1_IMP_SET_OF_OPT(CMS_EncryptedData, unprotectedAttrs, X509_ATTRIBUTE, 1) } ASN1_NDEF_SEQUENCE_END(CMS_EncryptedData) ASN1_NDEF_SEQUENCE(CMS_AuthenticatedData) = { - ASN1_SIMPLE(CMS_AuthenticatedData, version, INT32), + ASN1_EMBED(CMS_AuthenticatedData, version, INT32), ASN1_IMP_OPT(CMS_AuthenticatedData, originatorInfo, CMS_OriginatorInfo, 0), ASN1_SET_OF(CMS_AuthenticatedData, recipientInfos, CMS_RecipientInfo), ASN1_SIMPLE(CMS_AuthenticatedData, macAlgorithm, X509_ALGOR), @@ -258,7 +258,7 @@ ASN1_NDEF_SEQUENCE(CMS_AuthenticatedData) = { } static_ASN1_NDEF_SEQUENCE_END(CMS_AuthenticatedData) ASN1_NDEF_SEQUENCE(CMS_CompressedData) = { - ASN1_SIMPLE(CMS_CompressedData, version, INT32), + ASN1_EMBED(CMS_CompressedData, version, INT32), ASN1_SIMPLE(CMS_CompressedData, compressionAlgorithm, X509_ALGOR), ASN1_SIMPLE(CMS_CompressedData, encapContentInfo, CMS_EncapsulatedContentInfo), } ASN1_NDEF_SEQUENCE_END(CMS_CompressedData) @@ -337,7 +337,7 @@ ASN1_ITEM_TEMPLATE_END(CMS_Attributes_Verify) ASN1_CHOICE(CMS_ReceiptsFrom) = { - ASN1_IMP(CMS_ReceiptsFrom, d.allOrFirstTier, INT32, 0), + ASN1_IMP_EMBED(CMS_ReceiptsFrom, d.allOrFirstTier, INT32, 0), ASN1_IMP_SEQUENCE_OF(CMS_ReceiptsFrom, d.receiptList, GENERAL_NAMES, 1) } static_ASN1_CHOICE_END(CMS_ReceiptsFrom) @@ -348,7 +348,7 @@ ASN1_SEQUENCE(CMS_ReceiptRequest) = { } ASN1_SEQUENCE_END(CMS_ReceiptRequest) ASN1_SEQUENCE(CMS_Receipt) = { - ASN1_SIMPLE(CMS_Receipt, version, INT32), + ASN1_EMBED(CMS_Receipt, version, INT32), ASN1_SIMPLE(CMS_Receipt, contentType, ASN1_OBJECT), ASN1_SIMPLE(CMS_Receipt, signedContentIdentifier, ASN1_OCTET_STRING), ASN1_SIMPLE(CMS_Receipt, originatorSignatureValue, ASN1_OCTET_STRING) diff --git a/crypto/dh/dh_asn1.c b/crypto/dh/dh_asn1.c index f65d065..1a40633 100644 --- a/crypto/dh/dh_asn1.c +++ b/crypto/dh/dh_asn1.c @@ -34,7 +34,7 @@ static int dh_cb(int operation, ASN1_VALUE **pval, const ASN1_ITEM *it, ASN1_SEQUENCE_cb(DHparams, dh_cb) = { ASN1_SIMPLE(DH, p, BIGNUM), ASN1_SIMPLE(DH, g, BIGNUM), - ASN1_OPT(DH, length, ZINT32), + ASN1_OPT_EMBED(DH, length, ZINT32), } ASN1_SEQUENCE_END_cb(DH, DHparams) IMPLEMENT_ASN1_ENCODE_FUNCTIONS_const_fname(DH, DHparams, DHparams) diff --git a/crypto/dsa/dsa_asn1.c b/crypto/dsa/dsa_asn1.c index 6f9fe3e..7de00c7 100644 --- a/crypto/dsa/dsa_asn1.c +++ b/crypto/dsa/dsa_asn1.c @@ -75,7 +75,7 @@ static int dsa_cb(int operation, ASN1_VALUE **pval, const ASN1_ITEM *it, } ASN1_SEQUENCE_cb(DSAPrivateKey, dsa_cb) = { - ASN1_SIMPLE(DSA, version, INT32), + ASN1_EMBED(DSA, version, INT32), ASN1_SIMPLE(DSA, p, BIGNUM), ASN1_SIMPLE(DSA, q, BIGNUM), ASN1_SIMPLE(DSA, g, BIGNUM), diff --git a/crypto/ec/ec_asn1.c b/crypto/ec/ec_asn1.c index 6493515..d57f3b4 100644 --- a/crypto/ec/ec_asn1.c +++ b/crypto/ec/ec_asn1.c @@ -155,9 +155,9 @@ typedef struct ec_privatekey_st { /* the OpenSSL ASN.1 definitions */ ASN1_SEQUENCE(X9_62_PENTANOMIAL) = { - ASN1_SIMPLE(X9_62_PENTANOMIAL, k1, INT32), - ASN1_SIMPLE(X9_62_PENTANOMIAL, k2, INT32), - ASN1_SIMPLE(X9_62_PENTANOMIAL, k3, INT32) + ASN1_EMBED(X9_62_PENTANOMIAL, k1, INT32), + ASN1_EMBED(X9_62_PENTANOMIAL, k2, INT32), + ASN1_EMBED(X9_62_PENTANOMIAL, k3, INT32) } static_ASN1_SEQUENCE_END(X9_62_PENTANOMIAL) DECLARE_ASN1_ALLOC_FUNCTIONS(X9_62_PENTANOMIAL) @@ -172,7 +172,7 @@ ASN1_ADB(X9_62_CHARACTERISTIC_TWO) = { } ASN1_ADB_END(X9_62_CHARACTERISTIC_TWO, 0, type, 0, &char_two_def_tt, NULL); ASN1_SEQUENCE(X9_62_CHARACTERISTIC_TWO) = { - ASN1_SIMPLE(X9_62_CHARACTERISTIC_TWO, m, INT32), + ASN1_EMBED(X9_62_CHARACTERISTIC_TWO, m, INT32), ASN1_SIMPLE(X9_62_CHARACTERISTIC_TWO, type, ASN1_OBJECT), ASN1_ADB_OBJECT(X9_62_CHARACTERISTIC_TWO) } static_ASN1_SEQUENCE_END(X9_62_CHARACTERISTIC_TWO) @@ -199,7 +199,7 @@ ASN1_SEQUENCE(X9_62_CURVE) = { } static_ASN1_SEQUENCE_END(X9_62_CURVE) ASN1_SEQUENCE(ECPARAMETERS) = { - ASN1_SIMPLE(ECPARAMETERS, version, INT32), + ASN1_EMBED(ECPARAMETERS, version, INT32), ASN1_SIMPLE(ECPARAMETERS, fieldID, X9_62_FIELDID), ASN1_SIMPLE(ECPARAMETERS, curve, X9_62_CURVE), ASN1_SIMPLE(ECPARAMETERS, base, ASN1_OCTET_STRING), @@ -221,7 +221,7 @@ DECLARE_ASN1_ENCODE_FUNCTIONS_const(ECPKPARAMETERS, ECPKPARAMETERS) IMPLEMENT_ASN1_FUNCTIONS_const(ECPKPARAMETERS) ASN1_SEQUENCE(EC_PRIVATEKEY) = { - ASN1_SIMPLE(EC_PRIVATEKEY, version, INT32), + ASN1_EMBED(EC_PRIVATEKEY, version, INT32), ASN1_SIMPLE(EC_PRIVATEKEY, privateKey, ASN1_OCTET_STRING), ASN1_EXP_OPT(EC_PRIVATEKEY, parameters, ECPKPARAMETERS, 0), ASN1_EXP_OPT(EC_PRIVATEKEY, publicKey, ASN1_BIT_STRING, 1) diff --git a/crypto/rsa/rsa_asn1.c b/crypto/rsa/rsa_asn1.c index ef79a27..43c8fc2 100644 --- a/crypto/rsa/rsa_asn1.c +++ b/crypto/rsa/rsa_asn1.c @@ -32,7 +32,7 @@ static int rsa_cb(int operation, ASN1_VALUE **pval, const ASN1_ITEM *it, } ASN1_SEQUENCE_cb(RSAPrivateKey, rsa_cb) = { - ASN1_SIMPLE(RSA, version, INT32), + ASN1_EMBED(RSA, version, INT32), ASN1_SIMPLE(RSA, n, BIGNUM), ASN1_SIMPLE(RSA, e, BIGNUM), ASN1_SIMPLE(RSA, d, CBIGNUM), diff --git a/include/openssl/asn1t.h b/include/openssl/asn1t.h index a73d4a8..537ee2e 100644 --- a/include/openssl/asn1t.h +++ b/include/openssl/asn1t.h @@ -346,17 +346,22 @@ extern "C" { /* OPTIONAL simple type */ # define ASN1_OPT(stname, field, type) ASN1_EX_TYPE(ASN1_TFLG_OPTIONAL, 0, stname, field, type) +# define ASN1_OPT_EMBED(stname, field, type) ASN1_EX_TYPE(ASN1_TFLG_OPTIONAL|ASN1_TFLG_EMBED, 0, stname, field, type) /* IMPLICIT tagged simple type */ # define ASN1_IMP(stname, field, type, tag) ASN1_IMP_EX(stname, field, type, tag, 0) +# define ASN1_IMP_EMBED(stname, field, type, tag) ASN1_IMP_EX(stname, field, type, tag, ASN1_TFLG_EMBED) /* IMPLICIT tagged OPTIONAL simple type */ # define ASN1_IMP_OPT(stname, field, type, tag) ASN1_IMP_EX(stname, field, type, tag, ASN1_TFLG_OPTIONAL) +# define ASN1_IMP_OPT_EMBED(stname, field, type, tag) ASN1_IMP_EX(stname, field, type, tag, ASN1_TFLG_OPTIONAL|ASN1_TFLG_EMBED) /* Same as above but EXPLICIT */ # define ASN1_EXP(stname, field, type, tag) ASN1_EXP_EX(stname, field, type, tag, 0) +# define ASN1_EXP_EMBED(stname, field, type, tag) ASN1_EXP_EX(stname, field, type, tag, ASN1_TFLG_EMBED) # define ASN1_EXP_OPT(stname, field, type, tag) ASN1_EXP_EX(stname, field, type, tag, ASN1_TFLG_OPTIONAL) +# define ASN1_EXP_OPT_EMBED(stname, field, type, tag) ASN1_EXP_EX(stname, field, type, tag, ASN1_TFLG_OPTIONAL|ASN1_TFLG_EMBED) /* SEQUENCE OF type */ # define ASN1_SEQUENCE_OF(stname, field, type) \ diff --git a/ssl/ssl_asn1.c b/ssl/ssl_asn1.c index b4eb98e..2be0d67 100644 --- a/ssl/ssl_asn1.c +++ b/ssl/ssl_asn1.c @@ -70,31 +70,31 @@ typedef struct { } SSL_SESSION_ASN1; ASN1_SEQUENCE(SSL_SESSION_ASN1) = { - ASN1_SIMPLE(SSL_SESSION_ASN1, version, UINT32), - ASN1_SIMPLE(SSL_SESSION_ASN1, ssl_version, INT32), + ASN1_EMBED(SSL_SESSION_ASN1, version, UINT32), + ASN1_EMBED(SSL_SESSION_ASN1, ssl_version, INT32), ASN1_SIMPLE(SSL_SESSION_ASN1, cipher, ASN1_OCTET_STRING), ASN1_SIMPLE(SSL_SESSION_ASN1, session_id, ASN1_OCTET_STRING), ASN1_SIMPLE(SSL_SESSION_ASN1, master_key, ASN1_OCTET_STRING), ASN1_IMP_OPT(SSL_SESSION_ASN1, key_arg, ASN1_OCTET_STRING, 0), - ASN1_EXP_OPT(SSL_SESSION_ASN1, time, ZINT64, 1), - ASN1_EXP_OPT(SSL_SESSION_ASN1, timeout, ZINT64, 2), + ASN1_EXP_OPT_EMBED(SSL_SESSION_ASN1, time, ZINT64, 1), + ASN1_EXP_OPT_EMBED(SSL_SESSION_ASN1, timeout, ZINT64, 2), ASN1_EXP_OPT(SSL_SESSION_ASN1, peer, X509, 3), ASN1_EXP_OPT(SSL_SESSION_ASN1, session_id_context, ASN1_OCTET_STRING, 4), - ASN1_EXP_OPT(SSL_SESSION_ASN1, verify_result, ZINT32, 5), + ASN1_EXP_OPT_EMBED(SSL_SESSION_ASN1, verify_result, ZINT32, 5), ASN1_EXP_OPT(SSL_SESSION_ASN1, tlsext_hostname, ASN1_OCTET_STRING, 6), #ifndef OPENSSL_NO_PSK ASN1_EXP_OPT(SSL_SESSION_ASN1, psk_identity_hint, ASN1_OCTET_STRING, 7), ASN1_EXP_OPT(SSL_SESSION_ASN1, psk_identity, ASN1_OCTET_STRING, 8), #endif - ASN1_EXP_OPT(SSL_SESSION_ASN1, tlsext_tick_lifetime_hint, ZUINT64, 9), + ASN1_EXP_OPT_EMBED(SSL_SESSION_ASN1, tlsext_tick_lifetime_hint, ZUINT64, 9), ASN1_EXP_OPT(SSL_SESSION_ASN1, tlsext_tick, ASN1_OCTET_STRING, 10), ASN1_EXP_OPT(SSL_SESSION_ASN1, comp_id, ASN1_OCTET_STRING, 11), #ifndef OPENSSL_NO_SRP ASN1_EXP_OPT(SSL_SESSION_ASN1, srp_username, ASN1_OCTET_STRING, 12), #endif - ASN1_EXP_OPT(SSL_SESSION_ASN1, flags, ZUINT64, 13), - ASN1_EXP_OPT(SSL_SESSION_ASN1, tlsext_tick_age_add, ZUINT32, 14), - ASN1_EXP_OPT(SSL_SESSION_ASN1, max_early_data, ZUINT32, 15), + ASN1_EXP_OPT_EMBED(SSL_SESSION_ASN1, flags, ZUINT64, 13), + ASN1_EXP_OPT_EMBED(SSL_SESSION_ASN1, tlsext_tick_age_add, ZUINT32, 14), + ASN1_EXP_OPT_EMBED(SSL_SESSION_ASN1, max_early_data, ZUINT32, 15), ASN1_EXP_OPT(SSL_SESSION_ASN1, alpn_selected, ASN1_OCTET_STRING, 16) } static_ASN1_SEQUENCE_END(SSL_SESSION_ASN1) diff --git a/test/asn1_encode_test.c b/test/asn1_encode_test.c index 91b1e58..a24b284 100644 --- a/test/asn1_encode_test.c +++ b/test/asn1_encode_test.c @@ -276,8 +276,8 @@ typedef struct { ASN1_SEQUENCE(ASN1_INT32_DATA) = { ASN1_SIMPLE(ASN1_INT32_DATA, success, ASN1_FBOOLEAN), - ASN1_SIMPLE(ASN1_INT32_DATA, test_int32, INT32), - ASN1_EXP_OPT(ASN1_INT32_DATA, test_zint32, ZINT32, 0) + ASN1_EMBED(ASN1_INT32_DATA, test_int32, INT32), + ASN1_EXP_OPT_EMBED(ASN1_INT32_DATA, test_zint32, ZINT32, 0) } static_ASN1_SEQUENCE_END(ASN1_INT32_DATA) IMPLEMENT_STATIC_ASN1_ENCODE_FUNCTIONS(ASN1_INT32_DATA) @@ -323,8 +323,8 @@ typedef struct { ASN1_SEQUENCE(ASN1_UINT32_DATA) = { ASN1_SIMPLE(ASN1_UINT32_DATA, success, ASN1_FBOOLEAN), - ASN1_SIMPLE(ASN1_UINT32_DATA, test_uint32, UINT32), - ASN1_EXP_OPT(ASN1_UINT32_DATA, test_zuint32, ZUINT32, 0) + ASN1_EMBED(ASN1_UINT32_DATA, test_uint32, UINT32), + ASN1_EXP_OPT_EMBED(ASN1_UINT32_DATA, test_zuint32, ZUINT32, 0) } static_ASN1_SEQUENCE_END(ASN1_UINT32_DATA) IMPLEMENT_STATIC_ASN1_ENCODE_FUNCTIONS(ASN1_UINT32_DATA) @@ -370,8 +370,8 @@ typedef struct { ASN1_SEQUENCE(ASN1_INT64_DATA) = { ASN1_SIMPLE(ASN1_INT64_DATA, success, ASN1_FBOOLEAN), - ASN1_SIMPLE(ASN1_INT64_DATA, test_int64, INT64), - ASN1_EXP_OPT(ASN1_INT64_DATA, test_zint64, ZINT64, 0) + ASN1_EMBED(ASN1_INT64_DATA, test_int64, INT64), + ASN1_EXP_OPT_EMBED(ASN1_INT64_DATA, test_zint64, ZINT64, 0) } static_ASN1_SEQUENCE_END(ASN1_INT64_DATA) IMPLEMENT_STATIC_ASN1_ENCODE_FUNCTIONS(ASN1_INT64_DATA) @@ -418,8 +418,8 @@ typedef struct { ASN1_SEQUENCE(ASN1_UINT64_DATA) = { ASN1_SIMPLE(ASN1_UINT64_DATA, success, ASN1_FBOOLEAN), - ASN1_SIMPLE(ASN1_UINT64_DATA, test_uint64, UINT64), - ASN1_EXP_OPT(ASN1_UINT64_DATA, test_zuint64, ZUINT64, 0) + ASN1_EMBED(ASN1_UINT64_DATA, test_uint64, UINT64), + ASN1_EXP_OPT_EMBED(ASN1_UINT64_DATA, test_zuint64, ZUINT64, 0) } static_ASN1_SEQUENCE_END(ASN1_UINT64_DATA) IMPLEMENT_STATIC_ASN1_ENCODE_FUNCTIONS(ASN1_UINT64_DATA) From levitte at openssl.org Thu Apr 13 08:27:10 2017 From: levitte at openssl.org (Richard Levitte) Date: Thu, 13 Apr 2017 08:27:10 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1492072030.988753.8403.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 3b8422755f268e57da7f3184e9eb965a3d60ee25 (commit) via b0a05a39bddee66b39928124dff806e2a80d4752 (commit) via adc0e6f349d44168ef9250c651273651b455c513 (commit) from e7bed7632c33211d5b7b03ace412bf4ffa3b98aa (commit) - Log ----------------------------------------------------------------- commit 3b8422755f268e57da7f3184e9eb965a3d60ee25 Author: Richard Levitte Date: Wed Apr 12 11:52:52 2017 +0200 ASN.1: adapt SSL_SESSION_ASN1 by explicitely embedding INTxx et al Fixes #3191 Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3200) commit b0a05a39bddee66b39928124dff806e2a80d4752 Author: Richard Levitte Date: Wed Apr 12 11:50:48 2017 +0200 ASN.1: change INTxx, UINTxx and Z variants to be embedable Fixes #3191 Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3200) commit adc0e6f349d44168ef9250c651273651b455c513 Author: Richard Levitte Date: Wed Apr 12 11:48:12 2017 +0200 ASN.1: extend the possibilities to embed data instead of pointers Also, when "allocating" or "deallocating" an embedded item, never call prim_new() or prim_free(). Call prim_clear() instead. Fixes #3191 Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3200) ----------------------------------------------------------------------- Summary of changes: crypto/asn1/tasn_fre.c | 7 ++++++- crypto/asn1/tasn_new.c | 8 +++++++- crypto/asn1/x_int64.c | 52 ++++++++++++++++++++++++++++++++++++------------- include/openssl/asn1t.h | 5 +++++ ssl/ssl_asn1.c | 14 ++++++------- 5 files changed, 63 insertions(+), 23 deletions(-) diff --git a/crypto/asn1/tasn_fre.c b/crypto/asn1/tasn_fre.c index 3c98efb..ae91461 100644 --- a/crypto/asn1/tasn_fre.c +++ b/crypto/asn1/tasn_fre.c @@ -155,7 +155,12 @@ void asn1_primitive_free(ASN1_VALUE **pval, const ASN1_ITEM *it, int embed) if (it) { const ASN1_PRIMITIVE_FUNCS *pf = it->funcs; - if (pf && pf->prim_free) { + if (embed) { + if (pf && pf->prim_clear) { + pf->prim_clear(pval, it); + return; + } + } else if (pf && pf->prim_free) { pf->prim_free(pval, it); return; } diff --git a/crypto/asn1/tasn_new.c b/crypto/asn1/tasn_new.c index e9b8377..f695e38 100644 --- a/crypto/asn1/tasn_new.c +++ b/crypto/asn1/tasn_new.c @@ -266,8 +266,14 @@ static int asn1_primitive_new(ASN1_VALUE **pval, const ASN1_ITEM *it, if (it->funcs) { const ASN1_PRIMITIVE_FUNCS *pf = it->funcs; - if (pf->prim_new) + if (embed) { + if (pf->prim_clear) { + pf->prim_clear(pval, it); + return 1; + } + } else if (pf->prim_new) { return pf->prim_new(pval, it); + } } if (it->itype == ASN1_ITYPE_MSTRING) diff --git a/crypto/asn1/x_int64.c b/crypto/asn1/x_int64.c index eb3bf8f..4433167 100644 --- a/crypto/asn1/x_int64.c +++ b/crypto/asn1/x_int64.c @@ -28,13 +28,21 @@ static int uint64_new(ASN1_VALUE **pval, const ASN1_ITEM *it) { - *(uint64_t *)pval = 0; + *pval = (ASN1_VALUE *)OPENSSL_zalloc(sizeof(uint64_t)); + if (*pval == NULL) + return 0; return 1; } static void uint64_free(ASN1_VALUE **pval, const ASN1_ITEM *it) { - *(uint64_t *)pval = 0; + OPENSSL_free(*pval); + *pval = NULL; +} + +static void uint64_clear(ASN1_VALUE **pval, const ASN1_ITEM *it) +{ + **(uint64_t **)pval = 0; } static int uint64_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, @@ -43,7 +51,7 @@ static int uint64_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, uint64_t utmp; int neg = 0; /* this exists to bypass broken gcc optimization */ - char *cp = (char *)pval; + char *cp = (char *)*pval; /* use memcpy, because we may not be uint64_t aligned */ memcpy(&utmp, cp, sizeof(utmp)); @@ -65,9 +73,13 @@ static int uint64_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, int utype, char *free_cont, const ASN1_ITEM *it) { uint64_t utmp = 0; - char *cp = (char *)pval; + char *cp; int neg = 0; + if (*pval == NULL && !uint64_new(pval, it)) + return 0; + + cp = (char *)*pval; if (!c2i_uint64_int(&utmp, &neg, &cont, len)) return 0; if ((it->size & INTxx_FLAG_SIGNED) == 0 && neg) { @@ -90,21 +102,29 @@ static int uint64_print(BIO *out, ASN1_VALUE **pval, const ASN1_ITEM *it, int indent, const ASN1_PCTX *pctx) { if ((it->size & INTxx_FLAG_SIGNED) == INTxx_FLAG_SIGNED) - return BIO_printf(out, "%"BIO_PRI64"d\n", *(int64_t *)pval); - return BIO_printf(out, "%"BIO_PRI64"u\n", *(uint64_t *)pval); + return BIO_printf(out, "%"BIO_PRI64"d\n", **(int64_t **)pval); + return BIO_printf(out, "%"BIO_PRI64"u\n", **(uint64_t **)pval); } /* 32-bit variants */ static int uint32_new(ASN1_VALUE **pval, const ASN1_ITEM *it) { - *(uint32_t *)pval = 0; + *pval = (ASN1_VALUE *)OPENSSL_zalloc(sizeof(uint32_t)); + if (*pval == NULL) + return 0; return 1; } static void uint32_free(ASN1_VALUE **pval, const ASN1_ITEM *it) { - *(uint32_t *)pval = 0; + OPENSSL_free(*pval); + *pval = NULL; +} + +static void uint32_clear(ASN1_VALUE **pval, const ASN1_ITEM *it) +{ + **(uint32_t **)pval = 0; } static int uint32_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, @@ -113,7 +133,7 @@ static int uint32_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, uint32_t utmp; int neg = 0; /* this exists to bypass broken gcc optimization */ - char *cp = (char *)pval; + char *cp = (char *)*pval; /* use memcpy, because we may not be uint32_t aligned */ memcpy(&utmp, cp, sizeof(utmp)); @@ -143,9 +163,13 @@ static int uint32_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, { uint64_t utmp = 0; uint32_t utmp2 = 0; - char *cp = (char *)pval; + char *cp; int neg = 0; + if (*pval == NULL && !uint64_new(pval, it)) + return 0; + + cp = (char *)*pval; if (!c2i_uint64_int(&utmp, &neg, &cont, len)) return 0; if ((it->size & INTxx_FLAG_SIGNED) == 0 && neg) { @@ -174,8 +198,8 @@ static int uint32_print(BIO *out, ASN1_VALUE **pval, const ASN1_ITEM *it, int indent, const ASN1_PCTX *pctx) { if ((it->size & INTxx_FLAG_SIGNED) == INTxx_FLAG_SIGNED) - return BIO_printf(out, "%d\n", *(int32_t *)pval); - return BIO_printf(out, "%u\n", *(uint32_t *)pval); + return BIO_printf(out, "%d\n", **(int32_t **)pval); + return BIO_printf(out, "%u\n", **(uint32_t **)pval); } @@ -185,7 +209,7 @@ static ASN1_PRIMITIVE_FUNCS uint32_pf = { NULL, 0, uint32_new, uint32_free, - uint32_free, /* Clear should set to initial value */ + uint32_clear, uint32_c2i, uint32_i2c, uint32_print @@ -195,7 +219,7 @@ static ASN1_PRIMITIVE_FUNCS uint64_pf = { NULL, 0, uint64_new, uint64_free, - uint64_free, /* Clear should set to initial value */ + uint64_clear, uint64_c2i, uint64_i2c, uint64_print diff --git a/include/openssl/asn1t.h b/include/openssl/asn1t.h index 8eedfb3..a524829 100644 --- a/include/openssl/asn1t.h +++ b/include/openssl/asn1t.h @@ -346,17 +346,22 @@ extern "C" { /* OPTIONAL simple type */ # define ASN1_OPT(stname, field, type) ASN1_EX_TYPE(ASN1_TFLG_OPTIONAL, 0, stname, field, type) +# define ASN1_OPT_EMBED(stname, field, type) ASN1_EX_TYPE(ASN1_TFLG_OPTIONAL|ASN1_TFLG_EMBED, 0, stname, field, type) /* IMPLICIT tagged simple type */ # define ASN1_IMP(stname, field, type, tag) ASN1_IMP_EX(stname, field, type, tag, 0) +# define ASN1_IMP_EMBED(stname, field, type, tag) ASN1_IMP_EX(stname, field, type, tag, ASN1_TFLG_EMBED) /* IMPLICIT tagged OPTIONAL simple type */ # define ASN1_IMP_OPT(stname, field, type, tag) ASN1_IMP_EX(stname, field, type, tag, ASN1_TFLG_OPTIONAL) +# define ASN1_IMP_OPT_EMBED(stname, field, type, tag) ASN1_IMP_EX(stname, field, type, tag, ASN1_TFLG_OPTIONAL|ASN1_TFLG_EMBED) /* Same as above but EXPLICIT */ # define ASN1_EXP(stname, field, type, tag) ASN1_EXP_EX(stname, field, type, tag, 0) +# define ASN1_EXP_EMBED(stname, field, type, tag) ASN1_EXP_EX(stname, field, type, tag, ASN1_TFLG_EMBED) # define ASN1_EXP_OPT(stname, field, type, tag) ASN1_EXP_EX(stname, field, type, tag, ASN1_TFLG_OPTIONAL) +# define ASN1_EXP_OPT_EMBED(stname, field, type, tag) ASN1_EXP_EX(stname, field, type, tag, ASN1_TFLG_OPTIONAL|ASN1_TFLG_EMBED) /* SEQUENCE OF type */ # define ASN1_SEQUENCE_OF(stname, field, type) \ diff --git a/ssl/ssl_asn1.c b/ssl/ssl_asn1.c index 39fe4e1..3e9c1c4 100644 --- a/ssl/ssl_asn1.c +++ b/ssl/ssl_asn1.c @@ -67,29 +67,29 @@ typedef struct { } SSL_SESSION_ASN1; ASN1_SEQUENCE(SSL_SESSION_ASN1) = { - ASN1_SIMPLE(SSL_SESSION_ASN1, version, UINT32), - ASN1_SIMPLE(SSL_SESSION_ASN1, ssl_version, INT32), + ASN1_EMBED(SSL_SESSION_ASN1, version, UINT32), + ASN1_EMBED(SSL_SESSION_ASN1, ssl_version, INT32), ASN1_SIMPLE(SSL_SESSION_ASN1, cipher, ASN1_OCTET_STRING), ASN1_SIMPLE(SSL_SESSION_ASN1, session_id, ASN1_OCTET_STRING), ASN1_SIMPLE(SSL_SESSION_ASN1, master_key, ASN1_OCTET_STRING), ASN1_IMP_OPT(SSL_SESSION_ASN1, key_arg, ASN1_OCTET_STRING, 0), - ASN1_EXP_OPT(SSL_SESSION_ASN1, time, ZINT64, 1), - ASN1_EXP_OPT(SSL_SESSION_ASN1, timeout, ZINT64, 2), + ASN1_EXP_OPT_EMBED(SSL_SESSION_ASN1, time, ZINT64, 1), + ASN1_EXP_OPT_EMBED(SSL_SESSION_ASN1, timeout, ZINT64, 2), ASN1_EXP_OPT(SSL_SESSION_ASN1, peer, X509, 3), ASN1_EXP_OPT(SSL_SESSION_ASN1, session_id_context, ASN1_OCTET_STRING, 4), - ASN1_EXP_OPT(SSL_SESSION_ASN1, verify_result, ZINT32, 5), + ASN1_EXP_OPT_EMBED(SSL_SESSION_ASN1, verify_result, ZINT32, 5), ASN1_EXP_OPT(SSL_SESSION_ASN1, tlsext_hostname, ASN1_OCTET_STRING, 6), #ifndef OPENSSL_NO_PSK ASN1_EXP_OPT(SSL_SESSION_ASN1, psk_identity_hint, ASN1_OCTET_STRING, 7), ASN1_EXP_OPT(SSL_SESSION_ASN1, psk_identity, ASN1_OCTET_STRING, 8), #endif - ASN1_EXP_OPT(SSL_SESSION_ASN1, tlsext_tick_lifetime_hint, ZUINT64, 9), + ASN1_EXP_OPT_EMBED(SSL_SESSION_ASN1, tlsext_tick_lifetime_hint, ZUINT64, 9), ASN1_EXP_OPT(SSL_SESSION_ASN1, tlsext_tick, ASN1_OCTET_STRING, 10), ASN1_EXP_OPT(SSL_SESSION_ASN1, comp_id, ASN1_OCTET_STRING, 11), #ifndef OPENSSL_NO_SRP ASN1_EXP_OPT(SSL_SESSION_ASN1, srp_username, ASN1_OCTET_STRING, 12), #endif - ASN1_EXP_OPT(SSL_SESSION_ASN1, flags, ZUINT64, 13) + ASN1_EXP_OPT_EMBED(SSL_SESSION_ASN1, flags, ZUINT64, 13) } static_ASN1_SEQUENCE_END(SSL_SESSION_ASN1) IMPLEMENT_STATIC_ASN1_ENCODE_FUNCTIONS(SSL_SESSION_ASN1) From levitte at openssl.org Thu Apr 13 08:32:14 2017 From: levitte at openssl.org (Richard Levitte) Date: Thu, 13 Apr 2017 08:32:14 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492072334.172525.9870.nullmailer@dev.openssl.org> The branch master has been updated via 026aebb3eab4ae8d03018f3f4489763ca835b262 (commit) from 9612e15760784c59d3104bfe49e75323e5776bb1 (commit) - Log ----------------------------------------------------------------- commit 026aebb3eab4ae8d03018f3f4489763ca835b262 Author: Pauli Date: Thu Apr 13 11:40:35 2017 +1000 Split the CAST tests up. Reviewed-by: Matt Caswell Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3211) ----------------------------------------------------------------------- Summary of changes: test/casttest.c | 55 ++++++++++++++++++++++++++++--------------------------- 1 file changed, 28 insertions(+), 27 deletions(-) diff --git a/test/casttest.c b/test/casttest.c index 1750858..fc0c700 100644 --- a/test/casttest.c +++ b/test/casttest.c @@ -16,13 +16,7 @@ #include "test_main.h" #include "testutil.h" -#ifdef OPENSSL_NO_CAST -int main(int argc, char *argv[]) -{ - printf("No CAST support\n"); - return (0); -} -#else +#ifndef OPENSSL_NO_CAST # include static unsigned char k[16] = { @@ -41,8 +35,6 @@ static unsigned char c[3][8] = { {0x7A, 0xC8, 0x16, 0xD1, 0x6E, 0x9B, 0x30, 0x2E}, }; -static unsigned char out[80]; - static unsigned char in_a[16] = { 0x01, 0x23, 0x45, 0x67, 0x12, 0x34, 0x56, 0x78, 0x23, 0x45, 0x67, 0x89, 0x34, 0x56, 0x78, 0x9A @@ -63,28 +55,34 @@ static unsigned char c_b[16] = { 0x80, 0xAC, 0x05, 0xB8, 0xE8, 0x3D, 0x69, 0x6E }; -static int cast_test(void) +static int cast_test_vector(int z) +{ + int testresult = 1; + CAST_KEY key; + unsigned char out[80]; + + CAST_set_key(&key, k_len[z], k); + CAST_ecb_encrypt(in, out, &key, CAST_ENCRYPT); + if (!TEST_mem_eq(out, sizeof(c[z]), c[z], sizeof(c[z]))) { + TEST_info("CAST_ENCRYPT iteration %d failed (len=%d)", z, k_len[z]); + testresult = 0; + } + + CAST_ecb_encrypt(out, out, &key, CAST_DECRYPT); + if (!TEST_mem_eq(out, sizeof(in), in, sizeof(in))) { + TEST_info("CAST_DECRYPT iteration %d failed (len=%d)", z, k_len[z]); + testresult = 0; + } + return testresult; +} + +static int cast_test_iterations(void) { long l; - int z, testresult = 1; + int testresult = 1; CAST_KEY key, key_b; unsigned char out_a[16], out_b[16]; - for (z = 0; z < 3; z++) { - CAST_set_key(&key, k_len[z], k); - CAST_ecb_encrypt(in, out, &key, CAST_ENCRYPT); - if (!TEST_mem_eq(out, sizeof(c[z]), c[z], sizeof(c[z]))) { - TEST_info("CAST_ENCRYPT iteration %d failed (len=%d)", z, k_len[z]); - testresult = 0; - } - - CAST_ecb_encrypt(out, out, &key, CAST_DECRYPT); - if (!TEST_mem_eq(out, sizeof(in), in, sizeof(in))) { - TEST_info("CAST_DECRYPT iteration %d failed (len=%d)", z, k_len[z]); - testresult = 0; - } - } - memcpy(out_a, in_a, sizeof(in_a)); memcpy(out_b, in_b, sizeof(in_b)); @@ -107,5 +105,8 @@ static int cast_test(void) void register_tests(void) { - ADD_TEST(cast_test); +#ifndef OPENSSL_NO_CAST + ADD_ALL_TESTS(cast_test_vector, OSSL_NELEM(k_len)); + ADD_TEST(cast_test_iterations); +#endif } From levitte at openssl.org Thu Apr 13 08:37:26 2017 From: levitte at openssl.org (Richard Levitte) Date: Thu, 13 Apr 2017 08:37:26 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492072646.326985.11494.nullmailer@dev.openssl.org> The branch master has been updated via a24c1e224338ccd3d2b831bd2e3ba52a1eb31f01 (commit) from 026aebb3eab4ae8d03018f3f4489763ca835b262 (commit) - Log ----------------------------------------------------------------- commit a24c1e224338ccd3d2b831bd2e3ba52a1eb31f01 Author: Pauli Date: Thu Apr 13 14:40:15 2017 +1000 Update the internal siphash tests to use the framework's output. Reviewed-by: Matt Caswell Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3212) ----------------------------------------------------------------------- Summary of changes: test/siphash_internal_test.c | 143 +++++++++++-------------------------------- 1 file changed, 36 insertions(+), 107 deletions(-) diff --git a/test/siphash_internal_test.c b/test/siphash_internal_test.c index eee4736..fd097e0 100644 --- a/test/siphash_internal_test.c +++ b/test/siphash_internal_test.c @@ -212,18 +212,6 @@ static TESTDATA tests[] = { { 63, { 16, { 0x51, 0x50, 0xd1, 0x77, 0x2f, 0x50, 0x83, 0x4a, 0x50, 0x3e, 0x06, 0x9a, 0x97, 0x3f, 0xbd, 0x7c, } } } }; -static void hex_out(BIO *b, char *prefix, int width, unsigned char* data, size_t n) -{ - /* - * this could be modified to handle multiple lines, but as it is - * used here, this only displays up to 16 bytes - */ - BIO_printf(b, "%s", prefix); - BIO_hex_string(b, 0, width, data, n); - BIO_printf(b, "\n"); -} - - static int test_siphash(int idx) { SIPHASH siphash; @@ -237,10 +225,13 @@ static int test_siphash(int idx) size_t i; if (expectedlen != SIPHASH_MIN_DIGEST_SIZE && - expectedlen != SIPHASH_MAX_DIGEST_SIZE) + expectedlen != SIPHASH_MAX_DIGEST_SIZE) { + TEST_info("size %" OSSLzu " vs %d and %d", expectedlen, + SIPHASH_MIN_DIGEST_SIZE, SIPHASH_MAX_DIGEST_SIZE); return 0; + } - if (inlen > sizeof(in)) + if (!TEST_int_le(inlen, sizeof(in))) return 0; /* key and in data are 00 01 02 ... */ @@ -250,39 +241,23 @@ static int test_siphash(int idx) for (i = 0; i < inlen; i++) in[i] = i; - if (!SipHash_Init(&siphash, key, expectedlen, 0, 0)) { - BIO_printf(b_stderr, "SipHash_Init failed\n"); + if (!TEST_true(SipHash_Init(&siphash, key, expectedlen, 0, 0))) return 0; - } SipHash_Update(&siphash, in, inlen); - if (!SipHash_Final(&siphash, out, expectedlen)) { - BIO_printf(b_stderr, "SipHash_Final failed\n"); + if (!TEST_true(SipHash_Final(&siphash, out, expectedlen)) + || !TEST_mem_eq(out, expectedlen, expected, expectedlen)) return 0; - } - - if (memcmp(out, expected, expectedlen) != 0) { - BIO_printf(b_stderr, "SipHash test #%d failed.\n", idx); - hex_out(b_stderr, "got: ", 16, out, expectedlen); - hex_out(b_stderr, "expected: ", 16, expected, expectedlen); - return 0; - } if (inlen > 16) { - if (!SipHash_Init(&siphash, key, expectedlen, 0, 0)) { - BIO_printf(b_stderr, "SipHash_Init failed\n"); + if (!TEST_true(SipHash_Init(&siphash, key, expectedlen, 0, 0))) return 0; - } SipHash_Update(&siphash, in, 1); SipHash_Update(&siphash, in+1, inlen-1); - if (!SipHash_Final(&siphash, out, expectedlen)) { - BIO_printf(b_stderr, "SipHash_Final failed\n"); + if (!TEST_true(SipHash_Final(&siphash, out, expectedlen))) return 0; - } - if (memcmp(out, expected, expectedlen) != 0) { - BIO_printf(b_stderr, "SipHash test #%d/1+(N-1) failed.\n", idx); - hex_out(b_stderr, "got: ", 16, out, expectedlen); - hex_out(b_stderr, "expected: ", 16, expected, expectedlen); + if (!TEST_mem_eq(out, expectedlen, expected, expectedlen)) { + TEST_info("SipHash test #%d/1+(N-1) failed.", idx); return 0; } } @@ -290,41 +265,29 @@ static int test_siphash(int idx) if (inlen > 32) { size_t half = inlen / 2; - if (!SipHash_Init(&siphash, key, expectedlen, 0, 0)) { - BIO_printf(b_stderr, "SipHash_Init failed\n"); + if (!TEST_true(SipHash_Init(&siphash, key, expectedlen, 0, 0))) return 0; - } SipHash_Update(&siphash, in, half); SipHash_Update(&siphash, in+half, inlen-half); - if (!SipHash_Final(&siphash, out, expectedlen)) { - BIO_printf(b_stderr, "SipHash_Final failed\n"); + if (!TEST_true(SipHash_Final(&siphash, out, expectedlen))) return 0; - } - if (memcmp(out, expected, expectedlen) != 0) { - BIO_printf(b_stderr, "SipHash test #%d/2 failed.\n", idx); - hex_out(b_stderr, "got: ", 16, out, expectedlen); - hex_out(b_stderr, "expected: ", 16, expected, expectedlen); + if (!TEST_mem_eq(out, expectedlen, expected, expectedlen)) { + TEST_info("SipHash test #%d/2 failed.", idx); return 0; } for (half = 16; half < inlen; half += 16) { - if (!SipHash_Init(&siphash, key, expectedlen, 0, 0)) { - BIO_printf(b_stderr, "SipHash_Init failed\n"); + if (!TEST_true(SipHash_Init(&siphash, key, expectedlen, 0, 0))) return 0; - } SipHash_Update(&siphash, in, half); SipHash_Update(&siphash, in+half, inlen-half); - if (!SipHash_Final(&siphash, out, expectedlen)) { - BIO_printf(b_stderr, "SipHash_Final failed\n"); + if (!TEST_true(SipHash_Final(&siphash, out, expectedlen))) return 0; - } - if (memcmp(out, expected, expectedlen) != 0) { - BIO_printf(b_stderr, "SipHash test #%d/%zu+%zu failed.\n", - idx, half, inlen-half); - hex_out(b_stderr, "got: ", 16, out, expectedlen); - hex_out(b_stderr, "expected: ", 16, expected, expectedlen); + if (!TEST_mem_eq(out, expectedlen, expected, expectedlen)) { + TEST_info("SipHash test #%d/%" OSSLzu "+%" OSSLzu " failed.", + idx, half, inlen-half); return 0; } } @@ -340,57 +303,23 @@ static int test_siphash_basic(void) unsigned char output[SIPHASH_MAX_DIGEST_SIZE]; /* Use invalid hash size */ - if (SipHash_Init(&siphash, key, 4, 0, 0)) { - BIO_printf(b_stderr, "SipHash_Init(output size = 4) should have failed\n"); - return 0; - } - - /* Use hash size = 8 */ - if (!SipHash_Init(&siphash, key, 8, 0, 0)) { - BIO_printf(b_stderr, "SipHash_Init(output size = 8) should have succeeded\n"); - return 0; - } - if (!SipHash_Final(&siphash, output, 8)) { - BIO_printf(b_stderr, "SipHash_Final(output size = 8) should have succeeded\n"); - return 0; - } - if (SipHash_Final(&siphash, output, 16)) { - BIO_printf(b_stderr, "SipHash_Final(output size = 16) should have failed\n"); - return 0; - } - - /* Use hash size = 16 */ - if (!SipHash_Init(&siphash, key, 16, 0, 0)) { - BIO_printf(b_stderr, "SipHash_Init(output size = 16) should have succeeded\n"); - return 0; - } - if (SipHash_Final(&siphash, output, 8)) { - BIO_printf(b_stderr, "SipHash_Final(output size = 8) should have failed\n"); - return 0; - } - if (!SipHash_Final(&siphash, output, 16)) { - BIO_printf(b_stderr, "SipHash_Final(output size = 16) should have succeeded\n"); - return 0; - } - - /* Use hash size = 0 (default = 16) */ - if (!SipHash_Init(&siphash, key, 0, 0, 0)) { - BIO_printf(b_stderr, "SipHash_Init(output size = 0) should have succeeded\n"); - return 0; - } - if (SipHash_Final(&siphash, output, 8)) { - BIO_printf(b_stderr, "SipHash_Final(output size = 8) should have failed\n"); - return 0; - } - if (!SipHash_Final(&siphash, output, 16)) { - BIO_printf(b_stderr, "SipHash_Final(output size = 16) should have succeeded\n"); - return 0; - } - return 1; + return TEST_int_eq(SipHash_Init(&siphash, key, 4, 0, 0), 0) + /* Use hash size = 8 */ + && TEST_true(SipHash_Init(&siphash, key, 8, 0, 0)) + && TEST_true(SipHash_Final(&siphash, output, 8)) + && TEST_int_eq(SipHash_Final(&siphash, output, 16), 0) + + /* Use hash size = 16 */ + && TEST_true(SipHash_Init(&siphash, key, 16, 0, 0)) + && TEST_int_eq(SipHash_Final(&siphash, output, 8), 0) + && TEST_true(SipHash_Final(&siphash, output, 16)) + + /* Use hash size = 0 (default = 16) */ + && TEST_true(SipHash_Init(&siphash, key, 0, 0, 0)) + && TEST_int_eq(SipHash_Final(&siphash, output, 8), 0) + && TEST_true(SipHash_Final(&siphash, output, 16)); } - - int test_main(int argc, char **argv) { int result = 0; From builds at travis-ci.org Thu Apr 13 08:44:42 2017 From: builds at travis-ci.org (Travis CI) Date: Thu, 13 Apr 2017 08:44:42 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10276 (master - 9612e15) In-Reply-To: Message-ID: <58ef3a78a9fd2_43fddc61b43406092de@9ba2b4f7-c21c-4586-b936-432e2035de48.mail> Build Update for openssl/openssl ------------------------------------- Build: #10276 Status: Still Failing Duration: 19 minutes and 34 seconds Commit: 9612e15 (master) Author: Richard Levitte Message: ASN.1: adapt our use of INTxx et al by making them explicitely embedded Fixes #3191 Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3199) View the changeset: https://github.com/openssl/openssl/compare/8edefd7bb323...9612e1576078 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221643028 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Thu Apr 13 09:06:00 2017 From: builds at travis-ci.org (Travis CI) Date: Thu, 13 Apr 2017 09:06:00 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10278 (master - 026aebb) In-Reply-To: Message-ID: <58ef3f777520_43f9fdc8c08f0329993@ddd79aae-3114-43e3-a8fc-3959a491e941.mail> Build Update for openssl/openssl ------------------------------------- Build: #10278 Status: Still Failing Duration: 22 minutes and 23 seconds Commit: 026aebb (master) Author: Pauli Message: Split the CAST tests up. Reviewed-by: Matt Caswell Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3211) View the changeset: https://github.com/openssl/openssl/compare/9612e1576078...026aebb3eab4 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221644872 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Thu Apr 13 09:15:46 2017 From: builds at travis-ci.org (Travis CI) Date: Thu, 13 Apr 2017 09:15:46 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10279 (master - a24c1e2) In-Reply-To: Message-ID: <58ef41c2d6944_43fddc61b4444660232@9ba2b4f7-c21c-4586-b936-432e2035de48.mail> Build Update for openssl/openssl ------------------------------------- Build: #10279 Status: Still Failing Duration: 27 minutes and 10 seconds Commit: a24c1e2 (master) Author: Pauli Message: Update the internal siphash tests to use the framework's output. Reviewed-by: Matt Caswell Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3212) View the changeset: https://github.com/openssl/openssl/compare/026aebb3eab4...a24c1e224338 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221646117 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From levitte at openssl.org Thu Apr 13 11:26:38 2017 From: levitte at openssl.org (Richard Levitte) Date: Thu, 13 Apr 2017 11:26:38 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_0_2-stable update Message-ID: <1492082798.929096.7672.nullmailer@dev.openssl.org> The branch OpenSSL_1_0_2-stable has been updated via e8f2e2fb3d82485af297717b93358f488e15eae0 (commit) from 71d66c46c725a88a8d14b747610656e15610109e (commit) - Log ----------------------------------------------------------------- commit e8f2e2fb3d82485af297717b93358f488e15eae0 Author: junfx Date: Thu Apr 13 15:56:50 2017 +0800 pkeyutl exit with 0 if the verification succeeded If exiting non-zero, which not consistent with shell conventions, the shells/scripts treat the cmd as failed. CLA: trivial Reviewed-by: Matt Caswell Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3213) ----------------------------------------------------------------------- Summary of changes: apps/pkeyutl.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/apps/pkeyutl.c b/apps/pkeyutl.c index 7c62d1c..19f2e5d 100644 --- a/apps/pkeyutl.c +++ b/apps/pkeyutl.c @@ -322,8 +322,10 @@ int MAIN(int argc, char **argv) buf_in, (size_t)buf_inlen); if (rv == 0) BIO_puts(out, "Signature Verification Failure\n"); - else if (rv == 1) + else if (rv == 1) { BIO_puts(out, "Signature Verified Successfully\n"); + ret = 0; + } if (rv >= 0) goto end; } else { From openssl at openssl.org Thu Apr 13 12:05:37 2017 From: openssl at openssl.org (OpenSSL run-checker) Date: Thu, 13 Apr 2017 12:05:37 +0000 Subject: [openssl-commits] FAILED build of OpenSSL branch OpenSSL_1_1_0-stable with options -d --strict-warnings no-ec Message-ID: <1492085137.937189.14981.nullmailer@run.openssl.org> Platform and configuration command: $ uname -a Linux run 4.4.0-71-generic #92-Ubuntu SMP Fri Mar 24 12:59:01 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux $ CC=clang ../openssl/config -d --strict-warnings no-ec Commit log since last time: 3b84227 ASN.1: adapt SSL_SESSION_ASN1 by explicitely embedding INTxx et al b0a05a3 ASN.1: change INTxx, UINTxx and Z variants to be embedable adc0e6f ASN.1: extend the possibilities to embed data instead of pointers e7bed76 Remove more stale code in ecdhtest.c 9d50832 ecdhtest.c: move KATs to evptests.txt 80204e6 Remove stale code in ecdhtest.c 2f62997 ecdhtest.c: move NAMED CURVES TESTS to evptests.txt Build log ended with (last 100 lines): ../../openssl/test/recipes/05-test_rand.t ............. ok ../../openssl/test/recipes/05-test_rc2.t .............. ok ../../openssl/test/recipes/05-test_rc4.t .............. ok ../../openssl/test/recipes/05-test_rc5.t .............. skipped: rc5 is not supported by this OpenSSL build ../../openssl/test/recipes/05-test_rmd.t .............. ok ../../openssl/test/recipes/05-test_sha1.t ............. ok ../../openssl/test/recipes/05-test_sha256.t ........... ok ../../openssl/test/recipes/05-test_sha512.t ........... ok ../../openssl/test/recipes/05-test_wp.t ............... ok ../../openssl/test/recipes/10-test_bn.t ............... ok ../../openssl/test/recipes/10-test_exp.t .............. ok ../../openssl/test/recipes/15-test_dh.t ............... ok ../../openssl/test/recipes/15-test_dsa.t .............. ok ../../openssl/test/recipes/15-test_ec.t ............... ok ../../openssl/test/recipes/15-test_ecdh.t ............. skipped: ec is not supported by this OpenSSL build ../../openssl/test/recipes/15-test_ecdsa.t ............ skipped: ec is not supported by this OpenSSL build ../../openssl/test/recipes/15-test_genrsa.t ........... ok ../../openssl/test/recipes/15-test_rsa.t .............. ok ../../openssl/test/recipes/15-test_rsapss.t ........... ok ../../openssl/test/recipes/20-test_enc.t .............. ok ../../openssl/test/recipes/20-test_passwd.t ........... ok ../../openssl/test/recipes/25-test_crl.t .............. ok ../../openssl/test/recipes/25-test_d2i.t .............. ok ../../openssl/test/recipes/25-test_pkcs7.t ............ ok ../../openssl/test/recipes/25-test_req.t .............. ok ../../openssl/test/recipes/25-test_sid.t .............. ok ../../openssl/test/recipes/25-test_verify.t ........... ok ../../openssl/test/recipes/25-test_x509.t ............. ok ../../openssl/test/recipes/30-test_afalg.t ............ ok ../../openssl/test/recipes/30-test_engine.t ........... ok # Failed test 'running evp_test evptests.txt' # at ../../openssl/test/recipes/30-test_evp.t line 18. # Looks like you failed 1 test of 1. ../../openssl/test/recipes/30-test_evp.t .............. Dubious, test returned 1 (wstat 256, 0x100) Failed 1/1 subtests ../../openssl/test/recipes/30-test_evp_extra.t ........ ok ../../openssl/test/recipes/30-test_pbelu.t ............ ok ../../openssl/test/recipes/40-test_rehash.t ........... ok ../../openssl/test/recipes/60-test_x509_store.t ....... ok ../../openssl/test/recipes/70-test_asyncio.t .......... ok ../../openssl/test/recipes/70-test_bad_dtls.t ......... ok ../../openssl/test/recipes/70-test_clienthello.t ...... ok ../../openssl/test/recipes/70-test_packet.t ........... ok ../../openssl/test/recipes/70-test_sslcbcpadding.t .... ok ../../openssl/test/recipes/70-test_sslcertstatus.t .... ok ../../openssl/test/recipes/70-test_sslextension.t ..... ok ../../openssl/test/recipes/70-test_sslmessages.t ...... ok ../../openssl/test/recipes/70-test_sslrecords.t ....... ok ../../openssl/test/recipes/70-test_sslsessiontick.t ... ok ../../openssl/test/recipes/70-test_sslskewith0p.t ..... ok ../../openssl/test/recipes/70-test_sslvertol.t ........ ok ../../openssl/test/recipes/70-test_tlsextms.t ......... ok ../../openssl/test/recipes/70-test_verify_extra.t ..... ok ../../openssl/test/recipes/80-test_ca.t ............... ok ../../openssl/test/recipes/80-test_cipherlist.t ....... ok ../../openssl/test/recipes/80-test_cms.t .............. ok ../../openssl/test/recipes/80-test_ct.t ............... skipped: ct and ec are not supported by this OpenSSL build ../../openssl/test/recipes/80-test_dane.t ............. skipped: test_dane uses ec which is not supported by this OpenSSL build ../../openssl/test/recipes/80-test_dtls.t ............. ok ../../openssl/test/recipes/80-test_dtlsv1listen.t ..... ok ../../openssl/test/recipes/80-test_ocsp.t ............. ok ../../openssl/test/recipes/80-test_pkcs12.t ........... ok ../../openssl/test/recipes/80-test_ssl_new.t .......... ok ../../openssl/test/recipes/80-test_ssl_old.t .......... ok ../../openssl/test/recipes/80-test_ssl_test_ctx.t ..... ok ../../openssl/test/recipes/80-test_sslcorrupt.t ....... ok ../../openssl/test/recipes/80-test_tsa.t .............. ok ../../openssl/test/recipes/80-test_x509aux.t .......... skipped: test_dane uses ec which is not supported by this OpenSSL build ../../openssl/test/recipes/90-test_async.t ............ ok ../../openssl/test/recipes/90-test_bio_enc.t .......... ok ../../openssl/test/recipes/90-test_bioprint.t ......... ok ../../openssl/test/recipes/90-test_constant_time.t .... ok ../../openssl/test/recipes/90-test_fuzz.t ............. ok ../../openssl/test/recipes/90-test_gmdiff.t ........... ok ../../openssl/test/recipes/90-test_heartbeat.t ........ skipped: heartbeats is not supported by this OpenSSL build ../../openssl/test/recipes/90-test_ige.t .............. ok ../../openssl/test/recipes/90-test_memleak.t .......... ok ../../openssl/test/recipes/90-test_p5_crpt2.t ......... ok ../../openssl/test/recipes/90-test_secmem.t ........... ok ../../openssl/test/recipes/90-test_shlibload.t ........ ok ../../openssl/test/recipes/90-test_srp.t .............. ok ../../openssl/test/recipes/90-test_sslapi.t ........... ok ../../openssl/test/recipes/90-test_threads.t .......... ok ../../openssl/test/recipes/90-test_v3name.t ........... ok Test Summary Report ------------------- ../../openssl/test/recipes/30-test_evp.t (Wstat: 256 Tests: 1 Failed: 1) Failed test: 1 Non-zero exit status: 1 Files=96, Tests=544, 79 wallclock secs ( 0.59 usr 0.13 sys + 30.74 cusr 2.20 csys = 33.66 CPU) Result: FAIL Failed 1/96 test programs. 1/544 subtests failed. Makefile:152: recipe for target '_tests' failed make[1]: *** [_tests] Error 255 make[1]: Leaving directory '/home/openssl/run-checker-1.1.0/no-ec' Makefile:150: recipe for target 'tests' failed make: *** [tests] Error 2 From openssl at openssl.org Thu Apr 13 12:09:41 2017 From: openssl at openssl.org (OpenSSL run-checker) Date: Thu, 13 Apr 2017 12:09:41 +0000 Subject: [openssl-commits] FAILED build of OpenSSL branch OpenSSL_1_1_0-stable with options -d --strict-warnings no-ec2m Message-ID: <1492085381.257350.26894.nullmailer@run.openssl.org> Platform and configuration command: $ uname -a Linux run 4.4.0-71-generic #92-Ubuntu SMP Fri Mar 24 12:59:01 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux $ CC=clang ../openssl/config -d --strict-warnings no-ec2m Commit log since last time: 3b84227 ASN.1: adapt SSL_SESSION_ASN1 by explicitely embedding INTxx et al b0a05a3 ASN.1: change INTxx, UINTxx and Z variants to be embedable adc0e6f ASN.1: extend the possibilities to embed data instead of pointers e7bed76 Remove more stale code in ecdhtest.c 9d50832 ecdhtest.c: move KATs to evptests.txt 80204e6 Remove stale code in ecdhtest.c 2f62997 ecdhtest.c: move NAMED CURVES TESTS to evptests.txt Build log ended with (last 100 lines): ../../openssl/test/recipes/05-test_rand.t ............. ok ../../openssl/test/recipes/05-test_rc2.t .............. ok ../../openssl/test/recipes/05-test_rc4.t .............. ok ../../openssl/test/recipes/05-test_rc5.t .............. skipped: rc5 is not supported by this OpenSSL build ../../openssl/test/recipes/05-test_rmd.t .............. ok ../../openssl/test/recipes/05-test_sha1.t ............. ok ../../openssl/test/recipes/05-test_sha256.t ........... ok ../../openssl/test/recipes/05-test_sha512.t ........... ok ../../openssl/test/recipes/05-test_wp.t ............... ok ../../openssl/test/recipes/10-test_bn.t ............... ok ../../openssl/test/recipes/10-test_exp.t .............. ok ../../openssl/test/recipes/15-test_dh.t ............... ok ../../openssl/test/recipes/15-test_dsa.t .............. ok ../../openssl/test/recipes/15-test_ec.t ............... ok ../../openssl/test/recipes/15-test_ecdh.t ............. ok ../../openssl/test/recipes/15-test_ecdsa.t ............ ok ../../openssl/test/recipes/15-test_genrsa.t ........... ok ../../openssl/test/recipes/15-test_rsa.t .............. ok ../../openssl/test/recipes/15-test_rsapss.t ........... ok ../../openssl/test/recipes/20-test_enc.t .............. ok ../../openssl/test/recipes/20-test_passwd.t ........... ok ../../openssl/test/recipes/25-test_crl.t .............. ok ../../openssl/test/recipes/25-test_d2i.t .............. ok ../../openssl/test/recipes/25-test_pkcs7.t ............ ok ../../openssl/test/recipes/25-test_req.t .............. ok ../../openssl/test/recipes/25-test_sid.t .............. ok ../../openssl/test/recipes/25-test_verify.t ........... ok ../../openssl/test/recipes/25-test_x509.t ............. ok ../../openssl/test/recipes/30-test_afalg.t ............ ok ../../openssl/test/recipes/30-test_engine.t ........... ok # Failed test 'running evp_test evptests.txt' # at ../../openssl/test/recipes/30-test_evp.t line 18. # Looks like you failed 1 test of 1. ../../openssl/test/recipes/30-test_evp.t .............. Dubious, test returned 1 (wstat 256, 0x100) Failed 1/1 subtests ../../openssl/test/recipes/30-test_evp_extra.t ........ ok ../../openssl/test/recipes/30-test_pbelu.t ............ ok ../../openssl/test/recipes/40-test_rehash.t ........... ok ../../openssl/test/recipes/60-test_x509_store.t ....... ok ../../openssl/test/recipes/70-test_asyncio.t .......... ok ../../openssl/test/recipes/70-test_bad_dtls.t ......... ok ../../openssl/test/recipes/70-test_clienthello.t ...... ok ../../openssl/test/recipes/70-test_packet.t ........... ok ../../openssl/test/recipes/70-test_sslcbcpadding.t .... ok ../../openssl/test/recipes/70-test_sslcertstatus.t .... ok ../../openssl/test/recipes/70-test_sslextension.t ..... ok ../../openssl/test/recipes/70-test_sslmessages.t ...... ok ../../openssl/test/recipes/70-test_sslrecords.t ....... ok ../../openssl/test/recipes/70-test_sslsessiontick.t ... ok ../../openssl/test/recipes/70-test_sslskewith0p.t ..... ok ../../openssl/test/recipes/70-test_sslvertol.t ........ ok ../../openssl/test/recipes/70-test_tlsextms.t ......... ok ../../openssl/test/recipes/70-test_verify_extra.t ..... ok ../../openssl/test/recipes/80-test_ca.t ............... ok ../../openssl/test/recipes/80-test_cipherlist.t ....... ok ../../openssl/test/recipes/80-test_cms.t .............. ok ../../openssl/test/recipes/80-test_ct.t ............... ok ../../openssl/test/recipes/80-test_dane.t ............. ok ../../openssl/test/recipes/80-test_dtls.t ............. ok ../../openssl/test/recipes/80-test_dtlsv1listen.t ..... ok ../../openssl/test/recipes/80-test_ocsp.t ............. ok ../../openssl/test/recipes/80-test_pkcs12.t ........... ok ../../openssl/test/recipes/80-test_ssl_new.t .......... ok ../../openssl/test/recipes/80-test_ssl_old.t .......... ok ../../openssl/test/recipes/80-test_ssl_test_ctx.t ..... ok ../../openssl/test/recipes/80-test_sslcorrupt.t ....... ok ../../openssl/test/recipes/80-test_tsa.t .............. ok ../../openssl/test/recipes/80-test_x509aux.t .......... ok ../../openssl/test/recipes/90-test_async.t ............ ok ../../openssl/test/recipes/90-test_bio_enc.t .......... ok ../../openssl/test/recipes/90-test_bioprint.t ......... ok ../../openssl/test/recipes/90-test_constant_time.t .... ok ../../openssl/test/recipes/90-test_fuzz.t ............. ok ../../openssl/test/recipes/90-test_gmdiff.t ........... ok ../../openssl/test/recipes/90-test_heartbeat.t ........ skipped: heartbeats is not supported by this OpenSSL build ../../openssl/test/recipes/90-test_ige.t .............. ok ../../openssl/test/recipes/90-test_memleak.t .......... ok ../../openssl/test/recipes/90-test_p5_crpt2.t ......... ok ../../openssl/test/recipes/90-test_secmem.t ........... ok ../../openssl/test/recipes/90-test_shlibload.t ........ ok ../../openssl/test/recipes/90-test_srp.t .............. ok ../../openssl/test/recipes/90-test_sslapi.t ........... ok ../../openssl/test/recipes/90-test_threads.t .......... ok ../../openssl/test/recipes/90-test_v3name.t ........... ok Test Summary Report ------------------- ../../openssl/test/recipes/30-test_evp.t (Wstat: 256 Tests: 1 Failed: 1) Failed test: 1 Non-zero exit status: 1 Files=96, Tests=549, 79 wallclock secs ( 0.63 usr 0.09 sys + 32.73 cusr 2.13 csys = 35.58 CPU) Result: FAIL Failed 1/96 test programs. 1/549 subtests failed. Makefile:152: recipe for target '_tests' failed make[1]: *** [_tests] Error 255 make[1]: Leaving directory '/home/openssl/run-checker-1.1.0/no-ec2m' Makefile:150: recipe for target 'tests' failed make: *** [tests] Error 2 From rsalz at openssl.org Thu Apr 13 12:41:21 2017 From: rsalz at openssl.org (Rich Salz) Date: Thu, 13 Apr 2017 12:41:21 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492087281.327448.20492.nullmailer@dev.openssl.org> The branch master has been updated via d063add7cbdaf82e6208ef01414432320260e974 (commit) from a24c1e224338ccd3d2b831bd2e3ba52a1eb31f01 (commit) - Log ----------------------------------------------------------------- commit d063add7cbdaf82e6208ef01414432320260e974 Author: Pauli Date: Thu Apr 13 08:51:28 2017 +1000 Guarantee single argument evaluation for test macros. Add test case that checks some of them. Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3208) ----------------------------------------------------------------------- Summary of changes: test/README | 14 ++++++++- test/test_test.c | 56 +++++++++++++++++++++++++++++++++++ test/testutil.h | 90 ++++++++++++++++++++++++++++++-------------------------- 3 files changed, 117 insertions(+), 43 deletions(-) diff --git a/test/README b/test/README index cf7e4d4..7831c86 100644 --- a/test/README +++ b/test/README @@ -134,4 +134,16 @@ conditions. These macros produce an error message in a standard format if the condition is not met (and nothing if the condition is met). Additional information can be presented with the TEST_info macro that takes a printf format string and arguments. TEST_error is useful for complicated conditions, -it also takes a printf format string and argument. +it also takes a printf format string and argument. In all cases the TEST_xxx +macros are guaranteed to evaluate their arguments exactly once. This means +that expressions with side effects are allowed as parameters. Thus, + + if (!TEST_ptr(ptr = OPENSSL_malloc(..))) + +works fine and can be used in place of: + + ptr = OPENSSL_malloc(..); + if (!TEST_ptr(ptr)) + +The former produces a more meaningful message on failure than the latter. + diff --git a/test/test_test.c b/test/test_test.c index df4725a..a154289 100644 --- a/test/test_test.c +++ b/test/test_test.c @@ -259,6 +259,61 @@ static int test_messages(void) return 1; } +static int test_single_eval(void) +{ + int i = 4; + long l = -9000; + char c = 'd'; + unsigned char uc = 22; + unsigned long ul = 500; + size_t st = 1234; + char buf[4] = { 0 }, *p = buf; + + /* int */ + return TEST_int_eq(i++, 4) + && TEST_int_eq(i, 5) + && TEST_int_gt(++i, 5) + && TEST_int_le(5, i++) + && TEST_int_ne(--i, 5) + && TEST_int_eq(12, i *= 2) + /* Long */ + && TEST_long_eq(l--, -9000L) + && TEST_long_eq(++l, -9000L) + && TEST_long_ne(-9000L, l /= 2) + && TEST_long_lt(--l, -4500L) + /* char */ + && TEST_char_eq(++c, 'e') + && TEST_char_eq('e', c--) + && TEST_char_ne('d', --c) + && TEST_char_le('b', --c) + && TEST_char_lt(c++, 'c') + /* unsigned char */ + && TEST_uchar_eq(22, uc++) + && TEST_uchar_eq(uc /= 2, 11) + && TEST_ulong_eq(ul ^= 1, 501) + && TEST_ulong_eq(502, ul ^= 3) + && TEST_ulong_eq(ul = ul * 3 - 6, 1500) + /* size_t */ + && TEST_size_t_eq((--i, st++), 1234) + && TEST_size_t_eq(st, 1235) + && TEST_int_eq(11, i) + /* pointers */ + && TEST_ptr_eq(p++, buf) + && TEST_ptr_eq(buf + 2, ++p) + && TEST_ptr_eq(buf, p -= 2) + && TEST_ptr(++p) + && TEST_ptr_eq(p, buf + 1) + && TEST_ptr_null(p = NULL) + /* strings */ + && TEST_str_eq(p = "123456" + 1, "23456") + && TEST_str_eq("3456", ++p) + && TEST_str_ne(p++, "456") + /* memory */ + && TEST_mem_eq(--p, sizeof("3456"), "3456", sizeof("3456")) + && TEST_mem_ne(p++, sizeof("456"), "456", sizeof("456")) + && TEST_mem_eq(p--, sizeof("456"), "456", sizeof("456")); +} + void register_tests(void) { ADD_TEST(test_int); @@ -273,4 +328,5 @@ void register_tests(void) ADD_TEST(test_string); ADD_TEST(test_memory); ADD_TEST(test_messages); + ADD_TEST(test_single_eval); } diff --git a/test/testutil.h b/test/testutil.h index a83323b..0631a8b 100644 --- a/test/testutil.h +++ b/test/testutil.h @@ -191,7 +191,7 @@ DECLARE_COMPARISON(char *, str, ne) /* * Equality test for memory blocks where NULL is a legitimate value. -* These calls return 1 if the two memory blocks compare true. + * These calls return 1 if the two memory blocks compare true. * Otherwise, they return 0 and pretty-print diagnostics. * These should not be called directly, use the TEST_xxx macros below instead. */ @@ -223,6 +223,12 @@ void test_info_c90(const char *desc, ...) PRINTF_FORMAT(1, 2); /* * The following macros provide wrapper calls to the test functions with * a default description that indicates the file and line number of the error. + * + * The following macros guarantee to evaluate each argument exactly once. + * This allows constructs such as: if(!TEST_ptr(ptr = OPENSSL_malloc(..))) + * to produce better contextual output than: + * ptr = OPENSSL_malloc(..); + * if (!TEST_ptr(ptr)) */ # define TEST_int_eq(a, b) test_int_eq(__FILE__, __LINE__, #a, #b, a, b) # define TEST_int_ne(a, b) test_int_ne(__FILE__, __LINE__, #a, #b, a, b) @@ -238,47 +244,47 @@ void test_info_c90(const char *desc, ...) PRINTF_FORMAT(1, 2); # define TEST_int_gt(a, b) test_int_gt(__FILE__, __LINE__, #a, #b, a, b) # define TEST_int_ge(a, b) test_int_ge(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_uint_eq(a, b) test_uint_eq(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_uint_ne(a, b) test_uint_ne(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_uint_lt(a, b) test_uint_lt(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_uint_le(a, b) test_uint_le(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_uint_gt(a, b) test_uint_gt(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_uint_ge(a, b) test_uint_ge(__FILE__, __LINE__, #a, #b, a, b) - -# define TEST_char_eq(a, b) test_char_eq(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_char_ne(a, b) test_char_ne(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_char_lt(a, b) test_char_lt(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_char_le(a, b) test_char_le(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_char_gt(a, b) test_char_gt(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_char_ge(a, b) test_char_ge(__FILE__, __LINE__, #a, #b, a, b) - -# define TEST_uchar_eq(a, b) test_uchar_eq(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_uchar_ne(a, b) test_uchar_ne(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_uchar_lt(a, b) test_uchar_lt(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_uchar_le(a, b) test_uchar_le(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_uchar_gt(a, b) test_uchar_gt(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_uchar_ge(a, b) test_uchar_ge(__FILE__, __LINE__, #a, #b, a, b) - -# define TEST_long_eq(a, b) test_long_eq(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_long_ne(a, b) test_long_ne(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_long_lt(a, b) test_long_lt(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_long_le(a, b) test_long_le(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_long_gt(a, b) test_long_gt(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_long_ge(a, b) test_long_ge(__FILE__, __LINE__, #a, #b, a, b) - -# define TEST_ulong_eq(a, b) test_ulong_eq(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_ulong_ne(a, b) test_ulong_ne(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_ulong_lt(a, b) test_ulong_lt(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_ulong_le(a, b) test_ulong_le(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_ulong_gt(a, b) test_ulong_gt(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_ulong_ge(a, b) test_ulong_ge(__FILE__, __LINE__, #a, #b, a, b) - -# define TEST_size_t_eq(a, b) test_size_t_eq(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_size_t_ne(a, b) test_size_t_ne(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_size_t_lt(a, b) test_size_t_lt(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_size_t_le(a, b) test_size_t_le(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_size_t_gt(a, b) test_size_t_gt(__FILE__, __LINE__, #a, #b, a, b) -# define TEST_size_t_ge(a, b) test_size_t_ge(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_uint_eq(a, b) test_uint_eq(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_uint_ne(a, b) test_uint_ne(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_uint_lt(a, b) test_uint_lt(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_uint_le(a, b) test_uint_le(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_uint_gt(a, b) test_uint_gt(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_uint_ge(a, b) test_uint_ge(__FILE__, __LINE__, #a, #b, a, b) + +# define TEST_char_eq(a, b) test_char_eq(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_char_ne(a, b) test_char_ne(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_char_lt(a, b) test_char_lt(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_char_le(a, b) test_char_le(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_char_gt(a, b) test_char_gt(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_char_ge(a, b) test_char_ge(__FILE__, __LINE__, #a, #b, a, b) + +# define TEST_uchar_eq(a, b) test_uchar_eq(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_uchar_ne(a, b) test_uchar_ne(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_uchar_lt(a, b) test_uchar_lt(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_uchar_le(a, b) test_uchar_le(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_uchar_gt(a, b) test_uchar_gt(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_uchar_ge(a, b) test_uchar_ge(__FILE__, __LINE__, #a, #b, a, b) + +# define TEST_long_eq(a, b) test_long_eq(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_long_ne(a, b) test_long_ne(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_long_lt(a, b) test_long_lt(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_long_le(a, b) test_long_le(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_long_gt(a, b) test_long_gt(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_long_ge(a, b) test_long_ge(__FILE__, __LINE__, #a, #b, a, b) + +# define TEST_ulong_eq(a, b) test_ulong_eq(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_ulong_ne(a, b) test_ulong_ne(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_ulong_lt(a, b) test_ulong_lt(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_ulong_le(a, b) test_ulong_le(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_ulong_gt(a, b) test_ulong_gt(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_ulong_ge(a, b) test_ulong_ge(__FILE__, __LINE__, #a, #b, a, b) + +# define TEST_size_t_eq(a, b) test_size_t_eq(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_size_t_ne(a, b) test_size_t_ne(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_size_t_lt(a, b) test_size_t_lt(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_size_t_le(a, b) test_size_t_le(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_size_t_gt(a, b) test_size_t_gt(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_size_t_ge(a, b) test_size_t_ge(__FILE__, __LINE__, #a, #b, a, b) # define TEST_ptr_eq(a, b) test_ptr_eq(__FILE__, __LINE__, #a, #b, a, b) # define TEST_ptr_ne(a, b) test_ptr_ne(__FILE__, __LINE__, #a, #b, a, b) From builds at travis-ci.org Thu Apr 13 13:00:45 2017 From: builds at travis-ci.org (Travis CI) Date: Thu, 13 Apr 2017 13:00:45 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10286 (master - d063add) In-Reply-To: Message-ID: <58ef7697ce6aa_43f9fdc8c05bc5881f5@ddd79aae-3114-43e3-a8fc-3959a491e941.mail> Build Update for openssl/openssl ------------------------------------- Build: #10286 Status: Still Failing Duration: 18 minutes and 43 seconds Commit: d063add (master) Author: Pauli Message: Guarantee single argument evaluation for test macros. Add test case that checks some of them. Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3208) View the changeset: https://github.com/openssl/openssl/compare/a24c1e224338...d063add7cbda View the full build log and details: https://travis-ci.org/openssl/openssl/builds/221715331 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 13 14:01:20 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 13 Apr 2017 14:01:20 +0000 Subject: [openssl-commits] Build failed: openssl master.9605 Message-ID: <20170413140115.23831.78095.6B68D237@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 13 14:34:18 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 13 Apr 2017 14:34:18 +0000 Subject: [openssl-commits] Build completed: openssl OpenSSL_1_1_0-stable.9606 Message-ID: <20170413143416.10109.54060.7A6C91BC@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 13 15:44:42 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 13 Apr 2017 15:44:42 +0000 Subject: [openssl-commits] Build failed: openssl master.9610 Message-ID: <20170413154441.37263.4870.CFDE1063@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 13 17:19:26 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 13 Apr 2017 17:19:26 +0000 Subject: [openssl-commits] Build failed: openssl master.9611 Message-ID: <20170413171924.23831.64738.2FCC289F@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 13 17:38:52 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 13 Apr 2017 17:38:52 +0000 Subject: [openssl-commits] Build completed: openssl master.9612 Message-ID: <20170413173851.39051.780.9C2E86E3@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 13 18:57:32 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 13 Apr 2017 18:57:32 +0000 Subject: [openssl-commits] Build failed: openssl master.9615 Message-ID: <20170413185732.104175.27945.3E3A0767@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 13 20:58:19 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 13 Apr 2017 20:58:19 +0000 Subject: [openssl-commits] Build completed: openssl master.9616 Message-ID: <20170413205810.23658.79356.4FA72F7B@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 13 21:12:50 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 13 Apr 2017 21:12:50 +0000 Subject: [openssl-commits] Build failed: openssl master.9617 Message-ID: <20170413211245.10441.41288.4E7F61FE@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 13 21:26:41 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 13 Apr 2017 21:26:41 +0000 Subject: [openssl-commits] Build completed: openssl master.9618 Message-ID: <20170413212640.92465.3135.40E58B3E@appveyor.com> An HTML attachment was scrubbed... URL: From appro at openssl.org Fri Apr 14 08:02:59 2017 From: appro at openssl.org (Andy Polyakov) Date: Fri, 14 Apr 2017 08:02:59 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492156979.317090.16932.nullmailer@dev.openssl.org> The branch master has been updated via 93f725a3fcf00701cc8d5c2943383b9aa233aeb4 (commit) from d063add7cbdaf82e6208ef01414432320260e974 (commit) - Log ----------------------------------------------------------------- commit 93f725a3fcf00701cc8d5c2943383b9aa233aeb4 Author: Andy Polyakov Date: Wed Apr 12 22:51:30 2017 +0200 testlib/OpenSSL/Test.pm: keep default input private. If $_ is not private, it can wipe caller's one, which proved to be problematic... Reviewed-by: Rich Salz Reviewed-by: Richard Levitte ----------------------------------------------------------------------- Summary of changes: test/testlib/OpenSSL/Test.pm | 1 + 1 file changed, 1 insertion(+) diff --git a/test/testlib/OpenSSL/Test.pm b/test/testlib/OpenSSL/Test.pm index c76ca1c..c4799e8 100644 --- a/test/testlib/OpenSSL/Test.pm +++ b/test/testlib/OpenSSL/Test.pm @@ -460,6 +460,7 @@ sub run { # to make it easier to compare with a manual run of the command. if ($opts{capture} || defined($opts{prefix})) { my $pipe; + local $_; open($pipe, '-|', "$prefix$cmd") or die "Can't start command: $!"; while(<$pipe>) { From builds at travis-ci.org Fri Apr 14 08:23:33 2017 From: builds at travis-ci.org (Travis CI) Date: Fri, 14 Apr 2017 08:23:33 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10306 (master - 93f725a) In-Reply-To: Message-ID: <58f08705778e5_43feb533d290c2841cf@ed6de1cd-785e-477d-baf5-b83d96f7d1ea.mail> Build Update for openssl/openssl ------------------------------------- Build: #10306 Status: Still Failing Duration: 19 minutes and 23 seconds Commit: 93f725a (master) Author: Andy Polyakov Message: testlib/OpenSSL/Test.pm: keep default input private. If $_ is not private, it can wipe caller's one, which proved to be problematic... Reviewed-by: Rich Salz Reviewed-by: Richard Levitte View the changeset: https://github.com/openssl/openssl/compare/d063add7cbda...93f725a3fcf0 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/222000498 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From appro at openssl.org Fri Apr 14 09:59:33 2017 From: appro at openssl.org (Andy Polyakov) Date: Fri, 14 Apr 2017 09:59:33 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492163973.152325.31201.nullmailer@dev.openssl.org> The branch master has been updated via b997adb3a518b065240e70acf38ec5f77a937f53 (commit) via 6d4321fc242829490e1e7a36358eb12874c9b9e0 (commit) via a3ea6bf0ef703b38a656245931979c7e53c410b7 (commit) from 93f725a3fcf00701cc8d5c2943383b9aa233aeb4 (commit) - Log ----------------------------------------------------------------- commit b997adb3a518b065240e70acf38ec5f77a937f53 Author: Andy Polyakov Date: Wed Apr 12 00:05:26 2017 +0200 asn1/a_int.c: don't write result if returning error. Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3192) commit 6d4321fc242829490e1e7a36358eb12874c9b9e0 Author: Andy Polyakov Date: Wed Apr 12 00:03:35 2017 +0200 asn1/a_int.c: simplify asn1_put_uint64. Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3192) commit a3ea6bf0ef703b38a656245931979c7e53c410b7 Author: Andy Polyakov Date: Tue Apr 11 23:15:55 2017 +0200 asn1/a_int.c: remove code duplicate and optimize branches, i.e. reduce amount of branches and favour likely ones. Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3192) ----------------------------------------------------------------------- Summary of changes: crypto/asn1/a_int.c | 207 ++++++++++++++++++++-------------------------------- 1 file changed, 81 insertions(+), 126 deletions(-) diff --git a/crypto/asn1/a_int.c b/crypto/asn1/a_int.c index 4981ddb..fe700b2 100644 --- a/crypto/asn1/a_int.c +++ b/crypto/asn1/a_int.c @@ -66,71 +66,74 @@ int ASN1_INTEGER_cmp(const ASN1_INTEGER *x, const ASN1_INTEGER *y) * followed by optional zeros isn't padded. */ +/* + * If |pad| is zero, the operation is effectively reduced to memcpy, + * and if |pad| is 0xff, then it performs two's complement, ~dst + 1. + * Note that in latter case sequence of zeros yields itself, and so + * does 0x80 followed by any number of zeros. These properties are + * used elsewhere below... + */ +static void twos_complement(unsigned char *dst, const unsigned char *src, + size_t len, unsigned char pad) +{ + unsigned int carry = pad & 1; + + /* Begin at the end of the encoding */ + dst += len; + src += len; + /* two's complement value: ~value + 1 */ + while (len-- != 0) { + *(--dst) = (unsigned char)(carry += *(--src) ^ pad); + carry >>= 8; + } +} + static size_t i2c_ibuf(const unsigned char *b, size_t blen, int neg, unsigned char **pp) { - int pad = 0; + unsigned int pad = 0; size_t ret, i; unsigned char *p, pb = 0; - const unsigned char *n; - if (b == NULL || blen == 0) - ret = 1; - else { + if (b != NULL && blen) { ret = blen; i = b[0]; - if (ret == 1 && i == 0) - neg = 0; if (!neg && (i > 127)) { pad = 1; pb = 0; } else if (neg) { + pb = 0xFF; if (i > 128) { pad = 1; - pb = 0xFF; } else if (i == 128) { /* - * Special case: if any other bytes non zero we pad: - * otherwise we don't. + * Special case [of minimal negative for given length]: + * if any other bytes non zero we pad, otherwise we don't. */ - for (i = 1; i < blen; i++) - if (b[i]) { - pad = 1; - pb = 0xFF; - break; - } + for (pad = 0, i = 1; i < blen; i++) + pad |= b[i]; + pb = pad != 0 ? 0xffU : 0; + pad = pb & 1; } } ret += pad; + } else { + ret = 1; + blen = 0; /* reduce '(b == NULL || blen == 0)' to '(blen == 0)' */ } - if (pp == NULL) + + if (pp == NULL || (p = *pp) == NULL) return ret; - p = *pp; - if (pad) - *(p++) = pb; - if (b == NULL || blen == 0) - *p = 0; - else if (!neg) - memcpy(p, b, blen); - else { - /* Begin at the end of the encoding */ - n = b + blen; - p += blen; - i = blen; - /* Copy zeros to destination as long as source is zero */ - while (!n[-1] && i > 1) { - *(--p) = 0; - n--; - i--; - } - /* Complement and increment next octet */ - *(--p) = ((*(--n)) ^ 0xff) + 1; - i--; - /* Complement any octets left */ - for (; i > 0; i--) - *(--p) = *(--n) ^ 0xff; - } + /* + * This magically handles all corner cases, such as '(b == NULL || + * blen == 0)', non-negative value, "negative" zero, 0x80 followed + * by any number of zeros... + */ + *p = pb; + p += pad; /* yes, p[0] can be written twice, but it's little + * price to pay for eliminated branches */ + twos_complement(p, b, blen, pb); *pp += ret; return ret; @@ -145,7 +148,6 @@ static size_t i2c_ibuf(const unsigned char *b, size_t blen, int neg, static size_t c2i_ibuf(unsigned char *b, int *pneg, const unsigned char *p, size_t plen) { - size_t i; int neg, pad; /* Zero content length is illegal */ if (plen == 0) { @@ -157,7 +159,7 @@ static size_t c2i_ibuf(unsigned char *b, int *pneg, *pneg = neg; /* Handle common case where length is 1 octet separately */ if (plen == 1) { - if (b) { + if (b != NULL) { if (neg) b[0] = (p[0] ^ 0xFF) + 1; else @@ -174,46 +176,14 @@ static size_t c2i_ibuf(unsigned char *b, int *pneg, ASN1err(ASN1_F_C2I_IBUF, ASN1_R_ILLEGAL_PADDING); return 0; } - /* If positive just copy across */ - if (neg == 0) { - if (b) - memcpy(b, p + pad, plen - pad); - return plen - pad; - } - - if (neg && pad) { - /* check is any following octets are non zero */ - for (i = 1; i < plen; i++) { - if (p[i] != 0) - break; - } - /* if all bytes are zero handle as special case */ - if (i == plen) { - if (b) { - b[0] = 1; - memset(b + 1, 0, plen - 1); - } - return plen; - } - } + /* skip over pad */ + p += pad; plen -= pad; - /* Must be negative: calculate twos complement */ - if (b) { - const unsigned char *from = p + plen - 1 + pad; - unsigned char *to = b + plen; - i = plen; - while (*from == 0 && i) { - *--to = 0; - i--; - from--; - } - *--to = (*from-- ^ 0xff) + 1; - OPENSSL_assert(i != 0); - i--; - for (; i > 0; i--) - *--to = *from-- ^ 0xff; - } + + if (b != NULL) + twos_complement(b, p, plen, neg ? 0xffU : 0); + return plen; } @@ -226,47 +196,36 @@ int i2c_ASN1_INTEGER(ASN1_INTEGER *a, unsigned char **pp) static int asn1_get_uint64(uint64_t *pr, const unsigned char *b, size_t blen) { size_t i; + uint64_t r; + if (blen > sizeof(*pr)) { ASN1err(ASN1_F_ASN1_GET_UINT64, ASN1_R_TOO_LARGE); return 0; } - *pr = 0; if (b == NULL) return 0; - for (i = 0; i < blen; i++) { - *pr <<= 8; - *pr |= b[i]; + for (r = 0, i = 0; i < blen; i++) { + r <<= 8; + r |= b[i]; } + *pr = r; return 1; } -static size_t asn1_put_uint64(unsigned char *b, uint64_t r) +/* + * Write uint64_t to big endian buffer and return offset to first + * written octet. In other words it returns offset in range from 0 + * to 7, with 0 denoting 8 written octets and 7 - one. + */ +static size_t asn1_put_uint64(unsigned char b[sizeof(uint64_t)], uint64_t r) { - if (r >= 0x100) { - unsigned char *p; - uint64_t rtmp = r; - size_t i = 0; - - /* Work out how many bytes we need */ - while (rtmp) { - rtmp >>= 8; - i++; - } + size_t off = sizeof(uint64_t); - /* Copy from end to beginning */ - p = b + i - 1; - - do { - *p-- = r & 0xFF; - r >>= 8; - } while (p >= b); - - return i; - } - - b[0] = (unsigned char)r; - return 1; + do { + b[--off] = (unsigned char)r; + } while (r >>= 8); + return off; } /* @@ -356,18 +315,17 @@ static int asn1_string_get_int64(int64_t *pr, const ASN1_STRING *a, int itype) static int asn1_string_set_int64(ASN1_STRING *a, int64_t r, int itype) { unsigned char tbuf[sizeof(r)]; - size_t l; + size_t off; + a->type = itype; if (r < 0) { - l = asn1_put_uint64(tbuf, -r); + off = asn1_put_uint64(tbuf, -r); a->type |= V_ASN1_NEG; } else { - l = asn1_put_uint64(tbuf, r); + off = asn1_put_uint64(tbuf, r); a->type &= ~V_ASN1_NEG; } - if (l == 0) - return 0; - return ASN1_STRING_set(a, tbuf, l); + return ASN1_STRING_set(a, tbuf + off, sizeof(tbuf) - off); } static int asn1_string_get_uint64(uint64_t *pr, const ASN1_STRING *a, @@ -391,12 +349,11 @@ static int asn1_string_get_uint64(uint64_t *pr, const ASN1_STRING *a, static int asn1_string_set_uint64(ASN1_STRING *a, uint64_t r, int itype) { unsigned char tbuf[sizeof(r)]; - size_t l; + size_t off; + a->type = itype; - l = asn1_put_uint64(tbuf, r); - if (l == 0) - return 0; - return ASN1_STRING_set(a, tbuf, l); + off = asn1_put_uint64(tbuf, r); + return ASN1_STRING_set(a, tbuf + off, sizeof(tbuf) - off); } /* @@ -643,11 +600,9 @@ int c2i_uint64_int(uint64_t *ret, int *neg, const unsigned char **pp, long len) int i2c_uint64_int(unsigned char *p, uint64_t r, int neg) { unsigned char buf[sizeof(uint64_t)]; - size_t buflen; + size_t off; - buflen = asn1_put_uint64(buf, r); - if (p == NULL) - return i2c_ibuf(buf, buflen, neg, NULL); - return i2c_ibuf(buf, buflen, neg, &p); + off = asn1_put_uint64(buf, r); + return i2c_ibuf(buf + off, sizeof(buf) - off, neg, &p); } From builds at travis-ci.org Fri Apr 14 10:21:37 2017 From: builds at travis-ci.org (Travis CI) Date: Fri, 14 Apr 2017 10:21:37 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10307 (master - b997adb) In-Reply-To: Message-ID: <58f0a2b1c4d19_43feb531dd8e0384522@ed6de1cd-785e-477d-baf5-b83d96f7d1ea.mail> Build Update for openssl/openssl ------------------------------------- Build: #10307 Status: Still Failing Duration: 20 minutes and 20 seconds Commit: b997adb (master) Author: Andy Polyakov Message: asn1/a_int.c: don't write result if returning error. Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3192) View the changeset: https://github.com/openssl/openssl/compare/93f725a3fcf0...b997adb3a518 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/222025256 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From rsalz at openssl.org Fri Apr 14 11:41:27 2017 From: rsalz at openssl.org (Rich Salz) Date: Fri, 14 Apr 2017 11:41:27 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492170087.935612.14471.nullmailer@dev.openssl.org> The branch master has been updated via 80b06b0cc067e908f512ccf5f2d283d41c050a8f (commit) from b997adb3a518b065240e70acf38ec5f77a937f53 (commit) - Log ----------------------------------------------------------------- commit 80b06b0cc067e908f512ccf5f2d283d41c050a8f Author: Todd Short Date: Wed Apr 12 16:32:38 2017 -0400 Fix unit tests when no-bf configured Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3206) ----------------------------------------------------------------------- Summary of changes: test/bftest.c | 20 ++++++-------------- 1 file changed, 6 insertions(+), 14 deletions(-) diff --git a/test/bftest.c b/test/bftest.c index 978fd58..eea9fcb 100644 --- a/test/bftest.c +++ b/test/bftest.c @@ -22,13 +22,7 @@ #include "../e_os.h" -#ifdef OPENSSL_NO_BF -int main(int argc, char *argv[]) -{ - printf("No BF support\n"); - return (0); -} -#else +#ifndef OPENSSL_NO_BF # include # ifdef CHARSET_EBCDIC @@ -440,10 +434,11 @@ static int test_bf_ofb64(void) return ret; } +#endif int test_main(int argc, char *argv[]) { - int ret; +#ifndef OPENSSL_NO_BF # ifdef CHARSET_EBCDIC int n; @@ -461,10 +456,7 @@ int test_main(int argc, char *argv[]) ADD_TEST(test_bf_ofb64); if (argc > 1) - ret = print_test_data(); - else - ret = run_tests(argv[0]); - - return ret; -} + return print_test_data(); #endif + return run_tests(argv[0]); +} From rsalz at openssl.org Fri Apr 14 11:54:02 2017 From: rsalz at openssl.org (Rich Salz) Date: Fri, 14 Apr 2017 11:54:02 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492170842.063691.16241.nullmailer@dev.openssl.org> The branch master has been updated via 4afc60605abcf1ac8373838c71e94a131d29253e (commit) from 80b06b0cc067e908f512ccf5f2d283d41c050a8f (commit) - Log ----------------------------------------------------------------- commit 4afc60605abcf1ac8373838c71e94a131d29253e Author: Rich Salz Date: Tue Apr 11 23:12:04 2017 -0400 WIP: Convert ui,v3ext,verify_extra_test verify_extra_test still failing :( Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3194) ----------------------------------------------------------------------- Summary of changes: test/build.info | 4 ++-- test/uitest.c | 24 +++++++----------------- test/v3ext.c | 42 +++++++++++++++++++++++++++--------------- test/verify_extra_test.c | 28 ++++++++-------------------- 4 files changed, 44 insertions(+), 54 deletions(-) diff --git a/test/build.info b/test/build.info index 6d0ffa0..d946567 100644 --- a/test/build.info +++ b/test/build.info @@ -171,7 +171,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[crltest]=../include DEPEND[crltest]=../libcrypto - SOURCE[v3ext]=v3ext.c + SOURCE[v3ext]=v3ext.c testutil.c test_main_custom.c INCLUDE[v3ext]=../include DEPEND[v3ext]=../libcrypto @@ -183,7 +183,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[constant_time_test]=.. ../include DEPEND[constant_time_test]=../libcrypto - SOURCE[verify_extra_test]=verify_extra_test.c + SOURCE[verify_extra_test]=verify_extra_test.c testutil.c test_main_custom.c INCLUDE[verify_extra_test]=../include DEPEND[verify_extra_test]=../libcrypto diff --git a/test/uitest.c b/test/uitest.c index 0a7420d..0000505 100644 --- a/test/uitest.c +++ b/test/uitest.c @@ -59,9 +59,9 @@ static int test_old() char pass[16]; int ok = 0; - if ((ui_method = - UI_UTIL_wrap_read_pem_callback(test_pem_password_cb, 0)) == NULL - || (ui = UI_new_method(ui_method)) == NULL) + if (!TEST_ptr(ui_method = + UI_UTIL_wrap_read_pem_callback( test_pem_password_cb, 0)) + || !TEST_ptr(ui = UI_new_method(ui_method))) goto err; /* The wrapper passes the UI userdata as the callback userdata param */ @@ -73,7 +73,7 @@ static int test_old() switch (UI_process(ui)) { case -2: - BIO_printf(bio_err, "test_old: UI process interrupted or cancelled\n"); + TEST_info("test_old: UI process interrupted or cancelled"); /* fall through */ case -1: goto err; @@ -81,14 +81,10 @@ static int test_old() break; } - if (strcmp(pass, defpass) == 0) + if (TEST_str_eq(pass, defpass)) ok = 1; - else - BIO_printf(bio_err, "test_old: password failure\n"); err: - if (!ok) - ERR_print_errors_fp(stderr); UI_free(ui); UI_destroy_method(ui_method); @@ -106,15 +102,9 @@ static int test_new_ui() int ok = 0; setup_ui_method(); - if (password_callback(pass, sizeof(pass), 0, &cb_data) > 0 - && strcmp(pass, cb_data.password) == 0) + if (TEST_int_gt(password_callback(pass, sizeof(pass), 0, &cb_data), 0) + && TEST_str_eq(pass, cb_data.password)) ok = 1; - else - BIO_printf(bio_err, "test_new: password failure\n"); - - if (!ok) - ERR_print_errors_fp(stderr); - destroy_ui_method(); return ok; } diff --git a/test/v3ext.c b/test/v3ext.c index 1c1f788..f4cb568 100644 --- a/test/v3ext.c +++ b/test/v3ext.c @@ -13,30 +13,42 @@ #include #include -int main(int ac, char **av) +#include "test_main_custom.h" +#include "testutil.h" + +static const char *infile; + +static int test_pathlen(void) { X509 *x = NULL; BIO *b = NULL; long pathlen; - int ret = 1; + int ret = 0; - if (ac != 2) { - fprintf(stderr, "Usage error\n"); - goto end; - } - b = BIO_new_file(av[1], "r"); - if (b == NULL) + if (!TEST_ptr(b = BIO_new_file(infile, "r")) + || !TEST_ptr(x = PEM_read_bio_X509(b, NULL, NULL, NULL)) + || !TEST_int_eq(pathlen = X509_get_pathlen(x), 6)) goto end; - x = PEM_read_bio_X509(b, NULL, NULL, NULL); - if (x == NULL) - goto end; - pathlen = X509_get_pathlen(x); - if (pathlen == 6) - ret = 0; + + ret = 1; end: - ERR_print_errors_fp(stderr); BIO_free(b); X509_free(x); return ret; } + +int test_main(int argc, char *argv[]) +{ + int ret; + + if (argc != 2) { + TEST_error("Usage error"); + return 0; + } + infile = argv[1]; + + ADD_TEST(test_pathlen); + ret = run_tests(argv[0]); + return ret; +} diff --git a/test/verify_extra_test.c b/test/verify_extra_test.c index bfbe5c0..d528fa5 100644 --- a/test/verify_extra_test.c +++ b/test/verify_extra_test.c @@ -13,6 +13,8 @@ #include #include #include +#include "testutil.h" +#include "test_main_custom.h" static STACK_OF(X509) *load_certs_from_file(const char *filename) { @@ -132,31 +134,17 @@ static int test_alt_chains_cert_forgery(const char *roots_f, BIO_free(bio); sk_X509_pop_free(untrusted, X509_free); X509_STORE_free(store); - if (ret != 1) - ERR_print_errors_fp(stderr); return ret; } -int main(int argc, char **argv) +int test_main(int argc, char **argv) { - CRYPTO_set_mem_debug(1); - CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON); - if (argc != 4) { - fprintf(stderr, "usage: verify_extra_test roots.pem untrusted.pem bad.pem\n"); - return 1; - } - - if (!test_alt_chains_cert_forgery(argv[1], argv[2], argv[3])) { - fprintf(stderr, "Test alt chains cert forgery failed\n"); - return 1; + TEST_error("usage: verify_extra_test roots.pem untrusted.pem bad.pem\n"); + return EXIT_FAILURE; } -#ifndef OPENSSL_NO_CRYPTO_MDEBUG - if (CRYPTO_mem_leaks_fp(stderr) <= 0) - return 1; -#endif - - printf("PASS\n"); - return 0; + if (!TEST_true(test_alt_chains_cert_forgery(argv[1], argv[2], argv[3]))) + return EXIT_FAILURE; + return EXIT_SUCCESS; } From builds at travis-ci.org Fri Apr 14 12:01:19 2017 From: builds at travis-ci.org (Travis CI) Date: Fri, 14 Apr 2017 12:01:19 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10308 (master - 80b06b0) In-Reply-To: Message-ID: <58f0ba0eeccd2_43fdd3a7dbae8670627@9a2705ce-17a8-4b44-a678-a6d6a13af430.mail> Build Update for openssl/openssl ------------------------------------- Build: #10308 Status: Still Failing Duration: 18 minutes and 41 seconds Commit: 80b06b0 (master) Author: Todd Short Message: Fix unit tests when no-bf configured Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3206) View the changeset: https://github.com/openssl/openssl/compare/b997adb3a518...80b06b0cc067 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/222045716 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From rsalz at openssl.org Fri Apr 14 12:03:02 2017 From: rsalz at openssl.org (Rich Salz) Date: Fri, 14 Apr 2017 12:03:02 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492171382.737227.18121.nullmailer@dev.openssl.org> The branch master has been updated via a81c33ef65b4bd2a9c74c22c192c09972db77a52 (commit) via 821d6c6d8132661b4fe2c2a44052330923bed68b (commit) from 4afc60605abcf1ac8373838c71e94a131d29253e (commit) - Log ----------------------------------------------------------------- commit a81c33ef65b4bd2a9c74c22c192c09972db77a52 Author: Nicola Tuveri Date: Thu Apr 13 16:09:21 2017 +0300 Remove ecdhtest.c All tests from ecdhtest.c have been ported to evptests.txt Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3219) commit 821d6c6d8132661b4fe2c2a44052330923bed68b Author: Nicola Tuveri Date: Thu Apr 13 15:54:06 2017 +0300 ecdhtest.c: move co-factor ECDH KATs to evptests move NIST SP800-56A co-factor ECDH KATs from ecdhtest.c to evptests.txt Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3219) ----------------------------------------------------------------------- Summary of changes: test/build.info | 6 +- test/ecdhtest.c | 251 -- test/ecdhtest_cavs.h | 4312 ------------------ test/evptests.txt | 10239 ++++++++++++++++++++++++++++++++++++++++++ test/recipes/15-test_ecdh.t | 12 - 5 files changed, 10240 insertions(+), 4580 deletions(-) delete mode 100644 test/ecdhtest.c delete mode 100644 test/ecdhtest_cavs.h delete mode 100644 test/recipes/15-test_ecdh.t diff --git a/test/build.info b/test/build.info index d946567..2d290df 100644 --- a/test/build.info +++ b/test/build.info @@ -13,7 +13,7 @@ IF[{- !$disabled{tests} -}] PROGRAMS_NO_INST=\ aborttest test_test \ sanitytest exdatatest bntest \ - ectest ecdsatest ecdhtest gmdifftest pbelutest ideatest \ + ectest ecdsatest gmdifftest pbelutest ideatest \ md2test \ hmactest \ rc2test rc4test rc5test \ @@ -59,10 +59,6 @@ IF[{- !$disabled{tests} -}] INCLUDE[ecdsatest]=../include DEPEND[ecdsatest]=../libcrypto - SOURCE[ecdhtest]=ecdhtest.c - INCLUDE[ecdhtest]=../include - DEPEND[ecdhtest]=../libcrypto - SOURCE[gmdifftest]=gmdifftest.c testutil.c test_main.c INCLUDE[gmdifftest]=../include DEPEND[gmdifftest]=../libcrypto diff --git a/test/ecdhtest.c b/test/ecdhtest.c deleted file mode 100644 index 11e0903..0000000 --- a/test/ecdhtest.c +++ /dev/null @@ -1,251 +0,0 @@ -/* - * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. - * - * Licensed under the OpenSSL license (the "License"). You may not use - * this file except in compliance with the License. You can obtain a copy - * in the file LICENSE in the source distribution or at - * https://www.openssl.org/source/license.html - */ - -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * - * The Elliptic Curve Public-Key Crypto Library (ECC Code) included - * herein is developed by SUN MICROSYSTEMS, INC., and is contributed - * to the OpenSSL project. - * - * The ECC Code is licensed pursuant to the OpenSSL open source - * license provided below. - * - * The ECDH software is originally written by Douglas Stebila of - * Sun Microsystems Laboratories. - * - */ - -#include -#include -#include - -#include "../e_os.h" - -#include /* for OPENSSL_NO_EC */ -#include -#include -#include -#include -#include -#include -#include - -#ifdef OPENSSL_NO_EC -int main(int argc, char *argv[]) -{ - printf("No ECDH support\n"); - return (0); -} -#else -# include - -static const char rnd_seed[] = - "string to make the random number generator think it has entropy"; - -/* Given private value and NID, create EC_KEY structure */ - -static EC_KEY *mk_eckey(int nid, const char *str) -{ - int ok = 0; - EC_KEY *k = NULL; - BIGNUM *priv = NULL; - EC_POINT *pub = NULL; - const EC_GROUP *grp; - k = EC_KEY_new_by_curve_name(nid); - if (!k) - goto err; - if(!BN_hex2bn(&priv, str)) - goto err; - if (!priv) - goto err; - if (!EC_KEY_set_private_key(k, priv)) - goto err; - grp = EC_KEY_get0_group(k); - pub = EC_POINT_new(grp); - if (!pub) - goto err; - if (!EC_POINT_mul(grp, pub, priv, NULL, NULL, NULL)) - goto err; - if (!EC_KEY_set_public_key(k, pub)) - goto err; - ok = 1; - err: - BN_clear_free(priv); - EC_POINT_free(pub); - if (ok) - return k; - EC_KEY_free(k); - return NULL; -} - -#include "ecdhtest_cavs.h" - -/* - * NIST SP800-56A co-factor ECDH tests. - * KATs taken from NIST documents with parameters: - * - * - (QCAVSx,QCAVSy) is the public key for CAVS. - * - dIUT is the private key for IUT. - * - (QIUTx,QIUTy) is the public key for IUT. - * - ZIUT is the shared secret KAT. - * - * CAVS: Cryptographic Algorithm Validation System - * IUT: Implementation Under Test - * - * This function tests two things: - * - * 1. dIUT * G = (QIUTx,QIUTy) - * i.e. public key for IUT computes correctly. - * 2. x-coord of cofactor * dIUT * (QCAVSx,QCAVSy) = ZIUT - * i.e. co-factor ECDH key computes correctly. - * - * returns zero on failure or unsupported curve. One otherwise. - */ -static int ecdh_cavs_kat(BIO *out, const ecdh_cavs_kat_t *kat) -{ - int rv = 0, is_char_two = 0; - EC_KEY *key1 = NULL; - EC_POINT *pub = NULL; - const EC_GROUP *group = NULL; - BIGNUM *bnz = NULL, *x = NULL, *y = NULL; - unsigned char *Ztmp = NULL, *Z = NULL; - size_t Ztmplen, Zlen; - BIO_puts(out, "Testing ECC CDH Primitive SP800-56A with "); - BIO_puts(out, OBJ_nid2sn(kat->nid)); - - /* dIUT is IUT's private key */ - if ((key1 = mk_eckey(kat->nid, kat->dIUT)) == NULL) - goto err; - /* these are cofactor ECDH KATs */ - EC_KEY_set_flags(key1, EC_FLAG_COFACTOR_ECDH); - - if ((group = EC_KEY_get0_group(key1)) == NULL) - goto err; - if ((pub = EC_POINT_new(group)) == NULL) - goto err; - - if (EC_METHOD_get_field_type(EC_GROUP_method_of(group)) == NID_X9_62_characteristic_two_field) - is_char_two = 1; - - /* (QIUTx, QIUTy) is IUT's public key */ - if(!BN_hex2bn(&x, kat->QIUTx)) - goto err; - if(!BN_hex2bn(&y, kat->QIUTy)) - goto err; - if (is_char_two) { -#ifdef OPENSSL_NO_EC2M - goto err; -#else - if (!EC_POINT_set_affine_coordinates_GF2m(group, pub, x, y, NULL)) - goto err; -#endif - } - else { - if (!EC_POINT_set_affine_coordinates_GFp(group, pub, x, y, NULL)) - goto err; - } - /* dIUT * G = (QIUTx, QIUTy) should hold */ - if (EC_POINT_cmp(group, EC_KEY_get0_public_key(key1), pub, NULL)) - goto err; - - /* (QCAVSx, QCAVSy) is CAVS's public key */ - if(!BN_hex2bn(&x, kat->QCAVSx)) - goto err; - if(!BN_hex2bn(&y, kat->QCAVSy)) - goto err; - if (is_char_two) { -#ifdef OPENSSL_NO_EC2M - goto err; -#else - if (!EC_POINT_set_affine_coordinates_GF2m(group, pub, x, y, NULL)) - goto err; -#endif - } - else { - if (!EC_POINT_set_affine_coordinates_GFp(group, pub, x, y, NULL)) - goto err; - } - - /* ZIUT is the shared secret */ - if(!BN_hex2bn(&bnz, kat->ZIUT)) - goto err; - Ztmplen = (EC_GROUP_get_degree(EC_KEY_get0_group(key1)) + 7) / 8; - Zlen = BN_num_bytes(bnz); - if (Zlen > Ztmplen) - goto err; - if((Ztmp = OPENSSL_zalloc(Ztmplen)) == NULL) - goto err; - if((Z = OPENSSL_zalloc(Ztmplen)) == NULL) - goto err; - if(!BN_bn2binpad(bnz, Z, Ztmplen)) - goto err; - if (!ECDH_compute_key(Ztmp, Ztmplen, pub, key1, 0)) - goto err; - /* shared secrets should be identical */ - if (memcmp(Ztmp, Z, Ztmplen)) - goto err; - rv = 1; - err: - EC_KEY_free(key1); - EC_POINT_free(pub); - BN_free(bnz); - BN_free(x); - BN_free(y); - OPENSSL_free(Ztmp); - OPENSSL_free(Z); - if (rv) { - BIO_puts(out, " ok\n"); - } - else { - fprintf(stderr, "Error in ECC CDH routines\n"); - ERR_print_errors_fp(stderr); - } - return rv; -} - -int main(int argc, char *argv[]) -{ - int ret = 1; - size_t n = 0; - BIO *out; - - CRYPTO_set_mem_debug(1); - CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON); - - RAND_seed(rnd_seed, sizeof rnd_seed); - - out = BIO_new(BIO_s_file()); - if (out == NULL) - EXIT(1); - BIO_set_fp(out, stdout, BIO_NOCLOSE | BIO_FP_TEXT); - - /* NAMED CURVES TESTS: moved to evptests.txt */ - - /* KATs: moved to evptests.txt */ - - /* NIST SP800-56A co-factor ECDH KATs */ - for (n = 0; n < (sizeof(ecdh_cavs_kats)/sizeof(ecdh_cavs_kat_t)); n++) { - if (!ecdh_cavs_kat(out, &ecdh_cavs_kats[n])) - goto err; - } - - ret = 0; - - err: - ERR_print_errors_fp(stderr); - BIO_free(out); - -#ifndef OPENSSL_NO_CRYPTO_MDEBUG - if (CRYPTO_mem_leaks_fp(stderr) <= 0) - ret = 1; -#endif - EXIT(ret); -} -#endif diff --git a/test/ecdhtest_cavs.h b/test/ecdhtest_cavs.h deleted file mode 100644 index fee7011..0000000 --- a/test/ecdhtest_cavs.h +++ /dev/null @@ -1,4312 +0,0 @@ -/* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. - * - * Licensed under the OpenSSL license (the "License"). You may not use - * this file except in compliance with the License. You can obtain a copy - * in the file LICENSE in the source distribution or at - * https://www.openssl.org/source/license.html - */ - -#ifndef ECDHTEST_CAVS_H -#define ECDHTEST_CAVS_H - -/* - * co-factor ECDH KATs for NIST SP800-56A - * http://csrc.nist.gov/groups/STM/cavp/component-testing.html#ECCCDH - * $ sha256sum KAS_ECC_CDH_PrimitiveTest.txt - * 456068d3f8aad8ac62a03d19ed3173f00ad51f42b51aeab4753c20f30c01cf23 KAS_ECC_CDH_PrimitiveTest.txt - */ - -typedef struct { - const int nid; - const char *QCAVSx; - const char *QCAVSy; - const char *dIUT; - const char *QIUTx; - const char *QIUTy; - const char *ZIUT; -} ecdh_cavs_kat_t; - -static const ecdh_cavs_kat_t ecdh_cavs_kats[] = { - /* curves over prime fields go here */ - { NID_X9_62_prime192v1, - "42ea6dd9969dd2a61fea1aac7f8e98edcc896c6e55857cc0", - "dfbe5d7c61fac88b11811bde328e8a0d12bf01a9d204b523", - "f17d3fea367b74d340851ca4270dcb24c271f445bed9d527", - "b15053401f57285637ec324c1cd2139e3a67de3739234b37", - "f269c158637482aad644cd692dd1d3ef2c8a7c49e389f7f6", - "803d8ab2e5b6e6fca715737c3a82f7ce3c783124f6d51cd0" }, - { NID_X9_62_prime192v1, - "deb5712fa027ac8d2f22c455ccb73a91e17b6512b5e030e7", - "7e2690a02cc9b28708431a29fb54b87b1f0c14e011ac2125", - "56e853349d96fe4c442448dacb7cf92bb7a95dcf574a9bd5", - "c00d435716ffea53fd8c162792414c37665187e582716539", - "ab711c62aa71a5a18e8a3c48f89dc6fa52fac0108e52a8a0", - "c208847568b98835d7312cef1f97f7aa298283152313c29d" }, - { NID_X9_62_prime192v1, - "4edaa8efc5a0f40f843663ec5815e7762dddc008e663c20f", - "0a9f8dc67a3e60ef6d64b522185d03df1fc0adfd42478279", - "c6ef61fe12e80bf56f2d3f7d0bb757394519906d55500949", - "e184bc182482f3403c8787b83842477467fcd011db0f6c64", - "f9d1c14142f40de8639db97d51a63d2cce1007ccf773cdcb", - "87229107047a3b611920d6e3b2c0c89bea4f49412260b8dd" }, - { NID_X9_62_prime192v1, - "8887c276edeed3e9e866b46d58d895c73fbd80b63e382e88", - "04c5097ba6645e16206cfb70f7052655947dd44a17f1f9d5", - "e6747b9c23ba7044f38ff7e62c35e4038920f5a0163d3cda", - "2b838dbe73735f37a39a78d3195783d26991e86ff4d92d1a", - "60d344942274489f98903b2e7f93f8d197fc9ae60a0ed53a", - "eec0bed8fc55e1feddc82158fd6dc0d48a4d796aaf47d46c" }, - { NID_X9_62_prime192v1, - "0d045f30254adc1fcefa8a5b1f31bf4e739dd327cd18d594", - "542c314e41427c08278a08ce8d7305f3b5b849c72d8aff73", - "beabedd0154a1afcfc85d52181c10f5eb47adc51f655047d", - "1f65cf6e8978e1c1bc10bb61a7db311de310088c8cf9768b", - "f7d438168e7f42ab14b16af53a7a2f646ff40b53d74cbcc7", - "716e743b1b37a2cd8479f0a3d5a74c10ba2599be18d7e2f4" }, - { NID_X9_62_prime192v1, - "fb35ca20d2e96665c51b98e8f6eb3d79113508d8bccd4516", - "368eec0d5bfb847721df6aaff0e5d48c444f74bf9cd8a5a7", - "cf70354226667321d6e2baf40999e2fd74c7a0f793fa8699", - "5f4844ffcce61005d24f737db98675e92f7b6543aeb6106c", - "5424f598139215d389b6b12b86d58014857f2ddadb540f51", - "f67053b934459985a315cb017bf0302891798d45d0e19508" }, - { NID_X9_62_prime192v1, - "824752960c1307e5f13a83da21c7998ca8b5b00b9549f6d0", - "bc52d91e234363bc32ee0b6778f25cd8c1847510f4348b94", - "fe942515237fffdd7b4eb5c64909eee4856a076cdf12bae2", - "e6369df79b207b8b8679f7c869cfc264859d1ab55aa401e8", - "1f99c71f801a30b52f74da6e5e6dbb62ee4c5da1090cc020", - "75822971193edd472bf30151a782619c55ad0b279c9303dd" }, - { NID_X9_62_prime192v1, - "10bb57020291141981f833b4749e5611034b308e84011d21", - "e1cacd6b7bd17ed8ddb50b6aee0654c35f2d0eddc1cffcf6", - "33fed10492afa5bea0333c0af12cac940c4d222455bcd0fe", - "ef0b28afc41637d737f42e4c8aaceadc84ba2e0b849ca18c", - "57797942e552173bba17f73278e029f42335068bd770ddf2", - "67cba2cbb69ee78bf1abafb0e6fbe33fa2094c128d59652d" }, - { NID_X9_62_prime192v1, - "5192fce4185a7758ea1bc56e0e4f4e8b2dce32348d0dced1", - "20989981beaaf0006d88a96e7971a2fa3a33ba46047fc7ba", - "f3557c5d70b4c7954960c33568776adbe8e43619abe26b13", - "d70112c5f0f0844386494ac1ad99dce2214134176ebfb9af", - "d3c187a038510ab31d459e2b7af1a380dd7576af06267548", - "cf99a2770a386ca0137d1eca0a226e484297ac3c513f3631" }, - { NID_X9_62_prime192v1, - "26d019dbe279ead01eed143a91601ada26e2f42225b1c62b", - "6ca653f08272e0386fc9421fbd580093d7ae6301bca94476", - "586cfba1c6e81766ed52828f177b1be14ebbc5b83348c311", - "58b3c63e56bec9d696bf9a88df2873738391f76368aa2b49", - "5776773b261faf7ba2fdc4fe43b92c0b1c7a2fd054a43650", - "576331e2b4fb38a112810e1529834de8307fb0a0d2756877" }, - { NID_X9_62_prime192v1, - "539bc40fe20a0fb267888b647b03eaaf6ec20c02a1e1f8c8", - "69095e5bb7b4d44c3278a7ee6beca397c45246da9a34c8be", - "cad8100603a4f65be08d8fc8a1b7e884c5ff65deb3c96d99", - "b7fcc0f52c7a411edbed39e10bf02b6ae0f26614c6b325a2", - "47483b26eb67776de2b93ab7119d5447573739e3d55e72fb", - "902f4501916a0dd945554c3a37b3d780d375a6da713197c4" }, - { NID_X9_62_prime192v1, - "5d343ddb96318fb4794d10f6c573f99fee5d0d57b996250f", - "99fbdf9d97dd88ad410235dac36e5b92ce2824b8e587a82c", - "1edd879cc5c79619cae6c73a691bd5a0395c0ef3b356fcd2", - "6ce6adb2c30808f590048c33dffad4524ebf7a5fd39b747b", - "4966bd2f3d00569b4d4c0409fbd7a2db752f6d09bca8c25f", - "46e4de335054d429863218ae33636fc9b89c628b64b506c7" }, - { NID_X9_62_prime192v1, - "8d3db9bdce137ffbfb891388c37df6c0cbc90aa5e5376220", - "135d30b5cb660eef8764ffc744f15c1b5d6dc06ba4416d37", - "460e452273fe1827602187ad3bebee65cb84423bb4f47537", - "d1bd3a3efabf4767fe6380bdf0dbf49d52d4cf0cbb89404c", - "c150c2b4c8b3aa35f765f847e4f7f8fd8704d241a181ee99", - "1bfe9e5a20ac7a38d8f605b425bb9030be31ef97c101c76c" }, - { NID_X9_62_prime192v1, - "9e0a6949519c7f5be68c0433c5fdf13064aa13fb29483dc3", - "e1c8ba63e1f471db23185f50d9c871edea21255b3a63b4b7", - "b970365008456f8758ecc5a3b33cf3ae6a8d568107a52167", - "c1b8610c8c63f8d4abda093b9a11a566044bf65c6faa8999", - "a5bc4b3ca095382e9738aee95fe9479b17879b3ad5295559", - "0e8c493a4adc445dc9288a3b9b272599224054592d7265b3" }, - { NID_X9_62_prime192v1, - "be088238902e9939b3d054eeeb8492daf4bdcf09a2ab77f1", - "58d6749a3a923dc80440f2661fd35b651617e65294b46375", - "59c15b8a2464e41dfe4371c7f7dadf470ae425544f8113bd", - "1fe776f73567b6ac0b0d6764164de6c5be751ba8d1ff455e", - "4c160bf38afb2b71f684261664115ce874553e8b059432d2", - "0f1991086b455ded6a1c4146f7bf59fe9b495de566ebc6bf" }, - { NID_X9_62_prime192v1, - "bf5ae05025e1be617e666d87a4168363873d5761b376b503", - "e1e6e38b372b6bee0ff5b3502d83735e3b2c26825e4f0fcc", - "a6e9b885c66b959d1fc2708d591b6d3228e49eb98f726d61", - "632bb7651dbf49dde9dd125d13fb234e06617723beed3d1b", - "f4ad5209638488397c5f44f994dd7479807e79f4887d2e71", - "b30f2127c34df35aaa91dbf0bbe15798e799a03ed11698c1" }, - { NID_X9_62_prime192v1, - "6cc4feed84c7ab0d09005d660ed34de6955a9461c4138d11", - "31225f33864ed48da06fa45a913b46cf42557742e35085e6", - "bdb754096ffbfbd8b0f3cb046ccb7ca149c4e7192067a3ee", - "d9c098d421d741f6faab116f3e4731d28c5558e19fe112a1", - "38d4dc48ccdb1d3ed8d31fd06784a4f87a68aec1cbd5b08f", - "64a5c246599d3e8177a2402a1110eb81e6c456ab4edb5127" }, - { NID_X9_62_prime192v1, - "36157315bee7afedded58c4e8ba14d3421c401e51135bcc9", - "37c297ca703f77c52bb062d8ce971db84097ba0c753a418f", - "d5bcf2534dafc3d99964c7bd63ab7bd15999fe56dd969c42", - "fda1d5d28d6fe0e7909d6a8bafa7824db5572ab92ffe7de6", - "134a297c1d9c8bbab249abacd951ed11e5a99f92e7991572", - "017b8ca53c82fab163da2ab783966a39e061b32c8cfa334d" }, - { NID_X9_62_prime192v1, - "98464d47f0256f8292e027e8c92582ea77cf9051f5ce8e5d", - "449552ef7578be96236fe5ed9d0643c0bb6c5a9134b0108d", - "43d4b9df1053be5b4268104c02244d3bf9594b010b46a8b2", - "c3020b7091463d788f1f1d76f7cfeec82ecdb3b7d99c345c", - "9a7710d5179591d8f3df0aa122301768ae7db7eee2d7f583", - "340ef3db3dbebdd91c62c3d4e1a3da2c7c52a3338b865259" }, - { NID_X9_62_prime192v1, - "563eb66c334cf6f123bf04c7803b48a3110214237e983bf5", - "0f351104819199ef07c9a6051d20758f3af79027ea66a53f", - "94cac2c2ca714746401670d94edbf3f677867b5a03bee7ad", - "b18554a2e743ef0aa2f040987c4c451004e096df3d80ddae", - "6e3e2c618f896e36ba620077684b70a05ffb79bf5e6c7640", - "2162144921df5103d0e6a650fb13fd246f4738d0896ce92f" }, - { NID_X9_62_prime192v1, - "86828c4ac92b5507618aec7873a1d4fc6543c5be33cf3078", - "b22ca72437545e10d6d4f052422eb898b737a4b8543ee550", - "2a3a9e33c8cc3107a9f9265c3bdea1206570e86f92ac7014", - "a7ba38be1bc669dd23ccfcee0645b1f0db8cf942deafaeb6", - "b82db79d80cd0e37f28d4163adc389dee8fc7797b5c9831b", - "4c69e7feed4b11159adfc16a6047a92572ea44e0740b23af" }, - { NID_X9_62_prime192v1, - "6700a102437781a9581da2bc25ced5abf419da91d3c803df", - "71396c9cf08bcd91854e3e6e42d8c657ce0f27ab77a9dc4b", - "4a6b78a98ac98fa8e99a8ece08ec0251125f85c6fd0e289b", - "e769dbbcd5ce2d83514b768d3d2d5aa0bcd8f66af15f5500", - "2fc6d0b039e0f28f74fbeffe9e883d4dd72296e4e95cae71", - "46072acefd67bff50de355ca7a31fa6be59f26e467587259" }, - { NID_X9_62_prime192v1, - "a82f354cf97bee5d22dc6c079f2902ead44d96a8f614f178", - "a654a9aa8a1a0802f2ce0ee8a0f4ebe96dee1b37464b1ff2", - "c5a6491d78844d6617ef33be6b8bd54da221450885d5950f", - "db1b24f7466bc154e9d7d2c3ca52dcfe0bfc9563c5fdb6f3", - "1c74fbbf5bd99921f1a9a744f8e1cf770bd6a76a772b3003", - "ec5580eabca9f3389d2b427ddf6e49e26d629afd03fa766e" }, - { NID_X9_62_prime192v1, - "3cec21b28668a12a2cf78e1a8e55d0efe065152fffc34718", - "1029557beba4ff1992bd21c23cb4825f6dae70e3318fd1ca", - "2ba2703c5e23f6463c5b88dc37292fabd3399b5e1fb67c05", - "7543148906cef9b37a71a7c08363cdd3bba50142d65241aa", - "8b3a6973de8dc271e27c1ead1e962fdaae3710c724daac38", - "7f3929dd3cbf7673bc30d859d90b880307475f800660ea32" }, - { NID_X9_62_prime192v1, - "7082644715b8b731f8228b5118e7270d34d181f361a221fc", - "464649d6c88ca89614488a1cc7b8442bb42f9fb3020a3d76", - "836118c6248f882e9147976f764826c1a28755a6102977d5", - "fcd345a976c720caaa97de6697226825615e1287a9eff67e", - "58ea42edbeeafca9ff44cfd7f29abd2cbde7626d79e422c9", - "72e88f3ea67d46d46dbf83926e7e2a6b85b54536741e6d2c" }, - { NID_secp224r1, - "af33cd0629bc7e996320a3f40368f74de8704fa37b8fab69abaae280", - "882092ccbba7930f419a8a4f9bb16978bbc3838729992559a6f2e2d7", - "8346a60fc6f293ca5a0d2af68ba71d1dd389e5e40837942df3e43cbd", - "8de2e26adf72c582d6568ef638c4fd59b18da171bdf501f1d929e048", - "4a68a1c2b0fb22930d120555c1ece50ea98dea8407f71be36efac0de", - "7d96f9a3bd3c05cf5cc37feb8b9d5209d5c2597464dec3e9983743e8" }, - { NID_secp224r1, - "13bfcd4f8e9442393cab8fb46b9f0566c226b22b37076976f0617a46", - "eeb2427529b288c63c2f8963c1e473df2fca6caa90d52e2f8db56dd4", - "043cb216f4b72cdf7629d63720a54aee0c99eb32d74477dac0c2f73d", - "2f90f5c8eac9c7decdbb97b6c2f715ab725e4fe40fe6d746efbf4e1b", - "66897351454f927a309b269c5a6d31338be4c19a5acfc32cf656f45c", - "ee93ce06b89ff72009e858c68eb708e7bc79ee0300f73bed69bbca09" }, - { NID_secp224r1, - "756dd806b9d9c34d899691ecb45b771af468ec004486a0fdd283411e", - "4d02c2ca617bb2c5d9613f25dd72413d229fd2901513aa29504eeefb", - "5ad0dd6dbabb4f3c2ea5fe32e561b2ca55081486df2c7c15c9622b08", - "005bca45d793e7fe99a843704ed838315ab14a5f6277507e9bc37531", - "43e9d421e1486ae5893bfd23c210e5c140d7c6b1ada59d842c9a98de", - "3fcc01e34d4449da2a974b23fc36f9566754259d39149790cfa1ebd3" }, - { NID_secp224r1, - "0f537bf1c1122c55656d25e8aa8417e0b44b1526ae0523144f9921c4", - "f79b26d30e491a773696cc2c79b4f0596bc5b9eebaf394d162fb8684", - "0aa6ff55a5d820efcb4e7d10b845ea3c9f9bc5dff86106db85318e22", - "2f96754131e0968198aa78fbe8c201dc5f3581c792de487340d32448", - "61e8a5cd79615203b6d89e9496f9e236fe3b6be8731e743d615519c6", - "49129628b23afcef48139a3f6f59ff5e9811aa746aa4ff33c24bb940" }, - { NID_secp224r1, - "2b3631d2b06179b3174a100f7f57131eeea8947be0786c3dc64b2239", - "83de29ae3dad31adc0236c6de7f14561ca2ea083c5270c78a2e6cbc0", - "efe6e6e25affaf54c98d002abbc6328da159405a1b752e32dc23950a", - "355e962920bde043695f6bffb4b355c63da6f5de665ed46f2ec817e2", - "748e095368f62e1d364edd461719793b404adbdaacbcadd88922ff37", - "fcdc69a40501d308a6839653a8f04309ec00233949522902ffa5eac6" }, - { NID_secp224r1, - "4511403de29059f69a475c5a6a5f6cabed5d9f014436a8cb70a02338", - "7d2d1b62aa046df9340f9c37a087a06b32cf7f08a223f992812a828b", - "61cb2932524001e5e9eeed6df7d9c8935ee3322029edd7aa8acbfd51", - "d50e4adabfd989d7dbc7cf4052546cc7c447a97630436997ad4b9536", - "5bea503473c5eaef9552d42c40b1f2f7ca292733b255b9bbe1b12337", - "827e9025cb62e0e837c596063f3b9b5a0f7afd8d8783200086d61ec1" }, - { NID_secp224r1, - "314a0b26dd31c248845d7cc17b61cad4608259bed85a58d1f1ffd378", - "66e4b350352e119eecada382907f3619fd748ea73ae4899dfd496302", - "8c7ace347171f92def98d845475fc82e1d1496da81ee58f505b985fa", - "b1a8dcac89aca2799320b451df1c7ff4d97567abb68141c0d95fc2aa", - "3524950902b1510bdc987d860afc27ad871ceaea66935abd3c0a99a8", - "335ba51228d94acbed851ca7821c801d5cb1c7975d7aa90a7159f8fa" }, - { NID_secp224r1, - "abe6843beec2fd9e5fb64730d0be4d165438ce922ed75dd80b4603e5", - "6afe8673a96c4ba9900ad85995e631e436c6cc88a2c2b47b7c4886b8", - "382feb9b9ba10f189d99e71a89cdfe44cb554cec13a212840977fb68", - "abb6f1e3773ff8fc73aea2a0b107809ce70adcefed6e41fc5cb43045", - "a963897ae906c10a055eeadb97ffdd6f748d3e5621e5fff304e48ba7", - "8c2e627594206b34f7356d3426eb3d79f518ef843fbe94014cceace3" }, - { NID_secp224r1, - "13cf9d6d2c9aae8274c27d446afd0c888ffdd52ae299a35984d4f527", - "dcbee75b515751f8ee2ae355e8afd5de21c62a939a6507b538cbc4af", - "e0d62035101ef487c485c60fb4500eebe6a32ec64dbe97dbe0232c46", - "88537735e9b23e3e0e076f135a82d33f9bffb465f3abce8322a62a62", - "b4c8c123673197875c0bd14ed097606d330fba2b9200ef65a44764d3", - "632abb662728dbc994508873d5c527ca5ef923c0d31fa6c47ef4c825" }, - { NID_secp224r1, - "965b637c0dfbc0cf954035686d70f7ec30929e664e521dbaa2280659", - "82a58ff61bc90019bbcbb5875d3863db0bc2a1fa34b0ad4de1a83f99", - "b96ade5b73ba72aa8b6e4d74d7bf9c58e962ff78eb542287c7b44ba2", - "37682926a54f70a4c1748f54d50d5b00138a055f924f2c65e5b0bbe4", - "596afefcdd640d29635015b89bdddd1f8c2723686d332e7a06ca8799", - "34641141aab05ef58bd376d609345901fb8f63477c6be9097f037f1f" }, - { NID_secp224r1, - "73cc645372ca2e71637cda943d8148f3382ab6dd0f2e1a49da94e134", - "df5c355c23e6e232ebc3bee2ab1873ee0d83e3382f8e6fe613f6343c", - "a40d7e12049c71e6522c7ff2384224061c3a457058b310557655b854", - "399801243bfe0c2da9b0a53c8ca57f2eee87aaa94a8e4d5e029f42ca", - "aa49e6d4b47cee7a5c4ab71d5a67da84e0b9b425ce3e70da68c889e7", - "4f74ac8507501a32bfc5a78d8271c200e835966e187e8d00011a8c75" }, - { NID_secp224r1, - "546578216250354e449e21546dd11cd1c5174236739acad9ce0f4512", - "d2a22fcd66d1abedc767668327c5cb9c599043276239cf3c8516af24", - "ad2519bc724d484e02a69f05149bb047714bf0f5986fac2e222cd946", - "df9c1e0ef15e53b9f626e2be1cbe893639c06f3e0439ee95d7d4b1e3", - "7a52a7386adda243efdf8941085c84e31239cab92b8017336748965e", - "ad09c9ae4d2324ea81bb555b200d3c003e22a6870ee03b52df49e4de" }, - { NID_secp224r1, - "1d46b1dc3a28123cb51346e67baec56404868678faf7d0e8b2afa22a", - "0ec9e65ec97e218373e7fc115c2274d5b829a60d93f71e01d58136c3", - "3d312a9b9d8ed09140900bbac1e095527ebc9e3c6493bcf3666e3a29", - "b4a0198dc8810e884425b750928b0c960c31f7a99663400b01a179df", - "812b601bfc0738242c6f86f830f27acd632ca618a0b5280c9d5769f7", - "ef029c28c68064b8abd2965a38c404fb5e944ace57e8638daba9d3cd" }, - { NID_secp224r1, - "266d038cc7a4fe21f6c976318e827b82bb5b8f7443a55298136506e0", - "df123d98a7a20bbdf3943df2e3563422f8c0cf74d53aaabdd7c973ba", - "8ce0822dc24c153995755ac350737ef506641c7d752b4f9300c612ed", - "00dfc7ec137690cd6d12fdb2fd0b8c5314582108769c2b722ffb3958", - "5eef3da4ba458127346bb64023868bddb7558a2ecfc813645f4ce9fe", - "f83c16661dfcbad021cc3b5a5af51d9a18db4653866b3ff90787ce3e" }, - { NID_secp224r1, - "eb0a09f7a1c236a61f595809ec5670efd92e4598d5e613e092cdfdca", - "50787ae2f2f15b88bc10f7b5f0aee1418373f16153aebd1fba54288d", - "0ff9b485325ab77f29e7bc379fed74bfac859482da0dee7528c19db2", - "7e603e6976db83c36011508fa695d1b515249e2e54b48fcbcfb90247", - "0179a600ce86adfca9b1b931fa5173d618da09e841803d19b0264286", - "f51258c63f232e55a66aa25ebd597b2018d1052c02eeb63866758005" }, - { NID_secp224r1, - "6b2f6b18a587f562ffc61bd9b0047322286986a78f1fd139b84f7c24", - "7096908e4615266be59a53cd655515056ff92370a6271a5d3823d704", - "19cf5ff6306467f28b9fe0675a43c0582552c8c12e59ce7c38f292b1", - "fc20e906e609c112cfc2e0fea6303882c5db94e87e022373ab2c082a", - "aecdf1daa71782bc5a26bbbd8d7e8a76490e26abc17dffc774bd7341", - "7fdc969a186ff18429f2a276dac43beea21182d82ce2e5a0876552b1" }, - { NID_secp224r1, - "328101ba826acd75ff9f34d5574ce0dbc92f709bad8d7a33c47940c1", - "df39f1ea88488c55d5538160878b9ced18a887ea261dd712d14024ff", - "90a15368e3532c0b1e51e55d139447c2c89bc160719d697291ea7c14", - "c6837d506e976da7db3ad1267c359dff2ea6fb0b7f7f8e77024c59e9", - "67eb491d2fc8a530c46525d2a8b2d7c1df5fba1ae740a4649c683ee6", - "3d60ab6db2b3ffe2d29ccff46d056e54230cf34982e241556ed2920c" }, - { NID_secp224r1, - "0081e34270871e2ebbd94183f617b4ae15f0416dd634fe6e934cf3c0", - "3a1e9f38a7b90b7317d26b9f6311063ab58b268cf489b2e50386d5d6", - "8e0838e05e1721491067e1cabc2e8051b290e2616eec427b7121897d", - "e9150f770075626019e18f95473b71e6828041791d3f08d3faeeaa2b", - "475f70735eaae52308a3b763dc88efe18ab590ebafa035f6e08b001c", - "9116d72786f4db5df7a8b43078c6ab9160d423513d35ea5e2559306d" }, - { NID_secp224r1, - "2623632fdf0bd856805a69aa186d4133ef5904e1f655a972d66cce07", - "2cef9728dd06fb8b50150f529b695076d4507983912585c89bd0682e", - "38106e93f16a381adb1d72cee3da66ae462ad4bbfea9ecdf35d0814e", - "7be6c4c917829ab657dd79e8637d7aefd2f81f0de7654d957e97658d", - "430d22d9e8438310f61e0d43f25fa3e34585f432baad27db3021bf0d", - "207c53dcefac789aaa0276d9200b3a940ce5f2296f4cb2e81a185d3d" }, - { NID_secp224r1, - "8ee4d1dcc31dee4bf6fe21ca8a587721d910acfb122c16c2a77a8152", - "4ebf323fff04eb477069a0ac68b345f6b1ae134efc31940e513cb99f", - "e5d1718431cf50f6cbd1bc8019fa16762dfa12c989e5999977fb4ea2", - "2ea4966e7f92ed7f5cc61fde792045f63b731d6e7d0de2577f2d8ece", - "1c4a7b1ede6f839162292df424be78e8176fb6f942a3c02391700f31", - "10e467da34f48ad7072005bccd6da1b2ba3f71eafa1c393842f91d74" }, - { NID_secp224r1, - "97dcbe6d28335882a6d193cc54a1063dd0775dc328565300bb99e691", - "dad11dd5ece8cfd9f97c9a526e4a1506e6355969ee87826fc38bcd24", - "3d635691b62a9a927c633951c9369c8862bd2119d30970c2644727d6", - "438bbb980517afb20be1d674e3ac2b31cef07a9b23fb8f6e38e0d6c0", - "0be5f1c47d58d21b6ed28423b32f5a94750da47edcef33ea79942afd", - "82fd2f9c60c4f999ac00bbe64bfc11da8ff8cda2e499fced65230bb1" }, - { NID_secp224r1, - "ce9126dd53972dea1de1d11efef900de34b661859c4648c5c0e534f7", - "e113b6f2c1659d07f2716e64a83c18bbce344dd2121fe85168eae085", - "acf3c85bbdc379f02f5ea36e7f0f53095a9e7046a28685a8659bf798", - "ff7511215c71d796bd646e8474be4416b91684ce0d269ef6f422013b", - "b7bf5e79b5a9393bb9ea42c0bdb2d3c2dc806e1a7306aa58e4fdbea5", - "530f7e7fc932613b29c981f261cb036cba3f1df3864e0e1cba2685a2" }, - { NID_secp224r1, - "84419967d6cfad41e75a02b6da605a97949a183a97c306c4b46e66a5", - "5cc9b259718b1bc8b144fde633a894616ffd59a3a6d5d8e942c7cbb7", - "cffd62cb00a0e3163fbf2c397fadc9618210f86b4f54a675287305f0", - "04bf4d948f4430d18b4ed6c96dbaf981fa11a403ed16887f06754981", - "7c1326a9cef51f79d4e78303d6064b459f612584ac2fdf593d7d5d84", - "49f6fd0139248ef4df2db05d1319bd5b1489e249827a45a8a5f12427" }, - { NID_secp224r1, - "7c9cac35768063c2827f60a7f51388f2a8f4b7f8cd736bd6bc337477", - "29ee6b849c6025d577dbcc55fbd17018f4edbc2ef105b004d6257bcd", - "85f903e43943d13c68932e710e80de52cbc0b8f1a1418ea4da079299", - "970a4a7e01d4188497ceb46955eb1b842d9085819a9b925c84529d3d", - "dfa2526480f833ea0edbd204e4e365fef3472888fe7d9691c3ebc09f", - "8f7e34e597ae8093b98270a74a8dfcdbed457f42f43df487c5487161" }, - { NID_secp224r1, - "085a7642ad8e59b1a3e8726a7547afbecffdac1dab7e57230c6a9df4", - "f91c36d881fe9b8047a3530713554a1af4c25c5a8e654dcdcf689f2e", - "cce64891a3d0129fee0d4a96cfbe7ac470b85e967529057cfa31a1d9", - "a6b29632db94da2125dc1cf80e03702687b2acc1122022fa2174765a", - "61723edd73e10daed73775278f1958ba56f1fc9d085ebc2b64c84fe5", - "71954e2261e8510be1a060733671d2e9d0a2d012eb4e09556d697d2a" }, - { NID_X9_62_prime256v1, - "700c48f77f56584c5cc632ca65640db91b6bacce3a4df6b42ce7cc838833d287", - "db71e509e3fd9b060ddb20ba5c51dcc5948d46fbf640dfe0441782cab85fa4ac", - "7d7dc5f71eb29ddaf80d6214632eeae03d9058af1fb6d22ed80badb62bc1a534", - "ead218590119e8876b29146ff89ca61770c4edbbf97d38ce385ed281d8a6b230", - "28af61281fd35e2fa7002523acc85a429cb06ee6648325389f59edfce1405141", - "46fc62106420ff012e54a434fbdd2d25ccc5852060561e68040dd7778997bd7b" }, - { NID_X9_62_prime256v1, - "809f04289c64348c01515eb03d5ce7ac1a8cb9498f5caa50197e58d43a86a7ae", - "b29d84e811197f25eba8f5194092cb6ff440e26d4421011372461f579271cda3", - "38f65d6dce47676044d58ce5139582d568f64bb16098d179dbab07741dd5caf5", - "119f2f047902782ab0c9e27a54aff5eb9b964829ca99c06b02ddba95b0a3f6d0", - "8f52b726664cac366fc98ac7a012b2682cbd962e5acb544671d41b9445704d1d", - "057d636096cb80b67a8c038c890e887d1adfa4195e9b3ce241c8a778c59cda67" }, - { NID_X9_62_prime256v1, - "a2339c12d4a03c33546de533268b4ad667debf458b464d77443636440ee7fec3", - "ef48a3ab26e20220bcda2c1851076839dae88eae962869a497bf73cb66faf536", - "1accfaf1b97712b85a6f54b148985a1bdc4c9bec0bd258cad4b3d603f49f32c8", - "d9f2b79c172845bfdb560bbb01447ca5ecc0470a09513b6126902c6b4f8d1051", - "f815ef5ec32128d3487834764678702e64e164ff7315185e23aff5facd96d7bc", - "2d457b78b4614132477618a5b077965ec90730a8c81a1c75d6d4ec68005d67ec" }, - { NID_X9_62_prime256v1, - "df3989b9fa55495719b3cf46dccd28b5153f7808191dd518eff0c3cff2b705ed", - "422294ff46003429d739a33206c8752552c8ba54a270defc06e221e0feaf6ac4", - "207c43a79bfee03db6f4b944f53d2fb76cc49ef1c9c4d34d51b6c65c4db6932d", - "24277c33f450462dcb3d4801d57b9ced05188f16c28eda873258048cd1607e0d", - "c4789753e2b1f63b32ff014ec42cd6a69fac81dfe6d0d6fd4af372ae27c46f88", - "96441259534b80f6aee3d287a6bb17b5094dd4277d9e294f8fe73e48bf2a0024" }, - { NID_X9_62_prime256v1, - "41192d2813e79561e6a1d6f53c8bc1a433a199c835e141b05a74a97b0faeb922", - "1af98cc45e98a7e041b01cf35f462b7562281351c8ebf3ffa02e33a0722a1328", - "59137e38152350b195c9718d39673d519838055ad908dd4757152fd8255c09bf", - "a8c5fdce8b62c5ada598f141adb3b26cf254c280b2857a63d2ad783a73115f6b", - "806e1aafec4af80a0d786b3de45375b517a7e5b51ffb2c356537c9e6ef227d4a", - "19d44c8d63e8e8dd12c22a87b8cd4ece27acdde04dbf47f7f27537a6999a8e62" }, - { NID_X9_62_prime256v1, - "33e82092a0f1fb38f5649d5867fba28b503172b7035574bf8e5b7100a3052792", - "f2cf6b601e0a05945e335550bf648d782f46186c772c0f20d3cd0d6b8ca14b2f", - "f5f8e0174610a661277979b58ce5c90fee6c9b3bb346a90a7196255e40b132ef", - "7b861dcd2844a5a8363f6b8ef8d493640f55879217189d80326aad9480dfc149", - "c4675b45eeb306405f6c33c38bc69eb2bdec9b75ad5af4706aab84543b9cc63a", - "664e45d5bba4ac931cd65d52017e4be9b19a515f669bea4703542a2c525cd3d3" }, - { NID_X9_62_prime256v1, - "6a9e0c3f916e4e315c91147be571686d90464e8bf981d34a90b6353bca6eeba7", - "40f9bead39c2f2bcc2602f75b8a73ec7bdffcbcead159d0174c6c4d3c5357f05", - "3b589af7db03459c23068b64f63f28d3c3c6bc25b5bf76ac05f35482888b5190", - "9fb38e2d58ea1baf7622e96720101cae3cde4ba6c1e9fa26d9b1de0899102863", - "d5561b900406edf50802dd7d73e89395f8aed72fba0e1d1b61fe1d22302260f0", - "ca342daa50dc09d61be7c196c85e60a80c5cb04931746820be548cdde055679d" }, - { NID_X9_62_prime256v1, - "a9c0acade55c2a73ead1a86fb0a9713223c82475791cd0e210b046412ce224bb", - "f6de0afa20e93e078467c053d241903edad734c6b403ba758c2b5ff04c9d4229", - "d8bf929a20ea7436b2461b541a11c80e61d826c0a4c9d322b31dd54e7f58b9c8", - "20f07631e4a6512a89ad487c4e9d63039e579cb0d7a556cb9e661cd59c1e7fa4", - "6de91846b3eee8a5ec09c2ab1f41e21bd83620ccdd1bdce3ab7ea6e02dd274f5", - "35aa9b52536a461bfde4e85fc756be928c7de97923f0416c7a3ac8f88b3d4489" }, - { NID_X9_62_prime256v1, - "94e94f16a98255fff2b9ac0c9598aac35487b3232d3231bd93b7db7df36f9eb9", - "d8049a43579cfa90b8093a94416cbefbf93386f15b3f6e190b6e3455fedfe69a", - "0f9883ba0ef32ee75ded0d8bda39a5146a29f1f2507b3bd458dbea0b2bb05b4d", - "abb61b423be5d6c26e21c605832c9142dc1dfe5a5fff28726737936e6fbf516d", - "733d2513ef58beab202090586fac91bf0fee31e80ab33473ab23a2d89e58fad6", - "605c16178a9bc875dcbff54d63fe00df699c03e8a888e9e94dfbab90b25f39b4" }, - { NID_X9_62_prime256v1, - "e099bf2a4d557460b5544430bbf6da11004d127cb5d67f64ab07c94fcdf5274f", - "d9c50dbe70d714edb5e221f4e020610eeb6270517e688ca64fb0e98c7ef8c1c5", - "2beedb04b05c6988f6a67500bb813faf2cae0d580c9253b6339e4a3337bb6c08", - "3d63e429cb5fa895a9247129bf4e48e89f35d7b11de8158efeb3e106a2a87395", - "0cae9e477ef41e7c8c1064379bb7b554ddcbcae79f9814281f1e50f0403c61f3", - "f96e40a1b72840854bb62bc13c40cc2795e373d4e715980b261476835a092e0b" }, - { NID_X9_62_prime256v1, - "f75a5fe56bda34f3c1396296626ef012dc07e4825838778a645c8248cff01658", - "33bbdf1b1772d8059df568b061f3f1122f28a8d819167c97be448e3dc3fb0c3c", - "77c15dcf44610e41696bab758943eff1409333e4d5a11bbe72c8f6c395e9f848", - "ad5d13c3db508ddcd38457e5991434a251bed49cf5ddcb59cdee73865f138c9f", - "62cec1e70588aa4fdfc7b9a09daa678081c04e1208b9d662b8a2214bf8e81a21", - "8388fa79c4babdca02a8e8a34f9e43554976e420a4ad273c81b26e4228e9d3a3" }, - { NID_X9_62_prime256v1, - "2db4540d50230756158abf61d9835712b6486c74312183ccefcaef2797b7674d", - "62f57f314e3f3495dc4e099012f5e0ba71770f9660a1eada54104cdfde77243e", - "42a83b985011d12303db1a800f2610f74aa71cdf19c67d54ce6c9ed951e9093e", - "ab48caa61ea35f13f8ed07ffa6a13e8db224dfecfae1a7df8b1bb6ebaf0cb97d", - "1274530ca2c385a3218bddfbcbf0b4024c9badd5243bff834ebff24a8618dccb", - "72877cea33ccc4715038d4bcbdfe0e43f42a9e2c0c3b017fc2370f4b9acbda4a" }, - { NID_X9_62_prime256v1, - "cd94fc9497e8990750309e9a8534fd114b0a6e54da89c4796101897041d14ecb", - "c3def4b5fe04faee0a11932229fff563637bfdee0e79c6deeaf449f85401c5c4", - "ceed35507b5c93ead5989119b9ba342cfe38e6e638ba6eea343a55475de2800b", - "9a8cd9bd72e71752df91440f77c547509a84df98114e7de4f26cdb39234a625d", - "d07cfc84c8e144fab2839f5189bb1d7c88631d579bbc58012ed9a2327da52f62", - "e4e7408d85ff0e0e9c838003f28cdbd5247cdce31f32f62494b70e5f1bc36307" }, - { NID_X9_62_prime256v1, - "15b9e467af4d290c417402e040426fe4cf236bae72baa392ed89780dfccdb471", - "cdf4e9170fb904302b8fd93a820ba8cc7ed4efd3a6f2d6b05b80b2ff2aee4e77", - "43e0e9d95af4dc36483cdd1968d2b7eeb8611fcce77f3a4e7d059ae43e509604", - "f989cf8ee956a82e7ebd9881cdbfb2fd946189b08db53559bc8cfdd48071eb14", - "5eff28f1a18a616b04b7d337868679f6dd84f9a7b3d7b6f8af276c19611a541d", - "ed56bcf695b734142c24ecb1fc1bb64d08f175eb243a31f37b3d9bb4407f3b96" }, - { NID_X9_62_prime256v1, - "49c503ba6c4fa605182e186b5e81113f075bc11dcfd51c932fb21e951eee2fa1", - "8af706ff0922d87b3f0c5e4e31d8b259aeb260a9269643ed520a13bb25da5924", - "b2f3600df3368ef8a0bb85ab22f41fc0e5f4fdd54be8167a5c3cd4b08db04903", - "69c627625b36a429c398b45c38677cb35d8beb1cf78a571e40e99fe4eac1cd4e", - "81690112b0a88f20f7136b28d7d47e5fbc2ada3c8edd87589bc19ec9590637bd", - "bc5c7055089fc9d6c89f83c1ea1ada879d9934b2ea28fcf4e4a7e984b28ad2cf" }, - { NID_X9_62_prime256v1, - "19b38de39fdd2f70f7091631a4f75d1993740ba9429162c2a45312401636b29c", - "09aed7232b28e060941741b6828bcdfa2bc49cc844f3773611504f82a390a5ae", - "4002534307f8b62a9bf67ff641ddc60fef593b17c3341239e95bdb3e579bfdc8", - "5fe964671315a18aa68a2a6e3dd1fde7e23b8ce7181471cfac43c99e1ae80262", - "d5827be282e62c84de531b963884ba832db5d6b2c3a256f0e604fe7e6b8a7f72", - "9a4e8e657f6b0e097f47954a63c75d74fcba71a30d83651e3e5a91aa7ccd8343" }, - { NID_X9_62_prime256v1, - "2c91c61f33adfe9311c942fdbff6ba47020feff416b7bb63cec13faf9b099954", - "6cab31b06419e5221fca014fb84ec870622a1b12bab5ae43682aa7ea73ea08d0", - "4dfa12defc60319021b681b3ff84a10a511958c850939ed45635934ba4979147", - "c9b2b8496f1440bd4a2d1e52752fd372835b364885e154a7dac49295f281ec7c", - "fbe6b926a8a4de26ccc83b802b1212400754be25d9f3eeaf008b09870ae76321", - "3ca1fc7ad858fb1a6aba232542f3e2a749ffc7203a2374a3f3d3267f1fc97b78" }, - { NID_X9_62_prime256v1, - "a28a2edf58025668f724aaf83a50956b7ac1cfbbff79b08c3bf87dfd2828d767", - "dfa7bfffd4c766b86abeaf5c99b6e50cb9ccc9d9d00b7ffc7804b0491b67bc03", - "1331f6d874a4ed3bc4a2c6e9c74331d3039796314beee3b7152fcdba5556304e", - "59e1e101521046ad9cf1d082e9d2ec7dd22530cce064991f1e55c5bcf5fcb591", - "482f4f673176c8fdaa0bb6e59b15a3e47454e3a04297d3863c9338d98add1f37", - "1aaabe7ee6e4a6fa732291202433a237df1b49bc53866bfbe00db96a0f58224f" }, - { NID_X9_62_prime256v1, - "a2ef857a081f9d6eb206a81c4cf78a802bdf598ae380c8886ecd85fdc1ed7644", - "563c4c20419f07bc17d0539fade1855e34839515b892c0f5d26561f97fa04d1a", - "dd5e9f70ae740073ca0204df60763fb6036c45709bf4a7bb4e671412fad65da3", - "30b9db2e2e977bcdc98cb87dd736cbd8e78552121925cf16e1933657c2fb2314", - "6a45028800b81291bce5c2e1fed7ded650620ebbe6050c6f3a7f0dfb4673ab5c", - "430e6a4fba4449d700d2733e557f66a3bf3d50517c1271b1ddae1161b7ac798c" }, - { NID_X9_62_prime256v1, - "ccd8a2d86bc92f2e01bce4d6922cf7fe1626aed044685e95e2eebd464505f01f", - "e9ddd583a9635a667777d5b8a8f31b0f79eba12c75023410b54b8567dddc0f38", - "5ae026cfc060d55600717e55b8a12e116d1d0df34af831979057607c2d9c2f76", - "46c9ebd1a4a3c8c0b6d572b5dcfba12467603208a9cb5d2acfbb733c40cf6391", - "46c913a27d044185d38b467ace011e04d4d9bbbb8cb9ae25fa92aaf15a595e86", - "1ce9e6740529499f98d1f1d71329147a33df1d05e4765b539b11cf615d6974d3" }, - { NID_X9_62_prime256v1, - "c188ffc8947f7301fb7b53e36746097c2134bf9cc981ba74b4e9c4361f595e4e", - "bf7d2f2056e72421ef393f0c0f2b0e00130e3cac4abbcc00286168e85ec55051", - "b601ac425d5dbf9e1735c5e2d5bdb79ca98b3d5be4a2cfd6f2273f150e064d9d", - "7c9e950841d26c8dde8994398b8f5d475a022bc63de7773fcf8d552e01f1ba0a", - "cc42b9885c9b3bee0f8d8c57d3a8f6355016c019c4062fa22cff2f209b5cc2e1", - "4690e3743c07d643f1bc183636ab2a9cb936a60a802113c49bb1b3f2d0661660" }, - { NID_X9_62_prime256v1, - "317e1020ff53fccef18bf47bb7f2dd7707fb7b7a7578e04f35b3beed222a0eb6", - "09420ce5a19d77c6fe1ee587e6a49fbaf8f280e8df033d75403302e5a27db2ae", - "fefb1dda1845312b5fce6b81b2be205af2f3a274f5a212f66c0d9fc33d7ae535", - "38b54db85500cb20c61056edd3d88b6a9dc26780a047f213a6e1b900f76596eb", - "6387e4e5781571e4eb8ae62991a33b5dc33301c5bc7e125d53794a39160d8fd0", - "30c2261bd0004e61feda2c16aa5e21ffa8d7e7f7dbf6ec379a43b48e4b36aeb0" }, - { NID_X9_62_prime256v1, - "45fb02b2ceb9d7c79d9c2fa93e9c7967c2fa4df5789f9640b24264b1e524fcb1", - "5c6e8ecf1f7d3023893b7b1ca1e4d178972ee2a230757ddc564ffe37f5c5a321", - "334ae0c4693d23935a7e8e043ebbde21e168a7cba3fa507c9be41d7681e049ce", - "3f2bf1589abf3047bf3e54ac9a95379bff95f8f55405f64eca36a7eebe8ffca7", - "5212a94e66c5ae9a8991872f66a72723d80ec5b2e925745c456f5371943b3a06", - "2adae4a138a239dcd93c243a3803c3e4cf96e37fe14e6a9b717be9599959b11c" }, - { NID_X9_62_prime256v1, - "a19ef7bff98ada781842fbfc51a47aff39b5935a1c7d9625c8d323d511c92de6", - "e9c184df75c955e02e02e400ffe45f78f339e1afe6d056fb3245f4700ce606ef", - "2c4bde40214fcc3bfc47d4cf434b629acbe9157f8fd0282540331de7942cf09d", - "29c0807f10cbc42fb45c9989da50681eead716daa7b9e91fd32e062f5eb92ca0", - "ff1d6d1955d7376b2da24fe1163a271659136341bc2eb1195fc706dc62e7f34d", - "2e277ec30f5ea07d6ce513149b9479b96e07f4b6913b1b5c11305c1444a1bc0b" }, - { NID_X9_62_prime256v1, - "356c5a444c049a52fee0adeb7e5d82ae5aa83030bfff31bbf8ce2096cf161c4b", - "57d128de8b2a57a094d1a001e572173f96e8866ae352bf29cddaf92fc85b2f92", - "85a268f9d7772f990c36b42b0a331adc92b5941de0b862d5d89a347cbf8faab0", - "9cf4b98581ca1779453cc816ff28b4100af56cf1bf2e5bc312d83b6b1b21d333", - "7a5504fcac5231a0d12d658218284868229c844a04a3450d6c7381abe080bf3b", - "1e51373bd2c6044c129c436e742a55be2a668a85ae08441b6756445df5493857" }, - { NID_secp384r1, - "a7c76b970c3b5fe8b05d2838ae04ab47697b9eaf52e764592efda27fe7513272" - "734466b400091adbf2d68c58e0c50066", - "ac68f19f2e1cb879aed43a9969b91a0839c4c38a49749b661efedf243451915e" - "d0905a32b060992b468c64766fc8437a", - "3cc3122a68f0d95027ad38c067916ba0eb8c38894d22e1b15618b6818a661774" - "ad463b205da88cf699ab4d43c9cf98a1", - "9803807f2f6d2fd966cdd0290bd410c0190352fbec7ff6247de1302df86f25d3" - "4fe4a97bef60cff548355c015dbb3e5f", - "ba26ca69ec2f5b5d9dad20cc9da711383a9dbe34ea3fa5a2af75b46502629ad5" - "4dd8b7d73a8abb06a3a3be47d650cc99", - "5f9d29dc5e31a163060356213669c8ce132e22f57c9a04f40ba7fcead493b457" - "e5621e766c40a2e3d4d6a04b25e533f1" }, - { NID_secp384r1, - "30f43fcf2b6b00de53f624f1543090681839717d53c7c955d1d69efaf0349b73" - "63acb447240101cbb3af6641ce4b88e0", - "25e46c0c54f0162a77efcc27b6ea792002ae2ba82714299c860857a68153ab62" - "e525ec0530d81b5aa15897981e858757", - "92860c21bde06165f8e900c687f8ef0a05d14f290b3f07d8b3a8cc6404366e5d" - "5119cd6d03fb12dc58e89f13df9cd783", - "ea4018f5a307c379180bf6a62fd2ceceebeeb7d4df063a66fb838aa352434197" - "91f7e2c9d4803c9319aa0eb03c416b66", - "68835a91484f05ef028284df6436fb88ffebabcdd69ab0133e6735a1bcfb3720" - "3d10d340a8328a7b68770ca75878a1a6", - "a23742a2c267d7425fda94b93f93bbcc24791ac51cd8fd501a238d40812f4cbf" - "c59aac9520d758cf789c76300c69d2ff" }, - { NID_secp384r1, - "1aefbfa2c6c8c855a1a216774550b79a24cda37607bb1f7cc906650ee4b3816d" - "68f6a9c75da6e4242cebfb6652f65180", - "419d28b723ebadb7658fcebb9ad9b7adea674f1da3dc6b6397b55da0f61a3edd" - "acb4acdb14441cb214b04a0844c02fa3", - "12cf6a223a72352543830f3f18530d5cb37f26880a0b294482c8a8ef8afad09a" - "a78b7dc2f2789a78c66af5d1cc553853", - "fcfcea085e8cf74d0dced1620ba8423694f903a219bbf901b0b59d6ac81baad3" - "16a242ba32bde85cb248119b852fab66", - "972e3c68c7ab402c5836f2a16ed451a33120a7750a6039f3ff15388ee622b706" - "5f7122bf6d51aefbc29b37b03404581b", - "3d2e640f350805eed1ff43b40a72b2abed0a518bcebe8f2d15b111b6773223da" - "3c3489121db173d414b5bd5ad7153435" }, - { NID_secp384r1, - "8bc089326ec55b9cf59b34f0eb754d93596ca290fcb3444c83d4de3a5607037e" - "c397683f8cef07eab2fe357eae36c449", - "d9d16ce8ac85b3f1e94568521aae534e67139e310ec72693526aa2e927b5b322" - "c95a1a033c229cb6770c957cd3148dd7", - "8dd48063a3a058c334b5cc7a4ce07d02e5ee6d8f1f3c51a1600962cbab462690" - "ae3cd974fb39e40b0e843daa0fd32de1", - "e38c9846248123c3421861ea4d32669a7b5c3c08376ad28104399494c84ff5ef" - "a3894adb2c6cbe8c3c913ef2eec5bd3c", - "9fa84024a1028796df84021f7b6c9d02f0f4bd1a612a03cbf75a0beea43fef8a" - "e84b48c60172aadf09c1ad016d0bf3ce", - "6a42cfc392aba0bfd3d17b7ccf062b91fc09bbf3417612d02a90bdde62ae40c5" - "4bb2e56e167d6b70db670097eb8db854" }, - { NID_secp384r1, - "eb952e2d9ac0c20c6cc48fb225c2ad154f53c8750b003fd3b4ed8ed1dc0defac" - "61bcdde02a2bcfee7067d75d342ed2b0", - "f1828205baece82d1b267d0d7ff2f9c9e15b69a72df47058a97f3891005d1fb3" - "8858f5603de840e591dfa4f6e7d489e1", - "84ece6cc3429309bd5b23e959793ed2b111ec5cb43b6c18085fcaea9efa0685d" - "98a6262ee0d330ee250bc8a67d0e733f", - "3222063a2997b302ee60ee1961108ff4c7acf1c0ef1d5fb0d164b84bce71c431" - "705cb9aea9a45f5d73806655a058bee3", - "e61fa9e7fbe7cd43abf99596a3d3a039e99fa9dc93b0bdd9cad81966d17eeaf5" - "57068afa7c78466bb5b22032d1100fa6", - "ce7ba454d4412729a32bb833a2d1fd2ae612d4667c3a900e069214818613447d" - "f8c611de66da200db7c375cf913e4405" }, - { NID_secp384r1, - "441d029e244eb7168d647d4df50db5f4e4974ab3fdaf022aff058b3695d0b8c8" - "14cc88da6285dc6df1ac55c553885003", - "e8025ac23a41d4b1ea2aa46c50c6e479946b59b6d76497cd9249977e0bfe4a62" - "62622f13d42a3c43d66bdbb30403c345", - "68fce2121dc3a1e37b10f1dde309f9e2e18fac47cd1770951451c3484cdb77cb" - "136d00e731260597cc2859601c01a25b", - "868be0e694841830e424d913d8e7d86b84ee1021d82b0ecf523f09fe89a76c0c" - "95c49f2dfbcf829c1e39709d55efbb3b", - "9195eb183675b40fd92f51f37713317e4a9b4f715c8ab22e0773b1bc71d3a219" - "f05b8116074658ee86b52e36f3897116", - "ba69f0acdf3e1ca95caaac4ecaf475bbe51b54777efce01ca381f45370e486fe" - "87f9f419b150c61e329a286d1aa265ec" }, - { NID_secp384r1, - "3d4e6bf08a73404accc1629873468e4269e82d90d832e58ad72142639b5a056a" - "d8d35c66c60e8149fac0c797bceb7c2f", - "9b0308dc7f0e6d29f8c277acbc65a21e5adb83d11e6873bc0a07fda0997f4825" - "04602f59e10bc5cb476b83d0a4f75e71", - "b1764c54897e7aae6de9e7751f2f37de849291f88f0f91093155b858d1cc32a3" - "a87980f706b86cc83f927bdfdbeae0bd", - "c371222feaa6770c6f3ea3e0dac9740def4fcf821378b7f91ff937c21e0470f7" - "0f3a31d5c6b2912195f10926942b48ae", - "047d6b4d765123563f81116bc665b7b8cc6207830d805fd84da7cb805a65baa7" - "c12fd592d1b5b5e3e65d9672a9ef7662", - "1a6688ee1d6e59865d8e3ada37781d36bb0c2717eef92e61964d3927cb765c29" - "65ea80f7f63e58c322ba0397faeaf62b" }, - { NID_secp384r1, - "f5f6bef1d110da03be0017eac760cc34b24d092f736f237bc7054b3865312a81" - "3bcb62d297fb10a4f7abf54708fe2d3d", - "06fdf8d7dc032f4e10010bf19cbf6159321252ff415fb91920d438f24e67e60c" - "2eb0463204679fa356af44cea9c9ebf5", - "f0f7a96e70d98fd5a30ad6406cf56eb5b72a510e9f192f50e1f84524dbf3d243" - "9f7287bb36f5aa912a79deaab4adea82", - "99c8c41cb1ab5e0854a346e4b08a537c1706a61553387c8d94943ab15196d40d" - "baa55b8210a77a5d00915f2c4ea69eab", - "5531065bdcf17bfb3cb55a02e41a57c7f694c383ad289f900fbd656c2233a93c" - "92e933e7a26f54cbb56f0ad875c51bb0", - "d06a568bf2336b90cbac325161be7695eacb2295f599500d787f072612aca313" - "ee5d874f807ddef6c1f023fe2b6e7cd0" }, - { NID_secp384r1, - "7cdec77e0737ea37c67b89b7137fe38818010f4464438ee4d1d35a0c488cad3f" - "de2f37d00885d36d3b795b9f93d23a67", - "28c42ee8d6027c56cf979ba4c229fdb01d234944f8ac433650112c3cf0f02844" - "e888a3569dfef7828a8a884589aa055e", - "9efb87ddc61d43c482ba66e1b143aef678fbd0d1bebc2000941fabe677fe5b70" - "6bf78fce36d100b17cc787ead74bbca2", - "4c34efee8f0c95565d2065d1bbac2a2dd25ae964320eb6bccedc5f3a9b42a881" - "a1afca1bb6b880584fa27b01c193cd92", - "d8fb01dbf7cd0a3868c26b951f393c3c56c2858cee901f7793ff5d271925d13a" - "41f8e52409f4eba1990f33acb0bac669", - "bb3b1eda9c6560d82ff5bee403339f1e80342338a991344853b56b24f109a4d9" - "4b92f654f0425edd4c205903d7586104" }, - { NID_secp384r1, - "8eeea3a319c8df99fbc29cb55f243a720d95509515ee5cc587a5c5ae22fbbd00" - "9e626db3e911def0b99a4f7ae304b1ba", - "73877dc94db9adddc0d9a4b24e8976c22d73c844370e1ee857f8d1b129a3bd5f" - "63f40caf3bd0533e38a5f5777074ff9e", - "d787a57fde22ec656a0a525cf3c738b30d73af61e743ea90893ecb2d7b622add" - "2f94ee25c2171467afb093f3f84d0018", - "171546923b87b2cbbad664f01ce932bf09d6a6118168678446bfa9f0938608cb" - "4667a98f4ec8ac1462285c2508f74862", - "fa41cb4db68ae71f1f8a3e8939dc52c2dec61a83c983beb2a02baf29ec492780" - "88882ed0cf56c74b5c173b552ccf63cf", - "1e97b60add7cb35c7403dd884c0a75795b7683fff8b49f9d8672a8206bfdcf0a" - "106b8768f983258c74167422e44e4d14" }, - { NID_secp384r1, - "a721f6a2d4527411834b13d4d3a33c29beb83ab7682465c6cbaf6624aca6ea58" - "c30eb0f29dd842886695400d7254f20f", - "14ba6e26355109ad35129366d5e3a640ae798505a7fa55a96a36b5dad33de004" - "74f6670f522214dd7952140ab0a7eb68", - "83d70f7b164d9f4c227c767046b20eb34dfc778f5387e32e834b1e6daec20edb" - "8ca5bb4192093f543b68e6aeb7ce788b", - "57cd770f3bbcbe0c78c770eab0b169bc45e139f86378ffae1c2b16966727c2f2" - "eb724572b8f3eb228d130db4ff862c63", - "7ec5c8813b685558d83e924f14bc719f6eb7ae0cbb2c474227c5bda88637a4f2" - "6c64817929af999592da6f787490332f", - "1023478840e54775bfc69293a3cf97f5bc914726455c66538eb5623e218feef7" - "df4befa23e09d77145ad577db32b41f9" }, - { NID_secp384r1, - "d882a8505c2d5cb9b8851fc676677bb0087681ad53faceba1738286b45827561" - "e7da37b880276c656cfc38b32ade847e", - "34b314bdc134575654573cffaf40445da2e6aaf987f7e913cd4c309152305898" - "4a25d8f21da8326192456c6a0fa5f60c", - "8f558e05818b88ed383d5fca962e53413db1a0e4637eda194f761944cbea114a" - "b9d5da175a7d57882550b0e432f395a9", - "9a2f57f4867ce753d72b0d95195df6f96c1fae934f602efd7b6a54582f556cfa" - "539d89005ca2edac08ad9b72dd1f60ba", - "d9b94ee82da9cc601f346044998ba387aee56404dc6ecc8ab2b590443319d0b2" - "b6176f9d0eac2d44678ed561607d09a9", - "6ad6b9dc8a6cf0d3691c501cbb967867f6e4bbb764b60dbff8fcff3ed42dbba3" - "9d63cf325b4b4078858495ddee75f954" }, - { NID_secp384r1, - "815c9d773dbf5fb6a1b86799966247f4006a23c92e68c55e9eaa998b17d8832d" - "d4d84d927d831d4f68dac67c6488219f", - "e79269948b2611484560fd490feec887cb55ef99a4b524880fa7499d6a07283a" - "ae2afa33feab97deca40bc606c4d8764", - "0f5dee0affa7bbf239d5dff32987ebb7cf84fcceed643e1d3c62d0b3352aec23" - "b6e5ac7fa4105c8cb26126ad2d1892cb", - "23346bdfbc9d7c7c736e02bdf607671ff6082fdd27334a8bc75f3b23681ebe61" - "4d0597dd614fae58677c835a9f0b273b", - "82ba36290d2f94db41479eb45ab4eaf67928a2315138d59eecc9b5285dfddd67" - "14f77557216ea44cc6fc119d8243efaf", - "cc9e063566d46b357b3fcae21827377331e5e290a36e60cd7c39102b828ae0b9" - "18dc5a02216b07fe6f1958d834e42437" }, - { NID_secp384r1, - "1c0eeda7a2be000c5bdcda0478aed4db733d2a9e341224379123ad847030f29e" - "3b168fa18e89a3c0fba2a6ce1c28fc3b", - "ec8c1c83c118c4dbea94271869f2d868eb65e8b44e21e6f14b0f4d9b38c068da" - "efa27114255b9a41d084cc4a1ad85456", - "037b633b5b8ba857c0fc85656868232e2febf59578718391b81da8541a00bfe5" - "3c30ae04151847f27499f8d7abad8cf4", - "8878ac8a947f7d5cb2b47aad24fbb8210d86126585399a2871f84aa9c5fde307" - "4ae540c6bf82275ca822d0feb862bc74", - "632f5cd2f900c2711c32f8930728eb647d31edd8d650f9654e7d33e5ed1b4754" - "89d08daa30d8cbcba6bfc3b60d9b5a37", - "deff7f03bd09865baf945e73edff6d5122c03fb561db87dec8662e09bed4340b" - "28a9efe118337bb7d3d4f7f568635ff9" }, - { NID_secp384r1, - "c95c185e256bf997f30b311548ae7f768a38dee43eeeef43083f3077be70e2bf" - "39ac1d4daf360c514c8c6be623443d1a", - "3e63a663eaf75d8a765ab2b9a35513d7933fa5e26420a5244550ec6c3b6f033b" - "96db2aca3d6ac6aab052ce929595aea5", - "e3d07106bedcc096e7d91630ffd3094df2c7859db8d7edbb2e37b4ac47f429a6" - "37d06a67d2fba33838764ef203464991", - "e74a1a2b85f1cbf8dbbdf050cf1aff8acb02fda2fb6591f9d3cfe4e79d0ae938" - "a9c1483e7b75f8db24505d65065cdb18", - "1773ee591822f7abaa856a1a60bc0a5203548dbd1cb5025466eff8481bd07614" - "eaa04a16c3db76905913e972a5b6b59d", - "c8b1038f735ad3bb3e4637c3e47eab487637911a6b7950a4e461948329d3923b" - "969e5db663675623611a457fcda35a71" }, - { NID_secp384r1, - "3497238a7e6ad166df2dac039aa4dac8d17aa925e7c7631eb3b56e3aaa1c545f" - "cd54d2e5985807910fb202b1fc191d2a", - "a49e5c487dcc7aa40a8f234c979446040d9174e3ad357d404d7765183195aed3" - "f913641b90c81a306ebf0d8913861316", - "f3f9b0c65a49a506632c8a45b10f66b5316f9eeb06fae218f2da62333f999051" - "17b141c760e8974efc4af10570635791", - "a4ad77aa7d86e5361118a6b921710c820721210712f4c347985fdee58aa4effa" - "1e28be80a17b120b139f96300f89b49b", - "1ddf22e07e03f1560d8f45a480094560dba9fae7f9531130c1b57ebb95982496" - "524f31d3797793396fa823f22bdb4328", - "d337eaa32b9f716b8747b005b97a553c59dab0c51df41a2d49039cdae705aa75" - "c7b9e7bc0b6a0e8c578c902bc4fff23e" }, - { NID_secp384r1, - "90a34737d45b1aa65f74e0bd0659bc118f8e4b774b761944ffa6573c6df4f41d" - "ec0d11b697abd934d390871d4b453240", - "9b590719bb3307c149a7817be355d684893a307764b512eeffe07cb699edb5a6" - "ffbf8d6032e6c79d5e93e94212c2aa4e", - "59fce7fad7de28bac0230690c95710c720e528f9a4e54d3a6a8cd5fc5c5f2163" - "7031ce1c5b4e3d39647d8dcb9b794664", - "9c43bf971edf09402876ee742095381f78b1bd3aa39b5132af75dbfe7e98bd78" - "bde10fe2e903c2b6379e1deee175a1b0", - "a6c58ecea5a477bb01bd543b339f1cc49f1371a2cda4d46eb4e53e2505979423" - "51a99665a122ffea9bde0636c375daf2", - "32d292b695a4488e42a7b7922e1ae537d76a3d21a0b2e36875f60e9f6d3e8779" - "c2afb3a413b9dd79ae18e70b47d337c1" }, - { NID_secp384r1, - "dda546acfc8f903d11e2e3920669636d44b2068aeb66ff07aa266f0030e1535b" - "0ed0203cb8a460ac990f1394faf22f1d", - "15bbb2597913035faadf413476f4c70f7279769a40c986f470c427b4ee4962ab" - "df8173bbad81874772925fd32f0b159f", - "3e49fbf950a424c5d80228dc4bc35e9f6c6c0c1d04440998da0a609a877575db" - "e437d6a5cedaa2ddd2a1a17fd112aded", - "5a949594228b1a3d6f599eb3db0d06070fbc551c657b58234ba164ce3fe415fa" - "5f3eb823c08dc29b8c341219c77b6b3d", - "2baad447c8c290cfed25edd9031c41d0b76921457327f42db31122b81f337bbf" - "0b1039ec830ce9061a3761953c75e4a8", - "1220e7e6cad7b25df98e5bbdcc6c0b65ca6c2a50c5ff6c41dca71e475646fd48" - "9615979ca92fb4389aeadefde79a24f1" }, - { NID_secp384r1, - "788be2336c52f4454d63ee944b1e49bfb619a08371048e6da92e584eae70bde1" - "f171c4df378bd1f3c0ab03048a237802", - "4673ebd8db604eaf41711748bab2968a23ca4476ce144e728247f08af7529291" - "57b5830f1e26067466bdfa8b65145a33", - "50ccc1f7076e92f4638e85f2db98e0b483e6e2204c92bdd440a6deea04e37a07" - "c6e72791c190ad4e4e86e01efba84269", - "756c07df0ce32c839dac9fb4733c9c28b70113a676a7057c38d223f22a3a9095" - "a8d564653af528e04c7e1824be4a6512", - "17c2ce6962cbd2a2e066297b39d57dd9bb4680f0191d390f70b4e461419b2972" - "ce68ad46127fdda6c39195774ea86df3", - "793bb9cd22a93cf468faf804a38d12b78cb12189ec679ddd2e9aa21fa9a5a0b0" - "49ab16a23574fe04c1c3c02343b91beb" }, - { NID_secp384r1, - "d09bb822eb99e38060954747c82bb3278cf96bbf36fece3400f4c873838a40c1" - "35eb3babb9293bd1001bf3ecdee7bf26", - "d416db6e1b87bbb7427788a3b6c7a7ab2c165b1e366f9608df512037584f213a" - "648d47f16ac326e19aae972f63fd76c9", - "06f132b71f74d87bf99857e1e4350a594e5fe35533b888552ceccbc0d8923c90" - "2e36141d7691e28631b8bc9bafe5e064", - "2a3cc6b8ff5cde926e7e3a189a1bd029c9b586351af8838f4f201cb8f4b70ef3" - "b0da06d352c80fc26baf8f42b784459e", - "bf9985960176da6d23c7452a2954ffcbbcb24249b43019a2a023e0b3dabd461f" - "19ad3e775c364f3f11ad49f3099400d3", - "012d191cf7404a523678c6fc075de8285b243720a903047708bb33e501e0dbee" - "5bcc40d7c3ef6c6da39ea24d830da1e8" }, - { NID_secp384r1, - "13741262ede5861dad71063dfd204b91ea1d3b7c631df68eb949969527d79a1d" - "c59295ef7d2bca6743e8cd77b04d1b58", - "0baaeadc7e19d74a8a04451a135f1be1b02fe299f9dc00bfdf201e83d995c695" - "0bcc1cb89d6f7b30bf54656b9a4da586", - "12048ebb4331ec19a1e23f1a2c773b664ccfe90a28bfb846fc12f81dff44b744" - "3c77647164bf1e9e67fd2c07a6766241", - "bc18836bc7a9fdf54b5352f37d7528ab8fa8ec544a8c6180511cbfdd49cce377" - "c39e34c031b5240dc9980503ed2f262c", - "8086cbe338191080f0b7a16c7afc4c7b0326f9ac66f58552ef4bb9d24de3429e" - "d5d3277ed58fcf48f2b5f61326bec6c6", - "ad0fd3ddffe8884b9263f3c15fe1f07f2a5a22ffdc7e967085eea45f0cd959f2" - "0f18f522763e28bcc925e496a52dda98" }, - { NID_secp384r1, - "9e22cbc18657f516a864b37b783348b66f1aa9626cd631f4fa1bd32ad88cf11d" - "b52057c660860d39d11fbf024fabd444", - "6b0d53c79681c28116df71e9cee74fd56c8b7f04b39f1198cc72284e98be9562" - "e35926fb4f48a9fbecafe729309e8b6f", - "34d61a699ca576169fcdc0cc7e44e4e1221db0fe63d16850c8104029f7d48449" - "714b9884328cae189978754ab460b486", - "867f81104ccd6b163a7902b670ef406042cb0cce7dcdc63d1dfc91b2c40e3cdf" - "7595834bf9eceb79849f1636fc8462fc", - "9d4bde8e875ec49697d258d1d59465f8431c6f5531e1c59e9f9ebe3cf164a8d9" - "ce10a12f1979283a959bad244dd83863", - "dc4ca392dc15e20185f2c6a8ea5ec31dfc96f56153a47394b3072b13d0015f5d" - "4ae13beb3bed54d65848f9b8383e6c95" }, - { NID_secp384r1, - "2db5da5f940eaa884f4db5ec2139b0469f38e4e6fbbcc52df15c0f7cf7fcb180" - "8c749764b6be85d2fdc5b16f58ad5dc0", - "22e8b02dcf33e1b5a083849545f84ad5e43f77cb71546dbbac0d11bdb2ee202e" - "9d3872e8d028c08990746c5e1dde9989", - "dc60fa8736d702135ff16aab992bb88eac397f5972456c72ec447374d0d8ce61" - "153831bfc86ad5a6eb5b60bfb96a862c", - "b69beede85d0f829fec1b893ccb9c3e052ff692e13b974537bc5b0f9feaf7b22" - "e84f03231629b24866bdb4b8cf908914", - "66f85e2bfcaba2843285b0e14ebc07ef7dafff8b424416fee647b59897b619f2" - "0eed95a632e6a4206bf7da429c04c560", - "d765b208112d2b9ed5ad10c4046e2e3b0dbf57c469329519e239ac28b25c7d85" - "2bf757d5de0ee271cadd021d86cfd347" }, - { NID_secp384r1, - "329647baa354224eb4414829c5368c82d7893b39804e08cbb2180f459befc4b3" - "47a389a70c91a23bd9d30c83be5295d3", - "cc8f61923fad2aa8e505d6cfa126b9fabd5af9dce290b75660ef06d1caa73681" - "d06089c33bc4246b3aa30dbcd2435b12", - "6fa6a1c704730987aa634b0516a826aba8c6d6411d3a4c89772d7a62610256a2" - "e2f289f5c3440b0ec1e70fa339e251ce", - "53de1fc1328e8de14aecab29ad8a40d6b13768f86f7d298433d20fec791f86f8" - "bc73f358098b256a298bb488de257bf4", - "ac28944fd27f17b82946c04c66c41f0053d3692f275da55cd8739a95bd8cd3af" - "2f96e4de959ea8344d8945375905858b", - "d3778850aeb58804fbe9dfe6f38b9fa8e20c2ca4e0dec335aafceca0333e3f24" - "90b53c0c1a14a831ba37c4b9d74be0f2" }, - { NID_secp384r1, - "29d8a36d22200a75b7aea1bb47cdfcb1b7fd66de967041434728ab5d533a060d" - "f732130600fe6f75852a871fb2938e39", - "e19b53db528395de897a45108967715eb8cb55c3fcbf23379372c0873a058d57" - "544b102ecce722b2ccabb1a603774fd5", - "74ad8386c1cb2ca0fcdeb31e0869bb3f48c036afe2ef110ca302bc8b910f621c" - "9fcc54cec32bb89ec7caa84c7b8e54a8", - "27a3e83cfb9d5122e73129d801615857da7cc089cccc9c54ab3032a19e0a0a9f" - "677346e37f08a0b3ed8da6e5dd691063", - "8d60e44aa5e0fd30c918456796af37f0e41957901645e5c596c6d989f5859b03" - "a0bd7d1f4e77936fff3c74d204e5388e", - "81e1e71575bb4505498de097350186430a6242fa6c57b85a5f984a23371123d2" - "d1424eefbf804258392bc723e4ef1e35" }, - { NID_secp521r1, - "000000685a48e86c79f0f0875f7bc18d25eb5fc8c0b07e5da4f4370f3a949034" - "0854334b1e1b87fa395464c60626124a4e70d0f785601d37c09870ebf1766668" - "77a2046d", - "000001ba52c56fc8776d9e8f5db4f0cc27636d0b741bbe05400697942e80b739" - "884a83bde99e0f6716939e632bc8986fa18dccd443a348b6c3e522497955a4f3" - "c302f676", - "0000017eecc07ab4b329068fba65e56a1f8890aa935e57134ae0ffcce8027351" - "51f4eac6564f6ee9974c5e6887a1fefee5743ae2241bfeb95d5ce31ddcb6f9ed" - "b4d6fc47", - "000000602f9d0cf9e526b29e22381c203c48a886c2b0673033366314f1ffbcba" - "240ba42f4ef38a76174635f91e6b4ed34275eb01c8467d05ca80315bf1a7bbd9" - "45f550a5", - "000001b7c85f26f5d4b2d7355cf6b02117659943762b6d1db5ab4f1dbc44ce7b" - "2946eb6c7de342962893fd387d1b73d7a8672d1f236961170b7eb3579953ee5c" - "dc88cd2d", - "005fc70477c3e63bc3954bd0df3ea0d1f41ee21746ed95fc5e1fdf90930d5e13" - "6672d72cc770742d1711c3c3a4c334a0ad9759436a4d3c5bf6e74b9578fac148" - "c831" }, - { NID_secp521r1, - "000001df277c152108349bc34d539ee0cf06b24f5d3500677b4445453ccc2140" - "9453aafb8a72a0be9ebe54d12270aa51b3ab7f316aa5e74a951c5e53f74cd95f" - "c29aee7a", - "0000013d52f33a9f3c14384d1587fa8abe7aed74bc33749ad9c570b471776422" - "c7d4505d9b0a96b3bfac041e4c6a6990ae7f700e5b4a6640229112deafa0cd8b" - "b0d089b0", - "000000816f19c1fb10ef94d4a1d81c156ec3d1de08b66761f03f06ee4bb9dceb" - "bbfe1eaa1ed49a6a990838d8ed318c14d74cc872f95d05d07ad50f621ceb620c" - "d905cfb8", - "000000d45615ed5d37fde699610a62cd43ba76bedd8f85ed31005fe00d6450fb" - "bd101291abd96d4945a8b57bc73b3fe9f4671105309ec9b6879d0551d930dac8" - "ba45d255", - "000001425332844e592b440c0027972ad1526431c06732df19cd46a242172d4d" - "d67c2c8c99dfc22e49949a56cf90c6473635ce82f25b33682fb19bc33bd910ed" - "8ce3a7fa", - "000b3920ac830ade812c8f96805da2236e002acbbf13596a9ab254d44d0e91b6" - "255ebf1229f366fb5a05c5884ef46032c26d42189273ca4efa4c3db6bd12a685" - "3759" }, - { NID_secp521r1, - "00000092db3142564d27a5f0006f819908fba1b85038a5bc2509906a497daac6" - "7fd7aee0fc2daba4e4334eeaef0e0019204b471cd88024f82115d8149cc0cf4f" - "7ce1a4d5", - "0000016bad0623f517b158d9881841d2571efbad63f85cbe2e581960c5d67060" - "1a6760272675a548996217e4ab2b8ebce31d71fca63fcc3c08e91c1d8edd91cf" - "6fe845f8", - "0000012f2e0c6d9e9d117ceb9723bced02eb3d4eebf5feeaf8ee0113ccd8057b" - "13ddd416e0b74280c2d0ba8ed291c443bc1b141caf8afb3a71f97f57c225c03e" - "1e4d42b0", - "000000717fcb3d4a40d103871ede044dc803db508aaa4ae74b70b9fb8d8dfd84" - "bfecfad17871879698c292d2fd5e17b4f9343636c531a4fac68a35a93665546b" - "9a878679", - "000000f3d96a8637036993ab5d244500fff9d2772112826f6436603d3eb234a4" - "4d5c4e5c577234679c4f9df725ee5b9118f23d8a58d0cc01096daf70e8dfec01" - "28bdc2e8", - "006b380a6e95679277cfee4e8353bf96ef2a1ebdd060749f2f046fe571053740" - "bbcc9a0b55790bc9ab56c3208aa05ddf746a10a3ad694daae00d980d944aabc6" - "a08f" }, - { NID_secp521r1, - "000000fdd40d9e9d974027cb3bae682162eac1328ad61bc4353c45bf5afe76bf" - "607d2894c8cce23695d920f2464fda4773d4693be4b3773584691bdb0329b7f4" - "c86cc299", - "00000034ceac6a3fef1c3e1c494bfe8d872b183832219a7e14da414d4e347457" - "3671ec19b033be831b915435905925b44947c592959945b4eb7c951c3b9c8cf5" - "2530ba23", - "000000e548a79d8b05f923b9825d11b656f222e8cb98b0f89de1d317184dc5a6" - "98f7c71161ee7dc11cd31f4f4f8ae3a981e1a3e78bdebb97d7c204b9261b4ef9" - "2e0918e0", - "0000000ce800217ed243dd10a79ad73df578aa8a3f9194af528cd1094bbfee27" - "a3b5481ad5862c8876c0c3f91294c0ab3aa806d9020cbaa2ed72b7fecdc5a09a" - "6dad6f32", - "000001543c9ab45b12469232918e21d5a351f9a4b9cbf9efb2afcc402fa9b316" - "50bec2d641a05c440d35331c0893d11fb13151335988b303341301a73dc5f61d" - "574e67d9", - "00fbbcd0b8d05331fef6086f22a6cce4d35724ab7a2f49dd8458d0bfd57a0b8b" - "70f246c17c4468c076874b0dff7a0336823b19e98bf1cec05e4beffb0591f977" - "13c6" }, - { NID_secp521r1, - "00000098d99dee0816550e84dbfced7e88137fddcf581a725a455021115fe49f" - "8dc3cf233cd9ea0e6f039dc7919da973cdceaca205da39e0bd98c8062536c47f" - "258f44b5", - "000000cd225c8797371be0c4297d2b457740100c774141d8f214c23b61aa2b6c" - "d4806b9b70722aa4965fb622f42b7391e27e5ec21c5679c5b06b59127372997d" - "421adc1e", - "000001c8aae94bb10b8ca4f7be577b4fb32bb2381032c4942c24fc2d753e7cc5" - "e47b483389d9f3b956d20ee9001b1eef9f23545f72c5602140046839e963313c" - "3decc864", - "00000106a14e2ee8ff970aa8ab0c79b97a33bba2958e070b75b94736b77bbe3f" - "777324fa52872771aa88a63a9e8490c3378df4dc760cd14d62be700779dd1a43" - "77943656", - "0000002366ce3941e0b284b1aa81215d0d3b9778fce23c8cd1e4ed6fa0abf621" - "56c91d4b3eb55999c3471bed275e9e60e5aa9d690d310bfb15c9c5bbd6f5e9eb" - "39682b74", - "0145cfa38f25943516c96a5fd4bfebb2f645d10520117aa51971eff442808a23" - "b4e23c187e639ff928c3725fbd1c0c2ad0d4aeb207bc1a6fb6cb6d467888dc04" - "4b3c" }, - { NID_secp521r1, - "0000007ae115adaaf041691ab6b7fb8c921f99d8ed32d283d67084e80b9ad9c4" - "0c56cd98389fb0a849d9ecf7268c297b6f93406119f40e32b5773ed25a28a9a8" - "5c4a7588", - "000001a28e004e37eeaefe1f4dbb71f1878696141af3a10a9691c4ed93487214" - "643b761fa4b0fbeeb247cf6d3fba7a60697536ad03f49b80a9d1cb0796736549" - "77c5fa94", - "0000009b0af137c9696c75b7e6df7b73156bb2d45f482e5a4217324f478b10ce" - "b76af09724cf86afa316e7f89918d31d54824a5c33107a483c15c15b96edc661" - "340b1c0e", - "000000748cdbb875d35f4bccb62abe20e82d32e4c14dc2feb5b87da2d0ccb11c" - "9b6d4b7737b6c46f0dfb4d896e2db92fcf53cdbbae2a404c0babd564ad7adeac" - "6273efa3", - "000001984acab8d8f173323de0bb60274b228871609373bb22a17287e9dec749" - "5873abc09a8915b54c8455c8e02f654f602e23a2bbd7a9ebb74f3009bd65ecc6" - "50814cc0", - "005c5721e96c273319fd60ecc46b5962f698e974b429f28fe6962f4ac656be2e" - "b8674c4aafc037eab48ece612953b1e8d861016b6ad0c79805784c67f73ada96" - "f351" }, - { NID_secp521r1, - "0000012588115e6f7f7bdcfdf57f03b169b479758baafdaf569d04135987b2ce" - "6164c02a57685eb5276b5dae6295d3fe90620f38b5535c6d2260c173e61eb888" - "ca920203", - "000001542c169cf97c2596fe2ddd848a222e367c5f7e6267ebc1bcd9ab5dcf49" - "158f1a48e4af29a897b7e6a82091c2db874d8e7abf0f58064691344154f396db" - "aed188b6", - "000001e48faacee6dec83ffcde944cf6bdf4ce4bae72747888ebafee455b1e91" - "584971efb49127976a52f4142952f7c207ec0265f2b718cf3ead96ea4f62c752" - "e4f7acd3", - "0000010eb1b4d9172bcc23f4f20cc9560fc54928c3f34ea61c00391dc766c76e" - "d9fa608449377d1e4fadd1236025417330b4b91086704ace3e4e6484c606e2a9" - "43478c86", - "00000149413864069825ee1d0828da9f4a97713005e9bd1adbc3b38c5b946900" - "721a960fe96ad2c1b3a44fe3de9156136d44cb17cbc2415729bb782e16bfe2de" - "b3069e43", - "01736d9717429b4f412e903febe2f9e0fffd81355d6ce2c06ff3f66a3be15cee" - "c6e65e308347593f00d7f33591da4043c30763d72749f72cdceebe825e4b34ec" - "d570" }, - { NID_secp521r1, - "00000169491d55bd09049fdf4c2a53a660480fee4c03a0538675d1cd09b5bba7" - "8dac48543ef118a1173b3fbf8b20e39ce0e6b890a163c50f9645b3d21d1cbb3b" - "60a6fff4", - "00000083494b2eba76910fed33c761804515011fab50e3b377abd8a8a045d886" - "d2238d2c268ac1b6ec88bd71b7ba78e2c33c152e4bf7da5d565e4acbecf5e92c" - "7ad662bb", - "000000c29aa223ea8d64b4a1eda27f39d3bc98ea0148dd98c1cbe595f8fd2bfb" - "de119c9e017a50f5d1fc121c08c1cef31b758859556eb3e0e042d8dd6aaac57a" - "05ca61e3", - "0000001511c848ef60d5419a98d10204db0fe58224124370061bcfa4e9249d50" - "618c56bf3722471b259f38263bb7b280d23caf2a1ee8737f9371cdb2732cdc95" - "8369930c", - "000001d461681ae6d8c49b4c5f4d6016143fb1bd7491573e3ed0e6c48b82e821" - "644f87f82f0e5f08fd16f1f98fa17586200ab02ed8c627b35c3f27617ec5fd92" - "f456203f", - "018f2ae9476c771726a77780208dedfefa205488996b18fecc50bfd4c132753f" - "5766b2cd744afa9918606de2e016effc63622e9029e76dc6e3f0c69f7aeced56" - "5c2c" }, - { NID_secp521r1, - "0000008415f5bbd0eee387d6c09d0ef8acaf29c66db45d6ba101860ae45d3c60" - "e1e0e3f7247a4626a60fdd404965c3566c79f6449e856ce0bf94619f97da8da2" - "4bd2cfb6", - "000000fdd7c59c58c361bc50a7a5d0d36f723b17c4f2ad2b03c24d42dc50f74a" - "8c465a0afc4683f10fab84652dfe9e928c2626b5456453e1573ff60be1507467" - "d431fbb2", - "00000028692be2bf5c4b48939846fb3d5bce74654bb2646e15f8389e23708a1a" - "fadf561511ea0d9957d0b53453819d60fba8f65a18f7b29df021b1bb01cd1632" - "93acc3cc", - "000001cfdc10c799f5c79cb6930a65fba351748e07567993e5e410ef4cacc4cd" - "8a25784991eb4674e41050f930c7190ac812b9245f48a7973b658daf408822fe" - "5b85f668", - "00000180d9ddfc9af77b9c4a6f02a834db15e535e0b3845b2cce30388301b51c" - "ecbe3276307ef439b5c9e6a72dc2d94d879bc395052dbb4a5787d06efb280210" - "fb8be037", - "0105a346988b92ed8c7a25ce4d79d21bc86cfcc7f99c6cd19dbb4a39f48ab943" - "b79e4f0647348da0b80bd864b85c6b8d92536d6aa544dc7537a00c858f8b6631" - "9e25" }, - { NID_secp521r1, - "000001c721eea805a5cba29f34ba5758775be0cf6160e6c08723f5ab17bf96a1" - "ff2bd9427961a4f34b07fc0b14ca4b2bf6845debd5a869f124ebfa7aa72fe565" - "050b7f18", - "000000b6e89eb0e1dcf181236f7c548fd1a8c16b258b52c1a9bfd3fe8f22841b" - "26763265f074c4ccf2d634ae97b701956f67a11006c52d97197d92f585f5748b" - "c2672eeb", - "000001194d1ee613f5366cbc44b504d21a0cf6715e209cd358f2dd5f3e71cc0d" - "67d0e964168c42a084ebda746f9863a86bacffc819f1edf1b8c727ccfb304724" - "0a57c435", - "0000016bd15c8a58d366f7f2b2f298cc87b7485e9ee70d11d12448b8377c0a82" - "c7626f67aff7f97be7a3546bf417eeeddf75a93c130191c84108042ea2fca17f" - "d3f80d14", - "000001560502d04b74fce1743aab477a9d1eac93e5226981fdb97a7478ce4ce5" - "66ff7243931284fad850b0c2bcae0ddd2d97790160c1a2e77c3ed6c95ecc44b8" - "9e2637fc", - "004531b3d2c6cd12f21604c8610e6723dbf4daf80b5a459d6ba5814397d1c1f7" - "a21d7c114be964e27376aaebe3a7bc3d6af7a7f8c7befb611afe487ff032921f" - "750f" }, - { NID_secp521r1, - "000001c35823e440a9363ab98d9fc7a7bc0c0532dc7977a79165599bf1a9cc64" - "c00fb387b42cca365286e8430360bfad3643bc31354eda50dc936c329ecdb609" - "05c40fcb", - "000000d9e7f433531e44df4f6d514201cbaabb06badd6783e01111726d815531" - "d233c5cdb722893ffbb2027259d594de77438809738120c6f783934f926c3fb6" - "9b40c409", - "000001fd90e3e416e98aa3f2b6afa7f3bf368e451ad9ca5bd54b5b14aee2ed67" - "23dde5181f5085b68169b09fbec721372ccf6b284713f9a6356b8d560a8ff78c" - "a3737c88", - "000001ebea1b10d3e3b971b7efb69fc878de11c7f472e4e4d384c31b8d6288d8" - "071517acade9b39796c7af5163bcf71aeda777533f382c6cf0a4d9bbb938c85f" - "44b78037", - "0000016b0e3e19c2996b2cbd1ff64730e7ca90edca1984f9b2951333535e5748" - "baa34a99f61ff4d5f812079e0f01e87789f34efdad8098015ee74a4f846dd190" - "d16dc6e1", - "0100c8935969077bae0ba89ef0df8161d975ec5870ac811ae7e65ca5394efba4" - "f0633d41bf79ea5e5b9496bbd7aae000b0594baa82ef8f244e6984ae87ae1ed1" - "24b7" }, - { NID_secp521r1, - "000000093057fb862f2ad2e82e581baeb3324e7b32946f2ba845a9beeed87d69" - "95f54918ec6619b9931955d5a89d4d74adf1046bb362192f2ef6bd3e3d2d04dd" - "1f87054a", - "000000aa3fb2448335f694e3cda4ae0cc71b1b2f2a206fa802d7262f19983c44" - "674fe15327acaac1fa40424c395a6556cb8167312527fae5865ecffc14bbdc17" - "da78cdcf", - "0000009012ecfdadc85ced630afea534cdc8e9d1ab8be5f3753dcf5f2b09b40e" - "da66fc6858549bc36e6f8df55998cfa9a0703aecf6c42799c245011064f530c0" - "9db98369", - "000000234e32be0a907131d2d128a6477e0caceb86f02479745e0fe245cb332d" - "e631c078871160482eeef584e274df7fa412cea3e1e91f71ecba8781d9205d48" - "386341ad", - "000001cf86455b09b1c005cffba8d76289a3759628c874beea462f51f30bd581" - "e3803134307dedbb771b3334ee15be2e242cd79c3407d2f58935456c6941dd9b" - "6d155a46", - "017f36af19303841d13a389d95ec0b801c7f9a679a823146c75c17bc44256e9a" - "d422a4f8b31f14647b2c7d317b933f7c2946c4b8abd1d56d620fab1b5ff1a3ad" - "c71f" }, - { NID_secp521r1, - "00000083192ed0b1cb31f75817794937f66ad91cf74552cd510cedb9fd641310" - "422af5d09f221cad249ee814d16dd7ac84ded9eacdc28340fcfc9c0c06abe30a" - "2fc28cd8", - "0000002212ed868c9ba0fb2c91e2c39ba93996a3e4ebf45f2852d0928c48930e" - "875cc7b428d0e7f3f4d503e5d60c68cb49b13c2480cd486bed9200caddaddfe4" - "ff8e3562", - "000001b5ff847f8eff20b88cfad42c06e58c3742f2f8f1fdfd64b539ba48c259" - "26926bd5e332b45649c0b184f77255e9d58fe8afa1a6d968e2cb1d4637777120" - "c765c128", - "000001de3dc9263bc8c4969dc684be0eec54befd9a9f3dba194d8658a789341b" - "f0d78d84da6735227cafaf09351951691197573c8c360a11e5285712b8bbdf5a" - "c91b977c", - "000000812de58cd095ec2e5a9b247eb3ed41d8bef6aeace194a7a05b65aa5d28" - "9fbc9b1770ec84bb6be0c2c64cc37c1d54a7f5d71377a9adbe20f26f6f2b544a" - "821ea831", - "00062f9fc29ae1a68b2ee0dcf956cbd38c88ae5f645eaa546b00ebe87a7260bf" - "724be20d34b9d02076655c933d056b21e304c24ddb1dedf1dd76de611fc4a234" - "0336" }, - { NID_secp521r1, - "000001a89b636a93e5d2ba6c2292bf23033a84f06a3ac1220ea71e806afbe097" - "a804cc67e9baa514cfb6c12c9194be30212bf7aae7fdf6d376c212f0554e6564" - "63ffab7e", - "00000182efcaf70fc412d336602e014da47256a0b606f2addcce8053bf817ac8" - "656bb4e42f14c8cbf2a68f488ab35dcdf64056271dee1f606a440ba4bd4e5a11" - "b8b8e54f", - "0000011a6347d4e801c91923488354cc533e7e35fddf81ff0fb7f56bb0726e0c" - "29ee5dcdc5f394ba54cf57269048aab6e055895c8da24b8b0639a742314390cc" - "04190ed6", - "000000fe30267f33ba5cdefc25cbb3c9320dad9ccb1d7d376644620ca4fadee5" - "626a3cede25ad254624def727a7048f7145f76162aa98042f9b123b2076f8e8c" - "f59b3fdf", - "0000001145dc6631953b6e2945e94301d6cbb098fe4b04f7ee9b09411df104dc" - "82d7d79ec46a01ed0f2d3e7db6eb680694bdeb107c1078aec6cabd9ebee3d342" - "fe7e54df", - "0128ab09bfec5406799e610f772ba17e892249fa8e0e7b18a04b9197034b250b" - "48294f1867fb9641518f92766066a07a8b917b0e76879e1011e51ccbd9f540c5" - "4d4f" }, - { NID_secp521r1, - "0000017200b3f16a68cbaed2bf78ba8cddfb6cffac262bba00fbc25f9dc72a07" - "ce59372904899f364c44cb264c097b647d4412bee3e519892d534d9129f8a28f" - "7500fee7", - "000000baba8d672a4f4a3b63de48b96f56e18df5d68f7d70d5109833f43770d6" - "732e06b39ad60d93e5b43db8789f1ec0aba47286a39ea584235acea757dbf13d" - "53b58364", - "00000022b6d2a22d71dfaa811d2d9f9f31fbed27f2e1f3d239538ddf3e4cc8c3" - "9a330266db25b7bc0a9704f17bde7f3592bf5f1f2d4b56013aacc3d8d1bc02f0" - "0d3146cc", - "000000ba38cfbf9fd2518a3f61d43549e7a6a6d28b2be57ffd3e0faceb636b34" - "ed17e044a9f249dae8fc132e937e2d9349cd2ed77bb1049ceb692a2ec5b17ad6" - "1502a64c", - "0000001ec91d3058573fa6c0564a02a1a010160c313bc7c73510dc983e546168" - "2b5be00dbce7e2c682ad73f29ca822cdc111f68fabe33a7b384a648342c3cdb9" - "f050bcdb", - "0101e462e9d9159968f6440e956f11dcf2227ae4aea81667122b6af9239a291e" - "b5d6cf5a4087f358525fcacfa46bb2db01a75af1ba519b2d31da33eda87a9d56" - "5748" }, - { NID_secp521r1, - "0000004efd5dbd2f979e3831ce98f82355d6ca14a5757842875882990ab85ab9" - "b7352dd6b9b2f4ea9a1e95c3880d65d1f3602f9ca653dc346fac858658d75626" - "f4d4fb08", - "00000061cf15dbdaa7f31589c98400373da284506d70c89f074ed262a9e28140" - "796b7236c2eef99016085e71552ff488c72b7339fefb7915c38459cb20ab85ae" - "c4e45052", - "0000005bacfff268acf6553c3c583b464ea36a1d35e2b257a5d49eb3419d5a09" - "5087c2fb4d15cf5bf5af816d0f3ff7586490ccd3ddc1a98b39ce63749c6288ce" - "0dbdac7d", - "00000036e488da7581472a9d8e628c58d6ad727311b7e6a3f6ae33a8544f34b0" - "9280249020be7196916fafd90e2ec54b66b5468d2361b99b56fa00d7ac37abb8" - "c6f16653", - "0000011edb9fb8adb6a43f4f5f5fdc1421c9fe04fc8ba46c9b66334e3af927c8" - "befb4307104f299acec4e30f812d9345c9720d19869dbfffd4ca3e7d2713eb5f" - "c3f42615", - "0141d6a4b719ab67eaf04a92c0a41e2dda78f4354fb90bdc35202cc7699b9b04" - "d49616f82255debf7bbec045ae58f982a66905fcfae69d689785e38c868eb4a2" - "7e7b" }, - { NID_secp521r1, - "00000129891de0cf3cf82e8c2cf1bf90bb296fe00ab08ca45bb7892e0e227a50" - "4fdd05d2381a4448b68adff9c4153c87eacb78330d8bd52515f9f9a0b58e85f4" - "46bb4e10", - "0000009edd679696d3d1d0ef327f200383253f6413683d9e4fcc87bb35f112c2" - "f110098d15e5701d7ceee416291ff5fed85e687f727388b9afe26a4f6feed560" - "b218e6bb", - "0000008e2c93c5423876223a637cad367c8589da69a2d0fc68612f31923ae502" - "19df2452e7cc92615b67f17b57ffd2f52b19154bb40d7715336420fde2e89fee" - "244f59dc", - "000000fa3b35118d6c422570f724a26f90b2833b19239174cea081c53133f64d" - "b60d6940ea1261299c04c1f4587cdb0c4c39616479c1bb0c146799a118032dcf" - "98f899c0", - "00000069f040229006151fa32b51f679c8816f7c17506b403809dc77cd58a2ae" - "c430d94d13b6c916de99f355aa45fcfbc6853d686c71be496a067d24bfaea481" - "8fc51f75", - "00345e26e0abb1aac12b75f3a9cf41efe1c336396dffa4a067a4c2cfeb878c68" - "b2b045faa4e5b4e6fa4678f5b603c351903b14bf9a6a70c439257199a640890b" - "61d1" }, - { NID_secp521r1, - "000001a3c20240e59f5b7a3e17c275d2314ba1741210ad58b71036f8c83cc1f6" - "b0f409dfdd9113e94b67ec39c3291426c23ffcc447054670d2908ff8fe67dc23" - "06034c5c", - "000001d2825bfd3af8b1e13205780c137fe938f84fde40188e61ea02cead81ba" - "dfdb425c29f7d7fb0324debadc10bbb93de68f62c35069268283f5265865db57" - "a79f7bf7", - "00000004d49d39d40d8111bf16d28c5936554326b197353eebbcf47545393bc8" - "d3aaf98f14f5be7074bfb38e6cc97b989754074daddb3045f4e4ce745669fdb3" - "ec0d5fa8", - "0000012ec226d050ce07c79b3df4d0f0891f9f7adf462e8c98dbc1a2a14f5e53" - "a3f5ad894433587cc429a8be9ea1d84fa33b1803690dae04da7218d30026157f" - "c995cf52", - "0000004837dfbf3426f57b5c793269130abb9a38f618532211931154db4eeb9a" - "ede88e57290f842ea0f2ea9a5f74c6203a3920fe4e305f6118f676b154e1d75b" - "9cb5eb88", - "006fe9de6fb8e672e7fd150fdc5e617fabb0d43906354ccfd224757c7276f7a1" - "010091b17ed072074f8d10a5ec971eb35a5cb7076603b7bc38d432cbc059f80f" - "9488" }, - { NID_secp521r1, - "0000007e2d138f2832e345ae8ff65957e40e5ec7163f016bdf6d24a2243daa63" - "1d878a4a16783990c722382130f9e51f0c1bd6ff5ac96780e48b68f5dec95f42" - "e6144bb5", - "000000b0de5c896791f52886b0f09913e26e78dd0b69798fc4df6d95e3ca708e" - "cbcbcce1c1895f5561bbabaae372e9e67e6e1a3be60e19b470cdf673ec1fc393" - "d3426e20", - "0000011a5d1cc79cd2bf73ea106f0e60a5ace220813b53e27b739864334a07c0" - "3367efda7a4619fa6eef3a9746492283b3c445610a023a9cc49bf4591140384f" - "ca5c8bb5", - "000000eb07c7332eedb7d3036059d35f7d2288d4377d5f42337ad3964079fb12" - "0ccd4c8bd384b585621055217023acd9a94fcb3b965bfb394675e788ade41a1d" - "e73e620c", - "000000491a835de2e6e7deb7e090f4a11f2c460c0b1f3d5e94ee8d751014dc72" - "0784fd3b54500c86ebaef18429f09e8e876d5d1538968a030d7715dde99f0d8f" - "06e29d59", - "01e4e759ecedce1013baf73e6fcc0b92451d03bdd50489b78871c333114990c9" - "ba6a9b2fc7b1a2d9a1794c1b60d9279af6f146f0bbfb0683140403bfa4ccdb52" - "4a29" }, - { NID_secp521r1, - "000000118c36022209b1af8ebad1a12b566fc48744576e1199fe80de1cdf851c" - "df03e5b9091a8f7e079e83b7f827259b691d0c22ee29d6bdf73ec7bbfd746f2c" - "d97a357d", - "000000da5ff4904548a342e2e7ba6a1f4ee5f840411a96cf63e6fe622f22c13e" - "614e0a847c11a1ab3f1d12cc850c32e095614ca8f7e2721477b486e9ff403729" - "77c3f65c", - "0000010c908caf1be74c616b625fc8c1f514446a6aec83b5937141d6afbb0a8c" - "7666a7746fa1f7a6664a2123e8cdf6cd8bf836c56d3c0ebdcc980e43a186f938" - "f3a78ae7", - "00000031890f4c7abec3f723362285d77d2636f876817db3bbc88b01e773597b" - "969ff6f013ea470c854ab4a7739004eb8cbea69b82ddf36acadd406871798ecb" - "2ac3aa7f", - "000000d8b429ae3250266b9643c0c765a60dc10155bc2531cf8627296f4978b6" - "640a9e600e19d0037d58503fa80799546a814d7478a550aa90e5ebeb052527fa" - "aeae5d08", - "0163c9191d651039a5fe985a0eea1eba018a40ab1937fcd2b61220820ee8f230" - "2e9799f6edfc3f5174f369d672d377ea8954a8d0c8b851e81a56fda95212a657" - "8f0e" }, - { NID_secp521r1, - "000001780edff1ca1c03cfbe593edc6c049bcb2860294a92c355489d9afb2e70" - "2075ade1c953895a456230a0cde905de4a3f38573dbfcccd67ad6e7e93f0b558" - "1e926a5d", - "000000a5481962c9162962e7f0ebdec936935d0eaa813e8226d40d7f6119bfd9" - "40602380c86721e61db1830f51e139f210000bcec0d8edd39e54d73a9a129f95" - "cd5fa979", - "000001b37d6b7288de671360425d3e5ac1ccb21815079d8d73431e9b74a6f0e7" - "ae004a357575b11ad66642ce8b775593eba9d98bf25c75ef0b4d3a2098bbc641" - "f59a2b77", - "000000189a5ee34de7e35aefeaeef9220c18071b4c29a4c3bd9d954458bd3e82" - "a7a34da34cff5579b8101c065b1f2f527cf4581501e28ef5671873e65267733d" - "003520af", - "000001eb4bc50a7b4d4599d7e3fa773ddb9eb252c9b3422872e544bdf75c7bf6" - "0f5166ddc11eb08fa7c30822dabaee373ab468eb2d922e484e2a527fff2ebb80" - "4b7d9a37", - "015d613e267a36342e0d125cdad643d80d97ed0600afb9e6b9545c9e64a98cc6" - "da7c5aaa3a8da0bdd9dd3b97e9788218a80abafc106ef065c8f1c4e1119ef58d" - "298b" }, - { NID_secp521r1, - "0000016dacffa183e5303083a334f765de724ec5ec9402026d4797884a9828a0" - "d321a8cfac74ab737fe20a7d6befcfc73b6a35c1c7b01d373e31abc192d48a42" - "41a35803", - "0000011e5327cac22d305e7156e559176e19bee7e4f2f59e86f1a9d0b6603b6a" - "7df1069bde6387feb71587b8ffce5b266e1bae86de29378a34e5c74b6724c4d4" - "0a719923", - "000000f2661ac762f60c5fff23be5d969ccd4ec6f98e4e72618d12bdcdb9b410" - "2162333788c0bae59f91cdfc172c7a1681ee44d96ab2135a6e5f3415ebbcd551" - "65b1afb0", - "000000a8e25a6902d687b4787cdc94c364ac7cecc5c495483ed363dc0aa95ee2" - "bd739c4c4d46b17006c728b076350d7d7e54c6822f52f47162a25109aaaba690" - "cab696ec", - "00000168d2f08fe19e4dc9ee7a195b03c9f7fe6676f9f520b6270557504e72ca" - "4394a2c6918625e15ac0c51b8f95cd560123653fb8e8ee6db961e2c4c62cc54e" - "92e2a2a9", - "014d6082a3b5ced1ab8ca265a8106f302146c4acb8c30bb14a4c991e3c82a973" - "1288bdb91e0e85bda313912d06384fc44f2153fb13506fa9cf43c9aab5750988" - "c943" }, - { NID_secp521r1, - "000000a091421d3703e3b341e9f1e7d58f8cf7bdbd1798d001967b801d1cec27" - "e605c580b2387c1cb464f55ce7ac80334102ab03cfb86d88af76c9f4129c01be" - "dd3bbfc4", - "0000008c9c577a8e6fc446815e9d40baa66025f15dae285f19eb668ee60ae9c9" - "8e7ecdbf2b2a68e22928059f67db188007161d3ecf397e0883f0c4eb7eaf7827" - "a62205cc", - "000000f430ca1261f09681a9282e9e970a9234227b1d5e58d558c3cc6eff44d1" - "bdf53de16ad5ee2b18b92d62fc79586116b0efc15f79340fb7eaf5ce6c44341d" - "cf8dde27", - "0000006c1d9b5eca87de1fb871a0a32f807c725adccde9b3967453a71347d608" - "f0c030cd09e338cdecbf4a02015bc8a6e8d3e2595fe773ffc2fc4e4a55d0b1a2" - "cc00323b", - "000001141b2109e7f4981c952aa818a2b9f6f5c41feccdb7a7a45b9b4b672937" - "771b008cae5f934dfe3fed10d383ab1f38769c92ce88d9be5414817ecb073a31" - "ab368ccb", - "0020c00747cb8d492fd497e0fec54644bf027d418ab686381f109712a99cabe3" - "28b9743d2225836f9ad66e5d7fed1de247e0da92f60d5b31f9e47672e57f7105" - "98f4" }, - { NID_secp521r1, - "0000004f38816681771289ce0cb83a5e29a1ab06fc91f786994b23708ff08a08" - "a0f675b809ae99e9f9967eb1a49f196057d69e50d6dedb4dd2d9a81c02bdcc8f" - "7f518460", - "0000009efb244c8b91087de1eed766500f0e81530752d469256ef79f6b965d8a" - "2232a0c2dbc4e8e1d09214bab38485be6e357c4200d073b52f04e4a16fc6f524" - "7187aecb", - "0000005dc33aeda03c2eb233014ee468dff753b72f73b00991043ea353828ae6" - "9d4cd0fadeda7bb278b535d7c57406ff2e6e473a5a4ff98e90f90d6dadd25100" - "e8d85666", - "000000c825ba307373cec8dd2498eef82e21fd9862168dbfeb83593980ca9f82" - "875333899fe94f137daf1c4189eb502937c3a367ea7951ed8b0f3377fcdf2922" - "021d46a5", - "0000016b8a2540d5e65493888bc337249e67c0a68774f3e8d81e3b4574a01251" - "65f0bd58b8af9de74b35832539f95c3cd9f1b759408560aa6851ae3ac7555347" - "b0d3b13b", - "00c2bfafcd7fbd3e2fd1c750fdea61e70bd4787a7e68468c574ee99ebc47eede" - "f064e8944a73bcb7913dbab5d93dca660d216c553622362794f7a2acc71022bd" - "b16f" }, - { NID_secp521r1, - "000001a32099b02c0bd85371f60b0dd20890e6c7af048c8179890fda308b359d" - "bbc2b7a832bb8c6526c4af99a7ea3f0b3cb96ae1eb7684132795c478ad6f962e" - "4a6f446d", - "0000017627357b39e9d7632a1370b3e93c1afb5c851b910eb4ead0c9d387df67" - "cde85003e0e427552f1cd09059aad0262e235cce5fba8cedc4fdc1463da76dcd" - "4b6d1a46", - "000000df14b1f1432a7b0fb053965fd8643afee26b2451ecb6a8a53a655d5fbe" - "16e4c64ce8647225eb11e7fdcb23627471dffc5c2523bd2ae89957cba3a57a23" - "933e5a78", - "0000004e8583bbbb2ecd93f0714c332dff5ab3bc6396e62f3c560229664329ba" - "a5138c3bb1c36428abd4e23d17fcb7a2cfcc224b2e734c8941f6f121722d7b6b" - "94154576", - "000001cf0874f204b0363f020864672fadbf87c8811eb147758b254b74b14fae" - "742159f0f671a018212bbf25b8519e126d4cad778cfff50d288fd39ceb0cac63" - "5b175ec0", - "01aaf24e5d47e4080c18c55ea35581cd8da30f1a079565045d2008d51b12d0ab" - "b4411cda7a0785b15d149ed301a3697062f42da237aa7f07e0af3fd00eb1800d" - "9c41" } -#ifndef OPENSSL_NO_EC2M - /* curves over binary fields go here */ - , { NID_sect163k1, - "0000000574236f1428c432130946783a5b3aabb6c27ea5d6", - "00000007908c251b8da021cbac281f123f7af4fac5b3dbb8", - "6653b6077398fadc7bf5e60158170148c3dc4527", - "000000071f8b2877d6027d9c1ade4244f2dea12692ef23d5", - "00000005c15ee776221c72b84b347ce383f38067b89c3e9a", - "04325bff38f1b0c83c27f554a6c972a80f14bc23bc" }, - { NID_sect163k1, - "00000001699744092fe2b5fe7ecbf6987b7aea0a06fd2cb0", - "000000035de441df9408d91f0e021df8f0526b8063031495", - "00000003aef44754d0ca97d42b4e97aa92156263c0e078f6", - "00000001b0108c786bf4d340f0505bdfc7d45b514611ad94", - "000000022c9c39d5fb9456b8a2221cea4f058f6a8d2cd84a", - "05f9ac3a3dd88429600958386c55bef4b1aa5f0c24" }, - { NID_sect163k1, - "00000002965db159171f5cb7e7a1bcc61611aeaca8c52c9b", - "00000006871d1e9c1fe845268076a995803a6d49cd075554", - "000000031172342e6d37cc1e062a4494c39cba48f9ad9a8c", - "00000003a27ecaec2b66feac2040f6890128bd0058d31924", - "000000014007e3209b6d7127b0f393e5e58b1590b9f40be2", - "022e0290eda5d348894129f7455d1c766d32d5c2c2" }, - { NID_sect163k1, - "000000055b68c0c2c246fe0f2cd5484b58814c65213ea541", - "0000000539c11d2592a2f6393b6e86c54df909b95fe0d5a8", - "000000032a511cdcd4bfc567ceac8c24ed04e8894df78ddf", - "00000006978dacaa47d8f3bc90b41ec7f4f8ac79a86ddd07", - "00000007f8b0ef4270760376bc2d5faed83da7872631d09f", - "037f659f430009fcdae4e9f6e6316b0f5dbb268212" }, - { NID_sect163k1, - "00000006b8ef5a62d3b636a5a76bfeb1ef8ff4d8b3d9e2fc", - "0000000675a757266718398d8af66d2971798478e2f37d28", - "00000002c6f64fe609eb8eeb5b53fab6308898e63ff2e3f6", - "0000000549e1a82ec284bf77d528627e52d832e236c92ad3", - "000000019883aa9b458b35bd544d6882812150c1497d31d4", - "00503bbb9b62f50ae7a8dfd74a1741826f09290651" }, - { NID_sect163k1, - "000000056c4a3586acb03099d52b2cd4ac59269cf51b8730", - "00000002426561cbd9da1b23a6003de0e5f7c4a065a5c2b8", - "000000026a56867513ddd8ca94d7923baa1f7fb00daa38fa", - "00000006c28a40dc4e5503d2c4b8ab0b6b7046e8e25ac09f", - "0000000121911654a5836005d8036d976585ff1d831e587b", - "012cf17799fdefa2940b18d56e80d44414c5b13884" }, - { NID_sect163k1, - "0000000741c69a4edb386c94f819d1b5ddd0281e4ff29765", - "00000000d32f972abac91be85a709eba07f5d16215ae602d", - "0000000386811079c8021c2d79f4de952cb2e599c42e19ed", - "000000060aa42a62e21eea37e362b4d3de837f0c49d3ac13", - "000000069b20d6fd16d13b1883df05629ac7d1b82386b344", - "062a2f926ab435ac14e05d44c27b46b6820b713aee" }, - { NID_sect163k1, - "00000001ef47795fb0e380405ab5e88defc3ced9a92514a6", - "00000000be6181d7fc03ca8bfdf11869cea28cfa0e5f5f64", - "e46e9c965268647f2048474c7b1a54dffe728f1f", - "00000007a984ead440310cef2e1338972ff2dddb65cac3d2", - "0000000333c1a93427fe6ac502760b7778898a8bb6a40ad9", - "0399b9294e895486bdefbaad7a729353ce09586357" }, - { NID_sect163k1, - "0000000374d7f9ba8cda8a68de7279d3ff8674032fd47c02", - "00000003ede995c3a4e8a6fe21cd1e4cd4ca3812c0d692a5", - "000000027334971405b0461c3ede67f2ba336734451a8378", - "0000000767c31ee9303b1b2cd3059f81507ef304ebd3102c", - "0000000251e0d430dc3f63f3a37bab1e7a957652cf67e22c", - "022325a9a769a902c2e64c80a1d35429ced42ae0a4" }, - { NID_sect163k1, - "00000006577df54e11c7e76202f94f564e6137b23ce6e441", - "000000068936600aadcb25fd4024ed3e845b2bbf807280e6", - "000000019bb480739011235c6d5c6e74d6a7bb4f20f61b7a", - "0000000093549075704d79dae772317dd65244fa772569eb", - "00000002a8a2821dd39d7e7653ca71cfc1a9ed857801a39b", - "051392d5377016358405030b48744003db66440a2d" }, - { NID_sect163k1, - "0000000261d15345ceb492229a8d74597e7dfd19aeb6848a", - "0000000114a122ce28ca15620f7b40a1f26b4234c956bdc1", - "f4edb58bcc3d6e9d317229420a733281eccff1cf", - "000000027183609b7593b1845365c081d45ff66c9ab5e370", - "000000069b981236fe930947b6b77f374282a18e4be993cb", - "045dac076e79de2fc631315465d3ef6245f26647e5" }, - { NID_sect163k1, - "000000070e380f49370a0027954a4ea880bc1929b28c5329", - "000000046fe3b454af9420a811f1e15f774da5ae1a40b459", - "00000001b990491a12fdee231aa2a116e1e3c1c91d0fd478", - "00000003da869d09c4e4545ac1689fc72316012632d0abd9", - "00000002c820f40310e5ffd2f8bf439fba879bb2ef621b2a", - "014f7a46847ed6a7ff605b0e52c616e4ad3f0d5029" }, - { NID_sect163k1, - "00000006e60af77419b9fe0fc5c79ca1a22a1011402405b6", - "000000069bca34005b578cd7a7a6929bd3f6ce29943b5ed9", - "e829b9942fd96487f6012908fe04f6d8eaaf1966", - "00000005ab2074c04df57160167735f7fc2d8f629d34ff18", - "000000012e9da6d05bb3e2acbe5ba4afb4a0dd72db07d6ac", - "00eacabc34555956995623e60482e5c118e34e2094" }, - { NID_sect163k1, - "00000004f750e27500e10f0a176b83f14bc26d6bd71ebd74", - "000000039e5009067c0ee2c8f55b7e84da7a391f08af7504", - "0000000157ce8f0b6ce92e426ec99f223ad82763e4bd3ff3", - "00000005d3989cca4ae732de93672b25c9260861b4c0dce3", - "0000000436a331ead24f2807b55260f9dc3de668cfbfebb7", - "0414a622645107f115576f51cdf39d1393a2d7851f" }, - { NID_sect163k1, - "00000002ab9f5ba94102d21a706761eac0092190f1cdad04", - "00000004addd77e199c132d18ac541b117748d2319db7fe5", - "0000000379885f45f2d707be1c11d86c41bada493b2a5603", - "00000005ae31cb29b31d24f5f94c30e9c02f07f38bff0ac8", - "00000004d8d8e39bf87f058543dc8990a91214da416cc558", - "056be002daff11c4066e10acd046a85e170fa4c122" }, - { NID_sect163k1, - "000000043d25d2de9293b84d351a33cb1a52f5930a4c8b76", - "00000003d259d8236e9c8d6437f41e6d54611c52238fe2d5", - "ba8c5864db3efd768b9376fc2b6c1f85f46f6af2", - "000000062f622149823f255b4f86906666f3a3556af080ea", - "0000000274ca32c10f9add61a026d20ad3ad56b17fb06a46", - "021fef8e473daeda8ef6bf07814d7b9b613e3076a3" }, - { NID_sect163k1, - "00000000560e1a421865118bea16cdad6b67aba384ef387b", - "000000058b213ec2ab3942f8f6ad60a956955b589066b856", - "00000003e5080484d3730b2248ccc48260d4bd1857605ad1", - "000000058aea6e40b8cb25e6622a7be4ff01b79c92de72a5", - "000000043f6776b6deff3d29b4c703899d705c7fecf525c4", - "03a287fd1cca68db47a3c74c12627fc3728568dd66" }, - { NID_sect163k1, - "000000038e485de92e41f1caca6c0eb9d811a5aca89bf345", - "0000000331a1677c46a68e964811a9cc5e4e53ea71e23129", - "5d052ba1abea724978caef1879245672d5aef891", - "000000036b84a77337a9de5c1dd7ae3c899381382f0fffa4", - "000000056d4ac39fe881fdb8e60d4559658aaade45663ee5", - "029558b41b8b92387bc22c868f51bb7acb6e4ee2e3" }, - { NID_sect163k1, - "000000064259e500476dda3e97e25e491d466c2b7958bd49", - "00000003c2e53281393641a518d1dceffabee8b29bde1402", - "000000039180187a9eddcf38dc264f055b07d20b9f9a8bc4", - "00000004b292d1fa09dfc5e6a3ad99fd02feb74d480e34f2", - "00000006e1888009a0a0491c0be6abfac943d377f0b4863b", - "0530020c8f6362312bfbe5c1c605b40dc2e032e81c" }, - { NID_sect163k1, - "00000003714276997b4478e2d8b59af5f2e63e22bc4c31e4", - "0000000673f28d962abfedee62eab47c3b4579a1e5168336", - "000000016d37862b195763c6a01d5e39b9459a32507c2b21", - "000000033440e460c475f2058a767ec466ca18bce41f830e", - "0000000372aee323d063fa89acbffbf55024ae24e4929f19", - "0521673006a1d9608911d54536e122d809e919d804" }, - { NID_sect163k1, - "0000000275ec15f27dd2da6e44dfe6235472d5bd3a2502f8", - "000000058fd02262b27c185dde26b2c77d5a4f4d50dc9928", - "6c658794b039c820a8b033008fa8ac7556bcaec3", - "00000004cbfb286691e415081a1785ec6b0aacdb1d231d1d", - "00000005dd6acfe91d68a8ec23686478c0ee8c89277aef14", - "0460579beca16cccce314ff3040de4785336fc358c" }, - { NID_sect163k1, - "0000000233af36103039226f416dd22e1a26b73f9093d38a", - "0000000734258a175c97768a9f72b824b99a91f5cf8e3d96", - "0000000169c8da22c35a855495047a104be00b1575b652ab", - "000000045efed9c8bd2a4e429588f344f49d1e63e668bd01", - "000000025d1af85ac21d59822d7df8f0e4bebadf3b5d4401", - "05ba66964483fe473ccbd00c37ad3ba40cc5969f62" }, - { NID_sect163k1, - "00000006d032152240f28be7f74df8f6d2a450c1229a5a95", - "00000007aadac77cc4448985d1794636bc1d582f3d101a33", - "032fc790864632630c49a29e9ad0fb6d10f2b58c", - "0000000779cfb3e17c902a2584ed3382a8bed8262db98424", - "000000004af273875f8a2ab9a94ac0d1e4a23390b2bb505c", - "0277c4a76e1613b2ede699a675c1645a786075009e" }, - { NID_sect163k1, - "00000001f8581ec61df1409227aab7a015f2c71d29e3716c", - "00000001c1f51cc4185b68a260e31b4b00c03a4403f65c25", - "00000003c1de5bb40e70933ed7db84ce2cb468cbba299b3a", - "00000005ffe0f16018bd4bdee5f73bfdad04d713f2216f50", - "000000042361c881f0081cb0544efab0c3b34f59eaadeec4", - "03c6481dac387af39e8c09a553068ac496eea03691" }, - { NID_sect163k1, - "00000002ba22fbdaaaa806c8570f14ad4c882a610ccb8d84", - "00000006d4438e528ca887b05bd2564df93bef9bf660da78", - "00000003881275ba48bea0becc0211903467f5d0aae321aa", - "0000000776e40fe7149985337ef1b6c9b830cb3608752aa6", - "000000058e6ecbb27b0b2d3cd0e3a7ba538de3576fd5b9f6", - "07b5d096d06d41c3ad6458cc93417e6facc99bc7b8" }, - { NID_sect233k1, - "000001f40e34b3ed4a1b2d40c056fb75f2ad543c897cfd82f542cf746a0f202f", - "000000c130a1abe92bc4c977c800777996ccc50b90df991a2e81dd515c188599", - "000000135a5b8c3ce047fbc5df26277d3bf83ac33ddadb5cf4a050ca82be48f0", - "000001a53e5c138b3d83905d563aa1db01274633c986b52f78225a92e33e7952", - "000000ecabd3e2e26729a965604e560ed4498a22b31c39642e1cf99b1dde3ec7", - "00a822b141ca1f5ad32899e68c54d1fec3df8100df485ebf1c5868a9ac89" }, - { NID_sect233k1, - "000000c864c2a462a9363a4ac3d818211bca0369472d186288a27567433bda45", - "000000689d4d0006eba054dc69fcc0786780fb5f74d3989213504e2f6e666980", - "00000051be6fbcd4878c55439b0bcbbe5ea8e84bc9db89e70a8e8ebf34782da8", - "000001c5a1e5d3ee516e3ede723fa2d5cd3456b116326303c5ee49273a5604c4", - "000000568d0fe7130295541bfa265074147546e9733736ba007559d716d8e094", - "01662682bec2dfae05e38587c8e6a4d18aef4cb3416989c47c11bbe2810f" }, - { NID_sect233k1, - "000001782d82fcd211c0247c87e657efcc5d2ff6b05eb935330a53903fb3bfa3", - "000000cce830a515d690ab98149579ad3481384859e565d07fa61f50ebd669a2", - "0000002ecca595e55e6c85c5af78c59540fdb749003ff4ec361c38b48e7da6bc", - "0000005a48fac476c31cad0c68e64e65e687ae4418fb5d3b4bb2abb990dd0de4", - "0000002d9add706626f2859ece110df2dde89faf3e8aac433e2595e23c274082", - "00215d511cb95e0e073ee999908a7a844afd75c9acb7a9d724f7fd322b01" }, - { NID_sect233k1, - "0000008d800d3767abf5731695754ee8829b858ff4eb604a448ad66490b49c19", - "000001bc0f0339649ad4d7b7cff3fca9e965a38625e8f45bc9602a33c0798a33", - "0000006a7c03892df184d56cdccb9d5e9a16483a6c9388ae212aa926c8fdfb5e", - "0000014aaf880e81db69aba2b403bbda7f361e3339b483ce2699f30bf5281ead", - "000001b71559bd7d9384e517b87f1138a696fbceb3510d8c41c2158d4aa3e5b2", - "01394e02c70104f2a5308b2d101b02c70ef2d13540602b8e8f82dc6d569f" }, - { NID_sect233k1, - "0000014a3e121add7a5267f5cad204b3f49215084786b23f8d94d9fda02e0f19", - "000000394fea175dad9b34d525434654d0c86637926cac3a3292a2e4a514b5f5", - "0000002e2ff8791bc64c00f3b0f1d5d5cfb9ddb3b193814599f7dbddedefcfa3", - "0000018045cc9e65f6e275e322a62c18efe2d00cf93995feb53561273a3f1306", - "00000164e0073c0d4b3e12e22f837bd3fec421e3bb09e0c0dd997422830f6403", - "008556a4c3a8906ddbcb946099ca5dbe7bdb6cd8f37fbb50c96fcefed32d" }, - { NID_sect233k1, - "00000089667888f8425c5a623134622f1ea9d9af36df9772c410d6e31f2b4db8", - "00000084430fa47164d1c0eb97042a44cbef400bbb545faea4ef49ba5e3bef42", - "00000066972e71566746f2f76c87793774054ea275e2a7e27ab7c2d05c5f2412", - "00000020226dd73e318e4fc8d49dd43e59e260193d1bb248cbe4c06b4d6b8389", - "000000ed12a4f389696ab31c93ea3ec4d8eaf18be097fc9152e2c42b73ff4528", - "004ea6e0e34ec7c9bbad47f0f6f8ec0608e736d91e0e56cf3e5cffe8c370" }, - { NID_sect233k1, - "00000164da099225eb3c641fc83c77204a396eab9495b12a22f68e7a4b8399d5", - "000000cd98f2704c7494e6d20375e74528c8f56f867e9dd763298142ea01724b", - "0000001e53baa16bc0262b5329a711b0eb188a1bca7ef4b5c85061225d41d4a9", - "0000007d6d785fa323174eb9cde5b705428e4019244835bc94702f280c25ffe5", - "0000019aa0ef433074c484d14e611372f03ef8912f1a8246ceb1e90c817db3db", - "0160d0b9b92a4acd089738fd489ae39734551e888fd05a020ce26498270a" }, - { NID_sect233k1, - "00000033a8b08a3c33c343032ced1c0f5e826f932dee879ec1607a2af5d46298", - "0000006c4f27a49b51a89f6d0960160ba5b8fec08dd2cd4bc909a490aebe4f7b", - "00000042a8032a11d1657755c49e477033b0d341da2fe993a4577b41a40cee1a", - "000001f6629697da620d597fc1f51c83374213f37e952fc117ee65a9e766aefb", - "0000002b36dedc787ac951d2879d72414da2e7575a6cd7c42e0fa20b32d461f7", - "0038381b342efaa70bb79adb76ceb775de5f45f863559ecaee1ddbbd0313" }, - { NID_sect233k1, - "000000cfe15f861aa0153485f38ac033df9c8d812afde167b8918bb94a08d963", - "000001bebf067f85126d114932162164201b1374bf1840aa11d5e250639d0608", - "00000043e5770978195f917152f057ba1fb0156d894d32e8bb54c7f62f7340a6", - "000001487d1fdabccd7d89da25685b042980ab170aee3c11f31180e3b7c50a4a", - "0000017e383dd65a1ec8a409007f75035e5b161335d9c7756ed970490fbd171a", - "0122169f1dff445ec663270375dfe914016c38ce6c2d40d0b8098abc60ac" }, - { NID_sect233k1, - "000000763e286be50740b7f8bd78fa70bcac880df3d7371eb33fda2453b3ed23", - "00000057be6c5f7d990b75439868339ae327af04a049b38b92332b9cb8cb27d9", - "0000004c67c6103e62124600a0d9e923dc217a022f57c6feb219c703334ff339", - "0000002352fe9341e62c609fc1538e0270405e7001d747b87500e644a112c5d9", - "00000041f3b15b714a6f7ef647e23665ea530efcbe19b0740436cda812e83939", - "0054d47c9d0a9fee258122326be25daf35f0ba0b8449e16b4623a8c0fd7e" }, - { NID_sect233k1, - "000000bc8a71ad4c1134def026e4723e310223fb2c5859bc7594054c894da552", - "000000c3650563505535033c7a6c448d73bfa08fb8370234c7fdbac1b34daa22", - "00000019e54da872995eb3dcdccc50418ec351400889fae75a0ba4dcff25f1f9", - "0000015e67eaebe52ba37f5b73a199d950812cec1012fd410581444bbf23e0c8", - "00000022055ef821df33042fb8316ddad76485dbd2590e2f5498a914e4f0ad39", - "0071aed39f5c44a7ff72db3e0f8284da39dfb2d894f278d2006f9d2686e3" }, - { NID_sect233k1, - "0000016cc1ae13fb348252493021cd6146d531f0b722842a44c7979689f1ff38", - "0000018c0963ff0ea37048c9f6f47644f2a7c8c503863c27cf21ee6e0a3224ea", - "00000013a5ffc9a0f7069c1c66148699612e5cfab7e2bf7b3255f181a0227192", - "0000018de4dc4f6a4de5c3638ebba24dc7064983b159f55b139c7680a1cb90d1", - "00000135532d8148af3e227d4a8960e768c565f72c1ac0a1c9a7bd185cf994d0", - "01ca68ead4eddc8847a3a661cc6628e076bdd4b45047ece72245d094dd3b" }, - { NID_sect233k1, - "000000e49e182ac5d932be8b05fe340e8cb72df35647decd679a8c59b5d8fbfa", - "00000181b95a965abd16ec2430c26dd071984e854a967ff114ee7831bd314b2a", - "0000002f5d2a7e0877a4c99073732386e8d59734a23dd7f0df7fcd54d941e760", - "0000014798094680cbd32fb1ee9dcaa6b8739a556305235933fb27157d319e57", - "000001c855f0d453c1ffb5f668b32a8b3e309e0e8101bc39b6dbe7de214015e3", - "017a893b2e090780ff8daaf3588f9dfc0ac4dfe1f1e263697a9d1f398ab3" }, - { NID_sect233k1, - "000001598b2fdb5bf1a3951fb9ec016ecb4d28f66c2e9d13596786593585d719", - "000001ef65caf15795d14a0be89cac7c680323bc59803ba874cb2968672cb8a9", - "000000652a11f6c3117f1326fa6877405cec7331c4f146a97f74ab0c44de01b7", - "0000002cd6d4c1d2cc5e34205eadb94f4cfd35bb569da722c4d9b19b8d5cc2de", - "000000ea3004e5b0930df7f8bda314c8bc1145463eb60022cd2dcf6c0c824e50", - "0041fa5fdf495b885699249b7746334b76c59e1c917bfc1ae371b96941f4" }, - { NID_sect233k1, - "000001b6cff3b7fa215e378605c93f86f5cd3845f45fbde8be079dec29bc8862", - "00000166222efa5dba9e858c245dbb5da668239ab5ba728618fb85a90ddc760a", - "0000002ad5f71c6384af62689b35c24c4ddfb35acf8106cb0c19502c2ca184af", - "000000fe1b52408a712841bd62f0ee51307f26331d402bcc3a5ab0405d1c5e80", - "0000010a731a7d6a6a4f5b40b2eaa810c1902db27b28d297bc05f3714cacafc0", - "015f5adba59d1ee01696cecce4b63e78e68508303ee496ff5abcea25ad3b" }, - { NID_sect233k1, - "000000cf402aebc3e4247a9ab43da9755176a810e011f9fd977de1be2fd534fb", - "000001bac45fa42d605ad3479c7c43e724910716737953cc8504af14f331d34f", - "0000006f01cb54781cbda6d88deb59843ae0836b1af683efc75650be84f208a7", - "0000004d00a8f0820da9097fe50e8e7defdac29607dd4cb1dd881d4e61f1e78b", - "0000008a4a8e9c811b444367952752ab8c2a5198efb28fbedbf3fbd701a857a9", - "003d5c29b3753e89ce5064575393392b377ca657a0b73872c82165fc43ae" }, - { NID_sect233k1, - "000000f38ccccf08e5bdff3bb35f7e75bdced68d3791dcf7843ca88ff092136d", - "0000015ed7697a4b8c99d0147828f6c861ffc9cfb0f33dce9d14b0731e1da262", - "0000005dc1ba1839f5d1fea85ab3614c55a9c5fe600853c71a61983c7dc82de2", - "000000b6cb6ffa4e2eabcf7b987ebb520165a8ec9a22a6f9ffb100f38172a0fb", - "000000d39814e1852476e56e89ce8cdd64372840c01570a86940ace24bb9cf6a", - "007c01f906caa590898a09f46b6f5383658e7fee656aca0f111f22939960" }, - { NID_sect233k1, - "000001e328571df933acfd4c96f3c4bde71e9175cbcd62aeecd76384744a0f3f", - "0000019ff48aae0c252eda8d340b25c4dda01a2f21aaa35d39baf036696a1101", - "000000241e1df5587031dddae196891c28821cc7879ad35832ae718f6e792e66", - "000001c172cee2b76503eb4d90b39ddace825b23c32375cb68eaecd7348490a3", - "000000c246ef9c6e2fadac77c73ee9dd5adee828b7918417395b5997be1a0278", - "019eece7d3fafc9274d361c6fafd9efd9ee485cbacb3baaf6834feb4df6a" }, - { NID_sect233k1, - "000000f4aa7f9340a9da46c4f06728753a4adc5af53a4dcb467f70b4873da785", - "0000007f321e2bc4e29a68ac23c77cedd3bbcde0bf7b92a27ffa76496988981d", - "000000044ac55a913a8c7f7ed7fc5679f52f47cbb9730325be21b7993779d187", - "0000009794861017b3debeff302e425327fe269d78753b73bc1bfb3a77f716dc", - "00000002581a49c1269f5ec868dc6d7f5c2d8e749632d47ab6d9e68dbad985f0", - "01e4b7e89fb1b51179b8792f5cd581c3917e11246d3846f6344ee82eed66" }, - { NID_sect233k1, - "00000068d9e55e7a105b7bb44b21d669bb0ef657a91437ad84bf6d5853270c98", - "000000143c8bedb54db07df8f67083c59a0aa7cd8a0efa42f42fd62e442e0b62", - "0000002bc136778531089da5c2fab3caeec256c54b0b35fc2c65f7b8ee6161c3", - "000001fb258a31d166bef9cd664cd7b66cd8c186e7025c77f0bae731587e9ef6", - "00000060dfd4e475e92805d1935d0382dc1767067915cc00ed3b24f65382d21a", - "0145710c3ab0780ec233424d4e28b38d29f886965bbcac49fa300e1ed886" }, - { NID_sect233k1, - "00000099eb91cda98620103c3205d6489e68ad7e57d0a51dc502d6e30588f418", - "0000003fbf829929edd28e906f58f87abed6d6d177f436f0dd940dda25eaf188", - "0000000d56595471435d95fec37df622f18ee7dabb24379c82bbf714c5abc5e3", - "000001a52940a452aaf420b37b5f32c2c337306894a882feea7addadc01927ee", - "000000771b9f62a2a6fa892503225275490388b8bfc2df77df3e806bedba7d88", - "006941a2a531083563dd886b06c0860770a4724bb04a4ebb2afb1ba2636b" }, - { NID_sect233k1, - "000000dccaa22b43391dc052597ae3bd07c6e5f021f39e987756f6548171ee94", - "00000128efd49af3a6b32dc16797a978f0ad4ab0db66ababd6ad5672f4f812c9", - "00000019c8ab2b32f2ee93bf2ff6bc44378b60872bdaeb6ba56b514c8f388ba7", - "00000083530fa3df315a8740ac52f4d394b80c4a5f210baba0b6dc2205e12493", - "00000037b9d02ed43e9d41d0dbb8403b9021b4d2c1bd360ee53c31c27b492005", - "001d754ee5351d4582974734072abac23376e24348370934e7b864db0f52" }, - { NID_sect233k1, - "00000170917b33b37b8eaff2461e5f9eb8f0797b13aabd915a60706cd4f32cb6", - "0000007651e0742c0d83d4b68552e9b7abec3644ba9755cffe6d4e56943a6b9b", - "000000503160104d88a0c0f63956e7c3bba702963f9f1b53fc119a592eeea4f5", - "000001463c78e498abf34033ec3e1d973dc12509e2d234fb91403715e42f61f7", - "000000ade7abb98a0308886696353aad33c05bab5cf3c0d4e969cbf4c4ceec93", - "011346b83791e4bea7f6ba6b1265e5050895d84027c106f77353418f75d7" }, - { NID_sect233k1, - "000000d8ed318382b85c2525a02c22c67f5bf366335d94767eb5cb45739664c5", - "0000017d8fde7bbc568fdc802a3e3455f3cf35602df70684c8acdda165a02656", - "0000004547eaf9be1ce5af1386e311046ec83260b84a2ca91055f60668b946e0", - "000001504938c167680afb8b6d5858cfaa191c40196fc4e500c662c5346ecc90", - "00000137d1ba942228dae68c450b1a033a2c810a995971f01c24089e4a6fdcc5", - "00b4938ed1ed012a9a53892ed9949397cdc4e4a612d54dcf80cdb039f47b" }, - { NID_sect233k1, - "0000017f87f13f6dfee6081bb5cca532fe268c271d2756b31bdf643297cf695b", - "000000f3a746955e12dd0b71919edbf23b2322cab328dd09bdf87bcafdcd2884", - "00000042fbe554862f3595184a45510ca53df97c45175584b5d2de042723358e", - "00000131b8d61b9cfb0536c588214e45888ebe48391eeecb4d7fb5be8eff4acf", - "00000165da49557a0aa9d45dd378d5f899272cc697682276ae91d2c0b675c469", - "01b3d2578bde3066a253db5322c85cf9487ce77b67ece955e281b0d7d0e7" }, - { NID_sect283k1, - "03f075c24c35a9dc9952be6fd32b761dce63f4720a22408e3a14bbd097e012b5" - "694c22a0", - "0675825b40202e95be7dab5a826147e04b8c51a09b0034577c1f31f8c16a70c8" - "e1c85b89", - "015fde49b802542a52c70b23a0b1784e5f8780b56853f9a5f8c3a5266e8727dc" - "e97d4a17", - "0611edc045dbe43ecc4ef6b324cd51f70fe3d7ddf877ec68b798909c3c456175" - "6aa30e5f", - "00833b25511704af09b62d9f7cbac59814e75bbb9c735f55538491dbfa60c1e0" - "115efe42", - "0745552817b5d729310b7dbebae687648714a9ae695dad20ca1ab6111c3d0546" - "70f21132" }, - { NID_sect283k1, - "0799b430e92320ffeabf2d6cc87399e30c0aa84420ff8eba2309b99487b742d7" - "22e8b7a5", - "0217362801fd6d2d286e5cdf375cd0ae569b700005312e37e8e35b1592efb9b5" - "eaf47b3a", - "013b911f62f3aa884354634547ee622807d5d106020330ae2b9798c0c4cd0ead" - "b10ba948", - "078d2ecd4d902332b6b3c7bd4ba7d200fc34c45eda30998b6025ed47b1f4f8e6" - "8f328624", - "04d5e53647dddf2fccc8816dac8bc70c29807622cc95539a72aa3a9b230ca1d2" - "5ee7b516", - "02eb0c1ceb6179232e91cff91fc8a30553c6ed7e0a71deb1bda0a10735a84593" - "dd903636" }, - { NID_sect283k1, - "00ce47a743d48b86fefd6b5c02f2a97b2762a2fe57e0bdf85c1d6a29de8862c4" - "c99ed53a", - "0322e596069f916568ca248ced57efe90534af4a9f90a4f40f797e4529670317" - "26bf41d7", - "0177632b69e7edda3cf007307504343cc2162326f62017cbddf360a876dc93b8" - "1f04c58e", - "03815ab6480e4ad24a6628275ef2ee0ce7d58699239dbce23338842bc58c42cc" - "a94d2412", - "02de833cc664cac90d30fbeac603efbbce9276d4f16ab1c46e7e11c81a9aa9e2" - "5c82969a", - "04a9dd2cf5076814e5329c518c4f27b429dbe01d46682d476e7e78880de368b0" - "64236ba9" }, - { NID_sect283k1, - "0728975839b42c62036a7afffaddefc3024b7258407bed565caea939be33d16a" - "c94445c7", - "07712630790b05ae04d8d7d9f2365dae9ad24c4c61b3eb20c0a7987e6a4c4b0f" - "598c371f", - "003bfe9a1c985386e5ba2b31553a55151e78ddc38f07432b5c42a1cd2da278fd" - "0b68e047", - "01d9c3337da95ec6e5a4bff1cc92783989b66c9230107870d4a578699338e38e" - "b2d92eff", - "00cdaad7d0eb0f445aa763a5dfb8f38f55355777ce24f753b5ad3d3cbab125f4" - "91698d56", - "044e2cd2bc164d21cf4b9833c0aa62ed059282e62b82f4500aeb422d17e1f6e7" - "e8bbd500" }, - { NID_sect283k1, - "055672d73998451089e2b7c7104b42247dddd132d40ad087b588d6a385da64f5" - "a2f46838", - "02b4cb1581f9e2b378eb7a4f64f5a7d4320b2ca3d3474726f670c3883bb8da47" - "f3d745be", - "00d95af52a708e692d02677b21032f7aead6003f124e72013f37c06e0bbc20e3" - "532b3cea", - "06e487f91e73bdd344fb8bc8f4c1f476e727fb2671e9d6c8fbd775f1aaa24caf" - "2e9a36f5", - "0663e1cff8099757bb9ff1b87890283aa49cff0f7b12fe184ed2a428375d2796" - "cd81de91", - "04d4f04d2fcf1bcd8150eaded90e467d3d38f753b6fb54eed8f9d29cd3dcc7be" - "2c83de11" }, - { NID_sect283k1, - "02cc28a4cb76d147d98dfa677dca14e1771347b9681c65cdb540f22c907613fd" - "ccb0c8da", - "07d4065f990c8fc37d100ece38fbf574ce444dc37355e0702b80d1eb1bdd6709" - "97e8f271", - "00c733d9094032cc7aed6c54a8ced753eaf2a48882285a3b4c7e6021f26bece0" - "722840ad", - "026896b039d7068d98a326710ebb7a978bd47661154645ae30cd83d60535067e" - "05151ccb", - "00d83a263bdbd8c8abf0310bfbfc83917a86b0d8c4be0b155ab7b9e2c7056056" - "28bbcdd9", - "01c343540541604f68ddbd63c483760d824ded5c18be7e56e6d36a9ac6d25772" - "afb0a90a" }, - { NID_sect283k1, - "063880eb538c7275ecba4db53d9b68c287fb3778bef514974d1e7e31a9ae365a" - "2181415f", - "04af9f2cf92542e1ff8ff28f8e7c8e809584e243a4902949a765a284986c750b" - "1b06c89a", - "00db39d7536072dc3448cd7d2160e50c811f648358eb0db1d5428e81aa7a686b" - "7865adfd", - "03a721906ad13dc15c311fd4e552f3bc87b7d92ceeedbb0c316a952785ba4689" - "fc0ba270", - "029514f3873bbc3b9e217061f7a6261fdc6268685f9656f1d5eea472cc2db5a8" - "c162e6e9", - "05e38079815477b8a79096ce339c4a255f8b213be74715ea61ef7dd0c0b5f161" - "d9de7521" }, - { NID_sect283k1, - "05bfd2895a2e66366db7a83788c72bce48f79b5c9524a08ae273c78ceb39ae97" - "559d5ac3", - "04a2b0a55f80155a1a330fde6cb6d97eddb0a9dcb66c49b392904abe8b381f91" - "090dbb21", - "006649bfd641dabf1b9d499d4fb04beb099475d0aa15d5ef6848b734d2d41300" - "8b604308", - "008f6576d62affc71836d19adbbc3d504210f12efb61c42057824515290c502f" - "2e09b6d8", - "0021643be87ae6e549b0d5fbb558c1303d14b1ccd77703ec74f9602f35ca8d7a" - "5139bce7", - "0531ccf51d1096982f7c2ec513a92bf51c7ac5069cb15c5e2a053ceae7e55509" - "08a19101" }, - { NID_sect283k1, - "063547f7570bd6959733c03d2e6c4c88971f314adcf28bc851dc52ed4e8c1a4e" - "a06f8702", - "0122d3773b0934e900fba7ebfe1ad5ed5bec0fb1a9ddcf4eeb61cbed04007431" - "3c0b3170", - "0081860a653d6d94446d7766164ff92c6c5c1545c735304b3ad4d5178c8b14d0" - "181e9471", - "06b68815bb83691d16749c4be16125e2a6d6dae94252739ba7bf0db0d50198ea" - "2fe43ddf", - "039e0d93018a46125620f6ffaca5a0668343c57025a60c31a9d6e51191cab338" - "993b46b5", - "06ffe79d2b7664ee2d8303ffe0ceca8c49a581fcdb49c4af6a060ff204eea74f" - "4cf39cef" }, - { NID_sect283k1, - "009047f7d77397db70e39fe9e4ba9d97a995a7ee066ecf538179e937ac86cacd" - "ac510950", - "007cd875167f06a2fb9a819e2cbdacefc16cae0eef2cbb0b2d49beae109db753" - "c9506170", - "002243e8919bd7a97cef0e9cde63c76d4e107150294fcf8dd7676451ca3bfa5c" - "5edb964c", - "03e439e3ebdfa7a23a9deb09de141905c653c4f202edf2cf5f09faef88ba3113" - "701e49f0", - "071d071b86ed0f468fc6019de23fe4ba2cb3b50032be35e92d2e5af40de706ab" - "524e82ab", - "0311c430db78b6203e27b52988e1e9dae890c655dac4acefa7ee9612bec32e3e" - "5f52be55" }, - { NID_sect283k1, - "04bdec19300c8afdeed86499d2703922df57b2ffec37e45c03a5e2909de3c333" - "bd06a5e1", - "01aa4f40844f2413f1fcbded003b1d15c9f1df7548de2a2bbf71b516657ad8d8" - "c77cf72d", - "00512a42841e1227fc9fed51c2268731684136f225cfbf45648987e2453a7186" - "f6a7edef", - "022f76e5ab714fdf78571e84c2b6ea3a17f12999be483bc67e1b843d209bdfec" - "0347a43e", - "02eec1fc0e85f330c53dad7bff4862d8afff8aa14f94756e95b8f01fd7eeb8fc" - "54527787", - "0701d92ed8687138014b4379f1c34677e1744f6ae8c89958a5962f14408d587b" - "95472db3" }, - { NID_sect283k1, - "0611f53af4b488990e7a52e5c73856a1e74279bb0f36d3ab1989b2ccd99391b6" - "c6b3a13d", - "054ea95a234f65897195bc97b03fa6d246ea5ab5f41da22c08ed817aa7c04adf" - "372982b3", - "002a8af497d1a3dac0732a393dedf75394a3f519ce07faed3f77dc0e669f3a1b" - "1c6ddadb", - "0571f0c87f88888ec0738961834021765cc4f5c8db2b1f9ea9b8fe9847f89643" - "49fdc44f", - "04ef7c8044a609694746ccaafe87fc7f9f1a78d00f8354f5da7ee2f5da7235ac" - "1ad4b57c", - "04f2301ed85a5c91c31a7fd125854904340a55e34976a20743bd33d95e476450" - "f301ee62" }, - { NID_sect283k1, - "012706ec0a0e76425d8ab4e0d55930a4416e4dd0a1af6d97987252988da0ac96" - "27577cbe", - "04215e8715129cc76301791701dc5fe1abcd672b6aa19ba4c7e532ee7a913eea" - "60dbc9d0", - "01de9fba4ab24d06e74ae5ad36ae195c2360c728eb38c50ef533329e70c5ae19" - "f489b6d5", - "048d61e0b9b8064bcca8ce40d4f9e68b23684137726a44ea75c8f2f8850f0333" - "fbe985e6", - "05fcaba38d51e2112b6b9f34e6779c10c0c559c3ecd156022966cf92a8c7f650" - "20a79ebd", - "0643900f337ed362815f181e0628ed5184dad3e66a1f030e947f116696312d83" - "5f7f6e7b" }, - { NID_sect283k1, - "05bb20bea4fd85d0162689c550054001409b6c712d356a52f793d78aa2d8261a" - "43c5b6de", - "031be5cafc8aaef19b861503413a7b73b60b37b0180493d82e9426f47b658739" - "3d08de08", - "015d3a222d5709cb339d93cd29650664f39bf3201c5d1e86d3aef8f795b9fddf" - "47d8c4a8", - "01e2b88de3772b09c63d036e0dbba435246987497b6283dab8ccf1002486de07" - "30277b43", - "03ce182b7f0cea21a06a1d4de8722cbfc59b9d9d79bc760b9d17d85671561aea" - "add54941", - "063b1a3db331f91abd0af837db9d5f040620d1ddd7fccf8b58e0df43698351ea" - "1942548e" }, - { NID_sect283k1, - "010a3ca2435b135ffea08792b7f19b4ee181207c29be1ce1fdeacdb69a669f9c" - "dde9181a", - "024908274b1e98c6d197ed2783c3c953c1b3b34fa43a8b2f5742584e37fea407" - "269b43bf", - "0098c570666792efda65fc9e7909931158dfd4477be93332e493d69866b6602c" - "4951de6f", - "04dc6774fe46ab0ed2768d379e7564a37c6bb1dd1bfc555727ad94c20f4732ca" - "bf2a2c82", - "06c6cf0f421f91fca22b4871216a9f1fe3878f07914e96ae94ac770b6762f9dc" - "e08ffa2d", - "0516da1d64bc4b25ce4763e6438257d62fb1ffdeae16d68701d63b603ad53e85" - "87927669" }, - { NID_sect283k1, - "053a0dd6135e43a114e5000aec40ba2709b3a613730f1cc2006b446935e237bf" - "ccc394d8", - "03b66ce6cf01507d462eeefff6211bd4c56070116c6907468f7c76fe01140bf0" - "d5fb7b79", - "00f4b6db4a87cdd30029cc3be89e40b9bcb014d010a91a252c56cb28671f354a" - "804cb4d8", - "066ddf04831fd1c72bc48b709061c1aeaaad19c9da3d8c1506fa775d4f5a5412" - "eee0286d", - "03aa1d13146ff192792b74a5c64ad3150fae344fa830e0f44733d867f4e0ae05" - "3526c62b", - "049c68c333b96705eee4a3def0d568b0d4faf24df2fc2f1bf40da0af0946240c" - "38e97f74" }, - { NID_sect283k1, - "06d4a6f3e87b6d8c49cbe517a975d2ab8c6339135596d6b30cc65cc80c128450" - "8f49789b", - "02963b356f2434ec249bcb6589ede4de36cecd3450e6f5e477bfcdc29ada4aef" - "0f45ac53", - "01ab82c5a62ae47ecbccf666cc3323b35128c52d17be11baf3bdb56006e5d568" - "baad8bbc", - "00a04ad7a583666a40437f968b02cac7946745b4ca949021c5443deb70183f88" - "e1778fe0", - "02bb591c32f0db3430342f0e37c45449c293c54f6b7df6f797c0992c2829858b" - "680f2bdc", - "04dd44c1a30edac2e39a5bc9902625880a18516385c90a9cc6b94c4f111e0260" - "863ccab2" }, - { NID_sect283k1, - "076452e19d7a10b885123d503f5d0433e163df134fffb8558f8ac26cfb30629f" - "8cfb093e", - "06b3a24b2a4b077770d396bbf154af41eee3503573a6de9afe0f6d18b02fc976" - "1ca1643d", - "001254af1791cc75694ce590bb518a770a750446171a30edd6c0382a17e6880a" - "1aea5b81", - "02b766c993b398d2426a7a0a49e9d001079d0fc32197181c56eac1805e4f87c9" - "df055dea", - "036e7bbd3be9139d4d43a8655ef7d51a062d9947d1a48010ef1ea10eedeb27f0" - "d1ffe765", - "0049c165339e9aeb2b516684b442921f1fef3091cf781e03fb3f56e93af1f3d6" - "e500c81f" }, - { NID_sect283k1, - "018e0bb7516d2c42e9dd96caaff5f20bfddf3e8623fc947d4d70491536790b87" - "41cdd372", - "032c0fffbda2fa863cb9d15c36545020d5bb24d930daf2fea4555f7c24d6aefb" - "b2c01d92", - "012017b9a0599fbf13cee10850a8f8bd06ccc00bd29ac6779f1bd93346b22c98" - "327e0fa7", - "0421c62dcab54ba800eafac232fc730ce70f6d5cc53ff53d371269cf046daeaf" - "451b33e7", - "03d635f55233da3c490a959c6e63a94fcdbe471fbfca19d2c5a3fd12b04db380" - "c3c895cc", - "0645d7f4c5479baff5bc0cba654a3dcfda56c0e9d19f50f9d8d8c6357c09a140" - "effbf223" }, - { NID_sect283k1, - "024abb155e49124282ea32e5b544621ae9b513aa0476da3bddb75260d5f5fa2e" - "7b898987", - "01bdfb0a079a55bcfce1ca8bce3019cbcae6164003384166ebbb0bb733539565" - "adc446f3", - "004f197c85432cb42a1777249ae411ef4bb2657ba4bad35ae538635a151c8d6a" - "564f9cca", - "040c88924d5a24a853fae408aea5b3bc827d7315fbb58e6ea1f6a65677dd4c4d" - "304bd75f", - "054b82869ada4433f7208f8570f24f06cb64046e8ac086ac57d3707fc882c635" - "2733dff6", - "028017c2a0240fd746ee72a0bcae1e53e05b7af254298094c381e735523854ea" - "5fdd4f5c" }, - { NID_sect283k1, - "07527512bc934938cc5240ce70ef65222db85c13c961c1f31f914205067d64b1" - "a4c85314", - "02aabdb81ffed2c001acbb4d0b7be539304e32e431e02df8b192ad74ed1b4b06" - "06bfc90b", - "014e893483d1d8b7621cf48bd24bc8a1b95bb40a08c16c32874a652b59a22521" - "39428dac", - "01574e17ce26311c40abf3243f4889a2eae74a8341aa7838551056f4395b8f02" - "bdc327be", - "0086e59f985348f3f8d7953800b1d75e141521249c43fe0616913db5d1d4bd54" - "00abce55", - "02603c00998deba52db12814b1f77b2120cbc1dca59009c0d6ea40dcbcabca32" - "c50380d8" }, - { NID_sect283k1, - "07ec29da2f304ceba8d5e249eb6054a4e4f59534ee59d25c1dc0e12cc38f768b" - "83daffee", - "0112c7d4a37fec842271a0a822d37637e6ed55190713001aefe11b06f7e1d34e" - "00fcdecb", - "01eb6f6c91a880a5462185c6a700e8637b8f447d09d1b251460fe57f1bf462ef" - "ddddaec0", - "031b3026104388374cfb7c7b4ef64211a47e20b9561a3bbca53516040b7bda28" - "37309454", - "024f8aeb23a35e1c22225967c7911868c84efdd873dbbccbc763ead67e72a232" - "4aa4c6f2", - "026a719bff31da4b4ebaed7bd043064f9c3930b5774c4a99809332c808aacba4" - "b9e3733a" }, - { NID_sect283k1, - "061ef59389edf8f8273a662a4195411e9448bb1b77fb0800be525eb5a6a03b19" - "665719a9", - "029686f8477fb5c769efb082cb3f1a0c79db55cb264e2112c0e779e7b558f700" - "45816a10", - "0147be4e38667e32a6a61ab980ced92e42695925b113c694a7960aedea2e1d57" - "1a42d3de", - "06f599f0c149457a32f1a2ffabd4dff916259382912b6402b50cdf5c235fdd1b" - "790e5eaf", - "04ccf1d8a4bfeb77ff3290e65ac601ee5b97fc1b1869a2eb9f0b76277e8066c0" - "86776c40", - "048c48c993040619536f45482c494a39b32e75fe69e478ba06e376228b79eb83" - "d3ff9168" }, - { NID_sect283k1, - "079d5760ee6ef978518bbce536b031c655a8acf5604497ba43de0beb6877a547" - "c3edd458", - "0421b3051dd36396d20ffcd7cf34fca022516dd4bffac73fc995ae9ea814ce0e" - "4027f7c6", - "01e1900be61adb7e55559d99a0b7d9354456f5151e2fd7b83c005b10b16004eb" - "e876c068", - "042ecc99ff48b53f6619b484af8fa59b234a981c9c3e9107bbd1cdaacce81885" - "d06e02a9", - "0183da0d7fee7f3e70e117f0e8a4a742cad10aefcdc4aab9bb31458237686afb" - "4facf3a9", - "05d85b16bb2a0d32c73d1402838bdfa512d744fa88c74d3d90cf714c2480e033" - "63d5c6ec" }, - { NID_sect283k1, - "024784d3d3d5e8021ffed8a2709a9f54d5395d98fa442a655a05dd94262b6035" - "96f8bff1", - "03e8e39e08cce55e1bed2dfe0d2f8c141b06401dba037ecb384744930c8178d1" - "46416324", - "0077e41ab2d09c34c588abc76d4312602e71f60019027b986e0ded372535c2b6" - "a933a533", - "02923323f170074222d3a6a287adafd3d1fe12715d57b91b1ff476a2b4fcc385" - "de261ecc", - "04cc498d67c6267cc7c4c2d40a56cdc2a6e715edd8b2a9614eeb33d0b6fd162c" - "bb85a714", - "066abb838b5f12b6fc15ceb745600686bc2d5773e53469c2ee920cfba5459a1c" - "ab20d153" }, - { NID_sect409k1, - "0177f736f6116320cafbb5b4dec202d40508182fe011189b81e1f3998f540860" - "7a46bb150ac47bcaaafde47b8a7b72f478bc22d2", - "01df4ef4b37e0124e55b67f3586de24a88a6c5d98854007d4b0c4b4ccd68d51f" - "afa7638bbe555d60b74def217c6a63c5b4068fb7", - "00084b711e3c60822e70fa6828b5abfb0e448888b35b0c8bb09f806616dc1ecf" - "22dd86237d937c1bfde62b75ae655953fc6b2f7e", - "0068a3f8b12e02d10e2f52095526bc4048b8f6ac3a84531772870789938f1aef" - "f813e05e509ea9587d2b7e4aa14344bac3ec46f0", - "00d1ceb40c7d5f3297e2955f0f3eb1422b3e6bbbfbf7eb518b9c17ae8d40feb8" - "4aaf36f5e5bd96075b2b4dbe538ac011962ac705", - "0176bc5c4036ce5125493a58dd265f04d190f028366f7799f70aedf29ac67b5b" - "37c37238593377a47944f5b639f43856dbd560ec" }, - { NID_sect409k1, - "010c4c68a9f1a62a326556b6d977a79cd9c4476c05b1add4a2cfd3068249a3c3" - "923822428d352c5d74e5d64acceedbdaa6efbe4c", - "00866ae940dd31b5e6e3f20b3b4d87a6a02c78173c80aa510a6edff852c629e6" - "064df5d7c600fd98e58e8e8c662bb4b96c8ba905", - "0065188bb7796e451f44727a1a0674440dd33d258ad2fdc7b98faf64b11e7e8c" - "e5e8c21e799f1ff2fd29d4c94aa158962068a59f", - "0032c5768452f3c1f3bc54879379ad420891267742b37fb096ee7b8c21ceed00" - "41e9470cec3bedcb799e90bdbb31192083ff0344", - "00f9c6122927fb824246d1dc1ce0fde71a6849a82d41065da1d85256a9b1979b" - "f7f286366fc8b324893ebe34e59c046007399414", - "00575d9e7f70a4a1c5c807b6b5d6b7330bdd764db2aa60f3bfe497e6bfe90f03" - "8fb4f6acf7ac06efc3d157c3dc907b2ae093c6a2" }, - { NID_sect409k1, - "01e4d580d5e9ad81671c6cd662d5569bafe4d75aa4f449aed56bd800619520c9" - "f32c4e230c4d91b1c411f9086d5291ba137014a2", - "000c8ffb42392ff397bbd467972f3ed251d5a079965da0b1d2a3cc16c31d255d" - "ce9886937b2dc941eab0d8be8bbcd15aa6ed96d6", - "006cb17c3fc21ab48e5c3717c791118d4761e2c51986bf147942554dc5a18bf9" - "bb6c67bdbba908a1e8ba8e7790f59a397134f683", - "002b890418afc5797c9746a44ca059367ae0663bcf058156860c613ee05e11da" - "3f2f799c70a68fe72fd5dac2469daa18107029de", - "01356904b197bf9e0657f4349d252bbb375c66206fc0d8312599bdbefee8608e" - "c948dce486807baa535ed06adac9c797634711ab", - "00ce87aa5e7700384df59d3f1075d282c1aa511391c42ef609b8de1264eca8f7" - "737df91565c73ee884ea882d47c56d979141f0f2" }, - { NID_sect409k1, - "00b7d19354cadcc94708267aed8b23e484e32a03814b026a800f5ba01e9204c4" - "3052e4d47c6fcd92329654e0e9015b012f79344a", - "017995c15796c5ae93e0a207a2707004fbb1a49a0d47fd404f12d57849d8397c" - "d4d2c6d2b4b90f864403d4acd16a32b7ff4877b4", - "0011d43bc08da9ce5defc94b4ef90d9324de080347ff4df86645d325603a2dff" - "d28ecaf0775ec53caf5a554eaf8b68487df88654", - "01257b6abd470d294b59ddaedacd545dcf43808af890f576288803342fc61eb3" - "96f560af74342e10bb94d224c24d8e5900e5b972", - "01dccad97ecef4387a1cf512b16dd5bc7ab615fbc5087ac19d5fc2762f615b49" - "04ea39343bbb185db64a19f7f70ecf0d557b15e8", - "00691dd6b5177702d6a0b1f8b07f3b018478680de7ee079272ff75659335c96a" - "fcea7650caa01f996aa37946b78e14a83e579fb4" }, - { NID_sect409k1, - "00f2a11ccd3a53c95ea98f3144fb77d4a684f9a1f423eb81e3a8bfbe22b680f2" - "1870f58caeb6946c6b3b873699cffd314063f408", - "00fdf26eede6cba7248240720906ce076cc4322d18bc7683d2240ba68476ce79" - "022780b2fa54e0f7c76528b77fa631fe5abb5b95", - "000d6b259656d526777dedb5246a192f0c05c7270a3b4e64a9d6c877cd06d296" - "2a1ac84ec2d89765f967f6044f2dfa56903107f3", - "0193afa13bd1e081cee5df1286fe44a293b7d1b10c290a5f2ae7be2d02736009" - "a26d83aaaa9017a8c8bf60efa15fcead07767d48", - "01d02fd66a7806c4c8445fa615254ff32bb9c1d85a3904f939c1061e250d3eb6" - "413130a2a5570994795310e96dc3aff3b8218ad3", - "0136f5c04cf9a56db24ad99bd286feb800aea38d44f819be1c2a9dba15c635c4" - "e122893570233a4c5754a41499eafa39a35aa57e" }, - { NID_sect409k1, - "0117449fbea6b2d5f4e8e4d39a7228424cf06f456bf3ae39bc1fb2a99e4183b7" - "16e194fc507465664d009d5bcee3a426ba932c10", - "01146d32b70f09e65fcf69eb9ae66162d10bd04369de8e8187fa9c3d1b5dda26" - "f10b469cd4925ca37e0994415757e6895e588145", - "004bf7351b195875d01f6306ca127db8a1a5f597719c0d10e1d68f5d4855bf07" - "605790691fcd0d8b5db137d3fc2679de75a06781", - "01d386645aaa48e2fd0950e6a9ace9dff62c8f5e94cdba45bd73c6be6bf7b763" - "a2c9a807846312da3ab821c049ac0861f82337f0", - "002a6436ef8a1261aecc38c821da774a391fdcc7750c9437d9dfe64c82335081" - "3999f0fd4f07f1d6d98074098612bc52044249d4", - "004f684f9d559d16485f0023bf012006265ed81f06fbc1441334a559e5500a3f" - "77603565013694023e0d8f44fd12dcf69eb8d654" }, - { NID_sect409k1, - "0119980f11149dee5e2c2d00561d3c26a42a5a44e874765ddda4d818ea704edb" - "ba23abed5e08be92d655d79e55c5bc54787b4dd4", - "01366b3dda3e9879c4481ddc367e51c1c0541945964636d5021687c285c47d40" - "e79ff7f0bb56a93ac560be8dcb970f58b23b10a7", - "0069da659010345c6900fdecb31df9babedbe4253398290b34012fb134bc5914" - "7572e62a60f5cacced87b0f8d1ff7c049dfe9692", - "0038687019f7c219ddd9567b20f5ea1e8a50451dd40bf5b65f7b2e133de6f36e" - "4a3f8fa2f977efe920f845d176c8a57023cc55c2", - "0149397fbc42bacf85c59e04535df1d52715761eea997d4ff87204866cdc3d4a" - "54c2425ad214a7a0dd592f4a991ab768c8f404be", - "00137894f637460a63576824536944cddb42dfe63169c84040a0345ad7516ec4" - "f1ad00bb4de20ea6ea43824b9b0f74dfa6881cfc" }, - { NID_sect409k1, - "01fa39b5d3375d43247ac9500061ebff7a0c15b8c5dfe9c751784386c981860d" - "e6e1b9584da0f42119417f32338290910a9a259e", - "002bdecd502ba64a6f21d08fa4250389d4270324456e9441657495c72ad760fb" - "348325f89b7a5404a2c21c2aa07711bcf5f30412", - "0006dfdab3ca1b2a2821cefdb5872bb95f023161ae4e2d549d0fb1f382563413" - "584491657db101c323514832c363f636a9e69e83", - "003e9a9b5f282066e233870dcb00c4aed2d73a331f79d49c8d5c2d93908b0ef5" - "e72b748814d1b8840642d75b7a9a55301b1e7c82", - "01085f57691e04afac6e884e2fdbd8df802f4d435bce611231ab3274761ead5e" - "2e6a344a53f33c0fa156e3132062f72bcda3fc0c", - "00f03b0b43a351311689eb1d3fc457013f294a7d02ad850c72e4ff9b64ce68a4" - "7beb49bc5bcbdc828534f8c8a5e13de5fe522eb0" }, - { NID_sect409k1, - "01b255d5bb75d25970301de9e0e3959a12205d511f8e64f042a01c950db471b1" - "d6d5847f75669eeb0bf187f1559db3b22aeec096", - "017e590cfa855349136198c2ddd8a5210882473c9dd591c02e202ca0404bbc9f" - "6391d73ae011dac9965155d2650139fe2e54ec67", - "0029b2fcb308596a975c5b4cd1e75267c5424e00774114ec2051a571b2997661" - "89fad24e92f96e3d527736ea480367bdbdd0530e", - "014c757399be201e08afd8b4a671e7d3b6d7f8844498ab592e1bf69315347ce8" - "2dbd785d45922660d4d0d27fa2b0ac62e707fcec", - "0098f0773d3efe9c290a992eca05875d3463f0736b2dfef4affd9ff00f96ade5" - "3399917dea074c798fc535738f0c5689a2447f86", - "018f55b81f15f862aed042f37433050ac61718c9939d432b2a20e12d647f9975" - "3b8dd5127cf8963247fe7e1d5ade1442229bc646" }, - { NID_sect409k1, - "00ecf7064f528fadae380cb382984811047a0d7dd9a8de8e76f8178aa60069e7" - "7a948acfa74d2c77a76851659a98197054da8d44", - "00b98e13497f776072711c42c18dbfc8eb8c8523ff633af988a1f242ed3c3c56" - "5d18cf224f8751f2942e360ba16e0f5830952919", - "001b98015c0202ea16417971a37304250839bd6a6e5d83497f7f93f0f7472a21" - "fce4be5be776e90959dbc41a0e85ed225837e8d5", - "01fec09f94571614e7cd8e958ebcd7a2fcd8c248d408cdba359630545c313839" - "22774d3b24e20591d8b41e954e16654fe85cbaca", - "0031e0eb1dd1ce467a8b78d10d25b9de92cfdc2773831e6e28a152d02ae2a5a5" - "10994cc010462254441ea41121c0677fb4178bda", - "002b560d1949297dc7e1bbe8ce49a595762924afcf0271e9c493c18ad5cbfcea" - "5f3900c7b793ae5dd44f48884b0bc3b52c66e05a" }, - { NID_sect409k1, - "004e05c34dac44e6e1b08cdfae6357c20db7a544dc253dff1c23d4dba871b967" - "81b6a61638d73865dafe0a9443c3ec328857d23e", - "01226c427778bb224624cd215493d7a4f32a4f141979236409505d8cf58d81df" - "d3c793e59543a780314f3cd8ee17664dc2e4639e", - "00473bcecb137711e5e89763a40f77dbe2ea8c2509d209064e39cf905afaa901" - "085f8e795c9b8017c9a5d0a1b96812c124a3ffbf", - "01c8e9adc4816e6606ffff5e1a7d48a7854c35aaf055d31833f0cabde8bbc4d2" - "458e3cd3c82a4af80745f595b3ba12f8b5c0ce90", - "00fc43f193b5589aee62985735e3628374dd45a86a61baaf78c21fa6e787856e" - "a6b8b88316540571825865ce6b8578add5faa69f", - "000b43cb539bb4bb42f195ffdbcdeb482b69301c0155a840cd381f55c465a8e5" - "7ec51d6555871537b56bf84a1544cae2b2b8eb38" }, - { NID_sect409k1, - "016f6960fd2357d2f70b5f778be5e0aa71556b9d2f4cceb14f7812da858ab872" - "818b4610d41a8f66200b4343422227d9fddf712e", - "00aaf592a725e7738388896b9be9f78c1c3d6972b9f99034d02cc0f9776a9f6c" - "2f9b7d501f75be18599b088c4c5881c66146e5b9", - "0020dddd67134a418378baa0ddfc9111c0a2ed492b289569dd0061bf1226d235" - "bdaa5203d3efa2bd0141d2ace27c3ae8e6daf11f", - "0167d577b2a43cc1a7d88a6be883c28dbf48c3e1fbf21ad83e7a7e3d753fb0b6" - "d3f80cd1376fd98be260f494757cdc063256d5b2", - "015ed7003b7d2bd5e0359303660add090049039cf7df396989ea18c702f704c4" - "5cf6fde7ad072d31253d1d5295e9c5d1d5c62c3b", - "0113dd2cf8732ceb8a893e149f13d52026e5d829322d0f1233a624fd6b74d56e" - "7e6374d70942a25152ce5073831660333fb3e070" }, - { NID_sect409k1, - "00f549c47dc8e92fecd38b5750895880e449f1e31abe0bb1eacc84298f836108" - "e5a308ccb9578dcbd4be6177752eb231e78f011c", - "0093663ec3fcb54d676897bfc95db5e54ad6eea1ec7b46ca4bf3d2535839f101" - "cb3e6d5f11b6a36bf40363c31c9f88137862674f", - "00607a5a6532177b52f23492717dd0a7b2af98e04884f77075e4604410c5044a" - "08461ecf37c4efa3edc2cb667c84b86415936b70", - "000a5677ac6c00d2646054dbebfc536db0a9b351a2408a73e083ad62d182fb87" - "cb80322c539553ecdbc213ce84c66ddf8dc1d234", - "01327a0a3769240fda45f94bb07361c74aa8c8d119414a7b5666e25a3ab68819" - "75396325a77f541a1ba268012a82c5110d2a49e2", - "00c8e62ac25c11e86b98642e4ec7adde9d9436f9337369fb065abc9ea784f90b" - "8b8bebae35da92185486191dd9f49370b1148ce6" }, - { NID_sect409k1, - "00411e5d4c96e35de9b541da5fac691336462c882d8e8ce4d6eb7121417e7095" - "0c4d9502f64565d5a6cfa735c90eef83c7b861e2", - "0096b904e37ca1c2db59a54615627e1c3356160fe175284aadc3b2fa06ba0b30" - "aaa07c84e64e48652e5feb303595066e0f8468f7", - "0034da9a453711f04a0b1ea1b9af701e0dc3a55cdd585e43e3ecf41e934ecaf8" - "80ff1614dce5cc992a69addfc408dae1b09b8d05", - "01f7bff435547a89516d017d1bdac4cda36041a0d3dfd03258562b2e28f40cd6" - "4f6ae2b70457773f9675cffc40c021e4702b08d6", - "0013c59a72f0c83f5bb90a0bfee798952fb91ee329c98c4b5914f445ae7c8483" - "767052b5f529974621545ddcd6377f5e387d573c", - "012505746f1a40ef75f950595211ce04f87f1daffffdf8c12600a9e2994c8c1d" - "8b19c0e0559adf9a94762cb983569de6d0d8baca" }, - { NID_sect409k1, - "000fa8243f000a3398808a1f88ffc5a342968fee5c7b26a9e1ffa26efa885e74" - "e1c562027d95db08cc15bd25a3fc11ab4dc13ca2", - "00fed687c7197ff1aeb980e72a3a7c318142052c2389b0866db3b87e5c8025e7" - "9bb4f4f996fa6352ab9cb20172ef78d6ffca906f", - "003141afbba8b4d9f0cbe8297f365873196739465e3e20a89af9fdf8b01d195a" - "a1052e6176b5fad856136b6b320eebfc08c1cd01", - "01805ffc576e8a45f06297b2335d03abc8adfd15ad37e76d80d3b4180d5f72ef" - "c90f3f2b036acd817f40fd49064aa25ea383c82e", - "01f22da6b50ac5628943f05b141493cacc0f02bcdf3bffdb43582343b6861576" - "1a180bd7d1ab1ddc15f5374a8f665d13b4b91272", - "019a71ab576546e2351aa92b6075e8229813e6a2cb3647147b192b4597f12172" - "23e7197d846c0d65ea0d4aa4c503bd000ba312ba" }, - { NID_sect409k1, - "00be7d58043263ab2f42252d41b582d862c2b243ce18576081bd6edd2f63f016" - "4f365cae67268d227f3944677e1c146af864b8ae", - "01a4bcbc6416d86597a148ca4d610ee656a00026ce6047bd9fbd40d89530196a" - "4693ae595d69956503b9d2ab4aabe7c958a14c69", - "004e517796cac9d7c75316eb5e68963fe6324781fab986e940200e711ddbf988" - "2d99a620a976352e2496748cfb61dccbf6d659cc", - "0056a452fb1d558079c3e91bf22f86884ca89788806fe7d6d6ca40b5485079d7" - "7dc43e466a71259792c65ff6ab7204066c0e67a8", - "01f29b723d9f7d4de6ccc2f9708079c5d30ae5d960e62a7c4f6dc98bfc95b4f5" - "31f197c39486705432594203c25147156dfd5b5c", - "014f4b7ea93c9dd846d2228c2b6a8dfe616057232b7af845a570cb6cacf9feef" - "2d8ef4fafb285b38e63cce0a09b4d82dbe43a390" }, - { NID_sect409k1, - "011fea58d9e36cf8ed4ef3b42f77ccea93bf542ac92141dc2c094061985f3df7" - "86d192a57bee072550b302583f0f9428301b1b76", - "01b3dcc1b8a3545264427386329eb81fe992654040694781c0d8b27c1e49442b" - "99bab93ef9666fea14d4843ee4bc5b045ac50c11", - "001c80b64d51e8025699e7be2c4b983cfa4b7e91b112e2eca5f9d0cb7e3d4f85" - "aff7b33a921eaa124cb7002eab62973d65e16bc9", - "01fd0e4eafb26c08c9f8e747d4991f468c76b4864166e37642b583db285a4bc4" - "c33979917d9129a91cb0a75c1aee7cd4fbab73ce", - "00468efabcf448fcce821f3de81e994d79a7d99ea989ac81fa135f7ac88b154c" - "767909c681f7e48c00b2e66bbaeb8f8688f44672", - "001fe2ed30ad4143c5eeb0b7622e6aa49e4e4d51c1ddc467b3fc54215dae931b" - "e0b6b6443e716895acb6570cdc21fcbdae46e5d6" }, - { NID_sect409k1, - "00ca809340bd13354b6071d073e65b9b0d2bac82e22abfcac7e70afd9d224852" - "f0e212976e5ec823eb8950e02bc759ecf56f79a8", - "0031281e8976401aab58fa8eaf8636feb013170bcab5781be0a28d27339e9470" - "e166c7f685f2ea9143310dca1b3ab8e1c8e60592", - "0043c96c32cf648b036112421adbaa925cd54175abad39e5681bfc9eb4b1b649" - "aec1c876ec1ec4610f1b3b06514a48e6ea7a4a25", - "00de181e81b9e7776d474694a2d124d0b876d9548f20ee3386304945d9131f90" - "457d9b938df098b035bedaaf80ed6d979404fc70", - "0181a3516dbea9da97d6ececdb10f96d54469d273ab366e89a40fdcedcf1bda8" - "37d5c14bd10c0b6a2a9c8a47810125c764dd35ef", - "01610efb48fd22261921f7484ed6382fceb6bdf28f3bc2340a175b7971b93ed5" - "ff357ed55e5307bbf42e40a5b3fabdaed0ce19a2" }, - { NID_sect409k1, - "0074795b0a9ca070491fb54a3bc249981defbec037e4040f76656428b1538b97" - "8503f81f80ad9ef97c5e127ba51ec040584b9a20", - "003ece27f3daefe7bdffdfa727b2af95af8591af946cddfe37e85643b8d179ca" - "8b9529106f9c5f3a95a8819225f9d7d4a730fd22", - "003636854b8ee0254bb2d0ebedc720b66b20129a21f1a4fe39118cfdd4d137db" - "e5e570ebe2c48a7f9ac21cff3e5adf47434697db", - "01efc0cd1a86ce7544f25f44e63a0913c11fd6b08bc09ad8cd82f3af7e32a7a7" - "ecacd56e25526589313879d4a7fd4382d4114e4a", - "005a34ef7403599c2f83f3e83299524893f2418ff95d6c2fdc0a3db970e62fdd" - "cf4cda182aa78b54fd8c2e818fb1ee2dd2776763", - "008d990982aac8d5371b867de21e09064fef30e73321337dc24f19ad5ddb6c4a" - "d217136b7c61e360a73fa7571d526c8f514a06d4" }, - { NID_sect409k1, - "011eb64ed4249e1195b2d1307a35a514d66d29ba6f9044f9c02b4b2d3cb3e3d4" - "c0cdc5489cddfb96226c9ce3e36fb8ff2eef208c", - "0099880b0d0d43c5c579ad77ddae68f2c917f4b062ea8d777b9cdf465cbb5910" - "7e70992714e8cbfac76296d5ede99c48d38a8973", - "004998a062a32170bb358954d2c2496da886200827fa13566836ae26e38d5192" - "6ca3d202589f7bfa27ea22d399973db6f9fde9f4", - "00f71590b04290b5f3cd9ba0e394a3be5a1514f45e53497f6cdedbf839728e02" - "88135d769e4b28932c875823fe256e891997c476", - "009d16ba726a5a9e09103bc94a09d8079ac8edf23410c8469f79f55f3355cfb3" - "ad703624ec6d75eceae3881da20903c71de1f5ac", - "0155dc98729c8c1bc65eb8a3ec09135f46bfa313bf56aa3169e312db8991abda" - "338f8ac7a75bce42884068efb7e6e625939d2b88" }, - { NID_sect409k1, - "00a15e96a776eadb8f8a0b61360335cb5017d7d97116489341e995157f1adf17" - "8e5628bad3e830bee54433119164886db5c34654", - "00551ca5605e4ae0534534a0ab343d039a3ba7a1cce832c4d65e26bae7ab8e5f" - "9c74b3d421a528e559778ab27b59aae1a916d4eb", - "005a3f805fe3c3266feb3e0bb7da6761bb117618bc57af357b53f199e6e4cbc1" - "281975321403ea6de618ec32e86b8ca1e10d7c43", - "01ae460e1248504d33d67ed750f1d618e53728d55e390dfc18d94b56dbb3d3c0" - "bdc96c92ca1eca9f44fb8a58cf36dcfcc0588cbe", - "00f7011fc321ef6258dcfc1fdc2c0a4e54c86ec939bc9ceca6c291750c1ff540" - "b34a418793842a2c5cab6061dbbe9b5be3fa6115", - "0109e85c684d027a625ec5e6df952e2f20a14ed5b092d1b1b38435251303844d" - "230fffc53d84b923555e1e1cbebe20b5d68c3bc6" }, - { NID_sect409k1, - "016427e72bc57d26a910a6722eac2c78fba8abffccbc11a9f8377bfe213ed9ad" - "64bde2ae8687f8ff1dfdb29b5dcecd02269828c2", - "00ad4f9abc21da0d31f19659cd3b0c185581436ac08b15c0b48a7ac39eed03e0" - "ee97e164cfaa5abc774412cbfff94a9ea2a9636a", - "0055901e9b6586b7f3372660ebcfe90249900c902d7c632a8d17fae21d3fde30" - "37325b5775eac5a174a1ee2b3ff2bc5ce69d8cc1", - "00ba952233531b6a6c7ade6f338d24fc65777b5d305297e66d32cb1bc506c5bc" - "a2287d3acd33fe19653d6c88a06eca3712ce9caa", - "00716beb14f02233630f34603e309bf6e2572f0b791dfa4c582af6a37abcdd64" - "e8d785a95ddff59bbc6fbe1b7fc735725efcf0ba", - "01ae814e02c4684c21dd7e58a65ec51ec68c37e59e299ce65608186c0acce08e" - "41c8320b1941a611fe66b1921b558d7f402d0eb0" }, - { NID_sect409k1, - "012e89dccdf975851accf0294cf4bde1259c907a6d3acef69f1939b558c4d211" - "522e4eaac613e3ac8491c93deb6d344a9f87acbe", - "01a52608ead09d2db123a0dc782ab20ddb793d5bb70ac95c58e62146beb62bb6" - "68fd57f92038e4585cde1f91ee8c52526afeb1b5", - "00044ae43bd247e75afa7bd8dc28e75bdb9ddd99df56668c831454dc28f3e9a4" - "4ecfd47ba8420a286f1ef372fd29b365df9b82f1", - "00202694f378d70965d42828ad5f37137bf8b63cec2c0d158e5ba94cab1f8e61" - "e5a300986ba349b3adf3efc05e65670af88cd3d6", - "00baf0da4aedb972f88a215dfbff64e4290fadc25da3f0d83f35e65bc4177d30" - "25d71d8eeb9c41470f3c719e00ef1fb7552e6a89", - "0140e7db3f6415d884822ccc7316a329dfed177b76c0117abd722feca889bee4" - "e14e65d26c6cc935c0e94205f05fc1a7abfb0348" }, - { NID_sect409k1, - "00aba93ae1d1552880b31f503fc4be9f91d10247f14c816015ffb2bad29ab818" - "0e7b50a27144e01c21e63c3dafcd251308bac768", - "00e4ab66e514bd02abeae1c7123788a692584ddb4a909a217fb35de66588233d" - "adef7036ff9d9f24eba3772e2fa3037bbae63cfe", - "0056d73730753ada70fd801c749c2f1f1a61ef5bd6ecb796a9e15efe9bbe6158" - "f669542787350f4d643bda6f3e8c6423b817b530", - "0025a06b71a0ae252f2f905221983ebfce21ad96121a5c0dcc5ef0d0fec301ec" - "77ef4b915818fedcda7f3fd733c7f9e529079cb6", - "00026890d5303b619c7f81f60fb82b26b0b98d8f24c45cab41a44eeb3a3a3129" - "44e889b4035e04360b305043e30d0cb9041a89de", - "002ec4deac3e83d60ad39969f2f93b49f31875831ecd51ea5c37ca48de081c0c" - "8cc660edc53a222f3043447f9cb752763be7494a" }, - { NID_sect409k1, - "00aa4eb898443cce3ed2c072d858775ac221c24e33eca6f31579663544bb33a4" - "a068a86d13f167b65304c5f7f25f895f65b2f428", - "0083cded30211b66f1adf17318b6de50d7724c0584995e068b724703ae08ed71" - "a32b334987a7b31d6c2637152917327d37accd33", - "0062b026d49720660cf6a4f569be98dfa108c8eba08234ae9a87f3c88b6c6593" - "4b996815322a16f9aabed13317bf7725bea5808e", - "000f52925394cb52bc330e06390c0c0a2e10ed9797149fbcc88d80fbcaec173e" - "24a05daef98401d5e47f3b765bedbb8246312856", - "013d99c1710805d5fc7db7259ac9e134b411d00d73fb0762e3d211cdc56bf7f7" - "14512d04a630c8732551ee734287476cf511e836", - "01c9cc05d19f96c4d233039cfbc43ab68d657bb507f46a353091fe98fc0f422a" - "8e7593c195d326977a2be6bbd2cb44eb1fe81650" }, - { NID_sect571k1, - "03106a5c1d923a0990ea8c6008c36c366b53e5622b98464044741fbc7840284d" - "b8bbf602866c30ccbf5f9b7e59cc1d9bfcc5b970fa624da9b15f6cb336f5dda7" - "e6b9924d5dce4543", - "005c5c7bbd5a789ac4c6283deb0d0d37c4852baa57d6bc2b0ac6337feb09704c" - "44d1b385b70cc394fa235d83e6e7111787e57d0902c0cb132a190a6e62f39851" - "1c0c2c4cd50d4570", - "0173cd1631e18ece01b73b3572ffaa7495c4bc81f4078ae50d69cb1e338acf13" - "469117112921166ddf2d29f3a9f8e10c67e88c9a99203a834565be76ac591264" - "36739a6afa029cc5", - "03fbfbbcfba609157f68a23126d805f7c75efb19befb595e3a975e08ff46bd34" - "c8b87b9645c0e86ea0ad915465d5c856c69bb9b722b0d17bf97ad95c4602dea1" - "7c6b512054cb22d8", - "071c16df71e1b71b4bd3d9938827d3959093b9db1ff86bed73944a42dcb67cc3" - "3102e28c1d0e9804a6450656f4bf33ad72ecf7bb83bd282cde4bc15d4e48064a" - "a8ad2f02979f5f3f", - "003198a6b5d6cce847e24348a6a6ceff7a89ed3794d7acedc4e858c80ad04a74" - "dbc02c7038e05ab26b2a299ec92ee0d2c7e66a81872a5157fbc5d4d37ad598d6" - "ddee995ed28a2d74" }, - { NID_sect571k1, - "0211223c4b729b206be01f8085a997e1dde5cdb27c048925a27369bcca6a3e2f" - "bfc65637f1eceb133be749679a17b1ce58821f46bd1844a89cf0042c8043cb10" - "5e01a3fc948d2663", - "02b1ec2e6e2c2375b464b0a502c5053b5b348bd08178c72c603105d0468196a4" - "695dc267d6e109f1b1274453b6eff14ddf3783969e8825648debc216afff9258" - "f644d77ecd9911cf", - "00937edb3aa29563d2248591c9fb448985095f913a7458315593cfce87e68fb0" - "f1a525b7310a101176e34d45c1004538954e2044543817cab0d563df6cb0d5e8" - "617bbba150e755e1", - "02363cc5624b06df1956befa597d4c757cc2b1001a3e1544d24408290f694877" - "455ba92e56088462f0ffacbd393cf835b56b7046a15d4b724dc6c3573cb156c0" - "df298aa8b1255cb8", - "0409f773b98d5edc2734d835953281b82ac0e15d902d887a7c6ba75629a37671" - "b101d18ddfdc4193d98b18551414c49173004530f7976d27c273a73ddbb898fc" - "b5fade9c0bb7883f", - "00577147459262e5ad42f222827f20ed574b2118924205bcdbd339ce20cfb085" - "d072fd70f4ca1f5768fafaeb5710f7ccbea4fc2ae5377b0cff20a889a2201739" - "139bf788a9bf2d7d" }, - { NID_sect571k1, - "004d48be599ebb1ed602472d7a87f4cd2080f44ec28855fecc3a9cdde2555178" - "7abd27cc1da7e77817e94c9c0289c005a0e36e3bcfb0d381e8cc9684b6f7dd05" - "177f16f63f8721ca", - "062cf71af0a2f8e35c4d7f9312bd34a846a380f63f0dc7294c18877103357e20" - "d1f0eeff312a993deb2a1ecfc80aea06a5b71e4f8b9cefaebcd32626919064f8" - "8af416d86e3e7af3", - "0034099b0773f021ee0d3dd185c704b5158a94328daa09768fad5804df1da2fc" - "067190cf1028c30237bf2a48da13abae35a25c3e6387d3993f9b568305b8bf08" - "18ff527dd8205df4", - "0674dcc4f755c44fdabdc078488107bb64a460ba932c7e185484ccd27fa87003" - "1107e9955204b0630b9b4d3608d9aa931d7c766cc2e45878eb6d8cd96bdf711b" - "2fe8b47b8d233ed5", - "05d96be6b7e2ba74c8032af19ca2f2b39d2fd4e8c89b156b6b25c2ea4f71f74a" - "02ca7da2a463acd7605d5350fd16a9c9052534e7e81d648e4060a2b01c459c26" - "0cb6567da1fc5314", - "014662b261d0bc2168642bfa4f80c4b3fe8176f604ad3703f443ec7aaa3dcf3c" - "5465b869a8fcea60b8f55ce7118806c5d28a04848bd961db0061209b59bc0297" - "9acce9324d7c0c31" }, - { NID_sect571k1, - "06bf252e62c9969171a9717671da0f7032e9520a497ec831f4dc776ac87e0194" - "af99546c41d08048ea06da9235cf1369c3ea53e6b8cbb7a7fd4296354548d44e" - "df463f77ad341b02", - "0294d5f7e736dcd8990198e4e0f0b398b8ac6a87764af601596234a2e162c9c6" - "67e47eb3d987efbaeb03b5e3699a38ef953c74fb28fd7d8a4ec5a36319ccc44a" - "19aa88201ddacbf8", - "001547438df76fcb5e2ae6925845bbfb03b4fbe8255616ec7fbd97b48f112692" - "219f4f1275e6d2453d5bcf3bac4106f0161b8119f487d88b5f8c8e08b3aa17b8" - "3fe01102d76392d3", - "0427e2dc11ee5223bd9c3d9418c79114682f91dda06e7d88c339a7e56e0dfb63" - "6b6e63fde8a381146ecb705ca202d2b73df408451763c5166066a97ff4e4f32f" - "0b4cc942344b0b2d", - "0760c8a388e2eea27ef6838c7d45052e38cbee2096cbe89f774774134076658d" - "f90c62c7dc0e3fde995d7a99090993009ab6c535677dbdb376f183eb5092d2cb" - "6a8837b6bea35dcd", - "051ec4db0622b7b1c798366453c70f959376ea3942aed2e931ff62a4019eb12b" - "a5ff119214c8bfd8bdb66e62b562400f2d3d48a84b1b3baad3667f735ad4d0f1" - "83bdb91aaedcf1f1" }, - { NID_sect571k1, - "05701e63b01c16c4eb19938265ba134cac7316278e2f1eb40a04775448bded97" - "e7a37d01fed8a4e0b43ff4dba21a47759ccd45bf9671dd22eec65b4aff8b8db8" - "9dfe3e490c0ac9d6", - "02dd97b6415aee2b01cfeb3cd2a03578abfed9ca87be9a26d899595a87bcbd97" - "2748fa6a0be4eb557e69c6d28e2bba1580dc74e2751d7ccd918c46b4be6875a4" - "e4c290d959c23c12", - "00c7b4252ca9b192c5feaa9a210fd84e2e48320271f10f67ea9eb30b0de8086d" - "59dae04259fd12b086d890e22d45d27d7c8455dcf7ada796e35e3a3138342cc7" - "36bc3ed3781c4119", - "0325623838e8b18d81b68060734254eb02b8ebb2264556fc9850c36d3035449a" - "a764f351dbaf7bbca9b9adb11f27cc88a1ac6fb71aa10ef8d0d09392b0ca7eaa" - "7a5cc14078cc18bb", - "0098fc7656d9de3a51923dba290ecbe413ef8d951f24e9248cb552309f97127f" - "b9429ecf6dd07b6de894e16ab60e33b4ee73024ccbe866de5e17f1b478dc7727" - "a1bb42371820b12d", - "05b355eb5c47d8027b6c5301d2463b99c636db207792e2975ab1a53c1cbb1312" - "80288432a79a3b47271d6a2bd777298baf8a675f66be9dc72c3588d299df8b52" - "e7840322b43c2071" }, - { NID_sect571k1, - "032fa1816fd2317c16b5b19a25d46fa5e45ab15ee9f2b1d1274c2a06023994db" - "309fad56f60b3ce57f32dfc7d045a84b7d805232be34c7e759514c30a25207ba" - "800215b2060f04c2", - "041469593d5748072b9ac8fde023095289bcdf65ab1bfc0856f83e9ae06c8973" - "03bd16f5e45823d65fec8310fd4332b65cff47a799af4f7c8638e2d7f85948c4" - "3f10534c980ccb62", - "0066cc51980d3851b488c2c181496c83505fb957b1ec4a84df1e105e30d002bc" - "b978b6d0bdc3b7644ed3dfbc33ca6bfe4362cd8cc541740b0de8cf2edcce4592" - "e34fa11ac26ec922", - "0771fa29e5930d6dfd36d3a9e7159675fd23d0b5e1fd9ae6454aca9e8127f1e7" - "e3f5322b5c16b095573b3266d08f0dc33043ffb3d7b08e4e052ed3f0349a3290" - "25ea6ff3e1668547", - "022f994f9974692dbb6e58cc7ae5f90652ee231e0a3961569dc646d114522a37" - "77410c1b352d668079f80010bb540e4c28408665810fe61fd60e70d30c688eab" - "8fde04364dee5c9b", - "052bd78bf1326c6d91840a351d4874d36b147139882356c595b8607f99987730" - "92a99adf70adeed19e122d4d2fec16285f000161145135d96355cba039a96335" - "e7716724c249f88b" }, - { NID_sect571k1, - "03e63dd4c98c151361c9902b763ae32f2d6de75953fa3d6838c1d613d448fca7" - "3bf302d30212a96d32b9549e17c5cf395c565191f6a22dac4da7c1e1a9d9bae8" - "6ebfb72c82ea199a", - "041609ab9c12c15e5127005ebeff6fd1f73b6912ed070af87f5ffc21df903dde" - "1d715582dd2f699040200045cdba9ecd758ac4d084d4c8d78219f6fad94d341a" - "d77daccdabb54a2b", - "01990d15fa2cc90e783d432201784bab56b6d29d1f2665a76cd013eb96f6300e" - "d8f762b78a5596ac7e8c1e76167f107c20443b1ac732101e9f0aca12551a536d" - "152df2b3db0f20de", - "076c3d72f0e715f2491bc9d99278a8ef3c390b3a96e9997b37e5b7bd8a5f07af" - "68f8e0ee3892b63ff112a73a849f0e84a782d4fb426eb5f2f15adacce9e5476a" - "6daccf3a7fa9a291", - "0540a763823599e0c86027bacc8cbb30e3a2467276fc4f7e5fd4ed385dfc6f88" - "3fed7bca69df21a0668b55ebd292da8fd6356a3ec5cd1c762c01473aa067004c" - "acedad564fe06910", - "0226c28e5a6bc735935f9df2c1b02d096d4dee41ffb95a67905aab8de1b2d8c6" - "6e2bb471293091438d3f05df7e48003e58a958b72f839f7f2e2c54287fa3cadc" - "d41a2542ae4ec03a" }, - { NID_sect571k1, - "06f91a7ce11ba9bf2de1fe070f9dc843bb717c306d9c63b5078d2a11323f20c9" - "c0d7b7743d311ddacdcf5dd00f498b199672c78ae25e6864d62bdc16935d6fb8" - "dad2082d3676ebf3", - "04593c5bad12c3d655c6611c7ca9711f9e32a28fee54b3b8243962a3c55d41f2" - "c185e4c58b7a2998e978021b95b724635daccbd7fc30d20720797bc291362c55" - "b024acb2bdcf3d59", - "002b0937e731f59ddddf0e94fba92bb1a6ceb819e7659bcf6edd4b4af49c2ef2" - "5c5b6039256f928363e18404b1653d3998054c2c25a3f83a0c5548a139e3e6a1" - "80756746cd34ee29", - "0270c4c00de2709010c7cf047a0ce69b87f41dca48d35b71fba4b258886d73ae" - "42defb8653951c1bd3eb4ce0e6175a946c67afa67753475c51fd525b0fd9f5a2" - "6dafca319faa5e15", - "06680bbdc281505f5d3fbe29744a999e07ff612576993f6f8be3113db1ee6cf2" - "3799867bbc80a140376a9b6327451f98bf8fd1db46f9d9cc05e88704d5712d45" - "67e1df40d39e99ef", - "051a3deb052d3e99bb6ab6c6b284db2c998e9bee543e02e57f1b13fe9fafbfe5" - "3a89658c58eb947dbd178aea2f6cb28e305c9867bd65bb26f71793f90c984ca1" - "1113e1a8dbc8f7d1" }, - { NID_sect571k1, - "05ab2a7f10ac89f98c409580abc11ad90c93360e6ab282920b59d316ca9f2b23" - "aeb50876cb1bcbe8ee9ae6b5533fdcd11ad4f86d8918d66389da87c98bf1d632" - "3bd0947d8099083b", - "0689e1947276791dcb9527183e32a08072b7e03dcad175fe3cfd7beefc848dce" - "f483380c6005411385c7027c9a52b60a6e537a875380d25bc47c7bf2364dd68a" - "66f21d0f57866a42", - "01cd41cff762402a834e7e0ab908fc54940f697b50022a4dfed8cf0b13d7e0ee" - "523fbf33ee9693895f918d94e15b084655d61b2294ca51c4123fe5e0868e9d0d" - "1cac2138f0577a17", - "0610797bbc6d9131180ae54ab66e6780849258369741470e076cf05e0785bb4e" - "7900b908d38d8dab3b9427b952add20efb758cff80aeb641c4dde1eeda5509f3" - "86d5658559609cef", - "068d2515f425a0e3037547342f1b6ff931763f5052e536ea4f78377b5c941459" - "c8c2201482afcf3cda7390e9e5d319451864ca03683541ab2cd77a9d88fd7a61" - "0ca845ee5cd3d498", - "00697c751ddbca7034fb4d3fc1b2618daf78cdae464e8332d1215020c8f896f4" - "864c7a6f2c61a363f730f58fd3bdb4f78a90b40aeb83b4fbc1d8d37cf6a27a6f" - "722c68a82979fa16" }, - { NID_sect571k1, - "0034091c3ac6fc5299df18f162eaf7a207fc1543aa498e7272e15a92772f5777" - "2229069456e219c9c2872bd53783b0fb1345f5e84674c4344129a314146b7030" - "fc75197a20c588aa", - "049e3a3f5ee65875e1401089970638b807df97568a5995c8fe2f502473b83f58" - "c556c5f214ed6f03ef8ece01401a2134bc041f66922fcc4e3938e0c6d302eb42" - "200678a97139f291", - "019dff0d72a8b042c4e92f1dae7407bf4a106cda564db7508e5a76b03130c91d" - "5e5cbcf2f578c2e9dee43849f911d7773d4c267e282c277b731f88a6ef0eeddd" - "520f57e743ebf965", - "05bb60a5fe8e3b173cf8413eaf413a3286a5a7aa378f21446c61057696012746" - "d02d10a831f785c9c96561ffc6ad4f9ecdf4937fffd8e698408e660fe896f7ed" - "44af6b3b42ea849f", - "037e3a35e48aa66bd851c59f851d4a1ff334e0e589dac30986acd06d6eb8ce23" - "6f2a9688f278a14dcfe0660b5fa0e97ecfcebbf5b40d3d3f5150a5545acba623" - "9c00419ac72dc2cc", - "0322517da30e010aeaa2ec9bad2745d8e67f906294ecd6b1d16808be3837f790" - "70d0e1bbbd617f4b8b031d3b51ea2acc59de408a130138c78571f8800fa907ca" - "f550d23323d1c818" }, - { NID_sect571k1, - "057b7c65bc51e87bdad37c2b4dae67fb008ce71fd3072e41b77c562d7c417488" - "72a20bef8517ba4be89637dde98e2ba1b3b01f63940713e2823d8dab68a5cc78" - "561de14085e4cf87", - "00ba77430a5560089dfac4f68b4f34937a384dd607bcbb5fab5677a7fae09ed0" - "7cfade399e87ce9fdd9397c681aa3378ce3bc82b007f6de4f7cb96dadf55a4c8" - "734a37f39a5c2f25", - "01e1416d429926cabea547bb2776710a52f7130393081020312b3962195eb6ed" - "17c6d436bc46a5b47a7aaacf8f8117fea3cafa16665cc1845b0ec94faf687579" - "b1c116ba183e825f", - "065660a58688a16588a9c16b8272040a30afe3150630676023fe165686dfbda6" - "4fc85995ddc18c9c5b029bffbd4dffa8f62989c639a68623eca78009cb088ee1" - "cb42c4855b79d302", - "0492c3867f137bf2787a7ab0568d3079b8d9a1e0b0ba5d29d0c7ba616d0bb277" - "25da2ca6bc67bf084fab52599ed42b0ef48743423cbc6f4135692c309ae2630c" - "c4a5390be93f274b", - "000911ec1cf82a22c849b401dfe56453a06f4af32644ea8b63135b68a979236d" - "05968eeadca7f0cd339d295cc58967a7f38cfad6e947a71295733e42ca3c1ba9" - "b4ff6195607bb530" }, - { NID_sect571k1, - "06fa7477edec5f1e742881f8d7b2af56375113e992b797fd387eb5b53c33c6ba" - "7236417b2c7e6e346267f1b8c6d7857d6e08f9a60e86de23da4b368424fb003f" - "96b4c89f5d244a74", - "073e1fedf62e8c81283622b53eb2cdb27b64c3c1dd78da0c90dd6c3c776ad146" - "302e43aba541379bc8f3bddc2e19ff15d96664ce2d09eb6fb5b13848a82b31b4" - "52d8e84da3b85318", - "0196363eef1a0e5be97d8f7601fe40ff4010f4949f016908a906ed5cdaf1221d" - "3a593b3a4676beafd1fa14bc0f7c533b17086f207f9c484cfc2fbc3db2be4123" - "a8e86f3b4911cce3", - "01b12e38914ee0075a888d6d61cdc7570c511d90a9e3a0e2738c3a9981ab9aba" - "9a6c61460bad079a28429a5207d2c801af2fdceda366440a11686765e9ba77f7" - "a6bc55012d4c9510", - "070ede5877665fd636adcfd07220d745ed7ac0a9b0202159f450c9f6c1b83719" - "2a69ee6ad955327eb9cd326a0588b59723db4e8fd258b11db888a53eb14f2be0" - "8512688329059892", - "0724c979affb3ab8d307529759bae5fa67319d441851e5817fef014350e3014e" - "068428c9dac395c5e7b9e5b8877457b3e4625ef49ede4ae3626755eefc3fb3cf" - "09c23e8a5a9f8c25" }, - { NID_sect571k1, - "018bb6cbfcbfbaed468564b368f0b0abc3fbca47dcc19f2c846bfa287370e1b9" - "12f6b70e08519f577f0cac325b79fd66b6b23aa1e2ae262bcd2e7a8b2c2d98d9" - "ed77a54c7295f98d", - "05be9bbd91772bb42266aba9c893e56670cfb66cafbe4401ca2cb5765b469504" - "848597c7f446e99814746787158a83ebf8e3796857363a8e04f8742a09d7eca1" - "6386d60fd7c858df", - "00a19a0edf508347f4402cecbce127dc6410b1967d3f89e6b3ba08b48aad08cd" - "6ca5e5d1228cdcc41a1c380f2ae9052d73db7550e7a3c1d857056c98947f5b2c" - "71c33c4eebc1210c", - "0629f70558308708e6929b1ad0fe3128a8af7f96591b47cb8ea2c3454120a6d3" - "93ed989d13231c661966a378b967efa64d3c0938e9c0b8b16c99d7349bdd59e2" - "d44804f8fee1fb47", - "06a5e50fd5024d8953e32242823250e998ca602b52599405129735a874e833b3" - "bd73d7a9dc53adea092ba8d24207f5ea5657a29919b88a6d63fd0a943b56dde4" - "c8478481b57723e4", - "005a526588a3a2ce08b20925e83987eb0a1e68f997102df7f9af83823ac8e06a" - "bbd29c04cb1f974ba9c9ac49b48b5af37679a39b532d359cdec3d41b3f80a1ee" - "12c80276256b738d" }, - { NID_sect571k1, - "032184b6863e2cb5bc71baff5b6b57a10594831cc11a9e5eedec4804e2016e3d" - "d064cffd12a1eea0f6932911ded345ace5c1ff250b9648d93b953386dae9b562" - "8c3c62527b890519", - "07f783e0341a871e6256da349ebb539f88767d7dac1511e3c3e4d43b0fd31d5d" - "d2c2f0f176eac544a871f42b983f8fba4df67ab6a239b7df997226304b73165d" - "962f4e1d2d18de9f", - "004cac3fcc00734442cdd80eaf824412c20ea9eeb03d43b999d49de618736020" - "20a2b3c47965f6f453b91b7a2c1d93e13a89544533e35a122cfc8612c8690b69" - "bb7a557875f960b2", - "03e211c3b4986927c4388d1680cb4770dee6c78266724582c66ccc50c6cb2823" - "9474d521facc7206af6bb29cced733edbbc0d20b9264ce63d9437188e3d31c0e" - "0bc3e9f9d88429e4", - "037a7c59012a82d59cc1e2f0fd4fd751e5737acb77f2a0799e0af38996ab5e11" - "090a6396cc480e6f2aabd8fad44611691e5822115fd49d2a000c9b49d1f4964e" - "24d43fbb81fa879f", - "049db68dc9fb4cfbad8247ca4fe7c573c0640abead8f319194d665ecaf4f04b6" - "1f84f5df0d8a6386f6df04ca1a685a7394567eba5deb9f739b1e623ed6507021" - "593f0e22e2dfc3f6" }, - { NID_sect571k1, - "071e167e59e2a709ebf4be3d83fb9dc69ed749e3ab8a54e202c35f8d45deaa2b" - "da86c2afa1b0a04754d18898fcdd9b185f1d8ba2e180a47ac291bb4aad8f997f" - "73b1423bcd7e9b92", - "057119085bc7cb2023d23f88101420f9f508f0db94f8dfbedd5cbe88cec80a9d" - "c708df6cccdf815d75b146280d7cd2eb97cf1a7dd550be523824f932a777679f" - "2ee9f66d4258dda6", - "00d514144d4548bcfcbcf57009f7e8ee104b15456f491826bdfd9ba67e871fdb" - "d8fc8490ecbcb269091fc7529e5e55713a81de20c0ed01ecb3159ae61424bdbc" - "5653732587d1e94f", - "03ee5f877b737dae40baf91e0cc581dfe8d291f8c451d5bfc0b690df7025875d" - "9569d52021b3b6890e01a2ba95899e2928a902cd5dc8143c07ea26749a9c9406" - "8b5c34c596b0943e", - "058e1ba516a818cae9b37086287e088083e2b421fef0b59ba816ab031375d09d" - "7af7d57866744687be3bb41ce2276d3a38f97bbb9fb59f24a92f0085b04ee5ed" - "1ac0efa671394f73", - "0343c45daab4f91e02ef9bd6e1cd157b00ab0ab0a3e0d9734918a1d896cdf7cc" - "1212bf74d7bb9bf96bd4abf42df325756c407217f44a5950c2b66af820692742" - "ed7ebe14e48d2d88" }, - { NID_sect571k1, - "074f1a7b5cfb0eeef1e15e63512c73188dafbe88e8e9c42073b2b652b9f02821" - "4f0bec79142d8889416abf7a83e29f479e7bc3ca657ef0a10c2ea3ade3117c0d" - "369dacc2339d1c12", - "00e8992a54076753029f2c0e9d8c166e6ba84896a4785ffff598c4823e5461ff" - "005490bb7fb6d878ac34f427fd9db48cbdf12eb9826d68fd2cf171d4d61c3f27" - "5d44947d4df4c752", - "00ccc6dca5a985583ce00812c3d07822f6341c79d78c16b2e7ae4bbf5bffac1a" - "cd9deab678193f8f89b0e2aae52e30311444dd11253f96d62db3abfb17e423f0" - "ddf0e991081154c3", - "03826215343cfd4ad968d572bab2dee2279f9e8effa0ff80b0df5dd2ea822b50" - "2274e507c87d2429dd8bbdba6eb8ab433b1ee1cad3a97c7d244194fd9a43f3e1" - "ff33144e2db80864", - "070f4508ae391ce24154b38873af0082d95895ac92fd1aa321ba93beef404a63" - "f7b1afa1feec997885523a6688ada94dd45eb32ca7f1bb87e63c4de97493196c" - "3b53cf83d218dc37", - "04a565cb3e15236a7f6c413afeb419c082427b10a6d07ff87e81740716433c06" - "b3254414381e4ff9860340dd6201ab6621d162cd12047a5515ab1d65f20c97eb" - "3d7132642f8ad58a" }, - { NID_sect571k1, - "004b54b3cefd415f5eaaca4ae4e5dacfbce20cba1932a2f50549bcd31630017a" - "d21475df154ff37be13ca61a4c60336b33d0ffc762aa9e9e9fc6e6fd17250b5e" - "4022b55141d23fbf", - "056f7c8d65c568de95bd1664fff71429ec738987697f217de5adf36d14a80b6f" - "e585e4685e03c81838abedfdc05a1e01407af4ab989fc1d1273ba8a182c46185" - "6d5effe705d7dfe5", - "01886213658bd17e7dc334dd8003926a447c34a197ee5d6d0bbc46e85ec1cfa6" - "802858d1c367276ca572ba27aa7a5d1e216902416b48af6e4277945e465d7d84" - "0dff1438543caa46", - "047f6cc42107c40c168dc679a864f969b53f756257113b7502796efa54cdcce7" - "04b9344ee4bf964752d68910262bd26ab6b347084404b28306ca3425f29894ce" - "6fd4293c5973522f", - "060cfdb5467675a789923be973c6645dbe26d00a39d4e81255217291a3882cfa" - "8f91f4aa8214d3524c95ef6a24e47b3b9d0ef55f670756ae4a4d9c65f075f417" - "0b2d18aafbca0265", - "047265831f1f589b5f30806e2fb80aa7844cbf32b6993384beaac7d992b327b9" - "7dfd0bb89ca09e711507e846ed4ad003e7115fa8843b23d38f320e43b5eb506b" - "de48fbd7af4983b9" }, - { NID_sect571k1, - "07ec71bea081190a9c4cdff809ed2b65a77800cd1b3beffd1e4004d126ac352d" - "24235c797a5a567daef7393d276638132ea7f0f61e550dc251d341f66102f96c" - "2abf7ee37c0fc9ed", - "00efc2ac8705b2f9c9c06a910a304c42b1ad53101aeb0d146319dc24815c7cc1" - "983b1cad91d5f9c6d5eef1677a1f2d2bdd75a1fb4c5796a4c56964aa3e43f3da" - "26c737edd9cb0910", - "004c0dd3715e8888dc2222069e7f611801685140303e16b8b443433d5e18a4b1" - "803d5680416aebda7ae7e9449154be346a7dcb36c1db22744673fb3b245e5844" - "0787ed3dec6d3db5", - "02fb241eb2c28a1b0675b5760fe5663efa603eb0590842f455973f0573e148a4" - "7e63f97e8df9a570b0655d5afc42019fe95fe44fdb02a68271d82df580010f91" - "dff0cb3d9bda8992", - "033f93a9dc39d87403b6a94dc0632dec6757842d0aaf8ad8c41ebb637058bfc1" - "1c19a3a9abddf204201ef4f96fe9629233a5070a08794d14470091e30cdd876a" - "af65407627233234", - "059b62c25c96955b8fb4deddcf90ebe6845ee71ea357739273d6d67f21a0c47d" - "154add9d5d4d2b657fe1988ad614b0b4902faa92fe999abd754ad33cd6b92fe2" - "f6a68a6f2c1eeb27" }, - { NID_sect571k1, - "06708686b4f5ad2fec457aad5ac4a3dc4867a477eb54fc0d493511b5561ea151" - "dd4caf5d4311983500b48c8043af09e3f4042d5a07ebf050a4e801daeef3317b" - "e093955020452b29", - "0525c8682583b55f7ecec59b920846f75d11d021e9ffb20018639f6ab9302247" - "2c192d398e150cdc630a11fcf942e5d238cd6c14b30f44a24d2f843ec5d135dd" - "c7abda56047abc21", - "007d54194fc226cc39f640d3d17b9b95b70b51f98ad5ca1991566108d839e377" - "e21ba48cbf441530b3341ddc61b0a58141aaa66530241fa529505d70804b2560" - "c5be481310b9962d", - "02ed5f3a2efa4ab0f9db5fced7b1300de4d457a9ad0827457e5e1c4bc15ebd18" - "3775de4b73c1f820dd4033366100e48b4164d04e9fb6cf1a4bdb55122a86005f" - "bd0bd2cddbc95fa7", - "0327fe654ef68563cc8888acca85163c2b154fb70b0f4a2b58c36388a0c25f80" - "a4c887977d46000dc4d86e95cfd8f9065c00eb28653c8fb477bbb5c63dd47b83" - "ca5e0f871e9eed3d", - "02777c72853b76b29f69d3aa27a1659789a025af0633d833b22b57bf328d231e" - "bd128bf96a4c8a7ffd2ee7a51e5ebb7a8e5bca20e4ad49671a2123dfbc0d6c40" - "594e04765186de06" }, - { NID_sect571k1, - "07ce7674403dfc62895d71e2ab587ce735f279f12f7df3161335be43fc2908ea" - "736f6f58b932d793aff66f332735d4d38f05cb03cf275ca0e00da1f57381e08b" - "feb5017877342272", - "07d6649f3d91e7bf5f8de611bd971818106df2e37935bb464cd9e7469629c6ae" - "7e7f2b2240276cb0eedb7a26d0c7d377f4009a1dd48a793cc993fb0d4a04db1d" - "bad4493304bc5c0e", - "010740b958285242045cd5358d7ff9232b7d7d413af7e205c285f88492ef27a2" - "fb850e0567ec24c480c75ad32f70342025c86267dbe4ff80a2c509e5b9a45130" - "e99e7c7cc8cc6ece", - "03f3f585cafd46a663b6cf8b8323ef9159d5195d3118f3edf38732ca0ff73b2d" - "065d9e69ae1e3978b2ce6dc61500f7b8bbf6f6a70b47bb64cc4fd195bba6ac93" - "2b70beafe174148a", - "00b1566fe619f2cc00aba05e24a6cccbc91338b2eef553da0d477d6c8c0ac4c6" - "56e134dbcf31ffb15c67d589bd2918f1174909e5428c71c90e38c4e11b56236a" - "bfa1de6a8579eb4d", - "02c2ec1632e83416182a9a438f7360b88061bab84f5bded3dd8a0c87baf44507" - "df94fdcf99353b107e61cfcfc8af071b3aa8cec7b34a542bf2ab8ea0bd9db67d" - "66b428c9a6c14458" }, - { NID_sect571k1, - "0483ad7382e348afc7f271d50d8d39b814b7d6dc0c562a6ba556568045bd2d62" - "0906ab1106f9137ff725892e8436a8cd7b88892a32f19ab269e2ad30d7f0ec00" - "e3a052fbbc466307", - "041cc4b0f195dc73c4a8e10605f2a382923abd2381f24e4abbd401e087c50d18" - "f6dab01a25db7e89dfff68c663494fb4d087a816b85444d882bec2ac25e42fde" - "78ebcca79a6fddf0", - "00c85e5d2ded5bc3b6b553fe0a02311b72bc5cdc8e96df179ce57511c26ac9e8" - "73fc1f76cdde9a7d8e52a7e9be5c7753620331e8977a98902b48ae9899ce8a6a" - "6636611276ae2383", - "0289aa5209fe7b1ad7b9c5e0e630ba5e02929ea1b1f114d30a0648012bf029e0" - "66453f2d28e1d503665dd0833f0ba37e4583b434dd9956100a1ae6e54f96d934" - "7d806741d3a76e31", - "033afe87b29edef447ff5a02e63f64905b5f53ac856cfd7755ad542812ecdd56" - "8e8ae1f9d32fea0f02018dcfd0e16d6a6a2797b7e3dc855bfdb6b0d0b2525e14" - "3678d539bf8c0672", - "07e1d202a54d34020939f7aed56931f21b206761e4fc79b9a7b320f81077be32" - "2ae7809446b5b3ea701618ecdb0a1796ab80407a281bdbcb4d580131b61f8743" - "bfef7a4d9c5941f1" }, - { NID_sect571k1, - "07a5e8eb4968497a11b90c60e13d5f3c61c6868573a6b6db7c208a856d54e74f" - "4368e28100b9e0bf49fc3104e146fbda784623a36d9f01f23ebadfab04d7f48f" - "f66506c698bedd11", - "013db968fc7cd338cb8e3042a171fa306f9ab6f6c865ddc5ba5fe994a30d8fc1" - "fa127191f08e4e14b9aa086a52fbcaa46d22107fd6df53108b53fe0bb96bc974" - "c03a8c6528f9792d", - "0053a48cfda8ee232cea3549927b22f375d6096560025e213161d43eed02d073" - "65d9ede7c93d457ea51ea2369e87463eddbf25a06bb1f080fb4763074a8283dd" - "3d69f1de865295e3", - "04790f9db600b9a0a57e03d274a3d23a55aa0d86b2d6fa07fafe3c9d4c339377" - "1dde89c70a6470a31bad105c21d4844cd7bfc3b59738f9d6c528c414d524f88e" - "0c862e4e17aff454", - "05dc12db04e2489db8a46cdeff9f8d9d2e00d024f656c781eb4d2db167624b3a" - "70addaaa158ca00601d4cad065917bebe766912faba9987fcc5fc8a78dd21643" - "aa650e6a4a7e2061", - "07f49ee5d822b17e3f1ec9946fad8d0a0a6b327242afe675806b3e6b7541745e" - "21cd1b70df926af057a9f8deae4cb9a1edc782014426152e8aa4cf6a4080dad4" - "678dc8ff0d9e1af9" }, - { NID_sect571k1, - "013caaf8ce2e2321cf256f2b64aa89add6968c298624a22bd38ef94deb3a70ea" - "44ce87a948ea56bf0ee9407134f8c97b17b1f54561ff7747e3f6b656f80d6077" - "8d05b8c4cbbbcf3c", - "0047a2dca3eb6754b0a9fd16b081fca497b29dd2ec9e6a7596d06b059c2ab189" - "00fcc58715247276e390df1dbab26ba81235a4dc6738237fcefd3812b7ab436c" - "926c50c600e6e907", - "015a5e5946fe2c9cae6d412c618c1bd07724432b2f1dedb1327d8a99ce830e6b" - "030f4025c14b4e3d1912ea9a78290a1cfc7d0189a30c614010c873146a182f63" - "9193a2912edcd04a", - "03140887e87039797869f5d9db50d91ba69d0bfdc5a677c700610562f680d951" - "a5e0517cb2f966367d48e423b046db4e68bc1c4b3183dc80bee126e89014994c" - "df83c4312a3e5ea7", - "07b8d706962cb192f0ed14c4da710d1b1b073fd8ca497a94379a7454c9c3d4ce" - "6e5fd2e6386852a77c5435abb23536dcc83986cedd4512752f295ca500f055f4" - "62763c29fb678caa", - "058cd5608dd9d64d4d822baeca123358a4d7e56d3777ecdf569a149c2f85ed35" - "479eaeaababd0b026dc3b56aedafedfc8491040413f85b669d8512a3ef7bc8fe" - "8706b5c7585370aa" }, - { NID_sect571k1, - "0743b3c965a83ee9f6bdb9901a1dcc1f78196544a88b9cf8117f89ed1574e5c5" - "d804fc451112c257877e12b0a66c693c6655c12bba4535d99d62405f4a9dcebc" - "056d8b7cbbada120", - "03efa58aa3a8c6a24f43c5581fec041442ae955275dbc1d46d10156059d2637b" - "9a82994b024a247d2a66724ba90d02787b168b1fa1f4b6749645406c438f8d31" - "6d670f1e0d8b0301", - "00bd58e19c05df7e99bd962070e0b4c7576042858447e023b41bb29745a89a48" - "74dfe325a15d38d2fb9e870f419dd15f4aaac65dbbc5ac2c540f57cdb0e45bc8" - "6621726d922d14aa", - "01e4b2a277ddd78f2f119c05b6ae1ea7a2a744961e08940f6569ee8808c53bc7" - "a12138064ed5c8c222eef2774e70c28bce3a6c05f3a654e121006ab62bc94381" - "d01ca0d1b08234d6", - "07eed8cd7a8a3549b0d9ef8786879efdc9c0f4ce90b3991a33cbbb1d3704db93" - "513138b19a50ecac880e578de21046f03a200048180884bc42cf9aafe58cc1ea" - "f536d6d25f1541d8", - "03bf7a59bbdd688682c45664d20c19cb2d24fcca6772120cbeed1cde762d449e" - "bf22855627eb6b2be6e7f7c0f0034d02686f2a4488549f8cb198e02b46972bcb" - "88914bea66dd6400" }, - { NID_sect571k1, - "0722f1e7a0607750dae2d62c5d3d470f006c3254558eaaa294eeedbca8d30bf4" - "abb955deb62e4179925f6cbadf3bf8776f15dcae3556addf797105a77b7f6f71" - "206ca0e6ea91e188", - "035d108ca0d620cab96b7cbf617d1b5ac06e37792629886564fd147c58e55e42" - "3344ff4f1fba4af0fe34152b384b7685caad15d3bc270e43422ad874e71e408a" - "71a6c8a90d2ad978", - "011463070fcb4a28be4e2a67c29c7fa48a4c585a307405d06a1a0678e909dd6e" - "afb898662cdd8bcc019deb14e5d92d172ba1c438ef0f64d80107c7e8e68029f4" - "e0aa814a1099ca38", - "00939398e463886f0dbb48a74f573a1215000668e10b57989dc300b2f9a8c08c" - "d43d6cbb7f46ec77c1c294b23f86299027d2b93fd6eb18210a8230bf46e3921f" - "182c9260c30847ab", - "03d48ec633b9da1650ea762656b3e31f26aec07e7ca6aafc1ed7cb466eaaf399" - "3e0467048c967bb1e9b4ae073a230c1e2f74e2e618666cf56a06f2b65ec3955b" - "6ffbb06a908cf616", - "06d410e9ba6b8b87b00d0f676de8ba27f6afe7e308c2e992f318fc14cba0a447" - "316ad86e8e6c1d3345d8e4035735232c2c597e760b8800a89a521567b09408f9" - "c7be279c137c963f" }, - { NID_sect163r2, - "00000003a647ba32dac71ec6780b0638a70cd24fc3bd4c8e", - "00000002e69e961541844a4aa33769a7bce710f6640a560c", - "00000003edae173de8fa0cf0412d6a7bdc81fdbd0617adf8", - "000000035466701d0b0030d098b6ed2343d355c24c907271", - "00000000d8bc02f341d261860dfb65f0cb7f0b488d8296cc", - "0100fb42d177ffe6c31378e2e04e0da7376ffe8765" }, - { NID_sect163r2, - "00000001282898936486dc2e3cd1585f32d5544264e191e4", - "00000005e9e98bb7499bf895f77f8fc8301d6e1c7a9f6191", - "0000000178dcc8216425d4bf71c8f2925dd1af86dc04a268", - "000000011e49430cdd06f2e765b8f2cc067cd424e2e75485", - "0000000083af15b22cd7dfd1dff7396bf3f3038f50524991", - "0681c9e59eb7eba769f5b6f2b06ddf1efd12997995" }, - { NID_sect163r2, - "00000005874fcc8c484c014173102dcb70c624ee6108d31d", - "0000000049693f4edc714b0d0baa5bfc5d8bc6ac04089de4", - "00000003ea1e79e52a070898d6a3c4e748e95ac8710d77f6", - "0000000137860ba3458af13c22af8225f561e01331cd87a8", - "00000007720356e15dc73f9fee7a1c021feca97cd41204e3", - "01e0749a21fc508f76dade85435bbbe12c448bd8c4" }, - { NID_sect163r2, - "000000003748d798f140268f1e718b3b23aa2acc0333c074", - "00000000c42a927ab579696123095575ac949b07a7d1d4bc", - "00000001ad5ca9abc8bcdcc482995ad1a977e4727150bb36", - "000000025ae78311b0fcf369566a319f89849546aeaec305", - "0000000640eb0fdf520480afbeb9f2674feb1d6df482d7f5", - "0320398f7acf791e0d602d7b94742cce58e9fddbac" }, - { NID_sect163r2, - "0000000380db3df2b1c0154a8e8cb304aecd581d35f315cd", - "000000071534ec2e8b357d9e069d7f1fa98bd44ed8b06826", - "00000002d28a8aa1d89fa3e5e596ffd1808254ee17a0d0fa", - "00000006e6c52494ab63c89c9788556f716677f3b48042a0", - "00000004e98258b9c56f02d3edb4ca5b0aeeaa9daaa6fe0f", - "03e4de43de85223d818e5be6549c29cdfa1afe1782" }, - { NID_sect163r2, - "0000000136e0d05b4f398b827e198046148b2f41573fc07c", - "0000000739934cec10572852e1f619222e2f5ec4e0fa5aa6", - "00000002e170f7f4dc152fe4706f99d9be229e1317d82bbd", - "00000007900dac251de8a944cf0a1bf2eb2efeee14676e9b", - "0000000091e7df67f77622729d59b7e34b947127e7fa2e5d", - "037b178aab014d5abab305e37deed7f4798cdb862c" }, - { NID_sect163r2, - "000000076c3ae4a781673627d0e9bcb615f626a160a55dda", - "000000058c0ec8f2649c2ddcd9c24b643433b14d907c5903", - "00000002923d2c802cec42def2633debdca759d59744d3e8", - "00000002cdcb4f91ed7d17768db80be2b3ac9e0956b1d971", - "000000032433f455a6cd253e91582d2f6f5a712655da1d69", - "00958b2aaa6061222dd248a6b9700fb6839dacdc99" }, - { NID_sect163r2, - "00000000d65f0516c1b3eed9220e59b3d049dd1153179ac5", - "000000020bfe107a89a7360cd2e217534d6df298cc4bc458", - "000000025b17bd6e4207d9fb1a3af02fd5db26af8348aeb0", - "00000006f6f5b1f3b18f45db4fb3777e6840fb5a5b61a914", - "0000000737ce14aeb24e0591585a7417b89256749f461de6", - "0393387e1dab35748f20d506a0e2b4dc0ee6c3ff39" }, - { NID_sect163r2, - "000000040d903ce2b30f70a6a03849b0e1758fef8887bd31", - "00000004abd8bdb7c1327c99b33820dbe18ae114fb435949", - "137e8132ad288923e64811e92298f5c0dcc95705", - "00000006f2cdd1d630dd731ed77f901c7b0e735515e26d4e", - "00000001062f2f715c4d2af97bb1be8b6cfa2e3ee314253e", - "0212358d3f8bce69b662447333b3edbbc9b2f7e805" }, - { NID_sect163r2, - "000000022ed24643f0cec68c8e4ad1aa2c4369d8aa03f594", - "00000005ccca62b6dd1d316dedbd0f1d530bed6e556b3ad8", - "00000001c48c50b7d3ecdf3b901bad0eefc3e3826e3cea9f", - "000000019175573117dd851e6eebfd9fb1e5a884ebfefee5", - "00000003adf37e4ded52573fa57c8cb2bfca6c65c3674462", - "023472fa59846f7be07cf060cdd69a9fbb27d4fe44" }, - { NID_sect163r2, - "0000000793f4b31172eee66f2769eb305d03b5c3f7cfff8b", - "00000001f3ecec6bbda9bde8a4da14db3e5ff934b9835b17", - "00000001162d9ed3a660455e8c015d1e45d1515749a3dcd2", - "00000004283eb0e5085d198b378fc95f6fb4c3198b4d3c78", - "0000000107a1168f2f47b963e4b3a9024e0c357a5ebdf92c", - "0173a056c4c9ef6707cd23928999c4680f42b71f7c" }, - { NID_sect163r2, - "00000002ea7a50834602f112f6dd0e6d25f064f9d05eff26", - "00000001bf3f69d14acc8333533a88c2e8824863a47ae027", - "000000019a1d16f4a572f3c1b51ea2ace69280e7137b8f8c", - "00000005cede96a70f714cd68963f2d6ca236269a938f311", - "00000006cdadd54b6f733c80934787e28c2ccf58b1227bc0", - "03d34f411a297d7c990fa4a83b5f54759607f9d33f" }, - { NID_sect163r2, - "00000006dd1305349e8aa08020073a0de5afc5dc1b6a62d3", - "00000003497eb7bf4089ef02cd0a5dd0f86bd8798a44c56c", - "00000002efd4400dad3cfad8d1637fa9290c4b758a3015b6", - "0000000513131b4bcb72ef68ab043ee84fc8cb03b6d8f187", - "0000000120b7d5772bbb17ecb1c9e80c36f808fd54a93aae", - "06120aed8d4c1e506710e2cfb98ca2022e642ca89f" }, - { NID_sect163r2, - "00000005a0e341118e69827d6a7f8282fbf0b94400f08240", - "0000000423b993d4367fbf4f6504d9e09a64123a3b53d128", - "000000012b0d64977cfc13b48345ef7072d1a3890eafb95b", - "00000001b9363cf48735676878d80ce1481b8588683f7444", - "0000000768fa7327cd7252c8f696ed4947868915ada1fb5d", - "021a58087968c5df57afd7c343a4cfa2ee8e7073f1" }, - { NID_sect163r2, - "000000001a923d6191634306124c1e267309b07dba32decb", - "00000005a3517f5426a3411a727eddc29a3ec229558368d1", - "000000033ac953803d0446b3cda4ebd071b4eb027c11bfd8", - "00000005c446e9896ca44cca733e9f4e5b64afddc0537211", - "00000006bad1b2522692f970b38be6935dc7d1c09dcd206f", - "03da9c0879219e48c3df56174898fab9ee5b0a6bcd" }, - { NID_sect163r2, - "00000002fa8baf0d6128add9b902aa181c81e24298451e2e", - "00000002b93d1f6913914ffe1559c7c114c631bb6b29617e", - "00000001bd79145ae7f42c6b25d1c38965ec08fd27533a7a", - "00000000e9d8fc3a026925c8add508f920fa2e5ff5282688", - "00000005b7bf631259ac7d36936c130ff206d820b13bde81", - "05b33fe3874d32aed99919265cc0074902e538fe54" }, - { NID_sect163r2, - "0000000353e2da45ab7c4930280c3edb4ba90012d56df62f", - "000000026931e30b97ff5ef7bacc0de4d9490708522e3b2b", - "0000000330ca1f5ad77d7a66d87423328020c91ec79f3764", - "00000005ba37d36997c4f2abe603dfe042232738e82b0b3a", - "000000073c8cd950044972a005c6f1af8e4306e0ccefb946", - "053dbce9826af4d290036feb46875e975b7848a9c4" }, - { NID_sect163r2, - "0000000721670884daa8cd627638ec90f3448efb0f2489ba", - "00000004f84a983bec6b2889c8211bf231149b5bebcc75e0", - "00000002d23140074d6eddd5bc099b17de12afb9ddf2ecbe", - "00000006e06cc7c30f5ed7e686c3a75a1d44257770601cb2", - "000000030dc414c4afb390ed467af471aa9bd2b75f32dfd8", - "00d49b971cab937f40908913fe259849679ca076d9" }, - { NID_sect163r2, - "00000001d6319ec2dc5c08f0261aed0231418d6dc3d0cda7", - "000000038e64953f7cdac71d052e55855746b43d44181b91", - "00000002449c1b9ff09e7a9a03b17f5ff461115f5f3f1a7f", - "000000073f9ddddc4650933deccc9546d392a35dbbc66a76", - "00000004de7558dde649f72322b39e31c8e29ce6f599485e", - "0483ad0b7f8a716273f624b8979c19126705266e4b" }, - { NID_sect163r2, - "00000004f167907bf4b98e8696d81da7d2c1056efa0dc14c", - "00000006cb9ab65143832b9cefd5d9ce69ec4db2edd067aa", - "d08b95d9a4ce724ec462cce12701fd8c3d53fdcd", - "0000000026a770d86e1c89ba7a86aef649ba7ea86fc7d5b2", - "00000001db1020e0f764df54a53c23c938cec98d9a77ad1d", - "00f69dcb547119fc9b8c454335aab184c3ada5f1c6" }, - { NID_sect163r2, - "000000079b6d14c743271402d1323603215feb3c68b14455", - "00000004e3905686a538c25a02bea92f42184021b5ea2593", - "00000003808efe6ad50d250d87192e16499ce3259428f3b8", - "0000000013a02e25fc927875afa557bd673f65870459e671", - "00000004038dbae5c5e54084708a24bc3fd072e769c12377", - "01bc5ee5261b2bba55b10cbaa6cc3c97b98d00ffea" }, - { NID_sect163r2, - "0000000772f42d272a057de0ff926c9f94605c6675d21526", - "0000000602e7e53255de9bf58c057eefb79bce431b5c3808", - "00000002ad232a7a41e6cc2495538d87b023cdec7b6e1f23", - "0000000549e30780d93f796fdcf691905575d85c66453bdb", - "00000002162a885bea31344543f5d06191369dec6e70e967", - "008574d838d3de87965fc1b4343fe4f078588c4ea1" }, - { NID_sect163r2, - "000000050b2429460971739a9d6d5670bc6d759e5656768b", - "0000000492bc2d3f638d4978e4ca58ca5a4ef19c5eccea8d", - "dc99b19f3d8847875190e9588b2bbd830dbd3a95", - "00000000f65d984d71dcc18bf172abe4d3993ce0f7cf324c", - "000000001b49e6a2cf1173aadac3af6c09e966f31141abd9", - "04579b477a92ed961cfdb2014407e88e7716452a4b" }, - { NID_sect163r2, - "000000017d52116f0c95587f1b7b06c76e98d99c82dcf20c", - "000000024ea22bdd990bd79e63e735b21282ae1b5ea66648", - "0000000356ab85b04d0851b8f66b4a796526d3f3e3882844", - "0000000776a2e1af932d74519070bfa941eaa93e9ff5e97a", - "00000005abe9ed46245fd0146250d2a563c46ebf7acd2342", - "035a8c10e64403c52ef8d17c5f4dead0df81fb1f21" }, - { NID_sect163r2, - "00000003a7ea10ba1d6aa545700b40b737951a9e736dfa0c", - "00000004f9352fb2ac2444e928754e3655fd62e3a42564e8", - "7a7b547550c758a9de7f06e2f38e55f5e9e44ce6", - "000000045952c0b517e685cab09470327f9d4b212751b049", - "000000044a429a6efb04bcea0240ab5805de740aa61f994e", - "000142615e3607ac148c4de8f334be849235d01cdb" }, - { NID_sect233r1, - "0000004756baddefc3dc337ab27b5452eb10affd9e31f5b55c330e90f0f686a2", - "0000012a79f65232308a21c98c01555ccafc7dce15c8fed3025a760cbd6c2327", - "0000003c3ee474ac0d0bc1df567e3c35f5f766c5332b2d6730ff0e4d8e75aedb", - "00000061e8a9b517fd05a026ec376616229fd8639a1fa76defe5398022f9d9c8", - "000000706b5cb08738a94552fee584b1372fead4af79040909fcf6f50084bbfa", - "00e9f3d8c4f1bec0f920e763ea1bb7415899f01734609e7547dc425ec946" }, - { NID_sect233r1, - "000001186a028f9a18db927f63253c203eb26aa3aba0d40b1a3abc64e47a22ad", - "000000cbd8b95f89e421128bc73a43c5cc254e3867096ab89d788b2ed3b90a96", - "000000aa41a5a01a4e66a67997b0be16f56b160b0561ad07f3af2964386461d0", - "0000002d91402446557068c40fc075dee93916b0f1a9392e47e56b747125ae1f", - "0000013ab0915e4acf779516826fa1dc1885a06abc5d0809c92240ccf9c3d8a4", - "00f1fbecfadb158d62eb1109c085124fad67a8795b58815eb396c95db4b9" }, - { NID_sect233r1, - "00000093bf85621602238e98d09c98828d51a49460362c23c5141d3d1b235296", - "0000008497152187a8b3b2958a1d0a2eecff4492251807cbfd03d5f2685bca37", - "000000c6677c28068b462e34862ce6c9d8ad8c1b3c7efe80cbab41da419278e4", - "00000042cb311dcff2482a2cece696c1eb64c69ac2aa599209a5c18763a3150a", - "000001b0329f36c135d002f08be3e3ffa9da18c5d6a70c360f4f871f12bf3f95", - "019ea831c51d88a7cf754495a1c474082ed481c8eb83190a77defb09d479" }, - { NID_sect233r1, - "0000004549648692af95d88e4e1d4914d8c9769aadac5a0f75783265f3eb9657", - "000001b094b4802f397663d0e682fabf1c94c4e214e48327b95eefcb92b771fd", - "0000009c61024b3dff219b37f1be6701804adf247414448dd0f0dc51293ac913", - "000000124120d8409850e71e33c9e2d9c40ea32bed11d77804786e9b076892ab", - "0000006dae1ba4817296ff63073bac9ce065d4331ba1a5c899cc1c07405dae3e", - "00088425fb04c2ce408f08d81385a322703a077bf00ba0791e4e79b80419" }, - { NID_sect233r1, - "00000073c5cf4a01d09e3b41b5e7778c6b9ba52daf88fc404f8e2fd09db4027e", - "00000070391edaa76f0e3970394cac0338061058858c3c73d5cb512e5326304f", - "0000006e69d064dbd9a794f68e699a0e941bdda6a53a1ceca3b3db82925b6f8b", - "000000c57d61fcb1fee90d5d8c97cbf188c8ef8259b0ae2587ecf1ff8cd2e2fa", - "000000b8ad86c6805a4ab44513dbba2f5098b9e9c1e05b679f52937aece2b182", - "019b5efb23bc18a4f18c22fe2fd5cdbd02372cabde5e5c9f4b4f9a49438f" }, - { NID_sect233r1, - "00000123a6b081a761e86c042e1914af47f093b2655543e564584b60642539a9", - "000000518ee3c1ae546404df1eccd69aa6856431d1c8881cf0578cff4eb8c11b", - "0000005ae5de30c7c3171813a2dd3e3ea2c5ceaa0473c39457e9929071e1a420", - "0000017cf9fca05d4a55e4b68fee7a3bd43f047303f2a266d81bb5e1ec7e2558", - "0000003b0af43de05003397de1d4b27827ad2fcd675cbf61a445a1ec40a569b6", - "01f36d9519c3d47f030eeac3338db583b96fefa551a4b56cc5567f2d9d7a" }, - { NID_sect233r1, - "00000141fbbf2b361c2c8ce5edabfa22aa4755581e5b1a66600362a0ee7bc574", - "000001aea3cac203f8c780475a2609b2970cc86f96ea4011c348da8262b334aa", - "000000c68796955b68b5f8827e38ac0782b1ac2c4552caef0c60958467cd85c1", - "00000034789fbc60f1086034c8f2ce86fd4aa335194c9146890357dc475699e4", - "000001d37f796327f71ec31510468463d0b2905488a4a60267870dfee567c250", - "00e54b1c916ff3ba1aa0b2b99f0ebde4f1a4cc6a10d959bb2f7f4c777b84" }, - { NID_sect233r1, - "00000096a0d3f36e8f753791074cea697b2471627e0c9e7a294a029a9d3b9429", - "000000b767174a2920b62f1f02fa79097845d51d93e0c8104410831a2dd55c3c", - "00000074245cc97dd450935689ea3fca7b0b30c1d67ce6e8be17cb1192575caf", - "000001e1c570acc653c706fd7740194a554de7f3799a12b820d6a941197f761d", - "000001e2225e8d0d41c808f6ead7af320fb25fed29a99098a0f0e11cd869e53c", - "00bc0dcf7585753cc79aa412d2740b4b2d1c644fc9755cb0550286bcf68e" }, - { NID_sect233r1, - "00000166be2426b3bf8e6d05a24d7d1f2c0e329e4120cfc8e6ff52486f095586", - "0000007371e288145fc25a5a9cb5f2a386034f2f328c6eaa24c8b096e8ab1f0c", - "00000097beed4b738a6205cc9ea046b448b523128b93101a02d964435eb17806", - "0000018358da94079a700a10b20a2325d33d80e95eb4fc4a98101c312635939c", - "0000000c4f442d0071c7bd1d217cf235fd031dec309e85ea2014e68b50fc2ba0", - "01b7ef3148be331115321b1c2a68832fdfb991b26224a60dddce3e060d27" }, - { NID_sect233r1, - "00000181f3bb0b097713277c5f3b46cef02aa9cbe29ab95c76e9b60a1f7a51e5", - "0000002e2fb672d72bf78f7cfedc40d3726c6b4fb585417c7476b655e32bbd3b", - "000000759c55da55e1fdb5ba7f8b893abaae5925b9b08184a3d554957acf3ec0", - "0000002af25f810e18a81b69da254a65b8a6c7ab80ddc27c85622e2348add132", - "00000128b753e4b21a8c3acf85aab92a9aa6a7b33f2cb69d7024baf8e8b07142", - "0041249865c913b287a253150b207e2682efd96057cb0709e9bbb48c0fc9" }, - { NID_sect233r1, - "00000065aa4115e59e6045aaf99ee1beca1fab923bbdc919206e0931620ba996", - "00000128d00b775899a58a59bcb2ab79d609e2dcda98e6523bb67168554f84e6", - "000000ee639d89f0e433c075e2ef57cc243581e95b261f8a93b8ef6f5ebf8015", - "00000006638f6bcd85043395d01d767ff77e9d677f37ef400f2e16fee86dbaf2", - "0000006c12496266debb1d8343b9684e27c5f7129c17024a8e6704672a5f3d63", - "01cf480fbc2be2c2c4448c88890972c7ff9cbe08a75e26c3809596b8b5c0" }, - { NID_sect233r1, - "0000013576e700f36367fb741842f231889f36822aab2933c245eed57b9dacad", - "0000017910e9071a3e42e7f21b363f0e687d289810a4ec29c36ece14854e1dd1", - "000000929b09b67b29aa4ff15d6779a1733065049faeb2c227012c49f277ed51", - "000000ca0403d95d85f0cb0ae4d2aeae18e187b79c201ed68c14ad24ed003922", - "000000cf6b0a502b290d0aeee820661accf6ea597687c45c7f93a773d25f62a6", - "01ce8abf3c8ccfa30e5f35ddb75f5e106aab1e67086156a1ededa1717b77" }, - { NID_sect233r1, - "000000e9fba71a64abb177fa436cb9739c9f68c0155adc897139c1bf3df99a53", - "0000019af1131be47de08870835da14946fed73034179f809298d0149b16dd36", - "000000e27af04efe2d86ffed6ecdf718fc0b8e049ed222e7600c3ce31ce4e97a", - "00000145ec0db5fe62b92547792012268af21ba928a8fd98d0a1dee3d8fb2559", - "0000010a031cea56b183e93093008ab705cc9099e5b65c5cb4407324b96fee90", - "0025df759a20312361b9f6767efe8e8d69979e34639469a91fed9fce04f8" }, - { NID_sect233r1, - "0000011f994a416cc1990b8c61767a3d68fbea73af7b48b655e47470fccc791f", - "0000015de988835d6812f0bdd7007a895971e1a06f4d22ce1303c9f55efe647c", - "0000001a726d7b9928691eb0149ca8f0edee47bd0c734113ab6003241ee193de", - "0000007426bfa8878fe59b16a9b8c63910a1e2fbc6b07ba995ba04c31402112e", - "000000944e9616676cb2fc7fa0f9e1b87a358748243e80fb62264284645a6a4d", - "00437ab4a53756ff678a1f580c0fd1f33b23021d62060808453b4aabe627" }, - { NID_sect233r1, - "0000010513620aee0d0478872438e99b23ea4900153f9366eb17d61bdf35aa19", - "000001136dfbc8401bbda0d675ca06a0cff6bdd467c0ac9a978293300728e7dc", - "000000f459c7672169c1259e4e199333964c1fffbce75ad30dde1264f5cb86d1", - "000001b44a81895d2105fa16a6e09526c09ae7f6cbdbce210870f4e33db8b6f4", - "000000b1e072c62a2642975f06c687c6467da295ef93f04d1c5494a624683c80", - "01ebd55823c57d1fc7b36cf1ed2051ead64db6d114014d3407186f50d957" }, - { NID_sect233r1, - "00000035dffec9117ed7167627a24a3ebddd49a3f45d91ad18401d3d449b2fef", - "000001931754ce5cf557a1c1acedfe5e9a7b0b91f81643da8586a6865885f042", - "000000656a47b8772b08b1d907c823fb6c45c65f9f18f8b43f3a61e6c74611e1", - "00000153cdbad92eb8d20da0c1c7aad46d08336cbc976e8d6f83947e4f4d6616", - "000001c977b97a5e1205ca66545df3a526b6e325e087c0e070839fe7ec1ee788", - "006d07f6e08b11a060ccec43b07ca7d9eaf6c3ece06f4785519284bf6f0a" }, - { NID_sect233r1, - "0000004845ce661b1eae34c1699f1bfe38dc87ef28b8b0a7771ff366dc21d863", - "000001096b1954b06eaa7073ed939801aa2974da1d60d66e97c31df0f6876faf", - "000000f14f5ec4efaf86e43fece65f17ff91b1a8d61be3416eeeb884f4e2d14e", - "000001d9f8c01e9c20f6150ec7620a75e39e96f9247bece137b0365bec54254c", - "0000006008373b9e087805294dadae00894667fdb9f6b8a4d16295e5b9d21a6d", - "00aea594f092b4052f7564b2e5651bcf43ef7e336a064d6bfb1a89cf5e51" }, - { NID_sect233r1, - "0000014734192165c96fbdb794cab1e2d1ef111e1a20a7205db01aa803a032a2", - "000001ecdfc3940b7d0618cd6315441751f663df74d356492ef934b4ba2b2ad1", - "0000001fa5cbd88a146f6ccf5f79dfbc70868fd9bb4c8115976c96270ff7bc5e", - "0000014d276f4281cb50a26b29ec81fced96d0e909994b2285433855256d58db", - "000000ac4792af62a0dc4fd4eec384fbf3fbb82c8347486bc1eb1338bc7f3ab0", - "0099d6d076e14ccfee15ed7e7ef384bfee12deba8c9ae8f6cca3486a1494" }, - { NID_sect233r1, - "0000007e1f3251e2a0aa6de1f8df86b85ed9d11da5eb7136add45ea7d25c867c", - "000000d96281e0756de9daa55d2ef6573bb2fe2dd09b71d91191a5a043bae0f3", - "000000f58684ea14a68fefb8cc26b267a13419c62d7261bad14e5368a9819a18", - "0000009a65a85394070fe0e5a108164eb289cc3d77ed0848fd57f384e62caa20", - "000000e7f56f2c27be4faeb20e274c2604c6dc2d88597030ad2164fad03cb904", - "01b1e977c43afd203132c085b95db0e2046a4b6ac2c046ee9ad665050578" }, - { NID_sect233r1, - "000000be1ee750f2712b2acb20c45e97357c50db3be895b33f830c71bc9f4f3d", - "0000015fec810cdb179fcd1ce8e4dc1a2499e40de8a4a49a9420f00e56110cf4", - "000000eefb24789b32b436ce39622c114c39a6cd1e58ec9443c8870e5ee2f801", - "0000013fb1ca9ed709bb386fba02cc7862fd6c64e1087be5f61ea733946c1634", - "000001cb4097e44a730700debfe8143fbf9bca3a3d6c46985a27cd5043b2ca5a", - "000e4cb704355cba1b40cee3da102cb048519a91b4c789b3757cfdd933aa" }, - { NID_sect233r1, - "0000015c2e2ce0bc722cea4cbc7c3352cbe0d28b5b002e44d93705895d791afc", - "0000014f616983ad08e745315c4767b0ae21a6fd8a629c258ce7aefa4c17a8e0", - "00000017524d506616bd205cb3978bc75e3a3476233e49b6dc206f9711697557", - "00000150a17327845e7bc79d8ece12930dc2b77654caa1082b57b0cf8e05b1ac", - "000000151c76822d8df5effd8c6943395b6a8d538431d42e846e9ff8de7eaee6", - "00d8c13bc5e819c6101daef3f6fb5be6bccecf233c4b7fc65054e8e8d3bc" }, - { NID_sect233r1, - "000000bafa9bba92725eef0c4a0afcbd4263e55f5155645b5c58a96bc3e9e965", - "000000d1b3d0e35d617e09e078c571a5f41ea22dfd112d67a94d8dfbba66e9a9", - "000000a6b05d30a703f1179a80f8a864b34ca15c453e82808a1095e435e9bacb", - "00000093b3252251fd9d6d9c81d78cf1f134cdd554d63c2a1e2f1afa14e2d4e4", - "0000008aeb0a8ab3ff5e4fb023f7e1917f0108890af11abca7da027fadacc3b4", - "0129af50fa085133771753f297a313bba0d2f5882e7634b7ef5adce760ff" }, - { NID_sect233r1, - "000000798bf5ab761bb6acfed0cef1cd71b3ef46f2504323cafc4081592dd6f6", - "0000016277aeb3e1cac0121b07d9378a3a0cbc6567b48423929e36dc855e9d1a", - "000000168d09809eb9f6acf31134eb5eb1af966e212b9b6be68cfd22401425e9", - "000001710a05f02b5505729516b1ac73d45f3cf08f1c5134d2f73d12570243c9", - "0000018611b10dab507583f2be10fd4296f537d4af09576f96979f1eadfe291c", - "0077c4ea1095fadc4cb4190a3fd530c7d15325e5d79b8e8a2b708e2344cf" }, - { NID_sect233r1, - "0000015f723da9a38c2da5062c17d0b837522f7c69c793f79c17fb6965d44a03", - "00000132b17760ac2e2bb9f813ed7790c5cd3aa0d38ab64e2e272ddf4a4c2c1a", - "0000003824f71ec3255bbd03642d782cc6794e1e54aa8fa5f2a331ee13f78450", - "000001a4e35a8c32717f2aaa3eeef177848e580e0fed6c8096868f6acc4e1c09", - "0000013727604e81d3a9d93d243fe79e2db8a442334a8ea1852b9f83cae1bc3e", - "00d9eb3c79cf442595dad03ed4a38daf358b97d5dfc01cb61ff200a47958" }, - { NID_sect233r1, - "00000051b70bb8b8e2341b86821d54b974b696bda443acb7ea65965d27d2ac70", - "000000c7784eef889c471c9d26b3e0de24ad2b4bf8bbba6fe18f51a412188058", - "00000090adc0b207dae381622cf92e04bce7479180ec6e1771662f5c3179bd99", - "00000106adbf9bbfdb3083598a7f6db2e91d2e7c174f705fc216631b7d05edf2", - "00000190d84ca6f4695fdbca40d26a74998a05c3d761dbf08981b645c0ea239e", - "0124c19cffc0b9549bfa378a548e8ce11ee7fca28d2d898de49ae1f2ff61" }, - { NID_sect283r1, - "02504e1a17819d39f010a4a69a0568299402b58f944a384c7d1a62c9c93ea4d1" - "ff300e13", - "0265132f7b4c64b74b9179ed0f2e211f4328d625405022f554170da932b80fdf" - "7c1aab12", - "02f43455842246a2cc8ec068e9d6c6e4160f6ba4e3b5d831d93c1daa8fd3d5a9" - "660c7bb1", - "0561e495563018169804d4c8e2435b4afd85da376d914b69d39246f8e06113aa" - "32e642d2", - "0781a7f59de7f42f5f9d6c3481f33fc5deb357c6ecf4c758e370d2435de3d8ee" - "737703f4", - "065194e26090e74047ee75f13f9769d20e1b52189650011e283daa090732cc53" - "755dc366" }, - { NID_sect283r1, - "01623a9675e8c40366e26131e47b1af06c8b33acf5e92f54644816dcb844382c" - "944cc21f", - "029d280f4d4c0c5fd70f7e24095950128bea3cae3ca46f6a5f70b739fe1a9902" - "68804e38", - "02b941e692e0a984c5ffa883c9f9f8256a43ab1fd1ad9782a42e429a94e910e4" - "82b91c23", - "07b90af116b737d9008e4c18f6ad539d29ee1790008a1daf2e856fa672eca4aa" - "fc96ca63", - "06aaf78d0f20657b77b97cca30eab79b679a3aaa90b10907f979cde988ce7184" - "91010c2a", - "075c535cc70de19c92d7314afa2f33200903431f6990ad40ac31dadaf4e492a7" - "99b75b05" }, - { NID_sect283r1, - "07b8369728432f7528d3eec8a6788e69cd2eb88162c47512742ee0f027ccb415" - "7a28a223", - "05986eb7f109aa1f8556eba2bdc88e4913b65effb944eae639636cba7e01dc37" - "18bcb361", - "0287de172ba50f327bfc7d5a8c0156d25a1f0b9f71d389852f2e3b587406cb74" - "ef3bd041", - "00a03490765fc90c23553c0e2b79dfa232b51a73f21554e5eb18da4c994d925f" - "8ed2bbef", - "0304ffd41c5b0ab2a70b82188e8f1578d6ab7d3ce3ce34fa45dcc32207f163e9" - "1c5d6814", - "02956f63d48a49a330e2068955cc2886dbfd5bf72a81b10ed83f2d758dd315ec" - "a172927d" }, - { NID_sect283r1, - "073b092a2a4d7c9a17bb88e75b40a9e4e43b99813cf61682d49b92905c2dd606" - "790aed39", - "0566ad452a2d8ef0a327ce8e2856146fecaf09e4431ccc04256a077f60701ce4" - "476b6dac", - "0153bbb8a3ce4a1b99960f56186ab50207f588f30c94beef28408423ba44fc87" - "5faf38d8", - "04f2c2454899623af13b65820aba145738407f77186abafa52d24b35bfdf5808" - "ffeae076", - "0111f448460ad2430aaec788de291548475a1e5836dac520d8e493c9f601275e" - "70ea29d2", - "068a3f6938c44b797524377508585842c6a7f1af5ffe9131dd3ff786ae56e173" - "9345d3d7" }, - { NID_sect283r1, - "0455e87bc230ce7fc586312dd207c529e47e3c74cc0ce5d073fbf4b1c957f8cb" - "bd9113bc", - "021ffbf62fb2531db39ef2d0bdce0d9c141c92e9cdca627caa39b593fc4a0210" - "e8ee481f", - "032ac0dcb9aa3972401f9f58845ed765da36b7d6f77355779bfb2439827ff355" - "6a75781c", - "07159c86b9c6adb2160c28d86118f84564a90c149ede28329463677a4c87729f" - "897c2f98", - "008a78167e1690625992b0efc2e0ef6f6d61e81837c8ecdfdab51d15340e37e7" - "d8d05120", - "019b48d5eeaeb05b58801ae8f345ad9bacb91daac885e506949b849ebc67bcbf" - "a308aab7" }, - { NID_sect283r1, - "0652ccc8921f439af42a2301236b5843a42f1fd99ecfe1b4134c3de014cdc760" - "35347cc0", - "03341d80749f1a5ec9f7ac6252384fefd38b6f2bbcdc18febe86c160f5e78c00" - "3f066e06", - "02689bf21475d32fe71a7355efd9a7787caa9545ebeb853e5184ce4215242905" - "1f40cbc4", - "00d7e5bcfac578fcd728180645176d7e088b68d330a209f18b968662fed16342" - "b3921a20", - "06f750b3b5e98e0099b695965aa1d16475d1074f9231127ed703e2696d4b56af" - "debbceaa", - "061b3bef1766460f6296ed47d39ebf5a710d202d2b7e7cac0f0d3b235405eece" - "99aa30d7" }, - { NID_sect283r1, - "062331b933afb4384fa3a4d224551ae8120bc55fc7ea73f2be749e217afc4e1b" - "a79e760f", - "02bf51c44f8361c3054cad640f92446fe3820b063cf4bb22ca17c0a274fd46f5" - "0504fbec", - "01052042988dddf470d0a2e36fff5b93ec69f4d240a8e37c064cc4d599467ba2" - "7af3c9f1", - "00c7c9ff77e018b8801bddf886702556b126a6d9a1831a1f60f35872e524c134" - "d553e4a4", - "0035d767b58b499d9fb54562c3830411af59e7088a4a3333d5dc7fe5b0f7f1e1" - "c5e3ac2b", - "055d579458860a3dd92ac6570847632f04460755c22a4c432cf4dde9611d2ce1" - "608ca185" }, - { NID_sect283r1, - "021e82d6af6d321198176ff8986c2bc786a0081326cc85f026b71b32ac06c0ba" - "e6b4cba2", - "01e9733fa9d29961269420db24edc0d5ae285d78c9ae14b38b1019f13652f190" - "277dc47f", - "03bb9ad5fa552d38d1a77cb553c631e2d0940db6b04f0bd7011ea735be50d045" - "da9a9c1d", - "0687071805c25a7d0b1739f7cf681b2f295c4f9d8937351d21d1d43f634e9a57" - "105bf127", - "0633ba21872e379c50e448372b1c0e65e85d07edd712d7dc06fa69a299f6037d" - "ece660dc", - "054fa7c6c84fb89e5892d9194540860ea31ae2b6e37a86971344230ea512a3f6" - "c0569216" }, - { NID_sect283r1, - "045d62d01db5ef173d0cff315a92a9a105d1ad784ff9b08e721f3580e06265ff" - "538a194b", - "06b764c1ff76985496b94451b756c4f30fdfc638d8990312bbeccbfbd73e8c5a" - "855adb75", - "0133aa445dc80d7d5a097d1da11d510e6571a783b4fb235402717d68ba8fd145" - "4e6b319f", - "02d26e46a6ed9fcf1d2f89c63d80e0172dedb4f5aeddff092836aac859909488" - "5557ead9", - "07d6713974701c160aedec8f94e6446bf7d3c790cbff8702cc7840a7818e5b62" - "6271f723", - "0353ff03afda3772984aadc4000e1275656607154b06c3a59c664945fa6fde1c" - "255ffa86" }, - { NID_sect283r1, - "04a561b5184aded9c7bd9868f3043b5e2de51908f9c03d5e6b08a3088bcc50ee" - "3203e263", - "05815b579ff5dec6fac977ba7088b333bf4c0231da021874ee00d71fe25d3f4d" - "50a57ac3", - "004661f107a9b570045ddbb0738ab69b1c17a9acc11da5dac7fd864b3dfc36a2" - "5282d6aa", - "061babbefee5211c4917506ce5f9f9e3d1e52b2506f38ca096e1b653ca9fb69f" - "46105702", - "0014bfd2ef228b5a03e26230c1e897ad081a704013cee55166ca46de395fc52f" - "5d21203a", - "050795ba093d2e02398c358951f20c9e3b4f60628a96a4d0c46cb8fc0005e533" - "1b38a09a" }, - { NID_sect283r1, - "01d7d7536cd8383e1c0b1b8aae02baa9fd2c4e68b21808c1754d0b151361157f" - "81245930", - "073034da416797da95a3836eef27b1fa271f59a434848e980bad2fdd53ffd1e3" - "66ff6917", - "0036bd21f84ab9db6f4bddc94635f19f80acb2813da5399e0777832c2febdc71" - "862abe33", - "068ee3245754d51df7780046af39acb407c4998c620bff94fb374faf4b498006" - "eea0cf88", - "0366a449f09ecfbaecc49d880307f57246c11c5bea00af42718677a8def15e59" - "26da1822", - "02ab08d63cdb4be2502558e67eab27570f2d029e7f981d153b973080585d01e4" - "2f7187d9" }, - { NID_sect283r1, - "02042f5a3fe5e3d3335bb7bcdb9dcbd8716ed18d7fc2ff4297bc1feb7cca3100" - "22e2213d", - "07bebb6c0e046d5afdbfa87ea98ca7f55e9cdbb055d0cc549b4458d6998bdbb3" - "45177388", - "016597ae6e49e79d069034972a63525a3c3e2d2c253b9e1dd3f37816812cf54a" - "d65c546a", - "050ea073522dbe51408f85f0a6086bd4c8efe572f80aadadd7e70ebb4b728bfd" - "bfd4f1bc", - "07da520017c7ad2916a2719b8558958f77c712d352cff9c0ad99fbc98a0e065e" - "b7ac7feb", - "0599757e3ffeb484b32d3b47828b6823d46786d35477082ceacf3a5a11552394" - "fe58f53b" }, - { NID_sect283r1, - "067afdf788f8f4831c3c7d7604d07a5bdc59da42d932731faf5eaf0753280966" - "ab693790", - "001b39d1d872b65e31251c1f584e4fe3ed75d53ad90e836fe90c8db94fe77cef" - "0bca7204", - "015ea8567c7b82b483fa365e8e681c0a635f563a1c81470b4dfe44f194fa91eb" - "7842181e", - "07afe2b22b54fe895c242c20c054989fa804e591970dda8a7ce109d6bd31b6da" - "a8f2fc74", - "060733bd5a4ea9b5ea7090acfee918106b7f25272f3f7cb36eda38bacd213756" - "10cde928", - "005e331af55e96153d8a7b906a4a19016a26381977b49f80b9d70db099053c6a" - "3b8e80d5" }, - { NID_sect283r1, - "018866a4fa2f7c2534e563a291de871a8b3052a674f5dbc23b9dea0e8cefda06" - "abc32c8f", - "058dc4cf1bf985d1b566970847cba6b8a4f40c7e62a5808b0720bbb8cdf3b453" - "1e380be7", - "002911d938d9508aeccb9877e127d1b1461acdaed035f20e0f744c774f1c7270" - "3b5c4b49", - "0386bfdfe60373be114b417c4dceb443223fde67c0fef29ed0f867b5a15f5ea0" - "ccb4dcca", - "02fac38ec8494cf7576233ec8282de384b67f0ca8048084201039d194c8bda4f" - "6e0aff3e", - "07e132ea71a16c7cc261b9d6ff6fc52cc490da616b07d92f9e591fc1e630d344" - "2572338f" }, - { NID_sect283r1, - "000571d7bef056089172f13423a585ab979f4b8f77e752c042c0c65263b47698" - "1e5f3157", - "044bca693e9d3b1a7fa6ad42db7f36b1a65712d09ef3bb715e2640a182f43662" - "0686c0a4", - "01662f554856c0208a31b195148f828e0b5c92a4ea4c033248bebf957b586b40" - "9ed59850", - "07055264c3de3a622d26fe7ad700bdea045d4b3ce718f4e6ae44cf376c3a96a2" - "650b3221", - "00f45cc1138668adc8150d37c072bb4245660c18785683c7b17aa1fb8591ba6c" - "da23657a", - "010f26817098ce1bbd6743784d6fb65e60699c14933a2c8d854027aa58b58db9" - "e66a53a7" }, - { NID_sect283r1, - "016eb4bbb3c386e0f42fb037bee478c4c0dbfbe55cc68e33fdb029b9e5e724af" - "f4fd8bf6", - "0251432f84568a44971e86ab715d3879e614e10725735ef8fb6652d079c7908f" - "11bd1f01", - "012c0100a9963ee17d7acf4ddf8e02d8ae75f3b99114f5366afb4a00ade9a3c0" - "ee39a887", - "07794fa19c6b10d399e0f52d36f483c7851848e62bacf95b5af51eca09ad445e" - "e19ef34d", - "06140d2ee16cd0a6cb1960509a7ccc664be97644a95ae16f4a173d9a867015f0" - "837f0560", - "00bdd8ccd1b40c5bc2efc1c105999350fefaf784710914ff639582f127767869" - "9491140c" }, - { NID_sect283r1, - "02417c65694d850c7c866f7e11639a5f8718ca9aabb392fa8610e2d5d7dda337" - "5a607f9b", - "05133938dc99144d16ea7525c3fe4e32e320ed075b96527e13b2a99c9f27ade9" - "ef9edcb6", - "0345c276b05ece9e7c86811f8c8af48b22db41d4066275009611b880d7d2cef3" - "29c50e82", - "007afffcfa31c110aab3bb394530a41c416af566bfba8f159f984437e799ddda" - "af8cdfd2", - "065fb3c68446a74068bab7e36ab80e984707e39a4a143f5a46d646342f9f12f2" - "6a32291b", - "014a83e747c90aec6101c0a752d92eef7475b00051ecad3d7c2e50cf4eba1ef3" - "c80b8c94" }, - { NID_sect283r1, - "00c5d6149f87174ba37f4c1c6f67f6905abb319f526b7aa1be1dd205df930ab1" - "c91bb1f8", - "00c2e21e1206cd4bb5b622abe97ca3f252cbc68d054a77f8ebabad593fb18633" - "06928bf7", - "03afd5affa346b5259697d9217952afcd03ddfec04631bd995c10ac2583b0ca8" - "d2461f5d", - "06b4c2c3615b266543de189c896cff77b5557c782c215961ac7324185fc9a810" - "98f2ebea", - "047fef1960739ae0aee39a3ffdb82e890d4236fc22dad395d490bc3a5eea58e8" - "cd03edbb", - "00afd29e352779a39021536ea50c24fa264c599f8f8fe8f2ccf0615a6547a064" - "d7c1a150" }, - { NID_sect283r1, - "0173044e5be63997d7925e431bbf004cf0f0ba85aa295a341e8f5857a120be89" - "d77653e9", - "0737cc049690f970824a7b0c2022439682c9d82f4f23e48e5f07fea96267ca3b" - "d4d730a5", - "03d5771f8485c3b8be62a56f3936513e3b631a561a942613df95140f473214df" - "617c4c4e", - "05906cc4529b220228efbb0545bf55ec03c86f87e2f4e3a3cbf404e07b73a5b1" - "a5f528cd", - "016588e480c4856cd2ee9aaf1e302812fbc0b33f527c29b77ce0f4878ea089d0" - "25a440c0", - "0477990f17d65589289c28e54a56a83bc05ef4ea6863c5ebe840925c9fbef64c" - "cd6e69a4" }, - { NID_sect283r1, - "068587e69deddf4b55ac51f2a17dd8bfd6f94e721003214215bfb24b248281e7" - "5a3c6594", - "044eee9c702bc4c1e210c7cc214524592568ac0f9fd67d6ea02b4dc3efb42cfb" - "b2263dac", - "00e2c0c602fb132399ee9f31008365ea22cc1260f79fe3ae61089b8a6fa4559c" - "ac91aec8", - "06e6e318c0c4c0b661dfd3e722090ecd32fdc9ca3d168d9c7174c1d40adbb2ce" - "672d9252", - "040bdc1dbc7b163f7c9551f47daa8294ac2dc4fe0d472c4e2f2cfefc95d523ff" - "59e0e880", - "067a661346fe052ca27f3f03e75bbdfc8fe6d0d85c62c8f79525252aa241ae9d" - "e97d56c3" }, - { NID_sect283r1, - "03f1226d802c575f871a213b8150f7818bbd625663b73e720a737f071896086d" - "a0b14cd9", - "07d1cb0ce19c98a63aaf7b314f1f5720e32887053384ac0f5eb69b6c471a8e3d" - "3d16e76f", - "032d573fdeb85a4da2297896631414518d4ba07dc4dd72f731728890d0b44d36" - "f2309c0e", - "06f6ffea0a87bd9eeb539c48a3fcbf388159862259c7f7840e64809fbedb01a8" - "3812c0c6", - "07c795b8f2847fc39fa56c2de1e6cbbf4945087cb2e3b919dc776b4cc1c83e4b" - "1c79b8ba", - "06476b0620eef165941a4507e6d798d6f150ab29333c0552281b629170d3291b" - "2f9b3f41" }, - { NID_sect283r1, - "02a911e7e6d2fc770d1eabc7df701bb119084a685900d22d52d598fe1d28fc89" - "1b31b487", - "01b8dc6713ca453e91b2ec4e4d1f834b08eebc7e8886c3a458e70925242c4b22" - "bf0b2053", - "00a6aacb5dd3e835814f452d8207d15a533638f70e94f87c06196eff8838d48e" - "ed2e2674", - "02dd0093a8d419831f34bac6c60a570c51d08e699b181c964b667d0d17ed72a4" - "9119acd9", - "01a91976be5d5e037f22350d67ab7bfab51bbc4fa6026d347d28fb4407bccc40" - "dd10a00e", - "0746719f2ad08f8a8d6d6fbf15723f336285ce75d3a2fcbd5a0c54c577517a22" - "bc264161" }, - { NID_sect283r1, - "07541aa51d7302e2bb557c27ec15d7f9c3ae3b76ec2f86cb95e8dead7fa06b57" - "8397f1f1", - "017ea22f6b5474f0f5f0f4ead54172064051538d3e232a530dfca5f2a0dc6774" - "6c8bb1da", - "00112fb2ab56443765676a1e41b3cb91eb1a6790e964ee900cfc9295636ba4c6" - "fa87aad2", - "03f507d99cc2498e2c7f54fb3c9c032f382548e2e3168fa140125a526048568f" - "3bb3e5a1", - "05270df77efc7d6c55f9259bc82273c9b6bdf3676e13c3601b1b3022b962de11" - "29cb3b14", - "03cda4b5f44b5d3dc248310f994419fbcbd665115d1876046652251ad4aeeb1d" - "cf184288" }, - { NID_sect283r1, - "021fb14e52cd4243a520f630229b1dd6961c49bd96f43fa9cae37add84da7ae7" - "2dc3078e", - "00dd638bf9053fad6aa4ff2d330b8a4a20bfe3020f40b9692302d0b0a3c2d877" - "856ec46a", - "03e4f1c4f30e2a8d6fd559f7fe8820e886949de87c01d8eb64c7b40f1548cb61" - "7a926033", - "05e3fc56ec162885c1291e4ae9c19c8eb2bb559eb7ecd5817549b5a2ea3a66d9" - "51880aa6", - "04c004f2ae4db4f748b437bc115e06ea2017a87798298dd6004616fcffdcc7ec" - "2dfd6db9", - "015c892f95768a96ab5a4f9523b7fd466e101f63b88ad8f1fecb3027cd70aa00" - "735dcc90" }, - { NID_sect283r1, - "00d08ed3856abef7d4a62243c92d6e670ceb3af32357fdb9d39c19175a10d1cb" - "ab36ce78", - "05db9fad7fc8afe79c8b9ce48e62ffa0d46b805a9e5821e2761c25c0edba92b1" - "20b063f2", - "00ae7eb3d40354f9f8fed18f2162dee38156cae0535b55370da3638f01668aec" - "f9708be6", - "061e8858e368d9c917f129d932ddc4cca521ff419f1d74230e8aa5b1b3e9ce67" - "f41c4b4c", - "02b0d7fbdc636a3bc34bbdd2a89291b567b0fb2af32383868bd40d4ba4cac988" - "0c2540b8", - "01adf5a96358e18d69fd383b4dc7b20dd646b68a5c9f1417bcf426240ca22b8f" - "32bdf1a4" }, - { NID_sect409r1, - "0146989a50297be373dd665c45455a2ae4c221da5cd424007bd97f9e8e846f96" - "740f3fa58c3c94129671cdd4d7ea650a2aade9d7", - "01b42bffda843946a14ad6080f95b8fc6b7e173528d08ed36fe640aaf85aa00f" - "b5edd5905a38b3c7961b7722b77b8dcb44bb25f5", - "00ace92103ffe262ac17ad42a46d4366f4cb4c580eff3ab1dde6bddfdbb73748" - "11d52b1fa99320b4af5d4e9208c14eb8efa8916c", - "004ebc4d4acf9b404dabc3af3e8cbea8b88b32999d3ecb7f367b12eb3a6280b8" - "40038e22681637a7d16436e014f69616abf72e45", - "009e24109541c8024217e9ab2c963fa9e373640095a6c25a26eefac58e4342c0" - "c85448b2709592a12402fe2b68a793c558ce8cd6", - "01d48a586be9285fa38dd3e70b0330b0ffebd327ceefef88fdc1521ef2fd61cb" - "c9124e03b0c926e70fa56acb3edb54c3c48fab2b" }, - { NID_sect409r1, - "017e9f01b1d6e5702328330d232a1dd3f2c592cc409f6caef0708440837f3597" - "510f111954aa51e5646ccf47eff1f07a4f8ae1cb", - "003714f6ea1fd143ce751e2d85baf54c5523976108ed482fd6ae103743131ca7" - "16026b16a1e496231f991cdc8f6db447f5f95f8e", - "003ff22f7d7c049989a43e0ea3f5d61798159c178aa792d79d1ffebff8db70ee" - "1fde040a4b5f1ed33fb3ff23c44e7c6b21b0623b", - "01d5c9260e73ea36e4deaaa4b8f4541f678066b690771a86f0dadc580fdb8959" - "81e6dd02dd264ed9f9c1763bd54a6052a2d3dba7", - "011a706826365ece28e38b33620bca016d2d9338518dfd6868370476dacb41e3" - "b947465769ebe81b620731673576f77451d0fe14", - "01856c92b46d671d8a7f6cc468efb60a61093d006c95bb931c1fccc336d4a849" - "0fe17fe163c972bac39fe728f24534a0c34d2d21" }, - { NID_sect409r1, - "0183ee355a93cd13aff1756a08e58e2195a826298d43f6d07bb1c382b4e568d0" - "080939260009c6afcbed0f23252e01d6d14c6d8f", - "01b2309b3819c2454a48ad253ac97bce3c79b51f50ed6803cf05464b74a5a1de" - "22113e23c018c5ced9186ddb981c629e2e9db3ee", - "0096de2c3929c4085f9cc1d3778c2dbf3db7f0f77e7ba7bbc4e408c7d65e2c8b" - "88b0755f160badb524e7697c50e60c8d99e56da4", - "019c47d79914c8bdae754ec5ec1e81c8ff329a938e6971eee3c945c4ebf489e1" - "4b15e6135616c898c80b7b06b8af67061c769ab5", - "000088022b4fb0e754ec4fab8cf4fc636255426755fa99b56805c15eac043251" - "55dccbfa4145e161c40f189bdbaa3dd3e0c3d6c9", - "01972e225e08b47512e92c0da9a1bdddb1802be402222cac5788b322e101feeb" - "06b66b2fe726c1cd8aec92e02f37d15f4c97e64d" }, - { NID_sect409r1, - "00e85de9d63e34e5c7bba6ff9b16f4c84d95f11dfe92107b1fbecae98ce6eff3" - "db96d86900bfd22cd423dbce1e5726be8e597933", - "00b7141771f7c816d55ec8c53822d2e7a192fa54a17e5b99b2d90961b54a99fe" - "d53aba4bda1a4074ad3d23f9c911205795b5450b", - "00abd5d61cde31180301c269d52af856baa39b89f5ef45367f5519210c71d77b" - "318d053ec0c2f49bf46de05cabf23c7d2bd7d23f", - "01a7ef3d17c301e8661ba66c1cdee82a9b44d716909e3663b423dc06ef6be4f6" - "16cd179321ce7a572da4bca2e89b768edc8459b3", - "00df743849a20bc3026062b420d3942f18e2d6c5307e6e1955e33b09d5951dc5" - "9b31a2b1d58c233e2c896e2d9ccaa8eeb8e8f113", - "00b6661a866abbf1843dea8f220e360fe7cd7d9e85c316138fd2532a57d7d2a6" - "bfe6e5518019c603a2d0e338ac6a8690093c2883" }, - { NID_sect409r1, - "00ca870acbe4eb3ae65edd95d6944eb090e0e550712be3b1369e473203f52b18" - "38654f7a4342bd8309704fed6933ae9d162ccd7d", - "01796cc286bf3d53ad636977374f8356e45730b7aa43805fb52801f73be3e9b3" - "2808984aaebbed7be5e39e51335b0dff34782948", - "00f323c8ee433c9ba15d3708069834acc4d937be5017e1d182ec76466aba282c" - "73b5e3e96fe106143641402c72c62484ba1f12f2", - "00b74f52520119fc08536cea584220de9b062401e64ff6359305c2e6b0c04a95" - "f77baf53e23c326aee76211495c30b2c150b9275", - "01540588e2fd5688d1b35763908c1f823eeeca8942f6216ce04cef66ed6991df" - "6a22fb74411b13d06513a65b64e62815ee020697", - "010889037c707d90b833d03256ff2e8a5ffce16fb3613486221494a4fee82e74" - "625a93d966c2028d0930115494f9456cec4d2b6d" }, - { NID_sect409r1, - "007eb61dfddfc3c0d083fe2213967986381d9e30e684afdf2bac8f1a362e8c6d" - "6358df95930600427dfc1eb14118fd1239b67b69", - "015ba87f98114cec8b2cb45bba3dcf006b287e07e3bef1da27ce08da9e4f48bd" - "241f59a1f9c93c837884715750f4085f913f4f7a", - "00133da2ba54b36244c8042f0e2da3718e56dbd2848ef427bddb24177f624475" - "b53400afdcb18879e8fe6b4609a4f7bbc2152b13", - "00e3a2f4e63cfbc1ee844745ab3e1e5be573204609aece5e28b8fb8ab8ae0689" - "8467a95a7b59c0898a414abff2703ccbcdc09209", - "010d73c43b630170395104acad6c1a563d3296632332a1481ddc2c31836bd1a3" - "ee1a7364d7f5b8295db95a3745b4bbbeb8095bc2", - "010a8aafbb243fc9466bf381eae173c01be95d88a9c131b07ed54d2f117cd3af" - "4019ffb196ebe8290b1269622f9df26763ffa211" }, - { NID_sect409r1, - "0082f148ec34d1d08b26e79e3772e12d659598b73b6fff0bab1845e9a5b50714" - "49ef2759fed63aa80624b83a6b2e9d739b83f6db", - "0109cea048a720ba749fc522c85af5fe783751c39fe8d0515ba0f0d3dcd19f18" - "c22da3909f02d78735aa11b2feba0f8d330c5703", - "00df7554c0132fd4e4a2b9217875f9924a55cab319b76a7c179cf02229375799" - "96cf94920bafd453e52f5d2fc48001329fbd78c4", - "0160851cff947ce72a118aab4dad4ce2c3ce9bc330ce1d06efad7f630e45bbcf" - "37097d94051d9d310abffa8d96ed22a847cbe693", - "0079a3ddde636bc62af41e6ec0e073fe6462e38ad4b9e3a36ecc8113a2c6394c" - "ed21abdc8ec5969e58e009ea13dbe929a96709ca", - "01e17b8844c4c757553a628d6f4c48f3a337ed2bbb6e4047dbfcfbfd02bb81c6" - "e096f8ccbb7f2e5d10ee9cbcc960e3a99e79bd09" }, - { NID_sect409r1, - "0083ca04df8458e5e6ce6e13b937dab498521d826fb9541234567e995f0683c8" - "0f438516eeff0cf8918a5f8b5262ccdca3997417", - "005f8b3c20e3fe2559efe0e85a12276df922ef0f4257fe703be2529f6effb6f2" - "99a1a251c01e38d43ca6ca576ef1e0beb6c9121e", - "0032735dd7f118d29f9f3cab3a072db8c886d42fa5de7bea65036ed3c8d44a11" - "e8f96f4e1a6f254888cab214305191a26dd1dad1", - "002d39e0f89fb875151ee3b354f8ea159e7fba6f23f8a764d49e07ef43f18d3c" - "f86e1baaae0ad79d4000709a50252f1ce3603135", - "00ce44a9b775b03cf42b310249660794c25e0422b03ad9babaa23610613251fe" - "0e54046e04f9210436dd376003d18f98dfdae189", - "01167edf7a3c50e13be126eb2caf6b5f8f761cc8dba413246423b877df74a3aa" - "3f48144b44cd133ad9f2d05ef97a08f7ca511d7f" }, - { NID_sect409r1, - "01311536a9745b7475e6c2fd724c23d9ea66803a139b47e3ae263b0fb7e42e33" - "16279bbf622ae262531b2e2283ecc1a6127c9b09", - "01d48ccc781f0bdec3130910044b76909a9abd7fcb18407dc42f63912fa26672" - "08003ab2d28102adcfb93ddc053760e53c2daa78", - "00b04f33b68799630d62f44337c77c5a6b6e0f7606b5c87244aa4e7da698cc8f" - "f1d3311b48ee7c9a6812baf9054379aeb61c0c13", - "01c5940c2de2b3735824ae2994c15086fa958750e4d83123af047e9b3c264746" - "c9b5d919da215355d8c28b2808a37d0cc5f2f6a1", - "000abfe6f1510a182eff78dd802e9ba21e668aea5732c732ddfc5df9301f5899" - "f02bae80f8282601ef3eefe414ef2c726fe00258", - "015c0d202bfdee2dfbd4be91625171992e6c6b1a1d06cc1b2b66ed64c9d928bd" - "4f062912900d3f89045c7190f513d3b019a634f5" }, - { NID_sect409r1, - "010c273530f54fe174bbbd5c2771a55a42e64050c3bf2523e6082af476eb0257" - "87696edf6e438dd056b598f5000633c264fd7ba5", - "00443e72da93b0c7825f4223c796826fd1322345ea25adf3df1a2c6958908c0f" - "d9b13e93cc005f4ecb155a2fff7ac54fa8180785", - "00d4ebc31c9a65ee3b1abd9d6e6495780c54e633f5a2a9f61c8408d767d0916d" - "91cb54cfcd937538df92cfc45938e33b77d724f2", - "014dfaaa70518f367cdfca89795a0db374bb7b407a58caac24ba46824dce7850" - "1067d7e0467d30b9e1fdbb0a7eace15fb0c208cf", - "019d62be2b12a17a78f6c9f7e703669765f763c6235fe7af78f25044e99c4b1b" - "90653640b3f0ae481a55d47d1eb17b86c5bada1b", - "007c32383aae80e1111207894c8cc5be66fe538af4a19195742a94a4c3f5c765" - "d9776a56177c485ddb53c038b70478959d374627" }, - { NID_sect409r1, - "013beb8d36d1e7f53d80beea33efc3e0098deaeaa17977da8f9aae9c576e7920" - "e8f6da55a20930ce60fd490b4fb0154d49277d99", - "011dc1d87f352e12bdb41a1b7a1f1e516629ed323c5d5b263ff036f023f0ff5f" - "722d056c24a411f53b347d0786d84f7be879105a", - "0026176aaf98a6433566f1dcc1919e94453e9cbf3c97e069b4a17426449167f6" - "a1089ac16a102a4b3e432a978bfb46255dc43d1a", - "01535fc949b49030308bc0da9793d57088766ac8cf22e8d6c276d8f3f7650f30" - "135e1f6c00300c1344e2f0306ea0e270b09a80af", - "00b8fc3fa61dc22c55501f2a6b2944946d99f7bbfefbec7acf4fb200c1002e32" - "2c39172ec0a2b6ce0807f1e3ebb1ea3400353143", - "01166107ab98db1dbe22c5888a70c992af4faf4623ef593802aedfe433809c53" - "ef4ab0b2dc4dc2546488b356ef3265356055d8f5" }, - { NID_sect409r1, - "01690c74649e92e1c1004f43fd6e4690be595904c56d2acd85a49af0a17d3436" - "8c8768d039ede9c92ad26b26306b5ffdef7bfd19", - "0081275f7e2ff068a6c1b92dd38c034256ed7322b027702994c74f5b818124d3" - "4a190987fd658892fc99e7acb9877bd6fe946919", - "00bf3e7395c72aa84c0960e5c69022ce39067404534473c4c7829424f81f1d44" - "b31f20e2b982e251cf9ffb327a7d834f59d1948a", - "011cbc4ed9036a27effc89ffd55fa1e3ead0fb93bacfa0a78bcafe3914ab1a97" - "860fec1334caaba07243591603e67791aea4bcb7", - "0101074c444627630ad0a5258e24438d71f26ab94d05bb47d1ab97858c4b92c6" - "ff1cb9be66b984fe8e16e44f393e63f9d64281c8", - "007e7a249094eb52bee0115b8bd5545f81bf0b7d66998fe124c9a3dd3c5715d0" - "3b2f973d47c19af5108a2ae005fcca65e61f337d" }, - { NID_sect409r1, - "005c24f4ad9bdcb1460685a22da54dbddd1507ef6de469da4170ce30147579a5" - "4945dbb1bce9f02e470033bb15fc1a70f831e79b", - "017ca932b90a08ca2e3f55c50cc0e13d279d7bc9119c573c3f741410bb7c1cad" - "1076c3ba42aed1ce69d56228b082fb6de0eefb68", - "0096d403b0fa601c9a75aa7de9fe9e11d42efa93d96dd35102da05d3ac807e44" - "194e18e79c8b5be11c5fb39c8bd4e312325afaf2", - "0009833946294d4aeecdb6f7254ca489c0ff13af2dc6e2ca5626835d5dd22241" - "440c37a63690cd11867581ff61b7252d07afb8ff", - "006183fee6f4d6ef5b723c53c96c5c1ecdd84652e379c937878d766f83370500" - "412359c22d4778bdf807b3c84e5b83350910a1a9", - "00b9d8b68642b2729340d8b7c5ed3b3a8913c4a3f6b947473017c0e105bc7edc" - "60daa9b0732772220f93eca4878085f756e3adad" }, - { NID_sect409r1, - "00aabf6aabb3e90f956d7004ffc893c70f8e90cdc31fc0c7a88f16320541d584" - "43af39405d888d9676557cdd394b27dc5449f945", - "0127f26dba06c33f8fb45d955cfdb5cedda93dd8a45db42ee0b9264a054c16a8" - "7bedad45c0d9a0f35bbc6aa7a1295622e83ebe8b", - "0067125ec309ab5dc7ea568f8815a2b30cfac3366bb4f0160d53738ab995ce75" - "681fcd5e492f3a9725b4cf75ba4301a786049342", - "01f1d1aee5fc594ca4a22b81bad707d821bef3253966f5d77956157483961696" - "f4c60476a42b452b89c1ecb3615475ec9c96dc87", - "00755c5ef55889b415cefa0e881a3efc9be86f36c67615423b452eab4cd5611a" - "ef4198ddb31aecb434eeeec12edd05913af19fc4", - "017d60394c7ee64ba73db91484713370daa821255807349c237e5849411bf0ba" - "b3a1b353be3cd07eeddc5c2ffc74336225dae6f7" }, - { NID_sect409r1, - "001f4ffbf22f67c1591b0a770e563c0aba66fe01561c5e227e522b5dde23c748" - "cacf8f4a02290de26b47767d388a5c836d3eff4b", - "002d273f2e8516e508388f8ed2015ec9fe67c66f832cf2b261dfad5856128042" - "fb4a61a91a37b341de4296d4bf63bf67a3458a74", - "006b2cc2387f69afd43978b7f66bd17666257081ba4d66ee6a9a82b7c87c4ac5" - "f0eba6bc2d981ca1da9ff202ba72cb7fe9c06cf0", - "0086a44d6ee4e8c50d1e10d7d1d113a9610750210679e0e4cab8c62267842938" - "ad5d933c980eef9d4644791bbfd35bbac649d213", - "011da63212631605fea0e93f5826b1929b2bd1db950615fcb05eb47bd9cb69ea" - "e03b1c33d7a9e47b335a40498238fedb8999b04d", - "00b19e052edd44421ee2f5ba845911fed9183d885da85d51dc819ca565ce574f" - "7db257509876377b40c5a08349019563b60e13e9" }, - { NID_sect409r1, - "01b0833eb3440450e3fa5148c25c2df2e0020626f2407422217e4ecb8bd8a751" - "a72bab2ec5642ae90fd29d8c4d79e9cc191b5ba5", - "0023078905b6a33009ffea1a1977db943579afbeb871970059696b29ef90dd84" - "61776b343a09c853a538e4f22fdf854fcbf3b734", - "003e098f3f195e89da71d6367000f804079adca3275b2e793e8d312c8e402cf0" - "d0ce5331742f87515f4dd9cc668246194b9572b6", - "010af4ae334ba40bd6538e0f095aa56f61a2bd2b5f38e954b7617d92ba10603c" - "dcca836554d0242ddb37d5e1576b0be69f0eece7", - "01b335521aec305f314d7f23ed28cc0c4d23f33a6785fc6c6de93e5fabce2713" - "02f9557f6d2ae77c52720eda5a2e15436443dfd2", - "01697512676ae56ff5ab778c411042d217ad24a24ea05bbc253e4395fecc8a07" - "fe77ae0ca4ed977459f1a14d9b83931bccf46107" }, - { NID_sect409r1, - "0174bd233f861c7b853cca8f5a383574849ef2cd76ef22bc0e159f713a1d0738" - "7c4203b11f4c339b669674fcf1dac199703beb07", - "01e2c778cca64963d87329e57c8bc96d0f6737041fd087dafc07dd670e2ce725" - "547e1a261c43fbc54e14c3473ebdbb31fda8473a", - "007d849313c6499dae472b0bddb76dec45806f82e098723301df33b6bbb97f79" - "4bf26879fc33c2973f86c1551549641a819b5711", - "004812af1937630b8ea7d0ff723cbb05b7a2740fc4c9be792db204f929674c32" - "e47d85e4770b903d3290a6d62c274cb257b76837", - "008c6f61711786bf5c54eb0c1b3126d641b24a6662b67b257302a9a61aa8cd50" - "3846bcbb1b14fa5c97454368b6c27dd2de2ae80b", - "015960ea8b92bd77d52874e3ea82ed1763440189d68728d3974d4c01d6aafdbb" - "5274648f6f3eaa4faf3fc72d09892ab038cb2fb7" }, - { NID_sect409r1, - "00c1dcb737d253035bb91d2a4a85f37d00142be81fc9278cb23a4d1d79d27c8d" - "3c4440b2c842bc1e21f6924e14dc831b0abfb845", - "000c73d5687b0490ccc07f654101acddb36cd0c2eecce165df276f83be211d01" - "d30ff5c243f0900572ee6df07f539df6a4689b0b", - "00bfa594856c67c2836b7fb171b67c7a41ae43ef3450898024a9313654fcf31e" - "1e1fbac7ad52b2bc4358975a5c61ab9f4e3e4e9e", - "00e1b5309a44800a916ad8a4d19b82a58b00ee048248050a6ed6c33ce1bc9701" - "547e93d7c9042f8490654b73a2cd7d73f733c0bf", - "0180b20338746351faccfb9a3711a4e138457550bbf58316034c6f216a537492" - "63dffe2359bddcdc89ec6446a9a4a9f4ef90c86d", - "01127491ff33a67ffc4757416cd02a081cafb723aff52af35b069b89963e8e3e" - "f5bc19c5a093ccf511e3c3c19be789280e986809" }, - { NID_sect409r1, - "013d96a267d1a2a9ea83aeb1b01d8ace22e251c82f5f5fc3ef5997a3011a74a1" - "0115df60e98d139cdd360e74d76fa522eeb56f4b", - "016b655ab7cd0d39f588fbefec54e4f45047664c8b3be8e57ab113770f5fe0c6" - "2300f4a09fa2899e73bbc9823265f55d5cf4ae18", - "004a020e06c400ef2498c111cde15087cda48a6fb2ecc01d985b57f0d3921920" - "e92c43f3ab688129dc01ad29fc31d68e9622319b", - "0167227f62849594ed63f247f780b2d11dd9a2c2c71bd6b71294cf8b59ce690b" - "fe00da9bc1db8d1daac9bff8c00e7bdf071fe0d3", - "0136c3ea77d093d9739fbe6891318b14959778599bd1e7d5a97bfc82ffe85fd5" - "a9a01b82f72e11fad96d2f5cb5798f59efea15ed", - "01254508553eab09fbc2fafe13fa9b324d9217d7d0ba4cedbe5dc869ad68de4f" - "87774dd17d6428ed242c71956f252969e6bd5837" }, - { NID_sect409r1, - "01787b30b3b204e298690b9d711ffeef167adc5792068b5c8d422ec90f94c2bd" - "d284cdbf8bee642f70bd7be2da906b9edbbc2cd1", - "0043078f912110290a13d90160f0e71582fa39c0e75d8190eb811d450220044c" - "c6d680d956a98860e6fc85bb86d65990a160c5b8", - "00c19b391665f50353547fc72c9ed019f5311690ee41e7c895aa7ef92c60fb9f" - "3454dfac575245a6869f1fdec745d63ea56c8922", - "0053a7a62a8b4044b60af76efa5b44429bf65f65987d6a062163dd55f08dc9a9" - "1b8bb9b6270f8a026123f99eb9372ccbdd27ca3b", - "00add46f7ea7092f48ddaa2feb96cb24bf92d2628fb6e4f7cddf523e5f84011c" - "f8aababd6009a13f29a63b6b7ee664c66f3829f3", - "004b9accc21d7122835fc21410ed1d83767c47a54ffee5f0c180fc55f3d0e848" - "4af3ad38020294be92f02f0ba7e2b4f4eb1db07f" }, - { NID_sect409r1, - "01e9da0ad1a15ac3c431f220954ed2e502af7b746c3fd57b2eceb7748658020a" - "095664878354df0aa181e57e5ead2c985ad3023d", - "009cce73a54708348b48f8f3f674bb7654f441f283d4e8a4ec8f8592ef52395f" - "24c112d5942d3ae08ffe8d999efde399888a7cf3", - "006c9098b53d10f2ac0284a99902658f667ea4cab28698af3fa07006a1bb4636" - "3b103c4aa4c92c1c3fe7539097fa70b8a4fa46c5", - "00d3edf652f43f9c9a92a2e4d34ba83f5d7e950c28346a2a6851bf7554705014" - "0a4e9c1c1b500e1d2ad364c306b9a44af503a621", - "0099b26c64367f1903da95df51562d25042c01a1adda75bba58bdb0d8aab350b" - "52ecfbe98488c2619de01cd70f5e008953bca547", - "0093e2581c159d74d11f8667ee03399208b5c1a4ee5b20070ce8d97d251ef123" - "6dc81dd688b2f07a730e6b8aeca0c193a28b178f" }, - { NID_sect409r1, - "00c49294fb712942221a2500324af7bd8c7ec1cd1b8094ded1bac0010a869608" - "3f7efaecaa5103d6762499e1be4857d320030281", - "00564fa1110b393925dfbb24ba9a6b3373f4624ecbc3e12f9706f3ab0542992d" - "8db6c8d8bb25fa0614d486f6d1ac9f3d98b9edfe", - "00a7fa38a8ab8030d6b497a23bde5e5007e39d14da9f82dc564ae3cdb4af5fcf" - "41bcfef7adadb59171e6d7d3d3c3ac67f7be7073", - "0013bb3ba91d5d2488af572d995cef8fffb1fd85d113421e8d2c0c3aa97cdb8a" - "933fc0d3f05f4646ce841ebdcf1a98604bffa3df", - "01f2e04ea16a012d4864cf2ca7564846de73a33f24578dc4d221359c4f2f86ca" - "823cb0596bfe4760e9eadcb4ad508ab1a171ecbd", - "008e2f1c4bad19c46a5134afccf7f4ec14ab591c8b8ea48d9c3d1e7354ab43ba" - "20aa39a65fd92cdc176cf3dedecbf9da49a8d855" }, - { NID_sect409r1, - "0134add2c499172df792d94a9b3895e245b84073c325263a858c1e9f7cf30a44" - "f268d3f8358411dc0a9caab505c0abc016130bf5", - "0031c236b143ca036c883641f7f9b957f4f798a31667c41560340279fce0962a" - "21bd8bb52fa23db71a84f35a5794ef5e075972dd", - "00ce9f827bd24c014c3ee59edef747178d6c030c19669ad8e718ba1302bef4b5" - "ad2c1233448f5275b29a896c0b2e7b0da92068be", - "0176e31012d9c604b2d1a1922a28d8a574f060cc36388b2816d2f8117da20c06" - "99ab0a08f76fbaa476f0a9c424bf4c952b4754fd", - "011fedc3e8f8e828e0ffbf02fd85d29c0201fd0f53bf2614c10ae51ccb58cbc4" - "900c38cc4c9a52d86d89f9b8c2de4e227f4e228e", - "0190a1693eebe287ec980236d8762804d23fdb6f222763a0efc364f9280fdd53" - "394c2badcc51ff09557f3b97cae7f70d790bf9df" }, - { NID_sect409r1, - "00f0ec972dc9fdfd08cd8dfcba7298b4df2dbd80c20b2889e663ac58cc348cbf" - "8f9ffd31ffb50618d6c38d72a99d5c5d2eacc001", - "00bb0b48893cdb915e65cd5d797804802017a295343654246a37fe3a60d7de98" - "7e6a9a10aaf063d96b10184612ccd26407d7e03e", - "00e36f3b9a1341995b13fe70bc545d279e6db1482c92b13ce8cc0da1c100ea2f" - "aa803a64a58cc7eb1cfd167570835c522f659347", - "00d1ca82393b8d50bd1898a909bf39333eca3bde98b0b0dced66f828630e69e6" - "eb128b7cec23f07260047073260a765331dd6f57", - "006c535ff943a0fe750fc6c39904a6912ba1ebc0f46c1b0823e4013c77475ea2" - "9b3f32481966f1b165bedba6c17a1494fb6d4f3d", - "001469dabcf2210aa7de0040b201221eb4d1a4725431fb5a93212a66ddea4187" - "e078f5e3d82606f6cdfc0ffe6b69574d1d0ba643" }, - { NID_sect409r1, - "01378444e0deecff3aec5ab6e74e8123ba98d8b91a507cfca0d85097aad944c1" - "5b4fd89c8cbe2c7451d8ec641045421b4bf6978b", - "016447c213c9035de7bcc29bdd61d6ee6ed5579c36bec56bc6b44f9286bf9e99" - "fac97f356708cd0310dbf6338f9af8d7b1359102", - "0008a06716ed6f4cf728f9019928f367c77a9052490b9a8ba87a59cdca84e77c" - "6a299853f5496febe652f4ba333501c4fcf2ba2f", - "00a045b5e6bbb7950495f6d5d645a2b7d72006725d0223c7ff75534022c9260a" - "b0d2d8d333789a3dccfc3a89502ca500bd0c1f61", - "01ec556e1b1621ec1893654e198d5923e311478a8bd2ffff280c9092ffc07372" - "89a997492b6e9ebf931947634ef7f43b429cf36a", - "005c701a93d7790322aa7c67440fdd9ee8057a0dae86d1e856ae89e7893da178" - "bd67777f86db2be5c8e31dc50ed8a440aabc342d" }, - { NID_sect571r1, - "03b63f5fa112ae6b5f113c765144fe4cbd6020e26d400c11609a3a634b9a325f" - "416b0e3d3215734c68a1c2c8fad1d0bb9eb3939a41af22421f68781e7eb0664b" - "9df5cea448deaa3b", - "008e6cc77bcddc816e84cfc1f626824fa24d3d5fd33d8093cbfe1fc4d881b63b" - "494123bc759670edcb1887bb3b9d5a8b516bc503828163709d4dacb594d277a1" - "5a92c064e5770d1b", - "0344f22be87999b95b2287f67430ea8fe646c62fe38b7ce61f1f956597c27bdd" - "d9902e20d4436abf3bebd8243ec29a00481a8a2c19f550e99641b5f14aafbb5b" - "da953a7559f8653a", - "06af71fcec1a2904116fe14878663764c1ec74870e5d2d53919f0b635912db80" - "dd5460d9e699458ff8494c5bfc74fba8d3b12f65f015e8def10de33f1800191f" - "4cb502d21938b951", - "019584177b189c6641ffb678b6d7833d8d4bb25dee5018dda4e4c0d219048c01" - "cd0da9eaffe346d53cf1a07b33b3dbdd4bc3acabe4832f9981eff2660991aac8" - "52147985eea3a51e", - "06775e1b99a236e02b020bc73666e5751c1210dcb6e9b02a69f4075376e49f7a" - "1476d2209e861abb73f5e3ad189d268e035b1de93d47b3a64de5783c9a09bc22" - "3e1cc612f26dcdf1" }, - { NID_sect571r1, - "0575cbb059f423309f993b6c06ac71d7bcc5d1e6a19afe72811cb612a6238c9c" - "cc331e67da0c10b88cc2a5f1ef2ff6d6b744065d242f598da2d6335d4c3becf5" - "c3953940c60efcc7", - "06b433652e3a36a07018aa8ad3d2ff31ed785ce5601716eff7710fc13c6ff9ff" - "75c7f3701d459fd8fe70c0b4afceda08681717db9821d8c858fd39e274ff3777" - "2f8e84856e706745", - "02f4d2b7e63660e6c20949e06dc670be8aaf82530e0b6eafe21011fe9d0f4407" - "c8549515734528cda299e9fcf738a97fbf43c4bba26744b327531b40143e158b" - "c8645909ea888456", - "06ea711827ad8ed589b709ef35f6a9cd4625798bd887e5fe59c51f0f41c328b7" - "ecdf84736c43fb70e3986ee5e5f986e009f641158a75cce6b39f53a8bf068283" - "0194e4007148deef", - "04c6b9f2a6099fc0367fa9609394c3221ad8c6fb111d2bdc4305053804788d32" - "eaf76431406e768a448cb5c8e34c81225eec9015abbd92725c002712ed3192d8" - "07b36afea853f722", - "03a80ea8cfecb858f9b77bdb46b6cda26320ee8c561a2fd6b7e0a2b62201fbfe" - "60f577780c75a98a11a69de4c4ee911930d2200b6972bc3123d7f278615ecc65" - "984a59fe352a1cec" }, - { NID_sect571r1, - "064aa66830ff44324a67ae8a907896897b507566cf52dfe13e3adbb1e793665d" - "2b718358754efe809e4496218502feb5604dbfbc04a1107ca9ec4eadc7d10a9d" - "6d1474cedf578145", - "06f63f69f8c18b67f11051b3d30236a1a249088b2bcab5cff830cdb9eb3e75c1" - "e87252e5d8e61bb1a66348fb681e962d65abc54d5dea2dd72c554590740074f7" - "c66c4b8dfd307561", - "012b6313b56853cf8d0273049cf7ed2ab8e632e59256ed043366857648f3f2a9" - "674caeb6fb0fcd5fbab0bbabbce17a0fc4a78148499c389af57486374641695b" - "0e852f3152eec724", - "040a78763d170459dd34b5c04ec782e698cbe903a5a348551c5248d9dacf19bc" - "b9a498ea05e80e2d6cc1f3ea5ba3a43855b801c8c0356fe3e29ee224bb91f4ed" - "0c85678379b72542", - "01ff49ce0a62e9edae6aa63a9848e44f185412d0feb46b87f91424bdaffed516" - "8321ed76f235f75d33667f6d7d6a9c857bb4f85442fc40f9a20c04ae06362a46" - "eceea15c45d69beb", - "03edea7e47ded7c2ab1115f4ebcbb42677c7fba6e0cfd811602896251ada1d5a" - "0b461aaf4e000f4d4231b96d8dee7630d9f1b7860e6418dac8c3b07b66af6fd1" - "acdb44b2683b29b4" }, - { NID_sect571r1, - "050671af65cbef92f305e5facb4288cc04a4c6978a3b78afe4049c6a995fe8c3" - "c0bb609abe49d152b1eed6c714d254fe6eff159a9ebd24ad16919ef76f447005" - "7eb7c265a4bd96e8", - "051d08e21d264d8e4dbc73408842ab57cd78d323e7deb625b3741994b8affe01" - "af4461622db419afeead045845f6c3db6d982f45b692bea11cf25d18aca3c83b" - "ec840c7582a7062d", - "021997b5481c0cf6cf436bfe360c3b119b9e4dd56f3c2847affb2021cbac4b57" - "dc18f5075d678af2ba6e9eefbc4138d818053f2df32a10e8ae5d6409f5b2f1f3" - "cabf36f808fdc07c", - "0560cf91328c26bba13f71c9b5dddd05c185969d88bd0e9d34a3607a923b23a5" - "b675452167003ae2f0add5141ea4be41ebae91d3a6aa15c393dbf585ad6c9214" - "b269e86b4f054bf5", - "02e32ec240418a9a4f9017e632f8a77897a2233d6f1f45b8f7aa818f847ddb3c" - "eab5a5a12c754fce8d57b0320a076b53441dcf9f65ef3204e089191ef156ff76" - "2294897a72fca932", - "005b640015330f8416f2bbbf8b5660e01a7abba8b0197a29e52bb535d62f89ad" - "0443e08b6e0d1d15f4eb03c0fe35e3e43bd7739cb692092698a2cd13126cee44" - "32831ec7423b3434" }, - { NID_sect571r1, - "039ac9e91af594074dcd338da4f5240574f01e413a49b92246ba3d6de855e3de" - "df6e7fdeda9ab7f7f8476e770ce9bbc3a9a5eb984543dcc37f5f11be6e28a1d1" - "090931f5c5b5a351", - "0780d32dbb134899bda2e98848941878387aba6665fd24252160ce3123f68f9b" - "5bd8f254a38b84ec536525fe007a863b6fcc489f937a05a5fd946d62825328a0" - "9f83a7cba27fea5e", - "02b539acc770758799f439670eae85b9ba34a8b4f371cc935a20ce8c566521ee" - "cd8c4f5aff116ae0db2ad6eae1a3384434c599379821ad05d81ada0548299dfd" - "98cfd6d3f1573524", - "06dae538c820443977415cef4e79974ba762b69b434810200cc6fff326a2344c" - "d21be19c153642df82a3e57a5531a8bf19767e1995d2728fcb661d58ec561ef2" - "3a34d8607971490d", - "0504243c792b903184ea725a947ca89218ca9c8fa1e09a7dd68de88eae90f9bd" - "2a8df414dd69a8b2b1a2ded2c6d7f514c8907997624eb0bc9ea933a2d474ef8f" - "83baea3243834de2", - "027af05ecd0332784d64b0b1bdb45c310fd445c5a6d6b34f35f4eaa3fa3e171a" - "b98763d243a1dedf46aa29864620a47d05eeaefd748186bcbcf187c01e7ce36e" - "2a53ded071036b59" }, - { NID_sect571r1, - "06f6588491060a1e88148e4bdee38bc674713fe384d7cfdbf5bd90c9dbb6e158" - "7e459dce6e0d69b8b2cfeb5055bee56a73c13436060198ad4750dae8253ea839" - "a2e246d541459775", - "05b61b8f7d8d6c8162a2269e7287d459034b8faac0360fcf99fb21da34a314e6" - "735319b9d03626b9268369345f3a624acadb219b207188d0e945cbc67c982068" - "d32613fc21f8b0f4", - "0318a96e382782d4476f1bebf697a1076f22e1d2ec84747f9fc42505d5547daa" - "a08d814721759659958685cf4ea4bba12fffb66af09f6694521f11c09b6626c8" - "ae52fbfb336a52a1", - "06770f2fcd2e9b7f8bc5c292d283abad85155071fe37ef7ce84f34c7616da3db" - "e1bdce9ab04cea7bc4bc258c5d2ab77239d3d084568b2dff779988288d9fc6bb" - "364f519d0e855ad3", - "04f6a1f4e5fe00fe9a25d8459b88803988ef2bf2fef5a23f13e7a7e7f3459abf" - "c3d5c00303abcc5080fab81b09d5be0320ef990519a06af13c29562ee955715a" - "82cc0daef2c5e0eb", - "0763c0d659a7c080912005a2afd60ce57e610619b388ef3d5dd3c9386ab12069" - "c6ef3a8e72eb741cba2da5c6f9267f6c09fada6459690ed4e432445d6f0f72db" - "cb059c87df36f665" }, - { NID_sect571r1, - "05a52cebf68103cab0266cf2c689c48f080549fffc70db9809c2a46f908b7289" - "be597329f39ee1e4cca398664ffa9bdcf01293f43593d188e12411d57e559b3f" - "6a30e9554869f049", - "014e137165fb0d530e8653d7cb2a84618dd3afcfa3f08560179142aae972790c" - "e746a2fd4469d41558744378c640ae73a489bb7f81cdca6b1bb167c794c26d62" - "38a0d256afc3ba21", - "028b4319eb7054cff6382820c52f9c332eae670d1f07cfc8f1472e9260f5e47a" - "385768016cd2006700ca7bdc5d1d567d92460af7c2a425dd0d78aeee3d15fb28" - "d71167e6486b81c4", - "05b1b114cef13aa5df306ce74197d680f9b8c9d8f6753a09db88466a6bb04eaf" - "1eb873836022d7504f45fae85a8e4a5417edd7ce3a0e5eb9e79264884ed78357" - "7b3fc52d825f0b57", - "018e3226e36b4b336799c4684bba505e984dc8819166f17ceb840e36125b283a" - "8c8635ddf7e770406d9856d82b37cff1fbcc5d3f5cf4b55eca41ee131f21ea7b" - "cb19ce05f6564245", - "0428413f2d2aad4d5288885c2edc8b976321ae1dd4fc6b41275fb88b8c5e7776" - "165effce79025163538a0e83c919220a407ead6cefd616b4b05294488c2ef5d3" - "0ab8caa55ccbd1b1" }, - { NID_sect571r1, - "026e2f1ee64e7958e902547a7db0a1e14866f3d2c0127c2bb9b09ee232d3d951" - "8ee44ae8f5bb433a088069fa386cd5c8902711b762ac0da3a7a3420472c47e85" - "0f988dd60a636d7d", - "0677ff510052d4f460849fb8ef0d4f3519cd238e4e1c688b736cf6e3759550d1" - "34a1e6ca3cb479d68b4dc5d0bba1aee178bd6fe15ec196fb1f627d87079394f6" - "f7854e053228dee5", - "020115d17e41e13178b42a004c01d5e4ef1c76241049c7d31bf0ea85d6e070a2" - "e2b92080e61de546fccbd4d991236bb360ef3f206ee16d8843a0ddc803463664" - "a8ccdc2d87a10277", - "06c8ac34364acae35e3c417160333e48641868fcca04c0d577be06f58ab0a55f" - "d7db779fe737779da33d009f57b5bad49702eacf575acbaf27df833070cd893a" - "7924770c92eff3a0", - "061b82e545d41c62fef068b34cdbf01396115d2a1417f9719483d26986b6d52f" - "8f6de06837795f6d9dd7cd095741114318c6e8a6206b3deeef014f0e44b0dc66" - "84e100e4ac361650", - "031bd2a84369e93dfa00581446d52762100d985cc7bb91c4fa8be7472e2e8e97" - "81c52b19a54330442441bacae23f4bdc76486eb475d51f26aafbfb272a5ab5db" - "184a4d3c3006e5d1" }, - { NID_sect571r1, - "023ee4f9ec24dee203acfb658631313c7ad4394c47f1794d08b599ffc15f0e5d" - "ab2911d97e030ddf7cb4bbadf8a5bce05c35358fbd0cf95d3d5c7ff3cd8ee6b5" - "4e379d8d0123939b", - "0606be23e7c5746dbd38404fd607fb7f278ee249dc8e2740cf1bb9b1c07b1cf7" - "e0a50a432567d1869799a803122510db437981a2aa126eb9aaf3c7be05a80fac" - "1495e1c40ca1c106", - "00847b545ef49615671f08be73a49147063184493340111ea4dce13c2f921f07" - "bfacffc8441f4c7c9d0479f57f3a13f4c33c63ed47c3a43fb2f06d06a9780e5c" - "0b3ac30410adc491", - "06994ddc5ae2c5b6f45dc32b710f1a49391a47f3a0f8c2d7846552fe487ef01c" - "ca0431155bb54533b067a29e8367373af95d6a7f0bf98d869b708f48f95f1b88" - "a1530fe22547e97e", - "04f6288d4d704f33a898031e7d0046fbf1e34a72c8af190f4d33163343c897ba" - "0c0d8af8a86236a1c3b655b979dc4522d33d66a665b3b6501570f076322af0ad" - "2bbaaa04ea2e995d", - "04df20154fa49a1d6e04dc2ba6e55a7f2ae575de5e2c6e4091a4d2c36aa93ca9" - "699b890f0ee4df53aa75d0d9babad68605bc027ec67c187a6826aac0f4bc596b" - "aae788b376110216" }, - { NID_sect571r1, - "00d4a0b11c1739bed094e72d7a6923836836d9215746c72cc680045a36d81adf" - "5e25394f269a2ada1d9439ebc33bb931d6fa595a25261c244a1e17b046fb10fb" - "54bb312288cf2e8d", - "075204f50d32ab8a6abbff982d1fe372b8c5415bb5b726b346aa4f08be32f8ca" - "282c1ef6e152423360d97b728a074e6b3cf3b912718b1692cd983019741a2541" - "824234bdc8c323f9", - "034c2458302b43857f12ad8bd9a875237641a21e21ca3cf9a0956d3cfeded96a" - "5e1f533d827b528fbb586da93eefbb66d0778b19b1a7fb6f17bbf9e79b9acefc" - "dd7b9605e7898f26", - "032d3a7a4099f089fea9189211f7366f2edc4abfb316c5c05948d8de57fca023" - "bfb6a11b102ea4120ba62192c0df610bd8d2f63fc57727f4a6b640abf8d299fa" - "c56c4c7af88349ea", - "04e6399f1ced2669d3a5506d35ea2bebfccf0cec84bc97383aadc3b48347f629" - "626e6096f890435e5933675048fdcefcdede3ed616e6560d42e9e17c5492e30b" - "c2de4689c0592ecb", - "037a380f525590582658e2dd272a32de67fc0cf5390b37f4d33c1359f075d446" - "1ea38a55027317892a3d1d22f5ea333ad437667d2f3eb8781c39504036ae33e4" - "b0a26b6894722f0b" }, - { NID_sect571r1, - "03bb84032b7fffce27accf354b89dddf646cdcb56634df0f8520a7730f8abeb0" - "5f9933d8a4352d1c7767cc3f9b80ceffcdd0cb3a97b59283fd0a674dc4fd2403" - "33f020c82b4804c5", - "074499336ac3a805430789902768252026b526ece54ac28e8cc878f18baf9fab" - "42ba4ce34e4968aac1ee6a0bb15c9a709882a5372af56ea0b36817385fbbfeac" - "4b906069e53fbfba", - "012db785a03c26be3a6e9a582e5c32a89570ad4308b713ce5471ea193dec1f32" - "d68b4fcdfb1600fdb1ecb6769e26a0e057812dbbf0ed495592665e6b8e9a9737" - "8a30b5c660fbadc1", - "07edf7ee0ec77f5a6c3c9ec4ed8fd3cb814a342e9cc6470b54781ed6c141e211" - "5c86dbd7ba27993eb7ebed7a38be488f96fddfa982f3691aa1c2a697f7706bff" - "3d1add7396066194", - "07b3824b7f7b266fa42fe536adc2ac79b9d1e5b408e7217b3a99ddeb992f3123" - "ff2d168774d300a818a32692e265afc6f6f578d9bd3121132b5979841f7a2d06" - "0e8948901d657c1c", - "0420de313bddce87d07321e3f0af404d9d13e5369b79506e807178711153c9b1" - "837cd055562eff3aadfc5954a221eeebb1bec1696d3df1cccfb8b61172a50d83" - "cee95f4140ba070b" }, - { NID_sect571r1, - "06556a4cc98466794a93d03388536776f7a4b3344c3dc4eb960a4a6458fc7869" - "cd4e45b2f140c468a7d4ebba84c9482337a2a8adaac88a9a629da03dd2475266" - "42b0ab71fb7a8c70", - "054b97d952b19f742856dacf4e50df0c3103baf253f4de65a3d9cace63fe8290" - "6d2c8e8a3312fb535e00f9b5ca69f87dbc7fa3f7d87fe024536604aafe464059" - "3cccfef6fac028a6", - "0202606a76b6a13d6e29280bc1613e115025770b245f5561d5883e135e159cc4" - "37b1c9355b2eee2b3babef229fe545aab2bcca155e8972495f1974bdb1ec0e60" - "c4e6c79c48f26a46", - "06e74dba4e0702f186d334d3c49e2578e1edfac564645dda8c4a588158f8d7a3" - "ef63243653c0d507427734fb4cc87adf4a36bd5abca1f920b9bd6e3bfa51c916" - "d5710884594e9485", - "05b92147a2db48a3830ccfa28951a2b7e8eb84313b99b0a99031c7834c633f86" - "5a2f9844952528ae5dee02428a824cdfb7e20928ffc53420df38ead0b4240d06" - "59d5adb1ff2e2dcb", - "0606228f5a05077aeefbefac23c0d5bac7a6062bfc2b02ce8bba6698ea96b456" - "b1f0d32c6e05dbb9be61a83090428eedea18c74f41238edede9e3a12e28722d2" - "f314613c2e84d6db" }, - { NID_sect571r1, - "01005182b029a48528eef5ffd0221ad87085abac6a72705203a3c1689abbbc0e" - "12927a5e83b352a1bad97706101f44a1022ccc0d5522dc5d1ca1433de03a2ba1" - "df864875f522be61", - "018b02a98f0b3e4ccf44a96939a2083ab1f2a04dafd5bdcee3cff438bb08bff1" - "2043aa192c5fcf34e13b5c29742c5d864b9cac46bea6e96df2b1be4493acf950" - "224d71737f990658", - "0048678348ac33b92f2c59677103ea409946b5593d105fc4983351c4ede929c4" - "b93bfc695876555e3ace417b82ac05b832676ac23e2955a09ee64a20a5f98e62" - "499f43ba7f7fc8e1", - "031dd4808d2b341b8881f5e50a2dcce38df839009f92185978dfd9a60cdaee00" - "5cdba82655647736d407afb90c67cddb13ba2b01618f45e8a274317e02f770f8" - "0ef87bbbc1b11056", - "050a0671c9c0ce57a494e6911f1376cf1fc3393885ba8c26f6ddcbb536187686" - "0a35afc1f4560f2970c30db3f1c817dbc8af2b025daed3a9da12d2fae9d714ce" - "ad80445e6a0a0813", - "052669336019db5eddef5eab2336abeb60bbc7295e4bb663ab43e373fb6d888d" - "7433ec89a487a91d4a59c289a9509ddd1bab33cd02a7bf37aaad78dbedf0b4ae" - "5f2f35d15cb4e628" }, - { NID_sect571r1, - "07fab4e59328c700f74649bd90a7d51ff28958fe720daaab328cfc9b002aa706" - "ceb39934db9ccf81deec95689ce8c776b4fc6542a82358cc51ebbc6d8e5322cb" - "3fa6e4695e170fc1", - "05acd45cffa29ddb34ee42e7410026798e37a8d1a9ce9f9294da5198164b6901" - "0c68c53281ccbfc407d141097da137e7849f228fdc1a07aa298be26ca771f47a" - "c4feb2723d5a6666", - "0017bab72d788f8b78b9bfc4912863c5a48922fe69e8a4cf5e6e91763efd5477" - "a1cd439dedd0afea504e3b3af6823ea3089c0374ed9aee24a88516c8cf3afabe" - "995b9b9675f3b5ab", - "0161c14bbc84e42ec7677a8c3770065ecd1f0f44eac8242a715a61971e7e4fff" - "f78ff57a1bf1b95cbfc2ed957d1195f9ea50809715c2439c7543e57352013542" - "6d47535b8bfc8533", - "01253633d02251464edcc53ed9e8a9ed9329320ef5eeaf35d64c59b9735c96e0" - "7f1a62ec17bcee4f04cd9a85a3eb504aaf37bb388c6c7d08d90aa0b68556b5c0" - "68ecbf0a5984460d", - "062de5aa98b440c6cb7a1428f6b5e47452b30454eec4d651982b531121febbd5" - "a3833b180017f7ddb5ce38d7bb1c842de1a8a8fc7fc981e24733b7662813fd01" - "0a4e757ca4ea5c28" }, - { NID_sect571r1, - "072676302ad18731b76202bc51429ebf7eccf6325f4e084c2f92e3288ed29048" - "8b9e36720e29daa2db1993a7d17ce8ef9d8ccec61de8a407176e2674c25d57bf" - "f2c46596358b3605", - "03c0022d53229091e14af0f7450deca1cb5db821e71590608fe0986d73e88c91" - "5e5ee8dfebc8955913d9164f992f56394a662ef11c8214e8ada85df1b17b0b97" - "414cdd662d188b5d", - "02ab2d43027b08f8abfa3598ef0144399a60b6037b17a3ae413d422efa2167e9" - "ea4f19d7eca98d85c67c1fe85fbcbc1f12bafa30a85dbdf542466889315f1532" - "defc5d181509f008", - "0328c0d67fd552ea10e5bdf7b87d50bf4dcba34dca569aeb869c5c7dc7d832ce" - "30feed32e25a723793f97c557e2f978c5e1349e69b73ef9916001ffb0d6cdb2c" - "6343e34538386e6e", - "01d151b46ed004263cd9a5c0d46a840d03222631f92ff9280e95a35746cdbcaf" - "d9fed6811c7614b9d50aa2828dc7a275b39d3d418a349dd1e2b73211f4de9a34" - "b42fca11b9760eca", - "07c7eb4892816cc3388ebcdfb412984e05910c112dd15b8e5481719401701ace" - "ba22fcf35aab0c3b040096161011f6177097c505395d9d6d8a713f6a5100fb47" - "6adbe7b9cdf4b68b" }, - { NID_sect571r1, - "06cd7931fcf1935f81f301479ed9ad0c6f9a05becf4e573a2ff409bafc442ec1" - "95f7e3fdfd08e58161d4e0fd37f62a969421b19cd48fe848a5d7f74b8137a7c7" - "26a9cbd37a2cf3b4", - "04b5b2cd83b27895751c34d3ac5b960a133ec18b039c2e128d3441db4f76e8b7" - "5064094619b122e5fb2f1c2796559ad953c711e330dc7bf55edf29f095cae455" - "57b7c8d5843d89bd", - "0049c6e4c05a197b24afd2707243ffbfd55b0088fd33d87dae4d21048f75f2b8" - "62563075241d2f36fdd0e9405ab42aa55cbf2095dabc3daedfae9deb92222078" - "3e8591cfd67600b1", - "001fe29a4c2dd000bbed129121b88edbb5c39b34003f170ac19fa9a85c5fe587" - "aab821361f4963440f25acb49758810552f06b719a9eb43b720e9b7ad6ef9d41" - "248d5f335f99515a", - "01499db95808c719d24eb05c633db8b05cf969ca0bf656435b1fdf1b0928290f" - "6a6bf880adb9fd53c86ec76e0f62ce89cbeb4c266f64a876d778231a0030c38a" - "a00d66c6bd680785", - "05c638349000ec30881cd190c067e7f12b6b42d5842a8285a8ff0dc7e9c9eaf4" - "83309e48314fdc2ce7f9da6a468e549c8e70a50b68d07aee29708a98172209e5" - "cd2e8c09cb66d982" }, - { NID_sect571r1, - "02984b653074c36a259ad956d5556512c2c731fa50f2005d0049a9d977de5c00" - "b7a054c960cdd707896321490be433bd5effd44c564eaa2d5021175050c5bfc1" - "63cdb1e81df1335a", - "01a786d29098b334f5c1c4ae86a41bf275cc6787da7206916557a4f433192141" - "034567e041d55d794a7707c7aaf28842d5c8f590375a43656918aa80e55b0285" - "347cce8ffe1f15e8", - "0186b31ce490c7f28f2793075a4ae645acb39e71ffe944ee62bf82587f1c3cbe" - "288ce6024d8d035f107d9a4faed57a7b21ee1d6e7129a098004f22ccd52740c0" - "34a6df37b53d0732", - "06b15f1a859e3d80924611b20c1b94dff6bd0574fef81937f1e54d148d2d31f8" - "c21b0ea9ce031c9455706f085a69fd492418558c7de9aadc2c9a996e7ed1feda" - "329c7d7609bb6b22", - "032910544cb136e2c29aa33572aa6c3471a52ebca6b228bee749fa9ffe29296a" - "4a5b6aa0c6dc9f095216e7b1513d81cba00794a3f558f74a1b541c73b2308f4f" - "8e74028b5c2bcdf3", - "007a40a59b6632156a43158565a4eeaf80618e501c5ac5afdab4ce3cb76ac99a" - "0bcd17e9eec549373ace8c96aac78e2af6600483a2c49ec81298a083d5237118" - "de96a953999beb26" }, - { NID_sect571r1, - "01a8682e09eccd1868da202916a561ee8513c0d73470cd341aee79ed93556a3a" - "6e7c7b20302ec74a0c5170a8e37d78a9b5d0de3900eb2a663a7247cf7943fd38" - "1d95b3aafd156167", - "052fecc68f7695d4e41a080c47650d202874da163a1748e550373958e31bd0aa" - "e520996d30f384730f4854f5e54e68cc24958adc52e2a4c407356514f3ea7166" - "056dc67e4d118fa8", - "0341f8e86182de4fc3f43857250a929a41994d331da154c0249fa0d1c26a6de0" - "e835fa08a8cc524e3dac286383f90bd2f4d2c75142f1d38108d9c062143c8e6e" - "dbbda0af87a76ad5", - "02c5c5eb7327402672573c37b492890343ab422b51bc65b600766ec1d07908ff" - "03bcfde7694d832bcde52946339df0aab4074ae07a89f821f5a1130d2b73db0c" - "423ae7a023ae2c18", - "0476ed3dbd936d1c36987a43512c8f0562e316122d05a7edd4e4248984c11f6e" - "b85215d5aaa0262a95f20666c9dbf45248ae177d2dfffa3a6a950533298b5c3f" - "4a1b62da1eafcd51", - "021fd2726973405fc30d2a1f2115907cbd0de90bb6bcb0496452e389b1b10ccf" - "38e2400617040cf0dbb188f345337678b0ad8603dcfe926582d4321f384daec0" - "943e2cd267f48343" }, - { NID_sect571r1, - "02cdaf139a0cda2800d61128ffe4d7323b34a0fcf48c9400479ff4c8291cbf46" - "f16c41e4409aaedf14bc60a642b2d7baacde8e0051dd8ae01bf5ad2e6e6490c7" - "7cd406a999c565e6", - "078edd29db6a3b87a11505b57c543ffb746a5b40fb83d7206180f3ae9fcb222c" - "5411a77476660c7b311b646310905889a95a0f2fdc35d30fc61cc5560a291423" - "2d62ad36386b9179", - "0207a7382d8a22571226e0c06c2681d09bca19b5db7e7bbfc13ac208389df816" - "8d77615e30ca86103936e53dd9af01cdfe24f508ec609399775ce84c8689f8d5" - "f96f652e014e0de8", - "04608dc0512bc55c734cd562ac5825f7ca38b793f8ece9b981cc1c4032ddd803" - "9164d0c646b42b2fd453b5a1d3a74ae23c32c7d584007de3cd34e33121b90fab" - "3ada6621b3ac9785", - "06aa9ffbfd65c509370846707674ac723dac24a6f33a1e0bbcdf8b24ba32cf7b" - "dec8fdc9233b757bc073d64dedf484c6fa01ef28e874fb0d34f58b0e32b18645" - "c30bdcb516ee3841", - "07a47bdc7d54ecd391672f131b3214d0efc4d40195db1ec993a62fe9da875eff" - "f5403bd708fa491a01a94f4bddc7d516baffff9fbdd213ca1a4905f9aa679d65" - "da25c0f1fd2afb0a" }, - { NID_sect571r1, - "00051512e4a0dbc535c97be10ffa7425758382883040466601d5391bcb3582c1" - "1525293249f24497cc807216b34c92c1e075781c8391c3f6d3d14f88a1d50ea9" - "fc75ff8d51ccf933", - "039da46cac866ab347617ac5a8b4f1657034e3b8ddb66bc4273e2e1ce01641ec" - "e636979de8b2492dc69e88537c36b1c3ad0d35227f867e43df9c8917dce9f8c1" - "ef3ba3cb5ca8ba52", - "006ba8f12cc6e0e78df8cc6298848a740025e72c62d099e92584ac76f595ac1f" - "c724cb06a85a07f0d4440faf3ddea2f265f2015dd059a16a03a29915b8731d60" - "4512ceef22b841f3", - "0636f435e80600666108737300773a8ed6ffa8ebf8307c81ff5f44353e91bad0" - "86331b8feff3f1cdb86e061bde5f71c5fb938f117e2226a97d2b66b098e9ff52" - "5182c816e702c6a9", - "01c1bd8afae6a94108fc2c755d5de3fa2a4b3471fc2a5cdf4adda68529bf180f" - "f28db154ab4311247b392e93a335bbe8796608bbd6013f43cdcc846ec2226742" - "3c3cfda2ce8a3d96", - "07326196a7decc92c81ae5a0779c9a42f53d94cfa4c3a13f19dbb554138e0e86" - "4eee6bc93e39214e2f74705a4b172aab510444c93b5b3e62517bbb7279337102" - "db1c61de349d9747" }, - { NID_sect571r1, - "004c2de5642431bcc6eb82efd4355540a8b5d23b12b0df7d31ad69425b945498" - "77443ee8dd7c09cfbbed86f13665931d4b2a21759c33e10b4acfc63ba1ef61ac" - "aaa18c94e3cfc933", - "01765b7a37eb806d43196d2931da1a1953742d3e0da7ccb67e0dfdba5e034914" - "cce3ee6393bfde40670f406196067da8b293c6843593dd221c89bf97963676bd" - "044e8c8ab8e717ad", - "010716f2e774f27f42de3f6c9694d8eca2179823091d202f2ba1629193a1c987" - "00693398ffc83157f7ce4858e7535e3990d219bc249de164558cac807ee15977" - "8a012da19e5012bf", - "0150b3adde162a7f09350dacf460419fe86b99dcd94f44283fba3e43d281b93b" - "b54282812ce52265a94838968d67a9d6ecdc1b6cb64cf1594521c4749ea43d8e" - "4ec045e645ff238b", - "07b43321b6118b87c46c7b52288df5dd1cf7da6183ece5633b4c17cae362d821" - "191f7d57923928339aadf7d85f7f19de9486709e4d2ddef42c55bb4d76a3cb50" - "cad2a098ead5952a", - "059052d3e1c66efa4b7dd39e74299e886367d8fe49d7cab90e4f051bec103164" - "38fb29b1290dfdaec169decd622a1010cf0a0275008814f4861b4d83ba78515a" - "8768d978be430011" }, - { NID_sect571r1, - "025038a0e72ae8c16e36e3e3b504ed7341ef709b9fec8be90177346d76ca7bc7" - "133d0ec280acf066005c5cc10b52aa654335fe820a6617e560e270903ff1c2cc" - "8af1398f24dfe2b0", - "031074ca3931801a6acb765b6e9144172ed81d999ed9e835bd35526b03ef2a13" - "f78376032b0eb8146c23132365fce176a7cbdca44b35aa379859f688ac26dc64" - "c8149a4322d083d1", - "01d0103fc7948af107e51f4d2cc0392b66808059d1f26cba05be6a381f522d4c" - "b854137934accd1cea3360948e406d3108c943769dc700b4c9cc0cc1d84bab58" - "a35e27eb240475f0", - "012bda8ded3ed7e8b6d39b5855a58d725b65e3857c2a674996eb393a3e3f9159" - "5bbfa87253a56ebac2b10ed406af9dbff53b22265fbeb5a769cace2b60b45dbf" - "97ceed2b0a04db50", - "026454827efe29b324ae3f2d4c0dca3a3a95491511c531645acf545b45ef6ac4" - "a50c09d3d21f213ca76b96fb18242ecbe08af68755de4e1077173475826eaabe" - "d26a75c369cd7b0f", - "03acfa4b3d1c2a6b62af23bdff6a215a416d4437ce6cc114d17dc4201195987a" - "5d7301da11b913254702d7172e31d64e59b24deaa3270f20445e51dc484f7a2b" - "8c3cbeb0bb9efb28" }, - { NID_sect571r1, - "01bdfffd69c2e08fb03c853ef2ebd088e68d233fdb95f0b246de7955d615077d" - "fd0b0ff02c64d01de793359096b85e057b1b7f9f59262dc2757f18243e182e1a" - "0bfe9dcbb027d68b", - "0218be7d956029f139c19d2da346773b16d7afc858ab8dcb60d7e484aecec309" - "cb3fea96af3903637e5db4db678bb5db9b0b18d83cf9ebc1b1aaf24f4367ec53" - "3684ce9d56582d43", - "032d2f557fe47b8d280f682e24fda627dd7a58e9b00822a3aaf6eb7a014f476c" - "17941adc5e2238a3080d706f1e16a451b7e92942779930c5670a473281cac78b" - "858d1f1cc99b0aff", - "040f3130e74b1c8eb265e7c4e6921411eb971418267e8dea879c2e8b563864f2" - "3a61b23422c9a06fa178a8a155e3e78457597587f3e35b79f19d0c2e185aef46" - "db95819cbe127b10", - "01c91d27c2ae7113eb03be98e94d3ad6dec791fac2fe0d2c8c98b71371b058a6" - "49fa9c3fa3ccdbba932395c27affa20d95ac041bc9978e3f530829a2c64c89b1" - "bcceac06854fb903", - "067a58e5b3287bb9aa83ed9ca2d718cf7165fb574b6a446c3019849cd1584673" - "d561b574bc8f68419437c5e8113e060847cad3b5ddc2f67ad75bc1e3f04554e6" - "3a5e4945cfcb65f5" }, - { NID_sect571r1, - "008fc3b414f3412b403f01c253bd2226150225ddaab34d201089f49d79e5dcc2" - "e3b68216faa66dac44529c7fe3ba4d28d815b088235955713bb7721383533b5d" - "94221b4ed1e162b8", - "02b32201de272b1b32b6a6a58ea22411c48f5dc5cf0f95872e6751ed622ceece" - "a22a556975de6003869ae20af39b42ba8871789c82e8f3ad3cf6006f43bc4c7d" - "4102032c43f8f797", - "03eee29196a8be70eb3a310464059cc0c4c42f13487ab1a0762c2cbe304ebe63" - "503e6c7068a7f4bc197f81f65b4295c14b210f3cb2378b67401fcf52bec02c13" - "b61b6de14e1b7e5b", - "0177acc5fe9f42f4de2d27ab9bf6f7e0eace303c266ff8b3469082aba9367e66" - "440bd6b1bd8b6e1aec92b65e35aea8f007f09d4cd67eea5d6000736cabbb9dcc" - "c943ebb5656a0586", - "0716f1898e2a8c27319de7a2698f21d5de58a4b8b8dd02b5e433110d3977fee8" - "ec5c089d170af02a4ad3c1fab44b0d1e2a3beba9e0719cd8bf8364478d686c4e" - "35f7457d24d021d6", - "06b272ca3330c0cdfbe60a1746bc0ddea6257536cdd8e976f2517eb541460a3f" - "0e6ea7fec2b495e0f57712c8cac35e8a7d64d876c29851bbfeb6fe726d57e0be" - "43dc76a584ef9c93" }, - { NID_sect571r1, - "0565a82994d7e6f53eeb6bf67523ee680ffb770118673c3e15c3200e6c8d1f26" - "cabaf00c1da48e6374316497cba5f19f17420f267633f40e5b06362789bff11a" - "df596d5b1cf768ef", - "016b2d4daaca9c6bed976b2064ef54352a58ae34367835a6210e1578291c1de8" - "d67c20bc3d6ffa620c87b3098a2b9f3abb8d2cacd5b2ee2b68399eac4e8f65ce" - "bdd66300fd049b5b", - "0169a2d87586944c3173bf9a2275e3080003db648c2d1e1c56e2c37ce0d7cd9f" - "818ea6b7bba343f774ef0f334ea5c12ef0be7593d04ed945458d71e17112eb01" - "d9041d2133b13473", - "051e521764265af7f01bcd9c3fd022dfdb2d4a2c58b3b23d2e550302c42aadd5" - "7d1df6fc18e465bd98442495eed22f3fd6700284c9fa7833b5165149b8e1a91e" - "0e099a0a5732d5c2", - "0198e7e7d094e207528c583865d262a918fc2a39261e95c07dcbd044efd39818" - "99078af3eb97398201a4650f0dccbf19f922c8dbc3839bf6be0053f84531c718" - "43a9e6a102ab58d6", - "02da266a269bdc8d8b2a0c6bb5762f102fc801c8d5394a9271539136bd81d4b6" - "9cfbb7525cd0a983fb7f7e9deec583b8f8e574c6184b2d79831ec770649e484d" - "c006fa35b0bffd0b" } -#endif -}; - -#endif /* ECDHTEST_CAVS_H */ diff --git a/test/evptests.txt b/test/evptests.txt index cd78176..9310aa1 100644 --- a/test/evptests.txt +++ b/test/evptests.txt @@ -8717,3 +8717,10242 @@ Derive=BRAINPOOLP512R1_RFC7027-Peer PeerKey=BRAINPOOLP512R1_RFC7027-PUBLIC SharedSecret=A7927098655F1F9976FA50A9D566865DC530331846381C87256BAF3226244B76D36403C024D7BBF0AA0803EAFF405D3D24F11A9B5C0BEF679FE1454B21C4CD1F + +######################################################################## +# # +# NIST SP800-56A co-factor ECDH KATs # +# # +# # +# http://csrc.nist.gov/groups/STM/cavp/component-testing.html#ECCCDH # +# # +# sha256sum(KAS_ECC_CDH_PrimitiveTest.txt) = # +# 456068d3f8aad8ac62a03d19ed3173f00ad51f42b51aeab4753c20f30c01cf23 # +# # +######################################################################## + + +PrivateKey=KAS-ECC-CDH_P-192_C0 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBjxfT/qNnt000CFHKQn +DcskwnH0Rb7Z1SehNAMyAASxUFNAH1coVjfsMkwc0hOeOmfeNzkjSzfyacFYY3SC +qtZEzWkt0dPvLIp8SeOJ9/Y= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEsVBTQB9XKFY37DJMHNITnjpn3jc5 +I0s38mnBWGN0gqrWRM1pLdHT7yyKfEnjiff2 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEQupt2Zad0qYf6hqsf46Y7cyJbG5V +hXzA375dfGH6yIsRgRveMo6KDRK/AanSBLUj +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C0 +PeerKey=KAS-ECC-CDH_P-192_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=803d8ab2e5b6e6fca715737c3a82f7ce3c783124f6d51cd0 + +PrivateKey=KAS-ECC-CDH_P-192_C1 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBhW6FM0nZb+TEQkSNrL +fPkrt6ldz1dKm9WhNAMyAATADUNXFv/qU/2MFieSQUw3ZlGH5YJxZTmrcRxiqnGl +oY6KPEj4ncb6UvrAEI5SqKA= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEwA1DVxb/6lP9jBYnkkFMN2ZRh+WC +cWU5q3EcYqpxpaGOijxI+J3G+lL6wBCOUqig +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE3rVxL6AnrI0vIsRVzLc6keF7ZRK1 +4DDnfiaQoCzJsocIQxop+1S4ex8MFOARrCEl +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C1 +PeerKey=KAS-ECC-CDH_P-192_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=c208847568b98835d7312cef1f97f7aa298283152313c29d + +PrivateKey=KAS-ECC-CDH_P-192_C2 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBjG72H+EugL9W8tP30L +t1c5RRmQbVVQCUmhNAMyAAThhLwYJILzQDyHh7g4Qkd0Z/zQEdsPbGT50cFBQvQN +6GOduX1Rpj0szhAHzPdzzcs= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE4YS8GCSC80A8h4e4OEJHdGf80BHb +D2xk+dHBQUL0Dehjnbl9UaY9LM4QB8z3c83L +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAETtqo78Wg9A+ENmPsWBXndi3dwAjm +Y8IPCp+Nxno+YO9tZLUiGF0D3x/Arf1CR4J5 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C2 +PeerKey=KAS-ECC-CDH_P-192_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=87229107047a3b611920d6e3b2c0c89bea4f49412260b8dd + +PrivateKey=KAS-ECC-CDH_P-192_C3 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBjmdHucI7pwRPOP9+Ys +NeQDiSD1oBY9PNqhNAMyAAQrg42+c3NfN6OaeNMZV4PSaZHob/TZLRpg00SUInRI +n5iQOy5/k/jRl/ya5goO1To= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEK4ONvnNzXzejmnjTGVeD0mmR6G/0 +2S0aYNNElCJ0SJ+YkDsuf5P40Zf8muYKDtU6 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEiIfCdu3u0+noZrRtWNiVxz+9gLY+ +OC6IBMUJe6ZkXhYgbPtw9wUmVZR91EoX8fnV +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C3 +PeerKey=KAS-ECC-CDH_P-192_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=eec0bed8fc55e1feddc82158fd6dc0d48a4d796aaf47d46c + +PrivateKey=KAS-ECC-CDH_P-192_C4 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBi+q+3QFUoa/PyF1SGB +wQ9etHrcUfZVBH2hNAMyAAQfZc9uiXjhwbwQu2Gn2zEd4xAIjIz5dov31DgWjn9C +qxSxavU6ei9kb/QLU9dMvMc= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEH2XPbol44cG8ELthp9sxHeMQCIyM ++XaL99Q4Fo5/QqsUsWr1OnovZG/0C1PXTLzH +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEDQRfMCVK3B/O+opbHzG/TnOd0yfN +GNWUVCwxTkFCfAgnigjOjXMF87W4Scctiv9z +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C4 +PeerKey=KAS-ECC-CDH_P-192_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=716e743b1b37a2cd8479f0a3d5a74c10ba2599be18d7e2f4 + +PrivateKey=KAS-ECC-CDH_P-192_C5 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBjPcDVCJmZzIdbiuvQJ +meL9dMeg95P6hpmhNAMyAARfSET/zOYQBdJPc325hnXpL3tlQ662EGxUJPWYE5IV +04m2sSuG1YAUhX8t2ttUD1E= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEX0hE/8zmEAXST3N9uYZ16S97ZUOu +thBsVCT1mBOSFdOJtrErhtWAFIV/LdrbVA9R +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE+zXKINLpZmXFG5jo9us9eRE1CNi8 +zUUWNo7sDVv7hHch32qv8OXUjERPdL+c2KWn +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C5 +PeerKey=KAS-ECC-CDH_P-192_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=f67053b934459985a315cb017bf0302891798d45d0e19508 + +PrivateKey=KAS-ECC-CDH_P-192_C6 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBj+lCUVI3//3XtOtcZJ +Ce7khWoHbN8SuuKhNAMyAATmNp33myB7i4Z598hpz8JkhZ0atVqkAegfmccfgBow +tS902m5ebbti7kxdoQkMwCA= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE5jad95sge4uGeffIac/CZIWdGrVa +pAHoH5nHH4AaMLUvdNpuXm27Yu5MXaEJDMAg +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEgkdSlgwTB+XxOoPaIceZjKi1sAuV +SfbQvFLZHiNDY7wy7gtnePJc2MGEdRD0NIuU +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C6 +PeerKey=KAS-ECC-CDH_P-192_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=75822971193edd472bf30151a782619c55ad0b279c9303dd + +PrivateKey=KAS-ECC-CDH_P-192_C7 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBgz/tEEkq+lvqAzPArx +LKyUDE0iJFW80P6hNAMyAATvCyivxBY31zf0LkyKrOrchLouC4ScoYxXeXlC5VIX +O7oX9zJ44Cn0IzUGi9dw3fI= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE7wsor8QWN9c39C5Miqzq3IS6LguE +nKGMV3l5QuVSFzu6F/cyeOAp9CM1BovXcN3y +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEELtXAgKRFBmB+DO0dJ5WEQNLMI6E +AR0h4crNa3vRftjdtQtq7gZUw18tDt3Bz/z2 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C7 +PeerKey=KAS-ECC-CDH_P-192_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=67cba2cbb69ee78bf1abafb0e6fbe33fa2094c128d59652d + +PrivateKey=KAS-ECC-CDH_P-192_C8 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBjzVXxdcLTHlUlgwzVo +d2rb6OQ2GaviaxOhNAMyAATXARLF8PCEQ4ZJSsGtmdziIUE0F26/ua/TwYegOFEK +sx1Fnit68aOA3XV2rwYmdUg= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE1wESxfDwhEOGSUrBrZnc4iFBNBdu +v7mv08GHoDhRCrMdRZ4revGjgN11dq8GJnVI +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEUZL85Bhad1jqG8VuDk9Oiy3OMjSN +Dc7RIJiZgb6q8ABtiKlueXGi+jozukYEf8e6 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C8 +PeerKey=KAS-ECC-CDH_P-192_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=cf99a2770a386ca0137d1eca0a226e484297ac3c513f3631 + +PrivateKey=KAS-ECC-CDH_P-192_C9 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBhYbPuhxugXZu1Sgo8X +exvhTrvFuDNIwxGhNAMyAARYs8Y+Vr7J1pa/mojfKHNzg5H3Y2iqK0lXdnc7Jh+v +e6L9xP5DuSwLHHov0FSkNlA= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEWLPGPla+ydaWv5qI3yhzc4OR92No +qitJV3Z3OyYfr3ui/cT+Q7ksCxx6L9BUpDZQ +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEJtAZ2+J56tAe7RQ6kWAa2ibi9CIl +scYrbKZT8IJy4DhvyUIfvVgAk9euYwG8qUR2 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C9 +PeerKey=KAS-ECC-CDH_P-192_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=576331e2b4fb38a112810e1529834de8307fb0a0d2756877 + +PrivateKey=KAS-ECC-CDH_P-192_C10 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBjK2BAGA6T2W+CNj8ih +t+iExf9l3rPJbZmhNAMyAAS3/MD1LHpBHtvtOeEL8Ctq4PJmFMazJaJHSDsm62d3 +beK5OrcRnVRHVzc549Vecvs= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEt/zA9Sx6QR7b7TnhC/ArauDyZhTG +syWiR0g7Jutnd23iuTq3EZ1UR1c3OePVXnL7 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEU5vED+IKD7JniItkewPqr27CDAKh +4fjIaQleW7e01EwyeKfua+yjl8RSRtqaNMi+ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C10 +PeerKey=KAS-ECC-CDH_P-192_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=902f4501916a0dd945554c3a37b3d780d375a6da713197c4 + +PrivateKey=KAS-ECC-CDH_P-192_C11 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBge3YecxceWGcrmxzpp +G9WgOVwO87NW/NKhNAMyAARs5q2ywwgI9ZAEjDPf+tRSTr96X9ObdHtJZr0vPQBW +m01MBAn716LbdS9tCbyowl8= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEbOatssMICPWQBIwz3/rUUk6/el/T +m3R7SWa9Lz0AVptNTAQJ+9ei23UvbQm8qMJf +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEXTQ925Yxj7R5TRD2xXP5n+5dDVe5 +liUPmfvfnZfdiK1BAjXaw25bks4oJLjlh6gs +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C11 +PeerKey=KAS-ECC-CDH_P-192_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=46e4de335054d429863218ae33636fc9b89c628b64b506c7 + +PrivateKey=KAS-ECC-CDH_P-192_C12 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBhGDkUic/4YJ2Ahh607 +6+5ly4RCO7T0dTehNAMyAATRvTo++r9HZ/5jgL3w2/SdUtTPDLuJQEzBUMK0yLOq +Nfdl+Efk9/j9hwTSQaGB7pk= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE0b06Pvq/R2f+Y4C98Nv0nVLUzwy7 +iUBMwVDCtMizqjX3ZfhH5Pf4/YcE0kGhge6Z +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEjT25vc4Tf/v7iROIw332wMvJCqXl +N2IgE10wtctmDu+HZP/HRPFcG11twGukQW03 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C12 +PeerKey=KAS-ECC-CDH_P-192_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=1bfe9e5a20ac7a38d8f605b425bb9030be31ef97c101c76c + +PrivateKey=KAS-ECC-CDH_P-192_C13 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBi5cDZQCEVvh1jsxaOz +PPOuao1WgQelIWehNAMyAATBuGEMjGP41KvaCTuaEaVmBEv2XG+qiZmlvEs8oJU4 +Lpc4rulf6UebF4ebOtUpVVk= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEwbhhDIxj+NSr2gk7mhGlZgRL9lxv +qomZpbxLPKCVOC6XOK7pX+lHmxeHmzrVKVVZ +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEngppSVGcf1vmjAQzxf3xMGSqE/sp +SD3D4ci6Y+H0cdsjGF9Q2chx7eohJVs6Y7S3 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C13 +PeerKey=KAS-ECC-CDH_P-192_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0e8c493a4adc445dc9288a3b9b272599224054592d7265b3 + +PrivateKey=KAS-ECC-CDH_P-192_C14 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBhZwVuKJGTkHf5Dccf3 +2t9HCuQlVE+BE72hNAMyAAQf53b3NWe2rAsNZ2QWTebFvnUbqNH/RV5MFgvzivsr +cfaEJhZkEVzodFU+iwWUMtI= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEH+d29zVntqwLDWdkFk3mxb51G6jR +/0VeTBYL84r7K3H2hCYWZBFc6HRVPosFlDLS +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEvgiCOJAumTmz0FTu64SS2vS9zwmi +q3fxWNZ0mjqSPcgEQPJmH9NbZRYX5lKUtGN1 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C14 +PeerKey=KAS-ECC-CDH_P-192_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0f1991086b455ded6a1c4146f7bf59fe9b495de566ebc6bf + +PrivateKey=KAS-ECC-CDH_P-192_C15 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBim6biFxmuVnR/CcI1Z +G20yKOSeuY9ybWGhNAMyAARjK7dlHb9J3endEl0T+yNOBmF3I77tPRv0rVIJY4SI +OXxfRPmU3XR5gH559Ih9LnE= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEYyu3ZR2/Sd3p3RJdE/sjTgZhdyO+ +7T0b9K1SCWOEiDl8X0T5lN10eYB+efSIfS5x +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEv1rgUCXhvmF+Zm2HpBaDY4c9V2Gz +drUD4ebjizcra+4P9bNQLYNzXjssJoJeTw/M +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C15 +PeerKey=KAS-ECC-CDH_P-192_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=b30f2127c34df35aaa91dbf0bbe15798e799a03ed11698c1 + +PrivateKey=KAS-ECC-CDH_P-192_C16 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBi9t1QJb/v72LDzywRs +y3yhScTnGSBno+6hNAMyAATZwJjUIddB9vqrEW8+RzHSjFVY4Z/hEqE41NxIzNsd +PtjTH9BnhKT4emiuwcvVsI8= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE2cCY1CHXQfb6qxFvPkcx0oxVWOGf +4RKhONTcSMzbHT7Y0x/QZ4Sk+HporsHL1bCP +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEbMT+7YTHqw0JAF1mDtNN5pValGHE +E40RMSJfM4ZO1I2gb6RakTtGz0JVd0LjUIXm +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C16 +PeerKey=KAS-ECC-CDH_P-192_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=64a5c246599d3e8177a2402a1110eb81e6c456ab4edb5127 + +PrivateKey=KAS-ECC-CDH_P-192_C17 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBjVvPJTTa/D2Zlkx71j +q3vRWZn+Vt2WnEKhNAMyAAT9odXSjW/g55Cdaouvp4JNtVcquS/+feYTSil8HZyL +urJJq6zZUe0R5amfkueZFXI= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE/aHV0o1v4OeQnWqLr6eCTbVXKrkv +/n3mE0opfB2ci7qySaus2VHtEeWpn5LnmRVy +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAENhVzFb7nr+3e1YxOi6FNNCHEAeUR +NbzJN8KXynA/d8UrsGLYzpcduECXugx1OkGP +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C17 +PeerKey=KAS-ECC-CDH_P-192_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=017b8ca53c82fab163da2ab783966a39e061b32c8cfa334d + +PrivateKey=KAS-ECC-CDH_P-192_C18 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBhD1LnfEFO+W0JoEEwC +JE07+VlLAQtGqLKhNAMyAATDAgtwkUY9eI8fHXb3z+7ILs2zt9mcNFyadxDVF5WR +2PPfCqEiMBdorn237uLX9YM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEwwILcJFGPXiPHx1298/uyC7Ns7fZ +nDRcmncQ1ReVkdjz3wqhIjAXaK59t+7i1/WD +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEmEZNR/Alb4KS4CfoySWC6nfPkFH1 +zo5dRJVS73V4vpYjb+XtnQZDwLtsWpE0sBCN +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C18 +PeerKey=KAS-ECC-CDH_P-192_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=340ef3db3dbebdd91c62c3d4e1a3da2c7c52a3338b865259 + +PrivateKey=KAS-ECC-CDH_P-192_C19 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBiUysLCynFHRkAWcNlO +2/P2d4Z7WgO+562hNAMyAASxhVSi50PvCqLwQJh8TEUQBOCW3z2A3a5uPixhj4lu +NrpiAHdoS3CgX/t5v15sdkA= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEsYVUoudD7wqi8ECYfExFEATglt89 +gN2ubj4sYY+Jbja6YgB3aEtwoF/7eb9ebHZA +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEVj62bDNM9vEjvwTHgDtIoxECFCN+ +mDv1DzURBIGRme8HyaYFHSB1jzr3kCfqZqU/ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C19 +PeerKey=KAS-ECC-CDH_P-192_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=2162144921df5103d0e6a650fb13fd246f4738d0896ce92f + +PrivateKey=KAS-ECC-CDH_P-192_C20 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBgqOp4zyMwxB6n5Jlw7 +3qEgZXDob5KscBShNAMyAASnuji+G8Zp3SPM/O4GRbHw24z5Qt6vrra4LbedgM0O +N/KNQWOtw4ne6Px3l7XJgxs= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEp7o4vhvGad0jzPzuBkWx8NuM+ULe +r662uC23nYDNDjfyjUFjrcOJ3uj8d5e1yYMb +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEhoKMSskrVQdhiux4c6HU/GVDxb4z +zzB4siynJDdUXhDW1PBSQi64mLc3pLhUPuVQ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C20 +PeerKey=KAS-ECC-CDH_P-192_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=4c69e7feed4b11159adfc16a6047a92572ea44e0740b23af + +PrivateKey=KAS-ECC-CDH_P-192_C21 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBhKa3ipismPqOmajs4I +7AJREl+Fxv0OKJuhNAMyAATnadu81c4tg1FLdo09LVqgvNj2avFfVQAvxtCwOeDy +j3T77/6eiD1N1yKW5OlcrnE= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE52nbvNXOLYNRS3aNPS1aoLzY9mrx +X1UAL8bQsDng8o90++/+nog9TdciluTpXK5x +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEZwChAkN3galYHaK8Jc7Vq/QZ2pHT +yAPfcTlsnPCLzZGFTj5uQtjGV84PJ6t3qdxL +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C21 +PeerKey=KAS-ECC-CDH_P-192_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=46072acefd67bff50de355ca7a31fa6be59f26e467587259 + +PrivateKey=KAS-ECC-CDH_P-192_C22 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBjFpkkdeIRNZhfvM75r +i9VNoiFFCIXVlQ+hNAMyAATbGyT3RmvBVOnX0sPKUtz+C/yVY8X9tvMcdPu/W9mZ +IfGpp0T44c93C9anancrMAM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE2xsk90ZrwVTp19LDylLc/gv8lWPF +/bbzHHT7v1vZmSHxqadE+OHPdwvWp2p3KzAD +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEqC81TPl77l0i3GwHnykC6tRNlqj2 +FPF4plSpqooaCALyzg7ooPTr6W3uGzdGSx/y +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C22 +PeerKey=KAS-ECC-CDH_P-192_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=ec5580eabca9f3389d2b427ddf6e49e26d629afd03fa766e + +PrivateKey=KAS-ECC-CDH_P-192_C23 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBgronA8XiP2RjxbiNw3 +KS+r0zmbXh+2fAWhNAMyAAR1QxSJBs75s3pxp8CDY83Tu6UBQtZSQaqLOmlz3o3C +ceJ8Hq0eli/arjcQxyTarDg= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEdUMUiQbO+bN6cafAg2PN07ulAULW +UkGqizppc96NwnHifB6tHpYv2q43EMck2qw4 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEPOwhsoZooSos944ajlXQ7+BlFS// +w0cYEClVe+uk/xmSvSHCPLSCX22ucOMxj9HK +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C23 +PeerKey=KAS-ECC-CDH_P-192_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=7f3929dd3cbf7673bc30d859d90b880307475f800660ea32 + +PrivateKey=KAS-ECC-CDH_P-192_C24 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBiDYRjGJI+ILpFHl292 +SCbBoodVphApd9WhNAMyAAT800WpdscgyqqX3maXImglYV4Sh6nv9n5Y6kLtvur8 +qf9Ez9fymr0svedibXnkIsk= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE/NNFqXbHIMqql95mlyJoJWFeEoep +7/Z+WOpC7b7q/Kn/RM/X8pq9LL3nYm155CLJ +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEcIJkRxW4tzH4IotRGOcnDTTRgfNh +oiH8RkZJ1siMqJYUSIocx7hEK7Qvn7MCCj12 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C24 +PeerKey=KAS-ECC-CDH_P-192_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=72e88f3ea67d46d46dbf83926e7e2a6b85b54536741e6d2c + +PrivateKey=KAS-ECC-CDH_P-224_C0 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBByDRqYPxvKTyloNKvaLpx0d +04nl5Ag3lC3z5Dy9oTwDOgAEjeLiat9yxYLWVo72OMT9WbGNoXG99QHx2SngSEpo +ocKw+yKTDRIFVcHs5Q6pjeqEB/cb4276wN4= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEjeLiat9yxYLWVo72OMT9WbGNoXG99QHx +2SngSEpoocKw+yKTDRIFVcHs5Q6pjeqEB/cb4276wN4= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAErzPNBim8fpljIKP0A2j3TehwT6N7j6tp +q6rigIggksy7p5MPQZqKT5uxaXi7w4OHKZklWaby4tc= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C0 +PeerKey=KAS-ECC-CDH_P-224_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=7d96f9a3bd3c05cf5cc37feb8b9d5209d5c2597464dec3e9983743e8 + +PrivateKey=KAS-ECC-CDH_P-224_C1 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBwEPLIW9Lcs33Yp1jcgpUru +DJnrMtdEd9rAwvc9oTwDOgAEL5D1yOrJx97Nu5e2wvcVq3JeT+QP5tdG779OG2aJ +c1FFT5J6MJsmnFptMTOL5MGaWs/DLPZW9Fw= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEL5D1yOrJx97Nu5e2wvcVq3JeT+QP5tdG +779OG2aJc1FFT5J6MJsmnFptMTOL5MGaWs/DLPZW9Fw= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEE7/NT46UQjk8q4+0a58FZsImsis3B2l2 +8GF6Ru6yQnUpsojGPC+JY8Hkc98vymyqkNUuL421bdQ= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C1 +PeerKey=KAS-ECC-CDH_P-224_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=ee93ce06b89ff72009e858c68eb708e7bc79ee0300f73bed69bbca09 + +PrivateKey=KAS-ECC-CDH_P-224_C2 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBxa0N1turtPPC6l/jLlYbLK +VQgUht8sfBXJYisIoTwDOgAEAFvKRdeT5/6ZqENwTtg4MVqxSl9id1B+m8N1MUPp +1CHhSGrliTv9I8IQ5cFA18axraWdhCyamN4= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEAFvKRdeT5/6ZqENwTtg4MVqxSl9id1B+ +m8N1MUPp1CHhSGrliTv9I8IQ5cFA18axraWdhCyamN4= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEdW3YBrnZw02JlpHstFt3GvRo7ABEhqD9 +0oNBHk0Cwsphe7LF2WE/Jd1yQT0in9KQFROqKVBO7vs= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C2 +PeerKey=KAS-ECC-CDH_P-224_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=3fcc01e34d4449da2a974b23fc36f9566754259d39149790cfa1ebd3 + +PrivateKey=KAS-ECC-CDH_P-224_C3 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBwKpv9Vpdgg78tOfRC4Reo8 +n5vF3/hhBtuFMY4ioTwDOgAEL5Z1QTHgloGYqnj76MIB3F81gceS3khzQNMkSGHo +pc15YVIDttielJb54jb+O2vocx50PWFVGcY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEL5Z1QTHgloGYqnj76MIB3F81gceS3khz +QNMkSGHopc15YVIDttielJb54jb+O2vocx50PWFVGcY= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAED1N78cESLFVlbSXoqoQX4LRLFSauBSMU +T5khxPebJtMOSRp3NpbMLHm08FlrxbnuuvOU0WL7hoQ= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C3 +PeerKey=KAS-ECC-CDH_P-224_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=49129628b23afcef48139a3f6f59ff5e9811aa746aa4ff33c24bb940 + +PrivateKey=KAS-ECC-CDH_P-224_C4 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBzv5ubiWv+vVMmNACq7xjKN +oVlAWht1LjLcI5UKoTwDOgAENV6WKSC94ENpX2v/tLNVxj2m9d5mXtRvLsgX4nSO +CVNo9i4dNk7dRhcZeTtAStvarLyt2Iki/zc= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAENV6WKSC94ENpX2v/tLNVxj2m9d5mXtRv +LsgX4nSOCVNo9i4dNk7dRhcZeTtAStvarLyt2Iki/zc= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEKzYx0rBhebMXShAPf1cTHu6olHvgeGw9 +xksiOYPeKa49rTGtwCNsbefxRWHKLqCDxScMeKLmy8A= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C4 +PeerKey=KAS-ECC-CDH_P-224_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=fcdc69a40501d308a6839653a8f04309ec00233949522902ffa5eac6 + +PrivateKey=KAS-ECC-CDH_P-224_C5 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBxhyykyUkAB5enu7W332ciT +XuMyICnt16qKy/1RoTwDOgAE1Q5K2r/Zidfbx89AUlRsx8RHqXYwQ2mXrUuVNlvq +UDRzxervlVLULECx8vfKKSczslW5u+GxIzc= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAE1Q5K2r/Zidfbx89AUlRsx8RHqXYwQ2mX +rUuVNlvqUDRzxervlVLULECx8vfKKSczslW5u+GxIzc= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAERRFAPeKQWfaaR1xaal9sq+1dnwFENqjL +cKAjOH0tG2KqBG35NA+cN6CHoGsyz38IoiP5koEqgos= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C5 +PeerKey=KAS-ECC-CDH_P-224_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=827e9025cb62e0e837c596063f3b9b5a0f7afd8d8783200086d61ec1 + +PrivateKey=KAS-ECC-CDH_P-224_C6 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBByMes40cXH5Le+Y2EVHX8gu +HRSW2oHuWPUFuYX6oTwDOgAEsajcrImsonmTILRR3xx/9Nl1Z6u2gUHA2V/CqjUk +lQkCsVEL3Jh9hgr8J62HHOrqZpNavTwKmag= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEsajcrImsonmTILRR3xx/9Nl1Z6u2gUHA +2V/CqjUklQkCsVEL3Jh9hgr8J62HHOrqZpNavTwKmag= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEMUoLJt0xwkiEXXzBe2HK1GCCWb7YWljR +8f/TeGbks1A1LhGe7K2jgpB/Nhn9dI6nOuSJnf1JYwI= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C6 +PeerKey=KAS-ECC-CDH_P-224_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=335ba51228d94acbed851ca7821c801d5cb1c7975d7aa90a7159f8fa + +PrivateKey=KAS-ECC-CDH_P-224_C7 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBw4L+ubm6EPGJ2Z5xqJzf5E +y1VM7BOiEoQJd/tooTwDOgAEq7bx43c/+PxzrqKgsQeAnOcK3O/tbkH8XLQwRalj +iXrpBsEKBV7q25f/3W90jT5WIeX/8wTki6c= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEq7bx43c/+PxzrqKgsQeAnOcK3O/tbkH8 +XLQwRaljiXrpBsEKBV7q25f/3W90jT5WIeX/8wTki6c= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEq+aEO+7C/Z5ftkcw0L5NFlQ4zpIu113Y +C0YD5Wr+hnOpbEupkArYWZXmMeQ2xsyIosK0e3xIhrg= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C7 +PeerKey=KAS-ECC-CDH_P-224_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=8c2e627594206b34f7356d3426eb3d79f518ef843fbe94014cceace3 + +PrivateKey=KAS-ECC-CDH_P-224_C8 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBzg1iA1EB70h8SFxg+0UA7r +5qMuxk2+l9vgIyxGoTwDOgAEiFN3NemyPj4OB28TWoLTP5v/tGXzq86DIqYqYrTI +wSNnMZeHXAvRTtCXYG0zD7orkgDvZaRHZNM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEiFN3NemyPj4OB28TWoLTP5v/tGXzq86D +IqYqYrTIwSNnMZeHXAvRTtCXYG0zD7orkgDvZaRHZNM= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEE8+dbSyaroJ0wn1Eav0MiI/91SrimaNZ +hNT1J9y+51tRV1H47irjVeiv1d4hxiqTmmUHtTjLxK8= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C8 +PeerKey=KAS-ECC-CDH_P-224_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=632abb662728dbc994508873d5c527ca5ef923c0d31fa6c47ef4c825 + +PrivateKey=KAS-ECC-CDH_P-224_C9 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBy5at5bc7pyqotuTXTXv5xY +6WL/eOtUIofHtEuioTwDOgAEN2gpJqVPcKTBdI9U1Q1bABOKBV+STyxl5bC75Flq +/vzdZA0pY1AVuJvd3R+MJyNobTMuegbKh5k= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEN2gpJqVPcKTBdI9U1Q1bABOKBV+STyxl +5bC75Flq/vzdZA0pY1AVuJvd3R+MJyNobTMuegbKh5k= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAElltjfA37wM+VQDVobXD37DCSnmZOUh26 +oigGWYKlj/YbyQAZu8u1h104Y9sLwqH6NLCtTeGoP5k= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C9 +PeerKey=KAS-ECC-CDH_P-224_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=34641141aab05ef58bd376d609345901fb8f63477c6be9097f037f1f + +PrivateKey=KAS-ECC-CDH_P-224_C10 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBykDX4SBJxx5lIsf/I4QiQG +HDpFcFizEFV2VbhUoTwDOgAEOZgBJDv+DC2psKU8jKV/Lu6HqqlKjk1eAp9CyqpJ +5tS0fO56XEq3HVpn2oTgubQlzj5w2mjIiec= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEOZgBJDv+DC2psKU8jKV/Lu6HqqlKjk1e +Ap9CyqpJ5tS0fO56XEq3HVpn2oTgubQlzj5w2mjIiec= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEc8xkU3LKLnFjfNqUPYFI8zgqtt0PLhpJ +2pThNN9cNVwj5uIy68O+4qsYc+4Ng+M4L45v5hP2NDw= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C10 +PeerKey=KAS-ECC-CDH_P-224_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=4f74ac8507501a32bfc5a78d8271c200e835966e187e8d00011a8c75 + +PrivateKey=KAS-ECC-CDH_P-224_C11 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBytJRm8ck1ITgKmnwUUm7BH +cUvw9ZhvrC4iLNlGoTwDOgAE35weDvFeU7n2JuK+HL6JNjnAbz4EOe6V19Sx43pS +pzhq3aJD79+JQQhchOMSOcq5K4AXM2dIll4= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAE35weDvFeU7n2JuK+HL6JNjnAbz4EOe6V +19Sx43pSpzhq3aJD79+JQQhchOMSOcq5K4AXM2dIll4= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEVGV4IWJQNU5EniFUbdEc0cUXQjZzmsrZ +zg9FEtKiL81m0avtx2dmgyfFy5xZkEMnYjnPPIUWryQ= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C11 +PeerKey=KAS-ECC-CDH_P-224_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=ad09c9ae4d2324ea81bb555b200d3c003e22a6870ee03b52df49e4de + +PrivateKey=KAS-ECC-CDH_P-224_C12 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBw9MSqbnY7QkUCQC7rB4JVS +fryePGSTvPNmbjopoTwDOgAEtKAZjciBDohEJbdQkosMlgwx96mWY0ALAaF534Er +YBv8BzgkLG+G+DDyes1jLKYYoLUoDJ1Xafc= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEtKAZjciBDohEJbdQkosMlgwx96mWY0AL +AaF534ErYBv8BzgkLG+G+DDyes1jLKYYoLUoDJ1Xafc= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEHUax3DooEjy1E0bme67FZASGhnj699Do +sq+iKg7J5l7JfiGDc+f8EVwidNW4KaYNk/ceAdWBNsM= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C12 +PeerKey=KAS-ECC-CDH_P-224_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=ef029c28c68064b8abd2965a38c404fb5e944ace57e8638daba9d3cd + +PrivateKey=KAS-ECC-CDH_P-224_C13 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBByM4IItwkwVOZV1WsNQc371 +BmQcfXUrT5MAxhLtoTwDOgAEAN/H7BN2kM1tEv2y/QuMUxRYIQh2nCtyL/s5WF7v +PaS6RYEnNGu2QCOGi923VYouz8gTZF9M6f4= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEAN/H7BN2kM1tEv2y/QuMUxRYIQh2nCty +L/s5WF7vPaS6RYEnNGu2QCOGi923VYouz8gTZF9M6f4= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEJm0DjMek/iH2yXYxjoJ7grtbj3RDpVKY +E2UG4N8SPZinogu985Q98uNWNCL4wM901TqqvdfJc7o= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C13 +PeerKey=KAS-ECC-CDH_P-224_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=f83c16661dfcbad021cc3b5a5af51d9a18db4653866b3ff90787ce3e + +PrivateKey=KAS-ECC-CDH_P-224_C14 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBwP+bSFMlq3fynnvDef7XS/ +rIWUgtoN7nUowZ2yoTwDOgAEfmA+aXbbg8NgEVCPppXRtRUkni5UtI/Lz7kCRwF5 +pgDOhq38qbG5MfpRc9YY2gnoQYA9GbAmQoY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEfmA+aXbbg8NgEVCPppXRtRUkni5UtI/L +z7kCRwF5pgDOhq38qbG5MfpRc9YY2gnoQYA9GbAmQoY= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAE6woJ96HCNqYfWVgJ7FZw79kuRZjV5hPg +ks39ylB4euLy8VuIvBD3tfCu4UGDc/FhU669H7pUKI0= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C14 +PeerKey=KAS-ECC-CDH_P-224_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=f51258c63f232e55a66aa25ebd597b2018d1052c02eeb63866758005 + +PrivateKey=KAS-ECC-CDH_P-224_C15 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBwZz1/2MGRn8ouf4GdaQ8BY +JVLIwS5Zznw48pKxoTwDOgAE/CDpBuYJwRLPwuD+pjA4gsXblOh+AiNzqywIKq7N +8dqnF4K8Wia7vY1+inZJDiarwX3/x3S9c0E= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAE/CDpBuYJwRLPwuD+pjA4gsXblOh+AiNz +qywIKq7N8dqnF4K8Wia7vY1+inZJDiarwX3/x3S9c0E= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEay9rGKWH9WL/xhvZsARzIihphqePH9E5 +uE98JHCWkI5GFSZr5ZpTzWVVFQVv+SNwpicaXTgj1wQ= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C15 +PeerKey=KAS-ECC-CDH_P-224_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=7fdc969a186ff18429f2a276dac43beea21182d82ce2e5a0876552b1 + +PrivateKey=KAS-ECC-CDH_P-224_C16 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBByQoVNo41MsCx5R5V0TlEfC +yJvBYHGdaXKR6nwUoTwDOgAExoN9UG6XbafbOtEmfDWd/y6m+wt/f453AkxZ6Wfr +SR0vyKUwxGUl0qiy18HfX7oa50CkZJxoPuY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAExoN9UG6XbafbOtEmfDWd/y6m+wt/f453 +AkxZ6WfrSR0vyKUwxGUl0qiy18HfX7oa50CkZJxoPuY= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEMoEBuoJqzXX/nzTVV0zg28kvcJutjXoz +xHlAwd858eqISIxV1VOBYIeLnO0YqIfqJh3XEtFAJP8= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C16 +PeerKey=KAS-ECC-CDH_P-224_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=3d60ab6db2b3ffe2d29ccff46d056e54230cf34982e241556ed2920c + +PrivateKey=KAS-ECC-CDH_P-224_C17 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBByOCDjgXhchSRBn4cq8LoBR +spDiYW7sQntxIYl9oTwDOgAE6RUPdwB1YmAZ4Y+VRztx5oKAQXkdPwjT+u6qK0df +cHNequUjCKO3Y9yI7+GKtZDrr6A19uCLABw= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAE6RUPdwB1YmAZ4Y+VRztx5oKAQXkdPwjT ++u6qK0dfcHNequUjCKO3Y9yI7+GKtZDrr6A19uCLABw= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEAIHjQnCHHi672UGD9he0rhXwQW3WNP5u +k0zzwDoenzinuQtzF9Jrn2MRBjq1iyaM9Imy5QOG1dY= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C17 +PeerKey=KAS-ECC-CDH_P-224_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=9116d72786f4db5df7a8b43078c6ab9160d423513d35ea5e2559306d + +PrivateKey=KAS-ECC-CDH_P-224_C18 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBw4EG6T8Wo4Gtsdcs7j2mau +RirUu/6p7N810IFOoTwDOgAEe+bEyReCmrZX3XnoY31679L4Hw3nZU2VfpdljUMN +ItnoQ4MQ9h4NQ/Jfo+NFhfQyuq0n2zAhvw0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEe+bEyReCmrZX3XnoY31679L4Hw3nZU2V +fpdljUMNItnoQ4MQ9h4NQ/Jfo+NFhfQyuq0n2zAhvw0= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEJiNjL98L2FaAWmmqGG1BM+9ZBOH2Valy +1mzOByzvlyjdBvuLUBUPUptpUHbUUHmDkSWFyJvQaC4= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C18 +PeerKey=KAS-ECC-CDH_P-224_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=207c53dcefac789aaa0276d9200b3a940ce5f2296f4cb2e81a185d3d + +PrivateKey=KAS-ECC-CDH_P-224_C19 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBzl0XGEMc9Q9svRvIAZ+hZ2 +LfoSyYnlmZl3+06ioTwDOgAELqSWbn+S7X9cxh/eeSBF9jtzHW59DeJXfy2OzhxK +ex7eb4ORYikt9CS+eOgXb7b5QqPAI5FwDzE= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAELqSWbn+S7X9cxh/eeSBF9jtzHW59DeJX +fy2OzhxKex7eb4ORYikt9CS+eOgXb7b5QqPAI5FwDzE= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEjuTR3MMd7kv2/iHKilh3IdkQrPsSLBbC +p3qBUk6/Mj//BOtHcGmgrGizRfaxrhNO/DGUDlE8uZ8= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C19 +PeerKey=KAS-ECC-CDH_P-224_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=10e467da34f48ad7072005bccd6da1b2ba3f71eafa1c393842f91d74 + +PrivateKey=KAS-ECC-CDH_P-224_C20 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBw9Y1aRtiqaknxjOVHJNpyI +Yr0hGdMJcMJkRyfWoTwDOgAEQ4u7mAUXr7IL4dZ046wrMc7wepsj+49uOODWwAvl +8cR9WNIbbtKEI7MvWpR1DaR+3O8z6nmUKv0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEQ4u7mAUXr7IL4dZ046wrMc7wepsj+49u +OODWwAvl8cR9WNIbbtKEI7MvWpR1DaR+3O8z6nmUKv0= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEl9y+bSgzWIKm0ZPMVKEGPdB3XcMoVlMA +u5nmkdrRHdXs6M/Z+XyaUm5KFQbmNVlp7oeCb8OLzSQ= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C20 +PeerKey=KAS-ECC-CDH_P-224_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=82fd2f9c60c4f999ac00bbe64bfc11da8ff8cda2e499fced65230bb1 + +PrivateKey=KAS-ECC-CDH_P-224_C21 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBys88hbvcN58C9eo25/D1MJ +Wp5wRqKGhahlm/eYoTwDOgAE/3URIVxx15a9ZG6EdL5EFrkWhM4NJp729CIBO7e/ +Xnm1qTk7uepCwL2y08LcgG4acwaqWOT9vqU= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAE/3URIVxx15a9ZG6EdL5EFrkWhM4NJp72 +9CIBO7e/Xnm1qTk7uepCwL2y08LcgG4acwaqWOT9vqU= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEzpEm3VOXLeod4dEe/vkA3jS2YYWcRkjF +wOU09+ETtvLBZZ0H8nFuZKg8GLvONE3SEh/oUWjq4IU= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C21 +PeerKey=KAS-ECC-CDH_P-224_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=530f7e7fc932613b29c981f261cb036cba3f1df3864e0e1cba2685a2 + +PrivateKey=KAS-ECC-CDH_P-224_C22 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBzP/WLLAKDjFj+/LDl/rclh +ghD4a09UpnUocwXwoTwDOgAEBL9NlI9EMNGLTtbJbbr5gfoRpAPtFoh/BnVJgXwT +JqnO9R951OeDA9YGS0WfYSWErC/fWT19XYQ= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEBL9NlI9EMNGLTtbJbbr5gfoRpAPtFoh/ +BnVJgXwTJqnO9R951OeDA9YGS0WfYSWErC/fWT19XYQ= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEhEGZZ9bPrUHnWgK22mBal5SaGDqXwwbE +tG5mpVzJsllxixvIsUT95jOolGFv/VmjptXY6ULHy7c= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C22 +PeerKey=KAS-ECC-CDH_P-224_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=49f6fd0139248ef4df2db05d1319bd5b1489e249827a45a8a5f12427 + +PrivateKey=KAS-ECC-CDH_P-224_C23 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBByF+QPkOUPRPGiTLnEOgN5S +y8C48aFBjqTaB5KZoTwDOgAElwpKfgHUGISXzrRpVesbhC2QhYGam5JchFKdPd+i +UmSA+DPqDtvSBOTjZf7zRyiI/n2WkcPrwJ8= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAElwpKfgHUGISXzrRpVesbhC2QhYGam5Jc +hFKdPd+iUmSA+DPqDtvSBOTjZf7zRyiI/n2WkcPrwJ8= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEfJysNXaAY8KCf2Cn9ROI8qj0t/jNc2vW +vDN0dynua4ScYCXVd9vMVfvRcBj07bwu8QWwBNYle80= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C23 +PeerKey=KAS-ECC-CDH_P-224_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=8f7e34e597ae8093b98270a74a8dfcdbed457f42f43df487c5487161 + +PrivateKey=KAS-ECC-CDH_P-224_C24 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBzM5kiRo9ASn+4NSpbPvnrE +cLhelnUpBXz6MaHZoTwDOgAEprKWMtuU2iEl3Bz4DgNwJoeyrMESICL6IXR2WmFy +Pt1z4Q2u1zd1J48ZWLpW8fydCF68K2TIT+U= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEprKWMtuU2iEl3Bz4DgNwJoeyrMESICL6 +IXR2WmFyPt1z4Q2u1zd1J48ZWLpW8fydCF68K2TIT+U= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAECFp2Qq2OWbGj6HJqdUevvs/9rB2rflcj +DGqd9PkcNtiB/puAR6NTBxNVShr0wlxajmVNzc9ony4= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C24 +PeerKey=KAS-ECC-CDH_P-224_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=71954e2261e8510be1a060733671d2e9d0a2d012eb4e09556d697d2a + +PrivateKey=KAS-ECC-CDH_P-256_C0 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgfX3F9x6yndr4DWIU +Yy7q4D2QWK8fttIu2AuttivBpTShRANCAATq0hhZARnoh2spFG/4nKYXcMTtu/l9 +OM44XtKB2KayMCivYSgf014vpwAlI6zIWkKcsG7mZIMlOJ9Z7fzhQFFB +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE6tIYWQEZ6IdrKRRv+JymF3DE7bv5 +fTjOOF7SgdimsjAor2EoH9NeL6cAJSOsyFpCnLBu5mSDJTifWe384UBRQQ== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEcAxI939WWExcxjLKZWQNuRtrrM46 +Tfa0LOfMg4gz0ofbceUJ4/2bBg3bILpcUdzFlI1G+/ZA3+BEF4LKuF+krA== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C0 +PeerKey=KAS-ECC-CDH_P-256_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=46fc62106420ff012e54a434fbdd2d25ccc5852060561e68040dd7778997bd7b + +PrivateKey=KAS-ECC-CDH_P-256_C1 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgOPZdbc5HZ2BE1Yzl +E5WC1Wj2S7FgmNF526sHdB3VyvWhRANCAAQRny8EeQJ4KrDJ4npUr/Xrm5ZIKcqZ +wGsC3bqVsKP20I9StyZmTKw2b8mKx6ASsmgsvZYuWstURnHUG5RFcE0d +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEEZ8vBHkCeCqwyeJ6VK/165uWSCnK +mcBrAt26lbCj9tCPUrcmZkysNm/JisegErJoLL2WLlrLVEZx1BuURXBNHQ== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEgJ8EKJxkNIwBUV6wPVznrBqMuUmP +XKpQGX5Y1DqGp66ynYToERl/Jeuo9RlAkstv9EDibUQhARNyRh9XknHNow== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C1 +PeerKey=KAS-ECC-CDH_P-256_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=057d636096cb80b67a8c038c890e887d1adfa4195e9b3ce241c8a778c59cda67 + +PrivateKey=KAS-ECC-CDH_P-256_C2 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgGsz68bl3Erhab1Sx +SJhaG9xMm+wL0ljK1LPWA/SfMsihRANCAATZ8recFyhFv9tWC7sBRHyl7MBHCglR +O2EmkCxrT40QUfgV717DISjTSHg0dkZ4cC5k4WT/cxUYXiOv9frNlte8 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE2fK3nBcoRb/bVgu7AUR8pezARwoJ +UTthJpAsa0+NEFH4Fe9ewyEo00h4NHZGeHAuZOFk/3MVGF4jr/X6zZbXvA== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEojOcEtSgPDNUbeUzJotK1mfev0WL +Rk13RDY2RA7n/sPvSKOrJuICILzaLBhRB2g52uiOrpYoaaSXv3PLZvr1Ng== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C2 +PeerKey=KAS-ECC-CDH_P-256_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=2d457b78b4614132477618a5b077965ec90730a8c81a1c75d6d4ec68005d67ec + +PrivateKey=KAS-ECC-CDH_P-256_C3 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgIHxDp5v+4D229LlE +9T0vt2zEnvHJxNNNUbbGXE22ky2hRANCAAQkJ3wz9FBGLcs9SAHVe5ztBRiPFsKO +2ocyWASM0WB+DcR4l1PisfY7Mv8BTsQs1qafrIHf5tDW/Urzcq4nxG+I +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEJCd8M/RQRi3LPUgB1Xuc7QUYjxbC +jtqHMlgEjNFgfg3EeJdT4rH2OzL/AU7ELNamn6yB3+bQ1v1K83KuJ8RviA== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE3zmJufpVSVcZs89G3M0otRU/eAgZ +HdUY7/DDz/K3Be1CIpT/RgA0Kdc5ozIGyHUlUsi6VKJw3vwG4iHg/q9qxA== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C3 +PeerKey=KAS-ECC-CDH_P-256_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=96441259534b80f6aee3d287a6bb17b5094dd4277d9e294f8fe73e48bf2a0024 + +PrivateKey=KAS-ECC-CDH_P-256_C4 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgWRN+OBUjULGVyXGN +OWc9UZg4BVrZCN1HVxUv2CVcCb+hRANCAASoxf3Oi2LFraWY8UGts7Js8lTCgLKF +emPSrXg6cxFfa4BuGq/sSvgKDXhrPeRTdbUXp+W1H/ssNWU3yebvIn1K +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEqMX9zotixa2lmPFBrbOybPJUwoCy +hXpj0q14OnMRX2uAbhqv7Er4Cg14az3kU3W1F6fltR/7LDVlN8nm7yJ9Sg== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEQRktKBPnlWHmodb1PIvBpDOhmcg1 +4UGwWnSpew+uuSIa+YzEXpin4EGwHPNfRit1YigTUcjr8/+gLjOgcioTKA== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C4 +PeerKey=KAS-ECC-CDH_P-256_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=19d44c8d63e8e8dd12c22a87b8cd4ece27acdde04dbf47f7f27537a6999a8e62 + +PrivateKey=KAS-ECC-CDH_P-256_C5 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg9fjgF0YQpmEneXm1 +jOXJD+5smzuzRqkKcZYlXkCxMu+hRANCAAR7hh3NKESlqDY/a4741JNkD1WHkhcY +nYAyaq2UgN/BScRnW0XuswZAX2wzw4vGnrK97Jt1rVr0cGqrhFQ7nMY6 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEe4YdzShEpag2P2uO+NSTZA9Vh5IX +GJ2AMmqtlIDfwUnEZ1tF7rMGQF9sM8OLxp6yveybda1a9HBqq4RUO5zGOg== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEM+ggkqDx+zj1ZJ1YZ/uii1AxcrcD +VXS/jltxAKMFJ5Lyz2tgHgoFlF4zVVC/ZI14L0YYbHcsDyDTzQ1rjKFLLw== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C5 +PeerKey=KAS-ECC-CDH_P-256_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=664e45d5bba4ac931cd65d52017e4be9b19a515f669bea4703542a2c525cd3d3 + +PrivateKey=KAS-ECC-CDH_P-256_C6 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgO1ia99sDRZwjBotk +9j8o08PGvCW1v3asBfNUgoiLUZChRANCAASfs44tWOobr3Yi6WcgEByuPN5LpsHp ++ibZsd4ImRAoY9VWG5AEBu31CALdfXPok5X4rtcvug4dG2H+HSIwImDw +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEn7OOLVjqG692IulnIBAcrjzeS6bB +6fom2bHeCJkQKGPVVhuQBAbt9QgC3X1z6JOV+K7XL7oOHRth/h0iMCJg8A== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEap4MP5FuTjFckRR75XFobZBGTov5 +gdNKkLY1O8pu66dA+b6tOcLyvMJgL3W4pz7Hvf/Lzq0VnQF0xsTTxTV/BQ== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C6 +PeerKey=KAS-ECC-CDH_P-256_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=ca342daa50dc09d61be7c196c85e60a80c5cb04931746820be548cdde055679d + +PrivateKey=KAS-ECC-CDH_P-256_C7 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg2L+SmiDqdDayRhtU +GhHIDmHYJsCkydMisx3VTn9YucihRANCAAQg8HYx5KZRKomtSHxOnWMDnlecsNel +VsueZhzVnB5/pG3pGEaz7uil7AnCqx9B4hvYNiDM3Rvc46t+puAt0nT1 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIPB2MeSmUSqJrUh8Tp1jA55XnLDX +pVbLnmYc1Zwef6Rt6RhGs+7opewJwqsfQeIb2DYgzN0b3OOrfqbgLdJ09Q== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEqcCsreVcKnPq0ahvsKlxMiPIJHV5 +HNDiELBGQSziJLv23gr6IOk+B4RnwFPSQZA+2tc0xrQDunWMK1/wTJ1CKQ== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C7 +PeerKey=KAS-ECC-CDH_P-256_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=35aa9b52536a461bfde4e85fc756be928c7de97923f0416c7a3ac8f88b3d4489 + +PrivateKey=KAS-ECC-CDH_P-256_C8 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgD5iDug7zLudd7Q2L +2jmlFGop8fJQezvUWNvqCyuwW02hRANCAASrthtCO+XWwm4hxgWDLJFC3B3+Wl// +KHJnN5Nub79RbXM9JRPvWL6rICCQWG+skb8P7jHoCrM0c6sjotieWPrW +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEq7YbQjvl1sJuIcYFgyyRQtwd/lpf +/yhyZzeTbm+/UW1zPSUT71i+qyAgkFhvrJG/D+4x6AqzNHOrI6LYnlj61g== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAElOlPFqmCVf/yuawMlZiqw1SHsyMt +MjG9k7fbffNvnrnYBJpDV5z6kLgJOpRBbL77+TOG8Vs/bhkLbjRV/t/mmg== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C8 +PeerKey=KAS-ECC-CDH_P-256_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=605c16178a9bc875dcbff54d63fe00df699c03e8a888e9e94dfbab90b25f39b4 + +PrivateKey=KAS-ECC-CDH_P-256_C9 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgK+7bBLBcaYj2pnUA +u4E/ryyuDVgMklO2M55KMze7bAihRANCAAQ9Y+Qpy1+olakkcSm/TkjonzXXsR3o +FY7+s+EGoqhzlQyunkd+9B58jBBkN5u3tVTdy8rnn5gUKB8eUPBAPGHz +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEPWPkKctfqJWpJHEpv05I6J8117Ed +6BWO/rPhBqKoc5UMrp5HfvQefIwQZDebt7VU3cvK55+YFCgfHlDwQDxh8w== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE4Jm/Kk1VdGC1VEQwu/baEQBNEny1 +1n9kqwfJT831J0/ZxQ2+cNcU7bXiIfTgIGEO62JwUX5ojKZPsOmMfvjBxQ== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C9 +PeerKey=KAS-ECC-CDH_P-256_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=f96e40a1b72840854bb62bc13c40cc2795e373d4e715980b261476835a092e0b + +PrivateKey=KAS-ECC-CDH_P-256_C10 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgd8Fdz0RhDkFpa6t1 +iUPv8UCTM+TVoRu+csj2w5Xp+EihRANCAAStXRPD21CN3NOEV+WZFDSiUb7UnPXd +y1nN7nOGXxOMn2LOwecFiKpP38e5oJ2qZ4CBwE4SCLnWYriiIUv46Boh +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAErV0Tw9tQjdzThFflmRQ0olG+1Jz1 +3ctZze5zhl8TjJ9izsHnBYiqT9/HuaCdqmeAgcBOEgi51mK4oiFL+OgaIQ== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE91pf5WvaNPPBOWKWYm7wEtwH5IJY +OHeKZFyCSM/wFlgzu98bF3LYBZ31aLBh8/ESLyio2BkWfJe+RI49w/sMPA== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C10 +PeerKey=KAS-ECC-CDH_P-256_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=8388fa79c4babdca02a8e8a34f9e43554976e420a4ad273c81b26e4228e9d3a3 + +PrivateKey=KAS-ECC-CDH_P-256_C11 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgQqg7mFAR0SMD2xqA +DyYQ90qnHN8Zxn1Uzmye2VHpCT6hRANCAASrSMqmHqNfE/jtB/+moT6NsiTf7Prh +p9+LG7brrwy5fRJ0Uwyiw4WjIYvd+8vwtAJMm63VJDv/g06/8kqGGNzL +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEq0jKph6jXxP47Qf/pqE+jbIk3+z6 +4affixu2668MuX0SdFMMosOFoyGL3fvL8LQCTJut1SQ7/4NOv/JKhhjcyw== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAELbRUDVAjB1YVir9h2YNXErZIbHQx +IYPM78rvJ5e3Z01i9X8xTj80ldxOCZAS9eC6cXcPlmCh6tpUEEzf3nckPg== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C11 +PeerKey=KAS-ECC-CDH_P-256_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=72877cea33ccc4715038d4bcbdfe0e43f42a9e2c0c3b017fc2370f4b9acbda4a + +PrivateKey=KAS-ECC-CDH_P-256_C12 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgzu01UHtck+rVmJEZ +ubo0LP445uY4um7qNDpVR13igAuhRANCAASajNm9cucXUt+RRA93xUdQmoTfmBFO +feTybNs5I0piXdB8/ITI4UT6soOfUYm7HXyIYx1Xm7xYAS7ZojJ9pS9i +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEmozZvXLnF1LfkUQPd8VHUJqE35gR +Tn3k8mzbOSNKYl3QfPyEyOFE+rKDn1GJux18iGMdV5u8WAEu2aIyfaUvYg== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEzZT8lJfomQdQMJ6ahTT9EUsKblTa +icR5YQGJcEHRTsvD3vS1/gT67goRkyIp//VjY3v97g55xt7q9En4VAHFxA== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C12 +PeerKey=KAS-ECC-CDH_P-256_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=e4e7408d85ff0e0e9c838003f28cdbd5247cdce31f32f62494b70e5f1bc36307 + +PrivateKey=KAS-ECC-CDH_P-256_C13 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgQ+Dp2Vr03DZIPN0Z +aNK37rhhH8znfzpOfQWa5D5QlgShRANCAAT5ic+O6VaoLn69mIHNv7L9lGGJsI21 +NVm8jP3UgHHrFF7/KPGhimFrBLfTN4aGefbdhPmns9e2+K8nbBlhGlQd +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE+YnPjulWqC5+vZiBzb+y/ZRhibCN +tTVZvIz91IBx6xRe/yjxoYphawS30zeGhnn23YT5p7PXtvivJ2wZYRpUHQ== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEFbnkZ69NKQxBdALgQEJv5M8ja65y +uqOS7Yl4DfzNtHHN9OkXD7kEMCuP2TqCC6jMftTv06by1rBbgLL/Ku5Odw== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C13 +PeerKey=KAS-ECC-CDH_P-256_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=ed56bcf695b734142c24ecb1fc1bb64d08f175eb243a31f37b3d9bb4407f3b96 + +PrivateKey=KAS-ECC-CDH_P-256_C14 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgsvNgDfM2jvigu4Wr +IvQfwOX0/dVL6BZ6XDzUsI2wSQOhRANCAARpxidiWzakKcOYtFw4Z3yzXYvrHPeK +Vx5A6Z/k6sHNToFpARKwqI8g9xNrKNfUfl+8Kto8jt2HWJvBnslZBje9 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEacYnYls2pCnDmLRcOGd8s12L6xz3 +ilceQOmf5OrBzU6BaQESsKiPIPcTayjX1H5fvCraPI7dh1ibwZ7JWQY3vQ== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEScUDumxPpgUYLhhrXoERPwdbwR3P +1RyTL7IelR7uL6GK9wb/CSLYez8MXk4x2LJZrrJgqSaWQ+1SChO7JdpZJA== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C14 +PeerKey=KAS-ECC-CDH_P-256_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=bc5c7055089fc9d6c89f83c1ea1ada879d9934b2ea28fcf4e4a7e984b28ad2cf + +PrivateKey=KAS-ECC-CDH_P-256_C15 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgQAJTQwf4tiqb9n/2 +Qd3GD+9ZOxfDNBI56VvbPleb/cihRANCAARf6WRnExWhiqaKKm490f3n4juM5xgU +cc+sQ8meGugCYtWCe+KC5iyE3lMbljiEuoMttdayw6JW8OYE/n5rin9y +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEX+lkZxMVoYqmiipuPdH95+I7jOcY +FHHPrEPJnhroAmLVgnviguYshN5TG5Y4hLqDLbXWssOiVvDmBP5+a4p/cg== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEGbON45/dL3D3CRYxpPddGZN0C6lC +kWLCpFMSQBY2spwJrtcjKyjgYJQXQbaCi836K8ScyETzdzYRUE+Co5Clrg== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C15 +PeerKey=KAS-ECC-CDH_P-256_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=9a4e8e657f6b0e097f47954a63c75d74fcba71a30d83651e3e5a91aa7ccd8343 + +PrivateKey=KAS-ECC-CDH_P-256_C16 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgTfoS3vxgMZAhtoGz +/4ShClEZWMhQk57UVjWTS6SXkUehRANCAATJsrhJbxRAvUotHlJ1L9Nyg1s2SIXh +VKfaxJKV8oHsfPvmuSaopN4mzMg7gCsSEkAHVL4l2fPurwCLCYcK52Mh +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEybK4SW8UQL1KLR5SdS/TcoNbNkiF +4VSn2sSSlfKB7Hz75rkmqKTeJszIO4ArEhJAB1S+Jdnz7q8AiwmHCudjIQ== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAELJHGHzOt/pMRyUL9v/a6RwIP7/QW +t7tjzsE/r5sJmVRsqzGwZBnlIh/KAU+4TshwYiobErq1rkNoKqfqc+oI0A== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C16 +PeerKey=KAS-ECC-CDH_P-256_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=3ca1fc7ad858fb1a6aba232542f3e2a749ffc7203a2374a3f3d3267f1fc97b78 + +PrivateKey=KAS-ECC-CDH_P-256_C17 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgEzH22HSk7TvEosbp +x0Mx0wOXljFL7uO3FS/NulVWME6hRANCAARZ4eEBUhBGrZzx0ILp0ux90iUwzOBk +mR8eVcW89fy1kUgvT2cxdsj9qgu25ZsVo+R0VOOgQpfThjyTONmK3R83 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWeHhAVIQRq2c8dCC6dLsfdIlMMzg +ZJkfHlXFvPX8tZFIL09nMXbI/aoLtuWbFaPkdFTjoEKX04Y8kzjZit0fNw== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEooou31gCVmj3JKr4OlCVa3rBz7v/ +ebCMO/h9/Sgo12ffp7//1MdmuGq+r1yZtuUMuczJ2dALf/x4BLBJG2e8Aw== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C17 +PeerKey=KAS-ECC-CDH_P-256_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=1aaabe7ee6e4a6fa732291202433a237df1b49bc53866bfbe00db96a0f58224f + +PrivateKey=KAS-ECC-CDH_P-256_C18 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg3V6fcK50AHPKAgTf +YHY/tgNsRXCb9Ke7TmcUEvrWXaOhRANCAAQwudsuLpd7zcmMuH3XNsvY54VSEhkl +zxbhkzZXwvsjFGpFAogAuBKRvOXC4f7X3tZQYg675gUMbzp/DftGc6tc +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEMLnbLi6Xe83JjLh91zbL2OeFUhIZ +Jc8W4ZM2V8L7IxRqRQKIALgSkbzlwuH+197WUGIOu+YFDG86fw37RnOrXA== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEou+FeggfnW6yBqgcTPeKgCvfWYrj +gMiIbs2F/cHtdkRWPEwgQZ8HvBfQU5+t4YVeNIOVFbiSwPXSZWH5f6BNGg== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C18 +PeerKey=KAS-ECC-CDH_P-256_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=430e6a4fba4449d700d2733e557f66a3bf3d50517c1271b1ddae1161b7ac798c + +PrivateKey=KAS-ECC-CDH_P-256_C19 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgWuAmz8Bg1VYAcX5V +uKEuEW0dDfNK+DGXkFdgfC2cL3ahRANCAARGyevRpKPIwLbVcrXc+6EkZ2AyCKnL +XSrPu3M8QM9jkUbJE6J9BEGF04tGes4BHgTU2bu7jLmuJfqSqvFaWV6G +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAERsnr0aSjyMC21XK13PuhJGdgMgip +y10qz7tzPEDPY5FGyROifQRBhdOLRnrOAR4E1Nm7u4y5riX6kqrxWllehg== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEzNii2GvJLy4BvOTWkiz3/hYmrtBE +aF6V4u69RkUF8B/p3dWDqWNaZnd31bio8xsPeeuhLHUCNBC1S4Vn3dwPOA== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C19 +PeerKey=KAS-ECC-CDH_P-256_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=1ce9e6740529499f98d1f1d71329147a33df1d05e4765b539b11cf615d6974d3 + +PrivateKey=KAS-ECC-CDH_P-256_C20 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgtgGsQl1dv54XNcXi +1b23nKmLPVvkos/W8ic/FQ4GTZ2hRANCAAR8npUIQdJsjd6JlDmLj11HWgIrxj3n +dz/PjVUuAfG6CsxCuYhcmzvuD42MV9Oo9jVQFsAZxAYvoiz/LyCbXMLh +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEfJ6VCEHSbI3eiZQ5i49dR1oCK8Y9 +53c/z41VLgHxugrMQrmIXJs77g+NjFfTqPY1UBbAGcQGL6Is/y8gm1zC4Q== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEwYj/yJR/cwH7e1PjZ0YJfCE0v5zJ +gbp0tOnENh9ZXk6/fS8gVuckIe85PwwPKw4AEw48rEq7zAAoYWjoXsVQUQ== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C20 +PeerKey=KAS-ECC-CDH_P-256_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=4690e3743c07d643f1bc183636ab2a9cb936a60a802113c49bb1b3f2d0661660 + +PrivateKey=KAS-ECC-CDH_P-256_C21 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg/vsd2hhFMStfzmuB +sr4gWvLzonT1ohL2bA2fwz165TWhRANCAAQ4tU24VQDLIMYQVu3T2ItqncJngKBH +8hOm4bkA92WW62OH5OV4FXHk64rmKZGjO13DMwHFvH4SXVN5SjkWDY/Q +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEOLVNuFUAyyDGEFbt09iLap3CZ4Cg +R/ITpuG5APdllutjh+TleBVx5OuK5imRoztdwzMBxbx+El1TeUo5Fg2P0A== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEMX4QIP9T/M7xi/R7t/Lddwf7e3p1 +eOBPNbO+7SIqDrYJQgzloZ13xv4e5YfmpJ+6+PKA6N8DPXVAMwLlon2yrg== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C21 +PeerKey=KAS-ECC-CDH_P-256_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=30c2261bd0004e61feda2c16aa5e21ffa8d7e7f7dbf6ec379a43b48e4b36aeb0 + +PrivateKey=KAS-ECC-CDH_P-256_C22 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgM0rgxGk9I5Nafo4E +PrveIeFop8uj+lB8m+QddoHgSc6hRANCAAQ/K/FYmr8wR78+VKyalTeb/5X49VQF +9k7KNqfuvo/8p1ISqU5mxa6aiZGHL2anJyPYDsWy6SV0XEVvU3GUOzoG +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEPyvxWJq/MEe/PlSsmpU3m/+V+PVU +BfZOyjan7r6P/KdSEqlOZsWumomRhy9mpycj2A7FsukldFxFb1NxlDs6Bg== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAERfsCss6518ednC+pPpx5Z8L6TfV4 +n5ZAskJkseUk/LFcbo7PH30wI4k7exyh5NF4ly7iojB1fdxWT/439cWjIQ== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C22 +PeerKey=KAS-ECC-CDH_P-256_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=2adae4a138a239dcd93c243a3803c3e4cf96e37fe14e6a9b717be9599959b11c + +PrivateKey=KAS-ECC-CDH_P-256_C23 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgLEveQCFPzDv8R9TP +Q0timsvpFX+P0CglQDMd55Qs8J2hRANCAAQpwIB/EMvEL7RcmYnaUGge6tcW2qe5 +6R/TLgYvXrksoP8dbRlV1zdrLaJP4RY6JxZZE2NBvC6xGV/HBtxi5/NN +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEKcCAfxDLxC+0XJmJ2lBoHurXFtqn +uekf0y4GL165LKD/HW0ZVdc3ay2iT+EWOicWWRNjQbwusRlfxwbcYufzTQ== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEoZ73v/mK2ngYQvv8UaR6/zm1k1oc +fZYlyNMj1RHJLebpwYTfdclV4C4C5AD/5F948znhr+bQVvsyRfRwDOYG7w== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C23 +PeerKey=KAS-ECC-CDH_P-256_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=2e277ec30f5ea07d6ce513149b9479b96e07f4b6913b1b5c11305c1444a1bc0b + +PrivateKey=KAS-ECC-CDH_P-256_C24 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQghaJo+dd3L5kMNrQr +CjMa3JK1lB3guGLV2Jo0fL+PqrChRANCAASc9LmFgcoXeUU8yBb/KLQQCvVs8b8u +W8MS2DtrGyHTM3pVBPysUjGg0S1lghgoSGginIRKBKNFDWxzgavggL87 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEnPS5hYHKF3lFPMgW/yi0EAr1bPG/ +LlvDEtg7axsh0zN6VQT8rFIxoNEtZYIYKEhoIpyESgSjRQ1sc4Gr4IC/Ow== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAENWxaREwEmlL+4K3rfl2CrlqoMDC/ +/zG7+M4gls8WHEtX0SjeiypXoJTRoAHlchc/luiGauNSvynN2vkvyFsvkg== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C24 +PeerKey=KAS-ECC-CDH_P-256_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=1e51373bd2c6044c129c436e742a55be2a668a85ae08441b6756445df5493857 + +PrivateKey=KAS-ECC-CDH_P-384_C0 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDA8wxIqaPDZUCetOMBn +kWug64w4iU0i4bFWGLaBimYXdK1GOyBdqIz2matNQ8nPmKGhZANiAASYA4B/L20v +2WbN0CkL1BDAGQNS++x/9iR94TAt+G8l00/kqXvvYM/1SDVcAV27Pl+6Jspp7C9b +XZ2tIMydpxE4Op2+NOo/paKvdbRlAmKa1U3Yt9c6irsGo6O+R9ZQzJk= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEmAOAfy9tL9lmzdApC9QQwBkDUvvsf/Yk +feEwLfhvJdNP5Kl772DP9Ug1XAFduz5fuibKaewvW12drSDMnacRODqdvjTqP6Wi +r3W0ZQJimtVN2LfXOoq7BqOjvkfWUMyZ +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEp8drlww7X+iwXSg4rgSrR2l7nq9S52RZ +Lv2if+dRMnJzRGa0AAka2/LWjFjgxQBmrGjxny4cuHmu1DqZabkaCDnEw4pJdJtm +Hv7fJDRRkV7QkFoysGCZK0aMZHZvyEN6 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C0 +PeerKey=KAS-ECC-CDH_P-384_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=5f9d29dc5e31a163060356213669c8ce132e22f57c9a04f40ba7fcead493b457e5621e766c40a2e3d4d6a04b25e533f1 + +PrivateKey=KAS-ECC-CDH_P-384_C1 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDCShgwhveBhZfjpAMaH ++O8KBdFPKQs/B9izqMxkBDZuXVEZzW0D+xLcWOifE9+c14OhZANiAATqQBj1owfD +eRgL9qYv0s7O6+631N8GOmb7g4qjUkNBl5H34snUgDyTGaoOsDxBa2Zog1qRSE8F +7wKChN9kNvuI/+urzdaasBM+ZzWhvPs3ID0Q00CoMop7aHcMp1h4oaY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE6kAY9aMHw3kYC/amL9LOzuvut9TfBjpm ++4OKo1JDQZeR9+LJ1IA8kxmqDrA8QWtmaINakUhPBe8CgoTfZDb7iP/rq83WmrAT +Pmc1obz7NyA9ENNAqDKKe2h3DKdYeKGm +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEMPQ/zytrAN5T9iTxVDCQaBg5cX1Tx8lV +0dae+vA0m3NjrLRHJAEBy7OvZkHOS4jgJeRsDFTwFip378wntup5IAKuK6gnFCmc +hghXpoFTq2LlJewFMNgbWqFYl5gehYdX +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C1 +PeerKey=KAS-ECC-CDH_P-384_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=a23742a2c267d7425fda94b93f93bbcc24791ac51cd8fd501a238d40812f4cbfc59aac9520d758cf789c76300c69d2ff + +PrivateKey=KAS-ECC-CDH_P-384_C2 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDASz2oiOnI1JUODDz8Y +Uw1cs38miAoLKUSCyKjvivrQmqeLfcLyeJp4xmr10cxVOFOhZANiAAT8/OoIXoz3 +TQ3O0WILqEI2lPkDohm7+QGwtZ1qyBuq0xaiQroyvehcskgRm4Uvq2aXLjxox6tA +LFg28qFu1FGjMSCndQpgOfP/FTiO5iK3Bl9xIr9tUa77wps3sDQEWBs= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE/PzqCF6M900NztFiC6hCNpT5A6IZu/kB +sLWdasgbqtMWokK6Mr3oXLJIEZuFL6tmly48aMerQCxYNvKhbtRRozEgp3UKYDnz +/xU4juYitwZfcSK/bVGu+8KbN7A0BFgb +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEGu+/osbIyFWhohZ3RVC3miTNo3YHux98 +yQZlDuSzgW1o9qnHXabkJCzr+2ZS9lGAQZ0otyPrrbdlj867mtm3repnTx2j3Gtj +l7VdoPYaPt2stKzbFEQcshSwSghEwC+j +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C2 +PeerKey=KAS-ECC-CDH_P-384_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=3d2e640f350805eed1ff43b40a72b2abed0a518bcebe8f2d15b111b6773223da3c3489121db173d414b5bd5ad7153435 + +PrivateKey=KAS-ECC-CDH_P-384_C3 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDCN1IBjo6BYwzS1zHpM +4H0C5e5tjx88UaFgCWLLq0YmkK482XT7OeQLDoQ9qg/TLeGhZANiAATjjJhGJIEj +w0IYYepNMmaae1w8CDdq0oEEOZSUyE/176OJStssbL6MPJE+8u7FvTyfqEAkoQKH +lt+EAh97bJ0C8PS9GmEqA8v3WgvupD/viuhLSMYBcqrfCcGtAW0L884= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE44yYRiSBI8NCGGHqTTJmmntcPAg3atKB +BDmUlMhP9e+jiUrbLGy+jDyRPvLuxb08n6hAJKECh5bfhAIfe2ydAvD0vRphKgPL +91oL7qQ/74roS0jGAXKq3wnBrQFtC/PO +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEi8CJMm7FW5z1mzTw63VNk1lsopD8s0RM +g9TeOlYHA37Dl2g/jO8H6rL+NX6uNsRJ2dFs6KyFs/HpRWhSGq5TTmcTnjEOxyaT +Umqi6Se1syLJWhoDPCKctncMlXzTFI3X +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C3 +PeerKey=KAS-ECC-CDH_P-384_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=6a42cfc392aba0bfd3d17b7ccf062b91fc09bbf3417612d02a90bdde62ae40c54bb2e56e167d6b70db670097eb8db854 + +PrivateKey=KAS-ECC-CDH_P-384_C4 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDCE7ObMNCkwm9WyPpWX +k+0rER7Fy0O2wYCF/K6p76BoXZimJi7g0zDuJQvIpn0Ocz+hZANiAAQyIgY6KZez +Au5g7hlhEI/0x6zxwO8dX7DRZLhLznHEMXBcua6ppF9dc4BmVaBYvuPmH6nn++fN +Q6v5lZaj06A56Z+p3JOwvdnK2Blm0X7q9VcGivp8eEZrtbIgMtEQD6Y= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEMiIGOimXswLuYO4ZYRCP9Mes8cDvHV+w +0WS4S85xxDFwXLmuqaRfXXOAZlWgWL7j5h+p5/vnzUOr+ZWWo9OgOemfqdyTsL3Z +ytgZZtF+6vVXBor6fHhGa7WyIDLREA+m +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE65UuLZrAwgxsxI+yJcKtFU9TyHULAD/T +tO2O0dwN76xhvN3gKivP7nBn1100LtKw8YKCBbrs6C0bJn0Nf/L5yeFbaact9HBY +qX84kQBdH7OIWPVgPehA5ZHfpPbn1Inh +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C4 +PeerKey=KAS-ECC-CDH_P-384_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=ce7ba454d4412729a32bb833a2d1fd2ae612d4667c3a900e069214818613447df8c611de66da200db7c375cf913e4405 + +PrivateKey=KAS-ECC-CDH_P-384_C5 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDBo/OISHcOh43sQ8d3j +Cfni4Y+sR80XcJUUUcNITNt3yxNtAOcxJgWXzChZYBwBoluhZANiAASGi+DmlIQY +MOQk2RPY59hrhO4QIdgrDs9SPwn+iadsDJXEny37z4KcHjlwnVXvuzuRlesYNnW0 +D9kvUfN3EzF+SptPcVyKsi4Hc7G8cdOiGfBbgRYHRljuhrUuNvOJcRY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEhovg5pSEGDDkJNkT2OfYa4TuECHYKw7P +Uj8J/omnbAyVxJ8t+8+CnB45cJ1V77s7kZXrGDZ1tA/ZL1HzdxMxfkqbT3FcirIu +B3OxvHHTohnwW4EWB0ZY7oa1LjbziXEW +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAERB0CniROtxaNZH1N9Q219OSXSrP9rwIq +/wWLNpXQuMgUzIjaYoXcbfGsVcVTiFAD6AJawjpB1LHqKqRsUMbkeZRrWbbXZJfN +kkmXfgv+SmJiYi8T1Co8Q9Zr27MEA8NF +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C5 +PeerKey=KAS-ECC-CDH_P-384_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=ba69f0acdf3e1ca95caaac4ecaf475bbe51b54777efce01ca381f45370e486fe87f9f419b150c61e329a286d1aa265ec + +PrivateKey=KAS-ECC-CDH_P-384_C6 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDCxdkxUiX56rm3p53Uf +LzfehJKR+I8PkQkxVbhY0cwyo6h5gPcGuGzIP5J739vq4L2hZANiAATDcSIv6qZ3 +DG8+o+DayXQN70/PghN4t/kf+TfCHgRw9w86MdXGspEhlfEJJpQrSK4EfWtNdlEj +Vj+BEWvGZbe4zGIHgw2AX9hNp8uAWmW6p8Ev1ZLRtbXj5l2WcqnvdmI= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEw3EiL+qmdwxvPqPg2sl0De9Pz4ITeLf5 +H/k3wh4EcPcPOjHVxrKRIZXxCSaUK0iuBH1rTXZRI1Y/gRFrxmW3uMxiB4MNgF/Y +TafLgFpluqfBL9WS0bW14+ZdlnKp73Zi +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEPU5r8IpzQErMwWKYc0aOQmnoLZDYMuWK +1yFCY5taBWrY01xmxg6BSfrAx5e863wvmwMI3H8ObSn4wnesvGWiHlrbg9EeaHO8 +Cgf9oJl/SCUEYC9Z4QvFy0drg9Ck915x +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C6 +PeerKey=KAS-ECC-CDH_P-384_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=1a6688ee1d6e59865d8e3ada37781d36bb0c2717eef92e61964d3927cb765c2965ea80f7f63e58c322ba0397faeaf62b + +PrivateKey=KAS-ECC-CDH_P-384_C7 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDDw96lucNmP1aMK1kBs +9W61typRDp8ZL1Dh+EUk2/PSQ59yh7s29aqRKnneqrSt6oKhZANiAASZyMQcsate +CFSjRuSwilN8FwamFVM4fI2UlDqxUZbUDbqlW4IQp3pdAJFfLE6mnqtVMQZb3PF7 ++zy1WgLkGlfH9pTDg60on5APvWVsIjOpPJLpM+eib1TLtW8K2HXFG7A= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEmcjEHLGrXghUo0bksIpTfBcGphVTOHyN +lJQ6sVGW1A26pVuCEKd6XQCRXyxOpp6rVTEGW9zxe/s8tVoC5BpXx/aUw4OtKJ+Q +D71lbCIzqTyS6TPnom9Uy7VvCth1xRuw +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE9fa+8dEQ2gO+ABfqx2DMNLJNCS9zbyN7 +xwVLOGUxKoE7y2LSl/sQpPer9UcI/i09Bv3419wDL04QAQvxnL9hWTISUv9BX7kZ +INQ48k5n5gwusEYyBGefo1avRM6pyev1 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C7 +PeerKey=KAS-ECC-CDH_P-384_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=d06a568bf2336b90cbac325161be7695eacb2295f599500d787f072612aca313ee5d874f807ddef6c1f023fe2b6e7cd0 + +PrivateKey=KAS-ECC-CDH_P-384_C8 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDCe+4fdxh1DxIK6ZuGx +Q672ePvQ0b68IACUH6vmd/5bcGv3j8420QCxfMeH6tdLvKKhZANiAARMNO/ujwyV +Vl0gZdG7rCot0lrpZDIOtrzO3F86m0KogaGvyhu2uIBYT6J7AcGTzZLY+wHb980K +OGjCa5UfOTw8VsKFjO6QH3eT/10nGSXROkH45SQJ9OuhmQ8zrLC6xmk= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAETDTv7o8MlVZdIGXRu6wqLdJa6WQyDra8 +ztxfOptCqIGhr8obtriAWE+iewHBk82S2PsB2/fNCjhowmuVHzk8PFbChYzukB93 +k/9dJxkl0TpB+OUkCfTroZkPM6ywusZp +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEfN7Hfgc36jfGe4m3E3/jiBgBD0RkQ47k +0dNaDEiMrT/eLzfQCIXTbTt5W5+T0jpnKMQu6NYCfFbPl5ukwin9sB0jSUT4rEM2 +UBEsPPDwKEToiKNWnf73goqKiEWJqgVe +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C8 +PeerKey=KAS-ECC-CDH_P-384_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=bb3b1eda9c6560d82ff5bee403339f1e80342338a991344853b56b24f109a4d94b92f654f0425edd4c205903d7586104 + +PrivateKey=KAS-ECC-CDH_P-384_C9 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDDXh6V/3iLsZWoKUlzz +xzizDXOvYedD6pCJPsste2Iq3S+U7iXCFxRnr7CT8/hNABihZANiAAQXFUaSO4ey +y7rWZPAc6TK/CdamEYFoZ4RGv6nwk4YIy0ZnqY9OyKwUYihcJQj3SGL6QctNtorn +Hx+KPok53FLC3sYag8mDvrKgK68p7EkngIiILtDPVsdLXBc7VSzPY88= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEFxVGkjuHssu61mTwHOkyvwnWphGBaGeE +Rr+p8JOGCMtGZ6mPTsisFGIoXCUI90hi+kHLTbaK5x8fij6JOdxSwt7GGoPJg76y +oCuvKexJJ4CIiC7Qz1bHS1wXO1Usz2PP +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEju6joxnI35n7wpy1XyQ6cg2VUJUV7lzF +h6XFriL7vQCeYm2z6RHe8LmaT3rjBLG6c4d9yU25rd3A2aSyTol2wi1zyEQ3Dh7o +V/jRsSmjvV9j9AyvO9BTPjil9XdwdP+e +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C9 +PeerKey=KAS-ECC-CDH_P-384_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=1e97b60add7cb35c7403dd884c0a75795b7683fff8b49f9d8672a8206bfdcf0a106b8768f983258c74167422e44e4d14 + +PrivateKey=KAS-ECC-CDH_P-384_C10 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDCD1w97Fk2fTCJ8dnBG +sg6zTfx3j1OH4y6DSx5trsIO24ylu0GSCT9UO2jmrrfOeIuhZANiAARXzXcPO7y+ +DHjHcOqwsWm8ReE5+GN4/64cKxaWZyfC8utyRXK48+sijRMNtP+GLGN+xciBO2hV +WNg+kk8UvHGfbreuDLssR0Inxb2ohjek8mxkgXkpr5mVktpveHSQMy8= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEV813Dzu8vgx4x3DqsLFpvEXhOfhjeP+u +HCsWlmcnwvLrckVyuPPrIo0TDbT/hixjfsXIgTtoVVjYPpJPFLxxn263rgy7LEdC +J8W9qIY3pPJsZIF5Ka+ZlZLab3h0kDMv +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEpyH2otRSdBGDSxPU06M8Kb64OrdoJGXG +y69mJKym6ljDDrDyndhCiGaVQA1yVPIPFLpuJjVRCa01EpNm1eOmQK55hQWn+lWp +aja12tM94AR09mcPUiIU3XlSFAqwp+to +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C10 +PeerKey=KAS-ECC-CDH_P-384_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=1023478840e54775bfc69293a3cf97f5bc914726455c66538eb5623e218feef7df4befa23e09d77145ad577db32b41f9 + +PrivateKey=KAS-ECC-CDH_P-384_C11 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDCPVY4FgYuI7Tg9X8qW +LlNBPbGg5GN+2hlPdhlEy+oRSrnV2hdafVeIJVCw5DLzlamhZANiAASaL1f0hnzn +U9crDZUZXfb5bB+uk09gLv17alRYL1Vs+lOdiQBcou2sCK2bct0fYLrZuU7oLanM +YB80YESZi6OHruVkBNxuzIqytZBEMxnQsrYXb50OrC1EZ47VYWB9Cak= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEmi9X9IZ851PXKw2VGV32+WwfrpNPYC79 +e2pUWC9VbPpTnYkAXKLtrAitm3LdH2C62blO6C2pzGAfNGBEmYujh67lZATcbsyK +srWQRDMZ0LK2F2+dDqwtRGeO1WFgfQmp +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE2IKoUFwtXLm4hR/Gdmd7sAh2ga1T+s66 +Fzgoa0WCdWHn2je4gCdsZWz8OLMq3oR+NLMUvcE0V1ZUVzz/r0BEXaLmqvmH9+kT +zUwwkVIwWJhKJdjyHagyYZJFbGoPpfYM +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C11 +PeerKey=KAS-ECC-CDH_P-384_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=6ad6b9dc8a6cf0d3691c501cbb967867f6e4bbb764b60dbff8fcff3ed42dbba39d63cf325b4b4078858495ddee75f954 + +PrivateKey=KAS-ECC-CDH_P-384_C12 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDAPXe4K/6e78jnV3/Mp +h+u3z4T8zu1kPh08YtCzNSrsI7blrH+kEFyMsmEmrS0YksuhZANiAAQjNGvfvJ18 +fHNuAr32B2cf9ggv3SczSovHXzsjaB6+YU0Fl91hT65YZ3yDWp8LJzuCujYpDS+U +20FHnrRatOr2eSiiMVE41Z7sybUoXf3dZxT3dVchbqRMxvwRnYJD768= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEIzRr37ydfHxzbgK99gdnH/YIL90nM0qL +x187I2gevmFNBZfdYU+uWGd8g1qfCyc7gro2KQ0vlNtBR560WrTq9nkoojFRONWe +7Mm1KF393WcU93VXIW6kTMb8EZ2CQ++v +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEgVyddz2/X7ahuGeZlmJH9ABqI8kuaMVe +nqqZixfYgy3U2E2SfYMdT2jaxnxkiCGf55JplIsmEUhFYP1JD+7Ih8tV75mktSSI +D6dJnWoHKDquKvoz/quX3spAvGBsTYdk +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C12 +PeerKey=KAS-ECC-CDH_P-384_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=cc9e063566d46b357b3fcae21827377331e5e290a36e60cd7c39102b828ae0b918dc5a02216b07fe6f1958d834e42437 + +PrivateKey=KAS-ECC-CDH_P-384_C13 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDADe2M7W4uoV8D8hWVo +aCMuL+v1lXhxg5G4HahUGgC/5TwwrgQVGEfydJn416utjPShZANiAASIeKyKlH99 +XLK0eq0k+7ghDYYSZYU5mihx+Eqpxf3jB0rlQMa/gidcqCLQ/rhivHRjL1zS+QDC +cRwy+JMHKOtkfTHt2NZQ+WVOfTPl7RtHVInQjaow2MvLpr/Dtg2bWjc= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEiHisipR/fVyytHqtJPu4IQ2GEmWFOZoo +cfhKqcX94wdK5UDGv4InXKgi0P64Yrx0Yy9c0vkAwnEcMviTByjrZH0x7djWUPll +Tn0z5e0bR1SJ0I2qMNjLy6a/w7YNm1o3 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEHA7tp6K+AAxb3NoEeK7U23M9Kp40EiQ3 +kSOthHAw8p47Fo+hjomjwPuips4cKPw77Iwcg8EYxNvqlCcYafLYaOtl6LROIebx +Sw9NmzjAaNrvonEUJVuaQdCEzEoa2FRW +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C13 +PeerKey=KAS-ECC-CDH_P-384_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=deff7f03bd09865baf945e73edff6d5122c03fb561db87dec8662e09bed4340b28a9efe118337bb7d3d4f7f568635ff9 + +PrivateKey=KAS-ECC-CDH_P-384_C14 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDDj0HEGvtzAlufZFjD/ +0wlN8seFnbjX7bsuN7SsR/QppjfQamfS+6M4OHZO8gNGSZGhZANiAATnShorhfHL ++Nu98FDPGv+KywL9ovtlkfnTz+TnnQrpOKnBSD57dfjbJFBdZQZc2xgXc+5ZGCL3 +q6qFahpgvApSA1SNvRy1AlRm7/hIG9B2FOqgShbD23aQWRPpcqW2tZ0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE50oaK4Xxy/jbvfBQzxr/issC/aL7ZZH5 +08/k550K6TipwUg+e3X42yRQXWUGXNsYF3PuWRgi96uqhWoaYLwKUgNUjb0ctQJU +Zu/4SBvQdhTqoEoWw9t2kFkT6XKltrWd +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEyVwYXiVr+ZfzCzEVSK5/doo43uQ+7u9D +CD8wd75w4r85rB1NrzYMUUyMa+YjRD0aPmOmY+r3XYp2WrK5o1UT15M/peJkIKUk +RVDsbDtvAzuW2yrKPWrGqrBSzpKVla6l +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C14 +PeerKey=KAS-ECC-CDH_P-384_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=c8b1038f735ad3bb3e4637c3e47eab487637911a6b7950a4e461948329d3923b969e5db663675623611a457fcda35a71 + +PrivateKey=KAS-ECC-CDH_P-384_C15 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDDz+bDGWkmlBmMsikWx +D2a1MW+e6wb64hjy2mIzP5mQURexQcdg6JdO/ErxBXBjV5GhZANiAASkrXeqfYbl +NhEYprkhcQyCByEhBxL0w0eYX97liqTv+h4ovoChexILE5+WMA+JtJsd3yLgfgPx +Vg2PRaSACUVg26n65/lTETDBtX67lZgkllJPMdN5d5M5b6gj8ivbQyg= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEpK13qn2G5TYRGKa5IXEMggchIQcS9MNH +mF/e5Yqk7/oeKL6AoXsSCxOfljAPibSbHd8i4H4D8VYNj0WkgAlFYNup+uf5UxEw +wbV+u5WYJJZSTzHTeXeTOW+oI/Ir20Mo +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAENJcjin5q0WbfLawDmqTayNF6qSXnx2Me +s7VuOqocVF/NVNLlmFgHkQ+yArH8GR0qpJ5cSH3MeqQKjyNMl5RGBA2RdOOtNX1A +TXdlGDGVrtP5E2QbkMgaMG6/DYkThhMW +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C15 +PeerKey=KAS-ECC-CDH_P-384_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=d337eaa32b9f716b8747b005b97a553c59dab0c51df41a2d49039cdae705aa75c7b9e7bc0b6a0e8c578c902bc4fff23e + +PrivateKey=KAS-ECC-CDH_P-384_C16 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDBZ/Of6194ousAjBpDJ +VxDHIOUo+aTlTTpqjNX8XF8hY3AxzhxbTj05ZH2Ny5t5RmShZANiAAScQ7+XHt8J +QCh27nQglTgfeLG9OqObUTKvddv+fpi9eL3hD+LpA8K2N54d7uF1obCmxY7OpaR3 +uwG9VDsznxzEnxNxos2k1G605T4lBZeUI1GplmWhIv/qm94GNsN12vI= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEnEO/lx7fCUAodu50IJU4H3ixvTqjm1Ey +r3Xb/n6YvXi94Q/i6QPCtjeeHe7hdaGwpsWOzqWkd7sBvVQ7M58cxJ8TcaLNpNRu +tOU+JQWXlCNRqZZloSL/6pveBjbDddry +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEkKNHN9RbGqZfdOC9Blm8EY+OS3dLdhlE +/6ZXPG309B3sDRG2l6vZNNOQhx1LRTJAm1kHGbszB8FJp4F741XWhIk6MHdktRLu +/+B8tpnttab/v41gMubHnV6T6UISwqpO +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C16 +PeerKey=KAS-ECC-CDH_P-384_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=32d292b695a4488e42a7b7922e1ae537d76a3d21a0b2e36875f60e9f6d3e8779c2afb3a413b9dd79ae18e70b47d337c1 + +PrivateKey=KAS-ECC-CDH_P-384_C17 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDA+Sfv5UKQkxdgCKNxL +w16fbGwMHQRECZjaCmCah3V12+Q31qXO2qLd0qGhf9ESre2hZANiAARalJWUIosa +PW9ZnrPbDQYHD7xVHGV7WCNLoWTOP+QV+l8+uCPAjcKbjDQSGcd7az0rqtRHyMKQ +z+0l7dkDHEHQt2khRXMn9C2zESK4HzN7vwsQOeyDDOkGGjdhlTx15Kg= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEWpSVlCKLGj1vWZ6z2w0GBw+8VRxle1gj +S6Fkzj/kFfpfPrgjwI3Cm4w0EhnHe2s9K6rUR8jCkM/tJe3ZAxxB0LdpIUVzJ/Qt +sxEiuB8ze78LEDnsgwzpBho3YZU8deSo +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE3aVGrPyPkD0R4uOSBmljbUSyBorrZv8H +qiZvADDhU1sO0CA8uKRgrJkPE5T68i8dFbuyWXkTA1+q30E0dvTHD3J5dppAyYb0 +cMQntO5JYqvfgXO7rYGHR3KSX9MvCxWf +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C17 +PeerKey=KAS-ECC-CDH_P-384_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=1220e7e6cad7b25df98e5bbdcc6c0b65ca6c2a50c5ff6c41dca71e475646fd489615979ca92fb4389aeadefde79a24f1 + +PrivateKey=KAS-ECC-CDH_P-384_C18 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDBQzMH3B26S9GOOhfLb +mOC0g+biIEySvdRApt7qBON6B8bnJ5HBkK1OTobgHvuoQmmhZANiAAR1bAffDOMs +g52sn7RzPJwotwETpnanBXw40iPyKjqQlajVZGU69SjgTH4YJL5KZRIXws5pYsvS +ouBmKXs51X3Zu0aA8BkdOQ9wtORhQZspcs5orUYSf92mw5GVd06obfM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEdWwH3wzjLIOdrJ+0czycKLcBE6Z2pwV8 +ONIj8io6kJWo1WRlOvUo4Ex+GCS+SmUSF8LOaWLL0qLgZil7OdV92btGgPAZHTkP +cLTkYUGbKXLOaK1GEn/dpsORlXdOqG3z +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEeIviM2xS9EVNY+6USx5Jv7YZoINxBI5t +qS5YTq5wveHxccTfN4vR88CrAwSKI3gCRnPr2NtgTq9BcRdIurKWiiPKRHbOFE5y +gkfwivdSkpFXtYMPHiYGdGa9+otlFFoz +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C18 +PeerKey=KAS-ECC-CDH_P-384_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=793bb9cd22a93cf468faf804a38d12b78cb12189ec679ddd2e9aa21fa9a5a0b049ab16a23574fe04c1c3c02343b91beb + +PrivateKey=KAS-ECC-CDH_P-384_C19 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDAG8TK3H3TYe/mYV+Hk +NQpZTl/jVTO4iFUs7MvA2JI8kC42FB12keKGMbi8m6/l4GShZANiAAQqPMa4/1ze +km5+OhiaG9ApybWGNRr4g49PIBy49LcO87DaBtNSyA/Ca6+PQreERZ6/mYWWAXba +bSPHRSopVP/LvLJCSbQwGaKgI+Cz2r1GHxmtPndcNk8/Ea1J8wmUANM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEKjzGuP9c3pJufjoYmhvQKcm1hjUa+IOP +TyAcuPS3DvOw2gbTUsgPwmuvj0K3hEWev5mFlgF22m0jx0UqKVT/y7yyQkm0MBmi +oCPgs9q9Rh8ZrT53XDZPPxGtSfMJlADT +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE0Ju4IuuZ44BglUdHyCuzJ4z5a782/s40 +APTIc4OKQME16zuruSk70QAb8+ze578m1BbbbhuHu7dCd4ijtsenqywWWx42b5YI +31EgN1hPITpkjUfxasMm4Zquly9j/XbJ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C19 +PeerKey=KAS-ECC-CDH_P-384_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=012d191cf7404a523678c6fc075de8285b243720a903047708bb33e501e0dbee5bcc40d7c3ef6c6da39ea24d830da1e8 + +PrivateKey=KAS-ECC-CDH_P-384_C20 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDASBI67QzHsGaHiPxos +dztmTM/pCii/uEb8Evgd/0S3RDx3ZHFkvx6eZ/0sB6Z2YkGhZANiAAS8GINrx6n9 +9UtTUvN9dSirj6jsVEqMYYBRHL/dSczjd8OeNMAxtSQNyZgFA+0vJiyAhsvjOBkQ +gPC3oWx6/Ex7Ayb5rGb1hVLvS7nSTeNCntXTJ37Vj89I8rX2Eya+xsY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEvBiDa8ep/fVLU1LzfXUoq4+o7FRKjGGA +URy/3UnM43fDnjTAMbUkDcmYBQPtLyYsgIbL4zgZEIDwt6FsevxMewMm+axm9YVS +70u50k3jQp7V0yd+1Y/PSPK19hMmvsbG +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEE3QSYu3lhh2tcQY9/SBLkeodO3xjHfaO +uUmWlSfXmh3FkpXvfSvKZ0PozXewTRtYC6rq3H4Z10qKBEUaE18b4bAv4pn53AC/ +3yAeg9mVxpULzBy4nW97ML9UZWuaTaWG +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C20 +PeerKey=KAS-ECC-CDH_P-384_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=ad0fd3ddffe8884b9263f3c15fe1f07f2a5a22ffdc7e967085eea45f0cd959f20f18f522763e28bcc925e496a52dda98 + +PrivateKey=KAS-ECC-CDH_P-384_C21 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDA01hppnKV2Fp/NwMx+ +ROThIh2w/mPRaFDIEEAp99SESXFLmIQyjK4YmXh1SrRgtIahZANiAASGf4EQTM1r +Fjp5ArZw70BgQssMzn3Nxj0d/JGyxA4833WVg0v57Ot5hJ8WNvyEYvydS96Oh17E +lpfSWNHVlGX4QxxvVTHhxZ6fnr488WSo2c4QoS8ZeSg6lZutJE3YOGM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEhn+BEEzNaxY6eQK2cO9AYELLDM59zcY9 +HfyRssQOPN91lYNL+ezreYSfFjb8hGL8nUvejodexJaX0ljR1ZRl+EMcb1Ux4cWe +n56+PPFkqNnOEKEvGXkoOpWbrSRN2Dhj +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEniLLwYZX9RaoZLN7eDNItm8aqWJs1jH0 ++hvTKtiM8R21IFfGYIYNOdEfvwJPq9REaw1Tx5aBwoEW33HpzudP1WyLfwSznxGY +zHIoTpi+lWLjWSb7T0ip++yv5ykwnotv +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C21 +PeerKey=KAS-ECC-CDH_P-384_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=dc4ca392dc15e20185f2c6a8ea5ec31dfc96f56153a47394b3072b13d0015f5d4ae13beb3bed54d65848f9b8383e6c95 + +PrivateKey=KAS-ECC-CDH_P-384_C22 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDDcYPqHNtcCE1/xaquZ +K7iOrDl/WXJFbHLsRHN00NjOYRU4Mb/IatWm61tgv7lqhiyhZANiAAS2m+7ehdD4 +Kf7BuJPMucPgUv9pLhO5dFN7xbD5/q97IuhPAyMWKbJIZr20uM+QiRRm+F4r/Kui +hDKFsOFOvAfvfa//i0JEFv7mR7WYl7YZ8g7tlaYy5qQga/faQpwExWA= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEtpvu3oXQ+Cn+wbiTzLnD4FL/aS4TuXRT +e8Ww+f6veyLoTwMjFimySGa9tLjPkIkUZvheK/yrooQyhbDhTrwH732v/4tCRBb+ +5ke1mJe2GfIO7ZWmMuakIGv32kKcBMVg +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAELbXaX5QOqohPTbXsITmwRp845Ob7vMUt +8VwPfPf8sYCMdJdktr6F0v3FsW9YrV3AIuiwLc8z4bWgg4SVRfhK1eQ/d8txVG27 +rA0RvbLuIC6dOHLo0CjAiZB0bF4d3pmJ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C22 +PeerKey=KAS-ECC-CDH_P-384_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=d765b208112d2b9ed5ad10c4046e2e3b0dbf57c469329519e239ac28b25c7d852bf757d5de0ee271cadd021d86cfd347 + +PrivateKey=KAS-ECC-CDH_P-384_C23 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDBvpqHHBHMJh6pjSwUW +qCarqMbWQR06TIl3LXpiYQJWouLyifXDRAsOwecPozniUc6hZANiAART3h/BMo6N +4UrsqymtikDWsTdo+G99KYQz0g/seR+G+Lxz81gJiyVqKYu0iN4le/SsKJRP0n8X +uClGwExmxB8AU9NpLyddpVzYc5qVvYzTry+W5N6Vnqg0TYlFN1kFhYs= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEU94fwTKOjeFK7KsprYpA1rE3aPhvfSmE +M9IP7Hkfhvi8c/NYCYslaimLtIjeJXv0rCiUT9J/F7gpRsBMZsQfAFPTaS8nXaVc +2HOalb2M068vluTelZ6oNE2JRTdZBYWL +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEMpZHuqNUIk60QUgpxTaMgteJOzmATgjL +shgPRZvvxLNHo4mnDJGiO9nTDIO+UpXTzI9hkj+tKqjlBdbPoSa5+r1a+dzikLdW +YO8G0cqnNoHQYInDO8QkazqjDbzSQ1sS +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C23 +PeerKey=KAS-ECC-CDH_P-384_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=d3778850aeb58804fbe9dfe6f38b9fa8e20c2ca4e0dec335aafceca0333e3f2490b53c0c1a14a831ba37c4b9d74be0f2 + +PrivateKey=KAS-ECC-CDH_P-384_C24 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDB0rYOGwcssoPzesx4I +abs/SMA2r+LvEQyjAryLkQ9iHJ/MVM7DK7iex8qoTHuOVKihZANiAAQno+g8+51R +IucxKdgBYVhX2nzAiczMnFSrMDKhngoKn2dzRuN/CKCz7Y2m5d1pEGONYORKpeD9 +MMkYRWeWrzfw5BlXkBZF5cWWxtmJ9YWbA6C9fR9Od5Nv/zx00gTlOI4= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEJ6PoPPudUSLnMSnYAWFYV9p8wInMzJxU +qzAyoZ4KCp9nc0bjfwigs+2NpuXdaRBjjWDkSqXg/TDJGEVnlq838OQZV5AWReXF +lsbZifWFmwOgvX0fTneTb/88dNIE5TiO +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEKdijbSIgCnW3rqG7R838sbf9Zt6WcEFD +RyirXVM6Bg33MhMGAP5vdYUqhx+yk4454ZtT21KDld6JekUQiWdxXrjLVcP8vyM3 +k3LAhzoFjVdUSxAuzOcissyrsaYDd0/V +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C24 +PeerKey=KAS-ECC-CDH_P-384_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=81e1e71575bb4505498de097350186430a6242fa6c57b85a5f984a23371123d2d1424eefbf804258392bc723e4ef1e35 + +PrivateKey=KAS-ECC-CDH_P-521_C0 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIBfuzAerSzKQaPumXl +ah+IkKqTXlcTSuD/zOgCc1FR9OrGVk9u6ZdMXmiHof7+5XQ64iQb/rldXOMd3Lb5 +7bTW/EehgYkDgYYABABgL50M+eUmsp4iOBwgPEiohsKwZzAzNmMU8f+8uiQLpC9O +84p2F0Y1+R5rTtNCdesByEZ9BcqAMVvxp7vZRfVQpQG3yF8m9dSy1zVc9rAhF2WZ +Q3YrbR21q08dvETOeylG62x940KWKJP9OH0bc9eoZy0fI2lhFwt+s1eZU+5c3IjN +LQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAYC+dDPnlJrKeIjgcIDxIqIbCsGcw +MzZjFPH/vLokC6QvTvOKdhdGNfkea07TQnXrAchGfQXKgDFb8ae72UX1UKUBt8hf +JvXUstc1XPawIRdlmUN2K20dtatPHbxEznspRutsfeNCliiT/Th9G3PXqGctHyNp +YRcLfrNXmVPuXNyIzS0= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAaFpI6Gx58PCHX3vBjSXrX8jAsH5d +pPQ3DzqUkDQIVDNLHhuH+jlUZMYGJhJKTnDQ94VgHTfAmHDr8XZmaHeiBG0BulLF +b8h3bZ6PXbTwzCdjbQt0G74FQAaXlC6AtzmISoO96Z4PZxaTnmMryJhvoY3M1EOj +SLbD5SJJeVWk88MC9nY= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C0 +PeerKey=KAS-ECC-CDH_P-521_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=005fc70477c3e63bc3954bd0df3ea0d1f41ee21746ed95fc5e1fdf90930d5e136672d72cc770742d1711c3c3a4c334a0ad9759436a4d3c5bf6e74b9578fac148c831 + +PrivateKey=KAS-ECC-CDH_P-521_C1 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAgW8ZwfsQ75TUodgc +FW7D0d4Itmdh8D8G7ku53Ou7/h6qHtSaapkIONjtMYwU10zIcvldBdB61Q9iHOti +DNkFz7ihgYkDgYYABADUVhXtXTf95plhCmLNQ7p2vt2Phe0xAF/gDWRQ+70QEpGr +2W1JRai1e8c7P+n0ZxEFMJ7JtoedBVHZMNrIukXSVQFCUzKETlkrRAwAJ5cq0VJk +McBnMt8ZzUaiQhctTdZ8LIyZ38IuSZSaVs+Qxkc2Nc6C8lszaC+xm8M72RDtjOOn ++g== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQA1FYV7V03/eaZYQpizUO6dr7dj4Xt +MQBf4A1kUPu9EBKRq9ltSUWotXvHOz/p9GcRBTCeybaHnQVR2TDayLpF0lUBQlMy +hE5ZK0QMACeXKtFSZDHAZzLfGc1GokIXLU3WfCyMmd/CLkmUmlbPkMZHNjXOgvJb +M2gvsZvDO9kQ7Yzjp/o= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQB3yd8FSEINJvDTVOe4M8Gsk9dNQBn +e0RFRTzMIUCUU6r7inKgvp6+VNEicKpRs6t/MWql50qVHF5T90zZX8Ka7noBPVLz +Op88FDhNFYf6ir567XS8M3Sa2cVwtHF3ZCLH1FBdmwqWs7+sBB5MammQrn9wDltK +ZkAikRLer6DNi7DQibA= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C1 +PeerKey=KAS-ECC-CDH_P-521_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=000b3920ac830ade812c8f96805da2236e002acbbf13596a9ab254d44d0e91b6255ebf1229f366fb5a05c5884ef46032c26d42189273ca4efa4c3db6bd12a6853759 + +PrivateKey=KAS-ECC-CDH_P-521_C2 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIBLy4MbZ6dEXzrlyO8 +7QLrPU7r9f7q+O4BE8zYBXsT3dQW4LdCgMLQuo7SkcRDvBsUHK+K+zpx+X9XwiXA +Ph5NQrChgYkDgYYABABxf8s9SkDRA4ce3gRNyAPbUIqqSudLcLn7jY39hL/s+tF4 +cYeWmMKS0v1eF7T5NDY2xTGk+saKNak2ZVRrmoeGeQDz2WqGNwNpk6tdJEUA//nS +dyESgm9kNmA9PrI0pE1cTlxXcjRnnE+d9yXuW5EY8j2KWNDMAQltr3Do3+wBKL3C +6A== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAcX/LPUpA0QOHHt4ETcgD21CKqkrn +S3C5+42N/YS/7PrReHGHlpjCktL9Xhe0+TQ2NsUxpPrGijWpNmVUa5qHhnkA89lq +hjcDaZOrXSRFAP/50nchEoJvZDZgPT6yNKRNXE5cV3I0Z5xPnfcl7luRGPI9iljQ +zAEJba9w6N/sASi9wug= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAktsxQlZNJ6XwAG+BmQj7obhQOKW8 +JQmQakl9qsZ/167g/C2rpOQzTurvDgAZIEtHHNiAJPghFdgUnMDPT3zhpNUBa60G +I/UXsVjZiBhB0lce+61j+Fy+LlgZYMXWcGAaZ2AnJnWlSJliF+SrK4684x1x/KY/ +zDwI6Rwdjt2Rz2/oRfg= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C2 +PeerKey=KAS-ECC-CDH_P-521_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=006b380a6e95679277cfee4e8353bf96ef2a1ebdd060749f2f046fe571053740bbcc9a0b55790bc9ab56c3208aa05ddf746a10a3ad694daae00d980d944aabc6a08f + +PrivateKey=KAS-ECC-CDH_P-521_C3 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIA5UinnYsF+SO5gl0R +tlbyIujLmLD4neHTFxhNxaaY98cRYe59wRzTH09PiuOpgeGj54veu5fXwgS5JhtO ++S4JGOChgYkDgYYABAAM6AAhftJD3RCnmtc99Xiqij+RlK9SjNEJS7/uJ6O1SBrV +hiyIdsDD+RKUwKs6qAbZAgy6ou1yt/7NxaCaba1vMgFUPJq0WxJGkjKRjiHVo1H5 +pLnL+e+yr8xAL6mzFlC+wtZBoFxEDTUzHAiT0R+xMVEzWYizAzQTAac9xfYdV05n +2Q== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQADOgAIX7SQ90Qp5rXPfV4qoo/kZSv +UozRCUu/7iejtUga1YYsiHbAw/kSlMCrOqgG2QIMuqLtcrf+zcWgmm2tbzIBVDya +tFsSRpIykY4h1aNR+aS5y/nvsq/MQC+psxZQvsLWQaBcRA01MxwIk9EfsTFRM1mI +swM0EwGnPcX2HVdOZ9k= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQA/dQNnp2XQCfLO65oIWLqwTKK1hvE +NTxFv1r+dr9gfSiUyMziNpXZIPJGT9pHc9RpO+SzdzWEaRvbAym39MhswpkANM6s +aj/vHD4cSUv+jYcrGDgyIZp+FNpBTU40dFc2cewZsDO+gxuRVDWQWSW0SUfFkpWZ +RbTrfJUcO5yM9SUwuiM= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C3 +PeerKey=KAS-ECC-CDH_P-521_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00fbbcd0b8d05331fef6086f22a6cce4d35724ab7a2f49dd8458d0bfd57a0b8b70f246c17c4468c076874b0dff7a0336823b19e98bf1cec05e4beffb0591f97713c6 + +PrivateKey=KAS-ECC-CDH_P-521_C4 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIByKrpS7ELjKT3vld7 +T7MrsjgQMsSULCT8LXU+fMXke0gzidnzuVbSDukAGx7vnyNUX3LFYCFABGg56WMx +PD3syGShgYkDgYYABAEGoU4u6P+XCqirDHm5ejO7opWOBwt1uUc2t3u+P3dzJPpS +hydxqoimOp6EkMM3jfTcdgzRTWK+cAd53RpDd5Q2VgAjZs45QeCyhLGqgSFdDTuX +ePziPIzR5O1voKv2IVbJHUs+tVmZw0cb7SdenmDlqp1pDTEL+xXJxbvW9enrOWgr +dA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBBqFOLuj/lwqoqwx5uXozu6KVjgcL +dblHNrd7vj93cyT6UocncaqIpjqehJDDN4303HYM0U1ivnAHed0aQ3eUNlYAI2bO +OUHgsoSxqoEhXQ07l3j84jyM0eTtb6Cr9iFWyR1LPrVZmcNHG+0nXp5g5aqdaQ0x +C/sVycW71vXp6zloK3Q= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAmNmd7ggWVQ6E2/ztfogTf93PWBpy +WkVQIRFf5J+Nw88jPNnqDm8DnceRnalzzc6sogXaOeC9mMgGJTbEfyWPRLUAzSJc +h5c3G+DEKX0rRXdAEAx3QUHY8hTCO2GqK2zUgGubcHIqpJZftiL0K3OR4n5ewhxW +ecWwa1kSc3KZfUIa3B4= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C4 +PeerKey=KAS-ECC-CDH_P-521_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0145cfa38f25943516c96a5fd4bfebb2f645d10520117aa51971eff442808a23b4e23c187e639ff928c3725fbd1c0c2ad0d4aeb207bc1a6fb6cb6d467888dc044b3c + +PrivateKey=KAS-ECC-CDH_P-521_C5 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAmwrxN8lpbHW35t97 +cxVrstRfSC5aQhcyT0eLEM63avCXJM+Gr6MW5/iZGNMdVIJKXDMQekg8FcFblu3G +YTQLHA6hgYkDgYYABAB0jNu4ddNfS8y2Kr4g6C0y5MFNwv61uH2i0MyxHJttS3c3 +tsRvDftNiW4tuS/PU827ripATAur1WStet6sYnPvowGYSsq42PFzMj3gu2AnSyKI +cWCTc7sioXKH6d7HSVhzq8CaiRW1TIRVyOAvZU9gLiOiu9ep67dPMAm9ZezGUIFM +wA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAdIzbuHXTX0vMtiq+IOgtMuTBTcL+ +tbh9otDMsRybbUt3N7bEbw37TYluLbkvz1PNu64qQEwLq9VkrXrerGJz76MBmErK +uNjxczI94LtgJ0siiHFgk3O7IqFyh+nex0lYc6vAmokVtUyEVcjgL2VPYC4jorvX +qeu3TzAJvWXsxlCBTMA= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAeuEVrarwQWkatrf7jJIfmdjtMtKD +1nCE6Aua2cQMVs2YOJ+wqEnZ7PcmjCl7b5NAYRn0DjK1dz7SWiipqFxKdYgBoo4A +Tjfurv4fTbtx8YeGlhQa86EKlpHE7ZNIchRkO3YfpLD77rJHz20/unpgaXU2rQP0 +m4Cp0csHlnNlSXfF+pQ= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C5 +PeerKey=KAS-ECC-CDH_P-521_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=005c5721e96c273319fd60ecc46b5962f698e974b429f28fe6962f4ac656be2eb8674c4aafc037eab48ece612953b1e8d861016b6ad0c79805784c67f73ada96f351 + +PrivateKey=KAS-ECC-CDH_P-521_C6 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIB5I+qzubeyD/83pRM +9r30zkuucnR4iOuv7kVbHpFYSXHvtJEnl2pS9BQpUvfCB+wCZfK3GM8+rZbqT2LH +UuT3rNOhgYkDgYYABAEOsbTZFyvMI/TyDMlWD8VJKMPzTqYcADkdx2bHbtn6YIRJ +N30eT63RI2AlQXMwtLkQhnBKzj5OZITGBuKpQ0eMhgFJQThkBpgl7h0IKNqfSpdx +MAXpvRrbw7OMW5RpAHIalg/patLBs6RP496RVhNtRMsXy8JBVym7eC4Wv+Leswae +Qw== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBDrG02RcrzCP08gzJVg/FSSjD806m +HAA5Hcdmx27Z+mCESTd9Hk+t0SNgJUFzMLS5EIZwSs4+TmSExgbiqUNHjIYBSUE4 +ZAaYJe4dCCjan0qXcTAF6b0a28OzjFuUaQByGpYP6WrSwbOkT+PekVYTbUTLF8vC +QVcpu3guFr/i3rMGnkM= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBJYgRXm9/e9z99X8DsWm0eXWLqv2v +Vp0EE1mHss5hZMAqV2hetSdrXa5ildP+kGIPOLVTXG0iYMFz5h64iMqSAgMBVCwW +nPl8JZb+Ld2EiiIuNnxffmJn68G82atdz0kVjxpI5K8pqJe35qggkcLbh02Oer8P +WAZGkTRBVPOW267RiLY= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C6 +PeerKey=KAS-ECC-CDH_P-521_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01736d9717429b4f412e903febe2f9e0fffd81355d6ce2c06ff3f66a3be15ceec6e65e308347593f00d7f33591da4043c30763d72749f72cdceebe825e4b34ecd570 + +PrivateKey=KAS-ECC-CDH_P-521_C7 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAwpqiI+qNZLSh7aJ/ +OdO8mOoBSN2Ywcvllfj9K/veEZyeAXpQ9dH8EhwIwc7zG3WIWVVus+DgQtjdaqrF +egXKYeOhgYkDgYYABAAVEchI72DVQZqY0QIE2w/lgiQSQ3AGG8+k6SSdUGGMVr83 +IkcbJZ84Jju3soDSPK8qHuhzf5NxzbJzLNyVg2mTDAHUYWga5tjEm0xfTWAWFD+x +vXSRVz4+0ObEi4LoIWRPh/gvDl8I/Rbx+Y+hdYYgCrAu2MYns1w/J2F+xf2S9FYg +Pw== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAFRHISO9g1UGamNECBNsP5YIkEkNw +BhvPpOkknVBhjFa/NyJHGyWfOCY7t7KA0jyvKh7oc3+Tcc2ycyzclYNpkwwB1GFo +GubYxJtMX01gFhQ/sb10kVc+PtDmxIuC6CFkT4f4Lw5fCP0W8fmPoXWGIAqwLtjG +J7NcPydhfsX9kvRWID8= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBaUkdVb0JBJ/fTCpTpmBID+5MA6BT +hnXRzQm1u6eNrEhUPvEYoRc7P7+LIOOc4Oa4kKFjxQ+WRbPSHRy7O2Cm//QAg0lL +Lrp2kQ/tM8dhgEUVAR+rUOOzd6vYqKBF2IbSI40sJorBtuyIvXG3unjiwzwVLkv3 +2l1WXkrL7PXpLHrWYrs= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C7 +PeerKey=KAS-ECC-CDH_P-521_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=018f2ae9476c771726a77780208dedfefa205488996b18fecc50bfd4c132753f5766b2cd744afa9918606de2e016effc63622e9029e76dc6e3f0c69f7aeced565c2c + +PrivateKey=KAS-ECC-CDH_P-521_C8 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAKGkr4r9cS0iTmEb7 +PVvOdGVLsmRuFfg4niNwihr631YVEeoNmVfQtTRTgZ1g+6j2Whj3sp3wIbG7Ac0W +MpOsw8yhgYkDgYYABAHP3BDHmfXHnLaTCmX7o1F0jgdWeZPl5BDvTKzEzYoleEmR +60Z05BBQ+TDHGQrIErkkX0inlztlja9AiCL+W4X2aAGA2d38mvd7nEpvAqg02xXl +NeCzhFsszjA4gwG1HOy+MnYwfvQ5tcnmpy3C2U2Hm8OVBS27SleH0G77KAIQ+4vg +Nw== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBz9wQx5n1x5y2kwpl+6NRdI4HVnmT +5eQQ70ysxM2KJXhJketGdOQQUPkwxxkKyBK5JF9Ip5c7ZY2vQIgi/luF9mgBgNnd +/Jr3e5xKbwKoNNsV5TXgs4RbLM4wOIMBtRzsvjJ2MH70ObXJ5qctwtlNh5vDlQUt +u0pXh9Bu+ygCEPuL4Dc= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAhBX1u9Du44fWwJ0O+KyvKcZttF1r +oQGGCuRdPGDh4OP3JHpGJqYP3UBJZcNWbHn2RJ6FbOC/lGGfl9qNokvSz7YA/dfF +nFjDYbxQp6XQ029yOxfE8q0rA8JNQtxQ90qMRloK/EaD8Q+rhGUt/p6SjCYmtUVk +U+FXP/YL4VB0Z9Qx+7I= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C8 +PeerKey=KAS-ECC-CDH_P-521_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0105a346988b92ed8c7a25ce4d79d21bc86cfcc7f99c6cd19dbb4a39f48ab943b79e4f0647348da0b80bd864b85c6b8d92536d6aa544dc7537a00c858f8b66319e25 + +PrivateKey=KAS-ECC-CDH_P-521_C9 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIBGU0e5hP1Nmy8RLUE +0hoM9nFeIJzTWPLdXz5xzA1n0OlkFoxCoITr2nRvmGOoa6z/yBnx7fG4xyfM+zBH +JApXxDWhgYkDgYYABAFr0VyKWNNm9/Ky8pjMh7dIXp7nDRHRJEi4N3wKgsdib2ev +9/l756NUa/QX7u3fdak8EwGRyEEIBC6i/KF/0/gNFAFWBQLQS3T84XQ6q0d6nR6s +k+UiaYH9uXp0eM5M5Wb/ckOTEoT62FCwwryuDd0tl3kBYMGi53w+1slezES4niY3 +/A== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBa9FciljTZvfysvKYzIe3SF6e5w0R +0SRIuDd8CoLHYm9nr/f5e+ejVGv0F+7t33WpPBMBkchBCAQuovyhf9P4DRQBVgUC +0Et0/OF0OqtHep0erJPlImmB/bl6dHjOTOVm/3JDkxKE+thQsMK8rg3dLZd5AWDB +oud8PtbJXsxEuJ4mN/w= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBxyHuqAWly6KfNLpXWHdb4M9hYObA +hyP1qxe/lqH/K9lCeWGk80sH/AsUyksr9oRd69WoafEk6/p6py/lZQULfxgAtuie +sOHc8YEjb3xUj9GowWsli1LBqb/T/o8ihBsmdjJl8HTEzPLWNK6XtwGVb2ehEAbF +LZcZfZL1hfV0i8JnLus= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C9 +PeerKey=KAS-ECC-CDH_P-521_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=004531b3d2c6cd12f21604c8610e6723dbf4daf80b5a459d6ba5814397d1c1f7a21d7c114be964e27376aaebe3a7bc3d6af7a7f8c7befb611afe487ff032921f750f + +PrivateKey=KAS-ECC-CDH_P-521_C10 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIB/ZDj5BbpiqPytq+n +8782jkUa2cpb1UtbFK7i7Wcj3eUYH1CFtoFpsJ++xyE3LM9rKEcT+aY1a41WCo/3 +jKNzfIihgYkDgYYABAHr6hsQ0+O5cbfvtp/IeN4Rx/Ry5OTThMMbjWKI2AcVF6yt +6bOXlsevUWO89xrtp3dTPzgsbPCk2bu5OMhfRLeANwFrDj4ZwplrLL0f9kcw58qQ +7coZhPmylRMzU15XSLqjSpn2H/TV+BIHng8B6HeJ8079rYCYAV7nSk+EbdGQ0W3G +4Q== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQB6+obENPjuXG377afyHjeEcf0cuTk +04TDG41iiNgHFResremzl5bHr1FjvPca7ad3Uz84LGzwpNm7uTjIX0S3gDcBaw4+ +GcKZayy9H/ZHMOfKkO3KGYT5spUTM1NeV0i6o0qZ9h/01fgSB54PAeh3ifNO/a2A +mAFe50pPhG3RkNFtxuE= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBw1gj5ECpNjq5jZ/Hp7wMBTLceXen +kWVZm/GpzGTAD7OHtCzKNlKG6EMDYL+tNkO8MTVO2lDck2wyns22CQXED8sA2ef0 +M1MeRN9PbVFCAcuquwa63WeD4BERcm2BVTHSM8XNtyKJP/uyAnJZ1ZTed0OICXOB +IMb3g5NPkmw/tptAxAk= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C10 +PeerKey=KAS-ECC-CDH_P-521_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0100c8935969077bae0ba89ef0df8161d975ec5870ac811ae7e65ca5394efba4f0633d41bf79ea5e5b9496bbd7aae000b0594baa82ef8f244e6984ae87ae1ed124b7 + +PrivateKey=KAS-ECC-CDH_P-521_C11 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAkBLs/a3IXO1jCv6l +NM3I6dGri+XzdT3PXysJtA7aZvxoWFSbw25vjfVZmM+poHA67PbEJ5nCRQEQZPUw +wJ25g2mhgYkDgYYABAAjTjK+CpBxMdLRKKZHfgys64bwJHl0Xg/iRcszLeYxwHiH +EWBILu71hOJ033+kEs6j4ekfcey6h4HZIF1IOGNBrQHPhkVbCbHABc/7qNdiiaN1 +lijIdL7qRi9R8wvVgeOAMTQwfe27dxszNO4Vvi4kLNecNAfS9Yk1RWxpQd2bbRVa +Rg== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAI04yvgqQcTHS0SimR34MrOuG8CR5 +dF4P4kXLMy3mMcB4hxFgSC7u9YTidN9/pBLOo+HpH3HsuoeB2SBdSDhjQa0Bz4ZF +WwmxwAXP+6jXYomjdZYoyHS+6kYvUfML1YHjgDE0MH3tu3cbMzTuFb4uJCzXnDQH +0vWJNUVsaUHdm20VWkY= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQACTBX+4YvKtLoLlgbrrMyTnsylG8r +qEWpvu7YfWmV9UkY7GYZuZMZVdWonU10rfEEa7NiGS8u9r0+PS0E3R+HBUoAqj+y +RIM19pTjzaSuDMcbGy8qIG+oAtcmLxmYPERnT+FTJ6yqwfpAQkw5WmVWy4FnMSUn ++uWGXs/8FLvcF9p4zc8= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C11 +PeerKey=KAS-ECC-CDH_P-521_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=017f36af19303841d13a389d95ec0b801c7f9a679a823146c75c17bc44256e9ad422a4f8b31f14647b2c7d317b933f7c2946c4b8abd1d56d620fab1b5ff1a3adc71f + +PrivateKey=KAS-ECC-CDH_P-521_C12 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIBtf+Ef47/ILiM+tQs +BuWMN0Ly+PH9/WS1ObpIwlkmkmvV4zK0VknAsYT3clXp1Y/or6Gm2Wjiyx1GN3dx +IMdlwSihgYkDgYYABAHePckmO8jElp3GhL4O7FS+/ZqfPboZTYZYp4k0G/DXjYTa +ZzUifK+vCTUZUWkRl1c8jDYKEeUoVxK4u99ayRuXfACBLeWM0JXsLlqbJH6z7UHY +vvaurOGUp6BbZapdKJ+8mxdw7IS7a+DCxkzDfB1Up/XXE3eprb4g8m9vK1RKgh6o +MQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQB3j3JJjvIxJadxoS+DuxUvv2anz26 +GU2GWKeJNBvw142E2mc1Inyvrwk1GVFpEZdXPIw2ChHlKFcSuLvfWskbl3wAgS3l +jNCV7C5amyR+s+1B2L72rqzhlKegW2WqXSifvJsXcOyEu2vgwsZMw3wdVKf11xN3 +qa2+IPJvbytUSoIeqDE= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAgxku0LHLMfdYF3lJN/Zq2Rz3RVLN +UQztuf1kExBCKvXQnyIcrSSe6BTRbdeshN7Z6s3Cg0D8/JwMBqvjCi/CjNgAIhLt +hoyboPsskeLDm6k5lqPk6/RfKFLQkoxIkw6HXMe0KNDn8/TVA+XWDGjLSbE8JIDN +SGvtkgDK3a3f5P+ONWI= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C12 +PeerKey=KAS-ECC-CDH_P-521_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00062f9fc29ae1a68b2ee0dcf956cbd38c88ae5f645eaa546b00ebe87a7260bf724be20d34b9d02076655c933d056b21e304c24ddb1dedf1dd76de611fc4a2340336 + +PrivateKey=KAS-ECC-CDH_P-521_C13 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIBGmNH1OgByRkjSINU +zFM+fjX934H/D7f1a7Bybgwp7l3NxfOUulTPVyaQSKq24FWJXI2iS4sGOadCMUOQ +zAQZDtahgYkDgYYABAD+MCZ/M7pc3vwly7PJMg2tnMsdfTdmRGIMpPre5WJqPO3i +WtJUYk3vcnpwSPcUX3YWKqmAQvmxI7IHb46M9Zs/3wARRdxmMZU7bilF6UMB1suw +mP5LBPfumwlBHfEE3ILX157EagHtDy0+fbbraAaUvesQfBB4rsbKvZ6+49NC/n5U +3w== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQA/jAmfzO6XN78JcuzyTINrZzLHX03 +ZkRiDKT63uViajzt4lrSVGJN73J6cEj3FF92FiqpgEL5sSOyB2+OjPWbP98AEUXc +ZjGVO24pRelDAdbLsJj+SwT37psJQR3xBNyC19eexGoB7Q8tPn2262gGlL3rEHwQ +eK7Gyr2evuPTQv5+VN8= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBqJtjapPl0rpsIpK/IwM6hPBqOsEi +DqcegGr74JeoBMxn6bqlFM+2wSyRlL4wISv3quf99tN2whLwVU5lZGP/q34Bgu/K +9w/EEtM2YC4BTaRyVqC2BvKt3M6AU7+Beshla7TkLxTIy/Kmj0iKs13N9kBWJx3u +H2BqRAukvU5aEbi45U8= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C13 +PeerKey=KAS-ECC-CDH_P-521_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0128ab09bfec5406799e610f772ba17e892249fa8e0e7b18a04b9197034b250b48294f1867fb9641518f92766066a07a8b917b0e76879e1011e51ccbd9f540c54d4f + +PrivateKey=KAS-ECC-CDH_P-521_C14 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAIrbSoi1x36qBHS2f +nzH77Sfy4fPSOVON3z5MyMOaMwJm2yW3vAqXBPF73n81kr9fHy1LVgE6rMPY0bwC +8A0xRsyhgYkDgYYABAC6OM+/n9JRij9h1DVJ56am0osr5X/9Pg+s62NrNO0X4ESp +8kna6PwTLpN+LZNJzS7Xe7EEnOtpKi7FsXrWFQKmTAAeyR0wWFc/psBWSgKhoBAW +DDE7x8c1ENyYPlRhaCtb4A285+LGgq1z8pyoIs3BEfaPq+M6ezhKZINCw8258FC8 +2w== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAujjPv5/SUYo/YdQ1SeemptKLK+V/ +/T4PrOtjazTtF+BEqfJJ2uj8Ey6Tfi2TSc0u13uxBJzraSouxbF61hUCpkwAHskd +MFhXP6bAVkoCoaAQFgwxO8fHNRDcmD5UYWgrW+ANvOfixoKtc/KcqCLNwRH2j6vj +Ons4SmSDQsPNufBQvNs= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBcgCz8Wpoy67Sv3i6jN37bP+sJiu6 +APvCX53HKgfOWTcpBImfNkxEyyZMCXtkfUQSvuPlGYktU02RKfiij3UA/ucAurqN +ZypPSjtj3ki5b1bhjfXWj31w1RCYM/Q3cNZzLgazmtYNk+W0Pbh4nx7Aq6RyhqOe +pYQjWs6nV9vxPVO1g2Q= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C14 +PeerKey=KAS-ECC-CDH_P-521_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0101e462e9d9159968f6440e956f11dcf2227ae4aea81667122b6af9239a291eb5d6cf5a4087f358525fcacfa46bb2db01a75af1ba519b2d31da33eda87a9d565748 + +PrivateKey=KAS-ECC-CDH_P-521_C15 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAW6z/8mis9lU8PFg7 +Rk6jah014rJXpdSes0GdWglQh8L7TRXPW/WvgW0PP/dYZJDM093BqYs5zmN0nGKI +zg29rH2hgYkDgYYABAA25IjadYFHKp2OYoxY1q1ycxG35qP2rjOoVE80sJKAJJAg +vnGWkW+v2Q4uxUtmtUaNI2G5m1b6ANesN6u4xvFmUwEe25+4rbakP09fX9wUIcn+ +BPyLpGybZjNOOvknyL77QwcQTymazsTjD4Etk0XJcg0Zhp2//9TKPn0nE+tfw/Qm +FQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQANuSI2nWBRyqdjmKMWNatcnMRt+aj +9q4zqFRPNLCSgCSQIL5xlpFvr9kOLsVLZrVGjSNhuZtW+gDXrDeruMbxZlMBHtuf +uK22pD9PX1/cFCHJ/gT8i6Rsm2YzTjr5J8i++0MHEE8pms7E4w+BLZNFyXINGYad +v//Uyj59JxPrX8P0JhU= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQATv1dvS+Xnjgxzpj4I1XWyhSldXhC +h1iCmQq4Wrm3NS3WubL06poelcOIDWXR82AvnKZT3DRvrIWGWNdWJvTU+wgAYc8V +29qn8xWJyYQANz2ihFBtcMifB07SYqnigUB5a3I2wu75kBYIXnFVL/SIxytzOf77 +eRXDhFnLIKuFrsTkUFI= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C15 +PeerKey=KAS-ECC-CDH_P-521_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0141d6a4b719ab67eaf04a92c0a41e2dda78f4354fb90bdc35202cc7699b9b04d49616f82255debf7bbec045ae58f982a66905fcfae69d689785e38c868eb4a27e7b + +PrivateKey=KAS-ECC-CDH_P-521_C16 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAjiyTxUI4diI6Y3yt +NnyFidppotD8aGEvMZI65QIZ3yRS58ySYVtn8XtX/9L1KxkVS7QNdxUzZCD94uif +7iRPWdyhgYkDgYYABAD6OzURjWxCJXD3JKJvkLKDOxkjkXTOoIHFMTP2TbYNaUDq +EmEpnATB9Fh82wxMOWFkecG7DBRnmaEYAy3PmPiZwABp8EAikAYVH6MrUfZ5yIFv +fBdQa0A4Cdx3zViirsQw2U0TtskW3pnzVapF/PvGhT1obHG+SWoGfSS/rqSBj8Uf +dQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQA+js1EY1sQiVw9ySib5CygzsZI5F0 +zqCBxTEz9k22DWlA6hJhKZwEwfRYfNsMTDlhZHnBuwwUZ5mhGAMtz5j4mcAAafBA +IpAGFR+jK1H2eciBb3wXUGtAOAncd81Yoq7EMNlNE7bJFt6Z81WqRfz7xoU9aGxx +vklqBn0kv66kgY/FH3U= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBKYkd4M88+C6MLPG/kLspb+AKsIyk +W7eJLg4ielBP3QXSOBpESLaK3/nEFTyH6st4Mw2L1SUV+fmgtY6F9Ea7ThAAnt1n +lpbT0dDvMn8gA4MlP2QTaD2eT8yHuzXxEsLxEAmNFeVwHXzu5BYpH/X+2F5of3Jz +iLmv4mpPb+7VYLIY5rs= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C16 +PeerKey=KAS-ECC-CDH_P-521_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00345e26e0abb1aac12b75f3a9cf41efe1c336396dffa4a067a4c2cfeb878c68b2b045faa4e5b4e6fa4678f5b603c351903b14bf9a6a70c439257199a640890b61d1 + +PrivateKey=KAS-ECC-CDH_P-521_C17 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIABNSdOdQNgRG/FtKM +WTZVQyaxlzU+67z0dUU5O8jTqvmPFPW+cHS/s45syXuYl1QHTa3bMEX05M50Vmn9 +s+wNX6ihgYkDgYYABAEuwibQUM4Hx5s99NDwiR+fet9GLoyY28GioU9eU6P1rYlE +M1h8xCmovp6h2E+jOxgDaQ2uBNpyGNMAJhV/yZXPUgBIN9+/NCb1e1x5MmkTCrua +OPYYUyIRkxFU207rmu3ojlcpD4QuoPLqml90xiA6OSD+TjBfYRj2drFU4ddbnLXr +iA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBLsIm0FDOB8ebPfTQ8Ikfn3rfRi6M +mNvBoqFPXlOj9a2JRDNYfMQpqL6eodhPozsYA2kNrgTachjTACYVf8mVz1IASDff +vzQm9XtceTJpEwq7mjj2GFMiEZMRVNtO65rt6I5XKQ+ELqDy6ppfdMYgOjkg/k4w +X2EY9naxVOHXW5y164g= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBo8ICQOWfW3o+F8J10jFLoXQSEK1Y +txA2+Mg8wfaw9Anf3ZET6Utn7DnDKRQmwj/8xEcFRnDSkI/4/mfcIwYDTFwB0oJb +/Tr4seEyBXgME3/pOPhP3kAYjmHqAs6tgbrf20JcKffX+wMk3rrcELu5PeaPYsNQ +aSaCg/UmWGXbV6efe/c= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C17 +PeerKey=KAS-ECC-CDH_P-521_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=006fe9de6fb8e672e7fd150fdc5e617fabb0d43906354ccfd224757c7276f7a1010091b17ed072074f8d10a5ec971eb35a5cb7076603b7bc38d432cbc059f80f9488 + +PrivateKey=KAS-ECC-CDH_P-521_C18 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIBGl0cx5zSv3PqEG8O +YKWs4iCBO1Pie3OYZDNKB8AzZ+/aekYZ+m7vOpdGSSKDs8RFYQoCOpzEm/RZEUA4 +T8pci7WhgYkDgYYABADrB8czLu230wNgWdNffSKI1Dd9X0IzetOWQHn7EgzNTIvT +hLWFYhBVIXAjrNmpT8s7llv7OUZ154it5Bod5z5iDABJGoNd4ubn3rfgkPShHyxG +DAsfPV6U7o11EBTccgeE/TtUUAyG667xhCnwno6HbV0VOJaKAw13Fd3pnw2PBuKd +WQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQA6wfHMy7tt9MDYFnTX30iiNQ3fV9C +M3rTlkB5+xIMzUyL04S1hWIQVSFwI6zZqU/LO5Zb+zlGdeeIreQaHec+YgwASRqD +XeLm59634JD0oR8sRgwLHz1elO6NdRAU3HIHhP07VFAMhuuu8YQp8J6Oh21dFTiW +igMNdxXd6Z8NjwbinVk= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAfi0Tjygy40Wuj/ZZV+QOXscWPwFr +320koiQ9qmMdh4pKFng5kMciOCEw+eUfDBvW/1rJZ4Dki2j13slfQuYUS7UAsN5c +iWeR9SiGsPCZE+JueN0LaXmPxN9tlePKcI7Ly8zhwYlfVWG7q6rjcunmfm4aO+YO +GbRwzfZz7B/Dk9NCbiA= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C18 +PeerKey=KAS-ECC-CDH_P-521_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01e4e759ecedce1013baf73e6fcc0b92451d03bdd50489b78871c333114990c9ba6a9b2fc7b1a2d9a1794c1b60d9279af6f146f0bbfb0683140403bfa4ccdb524a29 + +PrivateKey=KAS-ECC-CDH_P-521_C19 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIBDJCMrxvnTGFrYl/I +wfUURGpq7IO1k3FB1q+7Cox2Zqd0b6H3pmZKISPozfbNi/g2xW08Dr3MmA5DoYb5 +OPOniuehgYkDgYYABAAxiQ9Mer7D9yM2IoXXfSY2+HaBfbO7yIsB53NZe5af9vAT +6kcMhUq0p3OQBOuMvqabgt3zasrdQGhxeY7LKsOqfwDYtCmuMlAma5ZDwMdlpg3B +AVW8JTHPhicpb0l4tmQKnmAOGdADfVhQP6gHmVRqgU10eKVQqpDl6+sFJSf6rq5d +CA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAMYkPTHq+w/cjNiKF130mNvh2gX2z +u8iLAedzWXuWn/bwE+pHDIVKtKdzkATrjL6mm4Ld82rK3UBocXmOyyrDqn8A2LQp +rjJQJmuWQ8DHZaYNwQFVvCUxz4YnKW9JeLZkCp5gDhnQA31YUD+oB5lUaoFNdHil +UKqQ5evrBSUn+q6uXQg= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAEYw2AiIJsa+OutGhK1ZvxIdEV24R +mf6A3hzfhRzfA+W5CRqPfgeeg7f4JyWbaR0MIu4p1r33Pse7/XRvLNl6NX0A2l/0 +kEVIo0Li57pqH07l+EBBGpbPY+b+Yi8iwT5hTgqEfBGhqz8dEsyFDDLglWFMqPfi +chR3tIbp/0A3KXfD9lw= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C19 +PeerKey=KAS-ECC-CDH_P-521_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0163c9191d651039a5fe985a0eea1eba018a40ab1937fcd2b61220820ee8f2302e9799f6edfc3f5174f369d672d377ea8954a8d0c8b851e81a56fda95212a6578f0e + +PrivateKey=KAS-ECC-CDH_P-521_C20 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIBs31rcojeZxNgQl0+ +WsHMshgVB52Nc0Mem3Sm8OeuAEo1dXWxGtZmQs6Ld1WT66nZi/Jcde8LTTogmLvG +QfWaK3ehgYkDgYYABAAYml7jTefjWu/q7vkiDBgHG0wppMO9nZVEWL0+gqejTaNM +/1V5uBAcBlsfL1J89FgVAeKO9WcYc+ZSZ3M9ADUgrwHrS8UKe01Fmdfj+nc9256y +UsmzQihy5US991x79g9RZt3BHrCPp8MIItq67jc6tGjrLZIuSE4qUn//LruAS32a +Nw== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAGJpe403n41rv6u75IgwYBxtMKaTD +vZ2VRFi9PoKno02jTP9VebgQHAZbHy9SfPRYFQHijvVnGHPmUmdzPQA1IK8B60vF +CntNRZnX4/p3PdueslLJs0IocuVEvfdce/YPUWbdwR6wj6fDCCLauu43OrRo6y2S +LkhOKlJ//y67gEt9mjc= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBeA7f8cocA8++WT7cbASbyyhgKUqS +w1VInZr7LnAgda3hyVOJWkViMKDN6QXeSj84Vz2/zM1nrW5+k/C1WB6Sal0ApUgZ +YskWKWLn8OveyTaTXQ6qgT6CJtQNf2EZv9lAYCOAyGch5h2xgw9R4TnyEAALzsDY +7dOeVNc6mhKflc1fqXk= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C20 +PeerKey=KAS-ECC-CDH_P-521_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=015d613e267a36342e0d125cdad643d80d97ed0600afb9e6b9545c9e64a98cc6da7c5aaa3a8da0bdd9dd3b97e9788218a80abafc106ef065c8f1c4e1119ef58d298b + +PrivateKey=KAS-ECC-CDH_P-521_C21 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIA8mYax2L2DF//I75d +lpzNTsb5jk5yYY0Svc25tBAhYjM3iMC65Z+RzfwXLHoWge5E2WqyE1puXzQV67zV +UWWxr7ChgYkDgYYABACo4lppAtaHtHh83JTDZKx87MXElUg+02PcCqle4r1znExN +RrFwBscosHY1DX1+VMaCL1L0cWKiUQmqq6aQyraW7AFo0vCP4Z5Nye56GVsDyff+ +Znb59SC2JwVXUE5yykOUosaRhiXhWsDFG4+VzVYBI2U/uOjubblh4sTGLMVOkuKi +qQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAqOJaaQLWh7R4fNyUw2SsfOzFxJVI +PtNj3AqpXuK9c5xMTUaxcAbHKLB2NQ19flTGgi9S9HFiolEJqqumkMq2luwBaNLw +j+GeTcnuehlbA8n3/mZ2+fUgticFV1BOcspDlKLGkYYl4VrAxRuPlc1WASNlP7jo +7m25YeLExizFTpLioqk= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBbaz/oYPlMDCDozT3Zd5yTsXslAIC +bUeXiEqYKKDTIajPrHSrc3/iCn1r78/HO2o1wcewHTc+MavBktSKQkGjWAMBHlMn +ysItMF5xVuVZF24Zvufk8vWehvGp0LZgO2p98Qab3mOH/rcVh7j/zlsmbhuuht4p +N4o05cdLZyTE1ApxmSM= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C21 +PeerKey=KAS-ECC-CDH_P-521_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=014d6082a3b5ced1ab8ca265a8106f302146c4acb8c30bb14a4c991e3c82a9731288bdb91e0e85bda313912d06384fc44f2153fb13506fa9cf43c9aab5750988c943 + +PrivateKey=KAS-ECC-CDH_P-521_C22 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIA9DDKEmHwloGpKC6e +lwqSNCJ7HV5Y1VjDzG7/RNG99T3hatXuKxi5LWL8eVhhFrDvwV95NA+36vXObEQ0 +Hc+N3iehgYkDgYYABABsHZteyofeH7hxoKMvgHxyWtzN6bOWdFOnE0fWCPDAMM0J +4zjN7L9KAgFbyKbo0+JZX+dz/8L8TkpV0LGizAAyOwEUGyEJ5/SYHJUqqBiiufb1 +xB/szbenpFubS2cpN3cbAIyuX5NN/j/tENODqx84dpySzojZvlQUgX7LBzoxqzaM +yw== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAbB2bXsqH3h+4caCjL4B8clrczemz +lnRTpxNH1gjwwDDNCeM4zey/SgIBW8im6NPiWV/nc//C/E5KVdCxoswAMjsBFBsh +Cef0mByVKqgYorn29cQf7M23p6Rbm0tnKTd3GwCMrl+TTf4/7RDTg6sfOHacks6I +2b5UFIF+ywc6Mas2jMs= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAoJFCHTcD47NB6fHn1Y+M9729F5jQ +AZZ7gB0c7CfmBcWAsjh8HLRk9VznrIAzQQKrA8+4bYivdsn0EpwBvt07v8QAjJxX +eo5vxEaBXp1AuqZgJfFdrihfGetmjuYK6cmOfs2/Kypo4ikoBZ9n2xiABxYdPs85 +fgiD8MTrfq94J6YiBcw= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C22 +PeerKey=KAS-ECC-CDH_P-521_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0020c00747cb8d492fd497e0fec54644bf027d418ab686381f109712a99cabe328b9743d2225836f9ad66e5d7fed1de247e0da92f60d5b31f9e47672e57f710598f4 + +PrivateKey=KAS-ECC-CDH_P-521_C23 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAXcM67aA8LrIzAU7k +aN/3U7cvc7AJkQQ+o1OCiuadTND63tp7sni1NdfFdAb/Lm5HOlpP+Y6Q+Q1trdJR +AOjYVmahgYkDgYYABADIJbowc3POyN0kmO74LiH9mGIWjb/rg1k5gMqfgodTM4mf +6U8Tfa8cQYnrUCk3w6Nn6nlR7YsPM3f83ykiAh1GpQFriiVA1eZUk4iLwzcknmfA +pod08+jYHjtFdKASUWXwvVi4r53nSzWDJTn5XDzZ8bdZQIVgqmhRrjrHVVNHsNOx +Ow== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAyCW6MHNzzsjdJJju+C4h/ZhiFo2/ +64NZOYDKn4KHUzOJn+lPE32vHEGJ61ApN8OjZ+p5Ue2LDzN3/N8pIgIdRqUBa4ol +QNXmVJOIi8M3JJ5nwKaHdPPo2B47RXSgElFl8L1YuK+d50s1gyU5+Vw82fG3WUCF +YKpoUa46x1VTR7DTsTs= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQATziBZoF3EonODLg6Ximhqwb8kfeG +mUsjcI/wigig9nW4Ca6Z6fmWfrGknxlgV9aeUNbe203S2agcAr3Mj39RhGAAnvsk +TIuRCH3h7tdmUA8OgVMHUtRpJW73n2uWXYoiMqDC28To4dCSFLqzhIW+bjV8QgDQ +c7UvBOShb8b1JHGHrss= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C23 +PeerKey=KAS-ECC-CDH_P-521_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00c2bfafcd7fbd3e2fd1c750fdea61e70bd4787a7e68468c574ee99ebc47eedef064e8944a73bcb7913dbab5d93dca660d216c553622362794f7a2acc71022bdb16f + +PrivateKey=KAS-ECC-CDH_P-521_C24 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIA3xSx8UMqew+wU5Zf +2GQ6/uJrJFHstqilOmVdX74W5MZM6GRyJesR5/3LI2J0cd/8XCUjvSromVfLo6V6 +I5M+WnihgYkDgYYABABOhYO7uy7Nk/BxTDMt/1qzvGOW5i88VgIpZkMpuqUTjDux +w2Qoq9TiPRf8t6LPzCJLLnNMiUH28SFyLXtrlBVFdgHPCHTyBLA2PwIIZGcvrb+H +yIEesUd1iyVLdLFPrnQhWfD2caAYISu/JbhRnhJtTK13jP/1DSiP05zrDKxjWxde +wA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAToWDu7suzZPwcUwzLf9as7xjluYv +PFYCKWZDKbqlE4w7scNkKKvU4j0X/Leiz8wiSy5zTIlB9vEhci17a5QVRXYBzwh0 +8gSwNj8CCGRnL62/h8iBHrFHdYslS3SxT650IVnw9nGgGCErvyW4UZ4SbUytd4z/ +9Q0oj9Oc6wysY1sXXsA= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBoyCZsCwL2FNx9gsN0giQ5sevBIyB +eYkP2jCLNZ27wreoMruMZSbEr5mn6j8LPLlq4et2hBMnlcR4rW+WLkpvRG0Bdic1 +eznp12MqE3Cz6Twa+1yFG5EOtOrQydOH32fN6FAD4OQnVS8c0JBZqtAmLiNczl+6 +jO3E/cFGPadtzUttGkY= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C24 +PeerKey=KAS-ECC-CDH_P-521_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01aaf24e5d47e4080c18c55ea35581cd8da30f1a079565045d2008d51b12d0abb4411cda7a0785b15d149ed301a3697062f42da237aa7f07e0af3fd00eb1800d9c41 + +PrivateKey=KAS-ECC-CDH_K-163_C0 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUAZlO2B3OY+tx79eYBWBcB +SMPcRSehLgMsAAQHH4sod9YCfZwa3kJE8t6hJpLvI9UFwV7ndiIccrhLNHzjg/OA +Z7icPpo= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBx+LKHfWAn2cGt5CRPLeoSaS7yPVBcFe +53YiHHK4SzR844PzgGe4nD6a +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBXQjbxQoxDITCUZ4Ols6q7bCfqXWB5CM +JRuNoCHLrCgfEj969PrFs9u4 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C0 +PeerKey=KAS-ECC-CDH_K-163_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=04325bff38f1b0c83c27f554a6c972a80f14bc23bc + +PrivateKey=KAS-ECC-CDH_K-163_C1 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUDrvRHVNDKl9QrTpeqkhVi +Y8DgePahLgMsAAQBsBCMeGv000DwUFvfx9RbUUYRrZQCLJw51fuUVriiIhzqTwWP +ao0s2Eo= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAbAQjHhr9NNA8FBb38fUW1FGEa2UAiyc +OdX7lFa4oiIc6k8Fj2qNLNhK +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAWmXRAkv4rX+fsv2mHt66goG/SywA13k +Qd+UCNkfDgId+PBSa4BjAxSV +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C1 +PeerKey=KAS-ECC-CDH_K-163_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=05f9ac3a3dd88429600958386c55bef4b1aa5f0c24 + +PrivateKey=KAS-ECC-CDH_K-163_C2 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUDEXI0Lm03zB4GKkSUw5y6 +SPmtmoyhLgMsAAQDon7K7Ctm/qwgQPaJASi9AFjTGSQBQAfjIJttcSew85Pl5YsV +kLn0C+I= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEA6J+yuwrZv6sIED2iQEovQBY0xkkAUAH +4yCbbXEnsPOT5eWLFZC59Avi +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEApZdsVkXH1y356G8xhYRrqyoxSybBocd +Hpwf6EUmgHaplYA6bUnNB1VU +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C2 +PeerKey=KAS-ECC-CDH_K-163_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=022e0290eda5d348894129f7455d1c766d32d5c2c2 + +PrivateKey=KAS-ECC-CDH_K-163_C3 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUDKlEc3NS/xWfOrIwk7QTo +iU33jd+hLgMsAAQGl42sqkfY87yQtB7H9Piseaht3QcH+LDvQnB2A3a8LV+u2D2n +hyYx0J8= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBpeNrKpH2PO8kLQex/T4rHmobd0HB/iw +70JwdgN2vC1frtg9p4cmMdCf +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBVtowMLCRv4PLNVIS1iBTGUhPqVBBTnB +HSWSovY5O26GxU35Cblf4NWo +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C3 +PeerKey=KAS-ECC-CDH_K-163_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=037f659f430009fcdae4e9f6e6316b0f5dbb268212 + +PrivateKey=KAS-ECC-CDH_K-163_C4 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUCxvZP5gnrjutbU/q2MIiY +5j/y4/ahLgMsAAQFSeGoLsKEv3fVKGJ+Utgy4jbJKtMBmIOqm0WLNb1UTWiCgSFQ +wUl9MdQ= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBUnhqC7ChL931ShiflLYMuI2ySrTAZiD +qptFizW9VE1ogoEhUMFJfTHU +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBrjvWmLTtjalp2v+se+P9Niz2eL8BnWn +VyZnGDmNivZtKXF5hHji830o +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C4 +PeerKey=KAS-ECC-CDH_K-163_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00503bbb9b62f50ae7a8dfd74a1741826f09290651 + +PrivateKey=KAS-ECC-CDH_K-163_C5 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUCalaGdRPd2MqU15I7qh9/ +sA2qOPqhLgMsAAQGwopA3E5VA9LEuKsLa3BG6OJawJ8BIZEWVKWDYAXYA22XZYX/ +HYMeWHs= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBsKKQNxOVQPSxLirC2twRujiWsCfASGR +FlSlg2AF2ANtl2WF/x2DHlh7 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBWxKNYassDCZ1Sss1KxZJpz1G4cwAkJl +YcvZ2hsjpgA94OX3xKBlpcK4 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C5 +PeerKey=KAS-ECC-CDH_K-163_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=012cf17799fdefa2940b18d56e80d44414c5b13884 + +PrivateKey=KAS-ECC-CDH_K-163_C6 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUDhoEQecgCHC159N6VLLLl +mcQuGe2hLgMsAAQGCqQqYuIe6jfjYrTT3oN/DEnTrBMGmyDW/RbROxiD3wVimsfR +uCOGs0Q= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBgqkKmLiHuo342K0096DfwxJ06wTBpsg +1v0W0TsYg98FYprH0bgjhrNE +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEB0HGmk7bOGyU+BnRtd3QKB5P8pdlANMv +lyq6yRvoWnCeugf10WIVrmAt +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C6 +PeerKey=KAS-ECC-CDH_K-163_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=062a2f926ab435ac14e05d44c27b46b6820b713aee + +PrivateKey=KAS-ECC-CDH_K-163_C7 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUA5G6cllJoZH8gSEdMexpU +3/5yjx+hLgMsAAQHqYTq1EAxDO8uEziXL/Ld22XKw9IDM8GpNCf+asUCdgt3eImK +i7akCtk= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEB6mE6tRAMQzvLhM4ly/y3dtlysPSAzPB +qTQn/mrFAnYLd3iJiou2pArZ +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAe9HeV+w44BAWrXoje/DztmpJRSmAL5h +gdf8A8qL/fEYac6ijPoOX19k +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C7 +PeerKey=KAS-ECC-CDH_K-163_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0399b9294e895486bdefbaad7a729353ce09586357 + +PrivateKey=KAS-ECC-CDH_K-163_C8 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUCczSXFAWwRhw+3mfyujNn +NEUag3ihLgMsAAQHZ8Me6TA7GyzTBZ+BUH7zBOvTECwCUeDUMNw/Y/Oje6seepV2 +Us9n4iw= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEB2fDHukwOxss0wWfgVB+8wTr0xAsAlHg +1DDcP2Pzo3urHnqVdlLPZ+Is +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEA3TX+bqM2opo3nJ50/+GdAMv1HwCA+3p +lcOk6Kb+Ic0eTNTKOBLA1pKl +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C8 +PeerKey=KAS-ECC-CDH_K-163_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=022325a9a769a902c2e64c80a1d35429ced42ae0a4 + +PrivateKey=KAS-ECC-CDH_K-163_C9 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUBm7SAc5ARI1xtXG501qe7 +TyD2G3qhLgMsAAQAk1SQdXBNedrncjF91lJE+nclaesCqKKCHdOdfnZTynHPwant +hXgBo5s= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAJNUkHVwTXna53IxfdZSRPp3JWnrAqii +gh3TnX52U8pxz8Gp7YV4AaOb +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBld99U4Rx+diAvlPVk5hN7I85uRBBok2 +YAqtyyX9QCTtPoRbK7+AcoDm +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C9 +PeerKey=KAS-ECC-CDH_K-163_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=051392d5377016358405030b48744003db66440a2d + +PrivateKey=KAS-ECC-CDH_K-163_C10 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUA9O21i8w9bp0xcilCCnMy +gezP8c+hLgMsAAQCcYNgm3WTsYRTZcCB1F/2bJq143AGm5gSNv6TCUe2t383QoKh +jkvpk8s= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAnGDYJt1k7GEU2XAgdRf9myateNwBpuY +Ejb+kwlHtrd/N0KCoY5L6ZPL +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAmHRU0XOtJIimo10WX59/RmutoSKARSh +Is4oyhViD3tAofJrQjTJVr3B +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C10 +PeerKey=KAS-ECC-CDH_K-163_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=045dac076e79de2fc631315465d3ef6245f26647e5 + +PrivateKey=KAS-ECC-CDH_K-163_C11 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUBuZBJGhL97iMaoqEW4ePB +yR0P1HihLgMsAAQD2oadCcTkVFrBaJ/HIxYBJjLQq9kCyCD0AxDl/9L4v0Ofuoeb +su9iGyo= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEA9qGnQnE5FRawWifxyMWASYy0KvZAsgg +9AMQ5f/S+L9Dn7qHm7LvYhsq +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBw44D0k3CgAnlUpOqIC8GSmyjFMpBG/j +tFSvlCCoEfHhX3dNpa4aQLRZ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C11 +PeerKey=KAS-ECC-CDH_K-163_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=014f7a46847ed6a7ff605b0e52c616e4ad3f0d5029 + +PrivateKey=KAS-ECC-CDH_K-163_C12 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUA6Cm5lC/ZZIf2ASkI/gT2 +2OqvGWahLgMsAAQFqyB0wE31cWAWdzX3/C2PYp00/xgBLp2m0Fuz4qy+W6SvtKDd +ctsH1qw= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBasgdMBN9XFgFnc19/wtj2KdNP8YAS6d +ptBbs+Ksvlukr7Sg3XLbB9as +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBuYK93QZuf4PxcecoaIqEBFAJAW2BpvK +NABbV4zXp6aSm9P2zimUO17Z +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C12 +PeerKey=KAS-ECC-CDH_K-163_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00eacabc34555956995623e60482e5c118e34e2094 + +PrivateKey=KAS-ECC-CDH_K-163_C13 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUBV86PC2zpLkJuyZ8iOtgn +Y+S9P/OhLgMsAAQF05icykrnMt6TZyslySYIYbTA3OMENqMx6tJPKAe1UmD53D3m +aM+/67c= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBdOYnMpK5zLek2crJckmCGG0wNzjBDaj +MerSTygHtVJg+dw95mjPv+u3 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBPdQ4nUA4Q8KF2uD8UvCbWvXHr10A55Q +CQZ8DuLI9Vt+hNp6OR8Ir3UE +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C13 +PeerKey=KAS-ECC-CDH_K-163_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0414a622645107f115576f51cdf39d1393a2d7851f + +PrivateKey=KAS-ECC-CDH_K-163_C14 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUDeYhfRfLXB74cEdhsQbra +STsqVgOhLgMsAAQFrjHLKbMdJPX5TDDpwC8H84v/CsgE2Njjm/h/BYVD3ImQqRIU +2kFsxVg= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBa4xyymzHST1+Uww6cAvB/OL/wrIBNjY +45v4fwWFQ9yJkKkSFNpBbMVY +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAqufW6lBAtIacGdh6sAJIZDxza0EBK3d +d+GZwTLRisVBsRd0jSMZ23/l +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C14 +PeerKey=KAS-ECC-CDH_K-163_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=056be002daff11c4066e10acd046a85e170fa4c122 + +PrivateKey=KAS-ECC-CDH_K-163_C15 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUAuoxYZNs+/XaLk3b8K2wf +hfRvavKhLgMsAAQGL2IhSYI/JVtPhpBmZvOjVWrwgOoCdMoywQ+a3WGgJtIK061W +sX+wakY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBi9iIUmCPyVbT4aQZmbzo1Vq8IDqAnTK +MsEPmt1hoCbSCtOtVrF/sGpG +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBD0l0t6Sk7hNNRozyxpS9ZMKTIt2A9JZ +2CNunI1kN/QebVRhHFIjj+LV +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C15 +PeerKey=KAS-ECC-CDH_K-163_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=021fef8e473daeda8ef6bf07814d7b9b613e3076a3 + +PrivateKey=KAS-ECC-CDH_K-163_C16 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUD5QgEhNNzCyJIzMSCYNS9 +GFdgWtGhLgMsAAQFiupuQLjLJeZiKnvk/wG3nJLecqUEP2d2tt7/PSm0xwOJnXBc +f+z1JcQ= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBYrqbkC4yyXmYip75P8Bt5yS3nKlBD9n +drbe/z0ptMcDiZ1wXH/s9SXE +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAFYOGkIYZRGL6hbNrWtnq6OE7zh7BYsh +PsKrOUL49q1gqVaVW1iQZrhW +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C16 +PeerKey=KAS-ECC-CDH_K-163_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=03a287fd1cca68db47a3c74c12627fc3728568dd66 + +PrivateKey=KAS-ECC-CDH_K-163_C17 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUAXQUroavqckl4yu8YeSRW +ctWu+JGhLgMsAAQDa4Snczep3lwd1648iZOBOC8P/6QFbUrDn+iB/bjmDUVZZYqq +3kVmPuU= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEA2uEp3M3qd5cHdeuPImTgTgvD/+kBW1K +w5/ogf245g1FWWWKqt5FZj7l +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEA45IXekuQfHKymwOudgRpayom/NFAzGh +Z3xGpo6WSBGpzF5OU+px4jEp +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C17 +PeerKey=KAS-ECC-CDH_K-163_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=029558b41b8b92387bc22c868f51bb7acb6e4ee2e3 + +PrivateKey=KAS-ECC-CDH_K-163_C18 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUDkYAYep7dzzjcJk8FWwfS +C5+ai8ShLgMsAAQEspLR+gnfxeajrZn9Av63TUgONPIG4YiACaCgSRwL5qv6yUPT +d/C0hjs= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBLKS0foJ38Xmo62Z/QL+t01IDjTyBuGI +gAmgoEkcC+ar+slD03fwtIY7 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBkJZ5QBHbdo+l+JeSR1GbCt5WL1JA8Ll +MoE5NkGlGNHc7/q+6LKb3hQC +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C18 +PeerKey=KAS-ECC-CDH_K-163_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0530020c8f6362312bfbe5c1c605b40dc2e032e81c + +PrivateKey=KAS-ECC-CDH_K-163_C19 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUBbTeGKxlXY8agHV45uUWa +MlB8KyGhLgMsAAQDNEDkYMR18gWKdn7EZsoYvOQfgw4Dcq7jI9Bj+omsv/v1UCSu +JOSSnxk= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAzRA5GDEdfIFinZ+xGbKGLzkH4MOA3Ku +4yPQY/qJrL/79VAkriTkkp8Z +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEA3FCdpl7RHji2LWa9fLmPiK8TDHkBnPy +jZYqv+3uYuq0fDtFeaHlFoM2 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C19 +PeerKey=KAS-ECC-CDH_K-163_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0521673006a1d9608911d54536e122d809e919d804 + +PrivateKey=KAS-ECC-CDH_K-163_C20 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUAbGWHlLA5yCCosDMAj6is +dVa8rsOhLgMsAAQEy/soZpHkFQgaF4Xsawqs2x0jHR0F3WrP6R1oqOwjaGR4wO6M +iSd67xQ= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBMv7KGaR5BUIGheF7GsKrNsdIx0dBd1q +z+kdaKjsI2hkeMDujIkneu8U +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAnXsFfJ90tpuRN/mI1Ry1b06JQL4BY/Q +ImKyfBhd3iayx31aT01Q3Jko +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C20 +PeerKey=KAS-ECC-CDH_K-163_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0460579beca16cccce314ff3040de4785336fc358c + +PrivateKey=KAS-ECC-CDH_K-163_C21 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUBacjaIsNahVSVBHoQS+AL +FXW2UquhLgMsAAQEXv7ZyL0qTkKViPNE9J0eY+ZovQECXRr4WsIdWYItffjw5L66 +3ztdRAE= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBF7+2ci9Kk5ClYjzRPSdHmPmaL0BAl0a ++FrCHVmCLX348OS+ut87XUQB +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAjOvNhAwOSJvQW3SLhomtz+Qk9OKBzQl +ihdcl3aKn3K4JLmakfXPjj2W +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C21 +PeerKey=KAS-ECC-CDH_K-163_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=05ba66964483fe473ccbd00c37ad3ba40cc5969f62 + +PrivateKey=KAS-ECC-CDH_K-163_C22 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUAAy/HkIZGMmMMSaKemtD7 +bRDytYyhLgMsAAQHec+z4XyQKiWE7TOCqL7YJi25hCQASvJzh1+KKrmpSsDR5KIz +kLK7UFw= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEB3nPs+F8kColhO0zgqi+2CYtuYQkAEry +c4dfiiq5qUrA0eSiM5Cyu1Bc +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBtAyFSJA8ovn90349tKkUMEimlqVB6ra +x3zERImF0XlGNrwdWC89EBoz +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C22 +PeerKey=KAS-ECC-CDH_K-163_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0277c4a76e1613b2ede699a675c1645a786075009e + +PrivateKey=KAS-ECC-CDH_K-163_C23 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUDwd5btA5wkz7X24TOLLRo +y7opmzqhLgMsAAQF/+DxYBi9S97l9zv9rQTXE/Ihb1AEI2HIgfAIHLBUTvqww7NP +Weqt7sQ= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBf/g8WAYvUve5fc7/a0E1xPyIW9QBCNh +yIHwCBywVE76sMOzT1nqre7E +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAfhYHsYd8UCSJ6q3oBXyxx0p43FsAcH1 +HMQYW2iiYOMbSwDAOkQD9lwl +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C23 +PeerKey=KAS-ECC-CDH_K-163_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=03c6481dac387af39e8c09a553068ac496eea03691 + +PrivateKey=KAS-ECC-CDH_K-163_C24 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUDiBJ1uki+oL7MAhGQNGf1 +0KrjIaqhLgMsAAQHduQP5xSZhTN+8bbJuDDLNgh1KqYFjm7LsnsLLTzQ46e6U43j +V2/VufY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEB3bkD+cUmYUzfvG2ybgwyzYIdSqmBY5u +y7J7Cy080OOnulON41dv1bn2 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAroi+9qqqAbIVw8UrUyIKmEMy42EBtRD +jlKMqIewW9JWTfk775v2YNp4 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C24 +PeerKey=KAS-ECC-CDH_K-163_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=07b5d096d06d41c3ad6458cc93417e6facc99bc7b8 + +PrivateKey=KAS-ECC-CDH_K-233_C0 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0TWluMPOBH+8XfJid9O/g6 +wz3a21z0oFDKgr5I8KFAAz4ABAGlPlwTiz2DkF1WOqHbASdGM8mGtS94IlqS4z55 +UgDsq9Pi4mcpqWVgTlYO1EmKIrMcOWQuHPmbHd4+xw== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAaU+XBOLPYOQXVY6odsBJ0YzyYa1L3gi +WpLjPnlSAOyr0+LiZympZWBOVg7USYoisxw5ZC4c+Zsd3j7H +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAfQONLPtShstQMBW+3XyrVQ8iXz9gvVC +z3RqDyAvAMEwoavpK8TJd8gAd3mWzMULkN+ZGi6B3VFcGIWZ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C0 +PeerKey=KAS-ECC-CDH_K-233_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00a822b141ca1f5ad32899e68c54d1fec3df8100df485ebf1c5868a9ac89 + +PrivateKey=KAS-ECC-CDH_K-233_C1 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB1Rvm+81IeMVUObC8u+Xqjo +S8nbiecKjo6/NHgtqKFAAz4ABAHFoeXT7lFuPt5yP6LVzTRWsRYyYwPF7kknOlYE +xABWjQ/nEwKVVBv6JlB0FHVG6XM3NroAdVnXFtjglA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAcWh5dPuUW4+3nI/otXNNFaxFjJjA8Xu +SSc6VgTEAFaND+cTApVUG/omUHQUdUbpczc2ugB1WdcW2OCU +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAMhkwqRiqTY6SsPYGCEbygNpRy0YYoii +dWdDO9pFAGidTQAG66BU3Gn8wHhngPtfdNOYkhNQTi9uZmmA +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C1 +PeerKey=KAS-ECC-CDH_K-233_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01662682bec2dfae05e38587c8e6a4d18aef4cb3416989c47c11bbe2810f + +PrivateKey=KAS-ECC-CDH_K-233_C2 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0uzKWV5V5shcWveMWVQP23 +SQA/9Ow2HDi0jn2mvKFAAz4ABABaSPrEdsMcrQxo5k5l5oeuRBj7XTtLsqu5kN0N +5AAtmt1wZibyhZ7OEQ3y3eifrz6KrEM+JZXiPCdAgg== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAFpI+sR2wxytDGjmTmXmh65EGPtdO0uy +q7mQ3Q3kAC2a3XBmJvKFns4RDfLd6J+vPoqsQz4lleI8J0CC +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAXgtgvzSEcAkfIfmV+/MXS/2sF65NTMK +U5A/s7+jAMzoMKUV1pCrmBSVea00gThIWeVl0H+mH1Dr1mmi +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C2 +PeerKey=KAS-ECC-CDH_K-233_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00215d511cb95e0e073ee999908a7a844afd75c9acb7a9d724f7fd322b01 + +PrivateKey=KAS-ECC-CDH_K-233_C3 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB1qfAOJLfGE1Wzcy51emhZI +OmyTiK4hKqkmyP37XqFAAz4ABAFKr4gOgdtpq6K0A7vafzYeMzm0g84mmfML9Sge +rQG3FVm9fZOE5Re4fxE4ppb7zrNRDYxBwhWNSqPlsg== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAUqviA6B22mrorQDu9p/Nh4zObSDziaZ +8wv1KB6tAbcVWb19k4TlF7h/ETimlvvOs1ENjEHCFY1Ko+Wy +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAI2ADTdnq/VzFpV1TuiCm4WP9OtgSkSK +1mSQtJwZAbwPAzlkmtTXt8/z/KnpZaOGJej0W8lgKjPAeYoz +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C3 +PeerKey=KAS-ECC-CDH_K-233_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01394e02c70104f2a5308b2d101b02c70ef2d13540602b8e8f82dc6d569f + +PrivateKey=KAS-ECC-CDH_K-233_C4 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0uL/h5G8ZMAPOw8dXVz7nd +s7GTgUWZ99vd7e/Po6FAAz4ABAGARcyeZfbideMipiwY7+LQDPk5lf61NWEnOj8T +BgFk4Ac8DUs+EuIvg3vT/sQh47sJ4MDdmXQigw9kAw== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAYBFzJ5l9uJ14yKmLBjv4tAM+TmV/rU1 +YSc6PxMGAWTgBzwNSz4S4i+De9P+xCHjuwngwN2ZdCKDD2QD +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAUo+EhrdelJn9crSBLP0khUIR4ayP42U +2f2gLg8ZADlP6hddrZs01SVDRlTQyGY3kmysOjKSouSlFLX1 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C4 +PeerKey=KAS-ECC-CDH_K-233_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=008556a4c3a8906ddbcb946099ca5dbe7bdb6cd8f37fbb50c96fcefed32d + +PrivateKey=KAS-ECC-CDH_K-233_C5 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB1mly5xVmdG8vdsh3k3dAVO +onXip+J6t8LQXF8kEqFAAz4ABAAgIm3XPjGOT8jUndQ+WeJgGT0bskjL5MBrTWuD +iQDtEqTziWlqsxyT6j7E2Orxi+CX/JFS4sQrc/9FKA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEACAibdc+MY5PyNSd1D5Z4mAZPRuySMvk +wGtNa4OJAO0SpPOJaWqzHJPqPsTY6vGL4Jf8kVLixCtz/0Uo +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAIlmeIj4QlxaYjE0Yi8eqdmvNt+XcsQQ +1uMfK024AIRDD6RxZNHA65cEKkTL70ALu1RfrqTvSbpeO+9C +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C5 +PeerKey=KAS-ECC-CDH_K-233_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=004ea6e0e34ec7c9bbad47f0f6f8ec0608e736d91e0e56cf3e5cffe8c370 + +PrivateKey=KAS-ECC-CDH_K-233_C6 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0eU7qha8AmK1MppxGw6xiK +G8p+9LXIUGEiXUHUqaFAAz4ABAB9bXhfoyMXTrnN5bcFQo5AGSRINbyUcC8oDCX/ +5QGaoO9DMHTEhNFOYRNy8D74kS8agkbOsekMgX2z2w== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAH1teF+jIxdOuc3ltwVCjkAZJEg1vJRw +LygMJf/lAZqg70MwdMSE0U5hE3LwPviRLxqCRs6x6QyBfbPb +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAWTaCZIl6zxkH8g8dyBKOW6rlJWxKiL2 +jnpLg5nVAM2Y8nBMdJTm0gN150UoyPVvhn6d12MpgULqAXJL +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C6 +PeerKey=KAS-ECC-CDH_K-233_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0160d0b9b92a4acd089738fd489ae39734551e888fd05a020ce26498270a + +PrivateKey=KAS-ECC-CDH_K-233_C7 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB1CqAMqEdFld1XEnkdwM7DT +Qdov6ZOkV3tBpAzuGqFAAz4ABAH2YpaX2mINWX/B9RyDN0IT836VL8EX7mWp52au ++wArNt7ceHrJUdKHnXJBTaLnV1ps18QuD6ILMtRh9w== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAfZilpfaYg1Zf8H1HIM3QhPzfpUvwRfu +ZannZq77ACs23tx4eslR0oedckFNoudXWmzXxC4Pogsy1GH3 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEADOosIo8M8NDAyztHA9egm+TLe6HnsFg +eir11GKYAGxPJ6SbUaifbQlgFguluP7AjdLNS8kJpJCuvk97 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C7 +PeerKey=KAS-ECC-CDH_K-233_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0038381b342efaa70bb79adb76ceb775de5f45f863559ecaee1ddbbd0313 + +PrivateKey=KAS-ECC-CDH_K-233_C8 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB1D5XcJeBlfkXFS8Fe6H7AV +bYlNMui7VMf2L3NApqFAAz4ABAFIfR/avM19idolaFsEKYCrFwruPBHzEYDjt8UK +SgF+OD3WWh7IpAkAf3UDXlsWEzXZx3Vu2XBJD70XGg== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAUh9H9q8zX2J2iVoWwQpgKsXCu48EfMR +gOO3xQpKAX44PdZaHsikCQB/dQNeWxYTNdnHdW7ZcEkPvRca +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAM/hX4YaoBU0hfOKwDPfnI2BKv3hZ7iR +i7lKCNljAb6/Bn+FEm0RSTIWIWQgGxN0vxhAqhHV4lBjnQYI +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C8 +PeerKey=KAS-ECC-CDH_K-233_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0122169f1dff445ec663270375dfe914016c38ce6c2d40d0b8098abc60ac + +PrivateKey=KAS-ECC-CDH_K-233_C9 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB1MZ8YQPmISRgCg2ekj3CF6 +Ai9Xxv6yGccDM0/zOaFAAz4ABAAjUv6TQeYsYJ/BU44CcEBecAHXR7h1AOZEoRLF +2QBB87FbcUpvfvZH4jZl6lMO/L4ZsHQENs2oEug5OQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEACNS/pNB5ixgn8FTjgJwQF5wAddHuHUA +5kShEsXZAEHzsVtxSm9+9kfiNmXqUw78vhmwdAQ2zagS6Dk5 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAHY+KGvlB0C3+L14+nC8rIgN89c3HrM/ +2iRTs+0jAFe+bF99mQt1Q5hoM5rjJ68EoEmzi5IzK5y4yyfZ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C9 +PeerKey=KAS-ECC-CDH_K-233_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0054d47c9d0a9fee258122326be25daf35f0ba0b8449e16b4623a8c0fd7e + +PrivateKey=KAS-ECC-CDH_K-233_C10 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0Z5U2ocples9zczFBBjsNR +QAiJ+udaC6Tc/yXx+aFAAz4ABAFeZ+rr5Sujf1tzoZnZUIEs7BAS/UEFgURLvyPg +yAAiBV74Id8zBC+4MW3a12SF29JZDi9UmKkU5PCtOQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAV5n6uvlK6N/W3OhmdlQgSzsEBL9QQWB +REu/I+DIACIFXvgh3zMEL7gxbdrXZIXb0lkOL1SYqRTk8K05 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEALyKca1METTe8Cbkcj4xAiP7LFhZvHWU +BUyJTaVSAMNlBWNQVTUDPHpsRI1zv6CPuDcCNMf9usGzTaoi +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C10 +PeerKey=KAS-ECC-CDH_K-233_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0071aed39f5c44a7ff72db3e0f8284da39dfb2d894f278d2006f9d2686e3 + +PrivateKey=KAS-ECC-CDH_K-233_C11 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0Tpf/JoPcGnBxmFIaZYS5c ++rfiv3syVfGBoCJxkqFAAz4ABAGN5NxPak3lw2OOu6JNxwZJg7FZ9VsTnHaAocuQ +0QE1Uy2BSK8+In1KiWDnaMVl9ywawKHJp70YXPmU0A== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAY3k3E9qTeXDY467ok3HBkmDsVn1WxOc +doChy5DRATVTLYFIrz4ifUqJYOdoxWX3LBrAocmnvRhc+ZTQ +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAWzBrhP7NIJSSTAhzWFG1THwtyKEKkTH +l5aJ8f84AYwJY/8Oo3BIyfb0dkTyp8jFA4Y8J88h7m4KMiTq +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C11 +PeerKey=KAS-ECC-CDH_K-233_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01ca68ead4eddc8847a3a661cc6628e076bdd4b45047ece72245d094dd3b + +PrivateKey=KAS-ECC-CDH_K-233_C12 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0vXSp+CHekyZBzcyOG6NWX +NKI91/Dff81U2UHnYKFAAz4ABAFHmAlGgMvTL7HuncqmuHOaVWMFI1kz+ycVfTGe +VwHIVfDUU8H/tfZosyqLPjCeDoEBvDm22+feIUAV4w== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAUeYCUaAy9Mvse6dyqa4c5pVYwUjWTP7 +JxV9MZ5XAchV8NRTwf+19mizKos+MJ4OgQG8Obbb594hQBXj +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAOSeGCrF2TK+iwX+NA6Mty3zVkfezWea +jFm12Pv6AYG5WpZavRbsJDDCbdBxmE6FSpZ/8RTueDG9MUsq +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C12 +PeerKey=KAS-ECC-CDH_K-233_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=017a893b2e090780ff8daaf3588f9dfc0ac4dfe1f1e263697a9d1f398ab3 + +PrivateKey=KAS-ECC-CDH_K-233_C13 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB1lKhH2wxF/Eyb6aHdAXOxz +McTxRql/dKsMRN4Bt6FAAz4ABAAs1tTB0sxeNCBerblPTP01u1adpyLE2bGbjVzC +3gDqMATlsJMN9/i9oxTIvBFFRj62ACLNLc9sDIJOUA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEACzW1MHSzF40IF6tuU9M/TW7Vp2nIsTZ +sZuNXMLeAOowBOWwkw33+L2jFMi8EUVGPrYAIs0tz2wMgk5Q +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAVmLL9tb8aOVH7nsAW7LTSj2bC6dE1ln +hlk1hdcZAe9lyvFXldFKC+icrHxoAyO8WYA7qHTLKWhnLLip +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C13 +PeerKey=KAS-ECC-CDH_K-233_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0041fa5fdf495b885699249b7746334b76c59e1c917bfc1ae371b96941f4 + +PrivateKey=KAS-ECC-CDH_K-233_C14 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0q1fccY4SvYmibNcJMTd+z +Ws+BBssMGVAsLKGEr6FAAz4ABAD+G1JAinEoQb1i8O5RMH8mMx1AK8w6WrBAXRxe +gAEKcxp9ampPW0Cy6qgQwZAtsnso0pe8BfNxTKyvwA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAP4bUkCKcShBvWLw7lEwfyYzHUArzDpa +sEBdHF6AAQpzGn1qak9bQLLqqBDBkC2yeyjSl7wF83FMrK/A +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAbbP87f6IV43hgXJP4b1zThF9F+96L4H +newpvIhiAWYiLvpdup6FjCRdu12maCOatbpyhhj7hakN3HYK +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C14 +PeerKey=KAS-ECC-CDH_K-233_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=015f5adba59d1ee01696cecce4b63e78e68508303ee496ff5abcea25ad3b + +PrivateKey=KAS-ECC-CDH_K-233_C15 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB1vActUeBy9ptiN61mEOuCD +axr2g+/HVlC+hPIIp6FAAz4ABABNAKjwgg2pCX/lDo5979rClgfdTLHdiB1OYfHn +iwCKSo6cgRtEQ2eVJ1KrjCpRmO+yj77b8/vXAahXqQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAE0AqPCCDakJf+UOjn3v2sKWB91Msd2I +HU5h8eeLAIpKjpyBG0RDZ5UnUquMKlGY77KPvtvz+9cBqFep +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAM9AKuvD5CR6mrQ9qXVRdqgQ4BH5/Zd9 +4b4v1TT7AbrEX6QtYFrTR5x8Q+ckkQcWc3lTzIUErxTzMdNP +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C15 +PeerKey=KAS-ECC-CDH_K-233_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=003d5c29b3753e89ce5064575393392b377ca657a0b73872c82165fc43ae + +PrivateKey=KAS-ECC-CDH_K-233_C16 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB1dwboYOfXR/qhas2FMVanF +/mAIU8caYZg8fcgt4qFAAz4ABAC2y2/6Ti6rz3uYfrtSAWWo7Joipvn/sQDzgXKg ++wDTmBThhSR25W6JzozdZDcoQMAVcKhpQKziS7nPag== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEALbLb/pOLqvPe5h+u1IBZajsmiKm+f+x +APOBcqD7ANOYFOGFJHblbonOjN1kNyhAwBVwqGlArOJLuc9q +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAPOMzM8I5b3/O7NffnW9ztaNN5Hc94Q8 +qI/wkhNtAV7XaXpLjJnQFHgo9shh/8nPsPM9zp0UsHMeHaJi +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C16 +PeerKey=KAS-ECC-CDH_K-233_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=007c01f906caa590898a09f46b6f5383658e7fee656aca0f111f22939960 + +PrivateKey=KAS-ECC-CDH_K-233_C17 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0kHh31WHAx3drhlokcKIIc +x4ea01gyrnGPbnkuZqFAAz4ABAHBcs7it2UD602Qs53azoJbI8Mjdcto6uzXNISQ +owDCRu+cbi+trHfHPundWt7oKLeRhBc5W1mXvhoCeA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAcFyzuK3ZQPrTZCzndrOglsjwyN1y2jq +7Nc0hJCjAMJG75xuL62sd8c+6d1a3ugot5GEFzlbWZe+GgJ4 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAeMoVx35M6z9TJbzxL3nHpF1y81iruzX +Y4R0Sg8/AZ/0iq4MJS7ajTQLJcTdoBovIaqjXTm68DZpahEB +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C17 +PeerKey=KAS-ECC-CDH_K-233_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=019eece7d3fafc9274d361c6fafd9efd9ee485cbacb3baaf6834feb4df6a + +PrivateKey=KAS-ECC-CDH_K-233_C18 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0ESsVakTqMf37X/FZ59S9H +y7lzAyW+IbeZN3nRh6FAAz4ABACXlIYQF7Pevv8wLkJTJ/4mnXh1O3O8G/s6d/cW +3AACWBpJwSafXsho3G1/XC2OdJYy1Hq22eaNutmF8A== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAJeUhhAXs96+/zAuQlMn/iadeHU7c7wb ++zp39xbcAAJYGknBJp9eyGjcbX9cLY50ljLUerbZ5o262YXw +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAPSqf5NAqdpGxPBnKHU6Stxa9TpNy0Z/ +cLSHPaeFAH8yHivE4pporCPHfO3Tu83gv3uSon/6dklpiJgd +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C18 +PeerKey=KAS-ECC-CDH_K-233_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01e4b7e89fb1b51179b8792f5cd581c3917e11246d3846f6344ee82eed66 + +PrivateKey=KAS-ECC-CDH_K-233_C19 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0rwTZ3hTEInaXC+rPK7sJW +xUsLNfwsZfe47mFhw6FAAz4ABAH7JYox0Wa++c1mTNe2bNjBhucCXHfwuucxWH6e +9gBg39TkdekoBdGTXQOC3BdnBnkVzADtOyT2U4LSGg== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAfslijHRZr75zWZM17Zs2MGG5wJcd/C6 +5zFYfp72AGDf1OR16SgF0ZNdA4LcF2cGeRXMAO07JPZTgtIa +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAGjZ5V56EFt7tEsh1mm7DvZXqRQ3rYS/ +bVhTJwyYABQ8i+21TbB9+PZwg8WaCqfNig76QvQv1i5ELgti +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C19 +PeerKey=KAS-ECC-CDH_K-233_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0145710c3ab0780ec233424d4e28b38d29f886965bbcac49fa300e1ed886 + +PrivateKey=KAS-ECC-CDH_K-233_C20 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0NVllUcUNdlf7DffYi8Y7n +2rskN5yCu/cUxavF46FAAz4ABAGlKUCkUqr0ILN7XzLCwzcwaJSogv7qet2twBkn +7gB3G59ioqb6iSUDIlJ1SQOIuL/C33ffPoBr7bp9iA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAaUpQKRSqvQgs3tfMsLDNzBolKiC/up6 +3a3AGSfuAHcbn2KipvqJJQMiUnVJA4i4v8Lfd98+gGvtun2I +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAJnrkc2phiAQPDIF1kieaK1+V9ClHcUC +1uMFiPQYAD+/gpkp7dKOkG9Y+Hq+1tbRd/Q28N2UDdol6vGI +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C20 +PeerKey=KAS-ECC-CDH_K-233_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=006941a2a531083563dd886b06c0860770a4724bb04a4ebb2afb1ba2636b + +PrivateKey=KAS-ECC-CDH_K-233_C21 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0ZyKsrMvLuk78v9rxEN4tg +hyva62ula1FMjziLp6FAAz4ABACDUw+j3zFah0CsUvTTlLgMSl8hC6ugttwiBeEk +kwA3udAu1D6dQdDbuEA7kCG00sG9Ng7lPDHCe0kgBQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAINTD6PfMVqHQKxS9NOUuAxKXyELq6C2 +3CIF4SSTADe50C7UPp1B0Nu4QDuQIbTSwb02DuU8McJ7SSAF +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEANzKoitDOR3AUll6470HxuXwIfOemHdW +9lSBce6UASjv1JrzprMtwWeXqXjwrUqw22arq9atVnL0+BLJ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C21 +PeerKey=KAS-ECC-CDH_K-233_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=001d754ee5351d4582974734072abac23376e24348370934e7b864db0f52 + +PrivateKey=KAS-ECC-CDH_K-233_C22 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB1QMWAQTYigwPY5VufDu6cC +lj+fG1P8EZpZLu6k9aFAAz4ABAFGPHjkmKvzQDPsPh2XPcElCeLSNPuRQDcV5C9h +9wCt56u5igMIiGaWNTqtM8Bbq1zzwNTpacv0xM7skw== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAUY8eOSYq/NAM+w+HZc9wSUJ4tI0+5FA +NxXkL2H3AK3nq7mKAwiIZpY1Oq0zwFurXPPA1Olpy/TEzuyT +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAXCRezOze46v8kYeX5648Hl7E6q9kVpg +cGzU8yy2AHZR4HQsDYPUtoVS6ber7DZEupdVz/5tTlaUOmub +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C22 +PeerKey=KAS-ECC-CDH_K-233_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=011346b83791e4bea7f6ba6b1265e5050895d84027c106f77353418f75d7 + +PrivateKey=KAS-ECC-CDH_K-233_C23 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB1FR+r5vhzlrxOG4xEEbsgy +YLhKLKkQVfYGaLlG4KFAAz4ABAFQSTjBZ2gK+4ttWFjPqhkcQBlvxOUAxmLFNG7M +kAE30bqUIija5oxFCxoDOiyBCplZcfAcJAieSm/cxQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAVBJOMFnaAr7i21YWM+qGRxAGW/E5QDG +YsU0bsyQATfRupQiKNrmjEULGgM6LIEKmVlx8BwkCJ5Kb9zF +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEANjtMYOCuFwlJaAsIsZ/W/NmM12Udn61 +y0VzlmTFAX2P3nu8Vo/cgCo+NFXzzzVgLfcGhMis3aFloCZW +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C23 +PeerKey=KAS-ECC-CDH_K-233_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00b4938ed1ed012a9a53892ed9949397cdc4e4a612d54dcf80cdb039f47b + +PrivateKey=KAS-ECC-CDH_K-233_C24 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB1C++VUhi81lRhKRVEMpT35 +fEUXVYS10t4EJyM1jqFAAz4ABAExuNYbnPsFNsWIIU5FiI6+SDke7stNf7W+jv9K +zwFl2klVegqp1F3TeNX4mScsxpdoInaukdLAtnXEaQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEATG41huc+wU2xYghTkWIjr5IOR7uy01/ +tb6O/0rPAWXaSVV6CqnUXdN41fiZJyzGl2gidq6R0sC2dcRp +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAX+H8T9t/uYIG7XMpTL+JownHSdWsxvf +ZDKXz2lbAPOnRpVeEt0LcZGe2/I7IyLKsyjdCb34e8r9zSiE +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C24 +PeerKey=KAS-ECC-CDH_K-233_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01b3d2578bde3066a253db5322c85cf9487ce77b67ece955e281b0d7d0e7 + +PrivateKey=KAS-ECC-CDH_K-283_C0 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAV/eSbgCVCpSxwsjoLF4 +Tl+HgLVoU/ml+MOlJm6HJ9zpfUoXoUwDSgAEBhHtwEXb5D7MTvazJM1R9w/j1934 +d+xot5iQnDxFYXVqow5fAIM7JVEXBK8Jti2ffLrFmBTnW7ucc19VU4SR2/pgweAR +Xv5C +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBhHtwEXb5D7MTvazJM1R9w/j1934d+xo +t5iQnDxFYXVqow5fAIM7JVEXBK8Jti2ffLrFmBTnW7ucc19VU4SR2/pgweARXv5C +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEA/B1wkw1qdyZUr5v0yt2Hc5j9HIKIkCO +OhS70JfgErVpTCKgBnWCW0AgLpW+fatagmFH4EuMUaCbADRXfB8x+MFqcMjhyFuJ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C0 +PeerKey=KAS-ECC-CDH_K-283_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0745552817b5d729310b7dbebae687648714a9ae695dad20ca1ab6111c3d054670f21132 + +PrivateKey=KAS-ECC-CDH_K-283_C1 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkATuRH2LzqohDVGNFR+5i +KAfV0QYCAzCuK5eYwMTNDq2xC6lIoUwDSgAEB40uzU2QIzK2s8e9S6fSAPw0xF7a +MJmLYCXtR7H0+OaPMoYkBNXlNkfd3y/MyIFtrIvHDCmAdiLMlVOacqo6myMModJe +57UW +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEB40uzU2QIzK2s8e9S6fSAPw0xF7aMJmL +YCXtR7H0+OaPMoYkBNXlNkfd3y/MyIFtrIvHDCmAdiLMlVOacqo6myMModJe57UW +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEB5m0MOkjIP/qvy1syHOZ4wwKqEQg/466 +Iwm5lIe3Qtci6LelAhc2KAH9bS0oblzfN1zQrlabcAAFMS436ONbFZLvubXq9Hs6 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C1 +PeerKey=KAS-ECC-CDH_K-283_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=02eb0c1ceb6179232e91cff91fc8a30553c6ed7e0a71deb1bda0a10735a84593dd903636 + +PrivateKey=KAS-ECC-CDH_K-283_C2 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAXdjK2nn7do88AcwdQQ0 +PMIWIyb2IBfL3fNgqHbck7gfBMWOoUwDSgAEA4FatkgOStJKZignXvLuDOfVhpkj +nbziMziEK8WMQsypTSQSAt6DPMZkyskNMPvqxgPvu86SdtTxarHEbn4RyBqaqeJc +gpaa +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEA4FatkgOStJKZignXvLuDOfVhpkjnbzi +MziEK8WMQsypTSQSAt6DPMZkyskNMPvqxgPvu86SdtTxarHEbn4RyBqaqeJcgpaa +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAM5Hp0PUi4b+/WtcAvKpeydiov5X4L34 +XB1qKd6IYsTJntU6AyLllgafkWVoyiSM7Vfv6QU0r0qfkKT0D3l+RSlnAxcmv0HX +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C2 +PeerKey=KAS-ECC-CDH_K-283_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=04a9dd2cf5076814e5329c518c4f27b429dbe01d46682d476e7e78880de368b064236ba9 + +PrivateKey=KAS-ECC-CDH_K-283_C3 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkADv+mhyYU4bluisxVTpV +FR543cOPB0MrXEKhzS2ieP0LaOBHoUwDSgAEAdnDM32pXsblpL/xzJJ4OYm2bJIw +EHhw1KV4aZM4446y2S7/AM2q19DrD0Rap2Ol37jzj1U1V3fOJPdTta09PLqxJfSR +aY1W +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAdnDM32pXsblpL/xzJJ4OYm2bJIwEHhw +1KV4aZM4446y2S7/AM2q19DrD0Rap2Ol37jzj1U1V3fOJPdTta09PLqxJfSRaY1W +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEByiXWDm0LGIDanr/+t3vwwJLclhAe+1W +XK6pOb4z0WrJREXHB3EmMHkLBa4E2NfZ8jZdrprSTExhs+sgwKeYfmpMSw9ZjDcf +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C3 +PeerKey=KAS-ECC-CDH_K-283_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=044e2cd2bc164d21cf4b9833c0aa62ed059282e62b82f4500aeb422d17e1f6e7e8bbd500 + +PrivateKey=KAS-ECC-CDH_K-283_C4 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkANla9SpwjmktAmd7IQMv +eurWAD8STnIBPzfAbgu8IONTKzzqoUwDSgAEBuSH+R5zvdNE+4vI9MH0ducn+yZx +6dbI+9d18aqiTK8umjb1BmPhz/gJl1e7n/G4eJAoOqSc/w97Ev4YTtKkKDddJ5bN +gd6R +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBuSH+R5zvdNE+4vI9MH0ducn+yZx6dbI ++9d18aqiTK8umjb1BmPhz/gJl1e7n/G4eJAoOqSc/w97Ev4YTtKkKDddJ5bNgd6R +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBVZy1zmYRRCJ4rfHEEtCJH3d0TLUCtCH +tYjWo4XaZPWi9Gg4ArTLFYH54rN463pPZPWn1DILLKPTR0cm9nDDiDu42kfz10W+ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C4 +PeerKey=KAS-ECC-CDH_K-283_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=04d4f04d2fcf1bcd8150eaded90e467d3d38f753b6fb54eed8f9d29cd3dcc7be2c83de11 + +PrivateKey=KAS-ECC-CDH_K-283_C5 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAMcz2QlAMsx67WxUqM7X +U+rypIiCKFo7TH5gIfJr7OByKECtoUwDSgAEAmiWsDnXBo2YoyZxDrt6l4vUdmEV +RkWuMM2D1gU1Bn4FFRzLANg6Jjvb2Mir8DEL+/yDkXqGsNjEvgsVWre54scFYFYo +u83Z +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAmiWsDnXBo2YoyZxDrt6l4vUdmEVRkWu +MM2D1gU1Bn4FFRzLANg6Jjvb2Mir8DEL+/yDkXqGsNjEvgsVWre54scFYFYou83Z +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAswopMt20UfZjfpnfcoU4XcTR7loHGXN +tUDyLJB2E/3MsMjaB9QGX5kMj8N9EA7OOPv1dM5ETcNzVeBwK4DR6xvdZwmX6PJx +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C5 +PeerKey=KAS-ECC-CDH_K-283_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01c343540541604f68ddbd63c483760d824ded5c18be7e56e6d36a9ac6d25772afb0a90a + +PrivateKey=KAS-ECC-CDH_K-283_C6 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkANs511Ngctw0SM19IWDl +DIEfZINY6w2x1UKOgap6aGt4Za39oUwDSgAEA6chkGrRPcFcMR/U5VLzvIe32Szu +7bsMMWqVJ4W6Ron8C6JwApUU84c7vDueIXBh96YmH9xiaGhfllbx1e6kcswttajB +Yubp +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEA6chkGrRPcFcMR/U5VLzvIe32Szu7bsM +MWqVJ4W6Ron8C6JwApUU84c7vDueIXBh96YmH9xiaGhfllbx1e6kcswttajBYubp +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBjiA61OMcnXsuk21PZtowof7N3i+9RSX +TR5+MamuNlohgUFfBK+fLPklQuH/j/KPjnyOgJWE4kOkkClJp2WihJhsdQsbBsia +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C6 +PeerKey=KAS-ECC-CDH_K-283_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=05e38079815477b8a79096ce339c4a255f8b213be74715ea61ef7dd0c0b5f161d9de7521 + +PrivateKey=KAS-ECC-CDH_K-283_C7 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAGZJv9ZB2r8bnUmdT7BL +6wmUddCqFdXvaEi3NNLUEwCLYEMIoUwDSgAEAI9ldtYq/8cYNtGa27w9UEIQ8S77 +YcQgV4JFFSkMUC8uCbbYACFkO+h65uVJsNX7tVjBMD0UsczXdwPsdPlgLzXKjXpR +Obzn +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAI9ldtYq/8cYNtGa27w9UEIQ8S77YcQg +V4JFFSkMUC8uCbbYACFkO+h65uVJsNX7tVjBMD0UsczXdwPsdPlgLzXKjXpRObzn +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBb/SiVouZjZtt6g3iMcrzkj3m1yVJKCK +4nPHjOs5rpdVnVrDBKKwpV+AFVoaMw/ebLbZft2wqdy2bEmzkpBKvos4H5EJDbsh +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C7 +PeerKey=KAS-ECC-CDH_K-283_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0531ccf51d1096982f7c2ec513a92bf51c7ac5069cb15c5e2a053ceae7e5550908a19101 + +PrivateKey=KAS-ECC-CDH_K-283_C8 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAIGGCmU9bZREbXdmFk/5 +LGxcFUXHNTBLOtTVF4yLFNAYHpRxoUwDSgAEBraIFbuDaR0WdJxL4WEl4qbW2ulC +UnObp78NsNUBmOov5D3fA54NkwGKRhJWIPb/rKWgZoNDxXAlpgwxqdblEZHKsziZ +O0a1 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBraIFbuDaR0WdJxL4WEl4qbW2ulCUnOb +p78NsNUBmOov5D3fA54NkwGKRhJWIPb/rKWgZoNDxXAlpgwxqdblEZHKsziZO0a1 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBjVH91cL1pWXM8A9LmxMiJcfMUrc8ovI +UdxS7U6MGk6gb4cCASLTdzsJNOkA+6fr/hrV7VvsD7Gp3c9O62HL7QQAdDE8CzFw +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C8 +PeerKey=KAS-ECC-CDH_K-283_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=06ffe79d2b7664ee2d8303ffe0ceca8c49a581fcdb49c4af6a060ff204eea74f4cf39cef + +PrivateKey=KAS-ECC-CDH_K-283_C9 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkACJD6JGb16l87w6c3mPH +bU4QcVApT8+N12dkUco7+lxe25ZMoUwDSgAEA+Q54+vfp6I6nesJ3hQZBcZTxPIC +7fLPXwn674i6MRNwHknwBx0HG4btD0aPxgGd4j/kuiyztQAyvjXpLS5a9A3nBqtS +ToKr +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEA+Q54+vfp6I6nesJ3hQZBcZTxPIC7fLP +Xwn674i6MRNwHknwBx0HG4btD0aPxgGd4j/kuiyztQAyvjXpLS5a9A3nBqtSToKr +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAJBH99dzl9tw45/p5Lqdl6mVp+4Gbs9T +gXnpN6yGys2sUQlQAHzYdRZ/BqL7moGeLL2s78Fsrg7vLLsLLUm+rhCdt1PJUGFw +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C9 +PeerKey=KAS-ECC-CDH_K-283_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0311c430db78b6203e27b52988e1e9dae890c655dac4acefa7ee9612bec32e3e5f52be55 + +PrivateKey=KAS-ECC-CDH_K-283_C10 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAFEqQoQeEif8n+1RwiaH +MWhBNvIlz79FZImH4kU6cYb2p+3voUwDSgAEAi925atxT994Vx6EwrbqOhfxKZm+ +SDvGfhuEPSCb3+wDR6Q+Au7B/A6F8zDFPa17/0hi2K//iqFPlHVulbjwH9fuuPxU +UneH +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAi925atxT994Vx6EwrbqOhfxKZm+SDvG +fhuEPSCb3+wDR6Q+Au7B/A6F8zDFPa17/0hi2K//iqFPlHVulbjwH9fuuPxUUneH +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBL3sGTAMiv3u2GSZ0nA5It9Xsv/sN+Rc +A6XikJ3jwzO9BqXhAapPQIRPJBPx/L3tADsdFcnx33VI3iorv3G1FmV62NjHfPct +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C10 +PeerKey=KAS-ECC-CDH_K-283_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0701d92ed8687138014b4379f1c34677e1744f6ae8c89958a5962f14408d587b95472db3 + +PrivateKey=KAS-ECC-CDH_K-283_C11 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkACqK9JfRo9rAcyo5Pe33 +U5Sj9RnOB/rtP3fcDmafOhscbdrboUwDSgAEBXHwyH+IiI7Ac4lhg0AhdlzE9cjb +Kx+eqbj+mEf4lkNJ/cRPBO98gESmCWlHRsyq/of8f58aeNAPg1T12n7i9dpyNawa +1LV8 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBXHwyH+IiI7Ac4lhg0AhdlzE9cjbKx+e +qbj+mEf4lkNJ/cRPBO98gESmCWlHRsyq/of8f58aeNAPg1T12n7i9dpyNawa1LV8 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBhH1OvS0iJkOelLlxzhWoedCebsPNtOr +GYmyzNmTkbbGs6E9BU6pWiNPZYlxlbyXsD+m0kbqWrX0HaIsCO2BeqfASt83KYKz +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C11 +PeerKey=KAS-ECC-CDH_K-283_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=04f2301ed85a5c91c31a7fd125854904340a55e34976a20743bd33d95e476450f301ee62 + +PrivateKey=KAS-ECC-CDH_K-283_C12 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAd6fukqyTQbnSuWtNq4Z +XCNgxyjrOMUO9TMynnDFrhn0ibbVoUwDSgAEBI1h4Lm4BkvMqM5A1PnmiyNoQTdy +akTqdcjy+IUPAzP76YXmBfyro41R4hEra5805necEMDFWcPs0VYCKWbPkqjH9lAg +p569 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBI1h4Lm4BkvMqM5A1PnmiyNoQTdyakTq +dcjy+IUPAzP76YXmBfyro41R4hEra5805necEMDFWcPs0VYCKWbPkqjH9lAgp569 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAScG7AoOdkJdirTg1VkwpEFuTdChr22X +mHJSmI2grJYnV3y+BCFehxUSnMdjAXkXAdxf4avNZytqoZukx+Uy7nqRPupg28nQ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C12 +PeerKey=KAS-ECC-CDH_K-283_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0643900f337ed362815f181e0628ed5184dad3e66a1f030e947f116696312d835f7f6e7b + +PrivateKey=KAS-ECC-CDH_K-283_C13 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAV06Ii1XCcsznZPNKWUG +ZPOb8yAcXR6G067495W5/d9H2MSooUwDSgAEAeK4jeN3KwnGPQNuDbukNSRph0l7 +YoPauMzxACSG3gcwJ3tDA84YK38M6iGgah1N6HIsv8WbnZ15vHYLnRfYVnFWGuqt +1UlB +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAeK4jeN3KwnGPQNuDbukNSRph0l7YoPa +uMzxACSG3gcwJ3tDA84YK38M6iGgah1N6HIsv8WbnZ15vHYLnRfYVnFWGuqt1UlB +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBbsgvqT9hdAWJonFUAVAAUCbbHEtNWpS +95PXiqLYJhpDxbbeAxvlyvyKrvGbhhUDQTp7c7YLN7AYBJPYLpQm9Htlhzk9CN4I +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C13 +PeerKey=KAS-ECC-CDH_K-283_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=063b1a3db331f91abd0af837db9d5f040620d1ddd7fccf8b58e0df43698351ea1942548e + +PrivateKey=KAS-ECC-CDH_K-283_C14 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAJjFcGZnku/aZfyeeQmT +EVjf1Ed76TMy5JPWmGa2YCxJUd5voUwDSgAEBNxndP5Gqw7Sdo03nnVko3xrsd0b +/FVXJ62Uwg9HMsq/KiyCBsbPD0IfkfyiK0hxIWqfH+OHjweRTpaulKx3C2di+dzg +j/ot +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBNxndP5Gqw7Sdo03nnVko3xrsd0b/FVX +J62Uwg9HMsq/KiyCBsbPD0IfkfyiK0hxIWqfH+OHjweRTpaulKx3C2di+dzgj/ot +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAQo8okNbE1/+oIeSt/GbTuGBIHwpvhzh +/erNtppmn5zd6RgaAkkIJ0semMbRl+0ng8PJU8Gzs0+kOosvV0JYTjf+pAcmm0O/ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C14 +PeerKey=KAS-ECC-CDH_K-283_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0516da1d64bc4b25ce4763e6438257d62fb1ffdeae16d68701d63b603ad53e8587927669 + +PrivateKey=KAS-ECC-CDH_K-283_C15 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAPS220qHzdMAKcw76J5A +ubywFNAQqRolLFbLKGcfNUqATLTYoUwDSgAEBm3fBIMf0ccrxItwkGHBrqqtGcna +PYwVBvp3XU9aVBLu4ChtA6odExRv8ZJ5K3SlxkrTFQ+uNE+oMOD0RzPYZ/TgrgU1 +JsYr +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBm3fBIMf0ccrxItwkGHBrqqtGcnaPYwV +Bvp3XU9aVBLu4ChtA6odExRv8ZJ5K3SlxkrTFQ+uNE+oMOD0RzPYZ/TgrgU1JsYr +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBToN1hNeQ6EU5QAK7EC6JwmzphNzDxzC +AGtEaTXiN7/Mw5TYA7Zs5s8BUH1GLu7/9iEb1MVgcBFsaQdGj3x2/gEUC/DV+3t5 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C15 +PeerKey=KAS-ECC-CDH_K-283_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=049c68c333b96705eee4a3def0d568b0d4faf24df2fc2f1bf40da0af0946240c38e97f74 + +PrivateKey=KAS-ECC-CDH_K-283_C16 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAauCxaYq5H7LzPZmzDMj +s1EoxS0XvhG68721YAbl1Wi6rYu8oUwDSgAEAKBK16WDZmpAQ3+WiwLKx5RnRbTK +lJAhxUQ963AYP4jhd4/gArtZHDLw2zQwNC8ON8RUScKTxU9rffb3l8CZLCgphYto +Dyvc +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAKBK16WDZmpAQ3+WiwLKx5RnRbTKlJAh +xUQ963AYP4jhd4/gArtZHDLw2zQwNC8ON8RUScKTxU9rffb3l8CZLCgphYtoDyvc +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBtSm8+h7bYxJy+UXqXXSq4xjORNVltaz +DMZcyAwShFCPSXibApY7NW8kNOwkm8tlie3k3jbOzTRQ5vXkd7/NwpraSu8PRaxT +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C16 +PeerKey=KAS-ECC-CDH_K-283_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=04dd44c1a30edac2e39a5bc9902625880a18516385c90a9cc6b94c4f111e0260863ccab2 + +PrivateKey=KAS-ECC-CDH_K-283_C17 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkABJUrxeRzHVpTOWQu1GK +dwp1BEYXGjDt1sA4KhfmiAoa6luBoUwDSgAEArdmyZOzmNJCanoKSenQAQedD8Mh +lxgcVurBgF5Ph8nfBV3qA257vTvpE51NQ6hlXvfVGgYtmUfRpIAQ7x6hDu3rJ/DR +/+dl +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEArdmyZOzmNJCanoKSenQAQedD8Mhlxgc +VurBgF5Ph8nfBV3qA257vTvpE51NQ6hlXvfVGgYtmUfRpIAQ7x6hDu3rJ/DR/+dl +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEB2RS4Z16ELiFEj1QP10EM+Fj3xNP/7hV +j4rCbPswYp+M+wk+BrOiSypLB3dw05a78VSvQe7jUDVzpt6a/g9tGLAvyXYcoWQ9 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C17 +PeerKey=KAS-ECC-CDH_K-283_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0049c165339e9aeb2b516684b442921f1fef3091cf781e03fb3f56e93af1f3d6e500c81f + +PrivateKey=KAS-ECC-CDH_K-283_C18 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkASAXuaBZn78TzuEIUKj4 +vQbMwAvSmsZ3nxvZM0ayLJgyfg+noUwDSgAEBCHGLcq1S6gA6vrCMvxzDOcPbVzF +P/U9NxJpzwRtrq9FGzPnA9Y19VIz2jxJCpWcbmOpT82+Rx+/yhnSxaP9ErBNs4DD +yJXM +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBCHGLcq1S6gA6vrCMvxzDOcPbVzFP/U9 +NxJpzwRtrq9FGzPnA9Y19VIz2jxJCpWcbmOpT82+Rx+/yhnSxaP9ErBNs4DDyJXM +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAY4Lt1FtLELp3ZbKr/XyC/3fPoYj/JR9 +TXBJFTZ5C4dBzdNyAywP/72i+oY8udFcNlRQINW7JNkw2vL+pFVffCTWrvuywB2S +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C18 +PeerKey=KAS-ECC-CDH_K-283_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0645d7f4c5479baff5bc0cba654a3dcfda56c0e9d19f50f9d8d8c6357c09a140effbf223 + +PrivateKey=KAS-ECC-CDH_K-283_C19 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAE8ZfIVDLLQqF3ckmuQR +70uyZXukutNa5ThjWhUcjWpWT5zKoUwDSgAEBAyIkk1aJKhT+uQIrqWzvIJ9cxX7 +tY5uofamVnfdTE0wS9dfBUuChpraRDP3II+FcPJPBstkBG6KwIasV9Nwf8iCxjUn +M9/2 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBAyIkk1aJKhT+uQIrqWzvIJ9cxX7tY5u +ofamVnfdTE0wS9dfBUuChpraRDP3II+FcPJPBstkBG6KwIasV9Nwf8iCxjUnM9/2 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAkq7FV5JEkKC6jLltURiGum1E6oEdto7 +3bdSYNX1+i57iYmHAb37CgeaVbz84cqLzjAZy8rmFkADOEFm67sLtzNTlWWtxEbz +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C19 +PeerKey=KAS-ECC-CDH_K-283_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=028017c2a0240fd746ee72a0bcae1e53e05b7af254298094c381e735523854ea5fdd4f5c + +PrivateKey=KAS-ECC-CDH_K-283_C20 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAU6JNIPR2LdiHPSL0kvI +oblbtAoIwWwyh0plK1miJSE5Qo2soUwDSgAEAVdOF84mMRxAq/MkP0iJournSoNB +qng4VRBW9DlbjwK9wye+AIbln5hTSPP415U4ALHXXhQVISScQ/4GFpE9tdHUvVQA +q85V +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAVdOF84mMRxAq/MkP0iJournSoNBqng4 +VRBW9DlbjwK9wye+AIbln5hTSPP415U4ALHXXhQVISScQ/4GFpE9tdHUvVQAq85V +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEB1J1EryTSTjMUkDOcO9lIi24XBPJYcHz +H5FCBQZ9ZLGkyFMUAqq9uB/+0sABrLtNC3vlOTBOMuQx4C34sZKtdO0bSwYGv8kL +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C20 +PeerKey=KAS-ECC-CDH_K-283_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=02603c00998deba52db12814b1f77b2120cbc1dca59009c0d6ea40dcbcabca32c50380d8 + +PrivateKey=KAS-ECC-CDH_K-283_C21 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAetvbJGogKVGIYXGpwDo +Y3uPRH0J0bJRRg/lfxv0Yu/d3a7AoUwDSgAEAxswJhBDiDdM+3x7TvZCEaR+ILlW +Gju8pTUWBAt72ig3MJRUAk+K6yOjXhwiIllnx5EYaMhO/dhz27zLx2Pq1n5yojJK +pMby +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAxswJhBDiDdM+3x7TvZCEaR+ILlWGju8 +pTUWBAt72ig3MJRUAk+K6yOjXhwiIllnx5EYaMhO/dhz27zLx2Pq1n5yojJKpMby +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEB+wp2i8wTOuo1eJJ62BUpOT1lTTuWdJc +HcDhLMOPdouD2v/uARLH1KN/7IQicaCoItN2N+btVRkHEwAa7+EbBvfh004A/N7L +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C21 +PeerKey=KAS-ECC-CDH_K-283_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=026a719bff31da4b4ebaed7bd043064f9c3930b5774c4a99809332c808aacba4b9e3733a + +PrivateKey=KAS-ECC-CDH_K-283_C22 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAUe+TjhmfjKmphq5gM7Z +LkJpWSWxE8aUp5YK7eouHVcaQtPeoUwDSgAEBvWZ8MFJRXoy8aL/q9Tf+RYlk4KR +K2QCtQzfXCNf3Rt5Dl6vBMzx2KS/63f/MpDmWsYB7luX/BsYaaLrnwt2J36AZsCG +d2xA +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBvWZ8MFJRXoy8aL/q9Tf+RYlk4KRK2QC +tQzfXCNf3Rt5Dl6vBMzx2KS/63f/MpDmWsYB7luX/BsYaaLrnwt2J36AZsCGd2xA +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBh71k4nt+PgnOmYqQZVBHpRIuxt3+wgA +vlJetaagOxlmVxmpApaG+Ed/tcdp77CCyz8aDHnbVcsmTiESwOd557VY9wBFgWoQ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C22 +PeerKey=KAS-ECC-CDH_K-283_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=048c48c993040619536f45482c494a39b32e75fe69e478ba06e376228b79eb83d3ff9168 + +PrivateKey=KAS-ECC-CDH_K-283_C23 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAeGQC+Ya235VVZ2ZoLfZ +NURW9RUeL9e4PABbELFgBOvodsBooUwDSgAEBC7Mmf9ItT9mGbSEr4+lmyNKmByc +PpEHu9HNqszoGIXQbgKpAYPaDX/ufz5w4Rfw6KSnQsrRCu/NxKq5uzFFgjdoavtP +rPOp +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBC7Mmf9ItT9mGbSEr4+lmyNKmBycPpEH +u9HNqszoGIXQbgKpAYPaDX/ufz5w4Rfw6KSnQsrRCu/NxKq5uzFFgjdoavtPrPOp +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEB51XYO5u+XhRi7zlNrAxxlWorPVgRJe6 +Q94L62h3pUfD7dRYBCGzBR3TY5bSD/zXzzT8oCJRbdS/+sc/yZWunqgUzg5AJ/fG +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C23 +PeerKey=KAS-ECC-CDH_K-283_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=05d85b16bb2a0d32c73d1402838bdfa512d744fa88c74d3d90cf714c2480e03363d5c6ec + +PrivateKey=KAS-ECC-CDH_K-283_C24 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAHfkGrLQnDTFiKvHbUMS +YC5x9gAZAnuYbg3tNyU1wrapM6UzoUwDSgAEApIzI/FwB0Ii06aih62v09H+EnFd +V7kbH/R2orT8w4XeJh7MBMxJjWfGJnzHxMLUClbNwqbnFe3YsqlhTusz0Lb9Fiy7 +hacU +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEApIzI/FwB0Ii06aih62v09H+EnFdV7kb +H/R2orT8w4XeJh7MBMxJjWfGJnzHxMLUClbNwqbnFe3YsqlhTusz0Lb9Fiy7hacU +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAkeE09PV6AIf/tiicJqfVNU5XZj6RCpl +WgXdlCYrYDWW+L/xA+jjngjM5V4b7S3+DS+MFBsGQB26A37LOEdEkwyBeNFGQWMk +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C24 +PeerKey=KAS-ECC-CDH_K-283_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=066abb838b5f12b6fc15ceb745600686bc2d5773e53469c2ee920cfba5459a1cab20d153 + +PrivateKey=KAS-ECC-CDH_K-409_C0 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDMIS3EePGCCLnD6aCi1 +q/sORIiIs1sMi7CfgGYW3B7PIt2GI32TfBv95it1rmVZU/xrL36hbANqAAQAaKP4 +sS4C0Q4vUglVJrxASLj2rDqEUxdyhweJk48a7/gT4F5QnqlYfSt+SqFDRLrD7Ebw +ANHOtAx9XzKX4pVfDz6xQis+a7v79+tRi5wXro1A/rhKrzb15b2WB1srTb5TisAR +lirHBQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAGij+LEuAtEOL1IJVSa8QEi49qw6hFMX +cocHiZOPGu/4E+BeUJ6pWH0rfkqhQ0S6w+xG8ADRzrQMfV8yl+KVXw8+sUIrPmu7 ++/frUYucF66NQP64Sq829eW9lgdbK02+U4rAEZYqxwU= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAXf3NvYRYyDK+7W03sIC1AUIGC/gERib +geHzmY9UCGB6RrsVCsR7yqr95HuKe3L0eLwi0gHfTvSzfgEk5Vtn81ht4kqIpsXZ +iFQAfUsMS0zNaNUfr6dji75VXWC3Te8hfGpjxbQGj7c= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C0 +PeerKey=KAS-ECC-CDH_K-409_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0176bc5c4036ce5125493a58dd265f04d190f028366f7799f70aedf29ac67b5b37c37238593377a47944f5b639f43856dbd560ec + +PrivateKey=KAS-ECC-CDH_K-409_C1 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDNlGIu3eW5FH0RyehoG +dEQN0z0litL9x7mPr2SxHn6M5ejCHnmfH/L9KdTJSqFYliBopZ+hbANqAAQAMsV2 +hFLzwfO8VIeTea1CCJEmd0Kzf7CW7nuMIc7tAEHpRwzsO+3LeZ6QvbsxGSCD/wNE +APnGEikn+4JCRtHcHOD95xpoSagtQQZdodhSVqmxl5v38oY2b8izJIk+vjTlnARg +BzmUFA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEADLFdoRS88HzvFSHk3mtQgiRJndCs3+w +lu57jCHO7QBB6UcM7Dvty3mekL27MRkgg/8DRAD5xhIpJ/uCQkbR3Bzg/ecaaEmo +LUEGXaHYUlapsZeb9/KGNm/IsySJPr405ZwEYAc5lBQ= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAQxMaKnxpioyZVa22XennNnER2wFsa3U +os/TBoJJo8OSOCJCjTUsXXTl1krM7tvapu++TACGaulA3TG15uPyCztNh6agLHgX +PICqUQpu3/hSxinmBk3118YA/Zjljo6MZiu0uWyLqQU= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C1 +PeerKey=KAS-ECC-CDH_K-409_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00575d9e7f70a4a1c5c807b6b5d6b7330bdd764db2aa60f3bfe497e6bfe90f038fb4f6acf7ac06efc3d157c3dc907b2ae093c6a2 + +PrivateKey=KAS-ECC-CDH_K-409_C2 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDNssXw/whq0jlw3F8eR +EY1HYeLFGYa/FHlCVU3FoYv5u2xnvbupCKHouo53kPWaOXE09oOhbANqAAQAK4kE +GK/FeXyXRqRMoFk2euBmO88FgVaGDGE+4F4R2j8veZxwpo/nL9XawkadqhgQcCne +ATVpBLGXv54GV/Q0nSUruzdcZiBvwNgxJZm9vv7oYI7JSNzkhoB7qlNe0GrayceX +Y0cRqw== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEACuJBBivxXl8l0akTKBZNnrgZjvPBYFW +hgxhPuBeEdo/L3mccKaP5y/V2sJGnaoYEHAp3gE1aQSxl7+eBlf0NJ0lK7s3XGYg +b8DYMSWZvb7+6GCOyUjc5IaAe6pTXtBq2snHl2NHEas= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAeTVgNXprYFnHGzWYtVWm6/k11qk9Emu +1WvYAGGVIMnzLE4jDE2RscQR+QhtUpG6E3AUogAMj/tCOS/zl7vUZ5cvPtJR1aB5 +ll2gsdKjzBbDHSVdzpiGk3styUHqsNi+i7zRWqbtltY= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C2 +PeerKey=KAS-ECC-CDH_K-409_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00ce87aa5e7700384df59d3f1075d282c1aa511391c42ef609b8de1264eca8f7737df91565c73ee884ea882d47c56d979141f0f2 + +PrivateKey=KAS-ECC-CDH_K-409_C3 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDMR1DvAjanOXe/JS075 +DZMk3ggDR/9N+GZF0yVgOi3/0o7K8HdexTyvWlVOr4toSH34hlShbANqAAQBJXtq +vUcNKUtZ3a7azVRdz0OAiviQ9XYoiAM0L8Yes5b1YK90NC4Qu5TSJMJNjlkA5bly +AdzK2X7O9Dh6HPUSsW3VvHq2FfvFCHrBnV/Cdi9hW0kE6jk0O7sYXbZKGff3Ds8N +VXsV6A== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEASV7ar1HDSlLWd2u2s1UXc9DgIr4kPV2 +KIgDNC/GHrOW9WCvdDQuELuU0iTCTY5ZAOW5cgHcytl+zvQ4ehz1ErFt1bx6thX7 +xQh6wZ1fwnYvYVtJBOo5NDu7GF22Shn39w7PDVV7Feg= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEALfRk1TK3MlHCCZ67Ysj5ITjKgOBSwJq +gA9boB6SBMQwUuTUfG/NkjKWVODpAVsBL3k0SgF5lcFXlsWuk+CiB6JwcAT7saSa +DUf9QE8S1XhJ2Dl81NLG0rS5D4ZEA9Ss0Woyt/9Id7Q= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C3 +PeerKey=KAS-ECC-CDH_K-409_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00691dd6b5177702d6a0b1f8b07f3b018478680de7ee079272ff75659335c96afcea7650caa01f996aa37946b78e14a83e579fb4 + +PrivateKey=KAS-ECC-CDH_K-409_C4 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDMNayWWVtUmd33ttSRq +GS8MBccnCjtOZKnWyHfNBtKWKhrITsLYl2X5Z/YETy36VpAxB/OhbANqAAQBk6+h +O9Hggc7l3xKG/kSik7fRsQwpCl8q574tAnNgCaJtg6qqkBeoyL9g76Ffzq0Hdn1I +AdAv1mp4BsTIRF+mFSVP8yu5wdhaOQT5OcEGHiUNPrZBMTCipVcJlHlTEOltw6/z +uCGK0w== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAZOvoTvR4IHO5d8Shv5EopO30bEMKQpf +Kue+LQJzYAmibYOqqpAXqMi/YO+hX86tB3Z9SAHQL9ZqeAbEyERfphUlT/MrucHY +WjkE+TnBBh4lDT62QTEwoqVXCZR5UxDpbcOv87ghitM= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAPKhHM06U8leqY8xRPt31KaE+aH0I+uB +46i/viK2gPIYcPWMrraUbGs7hzaZz/0xQGP0CAD98m7t5sunJIJAcgkGzgdsxDIt +GLx2g9IkC6aEds55AieAsvpU4PfHZSi3f6Yx/lq7W5U= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C4 +PeerKey=KAS-ECC-CDH_K-409_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0136f5c04cf9a56db24ad99bd286feb800aea38d44f819be1c2a9dba15c635c4e122893570233a4c5754a41499eafa39a35aa57e + +PrivateKey=KAS-ECC-CDH_K-409_C5 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDNL9zUbGVh10B9jBsoS +fbihpfWXcZwNEOHWj11IVb8HYFeQaR/NDYtdsTfT/CZ53nWgZ4GhbANqAAQB04Zk +WqpI4v0JUOaprOnf9iyPXpTNukW9c8a+a/e3Y6LJqAeEYxLaOrghwEmsCGH4Izfw +ACpkNu+KEmGuzDjIIdp3Sjkf3Md1DJQ32d/mTIIzUIE5mfD9Twfx1tmAdAmGErxS +BEJJ1A== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAdOGZFqqSOL9CVDmqazp3/Ysj16UzbpF +vXPGvmv3t2OiyagHhGMS2jq4IcBJrAhh+CM38AAqZDbvihJhrsw4yCHad0o5H9zH +dQyUN9nf5kyCM1CBOZnw/U8H8dbZgHQJhhK8UgRCSdQ= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEARdEn76mstX06OTTmnIoQkzwb0Vr8645 +vB+yqZ5Bg7cW4ZT8UHRlZk0AnVvO46QmupMsEAEUbTK3DwnmX89p65rmYWLRC9BD +ad6OgYf6nD0bXdom8QtGnNSSXKN+CZRBV1fmiV5YgUU= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C5 +PeerKey=KAS-ECC-CDH_K-409_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=004f684f9d559d16485f0023bf012006265ed81f06fbc1441334a559e5500a3f77603565013694023e0d8f44fd12dcf69eb8d654 + +PrivateKey=KAS-ECC-CDH_K-409_C6 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDNp2mWQEDRcaQD97LMd ++bq+2+QlM5gpCzQBL7E0vFkUdXLmKmD1yszth7D40f98BJ3+lpKhbANqAAQAOGhw +GffCGd3ZVnsg9eoeilBFHdQL9bZfey4TPebzbko/j6L5d+/pIPhF0XbIpXAjzFXC +AUk5f7xCus+FxZ4EU13x1ScVdh7qmX1P+HIEhmzcPUpUwkJa0hSnoN1ZL0qZGrdo +yPQEvg== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEADhocBn3whnd2VZ7IPXqHopQRR3UC/W2 +X3suEz3m825KP4+i+Xfv6SD4RdF2yKVwI8xVwgFJOX+8QrrPhcWeBFNd8dUnFXYe +6pl9T/hyBIZs3D1KVMJCWtIUp6DdWS9KmRq3aMj0BL4= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEARmYDxEUne5eLC0AVh08JqQqWkTodHZd +3aTYGOpwTtu6I6vtXgi+ktZV155VxbxUeHtN1AE2az3aPph5xEgd3DZ+UcHAVBlF +lkY21QIWh8KFxH1A55/38LtWqTrFYL6Ny5cPWLI7EKc= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C6 +PeerKey=KAS-ECC-CDH_K-409_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00137894f637460a63576824536944cddb42dfe63169c84040a0345ad7516ec4f1ad00bb4de20ea6ea43824b9b0f74dfa6881cfc + +PrivateKey=KAS-ECC-CDH_K-409_C7 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDMG39qzyhsqKCHO/bWH +K7lfAjFhrk4tVJ0PsfOCVjQTWESRZX2xAcMjUUgyw2P2NqnmnoOhbANqAAQAPpqb +XyggZuIzhw3LAMSu0tc6Mx951JyNXC2TkIsO9ecrdIgU0biEBkLXW3qaVTAbHnyC +AQhfV2keBK+sbohOL9vY34AvTUNbzmESMasydHYerV4uajRKU/M8D6FW4xMgYvcr +zaP8DA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAD6am18oIGbiM4cNywDErtLXOjMfedSc +jVwtk5CLDvXnK3SIFNG4hAZC11t6mlUwGx58ggEIX1dpHgSvrG6ITi/b2N+AL01D +W85hEjGrMnR2Hq1eLmo0SlPzPA+hVuMTIGL3K82j/Aw= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAfo5tdM3XUMkeslQAGHr/3oMFbjF3+nH +UXhDhsmBhg3m4blYTaD0IRlBfzIzgpCRCpolngAr3s1QK6ZKbyHQj6QlA4nUJwMk +RW6UQWV0lccq12D7NIMl+Jt6VASiwhwqoHcRvPXzBBI= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C7 +PeerKey=KAS-ECC-CDH_K-409_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00f03b0b43a351311689eb1d3fc457013f294a7d02ad850c72e4ff9b64ce68a47beb49bc5bcbdc828534f8c8a5e13de5fe522eb0 + +PrivateKey=KAS-ECC-CDH_K-409_C8 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDMpsvyzCFlql1xbTNHn +UmfFQk4Ad0EU7CBRpXGymXZhifrSTpL5bj1SdzbqSANnvb3QUw6hbANqAAQBTHVz +mb4gHgiv2LSmcefTttf4hESYq1kuG/aTFTR86C29eF1FkiZg1NDSf6KwrGLnB/zs +AJjwdz0+/pwpCpkuygWHXTRj8HNrLf70r/2f8A+WreUzmZF96gdMeY/FNXOPDFaJ +okR/hg== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAUx1c5m+IB4Ir9i0pnHn07bX+IREmKtZ +Lhv2kxU0fOgtvXhdRZImYNTQ0n+isKxi5wf87ACY8Hc9Pv6cKQqZLsoFh100Y/Bz +ay3+9K/9n/APlq3lM5mRfeoHTHmPxTVzjwxWiaJEf4Y= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAbJV1bt10llwMB3p4OOVmhIgXVEfjmTw +QqAclQ20cbHW1YR/dWae6wvxh/FVnbOyKu7AlgF+WQz6hVNJE2GYwt3YpSEIgkc8 +ndWRwC4gLKBAS7yfY5HXOuAR2smWUVXSZQE5/i5U7Gc= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C8 +PeerKey=KAS-ECC-CDH_K-409_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=018f55b81f15f862aed042f37433050ac61718c9939d432b2a20e12d647f99753b8dd5127cf8963247fe7e1d5ade1442229bc646 + +PrivateKey=KAS-ECC-CDH_K-409_C9 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDMbmAFcAgLqFkF5caNz +BCUIOb1qbl2DSX9/k/D3Ryoh/OS+W+d26QlZ28QaDoXtIlg36NWhbANqAAQB/sCf +lFcWFOfNjpWOvNei/NjCSNQIzbo1ljBUXDE4OSJ3TTsk4gWR2LQelU4WZU/oXLrK +ADHg6x3RzkZ6i3jRDSW53pLP3Cdzgx5uKKFS0CripaUQmUzAEEYiVEQepBEhwGd/ +tBeL2g== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAf7An5RXFhTnzY6VjrzXovzYwkjUCM26 +NZYwVFwxODkid007JOIFkdi0HpVOFmVP6Fy6ygAx4Osd0c5Geot40Q0lud6Sz9wn +c4MebiihUtAq4qWlEJlMwBBGIlREHqQRIcBnf7QXi9o= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAOz3Bk9Sj62uOAyzgphIEQR6DX3ZqN6O +dvgXiqYAaed6lIrPp00sd6doUWWamBlwVNqNRAC5jhNJf3dgcnEcQsGNv8jrjIUj +/2M6+Yih8kLtPDxWXRjPIk+HUfKULjYLoW4PWDCVKRk= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C9 +PeerKey=KAS-ECC-CDH_K-409_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=002b560d1949297dc7e1bbe8ce49a595762924afcf0271e9c493c18ad5cbfcea5f3900c7b793ae5dd44f48884b0bc3b52c66e05a + +PrivateKey=KAS-ECC-CDH_K-409_C10 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDNHO87LE3cR5eiXY6QP +d9vi6owlCdIJBk45z5Ba+qkBCF+OeVybgBfJpdChuWgSwSSj/7+hbANqAAQByOmt +xIFuZgb//14afUinhUw1qvBV0xgz8Mq96LvE0kWOPNPIKkr4B0X1lbO6Evi1wM6Q +APxD8ZO1WJruYphXNeNig3TdRahqYbqveMIfpueHhW6muLiDFlQFcYJYZc5rhXit +1fqmnw== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAcjprcSBbmYG//9eGn1Ip4VMNarwVdMY +M/DKvei7xNJFjjzTyCpK+AdF9ZWzuhL4tcDOkAD8Q/GTtVia7mKYVzXjYoN03UWo +amG6r3jCH6bnh4Vupri4gxZUBXGCWGXOa4V4rdX6pp8= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAE4Fw02sRObhsIzfrmNXwg23pUTcJT3/ +HCPU26hxuWeBtqYWONc4Zdr+CpRDw+wyiFfSPgEibEJ3eLsiRiTNIVST16TzKk8U +GXkjZAlQXYz1jYHf08eT5ZVDp4AxTzzY7hdmTcLkY54= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C10 +PeerKey=KAS-ECC-CDH_K-409_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=000b43cb539bb4bb42f195ffdbcdeb482b69301c0155a840cd381f55c465a8e57ec51d6555871537b56bf84a1544cae2b2b8eb38 + +PrivateKey=KAS-ECC-CDH_K-409_C11 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDMg3d1nE0pBg3i6oN38 +kRHAou1JKyiVad0AYb8SJtI1vapSA9Pvor0BQdKs4nw66Oba8R+hbANqAAQBZ9V3 +sqQ8wafYimvog8KNv0jD4fvyGtg+en49dT+wttP4DNE3b9mL4mD0lHV83AYyVtWy +AV7XADt9K9XgNZMDZgrdCQBJA5z33zlpieoYxwL3BMRc9v3nrQctMSU9HVKV6cXR +1cYsOw== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAWfVd7KkPMGn2Ipr6IPCjb9Iw+H78hrY +Pnp+PXU/sLbT+AzRN2/Zi+Jg9JR1fNwGMlbVsgFe1wA7fSvV4DWTA2YK3QkASQOc +9985aYnqGMcC9wTEXPb9560HLTElPR1SlenF0dXGLDs= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAW9pYP0jV9L3C193i+XgqnFVa50vTM6x +T3gS2oWKuHKBi0YQ1BqPZiALQ0NCIifZ/d9xLgCq9ZKnJedzg4iJa5vp94wcPWly +ufmQNNAswPl3ap9sL5t9UB91vhhZmwiMTFiBxmFG5bk= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C11 +PeerKey=KAS-ECC-CDH_K-409_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0113dd2cf8732ceb8a893e149f13d52026e5d829322d0f1233a624fd6b74d56e7e6374d70942a25152ce5073831660333fb3e070 + +PrivateKey=KAS-ECC-CDH_K-409_C12 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDNgelplMhd7UvI0knF9 +0Keyr5jgSIT3cHXkYEQQxQRKCEYezzfE76PtwstmfIS4ZBWTa3ChbANqAAQAClZ3 +rGwA0mRgVNvr/FNtsKmzUaJAinPgg61i0YL7h8uAMixTlVPs28ITzoTGbd+NwdI0 +ATJ6CjdpJA/aRflLsHNhx0qoyNEZQUp7VmbiWjq2iBl1OWMlp39UGhuiaAEqgsUR +DSpJ4g== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAApWd6xsANJkYFTb6/xTbbCps1GiQIpz +4IOtYtGC+4fLgDIsU5VT7NvCE86Exm3fjcHSNAEyego3aSQP2kX5S7BzYcdKqMjR +GUFKe1Zm4lo6togZdTljJad/VBobomgBKoLFEQ0qSeI= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAPVJxH3I6S/s04tXUIlYgORJ8eMavgux +6syEKY+DYQjlowjMuVeNy9S+YXd1LrIx548BHACTZj7D/LVNZ2iXv8ldteVK1u6h +7HtGykvz0lNYOfEByz5tXxG2o2v0A2PDHJ+IE3hiZ08= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C12 +PeerKey=KAS-ECC-CDH_K-409_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00c8e62ac25c11e86b98642e4ec7adde9d9436f9337369fb065abc9ea784f90b8b8bebae35da92185486191dd9f49370b1148ce6 + +PrivateKey=KAS-ECC-CDH_K-409_C13 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDM02ppFNxHwSgseobmv +cB4Nw6Vc3VheQ+Ps9B6TTsr4gP8WFNzlzJkqaa3fxAja4bCbjQWhbANqAAQB97/0 +NVR6iVFtAX0b2sTNo2BBoNPf0DJYVisuKPQM1k9q4rcEV3c/lnXP/EDAIeRwKwjW +ABPFmnLwyD9buQoL/ueYlS+5HuMpyYxLWRT0Ra58hIN2cFK19SmXRiFUXdzWN39e +OH1XPA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAfe/9DVUeolRbQF9G9rEzaNgQaDT39Ay +WFYrLij0DNZPauK3BFd3P5Z1z/xAwCHkcCsI1gATxZpy8Mg/W7kKC/7nmJUvuR7j +KcmMS1kU9EWufISDdnBStfUpl0YhVF3c1jd/Xjh9Vzw= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAEEeXUyW413ptUHaX6xpEzZGLIgtjozk +1utxIUF+cJUMTZUC9kVl1abPpzXJDu+Dx7hh4gCWuQTjfKHC21mlRhVifhwzVhYP +4XUoSq3DsvoGugswqqB8hOZOSGUuX+swNZUGbg+EaPc= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C13 +PeerKey=KAS-ECC-CDH_K-409_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=012505746f1a40ef75f950595211ce04f87f1daffffdf8c12600a9e2994c8c1d8b19c0e0559adf9a94762cb983569de6d0d8baca + +PrivateKey=KAS-ECC-CDH_K-409_C14 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDMxQa+7qLTZ8MvoKX82 +WHMZZzlGXj4gqJr5/fiwHRlaoQUuYXa1+thWE2trMg7r/AjBzQGhbANqAAQBgF/8 +V26KRfBil7IzXQOryK39Fa03522A07QYDV9y78kPPysDas2Bf0D9SQZKol6jg8gu +AfItprUKxWKJQ/BbFBSTyswPArzfO//bQ1gjQ7aGFXYaGAvX0asd3BX1N0qPZl0T +tLkScg== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAYBf/FduikXwYpeyM10Dq8it/RWtN+dt +gNO0GA1fcu/JDz8rA2rNgX9A/UkGSqJeo4PILgHyLaa1CsViiUPwWxQUk8rMDwK8 +3zv/20NYI0O2hhV2GhgL19GrHdwV9TdKj2ZdE7S5EnI= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAA+oJD8ACjOYgIofiP/Fo0KWj+5ceyap +4f+ibvqIXnThxWICfZXbCMwVvSWj/BGrTcE8ogD+1ofHGX/xrrmA5yo6fDGBQgUs +I4mwhm2zuH5cgCXnm7T0+Zb6Y1KrnLIBcu941v/KkG8= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C14 +PeerKey=KAS-ECC-CDH_K-409_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=019a71ab576546e2351aa92b6075e8229813e6a2cb3647147b192b4597f1217223e7197d846c0d65ea0d4aa4c503bd000ba312ba + +PrivateKey=KAS-ECC-CDH_K-409_C15 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDNOUXeWysnXx1MW615o +lj/mMkeB+rmG6UAgDnEd2/mILZmmIKl2NS4klnSM+2Hcy/bWWcyhbANqAAQAVqRS ++x1VgHnD6RvyL4aITKiXiIBv59bWykC1SFB5133EPkZqcSWXksZf9qtyBAZsDmeo +AfKbcj2ffU3mzML5cIB5xdMK5dlg5ip8T23Ji/yVtPUx8ZfDlIZwVDJZQgPCUUcV +bf1bXA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAFakUvsdVYB5w+kb8i+GiEyol4iAb+fW +1spAtUhQedd9xD5GanEll5LGX/arcgQGbA5nqAHym3I9n31N5szC+XCAecXTCuXZ +YOYqfE9tyYv8lbT1MfGXw5SGcFQyWUIDwlFHFW39W1w= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAL59WAQyY6svQiUtQbWC2GLCskPOGFdg +gb1u3S9j8BZPNlyuZyaNIn85RGd+HBRq+GS4rgGkvLxkFthll6FIyk1hDuZWoAAm +zmBHvZ+9QNiVMBlqRpOuWV1plWUDudKrSqvnyVihTGk= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C15 +PeerKey=KAS-ECC-CDH_K-409_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=014f4b7ea93c9dd846d2228c2b6a8dfe616057232b7af845a570cb6cacf9feef2d8ef4fafb285b38e63cce0a09b4d82dbe43a390 + +PrivateKey=KAS-ECC-CDH_K-409_C16 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDMcgLZNUegCVpnnvixL +mDz6S36RsRLi7KX50Mt+PU+Fr/ezOpIeqhJMtwAuq2KXPWXha8mhbANqAAQB/Q5O +r7JsCMn450fUmR9GjHa0hkFm43ZCtYPbKFpLxMM5eZF9kSmpHLCnXBrufNT7q3PO +AEaO+rz0SPzOgh896B6ZTXmn2Z6piayB+hNfesiLFUx2eQnGgffkjACy5mu664+G +iPRGcg== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAf0OTq+ybAjJ+OdH1JkfRox2tIZBZuN2 +QrWD2yhaS8TDOXmRfZEpqRywp1wa7nzU+6tzzgBGjvq89Ej8zoIfPegemU15p9me +qYmsgfoTX3rIixVMdnkJxoH35IwAsuZruuuPhoj0RnI= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAR/qWNnjbPjtTvO0L3fM6pO/VCrJIUHc +LAlAYZhfPfeG0ZKle+4HJVCzAlg/D5QoMBsbdgGz3MG4o1RSZEJzhjKeuB/pkmVA +QGlHgcDYsnweSUQrmbq5Pvlmb+oU1IQ+5LxbBFrFDBE= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C16 +PeerKey=KAS-ECC-CDH_K-409_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=001fe2ed30ad4143c5eeb0b7622e6aa49e4e4d51c1ddc467b3fc54215dae931be0b6b6443e716895acb6570cdc21fcbdae46e5d6 + +PrivateKey=KAS-ECC-CDH_K-409_C17 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDNDyWwyz2SLA2ESQhrb +qpJc1UF1q6055Wgb/J60sbZJrsHIduwexGEPGzsGUUpI5up6SiWhbANqAAQA3hge +gbnnd21HRpSi0STQuHbZVI8g7jOGMElF2RMfkEV9m5ON8JiwNb7ar4DtbZeUBPxw +AYGjUW2+qdqX1uzs2xD5bVRGnSc6s2bomkD9ztzxvag31cFL0QwLaiqcikeBASXH +ZN017w== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAN4YHoG553dtR0aUotEk0Lh22VSPIO4z +hjBJRdkTH5BFfZuTjfCYsDW+2q+A7W2XlAT8cAGBo1Ftvqnal9bs7NsQ+W1URp0n +OrNm6JpA/c7c8b2oN9XBS9EMC2oqnIpHgQElx2TdNe8= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAMqAk0C9EzVLYHHQc+Zbmw0rrILiKr/K +x+cK/Z0iSFLw4hKXbl7II+uJUOArx1ns9W95qAAxKB6JdkAaq1j6jq+GNv6wExcL +yrV4G+CijScznpRw4WbH9oXy6pFDMQ3KGzq44cjmBZI= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C17 +PeerKey=KAS-ECC-CDH_K-409_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01610efb48fd22261921f7484ed6382fceb6bdf28f3bc2340a175b7971b93ed5ff357ed55e5307bbf42e40a5b3fabdaed0ce19a2 + +PrivateKey=KAS-ECC-CDH_K-409_C18 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDM2NoVLjuAlS7LQ6+3H +ILZrIBKaIfGk/jkRjP3U0Tfb5eVw6+LEin+awhz/PlrfR0NGl9uhbANqAAQB78DN +GobOdUTyX0TmOgkTwR/WsIvAmtjNgvOvfjKnp+ys1W4lUmWJMTh51Kf9Q4LUEU5K +AFo073QDWZwvg/PoMplSSJPyQY/5XWwv3Ao9uXDmL93PTNoYKqeLVP2MLoGPse4t +0ndnYw== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAe/AzRqGznVE8l9E5joJE8Ef1rCLwJrY +zYLzr34yp6fsrNVuJVJliTE4edSn/UOC1BFOSgBaNO90A1mcL4Pz6DKZUkiT8kGP ++V1sL9wKPblw5i/dz0zaGCqni1T9jC6Bj7HuLdJ3Z2M= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAHR5WwqcoHBJH7VKO8JJmB3vvsA35AQP +dmVkKLFTi5eFA/gfgK2e+XxeEnulHsBAWEuaIAA+zifz2u/nvf/fpyeyr5WvhZGv +lGzd/jfoVkO40XnKi5UpEG+cXzqVqIGSJfnX1Kcw/SI= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C18 +PeerKey=KAS-ECC-CDH_K-409_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=008d990982aac8d5371b867de21e09064fef30e73321337dc24f19ad5ddb6c4ad217136b7c61e360a73fa7571d526c8f514a06d4 + +PrivateKey=KAS-ECC-CDH_K-409_C19 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDNJmKBioyFwuzWJVNLC +SW2ohiAIJ/oTVmg2ribjjVGSbKPSAlife/on6iLTmZc9tvn96fShbANqAAQA9xWQ +sEKQtfPNm6DjlKO+WhUU9F5TSX9s3tv4OXKOAogTXXaeSyiTLIdYI/4lbokZl8R2 +AJ0WunJqWp4JEDvJSgnYB5rI7fI0EMhGn3n1XzNVz7OtcDYk7G117OrjiB2iCQPH +HeH1rA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAPcVkLBCkLXzzZug45SjvloVFPReU0l/ +bN7b+DlyjgKIE112nksokyyHWCP+JW6JGZfEdgCdFrpyalqeCRA7yUoJ2AeayO3y +NBDIRp959V8zVc+zrXA2JOxtdezq44gdogkDxx3h9aw= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAR62TtQknhGVstEwejWlFNZtKbpvkET5 +wCtLLTyz49TAzcVInN37liJsnOPjb7j/Lu8gjACZiAsNDUPFxXmtd92uaPLJF/Sw +YuqNd3uc30Zcu1kQfnCZJxToy/rHYpbV7emcSNOKiXM= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C19 +PeerKey=KAS-ECC-CDH_K-409_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0155dc98729c8c1bc65eb8a3ec09135f46bfa313bf56aa3169e312db8991abda338f8ac7a75bce42884068efb7e6e625939d2b88 + +PrivateKey=KAS-ECC-CDH_K-409_C20 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDNaP4Bf48Mmb+s+C7fa +Z2G7EXYYvFevNXtT8Znm5MvBKBl1MhQD6m3mGOwy6GuMoeENfEOhbANqAAQBrkYO +EkhQTTPWftdQ8dYY5Tco1V45DfwY2UtW27PTwL3JbJLKHsqfRPuKWM823PzAWIy+ +APcBH8Mh72JY3Pwf3CwKTlTIbsk5vJzspsKRdQwf9UCzSkGHk4QqLFyrYGHbvptb +4/phFQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAa5GDhJIUE0z1n7XUPHWGOU3KNVeOQ38 +GNlLVtuz08C9yWySyh7Kn0T7iljPNtz8wFiMvgD3AR/DIe9iWNz8H9wsCk5UyG7J +Obyc7KbCkXUMH/VAs0pBh5OEKixcq2Bh276bW+P6YRU= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAKFelqd26tuPigthNgM1y1AX19lxFkiT +QemVFX8a3xeOVii60+gwvuVEMxGRZIhttcNGVABVHKVgXkrgU0U0oKs0PQOaO6eh +zOgyxNZeJrrnq45fnHSz1CGlKOVZd4qye1mq4akW1Os= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C20 +PeerKey=KAS-ECC-CDH_K-409_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0109e85c684d027a625ec5e6df952e2f20a14ed5b092d1b1b38435251303844d230fffc53d84b923555e1e1cbebe20b5d68c3bc6 + +PrivateKey=KAS-ECC-CDH_K-409_C21 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDNVkB6bZYa38zcmYOvP +6QJJkAyQLXxjKo0X+uIdP94wNzJbV3XqxaF0oe4rP/K8XOadjMGhbANqAAQAupUi +M1Mbamx63m8zjST8ZXd7XTBSl+ZtMssbxQbFvKIofTrNM/4ZZT1siKBuyjcSzpyq +AHFr6xTwIjNjDzRgPjCb9uJXLwt5HfpMWCr2o3q83WTo14WpXd/1m7xvvht/xzVy +Xvzwug== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEALqVIjNTG2pset5vM40k/GV3e10wUpfm +bTLLG8UGxbyiKH06zTP+GWU9bIigbso3Es6cqgBxa+sU8CIzYw80YD4wm/biVy8L +eR36TFgq9qN6vN1k6NeFqV3f9Zu8b74bf8c1cl788Lo= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAWQn5yvFfSapEKZyLqwsePuoq//MvBGp ++Dd7/iE+2a1kveKuhof4/x39sptdzs0CJpgowgCtT5q8IdoNMfGWWc07DBhVgUNq +wIsVwLSKesOe7QPg7pfhZM+qWrx3RBLL//lKnqKpY2o= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C21 +PeerKey=KAS-ECC-CDH_K-409_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01ae814e02c4684c21dd7e58a65ec51ec68c37e59e299ce65608186c0acce08e41c8320b1941a611fe66b1921b558d7f402d0eb0 + +PrivateKey=KAS-ECC-CDH_K-409_C22 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDMESuQ70kfnWvp72Nwo +51vbnd2Z31ZmjIMUVNwo8+mkTs/Ue6hCCihvHvNy/SmzZd+bgvGhbANqAAQAICaU +83jXCWXUKCitXzcTe/i2POwsDRWOW6lMqx+OYeWjAJhro0mzrfPvwF5lZwr4jNPW +ALrw2krtuXL4iiFd+/9k5CkPrcJdo/DYPzXmW8QXfTAl1x2O65xBRw88cZ4A7x+3 +VS5qiQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEACAmlPN41wll1CgorV83E3v4tjzsLA0V +jlupTKsfjmHlowCYa6NJs63z78BeZWcK+IzT1gC68NpK7bly+IohXfv/ZOQpD63C +XaPw2D815lvEF30wJdcdjuucQUcPPHGeAO8ft1Uuaok= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAS6J3M35dYUazPApTPS94SWckHptOs72 +nxk5tVjE0hFSLk6qxhPjrISRyT3rbTRKn4esvgGlJgjq0J0tsSOg3Hgqsg3beT1b +twrJXFjmIUa+tiu2aP1X+SA45Fhc3h+R7oxSUmr+sbU= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C22 +PeerKey=KAS-ECC-CDH_K-409_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0140e7db3f6415d884822ccc7316a329dfed177b76c0117abd722feca889bee4e14e65d26c6cc935c0e94205f05fc1a7abfb0348 + +PrivateKey=KAS-ECC-CDH_K-409_C23 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDNW1zcwdTracP2AHHSc +Lx8aYe9b1uy3lqnhXv6bvmFY9mlUJ4c1D01kO9pvPoxkI7gXtTChbANqAAQAJaBr +caCuJS8vkFIhmD6/ziGtlhIaXA3MXvDQ/sMB7HfvS5FYGP7c2n8/1zPH+eUpB5y2 +AAJokNUwO2Gcf4H2D7grJrC5jY8kxFyrQaRO6zo6MSlE6Im0A14ENgswUEPjDQy5 +BBqJ3g== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEACWga3GgriUvL5BSIZg+v84hrZYSGlwN +zF7w0P7DAex370uRWBj+3Np/P9czx/nlKQectgACaJDVMDthnH+B9g+4KyawuY2P +JMRcq0GkTus6OjEpROiJtANeBDYLMFBD4w0MuQQaid4= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAKupOuHRVSiAsx9QP8S+n5HRAkfxTIFg +Ff+yutKauBgOe1CicUTgHCHmPD2vzSUTCLrHaADkq2blFL0Cq+rhxxI3iKaSWE3b +SpCaIX+zXeZliCM9re9wNv+dnyTro3cuL6MDe7rmPP4= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C23 +PeerKey=KAS-ECC-CDH_K-409_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=002ec4deac3e83d60ad39969f2f93b49f31875831ecd51ea5c37ca48de081c0c8cc660edc53a222f3043447f9cb752763be7494a + +PrivateKey=KAS-ECC-CDH_K-409_C24 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDNisCbUlyBmDPak9Wm+ +mN+hCMjroII0rpqH88iLbGWTS5loFTIqFvmqvtEzF793Jb6lgI6hbANqAAQAD1KS +U5TLUrwzDgY5DAwKLhDtl5cUn7zIjYD7yuwXPiSgXa75hAHV5H87dlvtu4JGMShW +AT2ZwXEIBdX8fbclmsnhNLQR0A1z+wdi49IRzcVr9/cUUS0EpjDIcyVR7nNCh0ds +9RHoNg== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAA9SklOUy1K8Mw4GOQwMCi4Q7ZeXFJ+8 +yI2A+8rsFz4koF2u+YQB1eR/O3Zb7buCRjEoVgE9mcFxCAXV/H23JZrJ4TS0EdAN +c/sHYuPSEc3Fa/f3FFEtBKYwyHMlUe5zQodHbPUR6DY= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAKpOuJhEPM4+0sBy2Fh3WsIhwk4z7Kbz +FXlmNUS7M6SgaKhtE/FntlMExffyX4lfZbL0KACDze0wIRtm8a3xcxi23lDXckwF +hJleBotyRwOuCO1xoyszSYensx1sJjcVKRcyfTeszTM= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C24 +PeerKey=KAS-ECC-CDH_K-409_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01c9cc05d19f96c4d233039cfbc43ab68d657bb507f46a353091fe98fc0f422a8e7593c195d326977a2be6bbd2cb44eb1fe81650 + +PrivateKey=KAS-ECC-CDH_K-571_C0 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAXPNFjHhjs4Btzs1 +cv+qdJXEvIH0B4rlDWnLHjOKzxNGkRcRKSEWbd8tKfOp+OEMZ+iMmpkgOoNFZb52 +rFkSZDZzmmr6ApzFoYGVA4GSAAQD+/u8+6YJFX9oojEm2AX3x177Gb77WV46l14I +/0a9NMi4e5ZFwOhuoK2RVGXVyFbGm7m3IrDRe/l62VxGAt6hfGtRIFTLItgHHBbf +ceG3G0vT2ZOIJ9OVkJO52x/4a+1zlEpC3LZ8wzEC4owdDpgEpkUGVvS/M61y7Pe7 +g70oLN5LwV1OSAZKqK0vApefXz8= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQD+/u8+6YJFX9oojEm2AX3x177Gb77 +WV46l14I/0a9NMi4e5ZFwOhuoK2RVGXVyFbGm7m3IrDRe/l62VxGAt6hfGtRIFTL +ItgHHBbfceG3G0vT2ZOIJ9OVkJO52x/4a+1zlEpC3LZ8wzEC4owdDpgEpkUGVvS/ +M61y7Pe7g70oLN5LwV1OSAZKqK0vApefXz8= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQDEGpcHZI6CZDqjGAIw2w2a1PlYiuY +RkBEdB+8eEAoTbi79gKGbDDMv1+bflnMHZv8xblw+mJNqbFfbLM29d2n5rmSTV3O +RUMAXFx7vVp4msTGKD3rDQ03xIUrqlfWvCsKxjN/6wlwTETRs4W3DMOU+iNdg+bn +EReH5X0JAsDLEyoZCm5i85hRHAwsTNUNRXA= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C0 +PeerKey=KAS-ECC-CDH_K-571_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=003198a6b5d6cce847e24348a6a6ceff7a89ed3794d7acedc4e858c80ad04a74dbc02c7038e05ab26b2a299ec92ee0d2c7e66a81872a5157fbc5d4d37ad598d6ddee995ed28a2d74 + +PrivateKey=KAS-ECC-CDH_K-571_C1 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAJN+2zqilWPSJIWR +yftEiYUJX5E6dFgxVZPPzofmj7DxpSW3MQoQEXbjTUXBAEU4lU4gRFQ4F8qw1WPf +bLDV6GF7u6FQ51XhoYGVA4GSAAQCNjzFYksG3xlWvvpZfUx1fMKxABo+FUTSRAgp +D2lId0VbqS5WCIRi8P+svTk8+DW1a3BGoV1Lck3Gw1c8sVbA3ymKqLElXLgECfdz +uY1e3Cc02DWVMoG4KsDhXZAtiHp8a6dWKaN2cbEB0Y3f3EGT2YsYVRQUxJFzAEUw +95dtJ8Jzpz3buJj8tfrenAu3iD8= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQCNjzFYksG3xlWvvpZfUx1fMKxABo+ +FUTSRAgpD2lId0VbqS5WCIRi8P+svTk8+DW1a3BGoV1Lck3Gw1c8sVbA3ymKqLEl +XLgECfdzuY1e3Cc02DWVMoG4KsDhXZAtiHp8a6dWKaN2cbEB0Y3f3EGT2YsYVRQU +xJFzAEUw95dtJ8Jzpz3buJj8tfrenAu3iD8= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQCESI8S3KbIGvgH4CFqZfh3eXNsnwE +iSWic2m8ymo+L7/GVjfx7OsTO+dJZ5oXsc5Ygh9GvRhEqJzwBCyAQ8sQXgGj/JSN +JmMCsewubiwjdbRksKUCxQU7WzSL0IF4xyxgMQXQRoGWpGldwmfW4QnxsSdEU7bv +8U3fN4OWnoglZI3rwhav/5JY9kTXfs2ZEc8= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C1 +PeerKey=KAS-ECC-CDH_K-571_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00577147459262e5ad42f222827f20ed574b2118924205bcdbd339ce20cfb085d072fd70f4ca1f5768fafaeb5710f7ccbea4fc2ae5377b0cff20a889a2201739139bf788a9bf2d7d + +PrivateKey=KAS-ECC-CDH_K-571_C2 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIADQJmwdz8CHuDT3R +hccEtRWKlDKNqgl2j61YBN8dovwGcZDPECjDAje/KkjaE6uuNaJcPmOH05k/m1aD +Bbi/CBj/Un3YIF30oYGVA4GSAAQGdNzE91XET9q9wHhIgQe7ZKRgupMsfhhUhMzS +f6hwAxEH6ZVSBLBjC5tNNgjZqpMdfHZswuRYeOttjNlr33EbL+i0e40jPtUF2Wvm +t+K6dMgDKvGcovKznS/U6MibFWtrJcLqT3H3SgLKfaKkY6zXYF1TUP0WqckFJTTn +6B1kjkBgorAcRZwmDLZWfaH8UxQ= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQGdNzE91XET9q9wHhIgQe7ZKRgupMs +fhhUhMzSf6hwAxEH6ZVSBLBjC5tNNgjZqpMdfHZswuRYeOttjNlr33EbL+i0e40j +PtUF2Wvmt+K6dMgDKvGcovKznS/U6MibFWtrJcLqT3H3SgLKfaKkY6zXYF1TUP0W +qckFJTTn6B1kjkBgorAcRZwmDLZWfaH8UxQ= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQATUi+WZ67HtYCRy16h/TNIID0TsKI +Vf7MOpzd4lVReHq9J8wdp+d4F+lMnAKJwAWg4247z7DTgejMloS2990FF38W9j+H +IcoGLPca8KL441xNf5MSvTSoRqOA9j8NxylMGIdxAzV+INHw7v8xKpk96yoez8gK +6galtx5Pi5zvrrzTJiaRkGT4ivQW2G4+evM= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C2 +PeerKey=KAS-ECC-CDH_K-571_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=014662b261d0bc2168642bfa4f80c4b3fe8176f604ad3703f443ec7aaa3dcf3c5465b869a8fcea60b8f55ce7118806c5d28a04848bd961db0061209b59bc02979acce9324d7c0c31 + +PrivateKey=KAS-ECC-CDH_K-571_C3 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIABVHQ433b8teKuaS +WEW7+wO0++glVhbsf72XtI8RJpIhn08SdebSRT1bzzusQQbwFhuBGfSH2ItfjI4I +s6oXuD/gEQLXY5LToYGVA4GSAAQEJ+LcEe5SI72cPZQYx5EUaC+R3aBufYjDOafl +bg37Y2tuY/3oo4EUbstwXKIC0rc99AhFF2PFFmBmqX/05PMvC0zJQjRLCy0HYMij +iOLuon72g4x9RQUuOMvuIJbL6J93R3QTQHZljfkMYsfcDj/emV16mQkJkwCatsU1 +Z329s3bxg+tQktLLaog3tr6jXc0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQEJ+LcEe5SI72cPZQYx5EUaC+R3aBu +fYjDOaflbg37Y2tuY/3oo4EUbstwXKIC0rc99AhFF2PFFmBmqX/05PMvC0zJQjRL +Cy0HYMijiOLuon72g4x9RQUuOMvuIJbL6J93R3QTQHZljfkMYsfcDj/emV16mQkJ +kwCatsU1Z329s3bxg+tQktLLaog3tr6jXc0= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQGvyUuYsmWkXGpcXZx2g9wMulSCkl+ +yDH03HdqyH4BlK+ZVGxB0IBI6gbakjXPE2nD6lPmuMu3p/1CljVFSNRO30Y/d600 +GwIClNX35zbc2JkBmOTg8LOYuKxqh3ZK9gFZYjSi4WLJxmfkfrPZh++66wO142ma +OO+VPHT7KP19ik7Fo2MZzMRKGaqIIB3ay/g= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C3 +PeerKey=KAS-ECC-CDH_K-571_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=051ec4db0622b7b1c798366453c70f959376ea3942aed2e931ff62a4019eb12ba5ff119214c8bfd8bdb66e62b562400f2d3d48a84b1b3baad3667f735ad4d0f183bdb91aaedcf1f1 + +PrivateKey=KAS-ECC-CDH_K-571_C4 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAMe0JSypsZLF/qqa +IQ/YTi5IMgJx8Q9n6p6zCw3oCG1Z2uBCWf0SsIbYkOItRdJ9fIRV3Petp5bjXjox +ODQsxza8PtN4HEEZoYGVA4GSAAQDJWI4OOixjYG2gGBzQlTrArjrsiZFVvyYUMNt +MDVEmqdk81Hbr3u8qbmtsR8nzIihrG+3GqEO+NDQk5Kwyn6qelzBQHjMGLsAmPx2 +VtneOlGSPbopDsvkE++NlR8k6SSMtVIwn5cSf7lCns9t0Htt6JTharYOM7TucwJM +y+hm3l4X8bR43HcnobtCNxggsS0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQDJWI4OOixjYG2gGBzQlTrArjrsiZF +VvyYUMNtMDVEmqdk81Hbr3u8qbmtsR8nzIihrG+3GqEO+NDQk5Kwyn6qelzBQHjM +GLsAmPx2VtneOlGSPbopDsvkE++NlR8k6SSMtVIwn5cSf7lCns9t0Htt6JTharYO +M7TucwJMy+hm3l4X8bR43HcnobtCNxggsS0= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQFcB5jsBwWxOsZk4JluhNMrHMWJ44v +HrQKBHdUSL3tl+ejfQH+2KTgtD/026IaR3WczUW/lnHdIu7GW0r/i424nf4+SQwK +ydYC3Ze2QVruKwHP6zzSoDV4q/7Zyoe+mibYmVlah7y9lydI+moL5OtVfmnG0o4r +uhWA3HTidR18zZGMRrS+aHWk5MKQ2VnCPBI= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C4 +PeerKey=KAS-ECC-CDH_K-571_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=05b355eb5c47d8027b6c5301d2463b99c636db207792e2975ab1a53c1cbb131280288432a79a3b47271d6a2bd777298baf8a675f66be9dc72c3588d299df8b52e7840322b43c2071 + +PrivateKey=KAS-ECC-CDH_K-571_C5 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAGbMUZgNOFG0iMLB +gUlsg1BfuVex7EqE3x4QXjDQAry5eLbQvcO3ZE7T37wzymv+Q2LNjMVBdAsN6M8u +3M5FkuNPoRrCbskioYGVA4GSAAQHcfop5ZMNbf0206nnFZZ1/SPQteH9muZFSsqe +gSfx5+P1MitcFrCVVzsyZtCPDcMwQ/+z17COTgUu0/A0mjKQJepv8+FmhUcCL5lP +mXRpLbtuWMx65fkGUu4jHgo5YVadxkbRFFIqN3dBDBs1LWaAefgAELtUDkwoQIZl +gQ/mH9YOcNMMaI6rj94ENk3uXJs= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQHcfop5ZMNbf0206nnFZZ1/SPQteH9 +muZFSsqegSfx5+P1MitcFrCVVzsyZtCPDcMwQ/+z17COTgUu0/A0mjKQJepv8+Fm +hUcCL5lPmXRpLbtuWMx65fkGUu4jHgo5YVadxkbRFFIqN3dBDBs1LWaAefgAELtU +DkwoQIZlgQ/mH9YOcNMMaI6rj94ENk3uXJs= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQDL6GBb9IxfBa1sZol1G+l5FqxXuny +sdEnTCoGAjmU2zCfrVb2CzzlfzLfx9BFqEt9gFIyvjTH51lRTDCiUge6gAIVsgYP +BMIEFGlZPVdIByuayP3gIwlSibzfZasb/AhW+D6a4GyJcwO9FvXkWCPWX+yDEP1D +MrZc/0enma9PfIY44tf4WUjEPxBTTJgMy2I= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C5 +PeerKey=KAS-ECC-CDH_K-571_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=052bd78bf1326c6d91840a351d4874d36b147139882356c595b8607f9998773092a99adf70adeed19e122d4d2fec16285f000161145135d96355cba039a96335e7716724c249f88b + +PrivateKey=KAS-ECC-CDH_K-571_C6 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAZkNFfosyQ54PUMi +AXhLq1a20p0fJmWnbNAT65b2MA7Y92K3ilWWrH6MHnYWfxB8IEQ7GscyEB6fCsoS +VRpTbRUt8rPbDyDeoYGVA4GSAAQHbD1y8OcV8kkbydmSeKjvPDkLOpbpmXs35be9 +il8Hr2j44O44krY/8RKnOoSfDoSngtT7Qm618vFa2szp5UdqbazPOn+popEFQKdj +gjWZ4MhgJ7rMjLsw46JGcnb8T35f1O04XfxviD/te8pp3yGgZotV69KS2o/WNWo+ +xc0cdiwBRzqgZwBMrO2tVk/gaRA= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQHbD1y8OcV8kkbydmSeKjvPDkLOpbp +mXs35be9il8Hr2j44O44krY/8RKnOoSfDoSngtT7Qm618vFa2szp5UdqbazPOn+p +opEFQKdjgjWZ4MhgJ7rMjLsw46JGcnb8T35f1O04XfxviD/te8pp3yGgZotV69KS +2o/WNWo+xc0cdiwBRzqgZwBMrO2tVk/gaRA= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQD5j3UyYwVE2HJkCt2OuMvLW3nWVP6 +PWg4wdYT1Ej8pzvzAtMCEqltMrlUnhfFzzlcVlGR9qItrE2nweGp2brobr+3LILq +GZoEFgmrnBLBXlEnAF6+/2/R9ztpEu0HCvh/X/wh35A93h1xVYLdL2mQQCAARc26 +ns11isTQhNTI14IZ9vrZTTQa132szau1Sis= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C6 +PeerKey=KAS-ECC-CDH_K-571_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0226c28e5a6bc735935f9df2c1b02d096d4dee41ffb95a67905aab8de1b2d8c66e2bb471293091438d3f05df7e48003e58a958b72f839f7f2e2c54287fa3cadcd41a2542ae4ec03a + +PrivateKey=KAS-ECC-CDH_K-571_C7 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIACsJN+cx9Z3d3w6U ++6krsabOuBnnZZvPbt1LSvScLvJcW2A5JW+Sg2PhhASxZT05mAVMLCWj+DoMVUih +OePmoYB1Z0bNNO4poYGVA4GSAAQCcMTADeJwkBDHzwR6DOabh/QdykjTW3H7pLJY +iG1zrkLe+4ZTlRwb0+tM4OYXWpRsZ6+md1NHXFH9UlsP2fWiba/KMZ+qXhUGaAu9 +woFQX10/vil0SpmeB/9hJXaZP2+L4xE9se5s8jeZhnu8gKFAN2qbYydFH5i/j9Hb +RvnZzAXohwTVcS1FZ+HfQNOeme8= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQCcMTADeJwkBDHzwR6DOabh/QdykjT +W3H7pLJYiG1zrkLe+4ZTlRwb0+tM4OYXWpRsZ6+md1NHXFH9UlsP2fWiba/KMZ+q +XhUGaAu9woFQX10/vil0SpmeB/9hJXaZP2+L4xE9se5s8jeZhnu8gKFAN2qbYydF +H5i/j9HbRvnZzAXohwTVcS1FZ+HfQNOeme8= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQG+Rp84Rupvy3h/gcPnchDu3F8MG2c +Y7UHjSoRMj8gycDXt3Q9MR3azc9d0A9JixmWcseK4l5oZNYr3BaTXW+42tIILTZ2 +6/MEWTxbrRLD1lXGYRx8qXEfnjKij+5Us7gkOWKjxV1B8sGF5MWLeimY6XgCG5W3 +JGNdrMvX/DDSByB5e8KRNixVsCSssr3PPVk= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C7 +PeerKey=KAS-ECC-CDH_K-571_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=051a3deb052d3e99bb6ab6c6b284db2c998e9bee543e02e57f1b13fe9fafbfe53a89658c58eb947dbd178aea2f6cb28e305c9867bd65bb26f71793f90c984ca11113e1a8dbc8f7d1 + +PrivateKey=KAS-ECC-CDH_K-571_C8 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAc1Bz/diQCqDTn4K +uQj8VJQPaXtQAipN/tjPCxPX4O5SP78z7paTiV+RjZThWwhGVdYbIpTKUcQSP+Xg +ho6dDRysITjwV3oXoYGVA4GSAAQGEHl7vG2RMRgK5Uq2bmeAhJJYNpdBRw4HbPBe +B4W7TnkAuQjTjY2rO5QnuVKt0g77dYz/gK62QcTd4e7aVQnzhtVlhVlgnO8GjSUV +9CWg4wN1RzQvG2/5MXY/UFLlNupPeDd7XJQUWcjCIBSCr8882nOQ6eXTGUUYZMoD +aDVBqyzXep2I/XphDKhF7lzT1Jg= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQGEHl7vG2RMRgK5Uq2bmeAhJJYNpdB +Rw4HbPBeB4W7TnkAuQjTjY2rO5QnuVKt0g77dYz/gK62QcTd4e7aVQnzhtVlhVlg +nO8GjSUV9CWg4wN1RzQvG2/5MXY/UFLlNupPeDd7XJQUWcjCIBSCr8882nOQ6eXT +GUUYZMoDaDVBqyzXep2I/XphDKhF7lzT1Jg= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQFqyp/EKyJ+YxAlYCrwRrZDJM2Dmqy +gpILWdMWyp8rI661CHbLG8vo7prmtVM/3NEa1PhtiRjWY4nah8mL8dYyO9CUfYCZ +CDsGieGUcnZ5HcuVJxg+MqCAcrfgPcrRdf48/Xvu/ISNzvSDOAxgBUEThccCfJpS +tgpuU3qHU4DSW8R8e/I2TdaKZvIdD1eGakI= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C8 +PeerKey=KAS-ECC-CDH_K-571_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00697c751ddbca7034fb4d3fc1b2618daf78cdae464e8332d1215020c8f896f4864c7a6f2c61a363f730f58fd3bdb4f78a90b40aeb83b4fbc1d8d37cf6a27a6f722c68a82979fa16 + +PrivateKey=KAS-ECC-CDH_K-571_C9 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAZ3/DXKosELE6S8d +rnQHv0oQbNpWTbdQjlp2sDEwyR1eXLzy9XjC6d7kOEn5Edd3PUwmfigsJ3tzH4im +7w7t3VIPV+dD6/lloYGVA4GSAAQFu2Cl/o47Fzz4QT6vQToyhqWnqjePIURsYQV2 +lgEnRtAtEKgx94XJyWVh/8atT57N9JN//9jmmECOZg/olvftRK9rO0LqhJ8Dfjo1 +5Iqma9hRxZ+FHUof8zTg5YnawwmGrNBtbrjOI28qlojyeKFNz+BmC1+g6X7Pzrv1 +tA09P1FQpVRay6YjnABBmsctwsw= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQFu2Cl/o47Fzz4QT6vQToyhqWnqjeP +IURsYQV2lgEnRtAtEKgx94XJyWVh/8atT57N9JN//9jmmECOZg/olvftRK9rO0Lq +hJ8Dfjo15Iqma9hRxZ+FHUof8zTg5YnawwmGrNBtbrjOI28qlojyeKFNz+BmC1+g +6X7Pzrv1tA09P1FQpVRay6YjnABBmsctwsw= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQANAkcOsb8UpnfGPFi6veiB/wVQ6pJ +jnJy4VqSdy9XdyIpBpRW4hnJwocr1TeDsPsTRfXoRnTENEEpoxQUa3Aw/HUZeiDF +iKoEnjo/XuZYdeFAEImXBji4B9+XVopZlcj+L1Akc7g/WMVWxfIU7W8D747OAUAa +ITS8BB9mki/MTjk44MbTAutCIAZ4qXE58pE= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C9 +PeerKey=KAS-ECC-CDH_K-571_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0322517da30e010aeaa2ec9bad2745d8e67f906294ecd6b1d16808be3837f79070d0e1bbbd617f4b8b031d3b51ea2acc59de408a130138c78571f8800fa907caf550d23323d1c818 + +PrivateKey=KAS-ECC-CDH_K-571_C10 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAeFBbUKZJsq+pUe7 +J3ZxClL3EwOTCBAgMSs5Yhletu0XxtQ2vEaltHp6qs+PgRf+o8r6FmZcwYRbDslP +r2h1ebHBFroYPoJfoYGVA4GSAAQGVmClhoihZYipwWuCcgQKMK/jFQYwZ2Aj/hZW +ht+9pk/IWZXdwYycWwKb/71N/6j2KYnGOaaGI+yngAnLCI7hy0LEhVt50wIEksOG +fxN78nh6erBWjTB5uNmh4LC6XSnQx7phbQuydyXaLKa8Z78IT6tSWZ7UKw70h0NC +PLxvQTVpLDCa4mMMxKU5C+k/J0s= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQGVmClhoihZYipwWuCcgQKMK/jFQYw +Z2Aj/hZWht+9pk/IWZXdwYycWwKb/71N/6j2KYnGOaaGI+yngAnLCI7hy0LEhVt5 +0wIEksOGfxN78nh6erBWjTB5uNmh4LC6XSnQx7phbQuydyXaLKa8Z78IT6tSWZ7U +Kw70h0NCPLxvQTVpLDCa4mMMxKU5C+k/J0s= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQFe3xlvFHoe9rTfCtNrmf7AIznH9MH +LkG3fFYtfEF0iHKiC++FF7pL6JY33emOK6GzsB9jlAcT4oI9jatopcx4Vh3hQIXk +z4cAundDClVgCJ36xPaLTzSTejhN1ge8u1+rVnen+uCe0Hz63jmeh86f3ZOXxoGq +M3jOO8grAH9t5PfLltrfVaTIc0o385pcLyU= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C10 +PeerKey=KAS-ECC-CDH_K-571_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=000911ec1cf82a22c849b401dfe56453a06f4af32644ea8b63135b68a979236d05968eeadca7f0cd339d295cc58967a7f38cfad6e947a71295733e42ca3c1ba9b4ff6195607bb530 + +PrivateKey=KAS-ECC-CDH_K-571_C11 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAZY2Pu8aDlvpfY92 +Af5A/0AQ9JSfAWkIqQbtXNrxIh06WTs6Rna+r9H6FLwPfFM7FwhvIH+cSEz8L7w9 +sr5BI6jobztJEczjoYGVA4GSAAQBsS44kU7gB1qIjW1hzcdXDFEdkKnjoOJzjDqZ +gauauppsYUYLrQeaKEKaUgfSyAGvL9zto2ZEChFoZ2Xpunf3prxVAS1MlRAHDt5Y +d2Zf1jatz9ByINdF7XrAqbAgIVn0UMn2wbg3GSpp7mrZVTJ+uc0yagWItZcj206P +0lixHbiIpT6xTyvghRJogykFmJI= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQBsS44kU7gB1qIjW1hzcdXDFEdkKnj +oOJzjDqZgauauppsYUYLrQeaKEKaUgfSyAGvL9zto2ZEChFoZ2Xpunf3prxVAS1M +lRAHDt5Yd2Zf1jatz9ByINdF7XrAqbAgIVn0UMn2wbg3GSpp7mrZVTJ+uc0yagWI +tZcj206P0lixHbiIpT6xTyvghRJogykFmJI= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQG+nR37exfHnQogfjXsq9WN1ET6ZK3 +l/04frW1PDPGunI2QXssfm40YmfxuMbXhX1uCPmmDobeI9pLNoQk+wA/lrTIn10k +SnQHPh/t9i6MgSg2IrU+ss2ye2TDwd142gyQ3Ww8d2rRRjAuQ6ulQTebyPO93C4Z +/xXZZmTOLQnrb7WxOEioKzG0UtjoTaO4Uxg= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C11 +PeerKey=KAS-ECC-CDH_K-571_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0724c979affb3ab8d307529759bae5fa67319d441851e5817fef014350e3014e068428c9dac395c5e7b9e5b8877457b3e4625ef49ede4ae3626755eefc3fb3cf09c23e8a5a9f8c25 + +PrivateKey=KAS-ECC-CDH_K-571_C12 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAKGaDt9Qg0f0QCzs +vOEn3GQQsZZ9P4nms7oItIqtCM1speXRIozcxBocOA8q6QUtc9t1UOejwdhXBWyY +lH9bLHHDPE7rwSEMoYGVA4GSAAQGKfcFWDCHCOaSmxrQ/jEoqK9/llkbR8uOosNF +QSCm05PtmJ0TIxxmGWajeLln76ZNPAk46cC4sWyZ1zSb3Vni1EgE+P7h+0cGpeUP +1QJNiVPjIkKCMlDpmMpgK1JZlAUSlzWodOgzs71z16ncU63qCSuo0kIH9epWV6KZ +GbiKbWP9CpQ7Vt3kyEeEgbV3I+Q= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQGKfcFWDCHCOaSmxrQ/jEoqK9/llkb +R8uOosNFQSCm05PtmJ0TIxxmGWajeLln76ZNPAk46cC4sWyZ1zSb3Vni1EgE+P7h ++0cGpeUP1QJNiVPjIkKCMlDpmMpgK1JZlAUSlzWodOgzs71z16ncU63qCSuo0kIH +9epWV6KZGbiKbWP9CpQ7Vt3kyEeEgbV3I+Q= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQBi7bL/L+67UaFZLNo8LCrw/vKR9zB +nyyEa/ooc3DhuRL2tw4IUZ9XfwysMlt5/Wa2sjqh4q4mK80ueossLZjZ7XelTHKV ++Y0Fvpu9kXcrtCJmq6nIk+VmcM+2bK++RAHKLLV2W0aVBISFl8f0RumYFHRnhxWK +g+v443loVzY6jgT4dCoJ1+yhY4bWD9fIWN8= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C12 +PeerKey=KAS-ECC-CDH_K-571_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=005a526588a3a2ce08b20925e83987eb0a1e68f997102df7f9af83823ac8e06abbd29c04cb1f974ba9c9ac49b48b5af37679a39b532d359cdec3d41b3f80a1ee12c80276256b738d + +PrivateKey=KAS-ECC-CDH_K-571_C13 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAEysP8wAc0RCzdgO +r4JEEsIOqe6wPUO5mdSd5hhzYCAgorPEeWX29FO5G3osHZPhOolURTPjWhIs/IYS +yGkLabt6VXh1+WCyoYGVA4GSAAQD4hHDtJhpJ8Q4jRaAy0dw3ubHgmZyRYLGbMxQ +xssoI5R01SH6zHIGr2uynM7XM+27wNILkmTOY9lDcYjj0xwOC8Pp+diEKeQDenxZ +ASqC1ZzB4vD9T9dR5XN6y3fyoHmeCvOJlqteEQkKY5bMSA5vKqvY+tRGEWkeWCIR +X9SdKgAMm0nR9JZOJNQ/u4H6h58= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQD4hHDtJhpJ8Q4jRaAy0dw3ubHgmZy +RYLGbMxQxssoI5R01SH6zHIGr2uynM7XM+27wNILkmTOY9lDcYjj0xwOC8Pp+diE +KeQDenxZASqC1ZzB4vD9T9dR5XN6y3fyoHmeCvOJlqteEQkKY5bMSA5vKqvY+tRG +EWkeWCIRX9SdKgAMm0nR9JZOJNQ/u4H6h58= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQDIYS2hj4stbxxuv9ba1ehBZSDHMEa +nl7t7EgE4gFuPdBkz/0Soe6g9pMpEd7TRazlwf8lC5ZI2TuVM4ba6bVijDxiUnuJ +BRkH94PgNBqHHmJW2jSeu1OfiHZ9fawVEePD5NQ7D9MdXdLC8PF26sVEqHH0K5g/ +j7pN9nq2ojm335lyJjBLcxZdli9OHS0Y3p8= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C13 +PeerKey=KAS-ECC-CDH_K-571_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=049db68dc9fb4cfbad8247ca4fe7c573c0640abead8f319194d665ecaf4f04b61f84f5df0d8a6386f6df04ca1a685a7394567eba5deb9f739b1e623ed6507021593f0e22e2dfc3f6 + +PrivateKey=KAS-ECC-CDH_K-571_C14 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIANUUFE1FSLz8vPVw +Cffo7hBLFUVvSRgmvf2bpn6HH9vY/ISQ7LyyaQkfx1KeXlVxOoHeIMDtAeyzFZrm +FCS9vFZTcyWH0elPoYGVA4GSAAQD7l+He3N9rkC6+R4MxYHf6NKR+MRR1b/AtpDf +cCWHXZVp1SAhs7aJDgGiupWJnikoqQLNXcgUPAfqJnSanJQGi1w0xZawlD4Fjhul +FqgYyumzcIYofgiAg+K0If7wtZuoFqsDE3XQnXr31XhmdEaHvju0HOInbTo4+Xu7 +n7WfJKkvAIWwTuXtGsDvpnE5T3M= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQD7l+He3N9rkC6+R4MxYHf6NKR+MRR +1b/AtpDfcCWHXZVp1SAhs7aJDgGiupWJnikoqQLNXcgUPAfqJnSanJQGi1w0xZaw +lD4FjhulFqgYyumzcIYofgiAg+K0If7wtZuoFqsDE3XQnXr31XhmdEaHvju0HOIn +bTo4+Xu7n7WfJKkvAIWwTuXtGsDvpnE5T3M= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQHHhZ+WeKnCev0vj2D+53GntdJ46uK +VOICw1+NRd6qK9qGwq+hsKBHVNGImPzdmxhfHYui4YCkesKRu0qtj5l/c7FCO81+ +m5IFcRkIW8fLICPSP4gQFCD59Qjw25T4377dXL6IzsgKnccI32zM34FddbFGKA18 +0uuXzxp91VC+Ujgk+TKnd2efLun2bUJY3aY= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C14 +PeerKey=KAS-ECC-CDH_K-571_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0343c45daab4f91e02ef9bd6e1cd157b00ab0ab0a3e0d9734918a1d896cdf7cc1212bf74d7bb9bf96bd4abf42df325756c407217f44a5950c2b66af820692742ed7ebe14e48d2d88 + +PrivateKey=KAS-ECC-CDH_K-571_C15 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAMzG3KWphVg84AgS +w9B4IvY0HHnXjBay565Lv1v/rBrNneq2eBk/j4mw4qrlLjAxFETdESU/ltYts6v7 +F+Qj8N3w6ZEIEVTDoYGVA4GSAAQDgmIVNDz9Stlo1XK6st7iJ5+ejv+g/4Cw313S +6oIrUCJ05QfIfSQp3Yu9um64q0M7HuHK06l8fSRBlP2aQ/Ph/zMUTi24CGQHD0UI +rjkc4kFUs4hzrwCC2ViVrJL9GqMhupO+70BKY/exr6H+7Jl4hVI6ZoitqU3UXrMs +p/G7h+Y8Tel0kxlsO1PPg9IY3Dc= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQDgmIVNDz9Stlo1XK6st7iJ5+ejv+g +/4Cw313S6oIrUCJ05QfIfSQp3Yu9um64q0M7HuHK06l8fSRBlP2aQ/Ph/zMUTi24 +CGQHD0UIrjkc4kFUs4hzrwCC2ViVrJL9GqMhupO+70BKY/exr6H+7Jl4hVI6Zoit +qU3UXrMsp/G7h+Y8Tel0kxlsO1PPg9IY3Dc= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQHTxp7XPsO7vHhXmNRLHMYja++iOjp +xCBzsrZSufAoIU8L7HkULYiJQWq/eoPin0eee8PKZX7woQwuo63jEXwNNp2swjOd +HBIA6JkqVAdnUwKfLA6djBZua6hIlqR4X//1mMSCPlRh/wBUkLt/tth4rDT0J/2d +tIy98S65gm1o/SzxcdTWHD8nXUSUfU30x1I= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C15 +PeerKey=KAS-ECC-CDH_K-571_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=04a565cb3e15236a7f6c413afeb419c082427b10a6d07ff87e81740716433c06b3254414381e4ff9860340dd6201ab6621d162cd12047a5515ab1d65f20c97eb3d7132642f8ad58a + +PrivateKey=KAS-ECC-CDH_K-571_C16 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAYhiE2WL0X59wzTd +gAOSakR8NKGX7l1tC7xG6F7Bz6aAKFjRw2cnbKVyuieqel0eIWkCQWtIr25Cd5Re +Rl19hA3/FDhUPKpGoYGVA4GSAAQEf2zEIQfEDBaNxnmoZPlptT91YlcRO3UCeW76 +VM3M5wS5NE7kv5ZHUtaJECYr0mq2s0cIRASygwbKNCXymJTOb9QpPFlzUi8GDP21 +RnZ1p4mSO+lzxmRdvibQCjnU6BJVIXKRo4gs+o+R9KqCFNNSTJXvaiTkezudDvVf +ZwdWrkpNnGXwdfQXCy0YqvvKAmU= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQEf2zEIQfEDBaNxnmoZPlptT91YlcR +O3UCeW76VM3M5wS5NE7kv5ZHUtaJECYr0mq2s0cIRASygwbKNCXymJTOb9QpPFlz +Ui8GDP21RnZ1p4mSO+lzxmRdvibQCjnU6BJVIXKRo4gs+o+R9KqCFNNSTJXvaiTk +ezudDvVfZwdWrkpNnGXwdfQXCy0YqvvKAmU= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQAS1Szzv1BX16qykrk5drPvOIMuhky +ovUFSbzTFjABetIUdd8VT/N74TymGkxgM2sz0P/HYqqenp/G5v0XJQteQCK1UUHS +P78Fb3yNZcVo3pW9FmT/9xQp7HOJh2l/IX3lrfNtFKgLb+WF5GheA8gYOKvt/cBa +HgFAevSrmJ/B0Sc7qKGCxGGFbV7/5wXX3+U= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C16 +PeerKey=KAS-ECC-CDH_K-571_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=047265831f1f589b5f30806e2fb80aa7844cbf32b6993384beaac7d992b327b97dfd0bb89ca09e711507e846ed4ad003e7115fa8843b23d38f320e43b5eb506bde48fbd7af4983b9 + +PrivateKey=KAS-ECC-CDH_K-571_C17 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAEwN03FeiIjcIiIG +nn9hGAFoUUAwPha4tENDPV4YpLGAPVaAQWrr2nrn6USRVL40an3LNsHbInRGc/s7 +JF5YRAeH7T3sbT21oYGVA4GSAAQC+yQessKKGwZ1tXYP5WY++mA+sFkIQvRVlz8F +c+FIpH5j+X6N+aVwsGVdWvxCAZ/pX+RP2wKmgnHYLfWAAQ+R3/DLPZvaiZIDP5Op +3DnYdAO2qU3AYy3sZ1eELQqvitjEHrtjcFi/wRwZo6mr3fIEIB70+W/pYpIzpQcK +CHlNFEcAkeMM3Ydqr2VAdicjMjQ= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQC+yQessKKGwZ1tXYP5WY++mA+sFkI +QvRVlz8Fc+FIpH5j+X6N+aVwsGVdWvxCAZ/pX+RP2wKmgnHYLfWAAQ+R3/DLPZva +iZIDP5Op3DnYdAO2qU3AYy3sZ1eELQqvitjEHrtjcFi/wRwZo6mr3fIEIB70+W/p +YpIzpQcKCHlNFEcAkeMM3Ydqr2VAdicjMjQ= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQH7HG+oIEZCpxM3/gJ7Stlp3gAzRs7 +7/0eQATRJqw1LSQjXHl6WlZ9rvc5PSdmOBMup/D2HlUNwlHTQfZhAvlsKr9+43wP +ye0A78KshwWy+cnAapEKMExCsa1TEBrrDRRjGdwkgVx8wZg7HK2R1fnG1e7xZ3of +LSvddaH7TFeWpMVpZKo+Q/PaJsc37dnLCRA= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C17 +PeerKey=KAS-ECC-CDH_K-571_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=059b62c25c96955b8fb4deddcf90ebe6845ee71ea357739273d6d67f21a0c47d154add9d5d4d2b657fe1988ad614b0b4902faa92fe999abd754ad33cd6b92fe2f6a68a6f2c1eeb27 + +PrivateKey=KAS-ECC-CDH_K-571_C18 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAH1UGU/CJsw59kDT +0XublbcLUfmK1coZkVZhCNg543fiG6SMv0QVMLM0HdxhsKWBQaqmZTAkH6UpUF1w +gEslYMW+SBMQuZYtoYGVA4GSAAQC7V86LvpKsPnbX87XsTAN5NRXqa0IJ0V+XhxL +wV69GDd13ktzwfgg3UAzNmEA5ItBZNBOn7bPGkvbVRIqhgBfvQvSzdvJX6cDJ/5l +TvaFY8yIiKzKhRY8KxVPtwsPSitYw2OIoMJfgKTIh5d9RgANxNhulc/Y+QZcAOso +ZTyPtHe7tcY91HuDyl4Phx6e7T0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQC7V86LvpKsPnbX87XsTAN5NRXqa0I +J0V+XhxLwV69GDd13ktzwfgg3UAzNmEA5ItBZNBOn7bPGkvbVRIqhgBfvQvSzdvJ +X6cDJ/5lTvaFY8yIiKzKhRY8KxVPtwsPSitYw2OIoMJfgKTIh5d9RgANxNhulc/Y ++QZcAOsoZTyPtHe7tcY91HuDyl4Phx6e7T0= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQGcIaGtPWtL+xFeq1axKPcSGekd+tU +/A1JNRG1Vh6hUd1Mr11DEZg1ALSMgEOvCeP0BC1aB+vwUKToAdru8zF74JOVUCBF +KykFJchoJYO1X37OxZuSCEb3XRHQIen/sgAYY59quTAiRywZLTmOFQzcYwoR/PlC +5dI4zWwUsw9Eok0vhD7F0TXdx6vaVgR6vCE= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C18 +PeerKey=KAS-ECC-CDH_K-571_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=02777c72853b76b29f69d3aa27a1659789a025af0633d833b22b57bf328d231ebd128bf96a4c8a7ffd2ee7a51e5ebb7a8e5bca20e4ad49671a2123dfbc0d6c40594e04765186de06 + +PrivateKey=KAS-ECC-CDH_K-571_C19 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAQdAuVgoUkIEXNU1 +jX/5Iyt9fUE69+IFwoX4hJLvJ6L7hQ4FZ+wkxIDHWtMvcDQgJchiZ9vk/4CixQnl +uaRRMOmefHzIzG7OoYGVA4GSAAQD8/WFyv1GpmO2z4uDI++RWdUZXTEY8+3zhzLK +D/c7LQZdnmmuHjl4ss5txhUA97i79vanC0e7ZMxP0ZW7pqyTK3C+r+F0FIoAsVZv +5hnyzACroF4kpszLyRM4su71U9oNR31sjArExlbhNNvPMf+xXGfVib0pGPEXSQnl +QoxxyQ44xOEbViNqv6HeaoV5600= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQD8/WFyv1GpmO2z4uDI++RWdUZXTEY +8+3zhzLKD/c7LQZdnmmuHjl4ss5txhUA97i79vanC0e7ZMxP0ZW7pqyTK3C+r+F0 +FIoAsVZv5hnyzACroF4kpszLyRM4su71U9oNR31sjArExlbhNNvPMf+xXGfVib0p +GPEXSQnlQoxxyQ44xOEbViNqv6HeaoV5600= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQHznZ0QD38YoldceKrWHznNfJ58S99 +8xYTNb5D/CkI6nNvb1i5MteTr/ZvMyc11NOPBcsDzydcoOANofVzgeCL/rUBeHc0 +InIH1mSfPZHnv1+N5hG9lxgYEG3y43k1u0ZM2edGlinGrn5/KyJAJ2yw7tt6JtDH +03f0AJod1Ip5PMmT+w1KBNsdutRJMwS8XA4= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C19 +PeerKey=KAS-ECC-CDH_K-571_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=02c2ec1632e83416182a9a438f7360b88061bab84f5bded3dd8a0c87baf44507df94fdcf99353b107e61cfcfc8af071b3aa8cec7b34a542bf2ab8ea0bd9db67d66b428c9a6c14458 + +PrivateKey=KAS-ECC-CDH_K-571_C20 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAMheXS3tW8O2tVP+ +CgIxG3K8XNyOlt8XnOV1EcJqyehz/B92zd6afY5Sp+m+XHdTYgMx6Jd6mJArSK6Y +mc6KamY2YRJ2riODoYGVA4GSAAQCiapSCf57Gte5xeDmMLpeApKeobHxFNMKBkgB +K/Ap4GZFPy0o4dUDZl3Qgz8Lo35Fg7Q03ZlWEAoa5uVPltk0fYBnQdOnbjEDOv6H +sp7e9Ef/WgLmP2SQW19TrIVs/XdVrVQoEuzdVo6K4fnTL+oPAgGNz9DhbWpqJ5e3 +49yFW/22sNCyUl4UNnjVOb+MBnI= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQCiapSCf57Gte5xeDmMLpeApKeobHx +FNMKBkgBK/Ap4GZFPy0o4dUDZl3Qgz8Lo35Fg7Q03ZlWEAoa5uVPltk0fYBnQdOn +bjEDOv6Hsp7e9Ef/WgLmP2SQW19TrIVs/XdVrVQoEuzdVo6K4fnTL+oPAgGNz9Dh +bWpqJ5e349yFW/22sNCyUl4UNnjVOb+MBnI= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQEg61zguNIr8fycdUNjTm4FLfW3AxW +KmulVlaARb0tYgkGqxEG+RN/9yWJLoQ2qM17iIkqMvGasmnirTDX8OwA46BS+7xG +YwcEHMSw8ZXcc8So4QYF8qOCkjq9I4HyTkq71AHgh8UNGPbasBol236J3/9oxmNJ +T7TQh6gWuFRE2IK+wqwl5C/eeOvMp5pv3fA= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C20 +PeerKey=KAS-ECC-CDH_K-571_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=07e1d202a54d34020939f7aed56931f21b206761e4fc79b9a7b320f81077be322ae7809446b5b3ea701618ecdb0a1796ab80407a281bdbcb4d580131b61f8743bfef7a4d9c5941f1 + +PrivateKey=KAS-ECC-CDH_K-571_C21 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAFOkjP2o7iMs6jVJ +knsi83XWCWVgAl4hMWHUPu0C0HNl2e3nyT1FfqUeojaeh0Y+3b8loGux8ID7R2MH +SoKD3T1p8d6GUpXjoYGVA4GSAAQEeQ+dtgC5oKV+A9J0o9I6VaoNhrLW+gf6/jyd +TDOTdx3eiccKZHCjG60QXCHUhEzXv8O1lzj51sUoxBTVJPiODIYuThev9FQF3BLb +BOJInbikbN7/n42dLgDQJPZWx4HrTS2xZ2JLOnCt2qoVjKAGAdTK0GWRe+vnZpEv +q6mYf8xfyKeN0hZDqmUOakp+IGE= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQEeQ+dtgC5oKV+A9J0o9I6VaoNhrLW ++gf6/jydTDOTdx3eiccKZHCjG60QXCHUhEzXv8O1lzj51sUoxBTVJPiODIYuThev +9FQF3BLbBOJInbikbN7/n42dLgDQJPZWx4HrTS2xZ2JLOnCt2qoVjKAGAdTK0GWR +e+vnZpEvq6mYf8xfyKeN0hZDqmUOakp+IGE= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQHpejrSWhJehG5DGDhPV88YcaGhXOm +ttt8IIqFbVTnT0No4oEAueC/SfwxBOFG+9p4RiOjbZ8B8j6636sE1/SP9mUGxpi+ +3REBPblo/HzTOMuOMEKhcfowb5q29shl3cW6X+mUow2PwfoScZHwjk4UuaoIalL7 +yqRtIhB/1t9TEItT/gu5a8l0wDqMZSj5eS0= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C21 +PeerKey=KAS-ECC-CDH_K-571_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=07f49ee5d822b17e3f1ec9946fad8d0a0a6b327242afe675806b3e6b7541745e21cd1b70df926af057a9f8deae4cb9a1edc782014426152e8aa4cf6a4080dad4678dc8ff0d9e1af9 + +PrivateKey=KAS-ECC-CDH_K-571_C22 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAVpeWUb+LJyubUEs +YYwb0HckQysvHe2xMn2Kmc6DDmsDD0AlwUtOPRkS6pp4KQoc/H0BiaMMYUAQyHMU +ahgvY5GTopEu3NBKoYGVA4GSAAQDFAiH6HA5eXhp9dnbUNkbpp0L/cWmd8cAYQVi +9oDZUaXgUXyy+WY2fUjkI7BG205ovBxLMYPcgL7hJuiQFJlM34PEMSo+XqcHuNcG +liyxkvDtFMTacQ0bGwc/2MpJepQ3mnRUycPUzm5f0uY4aFKnfFQ1q7I1NtzIOYbO +3UUSdS8pXKUA8FX0YnY8KftnjKo= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQDFAiH6HA5eXhp9dnbUNkbpp0L/cWm +d8cAYQVi9oDZUaXgUXyy+WY2fUjkI7BG205ovBxLMYPcgL7hJuiQFJlM34PEMSo+ +XqcHuNcGliyxkvDtFMTacQ0bGwc/2MpJepQ3mnRUycPUzm5f0uY4aFKnfFQ1q7I1 +NtzIOYbO3UUSdS8pXKUA8FX0YnY8KftnjKo= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQBPKr4zi4jIc8lbytkqomt1paMKYYk +oivTjvlN6zpw6kTOh6lI6la/DulAcTT4yXsXsfVFYf93R+P2tlb4DWB3jQW4xMu7 +zzwAR6Lco+tnVLCp/Rawgfykl7Kd0uyeanWW0GsFnCqxiQD8xYcVJHJ245DfHbqy +a6gSNaTcZzgjf879OBK3q0NskmxQxgDm6Qc= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C22 +PeerKey=KAS-ECC-CDH_K-571_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=058cd5608dd9d64d4d822baeca123358a4d7e56d3777ecdf569a149c2f85ed35479eaeaababd0b026dc3b56aedafedfc8491040413f85b669d8512a3ef7bc8fe8706b5c7585370aa + +PrivateKey=KAS-ECC-CDH_K-571_C23 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAL1Y4ZwF336ZvZYg +cOC0x1dgQoWER+AjtBuyl0Womkh03+MloV040vuehw9BndFfSqrGXbvFrCxUD1fN +sORbyGYhcm2SLRSqoYGVA4GSAAQB5LKid93Xjy8RnAW2rh6noqdElh4IlA9lae6I +CMU7x6EhOAZO1cjCIu7yd05wwovOOmwF86ZU4SEAarYryUOB0Byg0bCCNNYH7tjN +eoo1SbDZ74eGh579ycD0zpCzmRozy7sdNwTbk1ExOLGaUOysiA5XjeIQRvA6IABI +GAiEvELPmq/ljMHq9TbW0l8VQdg= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQB5LKid93Xjy8RnAW2rh6noqdElh4I +lA9lae6ICMU7x6EhOAZO1cjCIu7yd05wwovOOmwF86ZU4SEAarYryUOB0Byg0bCC +NNYH7tjNeoo1SbDZ74eGh579ycD0zpCzmRozy7sdNwTbk1ExOLGaUOysiA5XjeIQ +RvA6IABIGAiEvELPmq/ljMHq9TbW0l8VQdg= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQHQ7PJZag+6fa9uZAaHcwfeBllRKiL +nPgRf4ntFXTlxdgE/EUREsJXh34SsKZsaTxmVcErukU12Z1iQF9Knc68BW2LfLut +oSAD76WKo6jGok9DxVgf7AQUQq6VUnXbwdRtEBVgWdJje5qCmUsCSiR9KmZyS6kN +Anh7FosfofS2dJZFQGxDj40xbWcPHg2LAwE= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C23 +PeerKey=KAS-ECC-CDH_K-571_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=03bf7a59bbdd688682c45664d20c19cb2d24fcca6772120cbeed1cde762d449ebf22855627eb6b2be6e7f7c0f0034d02686f2a4488549f8cb198e02b46972bcb88914bea66dd6400 + +PrivateKey=KAS-ECC-CDH_K-571_C24 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIARRjBw/LSii+Tipn +wpx/pIpMWFowdAXQahoGeOkJ3W6vuJhmLN2LzAGd6xTl2S0XK6HEOO8PZNgBB8fo +5oAp9OCqgUoQmco4oYGVA4GSAAQAk5OY5GOIbw27SKdPVzoSFQAGaOELV5idwwCy ++ajAjNQ9bLt/Rux3wcKUsj+GKZAn0rk/1usYIQqCML9G45IfGCySYMMIR6sD1I7G +M7naFlDqdiZWs+MfJq7Afnymqvwe18tGbqrzmT4EZwSMlnux6bSuBzojDB4vdOLm +GGZs9WoG8rZew5Vbb/uwapCM9hY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQAk5OY5GOIbw27SKdPVzoSFQAGaOEL +V5idwwCy+ajAjNQ9bLt/Rux3wcKUsj+GKZAn0rk/1usYIQqCML9G45IfGCySYMMI +R6sD1I7GM7naFlDqdiZWs+MfJq7Afnymqvwe18tGbqrzmT4EZwSMlnux6bSuBzoj +DB4vdOLmGGZs9WoG8rZew5Vbb/uwapCM9hY= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQHIvHnoGB3UNri1ixdPUcPAGwyVFWO +qqKU7u28qNML9Ku5Vd62LkF5kl9sut87+HdvFdyuNVat33lxBad7f29xIGyg5uqR +4YgDXRCMoNYgyrlrfL9hfRtawG43eSYpiGVk/RR8WOVeQjNE/08fukrw/jQVKzhL +doXKrRXTvCcOQ0Iq2HTnHkCKcabIqQ0q2Xg= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C24 +PeerKey=KAS-ECC-CDH_K-571_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=06d410e9ba6b8b87b00d0f676de8ba27f6afe7e308c2e992f318fc14cba0a447316ad86e8e6c1d3345d8e4035735232c2c597e760b8800a89a521567b09408f9c7be279c137c963f + +PrivateKey=KAS-ECC-CDH_B-163_C0 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUD7a4XPej6DPBBLWp73IH9 +vQYXrfihLgMsAAQDVGZwHQsAMNCYtu0jQ9NVwkyQcnEA2LwC80HSYYYN+2Xwy38L +SI2Clsw= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEA1RmcB0LADDQmLbtI0PTVcJMkHJxANi8 +AvNB0mGGDftl8Mt/C0iNgpbM +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEA6ZHujLaxx7GeAsGOKcM0k/DvUyOAuae +lhVBhEpKozdpp7znEPZkClYM +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C0 +PeerKey=KAS-ECC-CDH_B-163_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0100fb42d177ffe6c31378e2e04e0da7376ffe8765 + +PrivateKey=KAS-ECC-CDH_B-163_C1 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUBeNzIIWQl1L9xyPKSXdGv +htwEomihLgMsAAQBHklDDN0G8udluPLMBnzUJOLnVIUAg68VsizX39Hf9zlr8/MD +j1BSSZE= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAR5JQwzdBvLnZbjyzAZ81CTi51SFAIOv +FbIs19/R3/c5a/PzA49QUkmR +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEASgomJNkhtwuPNFYXzLVVEJk4ZHkBenp +i7dJm/iV93+PyDAdbhx6n2GR +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C1 +PeerKey=KAS-ECC-CDH_B-163_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0681c9e59eb7eba769f5b6f2b06ddf1efd12997995 + +PrivateKey=KAS-ECC-CDH_B-163_C2 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUD6h555SoHCJjWo8TnSOla +yHENd/ahLgMsAAQBN4YLo0WK8Twir4Il9WHgEzHNh6gHcgNW4V3HP5/uehwCH+yp +fNQSBOM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEATeGC6NFivE8Iq+CJfVh4BMxzYeoB3ID +VuFdxz+f7nocAh/sqXzUEgTj +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBYdPzIxITAFBcxAty3DGJO5hCNMdAElp +P07ccUsNC6pb/F2LxqwECJ3k +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C2 +PeerKey=KAS-ECC-CDH_B-163_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01e0749a21fc508f76dade85435bbbe12c448bd8c4 + +PrivateKey=KAS-ECC-CDH_B-163_C3 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUBrVypq8i83MSCmVrRqXfk +cnFQuzahLgMsAAQCWueDEbD882lWajGfiYSVRq6uwwUGQOsP31IEgK++ufJnT+sd +bfSC1/U= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAlrngxGw/PNpVmoxn4mElUaursMFBkDr +D99SBICvvrnyZ0/rHW30gtf1 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEADdI15jxQCaPHnGLOyOqKswDM8B0AMQq +knq1eWlhIwlVdayUmwen0dS8 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C3 +PeerKey=KAS-ECC-CDH_B-163_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0320398f7acf791e0d602d7b94742cce58e9fddbac + +PrivateKey=KAS-ECC-CDH_B-163_C4 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUC0oqKodifo+Xllv/RgIJU +7heg0PqhLgMsAAQG5sUklKtjyJyXiFVvcWZ387SAQqAE6YJYucVvAtPttMpbCu6q +naqm/g8= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBubFJJSrY8icl4hVb3Fmd/O0gEKgBOmC +WLnFbwLT7bTKWwruqp2qpv4P +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEA4DbPfKxwBVKjoyzBK7NWB018xXNBxU0 +7C6LNX2eBp1/H6mL1E7YsGgm +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C4 +PeerKey=KAS-ECC-CDH_B-163_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=03e4de43de85223d818e5be6549c29cdfa1afe1782 + +PrivateKey=KAS-ECC-CDH_B-163_C5 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUC4XD39NwVL+Rwb5nZviKe +ExfYK72hLgMsAAQHkA2sJR3oqUTPChvy6y7+7hRnbpsAkeffZ/d2InKdWbfjS5Rx +J+f6Ll0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEB5ANrCUd6KlEzwob8usu/u4UZ26bAJHn +32f3diJynVm340uUcSfn+i5d +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEATbg0FtPOYuCfhmARhSLL0FXP8B8BzmT +TOwQVyhS4fYZIi4vXsTg+lqm +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C5 +PeerKey=KAS-ECC-CDH_B-163_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=037b178aab014d5abab305e37deed7f4798cdb862c + +PrivateKey=KAS-ECC-CDH_B-163_C6 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUCkj0sgCzsQt7yYz3r3KdZ +1ZdE0+ihLgMsAAQCzctPke19F3aNuAvis6yeCVax2XEDJDP0VabNJT6RWC0vb1px +JlXaHWk= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAs3LT5HtfRd2jbgL4rOsnglWsdlxAyQz +9FWmzSU+kVgtL29acSZV2h1p +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEB2w65KeBZzYn0Om8thX2JqFgpV3aBYwO +yPJknC3c2cJLZDQzsU2QfFkD +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C6 +PeerKey=KAS-ECC-CDH_B-163_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00958b2aaa6061222dd248a6b9700fb6839dacdc99 + +PrivateKey=KAS-ECC-CDH_B-163_C7 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUCWxe9bkIH2fsaOvAv1dsm +r4NIrrChLgMsAAQG9vWx87GPRdtPs3d+aED7WlthqRQHN84UrrJOBZFYWnQXuJJW +dJ9GHeY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBvb1sfOxj0XbT7N3fmhA+1pbYakUBzfO +FK6yTgWRWFp0F7iSVnSfRh3m +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEANZfBRbBs+7ZIg5Zs9BJ3RFTF5rFAgv+ +EHqJpzYM0uIXU01t8pjMS8RY +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C7 +PeerKey=KAS-ECC-CDH_B-163_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0393387e1dab35748f20d506a0e2b4dc0ee6c3ff39 + +PrivateKey=KAS-ECC-CDH_B-163_C8 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUAE36BMq0oiSPmSBHpIpj1 +wNzJVwWhLgMsAAQG8s3R1jDdcx7Xf5Acew5zVRXibU4BBi8vcVxNKvl7sb6LbPou +PuMUJT4= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBvLN0dYw3XMe13+QHHsOc1UV4m1OAQYv +L3FcTSr5e7G+i2z6Lj7jFCU+ +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBA2QPOKzD3CmoDhJsOF1j++Ih70xBKvY +vbfBMnyZszgg2+GK4RT7Q1lJ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C8 +PeerKey=KAS-ECC-CDH_B-163_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0212358d3f8bce69b662447333b3edbbc9b2f7e805 + +PrivateKey=KAS-ECC-CDH_B-163_C9 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUBxIxQt9Ps3zuQG60O78Pj +gm486p+hLgMsAAQBkXVXMRfdhR5u6/2fseWohOv+/uUDrfN+Te1SVz+lfIyyv8ps +ZcNnRGI= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAZF1VzEX3YUebuv9n7HlqITr/v7lA63z +fk3tUlc/pXyMsr/KbGXDZ0Ri +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAi7SRkPwzsaMjkrRqixDadiqA/WUBczK +YrbdHTFt7b0PHVML7W5VazrY +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C9 +PeerKey=KAS-ECC-CDH_B-163_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=023472fa59846f7be07cf060cdd69a9fbb27d4fe44 + +PrivateKey=KAS-ECC-CDH_B-163_C10 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUBFi2e06ZgRV6MAV0eRdFR +V0mj3NKhLgMsAAQEKD6w5QhdGYs3j8lfb7TDGYtNPHgBB6EWjy9HuWPks6kCTgw1 +el69+Sw= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBCg+sOUIXRmLN4/JX2+0wxmLTTx4AQeh +Fo8vR7lj5LOpAk4MNXpevfks +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEB5P0sxFy7uZvJ2nrMF0DtcP3z/+LAfPs +7Gu9qb3opNoU2z5f+TS5g1sX +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C10 +PeerKey=KAS-ECC-CDH_B-163_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0173a056c4c9ef6707cd23928999c4680f42b71f7c + +PrivateKey=KAS-ECC-CDH_B-163_C11 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUBmh0W9KVy88G1HqKs5pKA +5xN7j4yhLgMsAAQFzt6Wpw9xTNaJY/LWyiNiaak48xEGza3VS29zPICTR4fijCzP +WLEie8A= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBc7elqcPcUzWiWPy1sojYmmpOPMRBs2t +1UtvczyAk0eH4owsz1ixInvA +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAup6UINGAvES9t0ObSXwZPnQXv8mAb8/ +adFKzIMzUzqIwuiCSGOkeuAn +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C11 +PeerKey=KAS-ECC-CDH_B-163_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=03d34f411a297d7c990fa4a83b5f54759607f9d33f + +PrivateKey=KAS-ECC-CDH_B-163_C12 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUC79RADa08+tjRY3+pKQxL +dYowFbahLgMsAAQFExMbS8ty72irBD7oT8jLA7bY8YcBILfVdyu7F+yxyegMNvgI +/VSpOq4= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBRMTG0vLcu9oqwQ+6E/IywO22PGHASC3 +1XcruxfsscnoDDb4CP1UqTqu +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBt0TBTSeiqCAIAc6DeWvxdwbamLTA0l+ +t79Aie8CzQpd0Phr2HmKRMVs +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C12 +PeerKey=KAS-ECC-CDH_B-163_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=06120aed8d4c1e506710e2cfb98ca2022e642ca89f + +PrivateKey=KAS-ECC-CDH_B-163_C13 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUBKw1kl3z8E7SDRe9wctGj +iQ6vuVuhLgMsAAQBuTY89Ic1Z2h42AzhSBuFiGg/dEQHaPpzJ81yUsj2lu1JR4aJ +Fa2h+10= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAbk2PPSHNWdoeNgM4UgbhYhoP3REB2j6 +cyfNclLI9pbtSUeGiRWtoftd +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBaDjQRGOaYJ9an+CgvvwuUQA8IJABCO5 +k9Q2f79PZQTZ4JpkEjo7U9Eo +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C13 +PeerKey=KAS-ECC-CDH_B-163_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=021a58087968c5df57afd7c343a4cfa2ee8e7073f1 + +PrivateKey=KAS-ECC-CDH_B-163_C14 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUDOslTgD0ERrPNpOvQcbTr +AnwRv9ihLgMsAAQFxEbpiWykTMpzPp9OW2Sv3cBTchEGutGyUiaS+XCzi+aTXcfR +wJ3NIG8= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBcRG6YlspEzKcz6fTltkr93AU3IRBrrR +slImkvlws4vmk13H0cCdzSBv +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEABqSPWGRY0MGEkweJnMJsH26Mt7LBaNR +f1Qmo0Eacn7dwpo+wilVg2jR +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C14 +PeerKey=KAS-ECC-CDH_B-163_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=03da9c0879219e48c3df56174898fab9ee5b0a6bcd + +PrivateKey=KAS-ECC-CDH_B-163_C15 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUBvXkUWuf0LGsl0cOJZewI +/SdTOnqhLgMsAAQA6dj8OgJpJcit1Qj5IPouX/UoJogFt79jElmsfTaTbBMP8gbY +ILE73oE= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAOnY/DoCaSXIrdUI+SD6Ll/1KCaIBbe/ +YxJZrH02k2wTD/IG2CCxO96B +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAvqLrw1hKK3ZuQKqGByB4kKYRR4uArk9 +H2kTkU/+FVnHwRTGMbtrKWF+ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C15 +PeerKey=KAS-ECC-CDH_B-163_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=05b33fe3874d32aed99919265cc0074902e538fe54 + +PrivateKey=KAS-ECC-CDH_B-163_C16 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUDMMofWtd9embYdCMygCDJ +HsefN2ShLgMsAAQFujfTaZfE8qvmA9/gQiMnOOgrCzoHPIzZUARJcqAFxvGvjkMG +4MzvuUY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBbo302mXxPKr5gPf4EIjJzjoKws6BzyM +2VAESXKgBcbxr45DBuDM77lG +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEA1Pi2kWrfEkwKAw+20upABLVbfYvAmkx +4wuX/173uswN5NlJBwhSLjsr +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C16 +PeerKey=KAS-ECC-CDH_B-163_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=053dbce9826af4d290036feb46875e975b7848a9c4 + +PrivateKey=KAS-ECC-CDH_B-163_C17 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUC0jFAB01u3dW8CZsX3hKv +ud3y7L6hLgMsAAQG4GzHww9e1+aGw6daHUQld3BgHLIDDcQUxK+zkO1GevRxqpvS +t18y39g= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBuBsx8MPXtfmhsOnWh1EJXdwYByyAw3E +FMSvs5DtRnr0caqb0rdfMt/Y +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEByFnCITaqM1idjjskPNEjvsPJIm6BPhK +mDvsayiJyCEb8jEUm1vrzHXg +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C17 +PeerKey=KAS-ECC-CDH_B-163_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00d49b971cab937f40908913fe259849679ca076d9 + +PrivateKey=KAS-ECC-CDH_B-163_C18 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUCRJwbn/CeepoDsX9f9GER +X18/Gn+hLgMsAAQHP53d3EZQkz3szJVG05KjXbvGanYE3nVY3eZJ9yMis54xyOKc +5vWZSF4= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBz+d3dxGUJM97MyVRtOSo127xmp2BN51 +WN3mSfcjIrOeMcjinOb1mUhe +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAdYxnsLcXAjwJhrtAjFBjW3D0M2nA45k +lT982scdBS5VhVdGtD1EGBuR +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C18 +PeerKey=KAS-ECC-CDH_B-163_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0483ad0b7f8a716273f624b8979c19126705266e4b + +PrivateKey=KAS-ECC-CDH_B-163_C19 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUA0IuV2aTOck7EYszhJwH9 +jD1T/c2hLgMsAAQAJqdw2G4cibp6hq72Sbp+qG/H1bIB2xAg4Pdk31SlPCPJOM7J +jZp3rR0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEACancNhuHIm6eoau9km6fqhvx9WyAdsQ +IOD3ZN9UpTwjyTjOyY2ad60d +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBPFnkHv0uY6Gltgdp9LBBW76DcFMBsua +tlFDgyuc79XZzmnsTbLt0Geq +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C19 +PeerKey=KAS-ECC-CDH_B-163_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00f69dcb547119fc9b8c454335aab184c3ada5f1c6 + +PrivateKey=KAS-ECC-CDH_B-163_C20 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUDgI7+atUNJQ2HGS4WSZzj +JZQo87ihLgMsAAQAE6AuJfySeHWvpVe9Zz9lhwRZ5nEEA4265cXlQIRwiiS8P9By +52nBI3c= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEABOgLiX8knh1r6VXvWc/ZYcEWeZxBAON +uuXF5UCEcIokvD/QcudpwSN3 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEB5ttFMdDJxQC0TI2AyFf6zxosURVBOOQ +VoalOMJaAr6pL0IYQCG16iWT +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C20 +PeerKey=KAS-ECC-CDH_B-163_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01bc5ee5261b2bba55b10cbaa6cc3c97b98d00ffea + +PrivateKey=KAS-ECC-CDH_B-163_C21 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUCrSMqekHmzCSVU42HsCPN +7HtuHyOhLgMsAAQFSeMHgNk/eW/c9pGQVXXYXGZFO9sCFiqIW+oxNEVD9dBhkTad +7G5w6Wc= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBUnjB4DZP3lv3PaRkFV12FxmRTvbAhYq +iFvqMTRFQ/XQYZE2nexucOln +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEB3L0LScqBX3g/5Jsn5RgXGZ10hUmBgLn +5TJV3pv1jAV+77ebzkMbXDgI +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C21 +PeerKey=KAS-ECC-CDH_B-163_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=008574d838d3de87965fc1b4343fe4f078588c4ea1 + +PrivateKey=KAS-ECC-CDH_B-163_C22 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUA3Jmxnz2IR4dRkOlYiyu9 +gw29OpWhLgMsAAQA9l2YTXHcwYvxcqvk05k84PfPMkwAG0nmos8Rc6raw69sCelm +8xFBq9k= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAPZdmE1x3MGL8XKr5NOZPOD3zzJMABtJ +5qLPEXOq2sOvbAnpZvMRQavZ +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBQskKUYJcXOanW1WcLxtdZ5WVnaLBJK8 +LT9jjUl45MpYylpO8ZxezOqN +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C22 +PeerKey=KAS-ECC-CDH_B-163_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=04579b477a92ed961cfdb2014407e88e7716452a4b + +PrivateKey=KAS-ECC-CDH_B-163_C23 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUDVquFsE0IUbj2a0p5ZSbT +8+OIKEShLgMsAAQHdqLhr5MtdFGQcL+pQeqpPp/16XoFq+ntRiRf0BRiUNKlY8Ru +v3rNI0I= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEB3ai4a+TLXRRkHC/qUHqqT6f9el6Bavp +7UYkX9AUYlDSpWPEbr96zSNC +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAX1SEW8MlVh/G3sGx26Y2ZyC3PIMAk6i +K92ZC9eeY+c1shKCrhtepmZI +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C23 +PeerKey=KAS-ECC-CDH_B-163_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=035a8c10e64403c52ef8d17c5f4dead0df81fb1f21 + +PrivateKey=KAS-ECC-CDH_B-163_C24 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUAentUdVDHWKnefwbi845V +9enkTOahLgMsAAQEWVLAtRfmhcqwlHAyf51LISdRsEkESkKabvsEvOoCQKtYBd50 +CqYfmU4= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBFlSwLUX5oXKsJRwMn+dSyEnUbBJBEpC +mm77BLzqAkCrWAXedAqmH5lO +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEA6fqELodaqVFcAtAtzeVGp5zbfoMBPk1 +L7KsJETpKHVONlX9YuOkJWTo +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C24 +PeerKey=KAS-ECC-CDH_B-163_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=000142615e3607ac148c4de8f334be849235d01cdb + +PrivateKey=KAS-ECC-CDH_B-233_C0 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4APD7kdKwNC8HfVn48NfX3 +ZsUzKy1nMP8OTY51rtuhQAM+AAQAYeiptRf9BaAm7DdmFiKf2GOaH6dt7+U5gCL5 +2cgAcGtcsIc4qUVS/uWEsTcv6tSveQQJCfz29QCEu/o= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAGHoqbUX/QWgJuw3ZhYin9hjmh+nbe/l +OYAi+dnIAHBrXLCHOKlFUv7lhLE3L+rUr3kECQn89vUAhLv6 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAEdWut3vw9wzerJ7VFLrEK/9njH1tVwz +DpDw9oaiASp59lIyMIohyYwBVVzK/H3OFcj+0wJadgy9bCMn +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C0 +PeerKey=KAS-ECC-CDH_B-233_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00e9f3d8c4f1bec0f920e763ea1bb7415899f01734609e7547dc425ec946 + +PrivateKey=KAS-ECC-CDH_B-233_C1 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AqkGloBpOZqZ5l7C+FvVr +FgsFYa0H868pZDhkYdChQAM+AAQALZFAJEZVcGjED8B13uk5FrDxqTkuR+VrdHEl +rh8BOrCRXkrPd5UWgm+h3BiFoGq8XQgJySJAzPnD2KQ= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAC2RQCRGVXBoxA/Add7pORaw8ak5Lkfl +a3RxJa4fATqwkV5Kz3eVFoJvodwYhaBqvF0ICckiQMz5w9ik +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEARhqAo+aGNuSf2MlPCA+smqjq6DUCxo6 +vGTkeiKtAMvYuV+J5CESi8c6Q8XMJU44ZwlquJ14iy7TuQqW +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C1 +PeerKey=KAS-ECC-CDH_B-233_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00f1fbecfadb158d62eb1109c085124fad67a8795b58815eb396c95db4b9 + +PrivateKey=KAS-ECC-CDH_B-233_C2 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4Axmd8KAaLRi40hizmydit +jBs8fv6Ay6tB2kGSeOShQAM+AAQAQssxHc/ySCos7OaWwetkxprCqlmSCaXBh2Oj +FQoBsDKfNsE10ALwi+Pj/6naGMXWpww2D0+HHxK/P5U= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAELLMR3P8kgqLOzmlsHrZMaawqpZkgml +wYdjoxUKAbAynzbBNdAC8Ivj4/+p2hjF1qcMNg9Phx8Svz+V +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAJO/hWIWAiOOmNCcmIKNUaSUYDYsI8UU +HT0bI1KWAISXFSGHqLOylYodCi7s/0SSJRgHy/0D1fJoW8o3 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C2 +PeerKey=KAS-ECC-CDH_B-233_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=019ea831c51d88a7cf754495a1c474082ed481c8eb83190a77defb09d479 + +PrivateKey=KAS-ECC-CDH_B-233_C3 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AnGECSz3/IZs38b5nAYBK +3yR0FESN0PDcUSk6yROhQAM+AAQAEkEg2ECYUOceM8ni2cQOoyvtEdd4BHhumwdo +kqsAba4bpIFylv9jBzusnOBl1DMboaXImcwcB0Bdrj4= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEABJBINhAmFDnHjPJ4tnEDqMr7RHXeAR4 +bpsHaJKrAG2uG6SBcpb/Ywc7rJzgZdQzG6GlyJnMHAdAXa4+ +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAEVJZIaSr5XYjk4dSRTYyXaaraxaD3V4 +MmXz65ZXAbCUtIAvOXZj0OaC+r8clMTiFOSDJ7le78uSt3H9 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C3 +PeerKey=KAS-ECC-CDH_B-233_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00088425fb04c2ce408f08d81385a322703a077bf00ba0791e4e79b80419 + +PrivateKey=KAS-ECC-CDH_B-233_C4 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AbmnQZNvZp5T2jmmaDpQb +3aalOhzso7PbgpJbb4uhQAM+AAQAxX1h/LH+6Q1djJfL8YjI74JZsK4lh+zx/4zS +4voAuK2GxoBaSrRFE9u6L1CYuenB4Ftnn1KTeuzisYI= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAMV9Yfyx/ukNXYyXy/GIyO+CWbCuJYfs +8f+M0uL6ALithsaAWkq0RRPbui9QmLnpweBbZ59Sk3rs4rGC +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAHPFz0oB0J47QbXnd4xrm6Utr4j8QE+O +L9CdtAJ+AHA5Htqnbw45cDlMrAM4BhBYhYw8c9XLUS5TJjBP +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C4 +PeerKey=KAS-ECC-CDH_B-233_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=019b5efb23bc18a4f18c22fe2fd5cdbd02372cabde5e5c9f4b4f9a49438f + +PrivateKey=KAS-ECC-CDH_B-233_C5 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AWuXeMMfDFxgTot0+PqLF +zqoEc8OUV+mSkHHhpCChQAM+AAQBfPn8oF1KVeS2j+56O9Q/BHMD8qJm2Bu14ex+ +JVgAOwr0PeBQAzl94dSyeCetL81nXL9hpEWh7EClabY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAXz5/KBdSlXkto/uejvUPwRzA/KiZtgb +teHsfiVYADsK9D3gUAM5feHUsngnrS/NZ1y/YaRFoexApWm2 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEASOmsIGnYehsBC4ZFK9H8JOyZVVD5WRY +S2BkJTmpAFGO48GuVGQE3x7M1pqmhWQx0ciIHPBXjP9OuMEb +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C5 +PeerKey=KAS-ECC-CDH_B-233_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01f36d9519c3d47f030eeac3338db583b96fefa551a4b56cc5567f2d9d7a + +PrivateKey=KAS-ECC-CDH_B-233_C6 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AxoeWlVtotfiCfjisB4Kx +rCxFUsrvDGCVhGfNhcGhQAM+AAQANHifvGDxCGA0yPLOhv1KozUZTJFGiQNX3EdW +meQB0395Yyf3HsMVEEaEY9CykFSIpKYCZ4cN/uVnwlA= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEADR4n7xg8QhgNMjyzob9SqM1GUyRRokD +V9xHVpnkAdN/eWMn9x7DFRBGhGPQspBUiKSmAmeHDf7lZ8JQ +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAUH7vys2HCyM5e2r+iKqR1VYHlsaZmAD +YqDue8V0Aa6jysID+MeAR1omCbKXDMhvlupAEcNI2oJiszSq +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C6 +PeerKey=KAS-ECC-CDH_B-233_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00e54b1c916ff3ba1aa0b2b99f0ebde4f1a4cc6a10d959bb2f7f4c777b84 + +PrivateKey=KAS-ECC-CDH_B-233_C7 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AdCRcyX3UUJNWieo/ynsL +MMHWfObovhfLEZJXXK+hQAM+AAQB4cVwrMZTxwb9d0AZSlVN5/N5mhK4INapQRl/ +dh0B4iJejQ1ByAj26tevMg+yX+0pqZCYoPDhHNhp5Tw= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAeHFcKzGU8cG/XdAGUpVTefzeZoSuCDW +qUEZf3YdAeIiXo0NQcgI9urXrzIPsl/tKamQmKDw4RzYaeU8 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAJag0/Nuj3U3kQdM6ml7JHFifgyeeilK +ApqdO5QpALdnF0opILYvHwL6eQl4RdUdk+DIEEQQgxot1Vw8 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C7 +PeerKey=KAS-ECC-CDH_B-233_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00bc0dcf7585753cc79aa412d2740b4b2d1c644fc9755cb0550286bcf68e + +PrivateKey=KAS-ECC-CDH_B-233_C8 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4Al77tS3OKYgXMnqBGtEi1 +IxKLkxAaAtlkQ16xeAahQAM+AAQBg1jalAeacAoQsgojJdM9gOletPxKmBAcMSY1 +k5wADE9ELQBxx70dIXzyNf0DHewwnoXqIBTmi1D8K6A= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAYNY2pQHmnAKELIKIyXTPYDpXrT8SpgQ +HDEmNZOcAAxPRC0Acce9HSF88jX9Ax3sMJ6F6iAU5otQ/Cug +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAWa+JCazv45tBaJNfR8sDjKeQSDPyOb/ +UkhvCVWGAHNx4ogUX8JaWpy18qOGA08vMoxuqiTIsJboqx8M +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C8 +PeerKey=KAS-ECC-CDH_B-233_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01b7ef3148be331115321b1c2a68832fdfb991b26224a60dddce3e060d27 + +PrivateKey=KAS-ECC-CDH_B-233_C9 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AdZxV2lXh/bW6f4uJOrqu +WSW5sIGEo9VUlXrPPsChQAM+AAQAKvJfgQ4YqBtp2iVKZbimx6uA3cJ8hWIuI0it +0TIBKLdT5LIajDrPhaq5Kpqmp7M/LLadcCS6+OiwcUI= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEACryX4EOGKgbadolSmW4psergN3CfIVi +LiNIrdEyASi3U+SyGow6z4WquSqapqezPyy2nXAkuvjosHFC +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAYHzuwsJdxMnfF87Rs7wKqnL4pq5XHbp +tgofelHlAC4vtnLXK/ePfP7cQNNybGtPtYVBfHR2tlXjK707 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C9 +PeerKey=KAS-ECC-CDH_B-233_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0041249865c913b287a253150b207e2682efd96057cb0709e9bbb48c0fc9 + +PrivateKey=KAS-ECC-CDH_B-233_C10 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4A7mOdifDkM8B14u9XzCQ1 +gelbJh+Kk7jvb16/gBWhQAM+AAQABmOPa82FBDOV0B12f/d+nWd/N+9ADy4W/uht +uvIAbBJJYmbeux2DQ7loTifF9xKcFwJKjmcEZypfPWM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAAZjj2vNhQQzldAddn/3fp1nfzfvQA8u +Fv7obbryAGwSSWJm3rsdg0O5aE4nxfcSnBcCSo5nBGcqXz1j +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAGWqQRXlnmBFqvme4b7KH6uSO73JGSBu +CTFiC6mWASjQC3dYmaWKWbyyq3nWCeLc2pjmUju2cWhVT4Tm +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C10 +PeerKey=KAS-ECC-CDH_B-233_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01cf480fbc2be2c2c4448c88890972c7ff9cbe08a75e26c3809596b8b5c0 + +PrivateKey=KAS-ECC-CDH_B-233_C11 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AkpsJtnspqk/xXWd5oXMw +ZQSfrrLCJwEsSfJ37VGhQAM+AAQAygQD2V2F8MsK5NKurhjhh7ecIB7WjBStJO0A +OSIAz2sKUCspDQru6CBmGsz26ll2h8Rcf5Onc9JfYqY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAMoEA9ldhfDLCuTSrq4Y4Ye3nCAe1owU +rSTtADkiAM9rClArKQ0K7uggZhrM9upZdofEXH+Tp3PSX2Km +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEATV25wDzY2f7dBhC8jGInzaCKqspM8JF +7tV7naytAXkQ6QcaPkLn8hs2Pw5ofSiYEKTsKcNuzhSFTh3R +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C11 +PeerKey=KAS-ECC-CDH_B-233_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01ce8abf3c8ccfa30e5f35ddb75f5e106aab1e67086156a1ededa1717b77 + +PrivateKey=KAS-ECC-CDH_B-233_C12 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4A4nrwTv4thv/tbs33GPwL +jgSe0iLnYAw84xzk6XqhQAM+AAQBRewNtf5iuSVHeSASJoryG6koqP2Y0KHe49j7 +JVkBCgMc6laxg+kwkwCKtwXMkJnltlxctEBzJLlv7pA= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAUXsDbX+YrklR3kgEiaK8hupKKj9mNCh +3uPY+yVZAQoDHOpWsYPpMJMAircFzJCZ5bZcXLRAcyS5b+6Q +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAOn7pxpkq7F3+kNsuXOcn2jAFVrciXE5 +wb89+ZpTAZrxExvkfeCIcINdoUlG/tcwNBefgJKY0BSbFt02 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C12 +PeerKey=KAS-ECC-CDH_B-233_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0025df759a20312361b9f6767efe8e8d69979e34639469a91fed9fce04f8 + +PrivateKey=KAS-ECC-CDH_B-233_C13 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AGnJte5koaR6wFJyo8O3u +R70Mc0ETq2ADJB7hk96hQAM+AAQAdCa/qIeP5ZsWqbjGORCh4vvGsHuplboEwxQC +ES4AlE6WFmdssvx/oPnhuHo1h0gkPoD7YiZChGRaak0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAHQmv6iHj+WbFqm4xjkQoeL7xrB7qZW6 +BMMUAhEuAJROlhZnbLL8f6D54bh6NYdIJD6A+2ImQoRkWmpN +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAR+ZSkFswZkLjGF2ej1o++pzr3tItlXk +dHD8zHkfAV3piINdaBLwvdcAeolZceGgb00izhMDyfVe/mR8 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C13 +PeerKey=KAS-ECC-CDH_B-233_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00437ab4a53756ff678a1f580c0fd1f33b23021d62060808453b4aabe627 + +PrivateKey=KAS-ECC-CDH_B-233_C14 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4A9FnHZyFpwSWeThmTM5ZM +H/+851rTDd4SZPXLhtGhQAM+AAQBtEqBiV0hBfoWpuCVJsCa5/bL284hCHD04z24 +tvQAseByxiomQpdfBsaHxkZ9opXvk/BNHFSUpiRoPIA= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAbRKgYldIQX6FqbglSbAmuf2y9vOIQhw +9OM9uLb0ALHgcsYqJkKXXwbGh8ZGfaKV75PwTRxUlKYkaDyA +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAQUTYgruDQR4hyQ46Zsj6kkAFT+TZusX +1hvfNaoZARNt+8hAG72g1nXKBqDP9r3UZ8CsmpeCkzAHKOfc +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C14 +PeerKey=KAS-ECC-CDH_B-233_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01ebd55823c57d1fc7b36cf1ed2051ead64db6d114014d3407186f50d957 + +PrivateKey=KAS-ECC-CDH_B-233_C15 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AZWpHuHcrCLHZB8gj+2xF +xl+fGPi0Pzph5sdGEeGhQAM+AAQBU8262S640g2gwceq1G0IM2y8l26Nb4OUfk9N +ZhYByXe5el4SBcpmVF3zpSa24yXgh8DgcIOf5+we54g= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAVPNutkuuNINoMHHqtRtCDNsvJdujW+D +lH5PTWYWAcl3uXpeEgXKZlRd86UmtuMl4IfA4HCDn+fsHueI +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEADXf/skRftcWdieiSj693Umj9F2RrRhA +HT1Emy/vAZMXVM5c9Vehwazt/l6aewuR+BZD2oWGpoZYhfBC +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C15 +PeerKey=KAS-ECC-CDH_B-233_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=006d07f6e08b11a060ccec43b07ca7d9eaf6c3ece06f4785519284bf6f0a + +PrivateKey=KAS-ECC-CDH_B-233_C16 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4A8U9exO+vhuQ/7OZfF/+R +sajWG+NBbu64hPTi0U6hQAM+AAQB2fjAHpwg9hUOx2IKdeOelvkke+zhN7A2W+xU +JUwAYAg3O54IeAUpTa2uAIlGZ/259rik0WKV5bnSGm0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAdn4wB6cIPYVDsdiCnXjnpb5JHvs4Tew +NlvsVCVMAGAINzueCHgFKU2trgCJRmf9ufa4pNFileW50hpt +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAEhFzmYbHq40wWmfG/443IfvKLiwp3cf +82bcIdhjAQlrGVSwbqpwc+2TmAGqKXTaHWDWbpfDHfD2h2+v +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C16 +PeerKey=KAS-ECC-CDH_B-233_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00aea594f092b4052f7564b2e5651bcf43ef7e336a064d6bfb1a89cf5e51 + +PrivateKey=KAS-ECC-CDH_B-233_C17 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AH6XL2IoUb2zPX3nfvHCG +j9m7TIEVl2yWJw/3vF6hQAM+AAQBTSdvQoHLUKJrKeyB/O2W0OkJmUsihUM4VSVt +WNsArEeSr2Kg3E/U7sOE+/P7uCyDR0hrwesTOLx/OrA= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAU0nb0KBy1CiaynsgfztltDpCZlLIoVD +OFUlbVjbAKxHkq9ioNxP1O7DhPvz+7gsg0dIa8HrEzi8fzqw +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAUc0GSFlyW+9t5TKseLR7xEeGiCnIF2w +GqgDoDKiAezfw5QLfQYYzWMVRBdR9mPfdNNWSS75NLS6KyrR +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C17 +PeerKey=KAS-ECC-CDH_B-233_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0099d6d076e14ccfee15ed7e7ef384bfee12deba8c9ae8f6cca3486a1494 + +PrivateKey=KAS-ECC-CDH_B-233_C18 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4A9YaE6hSmj++4zCayZ6E0 +GcYtcmG60U5TaKmBmhihQAM+AAQAmmWoU5QHD+DloQgWTrKJzD137QhI/VfzhOYs +qiAA5/VvLCe+T66yDidMJgTG3C2IWXAwrSFk+tA8uQQ= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAJplqFOUBw/g5aEIFk6yicw9d+0ISP1X +84TmLKogAOf1bywnvk+usg4nTCYExtwtiFlwMK0hZPrQPLkE +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAH4fMlHioKpt4fjfhrhe2dEdpetxNq3U +XqfSXIZ8ANligeB1benapV0u9lc7sv4t0Jtx2RGRpaBDuuDz +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C18 +PeerKey=KAS-ECC-CDH_B-233_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01b1e977c43afd203132c085b95db0e2046a4b6ac2c046ee9ad665050578 + +PrivateKey=KAS-ECC-CDH_B-233_C19 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4A7vskeJsytDbOOWIsEUw5 +ps0eWOyUQ8iHDl7i+AGhQAM+AAQBP7HKntcJuzhvugLMeGL9bGThCHvl9h6nM5Rs +FjQBy0CX5EpzBwDev+gUP7+byjo9bEaYWifNUEOyylo= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAT+xyp7XCbs4b7oCzHhi/Wxk4Qh75fYe +pzOUbBY0ActAl+RKcwcA3r/oFD+/m8o6PWxGmFonzVBDsspa +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAL4e51DycSsqyyDEXpc1fFDbO+iVsz+D +DHG8n089AV/sgQzbF5/NHOjk3BokmeQN6KSkmpQg8A5WEQz0 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C19 +PeerKey=KAS-ECC-CDH_B-233_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=000e4cb704355cba1b40cee3da102cb048519a91b4c789b3757cfdd933aa + +PrivateKey=KAS-ECC-CDH_B-233_C20 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AF1JNUGYWvSBcs5eLx146 +NHYjPkm23CBvlxFpdVehQAM+AAQBUKFzJ4Ree8edjs4Skw3Ct3ZUyqEIK1ewz44F +sawAFRx2gi2N9e/9jGlDOVtqjVOEMdQuhG6f+N5+ruY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAVChcyeEXnvHnY7OEpMNwrd2VMqhCCtX +sM+OBbGsABUcdoItjfXv/YxpQzlbao1ThDHULoRun/jefq7m +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAVwuLOC8cizqTLx8M1LL4NKLWwAuRNk3 +BYldeRr8AU9haYOtCOdFMVxHZ7CuIab9imKcJYznrvpMF6jg +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C20 +PeerKey=KAS-ECC-CDH_B-233_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00d8c13bc5e819c6101daef3f6fb5be6bccecf233c4b7fc65054e8e8d3bc + +PrivateKey=KAS-ECC-CDH_B-233_C21 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AprBdMKcD8ReagPioZLNM +oVxFPoKAihCV5DXpusuhQAM+AAQAk7MlIlH9nW2cgdeM8fE0zdVU1jwqHi8a+hTi +1OQAiusKirP/Xk+wI/fhkX8BCIkK8Rq8p9oCf62sw7Q= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAJOzJSJR/Z1tnIHXjPHxNM3VVNY8Kh4v +GvoU4tTkAIrrCoqz/15PsCP34ZF/AQiJCvEavKfaAn+trMO0 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEALr6m7qScl7vDEoK/L1CY+VfUVVkW1xY +qWvD6ellANGz0ONdYX4J4HjFcaX0HqIt/REtZ6lNjfu6Zump +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C21 +PeerKey=KAS-ECC-CDH_B-233_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0129af50fa085133771753f297a313bba0d2f5882e7634b7ef5adce760ff + +PrivateKey=KAS-ECC-CDH_B-233_C22 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AFo0JgJ659qzzETTrXrGv +lm4hK5tr5oz9IkAUJemhQAM+AAQBcQoF8CtVBXKVFrGsc9RfPPCPHFE00vc9ElcC +Q8kBhhGxDatQdYPyvhD9Qpb1N9SvCVdvlpefHq3+KRw= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAXEKBfArVQVylRaxrHPUXzzwjxxRNNL3 +PRJXAkPJAYYRsQ2rUHWD8r4Q/UKW9TfUrwlXb5aXnx6t/ikc +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAHmL9at2G7as/tDO8c1xs+9G8lBDI8r8 +QIFZLdb2AWJ3rrPhysASGwfZN4o6DLxlZ7SEI5KeNtyFXp0a +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C22 +PeerKey=KAS-ECC-CDH_B-233_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0077c4ea1095fadc4cb4190a3fd530c7d15325e5d79b8e8a2b708e2344cf + +PrivateKey=KAS-ECC-CDH_B-233_C23 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AOCT3HsMlW70DZC14LMZ5 +Th5Uqo+l8qMx7hP3hFChQAM+AAQBpONajDJxfyqqPu7xd4SOWA4P7WyAloaPasxO +HAkBNydgToHTqdk9JD/nni24pEIzSo6hhSufg8rhvD4= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAaTjWowycX8qqj7u8XeEjlgOD+1sgJaG +j2rMThwJATcnYE6B06nZPSQ/554tuKRCM0qOoYUrn4PK4bw+ +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAV9yPamjjC2lBiwX0Lg3Ui98aceT95wX ++2ll1EoDATKxd2CsLiu5+BPtd5DFzTqg04q2Ti4nLd9KTCwa +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C23 +PeerKey=KAS-ECC-CDH_B-233_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00d9eb3c79cf442595dad03ed4a38daf358b97d5dfc01cb61ff200a47958 + +PrivateKey=KAS-ECC-CDH_B-233_C24 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AkK3Asgfa44FiLPkuBLzn +R5GA7G4XcWYvXDF5vZmhQAM+AAQBBq2/m7/bMINZin9tsukdLnwXT3BfwhZjG30F +7fIBkNhMpvRpX9vKQNJqdJmKBcPXYdvwiYG2RcDqI54= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAQatv5u/2zCDWYp/bbLpHS58F09wX8IW +Yxt9Be3yAZDYTKb0aV/bykDSanSZigXD12Hb8ImBtkXA6iOe +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAFG3C7i44jQbhoIdVLl0tpa9pEOst+pl +ll0n0qxwAMd4Tu+InEccnSaz4N4krStL+Lu6b+GPUaQSGIBY +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C24 +PeerKey=KAS-ECC-CDH_B-233_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0124c19cffc0b9549bfa378a548e8ce11ee7fca28d2d898de49ae1f2ff61 + +PrivateKey=KAS-ECC-CDH_B-283_C0 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAvQ0VYQiRqLMjsBo6dbG +5BYPa6Tjtdgx2Twdqo/T1almDHuxoUwDSgAEBWHklVYwGBaYBNTI4kNbSv2F2jdt +kUtp05JG+OBhE6oy5kLSB4Gn9Z3n9C9fnWw0gfM/xd6zV8bs9MdY43DSQ13j2O5z +dwP0 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBWHklVYwGBaYBNTI4kNbSv2F2jdtkUtp +05JG+OBhE6oy5kLSB4Gn9Z3n9C9fnWw0gfM/xd6zV8bs9MdY43DSQ13j2O5zdwP0 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAlBOGheBnTnwEKSmmgVoKZQCtY+USjhM +fRpiyck+pNH/MA4TAmUTL3tMZLdLkXntDy4hH0Mo1iVAUCL1VBcNqTK4D998GqsS +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C0 +PeerKey=KAS-ECC-CDH_B-283_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=065194e26090e74047ee75f13f9769d20e1b52189650011e283daa090732cc53755dc366 + +PrivateKey=KAS-ECC-CDH_B-283_C1 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkArlB5pLgqYTF/6iDyfn4 +JWpDqx/RrZeCpC5CmpTpEOSCuRwjoUwDSgAEB7kK8Ra3N9kAjkwY9q1TnSnuF5AA +ih2vLoVvpnLspKr8lspjBqr3jQ8gZXt3uXzKMOq3m2eaOqqQsQkH+XnN6YjOcYSR +AQwq +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEB7kK8Ra3N9kAjkwY9q1TnSnuF5AAih2v +LoVvpnLspKr8lspjBqr3jQ8gZXt3uXzKMOq3m2eaOqqQsQkH+XnN6YjOcYSRAQwq +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAWI6lnXoxANm4mEx5Hsa8GyLM6z16S9U +ZEgW3LhEOCyUTMIfAp0oD01MDF/XD34kCVlQEovqPK48pG9qX3C3Of4amQJogE44 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C1 +PeerKey=KAS-ECC-CDH_B-283_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=075c535cc70de19c92d7314afa2f33200903431f6990ad40ac31dadaf4e492a799b75b05 + +PrivateKey=KAS-ECC-CDH_B-283_C2 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAofeFyulDzJ7/H1ajAFW +0lofC59x04mFLy47WHQGy3TvO9BBoUwDSgAEAKA0kHZfyQwjVTwOK3nfojK1GnPy +FVTl6xjaTJlNkl+O0rvvAwT/1BxbCrKnC4IYjo8VeNarfTzjzjT6RdzDIgfxY+kc +XWgU +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAKA0kHZfyQwjVTwOK3nfojK1GnPyFVTl +6xjaTJlNkl+O0rvvAwT/1BxbCrKnC4IYjo8VeNarfTzjzjT6RdzDIgfxY+kcXWgU +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEB7g2lyhDL3Uo0+7IpniOac0uuIFixHUS +dC7g8CfMtBV6KKIjBZhut/EJqh+FVuuivciOSRO2Xv+5ROrmOWNsun4B3DcYvLNh +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C2 +PeerKey=KAS-ECC-CDH_B-283_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=02956f63d48a49a330e2068955cc2886dbfd5bf72a81b10ed83f2d758dd315eca172927d + +PrivateKey=KAS-ECC-CDH_B-283_C3 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAVO7uKPOShuZlg9WGGq1 +Agf1iPMMlL7vKECEI7pE/IdfrzjYoUwDSgAEBPLCRUiZYjrxO2WCCroUVzhAf3cY +arr6UtJLNb/fWAj/6uB2ARH0SEYK0kMKrseI3ikVSEdaHlg22sUg2OSTyfYBJ15w +6inS +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBPLCRUiZYjrxO2WCCroUVzhAf3cYarr6 +UtJLNb/fWAj/6uB2ARH0SEYK0kMKrseI3ikVSEdaHlg22sUg2OSTyfYBJ15w6inS +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBzsJKipNfJoXu4jnW0Cp5OQ7mYE89haC +1JuSkFwt1gZ5Cu05BWatRSotjvCjJ86OKFYUb+yvCeRDHMwEJWoHf2BwHORHa22s +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C3 +PeerKey=KAS-ECC-CDH_B-283_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=068a3f6938c44b797524377508585842c6a7f1af5ffe9131dd3ff786ae56e1739345d3d7 + +PrivateKey=KAS-ECC-CDH_B-283_C4 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAyrA3LmqOXJAH59YhF7X +Zdo2t9b3c1V3m/skOYJ/81VqdXgcoUwDSgAEBxWchrnGrbIWDCjYYRj4RWSpDBSe +3igylGNnekyHcp+JfC+YAIp4Fn4WkGJZkrDvwuDvb21h6Bg3yOzf2rUdFTQON+fY +0FEg +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBxWchrnGrbIWDCjYYRj4RWSpDBSe3igy +lGNnekyHcp+JfC+YAIp4Fn4WkGJZkrDvwuDvb21h6Bg3yOzf2rUdFTQON+fY0FEg +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBFXoe8Iwzn/FhjEt0gfFKeR+PHTMDOXQ +c/v0sclX+Mu9kRO8Ah/79i+yUx2znvLQvc4NnBQckunNymJ8qjm1k/xKAhDo7kgf +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C4 +PeerKey=KAS-ECC-CDH_B-283_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=019b48d5eeaeb05b58801ae8f345ad9bacb91daac885e506949b849ebc67bcbfa308aab7 + +PrivateKey=KAS-ECC-CDH_B-283_C5 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAmib8hR10y/nGnNV79mn +eHyqlUXr64U+UYTOQhUkKQUfQMvEoUwDSgAEANflvPrFePzXKBgGRRdtfgiLaNMw +ognxi5aGYv7RY0KzkhogBvdQs7XpjgCZtpWWWqHRZHXRB0+SMRJ+1wPiaW1LVq/e +u86q +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEANflvPrFePzXKBgGRRdtfgiLaNMwognx +i5aGYv7RY0KzkhogBvdQs7XpjgCZtpWWWqHRZHXRB0+SMRJ+1wPiaW1LVq/eu86q +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBlLMyJIfQ5r0KiMBI2tYQ6QvH9mez+G0 +E0w94BTNx2A1NHzAAzQdgHSfGl7J96xiUjhP79OLbyu83Bj+vobBYPXnjAA/Bm4G +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C5 +PeerKey=KAS-ECC-CDH_B-283_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=061b3bef1766460f6296ed47d39ebf5a710d202d2b7e7cac0f0d3b235405eece99aa30d7 + +PrivateKey=KAS-ECC-CDH_B-283_C6 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAQUgQpiN3fRw0KLjb/9b +k+xp9NJAqON8BkzE1ZlGe6J688nxoUwDSgAEAMfJ/3fgGLiAG934hnAlVrEmptmh +gxofYPNYcuUkwTTVU+SkADXXZ7WLSZ2ftUViw4MEEa9Z5wiKSjMz1dx/5bD38eHF +46wr +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAMfJ/3fgGLiAG934hnAlVrEmptmhgxof +YPNYcuUkwTTVU+SkADXXZ7WLSZ2ftUViw4MEEa9Z5wiKSjMz1dx/5bD38eHF46wr +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBiMxuTOvtDhPo6TSJFUa6BILxV/H6nPy +vnSeIXr8ThunnnYPAr9RxE+DYcMFTK1kD5JEb+OCCwY89LsiyhfAonT9RvUFBPvs +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C6 +PeerKey=KAS-ECC-CDH_B-283_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=055d579458860a3dd92ac6570847632f04460755c22a4c432cf4dde9611d2ce1608ca185 + +PrivateKey=KAS-ECC-CDH_B-283_C7 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkA7ua1fpVLTjRp3y1U8Yx +4tCUDbawTwvXAR6nNb5Q0EXampwdoUwDSgAEBocHGAXCWn0LFzn3z2gbLylcT52J +NzUdIdHUP2NOmlcQW/EnBjO6IYcuN5xQ5Eg3KxwOZehdB+3XEtfcBvppopn2A33s +5mDc +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBocHGAXCWn0LFzn3z2gbLylcT52JNzUd +IdHUP2NOmlcQW/EnBjO6IYcuN5xQ5Eg3KxwOZehdB+3XEtfcBvppopn2A33s5mDc +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAh6C1q9tMhGYF2/4mGwrx4agCBMmzIXw +JrcbMqwGwLrmtMuiAelzP6nSmWEmlCDbJO3A1a4oXXjJrhSzixAZ8TZS8ZAnfcR/ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C7 +PeerKey=KAS-ECC-CDH_B-283_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=054fa7c6c84fb89e5892d9194540860ea31ae2b6e37a86971344230ea512a3f6c0569216 + +PrivateKey=KAS-ECC-CDH_B-283_C8 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkATOqRF3IDX1aCX0doR1R +DmVxp4O0+yNUAnF9aLqP0UVOazGfoUwDSgAEAtJuRqbtn88dL4nGPYDgFy3ttPWu +3f8JKDaqyFmQlIhVV+rZB9ZxOXRwHBYK7eyPlOZEa/fTx5DL/4cCzHhAp4GOW2Ji +cfcj +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAtJuRqbtn88dL4nGPYDgFy3ttPWu3f8J +KDaqyFmQlIhVV+rZB9ZxOXRwHBYK7eyPlOZEa/fTx5DL/4cCzHhAp4GOW2Jicfcj +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBF1i0B217xc9DP8xWpKpoQXRrXhP+bCO +ch81gOBiZf9TihlLBrdkwf92mFSWuURRt1bE8w/fxjjYmQMSu+zL+9c+jFqFWtt1 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C8 +PeerKey=KAS-ECC-CDH_B-283_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0353ff03afda3772984aadc4000e1275656607154b06c3a59c664945fa6fde1c255ffa86 + +PrivateKey=KAS-ECC-CDH_B-283_C9 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAEZh8QeptXAEXduwc4q2 +mxwXqazBHaXax/2GSz38NqJSgtaqoUwDSgAEBhurvv7lIRxJF1Bs5fn549HlKyUG +84ygluG2U8qftp9GEFcCABS/0u8ii1oD4mIwweiXrQgacEATzuVRZspG3jlfxS9d +ISA6 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBhurvv7lIRxJF1Bs5fn549HlKyUG84yg +luG2U8qftp9GEFcCABS/0u8ii1oD4mIwweiXrQgacEATzuVRZspG3jlfxS9dISA6 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBKVhtRhK3tnHvZho8wQ7Xi3lGQj5wD1e +awijCIvMUO4yA+JjBYFbV5/13sb6yXe6cIizM79MAjHaAhh07gDXH+JdP01QpXrD +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C9 +PeerKey=KAS-ECC-CDH_B-283_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=050795ba093d2e02398c358951f20c9e3b4f60628a96a4d0c46cb8fc0005e5331b38a09a + +PrivateKey=KAS-ECC-CDH_B-283_C10 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkADa9IfhKudtvS93JRjXx +n4CssoE9pTmeB3eDLC/r3HGGKr4zoUwDSgAEBo7jJFdU1R33eABGrzmstAfEmYxi +C/+U+zdPr0tJgAbuoM+IA2akSfCez7rsxJ2IAwf1ckbBHFvqAK9CcYZ3qN7xXlkm +2hgi +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBo7jJFdU1R33eABGrzmstAfEmYxiC/+U ++zdPr0tJgAbuoM+IA2akSfCez7rsxJ2IAwf1ckbBHFvqAK9CcYZ3qN7xXlkm2hgi +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAdfXU2zYOD4cCxuKrgK6qf0sTmiyGAjB +dU0LFRNhFX+BJFkwBzA02kFnl9qVo4Nu7yex+icfWaQ0hI6YC60v3VP/0eNm/2kX +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C10 +PeerKey=KAS-ECC-CDH_B-283_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=02ab08d63cdb4be2502558e67eab27570f2d029e7f981d153b973080585d01e42f7187d9 + +PrivateKey=KAS-ECC-CDH_B-283_C11 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAWWXrm5J550GkDSXKmNS +Wjw+LSwlO54d0/N4FoEs9UrWXFRqoUwDSgAEBQ6gc1ItvlFAj4Xwpghr1Mjv5XL4 +Cq2t1+cOu0tyi/2/1PG8B9pSABfHrSkWonGbhViVj3fHEtNSz/nArZn7yYoOBl63 +rH/r +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBQ6gc1ItvlFAj4Xwpghr1Mjv5XL4Cq2t +1+cOu0tyi/2/1PG8B9pSABfHrSkWonGbhViVj3fHEtNSz/nArZn7yYoOBl63rH/r +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAgQvWj/l49MzW7e8253L2HFu0Y1/wv9C +l7wf63zKMQAi4iE9B767bA4EbVr9v6h+qYyn9V6c27BV0MxUm0RY1pmL27NFF3OI +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C11 +PeerKey=KAS-ECC-CDH_B-283_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0599757e3ffeb484b32d3b47828b6823d46786d35477082ceacf3a5a11552394fe58f53b + +PrivateKey=KAS-ECC-CDH_B-283_C12 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAV6oVnx7grSD+jZejmgc +CmNfVjocgUcLTf5E8ZT6ket4QhgeoUwDSgAEB6/isitU/olcJCwgwFSYn6gE5ZGX +DdqKfOEJ1r0xttqo8vx0BgczvVpOqbXqcJCs/ukYEGt/JScvP3yzbto4us0hN1YQ +zeko +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEB6/isitU/olcJCwgwFSYn6gE5ZGXDdqK +fOEJ1r0xttqo8vx0BgczvVpOqbXqcJCs/ukYEGt/JScvP3yzbto4us0hN1YQzeko +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBnr994j49IMcPH12BNB6W9xZ2kLZMnMf +r16vB1MoCWaraTeQABs50dhytl4xJRwfWE5P4+111TrZDoNv6QyNuU/nfO8LynIE +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C12 +PeerKey=KAS-ECC-CDH_B-283_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=005e331af55e96153d8a7b906a4a19016a26381977b49f80b9d70db099053c6a3b8e80d5 + +PrivateKey=KAS-ECC-CDH_B-283_C13 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkACkR2TjZUIrsy5h34SfR +sUYaza7QNfIOD3RMd08ccnA7XEtJoUwDSgAEA4a/3+YDc74RS0F8Tc60QyI/3mfA +/vKe0PhntaFfXqDMtNzKAvrDjshJTPdXYjPsgoLeOEtn8MqASAhCAQOdGUyL2k9u +Cv8+ +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEA4a/3+YDc74RS0F8Tc60QyI/3mfA/vKe +0PhntaFfXqDMtNzKAvrDjshJTPdXYjPsgoLeOEtn8MqASAhCAQOdGUyL2k9uCv8+ +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAYhmpPovfCU05WOikd6HGoswUqZ09dvC +O53qDozv2garwyyPBY3Ezxv5hdG1ZpcIR8umuKT0DH5ipYCLByC7uM3ztFMeOAvn +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C13 +PeerKey=KAS-ECC-CDH_B-283_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=07e132ea71a16c7cc261b9d6ff6fc52cc490da616b07d92f9e591fc1e630d3442572338f + +PrivateKey=KAS-ECC-CDH_B-283_C14 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAWYvVUhWwCCKMbGVFI+C +jgtckqTqTAMySL6/lXtYa0Ce1ZhQoUwDSgAEBwVSZMPeOmItJv561wC96gRdSzzn +GPTmrkTPN2w6lqJlCzIhAPRcwROGaK3IFQ03wHK7QkVmDBh4VoPHsXqh+4WRumza +I2V6 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBwVSZMPeOmItJv561wC96gRdSzznGPTm +rkTPN2w6lqJlCzIhAPRcwROGaK3IFQ03wHK7QkVmDBh4VoPHsXqh+4WRumzaI2V6 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAAVx177wVgiRcvE0I6WFq5efS49351LA +QsDGUmO0dpgeXzFXBEvKaT6dOxp/pq1C2382saZXEtCe87txXiZAoYL0NmIGhsCk +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C14 +PeerKey=KAS-ECC-CDH_B-283_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=010f26817098ce1bbd6743784d6fb65e60699c14933a2c8d854027aa58b58db9e66a53a7 + +PrivateKey=KAS-ECC-CDH_B-283_C15 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkASwBAKmWPuF9es9N344C +2K5187mRFPU2avtKAK3po8DuOaiHoUwDSgAEB3lPoZxrENOZ4PUtNvSDx4UYSOYr +rPlbWvUeygmtRF7hnvNNBhQNLuFs0KbLGWBQmnzMZkvpdkSpWuFvShc9moZwFfCD +fwVg +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEB3lPoZxrENOZ4PUtNvSDx4UYSOYrrPlb +WvUeygmtRF7hnvNNBhQNLuFs0KbLGWBQmnzMZkvpdkSpWuFvShc9moZwFfCDfwVg +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAW60u7PDhuD0L7A3vuR4xMDb++Vcxo4z +/bApueXnJK/0/Yv2AlFDL4RWikSXHoarcV04eeYU4Qclc174+2ZS0HnHkI8RvR8B +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C15 +PeerKey=KAS-ECC-CDH_B-283_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00bdd8ccd1b40c5bc2efc1c105999350fefaf784710914ff639582f1277678699491140c + +PrivateKey=KAS-ECC-CDH_B-283_C16 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkA0XCdrBezp58hoEfjIr0 +iyLbQdQGYnUAlhG4gNfSzvMpxQ6CoUwDSgAEAHr//PoxwRCqs7s5RTCkHEFq9Wa/ +uo8Vn5hEN+eZ3dqvjN/SBl+zxoRGp0BourfjargOmEcH45pKFD9aRtZGNC+fEvJq +Mikb +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAHr//PoxwRCqs7s5RTCkHEFq9Wa/uo8V +n5hEN+eZ3dqvjN/SBl+zxoRGp0BourfjargOmEcH45pKFD9aRtZGNC+fEvJqMikb +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAkF8ZWlNhQx8hm9+EWOaX4cYypqrs5L6 +hhDi1dfdozdaYH+bBRM5ONyZFE0W6nUlw/5OMuMg7QdbllJ+E7KpnJ8nrenvnty2 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C16 +PeerKey=KAS-ECC-CDH_B-283_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=014a83e747c90aec6101c0a752d92eef7475b00051ecad3d7c2e50cf4eba1ef3c80b8c94 + +PrivateKey=KAS-ECC-CDH_B-283_C17 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkA6/Vr/o0a1JZaX2SF5Uq +/NA93+wEYxvZlcEKwlg7DKjSRh9doUwDSgAEBrTCw2FbJmVD3hiciWz/d7VVfHgs +IVlhrHMkGF/JqBCY8uvqBH/vGWBzmuCu45o//bguiQ1CNvwi2tOV1JC8Ol7qWOjN +A+27 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBrTCw2FbJmVD3hiciWz/d7VVfHgsIVlh +rHMkGF/JqBCY8uvqBH/vGWBzmuCu45o//bguiQ1CNvwi2tOV1JC8Ol7qWOjNA+27 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAMXWFJ+HF0ujf0wcb2f2kFq7MZ9Sa3qh +vh3SBd+TCrHJG7H4AMLiHhIGzUu1tiKr6Xyj8lLLxo0FSnf466utWT+xhjMGkov3 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C17 +PeerKey=KAS-ECC-CDH_B-283_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00afd29e352779a39021536ea50c24fa264c599f8f8fe8f2ccf0615a6547a064d7c1a150 + +PrivateKey=KAS-ECC-CDH_B-283_C18 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkA9V3H4SFw7i+YqVvOTZR +PjtjGlYalCYT35UUD0cyFN9hfExOoUwDSgAEBZBsxFKbIgIo77sFRb9V7APIb4fi +9OOjy/QE4HtzpbGl9SjNAWWI5IDEhWzS7pqvHjAoEvvAsz9SfCm3fOD0h46gidAl +pEDA +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBZBsxFKbIgIo77sFRb9V7APIb4fi9OOj +y/QE4HtzpbGl9SjNAWWI5IDEhWzS7pqvHjAoEvvAsz9SfCm3fOD0h46gidAlpEDA +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAXMETlvmOZfXkl5DG78ATPDwuoWqKVo0 +Ho9YV6EgvonXdlPpBzfMBJaQ+XCCSnsMICJDloLJ2C9PI+SOXwf+qWJnyjvU1zCl +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C18 +PeerKey=KAS-ECC-CDH_B-283_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0477990f17d65589289c28e54a56a83bc05ef4ea6863c5ebe840925c9fbef64ccd6e69a4 + +PrivateKey=KAS-ECC-CDH_B-283_C19 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAOLAxgL7EyOZ7p8xAINl +6iLMEmD3n+OuYQibim+kVZyska7IoUwDSgAEBubjGMDEwLZh39PnIgkOzTL9yco9 +Fo2ccXTB1Arbss5nLZJSBAvcHbx7Fj98lVH0faqClKwtxP4NRyxOLyz+/JXVI/9Z +4OiA +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBubjGMDEwLZh39PnIgkOzTL9yco9Fo2c +cXTB1Arbss5nLZJSBAvcHbx7Fj98lVH0faqClKwtxP4NRyxOLyz+/JXVI/9Z4OiA +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBoWH5p3t30tVrFHyoX3Yv9b5TnIQAyFC +Fb+ySySCgedaPGWUBE7unHArxMHiEMfMIUUkWSVorA+f1n1uoCtNw++0LPuyJj2s +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C19 +PeerKey=KAS-ECC-CDH_B-283_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=067a661346fe052ca27f3f03e75bbdfc8fe6d0d85c62c8f79525252aa241ae9de97d56c3 + +PrivateKey=KAS-ECC-CDH_B-283_C20 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAy1XP964Wk2iKXiWYxQU +UY1LoH3E3XL3MXKIkNC0TTbyMJwOoUwDSgAEBvb/6gqHvZ7rU5xIo/y/OIFZhiJZ +x/eEDmSAn77bAag4EsDGB8eVuPKEf8OfpWwt4ebLv0lFCHyy47kZ3HdrTMHIPksc +ebi6 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBvb/6gqHvZ7rU5xIo/y/OIFZhiJZx/eE +DmSAn77bAag4EsDGB8eVuPKEf8OfpWwt4ebLv0lFCHyy47kZ3HdrTMHIPkscebi6 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEA/EibYAsV1+HGiE7gVD3gYu9YlZjtz5y +CnN/BxiWCG2gsUzZB9HLDOGcmKY6r3sxTx9XIOMohwUzhKwPXrabbEcajj09Fudv +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C20 +PeerKey=KAS-ECC-CDH_B-283_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=06476b0620eef165941a4507e6d798d6f150ab29333c0552281b629170d3291b2f9b3f41 + +PrivateKey=KAS-ECC-CDH_B-283_C21 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAKaqy13T6DWBT0UtggfR +WlM2OPcOlPh8Bhlu/4g41I7tLiZ0oUwDSgAEAt0Ak6jUGYMfNLrGxgpXDFHQjmmb +GByWS2Z9DRftcqSRGazZAakZdr5dXgN/IjUNZ6t7+rUbvE+mAm00fSj7RAe8zEDd +EKAO +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAt0Ak6jUGYMfNLrGxgpXDFHQjmmbGByW +S2Z9DRftcqSRGazZAakZdr5dXgN/IjUNZ6t7+rUbvE+mAm00fSj7RAe8zEDdEKAO +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAqkR5+bS/HcNHqvH33AbsRkISmhZANIt +UtWY/h0o/IkbMbSHAbjcZxPKRT6RsuxOTR+DSwjuvH6IhsOkWOcJJSQsSyK/CyBT +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C21 +PeerKey=KAS-ECC-CDH_B-283_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0746719f2ad08f8a8d6d6fbf15723f336285ce75d3a2fcbd5a0c54c577517a22bc264161 + +PrivateKey=KAS-ECC-CDH_B-283_C22 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkABEvsqtWRDdlZ2oeQbPL +kesaZ5DpZO6QDPySlWNrpMb6h6rSoUwDSgAEA/UH2ZzCSY4sf1T7PJwDLzglSOLj +Fo+hQBJaUmBIVo87s+WhBScN9378fWxV+SWbyCJzyba982duE8NgGxswIrli3hEp +yzsU +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEA/UH2ZzCSY4sf1T7PJwDLzglSOLjFo+h +QBJaUmBIVo87s+WhBScN9378fWxV+SWbyCJzyba982duE8NgGxswIrli3hEpyzsU +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEB1QapR1zAuK7VXwn7BXX+cOuO3bsL4bL +lejerX+ga1eDl/HxAX6iL2tUdPD18PTq1UFyBkBRU40+IypTDfyl8qDcZ3Rsi7Ha +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C22 +PeerKey=KAS-ECC-CDH_B-283_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=03cda4b5f44b5d3dc248310f994419fbcbd665115d1876046652251ad4aeeb1dcf184288 + +PrivateKey=KAS-ECC-CDH_B-283_C23 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkA+TxxPMOKo1v1Vn3/ogg +6IaUneh8AdjrZMe0DxVIy2F6kmAzoUwDSgAEBeP8VuwWKIXBKR5K6cGcjrK7VZ63 +7NWBdUm1ouo6ZtlRiAqmBMAE8q5NtPdItDe8EV4G6iAXqHeYKY3WAEYW/P/cx+wt +/W25 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBeP8VuwWKIXBKR5K6cGcjrK7VZ637NWB +dUm1ouo6ZtlRiAqmBMAE8q5NtPdItDe8EV4G6iAXqHeYKY3WAEYW/P/cx+wt/W25 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAh+xTlLNQkOlIPYwIpsd1pYcSb2W9D+p +yuN63YTaeuctwweOAN1ji/kFP61qpP8tMwuKSiC/4wIPQLlpIwLQsKPC2HeFbsRq +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C23 +PeerKey=KAS-ECC-CDH_B-283_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=015c892f95768a96ab5a4f9523b7fd466e101f63b88ad8f1fecb3027cd70aa00735dcc90 + +PrivateKey=KAS-ECC-CDH_B-283_C24 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAK5+s9QDVPn4/tGPIWLe +44FWyuBTW1U3DaNjjwFmiuz5cIvmoUwDSgAEBh6IWONo2ckX8SnZMt3EzKUh/0Gf +HXQjDoqlsbPpzmf0HEtMArDX+9xjajvDS73SqJKRtWew+yrzI4OGi9QNS6TKyYgM +JUC4 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBh6IWONo2ckX8SnZMt3EzKUh/0GfHXQj +DoqlsbPpzmf0HEtMArDX+9xjajvDS73SqJKRtWew+yrzI4OGi9QNS6TKyYgMJUC4 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEANCO04VqvvfUpiJDyS1uZwzrOvMjV/25 +05wZF1oQ0curNs54BdufrX/Ir+eci5zkjmL/oNRrgFqeWCHidhwlwO26krEgsGPy +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C24 +PeerKey=KAS-ECC-CDH_B-283_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01adf5a96358e18d69fd383b4dc7b20dd646b68a5c9f1417bcf426240ca22b8f32bdf1a4 + +PrivateKey=KAS-ECC-CDH_B-409_C0 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQArOkhA//iYqwXrUKk +bUNm9MtMWA7/OrHd5r3f27c3SBHVKx+pkyC0r11OkgjBTrjvqJFsoWwDagAEAE68 +TUrPm0BNq8OvPoy+qLiLMpmdPst/NnsS6zpigLhAA44iaBY3p9FkNuAU9pYWq/cu +RQCeJBCVQcgCQhfpqyyWP6njc2QAlabCWibu+sWOQ0LAyFRIsnCVkqEkAv4raKeT +xVjOjNY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAE68TUrPm0BNq8OvPoy+qLiLMpmdPst/ +NnsS6zpigLhAA44iaBY3p9FkNuAU9pYWq/cuRQCeJBCVQcgCQhfpqyyWP6njc2QA +labCWibu+sWOQ0LAyFRIsnCVkqEkAv4raKeTxVjOjNY= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAUaYmlApe+Nz3WZcRUVaKuTCIdpc1CQA +e9l/no6Eb5Z0Dz+ljDyUEpZxzdTX6mUKKq3p1wG0K//ahDlGoUrWCA+VuPxrfhc1 +KNCO02/mQKr4WqAPte3VkFo4s8eWG3cit3uNy0S7JfU= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C0 +PeerKey=KAS-ECC-CDH_B-409_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01d48a586be9285fa38dd3e70b0330b0ffebd327ceefef88fdc1521ef2fd61cbc9124e03b0c926e70fa56acb3edb54c3c48fab2b + +PrivateKey=KAS-ECC-CDH_B-409_C1 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAP/IvfXwEmYmkPg6j +9dYXmBWcF4qnktedH/6/+Ntw7h/eBApLXx7TP7P/I8ROfGshsGI7oWwDagAEAdXJ +Jg5z6jbk3qqkuPRUH2eAZraQdxqG8NrcWA/biVmB5t0C3SZO2fnBdjvVSmBSotPb +pwEacGgmNl7OKOOLM2ILygFtLZM4UY39aGg3BHbay0HjuUdGV2nr6BtiBzFnNXb3 +dFHQ/hQ= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAdXJJg5z6jbk3qqkuPRUH2eAZraQdxqG +8NrcWA/biVmB5t0C3SZO2fnBdjvVSmBSotPbpwEacGgmNl7OKOOLM2ILygFtLZM4 +UY39aGg3BHbay0HjuUdGV2nr6BtiBzFnNXb3dFHQ/hQ= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAX6fAbHW5XAjKDMNIyod0/LFksxAn2yu +8HCEQIN/NZdRDxEZVKpR5WRsz0fv8fB6T4rhywA3FPbqH9FDznUeLYW69UxVI5dh +CO1IL9auEDdDExynFgJrFqHkliMfmRzcj220R/X5X44= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C1 +PeerKey=KAS-ECC-CDH_B-409_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01856c92b46d671d8a7f6cc468efb60a61093d006c95bb931c1fccc336d4a8490fe17fe163c972bac39fe728f24534a0c34d2d21 + +PrivateKey=KAS-ECC-CDH_B-409_C2 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAlt4sOSnECF+cwdN3 +jC2/Pbfw9357p7vE5AjH1l4si4iwdV8WC621JOdpfFDmDI2Z5W2koWwDagAEAZxH +15kUyL2udU7F7B6ByP8ympOOaXHu48lFxOv0ieFLFeYTVhbImMgLewa4r2cGHHaa +tQAAiAIrT7DnVOxPq4z0/GNiVUJnVfqZtWgFwV6sBDJRVdzL+kFF4WHEDxib26o9 +0+DD1sk= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAZxH15kUyL2udU7F7B6ByP8ympOOaXHu +48lFxOv0ieFLFeYTVhbImMgLewa4r2cGHHaatQAAiAIrT7DnVOxPq4z0/GNiVUJn +VfqZtWgFwV6sBDJRVdzL+kFF4WHEDxib26o90+DD1sk= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAYPuNVqTzROv8XVqCOWOIZWoJimNQ/bQ +e7HDgrTlaNAICTkmAAnGr8vtDyMlLgHW0UxtjwGyMJs4GcJFSkitJTrJe848ebUf +UO1oA88FRkt0paHeIhE+I8AYxc7ZGG3bmBxini6ds+4= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C2 +PeerKey=KAS-ECC-CDH_B-409_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01972e225e08b47512e92c0da9a1bdddb1802be402222cac5788b322e101feeb06b66b2fe726c1cd8aec92e02f37d15f4c97e64d + +PrivateKey=KAS-ECC-CDH_B-409_C3 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAq9XWHN4xGAMBwmnV +KvhWuqObifXvRTZ/VRkhDHHXezGNBT7AwvSb9G3gXKvyPH0r19I/oWwDagAEAafv +PRfDAehmG6ZsHN7oKptE1xaQnjZjtCPcBu9r5PYWzReTIc56Vy2kvKLom3aO3IRZ +swDfdDhJogvDAmBitCDTlC8Y4tbFMH5uGVXjOwnVlR3FmzGisdWMIz4siW4tnMqo +7rjo8RM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAafvPRfDAehmG6ZsHN7oKptE1xaQnjZj +tCPcBu9r5PYWzReTIc56Vy2kvKLom3aO3IRZswDfdDhJogvDAmBitCDTlC8Y4tbF +MH5uGVXjOwnVlR3FmzGisdWMIz4siW4tnMqo7rjo8RM= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAOhd6dY+NOXHu6b/mxb0yE2V8R3+khB7 +H77K6Yzm7/PblthpAL/SLNQj284eVya+jll5MwC3FBdx98gW1V7IxTgi0uehkvpU +oX5bmbLZCWG1Spn+1Tq6S9oaQHStPSP5yREgV5W1RQs= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C3 +PeerKey=KAS-ECC-CDH_B-409_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00b6661a866abbf1843dea8f220e360fe7cd7d9e85c316138fd2532a57d7d2a6bfe6e5518019c603a2d0e338ac6a8690093c2883 + +PrivateKey=KAS-ECC-CDH_B-409_C4 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQA8yPI7kM8m6FdNwgG +mDSsxNk3vlAX4dGC7HZGarooLHO14+lv4QYUNkFALHLGJIS6HxLyoWwDagAEALdP +UlIBGfwIU2zqWEIg3psGJAHmT/Y1kwXC5rDASpX3e69T4jwyau52IRSVwwssFQuS +dQFUBYji/VaI0bNXY5CMH4I+7sqJQvYhbOBM72btaZHfaiL7dEEbE9BlE6ZbZOYo +Fe4CBpc= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEALdPUlIBGfwIU2zqWEIg3psGJAHmT/Y1 +kwXC5rDASpX3e69T4jwyau52IRSVwwssFQuSdQFUBYji/VaI0bNXY5CMH4I+7sqJ +QvYhbOBM72btaZHfaiL7dEEbE9BlE6ZbZOYoFe4CBpc= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAMqHCsvk6zrmXt2V1pROsJDg5VBxK+Ox +Np5HMgP1Kxg4ZU96Q0K9gwlwT+1pM66dFizNfQF5bMKGvz1TrWNpdzdPg1bkVzC3 +qkOAX7UoAfc74+mzKAiYSq677Xvl455RM1sN/zR4KUg= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C4 +PeerKey=KAS-ECC-CDH_B-409_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=010889037c707d90b833d03256ff2e8a5ffce16fb3613486221494a4fee82e74625a93d966c2028d0930115494f9456cec4d2b6d + +PrivateKey=KAS-ECC-CDH_B-409_C5 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAEz2iulSzYkTIBC8O +LaNxjlbb0oSO9Ce92yQXf2JEdbU0AK/csYh56P5rRgmk97vCFSsToWwDagAEAOOi +9OY8+8HuhEdFqz4eW+VzIEYJrs5eKLj7iriuBomEZ6lae1nAiYpBSr/ycDzLzcCS +CQENc8Q7YwFwOVEErK1sGlY9MpZjIzKhSB3cLDGDa9Gj7hpzZNf1uClduVo3RbS7 +vrgJW8I= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAOOi9OY8+8HuhEdFqz4eW+VzIEYJrs5e +KLj7iriuBomEZ6lae1nAiYpBSr/ycDzLzcCSCQENc8Q7YwFwOVEErK1sGlY9MpZj +IzKhSB3cLDGDa9Gj7hpzZNf1uClduVo3RbS7vrgJW8I= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAH62Hf3fw8DQg/4iE5Z5hjgdnjDmhK/f +K6yPGjYujG1jWN+VkwYAQn38HrFBGP0SObZ7aQFbqH+YEUzsiyy0W7o9zwBrKH4H +477x2ifOCNqeT0i9JB9ZofnJPIN4hHFXUPQIX5E/T3o= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C5 +PeerKey=KAS-ECC-CDH_B-409_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=010a8aafbb243fc9466bf381eae173c01be95d88a9c131b07ed54d2f117cd3af4019ffb196ebe8290b1269622f9df26763ffa211 + +PrivateKey=KAS-ECC-CDH_B-409_C6 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQA33VUwBMv1OSiuSF4 +dfmSSlXKsxm3anwXnPAiKTdXmZbPlJILr9RT5S9dL8SAATKfvXjEoWwDagAEAWCF +HP+UfOcqEYqrTa1M4sPOm8Mwzh0G761/Yw5Fu883CX2UBR2dMQq/+o2W7SKoR8vm +kwB5o93eY2vGKvQebsDgc/5kYuOK1Lnjo27MgROixjlM7SGr3I7Flp5Y4AnqE9vp +KalnCco= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAWCFHP+UfOcqEYqrTa1M4sPOm8Mwzh0G +761/Yw5Fu883CX2UBR2dMQq/+o2W7SKoR8vmkwB5o93eY2vGKvQebsDgc/5kYuOK +1Lnjo27MgROixjlM7SGr3I7Flp5Y4AnqE9vpKalnCco= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAILxSOw00dCLJueeN3LhLWWVmLc7b/8L +qxhF6aW1BxRJ7ydZ/tY6qAYkuDprLp1zm4P22wEJzqBIpyC6dJ/FIsha9f54N1HD +n+jQUVug8NPc0Z8Ywi2jkJ8C14c1qhGy/roPjTMMVwM= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C6 +PeerKey=KAS-ECC-CDH_B-409_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01e17b8844c4c757553a628d6f4c48f3a337ed2bbb6e4047dbfcfbfd02bb81c6e096f8ccbb7f2e5d10ee9cbcc960e3a99e79bd09 + +PrivateKey=KAS-ECC-CDH_B-409_C7 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAMnNd1/EY0p+fPKs6 +By24yIbUL6Xee+plA27TyNRKEej5b04abyVIiMqyFDBRkaJt0drRoWwDagAEAC05 +4PifuHUVHuOzVPjqFZ5/um8j+Kdk1J4H70PxjTz4bhuqrgrXnUAAcJpQJS8c42Ax +NQDORKm3dbA89CsxAklmB5TCXgQisDrZurqiNhBhMlH+DlQEbgT5IQQ23TdgA9GP +mN/a4Yk= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAC054PifuHUVHuOzVPjqFZ5/um8j+Kdk +1J4H70PxjTz4bhuqrgrXnUAAcJpQJS8c42AxNQDORKm3dbA89CsxAklmB5TCXgQi +sDrZurqiNhBhMlH+DlQEbgT5IQQ23TdgA9GPmN/a4Yk= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAIPKBN+EWOXmzm4TuTfatJhSHYJvuVQS +NFZ+mV8Gg8gPQ4UW7v8M+JGKX4tSYszco5l0FwBfizwg4/4lWe/g6FoSJ235Iu8P +Qlf+cDviUp9u/7bymaGiUcAeONQ8pspXbvHgvrbJEh4= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C7 +PeerKey=KAS-ECC-CDH_B-409_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01167edf7a3c50e13be126eb2caf6b5f8f761cc8dba413246423b877df74a3aa3f48144b44cd133ad9f2d05ef97a08f7ca511d7f + +PrivateKey=KAS-ECC-CDH_B-409_C8 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAsE8ztoeZYw1i9EM3 +x3xaa24Pdga1yHJEqk59ppjMj/HTMRtI7nyaaBK6+QVDea62HAwToWwDagAEAcWU +DC3is3NYJK4plMFQhvqVh1Dk2DEjrwR+mzwmR0bJtdkZ2iFTVdjCiygIo30MxfL2 +oQAKv+bxUQoYLv943YAum6IeZorqVzLHMt38XfkwH1iZ8CuugPgoJgHvPu/kFO8s +cm/gAlg= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAcWUDC3is3NYJK4plMFQhvqVh1Dk2DEj +rwR+mzwmR0bJtdkZ2iFTVdjCiygIo30MxfL2oQAKv+bxUQoYLv943YAum6IeZorq +VzLHMt38XfkwH1iZ8CuugPgoJgHvPu/kFO8scm/gAlg= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEATEVNql0W3R15sL9ckwj2epmgDoTm0fj +riY7D7fkLjMWJ5u/YiriYlMbLiKD7MGmEnybCQHUjMx4HwvewxMJEARLdpCamr1/ +yxhAfcQvY5EvomZyCAA6stKBAq3PuT3cBTdg5Twtqng= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C8 +PeerKey=KAS-ECC-CDH_B-409_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=015c0d202bfdee2dfbd4be91625171992e6c6b1a1d06cc1b2b66ed64c9d928bd4f062912900d3f89045c7190f513d3b019a634f5 + +PrivateKey=KAS-ECC-CDH_B-409_C9 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQA1OvDHJpl7jsavZ1u +ZJV4DFTmM/WiqfYchAjXZ9CRbZHLVM/Nk3U435LPxFk44zt31yTyoWwDagAEAU36 +qnBRjzZ838qJeVoNs3S7e0B6WMqsJLpGgk3OeFAQZ9fgRn0wueH9uwp+rOFfsMII +zwGdYr4rEqF6ePbJ9+cDZpdl92PGI1/nr3jyUETpnEsbkGU2QLPwrkgaVdR9HrF7 +hsW62hs= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAU36qnBRjzZ838qJeVoNs3S7e0B6WMqs +JLpGgk3OeFAQZ9fgRn0wueH9uwp+rOFfsMIIzwGdYr4rEqF6ePbJ9+cDZpdl92PG +I1/nr3jyUETpnEsbkGU2QLPwrkgaVdR9HrF7hsW62hs= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAQwnNTD1T+F0u71cJ3GlWkLmQFDDvyUj +5ggq9HbrAleHaW7fbkON0Fa1mPUABjPCZP17pQBEPnLak7DHgl9CI8eWgm/RMiNF +6iWt898aLGlYkIwP2bE+k8wAX07LFVov/3rFT6gYB4U= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C9 +PeerKey=KAS-ECC-CDH_B-409_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=007c32383aae80e1111207894c8cc5be66fe538af4a19195742a94a4c3f5c765d9776a56177c485ddb53c038b70478959d374627 + +PrivateKey=KAS-ECC-CDH_B-409_C10 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAJhdqr5imQzVm8dzB +kZ6URT6cvzyX4Gm0oXQmRJFn9qEImsFqECpLPkMql4v7RiVdxD0aoWwDagAEAVNf +yUm0kDAwi8Dal5PVcIh2asjPIujWwnbY8/dlDzATXh9sADAME0Ti8DBuoOJwsJqA +rwC4/D+mHcIsVVAfKmspRJRtmfe7/vvses9PsgDBAC4yLDkXLsCits4IB/Hj67Hq +NAA1MUM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAVNfyUm0kDAwi8Dal5PVcIh2asjPIujW +wnbY8/dlDzATXh9sADAME0Ti8DBuoOJwsJqArwC4/D+mHcIsVVAfKmspRJRtmfe7 +/vvses9PsgDBAC4yLDkXLsCits4IB/Hj67HqNAA1MUM= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEATvrjTbR5/U9gL7qM+/D4AmN6uqheXfa +j5qunFdueSDo9tpVogkwzmD9SQtPsBVNSSd9mQEdwdh/NS4SvbQaG3ofHlFmKe0y +PF1bJj/wNvAj8P9fci0FbCSkEfU7NH0HhthPe+h5EFo= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C10 +PeerKey=KAS-ECC-CDH_B-409_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01166107ab98db1dbe22c5888a70c992af4faf4623ef593802aedfe433809c53ef4ab0b2dc4dc2546488b356ef3265356055d8f5 + +PrivateKey=KAS-ECC-CDH_B-409_C11 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAvz5zlccqqEwJYOXG +kCLOOQZ0BFNEc8THgpQk+B8dRLMfIOK5guJRz5/7Mnp9g09Z0ZSKoWwDagAEARy8 +TtkDaifv/In/1V+h4+rQ+5O6z6Cni8r+ORSrGpeGD+wTNMqroHJDWRYD5neRrqS8 +twEBB0xERidjCtClJY4kQ41x8mq5TQW7R9Grl4WMS5LG/xy5vma5hP6OFuRPOT5j ++dZCgcg= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEARy8TtkDaifv/In/1V+h4+rQ+5O6z6Cn +i8r+ORSrGpeGD+wTNMqroHJDWRYD5neRrqS8twEBB0xERidjCtClJY4kQ41x8mq5 +TQW7R9Grl4WMS5LG/xy5vma5hP6OFuRPOT5j+dZCgcg= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAWkMdGSekuHBAE9D/W5GkL5ZWQTFbSrN +haSa8KF9NDaMh2jQOe3pySrSayYwa1/973v9GQCBJ19+L/BopsG5LdOMA0JW7XMi +sCdwKZTHT1uBgSTTShkJh/1liJL8meesuYd71v6UaRk= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C11 +PeerKey=KAS-ECC-CDH_B-409_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=007e7a249094eb52bee0115b8bd5545f81bf0b7d66998fe124c9a3dd3c5715d03b2f973d47c19af5108a2ae005fcca65e61f337d + +PrivateKey=KAS-ECC-CDH_B-409_C12 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAltQDsPpgHJp1qn3p +/p4R1C76k9lt01EC2gXTrIB+RBlOGOeci1vhHF+znIvU4xIyWvryoWwDagAEAAmD +OUYpTUruzbb3JUykicD/E68txuLKViaDXV3SIkFEDDemNpDNEYZ1gf9htyUtB6+4 +/wBhg/7m9NbvW3I8U8lsXB7N2EZS43nJN4eNdm+DNwUAQSNZwi1HeL34B7PITluD +NQkQoak= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAAmDOUYpTUruzbb3JUykicD/E68txuLK +ViaDXV3SIkFEDDemNpDNEYZ1gf9htyUtB6+4/wBhg/7m9NbvW3I8U8lsXB7N2EZS +43nJN4eNdm+DNwUAQSNZwi1HeL34B7PITluDNQkQoak= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAFwk9K2b3LFGBoWiLaVNvd0VB+9t5Gna +QXDOMBR1eaVJRduxvOnwLkcAM7sV/Bpw+DHnmwF8qTK5CgjKLj9VxQzA4T0nnXvJ +EZxXPD90FBC7fBytEHbDukKu0c5p1WIosIL7beDu+2g= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C12 +PeerKey=KAS-ECC-CDH_B-409_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00b9d8b68642b2729340d8b7c5ed3b3a8913c4a3f6b947473017c0e105bc7edc60daa9b0732772220f93eca4878085f756e3adad + +PrivateKey=KAS-ECC-CDH_B-409_C13 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAZxJewwmrXcfqVo+I +FaKzDPrDNmu08BYNU3OKuZXOdWgfzV5JLzqXJbTPdbpDAaeGBJNCoWwDagAEAfHR +ruX8WUykoiuButcH2CG+8yU5ZvXXeVYVdIOWFpb0xgR2pCtFK4nB7LNhVHXsnJbc +hwB1XF71WIm0Fc76DogaPvyb6G82xnYVQjtFLqtM1WEa70GY3bMa7LQ07u7BLt0F +kTrxn8Q= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAfHRruX8WUykoiuButcH2CG+8yU5ZvXX +eVYVdIOWFpb0xgR2pCtFK4nB7LNhVHXsnJbchwB1XF71WIm0Fc76DogaPvyb6G82 +xnYVQjtFLqtM1WEa70GY3bMa7LQ07u7BLt0FkTrxn8Q= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAKq/aquz6Q+VbXAE/8iTxw+OkM3DH8DH +qI8WMgVB1YRDrzlAXYiNlnZVfN05SyfcVEn5RQEn8m26BsM/j7RdlVz9tc7dqT3Y +pF20LuC5JkoFTBaoe+2tRcDZoPNbvGqnoSlWIug+vos= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C13 +PeerKey=KAS-ECC-CDH_B-409_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=017d60394c7ee64ba73db91484713370daa821255807349c237e5849411bf0bab3a1b353be3cd07eeddc5c2ffc74336225dae6f7 + +PrivateKey=KAS-ECC-CDH_B-409_C14 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAayzCOH9pr9Q5eLf2 +a9F2ZiVwgbpNZu5qmoK3yHxKxfDrprwtmByh2p/yArpyy3/pwGzwoWwDagAEAIak +TW7k6MUNHhDX0dETqWEHUCEGeeDkyrjGImeEKTitXZM8mA7vnUZEeRu/01u6xknS +EwEdpjISYxYF/qDpP1gmsZKbK9HblQYV/LBetHvZy2nq4DscM9ep5HszWkBJgjj+ +24mZsE0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAIakTW7k6MUNHhDX0dETqWEHUCEGeeDk +yrjGImeEKTitXZM8mA7vnUZEeRu/01u6xknSEwEdpjISYxYF/qDpP1gmsZKbK9Hb +lQYV/LBetHvZy2nq4DscM9ep5HszWkBJgjj+24mZsE0= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAB9P+/IvZ8FZGwp3DlY8Crpm/gFWHF4i +flIrXd4jx0jKz49KAikN4mtHdn04ilyDbT7/SwAtJz8uhRblCDiPjtIBXsn+Z8Zv +gyzysmHfrVhWEoBC+0phqRo3s0HeQpbUv2O/Z6NFinQ= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C14 +PeerKey=KAS-ECC-CDH_B-409_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00b19e052edd44421ee2f5ba845911fed9183d885da85d51dc819ca565ce574f7db257509876377b40c5a08349019563b60e13e9 + +PrivateKey=KAS-ECC-CDH_B-409_C15 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAPgmPPxleidpx1jZw +APgEB5rcoydbLnk+jTEsjkAs8NDOUzF0L4dRX03ZzGaCRhlLlXK2oWwDagAEAQr0 +rjNLpAvWU44PCVqlb2GivStfOOlUt2F9kroQYDzcyoNlVNAkLds31eFXawvmnw7s +5wGzNVIa7DBfMU1/I+0ozAxNI/M6Z4X8bG3pPl+rzicTAvlVf20q53xScg7aWi4V +Q2RD39I= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAQr0rjNLpAvWU44PCVqlb2GivStfOOlU +t2F9kroQYDzcyoNlVNAkLds31eFXawvmnw7s5wGzNVIa7DBfMU1/I+0ozAxNI/M6 +Z4X8bG3pPl+rzicTAvlVf20q53xScg7aWi4VQ2RD39I= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAbCDPrNEBFDj+lFIwlwt8uACBibyQHQi +IX5Oy4vYp1GnK6suxWQq6Q/SnYxNeenMGRtbpQAjB4kFtqMwCf/qGhl325Q1ea++ +uHGXAFlpaynvkN2EYXdrNDoJyFOlOOTyL9+FT8vztzQ= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C15 +PeerKey=KAS-ECC-CDH_B-409_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01697512676ae56ff5ab778c411042d217ad24a24ea05bbc253e4395fecc8a07fe77ae0ca4ed977459f1a14d9b83931bccf46107 + +PrivateKey=KAS-ECC-CDH_B-409_C16 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAfYSTE8ZJna5HKwvd +t23sRYBvguCYcjMB3zO2u7l/eUvyaHn8M8KXP4bBVRVJZBqBm1cRoWwDagAEAEgS +rxk3YwuOp9D/cjy7BbeidA/Eyb55LbIE+SlnTDLkfYXkdwuQPTKQptYsJ0yyV7do +NwCMb2FxF4a/XFTrDBsxJtZBskpmYrZ7JXMCqaYaqM1QOEa8uxsU+lyXRUNotsJ9 +0t4q6As= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAEgSrxk3YwuOp9D/cjy7BbeidA/Eyb55 +LbIE+SlnTDLkfYXkdwuQPTKQptYsJ0yyV7doNwCMb2FxF4a/XFTrDBsxJtZBskpm +YrZ7JXMCqaYaqM1QOEa8uxsU+lyXRUNotsJ90t4q6As= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAXS9Iz+GHHuFPMqPWjg1dISe8s127yK8 +DhWfcTodBzh8QgOxH0wzm2aWdPzx2sGZcDvrBwHix3jMpklj2HMp5XyLyW0PZzcE +H9CH2vwH3WcOLOclVH4aJhxD+8VOFMNHPr27Mf2oRzo= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C16 +PeerKey=KAS-ECC-CDH_B-409_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=015960ea8b92bd77d52874e3ea82ed1763440189d68728d3974d4c01d6aafdbb5274648f6f3eaa4faf3fc72d09892ab038cb2fb7 + +PrivateKey=KAS-ECC-CDH_B-409_C17 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAv6WUhWxnwoNrf7Fx +tnx6Qa5D7zRQiYAkqTE2VPzzHh4fusetUrK8Q1iXWlxhq59OPk6eoWwDagAEAOG1 +MJpEgAqRatik0ZuCpYsA7gSCSAUKbtbDPOG8lwFUfpPXyQQvhJBlS3OizX1z9zPA +vwGAsgM4dGNR+sz7mjcRpOE4RXVQu/WDFgNMbyFqU3SSY9/+I1m93NyJ7GRGqaSp +9O+QyG0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAOG1MJpEgAqRatik0ZuCpYsA7gSCSAUK +btbDPOG8lwFUfpPXyQQvhJBlS3OizX1z9zPAvwGAsgM4dGNR+sz7mjcRpOE4RXVQ +u/WDFgNMbyFqU3SSY9/+I1m93NyJ7GRGqaSp9O+QyG0= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAMHctzfSUwNbuR0qSoXzfQAUK+gfySeM +sjpNHXnSfI08RECyyEK8HiH2kk4U3IMbCr+4RQAMc9VoewSQzMB/ZUEBrN2zbNDC +7szhZd8nb4O+IR0B0w/1wkPwkAVy7m3wf1Od9qRomws= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C17 +PeerKey=KAS-ECC-CDH_B-409_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01127491ff33a67ffc4757416cd02a081cafb723aff52af35b069b89963e8e3ef5bc19c5a093ccf511e3c3c19be789280e986809 + +PrivateKey=KAS-ECC-CDH_B-409_C18 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQASgIOBsQA7ySYwRHN +4VCHzaSKb7LswB2YW1fw05IZIOksQ/OraIEp3AGtKfwx1o6WIjGboWwDagAEAWci +f2KElZTtY/JH94Cy0R3ZosLHG9a3EpTPi1nOaQv+ANqbwduNHarJv/jADnvfBx/g +0wE2w+p30JPZc5++aJExixSVl3hZm9Hn1al7/IL/6F/VqaAbgvcuEfrZbS9ctXmP +We/qFe0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAWcif2KElZTtY/JH94Cy0R3ZosLHG9a3 +EpTPi1nOaQv+ANqbwduNHarJv/jADnvfBx/g0wE2w+p30JPZc5++aJExixSVl3hZ +m9Hn1al7/IL/6F/VqaAbgvcuEfrZbS9ctXmPWe/qFe0= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAT2WomfRoqnqg66xsB2KziLiUcgvX1/D +71mXowEadKEBFd9g6Y0TnN02DnTXb6Ui7rVvSwFrZVq3zQ059Yj77+xU5PRQR2ZM +izvo5XqxE3cPX+DGIwD0oJ+iiZ5zu8mCMmX1XVz0rhg= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C18 +PeerKey=KAS-ECC-CDH_B-409_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01254508553eab09fbc2fafe13fa9b324d9217d7d0ba4cedbe5dc869ad68de4f87774dd17d6428ed242c71956f252969e6bd5837 + +PrivateKey=KAS-ECC-CDH_B-409_C19 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAwZs5FmX1A1NUf8cs +ntAZ9TEWkO5B58iVqn75LGD7nzRU36xXUkWmhp8f3sdF1j6lbIkioWwDagAEAFOn +piqLQES2Cvdu+ltEQpv2X2WYfWoGIWPdVfCNyakbi7m2Jw+KAmEj+Z65NyzL3SfK +OwCt1G9+pwkvSN2qL+uWyyS/ktJij7bk983fUj5fhAEc+Kq6vWAJoT8ppjtrfuZk +xm84KfM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAFOnpiqLQES2Cvdu+ltEQpv2X2WYfWoG +IWPdVfCNyakbi7m2Jw+KAmEj+Z65NyzL3SfKOwCt1G9+pwkvSN2qL+uWyyS/ktJi +j7bk983fUj5fhAEc+Kq6vWAJoT8ppjtrfuZkxm84KfM= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAXh7MLOyBOKYaQudcR/+7xZ63FeSBotc +jUIuyQ+Uwr3ShM2/i+5kL3C9e+LakGue27ws0QBDB4+RIRApChPZAWDw5xWC+jnA +512BkOuBHUUCIARMxtaA2VapiGDm/IW7htZZkKFgxbg= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C19 +PeerKey=KAS-ECC-CDH_B-409_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=004b9accc21d7122835fc21410ed1d83767c47a54ffee5f0c180fc55f3d0e8484af3ad38020294be92f02f0ba7e2b4f4eb1db07f + +PrivateKey=KAS-ECC-CDH_B-409_C20 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAbJCYtT0Q8qwChKmZ +AmWPZn6kyrKGmK8/oHAGobtGNjsQPEqkySwcP+dTkJf6cLik+kbFoWwDagAEANPt +9lL0P5yakqLk00uoP11+lQwoNGoqaFG/dVRwUBQKTpwcG1AOHSrTZMMGuaRK9QOm +IQCZsmxkNn8ZA9qV31FWLSUELAGhrdp1u6WL2w2KqzULUuz76YSIwmGd4BzXD14A +iVO8pUc= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEANPt9lL0P5yakqLk00uoP11+lQwoNGoq +aFG/dVRwUBQKTpwcG1AOHSrTZMMGuaRK9QOmIQCZsmxkNn8ZA9qV31FWLSUELAGh +rdp1u6WL2w2KqzULUuz76YSIwmGd4BzXD14AiVO8pUc= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAenaCtGhWsPEMfIglU7S5QKve3RsP9V7 +Ls63dIZYAgoJVmSHg1TfCqGB5X5erSyYWtMCPQCcznOlRwg0i0j48/Z0u3ZU9EHy +g9TopOyPhZLvUjlfJMES1ZQtOuCP/o2Znv3jmYiKfPM= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C20 +PeerKey=KAS-ECC-CDH_B-409_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0093e2581c159d74d11f8667ee03399208b5c1a4ee5b20070ce8d97d251ef1236dc81dd688b2f07a730e6b8aeca0c193a28b178f + +PrivateKey=KAS-ECC-CDH_B-409_C21 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAp/o4qKuAMNa0l6I7 +3l5QB+OdFNqfgtxWSuPNtK9fz0G8/vetrbWRcebX09PDrGf3vnBzoWwDagAEABO7 +O6kdXSSIr1ctmVzvj/+x/YXRE0IejSwMOql824qTP8DT8F9GRs6EHr3PGphgS/+j +3wHy4E6hagEtSGTPLKdWSEbec6M/JFeNxNIhNZxPL4bKgjywWWv+R2Dp6ty0rVCK +saFx7L0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEABO7O6kdXSSIr1ctmVzvj/+x/YXRE0Ie +jSwMOql824qTP8DT8F9GRs6EHr3PGphgS/+j3wHy4E6hagEtSGTPLKdWSEbec6M/ +JFeNxNIhNZxPL4bKgjywWWv+R2Dp6ty0rVCKsaFx7L0= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAMSSlPtxKUIiGiUAMkr3vYx+wc0bgJTe +0brAAQqGlgg/fvrsqlED1nYkmeG+SFfTIAMCgQBWT6ERCzk5Jd+7JLqaazNz9GJO +y8PhL5cG86sFQpktjbbI2Lsl+gYU1Ib20ayfPZi57f4= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C21 +PeerKey=KAS-ECC-CDH_B-409_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=008e2f1c4bad19c46a5134afccf7f4ec14ab591c8b8ea48d9c3d1e7354ab43ba20aa39a65fd92cdc176cf3dedecbf9da49a8d855 + +PrivateKey=KAS-ECC-CDH_B-409_C22 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAzp+Ce9JMAUw+5Z7e +90cXjWwDDBlmmtjnGLoTAr70ta0sEjNEj1J1spqJbAsuew2pIGi+oWwDagAEAXbj +EBLZxgSy0aGSKijYpXTwYMw2OIsoFtL4EX2iDAaZqwoI92+6pHbwqcQkv0yVK0dU +/QEf7cPo+Ogo4P+/Av2F0pwCAf0PU78mFMEK5RzLWMvEkAw4zEyaUthtifm4wt5O +In9OIo4= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAXbjEBLZxgSy0aGSKijYpXTwYMw2OIso +FtL4EX2iDAaZqwoI92+6pHbwqcQkv0yVK0dU/QEf7cPo+Ogo4P+/Av2F0pwCAf0P +U78mFMEK5RzLWMvEkAw4zEyaUthtifm4wt5OIn9OIo4= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEATSt0sSZFy33ktlKmziV4kW4QHPDJSY6 +hYwen3zzCkTyaNP4NYQR3AqcqrUFwKvAFhML9QAxwjaxQ8oDbIg2Qff5uVf095ij +FmfEFWA0Ann84JYqIb2LtS+iPbcahPNaV5TvXgdZct0= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C22 +PeerKey=KAS-ECC-CDH_B-409_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0190a1693eebe287ec980236d8762804d23fdb6f222763a0efc364f9280fdd53394c2badcc51ff09557f3b97cae7f70d790bf9df + +PrivateKey=KAS-ECC-CDH_B-409_C23 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQA4287mhNBmVsT/nC8 +VF0nnm2xSCySsTzozA2hwQDqL6qAOmSljMfrHP0WdXCDXFIvZZNHoWwDagAEANHK +gjk7jVC9GJipCb85Mz7KO96YsLDc7Wb4KGMOaebrEot87CPwcmAEcHMmCnZTMd1v +VwBsU1/5Q6D+dQ/Gw5kEppEroevA9GwbCCPkATx3R16imz8ySBlm8bFlvtumwXoU +lPttTz0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEANHKgjk7jVC9GJipCb85Mz7KO96YsLDc +7Wb4KGMOaebrEot87CPwcmAEcHMmCnZTMd1vVwBsU1/5Q6D+dQ/Gw5kEppEroevA +9GwbCCPkATx3R16imz8ySBlm8bFlvtumwXoUlPttTz0= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAPDsly3J/f0IzY38unKYtN8tvYDCCyiJ +5mOsWMw0jL+Pn/0x/7UGGNbDjXKpnVxdLqzAAQC7C0iJPNuRXmXNXXl4BIAgF6KV +NDZUJGo3/jpg196YfmqaEKrwY9lrEBhGEszSZAfX4D4= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C23 +PeerKey=KAS-ECC-CDH_B-409_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=001469dabcf2210aa7de0040b201221eb4d1a4725431fb5a93212a66ddea4187e078f5e3d82606f6cdfc0ffe6b69574d1d0ba643 + +PrivateKey=KAS-ECC-CDH_B-409_C24 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQACKBnFu1vTPco+QGZ +KPNnx3qQUkkLmouoelnNyoTnfGopmFP1SW/r5lL0ujM1AcT88rovoWwDagAEAKBF +tea7t5UElfbV1kWit9cgBnJdAiPH/3VTQCLJJgqw0tjTM3iaPcz8OolQLKUAvQwf +YQHsVW4bFiHsGJNlThmNWSPjEUeKi9L//ygMkJL/wHNyiamXSStunr+TGUdjTvf0 +O0Kc82o= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAKBFtea7t5UElfbV1kWit9cgBnJdAiPH +/3VTQCLJJgqw0tjTM3iaPcz8OolQLKUAvQwfYQHsVW4bFiHsGJNlThmNWSPjEUeK +i9L//ygMkJL/wHNyiamXSStunr+TGUdjTvf0O0Kc82o= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEATeERODe7P867Fq2506BI7qY2LkaUHz8 +oNhQl6rZRMFbT9icjL4sdFHY7GQQRUIbS/aXiwFkR8ITyQNd57zCm91h1u5u1Vec +Nr7Fa8a0T5KGv56Z+sl/NWcIzQMQ2/Yzj5r417E1kQI= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C24 +PeerKey=KAS-ECC-CDH_B-409_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=005c701a93d7790322aa7c67440fdd9ee8057a0dae86d1e856ae89e7893da178bd67777f86db2be5c8e31dc50ed8a440aabc342d + +PrivateKey=KAS-ECC-CDH_B-571_C0 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIA0TyK+h5mblbIof2 +dDDqj+ZGxi/ji3zmHx+VZZfCe93ZkC4g1ENqvzvr2CQ+wpoASBqKLBn1UOmWQbXx +Sq+7W9qVOnVZ+GU6oYGVA4GSAAQGr3H87BopBBFv4Uh4Zjdkwex0hw5dLVORnwtj +WRLbgN1UYNnmmUWP+ElMW/x0+6jTsS9l8BXo3vEN4z8YABkfTLUC0hk4uVEBlYQX +exicZkH/tni214M9jUuyXe5QGN2k5MDSGQSMAc0Nqer/40bVPPGgezOz291Lw6yr +5IMvmYHv8mYJkarIUhR5he6jpR4= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQGr3H87BopBBFv4Uh4Zjdkwex0hw5d +LVORnwtjWRLbgN1UYNnmmUWP+ElMW/x0+6jTsS9l8BXo3vEN4z8YABkfTLUC0hk4 +uVEBlYQXexicZkH/tni214M9jUuyXe5QGN2k5MDSGQSMAc0Nqer/40bVPPGgezOz +291Lw6yr5IMvmYHv8mYJkarIUhR5he6jpR4= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQDtj9foRKua18RPHZRRP5MvWAg4m1A +DBFgmjpjS5oyX0FrDj0yFXNMaKHCyPrR0Lues5OaQa8iQh9oeB5+sGZLnfXOpEje +qjsAjmzHe83cgW6Ez8H2JoJPok09X9M9gJPL/h/E2IG2O0lBI7x1lnDtyxiHuzud +WotRa8UDgoFjcJ1NrLWU0nehWpLAZOV3DRs= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C0 +PeerKey=KAS-ECC-CDH_B-571_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=06775e1b99a236e02b020bc73666e5751c1210dcb6e9b02a69f4075376e49f7a1476d2209e861abb73f5e3ad189d268e035b1de93d47b3a64de5783c9a09bc223e1cc612f26dcdf1 + +PrivateKey=KAS-ECC-CDH_B-571_C1 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAvTSt+Y2YObCCUng +bcZwvoqvglMOC26v4hAR/p0PRAfIVJUVc0UozaKZ6fz3OKl/v0PEu6JnRLMnUxtA +FD4Vi8hkWQnqiIRWoYGVA4GSAAQG6nEYJ62O1Ym3Ce819qnNRiV5i9iH5f5ZxR8P +QcMot+zfhHNsQ/tw45hu5eX5huAJ9kEVinXM5rOfU6i/BoKDAZTkAHFI3u8Exrny +pgmfwDZ/qWCTlMMiGtjG+xEdK9xDBQU4BHiNMur3ZDFAbnaKRIy1yONMgSJe7JAV +q72SclwAJxLtMZLYB7Nq/qhT9yI= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQG6nEYJ62O1Ym3Ce819qnNRiV5i9iH +5f5ZxR8PQcMot+zfhHNsQ/tw45hu5eX5huAJ9kEVinXM5rOfU6i/BoKDAZTkAHFI +3u8ExrnypgmfwDZ/qWCTlMMiGtjG+xEdK9xDBQU4BHiNMur3ZDFAbnaKRIy1yONM +gSJe7JAVq72SclwAJxLtMZLYB7Nq/qhT9yI= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQFdcuwWfQjMJ+ZO2wGrHHXvMXR5qGa +/nKBHLYSpiOMnMwzHmfaDBC4jMKl8e8v9ta3RAZdJC9ZjaLWM11MO+z1w5U5QMYO +/McGtDNlLjo2oHAYqorT0v8x7Xhc5WAXFu/3cQ/BPG/5/3XH83AdRZ/Y/nDAtK/O +2ghoFxfbmCHYyFj9OeJ0/zd3L46EhW5wZ0U= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C1 +PeerKey=KAS-ECC-CDH_B-571_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=03a80ea8cfecb858f9b77bdb46b6cda26320ee8c561a2fd6b7e0a2b62201fbfe60f577780c75a98a11a69de4c4ee911930d2200b6972bc3123d7f278615ecc65984a59fe352a1cec + +PrivateKey=KAS-ECC-CDH_B-571_C2 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAStjE7VoU8+NAnME +nPftKrjmMuWSVu0EM2aFdkjz8qlnTK62+w/NX7qwu6u84XoPxKeBSEmcOJr1dIY3 +RkFpWw6FLzFS7sckoYGVA4GSAAQECnh2PRcEWd00tcBOx4LmmMvpA6WjSFUcUkjZ +2s8ZvLmkmOoF6A4tbMHz6lujpDhVuAHIwDVv4+Ke4iS7kfTtDIVng3m3JUIB/0nO +CmLp7a5qpjqYSORPGFQS0P60a4f5FCS9r/7VFoMh7XbyNfddM2Z/bX1qnIV7tPhU +QvxA+aIMBK4GNipG7O6hXEXWm+s= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQECnh2PRcEWd00tcBOx4LmmMvpA6Wj +SFUcUkjZ2s8ZvLmkmOoF6A4tbMHz6lujpDhVuAHIwDVv4+Ke4iS7kfTtDIVng3m3 +JUIB/0nOCmLp7a5qpjqYSORPGFQS0P60a4f5FCS9r/7VFoMh7XbyNfddM2Z/bX1q +nIV7tPhUQvxA+aIMBK4GNipG7O6hXEXWm+s= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQGSqZoMP9EMkpnroqQeJaJe1B1Zs9S +3+E+Otux55NmXStxg1h1Tv6AnkSWIYUC/rVgTb+8BKEQfKnsTq3H0QqdbRR0zt9X +gUUG9j9p+MGLZ/EQUbPTAjahokkIiyvKtc/4MM256z51wehyUuXY5huxpmNI+2ge +li1lq8VNXeot1yxVRZB0AHT3xmxLjf0wdWE= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C2 +PeerKey=KAS-ECC-CDH_B-571_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=03edea7e47ded7c2ab1115f4ebcbb42677c7fba6e0cfd811602896251ada1d5a0b461aaf4e000f4d4231b96d8dee7630d9f1b7860e6418dac8c3b07b66af6fd1acdb44b2683b29b4 + +PrivateKey=KAS-ECC-CDH_B-571_C3 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAhmXtUgcDPbPQ2v+ +Ngw7EZueTdVvPChHr/sgIcusS1fcGPUHXWeK8rpunu+8QTjYGAU/LfMqEOiuXWQJ +9bLx88q/NvgI/cB8oYGVA4GSAAQFYM+RMowmu6E/ccm13d0FwYWWnYi9Dp00o2B6 +kjsjpbZ1RSFnADri8K3VFB6kvkHrrpHTpqoVw5Pb9YWtbJIUsmnoa08FS/UC4y7C +QEGKmk+QF+Yy+Kd4l6IjPW8fRbj3qoGPhH3bPOq1paEsdU/OjVewMgoHa1NEHc+f +Ze8yBOCJGR7xVv92IpSJenL8qTI= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQFYM+RMowmu6E/ccm13d0FwYWWnYi9 +Dp00o2B6kjsjpbZ1RSFnADri8K3VFB6kvkHrrpHTpqoVw5Pb9YWtbJIUsmnoa08F +S/UC4y7CQEGKmk+QF+Yy+Kd4l6IjPW8fRbj3qoGPhH3bPOq1paEsdU/OjVewMgoH +a1NEHc+fZe8yBOCJGR7xVv92IpSJenL8qTI= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQFBnGvZcvvkvMF5frLQojMBKTGl4o7 +eK/kBJxqmV/ow8C7YJq+SdFSse7WxxTSVP5u/xWanr0krRaRnvdvRHAFfrfCZaS9 +lugFHQjiHSZNjk28c0CIQqtXzXjTI+fetiWzdBmUuK/+Aa9EYWIttBmv7q0EWEX2 +w9ttmC9FtpK+oRzyXRiso8g77IQMdYKnBi0= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C3 +PeerKey=KAS-ECC-CDH_B-571_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=005b640015330f8416f2bbbf8b5660e01a7abba8b0197a29e52bb535d62f89ad0443e08b6e0d1d15f4eb03c0fe35e3e43bd7739cb692092698a2cd13126cee4432831ec7423b3434 + +PrivateKey=KAS-ECC-CDH_B-571_C4 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIArU5rMdwdYeZ9Dln +Dq6Fubo0qLTzccyTWiDOjFZlIe7NjE9a/xFq4Nsq1urhozhENMWZN5ghrQXYGtoF +SCmd/ZjP1tPxVzUkoYGVA4GSAAQG2uU4yCBEOXdBXO9OeZdLp2K2m0NIECAMxv/z +JqI0TNIb4ZwVNkLfgqPlelUxqL8Zdn4ZldJyj8tmHVjsVh7yOjTYYHlxSQ0FBCQ8 +eSuQMYTqclqUfKiSGMqcj6Hgmn3WjeiOrpD5vSqN9BTdaaiysaLe0sbX9RTIkHmX +Yk6wvJ6pM6LUdO+Pg7rqMkODTeI= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQG2uU4yCBEOXdBXO9OeZdLp2K2m0NI +ECAMxv/zJqI0TNIb4ZwVNkLfgqPlelUxqL8Zdn4ZldJyj8tmHVjsVh7yOjTYYHlx +SQ0FBCQ8eSuQMYTqclqUfKiSGMqcj6Hgmn3WjeiOrpD5vSqN9BTdaaiysaLe0sbX +9RTIkHmXYk6wvJ6pM6LUdO+Pg7rqMkODTeI= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQDmsnpGvWUB03NM42k9SQFdPAeQTpJ +uSJGuj1t6FXj3t9uf97amrf3+Edudwzpu8OppeuYRUPcw39fEb5uKKHRCQkx9cW1 +o1EHgNMtuxNImb2i6YhIlBh4OHq6ZmX9JCUhYM4xI/aPm1vY8lSji4TsU2Ul/gB6 +hjtvzEifk3oFpf2UbWKCUyign4Ony6J/6l4= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C4 +PeerKey=KAS-ECC-CDH_B-571_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=027af05ecd0332784d64b0b1bdb45c310fd445c5a6d6b34f35f4eaa3fa3e171ab98763d243a1dedf46aa29864620a47d05eeaefd748186bcbcf187c01e7ce36e2a53ded071036b59 + +PrivateKey=KAS-ECC-CDH_B-571_C5 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAxipbjgngtRHbxvr +9pehB28i4dLshHR/n8QlBdVUfaqgjYFHIXWWWZWGhc9OpLuhL/+2avCfZpRSHxHA +m2YmyK5S+/szalKhoYGVA4GSAAQGdw8vzS6bf4vFwpLSg6uthRVQcf4373zoTzTH +YW2j2+G9zpqwTOp7xLwljF0qt3I509CEVost/3eZiCiNn8a7Nk9RnQ6FWtME9qH0 +5f4A/pol2EWbiIA5iO8r8v71oj8T56fn80Wav8PVwAMDq8xQgPq4GwnVvgMg75kF +GaBq8TwpVi7pVXFagswNrvLF4Os= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQGdw8vzS6bf4vFwpLSg6uthRVQcf43 +73zoTzTHYW2j2+G9zpqwTOp7xLwljF0qt3I509CEVost/3eZiCiNn8a7Nk9RnQ6F +WtME9qH05f4A/pol2EWbiIA5iO8r8v71oj8T56fn80Wav8PVwAMDq8xQgPq4GwnV +vgMg75kFGaBq8TwpVi7pVXFagswNrvLF4Os= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQG9liEkQYKHogUjkve44vGdHE/44TX +z9v1vZDJ27bhWH5Fnc5uDWm4ss/rUFW+5WpzwTQ2BgGYrUdQ2uglPqg5ouJG1UFF +l3UFthuPfY1sgWKiJp5yh9RZA0uPqsA2D8+Z+yHaNKMU5nNTGbnQNia5JoNpNF86 +YkrK2yGbIHGI0OlFy8Z8mCBo0yYT/CH4sPQ= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C5 +PeerKey=KAS-ECC-CDH_B-571_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0763c0d659a7c080912005a2afd60ce57e610619b388ef3d5dd3c9386ab12069c6ef3a8e72eb741cba2da5c6f9267f6c09fada6459690ed4e432445d6f0f72dbcb059c87df36f665 + +PrivateKey=KAS-ECC-CDH_B-571_C6 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAotDGetwVM/2OCgg +xS+cMy6uZw0fB8/I8UcukmD15Ho4V2gBbNIAZwDKe9xdHVZ9kkYK98KkJd0NeK7u +PRX7KNcRZ+ZIa4HEoYGVA4GSAAQFsbEUzvE6pd8wbOdBl9aA+bjJ2PZ1OgnbiEZq +a7BOrx64c4NgItdQT0X66FqOSlQX7dfOOg5eueeSZIhO14NXez/FLYJfC1cBjjIm +42tLM2eZxGhLulBemE3IgZFm8XzrhA42ElsoOoyGNd3353BAbZhW2Cs3z/H7zF0/ +XPS1XspB7hMfIep7yxnOBfZWQkU= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQFsbEUzvE6pd8wbOdBl9aA+bjJ2PZ1 +OgnbiEZqa7BOrx64c4NgItdQT0X66FqOSlQX7dfOOg5eueeSZIhO14NXez/FLYJf +C1cBjjIm42tLM2eZxGhLulBemE3IgZFm8XzrhA42ElsoOoyGNd3353BAbZhW2Cs3 +z/H7zF0/XPS1XspB7hMfIep7yxnOBfZWQkU= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQFpSzr9oEDyrAmbPLGicSPCAVJ//xw +25gJwqRvkItyib5ZcynznuHkzKOYZk/6m9zwEpP0NZPRiOEkEdV+VZs/ajDpVUhp +8EkBThNxZfsNUw6GU9fLKoRhjdOvz6PwhWAXkUKq6XJ5DOdGov1EadQVWHRDeMZA +rnOkibt/gc3KaxuxZ8eUwm1iOKDSVq/DuiE= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C6 +PeerKey=KAS-ECC-CDH_B-571_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0428413f2d2aad4d5288885c2edc8b976321ae1dd4fc6b41275fb88b8c5e7776165effce79025163538a0e83c919220a407ead6cefd616b4b05294488c2ef5d30ab8caa55ccbd1b1 + +PrivateKey=KAS-ECC-CDH_B-571_C7 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAgEV0X5B4TF4tCoA +TAHV5O8cdiQQScfTG/DqhdbgcKLiuSCA5h3lRvzL1NmRI2uzYO8/IG7hbYhDoN3I +A0Y2ZKjM3C2HoQJ3oYGVA4GSAAQGyKw0NkrK4148QXFgMz5IZBho/MoEwNV3vgb1 +irClX9fbd5/nN3edoz0An1e1utSXAurPV1rLryffgzBwzYk6eSR3DJLv86AGG4Ll +RdQcYv7waLNM2/ATlhFdKhQX+XGUg9JphrbVL49t4Gg3eV9tndfNCVdBEUMYxuim +IGs97u8BTw5EsNxmhOEA5Kw2FlA= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQGyKw0NkrK4148QXFgMz5IZBho/MoE +wNV3vgb1irClX9fbd5/nN3edoz0An1e1utSXAurPV1rLryffgzBwzYk6eSR3DJLv +86AGG4LlRdQcYv7waLNM2/ATlhFdKhQX+XGUg9JphrbVL49t4Gg3eV9tndfNCVdB +EUMYxuimIGs97u8BTw5EsNxmhOEA5Kw2FlA= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQCbi8e5k55WOkCVHp9sKHhSGbz0sAS +fCu5sJ7iMtPZUY7kSuj1u0M6CIBp+jhs1ciQJxG3YqwNo6ejQgRyxH6FD5iN1gpj +bX0Gd/9RAFLU9GCEn7jvDU81Gc0jjk4caItzbPbjdZVQ0TSh5so8tHnWi03F0Luh +ruF4vW/hXsGW+x9ifYcHk5T294VOBTIo3uU= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C7 +PeerKey=KAS-ECC-CDH_B-571_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=031bd2a84369e93dfa00581446d52762100d985cc7bb91c4fa8be7472e2e8e9781c52b19a54330442441bacae23f4bdc76486eb475d51f26aafbfb272a5ab5db184a4d3c3006e5d1 + +PrivateKey=KAS-ECC-CDH_B-571_C8 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAIR7VF70lhVnHwi+ +c6SRRwYxhEkzQBEepNzhPC+SHwe/rP/IRB9MfJ0EefV/OhP0wzxj7UfDpD+y8G0G +qXgOXAs6wwQQrcSRoYGVA4GSAAQGmU3cWuLFtvRdwytxDxpJORpH86D4wteEZVL+ +SH7wHMoEMRVbtUUzsGeinoNnNzr5XWp/C/mNhptwj0j5XxuIoVMP4iVH6X4E9iiN +TXBPM6iYAx59AEb78eNKcsivGQ9NMxYzQ8iXugwNivioYjahw7ZVuXncRSLTPWam +ZbO2UBVw8HYyKvCtK7qqBOoumV0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQGmU3cWuLFtvRdwytxDxpJORpH86D4 +wteEZVL+SH7wHMoEMRVbtUUzsGeinoNnNzr5XWp/C/mNhptwj0j5XxuIoVMP4iVH +6X4E9iiNTXBPM6iYAx59AEb78eNKcsivGQ9NMxYzQ8iXugwNivioYjahw7ZVuXnc +RSLTPWamZbO2UBVw8HYyKvCtK7qqBOoumV0= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQCPuT57CTe4gOs+2WGMTE8etQ5TEfx +eU0ItZn/wV8OXaspEdl+Aw3ffLS7rfilvOBcNTWPvQz5XT1cf/PNjua1TjedjQEj +k5sGBr4j58V0bb04QE/WB/t/J47iSdyOJ0DPG7mxwHsc9+ClCkMlZ9GGl5moAxIl +ENtDeYGiqhJuuarzx74FqA+sFJXhxAyhwQY= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C8 +PeerKey=KAS-ECC-CDH_B-571_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=04df20154fa49a1d6e04dc2ba6e55a7f2ae575de5e2c6e4091a4d2c36aa93ca9699b890f0ee4df53aa75d0d9babad68605bc027ec67c187a6826aac0f4bc596baae788b376110216 + +PrivateKey=KAS-ECC-CDH_B-571_C9 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIA0wkWDArQ4V/Eq2L +2ah1I3ZBoh4hyjz5oJVtPP7e2WpeH1M9gntSj7tYbak+77tm0HeLGbGn+28Xu/nn +m5rO/N17lgXniY8moYGVA4GSAAQDLTp6QJnwif6pGJIR9zZvLtxKv7MWxcBZSNje +V/ygI7+2oRsQLqQSC6YhksDfYQvY0vY/xXcn9Ka2QKv40pn6xWxMeviDSeoE5jmf +HO0madOlUG016ivr/M8M7IS8lzg6rcO0g0f2KWJuYJb4kENeWTNnUEj9zvze3j7W +FuZWDULp4XxUkuMLwt5GicBZLss= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQDLTp6QJnwif6pGJIR9zZvLtxKv7MW +xcBZSNjeV/ygI7+2oRsQLqQSC6YhksDfYQvY0vY/xXcn9Ka2QKv40pn6xWxMeviD +SeoE5jmfHO0madOlUG016ivr/M8M7IS8lzg6rcO0g0f2KWJuYJb4kENeWTNnUEj9 +zvze3j7WFuZWDULp4XxUkuMLwt5GicBZLss= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQA1KCxHBc5vtCU5y16aSODaDbZIVdG +xyzGgARaNtga314lOU8mmiraHZQ568M7uTHW+llaJSYcJEoeF7BG+xD7VLsxIojP +Lo0HUgT1DTKrimq7/5gtH+NyuMVBW7W3JrNGqk8IvjL4yigsHvbhUkIzYNl7cooH +Tms887kScYsWks2YMBl0GiVBgkI0vcjDI/k= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C9 +PeerKey=KAS-ECC-CDH_B-571_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=037a380f525590582658e2dd272a32de67fc0cf5390b37f4d33c1359f075d4461ea38a55027317892a3d1d22f5ea333ad437667d2f3eb8781c39504036ae33e4b0a26b6894722f0b + +PrivateKey=KAS-ECC-CDH_B-571_C10 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAS23haA8Jr46bppY +LlwyqJVwrUMItxPOVHHqGT3sHzLWi0/N+xYA/bHstnaeJqDgV4Etu/DtSVWSZl5r +jpqXN4owtcZg+63BoYGVA4GSAAQH7ffuDsd/Wmw8nsTtj9PLgUo0LpzGRwtUeB7W +wUHiEVyG29e6J5k+t+vteji+SI+W/d+pgvNpGqHCppf3cGv/PRrdc5YGYZQHs4JL +f3smb6Qv5Tatwqx5udHltAjnIXs6md3rmS8xI/8tFod00wCoGKMmkuJlr8b29XjZ +vTEhEytZeYQfei0GDolIkB1lfBw= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQH7ffuDsd/Wmw8nsTtj9PLgUo0LpzG +RwtUeB7WwUHiEVyG29e6J5k+t+vteji+SI+W/d+pgvNpGqHCppf3cGv/PRrdc5YG +YZQHs4JLf3smb6Qv5Tatwqx5udHltAjnIXs6md3rmS8xI/8tFod00wCoGKMmkuJl +r8b29XjZvTEhEytZeYQfei0GDolIkB1lfBw= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQDu4QDK3//zieszzVLid3fZGzctWY0 +3w+FIKdzD4q+sF+ZM9ikNS0cd2fMP5uAzv/N0Ms6l7WSg/0KZ03E/SQDM/AgyCtI +BMUHRJkzasOoBUMHiZAnaCUgJrUm7OVKwo6MyHjxi6+fq0K6TONOSWiqwe5qC7Fc +mnCYgqU3KvVuoLNoFzhfu/6sS5BgaeU/v7o= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C10 +PeerKey=KAS-ECC-CDH_B-571_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0420de313bddce87d07321e3f0af404d9d13e5369b79506e807178711153c9b1837cd055562eff3aadfc5954a221eeebb1bec1696d3df1cccfb8b61172a50d83cee95f4140ba070b + +PrivateKey=KAS-ECC-CDH_B-571_C11 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAgJgana2oT1uKSgL +wWE+EVAldwskX1Vh1Yg+E14VnMQ3sck1Wy7uKzur7yKf5UWqsrzKFV6JcklfGXS9 +sewOYMTmx5xI8mpGoYGVA4GSAAQG5026TgcC8YbTNNPEniV44e36xWRkXdqMSliB +WPjXo+9jJDZTwNUHQnc0+0zIet9KNr1avKH5ILm9bjv6UckW1XEIhFlOlIUFuSFH +ottIo4MMz6KJUaK36OuEMTuZsKmQMceDTGM/hlovmESVJSiuXe4CQoqCTN+34gko +/8U0IN846tC0JA0GWdWtsf8uLcs= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQG5026TgcC8YbTNNPEniV44e36xWRk +XdqMSliBWPjXo+9jJDZTwNUHQnc0+0zIet9KNr1avKH5ILm9bjv6UckW1XEIhFlO +lIUFuSFHottIo4MMz6KJUaK36OuEMTuZsKmQMceDTGM/hlovmESVJSiuXe4CQoqC +TN+34gko/8U0IN846tC0JA0GWdWtsf8uLcs= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQGVWpMyYRmeUqT0DOIU2d296SzNEw9 +xOuWCkpkWPx4ac1ORbLxQMRop9TruoTJSCM3oqitqsiKmmKdoD3SR1JmQrCrcft6 +jHAFS5fZUrGfdChW2s9OUN8MMQO68lP03mWj2crOY/6CkG0sjoozEvtTXgD5tcpp ++H28f6P32H/gJFNmBKr+RkBZPMz+9vrAKKY= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C11 +PeerKey=KAS-ECC-CDH_B-571_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0606228f5a05077aeefbefac23c0d5bac7a6062bfc2b02ce8bba6698ea96b456b1f0d32c6e05dbb9be61a83090428eedea18c74f41238edede9e3a12e28722d2f314613c2e84d6db + +PrivateKey=KAS-ECC-CDH_B-571_C12 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAEhng0isM7kvLFln +cQPqQJlGtVk9EF/EmDNRxO3pKcS5O/xpWHZVXjrOQXuCrAW4Mmdqwj4pVaCe5kog +pfmOYkmfQ7p/f8jhoYGVA4GSAAQDHdSAjSs0G4iB9eUKLczjjfg5AJ+SGFl439mm +DNruAFzbqCZVZHc21AevuQxnzdsTuisBYY9F6KJ0MX4C93D4Dvh7u8GxEFYFCgZx +ycDOV6SU5pEfE3bPH8M5OIW6jCb23cu1Nhh2hgo1r8H0Vg8pcMMNs/HIF9vIrysC +Xa7TqdoS0vrp1xTOrYBEXmoKCBM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQDHdSAjSs0G4iB9eUKLczjjfg5AJ+S +GFl439mmDNruAFzbqCZVZHc21AevuQxnzdsTuisBYY9F6KJ0MX4C93D4Dvh7u8Gx +EFYFCgZxycDOV6SU5pEfE3bPH8M5OIW6jCb23cu1Nhh2hgo1r8H0Vg8pcMMNs/HI +F9vIrysCXa7TqdoS0vrp1xTOrYBEXmoKCBM= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQBAFGCsCmkhSju9f/QIhrYcIWrrGpy +cFIDo8Fomru8DhKSel6Ds1Khutl3BhAfRKECLMwNVSLcXRyhQz3gOiuh34ZIdfUi +vmEBiwKpjws+TM9EqWk5ogg6sfKgTa/Vvc7jz/Q4uwi/8SBDqhksX8804TtcKXQs +XYZLnKxGvqbpbfKxvkSTrPlQIk1xc3+ZBlg= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C12 +PeerKey=KAS-ECC-CDH_B-571_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=052669336019db5eddef5eab2336abeb60bbc7295e4bb663ab43e373fb6d888d7433ec89a487a91d4a59c289a9509ddd1bab33cd02a7bf37aaad78dbedf0b4ae5f2f35d15cb4e628 + +PrivateKey=KAS-ECC-CDH_B-571_C13 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIABe6ty14j4t4ub/E +kShjxaSJIv5p6KTPXm6Rdj79VHehzUOd7dCv6lBOOzr2gj6jCJwDdO2a7iSohRbI +zzr6vplbm5Z187WroYGVA4GSAAQBYcFLvITkLsdneow3cAZezR8PROrIJCpxWmGX +Hn5P//eP9Xob8blcv8LtlX0RlfnqUICXFcJDnHVD5XNSATVCbUdTW4v8hTMBJTYz +0CJRRk7cxT7Z6KntkykyDvXurzXWTFm5c1yW4H8aYuwXvO5PBM2ahaPrUEqvN7s4 +jGx9CNkKoLaFVrXAaOy/ClmERg0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQBYcFLvITkLsdneow3cAZezR8PROrI +JCpxWmGXHn5P//eP9Xob8blcv8LtlX0RlfnqUICXFcJDnHVD5XNSATVCbUdTW4v8 +hTMBJTYz0CJRRk7cxT7Z6KntkykyDvXurzXWTFm5c1yW4H8aYuwXvO5PBM2ahaPr +UEqvN7s4jGx9CNkKoLaFVrXAaOy/ClmERg0= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQH+rTlkyjHAPdGSb2Qp9Uf8olY/nIN +qqsyjPybACqnBs6zmTTbnM+B3uyVaJzox3a0/GVCqCNYzFHrvG2OUyLLP6bkaV4X +D8EFrNRc/6Kd2zTuQudBACZ5jjeo0anOn5KU2lGYFktpAQxoxTKBzL/EB9FBCX2h +N+eEnyKP3BoHqimL4myncfR6xP6ycj1aZmY= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C13 +PeerKey=KAS-ECC-CDH_B-571_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=062de5aa98b440c6cb7a1428f6b5e47452b30454eec4d651982b531121febbd5a3833b180017f7ddb5ce38d7bb1c842de1a8a8fc7fc981e24733b7662813fd010a4e757ca4ea5c28 + +PrivateKey=KAS-ECC-CDH_B-571_C14 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAqstQwJ7CPir+jWY +7wFEOZpgtgN7F6OuQT1CLvohZ+nqTxnX7KmNhcZ8H+hfvLwfErr6MKhdvfVCRmiJ +MV8VMt78XRgVCfAIoYGVA4GSAAQDKMDWf9VS6hDlvfe4fVC/TcujTcpWmuuGnFx9 +x9gyzjD+7TLiWnI3k/l8VX4vl4xeE0nmm3PvmRYAH/sNbNssY0PjRTg4bm4B0VG0 +btAEJjzZpcDUaoQNAyImMfkv+SgOlaNXRs28r9n+1oEcdhS51Qqigo3HonWznT1B +ijSd0eK3MhH03po0tC/KEbl2Dso= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQDKMDWf9VS6hDlvfe4fVC/TcujTcpW +muuGnFx9x9gyzjD+7TLiWnI3k/l8VX4vl4xeE0nmm3PvmRYAH/sNbNssY0PjRTg4 +bm4B0VG0btAEJjzZpcDUaoQNAyImMfkv+SgOlaNXRs28r9n+1oEcdhS51Qqigo3H +onWznT1BijSd0eK3MhH03po0tC/KEbl2Dso= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQHJnYwKtGHMbdiArxRQp6/fsz2Ml9O +CEwvkuMojtKQSIueNnIOKdqi2xmTp9F86O+djM7GHeikBxduJnTCXVe/8sRlljWL +NgUDwAItUyKQkeFK8PdFDeyhy124IecVkGCP4Jhtc+iMkV5e6N/ryJVZE9kWT5kv +VjlKZi7xHIIU6K2oXfGxewuXQUzdZi0Yi10= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C14 +PeerKey=KAS-ECC-CDH_B-571_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=07c7eb4892816cc3388ebcdfb412984e05910c112dd15b8e5481719401701aceba22fcf35aab0c3b040096161011f6177097c505395d9d6d8a713f6a5100fb476adbe7b9cdf4b68b + +PrivateKey=KAS-ECC-CDH_B-571_C15 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAEnG5MBaGXskr9Jw +ckP/v9VbAIj9M9h9rk0hBI918rhiVjB1JB0vNv3Q6UBatCqlXL8gldq8Pa7frp3r +kiIgeD6Fkc/WdgCxoYGVA4GSAAQAH+KaTC3QALvtEpEhuI7btcObNAA/FwrBn6mo +XF/lh6q4ITYfSWNEDyWstJdYgQVS8Gtxmp60O3IOm3rW751BJI1fM1+ZUVoBSZ25 +WAjHGdJOsFxjPbiwXPlpygv2VkNbH98bCSgpD2pr+ICtuf1TyG7Hbg9izonL60wm +b2Sodtd4IxoAMMOKoA1mxr1oB4U= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQAH+KaTC3QALvtEpEhuI7btcObNAA/ +FwrBn6moXF/lh6q4ITYfSWNEDyWstJdYgQVS8Gtxmp60O3IOm3rW751BJI1fM1+Z +UVoBSZ25WAjHGdJOsFxjPbiwXPlpygv2VkNbH98bCSgpD2pr+ICtuf1TyG7Hbg9i +zonL60wmb2Sodtd4IxoAMMOKoA1mxr1oB4U= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQGzXkx/PGTX4HzAUee2a0Mb5oFvs9O +Vzov9Am6/EQuwZX34/39COWBYdTg/Tf2KpaUIbGc1I/oSKXX90uBN6fHJqnL03os +87QEtbLNg7J4lXUcNNOsW5YKEz7BiwOcLhKNNEHbT3bot1BkCUYZsSLl+y8cJ5ZV +mtlTxxHjMNx79V7fKfCVyuRVV7fI1YQ9ib0= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C15 +PeerKey=KAS-ECC-CDH_B-571_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=05c638349000ec30881cd190c067e7f12b6b42d5842a8285a8ff0dc7e9c9eaf483309e48314fdc2ce7f9da6a468e549c8e70a50b68d07aee29708a98172209e5cd2e8c09cb66d982 + +PrivateKey=KAS-ECC-CDH_B-571_C16 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAYazHOSQx/KPJ5MH +WkrmRayznnH/6UTuYr+CWH8cPL4ojOYCTY0DXxB9mk+u1Xp7Ie4dbnEpoJgATyLM +1SdAwDSm3ze1PQcyoYGVA4GSAAQGsV8ahZ49gJJGEbIMG5Tf9r0FdP74GTfx5U0U +jS0x+MIbDqnOAxyUVXBvCFpp/UkkGFWMfemq3CyamW5+0f7aMpx9dgm7ayIDKRBU +TLE24sKaozVyqmw0caUuvKayKL7nSfqf/ikpakpbaqDG3J8JUhbnsVE9gcugB5Sj +9Vj3ShtUHHOyMI9PjnQCi1wrzfM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQGsV8ahZ49gJJGEbIMG5Tf9r0FdP74 +GTfx5U0UjS0x+MIbDqnOAxyUVXBvCFpp/UkkGFWMfemq3CyamW5+0f7aMpx9dgm7 +ayIDKRBUTLE24sKaozVyqmw0caUuvKayKL7nSfqf/ikpakpbaqDG3J8JUhbnsVE9 +gcugB5Sj9Vj3ShtUHHOyMI9PjnQCi1wrzfM= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQCmEtlMHTDaiWa2VbVVWUSwscx+lDy +AF0ASanZd95cALegVMlgzdcHiWMhSQvkM71e/9RMVk6qLVAhF1BQxb/BY82x6B3x +M1oBp4bSkJizNPXBxK6GpBvydcxnh9pyBpFlV6T0MxkhQQNFZ+BB1V15SncHx6ry +iELVyPWQN1pDZWkYqoDlWwKFNHzOj/4fFeg= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C16 +PeerKey=KAS-ECC-CDH_B-571_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=007a40a59b6632156a43158565a4eeaf80618e501c5ac5afdab4ce3cb76ac99a0bcd17e9eec549373ace8c96aac78e2af6600483a2c49ec81298a083d5237118de96a953999beb26 + +PrivateKey=KAS-ECC-CDH_B-571_C17 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIA0H46GGC3k/D9DhX +JQqSmkGZTTMdoVTAJJ+g0cJqbeDoNfoIqMxSTj2sKGOD+QvS9NLHUULx04EI2cBi +FDyObtu9oK+Hp2rVoYGVA4GSAAQCxcXrcydAJnJXPDe0kokDQ6tCK1G8ZbYAdm7B +0HkI/wO8/edpTYMrzeUpRjOd8Kq0B0rgeon4IfWhEw0rc9sMQjrnoCOuLBgEdu09 +vZNtHDaYekNRLI8FYuMWEi0Fp+3U5CSJhMEfbrhSFdWqoCYqlfIGZsnb9FJIrhd9 +Lf/6OmqVBTMpi1w/Shti2h6vzVE= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQCxcXrcydAJnJXPDe0kokDQ6tCK1G8 +ZbYAdm7B0HkI/wO8/edpTYMrzeUpRjOd8Kq0B0rgeon4IfWhEw0rc9sMQjrnoCOu +LBgEdu09vZNtHDaYekNRLI8FYuMWEi0Fp+3U5CSJhMEfbrhSFdWqoCYqlfIGZsnb +9FJIrhd9Lf/6OmqVBTMpi1w/Shti2h6vzVE= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQBqGguCezNGGjaICkWpWHuhRPA1zRw +zTQa7nntk1VqOm58eyAwLsdKDFFwqON9eKm10N45AOsqZjpyR895Q/04HZWzqv0V +YWcFL+zGj3aV1OQaCAxHZQ0gKHTaFjoXSOVQNzlY4xvQquUgmW0w84RzD0hU9eVO +aMwklYrcUuKkxAc1ZRTz6nFmBW3Gfk0Rj6g= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C17 +PeerKey=KAS-ECC-CDH_B-571_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=021fd2726973405fc30d2a1f2115907cbd0de90bb6bcb0496452e389b1b10ccf38e2400617040cf0dbb188f345337678b0ad8603dcfe926582d4321f384daec0943e2cd267f48343 + +PrivateKey=KAS-ECC-CDH_B-571_C18 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAgenOC2KIlcSJuDA +bCaB0JvKGbXbfnu/wTrCCDid+BaNd2FeMMqGEDk25T3ZrwHN/iT1COxgk5l3XOhM +hon41flvZS4BTg3ooYGVA4GSAAQEYI3AUSvFXHNM1WKsWCX3yji3k/js6bmBzBxA +Mt3YA5Fk0MZGtCsv1FO1odOnSuI8MsfVhAB948004zEhuQ+rOtpmIbOsl4UGqp/7 +/WXFCTcIRnB2dKxyPawkpvM6Hgu834skujLPe97I/ckjO3V7wHPWTe30hMb6Ae8o +6HT7DTT1iw4ysYZFwwvctRbuOEE= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQEYI3AUSvFXHNM1WKsWCX3yji3k/js +6bmBzBxAMt3YA5Fk0MZGtCsv1FO1odOnSuI8MsfVhAB948004zEhuQ+rOtpmIbOs +l4UGqp/7/WXFCTcIRnB2dKxyPawkpvM6Hgu834skujLPe97I/ckjO3V7wHPWTe30 +hMb6Ae8o6HT7DTT1iw4ysYZFwwvctRbuOEE= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQCza8TmgzaKADWESj/5NcyOzSg/PSM +lABHn/TIKRy/RvFsQeRAmq7fFLxgpkKy17qs3o4AUd2K4Bv1rS5uZJDHfNQGqZnF +ZeYHjt0p22o7h6EVBbV8VD/7dGpbQPuD1yBhgPOun8siLFQRp3R2Zgx7MRtkYxCQ +WImpWg8v3DXTD8YcxVYKKRQjLWKtNjhrkXk= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C18 +PeerKey=KAS-ECC-CDH_B-571_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=07a47bdc7d54ecd391672f131b3214d0efc4d40195db1ec993a62fe9da875efff5403bd708fa491a01a94f4bddc7d516baffff9fbdd213ca1a4905f9aa679d65da25c0f1fd2afb0a + +PrivateKey=KAS-ECC-CDH_B-571_C19 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAGuo8SzG4OeN+Mxi +mISKdAAl5yxi0JnpJYSsdvWVrB/HJMsGqFoH8NRED6893qLyZfIBXdBZoWoDopkV +uHMdYEUSzu8iuEHzoYGVA4GSAAQGNvQ16AYAZmEIc3MAdzqO1v+o6/gwfIH/X0Q1 +PpG60IYzG4/v8/HNuG4GG95fccX7k48RfiImqX0rZrCY6f9SUYLIFucCxqkBwb2K ++uapQQj8LHVdXeP6Kks0cfwqXN9K3aaFKb8YD/KNsVSrQxEkezkuk6M1u+h5Zgi7 +1gE/Q83MhG7CImdCPDz9os6KPZY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQGNvQ16AYAZmEIc3MAdzqO1v+o6/gw +fIH/X0Q1PpG60IYzG4/v8/HNuG4GG95fccX7k48RfiImqX0rZrCY6f9SUYLIFucC +xqkBwb2K+uapQQj8LHVdXeP6Kks0cfwqXN9K3aaFKb8YD/KNsVSrQxEkezkuk6M1 +u+h5Zgi71gE/Q83MhG7CImdCPDz9os6KPZY= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQABRUS5KDbxTXJe+EP+nQldYOCiDBA +RmYB1TkbyzWCwRUlKTJJ8kSXzIByFrNMksHgdXgcg5HD9tPRT4ih1Q6p/HX/jVHM ++TMDnaRsrIZqs0dhesWotPFlcDTjuN22a8QnPi4c4BZB7OY2l53oskktxp6IU3w2 +scOtDTUif4Z+Q9+ciRfc6fjB7zujy1youlI= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C19 +PeerKey=KAS-ECC-CDH_B-571_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=07326196a7decc92c81ae5a0779c9a42f53d94cfa4c3a13f19dbb554138e0e864eee6bc93e39214e2f74705a4b172aab510444c93b5b3e62517bbb7279337102db1c61de349d9747 + +PrivateKey=KAS-ECC-CDH_B-571_C20 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAQcW8ud08n9C3j9s +lpTY7KIXmCMJHSAvK6FikZOhyYcAaTOY/8gxV/fOSFjnU145kNIZvCSd4WRVjKyA +fuFZd4oBLaGeUBK/oYGVA4GSAAQBULOt3hYqfwk1Daz0YEGf6GuZ3NlPRCg/uj5D +0oG5O7VCgoEs5SJlqUg4lo1nqdbs3BtstkzxWUUhxHSepD2OTsBF5kX/I4sHtDMh +thGLh8Rse1IojfXdHPfaYYPs5WM7TBfK42LYIRkffVeSOSgzmq332F9/Gd6UhnCe +TS3e9CxVu012o8tQytKgmOrVlSo= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQBULOt3hYqfwk1Daz0YEGf6GuZ3NlP +RCg/uj5D0oG5O7VCgoEs5SJlqUg4lo1nqdbs3BtstkzxWUUhxHSepD2OTsBF5kX/ +I4sHtDMhthGLh8Rse1IojfXdHPfaYYPs5WM7TBfK42LYIRkffVeSOSgzmq332F9/ +Gd6UhnCeTS3e9CxVu012o8tQytKgmOrVlSo= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQATC3lZCQxvMbrgu/UNVVAqLXSOxKw +330xrWlCW5RUmHdEPujdfAnPu+2G8TZlkx1LKiF1nDPhC0rPxjuh72GsqqGMlOPP +yTMBdlt6N+uAbUMZbSkx2hoZU3QtPg2nzLZ+Df26XgNJFMzj7mOTv95AZw9AYZYG +faiyk8aENZPdIhyJv5eWNna9BE6MirjnF60= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C20 +PeerKey=KAS-ECC-CDH_B-571_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=059052d3e1c66efa4b7dd39e74299e886367d8fe49d7cab90e4f051bec10316438fb29b1290dfdaec169decd622a1010cf0a0275008814f4861b4d83ba78515a8768d978be430011 + +PrivateKey=KAS-ECC-CDH_B-571_C21 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAdAQP8eUivEH5R9N +LMA5K2aAgFnR8my6Bb5qOB9SLUy4VBN5NKzNHOozYJSOQG0xCMlDdp3HALTJzAzB +2EurWKNeJ+skBHXwoYGVA4GSAAQBK9qN7T7X6LbTm1hVpY1yW2XjhXwqZ0mW6zk6 +Pj+RWVu/qHJTpW66wrEO1Aavnb/1OyImX761p2nKzitgtF2/l87tKwoE21ACZFSC +fv4psySuPy1MDco6OpVJFRHFMWRaz1RbRe9qxKUMCdPSHyE8p2uW+xgkLsvgivaH +Vd5OEHcXNHWCbqq+0mp1w2nNew8= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQBK9qN7T7X6LbTm1hVpY1yW2XjhXwq +Z0mW6zk6Pj+RWVu/qHJTpW66wrEO1Aavnb/1OyImX761p2nKzitgtF2/l87tKwoE +21ACZFSCfv4psySuPy1MDco6OpVJFRHFMWRaz1RbRe9qxKUMCdPSHyE8p2uW+xgk +LsvgivaHVd5OEHcXNHWCbqq+0mp1w2nNew8= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQCUDig5yrowW424+O1BO1zQe9wm5/s +i+kBdzRtdsp7xxM9DsKArPBmAFxcwQtSqmVDNf6CCmYX5WDicJA/8cLMivE5jyTf +4rADEHTKOTGAGmrLdltukUQXLtgdmZ7Z6DW9NVJrA+8qE/eDdgMrDrgUbCMTI2X8 +4Xany9ykSzWqN5hZ9oisJtxkyBSaQyLQg9E= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C21 +PeerKey=KAS-ECC-CDH_B-571_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=03acfa4b3d1c2a6b62af23bdff6a215a416d4437ce6cc114d17dc4201195987a5d7301da11b913254702d7172e31d64e59b24deaa3270f20445e51dc484f7a2b8c3cbeb0bb9efb28 + +PrivateKey=KAS-ECC-CDH_B-571_C22 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAy0vVX/ke40oD2gu +JP2mJ916WOmwCCKjqvbregFPR2wXlBrcXiI4owgNcG8eFqRRt+kpQneZMMVnCkcy +gcrHi4WNHxzJmwr/oYGVA4GSAAQEDzEw50scjrJl58TmkhQR65cUGCZ+jeqHnC6L +Vjhk8jphsjQiyaBvoXiooVXj54RXWXWH8+NbefGdDC4YWu9G25WBnL4SexAByR0n +wq5xE+sDvpjpTTrW3seR+sL+DSyMmLcTcbBYpkn6nD+jzNu6kyOVwnr/og2VrAQb +yZeOP1MIKaLGTImxvM6sBoVPuQM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQEDzEw50scjrJl58TmkhQR65cUGCZ+ +jeqHnC6LVjhk8jphsjQiyaBvoXiooVXj54RXWXWH8+NbefGdDC4YWu9G25WBnL4S +exAByR0nwq5xE+sDvpjpTTrW3seR+sL+DSyMmLcTcbBYpkn6nD+jzNu6kyOVwnr/ +og2VrAQbyZeOP1MIKaLGTImxvM6sBoVPuQM= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQBvf/9acLgj7A8hT7y69CI5o0jP9uV +8LJG3nlV1hUHff0LD/AsZNAd55M1kJa4XgV7G3+fWSYtwnV/GCQ+GC4aC/6dy7An +1osCGL59lWAp8TnBnS2jRnc7FtevyFirjctg1+SErs7DCcs/6pavOQNjfl2022eL +tdubCxjYPPnrwbGq8k9DZ+xTNoTOnVZYLUM= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C22 +PeerKey=KAS-ECC-CDH_B-571_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=067a58e5b3287bb9aa83ed9ca2d718cf7165fb574b6a446c3019849cd1584673d561b574bc8f68419437c5e8113e060847cad3b5ddc2f67ad75bc1e3f04554e63a5e4945cfcb65f5 + +PrivateKey=KAS-ECC-CDH_B-571_C23 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIA+7ikZaovnDrOjEE +ZAWcwMTELxNIerGgdiwsvjBOvmNQPmxwaKf0vBl/gfZbQpXBSyEPPLI3i2dAH89S +vsAsE7YbbeFOG35boYGVA4GSAAQBd6zF/p9C9N4tJ6ub9vfg6s4wPCZv+LNGkIKr +qTZ+ZkQL1rG9i24a7JK2XjWuqPAH8J1M1n7qXWAAc2yru53MyUPrtWVqBYYHFvGJ +jiqMJzGd56JpjyHV3likuLjdArXkMxENOXf+6OxcCJ0XCvAqStPB+rRLDR4qO+up +4HGc2L+DZEeNaGxONfdFfSTQIdY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQBd6zF/p9C9N4tJ6ub9vfg6s4wPCZv ++LNGkIKrqTZ+ZkQL1rG9i24a7JK2XjWuqPAH8J1M1n7qXWAAc2yru53MyUPrtWVq +BYYHFvGJjiqMJzGd56JpjyHV3likuLjdArXkMxENOXf+6OxcCJ0XCvAqStPB+rRL +DR4qO+up4HGc2L+DZEeNaGxONfdFfSTQIdY= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQAj8O0FPNBK0A/AcJTvSImFQIl3aqz +TSAQifSdeeXcwuO2ghb6pm2sRFKcf+O6TSjYFbCII1lVcTu3chODUztdlCIbTtHh +YrgCsyIB3icrGzK2pqWOoiQRxI9dxc8PlYcuZ1HtYizuzqIqVWl13mADhpriCvOb +QrqIcXicgujzrTz2AG9DvEx9QQIDLEP495c= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C23 +PeerKey=KAS-ECC-CDH_B-571_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=06b272ca3330c0cdfbe60a1746bc0ddea6257536cdd8e976f2517eb541460a3f0e6ea7fec2b495e0f57712c8cac35e8a7d64d876c29851bbfeb6fe726d57e0be43dc76a584ef9c93 + +PrivateKey=KAS-ECC-CDH_B-571_C24 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAWmi2HWGlEwxc7+a +InXjCAAD22SMLR4cVuLDfODXzZ+Bjqa3u6ND93TvDzNOpcEu8L51k9BO2UVFjXHh +cRLrAdkEHSEzsTRzoYGVA4GSAAQFHlIXZCZa9/AbzZw/0CLf2y1KLFizsj0uVQMC +xCqt1X0d9vwY5GW9mEQkle7SLz/WcAKEyfp4M7UWUUm44akeDgmaClcy1cIBmOfn +0JTiB1KMWDhl0mKpGPwqOSYelcB9y9BE79OYGJkHivPrlzmCAaRlDw3Mvxn5Isjb +w4Ob9r4AU/hFMccYQ6nmoQKrWNY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQFHlIXZCZa9/AbzZw/0CLf2y1KLFiz +sj0uVQMCxCqt1X0d9vwY5GW9mEQkle7SLz/WcAKEyfp4M7UWUUm44akeDgmaClcy +1cIBmOfn0JTiB1KMWDhl0mKpGPwqOSYelcB9y9BE79OYGJkHivPrlzmCAaRlDw3M +vxn5Isjbw4Ob9r4AU/hFMccYQ6nmoQKrWNY= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQFZagplNfm9T7ra/Z1I+5oD/t3ARhn +PD4VwyAObI0fJsq68AwdpI5jdDFkl8ul8Z8XQg8mdjP0DlsGNieJv/Ea31ltWxz3 +aO8Bay1Nqsqca+2XayBk71Q1KliuNDZ4NaYhDhV4KRwd6NZ8ILw9b/piDIezCYor +nzq7jSys1bLuK2g5nqxOj2XOvdZjAP0Em1s= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C24 +PeerKey=KAS-ECC-CDH_B-571_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=02da266a269bdc8d8b2a0c6bb5762f102fc801c8d5394a9271539136bd81d4b69cfbb7525cd0a983fb7f7e9deec583b8f8e574c6184b2d79831ec770649e484dc006fa35b0bffd0b + diff --git a/test/recipes/15-test_ecdh.t b/test/recipes/15-test_ecdh.t deleted file mode 100644 index f11cd06..0000000 --- a/test/recipes/15-test_ecdh.t +++ /dev/null @@ -1,12 +0,0 @@ -#! /usr/bin/env perl -# Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. -# -# Licensed under the OpenSSL license (the "License"). You may not use -# this file except in compliance with the License. You can obtain a copy -# in the file LICENSE in the source distribution or at -# https://www.openssl.org/source/license.html - - -use OpenSSL::Test::Simple; - -simple_test("test_ecdh", "ecdhtest", "ec"); From rsalz at openssl.org Fri Apr 14 12:09:52 2017 From: rsalz at openssl.org (Rich Salz) Date: Fri, 14 Apr 2017 12:09:52 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1492171792.774755.19382.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 9be439a31821c36ef31e5ebdc6f8c6f8a1f4843f (commit) via 11361f5998a98b29207e0bcc3d40f638f91ab5d8 (commit) from 3b8422755f268e57da7f3184e9eb965a3d60ee25 (commit) - Log ----------------------------------------------------------------- commit 9be439a31821c36ef31e5ebdc6f8c6f8a1f4843f Author: Nicola Tuveri Date: Thu Apr 13 16:09:21 2017 +0300 Remove ecdhtest.c All tests from ecdhtest.c have been ported to evptests.txt Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3218) commit 11361f5998a98b29207e0bcc3d40f638f91ab5d8 Author: Nicola Tuveri Date: Thu Apr 13 15:54:06 2017 +0300 ecdhtest.c: move co-factor ECDH KATs to evptests move NIST SP800-56A co-factor ECDH KATs from ecdhtest.c to evptests.txt Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3218) ----------------------------------------------------------------------- Summary of changes: test/build.info | 6 +- test/ecdhtest.c | 251 -- test/ecdhtest_cavs.h | 4312 ------------------ test/evptests.txt | 10239 ++++++++++++++++++++++++++++++++++++++++++ test/recipes/15-test_ecdh.t | 12 - 5 files changed, 10240 insertions(+), 4580 deletions(-) delete mode 100644 test/ecdhtest.c delete mode 100644 test/ecdhtest_cavs.h delete mode 100644 test/recipes/15-test_ecdh.t diff --git a/test/build.info b/test/build.info index 16ed0d7..ef968e6 100644 --- a/test/build.info +++ b/test/build.info @@ -2,7 +2,7 @@ IF[{- !$disabled{tests} -}] PROGRAMS_NO_INST=\ aborttest \ sanitytest exdatatest bntest \ - ectest ecdsatest ecdhtest gmdifftest pbelutest ideatest \ + ectest ecdsatest gmdifftest pbelutest ideatest \ md2test md4test md5test \ hmactest wp_test \ rc2test rc4test rc5test \ @@ -42,10 +42,6 @@ IF[{- !$disabled{tests} -}] INCLUDE[ecdsatest]=../include DEPEND[ecdsatest]=../libcrypto - SOURCE[ecdhtest]=ecdhtest.c - INCLUDE[ecdhtest]=../include - DEPEND[ecdhtest]=../libcrypto - SOURCE[gmdifftest]=gmdifftest.c INCLUDE[gmdifftest]=../include DEPEND[gmdifftest]=../libcrypto diff --git a/test/ecdhtest.c b/test/ecdhtest.c deleted file mode 100644 index 11e0903..0000000 --- a/test/ecdhtest.c +++ /dev/null @@ -1,251 +0,0 @@ -/* - * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. - * - * Licensed under the OpenSSL license (the "License"). You may not use - * this file except in compliance with the License. You can obtain a copy - * in the file LICENSE in the source distribution or at - * https://www.openssl.org/source/license.html - */ - -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * - * The Elliptic Curve Public-Key Crypto Library (ECC Code) included - * herein is developed by SUN MICROSYSTEMS, INC., and is contributed - * to the OpenSSL project. - * - * The ECC Code is licensed pursuant to the OpenSSL open source - * license provided below. - * - * The ECDH software is originally written by Douglas Stebila of - * Sun Microsystems Laboratories. - * - */ - -#include -#include -#include - -#include "../e_os.h" - -#include /* for OPENSSL_NO_EC */ -#include -#include -#include -#include -#include -#include -#include - -#ifdef OPENSSL_NO_EC -int main(int argc, char *argv[]) -{ - printf("No ECDH support\n"); - return (0); -} -#else -# include - -static const char rnd_seed[] = - "string to make the random number generator think it has entropy"; - -/* Given private value and NID, create EC_KEY structure */ - -static EC_KEY *mk_eckey(int nid, const char *str) -{ - int ok = 0; - EC_KEY *k = NULL; - BIGNUM *priv = NULL; - EC_POINT *pub = NULL; - const EC_GROUP *grp; - k = EC_KEY_new_by_curve_name(nid); - if (!k) - goto err; - if(!BN_hex2bn(&priv, str)) - goto err; - if (!priv) - goto err; - if (!EC_KEY_set_private_key(k, priv)) - goto err; - grp = EC_KEY_get0_group(k); - pub = EC_POINT_new(grp); - if (!pub) - goto err; - if (!EC_POINT_mul(grp, pub, priv, NULL, NULL, NULL)) - goto err; - if (!EC_KEY_set_public_key(k, pub)) - goto err; - ok = 1; - err: - BN_clear_free(priv); - EC_POINT_free(pub); - if (ok) - return k; - EC_KEY_free(k); - return NULL; -} - -#include "ecdhtest_cavs.h" - -/* - * NIST SP800-56A co-factor ECDH tests. - * KATs taken from NIST documents with parameters: - * - * - (QCAVSx,QCAVSy) is the public key for CAVS. - * - dIUT is the private key for IUT. - * - (QIUTx,QIUTy) is the public key for IUT. - * - ZIUT is the shared secret KAT. - * - * CAVS: Cryptographic Algorithm Validation System - * IUT: Implementation Under Test - * - * This function tests two things: - * - * 1. dIUT * G = (QIUTx,QIUTy) - * i.e. public key for IUT computes correctly. - * 2. x-coord of cofactor * dIUT * (QCAVSx,QCAVSy) = ZIUT - * i.e. co-factor ECDH key computes correctly. - * - * returns zero on failure or unsupported curve. One otherwise. - */ -static int ecdh_cavs_kat(BIO *out, const ecdh_cavs_kat_t *kat) -{ - int rv = 0, is_char_two = 0; - EC_KEY *key1 = NULL; - EC_POINT *pub = NULL; - const EC_GROUP *group = NULL; - BIGNUM *bnz = NULL, *x = NULL, *y = NULL; - unsigned char *Ztmp = NULL, *Z = NULL; - size_t Ztmplen, Zlen; - BIO_puts(out, "Testing ECC CDH Primitive SP800-56A with "); - BIO_puts(out, OBJ_nid2sn(kat->nid)); - - /* dIUT is IUT's private key */ - if ((key1 = mk_eckey(kat->nid, kat->dIUT)) == NULL) - goto err; - /* these are cofactor ECDH KATs */ - EC_KEY_set_flags(key1, EC_FLAG_COFACTOR_ECDH); - - if ((group = EC_KEY_get0_group(key1)) == NULL) - goto err; - if ((pub = EC_POINT_new(group)) == NULL) - goto err; - - if (EC_METHOD_get_field_type(EC_GROUP_method_of(group)) == NID_X9_62_characteristic_two_field) - is_char_two = 1; - - /* (QIUTx, QIUTy) is IUT's public key */ - if(!BN_hex2bn(&x, kat->QIUTx)) - goto err; - if(!BN_hex2bn(&y, kat->QIUTy)) - goto err; - if (is_char_two) { -#ifdef OPENSSL_NO_EC2M - goto err; -#else - if (!EC_POINT_set_affine_coordinates_GF2m(group, pub, x, y, NULL)) - goto err; -#endif - } - else { - if (!EC_POINT_set_affine_coordinates_GFp(group, pub, x, y, NULL)) - goto err; - } - /* dIUT * G = (QIUTx, QIUTy) should hold */ - if (EC_POINT_cmp(group, EC_KEY_get0_public_key(key1), pub, NULL)) - goto err; - - /* (QCAVSx, QCAVSy) is CAVS's public key */ - if(!BN_hex2bn(&x, kat->QCAVSx)) - goto err; - if(!BN_hex2bn(&y, kat->QCAVSy)) - goto err; - if (is_char_two) { -#ifdef OPENSSL_NO_EC2M - goto err; -#else - if (!EC_POINT_set_affine_coordinates_GF2m(group, pub, x, y, NULL)) - goto err; -#endif - } - else { - if (!EC_POINT_set_affine_coordinates_GFp(group, pub, x, y, NULL)) - goto err; - } - - /* ZIUT is the shared secret */ - if(!BN_hex2bn(&bnz, kat->ZIUT)) - goto err; - Ztmplen = (EC_GROUP_get_degree(EC_KEY_get0_group(key1)) + 7) / 8; - Zlen = BN_num_bytes(bnz); - if (Zlen > Ztmplen) - goto err; - if((Ztmp = OPENSSL_zalloc(Ztmplen)) == NULL) - goto err; - if((Z = OPENSSL_zalloc(Ztmplen)) == NULL) - goto err; - if(!BN_bn2binpad(bnz, Z, Ztmplen)) - goto err; - if (!ECDH_compute_key(Ztmp, Ztmplen, pub, key1, 0)) - goto err; - /* shared secrets should be identical */ - if (memcmp(Ztmp, Z, Ztmplen)) - goto err; - rv = 1; - err: - EC_KEY_free(key1); - EC_POINT_free(pub); - BN_free(bnz); - BN_free(x); - BN_free(y); - OPENSSL_free(Ztmp); - OPENSSL_free(Z); - if (rv) { - BIO_puts(out, " ok\n"); - } - else { - fprintf(stderr, "Error in ECC CDH routines\n"); - ERR_print_errors_fp(stderr); - } - return rv; -} - -int main(int argc, char *argv[]) -{ - int ret = 1; - size_t n = 0; - BIO *out; - - CRYPTO_set_mem_debug(1); - CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON); - - RAND_seed(rnd_seed, sizeof rnd_seed); - - out = BIO_new(BIO_s_file()); - if (out == NULL) - EXIT(1); - BIO_set_fp(out, stdout, BIO_NOCLOSE | BIO_FP_TEXT); - - /* NAMED CURVES TESTS: moved to evptests.txt */ - - /* KATs: moved to evptests.txt */ - - /* NIST SP800-56A co-factor ECDH KATs */ - for (n = 0; n < (sizeof(ecdh_cavs_kats)/sizeof(ecdh_cavs_kat_t)); n++) { - if (!ecdh_cavs_kat(out, &ecdh_cavs_kats[n])) - goto err; - } - - ret = 0; - - err: - ERR_print_errors_fp(stderr); - BIO_free(out); - -#ifndef OPENSSL_NO_CRYPTO_MDEBUG - if (CRYPTO_mem_leaks_fp(stderr) <= 0) - ret = 1; -#endif - EXIT(ret); -} -#endif diff --git a/test/ecdhtest_cavs.h b/test/ecdhtest_cavs.h deleted file mode 100644 index fee7011..0000000 --- a/test/ecdhtest_cavs.h +++ /dev/null @@ -1,4312 +0,0 @@ -/* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. - * - * Licensed under the OpenSSL license (the "License"). You may not use - * this file except in compliance with the License. You can obtain a copy - * in the file LICENSE in the source distribution or at - * https://www.openssl.org/source/license.html - */ - -#ifndef ECDHTEST_CAVS_H -#define ECDHTEST_CAVS_H - -/* - * co-factor ECDH KATs for NIST SP800-56A - * http://csrc.nist.gov/groups/STM/cavp/component-testing.html#ECCCDH - * $ sha256sum KAS_ECC_CDH_PrimitiveTest.txt - * 456068d3f8aad8ac62a03d19ed3173f00ad51f42b51aeab4753c20f30c01cf23 KAS_ECC_CDH_PrimitiveTest.txt - */ - -typedef struct { - const int nid; - const char *QCAVSx; - const char *QCAVSy; - const char *dIUT; - const char *QIUTx; - const char *QIUTy; - const char *ZIUT; -} ecdh_cavs_kat_t; - -static const ecdh_cavs_kat_t ecdh_cavs_kats[] = { - /* curves over prime fields go here */ - { NID_X9_62_prime192v1, - "42ea6dd9969dd2a61fea1aac7f8e98edcc896c6e55857cc0", - "dfbe5d7c61fac88b11811bde328e8a0d12bf01a9d204b523", - "f17d3fea367b74d340851ca4270dcb24c271f445bed9d527", - "b15053401f57285637ec324c1cd2139e3a67de3739234b37", - "f269c158637482aad644cd692dd1d3ef2c8a7c49e389f7f6", - "803d8ab2e5b6e6fca715737c3a82f7ce3c783124f6d51cd0" }, - { NID_X9_62_prime192v1, - "deb5712fa027ac8d2f22c455ccb73a91e17b6512b5e030e7", - "7e2690a02cc9b28708431a29fb54b87b1f0c14e011ac2125", - "56e853349d96fe4c442448dacb7cf92bb7a95dcf574a9bd5", - "c00d435716ffea53fd8c162792414c37665187e582716539", - "ab711c62aa71a5a18e8a3c48f89dc6fa52fac0108e52a8a0", - "c208847568b98835d7312cef1f97f7aa298283152313c29d" }, - { NID_X9_62_prime192v1, - "4edaa8efc5a0f40f843663ec5815e7762dddc008e663c20f", - "0a9f8dc67a3e60ef6d64b522185d03df1fc0adfd42478279", - "c6ef61fe12e80bf56f2d3f7d0bb757394519906d55500949", - "e184bc182482f3403c8787b83842477467fcd011db0f6c64", - "f9d1c14142f40de8639db97d51a63d2cce1007ccf773cdcb", - "87229107047a3b611920d6e3b2c0c89bea4f49412260b8dd" }, - { NID_X9_62_prime192v1, - "8887c276edeed3e9e866b46d58d895c73fbd80b63e382e88", - "04c5097ba6645e16206cfb70f7052655947dd44a17f1f9d5", - "e6747b9c23ba7044f38ff7e62c35e4038920f5a0163d3cda", - "2b838dbe73735f37a39a78d3195783d26991e86ff4d92d1a", - "60d344942274489f98903b2e7f93f8d197fc9ae60a0ed53a", - "eec0bed8fc55e1feddc82158fd6dc0d48a4d796aaf47d46c" }, - { NID_X9_62_prime192v1, - "0d045f30254adc1fcefa8a5b1f31bf4e739dd327cd18d594", - "542c314e41427c08278a08ce8d7305f3b5b849c72d8aff73", - "beabedd0154a1afcfc85d52181c10f5eb47adc51f655047d", - "1f65cf6e8978e1c1bc10bb61a7db311de310088c8cf9768b", - "f7d438168e7f42ab14b16af53a7a2f646ff40b53d74cbcc7", - "716e743b1b37a2cd8479f0a3d5a74c10ba2599be18d7e2f4" }, - { NID_X9_62_prime192v1, - "fb35ca20d2e96665c51b98e8f6eb3d79113508d8bccd4516", - "368eec0d5bfb847721df6aaff0e5d48c444f74bf9cd8a5a7", - "cf70354226667321d6e2baf40999e2fd74c7a0f793fa8699", - "5f4844ffcce61005d24f737db98675e92f7b6543aeb6106c", - "5424f598139215d389b6b12b86d58014857f2ddadb540f51", - "f67053b934459985a315cb017bf0302891798d45d0e19508" }, - { NID_X9_62_prime192v1, - "824752960c1307e5f13a83da21c7998ca8b5b00b9549f6d0", - "bc52d91e234363bc32ee0b6778f25cd8c1847510f4348b94", - "fe942515237fffdd7b4eb5c64909eee4856a076cdf12bae2", - "e6369df79b207b8b8679f7c869cfc264859d1ab55aa401e8", - "1f99c71f801a30b52f74da6e5e6dbb62ee4c5da1090cc020", - "75822971193edd472bf30151a782619c55ad0b279c9303dd" }, - { NID_X9_62_prime192v1, - "10bb57020291141981f833b4749e5611034b308e84011d21", - "e1cacd6b7bd17ed8ddb50b6aee0654c35f2d0eddc1cffcf6", - "33fed10492afa5bea0333c0af12cac940c4d222455bcd0fe", - "ef0b28afc41637d737f42e4c8aaceadc84ba2e0b849ca18c", - "57797942e552173bba17f73278e029f42335068bd770ddf2", - "67cba2cbb69ee78bf1abafb0e6fbe33fa2094c128d59652d" }, - { NID_X9_62_prime192v1, - "5192fce4185a7758ea1bc56e0e4f4e8b2dce32348d0dced1", - "20989981beaaf0006d88a96e7971a2fa3a33ba46047fc7ba", - "f3557c5d70b4c7954960c33568776adbe8e43619abe26b13", - "d70112c5f0f0844386494ac1ad99dce2214134176ebfb9af", - "d3c187a038510ab31d459e2b7af1a380dd7576af06267548", - "cf99a2770a386ca0137d1eca0a226e484297ac3c513f3631" }, - { NID_X9_62_prime192v1, - "26d019dbe279ead01eed143a91601ada26e2f42225b1c62b", - "6ca653f08272e0386fc9421fbd580093d7ae6301bca94476", - "586cfba1c6e81766ed52828f177b1be14ebbc5b83348c311", - "58b3c63e56bec9d696bf9a88df2873738391f76368aa2b49", - "5776773b261faf7ba2fdc4fe43b92c0b1c7a2fd054a43650", - "576331e2b4fb38a112810e1529834de8307fb0a0d2756877" }, - { NID_X9_62_prime192v1, - "539bc40fe20a0fb267888b647b03eaaf6ec20c02a1e1f8c8", - "69095e5bb7b4d44c3278a7ee6beca397c45246da9a34c8be", - "cad8100603a4f65be08d8fc8a1b7e884c5ff65deb3c96d99", - "b7fcc0f52c7a411edbed39e10bf02b6ae0f26614c6b325a2", - "47483b26eb67776de2b93ab7119d5447573739e3d55e72fb", - "902f4501916a0dd945554c3a37b3d780d375a6da713197c4" }, - { NID_X9_62_prime192v1, - "5d343ddb96318fb4794d10f6c573f99fee5d0d57b996250f", - "99fbdf9d97dd88ad410235dac36e5b92ce2824b8e587a82c", - "1edd879cc5c79619cae6c73a691bd5a0395c0ef3b356fcd2", - "6ce6adb2c30808f590048c33dffad4524ebf7a5fd39b747b", - "4966bd2f3d00569b4d4c0409fbd7a2db752f6d09bca8c25f", - "46e4de335054d429863218ae33636fc9b89c628b64b506c7" }, - { NID_X9_62_prime192v1, - "8d3db9bdce137ffbfb891388c37df6c0cbc90aa5e5376220", - "135d30b5cb660eef8764ffc744f15c1b5d6dc06ba4416d37", - "460e452273fe1827602187ad3bebee65cb84423bb4f47537", - "d1bd3a3efabf4767fe6380bdf0dbf49d52d4cf0cbb89404c", - "c150c2b4c8b3aa35f765f847e4f7f8fd8704d241a181ee99", - "1bfe9e5a20ac7a38d8f605b425bb9030be31ef97c101c76c" }, - { NID_X9_62_prime192v1, - "9e0a6949519c7f5be68c0433c5fdf13064aa13fb29483dc3", - "e1c8ba63e1f471db23185f50d9c871edea21255b3a63b4b7", - "b970365008456f8758ecc5a3b33cf3ae6a8d568107a52167", - "c1b8610c8c63f8d4abda093b9a11a566044bf65c6faa8999", - "a5bc4b3ca095382e9738aee95fe9479b17879b3ad5295559", - "0e8c493a4adc445dc9288a3b9b272599224054592d7265b3" }, - { NID_X9_62_prime192v1, - "be088238902e9939b3d054eeeb8492daf4bdcf09a2ab77f1", - "58d6749a3a923dc80440f2661fd35b651617e65294b46375", - "59c15b8a2464e41dfe4371c7f7dadf470ae425544f8113bd", - "1fe776f73567b6ac0b0d6764164de6c5be751ba8d1ff455e", - "4c160bf38afb2b71f684261664115ce874553e8b059432d2", - "0f1991086b455ded6a1c4146f7bf59fe9b495de566ebc6bf" }, - { NID_X9_62_prime192v1, - "bf5ae05025e1be617e666d87a4168363873d5761b376b503", - "e1e6e38b372b6bee0ff5b3502d83735e3b2c26825e4f0fcc", - "a6e9b885c66b959d1fc2708d591b6d3228e49eb98f726d61", - "632bb7651dbf49dde9dd125d13fb234e06617723beed3d1b", - "f4ad5209638488397c5f44f994dd7479807e79f4887d2e71", - "b30f2127c34df35aaa91dbf0bbe15798e799a03ed11698c1" }, - { NID_X9_62_prime192v1, - "6cc4feed84c7ab0d09005d660ed34de6955a9461c4138d11", - "31225f33864ed48da06fa45a913b46cf42557742e35085e6", - "bdb754096ffbfbd8b0f3cb046ccb7ca149c4e7192067a3ee", - "d9c098d421d741f6faab116f3e4731d28c5558e19fe112a1", - "38d4dc48ccdb1d3ed8d31fd06784a4f87a68aec1cbd5b08f", - "64a5c246599d3e8177a2402a1110eb81e6c456ab4edb5127" }, - { NID_X9_62_prime192v1, - "36157315bee7afedded58c4e8ba14d3421c401e51135bcc9", - "37c297ca703f77c52bb062d8ce971db84097ba0c753a418f", - "d5bcf2534dafc3d99964c7bd63ab7bd15999fe56dd969c42", - "fda1d5d28d6fe0e7909d6a8bafa7824db5572ab92ffe7de6", - "134a297c1d9c8bbab249abacd951ed11e5a99f92e7991572", - "017b8ca53c82fab163da2ab783966a39e061b32c8cfa334d" }, - { NID_X9_62_prime192v1, - "98464d47f0256f8292e027e8c92582ea77cf9051f5ce8e5d", - "449552ef7578be96236fe5ed9d0643c0bb6c5a9134b0108d", - "43d4b9df1053be5b4268104c02244d3bf9594b010b46a8b2", - "c3020b7091463d788f1f1d76f7cfeec82ecdb3b7d99c345c", - "9a7710d5179591d8f3df0aa122301768ae7db7eee2d7f583", - "340ef3db3dbebdd91c62c3d4e1a3da2c7c52a3338b865259" }, - { NID_X9_62_prime192v1, - "563eb66c334cf6f123bf04c7803b48a3110214237e983bf5", - "0f351104819199ef07c9a6051d20758f3af79027ea66a53f", - "94cac2c2ca714746401670d94edbf3f677867b5a03bee7ad", - "b18554a2e743ef0aa2f040987c4c451004e096df3d80ddae", - "6e3e2c618f896e36ba620077684b70a05ffb79bf5e6c7640", - "2162144921df5103d0e6a650fb13fd246f4738d0896ce92f" }, - { NID_X9_62_prime192v1, - "86828c4ac92b5507618aec7873a1d4fc6543c5be33cf3078", - "b22ca72437545e10d6d4f052422eb898b737a4b8543ee550", - "2a3a9e33c8cc3107a9f9265c3bdea1206570e86f92ac7014", - "a7ba38be1bc669dd23ccfcee0645b1f0db8cf942deafaeb6", - "b82db79d80cd0e37f28d4163adc389dee8fc7797b5c9831b", - "4c69e7feed4b11159adfc16a6047a92572ea44e0740b23af" }, - { NID_X9_62_prime192v1, - "6700a102437781a9581da2bc25ced5abf419da91d3c803df", - "71396c9cf08bcd91854e3e6e42d8c657ce0f27ab77a9dc4b", - "4a6b78a98ac98fa8e99a8ece08ec0251125f85c6fd0e289b", - "e769dbbcd5ce2d83514b768d3d2d5aa0bcd8f66af15f5500", - "2fc6d0b039e0f28f74fbeffe9e883d4dd72296e4e95cae71", - "46072acefd67bff50de355ca7a31fa6be59f26e467587259" }, - { NID_X9_62_prime192v1, - "a82f354cf97bee5d22dc6c079f2902ead44d96a8f614f178", - "a654a9aa8a1a0802f2ce0ee8a0f4ebe96dee1b37464b1ff2", - "c5a6491d78844d6617ef33be6b8bd54da221450885d5950f", - "db1b24f7466bc154e9d7d2c3ca52dcfe0bfc9563c5fdb6f3", - "1c74fbbf5bd99921f1a9a744f8e1cf770bd6a76a772b3003", - "ec5580eabca9f3389d2b427ddf6e49e26d629afd03fa766e" }, - { NID_X9_62_prime192v1, - "3cec21b28668a12a2cf78e1a8e55d0efe065152fffc34718", - "1029557beba4ff1992bd21c23cb4825f6dae70e3318fd1ca", - "2ba2703c5e23f6463c5b88dc37292fabd3399b5e1fb67c05", - "7543148906cef9b37a71a7c08363cdd3bba50142d65241aa", - "8b3a6973de8dc271e27c1ead1e962fdaae3710c724daac38", - "7f3929dd3cbf7673bc30d859d90b880307475f800660ea32" }, - { NID_X9_62_prime192v1, - "7082644715b8b731f8228b5118e7270d34d181f361a221fc", - "464649d6c88ca89614488a1cc7b8442bb42f9fb3020a3d76", - "836118c6248f882e9147976f764826c1a28755a6102977d5", - "fcd345a976c720caaa97de6697226825615e1287a9eff67e", - "58ea42edbeeafca9ff44cfd7f29abd2cbde7626d79e422c9", - "72e88f3ea67d46d46dbf83926e7e2a6b85b54536741e6d2c" }, - { NID_secp224r1, - "af33cd0629bc7e996320a3f40368f74de8704fa37b8fab69abaae280", - "882092ccbba7930f419a8a4f9bb16978bbc3838729992559a6f2e2d7", - "8346a60fc6f293ca5a0d2af68ba71d1dd389e5e40837942df3e43cbd", - "8de2e26adf72c582d6568ef638c4fd59b18da171bdf501f1d929e048", - "4a68a1c2b0fb22930d120555c1ece50ea98dea8407f71be36efac0de", - "7d96f9a3bd3c05cf5cc37feb8b9d5209d5c2597464dec3e9983743e8" }, - { NID_secp224r1, - "13bfcd4f8e9442393cab8fb46b9f0566c226b22b37076976f0617a46", - "eeb2427529b288c63c2f8963c1e473df2fca6caa90d52e2f8db56dd4", - "043cb216f4b72cdf7629d63720a54aee0c99eb32d74477dac0c2f73d", - "2f90f5c8eac9c7decdbb97b6c2f715ab725e4fe40fe6d746efbf4e1b", - "66897351454f927a309b269c5a6d31338be4c19a5acfc32cf656f45c", - "ee93ce06b89ff72009e858c68eb708e7bc79ee0300f73bed69bbca09" }, - { NID_secp224r1, - "756dd806b9d9c34d899691ecb45b771af468ec004486a0fdd283411e", - "4d02c2ca617bb2c5d9613f25dd72413d229fd2901513aa29504eeefb", - "5ad0dd6dbabb4f3c2ea5fe32e561b2ca55081486df2c7c15c9622b08", - "005bca45d793e7fe99a843704ed838315ab14a5f6277507e9bc37531", - "43e9d421e1486ae5893bfd23c210e5c140d7c6b1ada59d842c9a98de", - "3fcc01e34d4449da2a974b23fc36f9566754259d39149790cfa1ebd3" }, - { NID_secp224r1, - "0f537bf1c1122c55656d25e8aa8417e0b44b1526ae0523144f9921c4", - "f79b26d30e491a773696cc2c79b4f0596bc5b9eebaf394d162fb8684", - "0aa6ff55a5d820efcb4e7d10b845ea3c9f9bc5dff86106db85318e22", - "2f96754131e0968198aa78fbe8c201dc5f3581c792de487340d32448", - "61e8a5cd79615203b6d89e9496f9e236fe3b6be8731e743d615519c6", - "49129628b23afcef48139a3f6f59ff5e9811aa746aa4ff33c24bb940" }, - { NID_secp224r1, - "2b3631d2b06179b3174a100f7f57131eeea8947be0786c3dc64b2239", - "83de29ae3dad31adc0236c6de7f14561ca2ea083c5270c78a2e6cbc0", - "efe6e6e25affaf54c98d002abbc6328da159405a1b752e32dc23950a", - "355e962920bde043695f6bffb4b355c63da6f5de665ed46f2ec817e2", - "748e095368f62e1d364edd461719793b404adbdaacbcadd88922ff37", - "fcdc69a40501d308a6839653a8f04309ec00233949522902ffa5eac6" }, - { NID_secp224r1, - "4511403de29059f69a475c5a6a5f6cabed5d9f014436a8cb70a02338", - "7d2d1b62aa046df9340f9c37a087a06b32cf7f08a223f992812a828b", - "61cb2932524001e5e9eeed6df7d9c8935ee3322029edd7aa8acbfd51", - "d50e4adabfd989d7dbc7cf4052546cc7c447a97630436997ad4b9536", - "5bea503473c5eaef9552d42c40b1f2f7ca292733b255b9bbe1b12337", - "827e9025cb62e0e837c596063f3b9b5a0f7afd8d8783200086d61ec1" }, - { NID_secp224r1, - "314a0b26dd31c248845d7cc17b61cad4608259bed85a58d1f1ffd378", - "66e4b350352e119eecada382907f3619fd748ea73ae4899dfd496302", - "8c7ace347171f92def98d845475fc82e1d1496da81ee58f505b985fa", - "b1a8dcac89aca2799320b451df1c7ff4d97567abb68141c0d95fc2aa", - "3524950902b1510bdc987d860afc27ad871ceaea66935abd3c0a99a8", - "335ba51228d94acbed851ca7821c801d5cb1c7975d7aa90a7159f8fa" }, - { NID_secp224r1, - "abe6843beec2fd9e5fb64730d0be4d165438ce922ed75dd80b4603e5", - "6afe8673a96c4ba9900ad85995e631e436c6cc88a2c2b47b7c4886b8", - "382feb9b9ba10f189d99e71a89cdfe44cb554cec13a212840977fb68", - "abb6f1e3773ff8fc73aea2a0b107809ce70adcefed6e41fc5cb43045", - "a963897ae906c10a055eeadb97ffdd6f748d3e5621e5fff304e48ba7", - "8c2e627594206b34f7356d3426eb3d79f518ef843fbe94014cceace3" }, - { NID_secp224r1, - "13cf9d6d2c9aae8274c27d446afd0c888ffdd52ae299a35984d4f527", - "dcbee75b515751f8ee2ae355e8afd5de21c62a939a6507b538cbc4af", - "e0d62035101ef487c485c60fb4500eebe6a32ec64dbe97dbe0232c46", - "88537735e9b23e3e0e076f135a82d33f9bffb465f3abce8322a62a62", - "b4c8c123673197875c0bd14ed097606d330fba2b9200ef65a44764d3", - "632abb662728dbc994508873d5c527ca5ef923c0d31fa6c47ef4c825" }, - { NID_secp224r1, - "965b637c0dfbc0cf954035686d70f7ec30929e664e521dbaa2280659", - "82a58ff61bc90019bbcbb5875d3863db0bc2a1fa34b0ad4de1a83f99", - "b96ade5b73ba72aa8b6e4d74d7bf9c58e962ff78eb542287c7b44ba2", - "37682926a54f70a4c1748f54d50d5b00138a055f924f2c65e5b0bbe4", - "596afefcdd640d29635015b89bdddd1f8c2723686d332e7a06ca8799", - "34641141aab05ef58bd376d609345901fb8f63477c6be9097f037f1f" }, - { NID_secp224r1, - "73cc645372ca2e71637cda943d8148f3382ab6dd0f2e1a49da94e134", - "df5c355c23e6e232ebc3bee2ab1873ee0d83e3382f8e6fe613f6343c", - "a40d7e12049c71e6522c7ff2384224061c3a457058b310557655b854", - "399801243bfe0c2da9b0a53c8ca57f2eee87aaa94a8e4d5e029f42ca", - "aa49e6d4b47cee7a5c4ab71d5a67da84e0b9b425ce3e70da68c889e7", - "4f74ac8507501a32bfc5a78d8271c200e835966e187e8d00011a8c75" }, - { NID_secp224r1, - "546578216250354e449e21546dd11cd1c5174236739acad9ce0f4512", - "d2a22fcd66d1abedc767668327c5cb9c599043276239cf3c8516af24", - "ad2519bc724d484e02a69f05149bb047714bf0f5986fac2e222cd946", - "df9c1e0ef15e53b9f626e2be1cbe893639c06f3e0439ee95d7d4b1e3", - "7a52a7386adda243efdf8941085c84e31239cab92b8017336748965e", - "ad09c9ae4d2324ea81bb555b200d3c003e22a6870ee03b52df49e4de" }, - { NID_secp224r1, - "1d46b1dc3a28123cb51346e67baec56404868678faf7d0e8b2afa22a", - "0ec9e65ec97e218373e7fc115c2274d5b829a60d93f71e01d58136c3", - "3d312a9b9d8ed09140900bbac1e095527ebc9e3c6493bcf3666e3a29", - "b4a0198dc8810e884425b750928b0c960c31f7a99663400b01a179df", - "812b601bfc0738242c6f86f830f27acd632ca618a0b5280c9d5769f7", - "ef029c28c68064b8abd2965a38c404fb5e944ace57e8638daba9d3cd" }, - { NID_secp224r1, - "266d038cc7a4fe21f6c976318e827b82bb5b8f7443a55298136506e0", - "df123d98a7a20bbdf3943df2e3563422f8c0cf74d53aaabdd7c973ba", - "8ce0822dc24c153995755ac350737ef506641c7d752b4f9300c612ed", - "00dfc7ec137690cd6d12fdb2fd0b8c5314582108769c2b722ffb3958", - "5eef3da4ba458127346bb64023868bddb7558a2ecfc813645f4ce9fe", - "f83c16661dfcbad021cc3b5a5af51d9a18db4653866b3ff90787ce3e" }, - { NID_secp224r1, - "eb0a09f7a1c236a61f595809ec5670efd92e4598d5e613e092cdfdca", - "50787ae2f2f15b88bc10f7b5f0aee1418373f16153aebd1fba54288d", - "0ff9b485325ab77f29e7bc379fed74bfac859482da0dee7528c19db2", - "7e603e6976db83c36011508fa695d1b515249e2e54b48fcbcfb90247", - "0179a600ce86adfca9b1b931fa5173d618da09e841803d19b0264286", - "f51258c63f232e55a66aa25ebd597b2018d1052c02eeb63866758005" }, - { NID_secp224r1, - "6b2f6b18a587f562ffc61bd9b0047322286986a78f1fd139b84f7c24", - "7096908e4615266be59a53cd655515056ff92370a6271a5d3823d704", - "19cf5ff6306467f28b9fe0675a43c0582552c8c12e59ce7c38f292b1", - "fc20e906e609c112cfc2e0fea6303882c5db94e87e022373ab2c082a", - "aecdf1daa71782bc5a26bbbd8d7e8a76490e26abc17dffc774bd7341", - "7fdc969a186ff18429f2a276dac43beea21182d82ce2e5a0876552b1" }, - { NID_secp224r1, - "328101ba826acd75ff9f34d5574ce0dbc92f709bad8d7a33c47940c1", - "df39f1ea88488c55d5538160878b9ced18a887ea261dd712d14024ff", - "90a15368e3532c0b1e51e55d139447c2c89bc160719d697291ea7c14", - "c6837d506e976da7db3ad1267c359dff2ea6fb0b7f7f8e77024c59e9", - "67eb491d2fc8a530c46525d2a8b2d7c1df5fba1ae740a4649c683ee6", - "3d60ab6db2b3ffe2d29ccff46d056e54230cf34982e241556ed2920c" }, - { NID_secp224r1, - "0081e34270871e2ebbd94183f617b4ae15f0416dd634fe6e934cf3c0", - "3a1e9f38a7b90b7317d26b9f6311063ab58b268cf489b2e50386d5d6", - "8e0838e05e1721491067e1cabc2e8051b290e2616eec427b7121897d", - "e9150f770075626019e18f95473b71e6828041791d3f08d3faeeaa2b", - "475f70735eaae52308a3b763dc88efe18ab590ebafa035f6e08b001c", - "9116d72786f4db5df7a8b43078c6ab9160d423513d35ea5e2559306d" }, - { NID_secp224r1, - "2623632fdf0bd856805a69aa186d4133ef5904e1f655a972d66cce07", - "2cef9728dd06fb8b50150f529b695076d4507983912585c89bd0682e", - "38106e93f16a381adb1d72cee3da66ae462ad4bbfea9ecdf35d0814e", - "7be6c4c917829ab657dd79e8637d7aefd2f81f0de7654d957e97658d", - "430d22d9e8438310f61e0d43f25fa3e34585f432baad27db3021bf0d", - "207c53dcefac789aaa0276d9200b3a940ce5f2296f4cb2e81a185d3d" }, - { NID_secp224r1, - "8ee4d1dcc31dee4bf6fe21ca8a587721d910acfb122c16c2a77a8152", - "4ebf323fff04eb477069a0ac68b345f6b1ae134efc31940e513cb99f", - "e5d1718431cf50f6cbd1bc8019fa16762dfa12c989e5999977fb4ea2", - "2ea4966e7f92ed7f5cc61fde792045f63b731d6e7d0de2577f2d8ece", - "1c4a7b1ede6f839162292df424be78e8176fb6f942a3c02391700f31", - "10e467da34f48ad7072005bccd6da1b2ba3f71eafa1c393842f91d74" }, - { NID_secp224r1, - "97dcbe6d28335882a6d193cc54a1063dd0775dc328565300bb99e691", - "dad11dd5ece8cfd9f97c9a526e4a1506e6355969ee87826fc38bcd24", - "3d635691b62a9a927c633951c9369c8862bd2119d30970c2644727d6", - "438bbb980517afb20be1d674e3ac2b31cef07a9b23fb8f6e38e0d6c0", - "0be5f1c47d58d21b6ed28423b32f5a94750da47edcef33ea79942afd", - "82fd2f9c60c4f999ac00bbe64bfc11da8ff8cda2e499fced65230bb1" }, - { NID_secp224r1, - "ce9126dd53972dea1de1d11efef900de34b661859c4648c5c0e534f7", - "e113b6f2c1659d07f2716e64a83c18bbce344dd2121fe85168eae085", - "acf3c85bbdc379f02f5ea36e7f0f53095a9e7046a28685a8659bf798", - "ff7511215c71d796bd646e8474be4416b91684ce0d269ef6f422013b", - "b7bf5e79b5a9393bb9ea42c0bdb2d3c2dc806e1a7306aa58e4fdbea5", - "530f7e7fc932613b29c981f261cb036cba3f1df3864e0e1cba2685a2" }, - { NID_secp224r1, - "84419967d6cfad41e75a02b6da605a97949a183a97c306c4b46e66a5", - "5cc9b259718b1bc8b144fde633a894616ffd59a3a6d5d8e942c7cbb7", - "cffd62cb00a0e3163fbf2c397fadc9618210f86b4f54a675287305f0", - "04bf4d948f4430d18b4ed6c96dbaf981fa11a403ed16887f06754981", - "7c1326a9cef51f79d4e78303d6064b459f612584ac2fdf593d7d5d84", - "49f6fd0139248ef4df2db05d1319bd5b1489e249827a45a8a5f12427" }, - { NID_secp224r1, - "7c9cac35768063c2827f60a7f51388f2a8f4b7f8cd736bd6bc337477", - "29ee6b849c6025d577dbcc55fbd17018f4edbc2ef105b004d6257bcd", - "85f903e43943d13c68932e710e80de52cbc0b8f1a1418ea4da079299", - "970a4a7e01d4188497ceb46955eb1b842d9085819a9b925c84529d3d", - "dfa2526480f833ea0edbd204e4e365fef3472888fe7d9691c3ebc09f", - "8f7e34e597ae8093b98270a74a8dfcdbed457f42f43df487c5487161" }, - { NID_secp224r1, - "085a7642ad8e59b1a3e8726a7547afbecffdac1dab7e57230c6a9df4", - "f91c36d881fe9b8047a3530713554a1af4c25c5a8e654dcdcf689f2e", - "cce64891a3d0129fee0d4a96cfbe7ac470b85e967529057cfa31a1d9", - "a6b29632db94da2125dc1cf80e03702687b2acc1122022fa2174765a", - "61723edd73e10daed73775278f1958ba56f1fc9d085ebc2b64c84fe5", - "71954e2261e8510be1a060733671d2e9d0a2d012eb4e09556d697d2a" }, - { NID_X9_62_prime256v1, - "700c48f77f56584c5cc632ca65640db91b6bacce3a4df6b42ce7cc838833d287", - "db71e509e3fd9b060ddb20ba5c51dcc5948d46fbf640dfe0441782cab85fa4ac", - "7d7dc5f71eb29ddaf80d6214632eeae03d9058af1fb6d22ed80badb62bc1a534", - "ead218590119e8876b29146ff89ca61770c4edbbf97d38ce385ed281d8a6b230", - "28af61281fd35e2fa7002523acc85a429cb06ee6648325389f59edfce1405141", - "46fc62106420ff012e54a434fbdd2d25ccc5852060561e68040dd7778997bd7b" }, - { NID_X9_62_prime256v1, - "809f04289c64348c01515eb03d5ce7ac1a8cb9498f5caa50197e58d43a86a7ae", - "b29d84e811197f25eba8f5194092cb6ff440e26d4421011372461f579271cda3", - "38f65d6dce47676044d58ce5139582d568f64bb16098d179dbab07741dd5caf5", - "119f2f047902782ab0c9e27a54aff5eb9b964829ca99c06b02ddba95b0a3f6d0", - "8f52b726664cac366fc98ac7a012b2682cbd962e5acb544671d41b9445704d1d", - "057d636096cb80b67a8c038c890e887d1adfa4195e9b3ce241c8a778c59cda67" }, - { NID_X9_62_prime256v1, - "a2339c12d4a03c33546de533268b4ad667debf458b464d77443636440ee7fec3", - "ef48a3ab26e20220bcda2c1851076839dae88eae962869a497bf73cb66faf536", - "1accfaf1b97712b85a6f54b148985a1bdc4c9bec0bd258cad4b3d603f49f32c8", - "d9f2b79c172845bfdb560bbb01447ca5ecc0470a09513b6126902c6b4f8d1051", - "f815ef5ec32128d3487834764678702e64e164ff7315185e23aff5facd96d7bc", - "2d457b78b4614132477618a5b077965ec90730a8c81a1c75d6d4ec68005d67ec" }, - { NID_X9_62_prime256v1, - "df3989b9fa55495719b3cf46dccd28b5153f7808191dd518eff0c3cff2b705ed", - "422294ff46003429d739a33206c8752552c8ba54a270defc06e221e0feaf6ac4", - "207c43a79bfee03db6f4b944f53d2fb76cc49ef1c9c4d34d51b6c65c4db6932d", - "24277c33f450462dcb3d4801d57b9ced05188f16c28eda873258048cd1607e0d", - "c4789753e2b1f63b32ff014ec42cd6a69fac81dfe6d0d6fd4af372ae27c46f88", - "96441259534b80f6aee3d287a6bb17b5094dd4277d9e294f8fe73e48bf2a0024" }, - { NID_X9_62_prime256v1, - "41192d2813e79561e6a1d6f53c8bc1a433a199c835e141b05a74a97b0faeb922", - "1af98cc45e98a7e041b01cf35f462b7562281351c8ebf3ffa02e33a0722a1328", - "59137e38152350b195c9718d39673d519838055ad908dd4757152fd8255c09bf", - "a8c5fdce8b62c5ada598f141adb3b26cf254c280b2857a63d2ad783a73115f6b", - "806e1aafec4af80a0d786b3de45375b517a7e5b51ffb2c356537c9e6ef227d4a", - "19d44c8d63e8e8dd12c22a87b8cd4ece27acdde04dbf47f7f27537a6999a8e62" }, - { NID_X9_62_prime256v1, - "33e82092a0f1fb38f5649d5867fba28b503172b7035574bf8e5b7100a3052792", - "f2cf6b601e0a05945e335550bf648d782f46186c772c0f20d3cd0d6b8ca14b2f", - "f5f8e0174610a661277979b58ce5c90fee6c9b3bb346a90a7196255e40b132ef", - "7b861dcd2844a5a8363f6b8ef8d493640f55879217189d80326aad9480dfc149", - "c4675b45eeb306405f6c33c38bc69eb2bdec9b75ad5af4706aab84543b9cc63a", - "664e45d5bba4ac931cd65d52017e4be9b19a515f669bea4703542a2c525cd3d3" }, - { NID_X9_62_prime256v1, - "6a9e0c3f916e4e315c91147be571686d90464e8bf981d34a90b6353bca6eeba7", - "40f9bead39c2f2bcc2602f75b8a73ec7bdffcbcead159d0174c6c4d3c5357f05", - "3b589af7db03459c23068b64f63f28d3c3c6bc25b5bf76ac05f35482888b5190", - "9fb38e2d58ea1baf7622e96720101cae3cde4ba6c1e9fa26d9b1de0899102863", - "d5561b900406edf50802dd7d73e89395f8aed72fba0e1d1b61fe1d22302260f0", - "ca342daa50dc09d61be7c196c85e60a80c5cb04931746820be548cdde055679d" }, - { NID_X9_62_prime256v1, - "a9c0acade55c2a73ead1a86fb0a9713223c82475791cd0e210b046412ce224bb", - "f6de0afa20e93e078467c053d241903edad734c6b403ba758c2b5ff04c9d4229", - "d8bf929a20ea7436b2461b541a11c80e61d826c0a4c9d322b31dd54e7f58b9c8", - "20f07631e4a6512a89ad487c4e9d63039e579cb0d7a556cb9e661cd59c1e7fa4", - "6de91846b3eee8a5ec09c2ab1f41e21bd83620ccdd1bdce3ab7ea6e02dd274f5", - "35aa9b52536a461bfde4e85fc756be928c7de97923f0416c7a3ac8f88b3d4489" }, - { NID_X9_62_prime256v1, - "94e94f16a98255fff2b9ac0c9598aac35487b3232d3231bd93b7db7df36f9eb9", - "d8049a43579cfa90b8093a94416cbefbf93386f15b3f6e190b6e3455fedfe69a", - "0f9883ba0ef32ee75ded0d8bda39a5146a29f1f2507b3bd458dbea0b2bb05b4d", - "abb61b423be5d6c26e21c605832c9142dc1dfe5a5fff28726737936e6fbf516d", - "733d2513ef58beab202090586fac91bf0fee31e80ab33473ab23a2d89e58fad6", - "605c16178a9bc875dcbff54d63fe00df699c03e8a888e9e94dfbab90b25f39b4" }, - { NID_X9_62_prime256v1, - "e099bf2a4d557460b5544430bbf6da11004d127cb5d67f64ab07c94fcdf5274f", - "d9c50dbe70d714edb5e221f4e020610eeb6270517e688ca64fb0e98c7ef8c1c5", - "2beedb04b05c6988f6a67500bb813faf2cae0d580c9253b6339e4a3337bb6c08", - "3d63e429cb5fa895a9247129bf4e48e89f35d7b11de8158efeb3e106a2a87395", - "0cae9e477ef41e7c8c1064379bb7b554ddcbcae79f9814281f1e50f0403c61f3", - "f96e40a1b72840854bb62bc13c40cc2795e373d4e715980b261476835a092e0b" }, - { NID_X9_62_prime256v1, - "f75a5fe56bda34f3c1396296626ef012dc07e4825838778a645c8248cff01658", - "33bbdf1b1772d8059df568b061f3f1122f28a8d819167c97be448e3dc3fb0c3c", - "77c15dcf44610e41696bab758943eff1409333e4d5a11bbe72c8f6c395e9f848", - "ad5d13c3db508ddcd38457e5991434a251bed49cf5ddcb59cdee73865f138c9f", - "62cec1e70588aa4fdfc7b9a09daa678081c04e1208b9d662b8a2214bf8e81a21", - "8388fa79c4babdca02a8e8a34f9e43554976e420a4ad273c81b26e4228e9d3a3" }, - { NID_X9_62_prime256v1, - "2db4540d50230756158abf61d9835712b6486c74312183ccefcaef2797b7674d", - "62f57f314e3f3495dc4e099012f5e0ba71770f9660a1eada54104cdfde77243e", - "42a83b985011d12303db1a800f2610f74aa71cdf19c67d54ce6c9ed951e9093e", - "ab48caa61ea35f13f8ed07ffa6a13e8db224dfecfae1a7df8b1bb6ebaf0cb97d", - "1274530ca2c385a3218bddfbcbf0b4024c9badd5243bff834ebff24a8618dccb", - "72877cea33ccc4715038d4bcbdfe0e43f42a9e2c0c3b017fc2370f4b9acbda4a" }, - { NID_X9_62_prime256v1, - "cd94fc9497e8990750309e9a8534fd114b0a6e54da89c4796101897041d14ecb", - "c3def4b5fe04faee0a11932229fff563637bfdee0e79c6deeaf449f85401c5c4", - "ceed35507b5c93ead5989119b9ba342cfe38e6e638ba6eea343a55475de2800b", - "9a8cd9bd72e71752df91440f77c547509a84df98114e7de4f26cdb39234a625d", - "d07cfc84c8e144fab2839f5189bb1d7c88631d579bbc58012ed9a2327da52f62", - "e4e7408d85ff0e0e9c838003f28cdbd5247cdce31f32f62494b70e5f1bc36307" }, - { NID_X9_62_prime256v1, - "15b9e467af4d290c417402e040426fe4cf236bae72baa392ed89780dfccdb471", - "cdf4e9170fb904302b8fd93a820ba8cc7ed4efd3a6f2d6b05b80b2ff2aee4e77", - "43e0e9d95af4dc36483cdd1968d2b7eeb8611fcce77f3a4e7d059ae43e509604", - "f989cf8ee956a82e7ebd9881cdbfb2fd946189b08db53559bc8cfdd48071eb14", - "5eff28f1a18a616b04b7d337868679f6dd84f9a7b3d7b6f8af276c19611a541d", - "ed56bcf695b734142c24ecb1fc1bb64d08f175eb243a31f37b3d9bb4407f3b96" }, - { NID_X9_62_prime256v1, - "49c503ba6c4fa605182e186b5e81113f075bc11dcfd51c932fb21e951eee2fa1", - "8af706ff0922d87b3f0c5e4e31d8b259aeb260a9269643ed520a13bb25da5924", - "b2f3600df3368ef8a0bb85ab22f41fc0e5f4fdd54be8167a5c3cd4b08db04903", - "69c627625b36a429c398b45c38677cb35d8beb1cf78a571e40e99fe4eac1cd4e", - "81690112b0a88f20f7136b28d7d47e5fbc2ada3c8edd87589bc19ec9590637bd", - "bc5c7055089fc9d6c89f83c1ea1ada879d9934b2ea28fcf4e4a7e984b28ad2cf" }, - { NID_X9_62_prime256v1, - "19b38de39fdd2f70f7091631a4f75d1993740ba9429162c2a45312401636b29c", - "09aed7232b28e060941741b6828bcdfa2bc49cc844f3773611504f82a390a5ae", - "4002534307f8b62a9bf67ff641ddc60fef593b17c3341239e95bdb3e579bfdc8", - "5fe964671315a18aa68a2a6e3dd1fde7e23b8ce7181471cfac43c99e1ae80262", - "d5827be282e62c84de531b963884ba832db5d6b2c3a256f0e604fe7e6b8a7f72", - "9a4e8e657f6b0e097f47954a63c75d74fcba71a30d83651e3e5a91aa7ccd8343" }, - { NID_X9_62_prime256v1, - "2c91c61f33adfe9311c942fdbff6ba47020feff416b7bb63cec13faf9b099954", - "6cab31b06419e5221fca014fb84ec870622a1b12bab5ae43682aa7ea73ea08d0", - "4dfa12defc60319021b681b3ff84a10a511958c850939ed45635934ba4979147", - "c9b2b8496f1440bd4a2d1e52752fd372835b364885e154a7dac49295f281ec7c", - "fbe6b926a8a4de26ccc83b802b1212400754be25d9f3eeaf008b09870ae76321", - "3ca1fc7ad858fb1a6aba232542f3e2a749ffc7203a2374a3f3d3267f1fc97b78" }, - { NID_X9_62_prime256v1, - "a28a2edf58025668f724aaf83a50956b7ac1cfbbff79b08c3bf87dfd2828d767", - "dfa7bfffd4c766b86abeaf5c99b6e50cb9ccc9d9d00b7ffc7804b0491b67bc03", - "1331f6d874a4ed3bc4a2c6e9c74331d3039796314beee3b7152fcdba5556304e", - "59e1e101521046ad9cf1d082e9d2ec7dd22530cce064991f1e55c5bcf5fcb591", - "482f4f673176c8fdaa0bb6e59b15a3e47454e3a04297d3863c9338d98add1f37", - "1aaabe7ee6e4a6fa732291202433a237df1b49bc53866bfbe00db96a0f58224f" }, - { NID_X9_62_prime256v1, - "a2ef857a081f9d6eb206a81c4cf78a802bdf598ae380c8886ecd85fdc1ed7644", - "563c4c20419f07bc17d0539fade1855e34839515b892c0f5d26561f97fa04d1a", - "dd5e9f70ae740073ca0204df60763fb6036c45709bf4a7bb4e671412fad65da3", - "30b9db2e2e977bcdc98cb87dd736cbd8e78552121925cf16e1933657c2fb2314", - "6a45028800b81291bce5c2e1fed7ded650620ebbe6050c6f3a7f0dfb4673ab5c", - "430e6a4fba4449d700d2733e557f66a3bf3d50517c1271b1ddae1161b7ac798c" }, - { NID_X9_62_prime256v1, - "ccd8a2d86bc92f2e01bce4d6922cf7fe1626aed044685e95e2eebd464505f01f", - "e9ddd583a9635a667777d5b8a8f31b0f79eba12c75023410b54b8567dddc0f38", - "5ae026cfc060d55600717e55b8a12e116d1d0df34af831979057607c2d9c2f76", - "46c9ebd1a4a3c8c0b6d572b5dcfba12467603208a9cb5d2acfbb733c40cf6391", - "46c913a27d044185d38b467ace011e04d4d9bbbb8cb9ae25fa92aaf15a595e86", - "1ce9e6740529499f98d1f1d71329147a33df1d05e4765b539b11cf615d6974d3" }, - { NID_X9_62_prime256v1, - "c188ffc8947f7301fb7b53e36746097c2134bf9cc981ba74b4e9c4361f595e4e", - "bf7d2f2056e72421ef393f0c0f2b0e00130e3cac4abbcc00286168e85ec55051", - "b601ac425d5dbf9e1735c5e2d5bdb79ca98b3d5be4a2cfd6f2273f150e064d9d", - "7c9e950841d26c8dde8994398b8f5d475a022bc63de7773fcf8d552e01f1ba0a", - "cc42b9885c9b3bee0f8d8c57d3a8f6355016c019c4062fa22cff2f209b5cc2e1", - "4690e3743c07d643f1bc183636ab2a9cb936a60a802113c49bb1b3f2d0661660" }, - { NID_X9_62_prime256v1, - "317e1020ff53fccef18bf47bb7f2dd7707fb7b7a7578e04f35b3beed222a0eb6", - "09420ce5a19d77c6fe1ee587e6a49fbaf8f280e8df033d75403302e5a27db2ae", - "fefb1dda1845312b5fce6b81b2be205af2f3a274f5a212f66c0d9fc33d7ae535", - "38b54db85500cb20c61056edd3d88b6a9dc26780a047f213a6e1b900f76596eb", - "6387e4e5781571e4eb8ae62991a33b5dc33301c5bc7e125d53794a39160d8fd0", - "30c2261bd0004e61feda2c16aa5e21ffa8d7e7f7dbf6ec379a43b48e4b36aeb0" }, - { NID_X9_62_prime256v1, - "45fb02b2ceb9d7c79d9c2fa93e9c7967c2fa4df5789f9640b24264b1e524fcb1", - "5c6e8ecf1f7d3023893b7b1ca1e4d178972ee2a230757ddc564ffe37f5c5a321", - "334ae0c4693d23935a7e8e043ebbde21e168a7cba3fa507c9be41d7681e049ce", - "3f2bf1589abf3047bf3e54ac9a95379bff95f8f55405f64eca36a7eebe8ffca7", - "5212a94e66c5ae9a8991872f66a72723d80ec5b2e925745c456f5371943b3a06", - "2adae4a138a239dcd93c243a3803c3e4cf96e37fe14e6a9b717be9599959b11c" }, - { NID_X9_62_prime256v1, - "a19ef7bff98ada781842fbfc51a47aff39b5935a1c7d9625c8d323d511c92de6", - "e9c184df75c955e02e02e400ffe45f78f339e1afe6d056fb3245f4700ce606ef", - "2c4bde40214fcc3bfc47d4cf434b629acbe9157f8fd0282540331de7942cf09d", - "29c0807f10cbc42fb45c9989da50681eead716daa7b9e91fd32e062f5eb92ca0", - "ff1d6d1955d7376b2da24fe1163a271659136341bc2eb1195fc706dc62e7f34d", - "2e277ec30f5ea07d6ce513149b9479b96e07f4b6913b1b5c11305c1444a1bc0b" }, - { NID_X9_62_prime256v1, - "356c5a444c049a52fee0adeb7e5d82ae5aa83030bfff31bbf8ce2096cf161c4b", - "57d128de8b2a57a094d1a001e572173f96e8866ae352bf29cddaf92fc85b2f92", - "85a268f9d7772f990c36b42b0a331adc92b5941de0b862d5d89a347cbf8faab0", - "9cf4b98581ca1779453cc816ff28b4100af56cf1bf2e5bc312d83b6b1b21d333", - "7a5504fcac5231a0d12d658218284868229c844a04a3450d6c7381abe080bf3b", - "1e51373bd2c6044c129c436e742a55be2a668a85ae08441b6756445df5493857" }, - { NID_secp384r1, - "a7c76b970c3b5fe8b05d2838ae04ab47697b9eaf52e764592efda27fe7513272" - "734466b400091adbf2d68c58e0c50066", - "ac68f19f2e1cb879aed43a9969b91a0839c4c38a49749b661efedf243451915e" - "d0905a32b060992b468c64766fc8437a", - "3cc3122a68f0d95027ad38c067916ba0eb8c38894d22e1b15618b6818a661774" - "ad463b205da88cf699ab4d43c9cf98a1", - "9803807f2f6d2fd966cdd0290bd410c0190352fbec7ff6247de1302df86f25d3" - "4fe4a97bef60cff548355c015dbb3e5f", - "ba26ca69ec2f5b5d9dad20cc9da711383a9dbe34ea3fa5a2af75b46502629ad5" - "4dd8b7d73a8abb06a3a3be47d650cc99", - "5f9d29dc5e31a163060356213669c8ce132e22f57c9a04f40ba7fcead493b457" - "e5621e766c40a2e3d4d6a04b25e533f1" }, - { NID_secp384r1, - "30f43fcf2b6b00de53f624f1543090681839717d53c7c955d1d69efaf0349b73" - "63acb447240101cbb3af6641ce4b88e0", - "25e46c0c54f0162a77efcc27b6ea792002ae2ba82714299c860857a68153ab62" - "e525ec0530d81b5aa15897981e858757", - "92860c21bde06165f8e900c687f8ef0a05d14f290b3f07d8b3a8cc6404366e5d" - "5119cd6d03fb12dc58e89f13df9cd783", - "ea4018f5a307c379180bf6a62fd2ceceebeeb7d4df063a66fb838aa352434197" - "91f7e2c9d4803c9319aa0eb03c416b66", - "68835a91484f05ef028284df6436fb88ffebabcdd69ab0133e6735a1bcfb3720" - "3d10d340a8328a7b68770ca75878a1a6", - "a23742a2c267d7425fda94b93f93bbcc24791ac51cd8fd501a238d40812f4cbf" - "c59aac9520d758cf789c76300c69d2ff" }, - { NID_secp384r1, - "1aefbfa2c6c8c855a1a216774550b79a24cda37607bb1f7cc906650ee4b3816d" - "68f6a9c75da6e4242cebfb6652f65180", - "419d28b723ebadb7658fcebb9ad9b7adea674f1da3dc6b6397b55da0f61a3edd" - "acb4acdb14441cb214b04a0844c02fa3", - "12cf6a223a72352543830f3f18530d5cb37f26880a0b294482c8a8ef8afad09a" - "a78b7dc2f2789a78c66af5d1cc553853", - "fcfcea085e8cf74d0dced1620ba8423694f903a219bbf901b0b59d6ac81baad3" - "16a242ba32bde85cb248119b852fab66", - "972e3c68c7ab402c5836f2a16ed451a33120a7750a6039f3ff15388ee622b706" - "5f7122bf6d51aefbc29b37b03404581b", - "3d2e640f350805eed1ff43b40a72b2abed0a518bcebe8f2d15b111b6773223da" - "3c3489121db173d414b5bd5ad7153435" }, - { NID_secp384r1, - "8bc089326ec55b9cf59b34f0eb754d93596ca290fcb3444c83d4de3a5607037e" - "c397683f8cef07eab2fe357eae36c449", - "d9d16ce8ac85b3f1e94568521aae534e67139e310ec72693526aa2e927b5b322" - "c95a1a033c229cb6770c957cd3148dd7", - "8dd48063a3a058c334b5cc7a4ce07d02e5ee6d8f1f3c51a1600962cbab462690" - "ae3cd974fb39e40b0e843daa0fd32de1", - "e38c9846248123c3421861ea4d32669a7b5c3c08376ad28104399494c84ff5ef" - "a3894adb2c6cbe8c3c913ef2eec5bd3c", - "9fa84024a1028796df84021f7b6c9d02f0f4bd1a612a03cbf75a0beea43fef8a" - "e84b48c60172aadf09c1ad016d0bf3ce", - "6a42cfc392aba0bfd3d17b7ccf062b91fc09bbf3417612d02a90bdde62ae40c5" - "4bb2e56e167d6b70db670097eb8db854" }, - { NID_secp384r1, - "eb952e2d9ac0c20c6cc48fb225c2ad154f53c8750b003fd3b4ed8ed1dc0defac" - "61bcdde02a2bcfee7067d75d342ed2b0", - "f1828205baece82d1b267d0d7ff2f9c9e15b69a72df47058a97f3891005d1fb3" - "8858f5603de840e591dfa4f6e7d489e1", - "84ece6cc3429309bd5b23e959793ed2b111ec5cb43b6c18085fcaea9efa0685d" - "98a6262ee0d330ee250bc8a67d0e733f", - "3222063a2997b302ee60ee1961108ff4c7acf1c0ef1d5fb0d164b84bce71c431" - "705cb9aea9a45f5d73806655a058bee3", - "e61fa9e7fbe7cd43abf99596a3d3a039e99fa9dc93b0bdd9cad81966d17eeaf5" - "57068afa7c78466bb5b22032d1100fa6", - "ce7ba454d4412729a32bb833a2d1fd2ae612d4667c3a900e069214818613447d" - "f8c611de66da200db7c375cf913e4405" }, - { NID_secp384r1, - "441d029e244eb7168d647d4df50db5f4e4974ab3fdaf022aff058b3695d0b8c8" - "14cc88da6285dc6df1ac55c553885003", - "e8025ac23a41d4b1ea2aa46c50c6e479946b59b6d76497cd9249977e0bfe4a62" - "62622f13d42a3c43d66bdbb30403c345", - "68fce2121dc3a1e37b10f1dde309f9e2e18fac47cd1770951451c3484cdb77cb" - "136d00e731260597cc2859601c01a25b", - "868be0e694841830e424d913d8e7d86b84ee1021d82b0ecf523f09fe89a76c0c" - "95c49f2dfbcf829c1e39709d55efbb3b", - "9195eb183675b40fd92f51f37713317e4a9b4f715c8ab22e0773b1bc71d3a219" - "f05b8116074658ee86b52e36f3897116", - "ba69f0acdf3e1ca95caaac4ecaf475bbe51b54777efce01ca381f45370e486fe" - "87f9f419b150c61e329a286d1aa265ec" }, - { NID_secp384r1, - "3d4e6bf08a73404accc1629873468e4269e82d90d832e58ad72142639b5a056a" - "d8d35c66c60e8149fac0c797bceb7c2f", - "9b0308dc7f0e6d29f8c277acbc65a21e5adb83d11e6873bc0a07fda0997f4825" - "04602f59e10bc5cb476b83d0a4f75e71", - "b1764c54897e7aae6de9e7751f2f37de849291f88f0f91093155b858d1cc32a3" - "a87980f706b86cc83f927bdfdbeae0bd", - "c371222feaa6770c6f3ea3e0dac9740def4fcf821378b7f91ff937c21e0470f7" - "0f3a31d5c6b2912195f10926942b48ae", - "047d6b4d765123563f81116bc665b7b8cc6207830d805fd84da7cb805a65baa7" - "c12fd592d1b5b5e3e65d9672a9ef7662", - "1a6688ee1d6e59865d8e3ada37781d36bb0c2717eef92e61964d3927cb765c29" - "65ea80f7f63e58c322ba0397faeaf62b" }, - { NID_secp384r1, - "f5f6bef1d110da03be0017eac760cc34b24d092f736f237bc7054b3865312a81" - "3bcb62d297fb10a4f7abf54708fe2d3d", - "06fdf8d7dc032f4e10010bf19cbf6159321252ff415fb91920d438f24e67e60c" - "2eb0463204679fa356af44cea9c9ebf5", - "f0f7a96e70d98fd5a30ad6406cf56eb5b72a510e9f192f50e1f84524dbf3d243" - "9f7287bb36f5aa912a79deaab4adea82", - "99c8c41cb1ab5e0854a346e4b08a537c1706a61553387c8d94943ab15196d40d" - "baa55b8210a77a5d00915f2c4ea69eab", - "5531065bdcf17bfb3cb55a02e41a57c7f694c383ad289f900fbd656c2233a93c" - "92e933e7a26f54cbb56f0ad875c51bb0", - "d06a568bf2336b90cbac325161be7695eacb2295f599500d787f072612aca313" - "ee5d874f807ddef6c1f023fe2b6e7cd0" }, - { NID_secp384r1, - "7cdec77e0737ea37c67b89b7137fe38818010f4464438ee4d1d35a0c488cad3f" - "de2f37d00885d36d3b795b9f93d23a67", - "28c42ee8d6027c56cf979ba4c229fdb01d234944f8ac433650112c3cf0f02844" - "e888a3569dfef7828a8a884589aa055e", - "9efb87ddc61d43c482ba66e1b143aef678fbd0d1bebc2000941fabe677fe5b70" - "6bf78fce36d100b17cc787ead74bbca2", - "4c34efee8f0c95565d2065d1bbac2a2dd25ae964320eb6bccedc5f3a9b42a881" - "a1afca1bb6b880584fa27b01c193cd92", - "d8fb01dbf7cd0a3868c26b951f393c3c56c2858cee901f7793ff5d271925d13a" - "41f8e52409f4eba1990f33acb0bac669", - "bb3b1eda9c6560d82ff5bee403339f1e80342338a991344853b56b24f109a4d9" - "4b92f654f0425edd4c205903d7586104" }, - { NID_secp384r1, - "8eeea3a319c8df99fbc29cb55f243a720d95509515ee5cc587a5c5ae22fbbd00" - "9e626db3e911def0b99a4f7ae304b1ba", - "73877dc94db9adddc0d9a4b24e8976c22d73c844370e1ee857f8d1b129a3bd5f" - "63f40caf3bd0533e38a5f5777074ff9e", - "d787a57fde22ec656a0a525cf3c738b30d73af61e743ea90893ecb2d7b622add" - "2f94ee25c2171467afb093f3f84d0018", - "171546923b87b2cbbad664f01ce932bf09d6a6118168678446bfa9f0938608cb" - "4667a98f4ec8ac1462285c2508f74862", - "fa41cb4db68ae71f1f8a3e8939dc52c2dec61a83c983beb2a02baf29ec492780" - "88882ed0cf56c74b5c173b552ccf63cf", - "1e97b60add7cb35c7403dd884c0a75795b7683fff8b49f9d8672a8206bfdcf0a" - "106b8768f983258c74167422e44e4d14" }, - { NID_secp384r1, - "a721f6a2d4527411834b13d4d3a33c29beb83ab7682465c6cbaf6624aca6ea58" - "c30eb0f29dd842886695400d7254f20f", - "14ba6e26355109ad35129366d5e3a640ae798505a7fa55a96a36b5dad33de004" - "74f6670f522214dd7952140ab0a7eb68", - "83d70f7b164d9f4c227c767046b20eb34dfc778f5387e32e834b1e6daec20edb" - "8ca5bb4192093f543b68e6aeb7ce788b", - "57cd770f3bbcbe0c78c770eab0b169bc45e139f86378ffae1c2b16966727c2f2" - "eb724572b8f3eb228d130db4ff862c63", - "7ec5c8813b685558d83e924f14bc719f6eb7ae0cbb2c474227c5bda88637a4f2" - "6c64817929af999592da6f787490332f", - "1023478840e54775bfc69293a3cf97f5bc914726455c66538eb5623e218feef7" - "df4befa23e09d77145ad577db32b41f9" }, - { NID_secp384r1, - "d882a8505c2d5cb9b8851fc676677bb0087681ad53faceba1738286b45827561" - "e7da37b880276c656cfc38b32ade847e", - "34b314bdc134575654573cffaf40445da2e6aaf987f7e913cd4c309152305898" - "4a25d8f21da8326192456c6a0fa5f60c", - "8f558e05818b88ed383d5fca962e53413db1a0e4637eda194f761944cbea114a" - "b9d5da175a7d57882550b0e432f395a9", - "9a2f57f4867ce753d72b0d95195df6f96c1fae934f602efd7b6a54582f556cfa" - "539d89005ca2edac08ad9b72dd1f60ba", - "d9b94ee82da9cc601f346044998ba387aee56404dc6ecc8ab2b590443319d0b2" - "b6176f9d0eac2d44678ed561607d09a9", - "6ad6b9dc8a6cf0d3691c501cbb967867f6e4bbb764b60dbff8fcff3ed42dbba3" - "9d63cf325b4b4078858495ddee75f954" }, - { NID_secp384r1, - "815c9d773dbf5fb6a1b86799966247f4006a23c92e68c55e9eaa998b17d8832d" - "d4d84d927d831d4f68dac67c6488219f", - "e79269948b2611484560fd490feec887cb55ef99a4b524880fa7499d6a07283a" - "ae2afa33feab97deca40bc606c4d8764", - "0f5dee0affa7bbf239d5dff32987ebb7cf84fcceed643e1d3c62d0b3352aec23" - "b6e5ac7fa4105c8cb26126ad2d1892cb", - "23346bdfbc9d7c7c736e02bdf607671ff6082fdd27334a8bc75f3b23681ebe61" - "4d0597dd614fae58677c835a9f0b273b", - "82ba36290d2f94db41479eb45ab4eaf67928a2315138d59eecc9b5285dfddd67" - "14f77557216ea44cc6fc119d8243efaf", - "cc9e063566d46b357b3fcae21827377331e5e290a36e60cd7c39102b828ae0b9" - "18dc5a02216b07fe6f1958d834e42437" }, - { NID_secp384r1, - "1c0eeda7a2be000c5bdcda0478aed4db733d2a9e341224379123ad847030f29e" - "3b168fa18e89a3c0fba2a6ce1c28fc3b", - "ec8c1c83c118c4dbea94271869f2d868eb65e8b44e21e6f14b0f4d9b38c068da" - "efa27114255b9a41d084cc4a1ad85456", - "037b633b5b8ba857c0fc85656868232e2febf59578718391b81da8541a00bfe5" - "3c30ae04151847f27499f8d7abad8cf4", - "8878ac8a947f7d5cb2b47aad24fbb8210d86126585399a2871f84aa9c5fde307" - "4ae540c6bf82275ca822d0feb862bc74", - "632f5cd2f900c2711c32f8930728eb647d31edd8d650f9654e7d33e5ed1b4754" - "89d08daa30d8cbcba6bfc3b60d9b5a37", - "deff7f03bd09865baf945e73edff6d5122c03fb561db87dec8662e09bed4340b" - "28a9efe118337bb7d3d4f7f568635ff9" }, - { NID_secp384r1, - "c95c185e256bf997f30b311548ae7f768a38dee43eeeef43083f3077be70e2bf" - "39ac1d4daf360c514c8c6be623443d1a", - "3e63a663eaf75d8a765ab2b9a35513d7933fa5e26420a5244550ec6c3b6f033b" - "96db2aca3d6ac6aab052ce929595aea5", - "e3d07106bedcc096e7d91630ffd3094df2c7859db8d7edbb2e37b4ac47f429a6" - "37d06a67d2fba33838764ef203464991", - "e74a1a2b85f1cbf8dbbdf050cf1aff8acb02fda2fb6591f9d3cfe4e79d0ae938" - "a9c1483e7b75f8db24505d65065cdb18", - "1773ee591822f7abaa856a1a60bc0a5203548dbd1cb5025466eff8481bd07614" - "eaa04a16c3db76905913e972a5b6b59d", - "c8b1038f735ad3bb3e4637c3e47eab487637911a6b7950a4e461948329d3923b" - "969e5db663675623611a457fcda35a71" }, - { NID_secp384r1, - "3497238a7e6ad166df2dac039aa4dac8d17aa925e7c7631eb3b56e3aaa1c545f" - "cd54d2e5985807910fb202b1fc191d2a", - "a49e5c487dcc7aa40a8f234c979446040d9174e3ad357d404d7765183195aed3" - "f913641b90c81a306ebf0d8913861316", - "f3f9b0c65a49a506632c8a45b10f66b5316f9eeb06fae218f2da62333f999051" - "17b141c760e8974efc4af10570635791", - "a4ad77aa7d86e5361118a6b921710c820721210712f4c347985fdee58aa4effa" - "1e28be80a17b120b139f96300f89b49b", - "1ddf22e07e03f1560d8f45a480094560dba9fae7f9531130c1b57ebb95982496" - "524f31d3797793396fa823f22bdb4328", - "d337eaa32b9f716b8747b005b97a553c59dab0c51df41a2d49039cdae705aa75" - "c7b9e7bc0b6a0e8c578c902bc4fff23e" }, - { NID_secp384r1, - "90a34737d45b1aa65f74e0bd0659bc118f8e4b774b761944ffa6573c6df4f41d" - "ec0d11b697abd934d390871d4b453240", - "9b590719bb3307c149a7817be355d684893a307764b512eeffe07cb699edb5a6" - "ffbf8d6032e6c79d5e93e94212c2aa4e", - "59fce7fad7de28bac0230690c95710c720e528f9a4e54d3a6a8cd5fc5c5f2163" - "7031ce1c5b4e3d39647d8dcb9b794664", - "9c43bf971edf09402876ee742095381f78b1bd3aa39b5132af75dbfe7e98bd78" - "bde10fe2e903c2b6379e1deee175a1b0", - "a6c58ecea5a477bb01bd543b339f1cc49f1371a2cda4d46eb4e53e2505979423" - "51a99665a122ffea9bde0636c375daf2", - "32d292b695a4488e42a7b7922e1ae537d76a3d21a0b2e36875f60e9f6d3e8779" - "c2afb3a413b9dd79ae18e70b47d337c1" }, - { NID_secp384r1, - "dda546acfc8f903d11e2e3920669636d44b2068aeb66ff07aa266f0030e1535b" - "0ed0203cb8a460ac990f1394faf22f1d", - "15bbb2597913035faadf413476f4c70f7279769a40c986f470c427b4ee4962ab" - "df8173bbad81874772925fd32f0b159f", - "3e49fbf950a424c5d80228dc4bc35e9f6c6c0c1d04440998da0a609a877575db" - "e437d6a5cedaa2ddd2a1a17fd112aded", - "5a949594228b1a3d6f599eb3db0d06070fbc551c657b58234ba164ce3fe415fa" - "5f3eb823c08dc29b8c341219c77b6b3d", - "2baad447c8c290cfed25edd9031c41d0b76921457327f42db31122b81f337bbf" - "0b1039ec830ce9061a3761953c75e4a8", - "1220e7e6cad7b25df98e5bbdcc6c0b65ca6c2a50c5ff6c41dca71e475646fd48" - "9615979ca92fb4389aeadefde79a24f1" }, - { NID_secp384r1, - "788be2336c52f4454d63ee944b1e49bfb619a08371048e6da92e584eae70bde1" - "f171c4df378bd1f3c0ab03048a237802", - "4673ebd8db604eaf41711748bab2968a23ca4476ce144e728247f08af7529291" - "57b5830f1e26067466bdfa8b65145a33", - "50ccc1f7076e92f4638e85f2db98e0b483e6e2204c92bdd440a6deea04e37a07" - "c6e72791c190ad4e4e86e01efba84269", - "756c07df0ce32c839dac9fb4733c9c28b70113a676a7057c38d223f22a3a9095" - "a8d564653af528e04c7e1824be4a6512", - "17c2ce6962cbd2a2e066297b39d57dd9bb4680f0191d390f70b4e461419b2972" - "ce68ad46127fdda6c39195774ea86df3", - "793bb9cd22a93cf468faf804a38d12b78cb12189ec679ddd2e9aa21fa9a5a0b0" - "49ab16a23574fe04c1c3c02343b91beb" }, - { NID_secp384r1, - "d09bb822eb99e38060954747c82bb3278cf96bbf36fece3400f4c873838a40c1" - "35eb3babb9293bd1001bf3ecdee7bf26", - "d416db6e1b87bbb7427788a3b6c7a7ab2c165b1e366f9608df512037584f213a" - "648d47f16ac326e19aae972f63fd76c9", - "06f132b71f74d87bf99857e1e4350a594e5fe35533b888552ceccbc0d8923c90" - "2e36141d7691e28631b8bc9bafe5e064", - "2a3cc6b8ff5cde926e7e3a189a1bd029c9b586351af8838f4f201cb8f4b70ef3" - "b0da06d352c80fc26baf8f42b784459e", - "bf9985960176da6d23c7452a2954ffcbbcb24249b43019a2a023e0b3dabd461f" - "19ad3e775c364f3f11ad49f3099400d3", - "012d191cf7404a523678c6fc075de8285b243720a903047708bb33e501e0dbee" - "5bcc40d7c3ef6c6da39ea24d830da1e8" }, - { NID_secp384r1, - "13741262ede5861dad71063dfd204b91ea1d3b7c631df68eb949969527d79a1d" - "c59295ef7d2bca6743e8cd77b04d1b58", - "0baaeadc7e19d74a8a04451a135f1be1b02fe299f9dc00bfdf201e83d995c695" - "0bcc1cb89d6f7b30bf54656b9a4da586", - "12048ebb4331ec19a1e23f1a2c773b664ccfe90a28bfb846fc12f81dff44b744" - "3c77647164bf1e9e67fd2c07a6766241", - "bc18836bc7a9fdf54b5352f37d7528ab8fa8ec544a8c6180511cbfdd49cce377" - "c39e34c031b5240dc9980503ed2f262c", - "8086cbe338191080f0b7a16c7afc4c7b0326f9ac66f58552ef4bb9d24de3429e" - "d5d3277ed58fcf48f2b5f61326bec6c6", - "ad0fd3ddffe8884b9263f3c15fe1f07f2a5a22ffdc7e967085eea45f0cd959f2" - "0f18f522763e28bcc925e496a52dda98" }, - { NID_secp384r1, - "9e22cbc18657f516a864b37b783348b66f1aa9626cd631f4fa1bd32ad88cf11d" - "b52057c660860d39d11fbf024fabd444", - "6b0d53c79681c28116df71e9cee74fd56c8b7f04b39f1198cc72284e98be9562" - "e35926fb4f48a9fbecafe729309e8b6f", - "34d61a699ca576169fcdc0cc7e44e4e1221db0fe63d16850c8104029f7d48449" - "714b9884328cae189978754ab460b486", - "867f81104ccd6b163a7902b670ef406042cb0cce7dcdc63d1dfc91b2c40e3cdf" - "7595834bf9eceb79849f1636fc8462fc", - "9d4bde8e875ec49697d258d1d59465f8431c6f5531e1c59e9f9ebe3cf164a8d9" - "ce10a12f1979283a959bad244dd83863", - "dc4ca392dc15e20185f2c6a8ea5ec31dfc96f56153a47394b3072b13d0015f5d" - "4ae13beb3bed54d65848f9b8383e6c95" }, - { NID_secp384r1, - "2db5da5f940eaa884f4db5ec2139b0469f38e4e6fbbcc52df15c0f7cf7fcb180" - "8c749764b6be85d2fdc5b16f58ad5dc0", - "22e8b02dcf33e1b5a083849545f84ad5e43f77cb71546dbbac0d11bdb2ee202e" - "9d3872e8d028c08990746c5e1dde9989", - "dc60fa8736d702135ff16aab992bb88eac397f5972456c72ec447374d0d8ce61" - "153831bfc86ad5a6eb5b60bfb96a862c", - "b69beede85d0f829fec1b893ccb9c3e052ff692e13b974537bc5b0f9feaf7b22" - "e84f03231629b24866bdb4b8cf908914", - "66f85e2bfcaba2843285b0e14ebc07ef7dafff8b424416fee647b59897b619f2" - "0eed95a632e6a4206bf7da429c04c560", - "d765b208112d2b9ed5ad10c4046e2e3b0dbf57c469329519e239ac28b25c7d85" - "2bf757d5de0ee271cadd021d86cfd347" }, - { NID_secp384r1, - "329647baa354224eb4414829c5368c82d7893b39804e08cbb2180f459befc4b3" - "47a389a70c91a23bd9d30c83be5295d3", - "cc8f61923fad2aa8e505d6cfa126b9fabd5af9dce290b75660ef06d1caa73681" - "d06089c33bc4246b3aa30dbcd2435b12", - "6fa6a1c704730987aa634b0516a826aba8c6d6411d3a4c89772d7a62610256a2" - "e2f289f5c3440b0ec1e70fa339e251ce", - "53de1fc1328e8de14aecab29ad8a40d6b13768f86f7d298433d20fec791f86f8" - "bc73f358098b256a298bb488de257bf4", - "ac28944fd27f17b82946c04c66c41f0053d3692f275da55cd8739a95bd8cd3af" - "2f96e4de959ea8344d8945375905858b", - "d3778850aeb58804fbe9dfe6f38b9fa8e20c2ca4e0dec335aafceca0333e3f24" - "90b53c0c1a14a831ba37c4b9d74be0f2" }, - { NID_secp384r1, - "29d8a36d22200a75b7aea1bb47cdfcb1b7fd66de967041434728ab5d533a060d" - "f732130600fe6f75852a871fb2938e39", - "e19b53db528395de897a45108967715eb8cb55c3fcbf23379372c0873a058d57" - "544b102ecce722b2ccabb1a603774fd5", - "74ad8386c1cb2ca0fcdeb31e0869bb3f48c036afe2ef110ca302bc8b910f621c" - "9fcc54cec32bb89ec7caa84c7b8e54a8", - "27a3e83cfb9d5122e73129d801615857da7cc089cccc9c54ab3032a19e0a0a9f" - "677346e37f08a0b3ed8da6e5dd691063", - "8d60e44aa5e0fd30c918456796af37f0e41957901645e5c596c6d989f5859b03" - "a0bd7d1f4e77936fff3c74d204e5388e", - "81e1e71575bb4505498de097350186430a6242fa6c57b85a5f984a23371123d2" - "d1424eefbf804258392bc723e4ef1e35" }, - { NID_secp521r1, - "000000685a48e86c79f0f0875f7bc18d25eb5fc8c0b07e5da4f4370f3a949034" - "0854334b1e1b87fa395464c60626124a4e70d0f785601d37c09870ebf1766668" - "77a2046d", - "000001ba52c56fc8776d9e8f5db4f0cc27636d0b741bbe05400697942e80b739" - "884a83bde99e0f6716939e632bc8986fa18dccd443a348b6c3e522497955a4f3" - "c302f676", - "0000017eecc07ab4b329068fba65e56a1f8890aa935e57134ae0ffcce8027351" - "51f4eac6564f6ee9974c5e6887a1fefee5743ae2241bfeb95d5ce31ddcb6f9ed" - "b4d6fc47", - "000000602f9d0cf9e526b29e22381c203c48a886c2b0673033366314f1ffbcba" - "240ba42f4ef38a76174635f91e6b4ed34275eb01c8467d05ca80315bf1a7bbd9" - "45f550a5", - "000001b7c85f26f5d4b2d7355cf6b02117659943762b6d1db5ab4f1dbc44ce7b" - "2946eb6c7de342962893fd387d1b73d7a8672d1f236961170b7eb3579953ee5c" - "dc88cd2d", - "005fc70477c3e63bc3954bd0df3ea0d1f41ee21746ed95fc5e1fdf90930d5e13" - "6672d72cc770742d1711c3c3a4c334a0ad9759436a4d3c5bf6e74b9578fac148" - "c831" }, - { NID_secp521r1, - "000001df277c152108349bc34d539ee0cf06b24f5d3500677b4445453ccc2140" - "9453aafb8a72a0be9ebe54d12270aa51b3ab7f316aa5e74a951c5e53f74cd95f" - "c29aee7a", - "0000013d52f33a9f3c14384d1587fa8abe7aed74bc33749ad9c570b471776422" - "c7d4505d9b0a96b3bfac041e4c6a6990ae7f700e5b4a6640229112deafa0cd8b" - "b0d089b0", - "000000816f19c1fb10ef94d4a1d81c156ec3d1de08b66761f03f06ee4bb9dceb" - "bbfe1eaa1ed49a6a990838d8ed318c14d74cc872f95d05d07ad50f621ceb620c" - "d905cfb8", - "000000d45615ed5d37fde699610a62cd43ba76bedd8f85ed31005fe00d6450fb" - "bd101291abd96d4945a8b57bc73b3fe9f4671105309ec9b6879d0551d930dac8" - "ba45d255", - "000001425332844e592b440c0027972ad1526431c06732df19cd46a242172d4d" - "d67c2c8c99dfc22e49949a56cf90c6473635ce82f25b33682fb19bc33bd910ed" - "8ce3a7fa", - "000b3920ac830ade812c8f96805da2236e002acbbf13596a9ab254d44d0e91b6" - "255ebf1229f366fb5a05c5884ef46032c26d42189273ca4efa4c3db6bd12a685" - "3759" }, - { NID_secp521r1, - "00000092db3142564d27a5f0006f819908fba1b85038a5bc2509906a497daac6" - "7fd7aee0fc2daba4e4334eeaef0e0019204b471cd88024f82115d8149cc0cf4f" - "7ce1a4d5", - "0000016bad0623f517b158d9881841d2571efbad63f85cbe2e581960c5d67060" - "1a6760272675a548996217e4ab2b8ebce31d71fca63fcc3c08e91c1d8edd91cf" - "6fe845f8", - "0000012f2e0c6d9e9d117ceb9723bced02eb3d4eebf5feeaf8ee0113ccd8057b" - "13ddd416e0b74280c2d0ba8ed291c443bc1b141caf8afb3a71f97f57c225c03e" - "1e4d42b0", - "000000717fcb3d4a40d103871ede044dc803db508aaa4ae74b70b9fb8d8dfd84" - "bfecfad17871879698c292d2fd5e17b4f9343636c531a4fac68a35a93665546b" - "9a878679", - "000000f3d96a8637036993ab5d244500fff9d2772112826f6436603d3eb234a4" - "4d5c4e5c577234679c4f9df725ee5b9118f23d8a58d0cc01096daf70e8dfec01" - "28bdc2e8", - "006b380a6e95679277cfee4e8353bf96ef2a1ebdd060749f2f046fe571053740" - "bbcc9a0b55790bc9ab56c3208aa05ddf746a10a3ad694daae00d980d944aabc6" - "a08f" }, - { NID_secp521r1, - "000000fdd40d9e9d974027cb3bae682162eac1328ad61bc4353c45bf5afe76bf" - "607d2894c8cce23695d920f2464fda4773d4693be4b3773584691bdb0329b7f4" - "c86cc299", - "00000034ceac6a3fef1c3e1c494bfe8d872b183832219a7e14da414d4e347457" - "3671ec19b033be831b915435905925b44947c592959945b4eb7c951c3b9c8cf5" - "2530ba23", - "000000e548a79d8b05f923b9825d11b656f222e8cb98b0f89de1d317184dc5a6" - "98f7c71161ee7dc11cd31f4f4f8ae3a981e1a3e78bdebb97d7c204b9261b4ef9" - "2e0918e0", - "0000000ce800217ed243dd10a79ad73df578aa8a3f9194af528cd1094bbfee27" - "a3b5481ad5862c8876c0c3f91294c0ab3aa806d9020cbaa2ed72b7fecdc5a09a" - "6dad6f32", - "000001543c9ab45b12469232918e21d5a351f9a4b9cbf9efb2afcc402fa9b316" - "50bec2d641a05c440d35331c0893d11fb13151335988b303341301a73dc5f61d" - "574e67d9", - "00fbbcd0b8d05331fef6086f22a6cce4d35724ab7a2f49dd8458d0bfd57a0b8b" - "70f246c17c4468c076874b0dff7a0336823b19e98bf1cec05e4beffb0591f977" - "13c6" }, - { NID_secp521r1, - "00000098d99dee0816550e84dbfced7e88137fddcf581a725a455021115fe49f" - "8dc3cf233cd9ea0e6f039dc7919da973cdceaca205da39e0bd98c8062536c47f" - "258f44b5", - "000000cd225c8797371be0c4297d2b457740100c774141d8f214c23b61aa2b6c" - "d4806b9b70722aa4965fb622f42b7391e27e5ec21c5679c5b06b59127372997d" - "421adc1e", - "000001c8aae94bb10b8ca4f7be577b4fb32bb2381032c4942c24fc2d753e7cc5" - "e47b483389d9f3b956d20ee9001b1eef9f23545f72c5602140046839e963313c" - "3decc864", - "00000106a14e2ee8ff970aa8ab0c79b97a33bba2958e070b75b94736b77bbe3f" - "777324fa52872771aa88a63a9e8490c3378df4dc760cd14d62be700779dd1a43" - "77943656", - "0000002366ce3941e0b284b1aa81215d0d3b9778fce23c8cd1e4ed6fa0abf621" - "56c91d4b3eb55999c3471bed275e9e60e5aa9d690d310bfb15c9c5bbd6f5e9eb" - "39682b74", - "0145cfa38f25943516c96a5fd4bfebb2f645d10520117aa51971eff442808a23" - "b4e23c187e639ff928c3725fbd1c0c2ad0d4aeb207bc1a6fb6cb6d467888dc04" - "4b3c" }, - { NID_secp521r1, - "0000007ae115adaaf041691ab6b7fb8c921f99d8ed32d283d67084e80b9ad9c4" - "0c56cd98389fb0a849d9ecf7268c297b6f93406119f40e32b5773ed25a28a9a8" - "5c4a7588", - "000001a28e004e37eeaefe1f4dbb71f1878696141af3a10a9691c4ed93487214" - "643b761fa4b0fbeeb247cf6d3fba7a60697536ad03f49b80a9d1cb0796736549" - "77c5fa94", - "0000009b0af137c9696c75b7e6df7b73156bb2d45f482e5a4217324f478b10ce" - "b76af09724cf86afa316e7f89918d31d54824a5c33107a483c15c15b96edc661" - "340b1c0e", - "000000748cdbb875d35f4bccb62abe20e82d32e4c14dc2feb5b87da2d0ccb11c" - "9b6d4b7737b6c46f0dfb4d896e2db92fcf53cdbbae2a404c0babd564ad7adeac" - "6273efa3", - "000001984acab8d8f173323de0bb60274b228871609373bb22a17287e9dec749" - "5873abc09a8915b54c8455c8e02f654f602e23a2bbd7a9ebb74f3009bd65ecc6" - "50814cc0", - "005c5721e96c273319fd60ecc46b5962f698e974b429f28fe6962f4ac656be2e" - "b8674c4aafc037eab48ece612953b1e8d861016b6ad0c79805784c67f73ada96" - "f351" }, - { NID_secp521r1, - "0000012588115e6f7f7bdcfdf57f03b169b479758baafdaf569d04135987b2ce" - "6164c02a57685eb5276b5dae6295d3fe90620f38b5535c6d2260c173e61eb888" - "ca920203", - "000001542c169cf97c2596fe2ddd848a222e367c5f7e6267ebc1bcd9ab5dcf49" - "158f1a48e4af29a897b7e6a82091c2db874d8e7abf0f58064691344154f396db" - "aed188b6", - "000001e48faacee6dec83ffcde944cf6bdf4ce4bae72747888ebafee455b1e91" - "584971efb49127976a52f4142952f7c207ec0265f2b718cf3ead96ea4f62c752" - "e4f7acd3", - "0000010eb1b4d9172bcc23f4f20cc9560fc54928c3f34ea61c00391dc766c76e" - "d9fa608449377d1e4fadd1236025417330b4b91086704ace3e4e6484c606e2a9" - "43478c86", - "00000149413864069825ee1d0828da9f4a97713005e9bd1adbc3b38c5b946900" - "721a960fe96ad2c1b3a44fe3de9156136d44cb17cbc2415729bb782e16bfe2de" - "b3069e43", - "01736d9717429b4f412e903febe2f9e0fffd81355d6ce2c06ff3f66a3be15cee" - "c6e65e308347593f00d7f33591da4043c30763d72749f72cdceebe825e4b34ec" - "d570" }, - { NID_secp521r1, - "00000169491d55bd09049fdf4c2a53a660480fee4c03a0538675d1cd09b5bba7" - "8dac48543ef118a1173b3fbf8b20e39ce0e6b890a163c50f9645b3d21d1cbb3b" - "60a6fff4", - "00000083494b2eba76910fed33c761804515011fab50e3b377abd8a8a045d886" - "d2238d2c268ac1b6ec88bd71b7ba78e2c33c152e4bf7da5d565e4acbecf5e92c" - "7ad662bb", - "000000c29aa223ea8d64b4a1eda27f39d3bc98ea0148dd98c1cbe595f8fd2bfb" - "de119c9e017a50f5d1fc121c08c1cef31b758859556eb3e0e042d8dd6aaac57a" - "05ca61e3", - "0000001511c848ef60d5419a98d10204db0fe58224124370061bcfa4e9249d50" - "618c56bf3722471b259f38263bb7b280d23caf2a1ee8737f9371cdb2732cdc95" - "8369930c", - "000001d461681ae6d8c49b4c5f4d6016143fb1bd7491573e3ed0e6c48b82e821" - "644f87f82f0e5f08fd16f1f98fa17586200ab02ed8c627b35c3f27617ec5fd92" - "f456203f", - "018f2ae9476c771726a77780208dedfefa205488996b18fecc50bfd4c132753f" - "5766b2cd744afa9918606de2e016effc63622e9029e76dc6e3f0c69f7aeced56" - "5c2c" }, - { NID_secp521r1, - "0000008415f5bbd0eee387d6c09d0ef8acaf29c66db45d6ba101860ae45d3c60" - "e1e0e3f7247a4626a60fdd404965c3566c79f6449e856ce0bf94619f97da8da2" - "4bd2cfb6", - "000000fdd7c59c58c361bc50a7a5d0d36f723b17c4f2ad2b03c24d42dc50f74a" - "8c465a0afc4683f10fab84652dfe9e928c2626b5456453e1573ff60be1507467" - "d431fbb2", - "00000028692be2bf5c4b48939846fb3d5bce74654bb2646e15f8389e23708a1a" - "fadf561511ea0d9957d0b53453819d60fba8f65a18f7b29df021b1bb01cd1632" - "93acc3cc", - "000001cfdc10c799f5c79cb6930a65fba351748e07567993e5e410ef4cacc4cd" - "8a25784991eb4674e41050f930c7190ac812b9245f48a7973b658daf408822fe" - "5b85f668", - "00000180d9ddfc9af77b9c4a6f02a834db15e535e0b3845b2cce30388301b51c" - "ecbe3276307ef439b5c9e6a72dc2d94d879bc395052dbb4a5787d06efb280210" - "fb8be037", - "0105a346988b92ed8c7a25ce4d79d21bc86cfcc7f99c6cd19dbb4a39f48ab943" - "b79e4f0647348da0b80bd864b85c6b8d92536d6aa544dc7537a00c858f8b6631" - "9e25" }, - { NID_secp521r1, - "000001c721eea805a5cba29f34ba5758775be0cf6160e6c08723f5ab17bf96a1" - "ff2bd9427961a4f34b07fc0b14ca4b2bf6845debd5a869f124ebfa7aa72fe565" - "050b7f18", - "000000b6e89eb0e1dcf181236f7c548fd1a8c16b258b52c1a9bfd3fe8f22841b" - "26763265f074c4ccf2d634ae97b701956f67a11006c52d97197d92f585f5748b" - "c2672eeb", - "000001194d1ee613f5366cbc44b504d21a0cf6715e209cd358f2dd5f3e71cc0d" - "67d0e964168c42a084ebda746f9863a86bacffc819f1edf1b8c727ccfb304724" - "0a57c435", - "0000016bd15c8a58d366f7f2b2f298cc87b7485e9ee70d11d12448b8377c0a82" - "c7626f67aff7f97be7a3546bf417eeeddf75a93c130191c84108042ea2fca17f" - "d3f80d14", - "000001560502d04b74fce1743aab477a9d1eac93e5226981fdb97a7478ce4ce5" - "66ff7243931284fad850b0c2bcae0ddd2d97790160c1a2e77c3ed6c95ecc44b8" - "9e2637fc", - "004531b3d2c6cd12f21604c8610e6723dbf4daf80b5a459d6ba5814397d1c1f7" - "a21d7c114be964e27376aaebe3a7bc3d6af7a7f8c7befb611afe487ff032921f" - "750f" }, - { NID_secp521r1, - "000001c35823e440a9363ab98d9fc7a7bc0c0532dc7977a79165599bf1a9cc64" - "c00fb387b42cca365286e8430360bfad3643bc31354eda50dc936c329ecdb609" - "05c40fcb", - "000000d9e7f433531e44df4f6d514201cbaabb06badd6783e01111726d815531" - "d233c5cdb722893ffbb2027259d594de77438809738120c6f783934f926c3fb6" - "9b40c409", - "000001fd90e3e416e98aa3f2b6afa7f3bf368e451ad9ca5bd54b5b14aee2ed67" - "23dde5181f5085b68169b09fbec721372ccf6b284713f9a6356b8d560a8ff78c" - "a3737c88", - "000001ebea1b10d3e3b971b7efb69fc878de11c7f472e4e4d384c31b8d6288d8" - "071517acade9b39796c7af5163bcf71aeda777533f382c6cf0a4d9bbb938c85f" - "44b78037", - "0000016b0e3e19c2996b2cbd1ff64730e7ca90edca1984f9b2951333535e5748" - "baa34a99f61ff4d5f812079e0f01e87789f34efdad8098015ee74a4f846dd190" - "d16dc6e1", - "0100c8935969077bae0ba89ef0df8161d975ec5870ac811ae7e65ca5394efba4" - "f0633d41bf79ea5e5b9496bbd7aae000b0594baa82ef8f244e6984ae87ae1ed1" - "24b7" }, - { NID_secp521r1, - "000000093057fb862f2ad2e82e581baeb3324e7b32946f2ba845a9beeed87d69" - "95f54918ec6619b9931955d5a89d4d74adf1046bb362192f2ef6bd3e3d2d04dd" - "1f87054a", - "000000aa3fb2448335f694e3cda4ae0cc71b1b2f2a206fa802d7262f19983c44" - "674fe15327acaac1fa40424c395a6556cb8167312527fae5865ecffc14bbdc17" - "da78cdcf", - "0000009012ecfdadc85ced630afea534cdc8e9d1ab8be5f3753dcf5f2b09b40e" - "da66fc6858549bc36e6f8df55998cfa9a0703aecf6c42799c245011064f530c0" - "9db98369", - "000000234e32be0a907131d2d128a6477e0caceb86f02479745e0fe245cb332d" - "e631c078871160482eeef584e274df7fa412cea3e1e91f71ecba8781d9205d48" - "386341ad", - "000001cf86455b09b1c005cffba8d76289a3759628c874beea462f51f30bd581" - "e3803134307dedbb771b3334ee15be2e242cd79c3407d2f58935456c6941dd9b" - "6d155a46", - "017f36af19303841d13a389d95ec0b801c7f9a679a823146c75c17bc44256e9a" - "d422a4f8b31f14647b2c7d317b933f7c2946c4b8abd1d56d620fab1b5ff1a3ad" - "c71f" }, - { NID_secp521r1, - "00000083192ed0b1cb31f75817794937f66ad91cf74552cd510cedb9fd641310" - "422af5d09f221cad249ee814d16dd7ac84ded9eacdc28340fcfc9c0c06abe30a" - "2fc28cd8", - "0000002212ed868c9ba0fb2c91e2c39ba93996a3e4ebf45f2852d0928c48930e" - "875cc7b428d0e7f3f4d503e5d60c68cb49b13c2480cd486bed9200caddaddfe4" - "ff8e3562", - "000001b5ff847f8eff20b88cfad42c06e58c3742f2f8f1fdfd64b539ba48c259" - "26926bd5e332b45649c0b184f77255e9d58fe8afa1a6d968e2cb1d4637777120" - "c765c128", - "000001de3dc9263bc8c4969dc684be0eec54befd9a9f3dba194d8658a789341b" - "f0d78d84da6735227cafaf09351951691197573c8c360a11e5285712b8bbdf5a" - "c91b977c", - "000000812de58cd095ec2e5a9b247eb3ed41d8bef6aeace194a7a05b65aa5d28" - "9fbc9b1770ec84bb6be0c2c64cc37c1d54a7f5d71377a9adbe20f26f6f2b544a" - "821ea831", - "00062f9fc29ae1a68b2ee0dcf956cbd38c88ae5f645eaa546b00ebe87a7260bf" - "724be20d34b9d02076655c933d056b21e304c24ddb1dedf1dd76de611fc4a234" - "0336" }, - { NID_secp521r1, - "000001a89b636a93e5d2ba6c2292bf23033a84f06a3ac1220ea71e806afbe097" - "a804cc67e9baa514cfb6c12c9194be30212bf7aae7fdf6d376c212f0554e6564" - "63ffab7e", - "00000182efcaf70fc412d336602e014da47256a0b606f2addcce8053bf817ac8" - "656bb4e42f14c8cbf2a68f488ab35dcdf64056271dee1f606a440ba4bd4e5a11" - "b8b8e54f", - "0000011a6347d4e801c91923488354cc533e7e35fddf81ff0fb7f56bb0726e0c" - "29ee5dcdc5f394ba54cf57269048aab6e055895c8da24b8b0639a742314390cc" - "04190ed6", - "000000fe30267f33ba5cdefc25cbb3c9320dad9ccb1d7d376644620ca4fadee5" - "626a3cede25ad254624def727a7048f7145f76162aa98042f9b123b2076f8e8c" - "f59b3fdf", - "0000001145dc6631953b6e2945e94301d6cbb098fe4b04f7ee9b09411df104dc" - "82d7d79ec46a01ed0f2d3e7db6eb680694bdeb107c1078aec6cabd9ebee3d342" - "fe7e54df", - "0128ab09bfec5406799e610f772ba17e892249fa8e0e7b18a04b9197034b250b" - "48294f1867fb9641518f92766066a07a8b917b0e76879e1011e51ccbd9f540c5" - "4d4f" }, - { NID_secp521r1, - "0000017200b3f16a68cbaed2bf78ba8cddfb6cffac262bba00fbc25f9dc72a07" - "ce59372904899f364c44cb264c097b647d4412bee3e519892d534d9129f8a28f" - "7500fee7", - "000000baba8d672a4f4a3b63de48b96f56e18df5d68f7d70d5109833f43770d6" - "732e06b39ad60d93e5b43db8789f1ec0aba47286a39ea584235acea757dbf13d" - "53b58364", - "00000022b6d2a22d71dfaa811d2d9f9f31fbed27f2e1f3d239538ddf3e4cc8c3" - "9a330266db25b7bc0a9704f17bde7f3592bf5f1f2d4b56013aacc3d8d1bc02f0" - "0d3146cc", - "000000ba38cfbf9fd2518a3f61d43549e7a6a6d28b2be57ffd3e0faceb636b34" - "ed17e044a9f249dae8fc132e937e2d9349cd2ed77bb1049ceb692a2ec5b17ad6" - "1502a64c", - "0000001ec91d3058573fa6c0564a02a1a010160c313bc7c73510dc983e546168" - "2b5be00dbce7e2c682ad73f29ca822cdc111f68fabe33a7b384a648342c3cdb9" - "f050bcdb", - "0101e462e9d9159968f6440e956f11dcf2227ae4aea81667122b6af9239a291e" - "b5d6cf5a4087f358525fcacfa46bb2db01a75af1ba519b2d31da33eda87a9d56" - "5748" }, - { NID_secp521r1, - "0000004efd5dbd2f979e3831ce98f82355d6ca14a5757842875882990ab85ab9" - "b7352dd6b9b2f4ea9a1e95c3880d65d1f3602f9ca653dc346fac858658d75626" - "f4d4fb08", - "00000061cf15dbdaa7f31589c98400373da284506d70c89f074ed262a9e28140" - "796b7236c2eef99016085e71552ff488c72b7339fefb7915c38459cb20ab85ae" - "c4e45052", - "0000005bacfff268acf6553c3c583b464ea36a1d35e2b257a5d49eb3419d5a09" - "5087c2fb4d15cf5bf5af816d0f3ff7586490ccd3ddc1a98b39ce63749c6288ce" - "0dbdac7d", - "00000036e488da7581472a9d8e628c58d6ad727311b7e6a3f6ae33a8544f34b0" - "9280249020be7196916fafd90e2ec54b66b5468d2361b99b56fa00d7ac37abb8" - "c6f16653", - "0000011edb9fb8adb6a43f4f5f5fdc1421c9fe04fc8ba46c9b66334e3af927c8" - "befb4307104f299acec4e30f812d9345c9720d19869dbfffd4ca3e7d2713eb5f" - "c3f42615", - "0141d6a4b719ab67eaf04a92c0a41e2dda78f4354fb90bdc35202cc7699b9b04" - "d49616f82255debf7bbec045ae58f982a66905fcfae69d689785e38c868eb4a2" - "7e7b" }, - { NID_secp521r1, - "00000129891de0cf3cf82e8c2cf1bf90bb296fe00ab08ca45bb7892e0e227a50" - "4fdd05d2381a4448b68adff9c4153c87eacb78330d8bd52515f9f9a0b58e85f4" - "46bb4e10", - "0000009edd679696d3d1d0ef327f200383253f6413683d9e4fcc87bb35f112c2" - "f110098d15e5701d7ceee416291ff5fed85e687f727388b9afe26a4f6feed560" - "b218e6bb", - "0000008e2c93c5423876223a637cad367c8589da69a2d0fc68612f31923ae502" - "19df2452e7cc92615b67f17b57ffd2f52b19154bb40d7715336420fde2e89fee" - "244f59dc", - "000000fa3b35118d6c422570f724a26f90b2833b19239174cea081c53133f64d" - "b60d6940ea1261299c04c1f4587cdb0c4c39616479c1bb0c146799a118032dcf" - "98f899c0", - "00000069f040229006151fa32b51f679c8816f7c17506b403809dc77cd58a2ae" - "c430d94d13b6c916de99f355aa45fcfbc6853d686c71be496a067d24bfaea481" - "8fc51f75", - "00345e26e0abb1aac12b75f3a9cf41efe1c336396dffa4a067a4c2cfeb878c68" - "b2b045faa4e5b4e6fa4678f5b603c351903b14bf9a6a70c439257199a640890b" - "61d1" }, - { NID_secp521r1, - "000001a3c20240e59f5b7a3e17c275d2314ba1741210ad58b71036f8c83cc1f6" - "b0f409dfdd9113e94b67ec39c3291426c23ffcc447054670d2908ff8fe67dc23" - "06034c5c", - "000001d2825bfd3af8b1e13205780c137fe938f84fde40188e61ea02cead81ba" - "dfdb425c29f7d7fb0324debadc10bbb93de68f62c35069268283f5265865db57" - "a79f7bf7", - "00000004d49d39d40d8111bf16d28c5936554326b197353eebbcf47545393bc8" - "d3aaf98f14f5be7074bfb38e6cc97b989754074daddb3045f4e4ce745669fdb3" - "ec0d5fa8", - "0000012ec226d050ce07c79b3df4d0f0891f9f7adf462e8c98dbc1a2a14f5e53" - "a3f5ad894433587cc429a8be9ea1d84fa33b1803690dae04da7218d30026157f" - "c995cf52", - "0000004837dfbf3426f57b5c793269130abb9a38f618532211931154db4eeb9a" - "ede88e57290f842ea0f2ea9a5f74c6203a3920fe4e305f6118f676b154e1d75b" - "9cb5eb88", - "006fe9de6fb8e672e7fd150fdc5e617fabb0d43906354ccfd224757c7276f7a1" - "010091b17ed072074f8d10a5ec971eb35a5cb7076603b7bc38d432cbc059f80f" - "9488" }, - { NID_secp521r1, - "0000007e2d138f2832e345ae8ff65957e40e5ec7163f016bdf6d24a2243daa63" - "1d878a4a16783990c722382130f9e51f0c1bd6ff5ac96780e48b68f5dec95f42" - "e6144bb5", - "000000b0de5c896791f52886b0f09913e26e78dd0b69798fc4df6d95e3ca708e" - "cbcbcce1c1895f5561bbabaae372e9e67e6e1a3be60e19b470cdf673ec1fc393" - "d3426e20", - "0000011a5d1cc79cd2bf73ea106f0e60a5ace220813b53e27b739864334a07c0" - "3367efda7a4619fa6eef3a9746492283b3c445610a023a9cc49bf4591140384f" - "ca5c8bb5", - "000000eb07c7332eedb7d3036059d35f7d2288d4377d5f42337ad3964079fb12" - "0ccd4c8bd384b585621055217023acd9a94fcb3b965bfb394675e788ade41a1d" - "e73e620c", - "000000491a835de2e6e7deb7e090f4a11f2c460c0b1f3d5e94ee8d751014dc72" - "0784fd3b54500c86ebaef18429f09e8e876d5d1538968a030d7715dde99f0d8f" - "06e29d59", - "01e4e759ecedce1013baf73e6fcc0b92451d03bdd50489b78871c333114990c9" - "ba6a9b2fc7b1a2d9a1794c1b60d9279af6f146f0bbfb0683140403bfa4ccdb52" - "4a29" }, - { NID_secp521r1, - "000000118c36022209b1af8ebad1a12b566fc48744576e1199fe80de1cdf851c" - "df03e5b9091a8f7e079e83b7f827259b691d0c22ee29d6bdf73ec7bbfd746f2c" - "d97a357d", - "000000da5ff4904548a342e2e7ba6a1f4ee5f840411a96cf63e6fe622f22c13e" - "614e0a847c11a1ab3f1d12cc850c32e095614ca8f7e2721477b486e9ff403729" - "77c3f65c", - "0000010c908caf1be74c616b625fc8c1f514446a6aec83b5937141d6afbb0a8c" - "7666a7746fa1f7a6664a2123e8cdf6cd8bf836c56d3c0ebdcc980e43a186f938" - "f3a78ae7", - "00000031890f4c7abec3f723362285d77d2636f876817db3bbc88b01e773597b" - "969ff6f013ea470c854ab4a7739004eb8cbea69b82ddf36acadd406871798ecb" - "2ac3aa7f", - "000000d8b429ae3250266b9643c0c765a60dc10155bc2531cf8627296f4978b6" - "640a9e600e19d0037d58503fa80799546a814d7478a550aa90e5ebeb052527fa" - "aeae5d08", - "0163c9191d651039a5fe985a0eea1eba018a40ab1937fcd2b61220820ee8f230" - "2e9799f6edfc3f5174f369d672d377ea8954a8d0c8b851e81a56fda95212a657" - "8f0e" }, - { NID_secp521r1, - "000001780edff1ca1c03cfbe593edc6c049bcb2860294a92c355489d9afb2e70" - "2075ade1c953895a456230a0cde905de4a3f38573dbfcccd67ad6e7e93f0b558" - "1e926a5d", - "000000a5481962c9162962e7f0ebdec936935d0eaa813e8226d40d7f6119bfd9" - "40602380c86721e61db1830f51e139f210000bcec0d8edd39e54d73a9a129f95" - "cd5fa979", - "000001b37d6b7288de671360425d3e5ac1ccb21815079d8d73431e9b74a6f0e7" - "ae004a357575b11ad66642ce8b775593eba9d98bf25c75ef0b4d3a2098bbc641" - "f59a2b77", - "000000189a5ee34de7e35aefeaeef9220c18071b4c29a4c3bd9d954458bd3e82" - "a7a34da34cff5579b8101c065b1f2f527cf4581501e28ef5671873e65267733d" - "003520af", - "000001eb4bc50a7b4d4599d7e3fa773ddb9eb252c9b3422872e544bdf75c7bf6" - "0f5166ddc11eb08fa7c30822dabaee373ab468eb2d922e484e2a527fff2ebb80" - "4b7d9a37", - "015d613e267a36342e0d125cdad643d80d97ed0600afb9e6b9545c9e64a98cc6" - "da7c5aaa3a8da0bdd9dd3b97e9788218a80abafc106ef065c8f1c4e1119ef58d" - "298b" }, - { NID_secp521r1, - "0000016dacffa183e5303083a334f765de724ec5ec9402026d4797884a9828a0" - "d321a8cfac74ab737fe20a7d6befcfc73b6a35c1c7b01d373e31abc192d48a42" - "41a35803", - "0000011e5327cac22d305e7156e559176e19bee7e4f2f59e86f1a9d0b6603b6a" - "7df1069bde6387feb71587b8ffce5b266e1bae86de29378a34e5c74b6724c4d4" - "0a719923", - "000000f2661ac762f60c5fff23be5d969ccd4ec6f98e4e72618d12bdcdb9b410" - "2162333788c0bae59f91cdfc172c7a1681ee44d96ab2135a6e5f3415ebbcd551" - "65b1afb0", - "000000a8e25a6902d687b4787cdc94c364ac7cecc5c495483ed363dc0aa95ee2" - "bd739c4c4d46b17006c728b076350d7d7e54c6822f52f47162a25109aaaba690" - "cab696ec", - "00000168d2f08fe19e4dc9ee7a195b03c9f7fe6676f9f520b6270557504e72ca" - "4394a2c6918625e15ac0c51b8f95cd560123653fb8e8ee6db961e2c4c62cc54e" - "92e2a2a9", - "014d6082a3b5ced1ab8ca265a8106f302146c4acb8c30bb14a4c991e3c82a973" - "1288bdb91e0e85bda313912d06384fc44f2153fb13506fa9cf43c9aab5750988" - "c943" }, - { NID_secp521r1, - "000000a091421d3703e3b341e9f1e7d58f8cf7bdbd1798d001967b801d1cec27" - "e605c580b2387c1cb464f55ce7ac80334102ab03cfb86d88af76c9f4129c01be" - "dd3bbfc4", - "0000008c9c577a8e6fc446815e9d40baa66025f15dae285f19eb668ee60ae9c9" - "8e7ecdbf2b2a68e22928059f67db188007161d3ecf397e0883f0c4eb7eaf7827" - "a62205cc", - "000000f430ca1261f09681a9282e9e970a9234227b1d5e58d558c3cc6eff44d1" - "bdf53de16ad5ee2b18b92d62fc79586116b0efc15f79340fb7eaf5ce6c44341d" - "cf8dde27", - "0000006c1d9b5eca87de1fb871a0a32f807c725adccde9b3967453a71347d608" - "f0c030cd09e338cdecbf4a02015bc8a6e8d3e2595fe773ffc2fc4e4a55d0b1a2" - "cc00323b", - "000001141b2109e7f4981c952aa818a2b9f6f5c41feccdb7a7a45b9b4b672937" - "771b008cae5f934dfe3fed10d383ab1f38769c92ce88d9be5414817ecb073a31" - "ab368ccb", - "0020c00747cb8d492fd497e0fec54644bf027d418ab686381f109712a99cabe3" - "28b9743d2225836f9ad66e5d7fed1de247e0da92f60d5b31f9e47672e57f7105" - "98f4" }, - { NID_secp521r1, - "0000004f38816681771289ce0cb83a5e29a1ab06fc91f786994b23708ff08a08" - "a0f675b809ae99e9f9967eb1a49f196057d69e50d6dedb4dd2d9a81c02bdcc8f" - "7f518460", - "0000009efb244c8b91087de1eed766500f0e81530752d469256ef79f6b965d8a" - "2232a0c2dbc4e8e1d09214bab38485be6e357c4200d073b52f04e4a16fc6f524" - "7187aecb", - "0000005dc33aeda03c2eb233014ee468dff753b72f73b00991043ea353828ae6" - "9d4cd0fadeda7bb278b535d7c57406ff2e6e473a5a4ff98e90f90d6dadd25100" - "e8d85666", - "000000c825ba307373cec8dd2498eef82e21fd9862168dbfeb83593980ca9f82" - "875333899fe94f137daf1c4189eb502937c3a367ea7951ed8b0f3377fcdf2922" - "021d46a5", - "0000016b8a2540d5e65493888bc337249e67c0a68774f3e8d81e3b4574a01251" - "65f0bd58b8af9de74b35832539f95c3cd9f1b759408560aa6851ae3ac7555347" - "b0d3b13b", - "00c2bfafcd7fbd3e2fd1c750fdea61e70bd4787a7e68468c574ee99ebc47eede" - "f064e8944a73bcb7913dbab5d93dca660d216c553622362794f7a2acc71022bd" - "b16f" }, - { NID_secp521r1, - "000001a32099b02c0bd85371f60b0dd20890e6c7af048c8179890fda308b359d" - "bbc2b7a832bb8c6526c4af99a7ea3f0b3cb96ae1eb7684132795c478ad6f962e" - "4a6f446d", - "0000017627357b39e9d7632a1370b3e93c1afb5c851b910eb4ead0c9d387df67" - "cde85003e0e427552f1cd09059aad0262e235cce5fba8cedc4fdc1463da76dcd" - "4b6d1a46", - "000000df14b1f1432a7b0fb053965fd8643afee26b2451ecb6a8a53a655d5fbe" - "16e4c64ce8647225eb11e7fdcb23627471dffc5c2523bd2ae89957cba3a57a23" - "933e5a78", - "0000004e8583bbbb2ecd93f0714c332dff5ab3bc6396e62f3c560229664329ba" - "a5138c3bb1c36428abd4e23d17fcb7a2cfcc224b2e734c8941f6f121722d7b6b" - "94154576", - "000001cf0874f204b0363f020864672fadbf87c8811eb147758b254b74b14fae" - "742159f0f671a018212bbf25b8519e126d4cad778cfff50d288fd39ceb0cac63" - "5b175ec0", - "01aaf24e5d47e4080c18c55ea35581cd8da30f1a079565045d2008d51b12d0ab" - "b4411cda7a0785b15d149ed301a3697062f42da237aa7f07e0af3fd00eb1800d" - "9c41" } -#ifndef OPENSSL_NO_EC2M - /* curves over binary fields go here */ - , { NID_sect163k1, - "0000000574236f1428c432130946783a5b3aabb6c27ea5d6", - "00000007908c251b8da021cbac281f123f7af4fac5b3dbb8", - "6653b6077398fadc7bf5e60158170148c3dc4527", - "000000071f8b2877d6027d9c1ade4244f2dea12692ef23d5", - "00000005c15ee776221c72b84b347ce383f38067b89c3e9a", - "04325bff38f1b0c83c27f554a6c972a80f14bc23bc" }, - { NID_sect163k1, - "00000001699744092fe2b5fe7ecbf6987b7aea0a06fd2cb0", - "000000035de441df9408d91f0e021df8f0526b8063031495", - "00000003aef44754d0ca97d42b4e97aa92156263c0e078f6", - "00000001b0108c786bf4d340f0505bdfc7d45b514611ad94", - "000000022c9c39d5fb9456b8a2221cea4f058f6a8d2cd84a", - "05f9ac3a3dd88429600958386c55bef4b1aa5f0c24" }, - { NID_sect163k1, - "00000002965db159171f5cb7e7a1bcc61611aeaca8c52c9b", - "00000006871d1e9c1fe845268076a995803a6d49cd075554", - "000000031172342e6d37cc1e062a4494c39cba48f9ad9a8c", - "00000003a27ecaec2b66feac2040f6890128bd0058d31924", - "000000014007e3209b6d7127b0f393e5e58b1590b9f40be2", - "022e0290eda5d348894129f7455d1c766d32d5c2c2" }, - { NID_sect163k1, - "000000055b68c0c2c246fe0f2cd5484b58814c65213ea541", - "0000000539c11d2592a2f6393b6e86c54df909b95fe0d5a8", - "000000032a511cdcd4bfc567ceac8c24ed04e8894df78ddf", - "00000006978dacaa47d8f3bc90b41ec7f4f8ac79a86ddd07", - "00000007f8b0ef4270760376bc2d5faed83da7872631d09f", - "037f659f430009fcdae4e9f6e6316b0f5dbb268212" }, - { NID_sect163k1, - "00000006b8ef5a62d3b636a5a76bfeb1ef8ff4d8b3d9e2fc", - "0000000675a757266718398d8af66d2971798478e2f37d28", - "00000002c6f64fe609eb8eeb5b53fab6308898e63ff2e3f6", - "0000000549e1a82ec284bf77d528627e52d832e236c92ad3", - "000000019883aa9b458b35bd544d6882812150c1497d31d4", - "00503bbb9b62f50ae7a8dfd74a1741826f09290651" }, - { NID_sect163k1, - "000000056c4a3586acb03099d52b2cd4ac59269cf51b8730", - "00000002426561cbd9da1b23a6003de0e5f7c4a065a5c2b8", - "000000026a56867513ddd8ca94d7923baa1f7fb00daa38fa", - "00000006c28a40dc4e5503d2c4b8ab0b6b7046e8e25ac09f", - "0000000121911654a5836005d8036d976585ff1d831e587b", - "012cf17799fdefa2940b18d56e80d44414c5b13884" }, - { NID_sect163k1, - "0000000741c69a4edb386c94f819d1b5ddd0281e4ff29765", - "00000000d32f972abac91be85a709eba07f5d16215ae602d", - "0000000386811079c8021c2d79f4de952cb2e599c42e19ed", - "000000060aa42a62e21eea37e362b4d3de837f0c49d3ac13", - "000000069b20d6fd16d13b1883df05629ac7d1b82386b344", - "062a2f926ab435ac14e05d44c27b46b6820b713aee" }, - { NID_sect163k1, - "00000001ef47795fb0e380405ab5e88defc3ced9a92514a6", - "00000000be6181d7fc03ca8bfdf11869cea28cfa0e5f5f64", - "e46e9c965268647f2048474c7b1a54dffe728f1f", - "00000007a984ead440310cef2e1338972ff2dddb65cac3d2", - "0000000333c1a93427fe6ac502760b7778898a8bb6a40ad9", - "0399b9294e895486bdefbaad7a729353ce09586357" }, - { NID_sect163k1, - "0000000374d7f9ba8cda8a68de7279d3ff8674032fd47c02", - "00000003ede995c3a4e8a6fe21cd1e4cd4ca3812c0d692a5", - "000000027334971405b0461c3ede67f2ba336734451a8378", - "0000000767c31ee9303b1b2cd3059f81507ef304ebd3102c", - "0000000251e0d430dc3f63f3a37bab1e7a957652cf67e22c", - "022325a9a769a902c2e64c80a1d35429ced42ae0a4" }, - { NID_sect163k1, - "00000006577df54e11c7e76202f94f564e6137b23ce6e441", - "000000068936600aadcb25fd4024ed3e845b2bbf807280e6", - "000000019bb480739011235c6d5c6e74d6a7bb4f20f61b7a", - "0000000093549075704d79dae772317dd65244fa772569eb", - "00000002a8a2821dd39d7e7653ca71cfc1a9ed857801a39b", - "051392d5377016358405030b48744003db66440a2d" }, - { NID_sect163k1, - "0000000261d15345ceb492229a8d74597e7dfd19aeb6848a", - "0000000114a122ce28ca15620f7b40a1f26b4234c956bdc1", - "f4edb58bcc3d6e9d317229420a733281eccff1cf", - "000000027183609b7593b1845365c081d45ff66c9ab5e370", - "000000069b981236fe930947b6b77f374282a18e4be993cb", - "045dac076e79de2fc631315465d3ef6245f26647e5" }, - { NID_sect163k1, - "000000070e380f49370a0027954a4ea880bc1929b28c5329", - "000000046fe3b454af9420a811f1e15f774da5ae1a40b459", - "00000001b990491a12fdee231aa2a116e1e3c1c91d0fd478", - "00000003da869d09c4e4545ac1689fc72316012632d0abd9", - "00000002c820f40310e5ffd2f8bf439fba879bb2ef621b2a", - "014f7a46847ed6a7ff605b0e52c616e4ad3f0d5029" }, - { NID_sect163k1, - "00000006e60af77419b9fe0fc5c79ca1a22a1011402405b6", - "000000069bca34005b578cd7a7a6929bd3f6ce29943b5ed9", - "e829b9942fd96487f6012908fe04f6d8eaaf1966", - "00000005ab2074c04df57160167735f7fc2d8f629d34ff18", - "000000012e9da6d05bb3e2acbe5ba4afb4a0dd72db07d6ac", - "00eacabc34555956995623e60482e5c118e34e2094" }, - { NID_sect163k1, - "00000004f750e27500e10f0a176b83f14bc26d6bd71ebd74", - "000000039e5009067c0ee2c8f55b7e84da7a391f08af7504", - "0000000157ce8f0b6ce92e426ec99f223ad82763e4bd3ff3", - "00000005d3989cca4ae732de93672b25c9260861b4c0dce3", - "0000000436a331ead24f2807b55260f9dc3de668cfbfebb7", - "0414a622645107f115576f51cdf39d1393a2d7851f" }, - { NID_sect163k1, - "00000002ab9f5ba94102d21a706761eac0092190f1cdad04", - "00000004addd77e199c132d18ac541b117748d2319db7fe5", - "0000000379885f45f2d707be1c11d86c41bada493b2a5603", - "00000005ae31cb29b31d24f5f94c30e9c02f07f38bff0ac8", - "00000004d8d8e39bf87f058543dc8990a91214da416cc558", - "056be002daff11c4066e10acd046a85e170fa4c122" }, - { NID_sect163k1, - "000000043d25d2de9293b84d351a33cb1a52f5930a4c8b76", - "00000003d259d8236e9c8d6437f41e6d54611c52238fe2d5", - "ba8c5864db3efd768b9376fc2b6c1f85f46f6af2", - "000000062f622149823f255b4f86906666f3a3556af080ea", - "0000000274ca32c10f9add61a026d20ad3ad56b17fb06a46", - "021fef8e473daeda8ef6bf07814d7b9b613e3076a3" }, - { NID_sect163k1, - "00000000560e1a421865118bea16cdad6b67aba384ef387b", - "000000058b213ec2ab3942f8f6ad60a956955b589066b856", - "00000003e5080484d3730b2248ccc48260d4bd1857605ad1", - "000000058aea6e40b8cb25e6622a7be4ff01b79c92de72a5", - "000000043f6776b6deff3d29b4c703899d705c7fecf525c4", - "03a287fd1cca68db47a3c74c12627fc3728568dd66" }, - { NID_sect163k1, - "000000038e485de92e41f1caca6c0eb9d811a5aca89bf345", - "0000000331a1677c46a68e964811a9cc5e4e53ea71e23129", - "5d052ba1abea724978caef1879245672d5aef891", - "000000036b84a77337a9de5c1dd7ae3c899381382f0fffa4", - "000000056d4ac39fe881fdb8e60d4559658aaade45663ee5", - "029558b41b8b92387bc22c868f51bb7acb6e4ee2e3" }, - { NID_sect163k1, - "000000064259e500476dda3e97e25e491d466c2b7958bd49", - "00000003c2e53281393641a518d1dceffabee8b29bde1402", - "000000039180187a9eddcf38dc264f055b07d20b9f9a8bc4", - "00000004b292d1fa09dfc5e6a3ad99fd02feb74d480e34f2", - "00000006e1888009a0a0491c0be6abfac943d377f0b4863b", - "0530020c8f6362312bfbe5c1c605b40dc2e032e81c" }, - { NID_sect163k1, - "00000003714276997b4478e2d8b59af5f2e63e22bc4c31e4", - "0000000673f28d962abfedee62eab47c3b4579a1e5168336", - "000000016d37862b195763c6a01d5e39b9459a32507c2b21", - "000000033440e460c475f2058a767ec466ca18bce41f830e", - "0000000372aee323d063fa89acbffbf55024ae24e4929f19", - "0521673006a1d9608911d54536e122d809e919d804" }, - { NID_sect163k1, - "0000000275ec15f27dd2da6e44dfe6235472d5bd3a2502f8", - "000000058fd02262b27c185dde26b2c77d5a4f4d50dc9928", - "6c658794b039c820a8b033008fa8ac7556bcaec3", - "00000004cbfb286691e415081a1785ec6b0aacdb1d231d1d", - "00000005dd6acfe91d68a8ec23686478c0ee8c89277aef14", - "0460579beca16cccce314ff3040de4785336fc358c" }, - { NID_sect163k1, - "0000000233af36103039226f416dd22e1a26b73f9093d38a", - "0000000734258a175c97768a9f72b824b99a91f5cf8e3d96", - "0000000169c8da22c35a855495047a104be00b1575b652ab", - "000000045efed9c8bd2a4e429588f344f49d1e63e668bd01", - "000000025d1af85ac21d59822d7df8f0e4bebadf3b5d4401", - "05ba66964483fe473ccbd00c37ad3ba40cc5969f62" }, - { NID_sect163k1, - "00000006d032152240f28be7f74df8f6d2a450c1229a5a95", - "00000007aadac77cc4448985d1794636bc1d582f3d101a33", - "032fc790864632630c49a29e9ad0fb6d10f2b58c", - "0000000779cfb3e17c902a2584ed3382a8bed8262db98424", - "000000004af273875f8a2ab9a94ac0d1e4a23390b2bb505c", - "0277c4a76e1613b2ede699a675c1645a786075009e" }, - { NID_sect163k1, - "00000001f8581ec61df1409227aab7a015f2c71d29e3716c", - "00000001c1f51cc4185b68a260e31b4b00c03a4403f65c25", - "00000003c1de5bb40e70933ed7db84ce2cb468cbba299b3a", - "00000005ffe0f16018bd4bdee5f73bfdad04d713f2216f50", - "000000042361c881f0081cb0544efab0c3b34f59eaadeec4", - "03c6481dac387af39e8c09a553068ac496eea03691" }, - { NID_sect163k1, - "00000002ba22fbdaaaa806c8570f14ad4c882a610ccb8d84", - "00000006d4438e528ca887b05bd2564df93bef9bf660da78", - "00000003881275ba48bea0becc0211903467f5d0aae321aa", - "0000000776e40fe7149985337ef1b6c9b830cb3608752aa6", - "000000058e6ecbb27b0b2d3cd0e3a7ba538de3576fd5b9f6", - "07b5d096d06d41c3ad6458cc93417e6facc99bc7b8" }, - { NID_sect233k1, - "000001f40e34b3ed4a1b2d40c056fb75f2ad543c897cfd82f542cf746a0f202f", - "000000c130a1abe92bc4c977c800777996ccc50b90df991a2e81dd515c188599", - "000000135a5b8c3ce047fbc5df26277d3bf83ac33ddadb5cf4a050ca82be48f0", - "000001a53e5c138b3d83905d563aa1db01274633c986b52f78225a92e33e7952", - "000000ecabd3e2e26729a965604e560ed4498a22b31c39642e1cf99b1dde3ec7", - "00a822b141ca1f5ad32899e68c54d1fec3df8100df485ebf1c5868a9ac89" }, - { NID_sect233k1, - "000000c864c2a462a9363a4ac3d818211bca0369472d186288a27567433bda45", - "000000689d4d0006eba054dc69fcc0786780fb5f74d3989213504e2f6e666980", - "00000051be6fbcd4878c55439b0bcbbe5ea8e84bc9db89e70a8e8ebf34782da8", - "000001c5a1e5d3ee516e3ede723fa2d5cd3456b116326303c5ee49273a5604c4", - "000000568d0fe7130295541bfa265074147546e9733736ba007559d716d8e094", - "01662682bec2dfae05e38587c8e6a4d18aef4cb3416989c47c11bbe2810f" }, - { NID_sect233k1, - "000001782d82fcd211c0247c87e657efcc5d2ff6b05eb935330a53903fb3bfa3", - "000000cce830a515d690ab98149579ad3481384859e565d07fa61f50ebd669a2", - "0000002ecca595e55e6c85c5af78c59540fdb749003ff4ec361c38b48e7da6bc", - "0000005a48fac476c31cad0c68e64e65e687ae4418fb5d3b4bb2abb990dd0de4", - "0000002d9add706626f2859ece110df2dde89faf3e8aac433e2595e23c274082", - "00215d511cb95e0e073ee999908a7a844afd75c9acb7a9d724f7fd322b01" }, - { NID_sect233k1, - "0000008d800d3767abf5731695754ee8829b858ff4eb604a448ad66490b49c19", - "000001bc0f0339649ad4d7b7cff3fca9e965a38625e8f45bc9602a33c0798a33", - "0000006a7c03892df184d56cdccb9d5e9a16483a6c9388ae212aa926c8fdfb5e", - "0000014aaf880e81db69aba2b403bbda7f361e3339b483ce2699f30bf5281ead", - "000001b71559bd7d9384e517b87f1138a696fbceb3510d8c41c2158d4aa3e5b2", - "01394e02c70104f2a5308b2d101b02c70ef2d13540602b8e8f82dc6d569f" }, - { NID_sect233k1, - "0000014a3e121add7a5267f5cad204b3f49215084786b23f8d94d9fda02e0f19", - "000000394fea175dad9b34d525434654d0c86637926cac3a3292a2e4a514b5f5", - "0000002e2ff8791bc64c00f3b0f1d5d5cfb9ddb3b193814599f7dbddedefcfa3", - "0000018045cc9e65f6e275e322a62c18efe2d00cf93995feb53561273a3f1306", - "00000164e0073c0d4b3e12e22f837bd3fec421e3bb09e0c0dd997422830f6403", - "008556a4c3a8906ddbcb946099ca5dbe7bdb6cd8f37fbb50c96fcefed32d" }, - { NID_sect233k1, - "00000089667888f8425c5a623134622f1ea9d9af36df9772c410d6e31f2b4db8", - "00000084430fa47164d1c0eb97042a44cbef400bbb545faea4ef49ba5e3bef42", - "00000066972e71566746f2f76c87793774054ea275e2a7e27ab7c2d05c5f2412", - "00000020226dd73e318e4fc8d49dd43e59e260193d1bb248cbe4c06b4d6b8389", - "000000ed12a4f389696ab31c93ea3ec4d8eaf18be097fc9152e2c42b73ff4528", - "004ea6e0e34ec7c9bbad47f0f6f8ec0608e736d91e0e56cf3e5cffe8c370" }, - { NID_sect233k1, - "00000164da099225eb3c641fc83c77204a396eab9495b12a22f68e7a4b8399d5", - "000000cd98f2704c7494e6d20375e74528c8f56f867e9dd763298142ea01724b", - "0000001e53baa16bc0262b5329a711b0eb188a1bca7ef4b5c85061225d41d4a9", - "0000007d6d785fa323174eb9cde5b705428e4019244835bc94702f280c25ffe5", - "0000019aa0ef433074c484d14e611372f03ef8912f1a8246ceb1e90c817db3db", - "0160d0b9b92a4acd089738fd489ae39734551e888fd05a020ce26498270a" }, - { NID_sect233k1, - "00000033a8b08a3c33c343032ced1c0f5e826f932dee879ec1607a2af5d46298", - "0000006c4f27a49b51a89f6d0960160ba5b8fec08dd2cd4bc909a490aebe4f7b", - "00000042a8032a11d1657755c49e477033b0d341da2fe993a4577b41a40cee1a", - "000001f6629697da620d597fc1f51c83374213f37e952fc117ee65a9e766aefb", - "0000002b36dedc787ac951d2879d72414da2e7575a6cd7c42e0fa20b32d461f7", - "0038381b342efaa70bb79adb76ceb775de5f45f863559ecaee1ddbbd0313" }, - { NID_sect233k1, - "000000cfe15f861aa0153485f38ac033df9c8d812afde167b8918bb94a08d963", - "000001bebf067f85126d114932162164201b1374bf1840aa11d5e250639d0608", - "00000043e5770978195f917152f057ba1fb0156d894d32e8bb54c7f62f7340a6", - "000001487d1fdabccd7d89da25685b042980ab170aee3c11f31180e3b7c50a4a", - "0000017e383dd65a1ec8a409007f75035e5b161335d9c7756ed970490fbd171a", - "0122169f1dff445ec663270375dfe914016c38ce6c2d40d0b8098abc60ac" }, - { NID_sect233k1, - "000000763e286be50740b7f8bd78fa70bcac880df3d7371eb33fda2453b3ed23", - "00000057be6c5f7d990b75439868339ae327af04a049b38b92332b9cb8cb27d9", - "0000004c67c6103e62124600a0d9e923dc217a022f57c6feb219c703334ff339", - "0000002352fe9341e62c609fc1538e0270405e7001d747b87500e644a112c5d9", - "00000041f3b15b714a6f7ef647e23665ea530efcbe19b0740436cda812e83939", - "0054d47c9d0a9fee258122326be25daf35f0ba0b8449e16b4623a8c0fd7e" }, - { NID_sect233k1, - "000000bc8a71ad4c1134def026e4723e310223fb2c5859bc7594054c894da552", - "000000c3650563505535033c7a6c448d73bfa08fb8370234c7fdbac1b34daa22", - "00000019e54da872995eb3dcdccc50418ec351400889fae75a0ba4dcff25f1f9", - "0000015e67eaebe52ba37f5b73a199d950812cec1012fd410581444bbf23e0c8", - "00000022055ef821df33042fb8316ddad76485dbd2590e2f5498a914e4f0ad39", - "0071aed39f5c44a7ff72db3e0f8284da39dfb2d894f278d2006f9d2686e3" }, - { NID_sect233k1, - "0000016cc1ae13fb348252493021cd6146d531f0b722842a44c7979689f1ff38", - "0000018c0963ff0ea37048c9f6f47644f2a7c8c503863c27cf21ee6e0a3224ea", - "00000013a5ffc9a0f7069c1c66148699612e5cfab7e2bf7b3255f181a0227192", - "0000018de4dc4f6a4de5c3638ebba24dc7064983b159f55b139c7680a1cb90d1", - "00000135532d8148af3e227d4a8960e768c565f72c1ac0a1c9a7bd185cf994d0", - "01ca68ead4eddc8847a3a661cc6628e076bdd4b45047ece72245d094dd3b" }, - { NID_sect233k1, - "000000e49e182ac5d932be8b05fe340e8cb72df35647decd679a8c59b5d8fbfa", - "00000181b95a965abd16ec2430c26dd071984e854a967ff114ee7831bd314b2a", - "0000002f5d2a7e0877a4c99073732386e8d59734a23dd7f0df7fcd54d941e760", - "0000014798094680cbd32fb1ee9dcaa6b8739a556305235933fb27157d319e57", - "000001c855f0d453c1ffb5f668b32a8b3e309e0e8101bc39b6dbe7de214015e3", - "017a893b2e090780ff8daaf3588f9dfc0ac4dfe1f1e263697a9d1f398ab3" }, - { NID_sect233k1, - "000001598b2fdb5bf1a3951fb9ec016ecb4d28f66c2e9d13596786593585d719", - "000001ef65caf15795d14a0be89cac7c680323bc59803ba874cb2968672cb8a9", - "000000652a11f6c3117f1326fa6877405cec7331c4f146a97f74ab0c44de01b7", - "0000002cd6d4c1d2cc5e34205eadb94f4cfd35bb569da722c4d9b19b8d5cc2de", - "000000ea3004e5b0930df7f8bda314c8bc1145463eb60022cd2dcf6c0c824e50", - "0041fa5fdf495b885699249b7746334b76c59e1c917bfc1ae371b96941f4" }, - { NID_sect233k1, - "000001b6cff3b7fa215e378605c93f86f5cd3845f45fbde8be079dec29bc8862", - "00000166222efa5dba9e858c245dbb5da668239ab5ba728618fb85a90ddc760a", - "0000002ad5f71c6384af62689b35c24c4ddfb35acf8106cb0c19502c2ca184af", - "000000fe1b52408a712841bd62f0ee51307f26331d402bcc3a5ab0405d1c5e80", - "0000010a731a7d6a6a4f5b40b2eaa810c1902db27b28d297bc05f3714cacafc0", - "015f5adba59d1ee01696cecce4b63e78e68508303ee496ff5abcea25ad3b" }, - { NID_sect233k1, - "000000cf402aebc3e4247a9ab43da9755176a810e011f9fd977de1be2fd534fb", - "000001bac45fa42d605ad3479c7c43e724910716737953cc8504af14f331d34f", - "0000006f01cb54781cbda6d88deb59843ae0836b1af683efc75650be84f208a7", - "0000004d00a8f0820da9097fe50e8e7defdac29607dd4cb1dd881d4e61f1e78b", - "0000008a4a8e9c811b444367952752ab8c2a5198efb28fbedbf3fbd701a857a9", - "003d5c29b3753e89ce5064575393392b377ca657a0b73872c82165fc43ae" }, - { NID_sect233k1, - "000000f38ccccf08e5bdff3bb35f7e75bdced68d3791dcf7843ca88ff092136d", - "0000015ed7697a4b8c99d0147828f6c861ffc9cfb0f33dce9d14b0731e1da262", - "0000005dc1ba1839f5d1fea85ab3614c55a9c5fe600853c71a61983c7dc82de2", - "000000b6cb6ffa4e2eabcf7b987ebb520165a8ec9a22a6f9ffb100f38172a0fb", - "000000d39814e1852476e56e89ce8cdd64372840c01570a86940ace24bb9cf6a", - "007c01f906caa590898a09f46b6f5383658e7fee656aca0f111f22939960" }, - { NID_sect233k1, - "000001e328571df933acfd4c96f3c4bde71e9175cbcd62aeecd76384744a0f3f", - "0000019ff48aae0c252eda8d340b25c4dda01a2f21aaa35d39baf036696a1101", - "000000241e1df5587031dddae196891c28821cc7879ad35832ae718f6e792e66", - "000001c172cee2b76503eb4d90b39ddace825b23c32375cb68eaecd7348490a3", - "000000c246ef9c6e2fadac77c73ee9dd5adee828b7918417395b5997be1a0278", - "019eece7d3fafc9274d361c6fafd9efd9ee485cbacb3baaf6834feb4df6a" }, - { NID_sect233k1, - "000000f4aa7f9340a9da46c4f06728753a4adc5af53a4dcb467f70b4873da785", - "0000007f321e2bc4e29a68ac23c77cedd3bbcde0bf7b92a27ffa76496988981d", - "000000044ac55a913a8c7f7ed7fc5679f52f47cbb9730325be21b7993779d187", - "0000009794861017b3debeff302e425327fe269d78753b73bc1bfb3a77f716dc", - "00000002581a49c1269f5ec868dc6d7f5c2d8e749632d47ab6d9e68dbad985f0", - "01e4b7e89fb1b51179b8792f5cd581c3917e11246d3846f6344ee82eed66" }, - { NID_sect233k1, - "00000068d9e55e7a105b7bb44b21d669bb0ef657a91437ad84bf6d5853270c98", - "000000143c8bedb54db07df8f67083c59a0aa7cd8a0efa42f42fd62e442e0b62", - "0000002bc136778531089da5c2fab3caeec256c54b0b35fc2c65f7b8ee6161c3", - "000001fb258a31d166bef9cd664cd7b66cd8c186e7025c77f0bae731587e9ef6", - "00000060dfd4e475e92805d1935d0382dc1767067915cc00ed3b24f65382d21a", - "0145710c3ab0780ec233424d4e28b38d29f886965bbcac49fa300e1ed886" }, - { NID_sect233k1, - "00000099eb91cda98620103c3205d6489e68ad7e57d0a51dc502d6e30588f418", - "0000003fbf829929edd28e906f58f87abed6d6d177f436f0dd940dda25eaf188", - "0000000d56595471435d95fec37df622f18ee7dabb24379c82bbf714c5abc5e3", - "000001a52940a452aaf420b37b5f32c2c337306894a882feea7addadc01927ee", - "000000771b9f62a2a6fa892503225275490388b8bfc2df77df3e806bedba7d88", - "006941a2a531083563dd886b06c0860770a4724bb04a4ebb2afb1ba2636b" }, - { NID_sect233k1, - "000000dccaa22b43391dc052597ae3bd07c6e5f021f39e987756f6548171ee94", - "00000128efd49af3a6b32dc16797a978f0ad4ab0db66ababd6ad5672f4f812c9", - "00000019c8ab2b32f2ee93bf2ff6bc44378b60872bdaeb6ba56b514c8f388ba7", - "00000083530fa3df315a8740ac52f4d394b80c4a5f210baba0b6dc2205e12493", - "00000037b9d02ed43e9d41d0dbb8403b9021b4d2c1bd360ee53c31c27b492005", - "001d754ee5351d4582974734072abac23376e24348370934e7b864db0f52" }, - { NID_sect233k1, - "00000170917b33b37b8eaff2461e5f9eb8f0797b13aabd915a60706cd4f32cb6", - "0000007651e0742c0d83d4b68552e9b7abec3644ba9755cffe6d4e56943a6b9b", - "000000503160104d88a0c0f63956e7c3bba702963f9f1b53fc119a592eeea4f5", - "000001463c78e498abf34033ec3e1d973dc12509e2d234fb91403715e42f61f7", - "000000ade7abb98a0308886696353aad33c05bab5cf3c0d4e969cbf4c4ceec93", - "011346b83791e4bea7f6ba6b1265e5050895d84027c106f77353418f75d7" }, - { NID_sect233k1, - "000000d8ed318382b85c2525a02c22c67f5bf366335d94767eb5cb45739664c5", - "0000017d8fde7bbc568fdc802a3e3455f3cf35602df70684c8acdda165a02656", - "0000004547eaf9be1ce5af1386e311046ec83260b84a2ca91055f60668b946e0", - "000001504938c167680afb8b6d5858cfaa191c40196fc4e500c662c5346ecc90", - "00000137d1ba942228dae68c450b1a033a2c810a995971f01c24089e4a6fdcc5", - "00b4938ed1ed012a9a53892ed9949397cdc4e4a612d54dcf80cdb039f47b" }, - { NID_sect233k1, - "0000017f87f13f6dfee6081bb5cca532fe268c271d2756b31bdf643297cf695b", - "000000f3a746955e12dd0b71919edbf23b2322cab328dd09bdf87bcafdcd2884", - "00000042fbe554862f3595184a45510ca53df97c45175584b5d2de042723358e", - "00000131b8d61b9cfb0536c588214e45888ebe48391eeecb4d7fb5be8eff4acf", - "00000165da49557a0aa9d45dd378d5f899272cc697682276ae91d2c0b675c469", - "01b3d2578bde3066a253db5322c85cf9487ce77b67ece955e281b0d7d0e7" }, - { NID_sect283k1, - "03f075c24c35a9dc9952be6fd32b761dce63f4720a22408e3a14bbd097e012b5" - "694c22a0", - "0675825b40202e95be7dab5a826147e04b8c51a09b0034577c1f31f8c16a70c8" - "e1c85b89", - "015fde49b802542a52c70b23a0b1784e5f8780b56853f9a5f8c3a5266e8727dc" - "e97d4a17", - "0611edc045dbe43ecc4ef6b324cd51f70fe3d7ddf877ec68b798909c3c456175" - "6aa30e5f", - "00833b25511704af09b62d9f7cbac59814e75bbb9c735f55538491dbfa60c1e0" - "115efe42", - "0745552817b5d729310b7dbebae687648714a9ae695dad20ca1ab6111c3d0546" - "70f21132" }, - { NID_sect283k1, - "0799b430e92320ffeabf2d6cc87399e30c0aa84420ff8eba2309b99487b742d7" - "22e8b7a5", - "0217362801fd6d2d286e5cdf375cd0ae569b700005312e37e8e35b1592efb9b5" - "eaf47b3a", - "013b911f62f3aa884354634547ee622807d5d106020330ae2b9798c0c4cd0ead" - "b10ba948", - "078d2ecd4d902332b6b3c7bd4ba7d200fc34c45eda30998b6025ed47b1f4f8e6" - "8f328624", - "04d5e53647dddf2fccc8816dac8bc70c29807622cc95539a72aa3a9b230ca1d2" - "5ee7b516", - "02eb0c1ceb6179232e91cff91fc8a30553c6ed7e0a71deb1bda0a10735a84593" - "dd903636" }, - { NID_sect283k1, - "00ce47a743d48b86fefd6b5c02f2a97b2762a2fe57e0bdf85c1d6a29de8862c4" - "c99ed53a", - "0322e596069f916568ca248ced57efe90534af4a9f90a4f40f797e4529670317" - "26bf41d7", - "0177632b69e7edda3cf007307504343cc2162326f62017cbddf360a876dc93b8" - "1f04c58e", - "03815ab6480e4ad24a6628275ef2ee0ce7d58699239dbce23338842bc58c42cc" - "a94d2412", - "02de833cc664cac90d30fbeac603efbbce9276d4f16ab1c46e7e11c81a9aa9e2" - "5c82969a", - "04a9dd2cf5076814e5329c518c4f27b429dbe01d46682d476e7e78880de368b0" - "64236ba9" }, - { NID_sect283k1, - "0728975839b42c62036a7afffaddefc3024b7258407bed565caea939be33d16a" - "c94445c7", - "07712630790b05ae04d8d7d9f2365dae9ad24c4c61b3eb20c0a7987e6a4c4b0f" - "598c371f", - "003bfe9a1c985386e5ba2b31553a55151e78ddc38f07432b5c42a1cd2da278fd" - "0b68e047", - "01d9c3337da95ec6e5a4bff1cc92783989b66c9230107870d4a578699338e38e" - "b2d92eff", - "00cdaad7d0eb0f445aa763a5dfb8f38f55355777ce24f753b5ad3d3cbab125f4" - "91698d56", - "044e2cd2bc164d21cf4b9833c0aa62ed059282e62b82f4500aeb422d17e1f6e7" - "e8bbd500" }, - { NID_sect283k1, - "055672d73998451089e2b7c7104b42247dddd132d40ad087b588d6a385da64f5" - "a2f46838", - "02b4cb1581f9e2b378eb7a4f64f5a7d4320b2ca3d3474726f670c3883bb8da47" - "f3d745be", - "00d95af52a708e692d02677b21032f7aead6003f124e72013f37c06e0bbc20e3" - "532b3cea", - "06e487f91e73bdd344fb8bc8f4c1f476e727fb2671e9d6c8fbd775f1aaa24caf" - "2e9a36f5", - "0663e1cff8099757bb9ff1b87890283aa49cff0f7b12fe184ed2a428375d2796" - "cd81de91", - "04d4f04d2fcf1bcd8150eaded90e467d3d38f753b6fb54eed8f9d29cd3dcc7be" - "2c83de11" }, - { NID_sect283k1, - "02cc28a4cb76d147d98dfa677dca14e1771347b9681c65cdb540f22c907613fd" - "ccb0c8da", - "07d4065f990c8fc37d100ece38fbf574ce444dc37355e0702b80d1eb1bdd6709" - "97e8f271", - "00c733d9094032cc7aed6c54a8ced753eaf2a48882285a3b4c7e6021f26bece0" - "722840ad", - "026896b039d7068d98a326710ebb7a978bd47661154645ae30cd83d60535067e" - "05151ccb", - "00d83a263bdbd8c8abf0310bfbfc83917a86b0d8c4be0b155ab7b9e2c7056056" - "28bbcdd9", - "01c343540541604f68ddbd63c483760d824ded5c18be7e56e6d36a9ac6d25772" - "afb0a90a" }, - { NID_sect283k1, - "063880eb538c7275ecba4db53d9b68c287fb3778bef514974d1e7e31a9ae365a" - "2181415f", - "04af9f2cf92542e1ff8ff28f8e7c8e809584e243a4902949a765a284986c750b" - "1b06c89a", - "00db39d7536072dc3448cd7d2160e50c811f648358eb0db1d5428e81aa7a686b" - "7865adfd", - "03a721906ad13dc15c311fd4e552f3bc87b7d92ceeedbb0c316a952785ba4689" - "fc0ba270", - "029514f3873bbc3b9e217061f7a6261fdc6268685f9656f1d5eea472cc2db5a8" - "c162e6e9", - "05e38079815477b8a79096ce339c4a255f8b213be74715ea61ef7dd0c0b5f161" - "d9de7521" }, - { NID_sect283k1, - "05bfd2895a2e66366db7a83788c72bce48f79b5c9524a08ae273c78ceb39ae97" - "559d5ac3", - "04a2b0a55f80155a1a330fde6cb6d97eddb0a9dcb66c49b392904abe8b381f91" - "090dbb21", - "006649bfd641dabf1b9d499d4fb04beb099475d0aa15d5ef6848b734d2d41300" - "8b604308", - "008f6576d62affc71836d19adbbc3d504210f12efb61c42057824515290c502f" - "2e09b6d8", - "0021643be87ae6e549b0d5fbb558c1303d14b1ccd77703ec74f9602f35ca8d7a" - "5139bce7", - "0531ccf51d1096982f7c2ec513a92bf51c7ac5069cb15c5e2a053ceae7e55509" - "08a19101" }, - { NID_sect283k1, - "063547f7570bd6959733c03d2e6c4c88971f314adcf28bc851dc52ed4e8c1a4e" - "a06f8702", - "0122d3773b0934e900fba7ebfe1ad5ed5bec0fb1a9ddcf4eeb61cbed04007431" - "3c0b3170", - "0081860a653d6d94446d7766164ff92c6c5c1545c735304b3ad4d5178c8b14d0" - "181e9471", - "06b68815bb83691d16749c4be16125e2a6d6dae94252739ba7bf0db0d50198ea" - "2fe43ddf", - "039e0d93018a46125620f6ffaca5a0668343c57025a60c31a9d6e51191cab338" - "993b46b5", - "06ffe79d2b7664ee2d8303ffe0ceca8c49a581fcdb49c4af6a060ff204eea74f" - "4cf39cef" }, - { NID_sect283k1, - "009047f7d77397db70e39fe9e4ba9d97a995a7ee066ecf538179e937ac86cacd" - "ac510950", - "007cd875167f06a2fb9a819e2cbdacefc16cae0eef2cbb0b2d49beae109db753" - "c9506170", - "002243e8919bd7a97cef0e9cde63c76d4e107150294fcf8dd7676451ca3bfa5c" - "5edb964c", - "03e439e3ebdfa7a23a9deb09de141905c653c4f202edf2cf5f09faef88ba3113" - "701e49f0", - "071d071b86ed0f468fc6019de23fe4ba2cb3b50032be35e92d2e5af40de706ab" - "524e82ab", - "0311c430db78b6203e27b52988e1e9dae890c655dac4acefa7ee9612bec32e3e" - "5f52be55" }, - { NID_sect283k1, - "04bdec19300c8afdeed86499d2703922df57b2ffec37e45c03a5e2909de3c333" - "bd06a5e1", - "01aa4f40844f2413f1fcbded003b1d15c9f1df7548de2a2bbf71b516657ad8d8" - "c77cf72d", - "00512a42841e1227fc9fed51c2268731684136f225cfbf45648987e2453a7186" - "f6a7edef", - "022f76e5ab714fdf78571e84c2b6ea3a17f12999be483bc67e1b843d209bdfec" - "0347a43e", - "02eec1fc0e85f330c53dad7bff4862d8afff8aa14f94756e95b8f01fd7eeb8fc" - "54527787", - "0701d92ed8687138014b4379f1c34677e1744f6ae8c89958a5962f14408d587b" - "95472db3" }, - { NID_sect283k1, - "0611f53af4b488990e7a52e5c73856a1e74279bb0f36d3ab1989b2ccd99391b6" - "c6b3a13d", - "054ea95a234f65897195bc97b03fa6d246ea5ab5f41da22c08ed817aa7c04adf" - "372982b3", - "002a8af497d1a3dac0732a393dedf75394a3f519ce07faed3f77dc0e669f3a1b" - "1c6ddadb", - "0571f0c87f88888ec0738961834021765cc4f5c8db2b1f9ea9b8fe9847f89643" - "49fdc44f", - "04ef7c8044a609694746ccaafe87fc7f9f1a78d00f8354f5da7ee2f5da7235ac" - "1ad4b57c", - "04f2301ed85a5c91c31a7fd125854904340a55e34976a20743bd33d95e476450" - "f301ee62" }, - { NID_sect283k1, - "012706ec0a0e76425d8ab4e0d55930a4416e4dd0a1af6d97987252988da0ac96" - "27577cbe", - "04215e8715129cc76301791701dc5fe1abcd672b6aa19ba4c7e532ee7a913eea" - "60dbc9d0", - "01de9fba4ab24d06e74ae5ad36ae195c2360c728eb38c50ef533329e70c5ae19" - "f489b6d5", - "048d61e0b9b8064bcca8ce40d4f9e68b23684137726a44ea75c8f2f8850f0333" - "fbe985e6", - "05fcaba38d51e2112b6b9f34e6779c10c0c559c3ecd156022966cf92a8c7f650" - "20a79ebd", - "0643900f337ed362815f181e0628ed5184dad3e66a1f030e947f116696312d83" - "5f7f6e7b" }, - { NID_sect283k1, - "05bb20bea4fd85d0162689c550054001409b6c712d356a52f793d78aa2d8261a" - "43c5b6de", - "031be5cafc8aaef19b861503413a7b73b60b37b0180493d82e9426f47b658739" - "3d08de08", - "015d3a222d5709cb339d93cd29650664f39bf3201c5d1e86d3aef8f795b9fddf" - "47d8c4a8", - "01e2b88de3772b09c63d036e0dbba435246987497b6283dab8ccf1002486de07" - "30277b43", - "03ce182b7f0cea21a06a1d4de8722cbfc59b9d9d79bc760b9d17d85671561aea" - "add54941", - "063b1a3db331f91abd0af837db9d5f040620d1ddd7fccf8b58e0df43698351ea" - "1942548e" }, - { NID_sect283k1, - "010a3ca2435b135ffea08792b7f19b4ee181207c29be1ce1fdeacdb69a669f9c" - "dde9181a", - "024908274b1e98c6d197ed2783c3c953c1b3b34fa43a8b2f5742584e37fea407" - "269b43bf", - "0098c570666792efda65fc9e7909931158dfd4477be93332e493d69866b6602c" - "4951de6f", - "04dc6774fe46ab0ed2768d379e7564a37c6bb1dd1bfc555727ad94c20f4732ca" - "bf2a2c82", - "06c6cf0f421f91fca22b4871216a9f1fe3878f07914e96ae94ac770b6762f9dc" - "e08ffa2d", - "0516da1d64bc4b25ce4763e6438257d62fb1ffdeae16d68701d63b603ad53e85" - "87927669" }, - { NID_sect283k1, - "053a0dd6135e43a114e5000aec40ba2709b3a613730f1cc2006b446935e237bf" - "ccc394d8", - "03b66ce6cf01507d462eeefff6211bd4c56070116c6907468f7c76fe01140bf0" - "d5fb7b79", - "00f4b6db4a87cdd30029cc3be89e40b9bcb014d010a91a252c56cb28671f354a" - "804cb4d8", - "066ddf04831fd1c72bc48b709061c1aeaaad19c9da3d8c1506fa775d4f5a5412" - "eee0286d", - "03aa1d13146ff192792b74a5c64ad3150fae344fa830e0f44733d867f4e0ae05" - "3526c62b", - "049c68c333b96705eee4a3def0d568b0d4faf24df2fc2f1bf40da0af0946240c" - "38e97f74" }, - { NID_sect283k1, - "06d4a6f3e87b6d8c49cbe517a975d2ab8c6339135596d6b30cc65cc80c128450" - "8f49789b", - "02963b356f2434ec249bcb6589ede4de36cecd3450e6f5e477bfcdc29ada4aef" - "0f45ac53", - "01ab82c5a62ae47ecbccf666cc3323b35128c52d17be11baf3bdb56006e5d568" - "baad8bbc", - "00a04ad7a583666a40437f968b02cac7946745b4ca949021c5443deb70183f88" - "e1778fe0", - "02bb591c32f0db3430342f0e37c45449c293c54f6b7df6f797c0992c2829858b" - "680f2bdc", - "04dd44c1a30edac2e39a5bc9902625880a18516385c90a9cc6b94c4f111e0260" - "863ccab2" }, - { NID_sect283k1, - "076452e19d7a10b885123d503f5d0433e163df134fffb8558f8ac26cfb30629f" - "8cfb093e", - "06b3a24b2a4b077770d396bbf154af41eee3503573a6de9afe0f6d18b02fc976" - "1ca1643d", - "001254af1791cc75694ce590bb518a770a750446171a30edd6c0382a17e6880a" - "1aea5b81", - "02b766c993b398d2426a7a0a49e9d001079d0fc32197181c56eac1805e4f87c9" - "df055dea", - "036e7bbd3be9139d4d43a8655ef7d51a062d9947d1a48010ef1ea10eedeb27f0" - "d1ffe765", - "0049c165339e9aeb2b516684b442921f1fef3091cf781e03fb3f56e93af1f3d6" - "e500c81f" }, - { NID_sect283k1, - "018e0bb7516d2c42e9dd96caaff5f20bfddf3e8623fc947d4d70491536790b87" - "41cdd372", - "032c0fffbda2fa863cb9d15c36545020d5bb24d930daf2fea4555f7c24d6aefb" - "b2c01d92", - "012017b9a0599fbf13cee10850a8f8bd06ccc00bd29ac6779f1bd93346b22c98" - "327e0fa7", - "0421c62dcab54ba800eafac232fc730ce70f6d5cc53ff53d371269cf046daeaf" - "451b33e7", - "03d635f55233da3c490a959c6e63a94fcdbe471fbfca19d2c5a3fd12b04db380" - "c3c895cc", - "0645d7f4c5479baff5bc0cba654a3dcfda56c0e9d19f50f9d8d8c6357c09a140" - "effbf223" }, - { NID_sect283k1, - "024abb155e49124282ea32e5b544621ae9b513aa0476da3bddb75260d5f5fa2e" - "7b898987", - "01bdfb0a079a55bcfce1ca8bce3019cbcae6164003384166ebbb0bb733539565" - "adc446f3", - "004f197c85432cb42a1777249ae411ef4bb2657ba4bad35ae538635a151c8d6a" - "564f9cca", - "040c88924d5a24a853fae408aea5b3bc827d7315fbb58e6ea1f6a65677dd4c4d" - "304bd75f", - "054b82869ada4433f7208f8570f24f06cb64046e8ac086ac57d3707fc882c635" - "2733dff6", - "028017c2a0240fd746ee72a0bcae1e53e05b7af254298094c381e735523854ea" - "5fdd4f5c" }, - { NID_sect283k1, - "07527512bc934938cc5240ce70ef65222db85c13c961c1f31f914205067d64b1" - "a4c85314", - "02aabdb81ffed2c001acbb4d0b7be539304e32e431e02df8b192ad74ed1b4b06" - "06bfc90b", - "014e893483d1d8b7621cf48bd24bc8a1b95bb40a08c16c32874a652b59a22521" - "39428dac", - "01574e17ce26311c40abf3243f4889a2eae74a8341aa7838551056f4395b8f02" - "bdc327be", - "0086e59f985348f3f8d7953800b1d75e141521249c43fe0616913db5d1d4bd54" - "00abce55", - "02603c00998deba52db12814b1f77b2120cbc1dca59009c0d6ea40dcbcabca32" - "c50380d8" }, - { NID_sect283k1, - "07ec29da2f304ceba8d5e249eb6054a4e4f59534ee59d25c1dc0e12cc38f768b" - "83daffee", - "0112c7d4a37fec842271a0a822d37637e6ed55190713001aefe11b06f7e1d34e" - "00fcdecb", - "01eb6f6c91a880a5462185c6a700e8637b8f447d09d1b251460fe57f1bf462ef" - "ddddaec0", - "031b3026104388374cfb7c7b4ef64211a47e20b9561a3bbca53516040b7bda28" - "37309454", - "024f8aeb23a35e1c22225967c7911868c84efdd873dbbccbc763ead67e72a232" - "4aa4c6f2", - "026a719bff31da4b4ebaed7bd043064f9c3930b5774c4a99809332c808aacba4" - "b9e3733a" }, - { NID_sect283k1, - "061ef59389edf8f8273a662a4195411e9448bb1b77fb0800be525eb5a6a03b19" - "665719a9", - "029686f8477fb5c769efb082cb3f1a0c79db55cb264e2112c0e779e7b558f700" - "45816a10", - "0147be4e38667e32a6a61ab980ced92e42695925b113c694a7960aedea2e1d57" - "1a42d3de", - "06f599f0c149457a32f1a2ffabd4dff916259382912b6402b50cdf5c235fdd1b" - "790e5eaf", - "04ccf1d8a4bfeb77ff3290e65ac601ee5b97fc1b1869a2eb9f0b76277e8066c0" - "86776c40", - "048c48c993040619536f45482c494a39b32e75fe69e478ba06e376228b79eb83" - "d3ff9168" }, - { NID_sect283k1, - "079d5760ee6ef978518bbce536b031c655a8acf5604497ba43de0beb6877a547" - "c3edd458", - "0421b3051dd36396d20ffcd7cf34fca022516dd4bffac73fc995ae9ea814ce0e" - "4027f7c6", - "01e1900be61adb7e55559d99a0b7d9354456f5151e2fd7b83c005b10b16004eb" - "e876c068", - "042ecc99ff48b53f6619b484af8fa59b234a981c9c3e9107bbd1cdaacce81885" - "d06e02a9", - "0183da0d7fee7f3e70e117f0e8a4a742cad10aefcdc4aab9bb31458237686afb" - "4facf3a9", - "05d85b16bb2a0d32c73d1402838bdfa512d744fa88c74d3d90cf714c2480e033" - "63d5c6ec" }, - { NID_sect283k1, - "024784d3d3d5e8021ffed8a2709a9f54d5395d98fa442a655a05dd94262b6035" - "96f8bff1", - "03e8e39e08cce55e1bed2dfe0d2f8c141b06401dba037ecb384744930c8178d1" - "46416324", - "0077e41ab2d09c34c588abc76d4312602e71f60019027b986e0ded372535c2b6" - "a933a533", - "02923323f170074222d3a6a287adafd3d1fe12715d57b91b1ff476a2b4fcc385" - "de261ecc", - "04cc498d67c6267cc7c4c2d40a56cdc2a6e715edd8b2a9614eeb33d0b6fd162c" - "bb85a714", - "066abb838b5f12b6fc15ceb745600686bc2d5773e53469c2ee920cfba5459a1c" - "ab20d153" }, - { NID_sect409k1, - "0177f736f6116320cafbb5b4dec202d40508182fe011189b81e1f3998f540860" - "7a46bb150ac47bcaaafde47b8a7b72f478bc22d2", - "01df4ef4b37e0124e55b67f3586de24a88a6c5d98854007d4b0c4b4ccd68d51f" - "afa7638bbe555d60b74def217c6a63c5b4068fb7", - "00084b711e3c60822e70fa6828b5abfb0e448888b35b0c8bb09f806616dc1ecf" - "22dd86237d937c1bfde62b75ae655953fc6b2f7e", - "0068a3f8b12e02d10e2f52095526bc4048b8f6ac3a84531772870789938f1aef" - "f813e05e509ea9587d2b7e4aa14344bac3ec46f0", - "00d1ceb40c7d5f3297e2955f0f3eb1422b3e6bbbfbf7eb518b9c17ae8d40feb8" - "4aaf36f5e5bd96075b2b4dbe538ac011962ac705", - "0176bc5c4036ce5125493a58dd265f04d190f028366f7799f70aedf29ac67b5b" - "37c37238593377a47944f5b639f43856dbd560ec" }, - { NID_sect409k1, - "010c4c68a9f1a62a326556b6d977a79cd9c4476c05b1add4a2cfd3068249a3c3" - "923822428d352c5d74e5d64acceedbdaa6efbe4c", - "00866ae940dd31b5e6e3f20b3b4d87a6a02c78173c80aa510a6edff852c629e6" - "064df5d7c600fd98e58e8e8c662bb4b96c8ba905", - "0065188bb7796e451f44727a1a0674440dd33d258ad2fdc7b98faf64b11e7e8c" - "e5e8c21e799f1ff2fd29d4c94aa158962068a59f", - "0032c5768452f3c1f3bc54879379ad420891267742b37fb096ee7b8c21ceed00" - "41e9470cec3bedcb799e90bdbb31192083ff0344", - "00f9c6122927fb824246d1dc1ce0fde71a6849a82d41065da1d85256a9b1979b" - "f7f286366fc8b324893ebe34e59c046007399414", - "00575d9e7f70a4a1c5c807b6b5d6b7330bdd764db2aa60f3bfe497e6bfe90f03" - "8fb4f6acf7ac06efc3d157c3dc907b2ae093c6a2" }, - { NID_sect409k1, - "01e4d580d5e9ad81671c6cd662d5569bafe4d75aa4f449aed56bd800619520c9" - "f32c4e230c4d91b1c411f9086d5291ba137014a2", - "000c8ffb42392ff397bbd467972f3ed251d5a079965da0b1d2a3cc16c31d255d" - "ce9886937b2dc941eab0d8be8bbcd15aa6ed96d6", - "006cb17c3fc21ab48e5c3717c791118d4761e2c51986bf147942554dc5a18bf9" - "bb6c67bdbba908a1e8ba8e7790f59a397134f683", - "002b890418afc5797c9746a44ca059367ae0663bcf058156860c613ee05e11da" - "3f2f799c70a68fe72fd5dac2469daa18107029de", - "01356904b197bf9e0657f4349d252bbb375c66206fc0d8312599bdbefee8608e" - "c948dce486807baa535ed06adac9c797634711ab", - "00ce87aa5e7700384df59d3f1075d282c1aa511391c42ef609b8de1264eca8f7" - "737df91565c73ee884ea882d47c56d979141f0f2" }, - { NID_sect409k1, - "00b7d19354cadcc94708267aed8b23e484e32a03814b026a800f5ba01e9204c4" - "3052e4d47c6fcd92329654e0e9015b012f79344a", - "017995c15796c5ae93e0a207a2707004fbb1a49a0d47fd404f12d57849d8397c" - "d4d2c6d2b4b90f864403d4acd16a32b7ff4877b4", - "0011d43bc08da9ce5defc94b4ef90d9324de080347ff4df86645d325603a2dff" - "d28ecaf0775ec53caf5a554eaf8b68487df88654", - "01257b6abd470d294b59ddaedacd545dcf43808af890f576288803342fc61eb3" - "96f560af74342e10bb94d224c24d8e5900e5b972", - "01dccad97ecef4387a1cf512b16dd5bc7ab615fbc5087ac19d5fc2762f615b49" - "04ea39343bbb185db64a19f7f70ecf0d557b15e8", - "00691dd6b5177702d6a0b1f8b07f3b018478680de7ee079272ff75659335c96a" - "fcea7650caa01f996aa37946b78e14a83e579fb4" }, - { NID_sect409k1, - "00f2a11ccd3a53c95ea98f3144fb77d4a684f9a1f423eb81e3a8bfbe22b680f2" - "1870f58caeb6946c6b3b873699cffd314063f408", - "00fdf26eede6cba7248240720906ce076cc4322d18bc7683d2240ba68476ce79" - "022780b2fa54e0f7c76528b77fa631fe5abb5b95", - "000d6b259656d526777dedb5246a192f0c05c7270a3b4e64a9d6c877cd06d296" - "2a1ac84ec2d89765f967f6044f2dfa56903107f3", - "0193afa13bd1e081cee5df1286fe44a293b7d1b10c290a5f2ae7be2d02736009" - "a26d83aaaa9017a8c8bf60efa15fcead07767d48", - "01d02fd66a7806c4c8445fa615254ff32bb9c1d85a3904f939c1061e250d3eb6" - "413130a2a5570994795310e96dc3aff3b8218ad3", - "0136f5c04cf9a56db24ad99bd286feb800aea38d44f819be1c2a9dba15c635c4" - "e122893570233a4c5754a41499eafa39a35aa57e" }, - { NID_sect409k1, - "0117449fbea6b2d5f4e8e4d39a7228424cf06f456bf3ae39bc1fb2a99e4183b7" - "16e194fc507465664d009d5bcee3a426ba932c10", - "01146d32b70f09e65fcf69eb9ae66162d10bd04369de8e8187fa9c3d1b5dda26" - "f10b469cd4925ca37e0994415757e6895e588145", - "004bf7351b195875d01f6306ca127db8a1a5f597719c0d10e1d68f5d4855bf07" - "605790691fcd0d8b5db137d3fc2679de75a06781", - "01d386645aaa48e2fd0950e6a9ace9dff62c8f5e94cdba45bd73c6be6bf7b763" - "a2c9a807846312da3ab821c049ac0861f82337f0", - "002a6436ef8a1261aecc38c821da774a391fdcc7750c9437d9dfe64c82335081" - "3999f0fd4f07f1d6d98074098612bc52044249d4", - "004f684f9d559d16485f0023bf012006265ed81f06fbc1441334a559e5500a3f" - "77603565013694023e0d8f44fd12dcf69eb8d654" }, - { NID_sect409k1, - "0119980f11149dee5e2c2d00561d3c26a42a5a44e874765ddda4d818ea704edb" - "ba23abed5e08be92d655d79e55c5bc54787b4dd4", - "01366b3dda3e9879c4481ddc367e51c1c0541945964636d5021687c285c47d40" - "e79ff7f0bb56a93ac560be8dcb970f58b23b10a7", - "0069da659010345c6900fdecb31df9babedbe4253398290b34012fb134bc5914" - "7572e62a60f5cacced87b0f8d1ff7c049dfe9692", - "0038687019f7c219ddd9567b20f5ea1e8a50451dd40bf5b65f7b2e133de6f36e" - "4a3f8fa2f977efe920f845d176c8a57023cc55c2", - "0149397fbc42bacf85c59e04535df1d52715761eea997d4ff87204866cdc3d4a" - "54c2425ad214a7a0dd592f4a991ab768c8f404be", - "00137894f637460a63576824536944cddb42dfe63169c84040a0345ad7516ec4" - "f1ad00bb4de20ea6ea43824b9b0f74dfa6881cfc" }, - { NID_sect409k1, - "01fa39b5d3375d43247ac9500061ebff7a0c15b8c5dfe9c751784386c981860d" - "e6e1b9584da0f42119417f32338290910a9a259e", - "002bdecd502ba64a6f21d08fa4250389d4270324456e9441657495c72ad760fb" - "348325f89b7a5404a2c21c2aa07711bcf5f30412", - "0006dfdab3ca1b2a2821cefdb5872bb95f023161ae4e2d549d0fb1f382563413" - "584491657db101c323514832c363f636a9e69e83", - "003e9a9b5f282066e233870dcb00c4aed2d73a331f79d49c8d5c2d93908b0ef5" - "e72b748814d1b8840642d75b7a9a55301b1e7c82", - "01085f57691e04afac6e884e2fdbd8df802f4d435bce611231ab3274761ead5e" - "2e6a344a53f33c0fa156e3132062f72bcda3fc0c", - "00f03b0b43a351311689eb1d3fc457013f294a7d02ad850c72e4ff9b64ce68a4" - "7beb49bc5bcbdc828534f8c8a5e13de5fe522eb0" }, - { NID_sect409k1, - "01b255d5bb75d25970301de9e0e3959a12205d511f8e64f042a01c950db471b1" - "d6d5847f75669eeb0bf187f1559db3b22aeec096", - "017e590cfa855349136198c2ddd8a5210882473c9dd591c02e202ca0404bbc9f" - "6391d73ae011dac9965155d2650139fe2e54ec67", - "0029b2fcb308596a975c5b4cd1e75267c5424e00774114ec2051a571b2997661" - "89fad24e92f96e3d527736ea480367bdbdd0530e", - "014c757399be201e08afd8b4a671e7d3b6d7f8844498ab592e1bf69315347ce8" - "2dbd785d45922660d4d0d27fa2b0ac62e707fcec", - "0098f0773d3efe9c290a992eca05875d3463f0736b2dfef4affd9ff00f96ade5" - "3399917dea074c798fc535738f0c5689a2447f86", - "018f55b81f15f862aed042f37433050ac61718c9939d432b2a20e12d647f9975" - "3b8dd5127cf8963247fe7e1d5ade1442229bc646" }, - { NID_sect409k1, - "00ecf7064f528fadae380cb382984811047a0d7dd9a8de8e76f8178aa60069e7" - "7a948acfa74d2c77a76851659a98197054da8d44", - "00b98e13497f776072711c42c18dbfc8eb8c8523ff633af988a1f242ed3c3c56" - "5d18cf224f8751f2942e360ba16e0f5830952919", - "001b98015c0202ea16417971a37304250839bd6a6e5d83497f7f93f0f7472a21" - "fce4be5be776e90959dbc41a0e85ed225837e8d5", - "01fec09f94571614e7cd8e958ebcd7a2fcd8c248d408cdba359630545c313839" - "22774d3b24e20591d8b41e954e16654fe85cbaca", - "0031e0eb1dd1ce467a8b78d10d25b9de92cfdc2773831e6e28a152d02ae2a5a5" - "10994cc010462254441ea41121c0677fb4178bda", - "002b560d1949297dc7e1bbe8ce49a595762924afcf0271e9c493c18ad5cbfcea" - "5f3900c7b793ae5dd44f48884b0bc3b52c66e05a" }, - { NID_sect409k1, - "004e05c34dac44e6e1b08cdfae6357c20db7a544dc253dff1c23d4dba871b967" - "81b6a61638d73865dafe0a9443c3ec328857d23e", - "01226c427778bb224624cd215493d7a4f32a4f141979236409505d8cf58d81df" - "d3c793e59543a780314f3cd8ee17664dc2e4639e", - "00473bcecb137711e5e89763a40f77dbe2ea8c2509d209064e39cf905afaa901" - "085f8e795c9b8017c9a5d0a1b96812c124a3ffbf", - "01c8e9adc4816e6606ffff5e1a7d48a7854c35aaf055d31833f0cabde8bbc4d2" - "458e3cd3c82a4af80745f595b3ba12f8b5c0ce90", - "00fc43f193b5589aee62985735e3628374dd45a86a61baaf78c21fa6e787856e" - "a6b8b88316540571825865ce6b8578add5faa69f", - "000b43cb539bb4bb42f195ffdbcdeb482b69301c0155a840cd381f55c465a8e5" - "7ec51d6555871537b56bf84a1544cae2b2b8eb38" }, - { NID_sect409k1, - "016f6960fd2357d2f70b5f778be5e0aa71556b9d2f4cceb14f7812da858ab872" - "818b4610d41a8f66200b4343422227d9fddf712e", - "00aaf592a725e7738388896b9be9f78c1c3d6972b9f99034d02cc0f9776a9f6c" - "2f9b7d501f75be18599b088c4c5881c66146e5b9", - "0020dddd67134a418378baa0ddfc9111c0a2ed492b289569dd0061bf1226d235" - "bdaa5203d3efa2bd0141d2ace27c3ae8e6daf11f", - "0167d577b2a43cc1a7d88a6be883c28dbf48c3e1fbf21ad83e7a7e3d753fb0b6" - "d3f80cd1376fd98be260f494757cdc063256d5b2", - "015ed7003b7d2bd5e0359303660add090049039cf7df396989ea18c702f704c4" - "5cf6fde7ad072d31253d1d5295e9c5d1d5c62c3b", - "0113dd2cf8732ceb8a893e149f13d52026e5d829322d0f1233a624fd6b74d56e" - "7e6374d70942a25152ce5073831660333fb3e070" }, - { NID_sect409k1, - "00f549c47dc8e92fecd38b5750895880e449f1e31abe0bb1eacc84298f836108" - "e5a308ccb9578dcbd4be6177752eb231e78f011c", - "0093663ec3fcb54d676897bfc95db5e54ad6eea1ec7b46ca4bf3d2535839f101" - "cb3e6d5f11b6a36bf40363c31c9f88137862674f", - "00607a5a6532177b52f23492717dd0a7b2af98e04884f77075e4604410c5044a" - "08461ecf37c4efa3edc2cb667c84b86415936b70", - "000a5677ac6c00d2646054dbebfc536db0a9b351a2408a73e083ad62d182fb87" - "cb80322c539553ecdbc213ce84c66ddf8dc1d234", - "01327a0a3769240fda45f94bb07361c74aa8c8d119414a7b5666e25a3ab68819" - "75396325a77f541a1ba268012a82c5110d2a49e2", - "00c8e62ac25c11e86b98642e4ec7adde9d9436f9337369fb065abc9ea784f90b" - "8b8bebae35da92185486191dd9f49370b1148ce6" }, - { NID_sect409k1, - "00411e5d4c96e35de9b541da5fac691336462c882d8e8ce4d6eb7121417e7095" - "0c4d9502f64565d5a6cfa735c90eef83c7b861e2", - "0096b904e37ca1c2db59a54615627e1c3356160fe175284aadc3b2fa06ba0b30" - "aaa07c84e64e48652e5feb303595066e0f8468f7", - "0034da9a453711f04a0b1ea1b9af701e0dc3a55cdd585e43e3ecf41e934ecaf8" - "80ff1614dce5cc992a69addfc408dae1b09b8d05", - "01f7bff435547a89516d017d1bdac4cda36041a0d3dfd03258562b2e28f40cd6" - "4f6ae2b70457773f9675cffc40c021e4702b08d6", - "0013c59a72f0c83f5bb90a0bfee798952fb91ee329c98c4b5914f445ae7c8483" - "767052b5f529974621545ddcd6377f5e387d573c", - "012505746f1a40ef75f950595211ce04f87f1daffffdf8c12600a9e2994c8c1d" - "8b19c0e0559adf9a94762cb983569de6d0d8baca" }, - { NID_sect409k1, - "000fa8243f000a3398808a1f88ffc5a342968fee5c7b26a9e1ffa26efa885e74" - "e1c562027d95db08cc15bd25a3fc11ab4dc13ca2", - "00fed687c7197ff1aeb980e72a3a7c318142052c2389b0866db3b87e5c8025e7" - "9bb4f4f996fa6352ab9cb20172ef78d6ffca906f", - "003141afbba8b4d9f0cbe8297f365873196739465e3e20a89af9fdf8b01d195a" - "a1052e6176b5fad856136b6b320eebfc08c1cd01", - "01805ffc576e8a45f06297b2335d03abc8adfd15ad37e76d80d3b4180d5f72ef" - "c90f3f2b036acd817f40fd49064aa25ea383c82e", - "01f22da6b50ac5628943f05b141493cacc0f02bcdf3bffdb43582343b6861576" - "1a180bd7d1ab1ddc15f5374a8f665d13b4b91272", - "019a71ab576546e2351aa92b6075e8229813e6a2cb3647147b192b4597f12172" - "23e7197d846c0d65ea0d4aa4c503bd000ba312ba" }, - { NID_sect409k1, - "00be7d58043263ab2f42252d41b582d862c2b243ce18576081bd6edd2f63f016" - "4f365cae67268d227f3944677e1c146af864b8ae", - "01a4bcbc6416d86597a148ca4d610ee656a00026ce6047bd9fbd40d89530196a" - "4693ae595d69956503b9d2ab4aabe7c958a14c69", - "004e517796cac9d7c75316eb5e68963fe6324781fab986e940200e711ddbf988" - "2d99a620a976352e2496748cfb61dccbf6d659cc", - "0056a452fb1d558079c3e91bf22f86884ca89788806fe7d6d6ca40b5485079d7" - "7dc43e466a71259792c65ff6ab7204066c0e67a8", - "01f29b723d9f7d4de6ccc2f9708079c5d30ae5d960e62a7c4f6dc98bfc95b4f5" - "31f197c39486705432594203c25147156dfd5b5c", - "014f4b7ea93c9dd846d2228c2b6a8dfe616057232b7af845a570cb6cacf9feef" - "2d8ef4fafb285b38e63cce0a09b4d82dbe43a390" }, - { NID_sect409k1, - "011fea58d9e36cf8ed4ef3b42f77ccea93bf542ac92141dc2c094061985f3df7" - "86d192a57bee072550b302583f0f9428301b1b76", - "01b3dcc1b8a3545264427386329eb81fe992654040694781c0d8b27c1e49442b" - "99bab93ef9666fea14d4843ee4bc5b045ac50c11", - "001c80b64d51e8025699e7be2c4b983cfa4b7e91b112e2eca5f9d0cb7e3d4f85" - "aff7b33a921eaa124cb7002eab62973d65e16bc9", - "01fd0e4eafb26c08c9f8e747d4991f468c76b4864166e37642b583db285a4bc4" - "c33979917d9129a91cb0a75c1aee7cd4fbab73ce", - "00468efabcf448fcce821f3de81e994d79a7d99ea989ac81fa135f7ac88b154c" - "767909c681f7e48c00b2e66bbaeb8f8688f44672", - "001fe2ed30ad4143c5eeb0b7622e6aa49e4e4d51c1ddc467b3fc54215dae931b" - "e0b6b6443e716895acb6570cdc21fcbdae46e5d6" }, - { NID_sect409k1, - "00ca809340bd13354b6071d073e65b9b0d2bac82e22abfcac7e70afd9d224852" - "f0e212976e5ec823eb8950e02bc759ecf56f79a8", - "0031281e8976401aab58fa8eaf8636feb013170bcab5781be0a28d27339e9470" - "e166c7f685f2ea9143310dca1b3ab8e1c8e60592", - "0043c96c32cf648b036112421adbaa925cd54175abad39e5681bfc9eb4b1b649" - "aec1c876ec1ec4610f1b3b06514a48e6ea7a4a25", - "00de181e81b9e7776d474694a2d124d0b876d9548f20ee3386304945d9131f90" - "457d9b938df098b035bedaaf80ed6d979404fc70", - "0181a3516dbea9da97d6ececdb10f96d54469d273ab366e89a40fdcedcf1bda8" - "37d5c14bd10c0b6a2a9c8a47810125c764dd35ef", - "01610efb48fd22261921f7484ed6382fceb6bdf28f3bc2340a175b7971b93ed5" - "ff357ed55e5307bbf42e40a5b3fabdaed0ce19a2" }, - { NID_sect409k1, - "0074795b0a9ca070491fb54a3bc249981defbec037e4040f76656428b1538b97" - "8503f81f80ad9ef97c5e127ba51ec040584b9a20", - "003ece27f3daefe7bdffdfa727b2af95af8591af946cddfe37e85643b8d179ca" - "8b9529106f9c5f3a95a8819225f9d7d4a730fd22", - "003636854b8ee0254bb2d0ebedc720b66b20129a21f1a4fe39118cfdd4d137db" - "e5e570ebe2c48a7f9ac21cff3e5adf47434697db", - "01efc0cd1a86ce7544f25f44e63a0913c11fd6b08bc09ad8cd82f3af7e32a7a7" - "ecacd56e25526589313879d4a7fd4382d4114e4a", - "005a34ef7403599c2f83f3e83299524893f2418ff95d6c2fdc0a3db970e62fdd" - "cf4cda182aa78b54fd8c2e818fb1ee2dd2776763", - "008d990982aac8d5371b867de21e09064fef30e73321337dc24f19ad5ddb6c4a" - "d217136b7c61e360a73fa7571d526c8f514a06d4" }, - { NID_sect409k1, - "011eb64ed4249e1195b2d1307a35a514d66d29ba6f9044f9c02b4b2d3cb3e3d4" - "c0cdc5489cddfb96226c9ce3e36fb8ff2eef208c", - "0099880b0d0d43c5c579ad77ddae68f2c917f4b062ea8d777b9cdf465cbb5910" - "7e70992714e8cbfac76296d5ede99c48d38a8973", - "004998a062a32170bb358954d2c2496da886200827fa13566836ae26e38d5192" - "6ca3d202589f7bfa27ea22d399973db6f9fde9f4", - "00f71590b04290b5f3cd9ba0e394a3be5a1514f45e53497f6cdedbf839728e02" - "88135d769e4b28932c875823fe256e891997c476", - "009d16ba726a5a9e09103bc94a09d8079ac8edf23410c8469f79f55f3355cfb3" - "ad703624ec6d75eceae3881da20903c71de1f5ac", - "0155dc98729c8c1bc65eb8a3ec09135f46bfa313bf56aa3169e312db8991abda" - "338f8ac7a75bce42884068efb7e6e625939d2b88" }, - { NID_sect409k1, - "00a15e96a776eadb8f8a0b61360335cb5017d7d97116489341e995157f1adf17" - "8e5628bad3e830bee54433119164886db5c34654", - "00551ca5605e4ae0534534a0ab343d039a3ba7a1cce832c4d65e26bae7ab8e5f" - "9c74b3d421a528e559778ab27b59aae1a916d4eb", - "005a3f805fe3c3266feb3e0bb7da6761bb117618bc57af357b53f199e6e4cbc1" - "281975321403ea6de618ec32e86b8ca1e10d7c43", - "01ae460e1248504d33d67ed750f1d618e53728d55e390dfc18d94b56dbb3d3c0" - "bdc96c92ca1eca9f44fb8a58cf36dcfcc0588cbe", - "00f7011fc321ef6258dcfc1fdc2c0a4e54c86ec939bc9ceca6c291750c1ff540" - "b34a418793842a2c5cab6061dbbe9b5be3fa6115", - "0109e85c684d027a625ec5e6df952e2f20a14ed5b092d1b1b38435251303844d" - "230fffc53d84b923555e1e1cbebe20b5d68c3bc6" }, - { NID_sect409k1, - "016427e72bc57d26a910a6722eac2c78fba8abffccbc11a9f8377bfe213ed9ad" - "64bde2ae8687f8ff1dfdb29b5dcecd02269828c2", - "00ad4f9abc21da0d31f19659cd3b0c185581436ac08b15c0b48a7ac39eed03e0" - "ee97e164cfaa5abc774412cbfff94a9ea2a9636a", - "0055901e9b6586b7f3372660ebcfe90249900c902d7c632a8d17fae21d3fde30" - "37325b5775eac5a174a1ee2b3ff2bc5ce69d8cc1", - "00ba952233531b6a6c7ade6f338d24fc65777b5d305297e66d32cb1bc506c5bc" - "a2287d3acd33fe19653d6c88a06eca3712ce9caa", - "00716beb14f02233630f34603e309bf6e2572f0b791dfa4c582af6a37abcdd64" - "e8d785a95ddff59bbc6fbe1b7fc735725efcf0ba", - "01ae814e02c4684c21dd7e58a65ec51ec68c37e59e299ce65608186c0acce08e" - "41c8320b1941a611fe66b1921b558d7f402d0eb0" }, - { NID_sect409k1, - "012e89dccdf975851accf0294cf4bde1259c907a6d3acef69f1939b558c4d211" - "522e4eaac613e3ac8491c93deb6d344a9f87acbe", - "01a52608ead09d2db123a0dc782ab20ddb793d5bb70ac95c58e62146beb62bb6" - "68fd57f92038e4585cde1f91ee8c52526afeb1b5", - "00044ae43bd247e75afa7bd8dc28e75bdb9ddd99df56668c831454dc28f3e9a4" - "4ecfd47ba8420a286f1ef372fd29b365df9b82f1", - "00202694f378d70965d42828ad5f37137bf8b63cec2c0d158e5ba94cab1f8e61" - "e5a300986ba349b3adf3efc05e65670af88cd3d6", - "00baf0da4aedb972f88a215dfbff64e4290fadc25da3f0d83f35e65bc4177d30" - "25d71d8eeb9c41470f3c719e00ef1fb7552e6a89", - "0140e7db3f6415d884822ccc7316a329dfed177b76c0117abd722feca889bee4" - "e14e65d26c6cc935c0e94205f05fc1a7abfb0348" }, - { NID_sect409k1, - "00aba93ae1d1552880b31f503fc4be9f91d10247f14c816015ffb2bad29ab818" - "0e7b50a27144e01c21e63c3dafcd251308bac768", - "00e4ab66e514bd02abeae1c7123788a692584ddb4a909a217fb35de66588233d" - "adef7036ff9d9f24eba3772e2fa3037bbae63cfe", - "0056d73730753ada70fd801c749c2f1f1a61ef5bd6ecb796a9e15efe9bbe6158" - "f669542787350f4d643bda6f3e8c6423b817b530", - "0025a06b71a0ae252f2f905221983ebfce21ad96121a5c0dcc5ef0d0fec301ec" - "77ef4b915818fedcda7f3fd733c7f9e529079cb6", - "00026890d5303b619c7f81f60fb82b26b0b98d8f24c45cab41a44eeb3a3a3129" - "44e889b4035e04360b305043e30d0cb9041a89de", - "002ec4deac3e83d60ad39969f2f93b49f31875831ecd51ea5c37ca48de081c0c" - "8cc660edc53a222f3043447f9cb752763be7494a" }, - { NID_sect409k1, - "00aa4eb898443cce3ed2c072d858775ac221c24e33eca6f31579663544bb33a4" - "a068a86d13f167b65304c5f7f25f895f65b2f428", - "0083cded30211b66f1adf17318b6de50d7724c0584995e068b724703ae08ed71" - "a32b334987a7b31d6c2637152917327d37accd33", - "0062b026d49720660cf6a4f569be98dfa108c8eba08234ae9a87f3c88b6c6593" - "4b996815322a16f9aabed13317bf7725bea5808e", - "000f52925394cb52bc330e06390c0c0a2e10ed9797149fbcc88d80fbcaec173e" - "24a05daef98401d5e47f3b765bedbb8246312856", - "013d99c1710805d5fc7db7259ac9e134b411d00d73fb0762e3d211cdc56bf7f7" - "14512d04a630c8732551ee734287476cf511e836", - "01c9cc05d19f96c4d233039cfbc43ab68d657bb507f46a353091fe98fc0f422a" - "8e7593c195d326977a2be6bbd2cb44eb1fe81650" }, - { NID_sect571k1, - "03106a5c1d923a0990ea8c6008c36c366b53e5622b98464044741fbc7840284d" - "b8bbf602866c30ccbf5f9b7e59cc1d9bfcc5b970fa624da9b15f6cb336f5dda7" - "e6b9924d5dce4543", - "005c5c7bbd5a789ac4c6283deb0d0d37c4852baa57d6bc2b0ac6337feb09704c" - "44d1b385b70cc394fa235d83e6e7111787e57d0902c0cb132a190a6e62f39851" - "1c0c2c4cd50d4570", - "0173cd1631e18ece01b73b3572ffaa7495c4bc81f4078ae50d69cb1e338acf13" - "469117112921166ddf2d29f3a9f8e10c67e88c9a99203a834565be76ac591264" - "36739a6afa029cc5", - "03fbfbbcfba609157f68a23126d805f7c75efb19befb595e3a975e08ff46bd34" - "c8b87b9645c0e86ea0ad915465d5c856c69bb9b722b0d17bf97ad95c4602dea1" - "7c6b512054cb22d8", - "071c16df71e1b71b4bd3d9938827d3959093b9db1ff86bed73944a42dcb67cc3" - "3102e28c1d0e9804a6450656f4bf33ad72ecf7bb83bd282cde4bc15d4e48064a" - "a8ad2f02979f5f3f", - "003198a6b5d6cce847e24348a6a6ceff7a89ed3794d7acedc4e858c80ad04a74" - "dbc02c7038e05ab26b2a299ec92ee0d2c7e66a81872a5157fbc5d4d37ad598d6" - "ddee995ed28a2d74" }, - { NID_sect571k1, - "0211223c4b729b206be01f8085a997e1dde5cdb27c048925a27369bcca6a3e2f" - "bfc65637f1eceb133be749679a17b1ce58821f46bd1844a89cf0042c8043cb10" - "5e01a3fc948d2663", - "02b1ec2e6e2c2375b464b0a502c5053b5b348bd08178c72c603105d0468196a4" - "695dc267d6e109f1b1274453b6eff14ddf3783969e8825648debc216afff9258" - "f644d77ecd9911cf", - "00937edb3aa29563d2248591c9fb448985095f913a7458315593cfce87e68fb0" - "f1a525b7310a101176e34d45c1004538954e2044543817cab0d563df6cb0d5e8" - "617bbba150e755e1", - "02363cc5624b06df1956befa597d4c757cc2b1001a3e1544d24408290f694877" - "455ba92e56088462f0ffacbd393cf835b56b7046a15d4b724dc6c3573cb156c0" - "df298aa8b1255cb8", - "0409f773b98d5edc2734d835953281b82ac0e15d902d887a7c6ba75629a37671" - "b101d18ddfdc4193d98b18551414c49173004530f7976d27c273a73ddbb898fc" - "b5fade9c0bb7883f", - "00577147459262e5ad42f222827f20ed574b2118924205bcdbd339ce20cfb085" - "d072fd70f4ca1f5768fafaeb5710f7ccbea4fc2ae5377b0cff20a889a2201739" - "139bf788a9bf2d7d" }, - { NID_sect571k1, - "004d48be599ebb1ed602472d7a87f4cd2080f44ec28855fecc3a9cdde2555178" - "7abd27cc1da7e77817e94c9c0289c005a0e36e3bcfb0d381e8cc9684b6f7dd05" - "177f16f63f8721ca", - "062cf71af0a2f8e35c4d7f9312bd34a846a380f63f0dc7294c18877103357e20" - "d1f0eeff312a993deb2a1ecfc80aea06a5b71e4f8b9cefaebcd32626919064f8" - "8af416d86e3e7af3", - "0034099b0773f021ee0d3dd185c704b5158a94328daa09768fad5804df1da2fc" - "067190cf1028c30237bf2a48da13abae35a25c3e6387d3993f9b568305b8bf08" - "18ff527dd8205df4", - "0674dcc4f755c44fdabdc078488107bb64a460ba932c7e185484ccd27fa87003" - "1107e9955204b0630b9b4d3608d9aa931d7c766cc2e45878eb6d8cd96bdf711b" - "2fe8b47b8d233ed5", - "05d96be6b7e2ba74c8032af19ca2f2b39d2fd4e8c89b156b6b25c2ea4f71f74a" - "02ca7da2a463acd7605d5350fd16a9c9052534e7e81d648e4060a2b01c459c26" - "0cb6567da1fc5314", - "014662b261d0bc2168642bfa4f80c4b3fe8176f604ad3703f443ec7aaa3dcf3c" - "5465b869a8fcea60b8f55ce7118806c5d28a04848bd961db0061209b59bc0297" - "9acce9324d7c0c31" }, - { NID_sect571k1, - "06bf252e62c9969171a9717671da0f7032e9520a497ec831f4dc776ac87e0194" - "af99546c41d08048ea06da9235cf1369c3ea53e6b8cbb7a7fd4296354548d44e" - "df463f77ad341b02", - "0294d5f7e736dcd8990198e4e0f0b398b8ac6a87764af601596234a2e162c9c6" - "67e47eb3d987efbaeb03b5e3699a38ef953c74fb28fd7d8a4ec5a36319ccc44a" - "19aa88201ddacbf8", - "001547438df76fcb5e2ae6925845bbfb03b4fbe8255616ec7fbd97b48f112692" - "219f4f1275e6d2453d5bcf3bac4106f0161b8119f487d88b5f8c8e08b3aa17b8" - "3fe01102d76392d3", - "0427e2dc11ee5223bd9c3d9418c79114682f91dda06e7d88c339a7e56e0dfb63" - "6b6e63fde8a381146ecb705ca202d2b73df408451763c5166066a97ff4e4f32f" - "0b4cc942344b0b2d", - "0760c8a388e2eea27ef6838c7d45052e38cbee2096cbe89f774774134076658d" - "f90c62c7dc0e3fde995d7a99090993009ab6c535677dbdb376f183eb5092d2cb" - "6a8837b6bea35dcd", - "051ec4db0622b7b1c798366453c70f959376ea3942aed2e931ff62a4019eb12b" - "a5ff119214c8bfd8bdb66e62b562400f2d3d48a84b1b3baad3667f735ad4d0f1" - "83bdb91aaedcf1f1" }, - { NID_sect571k1, - "05701e63b01c16c4eb19938265ba134cac7316278e2f1eb40a04775448bded97" - "e7a37d01fed8a4e0b43ff4dba21a47759ccd45bf9671dd22eec65b4aff8b8db8" - "9dfe3e490c0ac9d6", - "02dd97b6415aee2b01cfeb3cd2a03578abfed9ca87be9a26d899595a87bcbd97" - "2748fa6a0be4eb557e69c6d28e2bba1580dc74e2751d7ccd918c46b4be6875a4" - "e4c290d959c23c12", - "00c7b4252ca9b192c5feaa9a210fd84e2e48320271f10f67ea9eb30b0de8086d" - "59dae04259fd12b086d890e22d45d27d7c8455dcf7ada796e35e3a3138342cc7" - "36bc3ed3781c4119", - "0325623838e8b18d81b68060734254eb02b8ebb2264556fc9850c36d3035449a" - "a764f351dbaf7bbca9b9adb11f27cc88a1ac6fb71aa10ef8d0d09392b0ca7eaa" - "7a5cc14078cc18bb", - "0098fc7656d9de3a51923dba290ecbe413ef8d951f24e9248cb552309f97127f" - "b9429ecf6dd07b6de894e16ab60e33b4ee73024ccbe866de5e17f1b478dc7727" - "a1bb42371820b12d", - "05b355eb5c47d8027b6c5301d2463b99c636db207792e2975ab1a53c1cbb1312" - "80288432a79a3b47271d6a2bd777298baf8a675f66be9dc72c3588d299df8b52" - "e7840322b43c2071" }, - { NID_sect571k1, - "032fa1816fd2317c16b5b19a25d46fa5e45ab15ee9f2b1d1274c2a06023994db" - "309fad56f60b3ce57f32dfc7d045a84b7d805232be34c7e759514c30a25207ba" - "800215b2060f04c2", - "041469593d5748072b9ac8fde023095289bcdf65ab1bfc0856f83e9ae06c8973" - "03bd16f5e45823d65fec8310fd4332b65cff47a799af4f7c8638e2d7f85948c4" - "3f10534c980ccb62", - "0066cc51980d3851b488c2c181496c83505fb957b1ec4a84df1e105e30d002bc" - "b978b6d0bdc3b7644ed3dfbc33ca6bfe4362cd8cc541740b0de8cf2edcce4592" - "e34fa11ac26ec922", - "0771fa29e5930d6dfd36d3a9e7159675fd23d0b5e1fd9ae6454aca9e8127f1e7" - "e3f5322b5c16b095573b3266d08f0dc33043ffb3d7b08e4e052ed3f0349a3290" - "25ea6ff3e1668547", - "022f994f9974692dbb6e58cc7ae5f90652ee231e0a3961569dc646d114522a37" - "77410c1b352d668079f80010bb540e4c28408665810fe61fd60e70d30c688eab" - "8fde04364dee5c9b", - "052bd78bf1326c6d91840a351d4874d36b147139882356c595b8607f99987730" - "92a99adf70adeed19e122d4d2fec16285f000161145135d96355cba039a96335" - "e7716724c249f88b" }, - { NID_sect571k1, - "03e63dd4c98c151361c9902b763ae32f2d6de75953fa3d6838c1d613d448fca7" - "3bf302d30212a96d32b9549e17c5cf395c565191f6a22dac4da7c1e1a9d9bae8" - "6ebfb72c82ea199a", - "041609ab9c12c15e5127005ebeff6fd1f73b6912ed070af87f5ffc21df903dde" - "1d715582dd2f699040200045cdba9ecd758ac4d084d4c8d78219f6fad94d341a" - "d77daccdabb54a2b", - "01990d15fa2cc90e783d432201784bab56b6d29d1f2665a76cd013eb96f6300e" - "d8f762b78a5596ac7e8c1e76167f107c20443b1ac732101e9f0aca12551a536d" - "152df2b3db0f20de", - "076c3d72f0e715f2491bc9d99278a8ef3c390b3a96e9997b37e5b7bd8a5f07af" - "68f8e0ee3892b63ff112a73a849f0e84a782d4fb426eb5f2f15adacce9e5476a" - "6daccf3a7fa9a291", - "0540a763823599e0c86027bacc8cbb30e3a2467276fc4f7e5fd4ed385dfc6f88" - "3fed7bca69df21a0668b55ebd292da8fd6356a3ec5cd1c762c01473aa067004c" - "acedad564fe06910", - "0226c28e5a6bc735935f9df2c1b02d096d4dee41ffb95a67905aab8de1b2d8c6" - "6e2bb471293091438d3f05df7e48003e58a958b72f839f7f2e2c54287fa3cadc" - "d41a2542ae4ec03a" }, - { NID_sect571k1, - "06f91a7ce11ba9bf2de1fe070f9dc843bb717c306d9c63b5078d2a11323f20c9" - "c0d7b7743d311ddacdcf5dd00f498b199672c78ae25e6864d62bdc16935d6fb8" - "dad2082d3676ebf3", - "04593c5bad12c3d655c6611c7ca9711f9e32a28fee54b3b8243962a3c55d41f2" - "c185e4c58b7a2998e978021b95b724635daccbd7fc30d20720797bc291362c55" - "b024acb2bdcf3d59", - "002b0937e731f59ddddf0e94fba92bb1a6ceb819e7659bcf6edd4b4af49c2ef2" - "5c5b6039256f928363e18404b1653d3998054c2c25a3f83a0c5548a139e3e6a1" - "80756746cd34ee29", - "0270c4c00de2709010c7cf047a0ce69b87f41dca48d35b71fba4b258886d73ae" - "42defb8653951c1bd3eb4ce0e6175a946c67afa67753475c51fd525b0fd9f5a2" - "6dafca319faa5e15", - "06680bbdc281505f5d3fbe29744a999e07ff612576993f6f8be3113db1ee6cf2" - "3799867bbc80a140376a9b6327451f98bf8fd1db46f9d9cc05e88704d5712d45" - "67e1df40d39e99ef", - "051a3deb052d3e99bb6ab6c6b284db2c998e9bee543e02e57f1b13fe9fafbfe5" - "3a89658c58eb947dbd178aea2f6cb28e305c9867bd65bb26f71793f90c984ca1" - "1113e1a8dbc8f7d1" }, - { NID_sect571k1, - "05ab2a7f10ac89f98c409580abc11ad90c93360e6ab282920b59d316ca9f2b23" - "aeb50876cb1bcbe8ee9ae6b5533fdcd11ad4f86d8918d66389da87c98bf1d632" - "3bd0947d8099083b", - "0689e1947276791dcb9527183e32a08072b7e03dcad175fe3cfd7beefc848dce" - "f483380c6005411385c7027c9a52b60a6e537a875380d25bc47c7bf2364dd68a" - "66f21d0f57866a42", - "01cd41cff762402a834e7e0ab908fc54940f697b50022a4dfed8cf0b13d7e0ee" - "523fbf33ee9693895f918d94e15b084655d61b2294ca51c4123fe5e0868e9d0d" - "1cac2138f0577a17", - "0610797bbc6d9131180ae54ab66e6780849258369741470e076cf05e0785bb4e" - "7900b908d38d8dab3b9427b952add20efb758cff80aeb641c4dde1eeda5509f3" - "86d5658559609cef", - "068d2515f425a0e3037547342f1b6ff931763f5052e536ea4f78377b5c941459" - "c8c2201482afcf3cda7390e9e5d319451864ca03683541ab2cd77a9d88fd7a61" - "0ca845ee5cd3d498", - "00697c751ddbca7034fb4d3fc1b2618daf78cdae464e8332d1215020c8f896f4" - "864c7a6f2c61a363f730f58fd3bdb4f78a90b40aeb83b4fbc1d8d37cf6a27a6f" - "722c68a82979fa16" }, - { NID_sect571k1, - "0034091c3ac6fc5299df18f162eaf7a207fc1543aa498e7272e15a92772f5777" - "2229069456e219c9c2872bd53783b0fb1345f5e84674c4344129a314146b7030" - "fc75197a20c588aa", - "049e3a3f5ee65875e1401089970638b807df97568a5995c8fe2f502473b83f58" - "c556c5f214ed6f03ef8ece01401a2134bc041f66922fcc4e3938e0c6d302eb42" - "200678a97139f291", - "019dff0d72a8b042c4e92f1dae7407bf4a106cda564db7508e5a76b03130c91d" - "5e5cbcf2f578c2e9dee43849f911d7773d4c267e282c277b731f88a6ef0eeddd" - "520f57e743ebf965", - "05bb60a5fe8e3b173cf8413eaf413a3286a5a7aa378f21446c61057696012746" - "d02d10a831f785c9c96561ffc6ad4f9ecdf4937fffd8e698408e660fe896f7ed" - "44af6b3b42ea849f", - "037e3a35e48aa66bd851c59f851d4a1ff334e0e589dac30986acd06d6eb8ce23" - "6f2a9688f278a14dcfe0660b5fa0e97ecfcebbf5b40d3d3f5150a5545acba623" - "9c00419ac72dc2cc", - "0322517da30e010aeaa2ec9bad2745d8e67f906294ecd6b1d16808be3837f790" - "70d0e1bbbd617f4b8b031d3b51ea2acc59de408a130138c78571f8800fa907ca" - "f550d23323d1c818" }, - { NID_sect571k1, - "057b7c65bc51e87bdad37c2b4dae67fb008ce71fd3072e41b77c562d7c417488" - "72a20bef8517ba4be89637dde98e2ba1b3b01f63940713e2823d8dab68a5cc78" - "561de14085e4cf87", - "00ba77430a5560089dfac4f68b4f34937a384dd607bcbb5fab5677a7fae09ed0" - "7cfade399e87ce9fdd9397c681aa3378ce3bc82b007f6de4f7cb96dadf55a4c8" - "734a37f39a5c2f25", - "01e1416d429926cabea547bb2776710a52f7130393081020312b3962195eb6ed" - "17c6d436bc46a5b47a7aaacf8f8117fea3cafa16665cc1845b0ec94faf687579" - "b1c116ba183e825f", - "065660a58688a16588a9c16b8272040a30afe3150630676023fe165686dfbda6" - "4fc85995ddc18c9c5b029bffbd4dffa8f62989c639a68623eca78009cb088ee1" - "cb42c4855b79d302", - "0492c3867f137bf2787a7ab0568d3079b8d9a1e0b0ba5d29d0c7ba616d0bb277" - "25da2ca6bc67bf084fab52599ed42b0ef48743423cbc6f4135692c309ae2630c" - "c4a5390be93f274b", - "000911ec1cf82a22c849b401dfe56453a06f4af32644ea8b63135b68a979236d" - "05968eeadca7f0cd339d295cc58967a7f38cfad6e947a71295733e42ca3c1ba9" - "b4ff6195607bb530" }, - { NID_sect571k1, - "06fa7477edec5f1e742881f8d7b2af56375113e992b797fd387eb5b53c33c6ba" - "7236417b2c7e6e346267f1b8c6d7857d6e08f9a60e86de23da4b368424fb003f" - "96b4c89f5d244a74", - "073e1fedf62e8c81283622b53eb2cdb27b64c3c1dd78da0c90dd6c3c776ad146" - "302e43aba541379bc8f3bddc2e19ff15d96664ce2d09eb6fb5b13848a82b31b4" - "52d8e84da3b85318", - "0196363eef1a0e5be97d8f7601fe40ff4010f4949f016908a906ed5cdaf1221d" - "3a593b3a4676beafd1fa14bc0f7c533b17086f207f9c484cfc2fbc3db2be4123" - "a8e86f3b4911cce3", - "01b12e38914ee0075a888d6d61cdc7570c511d90a9e3a0e2738c3a9981ab9aba" - "9a6c61460bad079a28429a5207d2c801af2fdceda366440a11686765e9ba77f7" - "a6bc55012d4c9510", - "070ede5877665fd636adcfd07220d745ed7ac0a9b0202159f450c9f6c1b83719" - "2a69ee6ad955327eb9cd326a0588b59723db4e8fd258b11db888a53eb14f2be0" - "8512688329059892", - "0724c979affb3ab8d307529759bae5fa67319d441851e5817fef014350e3014e" - "068428c9dac395c5e7b9e5b8877457b3e4625ef49ede4ae3626755eefc3fb3cf" - "09c23e8a5a9f8c25" }, - { NID_sect571k1, - "018bb6cbfcbfbaed468564b368f0b0abc3fbca47dcc19f2c846bfa287370e1b9" - "12f6b70e08519f577f0cac325b79fd66b6b23aa1e2ae262bcd2e7a8b2c2d98d9" - "ed77a54c7295f98d", - "05be9bbd91772bb42266aba9c893e56670cfb66cafbe4401ca2cb5765b469504" - "848597c7f446e99814746787158a83ebf8e3796857363a8e04f8742a09d7eca1" - "6386d60fd7c858df", - "00a19a0edf508347f4402cecbce127dc6410b1967d3f89e6b3ba08b48aad08cd" - "6ca5e5d1228cdcc41a1c380f2ae9052d73db7550e7a3c1d857056c98947f5b2c" - "71c33c4eebc1210c", - "0629f70558308708e6929b1ad0fe3128a8af7f96591b47cb8ea2c3454120a6d3" - "93ed989d13231c661966a378b967efa64d3c0938e9c0b8b16c99d7349bdd59e2" - "d44804f8fee1fb47", - "06a5e50fd5024d8953e32242823250e998ca602b52599405129735a874e833b3" - "bd73d7a9dc53adea092ba8d24207f5ea5657a29919b88a6d63fd0a943b56dde4" - "c8478481b57723e4", - "005a526588a3a2ce08b20925e83987eb0a1e68f997102df7f9af83823ac8e06a" - "bbd29c04cb1f974ba9c9ac49b48b5af37679a39b532d359cdec3d41b3f80a1ee" - "12c80276256b738d" }, - { NID_sect571k1, - "032184b6863e2cb5bc71baff5b6b57a10594831cc11a9e5eedec4804e2016e3d" - "d064cffd12a1eea0f6932911ded345ace5c1ff250b9648d93b953386dae9b562" - "8c3c62527b890519", - "07f783e0341a871e6256da349ebb539f88767d7dac1511e3c3e4d43b0fd31d5d" - "d2c2f0f176eac544a871f42b983f8fba4df67ab6a239b7df997226304b73165d" - "962f4e1d2d18de9f", - "004cac3fcc00734442cdd80eaf824412c20ea9eeb03d43b999d49de618736020" - "20a2b3c47965f6f453b91b7a2c1d93e13a89544533e35a122cfc8612c8690b69" - "bb7a557875f960b2", - "03e211c3b4986927c4388d1680cb4770dee6c78266724582c66ccc50c6cb2823" - "9474d521facc7206af6bb29cced733edbbc0d20b9264ce63d9437188e3d31c0e" - "0bc3e9f9d88429e4", - "037a7c59012a82d59cc1e2f0fd4fd751e5737acb77f2a0799e0af38996ab5e11" - "090a6396cc480e6f2aabd8fad44611691e5822115fd49d2a000c9b49d1f4964e" - "24d43fbb81fa879f", - "049db68dc9fb4cfbad8247ca4fe7c573c0640abead8f319194d665ecaf4f04b6" - "1f84f5df0d8a6386f6df04ca1a685a7394567eba5deb9f739b1e623ed6507021" - "593f0e22e2dfc3f6" }, - { NID_sect571k1, - "071e167e59e2a709ebf4be3d83fb9dc69ed749e3ab8a54e202c35f8d45deaa2b" - "da86c2afa1b0a04754d18898fcdd9b185f1d8ba2e180a47ac291bb4aad8f997f" - "73b1423bcd7e9b92", - "057119085bc7cb2023d23f88101420f9f508f0db94f8dfbedd5cbe88cec80a9d" - "c708df6cccdf815d75b146280d7cd2eb97cf1a7dd550be523824f932a777679f" - "2ee9f66d4258dda6", - "00d514144d4548bcfcbcf57009f7e8ee104b15456f491826bdfd9ba67e871fdb" - "d8fc8490ecbcb269091fc7529e5e55713a81de20c0ed01ecb3159ae61424bdbc" - "5653732587d1e94f", - "03ee5f877b737dae40baf91e0cc581dfe8d291f8c451d5bfc0b690df7025875d" - "9569d52021b3b6890e01a2ba95899e2928a902cd5dc8143c07ea26749a9c9406" - "8b5c34c596b0943e", - "058e1ba516a818cae9b37086287e088083e2b421fef0b59ba816ab031375d09d" - "7af7d57866744687be3bb41ce2276d3a38f97bbb9fb59f24a92f0085b04ee5ed" - "1ac0efa671394f73", - "0343c45daab4f91e02ef9bd6e1cd157b00ab0ab0a3e0d9734918a1d896cdf7cc" - "1212bf74d7bb9bf96bd4abf42df325756c407217f44a5950c2b66af820692742" - "ed7ebe14e48d2d88" }, - { NID_sect571k1, - "074f1a7b5cfb0eeef1e15e63512c73188dafbe88e8e9c42073b2b652b9f02821" - "4f0bec79142d8889416abf7a83e29f479e7bc3ca657ef0a10c2ea3ade3117c0d" - "369dacc2339d1c12", - "00e8992a54076753029f2c0e9d8c166e6ba84896a4785ffff598c4823e5461ff" - "005490bb7fb6d878ac34f427fd9db48cbdf12eb9826d68fd2cf171d4d61c3f27" - "5d44947d4df4c752", - "00ccc6dca5a985583ce00812c3d07822f6341c79d78c16b2e7ae4bbf5bffac1a" - "cd9deab678193f8f89b0e2aae52e30311444dd11253f96d62db3abfb17e423f0" - "ddf0e991081154c3", - "03826215343cfd4ad968d572bab2dee2279f9e8effa0ff80b0df5dd2ea822b50" - "2274e507c87d2429dd8bbdba6eb8ab433b1ee1cad3a97c7d244194fd9a43f3e1" - "ff33144e2db80864", - "070f4508ae391ce24154b38873af0082d95895ac92fd1aa321ba93beef404a63" - "f7b1afa1feec997885523a6688ada94dd45eb32ca7f1bb87e63c4de97493196c" - "3b53cf83d218dc37", - "04a565cb3e15236a7f6c413afeb419c082427b10a6d07ff87e81740716433c06" - "b3254414381e4ff9860340dd6201ab6621d162cd12047a5515ab1d65f20c97eb" - "3d7132642f8ad58a" }, - { NID_sect571k1, - "004b54b3cefd415f5eaaca4ae4e5dacfbce20cba1932a2f50549bcd31630017a" - "d21475df154ff37be13ca61a4c60336b33d0ffc762aa9e9e9fc6e6fd17250b5e" - "4022b55141d23fbf", - "056f7c8d65c568de95bd1664fff71429ec738987697f217de5adf36d14a80b6f" - "e585e4685e03c81838abedfdc05a1e01407af4ab989fc1d1273ba8a182c46185" - "6d5effe705d7dfe5", - "01886213658bd17e7dc334dd8003926a447c34a197ee5d6d0bbc46e85ec1cfa6" - "802858d1c367276ca572ba27aa7a5d1e216902416b48af6e4277945e465d7d84" - "0dff1438543caa46", - "047f6cc42107c40c168dc679a864f969b53f756257113b7502796efa54cdcce7" - "04b9344ee4bf964752d68910262bd26ab6b347084404b28306ca3425f29894ce" - "6fd4293c5973522f", - "060cfdb5467675a789923be973c6645dbe26d00a39d4e81255217291a3882cfa" - "8f91f4aa8214d3524c95ef6a24e47b3b9d0ef55f670756ae4a4d9c65f075f417" - "0b2d18aafbca0265", - "047265831f1f589b5f30806e2fb80aa7844cbf32b6993384beaac7d992b327b9" - "7dfd0bb89ca09e711507e846ed4ad003e7115fa8843b23d38f320e43b5eb506b" - "de48fbd7af4983b9" }, - { NID_sect571k1, - "07ec71bea081190a9c4cdff809ed2b65a77800cd1b3beffd1e4004d126ac352d" - "24235c797a5a567daef7393d276638132ea7f0f61e550dc251d341f66102f96c" - "2abf7ee37c0fc9ed", - "00efc2ac8705b2f9c9c06a910a304c42b1ad53101aeb0d146319dc24815c7cc1" - "983b1cad91d5f9c6d5eef1677a1f2d2bdd75a1fb4c5796a4c56964aa3e43f3da" - "26c737edd9cb0910", - "004c0dd3715e8888dc2222069e7f611801685140303e16b8b443433d5e18a4b1" - "803d5680416aebda7ae7e9449154be346a7dcb36c1db22744673fb3b245e5844" - "0787ed3dec6d3db5", - "02fb241eb2c28a1b0675b5760fe5663efa603eb0590842f455973f0573e148a4" - "7e63f97e8df9a570b0655d5afc42019fe95fe44fdb02a68271d82df580010f91" - "dff0cb3d9bda8992", - "033f93a9dc39d87403b6a94dc0632dec6757842d0aaf8ad8c41ebb637058bfc1" - "1c19a3a9abddf204201ef4f96fe9629233a5070a08794d14470091e30cdd876a" - "af65407627233234", - "059b62c25c96955b8fb4deddcf90ebe6845ee71ea357739273d6d67f21a0c47d" - "154add9d5d4d2b657fe1988ad614b0b4902faa92fe999abd754ad33cd6b92fe2" - "f6a68a6f2c1eeb27" }, - { NID_sect571k1, - "06708686b4f5ad2fec457aad5ac4a3dc4867a477eb54fc0d493511b5561ea151" - "dd4caf5d4311983500b48c8043af09e3f4042d5a07ebf050a4e801daeef3317b" - "e093955020452b29", - "0525c8682583b55f7ecec59b920846f75d11d021e9ffb20018639f6ab9302247" - "2c192d398e150cdc630a11fcf942e5d238cd6c14b30f44a24d2f843ec5d135dd" - "c7abda56047abc21", - "007d54194fc226cc39f640d3d17b9b95b70b51f98ad5ca1991566108d839e377" - "e21ba48cbf441530b3341ddc61b0a58141aaa66530241fa529505d70804b2560" - "c5be481310b9962d", - "02ed5f3a2efa4ab0f9db5fced7b1300de4d457a9ad0827457e5e1c4bc15ebd18" - "3775de4b73c1f820dd4033366100e48b4164d04e9fb6cf1a4bdb55122a86005f" - "bd0bd2cddbc95fa7", - "0327fe654ef68563cc8888acca85163c2b154fb70b0f4a2b58c36388a0c25f80" - "a4c887977d46000dc4d86e95cfd8f9065c00eb28653c8fb477bbb5c63dd47b83" - "ca5e0f871e9eed3d", - "02777c72853b76b29f69d3aa27a1659789a025af0633d833b22b57bf328d231e" - "bd128bf96a4c8a7ffd2ee7a51e5ebb7a8e5bca20e4ad49671a2123dfbc0d6c40" - "594e04765186de06" }, - { NID_sect571k1, - "07ce7674403dfc62895d71e2ab587ce735f279f12f7df3161335be43fc2908ea" - "736f6f58b932d793aff66f332735d4d38f05cb03cf275ca0e00da1f57381e08b" - "feb5017877342272", - "07d6649f3d91e7bf5f8de611bd971818106df2e37935bb464cd9e7469629c6ae" - "7e7f2b2240276cb0eedb7a26d0c7d377f4009a1dd48a793cc993fb0d4a04db1d" - "bad4493304bc5c0e", - "010740b958285242045cd5358d7ff9232b7d7d413af7e205c285f88492ef27a2" - "fb850e0567ec24c480c75ad32f70342025c86267dbe4ff80a2c509e5b9a45130" - "e99e7c7cc8cc6ece", - "03f3f585cafd46a663b6cf8b8323ef9159d5195d3118f3edf38732ca0ff73b2d" - "065d9e69ae1e3978b2ce6dc61500f7b8bbf6f6a70b47bb64cc4fd195bba6ac93" - "2b70beafe174148a", - "00b1566fe619f2cc00aba05e24a6cccbc91338b2eef553da0d477d6c8c0ac4c6" - "56e134dbcf31ffb15c67d589bd2918f1174909e5428c71c90e38c4e11b56236a" - "bfa1de6a8579eb4d", - "02c2ec1632e83416182a9a438f7360b88061bab84f5bded3dd8a0c87baf44507" - "df94fdcf99353b107e61cfcfc8af071b3aa8cec7b34a542bf2ab8ea0bd9db67d" - "66b428c9a6c14458" }, - { NID_sect571k1, - "0483ad7382e348afc7f271d50d8d39b814b7d6dc0c562a6ba556568045bd2d62" - "0906ab1106f9137ff725892e8436a8cd7b88892a32f19ab269e2ad30d7f0ec00" - "e3a052fbbc466307", - "041cc4b0f195dc73c4a8e10605f2a382923abd2381f24e4abbd401e087c50d18" - "f6dab01a25db7e89dfff68c663494fb4d087a816b85444d882bec2ac25e42fde" - "78ebcca79a6fddf0", - "00c85e5d2ded5bc3b6b553fe0a02311b72bc5cdc8e96df179ce57511c26ac9e8" - "73fc1f76cdde9a7d8e52a7e9be5c7753620331e8977a98902b48ae9899ce8a6a" - "6636611276ae2383", - "0289aa5209fe7b1ad7b9c5e0e630ba5e02929ea1b1f114d30a0648012bf029e0" - "66453f2d28e1d503665dd0833f0ba37e4583b434dd9956100a1ae6e54f96d934" - "7d806741d3a76e31", - "033afe87b29edef447ff5a02e63f64905b5f53ac856cfd7755ad542812ecdd56" - "8e8ae1f9d32fea0f02018dcfd0e16d6a6a2797b7e3dc855bfdb6b0d0b2525e14" - "3678d539bf8c0672", - "07e1d202a54d34020939f7aed56931f21b206761e4fc79b9a7b320f81077be32" - "2ae7809446b5b3ea701618ecdb0a1796ab80407a281bdbcb4d580131b61f8743" - "bfef7a4d9c5941f1" }, - { NID_sect571k1, - "07a5e8eb4968497a11b90c60e13d5f3c61c6868573a6b6db7c208a856d54e74f" - "4368e28100b9e0bf49fc3104e146fbda784623a36d9f01f23ebadfab04d7f48f" - "f66506c698bedd11", - "013db968fc7cd338cb8e3042a171fa306f9ab6f6c865ddc5ba5fe994a30d8fc1" - "fa127191f08e4e14b9aa086a52fbcaa46d22107fd6df53108b53fe0bb96bc974" - "c03a8c6528f9792d", - "0053a48cfda8ee232cea3549927b22f375d6096560025e213161d43eed02d073" - "65d9ede7c93d457ea51ea2369e87463eddbf25a06bb1f080fb4763074a8283dd" - "3d69f1de865295e3", - "04790f9db600b9a0a57e03d274a3d23a55aa0d86b2d6fa07fafe3c9d4c339377" - "1dde89c70a6470a31bad105c21d4844cd7bfc3b59738f9d6c528c414d524f88e" - "0c862e4e17aff454", - "05dc12db04e2489db8a46cdeff9f8d9d2e00d024f656c781eb4d2db167624b3a" - "70addaaa158ca00601d4cad065917bebe766912faba9987fcc5fc8a78dd21643" - "aa650e6a4a7e2061", - "07f49ee5d822b17e3f1ec9946fad8d0a0a6b327242afe675806b3e6b7541745e" - "21cd1b70df926af057a9f8deae4cb9a1edc782014426152e8aa4cf6a4080dad4" - "678dc8ff0d9e1af9" }, - { NID_sect571k1, - "013caaf8ce2e2321cf256f2b64aa89add6968c298624a22bd38ef94deb3a70ea" - "44ce87a948ea56bf0ee9407134f8c97b17b1f54561ff7747e3f6b656f80d6077" - "8d05b8c4cbbbcf3c", - "0047a2dca3eb6754b0a9fd16b081fca497b29dd2ec9e6a7596d06b059c2ab189" - "00fcc58715247276e390df1dbab26ba81235a4dc6738237fcefd3812b7ab436c" - "926c50c600e6e907", - "015a5e5946fe2c9cae6d412c618c1bd07724432b2f1dedb1327d8a99ce830e6b" - "030f4025c14b4e3d1912ea9a78290a1cfc7d0189a30c614010c873146a182f63" - "9193a2912edcd04a", - "03140887e87039797869f5d9db50d91ba69d0bfdc5a677c700610562f680d951" - "a5e0517cb2f966367d48e423b046db4e68bc1c4b3183dc80bee126e89014994c" - "df83c4312a3e5ea7", - "07b8d706962cb192f0ed14c4da710d1b1b073fd8ca497a94379a7454c9c3d4ce" - "6e5fd2e6386852a77c5435abb23536dcc83986cedd4512752f295ca500f055f4" - "62763c29fb678caa", - "058cd5608dd9d64d4d822baeca123358a4d7e56d3777ecdf569a149c2f85ed35" - "479eaeaababd0b026dc3b56aedafedfc8491040413f85b669d8512a3ef7bc8fe" - "8706b5c7585370aa" }, - { NID_sect571k1, - "0743b3c965a83ee9f6bdb9901a1dcc1f78196544a88b9cf8117f89ed1574e5c5" - "d804fc451112c257877e12b0a66c693c6655c12bba4535d99d62405f4a9dcebc" - "056d8b7cbbada120", - "03efa58aa3a8c6a24f43c5581fec041442ae955275dbc1d46d10156059d2637b" - "9a82994b024a247d2a66724ba90d02787b168b1fa1f4b6749645406c438f8d31" - "6d670f1e0d8b0301", - "00bd58e19c05df7e99bd962070e0b4c7576042858447e023b41bb29745a89a48" - "74dfe325a15d38d2fb9e870f419dd15f4aaac65dbbc5ac2c540f57cdb0e45bc8" - "6621726d922d14aa", - "01e4b2a277ddd78f2f119c05b6ae1ea7a2a744961e08940f6569ee8808c53bc7" - "a12138064ed5c8c222eef2774e70c28bce3a6c05f3a654e121006ab62bc94381" - "d01ca0d1b08234d6", - "07eed8cd7a8a3549b0d9ef8786879efdc9c0f4ce90b3991a33cbbb1d3704db93" - "513138b19a50ecac880e578de21046f03a200048180884bc42cf9aafe58cc1ea" - "f536d6d25f1541d8", - "03bf7a59bbdd688682c45664d20c19cb2d24fcca6772120cbeed1cde762d449e" - "bf22855627eb6b2be6e7f7c0f0034d02686f2a4488549f8cb198e02b46972bcb" - "88914bea66dd6400" }, - { NID_sect571k1, - "0722f1e7a0607750dae2d62c5d3d470f006c3254558eaaa294eeedbca8d30bf4" - "abb955deb62e4179925f6cbadf3bf8776f15dcae3556addf797105a77b7f6f71" - "206ca0e6ea91e188", - "035d108ca0d620cab96b7cbf617d1b5ac06e37792629886564fd147c58e55e42" - "3344ff4f1fba4af0fe34152b384b7685caad15d3bc270e43422ad874e71e408a" - "71a6c8a90d2ad978", - "011463070fcb4a28be4e2a67c29c7fa48a4c585a307405d06a1a0678e909dd6e" - "afb898662cdd8bcc019deb14e5d92d172ba1c438ef0f64d80107c7e8e68029f4" - "e0aa814a1099ca38", - "00939398e463886f0dbb48a74f573a1215000668e10b57989dc300b2f9a8c08c" - "d43d6cbb7f46ec77c1c294b23f86299027d2b93fd6eb18210a8230bf46e3921f" - "182c9260c30847ab", - "03d48ec633b9da1650ea762656b3e31f26aec07e7ca6aafc1ed7cb466eaaf399" - "3e0467048c967bb1e9b4ae073a230c1e2f74e2e618666cf56a06f2b65ec3955b" - "6ffbb06a908cf616", - "06d410e9ba6b8b87b00d0f676de8ba27f6afe7e308c2e992f318fc14cba0a447" - "316ad86e8e6c1d3345d8e4035735232c2c597e760b8800a89a521567b09408f9" - "c7be279c137c963f" }, - { NID_sect163r2, - "00000003a647ba32dac71ec6780b0638a70cd24fc3bd4c8e", - "00000002e69e961541844a4aa33769a7bce710f6640a560c", - "00000003edae173de8fa0cf0412d6a7bdc81fdbd0617adf8", - "000000035466701d0b0030d098b6ed2343d355c24c907271", - "00000000d8bc02f341d261860dfb65f0cb7f0b488d8296cc", - "0100fb42d177ffe6c31378e2e04e0da7376ffe8765" }, - { NID_sect163r2, - "00000001282898936486dc2e3cd1585f32d5544264e191e4", - "00000005e9e98bb7499bf895f77f8fc8301d6e1c7a9f6191", - "0000000178dcc8216425d4bf71c8f2925dd1af86dc04a268", - "000000011e49430cdd06f2e765b8f2cc067cd424e2e75485", - "0000000083af15b22cd7dfd1dff7396bf3f3038f50524991", - "0681c9e59eb7eba769f5b6f2b06ddf1efd12997995" }, - { NID_sect163r2, - "00000005874fcc8c484c014173102dcb70c624ee6108d31d", - "0000000049693f4edc714b0d0baa5bfc5d8bc6ac04089de4", - "00000003ea1e79e52a070898d6a3c4e748e95ac8710d77f6", - "0000000137860ba3458af13c22af8225f561e01331cd87a8", - "00000007720356e15dc73f9fee7a1c021feca97cd41204e3", - "01e0749a21fc508f76dade85435bbbe12c448bd8c4" }, - { NID_sect163r2, - "000000003748d798f140268f1e718b3b23aa2acc0333c074", - "00000000c42a927ab579696123095575ac949b07a7d1d4bc", - "00000001ad5ca9abc8bcdcc482995ad1a977e4727150bb36", - "000000025ae78311b0fcf369566a319f89849546aeaec305", - "0000000640eb0fdf520480afbeb9f2674feb1d6df482d7f5", - "0320398f7acf791e0d602d7b94742cce58e9fddbac" }, - { NID_sect163r2, - "0000000380db3df2b1c0154a8e8cb304aecd581d35f315cd", - "000000071534ec2e8b357d9e069d7f1fa98bd44ed8b06826", - "00000002d28a8aa1d89fa3e5e596ffd1808254ee17a0d0fa", - "00000006e6c52494ab63c89c9788556f716677f3b48042a0", - "00000004e98258b9c56f02d3edb4ca5b0aeeaa9daaa6fe0f", - "03e4de43de85223d818e5be6549c29cdfa1afe1782" }, - { NID_sect163r2, - "0000000136e0d05b4f398b827e198046148b2f41573fc07c", - "0000000739934cec10572852e1f619222e2f5ec4e0fa5aa6", - "00000002e170f7f4dc152fe4706f99d9be229e1317d82bbd", - "00000007900dac251de8a944cf0a1bf2eb2efeee14676e9b", - "0000000091e7df67f77622729d59b7e34b947127e7fa2e5d", - "037b178aab014d5abab305e37deed7f4798cdb862c" }, - { NID_sect163r2, - "000000076c3ae4a781673627d0e9bcb615f626a160a55dda", - "000000058c0ec8f2649c2ddcd9c24b643433b14d907c5903", - "00000002923d2c802cec42def2633debdca759d59744d3e8", - "00000002cdcb4f91ed7d17768db80be2b3ac9e0956b1d971", - "000000032433f455a6cd253e91582d2f6f5a712655da1d69", - "00958b2aaa6061222dd248a6b9700fb6839dacdc99" }, - { NID_sect163r2, - "00000000d65f0516c1b3eed9220e59b3d049dd1153179ac5", - "000000020bfe107a89a7360cd2e217534d6df298cc4bc458", - "000000025b17bd6e4207d9fb1a3af02fd5db26af8348aeb0", - "00000006f6f5b1f3b18f45db4fb3777e6840fb5a5b61a914", - "0000000737ce14aeb24e0591585a7417b89256749f461de6", - "0393387e1dab35748f20d506a0e2b4dc0ee6c3ff39" }, - { NID_sect163r2, - "000000040d903ce2b30f70a6a03849b0e1758fef8887bd31", - "00000004abd8bdb7c1327c99b33820dbe18ae114fb435949", - "137e8132ad288923e64811e92298f5c0dcc95705", - "00000006f2cdd1d630dd731ed77f901c7b0e735515e26d4e", - "00000001062f2f715c4d2af97bb1be8b6cfa2e3ee314253e", - "0212358d3f8bce69b662447333b3edbbc9b2f7e805" }, - { NID_sect163r2, - "000000022ed24643f0cec68c8e4ad1aa2c4369d8aa03f594", - "00000005ccca62b6dd1d316dedbd0f1d530bed6e556b3ad8", - "00000001c48c50b7d3ecdf3b901bad0eefc3e3826e3cea9f", - "000000019175573117dd851e6eebfd9fb1e5a884ebfefee5", - "00000003adf37e4ded52573fa57c8cb2bfca6c65c3674462", - "023472fa59846f7be07cf060cdd69a9fbb27d4fe44" }, - { NID_sect163r2, - "0000000793f4b31172eee66f2769eb305d03b5c3f7cfff8b", - "00000001f3ecec6bbda9bde8a4da14db3e5ff934b9835b17", - "00000001162d9ed3a660455e8c015d1e45d1515749a3dcd2", - "00000004283eb0e5085d198b378fc95f6fb4c3198b4d3c78", - "0000000107a1168f2f47b963e4b3a9024e0c357a5ebdf92c", - "0173a056c4c9ef6707cd23928999c4680f42b71f7c" }, - { NID_sect163r2, - "00000002ea7a50834602f112f6dd0e6d25f064f9d05eff26", - "00000001bf3f69d14acc8333533a88c2e8824863a47ae027", - "000000019a1d16f4a572f3c1b51ea2ace69280e7137b8f8c", - "00000005cede96a70f714cd68963f2d6ca236269a938f311", - "00000006cdadd54b6f733c80934787e28c2ccf58b1227bc0", - "03d34f411a297d7c990fa4a83b5f54759607f9d33f" }, - { NID_sect163r2, - "00000006dd1305349e8aa08020073a0de5afc5dc1b6a62d3", - "00000003497eb7bf4089ef02cd0a5dd0f86bd8798a44c56c", - "00000002efd4400dad3cfad8d1637fa9290c4b758a3015b6", - "0000000513131b4bcb72ef68ab043ee84fc8cb03b6d8f187", - "0000000120b7d5772bbb17ecb1c9e80c36f808fd54a93aae", - "06120aed8d4c1e506710e2cfb98ca2022e642ca89f" }, - { NID_sect163r2, - "00000005a0e341118e69827d6a7f8282fbf0b94400f08240", - "0000000423b993d4367fbf4f6504d9e09a64123a3b53d128", - "000000012b0d64977cfc13b48345ef7072d1a3890eafb95b", - "00000001b9363cf48735676878d80ce1481b8588683f7444", - "0000000768fa7327cd7252c8f696ed4947868915ada1fb5d", - "021a58087968c5df57afd7c343a4cfa2ee8e7073f1" }, - { NID_sect163r2, - "000000001a923d6191634306124c1e267309b07dba32decb", - "00000005a3517f5426a3411a727eddc29a3ec229558368d1", - "000000033ac953803d0446b3cda4ebd071b4eb027c11bfd8", - "00000005c446e9896ca44cca733e9f4e5b64afddc0537211", - "00000006bad1b2522692f970b38be6935dc7d1c09dcd206f", - "03da9c0879219e48c3df56174898fab9ee5b0a6bcd" }, - { NID_sect163r2, - "00000002fa8baf0d6128add9b902aa181c81e24298451e2e", - "00000002b93d1f6913914ffe1559c7c114c631bb6b29617e", - "00000001bd79145ae7f42c6b25d1c38965ec08fd27533a7a", - "00000000e9d8fc3a026925c8add508f920fa2e5ff5282688", - "00000005b7bf631259ac7d36936c130ff206d820b13bde81", - "05b33fe3874d32aed99919265cc0074902e538fe54" }, - { NID_sect163r2, - "0000000353e2da45ab7c4930280c3edb4ba90012d56df62f", - "000000026931e30b97ff5ef7bacc0de4d9490708522e3b2b", - "0000000330ca1f5ad77d7a66d87423328020c91ec79f3764", - "00000005ba37d36997c4f2abe603dfe042232738e82b0b3a", - "000000073c8cd950044972a005c6f1af8e4306e0ccefb946", - "053dbce9826af4d290036feb46875e975b7848a9c4" }, - { NID_sect163r2, - "0000000721670884daa8cd627638ec90f3448efb0f2489ba", - "00000004f84a983bec6b2889c8211bf231149b5bebcc75e0", - "00000002d23140074d6eddd5bc099b17de12afb9ddf2ecbe", - "00000006e06cc7c30f5ed7e686c3a75a1d44257770601cb2", - "000000030dc414c4afb390ed467af471aa9bd2b75f32dfd8", - "00d49b971cab937f40908913fe259849679ca076d9" }, - { NID_sect163r2, - "00000001d6319ec2dc5c08f0261aed0231418d6dc3d0cda7", - "000000038e64953f7cdac71d052e55855746b43d44181b91", - "00000002449c1b9ff09e7a9a03b17f5ff461115f5f3f1a7f", - "000000073f9ddddc4650933deccc9546d392a35dbbc66a76", - "00000004de7558dde649f72322b39e31c8e29ce6f599485e", - "0483ad0b7f8a716273f624b8979c19126705266e4b" }, - { NID_sect163r2, - "00000004f167907bf4b98e8696d81da7d2c1056efa0dc14c", - "00000006cb9ab65143832b9cefd5d9ce69ec4db2edd067aa", - "d08b95d9a4ce724ec462cce12701fd8c3d53fdcd", - "0000000026a770d86e1c89ba7a86aef649ba7ea86fc7d5b2", - "00000001db1020e0f764df54a53c23c938cec98d9a77ad1d", - "00f69dcb547119fc9b8c454335aab184c3ada5f1c6" }, - { NID_sect163r2, - "000000079b6d14c743271402d1323603215feb3c68b14455", - "00000004e3905686a538c25a02bea92f42184021b5ea2593", - "00000003808efe6ad50d250d87192e16499ce3259428f3b8", - "0000000013a02e25fc927875afa557bd673f65870459e671", - "00000004038dbae5c5e54084708a24bc3fd072e769c12377", - "01bc5ee5261b2bba55b10cbaa6cc3c97b98d00ffea" }, - { NID_sect163r2, - "0000000772f42d272a057de0ff926c9f94605c6675d21526", - "0000000602e7e53255de9bf58c057eefb79bce431b5c3808", - "00000002ad232a7a41e6cc2495538d87b023cdec7b6e1f23", - "0000000549e30780d93f796fdcf691905575d85c66453bdb", - "00000002162a885bea31344543f5d06191369dec6e70e967", - "008574d838d3de87965fc1b4343fe4f078588c4ea1" }, - { NID_sect163r2, - "000000050b2429460971739a9d6d5670bc6d759e5656768b", - "0000000492bc2d3f638d4978e4ca58ca5a4ef19c5eccea8d", - "dc99b19f3d8847875190e9588b2bbd830dbd3a95", - "00000000f65d984d71dcc18bf172abe4d3993ce0f7cf324c", - "000000001b49e6a2cf1173aadac3af6c09e966f31141abd9", - "04579b477a92ed961cfdb2014407e88e7716452a4b" }, - { NID_sect163r2, - "000000017d52116f0c95587f1b7b06c76e98d99c82dcf20c", - "000000024ea22bdd990bd79e63e735b21282ae1b5ea66648", - "0000000356ab85b04d0851b8f66b4a796526d3f3e3882844", - "0000000776a2e1af932d74519070bfa941eaa93e9ff5e97a", - "00000005abe9ed46245fd0146250d2a563c46ebf7acd2342", - "035a8c10e64403c52ef8d17c5f4dead0df81fb1f21" }, - { NID_sect163r2, - "00000003a7ea10ba1d6aa545700b40b737951a9e736dfa0c", - "00000004f9352fb2ac2444e928754e3655fd62e3a42564e8", - "7a7b547550c758a9de7f06e2f38e55f5e9e44ce6", - "000000045952c0b517e685cab09470327f9d4b212751b049", - "000000044a429a6efb04bcea0240ab5805de740aa61f994e", - "000142615e3607ac148c4de8f334be849235d01cdb" }, - { NID_sect233r1, - "0000004756baddefc3dc337ab27b5452eb10affd9e31f5b55c330e90f0f686a2", - "0000012a79f65232308a21c98c01555ccafc7dce15c8fed3025a760cbd6c2327", - "0000003c3ee474ac0d0bc1df567e3c35f5f766c5332b2d6730ff0e4d8e75aedb", - "00000061e8a9b517fd05a026ec376616229fd8639a1fa76defe5398022f9d9c8", - "000000706b5cb08738a94552fee584b1372fead4af79040909fcf6f50084bbfa", - "00e9f3d8c4f1bec0f920e763ea1bb7415899f01734609e7547dc425ec946" }, - { NID_sect233r1, - "000001186a028f9a18db927f63253c203eb26aa3aba0d40b1a3abc64e47a22ad", - "000000cbd8b95f89e421128bc73a43c5cc254e3867096ab89d788b2ed3b90a96", - "000000aa41a5a01a4e66a67997b0be16f56b160b0561ad07f3af2964386461d0", - "0000002d91402446557068c40fc075dee93916b0f1a9392e47e56b747125ae1f", - "0000013ab0915e4acf779516826fa1dc1885a06abc5d0809c92240ccf9c3d8a4", - "00f1fbecfadb158d62eb1109c085124fad67a8795b58815eb396c95db4b9" }, - { NID_sect233r1, - "00000093bf85621602238e98d09c98828d51a49460362c23c5141d3d1b235296", - "0000008497152187a8b3b2958a1d0a2eecff4492251807cbfd03d5f2685bca37", - "000000c6677c28068b462e34862ce6c9d8ad8c1b3c7efe80cbab41da419278e4", - "00000042cb311dcff2482a2cece696c1eb64c69ac2aa599209a5c18763a3150a", - "000001b0329f36c135d002f08be3e3ffa9da18c5d6a70c360f4f871f12bf3f95", - "019ea831c51d88a7cf754495a1c474082ed481c8eb83190a77defb09d479" }, - { NID_sect233r1, - "0000004549648692af95d88e4e1d4914d8c9769aadac5a0f75783265f3eb9657", - "000001b094b4802f397663d0e682fabf1c94c4e214e48327b95eefcb92b771fd", - "0000009c61024b3dff219b37f1be6701804adf247414448dd0f0dc51293ac913", - "000000124120d8409850e71e33c9e2d9c40ea32bed11d77804786e9b076892ab", - "0000006dae1ba4817296ff63073bac9ce065d4331ba1a5c899cc1c07405dae3e", - "00088425fb04c2ce408f08d81385a322703a077bf00ba0791e4e79b80419" }, - { NID_sect233r1, - "00000073c5cf4a01d09e3b41b5e7778c6b9ba52daf88fc404f8e2fd09db4027e", - "00000070391edaa76f0e3970394cac0338061058858c3c73d5cb512e5326304f", - "0000006e69d064dbd9a794f68e699a0e941bdda6a53a1ceca3b3db82925b6f8b", - "000000c57d61fcb1fee90d5d8c97cbf188c8ef8259b0ae2587ecf1ff8cd2e2fa", - "000000b8ad86c6805a4ab44513dbba2f5098b9e9c1e05b679f52937aece2b182", - "019b5efb23bc18a4f18c22fe2fd5cdbd02372cabde5e5c9f4b4f9a49438f" }, - { NID_sect233r1, - "00000123a6b081a761e86c042e1914af47f093b2655543e564584b60642539a9", - "000000518ee3c1ae546404df1eccd69aa6856431d1c8881cf0578cff4eb8c11b", - "0000005ae5de30c7c3171813a2dd3e3ea2c5ceaa0473c39457e9929071e1a420", - "0000017cf9fca05d4a55e4b68fee7a3bd43f047303f2a266d81bb5e1ec7e2558", - "0000003b0af43de05003397de1d4b27827ad2fcd675cbf61a445a1ec40a569b6", - "01f36d9519c3d47f030eeac3338db583b96fefa551a4b56cc5567f2d9d7a" }, - { NID_sect233r1, - "00000141fbbf2b361c2c8ce5edabfa22aa4755581e5b1a66600362a0ee7bc574", - "000001aea3cac203f8c780475a2609b2970cc86f96ea4011c348da8262b334aa", - "000000c68796955b68b5f8827e38ac0782b1ac2c4552caef0c60958467cd85c1", - "00000034789fbc60f1086034c8f2ce86fd4aa335194c9146890357dc475699e4", - "000001d37f796327f71ec31510468463d0b2905488a4a60267870dfee567c250", - "00e54b1c916ff3ba1aa0b2b99f0ebde4f1a4cc6a10d959bb2f7f4c777b84" }, - { NID_sect233r1, - "00000096a0d3f36e8f753791074cea697b2471627e0c9e7a294a029a9d3b9429", - "000000b767174a2920b62f1f02fa79097845d51d93e0c8104410831a2dd55c3c", - "00000074245cc97dd450935689ea3fca7b0b30c1d67ce6e8be17cb1192575caf", - "000001e1c570acc653c706fd7740194a554de7f3799a12b820d6a941197f761d", - "000001e2225e8d0d41c808f6ead7af320fb25fed29a99098a0f0e11cd869e53c", - "00bc0dcf7585753cc79aa412d2740b4b2d1c644fc9755cb0550286bcf68e" }, - { NID_sect233r1, - "00000166be2426b3bf8e6d05a24d7d1f2c0e329e4120cfc8e6ff52486f095586", - "0000007371e288145fc25a5a9cb5f2a386034f2f328c6eaa24c8b096e8ab1f0c", - "00000097beed4b738a6205cc9ea046b448b523128b93101a02d964435eb17806", - "0000018358da94079a700a10b20a2325d33d80e95eb4fc4a98101c312635939c", - "0000000c4f442d0071c7bd1d217cf235fd031dec309e85ea2014e68b50fc2ba0", - "01b7ef3148be331115321b1c2a68832fdfb991b26224a60dddce3e060d27" }, - { NID_sect233r1, - "00000181f3bb0b097713277c5f3b46cef02aa9cbe29ab95c76e9b60a1f7a51e5", - "0000002e2fb672d72bf78f7cfedc40d3726c6b4fb585417c7476b655e32bbd3b", - "000000759c55da55e1fdb5ba7f8b893abaae5925b9b08184a3d554957acf3ec0", - "0000002af25f810e18a81b69da254a65b8a6c7ab80ddc27c85622e2348add132", - "00000128b753e4b21a8c3acf85aab92a9aa6a7b33f2cb69d7024baf8e8b07142", - "0041249865c913b287a253150b207e2682efd96057cb0709e9bbb48c0fc9" }, - { NID_sect233r1, - "00000065aa4115e59e6045aaf99ee1beca1fab923bbdc919206e0931620ba996", - "00000128d00b775899a58a59bcb2ab79d609e2dcda98e6523bb67168554f84e6", - "000000ee639d89f0e433c075e2ef57cc243581e95b261f8a93b8ef6f5ebf8015", - "00000006638f6bcd85043395d01d767ff77e9d677f37ef400f2e16fee86dbaf2", - "0000006c12496266debb1d8343b9684e27c5f7129c17024a8e6704672a5f3d63", - "01cf480fbc2be2c2c4448c88890972c7ff9cbe08a75e26c3809596b8b5c0" }, - { NID_sect233r1, - "0000013576e700f36367fb741842f231889f36822aab2933c245eed57b9dacad", - "0000017910e9071a3e42e7f21b363f0e687d289810a4ec29c36ece14854e1dd1", - "000000929b09b67b29aa4ff15d6779a1733065049faeb2c227012c49f277ed51", - "000000ca0403d95d85f0cb0ae4d2aeae18e187b79c201ed68c14ad24ed003922", - "000000cf6b0a502b290d0aeee820661accf6ea597687c45c7f93a773d25f62a6", - "01ce8abf3c8ccfa30e5f35ddb75f5e106aab1e67086156a1ededa1717b77" }, - { NID_sect233r1, - "000000e9fba71a64abb177fa436cb9739c9f68c0155adc897139c1bf3df99a53", - "0000019af1131be47de08870835da14946fed73034179f809298d0149b16dd36", - "000000e27af04efe2d86ffed6ecdf718fc0b8e049ed222e7600c3ce31ce4e97a", - "00000145ec0db5fe62b92547792012268af21ba928a8fd98d0a1dee3d8fb2559", - "0000010a031cea56b183e93093008ab705cc9099e5b65c5cb4407324b96fee90", - "0025df759a20312361b9f6767efe8e8d69979e34639469a91fed9fce04f8" }, - { NID_sect233r1, - "0000011f994a416cc1990b8c61767a3d68fbea73af7b48b655e47470fccc791f", - "0000015de988835d6812f0bdd7007a895971e1a06f4d22ce1303c9f55efe647c", - "0000001a726d7b9928691eb0149ca8f0edee47bd0c734113ab6003241ee193de", - "0000007426bfa8878fe59b16a9b8c63910a1e2fbc6b07ba995ba04c31402112e", - "000000944e9616676cb2fc7fa0f9e1b87a358748243e80fb62264284645a6a4d", - "00437ab4a53756ff678a1f580c0fd1f33b23021d62060808453b4aabe627" }, - { NID_sect233r1, - "0000010513620aee0d0478872438e99b23ea4900153f9366eb17d61bdf35aa19", - "000001136dfbc8401bbda0d675ca06a0cff6bdd467c0ac9a978293300728e7dc", - "000000f459c7672169c1259e4e199333964c1fffbce75ad30dde1264f5cb86d1", - "000001b44a81895d2105fa16a6e09526c09ae7f6cbdbce210870f4e33db8b6f4", - "000000b1e072c62a2642975f06c687c6467da295ef93f04d1c5494a624683c80", - "01ebd55823c57d1fc7b36cf1ed2051ead64db6d114014d3407186f50d957" }, - { NID_sect233r1, - "00000035dffec9117ed7167627a24a3ebddd49a3f45d91ad18401d3d449b2fef", - "000001931754ce5cf557a1c1acedfe5e9a7b0b91f81643da8586a6865885f042", - "000000656a47b8772b08b1d907c823fb6c45c65f9f18f8b43f3a61e6c74611e1", - "00000153cdbad92eb8d20da0c1c7aad46d08336cbc976e8d6f83947e4f4d6616", - "000001c977b97a5e1205ca66545df3a526b6e325e087c0e070839fe7ec1ee788", - "006d07f6e08b11a060ccec43b07ca7d9eaf6c3ece06f4785519284bf6f0a" }, - { NID_sect233r1, - "0000004845ce661b1eae34c1699f1bfe38dc87ef28b8b0a7771ff366dc21d863", - "000001096b1954b06eaa7073ed939801aa2974da1d60d66e97c31df0f6876faf", - "000000f14f5ec4efaf86e43fece65f17ff91b1a8d61be3416eeeb884f4e2d14e", - "000001d9f8c01e9c20f6150ec7620a75e39e96f9247bece137b0365bec54254c", - "0000006008373b9e087805294dadae00894667fdb9f6b8a4d16295e5b9d21a6d", - "00aea594f092b4052f7564b2e5651bcf43ef7e336a064d6bfb1a89cf5e51" }, - { NID_sect233r1, - "0000014734192165c96fbdb794cab1e2d1ef111e1a20a7205db01aa803a032a2", - "000001ecdfc3940b7d0618cd6315441751f663df74d356492ef934b4ba2b2ad1", - "0000001fa5cbd88a146f6ccf5f79dfbc70868fd9bb4c8115976c96270ff7bc5e", - "0000014d276f4281cb50a26b29ec81fced96d0e909994b2285433855256d58db", - "000000ac4792af62a0dc4fd4eec384fbf3fbb82c8347486bc1eb1338bc7f3ab0", - "0099d6d076e14ccfee15ed7e7ef384bfee12deba8c9ae8f6cca3486a1494" }, - { NID_sect233r1, - "0000007e1f3251e2a0aa6de1f8df86b85ed9d11da5eb7136add45ea7d25c867c", - "000000d96281e0756de9daa55d2ef6573bb2fe2dd09b71d91191a5a043bae0f3", - "000000f58684ea14a68fefb8cc26b267a13419c62d7261bad14e5368a9819a18", - "0000009a65a85394070fe0e5a108164eb289cc3d77ed0848fd57f384e62caa20", - "000000e7f56f2c27be4faeb20e274c2604c6dc2d88597030ad2164fad03cb904", - "01b1e977c43afd203132c085b95db0e2046a4b6ac2c046ee9ad665050578" }, - { NID_sect233r1, - "000000be1ee750f2712b2acb20c45e97357c50db3be895b33f830c71bc9f4f3d", - "0000015fec810cdb179fcd1ce8e4dc1a2499e40de8a4a49a9420f00e56110cf4", - "000000eefb24789b32b436ce39622c114c39a6cd1e58ec9443c8870e5ee2f801", - "0000013fb1ca9ed709bb386fba02cc7862fd6c64e1087be5f61ea733946c1634", - "000001cb4097e44a730700debfe8143fbf9bca3a3d6c46985a27cd5043b2ca5a", - "000e4cb704355cba1b40cee3da102cb048519a91b4c789b3757cfdd933aa" }, - { NID_sect233r1, - "0000015c2e2ce0bc722cea4cbc7c3352cbe0d28b5b002e44d93705895d791afc", - "0000014f616983ad08e745315c4767b0ae21a6fd8a629c258ce7aefa4c17a8e0", - "00000017524d506616bd205cb3978bc75e3a3476233e49b6dc206f9711697557", - "00000150a17327845e7bc79d8ece12930dc2b77654caa1082b57b0cf8e05b1ac", - "000000151c76822d8df5effd8c6943395b6a8d538431d42e846e9ff8de7eaee6", - "00d8c13bc5e819c6101daef3f6fb5be6bccecf233c4b7fc65054e8e8d3bc" }, - { NID_sect233r1, - "000000bafa9bba92725eef0c4a0afcbd4263e55f5155645b5c58a96bc3e9e965", - "000000d1b3d0e35d617e09e078c571a5f41ea22dfd112d67a94d8dfbba66e9a9", - "000000a6b05d30a703f1179a80f8a864b34ca15c453e82808a1095e435e9bacb", - "00000093b3252251fd9d6d9c81d78cf1f134cdd554d63c2a1e2f1afa14e2d4e4", - "0000008aeb0a8ab3ff5e4fb023f7e1917f0108890af11abca7da027fadacc3b4", - "0129af50fa085133771753f297a313bba0d2f5882e7634b7ef5adce760ff" }, - { NID_sect233r1, - "000000798bf5ab761bb6acfed0cef1cd71b3ef46f2504323cafc4081592dd6f6", - "0000016277aeb3e1cac0121b07d9378a3a0cbc6567b48423929e36dc855e9d1a", - "000000168d09809eb9f6acf31134eb5eb1af966e212b9b6be68cfd22401425e9", - "000001710a05f02b5505729516b1ac73d45f3cf08f1c5134d2f73d12570243c9", - "0000018611b10dab507583f2be10fd4296f537d4af09576f96979f1eadfe291c", - "0077c4ea1095fadc4cb4190a3fd530c7d15325e5d79b8e8a2b708e2344cf" }, - { NID_sect233r1, - "0000015f723da9a38c2da5062c17d0b837522f7c69c793f79c17fb6965d44a03", - "00000132b17760ac2e2bb9f813ed7790c5cd3aa0d38ab64e2e272ddf4a4c2c1a", - "0000003824f71ec3255bbd03642d782cc6794e1e54aa8fa5f2a331ee13f78450", - "000001a4e35a8c32717f2aaa3eeef177848e580e0fed6c8096868f6acc4e1c09", - "0000013727604e81d3a9d93d243fe79e2db8a442334a8ea1852b9f83cae1bc3e", - "00d9eb3c79cf442595dad03ed4a38daf358b97d5dfc01cb61ff200a47958" }, - { NID_sect233r1, - "00000051b70bb8b8e2341b86821d54b974b696bda443acb7ea65965d27d2ac70", - "000000c7784eef889c471c9d26b3e0de24ad2b4bf8bbba6fe18f51a412188058", - "00000090adc0b207dae381622cf92e04bce7479180ec6e1771662f5c3179bd99", - "00000106adbf9bbfdb3083598a7f6db2e91d2e7c174f705fc216631b7d05edf2", - "00000190d84ca6f4695fdbca40d26a74998a05c3d761dbf08981b645c0ea239e", - "0124c19cffc0b9549bfa378a548e8ce11ee7fca28d2d898de49ae1f2ff61" }, - { NID_sect283r1, - "02504e1a17819d39f010a4a69a0568299402b58f944a384c7d1a62c9c93ea4d1" - "ff300e13", - "0265132f7b4c64b74b9179ed0f2e211f4328d625405022f554170da932b80fdf" - "7c1aab12", - "02f43455842246a2cc8ec068e9d6c6e4160f6ba4e3b5d831d93c1daa8fd3d5a9" - "660c7bb1", - "0561e495563018169804d4c8e2435b4afd85da376d914b69d39246f8e06113aa" - "32e642d2", - "0781a7f59de7f42f5f9d6c3481f33fc5deb357c6ecf4c758e370d2435de3d8ee" - "737703f4", - "065194e26090e74047ee75f13f9769d20e1b52189650011e283daa090732cc53" - "755dc366" }, - { NID_sect283r1, - "01623a9675e8c40366e26131e47b1af06c8b33acf5e92f54644816dcb844382c" - "944cc21f", - "029d280f4d4c0c5fd70f7e24095950128bea3cae3ca46f6a5f70b739fe1a9902" - "68804e38", - "02b941e692e0a984c5ffa883c9f9f8256a43ab1fd1ad9782a42e429a94e910e4" - "82b91c23", - "07b90af116b737d9008e4c18f6ad539d29ee1790008a1daf2e856fa672eca4aa" - "fc96ca63", - "06aaf78d0f20657b77b97cca30eab79b679a3aaa90b10907f979cde988ce7184" - "91010c2a", - "075c535cc70de19c92d7314afa2f33200903431f6990ad40ac31dadaf4e492a7" - "99b75b05" }, - { NID_sect283r1, - "07b8369728432f7528d3eec8a6788e69cd2eb88162c47512742ee0f027ccb415" - "7a28a223", - "05986eb7f109aa1f8556eba2bdc88e4913b65effb944eae639636cba7e01dc37" - "18bcb361", - "0287de172ba50f327bfc7d5a8c0156d25a1f0b9f71d389852f2e3b587406cb74" - "ef3bd041", - "00a03490765fc90c23553c0e2b79dfa232b51a73f21554e5eb18da4c994d925f" - "8ed2bbef", - "0304ffd41c5b0ab2a70b82188e8f1578d6ab7d3ce3ce34fa45dcc32207f163e9" - "1c5d6814", - "02956f63d48a49a330e2068955cc2886dbfd5bf72a81b10ed83f2d758dd315ec" - "a172927d" }, - { NID_sect283r1, - "073b092a2a4d7c9a17bb88e75b40a9e4e43b99813cf61682d49b92905c2dd606" - "790aed39", - "0566ad452a2d8ef0a327ce8e2856146fecaf09e4431ccc04256a077f60701ce4" - "476b6dac", - "0153bbb8a3ce4a1b99960f56186ab50207f588f30c94beef28408423ba44fc87" - "5faf38d8", - "04f2c2454899623af13b65820aba145738407f77186abafa52d24b35bfdf5808" - "ffeae076", - "0111f448460ad2430aaec788de291548475a1e5836dac520d8e493c9f601275e" - "70ea29d2", - "068a3f6938c44b797524377508585842c6a7f1af5ffe9131dd3ff786ae56e173" - "9345d3d7" }, - { NID_sect283r1, - "0455e87bc230ce7fc586312dd207c529e47e3c74cc0ce5d073fbf4b1c957f8cb" - "bd9113bc", - "021ffbf62fb2531db39ef2d0bdce0d9c141c92e9cdca627caa39b593fc4a0210" - "e8ee481f", - "032ac0dcb9aa3972401f9f58845ed765da36b7d6f77355779bfb2439827ff355" - "6a75781c", - "07159c86b9c6adb2160c28d86118f84564a90c149ede28329463677a4c87729f" - "897c2f98", - "008a78167e1690625992b0efc2e0ef6f6d61e81837c8ecdfdab51d15340e37e7" - "d8d05120", - "019b48d5eeaeb05b58801ae8f345ad9bacb91daac885e506949b849ebc67bcbf" - "a308aab7" }, - { NID_sect283r1, - "0652ccc8921f439af42a2301236b5843a42f1fd99ecfe1b4134c3de014cdc760" - "35347cc0", - "03341d80749f1a5ec9f7ac6252384fefd38b6f2bbcdc18febe86c160f5e78c00" - "3f066e06", - "02689bf21475d32fe71a7355efd9a7787caa9545ebeb853e5184ce4215242905" - "1f40cbc4", - "00d7e5bcfac578fcd728180645176d7e088b68d330a209f18b968662fed16342" - "b3921a20", - "06f750b3b5e98e0099b695965aa1d16475d1074f9231127ed703e2696d4b56af" - "debbceaa", - "061b3bef1766460f6296ed47d39ebf5a710d202d2b7e7cac0f0d3b235405eece" - "99aa30d7" }, - { NID_sect283r1, - "062331b933afb4384fa3a4d224551ae8120bc55fc7ea73f2be749e217afc4e1b" - "a79e760f", - "02bf51c44f8361c3054cad640f92446fe3820b063cf4bb22ca17c0a274fd46f5" - "0504fbec", - "01052042988dddf470d0a2e36fff5b93ec69f4d240a8e37c064cc4d599467ba2" - "7af3c9f1", - "00c7c9ff77e018b8801bddf886702556b126a6d9a1831a1f60f35872e524c134" - "d553e4a4", - "0035d767b58b499d9fb54562c3830411af59e7088a4a3333d5dc7fe5b0f7f1e1" - "c5e3ac2b", - "055d579458860a3dd92ac6570847632f04460755c22a4c432cf4dde9611d2ce1" - "608ca185" }, - { NID_sect283r1, - "021e82d6af6d321198176ff8986c2bc786a0081326cc85f026b71b32ac06c0ba" - "e6b4cba2", - "01e9733fa9d29961269420db24edc0d5ae285d78c9ae14b38b1019f13652f190" - "277dc47f", - "03bb9ad5fa552d38d1a77cb553c631e2d0940db6b04f0bd7011ea735be50d045" - "da9a9c1d", - "0687071805c25a7d0b1739f7cf681b2f295c4f9d8937351d21d1d43f634e9a57" - "105bf127", - "0633ba21872e379c50e448372b1c0e65e85d07edd712d7dc06fa69a299f6037d" - "ece660dc", - "054fa7c6c84fb89e5892d9194540860ea31ae2b6e37a86971344230ea512a3f6" - "c0569216" }, - { NID_sect283r1, - "045d62d01db5ef173d0cff315a92a9a105d1ad784ff9b08e721f3580e06265ff" - "538a194b", - "06b764c1ff76985496b94451b756c4f30fdfc638d8990312bbeccbfbd73e8c5a" - "855adb75", - "0133aa445dc80d7d5a097d1da11d510e6571a783b4fb235402717d68ba8fd145" - "4e6b319f", - "02d26e46a6ed9fcf1d2f89c63d80e0172dedb4f5aeddff092836aac859909488" - "5557ead9", - "07d6713974701c160aedec8f94e6446bf7d3c790cbff8702cc7840a7818e5b62" - "6271f723", - "0353ff03afda3772984aadc4000e1275656607154b06c3a59c664945fa6fde1c" - "255ffa86" }, - { NID_sect283r1, - "04a561b5184aded9c7bd9868f3043b5e2de51908f9c03d5e6b08a3088bcc50ee" - "3203e263", - "05815b579ff5dec6fac977ba7088b333bf4c0231da021874ee00d71fe25d3f4d" - "50a57ac3", - "004661f107a9b570045ddbb0738ab69b1c17a9acc11da5dac7fd864b3dfc36a2" - "5282d6aa", - "061babbefee5211c4917506ce5f9f9e3d1e52b2506f38ca096e1b653ca9fb69f" - "46105702", - "0014bfd2ef228b5a03e26230c1e897ad081a704013cee55166ca46de395fc52f" - "5d21203a", - "050795ba093d2e02398c358951f20c9e3b4f60628a96a4d0c46cb8fc0005e533" - "1b38a09a" }, - { NID_sect283r1, - "01d7d7536cd8383e1c0b1b8aae02baa9fd2c4e68b21808c1754d0b151361157f" - "81245930", - "073034da416797da95a3836eef27b1fa271f59a434848e980bad2fdd53ffd1e3" - "66ff6917", - "0036bd21f84ab9db6f4bddc94635f19f80acb2813da5399e0777832c2febdc71" - "862abe33", - "068ee3245754d51df7780046af39acb407c4998c620bff94fb374faf4b498006" - "eea0cf88", - "0366a449f09ecfbaecc49d880307f57246c11c5bea00af42718677a8def15e59" - "26da1822", - "02ab08d63cdb4be2502558e67eab27570f2d029e7f981d153b973080585d01e4" - "2f7187d9" }, - { NID_sect283r1, - "02042f5a3fe5e3d3335bb7bcdb9dcbd8716ed18d7fc2ff4297bc1feb7cca3100" - "22e2213d", - "07bebb6c0e046d5afdbfa87ea98ca7f55e9cdbb055d0cc549b4458d6998bdbb3" - "45177388", - "016597ae6e49e79d069034972a63525a3c3e2d2c253b9e1dd3f37816812cf54a" - "d65c546a", - "050ea073522dbe51408f85f0a6086bd4c8efe572f80aadadd7e70ebb4b728bfd" - "bfd4f1bc", - "07da520017c7ad2916a2719b8558958f77c712d352cff9c0ad99fbc98a0e065e" - "b7ac7feb", - "0599757e3ffeb484b32d3b47828b6823d46786d35477082ceacf3a5a11552394" - "fe58f53b" }, - { NID_sect283r1, - "067afdf788f8f4831c3c7d7604d07a5bdc59da42d932731faf5eaf0753280966" - "ab693790", - "001b39d1d872b65e31251c1f584e4fe3ed75d53ad90e836fe90c8db94fe77cef" - "0bca7204", - "015ea8567c7b82b483fa365e8e681c0a635f563a1c81470b4dfe44f194fa91eb" - "7842181e", - "07afe2b22b54fe895c242c20c054989fa804e591970dda8a7ce109d6bd31b6da" - "a8f2fc74", - "060733bd5a4ea9b5ea7090acfee918106b7f25272f3f7cb36eda38bacd213756" - "10cde928", - "005e331af55e96153d8a7b906a4a19016a26381977b49f80b9d70db099053c6a" - "3b8e80d5" }, - { NID_sect283r1, - "018866a4fa2f7c2534e563a291de871a8b3052a674f5dbc23b9dea0e8cefda06" - "abc32c8f", - "058dc4cf1bf985d1b566970847cba6b8a4f40c7e62a5808b0720bbb8cdf3b453" - "1e380be7", - "002911d938d9508aeccb9877e127d1b1461acdaed035f20e0f744c774f1c7270" - "3b5c4b49", - "0386bfdfe60373be114b417c4dceb443223fde67c0fef29ed0f867b5a15f5ea0" - "ccb4dcca", - "02fac38ec8494cf7576233ec8282de384b67f0ca8048084201039d194c8bda4f" - "6e0aff3e", - "07e132ea71a16c7cc261b9d6ff6fc52cc490da616b07d92f9e591fc1e630d344" - "2572338f" }, - { NID_sect283r1, - "000571d7bef056089172f13423a585ab979f4b8f77e752c042c0c65263b47698" - "1e5f3157", - "044bca693e9d3b1a7fa6ad42db7f36b1a65712d09ef3bb715e2640a182f43662" - "0686c0a4", - "01662f554856c0208a31b195148f828e0b5c92a4ea4c033248bebf957b586b40" - "9ed59850", - "07055264c3de3a622d26fe7ad700bdea045d4b3ce718f4e6ae44cf376c3a96a2" - "650b3221", - "00f45cc1138668adc8150d37c072bb4245660c18785683c7b17aa1fb8591ba6c" - "da23657a", - "010f26817098ce1bbd6743784d6fb65e60699c14933a2c8d854027aa58b58db9" - "e66a53a7" }, - { NID_sect283r1, - "016eb4bbb3c386e0f42fb037bee478c4c0dbfbe55cc68e33fdb029b9e5e724af" - "f4fd8bf6", - "0251432f84568a44971e86ab715d3879e614e10725735ef8fb6652d079c7908f" - "11bd1f01", - "012c0100a9963ee17d7acf4ddf8e02d8ae75f3b99114f5366afb4a00ade9a3c0" - "ee39a887", - "07794fa19c6b10d399e0f52d36f483c7851848e62bacf95b5af51eca09ad445e" - "e19ef34d", - "06140d2ee16cd0a6cb1960509a7ccc664be97644a95ae16f4a173d9a867015f0" - "837f0560", - "00bdd8ccd1b40c5bc2efc1c105999350fefaf784710914ff639582f127767869" - "9491140c" }, - { NID_sect283r1, - "02417c65694d850c7c866f7e11639a5f8718ca9aabb392fa8610e2d5d7dda337" - "5a607f9b", - "05133938dc99144d16ea7525c3fe4e32e320ed075b96527e13b2a99c9f27ade9" - "ef9edcb6", - "0345c276b05ece9e7c86811f8c8af48b22db41d4066275009611b880d7d2cef3" - "29c50e82", - "007afffcfa31c110aab3bb394530a41c416af566bfba8f159f984437e799ddda" - "af8cdfd2", - "065fb3c68446a74068bab7e36ab80e984707e39a4a143f5a46d646342f9f12f2" - "6a32291b", - "014a83e747c90aec6101c0a752d92eef7475b00051ecad3d7c2e50cf4eba1ef3" - "c80b8c94" }, - { NID_sect283r1, - "00c5d6149f87174ba37f4c1c6f67f6905abb319f526b7aa1be1dd205df930ab1" - "c91bb1f8", - "00c2e21e1206cd4bb5b622abe97ca3f252cbc68d054a77f8ebabad593fb18633" - "06928bf7", - "03afd5affa346b5259697d9217952afcd03ddfec04631bd995c10ac2583b0ca8" - "d2461f5d", - "06b4c2c3615b266543de189c896cff77b5557c782c215961ac7324185fc9a810" - "98f2ebea", - "047fef1960739ae0aee39a3ffdb82e890d4236fc22dad395d490bc3a5eea58e8" - "cd03edbb", - "00afd29e352779a39021536ea50c24fa264c599f8f8fe8f2ccf0615a6547a064" - "d7c1a150" }, - { NID_sect283r1, - "0173044e5be63997d7925e431bbf004cf0f0ba85aa295a341e8f5857a120be89" - "d77653e9", - "0737cc049690f970824a7b0c2022439682c9d82f4f23e48e5f07fea96267ca3b" - "d4d730a5", - "03d5771f8485c3b8be62a56f3936513e3b631a561a942613df95140f473214df" - "617c4c4e", - "05906cc4529b220228efbb0545bf55ec03c86f87e2f4e3a3cbf404e07b73a5b1" - "a5f528cd", - "016588e480c4856cd2ee9aaf1e302812fbc0b33f527c29b77ce0f4878ea089d0" - "25a440c0", - "0477990f17d65589289c28e54a56a83bc05ef4ea6863c5ebe840925c9fbef64c" - "cd6e69a4" }, - { NID_sect283r1, - "068587e69deddf4b55ac51f2a17dd8bfd6f94e721003214215bfb24b248281e7" - "5a3c6594", - "044eee9c702bc4c1e210c7cc214524592568ac0f9fd67d6ea02b4dc3efb42cfb" - "b2263dac", - "00e2c0c602fb132399ee9f31008365ea22cc1260f79fe3ae61089b8a6fa4559c" - "ac91aec8", - "06e6e318c0c4c0b661dfd3e722090ecd32fdc9ca3d168d9c7174c1d40adbb2ce" - "672d9252", - "040bdc1dbc7b163f7c9551f47daa8294ac2dc4fe0d472c4e2f2cfefc95d523ff" - "59e0e880", - "067a661346fe052ca27f3f03e75bbdfc8fe6d0d85c62c8f79525252aa241ae9d" - "e97d56c3" }, - { NID_sect283r1, - "03f1226d802c575f871a213b8150f7818bbd625663b73e720a737f071896086d" - "a0b14cd9", - "07d1cb0ce19c98a63aaf7b314f1f5720e32887053384ac0f5eb69b6c471a8e3d" - "3d16e76f", - "032d573fdeb85a4da2297896631414518d4ba07dc4dd72f731728890d0b44d36" - "f2309c0e", - "06f6ffea0a87bd9eeb539c48a3fcbf388159862259c7f7840e64809fbedb01a8" - "3812c0c6", - "07c795b8f2847fc39fa56c2de1e6cbbf4945087cb2e3b919dc776b4cc1c83e4b" - "1c79b8ba", - "06476b0620eef165941a4507e6d798d6f150ab29333c0552281b629170d3291b" - "2f9b3f41" }, - { NID_sect283r1, - "02a911e7e6d2fc770d1eabc7df701bb119084a685900d22d52d598fe1d28fc89" - "1b31b487", - "01b8dc6713ca453e91b2ec4e4d1f834b08eebc7e8886c3a458e70925242c4b22" - "bf0b2053", - "00a6aacb5dd3e835814f452d8207d15a533638f70e94f87c06196eff8838d48e" - "ed2e2674", - "02dd0093a8d419831f34bac6c60a570c51d08e699b181c964b667d0d17ed72a4" - "9119acd9", - "01a91976be5d5e037f22350d67ab7bfab51bbc4fa6026d347d28fb4407bccc40" - "dd10a00e", - "0746719f2ad08f8a8d6d6fbf15723f336285ce75d3a2fcbd5a0c54c577517a22" - "bc264161" }, - { NID_sect283r1, - "07541aa51d7302e2bb557c27ec15d7f9c3ae3b76ec2f86cb95e8dead7fa06b57" - "8397f1f1", - "017ea22f6b5474f0f5f0f4ead54172064051538d3e232a530dfca5f2a0dc6774" - "6c8bb1da", - "00112fb2ab56443765676a1e41b3cb91eb1a6790e964ee900cfc9295636ba4c6" - "fa87aad2", - "03f507d99cc2498e2c7f54fb3c9c032f382548e2e3168fa140125a526048568f" - "3bb3e5a1", - "05270df77efc7d6c55f9259bc82273c9b6bdf3676e13c3601b1b3022b962de11" - "29cb3b14", - "03cda4b5f44b5d3dc248310f994419fbcbd665115d1876046652251ad4aeeb1d" - "cf184288" }, - { NID_sect283r1, - "021fb14e52cd4243a520f630229b1dd6961c49bd96f43fa9cae37add84da7ae7" - "2dc3078e", - "00dd638bf9053fad6aa4ff2d330b8a4a20bfe3020f40b9692302d0b0a3c2d877" - "856ec46a", - "03e4f1c4f30e2a8d6fd559f7fe8820e886949de87c01d8eb64c7b40f1548cb61" - "7a926033", - "05e3fc56ec162885c1291e4ae9c19c8eb2bb559eb7ecd5817549b5a2ea3a66d9" - "51880aa6", - "04c004f2ae4db4f748b437bc115e06ea2017a87798298dd6004616fcffdcc7ec" - "2dfd6db9", - "015c892f95768a96ab5a4f9523b7fd466e101f63b88ad8f1fecb3027cd70aa00" - "735dcc90" }, - { NID_sect283r1, - "00d08ed3856abef7d4a62243c92d6e670ceb3af32357fdb9d39c19175a10d1cb" - "ab36ce78", - "05db9fad7fc8afe79c8b9ce48e62ffa0d46b805a9e5821e2761c25c0edba92b1" - "20b063f2", - "00ae7eb3d40354f9f8fed18f2162dee38156cae0535b55370da3638f01668aec" - "f9708be6", - "061e8858e368d9c917f129d932ddc4cca521ff419f1d74230e8aa5b1b3e9ce67" - "f41c4b4c", - "02b0d7fbdc636a3bc34bbdd2a89291b567b0fb2af32383868bd40d4ba4cac988" - "0c2540b8", - "01adf5a96358e18d69fd383b4dc7b20dd646b68a5c9f1417bcf426240ca22b8f" - "32bdf1a4" }, - { NID_sect409r1, - "0146989a50297be373dd665c45455a2ae4c221da5cd424007bd97f9e8e846f96" - "740f3fa58c3c94129671cdd4d7ea650a2aade9d7", - "01b42bffda843946a14ad6080f95b8fc6b7e173528d08ed36fe640aaf85aa00f" - "b5edd5905a38b3c7961b7722b77b8dcb44bb25f5", - "00ace92103ffe262ac17ad42a46d4366f4cb4c580eff3ab1dde6bddfdbb73748" - "11d52b1fa99320b4af5d4e9208c14eb8efa8916c", - "004ebc4d4acf9b404dabc3af3e8cbea8b88b32999d3ecb7f367b12eb3a6280b8" - "40038e22681637a7d16436e014f69616abf72e45", - "009e24109541c8024217e9ab2c963fa9e373640095a6c25a26eefac58e4342c0" - "c85448b2709592a12402fe2b68a793c558ce8cd6", - "01d48a586be9285fa38dd3e70b0330b0ffebd327ceefef88fdc1521ef2fd61cb" - "c9124e03b0c926e70fa56acb3edb54c3c48fab2b" }, - { NID_sect409r1, - "017e9f01b1d6e5702328330d232a1dd3f2c592cc409f6caef0708440837f3597" - "510f111954aa51e5646ccf47eff1f07a4f8ae1cb", - "003714f6ea1fd143ce751e2d85baf54c5523976108ed482fd6ae103743131ca7" - "16026b16a1e496231f991cdc8f6db447f5f95f8e", - "003ff22f7d7c049989a43e0ea3f5d61798159c178aa792d79d1ffebff8db70ee" - "1fde040a4b5f1ed33fb3ff23c44e7c6b21b0623b", - "01d5c9260e73ea36e4deaaa4b8f4541f678066b690771a86f0dadc580fdb8959" - "81e6dd02dd264ed9f9c1763bd54a6052a2d3dba7", - "011a706826365ece28e38b33620bca016d2d9338518dfd6868370476dacb41e3" - "b947465769ebe81b620731673576f77451d0fe14", - "01856c92b46d671d8a7f6cc468efb60a61093d006c95bb931c1fccc336d4a849" - "0fe17fe163c972bac39fe728f24534a0c34d2d21" }, - { NID_sect409r1, - "0183ee355a93cd13aff1756a08e58e2195a826298d43f6d07bb1c382b4e568d0" - "080939260009c6afcbed0f23252e01d6d14c6d8f", - "01b2309b3819c2454a48ad253ac97bce3c79b51f50ed6803cf05464b74a5a1de" - "22113e23c018c5ced9186ddb981c629e2e9db3ee", - "0096de2c3929c4085f9cc1d3778c2dbf3db7f0f77e7ba7bbc4e408c7d65e2c8b" - "88b0755f160badb524e7697c50e60c8d99e56da4", - "019c47d79914c8bdae754ec5ec1e81c8ff329a938e6971eee3c945c4ebf489e1" - "4b15e6135616c898c80b7b06b8af67061c769ab5", - "000088022b4fb0e754ec4fab8cf4fc636255426755fa99b56805c15eac043251" - "55dccbfa4145e161c40f189bdbaa3dd3e0c3d6c9", - "01972e225e08b47512e92c0da9a1bdddb1802be402222cac5788b322e101feeb" - "06b66b2fe726c1cd8aec92e02f37d15f4c97e64d" }, - { NID_sect409r1, - "00e85de9d63e34e5c7bba6ff9b16f4c84d95f11dfe92107b1fbecae98ce6eff3" - "db96d86900bfd22cd423dbce1e5726be8e597933", - "00b7141771f7c816d55ec8c53822d2e7a192fa54a17e5b99b2d90961b54a99fe" - "d53aba4bda1a4074ad3d23f9c911205795b5450b", - "00abd5d61cde31180301c269d52af856baa39b89f5ef45367f5519210c71d77b" - "318d053ec0c2f49bf46de05cabf23c7d2bd7d23f", - "01a7ef3d17c301e8661ba66c1cdee82a9b44d716909e3663b423dc06ef6be4f6" - "16cd179321ce7a572da4bca2e89b768edc8459b3", - "00df743849a20bc3026062b420d3942f18e2d6c5307e6e1955e33b09d5951dc5" - "9b31a2b1d58c233e2c896e2d9ccaa8eeb8e8f113", - "00b6661a866abbf1843dea8f220e360fe7cd7d9e85c316138fd2532a57d7d2a6" - "bfe6e5518019c603a2d0e338ac6a8690093c2883" }, - { NID_sect409r1, - "00ca870acbe4eb3ae65edd95d6944eb090e0e550712be3b1369e473203f52b18" - "38654f7a4342bd8309704fed6933ae9d162ccd7d", - "01796cc286bf3d53ad636977374f8356e45730b7aa43805fb52801f73be3e9b3" - "2808984aaebbed7be5e39e51335b0dff34782948", - "00f323c8ee433c9ba15d3708069834acc4d937be5017e1d182ec76466aba282c" - "73b5e3e96fe106143641402c72c62484ba1f12f2", - "00b74f52520119fc08536cea584220de9b062401e64ff6359305c2e6b0c04a95" - "f77baf53e23c326aee76211495c30b2c150b9275", - "01540588e2fd5688d1b35763908c1f823eeeca8942f6216ce04cef66ed6991df" - "6a22fb74411b13d06513a65b64e62815ee020697", - "010889037c707d90b833d03256ff2e8a5ffce16fb3613486221494a4fee82e74" - "625a93d966c2028d0930115494f9456cec4d2b6d" }, - { NID_sect409r1, - "007eb61dfddfc3c0d083fe2213967986381d9e30e684afdf2bac8f1a362e8c6d" - "6358df95930600427dfc1eb14118fd1239b67b69", - "015ba87f98114cec8b2cb45bba3dcf006b287e07e3bef1da27ce08da9e4f48bd" - "241f59a1f9c93c837884715750f4085f913f4f7a", - "00133da2ba54b36244c8042f0e2da3718e56dbd2848ef427bddb24177f624475" - "b53400afdcb18879e8fe6b4609a4f7bbc2152b13", - "00e3a2f4e63cfbc1ee844745ab3e1e5be573204609aece5e28b8fb8ab8ae0689" - "8467a95a7b59c0898a414abff2703ccbcdc09209", - "010d73c43b630170395104acad6c1a563d3296632332a1481ddc2c31836bd1a3" - "ee1a7364d7f5b8295db95a3745b4bbbeb8095bc2", - "010a8aafbb243fc9466bf381eae173c01be95d88a9c131b07ed54d2f117cd3af" - "4019ffb196ebe8290b1269622f9df26763ffa211" }, - { NID_sect409r1, - "0082f148ec34d1d08b26e79e3772e12d659598b73b6fff0bab1845e9a5b50714" - "49ef2759fed63aa80624b83a6b2e9d739b83f6db", - "0109cea048a720ba749fc522c85af5fe783751c39fe8d0515ba0f0d3dcd19f18" - "c22da3909f02d78735aa11b2feba0f8d330c5703", - "00df7554c0132fd4e4a2b9217875f9924a55cab319b76a7c179cf02229375799" - "96cf94920bafd453e52f5d2fc48001329fbd78c4", - "0160851cff947ce72a118aab4dad4ce2c3ce9bc330ce1d06efad7f630e45bbcf" - "37097d94051d9d310abffa8d96ed22a847cbe693", - "0079a3ddde636bc62af41e6ec0e073fe6462e38ad4b9e3a36ecc8113a2c6394c" - "ed21abdc8ec5969e58e009ea13dbe929a96709ca", - "01e17b8844c4c757553a628d6f4c48f3a337ed2bbb6e4047dbfcfbfd02bb81c6" - "e096f8ccbb7f2e5d10ee9cbcc960e3a99e79bd09" }, - { NID_sect409r1, - "0083ca04df8458e5e6ce6e13b937dab498521d826fb9541234567e995f0683c8" - "0f438516eeff0cf8918a5f8b5262ccdca3997417", - "005f8b3c20e3fe2559efe0e85a12276df922ef0f4257fe703be2529f6effb6f2" - "99a1a251c01e38d43ca6ca576ef1e0beb6c9121e", - "0032735dd7f118d29f9f3cab3a072db8c886d42fa5de7bea65036ed3c8d44a11" - "e8f96f4e1a6f254888cab214305191a26dd1dad1", - "002d39e0f89fb875151ee3b354f8ea159e7fba6f23f8a764d49e07ef43f18d3c" - "f86e1baaae0ad79d4000709a50252f1ce3603135", - "00ce44a9b775b03cf42b310249660794c25e0422b03ad9babaa23610613251fe" - "0e54046e04f9210436dd376003d18f98dfdae189", - "01167edf7a3c50e13be126eb2caf6b5f8f761cc8dba413246423b877df74a3aa" - "3f48144b44cd133ad9f2d05ef97a08f7ca511d7f" }, - { NID_sect409r1, - "01311536a9745b7475e6c2fd724c23d9ea66803a139b47e3ae263b0fb7e42e33" - "16279bbf622ae262531b2e2283ecc1a6127c9b09", - "01d48ccc781f0bdec3130910044b76909a9abd7fcb18407dc42f63912fa26672" - "08003ab2d28102adcfb93ddc053760e53c2daa78", - "00b04f33b68799630d62f44337c77c5a6b6e0f7606b5c87244aa4e7da698cc8f" - "f1d3311b48ee7c9a6812baf9054379aeb61c0c13", - "01c5940c2de2b3735824ae2994c15086fa958750e4d83123af047e9b3c264746" - "c9b5d919da215355d8c28b2808a37d0cc5f2f6a1", - "000abfe6f1510a182eff78dd802e9ba21e668aea5732c732ddfc5df9301f5899" - "f02bae80f8282601ef3eefe414ef2c726fe00258", - "015c0d202bfdee2dfbd4be91625171992e6c6b1a1d06cc1b2b66ed64c9d928bd" - "4f062912900d3f89045c7190f513d3b019a634f5" }, - { NID_sect409r1, - "010c273530f54fe174bbbd5c2771a55a42e64050c3bf2523e6082af476eb0257" - "87696edf6e438dd056b598f5000633c264fd7ba5", - "00443e72da93b0c7825f4223c796826fd1322345ea25adf3df1a2c6958908c0f" - "d9b13e93cc005f4ecb155a2fff7ac54fa8180785", - "00d4ebc31c9a65ee3b1abd9d6e6495780c54e633f5a2a9f61c8408d767d0916d" - "91cb54cfcd937538df92cfc45938e33b77d724f2", - "014dfaaa70518f367cdfca89795a0db374bb7b407a58caac24ba46824dce7850" - "1067d7e0467d30b9e1fdbb0a7eace15fb0c208cf", - "019d62be2b12a17a78f6c9f7e703669765f763c6235fe7af78f25044e99c4b1b" - "90653640b3f0ae481a55d47d1eb17b86c5bada1b", - "007c32383aae80e1111207894c8cc5be66fe538af4a19195742a94a4c3f5c765" - "d9776a56177c485ddb53c038b70478959d374627" }, - { NID_sect409r1, - "013beb8d36d1e7f53d80beea33efc3e0098deaeaa17977da8f9aae9c576e7920" - "e8f6da55a20930ce60fd490b4fb0154d49277d99", - "011dc1d87f352e12bdb41a1b7a1f1e516629ed323c5d5b263ff036f023f0ff5f" - "722d056c24a411f53b347d0786d84f7be879105a", - "0026176aaf98a6433566f1dcc1919e94453e9cbf3c97e069b4a17426449167f6" - "a1089ac16a102a4b3e432a978bfb46255dc43d1a", - "01535fc949b49030308bc0da9793d57088766ac8cf22e8d6c276d8f3f7650f30" - "135e1f6c00300c1344e2f0306ea0e270b09a80af", - "00b8fc3fa61dc22c55501f2a6b2944946d99f7bbfefbec7acf4fb200c1002e32" - "2c39172ec0a2b6ce0807f1e3ebb1ea3400353143", - "01166107ab98db1dbe22c5888a70c992af4faf4623ef593802aedfe433809c53" - "ef4ab0b2dc4dc2546488b356ef3265356055d8f5" }, - { NID_sect409r1, - "01690c74649e92e1c1004f43fd6e4690be595904c56d2acd85a49af0a17d3436" - "8c8768d039ede9c92ad26b26306b5ffdef7bfd19", - "0081275f7e2ff068a6c1b92dd38c034256ed7322b027702994c74f5b818124d3" - "4a190987fd658892fc99e7acb9877bd6fe946919", - "00bf3e7395c72aa84c0960e5c69022ce39067404534473c4c7829424f81f1d44" - "b31f20e2b982e251cf9ffb327a7d834f59d1948a", - "011cbc4ed9036a27effc89ffd55fa1e3ead0fb93bacfa0a78bcafe3914ab1a97" - "860fec1334caaba07243591603e67791aea4bcb7", - "0101074c444627630ad0a5258e24438d71f26ab94d05bb47d1ab97858c4b92c6" - "ff1cb9be66b984fe8e16e44f393e63f9d64281c8", - "007e7a249094eb52bee0115b8bd5545f81bf0b7d66998fe124c9a3dd3c5715d0" - "3b2f973d47c19af5108a2ae005fcca65e61f337d" }, - { NID_sect409r1, - "005c24f4ad9bdcb1460685a22da54dbddd1507ef6de469da4170ce30147579a5" - "4945dbb1bce9f02e470033bb15fc1a70f831e79b", - "017ca932b90a08ca2e3f55c50cc0e13d279d7bc9119c573c3f741410bb7c1cad" - "1076c3ba42aed1ce69d56228b082fb6de0eefb68", - "0096d403b0fa601c9a75aa7de9fe9e11d42efa93d96dd35102da05d3ac807e44" - "194e18e79c8b5be11c5fb39c8bd4e312325afaf2", - "0009833946294d4aeecdb6f7254ca489c0ff13af2dc6e2ca5626835d5dd22241" - "440c37a63690cd11867581ff61b7252d07afb8ff", - "006183fee6f4d6ef5b723c53c96c5c1ecdd84652e379c937878d766f83370500" - "412359c22d4778bdf807b3c84e5b83350910a1a9", - "00b9d8b68642b2729340d8b7c5ed3b3a8913c4a3f6b947473017c0e105bc7edc" - "60daa9b0732772220f93eca4878085f756e3adad" }, - { NID_sect409r1, - "00aabf6aabb3e90f956d7004ffc893c70f8e90cdc31fc0c7a88f16320541d584" - "43af39405d888d9676557cdd394b27dc5449f945", - "0127f26dba06c33f8fb45d955cfdb5cedda93dd8a45db42ee0b9264a054c16a8" - "7bedad45c0d9a0f35bbc6aa7a1295622e83ebe8b", - "0067125ec309ab5dc7ea568f8815a2b30cfac3366bb4f0160d53738ab995ce75" - "681fcd5e492f3a9725b4cf75ba4301a786049342", - "01f1d1aee5fc594ca4a22b81bad707d821bef3253966f5d77956157483961696" - "f4c60476a42b452b89c1ecb3615475ec9c96dc87", - "00755c5ef55889b415cefa0e881a3efc9be86f36c67615423b452eab4cd5611a" - "ef4198ddb31aecb434eeeec12edd05913af19fc4", - "017d60394c7ee64ba73db91484713370daa821255807349c237e5849411bf0ba" - "b3a1b353be3cd07eeddc5c2ffc74336225dae6f7" }, - { NID_sect409r1, - "001f4ffbf22f67c1591b0a770e563c0aba66fe01561c5e227e522b5dde23c748" - "cacf8f4a02290de26b47767d388a5c836d3eff4b", - "002d273f2e8516e508388f8ed2015ec9fe67c66f832cf2b261dfad5856128042" - "fb4a61a91a37b341de4296d4bf63bf67a3458a74", - "006b2cc2387f69afd43978b7f66bd17666257081ba4d66ee6a9a82b7c87c4ac5" - "f0eba6bc2d981ca1da9ff202ba72cb7fe9c06cf0", - "0086a44d6ee4e8c50d1e10d7d1d113a9610750210679e0e4cab8c62267842938" - "ad5d933c980eef9d4644791bbfd35bbac649d213", - "011da63212631605fea0e93f5826b1929b2bd1db950615fcb05eb47bd9cb69ea" - "e03b1c33d7a9e47b335a40498238fedb8999b04d", - "00b19e052edd44421ee2f5ba845911fed9183d885da85d51dc819ca565ce574f" - "7db257509876377b40c5a08349019563b60e13e9" }, - { NID_sect409r1, - "01b0833eb3440450e3fa5148c25c2df2e0020626f2407422217e4ecb8bd8a751" - "a72bab2ec5642ae90fd29d8c4d79e9cc191b5ba5", - "0023078905b6a33009ffea1a1977db943579afbeb871970059696b29ef90dd84" - "61776b343a09c853a538e4f22fdf854fcbf3b734", - "003e098f3f195e89da71d6367000f804079adca3275b2e793e8d312c8e402cf0" - "d0ce5331742f87515f4dd9cc668246194b9572b6", - "010af4ae334ba40bd6538e0f095aa56f61a2bd2b5f38e954b7617d92ba10603c" - "dcca836554d0242ddb37d5e1576b0be69f0eece7", - "01b335521aec305f314d7f23ed28cc0c4d23f33a6785fc6c6de93e5fabce2713" - "02f9557f6d2ae77c52720eda5a2e15436443dfd2", - "01697512676ae56ff5ab778c411042d217ad24a24ea05bbc253e4395fecc8a07" - "fe77ae0ca4ed977459f1a14d9b83931bccf46107" }, - { NID_sect409r1, - "0174bd233f861c7b853cca8f5a383574849ef2cd76ef22bc0e159f713a1d0738" - "7c4203b11f4c339b669674fcf1dac199703beb07", - "01e2c778cca64963d87329e57c8bc96d0f6737041fd087dafc07dd670e2ce725" - "547e1a261c43fbc54e14c3473ebdbb31fda8473a", - "007d849313c6499dae472b0bddb76dec45806f82e098723301df33b6bbb97f79" - "4bf26879fc33c2973f86c1551549641a819b5711", - "004812af1937630b8ea7d0ff723cbb05b7a2740fc4c9be792db204f929674c32" - "e47d85e4770b903d3290a6d62c274cb257b76837", - "008c6f61711786bf5c54eb0c1b3126d641b24a6662b67b257302a9a61aa8cd50" - "3846bcbb1b14fa5c97454368b6c27dd2de2ae80b", - "015960ea8b92bd77d52874e3ea82ed1763440189d68728d3974d4c01d6aafdbb" - "5274648f6f3eaa4faf3fc72d09892ab038cb2fb7" }, - { NID_sect409r1, - "00c1dcb737d253035bb91d2a4a85f37d00142be81fc9278cb23a4d1d79d27c8d" - "3c4440b2c842bc1e21f6924e14dc831b0abfb845", - "000c73d5687b0490ccc07f654101acddb36cd0c2eecce165df276f83be211d01" - "d30ff5c243f0900572ee6df07f539df6a4689b0b", - "00bfa594856c67c2836b7fb171b67c7a41ae43ef3450898024a9313654fcf31e" - "1e1fbac7ad52b2bc4358975a5c61ab9f4e3e4e9e", - "00e1b5309a44800a916ad8a4d19b82a58b00ee048248050a6ed6c33ce1bc9701" - "547e93d7c9042f8490654b73a2cd7d73f733c0bf", - "0180b20338746351faccfb9a3711a4e138457550bbf58316034c6f216a537492" - "63dffe2359bddcdc89ec6446a9a4a9f4ef90c86d", - "01127491ff33a67ffc4757416cd02a081cafb723aff52af35b069b89963e8e3e" - "f5bc19c5a093ccf511e3c3c19be789280e986809" }, - { NID_sect409r1, - "013d96a267d1a2a9ea83aeb1b01d8ace22e251c82f5f5fc3ef5997a3011a74a1" - "0115df60e98d139cdd360e74d76fa522eeb56f4b", - "016b655ab7cd0d39f588fbefec54e4f45047664c8b3be8e57ab113770f5fe0c6" - "2300f4a09fa2899e73bbc9823265f55d5cf4ae18", - "004a020e06c400ef2498c111cde15087cda48a6fb2ecc01d985b57f0d3921920" - "e92c43f3ab688129dc01ad29fc31d68e9622319b", - "0167227f62849594ed63f247f780b2d11dd9a2c2c71bd6b71294cf8b59ce690b" - "fe00da9bc1db8d1daac9bff8c00e7bdf071fe0d3", - "0136c3ea77d093d9739fbe6891318b14959778599bd1e7d5a97bfc82ffe85fd5" - "a9a01b82f72e11fad96d2f5cb5798f59efea15ed", - "01254508553eab09fbc2fafe13fa9b324d9217d7d0ba4cedbe5dc869ad68de4f" - "87774dd17d6428ed242c71956f252969e6bd5837" }, - { NID_sect409r1, - "01787b30b3b204e298690b9d711ffeef167adc5792068b5c8d422ec90f94c2bd" - "d284cdbf8bee642f70bd7be2da906b9edbbc2cd1", - "0043078f912110290a13d90160f0e71582fa39c0e75d8190eb811d450220044c" - "c6d680d956a98860e6fc85bb86d65990a160c5b8", - "00c19b391665f50353547fc72c9ed019f5311690ee41e7c895aa7ef92c60fb9f" - "3454dfac575245a6869f1fdec745d63ea56c8922", - "0053a7a62a8b4044b60af76efa5b44429bf65f65987d6a062163dd55f08dc9a9" - "1b8bb9b6270f8a026123f99eb9372ccbdd27ca3b", - "00add46f7ea7092f48ddaa2feb96cb24bf92d2628fb6e4f7cddf523e5f84011c" - "f8aababd6009a13f29a63b6b7ee664c66f3829f3", - "004b9accc21d7122835fc21410ed1d83767c47a54ffee5f0c180fc55f3d0e848" - "4af3ad38020294be92f02f0ba7e2b4f4eb1db07f" }, - { NID_sect409r1, - "01e9da0ad1a15ac3c431f220954ed2e502af7b746c3fd57b2eceb7748658020a" - "095664878354df0aa181e57e5ead2c985ad3023d", - "009cce73a54708348b48f8f3f674bb7654f441f283d4e8a4ec8f8592ef52395f" - "24c112d5942d3ae08ffe8d999efde399888a7cf3", - "006c9098b53d10f2ac0284a99902658f667ea4cab28698af3fa07006a1bb4636" - "3b103c4aa4c92c1c3fe7539097fa70b8a4fa46c5", - "00d3edf652f43f9c9a92a2e4d34ba83f5d7e950c28346a2a6851bf7554705014" - "0a4e9c1c1b500e1d2ad364c306b9a44af503a621", - "0099b26c64367f1903da95df51562d25042c01a1adda75bba58bdb0d8aab350b" - "52ecfbe98488c2619de01cd70f5e008953bca547", - "0093e2581c159d74d11f8667ee03399208b5c1a4ee5b20070ce8d97d251ef123" - "6dc81dd688b2f07a730e6b8aeca0c193a28b178f" }, - { NID_sect409r1, - "00c49294fb712942221a2500324af7bd8c7ec1cd1b8094ded1bac0010a869608" - "3f7efaecaa5103d6762499e1be4857d320030281", - "00564fa1110b393925dfbb24ba9a6b3373f4624ecbc3e12f9706f3ab0542992d" - "8db6c8d8bb25fa0614d486f6d1ac9f3d98b9edfe", - "00a7fa38a8ab8030d6b497a23bde5e5007e39d14da9f82dc564ae3cdb4af5fcf" - "41bcfef7adadb59171e6d7d3d3c3ac67f7be7073", - "0013bb3ba91d5d2488af572d995cef8fffb1fd85d113421e8d2c0c3aa97cdb8a" - "933fc0d3f05f4646ce841ebdcf1a98604bffa3df", - "01f2e04ea16a012d4864cf2ca7564846de73a33f24578dc4d221359c4f2f86ca" - "823cb0596bfe4760e9eadcb4ad508ab1a171ecbd", - "008e2f1c4bad19c46a5134afccf7f4ec14ab591c8b8ea48d9c3d1e7354ab43ba" - "20aa39a65fd92cdc176cf3dedecbf9da49a8d855" }, - { NID_sect409r1, - "0134add2c499172df792d94a9b3895e245b84073c325263a858c1e9f7cf30a44" - "f268d3f8358411dc0a9caab505c0abc016130bf5", - "0031c236b143ca036c883641f7f9b957f4f798a31667c41560340279fce0962a" - "21bd8bb52fa23db71a84f35a5794ef5e075972dd", - "00ce9f827bd24c014c3ee59edef747178d6c030c19669ad8e718ba1302bef4b5" - "ad2c1233448f5275b29a896c0b2e7b0da92068be", - "0176e31012d9c604b2d1a1922a28d8a574f060cc36388b2816d2f8117da20c06" - "99ab0a08f76fbaa476f0a9c424bf4c952b4754fd", - "011fedc3e8f8e828e0ffbf02fd85d29c0201fd0f53bf2614c10ae51ccb58cbc4" - "900c38cc4c9a52d86d89f9b8c2de4e227f4e228e", - "0190a1693eebe287ec980236d8762804d23fdb6f222763a0efc364f9280fdd53" - "394c2badcc51ff09557f3b97cae7f70d790bf9df" }, - { NID_sect409r1, - "00f0ec972dc9fdfd08cd8dfcba7298b4df2dbd80c20b2889e663ac58cc348cbf" - "8f9ffd31ffb50618d6c38d72a99d5c5d2eacc001", - "00bb0b48893cdb915e65cd5d797804802017a295343654246a37fe3a60d7de98" - "7e6a9a10aaf063d96b10184612ccd26407d7e03e", - "00e36f3b9a1341995b13fe70bc545d279e6db1482c92b13ce8cc0da1c100ea2f" - "aa803a64a58cc7eb1cfd167570835c522f659347", - "00d1ca82393b8d50bd1898a909bf39333eca3bde98b0b0dced66f828630e69e6" - "eb128b7cec23f07260047073260a765331dd6f57", - "006c535ff943a0fe750fc6c39904a6912ba1ebc0f46c1b0823e4013c77475ea2" - "9b3f32481966f1b165bedba6c17a1494fb6d4f3d", - "001469dabcf2210aa7de0040b201221eb4d1a4725431fb5a93212a66ddea4187" - "e078f5e3d82606f6cdfc0ffe6b69574d1d0ba643" }, - { NID_sect409r1, - "01378444e0deecff3aec5ab6e74e8123ba98d8b91a507cfca0d85097aad944c1" - "5b4fd89c8cbe2c7451d8ec641045421b4bf6978b", - "016447c213c9035de7bcc29bdd61d6ee6ed5579c36bec56bc6b44f9286bf9e99" - "fac97f356708cd0310dbf6338f9af8d7b1359102", - "0008a06716ed6f4cf728f9019928f367c77a9052490b9a8ba87a59cdca84e77c" - "6a299853f5496febe652f4ba333501c4fcf2ba2f", - "00a045b5e6bbb7950495f6d5d645a2b7d72006725d0223c7ff75534022c9260a" - "b0d2d8d333789a3dccfc3a89502ca500bd0c1f61", - "01ec556e1b1621ec1893654e198d5923e311478a8bd2ffff280c9092ffc07372" - "89a997492b6e9ebf931947634ef7f43b429cf36a", - "005c701a93d7790322aa7c67440fdd9ee8057a0dae86d1e856ae89e7893da178" - "bd67777f86db2be5c8e31dc50ed8a440aabc342d" }, - { NID_sect571r1, - "03b63f5fa112ae6b5f113c765144fe4cbd6020e26d400c11609a3a634b9a325f" - "416b0e3d3215734c68a1c2c8fad1d0bb9eb3939a41af22421f68781e7eb0664b" - "9df5cea448deaa3b", - "008e6cc77bcddc816e84cfc1f626824fa24d3d5fd33d8093cbfe1fc4d881b63b" - "494123bc759670edcb1887bb3b9d5a8b516bc503828163709d4dacb594d277a1" - "5a92c064e5770d1b", - "0344f22be87999b95b2287f67430ea8fe646c62fe38b7ce61f1f956597c27bdd" - "d9902e20d4436abf3bebd8243ec29a00481a8a2c19f550e99641b5f14aafbb5b" - "da953a7559f8653a", - "06af71fcec1a2904116fe14878663764c1ec74870e5d2d53919f0b635912db80" - "dd5460d9e699458ff8494c5bfc74fba8d3b12f65f015e8def10de33f1800191f" - "4cb502d21938b951", - "019584177b189c6641ffb678b6d7833d8d4bb25dee5018dda4e4c0d219048c01" - "cd0da9eaffe346d53cf1a07b33b3dbdd4bc3acabe4832f9981eff2660991aac8" - "52147985eea3a51e", - "06775e1b99a236e02b020bc73666e5751c1210dcb6e9b02a69f4075376e49f7a" - "1476d2209e861abb73f5e3ad189d268e035b1de93d47b3a64de5783c9a09bc22" - "3e1cc612f26dcdf1" }, - { NID_sect571r1, - "0575cbb059f423309f993b6c06ac71d7bcc5d1e6a19afe72811cb612a6238c9c" - "cc331e67da0c10b88cc2a5f1ef2ff6d6b744065d242f598da2d6335d4c3becf5" - "c3953940c60efcc7", - "06b433652e3a36a07018aa8ad3d2ff31ed785ce5601716eff7710fc13c6ff9ff" - "75c7f3701d459fd8fe70c0b4afceda08681717db9821d8c858fd39e274ff3777" - "2f8e84856e706745", - "02f4d2b7e63660e6c20949e06dc670be8aaf82530e0b6eafe21011fe9d0f4407" - "c8549515734528cda299e9fcf738a97fbf43c4bba26744b327531b40143e158b" - "c8645909ea888456", - "06ea711827ad8ed589b709ef35f6a9cd4625798bd887e5fe59c51f0f41c328b7" - "ecdf84736c43fb70e3986ee5e5f986e009f641158a75cce6b39f53a8bf068283" - "0194e4007148deef", - "04c6b9f2a6099fc0367fa9609394c3221ad8c6fb111d2bdc4305053804788d32" - "eaf76431406e768a448cb5c8e34c81225eec9015abbd92725c002712ed3192d8" - "07b36afea853f722", - "03a80ea8cfecb858f9b77bdb46b6cda26320ee8c561a2fd6b7e0a2b62201fbfe" - "60f577780c75a98a11a69de4c4ee911930d2200b6972bc3123d7f278615ecc65" - "984a59fe352a1cec" }, - { NID_sect571r1, - "064aa66830ff44324a67ae8a907896897b507566cf52dfe13e3adbb1e793665d" - "2b718358754efe809e4496218502feb5604dbfbc04a1107ca9ec4eadc7d10a9d" - "6d1474cedf578145", - "06f63f69f8c18b67f11051b3d30236a1a249088b2bcab5cff830cdb9eb3e75c1" - "e87252e5d8e61bb1a66348fb681e962d65abc54d5dea2dd72c554590740074f7" - "c66c4b8dfd307561", - "012b6313b56853cf8d0273049cf7ed2ab8e632e59256ed043366857648f3f2a9" - "674caeb6fb0fcd5fbab0bbabbce17a0fc4a78148499c389af57486374641695b" - "0e852f3152eec724", - "040a78763d170459dd34b5c04ec782e698cbe903a5a348551c5248d9dacf19bc" - "b9a498ea05e80e2d6cc1f3ea5ba3a43855b801c8c0356fe3e29ee224bb91f4ed" - "0c85678379b72542", - "01ff49ce0a62e9edae6aa63a9848e44f185412d0feb46b87f91424bdaffed516" - "8321ed76f235f75d33667f6d7d6a9c857bb4f85442fc40f9a20c04ae06362a46" - "eceea15c45d69beb", - "03edea7e47ded7c2ab1115f4ebcbb42677c7fba6e0cfd811602896251ada1d5a" - "0b461aaf4e000f4d4231b96d8dee7630d9f1b7860e6418dac8c3b07b66af6fd1" - "acdb44b2683b29b4" }, - { NID_sect571r1, - "050671af65cbef92f305e5facb4288cc04a4c6978a3b78afe4049c6a995fe8c3" - "c0bb609abe49d152b1eed6c714d254fe6eff159a9ebd24ad16919ef76f447005" - "7eb7c265a4bd96e8", - "051d08e21d264d8e4dbc73408842ab57cd78d323e7deb625b3741994b8affe01" - "af4461622db419afeead045845f6c3db6d982f45b692bea11cf25d18aca3c83b" - "ec840c7582a7062d", - "021997b5481c0cf6cf436bfe360c3b119b9e4dd56f3c2847affb2021cbac4b57" - "dc18f5075d678af2ba6e9eefbc4138d818053f2df32a10e8ae5d6409f5b2f1f3" - "cabf36f808fdc07c", - "0560cf91328c26bba13f71c9b5dddd05c185969d88bd0e9d34a3607a923b23a5" - "b675452167003ae2f0add5141ea4be41ebae91d3a6aa15c393dbf585ad6c9214" - "b269e86b4f054bf5", - "02e32ec240418a9a4f9017e632f8a77897a2233d6f1f45b8f7aa818f847ddb3c" - "eab5a5a12c754fce8d57b0320a076b53441dcf9f65ef3204e089191ef156ff76" - "2294897a72fca932", - "005b640015330f8416f2bbbf8b5660e01a7abba8b0197a29e52bb535d62f89ad" - "0443e08b6e0d1d15f4eb03c0fe35e3e43bd7739cb692092698a2cd13126cee44" - "32831ec7423b3434" }, - { NID_sect571r1, - "039ac9e91af594074dcd338da4f5240574f01e413a49b92246ba3d6de855e3de" - "df6e7fdeda9ab7f7f8476e770ce9bbc3a9a5eb984543dcc37f5f11be6e28a1d1" - "090931f5c5b5a351", - "0780d32dbb134899bda2e98848941878387aba6665fd24252160ce3123f68f9b" - "5bd8f254a38b84ec536525fe007a863b6fcc489f937a05a5fd946d62825328a0" - "9f83a7cba27fea5e", - "02b539acc770758799f439670eae85b9ba34a8b4f371cc935a20ce8c566521ee" - "cd8c4f5aff116ae0db2ad6eae1a3384434c599379821ad05d81ada0548299dfd" - "98cfd6d3f1573524", - "06dae538c820443977415cef4e79974ba762b69b434810200cc6fff326a2344c" - "d21be19c153642df82a3e57a5531a8bf19767e1995d2728fcb661d58ec561ef2" - "3a34d8607971490d", - "0504243c792b903184ea725a947ca89218ca9c8fa1e09a7dd68de88eae90f9bd" - "2a8df414dd69a8b2b1a2ded2c6d7f514c8907997624eb0bc9ea933a2d474ef8f" - "83baea3243834de2", - "027af05ecd0332784d64b0b1bdb45c310fd445c5a6d6b34f35f4eaa3fa3e171a" - "b98763d243a1dedf46aa29864620a47d05eeaefd748186bcbcf187c01e7ce36e" - "2a53ded071036b59" }, - { NID_sect571r1, - "06f6588491060a1e88148e4bdee38bc674713fe384d7cfdbf5bd90c9dbb6e158" - "7e459dce6e0d69b8b2cfeb5055bee56a73c13436060198ad4750dae8253ea839" - "a2e246d541459775", - "05b61b8f7d8d6c8162a2269e7287d459034b8faac0360fcf99fb21da34a314e6" - "735319b9d03626b9268369345f3a624acadb219b207188d0e945cbc67c982068" - "d32613fc21f8b0f4", - "0318a96e382782d4476f1bebf697a1076f22e1d2ec84747f9fc42505d5547daa" - "a08d814721759659958685cf4ea4bba12fffb66af09f6694521f11c09b6626c8" - "ae52fbfb336a52a1", - "06770f2fcd2e9b7f8bc5c292d283abad85155071fe37ef7ce84f34c7616da3db" - "e1bdce9ab04cea7bc4bc258c5d2ab77239d3d084568b2dff779988288d9fc6bb" - "364f519d0e855ad3", - "04f6a1f4e5fe00fe9a25d8459b88803988ef2bf2fef5a23f13e7a7e7f3459abf" - "c3d5c00303abcc5080fab81b09d5be0320ef990519a06af13c29562ee955715a" - "82cc0daef2c5e0eb", - "0763c0d659a7c080912005a2afd60ce57e610619b388ef3d5dd3c9386ab12069" - "c6ef3a8e72eb741cba2da5c6f9267f6c09fada6459690ed4e432445d6f0f72db" - "cb059c87df36f665" }, - { NID_sect571r1, - "05a52cebf68103cab0266cf2c689c48f080549fffc70db9809c2a46f908b7289" - "be597329f39ee1e4cca398664ffa9bdcf01293f43593d188e12411d57e559b3f" - "6a30e9554869f049", - "014e137165fb0d530e8653d7cb2a84618dd3afcfa3f08560179142aae972790c" - "e746a2fd4469d41558744378c640ae73a489bb7f81cdca6b1bb167c794c26d62" - "38a0d256afc3ba21", - "028b4319eb7054cff6382820c52f9c332eae670d1f07cfc8f1472e9260f5e47a" - "385768016cd2006700ca7bdc5d1d567d92460af7c2a425dd0d78aeee3d15fb28" - "d71167e6486b81c4", - "05b1b114cef13aa5df306ce74197d680f9b8c9d8f6753a09db88466a6bb04eaf" - "1eb873836022d7504f45fae85a8e4a5417edd7ce3a0e5eb9e79264884ed78357" - "7b3fc52d825f0b57", - "018e3226e36b4b336799c4684bba505e984dc8819166f17ceb840e36125b283a" - "8c8635ddf7e770406d9856d82b37cff1fbcc5d3f5cf4b55eca41ee131f21ea7b" - "cb19ce05f6564245", - "0428413f2d2aad4d5288885c2edc8b976321ae1dd4fc6b41275fb88b8c5e7776" - "165effce79025163538a0e83c919220a407ead6cefd616b4b05294488c2ef5d3" - "0ab8caa55ccbd1b1" }, - { NID_sect571r1, - "026e2f1ee64e7958e902547a7db0a1e14866f3d2c0127c2bb9b09ee232d3d951" - "8ee44ae8f5bb433a088069fa386cd5c8902711b762ac0da3a7a3420472c47e85" - "0f988dd60a636d7d", - "0677ff510052d4f460849fb8ef0d4f3519cd238e4e1c688b736cf6e3759550d1" - "34a1e6ca3cb479d68b4dc5d0bba1aee178bd6fe15ec196fb1f627d87079394f6" - "f7854e053228dee5", - "020115d17e41e13178b42a004c01d5e4ef1c76241049c7d31bf0ea85d6e070a2" - "e2b92080e61de546fccbd4d991236bb360ef3f206ee16d8843a0ddc803463664" - "a8ccdc2d87a10277", - "06c8ac34364acae35e3c417160333e48641868fcca04c0d577be06f58ab0a55f" - "d7db779fe737779da33d009f57b5bad49702eacf575acbaf27df833070cd893a" - "7924770c92eff3a0", - "061b82e545d41c62fef068b34cdbf01396115d2a1417f9719483d26986b6d52f" - "8f6de06837795f6d9dd7cd095741114318c6e8a6206b3deeef014f0e44b0dc66" - "84e100e4ac361650", - "031bd2a84369e93dfa00581446d52762100d985cc7bb91c4fa8be7472e2e8e97" - "81c52b19a54330442441bacae23f4bdc76486eb475d51f26aafbfb272a5ab5db" - "184a4d3c3006e5d1" }, - { NID_sect571r1, - "023ee4f9ec24dee203acfb658631313c7ad4394c47f1794d08b599ffc15f0e5d" - "ab2911d97e030ddf7cb4bbadf8a5bce05c35358fbd0cf95d3d5c7ff3cd8ee6b5" - "4e379d8d0123939b", - "0606be23e7c5746dbd38404fd607fb7f278ee249dc8e2740cf1bb9b1c07b1cf7" - "e0a50a432567d1869799a803122510db437981a2aa126eb9aaf3c7be05a80fac" - "1495e1c40ca1c106", - "00847b545ef49615671f08be73a49147063184493340111ea4dce13c2f921f07" - "bfacffc8441f4c7c9d0479f57f3a13f4c33c63ed47c3a43fb2f06d06a9780e5c" - "0b3ac30410adc491", - "06994ddc5ae2c5b6f45dc32b710f1a49391a47f3a0f8c2d7846552fe487ef01c" - "ca0431155bb54533b067a29e8367373af95d6a7f0bf98d869b708f48f95f1b88" - "a1530fe22547e97e", - "04f6288d4d704f33a898031e7d0046fbf1e34a72c8af190f4d33163343c897ba" - "0c0d8af8a86236a1c3b655b979dc4522d33d66a665b3b6501570f076322af0ad" - "2bbaaa04ea2e995d", - "04df20154fa49a1d6e04dc2ba6e55a7f2ae575de5e2c6e4091a4d2c36aa93ca9" - "699b890f0ee4df53aa75d0d9babad68605bc027ec67c187a6826aac0f4bc596b" - "aae788b376110216" }, - { NID_sect571r1, - "00d4a0b11c1739bed094e72d7a6923836836d9215746c72cc680045a36d81adf" - "5e25394f269a2ada1d9439ebc33bb931d6fa595a25261c244a1e17b046fb10fb" - "54bb312288cf2e8d", - "075204f50d32ab8a6abbff982d1fe372b8c5415bb5b726b346aa4f08be32f8ca" - "282c1ef6e152423360d97b728a074e6b3cf3b912718b1692cd983019741a2541" - "824234bdc8c323f9", - "034c2458302b43857f12ad8bd9a875237641a21e21ca3cf9a0956d3cfeded96a" - "5e1f533d827b528fbb586da93eefbb66d0778b19b1a7fb6f17bbf9e79b9acefc" - "dd7b9605e7898f26", - "032d3a7a4099f089fea9189211f7366f2edc4abfb316c5c05948d8de57fca023" - "bfb6a11b102ea4120ba62192c0df610bd8d2f63fc57727f4a6b640abf8d299fa" - "c56c4c7af88349ea", - "04e6399f1ced2669d3a5506d35ea2bebfccf0cec84bc97383aadc3b48347f629" - "626e6096f890435e5933675048fdcefcdede3ed616e6560d42e9e17c5492e30b" - "c2de4689c0592ecb", - "037a380f525590582658e2dd272a32de67fc0cf5390b37f4d33c1359f075d446" - "1ea38a55027317892a3d1d22f5ea333ad437667d2f3eb8781c39504036ae33e4" - "b0a26b6894722f0b" }, - { NID_sect571r1, - "03bb84032b7fffce27accf354b89dddf646cdcb56634df0f8520a7730f8abeb0" - "5f9933d8a4352d1c7767cc3f9b80ceffcdd0cb3a97b59283fd0a674dc4fd2403" - "33f020c82b4804c5", - "074499336ac3a805430789902768252026b526ece54ac28e8cc878f18baf9fab" - "42ba4ce34e4968aac1ee6a0bb15c9a709882a5372af56ea0b36817385fbbfeac" - "4b906069e53fbfba", - "012db785a03c26be3a6e9a582e5c32a89570ad4308b713ce5471ea193dec1f32" - "d68b4fcdfb1600fdb1ecb6769e26a0e057812dbbf0ed495592665e6b8e9a9737" - "8a30b5c660fbadc1", - "07edf7ee0ec77f5a6c3c9ec4ed8fd3cb814a342e9cc6470b54781ed6c141e211" - "5c86dbd7ba27993eb7ebed7a38be488f96fddfa982f3691aa1c2a697f7706bff" - "3d1add7396066194", - "07b3824b7f7b266fa42fe536adc2ac79b9d1e5b408e7217b3a99ddeb992f3123" - "ff2d168774d300a818a32692e265afc6f6f578d9bd3121132b5979841f7a2d06" - "0e8948901d657c1c", - "0420de313bddce87d07321e3f0af404d9d13e5369b79506e807178711153c9b1" - "837cd055562eff3aadfc5954a221eeebb1bec1696d3df1cccfb8b61172a50d83" - "cee95f4140ba070b" }, - { NID_sect571r1, - "06556a4cc98466794a93d03388536776f7a4b3344c3dc4eb960a4a6458fc7869" - "cd4e45b2f140c468a7d4ebba84c9482337a2a8adaac88a9a629da03dd2475266" - "42b0ab71fb7a8c70", - "054b97d952b19f742856dacf4e50df0c3103baf253f4de65a3d9cace63fe8290" - "6d2c8e8a3312fb535e00f9b5ca69f87dbc7fa3f7d87fe024536604aafe464059" - "3cccfef6fac028a6", - "0202606a76b6a13d6e29280bc1613e115025770b245f5561d5883e135e159cc4" - "37b1c9355b2eee2b3babef229fe545aab2bcca155e8972495f1974bdb1ec0e60" - "c4e6c79c48f26a46", - "06e74dba4e0702f186d334d3c49e2578e1edfac564645dda8c4a588158f8d7a3" - "ef63243653c0d507427734fb4cc87adf4a36bd5abca1f920b9bd6e3bfa51c916" - "d5710884594e9485", - "05b92147a2db48a3830ccfa28951a2b7e8eb84313b99b0a99031c7834c633f86" - "5a2f9844952528ae5dee02428a824cdfb7e20928ffc53420df38ead0b4240d06" - "59d5adb1ff2e2dcb", - "0606228f5a05077aeefbefac23c0d5bac7a6062bfc2b02ce8bba6698ea96b456" - "b1f0d32c6e05dbb9be61a83090428eedea18c74f41238edede9e3a12e28722d2" - "f314613c2e84d6db" }, - { NID_sect571r1, - "01005182b029a48528eef5ffd0221ad87085abac6a72705203a3c1689abbbc0e" - "12927a5e83b352a1bad97706101f44a1022ccc0d5522dc5d1ca1433de03a2ba1" - "df864875f522be61", - "018b02a98f0b3e4ccf44a96939a2083ab1f2a04dafd5bdcee3cff438bb08bff1" - "2043aa192c5fcf34e13b5c29742c5d864b9cac46bea6e96df2b1be4493acf950" - "224d71737f990658", - "0048678348ac33b92f2c59677103ea409946b5593d105fc4983351c4ede929c4" - "b93bfc695876555e3ace417b82ac05b832676ac23e2955a09ee64a20a5f98e62" - "499f43ba7f7fc8e1", - "031dd4808d2b341b8881f5e50a2dcce38df839009f92185978dfd9a60cdaee00" - "5cdba82655647736d407afb90c67cddb13ba2b01618f45e8a274317e02f770f8" - "0ef87bbbc1b11056", - "050a0671c9c0ce57a494e6911f1376cf1fc3393885ba8c26f6ddcbb536187686" - "0a35afc1f4560f2970c30db3f1c817dbc8af2b025daed3a9da12d2fae9d714ce" - "ad80445e6a0a0813", - "052669336019db5eddef5eab2336abeb60bbc7295e4bb663ab43e373fb6d888d" - "7433ec89a487a91d4a59c289a9509ddd1bab33cd02a7bf37aaad78dbedf0b4ae" - "5f2f35d15cb4e628" }, - { NID_sect571r1, - "07fab4e59328c700f74649bd90a7d51ff28958fe720daaab328cfc9b002aa706" - "ceb39934db9ccf81deec95689ce8c776b4fc6542a82358cc51ebbc6d8e5322cb" - "3fa6e4695e170fc1", - "05acd45cffa29ddb34ee42e7410026798e37a8d1a9ce9f9294da5198164b6901" - "0c68c53281ccbfc407d141097da137e7849f228fdc1a07aa298be26ca771f47a" - "c4feb2723d5a6666", - "0017bab72d788f8b78b9bfc4912863c5a48922fe69e8a4cf5e6e91763efd5477" - "a1cd439dedd0afea504e3b3af6823ea3089c0374ed9aee24a88516c8cf3afabe" - "995b9b9675f3b5ab", - "0161c14bbc84e42ec7677a8c3770065ecd1f0f44eac8242a715a61971e7e4fff" - "f78ff57a1bf1b95cbfc2ed957d1195f9ea50809715c2439c7543e57352013542" - "6d47535b8bfc8533", - "01253633d02251464edcc53ed9e8a9ed9329320ef5eeaf35d64c59b9735c96e0" - "7f1a62ec17bcee4f04cd9a85a3eb504aaf37bb388c6c7d08d90aa0b68556b5c0" - "68ecbf0a5984460d", - "062de5aa98b440c6cb7a1428f6b5e47452b30454eec4d651982b531121febbd5" - "a3833b180017f7ddb5ce38d7bb1c842de1a8a8fc7fc981e24733b7662813fd01" - "0a4e757ca4ea5c28" }, - { NID_sect571r1, - "072676302ad18731b76202bc51429ebf7eccf6325f4e084c2f92e3288ed29048" - "8b9e36720e29daa2db1993a7d17ce8ef9d8ccec61de8a407176e2674c25d57bf" - "f2c46596358b3605", - "03c0022d53229091e14af0f7450deca1cb5db821e71590608fe0986d73e88c91" - "5e5ee8dfebc8955913d9164f992f56394a662ef11c8214e8ada85df1b17b0b97" - "414cdd662d188b5d", - "02ab2d43027b08f8abfa3598ef0144399a60b6037b17a3ae413d422efa2167e9" - "ea4f19d7eca98d85c67c1fe85fbcbc1f12bafa30a85dbdf542466889315f1532" - "defc5d181509f008", - "0328c0d67fd552ea10e5bdf7b87d50bf4dcba34dca569aeb869c5c7dc7d832ce" - "30feed32e25a723793f97c557e2f978c5e1349e69b73ef9916001ffb0d6cdb2c" - "6343e34538386e6e", - "01d151b46ed004263cd9a5c0d46a840d03222631f92ff9280e95a35746cdbcaf" - "d9fed6811c7614b9d50aa2828dc7a275b39d3d418a349dd1e2b73211f4de9a34" - "b42fca11b9760eca", - "07c7eb4892816cc3388ebcdfb412984e05910c112dd15b8e5481719401701ace" - "ba22fcf35aab0c3b040096161011f6177097c505395d9d6d8a713f6a5100fb47" - "6adbe7b9cdf4b68b" }, - { NID_sect571r1, - "06cd7931fcf1935f81f301479ed9ad0c6f9a05becf4e573a2ff409bafc442ec1" - "95f7e3fdfd08e58161d4e0fd37f62a969421b19cd48fe848a5d7f74b8137a7c7" - "26a9cbd37a2cf3b4", - "04b5b2cd83b27895751c34d3ac5b960a133ec18b039c2e128d3441db4f76e8b7" - "5064094619b122e5fb2f1c2796559ad953c711e330dc7bf55edf29f095cae455" - "57b7c8d5843d89bd", - "0049c6e4c05a197b24afd2707243ffbfd55b0088fd33d87dae4d21048f75f2b8" - "62563075241d2f36fdd0e9405ab42aa55cbf2095dabc3daedfae9deb92222078" - "3e8591cfd67600b1", - "001fe29a4c2dd000bbed129121b88edbb5c39b34003f170ac19fa9a85c5fe587" - "aab821361f4963440f25acb49758810552f06b719a9eb43b720e9b7ad6ef9d41" - "248d5f335f99515a", - "01499db95808c719d24eb05c633db8b05cf969ca0bf656435b1fdf1b0928290f" - "6a6bf880adb9fd53c86ec76e0f62ce89cbeb4c266f64a876d778231a0030c38a" - "a00d66c6bd680785", - "05c638349000ec30881cd190c067e7f12b6b42d5842a8285a8ff0dc7e9c9eaf4" - "83309e48314fdc2ce7f9da6a468e549c8e70a50b68d07aee29708a98172209e5" - "cd2e8c09cb66d982" }, - { NID_sect571r1, - "02984b653074c36a259ad956d5556512c2c731fa50f2005d0049a9d977de5c00" - "b7a054c960cdd707896321490be433bd5effd44c564eaa2d5021175050c5bfc1" - "63cdb1e81df1335a", - "01a786d29098b334f5c1c4ae86a41bf275cc6787da7206916557a4f433192141" - "034567e041d55d794a7707c7aaf28842d5c8f590375a43656918aa80e55b0285" - "347cce8ffe1f15e8", - "0186b31ce490c7f28f2793075a4ae645acb39e71ffe944ee62bf82587f1c3cbe" - "288ce6024d8d035f107d9a4faed57a7b21ee1d6e7129a098004f22ccd52740c0" - "34a6df37b53d0732", - "06b15f1a859e3d80924611b20c1b94dff6bd0574fef81937f1e54d148d2d31f8" - "c21b0ea9ce031c9455706f085a69fd492418558c7de9aadc2c9a996e7ed1feda" - "329c7d7609bb6b22", - "032910544cb136e2c29aa33572aa6c3471a52ebca6b228bee749fa9ffe29296a" - "4a5b6aa0c6dc9f095216e7b1513d81cba00794a3f558f74a1b541c73b2308f4f" - "8e74028b5c2bcdf3", - "007a40a59b6632156a43158565a4eeaf80618e501c5ac5afdab4ce3cb76ac99a" - "0bcd17e9eec549373ace8c96aac78e2af6600483a2c49ec81298a083d5237118" - "de96a953999beb26" }, - { NID_sect571r1, - "01a8682e09eccd1868da202916a561ee8513c0d73470cd341aee79ed93556a3a" - "6e7c7b20302ec74a0c5170a8e37d78a9b5d0de3900eb2a663a7247cf7943fd38" - "1d95b3aafd156167", - "052fecc68f7695d4e41a080c47650d202874da163a1748e550373958e31bd0aa" - "e520996d30f384730f4854f5e54e68cc24958adc52e2a4c407356514f3ea7166" - "056dc67e4d118fa8", - "0341f8e86182de4fc3f43857250a929a41994d331da154c0249fa0d1c26a6de0" - "e835fa08a8cc524e3dac286383f90bd2f4d2c75142f1d38108d9c062143c8e6e" - "dbbda0af87a76ad5", - "02c5c5eb7327402672573c37b492890343ab422b51bc65b600766ec1d07908ff" - "03bcfde7694d832bcde52946339df0aab4074ae07a89f821f5a1130d2b73db0c" - "423ae7a023ae2c18", - "0476ed3dbd936d1c36987a43512c8f0562e316122d05a7edd4e4248984c11f6e" - "b85215d5aaa0262a95f20666c9dbf45248ae177d2dfffa3a6a950533298b5c3f" - "4a1b62da1eafcd51", - "021fd2726973405fc30d2a1f2115907cbd0de90bb6bcb0496452e389b1b10ccf" - "38e2400617040cf0dbb188f345337678b0ad8603dcfe926582d4321f384daec0" - "943e2cd267f48343" }, - { NID_sect571r1, - "02cdaf139a0cda2800d61128ffe4d7323b34a0fcf48c9400479ff4c8291cbf46" - "f16c41e4409aaedf14bc60a642b2d7baacde8e0051dd8ae01bf5ad2e6e6490c7" - "7cd406a999c565e6", - "078edd29db6a3b87a11505b57c543ffb746a5b40fb83d7206180f3ae9fcb222c" - "5411a77476660c7b311b646310905889a95a0f2fdc35d30fc61cc5560a291423" - "2d62ad36386b9179", - "0207a7382d8a22571226e0c06c2681d09bca19b5db7e7bbfc13ac208389df816" - "8d77615e30ca86103936e53dd9af01cdfe24f508ec609399775ce84c8689f8d5" - "f96f652e014e0de8", - "04608dc0512bc55c734cd562ac5825f7ca38b793f8ece9b981cc1c4032ddd803" - "9164d0c646b42b2fd453b5a1d3a74ae23c32c7d584007de3cd34e33121b90fab" - "3ada6621b3ac9785", - "06aa9ffbfd65c509370846707674ac723dac24a6f33a1e0bbcdf8b24ba32cf7b" - "dec8fdc9233b757bc073d64dedf484c6fa01ef28e874fb0d34f58b0e32b18645" - "c30bdcb516ee3841", - "07a47bdc7d54ecd391672f131b3214d0efc4d40195db1ec993a62fe9da875eff" - "f5403bd708fa491a01a94f4bddc7d516baffff9fbdd213ca1a4905f9aa679d65" - "da25c0f1fd2afb0a" }, - { NID_sect571r1, - "00051512e4a0dbc535c97be10ffa7425758382883040466601d5391bcb3582c1" - "1525293249f24497cc807216b34c92c1e075781c8391c3f6d3d14f88a1d50ea9" - "fc75ff8d51ccf933", - "039da46cac866ab347617ac5a8b4f1657034e3b8ddb66bc4273e2e1ce01641ec" - "e636979de8b2492dc69e88537c36b1c3ad0d35227f867e43df9c8917dce9f8c1" - "ef3ba3cb5ca8ba52", - "006ba8f12cc6e0e78df8cc6298848a740025e72c62d099e92584ac76f595ac1f" - "c724cb06a85a07f0d4440faf3ddea2f265f2015dd059a16a03a29915b8731d60" - "4512ceef22b841f3", - "0636f435e80600666108737300773a8ed6ffa8ebf8307c81ff5f44353e91bad0" - "86331b8feff3f1cdb86e061bde5f71c5fb938f117e2226a97d2b66b098e9ff52" - "5182c816e702c6a9", - "01c1bd8afae6a94108fc2c755d5de3fa2a4b3471fc2a5cdf4adda68529bf180f" - "f28db154ab4311247b392e93a335bbe8796608bbd6013f43cdcc846ec2226742" - "3c3cfda2ce8a3d96", - "07326196a7decc92c81ae5a0779c9a42f53d94cfa4c3a13f19dbb554138e0e86" - "4eee6bc93e39214e2f74705a4b172aab510444c93b5b3e62517bbb7279337102" - "db1c61de349d9747" }, - { NID_sect571r1, - "004c2de5642431bcc6eb82efd4355540a8b5d23b12b0df7d31ad69425b945498" - "77443ee8dd7c09cfbbed86f13665931d4b2a21759c33e10b4acfc63ba1ef61ac" - "aaa18c94e3cfc933", - "01765b7a37eb806d43196d2931da1a1953742d3e0da7ccb67e0dfdba5e034914" - "cce3ee6393bfde40670f406196067da8b293c6843593dd221c89bf97963676bd" - "044e8c8ab8e717ad", - "010716f2e774f27f42de3f6c9694d8eca2179823091d202f2ba1629193a1c987" - "00693398ffc83157f7ce4858e7535e3990d219bc249de164558cac807ee15977" - "8a012da19e5012bf", - "0150b3adde162a7f09350dacf460419fe86b99dcd94f44283fba3e43d281b93b" - "b54282812ce52265a94838968d67a9d6ecdc1b6cb64cf1594521c4749ea43d8e" - "4ec045e645ff238b", - "07b43321b6118b87c46c7b52288df5dd1cf7da6183ece5633b4c17cae362d821" - "191f7d57923928339aadf7d85f7f19de9486709e4d2ddef42c55bb4d76a3cb50" - "cad2a098ead5952a", - "059052d3e1c66efa4b7dd39e74299e886367d8fe49d7cab90e4f051bec103164" - "38fb29b1290dfdaec169decd622a1010cf0a0275008814f4861b4d83ba78515a" - "8768d978be430011" }, - { NID_sect571r1, - "025038a0e72ae8c16e36e3e3b504ed7341ef709b9fec8be90177346d76ca7bc7" - "133d0ec280acf066005c5cc10b52aa654335fe820a6617e560e270903ff1c2cc" - "8af1398f24dfe2b0", - "031074ca3931801a6acb765b6e9144172ed81d999ed9e835bd35526b03ef2a13" - "f78376032b0eb8146c23132365fce176a7cbdca44b35aa379859f688ac26dc64" - "c8149a4322d083d1", - "01d0103fc7948af107e51f4d2cc0392b66808059d1f26cba05be6a381f522d4c" - "b854137934accd1cea3360948e406d3108c943769dc700b4c9cc0cc1d84bab58" - "a35e27eb240475f0", - "012bda8ded3ed7e8b6d39b5855a58d725b65e3857c2a674996eb393a3e3f9159" - "5bbfa87253a56ebac2b10ed406af9dbff53b22265fbeb5a769cace2b60b45dbf" - "97ceed2b0a04db50", - "026454827efe29b324ae3f2d4c0dca3a3a95491511c531645acf545b45ef6ac4" - "a50c09d3d21f213ca76b96fb18242ecbe08af68755de4e1077173475826eaabe" - "d26a75c369cd7b0f", - "03acfa4b3d1c2a6b62af23bdff6a215a416d4437ce6cc114d17dc4201195987a" - "5d7301da11b913254702d7172e31d64e59b24deaa3270f20445e51dc484f7a2b" - "8c3cbeb0bb9efb28" }, - { NID_sect571r1, - "01bdfffd69c2e08fb03c853ef2ebd088e68d233fdb95f0b246de7955d615077d" - "fd0b0ff02c64d01de793359096b85e057b1b7f9f59262dc2757f18243e182e1a" - "0bfe9dcbb027d68b", - "0218be7d956029f139c19d2da346773b16d7afc858ab8dcb60d7e484aecec309" - "cb3fea96af3903637e5db4db678bb5db9b0b18d83cf9ebc1b1aaf24f4367ec53" - "3684ce9d56582d43", - "032d2f557fe47b8d280f682e24fda627dd7a58e9b00822a3aaf6eb7a014f476c" - "17941adc5e2238a3080d706f1e16a451b7e92942779930c5670a473281cac78b" - "858d1f1cc99b0aff", - "040f3130e74b1c8eb265e7c4e6921411eb971418267e8dea879c2e8b563864f2" - "3a61b23422c9a06fa178a8a155e3e78457597587f3e35b79f19d0c2e185aef46" - "db95819cbe127b10", - "01c91d27c2ae7113eb03be98e94d3ad6dec791fac2fe0d2c8c98b71371b058a6" - "49fa9c3fa3ccdbba932395c27affa20d95ac041bc9978e3f530829a2c64c89b1" - "bcceac06854fb903", - "067a58e5b3287bb9aa83ed9ca2d718cf7165fb574b6a446c3019849cd1584673" - "d561b574bc8f68419437c5e8113e060847cad3b5ddc2f67ad75bc1e3f04554e6" - "3a5e4945cfcb65f5" }, - { NID_sect571r1, - "008fc3b414f3412b403f01c253bd2226150225ddaab34d201089f49d79e5dcc2" - "e3b68216faa66dac44529c7fe3ba4d28d815b088235955713bb7721383533b5d" - "94221b4ed1e162b8", - "02b32201de272b1b32b6a6a58ea22411c48f5dc5cf0f95872e6751ed622ceece" - "a22a556975de6003869ae20af39b42ba8871789c82e8f3ad3cf6006f43bc4c7d" - "4102032c43f8f797", - "03eee29196a8be70eb3a310464059cc0c4c42f13487ab1a0762c2cbe304ebe63" - "503e6c7068a7f4bc197f81f65b4295c14b210f3cb2378b67401fcf52bec02c13" - "b61b6de14e1b7e5b", - "0177acc5fe9f42f4de2d27ab9bf6f7e0eace303c266ff8b3469082aba9367e66" - "440bd6b1bd8b6e1aec92b65e35aea8f007f09d4cd67eea5d6000736cabbb9dcc" - "c943ebb5656a0586", - "0716f1898e2a8c27319de7a2698f21d5de58a4b8b8dd02b5e433110d3977fee8" - "ec5c089d170af02a4ad3c1fab44b0d1e2a3beba9e0719cd8bf8364478d686c4e" - "35f7457d24d021d6", - "06b272ca3330c0cdfbe60a1746bc0ddea6257536cdd8e976f2517eb541460a3f" - "0e6ea7fec2b495e0f57712c8cac35e8a7d64d876c29851bbfeb6fe726d57e0be" - "43dc76a584ef9c93" }, - { NID_sect571r1, - "0565a82994d7e6f53eeb6bf67523ee680ffb770118673c3e15c3200e6c8d1f26" - "cabaf00c1da48e6374316497cba5f19f17420f267633f40e5b06362789bff11a" - "df596d5b1cf768ef", - "016b2d4daaca9c6bed976b2064ef54352a58ae34367835a6210e1578291c1de8" - "d67c20bc3d6ffa620c87b3098a2b9f3abb8d2cacd5b2ee2b68399eac4e8f65ce" - "bdd66300fd049b5b", - "0169a2d87586944c3173bf9a2275e3080003db648c2d1e1c56e2c37ce0d7cd9f" - "818ea6b7bba343f774ef0f334ea5c12ef0be7593d04ed945458d71e17112eb01" - "d9041d2133b13473", - "051e521764265af7f01bcd9c3fd022dfdb2d4a2c58b3b23d2e550302c42aadd5" - "7d1df6fc18e465bd98442495eed22f3fd6700284c9fa7833b5165149b8e1a91e" - "0e099a0a5732d5c2", - "0198e7e7d094e207528c583865d262a918fc2a39261e95c07dcbd044efd39818" - "99078af3eb97398201a4650f0dccbf19f922c8dbc3839bf6be0053f84531c718" - "43a9e6a102ab58d6", - "02da266a269bdc8d8b2a0c6bb5762f102fc801c8d5394a9271539136bd81d4b6" - "9cfbb7525cd0a983fb7f7e9deec583b8f8e574c6184b2d79831ec770649e484d" - "c006fa35b0bffd0b" } -#endif -}; - -#endif /* ECDHTEST_CAVS_H */ diff --git a/test/evptests.txt b/test/evptests.txt index f39c740..8a7f174 100644 --- a/test/evptests.txt +++ b/test/evptests.txt @@ -7146,3 +7146,10242 @@ Derive=BRAINPOOLP512R1_RFC7027-Peer PeerKey=BRAINPOOLP512R1_RFC7027-PUBLIC SharedSecret=A7927098655F1F9976FA50A9D566865DC530331846381C87256BAF3226244B76D36403C024D7BBF0AA0803EAFF405D3D24F11A9B5C0BEF679FE1454B21C4CD1F + +######################################################################## +# # +# NIST SP800-56A co-factor ECDH KATs # +# # +# # +# http://csrc.nist.gov/groups/STM/cavp/component-testing.html#ECCCDH # +# # +# sha256sum(KAS_ECC_CDH_PrimitiveTest.txt) = # +# 456068d3f8aad8ac62a03d19ed3173f00ad51f42b51aeab4753c20f30c01cf23 # +# # +######################################################################## + + +PrivateKey=KAS-ECC-CDH_P-192_C0 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBjxfT/qNnt000CFHKQn +DcskwnH0Rb7Z1SehNAMyAASxUFNAH1coVjfsMkwc0hOeOmfeNzkjSzfyacFYY3SC +qtZEzWkt0dPvLIp8SeOJ9/Y= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEsVBTQB9XKFY37DJMHNITnjpn3jc5 +I0s38mnBWGN0gqrWRM1pLdHT7yyKfEnjiff2 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEQupt2Zad0qYf6hqsf46Y7cyJbG5V +hXzA375dfGH6yIsRgRveMo6KDRK/AanSBLUj +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C0 +PeerKey=KAS-ECC-CDH_P-192_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=803d8ab2e5b6e6fca715737c3a82f7ce3c783124f6d51cd0 + +PrivateKey=KAS-ECC-CDH_P-192_C1 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBhW6FM0nZb+TEQkSNrL +fPkrt6ldz1dKm9WhNAMyAATADUNXFv/qU/2MFieSQUw3ZlGH5YJxZTmrcRxiqnGl +oY6KPEj4ncb6UvrAEI5SqKA= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEwA1DVxb/6lP9jBYnkkFMN2ZRh+WC +cWU5q3EcYqpxpaGOijxI+J3G+lL6wBCOUqig +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE3rVxL6AnrI0vIsRVzLc6keF7ZRK1 +4DDnfiaQoCzJsocIQxop+1S4ex8MFOARrCEl +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C1 +PeerKey=KAS-ECC-CDH_P-192_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=c208847568b98835d7312cef1f97f7aa298283152313c29d + +PrivateKey=KAS-ECC-CDH_P-192_C2 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBjG72H+EugL9W8tP30L +t1c5RRmQbVVQCUmhNAMyAAThhLwYJILzQDyHh7g4Qkd0Z/zQEdsPbGT50cFBQvQN +6GOduX1Rpj0szhAHzPdzzcs= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE4YS8GCSC80A8h4e4OEJHdGf80BHb +D2xk+dHBQUL0Dehjnbl9UaY9LM4QB8z3c83L +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAETtqo78Wg9A+ENmPsWBXndi3dwAjm +Y8IPCp+Nxno+YO9tZLUiGF0D3x/Arf1CR4J5 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C2 +PeerKey=KAS-ECC-CDH_P-192_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=87229107047a3b611920d6e3b2c0c89bea4f49412260b8dd + +PrivateKey=KAS-ECC-CDH_P-192_C3 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBjmdHucI7pwRPOP9+Ys +NeQDiSD1oBY9PNqhNAMyAAQrg42+c3NfN6OaeNMZV4PSaZHob/TZLRpg00SUInRI +n5iQOy5/k/jRl/ya5goO1To= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEK4ONvnNzXzejmnjTGVeD0mmR6G/0 +2S0aYNNElCJ0SJ+YkDsuf5P40Zf8muYKDtU6 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEiIfCdu3u0+noZrRtWNiVxz+9gLY+ +OC6IBMUJe6ZkXhYgbPtw9wUmVZR91EoX8fnV +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C3 +PeerKey=KAS-ECC-CDH_P-192_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=eec0bed8fc55e1feddc82158fd6dc0d48a4d796aaf47d46c + +PrivateKey=KAS-ECC-CDH_P-192_C4 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBi+q+3QFUoa/PyF1SGB +wQ9etHrcUfZVBH2hNAMyAAQfZc9uiXjhwbwQu2Gn2zEd4xAIjIz5dov31DgWjn9C +qxSxavU6ei9kb/QLU9dMvMc= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEH2XPbol44cG8ELthp9sxHeMQCIyM ++XaL99Q4Fo5/QqsUsWr1OnovZG/0C1PXTLzH +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEDQRfMCVK3B/O+opbHzG/TnOd0yfN +GNWUVCwxTkFCfAgnigjOjXMF87W4Scctiv9z +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C4 +PeerKey=KAS-ECC-CDH_P-192_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=716e743b1b37a2cd8479f0a3d5a74c10ba2599be18d7e2f4 + +PrivateKey=KAS-ECC-CDH_P-192_C5 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBjPcDVCJmZzIdbiuvQJ +meL9dMeg95P6hpmhNAMyAARfSET/zOYQBdJPc325hnXpL3tlQ662EGxUJPWYE5IV +04m2sSuG1YAUhX8t2ttUD1E= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEX0hE/8zmEAXST3N9uYZ16S97ZUOu +thBsVCT1mBOSFdOJtrErhtWAFIV/LdrbVA9R +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE+zXKINLpZmXFG5jo9us9eRE1CNi8 +zUUWNo7sDVv7hHch32qv8OXUjERPdL+c2KWn +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C5 +PeerKey=KAS-ECC-CDH_P-192_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=f67053b934459985a315cb017bf0302891798d45d0e19508 + +PrivateKey=KAS-ECC-CDH_P-192_C6 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBj+lCUVI3//3XtOtcZJ +Ce7khWoHbN8SuuKhNAMyAATmNp33myB7i4Z598hpz8JkhZ0atVqkAegfmccfgBow +tS902m5ebbti7kxdoQkMwCA= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE5jad95sge4uGeffIac/CZIWdGrVa +pAHoH5nHH4AaMLUvdNpuXm27Yu5MXaEJDMAg +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEgkdSlgwTB+XxOoPaIceZjKi1sAuV +SfbQvFLZHiNDY7wy7gtnePJc2MGEdRD0NIuU +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C6 +PeerKey=KAS-ECC-CDH_P-192_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=75822971193edd472bf30151a782619c55ad0b279c9303dd + +PrivateKey=KAS-ECC-CDH_P-192_C7 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBgz/tEEkq+lvqAzPArx +LKyUDE0iJFW80P6hNAMyAATvCyivxBY31zf0LkyKrOrchLouC4ScoYxXeXlC5VIX +O7oX9zJ44Cn0IzUGi9dw3fI= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE7wsor8QWN9c39C5Miqzq3IS6LguE +nKGMV3l5QuVSFzu6F/cyeOAp9CM1BovXcN3y +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEELtXAgKRFBmB+DO0dJ5WEQNLMI6E +AR0h4crNa3vRftjdtQtq7gZUw18tDt3Bz/z2 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C7 +PeerKey=KAS-ECC-CDH_P-192_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=67cba2cbb69ee78bf1abafb0e6fbe33fa2094c128d59652d + +PrivateKey=KAS-ECC-CDH_P-192_C8 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBjzVXxdcLTHlUlgwzVo +d2rb6OQ2GaviaxOhNAMyAATXARLF8PCEQ4ZJSsGtmdziIUE0F26/ua/TwYegOFEK +sx1Fnit68aOA3XV2rwYmdUg= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE1wESxfDwhEOGSUrBrZnc4iFBNBdu +v7mv08GHoDhRCrMdRZ4revGjgN11dq8GJnVI +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEUZL85Bhad1jqG8VuDk9Oiy3OMjSN +Dc7RIJiZgb6q8ABtiKlueXGi+jozukYEf8e6 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C8 +PeerKey=KAS-ECC-CDH_P-192_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=cf99a2770a386ca0137d1eca0a226e484297ac3c513f3631 + +PrivateKey=KAS-ECC-CDH_P-192_C9 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBhYbPuhxugXZu1Sgo8X +exvhTrvFuDNIwxGhNAMyAARYs8Y+Vr7J1pa/mojfKHNzg5H3Y2iqK0lXdnc7Jh+v +e6L9xP5DuSwLHHov0FSkNlA= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEWLPGPla+ydaWv5qI3yhzc4OR92No +qitJV3Z3OyYfr3ui/cT+Q7ksCxx6L9BUpDZQ +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEJtAZ2+J56tAe7RQ6kWAa2ibi9CIl +scYrbKZT8IJy4DhvyUIfvVgAk9euYwG8qUR2 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C9 +PeerKey=KAS-ECC-CDH_P-192_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=576331e2b4fb38a112810e1529834de8307fb0a0d2756877 + +PrivateKey=KAS-ECC-CDH_P-192_C10 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBjK2BAGA6T2W+CNj8ih +t+iExf9l3rPJbZmhNAMyAAS3/MD1LHpBHtvtOeEL8Ctq4PJmFMazJaJHSDsm62d3 +beK5OrcRnVRHVzc549Vecvs= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEt/zA9Sx6QR7b7TnhC/ArauDyZhTG +syWiR0g7Jutnd23iuTq3EZ1UR1c3OePVXnL7 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEU5vED+IKD7JniItkewPqr27CDAKh +4fjIaQleW7e01EwyeKfua+yjl8RSRtqaNMi+ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C10 +PeerKey=KAS-ECC-CDH_P-192_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=902f4501916a0dd945554c3a37b3d780d375a6da713197c4 + +PrivateKey=KAS-ECC-CDH_P-192_C11 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBge3YecxceWGcrmxzpp +G9WgOVwO87NW/NKhNAMyAARs5q2ywwgI9ZAEjDPf+tRSTr96X9ObdHtJZr0vPQBW +m01MBAn716LbdS9tCbyowl8= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEbOatssMICPWQBIwz3/rUUk6/el/T +m3R7SWa9Lz0AVptNTAQJ+9ei23UvbQm8qMJf +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEXTQ925Yxj7R5TRD2xXP5n+5dDVe5 +liUPmfvfnZfdiK1BAjXaw25bks4oJLjlh6gs +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C11 +PeerKey=KAS-ECC-CDH_P-192_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=46e4de335054d429863218ae33636fc9b89c628b64b506c7 + +PrivateKey=KAS-ECC-CDH_P-192_C12 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBhGDkUic/4YJ2Ahh607 +6+5ly4RCO7T0dTehNAMyAATRvTo++r9HZ/5jgL3w2/SdUtTPDLuJQEzBUMK0yLOq +Nfdl+Efk9/j9hwTSQaGB7pk= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE0b06Pvq/R2f+Y4C98Nv0nVLUzwy7 +iUBMwVDCtMizqjX3ZfhH5Pf4/YcE0kGhge6Z +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEjT25vc4Tf/v7iROIw332wMvJCqXl +N2IgE10wtctmDu+HZP/HRPFcG11twGukQW03 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C12 +PeerKey=KAS-ECC-CDH_P-192_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=1bfe9e5a20ac7a38d8f605b425bb9030be31ef97c101c76c + +PrivateKey=KAS-ECC-CDH_P-192_C13 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBi5cDZQCEVvh1jsxaOz +PPOuao1WgQelIWehNAMyAATBuGEMjGP41KvaCTuaEaVmBEv2XG+qiZmlvEs8oJU4 +Lpc4rulf6UebF4ebOtUpVVk= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEwbhhDIxj+NSr2gk7mhGlZgRL9lxv +qomZpbxLPKCVOC6XOK7pX+lHmxeHmzrVKVVZ +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEngppSVGcf1vmjAQzxf3xMGSqE/sp +SD3D4ci6Y+H0cdsjGF9Q2chx7eohJVs6Y7S3 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C13 +PeerKey=KAS-ECC-CDH_P-192_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0e8c493a4adc445dc9288a3b9b272599224054592d7265b3 + +PrivateKey=KAS-ECC-CDH_P-192_C14 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBhZwVuKJGTkHf5Dccf3 +2t9HCuQlVE+BE72hNAMyAAQf53b3NWe2rAsNZ2QWTebFvnUbqNH/RV5MFgvzivsr +cfaEJhZkEVzodFU+iwWUMtI= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEH+d29zVntqwLDWdkFk3mxb51G6jR +/0VeTBYL84r7K3H2hCYWZBFc6HRVPosFlDLS +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEvgiCOJAumTmz0FTu64SS2vS9zwmi +q3fxWNZ0mjqSPcgEQPJmH9NbZRYX5lKUtGN1 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C14 +PeerKey=KAS-ECC-CDH_P-192_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0f1991086b455ded6a1c4146f7bf59fe9b495de566ebc6bf + +PrivateKey=KAS-ECC-CDH_P-192_C15 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBim6biFxmuVnR/CcI1Z +G20yKOSeuY9ybWGhNAMyAARjK7dlHb9J3endEl0T+yNOBmF3I77tPRv0rVIJY4SI +OXxfRPmU3XR5gH559Ih9LnE= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEYyu3ZR2/Sd3p3RJdE/sjTgZhdyO+ +7T0b9K1SCWOEiDl8X0T5lN10eYB+efSIfS5x +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEv1rgUCXhvmF+Zm2HpBaDY4c9V2Gz +drUD4ebjizcra+4P9bNQLYNzXjssJoJeTw/M +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C15 +PeerKey=KAS-ECC-CDH_P-192_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=b30f2127c34df35aaa91dbf0bbe15798e799a03ed11698c1 + +PrivateKey=KAS-ECC-CDH_P-192_C16 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBi9t1QJb/v72LDzywRs +y3yhScTnGSBno+6hNAMyAATZwJjUIddB9vqrEW8+RzHSjFVY4Z/hEqE41NxIzNsd +PtjTH9BnhKT4emiuwcvVsI8= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE2cCY1CHXQfb6qxFvPkcx0oxVWOGf +4RKhONTcSMzbHT7Y0x/QZ4Sk+HporsHL1bCP +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEbMT+7YTHqw0JAF1mDtNN5pValGHE +E40RMSJfM4ZO1I2gb6RakTtGz0JVd0LjUIXm +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C16 +PeerKey=KAS-ECC-CDH_P-192_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=64a5c246599d3e8177a2402a1110eb81e6c456ab4edb5127 + +PrivateKey=KAS-ECC-CDH_P-192_C17 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBjVvPJTTa/D2Zlkx71j +q3vRWZn+Vt2WnEKhNAMyAAT9odXSjW/g55Cdaouvp4JNtVcquS/+feYTSil8HZyL +urJJq6zZUe0R5amfkueZFXI= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE/aHV0o1v4OeQnWqLr6eCTbVXKrkv +/n3mE0opfB2ci7qySaus2VHtEeWpn5LnmRVy +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAENhVzFb7nr+3e1YxOi6FNNCHEAeUR +NbzJN8KXynA/d8UrsGLYzpcduECXugx1OkGP +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C17 +PeerKey=KAS-ECC-CDH_P-192_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=017b8ca53c82fab163da2ab783966a39e061b32c8cfa334d + +PrivateKey=KAS-ECC-CDH_P-192_C18 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBhD1LnfEFO+W0JoEEwC +JE07+VlLAQtGqLKhNAMyAATDAgtwkUY9eI8fHXb3z+7ILs2zt9mcNFyadxDVF5WR +2PPfCqEiMBdorn237uLX9YM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEwwILcJFGPXiPHx1298/uyC7Ns7fZ +nDRcmncQ1ReVkdjz3wqhIjAXaK59t+7i1/WD +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEmEZNR/Alb4KS4CfoySWC6nfPkFH1 +zo5dRJVS73V4vpYjb+XtnQZDwLtsWpE0sBCN +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C18 +PeerKey=KAS-ECC-CDH_P-192_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=340ef3db3dbebdd91c62c3d4e1a3da2c7c52a3338b865259 + +PrivateKey=KAS-ECC-CDH_P-192_C19 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBiUysLCynFHRkAWcNlO +2/P2d4Z7WgO+562hNAMyAASxhVSi50PvCqLwQJh8TEUQBOCW3z2A3a5uPixhj4lu +NrpiAHdoS3CgX/t5v15sdkA= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEsYVUoudD7wqi8ECYfExFEATglt89 +gN2ubj4sYY+Jbja6YgB3aEtwoF/7eb9ebHZA +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEVj62bDNM9vEjvwTHgDtIoxECFCN+ +mDv1DzURBIGRme8HyaYFHSB1jzr3kCfqZqU/ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C19 +PeerKey=KAS-ECC-CDH_P-192_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=2162144921df5103d0e6a650fb13fd246f4738d0896ce92f + +PrivateKey=KAS-ECC-CDH_P-192_C20 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBgqOp4zyMwxB6n5Jlw7 +3qEgZXDob5KscBShNAMyAASnuji+G8Zp3SPM/O4GRbHw24z5Qt6vrra4LbedgM0O +N/KNQWOtw4ne6Px3l7XJgxs= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEp7o4vhvGad0jzPzuBkWx8NuM+ULe +r662uC23nYDNDjfyjUFjrcOJ3uj8d5e1yYMb +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEhoKMSskrVQdhiux4c6HU/GVDxb4z +zzB4siynJDdUXhDW1PBSQi64mLc3pLhUPuVQ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C20 +PeerKey=KAS-ECC-CDH_P-192_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=4c69e7feed4b11159adfc16a6047a92572ea44e0740b23af + +PrivateKey=KAS-ECC-CDH_P-192_C21 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBhKa3ipismPqOmajs4I +7AJREl+Fxv0OKJuhNAMyAATnadu81c4tg1FLdo09LVqgvNj2avFfVQAvxtCwOeDy +j3T77/6eiD1N1yKW5OlcrnE= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE52nbvNXOLYNRS3aNPS1aoLzY9mrx +X1UAL8bQsDng8o90++/+nog9TdciluTpXK5x +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEZwChAkN3galYHaK8Jc7Vq/QZ2pHT +yAPfcTlsnPCLzZGFTj5uQtjGV84PJ6t3qdxL +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C21 +PeerKey=KAS-ECC-CDH_P-192_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=46072acefd67bff50de355ca7a31fa6be59f26e467587259 + +PrivateKey=KAS-ECC-CDH_P-192_C22 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBjFpkkdeIRNZhfvM75r +i9VNoiFFCIXVlQ+hNAMyAATbGyT3RmvBVOnX0sPKUtz+C/yVY8X9tvMcdPu/W9mZ +IfGpp0T44c93C9anancrMAM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE2xsk90ZrwVTp19LDylLc/gv8lWPF +/bbzHHT7v1vZmSHxqadE+OHPdwvWp2p3KzAD +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEqC81TPl77l0i3GwHnykC6tRNlqj2 +FPF4plSpqooaCALyzg7ooPTr6W3uGzdGSx/y +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C22 +PeerKey=KAS-ECC-CDH_P-192_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=ec5580eabca9f3389d2b427ddf6e49e26d629afd03fa766e + +PrivateKey=KAS-ECC-CDH_P-192_C23 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBgronA8XiP2RjxbiNw3 +KS+r0zmbXh+2fAWhNAMyAAR1QxSJBs75s3pxp8CDY83Tu6UBQtZSQaqLOmlz3o3C +ceJ8Hq0eli/arjcQxyTarDg= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEdUMUiQbO+bN6cafAg2PN07ulAULW +UkGqizppc96NwnHifB6tHpYv2q43EMck2qw4 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEPOwhsoZooSos944ajlXQ7+BlFS// +w0cYEClVe+uk/xmSvSHCPLSCX22ucOMxj9HK +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C23 +PeerKey=KAS-ECC-CDH_P-192_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=7f3929dd3cbf7673bc30d859d90b880307475f800660ea32 + +PrivateKey=KAS-ECC-CDH_P-192_C24 +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBiDYRjGJI+ILpFHl292 +SCbBoodVphApd9WhNAMyAAT800WpdscgyqqX3maXImglYV4Sh6nv9n5Y6kLtvur8 +qf9Ez9fymr0svedibXnkIsk= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE/NNFqXbHIMqql95mlyJoJWFeEoep +7/Z+WOpC7b7q/Kn/RM/X8pq9LL3nYm155CLJ +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-192_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEcIJkRxW4tzH4IotRGOcnDTTRgfNh +oiH8RkZJ1siMqJYUSIocx7hEK7Qvn7MCCj12 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-192_C24 +PeerKey=KAS-ECC-CDH_P-192_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=72e88f3ea67d46d46dbf83926e7e2a6b85b54536741e6d2c + +PrivateKey=KAS-ECC-CDH_P-224_C0 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBByDRqYPxvKTyloNKvaLpx0d +04nl5Ag3lC3z5Dy9oTwDOgAEjeLiat9yxYLWVo72OMT9WbGNoXG99QHx2SngSEpo +ocKw+yKTDRIFVcHs5Q6pjeqEB/cb4276wN4= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEjeLiat9yxYLWVo72OMT9WbGNoXG99QHx +2SngSEpoocKw+yKTDRIFVcHs5Q6pjeqEB/cb4276wN4= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAErzPNBim8fpljIKP0A2j3TehwT6N7j6tp +q6rigIggksy7p5MPQZqKT5uxaXi7w4OHKZklWaby4tc= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C0 +PeerKey=KAS-ECC-CDH_P-224_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=7d96f9a3bd3c05cf5cc37feb8b9d5209d5c2597464dec3e9983743e8 + +PrivateKey=KAS-ECC-CDH_P-224_C1 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBwEPLIW9Lcs33Yp1jcgpUru +DJnrMtdEd9rAwvc9oTwDOgAEL5D1yOrJx97Nu5e2wvcVq3JeT+QP5tdG779OG2aJ +c1FFT5J6MJsmnFptMTOL5MGaWs/DLPZW9Fw= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEL5D1yOrJx97Nu5e2wvcVq3JeT+QP5tdG +779OG2aJc1FFT5J6MJsmnFptMTOL5MGaWs/DLPZW9Fw= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEE7/NT46UQjk8q4+0a58FZsImsis3B2l2 +8GF6Ru6yQnUpsojGPC+JY8Hkc98vymyqkNUuL421bdQ= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C1 +PeerKey=KAS-ECC-CDH_P-224_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=ee93ce06b89ff72009e858c68eb708e7bc79ee0300f73bed69bbca09 + +PrivateKey=KAS-ECC-CDH_P-224_C2 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBxa0N1turtPPC6l/jLlYbLK +VQgUht8sfBXJYisIoTwDOgAEAFvKRdeT5/6ZqENwTtg4MVqxSl9id1B+m8N1MUPp +1CHhSGrliTv9I8IQ5cFA18axraWdhCyamN4= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEAFvKRdeT5/6ZqENwTtg4MVqxSl9id1B+ +m8N1MUPp1CHhSGrliTv9I8IQ5cFA18axraWdhCyamN4= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEdW3YBrnZw02JlpHstFt3GvRo7ABEhqD9 +0oNBHk0Cwsphe7LF2WE/Jd1yQT0in9KQFROqKVBO7vs= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C2 +PeerKey=KAS-ECC-CDH_P-224_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=3fcc01e34d4449da2a974b23fc36f9566754259d39149790cfa1ebd3 + +PrivateKey=KAS-ECC-CDH_P-224_C3 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBwKpv9Vpdgg78tOfRC4Reo8 +n5vF3/hhBtuFMY4ioTwDOgAEL5Z1QTHgloGYqnj76MIB3F81gceS3khzQNMkSGHo +pc15YVIDttielJb54jb+O2vocx50PWFVGcY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEL5Z1QTHgloGYqnj76MIB3F81gceS3khz +QNMkSGHopc15YVIDttielJb54jb+O2vocx50PWFVGcY= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAED1N78cESLFVlbSXoqoQX4LRLFSauBSMU +T5khxPebJtMOSRp3NpbMLHm08FlrxbnuuvOU0WL7hoQ= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C3 +PeerKey=KAS-ECC-CDH_P-224_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=49129628b23afcef48139a3f6f59ff5e9811aa746aa4ff33c24bb940 + +PrivateKey=KAS-ECC-CDH_P-224_C4 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBzv5ubiWv+vVMmNACq7xjKN +oVlAWht1LjLcI5UKoTwDOgAENV6WKSC94ENpX2v/tLNVxj2m9d5mXtRvLsgX4nSO +CVNo9i4dNk7dRhcZeTtAStvarLyt2Iki/zc= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAENV6WKSC94ENpX2v/tLNVxj2m9d5mXtRv +LsgX4nSOCVNo9i4dNk7dRhcZeTtAStvarLyt2Iki/zc= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEKzYx0rBhebMXShAPf1cTHu6olHvgeGw9 +xksiOYPeKa49rTGtwCNsbefxRWHKLqCDxScMeKLmy8A= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C4 +PeerKey=KAS-ECC-CDH_P-224_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=fcdc69a40501d308a6839653a8f04309ec00233949522902ffa5eac6 + +PrivateKey=KAS-ECC-CDH_P-224_C5 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBxhyykyUkAB5enu7W332ciT +XuMyICnt16qKy/1RoTwDOgAE1Q5K2r/Zidfbx89AUlRsx8RHqXYwQ2mXrUuVNlvq +UDRzxervlVLULECx8vfKKSczslW5u+GxIzc= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAE1Q5K2r/Zidfbx89AUlRsx8RHqXYwQ2mX +rUuVNlvqUDRzxervlVLULECx8vfKKSczslW5u+GxIzc= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAERRFAPeKQWfaaR1xaal9sq+1dnwFENqjL +cKAjOH0tG2KqBG35NA+cN6CHoGsyz38IoiP5koEqgos= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C5 +PeerKey=KAS-ECC-CDH_P-224_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=827e9025cb62e0e837c596063f3b9b5a0f7afd8d8783200086d61ec1 + +PrivateKey=KAS-ECC-CDH_P-224_C6 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBByMes40cXH5Le+Y2EVHX8gu +HRSW2oHuWPUFuYX6oTwDOgAEsajcrImsonmTILRR3xx/9Nl1Z6u2gUHA2V/CqjUk +lQkCsVEL3Jh9hgr8J62HHOrqZpNavTwKmag= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEsajcrImsonmTILRR3xx/9Nl1Z6u2gUHA +2V/CqjUklQkCsVEL3Jh9hgr8J62HHOrqZpNavTwKmag= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEMUoLJt0xwkiEXXzBe2HK1GCCWb7YWljR +8f/TeGbks1A1LhGe7K2jgpB/Nhn9dI6nOuSJnf1JYwI= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C6 +PeerKey=KAS-ECC-CDH_P-224_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=335ba51228d94acbed851ca7821c801d5cb1c7975d7aa90a7159f8fa + +PrivateKey=KAS-ECC-CDH_P-224_C7 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBw4L+ubm6EPGJ2Z5xqJzf5E +y1VM7BOiEoQJd/tooTwDOgAEq7bx43c/+PxzrqKgsQeAnOcK3O/tbkH8XLQwRalj +iXrpBsEKBV7q25f/3W90jT5WIeX/8wTki6c= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEq7bx43c/+PxzrqKgsQeAnOcK3O/tbkH8 +XLQwRaljiXrpBsEKBV7q25f/3W90jT5WIeX/8wTki6c= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEq+aEO+7C/Z5ftkcw0L5NFlQ4zpIu113Y +C0YD5Wr+hnOpbEupkArYWZXmMeQ2xsyIosK0e3xIhrg= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C7 +PeerKey=KAS-ECC-CDH_P-224_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=8c2e627594206b34f7356d3426eb3d79f518ef843fbe94014cceace3 + +PrivateKey=KAS-ECC-CDH_P-224_C8 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBzg1iA1EB70h8SFxg+0UA7r +5qMuxk2+l9vgIyxGoTwDOgAEiFN3NemyPj4OB28TWoLTP5v/tGXzq86DIqYqYrTI +wSNnMZeHXAvRTtCXYG0zD7orkgDvZaRHZNM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEiFN3NemyPj4OB28TWoLTP5v/tGXzq86D +IqYqYrTIwSNnMZeHXAvRTtCXYG0zD7orkgDvZaRHZNM= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEE8+dbSyaroJ0wn1Eav0MiI/91SrimaNZ +hNT1J9y+51tRV1H47irjVeiv1d4hxiqTmmUHtTjLxK8= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C8 +PeerKey=KAS-ECC-CDH_P-224_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=632abb662728dbc994508873d5c527ca5ef923c0d31fa6c47ef4c825 + +PrivateKey=KAS-ECC-CDH_P-224_C9 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBy5at5bc7pyqotuTXTXv5xY +6WL/eOtUIofHtEuioTwDOgAEN2gpJqVPcKTBdI9U1Q1bABOKBV+STyxl5bC75Flq +/vzdZA0pY1AVuJvd3R+MJyNobTMuegbKh5k= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEN2gpJqVPcKTBdI9U1Q1bABOKBV+STyxl +5bC75Flq/vzdZA0pY1AVuJvd3R+MJyNobTMuegbKh5k= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAElltjfA37wM+VQDVobXD37DCSnmZOUh26 +oigGWYKlj/YbyQAZu8u1h104Y9sLwqH6NLCtTeGoP5k= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C9 +PeerKey=KAS-ECC-CDH_P-224_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=34641141aab05ef58bd376d609345901fb8f63477c6be9097f037f1f + +PrivateKey=KAS-ECC-CDH_P-224_C10 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBykDX4SBJxx5lIsf/I4QiQG +HDpFcFizEFV2VbhUoTwDOgAEOZgBJDv+DC2psKU8jKV/Lu6HqqlKjk1eAp9CyqpJ +5tS0fO56XEq3HVpn2oTgubQlzj5w2mjIiec= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEOZgBJDv+DC2psKU8jKV/Lu6HqqlKjk1e +Ap9CyqpJ5tS0fO56XEq3HVpn2oTgubQlzj5w2mjIiec= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEc8xkU3LKLnFjfNqUPYFI8zgqtt0PLhpJ +2pThNN9cNVwj5uIy68O+4qsYc+4Ng+M4L45v5hP2NDw= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C10 +PeerKey=KAS-ECC-CDH_P-224_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=4f74ac8507501a32bfc5a78d8271c200e835966e187e8d00011a8c75 + +PrivateKey=KAS-ECC-CDH_P-224_C11 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBytJRm8ck1ITgKmnwUUm7BH +cUvw9ZhvrC4iLNlGoTwDOgAE35weDvFeU7n2JuK+HL6JNjnAbz4EOe6V19Sx43pS +pzhq3aJD79+JQQhchOMSOcq5K4AXM2dIll4= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAE35weDvFeU7n2JuK+HL6JNjnAbz4EOe6V +19Sx43pSpzhq3aJD79+JQQhchOMSOcq5K4AXM2dIll4= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEVGV4IWJQNU5EniFUbdEc0cUXQjZzmsrZ +zg9FEtKiL81m0avtx2dmgyfFy5xZkEMnYjnPPIUWryQ= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C11 +PeerKey=KAS-ECC-CDH_P-224_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=ad09c9ae4d2324ea81bb555b200d3c003e22a6870ee03b52df49e4de + +PrivateKey=KAS-ECC-CDH_P-224_C12 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBw9MSqbnY7QkUCQC7rB4JVS +fryePGSTvPNmbjopoTwDOgAEtKAZjciBDohEJbdQkosMlgwx96mWY0ALAaF534Er +YBv8BzgkLG+G+DDyes1jLKYYoLUoDJ1Xafc= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEtKAZjciBDohEJbdQkosMlgwx96mWY0AL +AaF534ErYBv8BzgkLG+G+DDyes1jLKYYoLUoDJ1Xafc= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEHUax3DooEjy1E0bme67FZASGhnj699Do +sq+iKg7J5l7JfiGDc+f8EVwidNW4KaYNk/ceAdWBNsM= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C12 +PeerKey=KAS-ECC-CDH_P-224_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=ef029c28c68064b8abd2965a38c404fb5e944ace57e8638daba9d3cd + +PrivateKey=KAS-ECC-CDH_P-224_C13 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBByM4IItwkwVOZV1WsNQc371 +BmQcfXUrT5MAxhLtoTwDOgAEAN/H7BN2kM1tEv2y/QuMUxRYIQh2nCtyL/s5WF7v +PaS6RYEnNGu2QCOGi923VYouz8gTZF9M6f4= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEAN/H7BN2kM1tEv2y/QuMUxRYIQh2nCty +L/s5WF7vPaS6RYEnNGu2QCOGi923VYouz8gTZF9M6f4= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEJm0DjMek/iH2yXYxjoJ7grtbj3RDpVKY +E2UG4N8SPZinogu985Q98uNWNCL4wM901TqqvdfJc7o= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C13 +PeerKey=KAS-ECC-CDH_P-224_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=f83c16661dfcbad021cc3b5a5af51d9a18db4653866b3ff90787ce3e + +PrivateKey=KAS-ECC-CDH_P-224_C14 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBwP+bSFMlq3fynnvDef7XS/ +rIWUgtoN7nUowZ2yoTwDOgAEfmA+aXbbg8NgEVCPppXRtRUkni5UtI/Lz7kCRwF5 +pgDOhq38qbG5MfpRc9YY2gnoQYA9GbAmQoY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEfmA+aXbbg8NgEVCPppXRtRUkni5UtI/L +z7kCRwF5pgDOhq38qbG5MfpRc9YY2gnoQYA9GbAmQoY= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAE6woJ96HCNqYfWVgJ7FZw79kuRZjV5hPg +ks39ylB4euLy8VuIvBD3tfCu4UGDc/FhU669H7pUKI0= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C14 +PeerKey=KAS-ECC-CDH_P-224_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=f51258c63f232e55a66aa25ebd597b2018d1052c02eeb63866758005 + +PrivateKey=KAS-ECC-CDH_P-224_C15 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBwZz1/2MGRn8ouf4GdaQ8BY +JVLIwS5Zznw48pKxoTwDOgAE/CDpBuYJwRLPwuD+pjA4gsXblOh+AiNzqywIKq7N +8dqnF4K8Wia7vY1+inZJDiarwX3/x3S9c0E= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAE/CDpBuYJwRLPwuD+pjA4gsXblOh+AiNz +qywIKq7N8dqnF4K8Wia7vY1+inZJDiarwX3/x3S9c0E= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEay9rGKWH9WL/xhvZsARzIihphqePH9E5 +uE98JHCWkI5GFSZr5ZpTzWVVFQVv+SNwpicaXTgj1wQ= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C15 +PeerKey=KAS-ECC-CDH_P-224_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=7fdc969a186ff18429f2a276dac43beea21182d82ce2e5a0876552b1 + +PrivateKey=KAS-ECC-CDH_P-224_C16 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBByQoVNo41MsCx5R5V0TlEfC +yJvBYHGdaXKR6nwUoTwDOgAExoN9UG6XbafbOtEmfDWd/y6m+wt/f453AkxZ6Wfr +SR0vyKUwxGUl0qiy18HfX7oa50CkZJxoPuY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAExoN9UG6XbafbOtEmfDWd/y6m+wt/f453 +AkxZ6WfrSR0vyKUwxGUl0qiy18HfX7oa50CkZJxoPuY= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEMoEBuoJqzXX/nzTVV0zg28kvcJutjXoz +xHlAwd858eqISIxV1VOBYIeLnO0YqIfqJh3XEtFAJP8= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C16 +PeerKey=KAS-ECC-CDH_P-224_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=3d60ab6db2b3ffe2d29ccff46d056e54230cf34982e241556ed2920c + +PrivateKey=KAS-ECC-CDH_P-224_C17 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBByOCDjgXhchSRBn4cq8LoBR +spDiYW7sQntxIYl9oTwDOgAE6RUPdwB1YmAZ4Y+VRztx5oKAQXkdPwjT+u6qK0df +cHNequUjCKO3Y9yI7+GKtZDrr6A19uCLABw= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAE6RUPdwB1YmAZ4Y+VRztx5oKAQXkdPwjT ++u6qK0dfcHNequUjCKO3Y9yI7+GKtZDrr6A19uCLABw= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEAIHjQnCHHi672UGD9he0rhXwQW3WNP5u +k0zzwDoenzinuQtzF9Jrn2MRBjq1iyaM9Imy5QOG1dY= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C17 +PeerKey=KAS-ECC-CDH_P-224_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=9116d72786f4db5df7a8b43078c6ab9160d423513d35ea5e2559306d + +PrivateKey=KAS-ECC-CDH_P-224_C18 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBw4EG6T8Wo4Gtsdcs7j2mau +RirUu/6p7N810IFOoTwDOgAEe+bEyReCmrZX3XnoY31679L4Hw3nZU2VfpdljUMN +ItnoQ4MQ9h4NQ/Jfo+NFhfQyuq0n2zAhvw0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEe+bEyReCmrZX3XnoY31679L4Hw3nZU2V +fpdljUMNItnoQ4MQ9h4NQ/Jfo+NFhfQyuq0n2zAhvw0= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEJiNjL98L2FaAWmmqGG1BM+9ZBOH2Valy +1mzOByzvlyjdBvuLUBUPUptpUHbUUHmDkSWFyJvQaC4= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C18 +PeerKey=KAS-ECC-CDH_P-224_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=207c53dcefac789aaa0276d9200b3a940ce5f2296f4cb2e81a185d3d + +PrivateKey=KAS-ECC-CDH_P-224_C19 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBzl0XGEMc9Q9svRvIAZ+hZ2 +LfoSyYnlmZl3+06ioTwDOgAELqSWbn+S7X9cxh/eeSBF9jtzHW59DeJXfy2OzhxK +ex7eb4ORYikt9CS+eOgXb7b5QqPAI5FwDzE= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAELqSWbn+S7X9cxh/eeSBF9jtzHW59DeJX +fy2OzhxKex7eb4ORYikt9CS+eOgXb7b5QqPAI5FwDzE= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEjuTR3MMd7kv2/iHKilh3IdkQrPsSLBbC +p3qBUk6/Mj//BOtHcGmgrGizRfaxrhNO/DGUDlE8uZ8= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C19 +PeerKey=KAS-ECC-CDH_P-224_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=10e467da34f48ad7072005bccd6da1b2ba3f71eafa1c393842f91d74 + +PrivateKey=KAS-ECC-CDH_P-224_C20 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBw9Y1aRtiqaknxjOVHJNpyI +Yr0hGdMJcMJkRyfWoTwDOgAEQ4u7mAUXr7IL4dZ046wrMc7wepsj+49uOODWwAvl +8cR9WNIbbtKEI7MvWpR1DaR+3O8z6nmUKv0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEQ4u7mAUXr7IL4dZ046wrMc7wepsj+49u +OODWwAvl8cR9WNIbbtKEI7MvWpR1DaR+3O8z6nmUKv0= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEl9y+bSgzWIKm0ZPMVKEGPdB3XcMoVlMA +u5nmkdrRHdXs6M/Z+XyaUm5KFQbmNVlp7oeCb8OLzSQ= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C20 +PeerKey=KAS-ECC-CDH_P-224_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=82fd2f9c60c4f999ac00bbe64bfc11da8ff8cda2e499fced65230bb1 + +PrivateKey=KAS-ECC-CDH_P-224_C21 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBys88hbvcN58C9eo25/D1MJ +Wp5wRqKGhahlm/eYoTwDOgAE/3URIVxx15a9ZG6EdL5EFrkWhM4NJp729CIBO7e/ +Xnm1qTk7uepCwL2y08LcgG4acwaqWOT9vqU= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAE/3URIVxx15a9ZG6EdL5EFrkWhM4NJp72 +9CIBO7e/Xnm1qTk7uepCwL2y08LcgG4acwaqWOT9vqU= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEzpEm3VOXLeod4dEe/vkA3jS2YYWcRkjF +wOU09+ETtvLBZZ0H8nFuZKg8GLvONE3SEh/oUWjq4IU= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C21 +PeerKey=KAS-ECC-CDH_P-224_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=530f7e7fc932613b29c981f261cb036cba3f1df3864e0e1cba2685a2 + +PrivateKey=KAS-ECC-CDH_P-224_C22 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBzP/WLLAKDjFj+/LDl/rclh +ghD4a09UpnUocwXwoTwDOgAEBL9NlI9EMNGLTtbJbbr5gfoRpAPtFoh/BnVJgXwT +JqnO9R951OeDA9YGS0WfYSWErC/fWT19XYQ= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEBL9NlI9EMNGLTtbJbbr5gfoRpAPtFoh/ +BnVJgXwTJqnO9R951OeDA9YGS0WfYSWErC/fWT19XYQ= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEhEGZZ9bPrUHnWgK22mBal5SaGDqXwwbE +tG5mpVzJsllxixvIsUT95jOolGFv/VmjptXY6ULHy7c= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C22 +PeerKey=KAS-ECC-CDH_P-224_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=49f6fd0139248ef4df2db05d1319bd5b1489e249827a45a8a5f12427 + +PrivateKey=KAS-ECC-CDH_P-224_C23 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBByF+QPkOUPRPGiTLnEOgN5S +y8C48aFBjqTaB5KZoTwDOgAElwpKfgHUGISXzrRpVesbhC2QhYGam5JchFKdPd+i +UmSA+DPqDtvSBOTjZf7zRyiI/n2WkcPrwJ8= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAElwpKfgHUGISXzrRpVesbhC2QhYGam5Jc +hFKdPd+iUmSA+DPqDtvSBOTjZf7zRyiI/n2WkcPrwJ8= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEfJysNXaAY8KCf2Cn9ROI8qj0t/jNc2vW +vDN0dynua4ScYCXVd9vMVfvRcBj07bwu8QWwBNYle80= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C23 +PeerKey=KAS-ECC-CDH_P-224_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=8f7e34e597ae8093b98270a74a8dfcdbed457f42f43df487c5487161 + +PrivateKey=KAS-ECC-CDH_P-224_C24 +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBzM5kiRo9ASn+4NSpbPvnrE +cLhelnUpBXz6MaHZoTwDOgAEprKWMtuU2iEl3Bz4DgNwJoeyrMESICL6IXR2WmFy +Pt1z4Q2u1zd1J48ZWLpW8fydCF68K2TIT+U= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEprKWMtuU2iEl3Bz4DgNwJoeyrMESICL6 +IXR2WmFyPt1z4Q2u1zd1J48ZWLpW8fydCF68K2TIT+U= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-224_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAECFp2Qq2OWbGj6HJqdUevvs/9rB2rflcj +DGqd9PkcNtiB/puAR6NTBxNVShr0wlxajmVNzc9ony4= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-224_C24 +PeerKey=KAS-ECC-CDH_P-224_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=71954e2261e8510be1a060733671d2e9d0a2d012eb4e09556d697d2a + +PrivateKey=KAS-ECC-CDH_P-256_C0 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgfX3F9x6yndr4DWIU +Yy7q4D2QWK8fttIu2AuttivBpTShRANCAATq0hhZARnoh2spFG/4nKYXcMTtu/l9 +OM44XtKB2KayMCivYSgf014vpwAlI6zIWkKcsG7mZIMlOJ9Z7fzhQFFB +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE6tIYWQEZ6IdrKRRv+JymF3DE7bv5 +fTjOOF7SgdimsjAor2EoH9NeL6cAJSOsyFpCnLBu5mSDJTifWe384UBRQQ== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEcAxI939WWExcxjLKZWQNuRtrrM46 +Tfa0LOfMg4gz0ofbceUJ4/2bBg3bILpcUdzFlI1G+/ZA3+BEF4LKuF+krA== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C0 +PeerKey=KAS-ECC-CDH_P-256_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=46fc62106420ff012e54a434fbdd2d25ccc5852060561e68040dd7778997bd7b + +PrivateKey=KAS-ECC-CDH_P-256_C1 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgOPZdbc5HZ2BE1Yzl +E5WC1Wj2S7FgmNF526sHdB3VyvWhRANCAAQRny8EeQJ4KrDJ4npUr/Xrm5ZIKcqZ +wGsC3bqVsKP20I9StyZmTKw2b8mKx6ASsmgsvZYuWstURnHUG5RFcE0d +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEEZ8vBHkCeCqwyeJ6VK/165uWSCnK +mcBrAt26lbCj9tCPUrcmZkysNm/JisegErJoLL2WLlrLVEZx1BuURXBNHQ== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEgJ8EKJxkNIwBUV6wPVznrBqMuUmP +XKpQGX5Y1DqGp66ynYToERl/Jeuo9RlAkstv9EDibUQhARNyRh9XknHNow== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C1 +PeerKey=KAS-ECC-CDH_P-256_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=057d636096cb80b67a8c038c890e887d1adfa4195e9b3ce241c8a778c59cda67 + +PrivateKey=KAS-ECC-CDH_P-256_C2 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgGsz68bl3Erhab1Sx +SJhaG9xMm+wL0ljK1LPWA/SfMsihRANCAATZ8recFyhFv9tWC7sBRHyl7MBHCglR +O2EmkCxrT40QUfgV717DISjTSHg0dkZ4cC5k4WT/cxUYXiOv9frNlte8 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE2fK3nBcoRb/bVgu7AUR8pezARwoJ +UTthJpAsa0+NEFH4Fe9ewyEo00h4NHZGeHAuZOFk/3MVGF4jr/X6zZbXvA== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEojOcEtSgPDNUbeUzJotK1mfev0WL +Rk13RDY2RA7n/sPvSKOrJuICILzaLBhRB2g52uiOrpYoaaSXv3PLZvr1Ng== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C2 +PeerKey=KAS-ECC-CDH_P-256_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=2d457b78b4614132477618a5b077965ec90730a8c81a1c75d6d4ec68005d67ec + +PrivateKey=KAS-ECC-CDH_P-256_C3 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgIHxDp5v+4D229LlE +9T0vt2zEnvHJxNNNUbbGXE22ky2hRANCAAQkJ3wz9FBGLcs9SAHVe5ztBRiPFsKO +2ocyWASM0WB+DcR4l1PisfY7Mv8BTsQs1qafrIHf5tDW/Urzcq4nxG+I +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEJCd8M/RQRi3LPUgB1Xuc7QUYjxbC +jtqHMlgEjNFgfg3EeJdT4rH2OzL/AU7ELNamn6yB3+bQ1v1K83KuJ8RviA== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE3zmJufpVSVcZs89G3M0otRU/eAgZ +HdUY7/DDz/K3Be1CIpT/RgA0Kdc5ozIGyHUlUsi6VKJw3vwG4iHg/q9qxA== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C3 +PeerKey=KAS-ECC-CDH_P-256_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=96441259534b80f6aee3d287a6bb17b5094dd4277d9e294f8fe73e48bf2a0024 + +PrivateKey=KAS-ECC-CDH_P-256_C4 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgWRN+OBUjULGVyXGN +OWc9UZg4BVrZCN1HVxUv2CVcCb+hRANCAASoxf3Oi2LFraWY8UGts7Js8lTCgLKF +emPSrXg6cxFfa4BuGq/sSvgKDXhrPeRTdbUXp+W1H/ssNWU3yebvIn1K +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEqMX9zotixa2lmPFBrbOybPJUwoCy +hXpj0q14OnMRX2uAbhqv7Er4Cg14az3kU3W1F6fltR/7LDVlN8nm7yJ9Sg== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEQRktKBPnlWHmodb1PIvBpDOhmcg1 +4UGwWnSpew+uuSIa+YzEXpin4EGwHPNfRit1YigTUcjr8/+gLjOgcioTKA== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C4 +PeerKey=KAS-ECC-CDH_P-256_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=19d44c8d63e8e8dd12c22a87b8cd4ece27acdde04dbf47f7f27537a6999a8e62 + +PrivateKey=KAS-ECC-CDH_P-256_C5 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg9fjgF0YQpmEneXm1 +jOXJD+5smzuzRqkKcZYlXkCxMu+hRANCAAR7hh3NKESlqDY/a4741JNkD1WHkhcY +nYAyaq2UgN/BScRnW0XuswZAX2wzw4vGnrK97Jt1rVr0cGqrhFQ7nMY6 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEe4YdzShEpag2P2uO+NSTZA9Vh5IX +GJ2AMmqtlIDfwUnEZ1tF7rMGQF9sM8OLxp6yveybda1a9HBqq4RUO5zGOg== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEM+ggkqDx+zj1ZJ1YZ/uii1AxcrcD +VXS/jltxAKMFJ5Lyz2tgHgoFlF4zVVC/ZI14L0YYbHcsDyDTzQ1rjKFLLw== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C5 +PeerKey=KAS-ECC-CDH_P-256_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=664e45d5bba4ac931cd65d52017e4be9b19a515f669bea4703542a2c525cd3d3 + +PrivateKey=KAS-ECC-CDH_P-256_C6 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgO1ia99sDRZwjBotk +9j8o08PGvCW1v3asBfNUgoiLUZChRANCAASfs44tWOobr3Yi6WcgEByuPN5LpsHp ++ibZsd4ImRAoY9VWG5AEBu31CALdfXPok5X4rtcvug4dG2H+HSIwImDw +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEn7OOLVjqG692IulnIBAcrjzeS6bB +6fom2bHeCJkQKGPVVhuQBAbt9QgC3X1z6JOV+K7XL7oOHRth/h0iMCJg8A== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEap4MP5FuTjFckRR75XFobZBGTov5 +gdNKkLY1O8pu66dA+b6tOcLyvMJgL3W4pz7Hvf/Lzq0VnQF0xsTTxTV/BQ== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C6 +PeerKey=KAS-ECC-CDH_P-256_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=ca342daa50dc09d61be7c196c85e60a80c5cb04931746820be548cdde055679d + +PrivateKey=KAS-ECC-CDH_P-256_C7 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg2L+SmiDqdDayRhtU +GhHIDmHYJsCkydMisx3VTn9YucihRANCAAQg8HYx5KZRKomtSHxOnWMDnlecsNel +VsueZhzVnB5/pG3pGEaz7uil7AnCqx9B4hvYNiDM3Rvc46t+puAt0nT1 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIPB2MeSmUSqJrUh8Tp1jA55XnLDX +pVbLnmYc1Zwef6Rt6RhGs+7opewJwqsfQeIb2DYgzN0b3OOrfqbgLdJ09Q== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEqcCsreVcKnPq0ahvsKlxMiPIJHV5 +HNDiELBGQSziJLv23gr6IOk+B4RnwFPSQZA+2tc0xrQDunWMK1/wTJ1CKQ== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C7 +PeerKey=KAS-ECC-CDH_P-256_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=35aa9b52536a461bfde4e85fc756be928c7de97923f0416c7a3ac8f88b3d4489 + +PrivateKey=KAS-ECC-CDH_P-256_C8 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgD5iDug7zLudd7Q2L +2jmlFGop8fJQezvUWNvqCyuwW02hRANCAASrthtCO+XWwm4hxgWDLJFC3B3+Wl// +KHJnN5Nub79RbXM9JRPvWL6rICCQWG+skb8P7jHoCrM0c6sjotieWPrW +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEq7YbQjvl1sJuIcYFgyyRQtwd/lpf +/yhyZzeTbm+/UW1zPSUT71i+qyAgkFhvrJG/D+4x6AqzNHOrI6LYnlj61g== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAElOlPFqmCVf/yuawMlZiqw1SHsyMt +MjG9k7fbffNvnrnYBJpDV5z6kLgJOpRBbL77+TOG8Vs/bhkLbjRV/t/mmg== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C8 +PeerKey=KAS-ECC-CDH_P-256_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=605c16178a9bc875dcbff54d63fe00df699c03e8a888e9e94dfbab90b25f39b4 + +PrivateKey=KAS-ECC-CDH_P-256_C9 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgK+7bBLBcaYj2pnUA +u4E/ryyuDVgMklO2M55KMze7bAihRANCAAQ9Y+Qpy1+olakkcSm/TkjonzXXsR3o +FY7+s+EGoqhzlQyunkd+9B58jBBkN5u3tVTdy8rnn5gUKB8eUPBAPGHz +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEPWPkKctfqJWpJHEpv05I6J8117Ed +6BWO/rPhBqKoc5UMrp5HfvQefIwQZDebt7VU3cvK55+YFCgfHlDwQDxh8w== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE4Jm/Kk1VdGC1VEQwu/baEQBNEny1 +1n9kqwfJT831J0/ZxQ2+cNcU7bXiIfTgIGEO62JwUX5ojKZPsOmMfvjBxQ== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C9 +PeerKey=KAS-ECC-CDH_P-256_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=f96e40a1b72840854bb62bc13c40cc2795e373d4e715980b261476835a092e0b + +PrivateKey=KAS-ECC-CDH_P-256_C10 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgd8Fdz0RhDkFpa6t1 +iUPv8UCTM+TVoRu+csj2w5Xp+EihRANCAAStXRPD21CN3NOEV+WZFDSiUb7UnPXd +y1nN7nOGXxOMn2LOwecFiKpP38e5oJ2qZ4CBwE4SCLnWYriiIUv46Boh +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAErV0Tw9tQjdzThFflmRQ0olG+1Jz1 +3ctZze5zhl8TjJ9izsHnBYiqT9/HuaCdqmeAgcBOEgi51mK4oiFL+OgaIQ== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE91pf5WvaNPPBOWKWYm7wEtwH5IJY +OHeKZFyCSM/wFlgzu98bF3LYBZ31aLBh8/ESLyio2BkWfJe+RI49w/sMPA== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C10 +PeerKey=KAS-ECC-CDH_P-256_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=8388fa79c4babdca02a8e8a34f9e43554976e420a4ad273c81b26e4228e9d3a3 + +PrivateKey=KAS-ECC-CDH_P-256_C11 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgQqg7mFAR0SMD2xqA +DyYQ90qnHN8Zxn1Uzmye2VHpCT6hRANCAASrSMqmHqNfE/jtB/+moT6NsiTf7Prh +p9+LG7brrwy5fRJ0Uwyiw4WjIYvd+8vwtAJMm63VJDv/g06/8kqGGNzL +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEq0jKph6jXxP47Qf/pqE+jbIk3+z6 +4affixu2668MuX0SdFMMosOFoyGL3fvL8LQCTJut1SQ7/4NOv/JKhhjcyw== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAELbRUDVAjB1YVir9h2YNXErZIbHQx +IYPM78rvJ5e3Z01i9X8xTj80ldxOCZAS9eC6cXcPlmCh6tpUEEzf3nckPg== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C11 +PeerKey=KAS-ECC-CDH_P-256_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=72877cea33ccc4715038d4bcbdfe0e43f42a9e2c0c3b017fc2370f4b9acbda4a + +PrivateKey=KAS-ECC-CDH_P-256_C12 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgzu01UHtck+rVmJEZ +ubo0LP445uY4um7qNDpVR13igAuhRANCAASajNm9cucXUt+RRA93xUdQmoTfmBFO +feTybNs5I0piXdB8/ITI4UT6soOfUYm7HXyIYx1Xm7xYAS7ZojJ9pS9i +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEmozZvXLnF1LfkUQPd8VHUJqE35gR +Tn3k8mzbOSNKYl3QfPyEyOFE+rKDn1GJux18iGMdV5u8WAEu2aIyfaUvYg== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEzZT8lJfomQdQMJ6ahTT9EUsKblTa +icR5YQGJcEHRTsvD3vS1/gT67goRkyIp//VjY3v97g55xt7q9En4VAHFxA== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C12 +PeerKey=KAS-ECC-CDH_P-256_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=e4e7408d85ff0e0e9c838003f28cdbd5247cdce31f32f62494b70e5f1bc36307 + +PrivateKey=KAS-ECC-CDH_P-256_C13 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgQ+Dp2Vr03DZIPN0Z +aNK37rhhH8znfzpOfQWa5D5QlgShRANCAAT5ic+O6VaoLn69mIHNv7L9lGGJsI21 +NVm8jP3UgHHrFF7/KPGhimFrBLfTN4aGefbdhPmns9e2+K8nbBlhGlQd +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE+YnPjulWqC5+vZiBzb+y/ZRhibCN +tTVZvIz91IBx6xRe/yjxoYphawS30zeGhnn23YT5p7PXtvivJ2wZYRpUHQ== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEFbnkZ69NKQxBdALgQEJv5M8ja65y +uqOS7Yl4DfzNtHHN9OkXD7kEMCuP2TqCC6jMftTv06by1rBbgLL/Ku5Odw== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C13 +PeerKey=KAS-ECC-CDH_P-256_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=ed56bcf695b734142c24ecb1fc1bb64d08f175eb243a31f37b3d9bb4407f3b96 + +PrivateKey=KAS-ECC-CDH_P-256_C14 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgsvNgDfM2jvigu4Wr +IvQfwOX0/dVL6BZ6XDzUsI2wSQOhRANCAARpxidiWzakKcOYtFw4Z3yzXYvrHPeK +Vx5A6Z/k6sHNToFpARKwqI8g9xNrKNfUfl+8Kto8jt2HWJvBnslZBje9 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEacYnYls2pCnDmLRcOGd8s12L6xz3 +ilceQOmf5OrBzU6BaQESsKiPIPcTayjX1H5fvCraPI7dh1ibwZ7JWQY3vQ== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEScUDumxPpgUYLhhrXoERPwdbwR3P +1RyTL7IelR7uL6GK9wb/CSLYez8MXk4x2LJZrrJgqSaWQ+1SChO7JdpZJA== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C14 +PeerKey=KAS-ECC-CDH_P-256_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=bc5c7055089fc9d6c89f83c1ea1ada879d9934b2ea28fcf4e4a7e984b28ad2cf + +PrivateKey=KAS-ECC-CDH_P-256_C15 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgQAJTQwf4tiqb9n/2 +Qd3GD+9ZOxfDNBI56VvbPleb/cihRANCAARf6WRnExWhiqaKKm490f3n4juM5xgU +cc+sQ8meGugCYtWCe+KC5iyE3lMbljiEuoMttdayw6JW8OYE/n5rin9y +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEX+lkZxMVoYqmiipuPdH95+I7jOcY +FHHPrEPJnhroAmLVgnviguYshN5TG5Y4hLqDLbXWssOiVvDmBP5+a4p/cg== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEGbON45/dL3D3CRYxpPddGZN0C6lC +kWLCpFMSQBY2spwJrtcjKyjgYJQXQbaCi836K8ScyETzdzYRUE+Co5Clrg== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C15 +PeerKey=KAS-ECC-CDH_P-256_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=9a4e8e657f6b0e097f47954a63c75d74fcba71a30d83651e3e5a91aa7ccd8343 + +PrivateKey=KAS-ECC-CDH_P-256_C16 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgTfoS3vxgMZAhtoGz +/4ShClEZWMhQk57UVjWTS6SXkUehRANCAATJsrhJbxRAvUotHlJ1L9Nyg1s2SIXh +VKfaxJKV8oHsfPvmuSaopN4mzMg7gCsSEkAHVL4l2fPurwCLCYcK52Mh +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEybK4SW8UQL1KLR5SdS/TcoNbNkiF +4VSn2sSSlfKB7Hz75rkmqKTeJszIO4ArEhJAB1S+Jdnz7q8AiwmHCudjIQ== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAELJHGHzOt/pMRyUL9v/a6RwIP7/QW +t7tjzsE/r5sJmVRsqzGwZBnlIh/KAU+4TshwYiobErq1rkNoKqfqc+oI0A== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C16 +PeerKey=KAS-ECC-CDH_P-256_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=3ca1fc7ad858fb1a6aba232542f3e2a749ffc7203a2374a3f3d3267f1fc97b78 + +PrivateKey=KAS-ECC-CDH_P-256_C17 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgEzH22HSk7TvEosbp +x0Mx0wOXljFL7uO3FS/NulVWME6hRANCAARZ4eEBUhBGrZzx0ILp0ux90iUwzOBk +mR8eVcW89fy1kUgvT2cxdsj9qgu25ZsVo+R0VOOgQpfThjyTONmK3R83 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWeHhAVIQRq2c8dCC6dLsfdIlMMzg +ZJkfHlXFvPX8tZFIL09nMXbI/aoLtuWbFaPkdFTjoEKX04Y8kzjZit0fNw== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEooou31gCVmj3JKr4OlCVa3rBz7v/ +ebCMO/h9/Sgo12ffp7//1MdmuGq+r1yZtuUMuczJ2dALf/x4BLBJG2e8Aw== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C17 +PeerKey=KAS-ECC-CDH_P-256_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=1aaabe7ee6e4a6fa732291202433a237df1b49bc53866bfbe00db96a0f58224f + +PrivateKey=KAS-ECC-CDH_P-256_C18 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg3V6fcK50AHPKAgTf +YHY/tgNsRXCb9Ke7TmcUEvrWXaOhRANCAAQwudsuLpd7zcmMuH3XNsvY54VSEhkl +zxbhkzZXwvsjFGpFAogAuBKRvOXC4f7X3tZQYg675gUMbzp/DftGc6tc +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEMLnbLi6Xe83JjLh91zbL2OeFUhIZ +Jc8W4ZM2V8L7IxRqRQKIALgSkbzlwuH+197WUGIOu+YFDG86fw37RnOrXA== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEou+FeggfnW6yBqgcTPeKgCvfWYrj +gMiIbs2F/cHtdkRWPEwgQZ8HvBfQU5+t4YVeNIOVFbiSwPXSZWH5f6BNGg== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C18 +PeerKey=KAS-ECC-CDH_P-256_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=430e6a4fba4449d700d2733e557f66a3bf3d50517c1271b1ddae1161b7ac798c + +PrivateKey=KAS-ECC-CDH_P-256_C19 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgWuAmz8Bg1VYAcX5V +uKEuEW0dDfNK+DGXkFdgfC2cL3ahRANCAARGyevRpKPIwLbVcrXc+6EkZ2AyCKnL +XSrPu3M8QM9jkUbJE6J9BEGF04tGes4BHgTU2bu7jLmuJfqSqvFaWV6G +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAERsnr0aSjyMC21XK13PuhJGdgMgip +y10qz7tzPEDPY5FGyROifQRBhdOLRnrOAR4E1Nm7u4y5riX6kqrxWllehg== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEzNii2GvJLy4BvOTWkiz3/hYmrtBE +aF6V4u69RkUF8B/p3dWDqWNaZnd31bio8xsPeeuhLHUCNBC1S4Vn3dwPOA== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C19 +PeerKey=KAS-ECC-CDH_P-256_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=1ce9e6740529499f98d1f1d71329147a33df1d05e4765b539b11cf615d6974d3 + +PrivateKey=KAS-ECC-CDH_P-256_C20 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgtgGsQl1dv54XNcXi +1b23nKmLPVvkos/W8ic/FQ4GTZ2hRANCAAR8npUIQdJsjd6JlDmLj11HWgIrxj3n +dz/PjVUuAfG6CsxCuYhcmzvuD42MV9Oo9jVQFsAZxAYvoiz/LyCbXMLh +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEfJ6VCEHSbI3eiZQ5i49dR1oCK8Y9 +53c/z41VLgHxugrMQrmIXJs77g+NjFfTqPY1UBbAGcQGL6Is/y8gm1zC4Q== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEwYj/yJR/cwH7e1PjZ0YJfCE0v5zJ +gbp0tOnENh9ZXk6/fS8gVuckIe85PwwPKw4AEw48rEq7zAAoYWjoXsVQUQ== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C20 +PeerKey=KAS-ECC-CDH_P-256_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=4690e3743c07d643f1bc183636ab2a9cb936a60a802113c49bb1b3f2d0661660 + +PrivateKey=KAS-ECC-CDH_P-256_C21 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg/vsd2hhFMStfzmuB +sr4gWvLzonT1ohL2bA2fwz165TWhRANCAAQ4tU24VQDLIMYQVu3T2ItqncJngKBH +8hOm4bkA92WW62OH5OV4FXHk64rmKZGjO13DMwHFvH4SXVN5SjkWDY/Q +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEOLVNuFUAyyDGEFbt09iLap3CZ4Cg +R/ITpuG5APdllutjh+TleBVx5OuK5imRoztdwzMBxbx+El1TeUo5Fg2P0A== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEMX4QIP9T/M7xi/R7t/Lddwf7e3p1 +eOBPNbO+7SIqDrYJQgzloZ13xv4e5YfmpJ+6+PKA6N8DPXVAMwLlon2yrg== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C21 +PeerKey=KAS-ECC-CDH_P-256_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=30c2261bd0004e61feda2c16aa5e21ffa8d7e7f7dbf6ec379a43b48e4b36aeb0 + +PrivateKey=KAS-ECC-CDH_P-256_C22 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgM0rgxGk9I5Nafo4E +PrveIeFop8uj+lB8m+QddoHgSc6hRANCAAQ/K/FYmr8wR78+VKyalTeb/5X49VQF +9k7KNqfuvo/8p1ISqU5mxa6aiZGHL2anJyPYDsWy6SV0XEVvU3GUOzoG +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEPyvxWJq/MEe/PlSsmpU3m/+V+PVU +BfZOyjan7r6P/KdSEqlOZsWumomRhy9mpycj2A7FsukldFxFb1NxlDs6Bg== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAERfsCss6518ednC+pPpx5Z8L6TfV4 +n5ZAskJkseUk/LFcbo7PH30wI4k7exyh5NF4ly7iojB1fdxWT/439cWjIQ== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C22 +PeerKey=KAS-ECC-CDH_P-256_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=2adae4a138a239dcd93c243a3803c3e4cf96e37fe14e6a9b717be9599959b11c + +PrivateKey=KAS-ECC-CDH_P-256_C23 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgLEveQCFPzDv8R9TP +Q0timsvpFX+P0CglQDMd55Qs8J2hRANCAAQpwIB/EMvEL7RcmYnaUGge6tcW2qe5 +6R/TLgYvXrksoP8dbRlV1zdrLaJP4RY6JxZZE2NBvC6xGV/HBtxi5/NN +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEKcCAfxDLxC+0XJmJ2lBoHurXFtqn +uekf0y4GL165LKD/HW0ZVdc3ay2iT+EWOicWWRNjQbwusRlfxwbcYufzTQ== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEoZ73v/mK2ngYQvv8UaR6/zm1k1oc +fZYlyNMj1RHJLebpwYTfdclV4C4C5AD/5F948znhr+bQVvsyRfRwDOYG7w== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C23 +PeerKey=KAS-ECC-CDH_P-256_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=2e277ec30f5ea07d6ce513149b9479b96e07f4b6913b1b5c11305c1444a1bc0b + +PrivateKey=KAS-ECC-CDH_P-256_C24 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQghaJo+dd3L5kMNrQr +CjMa3JK1lB3guGLV2Jo0fL+PqrChRANCAASc9LmFgcoXeUU8yBb/KLQQCvVs8b8u +W8MS2DtrGyHTM3pVBPysUjGg0S1lghgoSGginIRKBKNFDWxzgavggL87 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEnPS5hYHKF3lFPMgW/yi0EAr1bPG/ +LlvDEtg7axsh0zN6VQT8rFIxoNEtZYIYKEhoIpyESgSjRQ1sc4Gr4IC/Ow== +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-256_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAENWxaREwEmlL+4K3rfl2CrlqoMDC/ +/zG7+M4gls8WHEtX0SjeiypXoJTRoAHlchc/luiGauNSvynN2vkvyFsvkg== +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-256_C24 +PeerKey=KAS-ECC-CDH_P-256_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=1e51373bd2c6044c129c436e742a55be2a668a85ae08441b6756445df5493857 + +PrivateKey=KAS-ECC-CDH_P-384_C0 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDA8wxIqaPDZUCetOMBn +kWug64w4iU0i4bFWGLaBimYXdK1GOyBdqIz2matNQ8nPmKGhZANiAASYA4B/L20v +2WbN0CkL1BDAGQNS++x/9iR94TAt+G8l00/kqXvvYM/1SDVcAV27Pl+6Jspp7C9b +XZ2tIMydpxE4Op2+NOo/paKvdbRlAmKa1U3Yt9c6irsGo6O+R9ZQzJk= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEmAOAfy9tL9lmzdApC9QQwBkDUvvsf/Yk +feEwLfhvJdNP5Kl772DP9Ug1XAFduz5fuibKaewvW12drSDMnacRODqdvjTqP6Wi +r3W0ZQJimtVN2LfXOoq7BqOjvkfWUMyZ +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEp8drlww7X+iwXSg4rgSrR2l7nq9S52RZ +Lv2if+dRMnJzRGa0AAka2/LWjFjgxQBmrGjxny4cuHmu1DqZabkaCDnEw4pJdJtm +Hv7fJDRRkV7QkFoysGCZK0aMZHZvyEN6 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C0 +PeerKey=KAS-ECC-CDH_P-384_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=5f9d29dc5e31a163060356213669c8ce132e22f57c9a04f40ba7fcead493b457e5621e766c40a2e3d4d6a04b25e533f1 + +PrivateKey=KAS-ECC-CDH_P-384_C1 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDCShgwhveBhZfjpAMaH ++O8KBdFPKQs/B9izqMxkBDZuXVEZzW0D+xLcWOifE9+c14OhZANiAATqQBj1owfD +eRgL9qYv0s7O6+631N8GOmb7g4qjUkNBl5H34snUgDyTGaoOsDxBa2Zog1qRSE8F +7wKChN9kNvuI/+urzdaasBM+ZzWhvPs3ID0Q00CoMop7aHcMp1h4oaY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE6kAY9aMHw3kYC/amL9LOzuvut9TfBjpm ++4OKo1JDQZeR9+LJ1IA8kxmqDrA8QWtmaINakUhPBe8CgoTfZDb7iP/rq83WmrAT +Pmc1obz7NyA9ENNAqDKKe2h3DKdYeKGm +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEMPQ/zytrAN5T9iTxVDCQaBg5cX1Tx8lV +0dae+vA0m3NjrLRHJAEBy7OvZkHOS4jgJeRsDFTwFip378wntup5IAKuK6gnFCmc +hghXpoFTq2LlJewFMNgbWqFYl5gehYdX +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C1 +PeerKey=KAS-ECC-CDH_P-384_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=a23742a2c267d7425fda94b93f93bbcc24791ac51cd8fd501a238d40812f4cbfc59aac9520d758cf789c76300c69d2ff + +PrivateKey=KAS-ECC-CDH_P-384_C2 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDASz2oiOnI1JUODDz8Y +Uw1cs38miAoLKUSCyKjvivrQmqeLfcLyeJp4xmr10cxVOFOhZANiAAT8/OoIXoz3 +TQ3O0WILqEI2lPkDohm7+QGwtZ1qyBuq0xaiQroyvehcskgRm4Uvq2aXLjxox6tA +LFg28qFu1FGjMSCndQpgOfP/FTiO5iK3Bl9xIr9tUa77wps3sDQEWBs= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE/PzqCF6M900NztFiC6hCNpT5A6IZu/kB +sLWdasgbqtMWokK6Mr3oXLJIEZuFL6tmly48aMerQCxYNvKhbtRRozEgp3UKYDnz +/xU4juYitwZfcSK/bVGu+8KbN7A0BFgb +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEGu+/osbIyFWhohZ3RVC3miTNo3YHux98 +yQZlDuSzgW1o9qnHXabkJCzr+2ZS9lGAQZ0otyPrrbdlj867mtm3repnTx2j3Gtj +l7VdoPYaPt2stKzbFEQcshSwSghEwC+j +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C2 +PeerKey=KAS-ECC-CDH_P-384_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=3d2e640f350805eed1ff43b40a72b2abed0a518bcebe8f2d15b111b6773223da3c3489121db173d414b5bd5ad7153435 + +PrivateKey=KAS-ECC-CDH_P-384_C3 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDCN1IBjo6BYwzS1zHpM +4H0C5e5tjx88UaFgCWLLq0YmkK482XT7OeQLDoQ9qg/TLeGhZANiAATjjJhGJIEj +w0IYYepNMmaae1w8CDdq0oEEOZSUyE/176OJStssbL6MPJE+8u7FvTyfqEAkoQKH +lt+EAh97bJ0C8PS9GmEqA8v3WgvupD/viuhLSMYBcqrfCcGtAW0L884= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE44yYRiSBI8NCGGHqTTJmmntcPAg3atKB +BDmUlMhP9e+jiUrbLGy+jDyRPvLuxb08n6hAJKECh5bfhAIfe2ydAvD0vRphKgPL +91oL7qQ/74roS0jGAXKq3wnBrQFtC/PO +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEi8CJMm7FW5z1mzTw63VNk1lsopD8s0RM +g9TeOlYHA37Dl2g/jO8H6rL+NX6uNsRJ2dFs6KyFs/HpRWhSGq5TTmcTnjEOxyaT +Umqi6Se1syLJWhoDPCKctncMlXzTFI3X +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C3 +PeerKey=KAS-ECC-CDH_P-384_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=6a42cfc392aba0bfd3d17b7ccf062b91fc09bbf3417612d02a90bdde62ae40c54bb2e56e167d6b70db670097eb8db854 + +PrivateKey=KAS-ECC-CDH_P-384_C4 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDCE7ObMNCkwm9WyPpWX +k+0rER7Fy0O2wYCF/K6p76BoXZimJi7g0zDuJQvIpn0Ocz+hZANiAAQyIgY6KZez +Au5g7hlhEI/0x6zxwO8dX7DRZLhLznHEMXBcua6ppF9dc4BmVaBYvuPmH6nn++fN +Q6v5lZaj06A56Z+p3JOwvdnK2Blm0X7q9VcGivp8eEZrtbIgMtEQD6Y= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEMiIGOimXswLuYO4ZYRCP9Mes8cDvHV+w +0WS4S85xxDFwXLmuqaRfXXOAZlWgWL7j5h+p5/vnzUOr+ZWWo9OgOemfqdyTsL3Z +ytgZZtF+6vVXBor6fHhGa7WyIDLREA+m +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE65UuLZrAwgxsxI+yJcKtFU9TyHULAD/T +tO2O0dwN76xhvN3gKivP7nBn1100LtKw8YKCBbrs6C0bJn0Nf/L5yeFbaact9HBY +qX84kQBdH7OIWPVgPehA5ZHfpPbn1Inh +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C4 +PeerKey=KAS-ECC-CDH_P-384_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=ce7ba454d4412729a32bb833a2d1fd2ae612d4667c3a900e069214818613447df8c611de66da200db7c375cf913e4405 + +PrivateKey=KAS-ECC-CDH_P-384_C5 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDBo/OISHcOh43sQ8d3j +Cfni4Y+sR80XcJUUUcNITNt3yxNtAOcxJgWXzChZYBwBoluhZANiAASGi+DmlIQY +MOQk2RPY59hrhO4QIdgrDs9SPwn+iadsDJXEny37z4KcHjlwnVXvuzuRlesYNnW0 +D9kvUfN3EzF+SptPcVyKsi4Hc7G8cdOiGfBbgRYHRljuhrUuNvOJcRY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEhovg5pSEGDDkJNkT2OfYa4TuECHYKw7P +Uj8J/omnbAyVxJ8t+8+CnB45cJ1V77s7kZXrGDZ1tA/ZL1HzdxMxfkqbT3FcirIu +B3OxvHHTohnwW4EWB0ZY7oa1LjbziXEW +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAERB0CniROtxaNZH1N9Q219OSXSrP9rwIq +/wWLNpXQuMgUzIjaYoXcbfGsVcVTiFAD6AJawjpB1LHqKqRsUMbkeZRrWbbXZJfN +kkmXfgv+SmJiYi8T1Co8Q9Zr27MEA8NF +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C5 +PeerKey=KAS-ECC-CDH_P-384_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=ba69f0acdf3e1ca95caaac4ecaf475bbe51b54777efce01ca381f45370e486fe87f9f419b150c61e329a286d1aa265ec + +PrivateKey=KAS-ECC-CDH_P-384_C6 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDCxdkxUiX56rm3p53Uf +LzfehJKR+I8PkQkxVbhY0cwyo6h5gPcGuGzIP5J739vq4L2hZANiAATDcSIv6qZ3 +DG8+o+DayXQN70/PghN4t/kf+TfCHgRw9w86MdXGspEhlfEJJpQrSK4EfWtNdlEj +Vj+BEWvGZbe4zGIHgw2AX9hNp8uAWmW6p8Ev1ZLRtbXj5l2WcqnvdmI= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEw3EiL+qmdwxvPqPg2sl0De9Pz4ITeLf5 +H/k3wh4EcPcPOjHVxrKRIZXxCSaUK0iuBH1rTXZRI1Y/gRFrxmW3uMxiB4MNgF/Y +TafLgFpluqfBL9WS0bW14+ZdlnKp73Zi +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEPU5r8IpzQErMwWKYc0aOQmnoLZDYMuWK +1yFCY5taBWrY01xmxg6BSfrAx5e863wvmwMI3H8ObSn4wnesvGWiHlrbg9EeaHO8 +Cgf9oJl/SCUEYC9Z4QvFy0drg9Ck915x +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C6 +PeerKey=KAS-ECC-CDH_P-384_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=1a6688ee1d6e59865d8e3ada37781d36bb0c2717eef92e61964d3927cb765c2965ea80f7f63e58c322ba0397faeaf62b + +PrivateKey=KAS-ECC-CDH_P-384_C7 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDDw96lucNmP1aMK1kBs +9W61typRDp8ZL1Dh+EUk2/PSQ59yh7s29aqRKnneqrSt6oKhZANiAASZyMQcsate +CFSjRuSwilN8FwamFVM4fI2UlDqxUZbUDbqlW4IQp3pdAJFfLE6mnqtVMQZb3PF7 ++zy1WgLkGlfH9pTDg60on5APvWVsIjOpPJLpM+eib1TLtW8K2HXFG7A= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEmcjEHLGrXghUo0bksIpTfBcGphVTOHyN +lJQ6sVGW1A26pVuCEKd6XQCRXyxOpp6rVTEGW9zxe/s8tVoC5BpXx/aUw4OtKJ+Q +D71lbCIzqTyS6TPnom9Uy7VvCth1xRuw +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE9fa+8dEQ2gO+ABfqx2DMNLJNCS9zbyN7 +xwVLOGUxKoE7y2LSl/sQpPer9UcI/i09Bv3419wDL04QAQvxnL9hWTISUv9BX7kZ +INQ48k5n5gwusEYyBGefo1avRM6pyev1 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C7 +PeerKey=KAS-ECC-CDH_P-384_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=d06a568bf2336b90cbac325161be7695eacb2295f599500d787f072612aca313ee5d874f807ddef6c1f023fe2b6e7cd0 + +PrivateKey=KAS-ECC-CDH_P-384_C8 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDCe+4fdxh1DxIK6ZuGx +Q672ePvQ0b68IACUH6vmd/5bcGv3j8420QCxfMeH6tdLvKKhZANiAARMNO/ujwyV +Vl0gZdG7rCot0lrpZDIOtrzO3F86m0KogaGvyhu2uIBYT6J7AcGTzZLY+wHb980K +OGjCa5UfOTw8VsKFjO6QH3eT/10nGSXROkH45SQJ9OuhmQ8zrLC6xmk= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAETDTv7o8MlVZdIGXRu6wqLdJa6WQyDra8 +ztxfOptCqIGhr8obtriAWE+iewHBk82S2PsB2/fNCjhowmuVHzk8PFbChYzukB93 +k/9dJxkl0TpB+OUkCfTroZkPM6ywusZp +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEfN7Hfgc36jfGe4m3E3/jiBgBD0RkQ47k +0dNaDEiMrT/eLzfQCIXTbTt5W5+T0jpnKMQu6NYCfFbPl5ukwin9sB0jSUT4rEM2 +UBEsPPDwKEToiKNWnf73goqKiEWJqgVe +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C8 +PeerKey=KAS-ECC-CDH_P-384_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=bb3b1eda9c6560d82ff5bee403339f1e80342338a991344853b56b24f109a4d94b92f654f0425edd4c205903d7586104 + +PrivateKey=KAS-ECC-CDH_P-384_C9 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDDXh6V/3iLsZWoKUlzz +xzizDXOvYedD6pCJPsste2Iq3S+U7iXCFxRnr7CT8/hNABihZANiAAQXFUaSO4ey +y7rWZPAc6TK/CdamEYFoZ4RGv6nwk4YIy0ZnqY9OyKwUYihcJQj3SGL6QctNtorn +Hx+KPok53FLC3sYag8mDvrKgK68p7EkngIiILtDPVsdLXBc7VSzPY88= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEFxVGkjuHssu61mTwHOkyvwnWphGBaGeE +Rr+p8JOGCMtGZ6mPTsisFGIoXCUI90hi+kHLTbaK5x8fij6JOdxSwt7GGoPJg76y +oCuvKexJJ4CIiC7Qz1bHS1wXO1Usz2PP +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEju6joxnI35n7wpy1XyQ6cg2VUJUV7lzF +h6XFriL7vQCeYm2z6RHe8LmaT3rjBLG6c4d9yU25rd3A2aSyTol2wi1zyEQ3Dh7o +V/jRsSmjvV9j9AyvO9BTPjil9XdwdP+e +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C9 +PeerKey=KAS-ECC-CDH_P-384_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=1e97b60add7cb35c7403dd884c0a75795b7683fff8b49f9d8672a8206bfdcf0a106b8768f983258c74167422e44e4d14 + +PrivateKey=KAS-ECC-CDH_P-384_C10 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDCD1w97Fk2fTCJ8dnBG +sg6zTfx3j1OH4y6DSx5trsIO24ylu0GSCT9UO2jmrrfOeIuhZANiAARXzXcPO7y+ +DHjHcOqwsWm8ReE5+GN4/64cKxaWZyfC8utyRXK48+sijRMNtP+GLGN+xciBO2hV +WNg+kk8UvHGfbreuDLssR0Inxb2ohjek8mxkgXkpr5mVktpveHSQMy8= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEV813Dzu8vgx4x3DqsLFpvEXhOfhjeP+u +HCsWlmcnwvLrckVyuPPrIo0TDbT/hixjfsXIgTtoVVjYPpJPFLxxn263rgy7LEdC +J8W9qIY3pPJsZIF5Ka+ZlZLab3h0kDMv +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEpyH2otRSdBGDSxPU06M8Kb64OrdoJGXG +y69mJKym6ljDDrDyndhCiGaVQA1yVPIPFLpuJjVRCa01EpNm1eOmQK55hQWn+lWp +aja12tM94AR09mcPUiIU3XlSFAqwp+to +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C10 +PeerKey=KAS-ECC-CDH_P-384_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=1023478840e54775bfc69293a3cf97f5bc914726455c66538eb5623e218feef7df4befa23e09d77145ad577db32b41f9 + +PrivateKey=KAS-ECC-CDH_P-384_C11 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDCPVY4FgYuI7Tg9X8qW +LlNBPbGg5GN+2hlPdhlEy+oRSrnV2hdafVeIJVCw5DLzlamhZANiAASaL1f0hnzn +U9crDZUZXfb5bB+uk09gLv17alRYL1Vs+lOdiQBcou2sCK2bct0fYLrZuU7oLanM +YB80YESZi6OHruVkBNxuzIqytZBEMxnQsrYXb50OrC1EZ47VYWB9Cak= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEmi9X9IZ851PXKw2VGV32+WwfrpNPYC79 +e2pUWC9VbPpTnYkAXKLtrAitm3LdH2C62blO6C2pzGAfNGBEmYujh67lZATcbsyK +srWQRDMZ0LK2F2+dDqwtRGeO1WFgfQmp +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE2IKoUFwtXLm4hR/Gdmd7sAh2ga1T+s66 +Fzgoa0WCdWHn2je4gCdsZWz8OLMq3oR+NLMUvcE0V1ZUVzz/r0BEXaLmqvmH9+kT +zUwwkVIwWJhKJdjyHagyYZJFbGoPpfYM +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C11 +PeerKey=KAS-ECC-CDH_P-384_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=6ad6b9dc8a6cf0d3691c501cbb967867f6e4bbb764b60dbff8fcff3ed42dbba39d63cf325b4b4078858495ddee75f954 + +PrivateKey=KAS-ECC-CDH_P-384_C12 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDAPXe4K/6e78jnV3/Mp +h+u3z4T8zu1kPh08YtCzNSrsI7blrH+kEFyMsmEmrS0YksuhZANiAAQjNGvfvJ18 +fHNuAr32B2cf9ggv3SczSovHXzsjaB6+YU0Fl91hT65YZ3yDWp8LJzuCujYpDS+U +20FHnrRatOr2eSiiMVE41Z7sybUoXf3dZxT3dVchbqRMxvwRnYJD768= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEIzRr37ydfHxzbgK99gdnH/YIL90nM0qL +x187I2gevmFNBZfdYU+uWGd8g1qfCyc7gro2KQ0vlNtBR560WrTq9nkoojFRONWe +7Mm1KF393WcU93VXIW6kTMb8EZ2CQ++v +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEgVyddz2/X7ahuGeZlmJH9ABqI8kuaMVe +nqqZixfYgy3U2E2SfYMdT2jaxnxkiCGf55JplIsmEUhFYP1JD+7Ih8tV75mktSSI +D6dJnWoHKDquKvoz/quX3spAvGBsTYdk +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C12 +PeerKey=KAS-ECC-CDH_P-384_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=cc9e063566d46b357b3fcae21827377331e5e290a36e60cd7c39102b828ae0b918dc5a02216b07fe6f1958d834e42437 + +PrivateKey=KAS-ECC-CDH_P-384_C13 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDADe2M7W4uoV8D8hWVo +aCMuL+v1lXhxg5G4HahUGgC/5TwwrgQVGEfydJn416utjPShZANiAASIeKyKlH99 +XLK0eq0k+7ghDYYSZYU5mihx+Eqpxf3jB0rlQMa/gidcqCLQ/rhivHRjL1zS+QDC +cRwy+JMHKOtkfTHt2NZQ+WVOfTPl7RtHVInQjaow2MvLpr/Dtg2bWjc= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEiHisipR/fVyytHqtJPu4IQ2GEmWFOZoo +cfhKqcX94wdK5UDGv4InXKgi0P64Yrx0Yy9c0vkAwnEcMviTByjrZH0x7djWUPll +Tn0z5e0bR1SJ0I2qMNjLy6a/w7YNm1o3 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEHA7tp6K+AAxb3NoEeK7U23M9Kp40EiQ3 +kSOthHAw8p47Fo+hjomjwPuips4cKPw77Iwcg8EYxNvqlCcYafLYaOtl6LROIebx +Sw9NmzjAaNrvonEUJVuaQdCEzEoa2FRW +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C13 +PeerKey=KAS-ECC-CDH_P-384_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=deff7f03bd09865baf945e73edff6d5122c03fb561db87dec8662e09bed4340b28a9efe118337bb7d3d4f7f568635ff9 + +PrivateKey=KAS-ECC-CDH_P-384_C14 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDDj0HEGvtzAlufZFjD/ +0wlN8seFnbjX7bsuN7SsR/QppjfQamfS+6M4OHZO8gNGSZGhZANiAATnShorhfHL ++Nu98FDPGv+KywL9ovtlkfnTz+TnnQrpOKnBSD57dfjbJFBdZQZc2xgXc+5ZGCL3 +q6qFahpgvApSA1SNvRy1AlRm7/hIG9B2FOqgShbD23aQWRPpcqW2tZ0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE50oaK4Xxy/jbvfBQzxr/issC/aL7ZZH5 +08/k550K6TipwUg+e3X42yRQXWUGXNsYF3PuWRgi96uqhWoaYLwKUgNUjb0ctQJU +Zu/4SBvQdhTqoEoWw9t2kFkT6XKltrWd +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEyVwYXiVr+ZfzCzEVSK5/doo43uQ+7u9D +CD8wd75w4r85rB1NrzYMUUyMa+YjRD0aPmOmY+r3XYp2WrK5o1UT15M/peJkIKUk +RVDsbDtvAzuW2yrKPWrGqrBSzpKVla6l +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C14 +PeerKey=KAS-ECC-CDH_P-384_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=c8b1038f735ad3bb3e4637c3e47eab487637911a6b7950a4e461948329d3923b969e5db663675623611a457fcda35a71 + +PrivateKey=KAS-ECC-CDH_P-384_C15 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDDz+bDGWkmlBmMsikWx +D2a1MW+e6wb64hjy2mIzP5mQURexQcdg6JdO/ErxBXBjV5GhZANiAASkrXeqfYbl +NhEYprkhcQyCByEhBxL0w0eYX97liqTv+h4ovoChexILE5+WMA+JtJsd3yLgfgPx +Vg2PRaSACUVg26n65/lTETDBtX67lZgkllJPMdN5d5M5b6gj8ivbQyg= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEpK13qn2G5TYRGKa5IXEMggchIQcS9MNH +mF/e5Yqk7/oeKL6AoXsSCxOfljAPibSbHd8i4H4D8VYNj0WkgAlFYNup+uf5UxEw +wbV+u5WYJJZSTzHTeXeTOW+oI/Ir20Mo +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAENJcjin5q0WbfLawDmqTayNF6qSXnx2Me +s7VuOqocVF/NVNLlmFgHkQ+yArH8GR0qpJ5cSH3MeqQKjyNMl5RGBA2RdOOtNX1A +TXdlGDGVrtP5E2QbkMgaMG6/DYkThhMW +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C15 +PeerKey=KAS-ECC-CDH_P-384_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=d337eaa32b9f716b8747b005b97a553c59dab0c51df41a2d49039cdae705aa75c7b9e7bc0b6a0e8c578c902bc4fff23e + +PrivateKey=KAS-ECC-CDH_P-384_C16 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDBZ/Of6194ousAjBpDJ +VxDHIOUo+aTlTTpqjNX8XF8hY3AxzhxbTj05ZH2Ny5t5RmShZANiAAScQ7+XHt8J +QCh27nQglTgfeLG9OqObUTKvddv+fpi9eL3hD+LpA8K2N54d7uF1obCmxY7OpaR3 +uwG9VDsznxzEnxNxos2k1G605T4lBZeUI1GplmWhIv/qm94GNsN12vI= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEnEO/lx7fCUAodu50IJU4H3ixvTqjm1Ey +r3Xb/n6YvXi94Q/i6QPCtjeeHe7hdaGwpsWOzqWkd7sBvVQ7M58cxJ8TcaLNpNRu +tOU+JQWXlCNRqZZloSL/6pveBjbDddry +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEkKNHN9RbGqZfdOC9Blm8EY+OS3dLdhlE +/6ZXPG309B3sDRG2l6vZNNOQhx1LRTJAm1kHGbszB8FJp4F741XWhIk6MHdktRLu +/+B8tpnttab/v41gMubHnV6T6UISwqpO +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C16 +PeerKey=KAS-ECC-CDH_P-384_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=32d292b695a4488e42a7b7922e1ae537d76a3d21a0b2e36875f60e9f6d3e8779c2afb3a413b9dd79ae18e70b47d337c1 + +PrivateKey=KAS-ECC-CDH_P-384_C17 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDA+Sfv5UKQkxdgCKNxL +w16fbGwMHQRECZjaCmCah3V12+Q31qXO2qLd0qGhf9ESre2hZANiAARalJWUIosa +PW9ZnrPbDQYHD7xVHGV7WCNLoWTOP+QV+l8+uCPAjcKbjDQSGcd7az0rqtRHyMKQ +z+0l7dkDHEHQt2khRXMn9C2zESK4HzN7vwsQOeyDDOkGGjdhlTx15Kg= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEWpSVlCKLGj1vWZ6z2w0GBw+8VRxle1gj +S6Fkzj/kFfpfPrgjwI3Cm4w0EhnHe2s9K6rUR8jCkM/tJe3ZAxxB0LdpIUVzJ/Qt +sxEiuB8ze78LEDnsgwzpBho3YZU8deSo +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE3aVGrPyPkD0R4uOSBmljbUSyBorrZv8H +qiZvADDhU1sO0CA8uKRgrJkPE5T68i8dFbuyWXkTA1+q30E0dvTHD3J5dppAyYb0 +cMQntO5JYqvfgXO7rYGHR3KSX9MvCxWf +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C17 +PeerKey=KAS-ECC-CDH_P-384_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=1220e7e6cad7b25df98e5bbdcc6c0b65ca6c2a50c5ff6c41dca71e475646fd489615979ca92fb4389aeadefde79a24f1 + +PrivateKey=KAS-ECC-CDH_P-384_C18 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDBQzMH3B26S9GOOhfLb +mOC0g+biIEySvdRApt7qBON6B8bnJ5HBkK1OTobgHvuoQmmhZANiAAR1bAffDOMs +g52sn7RzPJwotwETpnanBXw40iPyKjqQlajVZGU69SjgTH4YJL5KZRIXws5pYsvS +ouBmKXs51X3Zu0aA8BkdOQ9wtORhQZspcs5orUYSf92mw5GVd06obfM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEdWwH3wzjLIOdrJ+0czycKLcBE6Z2pwV8 +ONIj8io6kJWo1WRlOvUo4Ex+GCS+SmUSF8LOaWLL0qLgZil7OdV92btGgPAZHTkP +cLTkYUGbKXLOaK1GEn/dpsORlXdOqG3z +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEeIviM2xS9EVNY+6USx5Jv7YZoINxBI5t +qS5YTq5wveHxccTfN4vR88CrAwSKI3gCRnPr2NtgTq9BcRdIurKWiiPKRHbOFE5y +gkfwivdSkpFXtYMPHiYGdGa9+otlFFoz +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C18 +PeerKey=KAS-ECC-CDH_P-384_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=793bb9cd22a93cf468faf804a38d12b78cb12189ec679ddd2e9aa21fa9a5a0b049ab16a23574fe04c1c3c02343b91beb + +PrivateKey=KAS-ECC-CDH_P-384_C19 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDAG8TK3H3TYe/mYV+Hk +NQpZTl/jVTO4iFUs7MvA2JI8kC42FB12keKGMbi8m6/l4GShZANiAAQqPMa4/1ze +km5+OhiaG9ApybWGNRr4g49PIBy49LcO87DaBtNSyA/Ca6+PQreERZ6/mYWWAXba +bSPHRSopVP/LvLJCSbQwGaKgI+Cz2r1GHxmtPndcNk8/Ea1J8wmUANM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEKjzGuP9c3pJufjoYmhvQKcm1hjUa+IOP +TyAcuPS3DvOw2gbTUsgPwmuvj0K3hEWev5mFlgF22m0jx0UqKVT/y7yyQkm0MBmi +oCPgs9q9Rh8ZrT53XDZPPxGtSfMJlADT +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE0Ju4IuuZ44BglUdHyCuzJ4z5a782/s40 +APTIc4OKQME16zuruSk70QAb8+ze578m1BbbbhuHu7dCd4ijtsenqywWWx42b5YI +31EgN1hPITpkjUfxasMm4Zquly9j/XbJ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C19 +PeerKey=KAS-ECC-CDH_P-384_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=012d191cf7404a523678c6fc075de8285b243720a903047708bb33e501e0dbee5bcc40d7c3ef6c6da39ea24d830da1e8 + +PrivateKey=KAS-ECC-CDH_P-384_C20 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDASBI67QzHsGaHiPxos +dztmTM/pCii/uEb8Evgd/0S3RDx3ZHFkvx6eZ/0sB6Z2YkGhZANiAAS8GINrx6n9 +9UtTUvN9dSirj6jsVEqMYYBRHL/dSczjd8OeNMAxtSQNyZgFA+0vJiyAhsvjOBkQ +gPC3oWx6/Ex7Ayb5rGb1hVLvS7nSTeNCntXTJ37Vj89I8rX2Eya+xsY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEvBiDa8ep/fVLU1LzfXUoq4+o7FRKjGGA +URy/3UnM43fDnjTAMbUkDcmYBQPtLyYsgIbL4zgZEIDwt6FsevxMewMm+axm9YVS +70u50k3jQp7V0yd+1Y/PSPK19hMmvsbG +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEE3QSYu3lhh2tcQY9/SBLkeodO3xjHfaO +uUmWlSfXmh3FkpXvfSvKZ0PozXewTRtYC6rq3H4Z10qKBEUaE18b4bAv4pn53AC/ +3yAeg9mVxpULzBy4nW97ML9UZWuaTaWG +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C20 +PeerKey=KAS-ECC-CDH_P-384_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=ad0fd3ddffe8884b9263f3c15fe1f07f2a5a22ffdc7e967085eea45f0cd959f20f18f522763e28bcc925e496a52dda98 + +PrivateKey=KAS-ECC-CDH_P-384_C21 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDA01hppnKV2Fp/NwMx+ +ROThIh2w/mPRaFDIEEAp99SESXFLmIQyjK4YmXh1SrRgtIahZANiAASGf4EQTM1r +Fjp5ArZw70BgQssMzn3Nxj0d/JGyxA4833WVg0v57Ot5hJ8WNvyEYvydS96Oh17E +lpfSWNHVlGX4QxxvVTHhxZ6fnr488WSo2c4QoS8ZeSg6lZutJE3YOGM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEhn+BEEzNaxY6eQK2cO9AYELLDM59zcY9 +HfyRssQOPN91lYNL+ezreYSfFjb8hGL8nUvejodexJaX0ljR1ZRl+EMcb1Ux4cWe +n56+PPFkqNnOEKEvGXkoOpWbrSRN2Dhj +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEniLLwYZX9RaoZLN7eDNItm8aqWJs1jH0 ++hvTKtiM8R21IFfGYIYNOdEfvwJPq9REaw1Tx5aBwoEW33HpzudP1WyLfwSznxGY +zHIoTpi+lWLjWSb7T0ip++yv5ykwnotv +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C21 +PeerKey=KAS-ECC-CDH_P-384_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=dc4ca392dc15e20185f2c6a8ea5ec31dfc96f56153a47394b3072b13d0015f5d4ae13beb3bed54d65848f9b8383e6c95 + +PrivateKey=KAS-ECC-CDH_P-384_C22 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDDcYPqHNtcCE1/xaquZ +K7iOrDl/WXJFbHLsRHN00NjOYRU4Mb/IatWm61tgv7lqhiyhZANiAAS2m+7ehdD4 +Kf7BuJPMucPgUv9pLhO5dFN7xbD5/q97IuhPAyMWKbJIZr20uM+QiRRm+F4r/Kui +hDKFsOFOvAfvfa//i0JEFv7mR7WYl7YZ8g7tlaYy5qQga/faQpwExWA= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEtpvu3oXQ+Cn+wbiTzLnD4FL/aS4TuXRT +e8Ww+f6veyLoTwMjFimySGa9tLjPkIkUZvheK/yrooQyhbDhTrwH732v/4tCRBb+ +5ke1mJe2GfIO7ZWmMuakIGv32kKcBMVg +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAELbXaX5QOqohPTbXsITmwRp845Ob7vMUt +8VwPfPf8sYCMdJdktr6F0v3FsW9YrV3AIuiwLc8z4bWgg4SVRfhK1eQ/d8txVG27 +rA0RvbLuIC6dOHLo0CjAiZB0bF4d3pmJ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C22 +PeerKey=KAS-ECC-CDH_P-384_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=d765b208112d2b9ed5ad10c4046e2e3b0dbf57c469329519e239ac28b25c7d852bf757d5de0ee271cadd021d86cfd347 + +PrivateKey=KAS-ECC-CDH_P-384_C23 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDBvpqHHBHMJh6pjSwUW +qCarqMbWQR06TIl3LXpiYQJWouLyifXDRAsOwecPozniUc6hZANiAART3h/BMo6N +4UrsqymtikDWsTdo+G99KYQz0g/seR+G+Lxz81gJiyVqKYu0iN4le/SsKJRP0n8X +uClGwExmxB8AU9NpLyddpVzYc5qVvYzTry+W5N6Vnqg0TYlFN1kFhYs= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEU94fwTKOjeFK7KsprYpA1rE3aPhvfSmE +M9IP7Hkfhvi8c/NYCYslaimLtIjeJXv0rCiUT9J/F7gpRsBMZsQfAFPTaS8nXaVc +2HOalb2M068vluTelZ6oNE2JRTdZBYWL +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEMpZHuqNUIk60QUgpxTaMgteJOzmATgjL +shgPRZvvxLNHo4mnDJGiO9nTDIO+UpXTzI9hkj+tKqjlBdbPoSa5+r1a+dzikLdW +YO8G0cqnNoHQYInDO8QkazqjDbzSQ1sS +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C23 +PeerKey=KAS-ECC-CDH_P-384_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=d3778850aeb58804fbe9dfe6f38b9fa8e20c2ca4e0dec335aafceca0333e3f2490b53c0c1a14a831ba37c4b9d74be0f2 + +PrivateKey=KAS-ECC-CDH_P-384_C24 +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDB0rYOGwcssoPzesx4I +abs/SMA2r+LvEQyjAryLkQ9iHJ/MVM7DK7iex8qoTHuOVKihZANiAAQno+g8+51R +IucxKdgBYVhX2nzAiczMnFSrMDKhngoKn2dzRuN/CKCz7Y2m5d1pEGONYORKpeD9 +MMkYRWeWrzfw5BlXkBZF5cWWxtmJ9YWbA6C9fR9Od5Nv/zx00gTlOI4= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEJ6PoPPudUSLnMSnYAWFYV9p8wInMzJxU +qzAyoZ4KCp9nc0bjfwigs+2NpuXdaRBjjWDkSqXg/TDJGEVnlq838OQZV5AWReXF +lsbZifWFmwOgvX0fTneTb/88dNIE5TiO +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-384_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEKdijbSIgCnW3rqG7R838sbf9Zt6WcEFD +RyirXVM6Bg33MhMGAP5vdYUqhx+yk4454ZtT21KDld6JekUQiWdxXrjLVcP8vyM3 +k3LAhzoFjVdUSxAuzOcissyrsaYDd0/V +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-384_C24 +PeerKey=KAS-ECC-CDH_P-384_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=81e1e71575bb4505498de097350186430a6242fa6c57b85a5f984a23371123d2d1424eefbf804258392bc723e4ef1e35 + +PrivateKey=KAS-ECC-CDH_P-521_C0 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIBfuzAerSzKQaPumXl +ah+IkKqTXlcTSuD/zOgCc1FR9OrGVk9u6ZdMXmiHof7+5XQ64iQb/rldXOMd3Lb5 +7bTW/EehgYkDgYYABABgL50M+eUmsp4iOBwgPEiohsKwZzAzNmMU8f+8uiQLpC9O +84p2F0Y1+R5rTtNCdesByEZ9BcqAMVvxp7vZRfVQpQG3yF8m9dSy1zVc9rAhF2WZ +Q3YrbR21q08dvETOeylG62x940KWKJP9OH0bc9eoZy0fI2lhFwt+s1eZU+5c3IjN +LQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAYC+dDPnlJrKeIjgcIDxIqIbCsGcw +MzZjFPH/vLokC6QvTvOKdhdGNfkea07TQnXrAchGfQXKgDFb8ae72UX1UKUBt8hf +JvXUstc1XPawIRdlmUN2K20dtatPHbxEznspRutsfeNCliiT/Th9G3PXqGctHyNp +YRcLfrNXmVPuXNyIzS0= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAaFpI6Gx58PCHX3vBjSXrX8jAsH5d +pPQ3DzqUkDQIVDNLHhuH+jlUZMYGJhJKTnDQ94VgHTfAmHDr8XZmaHeiBG0BulLF +b8h3bZ6PXbTwzCdjbQt0G74FQAaXlC6AtzmISoO96Z4PZxaTnmMryJhvoY3M1EOj +SLbD5SJJeVWk88MC9nY= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C0 +PeerKey=KAS-ECC-CDH_P-521_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=005fc70477c3e63bc3954bd0df3ea0d1f41ee21746ed95fc5e1fdf90930d5e136672d72cc770742d1711c3c3a4c334a0ad9759436a4d3c5bf6e74b9578fac148c831 + +PrivateKey=KAS-ECC-CDH_P-521_C1 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAgW8ZwfsQ75TUodgc +FW7D0d4Itmdh8D8G7ku53Ou7/h6qHtSaapkIONjtMYwU10zIcvldBdB61Q9iHOti +DNkFz7ihgYkDgYYABADUVhXtXTf95plhCmLNQ7p2vt2Phe0xAF/gDWRQ+70QEpGr +2W1JRai1e8c7P+n0ZxEFMJ7JtoedBVHZMNrIukXSVQFCUzKETlkrRAwAJ5cq0VJk +McBnMt8ZzUaiQhctTdZ8LIyZ38IuSZSaVs+Qxkc2Nc6C8lszaC+xm8M72RDtjOOn ++g== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQA1FYV7V03/eaZYQpizUO6dr7dj4Xt +MQBf4A1kUPu9EBKRq9ltSUWotXvHOz/p9GcRBTCeybaHnQVR2TDayLpF0lUBQlMy +hE5ZK0QMACeXKtFSZDHAZzLfGc1GokIXLU3WfCyMmd/CLkmUmlbPkMZHNjXOgvJb +M2gvsZvDO9kQ7Yzjp/o= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQB3yd8FSEINJvDTVOe4M8Gsk9dNQBn +e0RFRTzMIUCUU6r7inKgvp6+VNEicKpRs6t/MWql50qVHF5T90zZX8Ka7noBPVLz +Op88FDhNFYf6ir567XS8M3Sa2cVwtHF3ZCLH1FBdmwqWs7+sBB5MammQrn9wDltK +ZkAikRLer6DNi7DQibA= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C1 +PeerKey=KAS-ECC-CDH_P-521_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=000b3920ac830ade812c8f96805da2236e002acbbf13596a9ab254d44d0e91b6255ebf1229f366fb5a05c5884ef46032c26d42189273ca4efa4c3db6bd12a6853759 + +PrivateKey=KAS-ECC-CDH_P-521_C2 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIBLy4MbZ6dEXzrlyO8 +7QLrPU7r9f7q+O4BE8zYBXsT3dQW4LdCgMLQuo7SkcRDvBsUHK+K+zpx+X9XwiXA +Ph5NQrChgYkDgYYABABxf8s9SkDRA4ce3gRNyAPbUIqqSudLcLn7jY39hL/s+tF4 +cYeWmMKS0v1eF7T5NDY2xTGk+saKNak2ZVRrmoeGeQDz2WqGNwNpk6tdJEUA//nS +dyESgm9kNmA9PrI0pE1cTlxXcjRnnE+d9yXuW5EY8j2KWNDMAQltr3Do3+wBKL3C +6A== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAcX/LPUpA0QOHHt4ETcgD21CKqkrn +S3C5+42N/YS/7PrReHGHlpjCktL9Xhe0+TQ2NsUxpPrGijWpNmVUa5qHhnkA89lq +hjcDaZOrXSRFAP/50nchEoJvZDZgPT6yNKRNXE5cV3I0Z5xPnfcl7luRGPI9iljQ +zAEJba9w6N/sASi9wug= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAktsxQlZNJ6XwAG+BmQj7obhQOKW8 +JQmQakl9qsZ/167g/C2rpOQzTurvDgAZIEtHHNiAJPghFdgUnMDPT3zhpNUBa60G +I/UXsVjZiBhB0lce+61j+Fy+LlgZYMXWcGAaZ2AnJnWlSJliF+SrK4684x1x/KY/ +zDwI6Rwdjt2Rz2/oRfg= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C2 +PeerKey=KAS-ECC-CDH_P-521_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=006b380a6e95679277cfee4e8353bf96ef2a1ebdd060749f2f046fe571053740bbcc9a0b55790bc9ab56c3208aa05ddf746a10a3ad694daae00d980d944aabc6a08f + +PrivateKey=KAS-ECC-CDH_P-521_C3 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIA5UinnYsF+SO5gl0R +tlbyIujLmLD4neHTFxhNxaaY98cRYe59wRzTH09PiuOpgeGj54veu5fXwgS5JhtO ++S4JGOChgYkDgYYABAAM6AAhftJD3RCnmtc99Xiqij+RlK9SjNEJS7/uJ6O1SBrV +hiyIdsDD+RKUwKs6qAbZAgy6ou1yt/7NxaCaba1vMgFUPJq0WxJGkjKRjiHVo1H5 +pLnL+e+yr8xAL6mzFlC+wtZBoFxEDTUzHAiT0R+xMVEzWYizAzQTAac9xfYdV05n +2Q== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQADOgAIX7SQ90Qp5rXPfV4qoo/kZSv +UozRCUu/7iejtUga1YYsiHbAw/kSlMCrOqgG2QIMuqLtcrf+zcWgmm2tbzIBVDya +tFsSRpIykY4h1aNR+aS5y/nvsq/MQC+psxZQvsLWQaBcRA01MxwIk9EfsTFRM1mI +swM0EwGnPcX2HVdOZ9k= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQA/dQNnp2XQCfLO65oIWLqwTKK1hvE +NTxFv1r+dr9gfSiUyMziNpXZIPJGT9pHc9RpO+SzdzWEaRvbAym39MhswpkANM6s +aj/vHD4cSUv+jYcrGDgyIZp+FNpBTU40dFc2cewZsDO+gxuRVDWQWSW0SUfFkpWZ +RbTrfJUcO5yM9SUwuiM= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C3 +PeerKey=KAS-ECC-CDH_P-521_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00fbbcd0b8d05331fef6086f22a6cce4d35724ab7a2f49dd8458d0bfd57a0b8b70f246c17c4468c076874b0dff7a0336823b19e98bf1cec05e4beffb0591f97713c6 + +PrivateKey=KAS-ECC-CDH_P-521_C4 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIByKrpS7ELjKT3vld7 +T7MrsjgQMsSULCT8LXU+fMXke0gzidnzuVbSDukAGx7vnyNUX3LFYCFABGg56WMx +PD3syGShgYkDgYYABAEGoU4u6P+XCqirDHm5ejO7opWOBwt1uUc2t3u+P3dzJPpS +hydxqoimOp6EkMM3jfTcdgzRTWK+cAd53RpDd5Q2VgAjZs45QeCyhLGqgSFdDTuX +ePziPIzR5O1voKv2IVbJHUs+tVmZw0cb7SdenmDlqp1pDTEL+xXJxbvW9enrOWgr +dA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBBqFOLuj/lwqoqwx5uXozu6KVjgcL +dblHNrd7vj93cyT6UocncaqIpjqehJDDN4303HYM0U1ivnAHed0aQ3eUNlYAI2bO +OUHgsoSxqoEhXQ07l3j84jyM0eTtb6Cr9iFWyR1LPrVZmcNHG+0nXp5g5aqdaQ0x +C/sVycW71vXp6zloK3Q= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAmNmd7ggWVQ6E2/ztfogTf93PWBpy +WkVQIRFf5J+Nw88jPNnqDm8DnceRnalzzc6sogXaOeC9mMgGJTbEfyWPRLUAzSJc +h5c3G+DEKX0rRXdAEAx3QUHY8hTCO2GqK2zUgGubcHIqpJZftiL0K3OR4n5ewhxW +ecWwa1kSc3KZfUIa3B4= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C4 +PeerKey=KAS-ECC-CDH_P-521_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0145cfa38f25943516c96a5fd4bfebb2f645d10520117aa51971eff442808a23b4e23c187e639ff928c3725fbd1c0c2ad0d4aeb207bc1a6fb6cb6d467888dc044b3c + +PrivateKey=KAS-ECC-CDH_P-521_C5 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAmwrxN8lpbHW35t97 +cxVrstRfSC5aQhcyT0eLEM63avCXJM+Gr6MW5/iZGNMdVIJKXDMQekg8FcFblu3G +YTQLHA6hgYkDgYYABAB0jNu4ddNfS8y2Kr4g6C0y5MFNwv61uH2i0MyxHJttS3c3 +tsRvDftNiW4tuS/PU827ripATAur1WStet6sYnPvowGYSsq42PFzMj3gu2AnSyKI +cWCTc7sioXKH6d7HSVhzq8CaiRW1TIRVyOAvZU9gLiOiu9ep67dPMAm9ZezGUIFM +wA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAdIzbuHXTX0vMtiq+IOgtMuTBTcL+ +tbh9otDMsRybbUt3N7bEbw37TYluLbkvz1PNu64qQEwLq9VkrXrerGJz76MBmErK +uNjxczI94LtgJ0siiHFgk3O7IqFyh+nex0lYc6vAmokVtUyEVcjgL2VPYC4jorvX +qeu3TzAJvWXsxlCBTMA= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAeuEVrarwQWkatrf7jJIfmdjtMtKD +1nCE6Aua2cQMVs2YOJ+wqEnZ7PcmjCl7b5NAYRn0DjK1dz7SWiipqFxKdYgBoo4A +Tjfurv4fTbtx8YeGlhQa86EKlpHE7ZNIchRkO3YfpLD77rJHz20/unpgaXU2rQP0 +m4Cp0csHlnNlSXfF+pQ= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C5 +PeerKey=KAS-ECC-CDH_P-521_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=005c5721e96c273319fd60ecc46b5962f698e974b429f28fe6962f4ac656be2eb8674c4aafc037eab48ece612953b1e8d861016b6ad0c79805784c67f73ada96f351 + +PrivateKey=KAS-ECC-CDH_P-521_C6 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIB5I+qzubeyD/83pRM +9r30zkuucnR4iOuv7kVbHpFYSXHvtJEnl2pS9BQpUvfCB+wCZfK3GM8+rZbqT2LH +UuT3rNOhgYkDgYYABAEOsbTZFyvMI/TyDMlWD8VJKMPzTqYcADkdx2bHbtn6YIRJ +N30eT63RI2AlQXMwtLkQhnBKzj5OZITGBuKpQ0eMhgFJQThkBpgl7h0IKNqfSpdx +MAXpvRrbw7OMW5RpAHIalg/patLBs6RP496RVhNtRMsXy8JBVym7eC4Wv+Leswae +Qw== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBDrG02RcrzCP08gzJVg/FSSjD806m +HAA5Hcdmx27Z+mCESTd9Hk+t0SNgJUFzMLS5EIZwSs4+TmSExgbiqUNHjIYBSUE4 +ZAaYJe4dCCjan0qXcTAF6b0a28OzjFuUaQByGpYP6WrSwbOkT+PekVYTbUTLF8vC +QVcpu3guFr/i3rMGnkM= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBJYgRXm9/e9z99X8DsWm0eXWLqv2v +Vp0EE1mHss5hZMAqV2hetSdrXa5ildP+kGIPOLVTXG0iYMFz5h64iMqSAgMBVCwW +nPl8JZb+Ld2EiiIuNnxffmJn68G82atdz0kVjxpI5K8pqJe35qggkcLbh02Oer8P +WAZGkTRBVPOW267RiLY= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C6 +PeerKey=KAS-ECC-CDH_P-521_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01736d9717429b4f412e903febe2f9e0fffd81355d6ce2c06ff3f66a3be15ceec6e65e308347593f00d7f33591da4043c30763d72749f72cdceebe825e4b34ecd570 + +PrivateKey=KAS-ECC-CDH_P-521_C7 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAwpqiI+qNZLSh7aJ/ +OdO8mOoBSN2Ywcvllfj9K/veEZyeAXpQ9dH8EhwIwc7zG3WIWVVus+DgQtjdaqrF +egXKYeOhgYkDgYYABAAVEchI72DVQZqY0QIE2w/lgiQSQ3AGG8+k6SSdUGGMVr83 +IkcbJZ84Jju3soDSPK8qHuhzf5NxzbJzLNyVg2mTDAHUYWga5tjEm0xfTWAWFD+x +vXSRVz4+0ObEi4LoIWRPh/gvDl8I/Rbx+Y+hdYYgCrAu2MYns1w/J2F+xf2S9FYg +Pw== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAFRHISO9g1UGamNECBNsP5YIkEkNw +BhvPpOkknVBhjFa/NyJHGyWfOCY7t7KA0jyvKh7oc3+Tcc2ycyzclYNpkwwB1GFo +GubYxJtMX01gFhQ/sb10kVc+PtDmxIuC6CFkT4f4Lw5fCP0W8fmPoXWGIAqwLtjG +J7NcPydhfsX9kvRWID8= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBaUkdVb0JBJ/fTCpTpmBID+5MA6BT +hnXRzQm1u6eNrEhUPvEYoRc7P7+LIOOc4Oa4kKFjxQ+WRbPSHRy7O2Cm//QAg0lL +Lrp2kQ/tM8dhgEUVAR+rUOOzd6vYqKBF2IbSI40sJorBtuyIvXG3unjiwzwVLkv3 +2l1WXkrL7PXpLHrWYrs= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C7 +PeerKey=KAS-ECC-CDH_P-521_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=018f2ae9476c771726a77780208dedfefa205488996b18fecc50bfd4c132753f5766b2cd744afa9918606de2e016effc63622e9029e76dc6e3f0c69f7aeced565c2c + +PrivateKey=KAS-ECC-CDH_P-521_C8 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAKGkr4r9cS0iTmEb7 +PVvOdGVLsmRuFfg4niNwihr631YVEeoNmVfQtTRTgZ1g+6j2Whj3sp3wIbG7Ac0W +MpOsw8yhgYkDgYYABAHP3BDHmfXHnLaTCmX7o1F0jgdWeZPl5BDvTKzEzYoleEmR +60Z05BBQ+TDHGQrIErkkX0inlztlja9AiCL+W4X2aAGA2d38mvd7nEpvAqg02xXl +NeCzhFsszjA4gwG1HOy+MnYwfvQ5tcnmpy3C2U2Hm8OVBS27SleH0G77KAIQ+4vg +Nw== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBz9wQx5n1x5y2kwpl+6NRdI4HVnmT +5eQQ70ysxM2KJXhJketGdOQQUPkwxxkKyBK5JF9Ip5c7ZY2vQIgi/luF9mgBgNnd +/Jr3e5xKbwKoNNsV5TXgs4RbLM4wOIMBtRzsvjJ2MH70ObXJ5qctwtlNh5vDlQUt +u0pXh9Bu+ygCEPuL4Dc= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAhBX1u9Du44fWwJ0O+KyvKcZttF1r +oQGGCuRdPGDh4OP3JHpGJqYP3UBJZcNWbHn2RJ6FbOC/lGGfl9qNokvSz7YA/dfF +nFjDYbxQp6XQ029yOxfE8q0rA8JNQtxQ90qMRloK/EaD8Q+rhGUt/p6SjCYmtUVk +U+FXP/YL4VB0Z9Qx+7I= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C8 +PeerKey=KAS-ECC-CDH_P-521_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0105a346988b92ed8c7a25ce4d79d21bc86cfcc7f99c6cd19dbb4a39f48ab943b79e4f0647348da0b80bd864b85c6b8d92536d6aa544dc7537a00c858f8b66319e25 + +PrivateKey=KAS-ECC-CDH_P-521_C9 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIBGU0e5hP1Nmy8RLUE +0hoM9nFeIJzTWPLdXz5xzA1n0OlkFoxCoITr2nRvmGOoa6z/yBnx7fG4xyfM+zBH +JApXxDWhgYkDgYYABAFr0VyKWNNm9/Ky8pjMh7dIXp7nDRHRJEi4N3wKgsdib2ev +9/l756NUa/QX7u3fdak8EwGRyEEIBC6i/KF/0/gNFAFWBQLQS3T84XQ6q0d6nR6s +k+UiaYH9uXp0eM5M5Wb/ckOTEoT62FCwwryuDd0tl3kBYMGi53w+1slezES4niY3 +/A== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBa9FciljTZvfysvKYzIe3SF6e5w0R +0SRIuDd8CoLHYm9nr/f5e+ejVGv0F+7t33WpPBMBkchBCAQuovyhf9P4DRQBVgUC +0Et0/OF0OqtHep0erJPlImmB/bl6dHjOTOVm/3JDkxKE+thQsMK8rg3dLZd5AWDB +oud8PtbJXsxEuJ4mN/w= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBxyHuqAWly6KfNLpXWHdb4M9hYObA +hyP1qxe/lqH/K9lCeWGk80sH/AsUyksr9oRd69WoafEk6/p6py/lZQULfxgAtuie +sOHc8YEjb3xUj9GowWsli1LBqb/T/o8ihBsmdjJl8HTEzPLWNK6XtwGVb2ehEAbF +LZcZfZL1hfV0i8JnLus= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C9 +PeerKey=KAS-ECC-CDH_P-521_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=004531b3d2c6cd12f21604c8610e6723dbf4daf80b5a459d6ba5814397d1c1f7a21d7c114be964e27376aaebe3a7bc3d6af7a7f8c7befb611afe487ff032921f750f + +PrivateKey=KAS-ECC-CDH_P-521_C10 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIB/ZDj5BbpiqPytq+n +8782jkUa2cpb1UtbFK7i7Wcj3eUYH1CFtoFpsJ++xyE3LM9rKEcT+aY1a41WCo/3 +jKNzfIihgYkDgYYABAHr6hsQ0+O5cbfvtp/IeN4Rx/Ry5OTThMMbjWKI2AcVF6yt +6bOXlsevUWO89xrtp3dTPzgsbPCk2bu5OMhfRLeANwFrDj4ZwplrLL0f9kcw58qQ +7coZhPmylRMzU15XSLqjSpn2H/TV+BIHng8B6HeJ8079rYCYAV7nSk+EbdGQ0W3G +4Q== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQB6+obENPjuXG377afyHjeEcf0cuTk +04TDG41iiNgHFResremzl5bHr1FjvPca7ad3Uz84LGzwpNm7uTjIX0S3gDcBaw4+ +GcKZayy9H/ZHMOfKkO3KGYT5spUTM1NeV0i6o0qZ9h/01fgSB54PAeh3ifNO/a2A +mAFe50pPhG3RkNFtxuE= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBw1gj5ECpNjq5jZ/Hp7wMBTLceXen +kWVZm/GpzGTAD7OHtCzKNlKG6EMDYL+tNkO8MTVO2lDck2wyns22CQXED8sA2ef0 +M1MeRN9PbVFCAcuquwa63WeD4BERcm2BVTHSM8XNtyKJP/uyAnJZ1ZTed0OICXOB +IMb3g5NPkmw/tptAxAk= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C10 +PeerKey=KAS-ECC-CDH_P-521_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0100c8935969077bae0ba89ef0df8161d975ec5870ac811ae7e65ca5394efba4f0633d41bf79ea5e5b9496bbd7aae000b0594baa82ef8f244e6984ae87ae1ed124b7 + +PrivateKey=KAS-ECC-CDH_P-521_C11 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAkBLs/a3IXO1jCv6l +NM3I6dGri+XzdT3PXysJtA7aZvxoWFSbw25vjfVZmM+poHA67PbEJ5nCRQEQZPUw +wJ25g2mhgYkDgYYABAAjTjK+CpBxMdLRKKZHfgys64bwJHl0Xg/iRcszLeYxwHiH +EWBILu71hOJ033+kEs6j4ekfcey6h4HZIF1IOGNBrQHPhkVbCbHABc/7qNdiiaN1 +lijIdL7qRi9R8wvVgeOAMTQwfe27dxszNO4Vvi4kLNecNAfS9Yk1RWxpQd2bbRVa +Rg== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAI04yvgqQcTHS0SimR34MrOuG8CR5 +dF4P4kXLMy3mMcB4hxFgSC7u9YTidN9/pBLOo+HpH3HsuoeB2SBdSDhjQa0Bz4ZF +WwmxwAXP+6jXYomjdZYoyHS+6kYvUfML1YHjgDE0MH3tu3cbMzTuFb4uJCzXnDQH +0vWJNUVsaUHdm20VWkY= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQACTBX+4YvKtLoLlgbrrMyTnsylG8r +qEWpvu7YfWmV9UkY7GYZuZMZVdWonU10rfEEa7NiGS8u9r0+PS0E3R+HBUoAqj+y +RIM19pTjzaSuDMcbGy8qIG+oAtcmLxmYPERnT+FTJ6yqwfpAQkw5WmVWy4FnMSUn ++uWGXs/8FLvcF9p4zc8= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C11 +PeerKey=KAS-ECC-CDH_P-521_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=017f36af19303841d13a389d95ec0b801c7f9a679a823146c75c17bc44256e9ad422a4f8b31f14647b2c7d317b933f7c2946c4b8abd1d56d620fab1b5ff1a3adc71f + +PrivateKey=KAS-ECC-CDH_P-521_C12 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIBtf+Ef47/ILiM+tQs +BuWMN0Ly+PH9/WS1ObpIwlkmkmvV4zK0VknAsYT3clXp1Y/or6Gm2Wjiyx1GN3dx +IMdlwSihgYkDgYYABAHePckmO8jElp3GhL4O7FS+/ZqfPboZTYZYp4k0G/DXjYTa +ZzUifK+vCTUZUWkRl1c8jDYKEeUoVxK4u99ayRuXfACBLeWM0JXsLlqbJH6z7UHY +vvaurOGUp6BbZapdKJ+8mxdw7IS7a+DCxkzDfB1Up/XXE3eprb4g8m9vK1RKgh6o +MQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQB3j3JJjvIxJadxoS+DuxUvv2anz26 +GU2GWKeJNBvw142E2mc1Inyvrwk1GVFpEZdXPIw2ChHlKFcSuLvfWskbl3wAgS3l +jNCV7C5amyR+s+1B2L72rqzhlKegW2WqXSifvJsXcOyEu2vgwsZMw3wdVKf11xN3 +qa2+IPJvbytUSoIeqDE= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAgxku0LHLMfdYF3lJN/Zq2Rz3RVLN +UQztuf1kExBCKvXQnyIcrSSe6BTRbdeshN7Z6s3Cg0D8/JwMBqvjCi/CjNgAIhLt +hoyboPsskeLDm6k5lqPk6/RfKFLQkoxIkw6HXMe0KNDn8/TVA+XWDGjLSbE8JIDN +SGvtkgDK3a3f5P+ONWI= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C12 +PeerKey=KAS-ECC-CDH_P-521_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00062f9fc29ae1a68b2ee0dcf956cbd38c88ae5f645eaa546b00ebe87a7260bf724be20d34b9d02076655c933d056b21e304c24ddb1dedf1dd76de611fc4a2340336 + +PrivateKey=KAS-ECC-CDH_P-521_C13 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIBGmNH1OgByRkjSINU +zFM+fjX934H/D7f1a7Bybgwp7l3NxfOUulTPVyaQSKq24FWJXI2iS4sGOadCMUOQ +zAQZDtahgYkDgYYABAD+MCZ/M7pc3vwly7PJMg2tnMsdfTdmRGIMpPre5WJqPO3i +WtJUYk3vcnpwSPcUX3YWKqmAQvmxI7IHb46M9Zs/3wARRdxmMZU7bilF6UMB1suw +mP5LBPfumwlBHfEE3ILX157EagHtDy0+fbbraAaUvesQfBB4rsbKvZ6+49NC/n5U +3w== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQA/jAmfzO6XN78JcuzyTINrZzLHX03 +ZkRiDKT63uViajzt4lrSVGJN73J6cEj3FF92FiqpgEL5sSOyB2+OjPWbP98AEUXc +ZjGVO24pRelDAdbLsJj+SwT37psJQR3xBNyC19eexGoB7Q8tPn2262gGlL3rEHwQ +eK7Gyr2evuPTQv5+VN8= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBqJtjapPl0rpsIpK/IwM6hPBqOsEi +DqcegGr74JeoBMxn6bqlFM+2wSyRlL4wISv3quf99tN2whLwVU5lZGP/q34Bgu/K +9w/EEtM2YC4BTaRyVqC2BvKt3M6AU7+Beshla7TkLxTIy/Kmj0iKs13N9kBWJx3u +H2BqRAukvU5aEbi45U8= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C13 +PeerKey=KAS-ECC-CDH_P-521_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0128ab09bfec5406799e610f772ba17e892249fa8e0e7b18a04b9197034b250b48294f1867fb9641518f92766066a07a8b917b0e76879e1011e51ccbd9f540c54d4f + +PrivateKey=KAS-ECC-CDH_P-521_C14 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAIrbSoi1x36qBHS2f +nzH77Sfy4fPSOVON3z5MyMOaMwJm2yW3vAqXBPF73n81kr9fHy1LVgE6rMPY0bwC +8A0xRsyhgYkDgYYABAC6OM+/n9JRij9h1DVJ56am0osr5X/9Pg+s62NrNO0X4ESp +8kna6PwTLpN+LZNJzS7Xe7EEnOtpKi7FsXrWFQKmTAAeyR0wWFc/psBWSgKhoBAW +DDE7x8c1ENyYPlRhaCtb4A285+LGgq1z8pyoIs3BEfaPq+M6ezhKZINCw8258FC8 +2w== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAujjPv5/SUYo/YdQ1SeemptKLK+V/ +/T4PrOtjazTtF+BEqfJJ2uj8Ey6Tfi2TSc0u13uxBJzraSouxbF61hUCpkwAHskd +MFhXP6bAVkoCoaAQFgwxO8fHNRDcmD5UYWgrW+ANvOfixoKtc/KcqCLNwRH2j6vj +Ons4SmSDQsPNufBQvNs= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBcgCz8Wpoy67Sv3i6jN37bP+sJiu6 +APvCX53HKgfOWTcpBImfNkxEyyZMCXtkfUQSvuPlGYktU02RKfiij3UA/ucAurqN +ZypPSjtj3ki5b1bhjfXWj31w1RCYM/Q3cNZzLgazmtYNk+W0Pbh4nx7Aq6RyhqOe +pYQjWs6nV9vxPVO1g2Q= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C14 +PeerKey=KAS-ECC-CDH_P-521_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0101e462e9d9159968f6440e956f11dcf2227ae4aea81667122b6af9239a291eb5d6cf5a4087f358525fcacfa46bb2db01a75af1ba519b2d31da33eda87a9d565748 + +PrivateKey=KAS-ECC-CDH_P-521_C15 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAW6z/8mis9lU8PFg7 +Rk6jah014rJXpdSes0GdWglQh8L7TRXPW/WvgW0PP/dYZJDM093BqYs5zmN0nGKI +zg29rH2hgYkDgYYABAA25IjadYFHKp2OYoxY1q1ycxG35qP2rjOoVE80sJKAJJAg +vnGWkW+v2Q4uxUtmtUaNI2G5m1b6ANesN6u4xvFmUwEe25+4rbakP09fX9wUIcn+ +BPyLpGybZjNOOvknyL77QwcQTymazsTjD4Etk0XJcg0Zhp2//9TKPn0nE+tfw/Qm +FQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQANuSI2nWBRyqdjmKMWNatcnMRt+aj +9q4zqFRPNLCSgCSQIL5xlpFvr9kOLsVLZrVGjSNhuZtW+gDXrDeruMbxZlMBHtuf +uK22pD9PX1/cFCHJ/gT8i6Rsm2YzTjr5J8i++0MHEE8pms7E4w+BLZNFyXINGYad +v//Uyj59JxPrX8P0JhU= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQATv1dvS+Xnjgxzpj4I1XWyhSldXhC +h1iCmQq4Wrm3NS3WubL06poelcOIDWXR82AvnKZT3DRvrIWGWNdWJvTU+wgAYc8V +29qn8xWJyYQANz2ihFBtcMifB07SYqnigUB5a3I2wu75kBYIXnFVL/SIxytzOf77 +eRXDhFnLIKuFrsTkUFI= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C15 +PeerKey=KAS-ECC-CDH_P-521_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0141d6a4b719ab67eaf04a92c0a41e2dda78f4354fb90bdc35202cc7699b9b04d49616f82255debf7bbec045ae58f982a66905fcfae69d689785e38c868eb4a27e7b + +PrivateKey=KAS-ECC-CDH_P-521_C16 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAjiyTxUI4diI6Y3yt +NnyFidppotD8aGEvMZI65QIZ3yRS58ySYVtn8XtX/9L1KxkVS7QNdxUzZCD94uif +7iRPWdyhgYkDgYYABAD6OzURjWxCJXD3JKJvkLKDOxkjkXTOoIHFMTP2TbYNaUDq +EmEpnATB9Fh82wxMOWFkecG7DBRnmaEYAy3PmPiZwABp8EAikAYVH6MrUfZ5yIFv +fBdQa0A4Cdx3zViirsQw2U0TtskW3pnzVapF/PvGhT1obHG+SWoGfSS/rqSBj8Uf +dQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQA+js1EY1sQiVw9ySib5CygzsZI5F0 +zqCBxTEz9k22DWlA6hJhKZwEwfRYfNsMTDlhZHnBuwwUZ5mhGAMtz5j4mcAAafBA +IpAGFR+jK1H2eciBb3wXUGtAOAncd81Yoq7EMNlNE7bJFt6Z81WqRfz7xoU9aGxx +vklqBn0kv66kgY/FH3U= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBKYkd4M88+C6MLPG/kLspb+AKsIyk +W7eJLg4ielBP3QXSOBpESLaK3/nEFTyH6st4Mw2L1SUV+fmgtY6F9Ea7ThAAnt1n +lpbT0dDvMn8gA4MlP2QTaD2eT8yHuzXxEsLxEAmNFeVwHXzu5BYpH/X+2F5of3Jz +iLmv4mpPb+7VYLIY5rs= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C16 +PeerKey=KAS-ECC-CDH_P-521_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00345e26e0abb1aac12b75f3a9cf41efe1c336396dffa4a067a4c2cfeb878c68b2b045faa4e5b4e6fa4678f5b603c351903b14bf9a6a70c439257199a640890b61d1 + +PrivateKey=KAS-ECC-CDH_P-521_C17 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIABNSdOdQNgRG/FtKM +WTZVQyaxlzU+67z0dUU5O8jTqvmPFPW+cHS/s45syXuYl1QHTa3bMEX05M50Vmn9 +s+wNX6ihgYkDgYYABAEuwibQUM4Hx5s99NDwiR+fet9GLoyY28GioU9eU6P1rYlE +M1h8xCmovp6h2E+jOxgDaQ2uBNpyGNMAJhV/yZXPUgBIN9+/NCb1e1x5MmkTCrua +OPYYUyIRkxFU207rmu3ojlcpD4QuoPLqml90xiA6OSD+TjBfYRj2drFU4ddbnLXr +iA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBLsIm0FDOB8ebPfTQ8Ikfn3rfRi6M +mNvBoqFPXlOj9a2JRDNYfMQpqL6eodhPozsYA2kNrgTachjTACYVf8mVz1IASDff +vzQm9XtceTJpEwq7mjj2GFMiEZMRVNtO65rt6I5XKQ+ELqDy6ppfdMYgOjkg/k4w +X2EY9naxVOHXW5y164g= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBo8ICQOWfW3o+F8J10jFLoXQSEK1Y +txA2+Mg8wfaw9Anf3ZET6Utn7DnDKRQmwj/8xEcFRnDSkI/4/mfcIwYDTFwB0oJb +/Tr4seEyBXgME3/pOPhP3kAYjmHqAs6tgbrf20JcKffX+wMk3rrcELu5PeaPYsNQ +aSaCg/UmWGXbV6efe/c= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C17 +PeerKey=KAS-ECC-CDH_P-521_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=006fe9de6fb8e672e7fd150fdc5e617fabb0d43906354ccfd224757c7276f7a1010091b17ed072074f8d10a5ec971eb35a5cb7076603b7bc38d432cbc059f80f9488 + +PrivateKey=KAS-ECC-CDH_P-521_C18 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIBGl0cx5zSv3PqEG8O +YKWs4iCBO1Pie3OYZDNKB8AzZ+/aekYZ+m7vOpdGSSKDs8RFYQoCOpzEm/RZEUA4 +T8pci7WhgYkDgYYABADrB8czLu230wNgWdNffSKI1Dd9X0IzetOWQHn7EgzNTIvT +hLWFYhBVIXAjrNmpT8s7llv7OUZ154it5Bod5z5iDABJGoNd4ubn3rfgkPShHyxG +DAsfPV6U7o11EBTccgeE/TtUUAyG667xhCnwno6HbV0VOJaKAw13Fd3pnw2PBuKd +WQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQA6wfHMy7tt9MDYFnTX30iiNQ3fV9C +M3rTlkB5+xIMzUyL04S1hWIQVSFwI6zZqU/LO5Zb+zlGdeeIreQaHec+YgwASRqD +XeLm59634JD0oR8sRgwLHz1elO6NdRAU3HIHhP07VFAMhuuu8YQp8J6Oh21dFTiW +igMNdxXd6Z8NjwbinVk= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAfi0Tjygy40Wuj/ZZV+QOXscWPwFr +320koiQ9qmMdh4pKFng5kMciOCEw+eUfDBvW/1rJZ4Dki2j13slfQuYUS7UAsN5c +iWeR9SiGsPCZE+JueN0LaXmPxN9tlePKcI7Ly8zhwYlfVWG7q6rjcunmfm4aO+YO +GbRwzfZz7B/Dk9NCbiA= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C18 +PeerKey=KAS-ECC-CDH_P-521_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01e4e759ecedce1013baf73e6fcc0b92451d03bdd50489b78871c333114990c9ba6a9b2fc7b1a2d9a1794c1b60d9279af6f146f0bbfb0683140403bfa4ccdb524a29 + +PrivateKey=KAS-ECC-CDH_P-521_C19 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIBDJCMrxvnTGFrYl/I +wfUURGpq7IO1k3FB1q+7Cox2Zqd0b6H3pmZKISPozfbNi/g2xW08Dr3MmA5DoYb5 +OPOniuehgYkDgYYABAAxiQ9Mer7D9yM2IoXXfSY2+HaBfbO7yIsB53NZe5af9vAT +6kcMhUq0p3OQBOuMvqabgt3zasrdQGhxeY7LKsOqfwDYtCmuMlAma5ZDwMdlpg3B +AVW8JTHPhicpb0l4tmQKnmAOGdADfVhQP6gHmVRqgU10eKVQqpDl6+sFJSf6rq5d +CA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAMYkPTHq+w/cjNiKF130mNvh2gX2z +u8iLAedzWXuWn/bwE+pHDIVKtKdzkATrjL6mm4Ld82rK3UBocXmOyyrDqn8A2LQp +rjJQJmuWQ8DHZaYNwQFVvCUxz4YnKW9JeLZkCp5gDhnQA31YUD+oB5lUaoFNdHil +UKqQ5evrBSUn+q6uXQg= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAEYw2AiIJsa+OutGhK1ZvxIdEV24R +mf6A3hzfhRzfA+W5CRqPfgeeg7f4JyWbaR0MIu4p1r33Pse7/XRvLNl6NX0A2l/0 +kEVIo0Li57pqH07l+EBBGpbPY+b+Yi8iwT5hTgqEfBGhqz8dEsyFDDLglWFMqPfi +chR3tIbp/0A3KXfD9lw= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C19 +PeerKey=KAS-ECC-CDH_P-521_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0163c9191d651039a5fe985a0eea1eba018a40ab1937fcd2b61220820ee8f2302e9799f6edfc3f5174f369d672d377ea8954a8d0c8b851e81a56fda95212a6578f0e + +PrivateKey=KAS-ECC-CDH_P-521_C20 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIBs31rcojeZxNgQl0+ +WsHMshgVB52Nc0Mem3Sm8OeuAEo1dXWxGtZmQs6Ld1WT66nZi/Jcde8LTTogmLvG +QfWaK3ehgYkDgYYABAAYml7jTefjWu/q7vkiDBgHG0wppMO9nZVEWL0+gqejTaNM +/1V5uBAcBlsfL1J89FgVAeKO9WcYc+ZSZ3M9ADUgrwHrS8UKe01Fmdfj+nc9256y +UsmzQihy5US991x79g9RZt3BHrCPp8MIItq67jc6tGjrLZIuSE4qUn//LruAS32a +Nw== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAGJpe403n41rv6u75IgwYBxtMKaTD +vZ2VRFi9PoKno02jTP9VebgQHAZbHy9SfPRYFQHijvVnGHPmUmdzPQA1IK8B60vF +CntNRZnX4/p3PdueslLJs0IocuVEvfdce/YPUWbdwR6wj6fDCCLauu43OrRo6y2S +LkhOKlJ//y67gEt9mjc= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBeA7f8cocA8++WT7cbASbyyhgKUqS +w1VInZr7LnAgda3hyVOJWkViMKDN6QXeSj84Vz2/zM1nrW5+k/C1WB6Sal0ApUgZ +YskWKWLn8OveyTaTXQ6qgT6CJtQNf2EZv9lAYCOAyGch5h2xgw9R4TnyEAALzsDY +7dOeVNc6mhKflc1fqXk= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C20 +PeerKey=KAS-ECC-CDH_P-521_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=015d613e267a36342e0d125cdad643d80d97ed0600afb9e6b9545c9e64a98cc6da7c5aaa3a8da0bdd9dd3b97e9788218a80abafc106ef065c8f1c4e1119ef58d298b + +PrivateKey=KAS-ECC-CDH_P-521_C21 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIA8mYax2L2DF//I75d +lpzNTsb5jk5yYY0Svc25tBAhYjM3iMC65Z+RzfwXLHoWge5E2WqyE1puXzQV67zV +UWWxr7ChgYkDgYYABACo4lppAtaHtHh83JTDZKx87MXElUg+02PcCqle4r1znExN +RrFwBscosHY1DX1+VMaCL1L0cWKiUQmqq6aQyraW7AFo0vCP4Z5Nye56GVsDyff+ +Znb59SC2JwVXUE5yykOUosaRhiXhWsDFG4+VzVYBI2U/uOjubblh4sTGLMVOkuKi +qQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAqOJaaQLWh7R4fNyUw2SsfOzFxJVI +PtNj3AqpXuK9c5xMTUaxcAbHKLB2NQ19flTGgi9S9HFiolEJqqumkMq2luwBaNLw +j+GeTcnuehlbA8n3/mZ2+fUgticFV1BOcspDlKLGkYYl4VrAxRuPlc1WASNlP7jo +7m25YeLExizFTpLioqk= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBbaz/oYPlMDCDozT3Zd5yTsXslAIC +bUeXiEqYKKDTIajPrHSrc3/iCn1r78/HO2o1wcewHTc+MavBktSKQkGjWAMBHlMn +ysItMF5xVuVZF24Zvufk8vWehvGp0LZgO2p98Qab3mOH/rcVh7j/zlsmbhuuht4p +N4o05cdLZyTE1ApxmSM= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C21 +PeerKey=KAS-ECC-CDH_P-521_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=014d6082a3b5ced1ab8ca265a8106f302146c4acb8c30bb14a4c991e3c82a9731288bdb91e0e85bda313912d06384fc44f2153fb13506fa9cf43c9aab5750988c943 + +PrivateKey=KAS-ECC-CDH_P-521_C22 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIA9DDKEmHwloGpKC6e +lwqSNCJ7HV5Y1VjDzG7/RNG99T3hatXuKxi5LWL8eVhhFrDvwV95NA+36vXObEQ0 +Hc+N3iehgYkDgYYABABsHZteyofeH7hxoKMvgHxyWtzN6bOWdFOnE0fWCPDAMM0J +4zjN7L9KAgFbyKbo0+JZX+dz/8L8TkpV0LGizAAyOwEUGyEJ5/SYHJUqqBiiufb1 +xB/szbenpFubS2cpN3cbAIyuX5NN/j/tENODqx84dpySzojZvlQUgX7LBzoxqzaM +yw== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAbB2bXsqH3h+4caCjL4B8clrczemz +lnRTpxNH1gjwwDDNCeM4zey/SgIBW8im6NPiWV/nc//C/E5KVdCxoswAMjsBFBsh +Cef0mByVKqgYorn29cQf7M23p6Rbm0tnKTd3GwCMrl+TTf4/7RDTg6sfOHacks6I +2b5UFIF+ywc6Mas2jMs= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAoJFCHTcD47NB6fHn1Y+M9729F5jQ +AZZ7gB0c7CfmBcWAsjh8HLRk9VznrIAzQQKrA8+4bYivdsn0EpwBvt07v8QAjJxX +eo5vxEaBXp1AuqZgJfFdrihfGetmjuYK6cmOfs2/Kypo4ikoBZ9n2xiABxYdPs85 +fgiD8MTrfq94J6YiBcw= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C22 +PeerKey=KAS-ECC-CDH_P-521_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0020c00747cb8d492fd497e0fec54644bf027d418ab686381f109712a99cabe328b9743d2225836f9ad66e5d7fed1de247e0da92f60d5b31f9e47672e57f710598f4 + +PrivateKey=KAS-ECC-CDH_P-521_C23 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAXcM67aA8LrIzAU7k +aN/3U7cvc7AJkQQ+o1OCiuadTND63tp7sni1NdfFdAb/Lm5HOlpP+Y6Q+Q1trdJR +AOjYVmahgYkDgYYABADIJbowc3POyN0kmO74LiH9mGIWjb/rg1k5gMqfgodTM4mf +6U8Tfa8cQYnrUCk3w6Nn6nlR7YsPM3f83ykiAh1GpQFriiVA1eZUk4iLwzcknmfA +pod08+jYHjtFdKASUWXwvVi4r53nSzWDJTn5XDzZ8bdZQIVgqmhRrjrHVVNHsNOx +Ow== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAyCW6MHNzzsjdJJju+C4h/ZhiFo2/ +64NZOYDKn4KHUzOJn+lPE32vHEGJ61ApN8OjZ+p5Ue2LDzN3/N8pIgIdRqUBa4ol +QNXmVJOIi8M3JJ5nwKaHdPPo2B47RXSgElFl8L1YuK+d50s1gyU5+Vw82fG3WUCF +YKpoUa46x1VTR7DTsTs= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQATziBZoF3EonODLg6Ximhqwb8kfeG +mUsjcI/wigig9nW4Ca6Z6fmWfrGknxlgV9aeUNbe203S2agcAr3Mj39RhGAAnvsk +TIuRCH3h7tdmUA8OgVMHUtRpJW73n2uWXYoiMqDC28To4dCSFLqzhIW+bjV8QgDQ +c7UvBOShb8b1JHGHrss= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C23 +PeerKey=KAS-ECC-CDH_P-521_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00c2bfafcd7fbd3e2fd1c750fdea61e70bd4787a7e68468c574ee99ebc47eedef064e8944a73bcb7913dbab5d93dca660d216c553622362794f7a2acc71022bdb16f + +PrivateKey=KAS-ECC-CDH_P-521_C24 +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIA3xSx8UMqew+wU5Zf +2GQ6/uJrJFHstqilOmVdX74W5MZM6GRyJesR5/3LI2J0cd/8XCUjvSromVfLo6V6 +I5M+WnihgYkDgYYABABOhYO7uy7Nk/BxTDMt/1qzvGOW5i88VgIpZkMpuqUTjDux +w2Qoq9TiPRf8t6LPzCJLLnNMiUH28SFyLXtrlBVFdgHPCHTyBLA2PwIIZGcvrb+H +yIEesUd1iyVLdLFPrnQhWfD2caAYISu/JbhRnhJtTK13jP/1DSiP05zrDKxjWxde +wA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAToWDu7suzZPwcUwzLf9as7xjluYv +PFYCKWZDKbqlE4w7scNkKKvU4j0X/Leiz8wiSy5zTIlB9vEhci17a5QVRXYBzwh0 +8gSwNj8CCGRnL62/h8iBHrFHdYslS3SxT650IVnw9nGgGCErvyW4UZ4SbUytd4z/ +9Q0oj9Oc6wysY1sXXsA= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_P-521_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBoyCZsCwL2FNx9gsN0giQ5sevBIyB +eYkP2jCLNZ27wreoMruMZSbEr5mn6j8LPLlq4et2hBMnlcR4rW+WLkpvRG0Bdic1 +eznp12MqE3Cz6Twa+1yFG5EOtOrQydOH32fN6FAD4OQnVS8c0JBZqtAmLiNczl+6 +jO3E/cFGPadtzUttGkY= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_P-521_C24 +PeerKey=KAS-ECC-CDH_P-521_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01aaf24e5d47e4080c18c55ea35581cd8da30f1a079565045d2008d51b12d0abb4411cda7a0785b15d149ed301a3697062f42da237aa7f07e0af3fd00eb1800d9c41 + +PrivateKey=KAS-ECC-CDH_K-163_C0 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUAZlO2B3OY+tx79eYBWBcB +SMPcRSehLgMsAAQHH4sod9YCfZwa3kJE8t6hJpLvI9UFwV7ndiIccrhLNHzjg/OA +Z7icPpo= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBx+LKHfWAn2cGt5CRPLeoSaS7yPVBcFe +53YiHHK4SzR844PzgGe4nD6a +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBXQjbxQoxDITCUZ4Ols6q7bCfqXWB5CM +JRuNoCHLrCgfEj969PrFs9u4 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C0 +PeerKey=KAS-ECC-CDH_K-163_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=04325bff38f1b0c83c27f554a6c972a80f14bc23bc + +PrivateKey=KAS-ECC-CDH_K-163_C1 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUDrvRHVNDKl9QrTpeqkhVi +Y8DgePahLgMsAAQBsBCMeGv000DwUFvfx9RbUUYRrZQCLJw51fuUVriiIhzqTwWP +ao0s2Eo= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAbAQjHhr9NNA8FBb38fUW1FGEa2UAiyc +OdX7lFa4oiIc6k8Fj2qNLNhK +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAWmXRAkv4rX+fsv2mHt66goG/SywA13k +Qd+UCNkfDgId+PBSa4BjAxSV +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C1 +PeerKey=KAS-ECC-CDH_K-163_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=05f9ac3a3dd88429600958386c55bef4b1aa5f0c24 + +PrivateKey=KAS-ECC-CDH_K-163_C2 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUDEXI0Lm03zB4GKkSUw5y6 +SPmtmoyhLgMsAAQDon7K7Ctm/qwgQPaJASi9AFjTGSQBQAfjIJttcSew85Pl5YsV +kLn0C+I= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEA6J+yuwrZv6sIED2iQEovQBY0xkkAUAH +4yCbbXEnsPOT5eWLFZC59Avi +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEApZdsVkXH1y356G8xhYRrqyoxSybBocd +Hpwf6EUmgHaplYA6bUnNB1VU +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C2 +PeerKey=KAS-ECC-CDH_K-163_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=022e0290eda5d348894129f7455d1c766d32d5c2c2 + +PrivateKey=KAS-ECC-CDH_K-163_C3 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUDKlEc3NS/xWfOrIwk7QTo +iU33jd+hLgMsAAQGl42sqkfY87yQtB7H9Piseaht3QcH+LDvQnB2A3a8LV+u2D2n +hyYx0J8= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBpeNrKpH2PO8kLQex/T4rHmobd0HB/iw +70JwdgN2vC1frtg9p4cmMdCf +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBVtowMLCRv4PLNVIS1iBTGUhPqVBBTnB +HSWSovY5O26GxU35Cblf4NWo +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C3 +PeerKey=KAS-ECC-CDH_K-163_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=037f659f430009fcdae4e9f6e6316b0f5dbb268212 + +PrivateKey=KAS-ECC-CDH_K-163_C4 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUCxvZP5gnrjutbU/q2MIiY +5j/y4/ahLgMsAAQFSeGoLsKEv3fVKGJ+Utgy4jbJKtMBmIOqm0WLNb1UTWiCgSFQ +wUl9MdQ= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBUnhqC7ChL931ShiflLYMuI2ySrTAZiD +qptFizW9VE1ogoEhUMFJfTHU +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBrjvWmLTtjalp2v+se+P9Niz2eL8BnWn +VyZnGDmNivZtKXF5hHji830o +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C4 +PeerKey=KAS-ECC-CDH_K-163_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00503bbb9b62f50ae7a8dfd74a1741826f09290651 + +PrivateKey=KAS-ECC-CDH_K-163_C5 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUCalaGdRPd2MqU15I7qh9/ +sA2qOPqhLgMsAAQGwopA3E5VA9LEuKsLa3BG6OJawJ8BIZEWVKWDYAXYA22XZYX/ +HYMeWHs= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBsKKQNxOVQPSxLirC2twRujiWsCfASGR +FlSlg2AF2ANtl2WF/x2DHlh7 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBWxKNYassDCZ1Sss1KxZJpz1G4cwAkJl +YcvZ2hsjpgA94OX3xKBlpcK4 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C5 +PeerKey=KAS-ECC-CDH_K-163_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=012cf17799fdefa2940b18d56e80d44414c5b13884 + +PrivateKey=KAS-ECC-CDH_K-163_C6 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUDhoEQecgCHC159N6VLLLl +mcQuGe2hLgMsAAQGCqQqYuIe6jfjYrTT3oN/DEnTrBMGmyDW/RbROxiD3wVimsfR +uCOGs0Q= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBgqkKmLiHuo342K0096DfwxJ06wTBpsg +1v0W0TsYg98FYprH0bgjhrNE +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEB0HGmk7bOGyU+BnRtd3QKB5P8pdlANMv +lyq6yRvoWnCeugf10WIVrmAt +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C6 +PeerKey=KAS-ECC-CDH_K-163_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=062a2f926ab435ac14e05d44c27b46b6820b713aee + +PrivateKey=KAS-ECC-CDH_K-163_C7 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUA5G6cllJoZH8gSEdMexpU +3/5yjx+hLgMsAAQHqYTq1EAxDO8uEziXL/Ld22XKw9IDM8GpNCf+asUCdgt3eImK +i7akCtk= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEB6mE6tRAMQzvLhM4ly/y3dtlysPSAzPB +qTQn/mrFAnYLd3iJiou2pArZ +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAe9HeV+w44BAWrXoje/DztmpJRSmAL5h +gdf8A8qL/fEYac6ijPoOX19k +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C7 +PeerKey=KAS-ECC-CDH_K-163_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0399b9294e895486bdefbaad7a729353ce09586357 + +PrivateKey=KAS-ECC-CDH_K-163_C8 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUCczSXFAWwRhw+3mfyujNn +NEUag3ihLgMsAAQHZ8Me6TA7GyzTBZ+BUH7zBOvTECwCUeDUMNw/Y/Oje6seepV2 +Us9n4iw= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEB2fDHukwOxss0wWfgVB+8wTr0xAsAlHg +1DDcP2Pzo3urHnqVdlLPZ+Is +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEA3TX+bqM2opo3nJ50/+GdAMv1HwCA+3p +lcOk6Kb+Ic0eTNTKOBLA1pKl +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C8 +PeerKey=KAS-ECC-CDH_K-163_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=022325a9a769a902c2e64c80a1d35429ced42ae0a4 + +PrivateKey=KAS-ECC-CDH_K-163_C9 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUBm7SAc5ARI1xtXG501qe7 +TyD2G3qhLgMsAAQAk1SQdXBNedrncjF91lJE+nclaesCqKKCHdOdfnZTynHPwant +hXgBo5s= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAJNUkHVwTXna53IxfdZSRPp3JWnrAqii +gh3TnX52U8pxz8Gp7YV4AaOb +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBld99U4Rx+diAvlPVk5hN7I85uRBBok2 +YAqtyyX9QCTtPoRbK7+AcoDm +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C9 +PeerKey=KAS-ECC-CDH_K-163_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=051392d5377016358405030b48744003db66440a2d + +PrivateKey=KAS-ECC-CDH_K-163_C10 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUA9O21i8w9bp0xcilCCnMy +gezP8c+hLgMsAAQCcYNgm3WTsYRTZcCB1F/2bJq143AGm5gSNv6TCUe2t383QoKh +jkvpk8s= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAnGDYJt1k7GEU2XAgdRf9myateNwBpuY +Ejb+kwlHtrd/N0KCoY5L6ZPL +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAmHRU0XOtJIimo10WX59/RmutoSKARSh +Is4oyhViD3tAofJrQjTJVr3B +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C10 +PeerKey=KAS-ECC-CDH_K-163_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=045dac076e79de2fc631315465d3ef6245f26647e5 + +PrivateKey=KAS-ECC-CDH_K-163_C11 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUBuZBJGhL97iMaoqEW4ePB +yR0P1HihLgMsAAQD2oadCcTkVFrBaJ/HIxYBJjLQq9kCyCD0AxDl/9L4v0Ofuoeb +su9iGyo= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEA9qGnQnE5FRawWifxyMWASYy0KvZAsgg +9AMQ5f/S+L9Dn7qHm7LvYhsq +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBw44D0k3CgAnlUpOqIC8GSmyjFMpBG/j +tFSvlCCoEfHhX3dNpa4aQLRZ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C11 +PeerKey=KAS-ECC-CDH_K-163_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=014f7a46847ed6a7ff605b0e52c616e4ad3f0d5029 + +PrivateKey=KAS-ECC-CDH_K-163_C12 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUA6Cm5lC/ZZIf2ASkI/gT2 +2OqvGWahLgMsAAQFqyB0wE31cWAWdzX3/C2PYp00/xgBLp2m0Fuz4qy+W6SvtKDd +ctsH1qw= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBasgdMBN9XFgFnc19/wtj2KdNP8YAS6d +ptBbs+Ksvlukr7Sg3XLbB9as +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBuYK93QZuf4PxcecoaIqEBFAJAW2BpvK +NABbV4zXp6aSm9P2zimUO17Z +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C12 +PeerKey=KAS-ECC-CDH_K-163_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00eacabc34555956995623e60482e5c118e34e2094 + +PrivateKey=KAS-ECC-CDH_K-163_C13 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUBV86PC2zpLkJuyZ8iOtgn +Y+S9P/OhLgMsAAQF05icykrnMt6TZyslySYIYbTA3OMENqMx6tJPKAe1UmD53D3m +aM+/67c= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBdOYnMpK5zLek2crJckmCGG0wNzjBDaj +MerSTygHtVJg+dw95mjPv+u3 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBPdQ4nUA4Q8KF2uD8UvCbWvXHr10A55Q +CQZ8DuLI9Vt+hNp6OR8Ir3UE +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C13 +PeerKey=KAS-ECC-CDH_K-163_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0414a622645107f115576f51cdf39d1393a2d7851f + +PrivateKey=KAS-ECC-CDH_K-163_C14 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUDeYhfRfLXB74cEdhsQbra +STsqVgOhLgMsAAQFrjHLKbMdJPX5TDDpwC8H84v/CsgE2Njjm/h/BYVD3ImQqRIU +2kFsxVg= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBa4xyymzHST1+Uww6cAvB/OL/wrIBNjY +45v4fwWFQ9yJkKkSFNpBbMVY +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAqufW6lBAtIacGdh6sAJIZDxza0EBK3d +d+GZwTLRisVBsRd0jSMZ23/l +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C14 +PeerKey=KAS-ECC-CDH_K-163_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=056be002daff11c4066e10acd046a85e170fa4c122 + +PrivateKey=KAS-ECC-CDH_K-163_C15 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUAuoxYZNs+/XaLk3b8K2wf +hfRvavKhLgMsAAQGL2IhSYI/JVtPhpBmZvOjVWrwgOoCdMoywQ+a3WGgJtIK061W +sX+wakY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBi9iIUmCPyVbT4aQZmbzo1Vq8IDqAnTK +MsEPmt1hoCbSCtOtVrF/sGpG +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBD0l0t6Sk7hNNRozyxpS9ZMKTIt2A9JZ +2CNunI1kN/QebVRhHFIjj+LV +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C15 +PeerKey=KAS-ECC-CDH_K-163_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=021fef8e473daeda8ef6bf07814d7b9b613e3076a3 + +PrivateKey=KAS-ECC-CDH_K-163_C16 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUD5QgEhNNzCyJIzMSCYNS9 +GFdgWtGhLgMsAAQFiupuQLjLJeZiKnvk/wG3nJLecqUEP2d2tt7/PSm0xwOJnXBc +f+z1JcQ= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBYrqbkC4yyXmYip75P8Bt5yS3nKlBD9n +drbe/z0ptMcDiZ1wXH/s9SXE +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAFYOGkIYZRGL6hbNrWtnq6OE7zh7BYsh +PsKrOUL49q1gqVaVW1iQZrhW +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C16 +PeerKey=KAS-ECC-CDH_K-163_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=03a287fd1cca68db47a3c74c12627fc3728568dd66 + +PrivateKey=KAS-ECC-CDH_K-163_C17 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUAXQUroavqckl4yu8YeSRW +ctWu+JGhLgMsAAQDa4Snczep3lwd1648iZOBOC8P/6QFbUrDn+iB/bjmDUVZZYqq +3kVmPuU= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEA2uEp3M3qd5cHdeuPImTgTgvD/+kBW1K +w5/ogf245g1FWWWKqt5FZj7l +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEA45IXekuQfHKymwOudgRpayom/NFAzGh +Z3xGpo6WSBGpzF5OU+px4jEp +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C17 +PeerKey=KAS-ECC-CDH_K-163_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=029558b41b8b92387bc22c868f51bb7acb6e4ee2e3 + +PrivateKey=KAS-ECC-CDH_K-163_C18 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUDkYAYep7dzzjcJk8FWwfS +C5+ai8ShLgMsAAQEspLR+gnfxeajrZn9Av63TUgONPIG4YiACaCgSRwL5qv6yUPT +d/C0hjs= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBLKS0foJ38Xmo62Z/QL+t01IDjTyBuGI +gAmgoEkcC+ar+slD03fwtIY7 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBkJZ5QBHbdo+l+JeSR1GbCt5WL1JA8Ll +MoE5NkGlGNHc7/q+6LKb3hQC +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C18 +PeerKey=KAS-ECC-CDH_K-163_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0530020c8f6362312bfbe5c1c605b40dc2e032e81c + +PrivateKey=KAS-ECC-CDH_K-163_C19 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUBbTeGKxlXY8agHV45uUWa +MlB8KyGhLgMsAAQDNEDkYMR18gWKdn7EZsoYvOQfgw4Dcq7jI9Bj+omsv/v1UCSu +JOSSnxk= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAzRA5GDEdfIFinZ+xGbKGLzkH4MOA3Ku +4yPQY/qJrL/79VAkriTkkp8Z +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEA3FCdpl7RHji2LWa9fLmPiK8TDHkBnPy +jZYqv+3uYuq0fDtFeaHlFoM2 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C19 +PeerKey=KAS-ECC-CDH_K-163_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0521673006a1d9608911d54536e122d809e919d804 + +PrivateKey=KAS-ECC-CDH_K-163_C20 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUAbGWHlLA5yCCosDMAj6is +dVa8rsOhLgMsAAQEy/soZpHkFQgaF4Xsawqs2x0jHR0F3WrP6R1oqOwjaGR4wO6M +iSd67xQ= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBMv7KGaR5BUIGheF7GsKrNsdIx0dBd1q +z+kdaKjsI2hkeMDujIkneu8U +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAnXsFfJ90tpuRN/mI1Ry1b06JQL4BY/Q +ImKyfBhd3iayx31aT01Q3Jko +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C20 +PeerKey=KAS-ECC-CDH_K-163_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0460579beca16cccce314ff3040de4785336fc358c + +PrivateKey=KAS-ECC-CDH_K-163_C21 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUBacjaIsNahVSVBHoQS+AL +FXW2UquhLgMsAAQEXv7ZyL0qTkKViPNE9J0eY+ZovQECXRr4WsIdWYItffjw5L66 +3ztdRAE= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBF7+2ci9Kk5ClYjzRPSdHmPmaL0BAl0a ++FrCHVmCLX348OS+ut87XUQB +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAjOvNhAwOSJvQW3SLhomtz+Qk9OKBzQl +ihdcl3aKn3K4JLmakfXPjj2W +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C21 +PeerKey=KAS-ECC-CDH_K-163_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=05ba66964483fe473ccbd00c37ad3ba40cc5969f62 + +PrivateKey=KAS-ECC-CDH_K-163_C22 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUAAy/HkIZGMmMMSaKemtD7 +bRDytYyhLgMsAAQHec+z4XyQKiWE7TOCqL7YJi25hCQASvJzh1+KKrmpSsDR5KIz +kLK7UFw= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEB3nPs+F8kColhO0zgqi+2CYtuYQkAEry +c4dfiiq5qUrA0eSiM5Cyu1Bc +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBtAyFSJA8ovn90349tKkUMEimlqVB6ra +x3zERImF0XlGNrwdWC89EBoz +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C22 +PeerKey=KAS-ECC-CDH_K-163_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0277c4a76e1613b2ede699a675c1645a786075009e + +PrivateKey=KAS-ECC-CDH_K-163_C23 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUDwd5btA5wkz7X24TOLLRo +y7opmzqhLgMsAAQF/+DxYBi9S97l9zv9rQTXE/Ihb1AEI2HIgfAIHLBUTvqww7NP +Weqt7sQ= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBf/g8WAYvUve5fc7/a0E1xPyIW9QBCNh +yIHwCBywVE76sMOzT1nqre7E +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAfhYHsYd8UCSJ6q3oBXyxx0p43FsAcH1 +HMQYW2iiYOMbSwDAOkQD9lwl +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C23 +PeerKey=KAS-ECC-CDH_K-163_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=03c6481dac387af39e8c09a553068ac496eea03691 + +PrivateKey=KAS-ECC-CDH_K-163_C24 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUDiBJ1uki+oL7MAhGQNGf1 +0KrjIaqhLgMsAAQHduQP5xSZhTN+8bbJuDDLNgh1KqYFjm7LsnsLLTzQ46e6U43j +V2/VufY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEB3bkD+cUmYUzfvG2ybgwyzYIdSqmBY5u +y7J7Cy080OOnulON41dv1bn2 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-163_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAroi+9qqqAbIVw8UrUyIKmEMy42EBtRD +jlKMqIewW9JWTfk775v2YNp4 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-163_C24 +PeerKey=KAS-ECC-CDH_K-163_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=07b5d096d06d41c3ad6458cc93417e6facc99bc7b8 + +PrivateKey=KAS-ECC-CDH_K-233_C0 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0TWluMPOBH+8XfJid9O/g6 +wz3a21z0oFDKgr5I8KFAAz4ABAGlPlwTiz2DkF1WOqHbASdGM8mGtS94IlqS4z55 +UgDsq9Pi4mcpqWVgTlYO1EmKIrMcOWQuHPmbHd4+xw== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAaU+XBOLPYOQXVY6odsBJ0YzyYa1L3gi +WpLjPnlSAOyr0+LiZympZWBOVg7USYoisxw5ZC4c+Zsd3j7H +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAfQONLPtShstQMBW+3XyrVQ8iXz9gvVC +z3RqDyAvAMEwoavpK8TJd8gAd3mWzMULkN+ZGi6B3VFcGIWZ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C0 +PeerKey=KAS-ECC-CDH_K-233_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00a822b141ca1f5ad32899e68c54d1fec3df8100df485ebf1c5868a9ac89 + +PrivateKey=KAS-ECC-CDH_K-233_C1 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB1Rvm+81IeMVUObC8u+Xqjo +S8nbiecKjo6/NHgtqKFAAz4ABAHFoeXT7lFuPt5yP6LVzTRWsRYyYwPF7kknOlYE +xABWjQ/nEwKVVBv6JlB0FHVG6XM3NroAdVnXFtjglA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAcWh5dPuUW4+3nI/otXNNFaxFjJjA8Xu +SSc6VgTEAFaND+cTApVUG/omUHQUdUbpczc2ugB1WdcW2OCU +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAMhkwqRiqTY6SsPYGCEbygNpRy0YYoii +dWdDO9pFAGidTQAG66BU3Gn8wHhngPtfdNOYkhNQTi9uZmmA +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C1 +PeerKey=KAS-ECC-CDH_K-233_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01662682bec2dfae05e38587c8e6a4d18aef4cb3416989c47c11bbe2810f + +PrivateKey=KAS-ECC-CDH_K-233_C2 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0uzKWV5V5shcWveMWVQP23 +SQA/9Ow2HDi0jn2mvKFAAz4ABABaSPrEdsMcrQxo5k5l5oeuRBj7XTtLsqu5kN0N +5AAtmt1wZibyhZ7OEQ3y3eifrz6KrEM+JZXiPCdAgg== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAFpI+sR2wxytDGjmTmXmh65EGPtdO0uy +q7mQ3Q3kAC2a3XBmJvKFns4RDfLd6J+vPoqsQz4lleI8J0CC +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAXgtgvzSEcAkfIfmV+/MXS/2sF65NTMK +U5A/s7+jAMzoMKUV1pCrmBSVea00gThIWeVl0H+mH1Dr1mmi +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C2 +PeerKey=KAS-ECC-CDH_K-233_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00215d511cb95e0e073ee999908a7a844afd75c9acb7a9d724f7fd322b01 + +PrivateKey=KAS-ECC-CDH_K-233_C3 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB1qfAOJLfGE1Wzcy51emhZI +OmyTiK4hKqkmyP37XqFAAz4ABAFKr4gOgdtpq6K0A7vafzYeMzm0g84mmfML9Sge +rQG3FVm9fZOE5Re4fxE4ppb7zrNRDYxBwhWNSqPlsg== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAUqviA6B22mrorQDu9p/Nh4zObSDziaZ +8wv1KB6tAbcVWb19k4TlF7h/ETimlvvOs1ENjEHCFY1Ko+Wy +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAI2ADTdnq/VzFpV1TuiCm4WP9OtgSkSK +1mSQtJwZAbwPAzlkmtTXt8/z/KnpZaOGJej0W8lgKjPAeYoz +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C3 +PeerKey=KAS-ECC-CDH_K-233_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01394e02c70104f2a5308b2d101b02c70ef2d13540602b8e8f82dc6d569f + +PrivateKey=KAS-ECC-CDH_K-233_C4 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0uL/h5G8ZMAPOw8dXVz7nd +s7GTgUWZ99vd7e/Po6FAAz4ABAGARcyeZfbideMipiwY7+LQDPk5lf61NWEnOj8T +BgFk4Ac8DUs+EuIvg3vT/sQh47sJ4MDdmXQigw9kAw== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAYBFzJ5l9uJ14yKmLBjv4tAM+TmV/rU1 +YSc6PxMGAWTgBzwNSz4S4i+De9P+xCHjuwngwN2ZdCKDD2QD +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAUo+EhrdelJn9crSBLP0khUIR4ayP42U +2f2gLg8ZADlP6hddrZs01SVDRlTQyGY3kmysOjKSouSlFLX1 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C4 +PeerKey=KAS-ECC-CDH_K-233_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=008556a4c3a8906ddbcb946099ca5dbe7bdb6cd8f37fbb50c96fcefed32d + +PrivateKey=KAS-ECC-CDH_K-233_C5 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB1mly5xVmdG8vdsh3k3dAVO +onXip+J6t8LQXF8kEqFAAz4ABAAgIm3XPjGOT8jUndQ+WeJgGT0bskjL5MBrTWuD +iQDtEqTziWlqsxyT6j7E2Orxi+CX/JFS4sQrc/9FKA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEACAibdc+MY5PyNSd1D5Z4mAZPRuySMvk +wGtNa4OJAO0SpPOJaWqzHJPqPsTY6vGL4Jf8kVLixCtz/0Uo +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAIlmeIj4QlxaYjE0Yi8eqdmvNt+XcsQQ +1uMfK024AIRDD6RxZNHA65cEKkTL70ALu1RfrqTvSbpeO+9C +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C5 +PeerKey=KAS-ECC-CDH_K-233_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=004ea6e0e34ec7c9bbad47f0f6f8ec0608e736d91e0e56cf3e5cffe8c370 + +PrivateKey=KAS-ECC-CDH_K-233_C6 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0eU7qha8AmK1MppxGw6xiK +G8p+9LXIUGEiXUHUqaFAAz4ABAB9bXhfoyMXTrnN5bcFQo5AGSRINbyUcC8oDCX/ +5QGaoO9DMHTEhNFOYRNy8D74kS8agkbOsekMgX2z2w== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAH1teF+jIxdOuc3ltwVCjkAZJEg1vJRw +LygMJf/lAZqg70MwdMSE0U5hE3LwPviRLxqCRs6x6QyBfbPb +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAWTaCZIl6zxkH8g8dyBKOW6rlJWxKiL2 +jnpLg5nVAM2Y8nBMdJTm0gN150UoyPVvhn6d12MpgULqAXJL +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C6 +PeerKey=KAS-ECC-CDH_K-233_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0160d0b9b92a4acd089738fd489ae39734551e888fd05a020ce26498270a + +PrivateKey=KAS-ECC-CDH_K-233_C7 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB1CqAMqEdFld1XEnkdwM7DT +Qdov6ZOkV3tBpAzuGqFAAz4ABAH2YpaX2mINWX/B9RyDN0IT836VL8EX7mWp52au ++wArNt7ceHrJUdKHnXJBTaLnV1ps18QuD6ILMtRh9w== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAfZilpfaYg1Zf8H1HIM3QhPzfpUvwRfu +ZannZq77ACs23tx4eslR0oedckFNoudXWmzXxC4Pogsy1GH3 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEADOosIo8M8NDAyztHA9egm+TLe6HnsFg +eir11GKYAGxPJ6SbUaifbQlgFguluP7AjdLNS8kJpJCuvk97 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C7 +PeerKey=KAS-ECC-CDH_K-233_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0038381b342efaa70bb79adb76ceb775de5f45f863559ecaee1ddbbd0313 + +PrivateKey=KAS-ECC-CDH_K-233_C8 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB1D5XcJeBlfkXFS8Fe6H7AV +bYlNMui7VMf2L3NApqFAAz4ABAFIfR/avM19idolaFsEKYCrFwruPBHzEYDjt8UK +SgF+OD3WWh7IpAkAf3UDXlsWEzXZx3Vu2XBJD70XGg== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAUh9H9q8zX2J2iVoWwQpgKsXCu48EfMR +gOO3xQpKAX44PdZaHsikCQB/dQNeWxYTNdnHdW7ZcEkPvRca +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAM/hX4YaoBU0hfOKwDPfnI2BKv3hZ7iR +i7lKCNljAb6/Bn+FEm0RSTIWIWQgGxN0vxhAqhHV4lBjnQYI +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C8 +PeerKey=KAS-ECC-CDH_K-233_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0122169f1dff445ec663270375dfe914016c38ce6c2d40d0b8098abc60ac + +PrivateKey=KAS-ECC-CDH_K-233_C9 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB1MZ8YQPmISRgCg2ekj3CF6 +Ai9Xxv6yGccDM0/zOaFAAz4ABAAjUv6TQeYsYJ/BU44CcEBecAHXR7h1AOZEoRLF +2QBB87FbcUpvfvZH4jZl6lMO/L4ZsHQENs2oEug5OQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEACNS/pNB5ixgn8FTjgJwQF5wAddHuHUA +5kShEsXZAEHzsVtxSm9+9kfiNmXqUw78vhmwdAQ2zagS6Dk5 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAHY+KGvlB0C3+L14+nC8rIgN89c3HrM/ +2iRTs+0jAFe+bF99mQt1Q5hoM5rjJ68EoEmzi5IzK5y4yyfZ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C9 +PeerKey=KAS-ECC-CDH_K-233_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0054d47c9d0a9fee258122326be25daf35f0ba0b8449e16b4623a8c0fd7e + +PrivateKey=KAS-ECC-CDH_K-233_C10 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0Z5U2ocples9zczFBBjsNR +QAiJ+udaC6Tc/yXx+aFAAz4ABAFeZ+rr5Sujf1tzoZnZUIEs7BAS/UEFgURLvyPg +yAAiBV74Id8zBC+4MW3a12SF29JZDi9UmKkU5PCtOQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAV5n6uvlK6N/W3OhmdlQgSzsEBL9QQWB +REu/I+DIACIFXvgh3zMEL7gxbdrXZIXb0lkOL1SYqRTk8K05 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEALyKca1METTe8Cbkcj4xAiP7LFhZvHWU +BUyJTaVSAMNlBWNQVTUDPHpsRI1zv6CPuDcCNMf9usGzTaoi +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C10 +PeerKey=KAS-ECC-CDH_K-233_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0071aed39f5c44a7ff72db3e0f8284da39dfb2d894f278d2006f9d2686e3 + +PrivateKey=KAS-ECC-CDH_K-233_C11 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0Tpf/JoPcGnBxmFIaZYS5c ++rfiv3syVfGBoCJxkqFAAz4ABAGN5NxPak3lw2OOu6JNxwZJg7FZ9VsTnHaAocuQ +0QE1Uy2BSK8+In1KiWDnaMVl9ywawKHJp70YXPmU0A== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAY3k3E9qTeXDY467ok3HBkmDsVn1WxOc +doChy5DRATVTLYFIrz4ifUqJYOdoxWX3LBrAocmnvRhc+ZTQ +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAWzBrhP7NIJSSTAhzWFG1THwtyKEKkTH +l5aJ8f84AYwJY/8Oo3BIyfb0dkTyp8jFA4Y8J88h7m4KMiTq +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C11 +PeerKey=KAS-ECC-CDH_K-233_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01ca68ead4eddc8847a3a661cc6628e076bdd4b45047ece72245d094dd3b + +PrivateKey=KAS-ECC-CDH_K-233_C12 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0vXSp+CHekyZBzcyOG6NWX +NKI91/Dff81U2UHnYKFAAz4ABAFHmAlGgMvTL7HuncqmuHOaVWMFI1kz+ycVfTGe +VwHIVfDUU8H/tfZosyqLPjCeDoEBvDm22+feIUAV4w== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAUeYCUaAy9Mvse6dyqa4c5pVYwUjWTP7 +JxV9MZ5XAchV8NRTwf+19mizKos+MJ4OgQG8Obbb594hQBXj +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAOSeGCrF2TK+iwX+NA6Mty3zVkfezWea +jFm12Pv6AYG5WpZavRbsJDDCbdBxmE6FSpZ/8RTueDG9MUsq +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C12 +PeerKey=KAS-ECC-CDH_K-233_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=017a893b2e090780ff8daaf3588f9dfc0ac4dfe1f1e263697a9d1f398ab3 + +PrivateKey=KAS-ECC-CDH_K-233_C13 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB1lKhH2wxF/Eyb6aHdAXOxz +McTxRql/dKsMRN4Bt6FAAz4ABAAs1tTB0sxeNCBerblPTP01u1adpyLE2bGbjVzC +3gDqMATlsJMN9/i9oxTIvBFFRj62ACLNLc9sDIJOUA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEACzW1MHSzF40IF6tuU9M/TW7Vp2nIsTZ +sZuNXMLeAOowBOWwkw33+L2jFMi8EUVGPrYAIs0tz2wMgk5Q +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAVmLL9tb8aOVH7nsAW7LTSj2bC6dE1ln +hlk1hdcZAe9lyvFXldFKC+icrHxoAyO8WYA7qHTLKWhnLLip +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C13 +PeerKey=KAS-ECC-CDH_K-233_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0041fa5fdf495b885699249b7746334b76c59e1c917bfc1ae371b96941f4 + +PrivateKey=KAS-ECC-CDH_K-233_C14 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0q1fccY4SvYmibNcJMTd+z +Ws+BBssMGVAsLKGEr6FAAz4ABAD+G1JAinEoQb1i8O5RMH8mMx1AK8w6WrBAXRxe +gAEKcxp9ampPW0Cy6qgQwZAtsnso0pe8BfNxTKyvwA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAP4bUkCKcShBvWLw7lEwfyYzHUArzDpa +sEBdHF6AAQpzGn1qak9bQLLqqBDBkC2yeyjSl7wF83FMrK/A +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAbbP87f6IV43hgXJP4b1zThF9F+96L4H +newpvIhiAWYiLvpdup6FjCRdu12maCOatbpyhhj7hakN3HYK +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C14 +PeerKey=KAS-ECC-CDH_K-233_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=015f5adba59d1ee01696cecce4b63e78e68508303ee496ff5abcea25ad3b + +PrivateKey=KAS-ECC-CDH_K-233_C15 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB1vActUeBy9ptiN61mEOuCD +axr2g+/HVlC+hPIIp6FAAz4ABABNAKjwgg2pCX/lDo5979rClgfdTLHdiB1OYfHn +iwCKSo6cgRtEQ2eVJ1KrjCpRmO+yj77b8/vXAahXqQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAE0AqPCCDakJf+UOjn3v2sKWB91Msd2I +HU5h8eeLAIpKjpyBG0RDZ5UnUquMKlGY77KPvtvz+9cBqFep +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAM9AKuvD5CR6mrQ9qXVRdqgQ4BH5/Zd9 +4b4v1TT7AbrEX6QtYFrTR5x8Q+ckkQcWc3lTzIUErxTzMdNP +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C15 +PeerKey=KAS-ECC-CDH_K-233_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=003d5c29b3753e89ce5064575393392b377ca657a0b73872c82165fc43ae + +PrivateKey=KAS-ECC-CDH_K-233_C16 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB1dwboYOfXR/qhas2FMVanF +/mAIU8caYZg8fcgt4qFAAz4ABAC2y2/6Ti6rz3uYfrtSAWWo7Joipvn/sQDzgXKg ++wDTmBThhSR25W6JzozdZDcoQMAVcKhpQKziS7nPag== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEALbLb/pOLqvPe5h+u1IBZajsmiKm+f+x +APOBcqD7ANOYFOGFJHblbonOjN1kNyhAwBVwqGlArOJLuc9q +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAPOMzM8I5b3/O7NffnW9ztaNN5Hc94Q8 +qI/wkhNtAV7XaXpLjJnQFHgo9shh/8nPsPM9zp0UsHMeHaJi +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C16 +PeerKey=KAS-ECC-CDH_K-233_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=007c01f906caa590898a09f46b6f5383658e7fee656aca0f111f22939960 + +PrivateKey=KAS-ECC-CDH_K-233_C17 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0kHh31WHAx3drhlokcKIIc +x4ea01gyrnGPbnkuZqFAAz4ABAHBcs7it2UD602Qs53azoJbI8Mjdcto6uzXNISQ +owDCRu+cbi+trHfHPundWt7oKLeRhBc5W1mXvhoCeA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAcFyzuK3ZQPrTZCzndrOglsjwyN1y2jq +7Nc0hJCjAMJG75xuL62sd8c+6d1a3ugot5GEFzlbWZe+GgJ4 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAeMoVx35M6z9TJbzxL3nHpF1y81iruzX +Y4R0Sg8/AZ/0iq4MJS7ajTQLJcTdoBovIaqjXTm68DZpahEB +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C17 +PeerKey=KAS-ECC-CDH_K-233_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=019eece7d3fafc9274d361c6fafd9efd9ee485cbacb3baaf6834feb4df6a + +PrivateKey=KAS-ECC-CDH_K-233_C18 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0ESsVakTqMf37X/FZ59S9H +y7lzAyW+IbeZN3nRh6FAAz4ABACXlIYQF7Pevv8wLkJTJ/4mnXh1O3O8G/s6d/cW +3AACWBpJwSafXsho3G1/XC2OdJYy1Hq22eaNutmF8A== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAJeUhhAXs96+/zAuQlMn/iadeHU7c7wb ++zp39xbcAAJYGknBJp9eyGjcbX9cLY50ljLUerbZ5o262YXw +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAPSqf5NAqdpGxPBnKHU6Stxa9TpNy0Z/ +cLSHPaeFAH8yHivE4pporCPHfO3Tu83gv3uSon/6dklpiJgd +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C18 +PeerKey=KAS-ECC-CDH_K-233_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01e4b7e89fb1b51179b8792f5cd581c3917e11246d3846f6344ee82eed66 + +PrivateKey=KAS-ECC-CDH_K-233_C19 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0rwTZ3hTEInaXC+rPK7sJW +xUsLNfwsZfe47mFhw6FAAz4ABAH7JYox0Wa++c1mTNe2bNjBhucCXHfwuucxWH6e +9gBg39TkdekoBdGTXQOC3BdnBnkVzADtOyT2U4LSGg== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAfslijHRZr75zWZM17Zs2MGG5wJcd/C6 +5zFYfp72AGDf1OR16SgF0ZNdA4LcF2cGeRXMAO07JPZTgtIa +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAGjZ5V56EFt7tEsh1mm7DvZXqRQ3rYS/ +bVhTJwyYABQ8i+21TbB9+PZwg8WaCqfNig76QvQv1i5ELgti +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C19 +PeerKey=KAS-ECC-CDH_K-233_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0145710c3ab0780ec233424d4e28b38d29f886965bbcac49fa300e1ed886 + +PrivateKey=KAS-ECC-CDH_K-233_C20 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0NVllUcUNdlf7DffYi8Y7n +2rskN5yCu/cUxavF46FAAz4ABAGlKUCkUqr0ILN7XzLCwzcwaJSogv7qet2twBkn +7gB3G59ioqb6iSUDIlJ1SQOIuL/C33ffPoBr7bp9iA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAaUpQKRSqvQgs3tfMsLDNzBolKiC/up6 +3a3AGSfuAHcbn2KipvqJJQMiUnVJA4i4v8Lfd98+gGvtun2I +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAJnrkc2phiAQPDIF1kieaK1+V9ClHcUC +1uMFiPQYAD+/gpkp7dKOkG9Y+Hq+1tbRd/Q28N2UDdol6vGI +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C20 +PeerKey=KAS-ECC-CDH_K-233_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=006941a2a531083563dd886b06c0860770a4724bb04a4ebb2afb1ba2636b + +PrivateKey=KAS-ECC-CDH_K-233_C21 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0ZyKsrMvLuk78v9rxEN4tg +hyva62ula1FMjziLp6FAAz4ABACDUw+j3zFah0CsUvTTlLgMSl8hC6ugttwiBeEk +kwA3udAu1D6dQdDbuEA7kCG00sG9Ng7lPDHCe0kgBQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAINTD6PfMVqHQKxS9NOUuAxKXyELq6C2 +3CIF4SSTADe50C7UPp1B0Nu4QDuQIbTSwb02DuU8McJ7SSAF +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEANzKoitDOR3AUll6470HxuXwIfOemHdW +9lSBce6UASjv1JrzprMtwWeXqXjwrUqw22arq9atVnL0+BLJ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C21 +PeerKey=KAS-ECC-CDH_K-233_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=001d754ee5351d4582974734072abac23376e24348370934e7b864db0f52 + +PrivateKey=KAS-ECC-CDH_K-233_C22 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB1QMWAQTYigwPY5VufDu6cC +lj+fG1P8EZpZLu6k9aFAAz4ABAFGPHjkmKvzQDPsPh2XPcElCeLSNPuRQDcV5C9h +9wCt56u5igMIiGaWNTqtM8Bbq1zzwNTpacv0xM7skw== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAUY8eOSYq/NAM+w+HZc9wSUJ4tI0+5FA +NxXkL2H3AK3nq7mKAwiIZpY1Oq0zwFurXPPA1Olpy/TEzuyT +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAXCRezOze46v8kYeX5648Hl7E6q9kVpg +cGzU8yy2AHZR4HQsDYPUtoVS6ber7DZEupdVz/5tTlaUOmub +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C22 +PeerKey=KAS-ECC-CDH_K-233_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=011346b83791e4bea7f6ba6b1265e5050895d84027c106f77353418f75d7 + +PrivateKey=KAS-ECC-CDH_K-233_C23 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB1FR+r5vhzlrxOG4xEEbsgy +YLhKLKkQVfYGaLlG4KFAAz4ABAFQSTjBZ2gK+4ttWFjPqhkcQBlvxOUAxmLFNG7M +kAE30bqUIija5oxFCxoDOiyBCplZcfAcJAieSm/cxQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAVBJOMFnaAr7i21YWM+qGRxAGW/E5QDG +YsU0bsyQATfRupQiKNrmjEULGgM6LIEKmVlx8BwkCJ5Kb9zF +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEANjtMYOCuFwlJaAsIsZ/W/NmM12Udn61 +y0VzlmTFAX2P3nu8Vo/cgCo+NFXzzzVgLfcGhMis3aFloCZW +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C23 +PeerKey=KAS-ECC-CDH_K-233_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00b4938ed1ed012a9a53892ed9949397cdc4e4a612d54dcf80cdb039f47b + +PrivateKey=KAS-ECC-CDH_K-233_C24 +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB1C++VUhi81lRhKRVEMpT35 +fEUXVYS10t4EJyM1jqFAAz4ABAExuNYbnPsFNsWIIU5FiI6+SDke7stNf7W+jv9K +zwFl2klVegqp1F3TeNX4mScsxpdoInaukdLAtnXEaQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEATG41huc+wU2xYghTkWIjr5IOR7uy01/ +tb6O/0rPAWXaSVV6CqnUXdN41fiZJyzGl2gidq6R0sC2dcRp +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-233_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAX+H8T9t/uYIG7XMpTL+JownHSdWsxvf +ZDKXz2lbAPOnRpVeEt0LcZGe2/I7IyLKsyjdCb34e8r9zSiE +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-233_C24 +PeerKey=KAS-ECC-CDH_K-233_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01b3d2578bde3066a253db5322c85cf9487ce77b67ece955e281b0d7d0e7 + +PrivateKey=KAS-ECC-CDH_K-283_C0 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAV/eSbgCVCpSxwsjoLF4 +Tl+HgLVoU/ml+MOlJm6HJ9zpfUoXoUwDSgAEBhHtwEXb5D7MTvazJM1R9w/j1934 +d+xot5iQnDxFYXVqow5fAIM7JVEXBK8Jti2ffLrFmBTnW7ucc19VU4SR2/pgweAR +Xv5C +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBhHtwEXb5D7MTvazJM1R9w/j1934d+xo +t5iQnDxFYXVqow5fAIM7JVEXBK8Jti2ffLrFmBTnW7ucc19VU4SR2/pgweARXv5C +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEA/B1wkw1qdyZUr5v0yt2Hc5j9HIKIkCO +OhS70JfgErVpTCKgBnWCW0AgLpW+fatagmFH4EuMUaCbADRXfB8x+MFqcMjhyFuJ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C0 +PeerKey=KAS-ECC-CDH_K-283_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0745552817b5d729310b7dbebae687648714a9ae695dad20ca1ab6111c3d054670f21132 + +PrivateKey=KAS-ECC-CDH_K-283_C1 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkATuRH2LzqohDVGNFR+5i +KAfV0QYCAzCuK5eYwMTNDq2xC6lIoUwDSgAEB40uzU2QIzK2s8e9S6fSAPw0xF7a +MJmLYCXtR7H0+OaPMoYkBNXlNkfd3y/MyIFtrIvHDCmAdiLMlVOacqo6myMModJe +57UW +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEB40uzU2QIzK2s8e9S6fSAPw0xF7aMJmL +YCXtR7H0+OaPMoYkBNXlNkfd3y/MyIFtrIvHDCmAdiLMlVOacqo6myMModJe57UW +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEB5m0MOkjIP/qvy1syHOZ4wwKqEQg/466 +Iwm5lIe3Qtci6LelAhc2KAH9bS0oblzfN1zQrlabcAAFMS436ONbFZLvubXq9Hs6 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C1 +PeerKey=KAS-ECC-CDH_K-283_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=02eb0c1ceb6179232e91cff91fc8a30553c6ed7e0a71deb1bda0a10735a84593dd903636 + +PrivateKey=KAS-ECC-CDH_K-283_C2 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAXdjK2nn7do88AcwdQQ0 +PMIWIyb2IBfL3fNgqHbck7gfBMWOoUwDSgAEA4FatkgOStJKZignXvLuDOfVhpkj +nbziMziEK8WMQsypTSQSAt6DPMZkyskNMPvqxgPvu86SdtTxarHEbn4RyBqaqeJc +gpaa +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEA4FatkgOStJKZignXvLuDOfVhpkjnbzi +MziEK8WMQsypTSQSAt6DPMZkyskNMPvqxgPvu86SdtTxarHEbn4RyBqaqeJcgpaa +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAM5Hp0PUi4b+/WtcAvKpeydiov5X4L34 +XB1qKd6IYsTJntU6AyLllgafkWVoyiSM7Vfv6QU0r0qfkKT0D3l+RSlnAxcmv0HX +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C2 +PeerKey=KAS-ECC-CDH_K-283_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=04a9dd2cf5076814e5329c518c4f27b429dbe01d46682d476e7e78880de368b064236ba9 + +PrivateKey=KAS-ECC-CDH_K-283_C3 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkADv+mhyYU4bluisxVTpV +FR543cOPB0MrXEKhzS2ieP0LaOBHoUwDSgAEAdnDM32pXsblpL/xzJJ4OYm2bJIw +EHhw1KV4aZM4446y2S7/AM2q19DrD0Rap2Ol37jzj1U1V3fOJPdTta09PLqxJfSR +aY1W +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAdnDM32pXsblpL/xzJJ4OYm2bJIwEHhw +1KV4aZM4446y2S7/AM2q19DrD0Rap2Ol37jzj1U1V3fOJPdTta09PLqxJfSRaY1W +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEByiXWDm0LGIDanr/+t3vwwJLclhAe+1W +XK6pOb4z0WrJREXHB3EmMHkLBa4E2NfZ8jZdrprSTExhs+sgwKeYfmpMSw9ZjDcf +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C3 +PeerKey=KAS-ECC-CDH_K-283_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=044e2cd2bc164d21cf4b9833c0aa62ed059282e62b82f4500aeb422d17e1f6e7e8bbd500 + +PrivateKey=KAS-ECC-CDH_K-283_C4 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkANla9SpwjmktAmd7IQMv +eurWAD8STnIBPzfAbgu8IONTKzzqoUwDSgAEBuSH+R5zvdNE+4vI9MH0ducn+yZx +6dbI+9d18aqiTK8umjb1BmPhz/gJl1e7n/G4eJAoOqSc/w97Ev4YTtKkKDddJ5bN +gd6R +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBuSH+R5zvdNE+4vI9MH0ducn+yZx6dbI ++9d18aqiTK8umjb1BmPhz/gJl1e7n/G4eJAoOqSc/w97Ev4YTtKkKDddJ5bNgd6R +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBVZy1zmYRRCJ4rfHEEtCJH3d0TLUCtCH +tYjWo4XaZPWi9Gg4ArTLFYH54rN463pPZPWn1DILLKPTR0cm9nDDiDu42kfz10W+ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C4 +PeerKey=KAS-ECC-CDH_K-283_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=04d4f04d2fcf1bcd8150eaded90e467d3d38f753b6fb54eed8f9d29cd3dcc7be2c83de11 + +PrivateKey=KAS-ECC-CDH_K-283_C5 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAMcz2QlAMsx67WxUqM7X +U+rypIiCKFo7TH5gIfJr7OByKECtoUwDSgAEAmiWsDnXBo2YoyZxDrt6l4vUdmEV +RkWuMM2D1gU1Bn4FFRzLANg6Jjvb2Mir8DEL+/yDkXqGsNjEvgsVWre54scFYFYo +u83Z +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAmiWsDnXBo2YoyZxDrt6l4vUdmEVRkWu +MM2D1gU1Bn4FFRzLANg6Jjvb2Mir8DEL+/yDkXqGsNjEvgsVWre54scFYFYou83Z +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAswopMt20UfZjfpnfcoU4XcTR7loHGXN +tUDyLJB2E/3MsMjaB9QGX5kMj8N9EA7OOPv1dM5ETcNzVeBwK4DR6xvdZwmX6PJx +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C5 +PeerKey=KAS-ECC-CDH_K-283_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01c343540541604f68ddbd63c483760d824ded5c18be7e56e6d36a9ac6d25772afb0a90a + +PrivateKey=KAS-ECC-CDH_K-283_C6 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkANs511Ngctw0SM19IWDl +DIEfZINY6w2x1UKOgap6aGt4Za39oUwDSgAEA6chkGrRPcFcMR/U5VLzvIe32Szu +7bsMMWqVJ4W6Ron8C6JwApUU84c7vDueIXBh96YmH9xiaGhfllbx1e6kcswttajB +Yubp +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEA6chkGrRPcFcMR/U5VLzvIe32Szu7bsM +MWqVJ4W6Ron8C6JwApUU84c7vDueIXBh96YmH9xiaGhfllbx1e6kcswttajBYubp +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBjiA61OMcnXsuk21PZtowof7N3i+9RSX +TR5+MamuNlohgUFfBK+fLPklQuH/j/KPjnyOgJWE4kOkkClJp2WihJhsdQsbBsia +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C6 +PeerKey=KAS-ECC-CDH_K-283_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=05e38079815477b8a79096ce339c4a255f8b213be74715ea61ef7dd0c0b5f161d9de7521 + +PrivateKey=KAS-ECC-CDH_K-283_C7 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAGZJv9ZB2r8bnUmdT7BL +6wmUddCqFdXvaEi3NNLUEwCLYEMIoUwDSgAEAI9ldtYq/8cYNtGa27w9UEIQ8S77 +YcQgV4JFFSkMUC8uCbbYACFkO+h65uVJsNX7tVjBMD0UsczXdwPsdPlgLzXKjXpR +Obzn +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAI9ldtYq/8cYNtGa27w9UEIQ8S77YcQg +V4JFFSkMUC8uCbbYACFkO+h65uVJsNX7tVjBMD0UsczXdwPsdPlgLzXKjXpRObzn +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBb/SiVouZjZtt6g3iMcrzkj3m1yVJKCK +4nPHjOs5rpdVnVrDBKKwpV+AFVoaMw/ebLbZft2wqdy2bEmzkpBKvos4H5EJDbsh +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C7 +PeerKey=KAS-ECC-CDH_K-283_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0531ccf51d1096982f7c2ec513a92bf51c7ac5069cb15c5e2a053ceae7e5550908a19101 + +PrivateKey=KAS-ECC-CDH_K-283_C8 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAIGGCmU9bZREbXdmFk/5 +LGxcFUXHNTBLOtTVF4yLFNAYHpRxoUwDSgAEBraIFbuDaR0WdJxL4WEl4qbW2ulC +UnObp78NsNUBmOov5D3fA54NkwGKRhJWIPb/rKWgZoNDxXAlpgwxqdblEZHKsziZ +O0a1 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBraIFbuDaR0WdJxL4WEl4qbW2ulCUnOb +p78NsNUBmOov5D3fA54NkwGKRhJWIPb/rKWgZoNDxXAlpgwxqdblEZHKsziZO0a1 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBjVH91cL1pWXM8A9LmxMiJcfMUrc8ovI +UdxS7U6MGk6gb4cCASLTdzsJNOkA+6fr/hrV7VvsD7Gp3c9O62HL7QQAdDE8CzFw +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C8 +PeerKey=KAS-ECC-CDH_K-283_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=06ffe79d2b7664ee2d8303ffe0ceca8c49a581fcdb49c4af6a060ff204eea74f4cf39cef + +PrivateKey=KAS-ECC-CDH_K-283_C9 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkACJD6JGb16l87w6c3mPH +bU4QcVApT8+N12dkUco7+lxe25ZMoUwDSgAEA+Q54+vfp6I6nesJ3hQZBcZTxPIC +7fLPXwn674i6MRNwHknwBx0HG4btD0aPxgGd4j/kuiyztQAyvjXpLS5a9A3nBqtS +ToKr +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEA+Q54+vfp6I6nesJ3hQZBcZTxPIC7fLP +Xwn674i6MRNwHknwBx0HG4btD0aPxgGd4j/kuiyztQAyvjXpLS5a9A3nBqtSToKr +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAJBH99dzl9tw45/p5Lqdl6mVp+4Gbs9T +gXnpN6yGys2sUQlQAHzYdRZ/BqL7moGeLL2s78Fsrg7vLLsLLUm+rhCdt1PJUGFw +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C9 +PeerKey=KAS-ECC-CDH_K-283_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0311c430db78b6203e27b52988e1e9dae890c655dac4acefa7ee9612bec32e3e5f52be55 + +PrivateKey=KAS-ECC-CDH_K-283_C10 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAFEqQoQeEif8n+1RwiaH +MWhBNvIlz79FZImH4kU6cYb2p+3voUwDSgAEAi925atxT994Vx6EwrbqOhfxKZm+ +SDvGfhuEPSCb3+wDR6Q+Au7B/A6F8zDFPa17/0hi2K//iqFPlHVulbjwH9fuuPxU +UneH +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAi925atxT994Vx6EwrbqOhfxKZm+SDvG +fhuEPSCb3+wDR6Q+Au7B/A6F8zDFPa17/0hi2K//iqFPlHVulbjwH9fuuPxUUneH +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBL3sGTAMiv3u2GSZ0nA5It9Xsv/sN+Rc +A6XikJ3jwzO9BqXhAapPQIRPJBPx/L3tADsdFcnx33VI3iorv3G1FmV62NjHfPct +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C10 +PeerKey=KAS-ECC-CDH_K-283_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0701d92ed8687138014b4379f1c34677e1744f6ae8c89958a5962f14408d587b95472db3 + +PrivateKey=KAS-ECC-CDH_K-283_C11 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkACqK9JfRo9rAcyo5Pe33 +U5Sj9RnOB/rtP3fcDmafOhscbdrboUwDSgAEBXHwyH+IiI7Ac4lhg0AhdlzE9cjb +Kx+eqbj+mEf4lkNJ/cRPBO98gESmCWlHRsyq/of8f58aeNAPg1T12n7i9dpyNawa +1LV8 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBXHwyH+IiI7Ac4lhg0AhdlzE9cjbKx+e +qbj+mEf4lkNJ/cRPBO98gESmCWlHRsyq/of8f58aeNAPg1T12n7i9dpyNawa1LV8 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBhH1OvS0iJkOelLlxzhWoedCebsPNtOr +GYmyzNmTkbbGs6E9BU6pWiNPZYlxlbyXsD+m0kbqWrX0HaIsCO2BeqfASt83KYKz +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C11 +PeerKey=KAS-ECC-CDH_K-283_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=04f2301ed85a5c91c31a7fd125854904340a55e34976a20743bd33d95e476450f301ee62 + +PrivateKey=KAS-ECC-CDH_K-283_C12 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAd6fukqyTQbnSuWtNq4Z +XCNgxyjrOMUO9TMynnDFrhn0ibbVoUwDSgAEBI1h4Lm4BkvMqM5A1PnmiyNoQTdy +akTqdcjy+IUPAzP76YXmBfyro41R4hEra5805necEMDFWcPs0VYCKWbPkqjH9lAg +p569 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBI1h4Lm4BkvMqM5A1PnmiyNoQTdyakTq +dcjy+IUPAzP76YXmBfyro41R4hEra5805necEMDFWcPs0VYCKWbPkqjH9lAgp569 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAScG7AoOdkJdirTg1VkwpEFuTdChr22X +mHJSmI2grJYnV3y+BCFehxUSnMdjAXkXAdxf4avNZytqoZukx+Uy7nqRPupg28nQ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C12 +PeerKey=KAS-ECC-CDH_K-283_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0643900f337ed362815f181e0628ed5184dad3e66a1f030e947f116696312d835f7f6e7b + +PrivateKey=KAS-ECC-CDH_K-283_C13 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAV06Ii1XCcsznZPNKWUG +ZPOb8yAcXR6G067495W5/d9H2MSooUwDSgAEAeK4jeN3KwnGPQNuDbukNSRph0l7 +YoPauMzxACSG3gcwJ3tDA84YK38M6iGgah1N6HIsv8WbnZ15vHYLnRfYVnFWGuqt +1UlB +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAeK4jeN3KwnGPQNuDbukNSRph0l7YoPa +uMzxACSG3gcwJ3tDA84YK38M6iGgah1N6HIsv8WbnZ15vHYLnRfYVnFWGuqt1UlB +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBbsgvqT9hdAWJonFUAVAAUCbbHEtNWpS +95PXiqLYJhpDxbbeAxvlyvyKrvGbhhUDQTp7c7YLN7AYBJPYLpQm9Htlhzk9CN4I +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C13 +PeerKey=KAS-ECC-CDH_K-283_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=063b1a3db331f91abd0af837db9d5f040620d1ddd7fccf8b58e0df43698351ea1942548e + +PrivateKey=KAS-ECC-CDH_K-283_C14 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAJjFcGZnku/aZfyeeQmT +EVjf1Ed76TMy5JPWmGa2YCxJUd5voUwDSgAEBNxndP5Gqw7Sdo03nnVko3xrsd0b +/FVXJ62Uwg9HMsq/KiyCBsbPD0IfkfyiK0hxIWqfH+OHjweRTpaulKx3C2di+dzg +j/ot +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBNxndP5Gqw7Sdo03nnVko3xrsd0b/FVX +J62Uwg9HMsq/KiyCBsbPD0IfkfyiK0hxIWqfH+OHjweRTpaulKx3C2di+dzgj/ot +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAQo8okNbE1/+oIeSt/GbTuGBIHwpvhzh +/erNtppmn5zd6RgaAkkIJ0semMbRl+0ng8PJU8Gzs0+kOosvV0JYTjf+pAcmm0O/ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C14 +PeerKey=KAS-ECC-CDH_K-283_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0516da1d64bc4b25ce4763e6438257d62fb1ffdeae16d68701d63b603ad53e8587927669 + +PrivateKey=KAS-ECC-CDH_K-283_C15 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAPS220qHzdMAKcw76J5A +ubywFNAQqRolLFbLKGcfNUqATLTYoUwDSgAEBm3fBIMf0ccrxItwkGHBrqqtGcna +PYwVBvp3XU9aVBLu4ChtA6odExRv8ZJ5K3SlxkrTFQ+uNE+oMOD0RzPYZ/TgrgU1 +JsYr +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBm3fBIMf0ccrxItwkGHBrqqtGcnaPYwV +Bvp3XU9aVBLu4ChtA6odExRv8ZJ5K3SlxkrTFQ+uNE+oMOD0RzPYZ/TgrgU1JsYr +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBToN1hNeQ6EU5QAK7EC6JwmzphNzDxzC +AGtEaTXiN7/Mw5TYA7Zs5s8BUH1GLu7/9iEb1MVgcBFsaQdGj3x2/gEUC/DV+3t5 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C15 +PeerKey=KAS-ECC-CDH_K-283_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=049c68c333b96705eee4a3def0d568b0d4faf24df2fc2f1bf40da0af0946240c38e97f74 + +PrivateKey=KAS-ECC-CDH_K-283_C16 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAauCxaYq5H7LzPZmzDMj +s1EoxS0XvhG68721YAbl1Wi6rYu8oUwDSgAEAKBK16WDZmpAQ3+WiwLKx5RnRbTK +lJAhxUQ963AYP4jhd4/gArtZHDLw2zQwNC8ON8RUScKTxU9rffb3l8CZLCgphYto +Dyvc +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAKBK16WDZmpAQ3+WiwLKx5RnRbTKlJAh +xUQ963AYP4jhd4/gArtZHDLw2zQwNC8ON8RUScKTxU9rffb3l8CZLCgphYtoDyvc +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBtSm8+h7bYxJy+UXqXXSq4xjORNVltaz +DMZcyAwShFCPSXibApY7NW8kNOwkm8tlie3k3jbOzTRQ5vXkd7/NwpraSu8PRaxT +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C16 +PeerKey=KAS-ECC-CDH_K-283_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=04dd44c1a30edac2e39a5bc9902625880a18516385c90a9cc6b94c4f111e0260863ccab2 + +PrivateKey=KAS-ECC-CDH_K-283_C17 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkABJUrxeRzHVpTOWQu1GK +dwp1BEYXGjDt1sA4KhfmiAoa6luBoUwDSgAEArdmyZOzmNJCanoKSenQAQedD8Mh +lxgcVurBgF5Ph8nfBV3qA257vTvpE51NQ6hlXvfVGgYtmUfRpIAQ7x6hDu3rJ/DR +/+dl +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEArdmyZOzmNJCanoKSenQAQedD8Mhlxgc +VurBgF5Ph8nfBV3qA257vTvpE51NQ6hlXvfVGgYtmUfRpIAQ7x6hDu3rJ/DR/+dl +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEB2RS4Z16ELiFEj1QP10EM+Fj3xNP/7hV +j4rCbPswYp+M+wk+BrOiSypLB3dw05a78VSvQe7jUDVzpt6a/g9tGLAvyXYcoWQ9 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C17 +PeerKey=KAS-ECC-CDH_K-283_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0049c165339e9aeb2b516684b442921f1fef3091cf781e03fb3f56e93af1f3d6e500c81f + +PrivateKey=KAS-ECC-CDH_K-283_C18 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkASAXuaBZn78TzuEIUKj4 +vQbMwAvSmsZ3nxvZM0ayLJgyfg+noUwDSgAEBCHGLcq1S6gA6vrCMvxzDOcPbVzF +P/U9NxJpzwRtrq9FGzPnA9Y19VIz2jxJCpWcbmOpT82+Rx+/yhnSxaP9ErBNs4DD +yJXM +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBCHGLcq1S6gA6vrCMvxzDOcPbVzFP/U9 +NxJpzwRtrq9FGzPnA9Y19VIz2jxJCpWcbmOpT82+Rx+/yhnSxaP9ErBNs4DDyJXM +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAY4Lt1FtLELp3ZbKr/XyC/3fPoYj/JR9 +TXBJFTZ5C4dBzdNyAywP/72i+oY8udFcNlRQINW7JNkw2vL+pFVffCTWrvuywB2S +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C18 +PeerKey=KAS-ECC-CDH_K-283_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0645d7f4c5479baff5bc0cba654a3dcfda56c0e9d19f50f9d8d8c6357c09a140effbf223 + +PrivateKey=KAS-ECC-CDH_K-283_C19 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAE8ZfIVDLLQqF3ckmuQR +70uyZXukutNa5ThjWhUcjWpWT5zKoUwDSgAEBAyIkk1aJKhT+uQIrqWzvIJ9cxX7 +tY5uofamVnfdTE0wS9dfBUuChpraRDP3II+FcPJPBstkBG6KwIasV9Nwf8iCxjUn +M9/2 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBAyIkk1aJKhT+uQIrqWzvIJ9cxX7tY5u +ofamVnfdTE0wS9dfBUuChpraRDP3II+FcPJPBstkBG6KwIasV9Nwf8iCxjUnM9/2 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAkq7FV5JEkKC6jLltURiGum1E6oEdto7 +3bdSYNX1+i57iYmHAb37CgeaVbz84cqLzjAZy8rmFkADOEFm67sLtzNTlWWtxEbz +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C19 +PeerKey=KAS-ECC-CDH_K-283_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=028017c2a0240fd746ee72a0bcae1e53e05b7af254298094c381e735523854ea5fdd4f5c + +PrivateKey=KAS-ECC-CDH_K-283_C20 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAU6JNIPR2LdiHPSL0kvI +oblbtAoIwWwyh0plK1miJSE5Qo2soUwDSgAEAVdOF84mMRxAq/MkP0iJournSoNB +qng4VRBW9DlbjwK9wye+AIbln5hTSPP415U4ALHXXhQVISScQ/4GFpE9tdHUvVQA +q85V +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAVdOF84mMRxAq/MkP0iJournSoNBqng4 +VRBW9DlbjwK9wye+AIbln5hTSPP415U4ALHXXhQVISScQ/4GFpE9tdHUvVQAq85V +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEB1J1EryTSTjMUkDOcO9lIi24XBPJYcHz +H5FCBQZ9ZLGkyFMUAqq9uB/+0sABrLtNC3vlOTBOMuQx4C34sZKtdO0bSwYGv8kL +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C20 +PeerKey=KAS-ECC-CDH_K-283_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=02603c00998deba52db12814b1f77b2120cbc1dca59009c0d6ea40dcbcabca32c50380d8 + +PrivateKey=KAS-ECC-CDH_K-283_C21 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAetvbJGogKVGIYXGpwDo +Y3uPRH0J0bJRRg/lfxv0Yu/d3a7AoUwDSgAEAxswJhBDiDdM+3x7TvZCEaR+ILlW +Gju8pTUWBAt72ig3MJRUAk+K6yOjXhwiIllnx5EYaMhO/dhz27zLx2Pq1n5yojJK +pMby +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAxswJhBDiDdM+3x7TvZCEaR+ILlWGju8 +pTUWBAt72ig3MJRUAk+K6yOjXhwiIllnx5EYaMhO/dhz27zLx2Pq1n5yojJKpMby +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEB+wp2i8wTOuo1eJJ62BUpOT1lTTuWdJc +HcDhLMOPdouD2v/uARLH1KN/7IQicaCoItN2N+btVRkHEwAa7+EbBvfh004A/N7L +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C21 +PeerKey=KAS-ECC-CDH_K-283_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=026a719bff31da4b4ebaed7bd043064f9c3930b5774c4a99809332c808aacba4b9e3733a + +PrivateKey=KAS-ECC-CDH_K-283_C22 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAUe+TjhmfjKmphq5gM7Z +LkJpWSWxE8aUp5YK7eouHVcaQtPeoUwDSgAEBvWZ8MFJRXoy8aL/q9Tf+RYlk4KR +K2QCtQzfXCNf3Rt5Dl6vBMzx2KS/63f/MpDmWsYB7luX/BsYaaLrnwt2J36AZsCG +d2xA +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBvWZ8MFJRXoy8aL/q9Tf+RYlk4KRK2QC +tQzfXCNf3Rt5Dl6vBMzx2KS/63f/MpDmWsYB7luX/BsYaaLrnwt2J36AZsCGd2xA +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBh71k4nt+PgnOmYqQZVBHpRIuxt3+wgA +vlJetaagOxlmVxmpApaG+Ed/tcdp77CCyz8aDHnbVcsmTiESwOd557VY9wBFgWoQ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C22 +PeerKey=KAS-ECC-CDH_K-283_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=048c48c993040619536f45482c494a39b32e75fe69e478ba06e376228b79eb83d3ff9168 + +PrivateKey=KAS-ECC-CDH_K-283_C23 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAeGQC+Ya235VVZ2ZoLfZ +NURW9RUeL9e4PABbELFgBOvodsBooUwDSgAEBC7Mmf9ItT9mGbSEr4+lmyNKmByc +PpEHu9HNqszoGIXQbgKpAYPaDX/ufz5w4Rfw6KSnQsrRCu/NxKq5uzFFgjdoavtP +rPOp +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBC7Mmf9ItT9mGbSEr4+lmyNKmBycPpEH +u9HNqszoGIXQbgKpAYPaDX/ufz5w4Rfw6KSnQsrRCu/NxKq5uzFFgjdoavtPrPOp +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEB51XYO5u+XhRi7zlNrAxxlWorPVgRJe6 +Q94L62h3pUfD7dRYBCGzBR3TY5bSD/zXzzT8oCJRbdS/+sc/yZWunqgUzg5AJ/fG +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C23 +PeerKey=KAS-ECC-CDH_K-283_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=05d85b16bb2a0d32c73d1402838bdfa512d744fa88c74d3d90cf714c2480e03363d5c6ec + +PrivateKey=KAS-ECC-CDH_K-283_C24 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAHfkGrLQnDTFiKvHbUMS +YC5x9gAZAnuYbg3tNyU1wrapM6UzoUwDSgAEApIzI/FwB0Ii06aih62v09H+EnFd +V7kbH/R2orT8w4XeJh7MBMxJjWfGJnzHxMLUClbNwqbnFe3YsqlhTusz0Lb9Fiy7 +hacU +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEApIzI/FwB0Ii06aih62v09H+EnFdV7kb +H/R2orT8w4XeJh7MBMxJjWfGJnzHxMLUClbNwqbnFe3YsqlhTusz0Lb9Fiy7hacU +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-283_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAkeE09PV6AIf/tiicJqfVNU5XZj6RCpl +WgXdlCYrYDWW+L/xA+jjngjM5V4b7S3+DS+MFBsGQB26A37LOEdEkwyBeNFGQWMk +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-283_C24 +PeerKey=KAS-ECC-CDH_K-283_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=066abb838b5f12b6fc15ceb745600686bc2d5773e53469c2ee920cfba5459a1cab20d153 + +PrivateKey=KAS-ECC-CDH_K-409_C0 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDMIS3EePGCCLnD6aCi1 +q/sORIiIs1sMi7CfgGYW3B7PIt2GI32TfBv95it1rmVZU/xrL36hbANqAAQAaKP4 +sS4C0Q4vUglVJrxASLj2rDqEUxdyhweJk48a7/gT4F5QnqlYfSt+SqFDRLrD7Ebw +ANHOtAx9XzKX4pVfDz6xQis+a7v79+tRi5wXro1A/rhKrzb15b2WB1srTb5TisAR +lirHBQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAGij+LEuAtEOL1IJVSa8QEi49qw6hFMX +cocHiZOPGu/4E+BeUJ6pWH0rfkqhQ0S6w+xG8ADRzrQMfV8yl+KVXw8+sUIrPmu7 ++/frUYucF66NQP64Sq829eW9lgdbK02+U4rAEZYqxwU= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAXf3NvYRYyDK+7W03sIC1AUIGC/gERib +geHzmY9UCGB6RrsVCsR7yqr95HuKe3L0eLwi0gHfTvSzfgEk5Vtn81ht4kqIpsXZ +iFQAfUsMS0zNaNUfr6dji75VXWC3Te8hfGpjxbQGj7c= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C0 +PeerKey=KAS-ECC-CDH_K-409_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0176bc5c4036ce5125493a58dd265f04d190f028366f7799f70aedf29ac67b5b37c37238593377a47944f5b639f43856dbd560ec + +PrivateKey=KAS-ECC-CDH_K-409_C1 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDNlGIu3eW5FH0RyehoG +dEQN0z0litL9x7mPr2SxHn6M5ejCHnmfH/L9KdTJSqFYliBopZ+hbANqAAQAMsV2 +hFLzwfO8VIeTea1CCJEmd0Kzf7CW7nuMIc7tAEHpRwzsO+3LeZ6QvbsxGSCD/wNE +APnGEikn+4JCRtHcHOD95xpoSagtQQZdodhSVqmxl5v38oY2b8izJIk+vjTlnARg +BzmUFA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEADLFdoRS88HzvFSHk3mtQgiRJndCs3+w +lu57jCHO7QBB6UcM7Dvty3mekL27MRkgg/8DRAD5xhIpJ/uCQkbR3Bzg/ecaaEmo +LUEGXaHYUlapsZeb9/KGNm/IsySJPr405ZwEYAc5lBQ= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAQxMaKnxpioyZVa22XennNnER2wFsa3U +os/TBoJJo8OSOCJCjTUsXXTl1krM7tvapu++TACGaulA3TG15uPyCztNh6agLHgX +PICqUQpu3/hSxinmBk3118YA/Zjljo6MZiu0uWyLqQU= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C1 +PeerKey=KAS-ECC-CDH_K-409_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00575d9e7f70a4a1c5c807b6b5d6b7330bdd764db2aa60f3bfe497e6bfe90f038fb4f6acf7ac06efc3d157c3dc907b2ae093c6a2 + +PrivateKey=KAS-ECC-CDH_K-409_C2 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDNssXw/whq0jlw3F8eR +EY1HYeLFGYa/FHlCVU3FoYv5u2xnvbupCKHouo53kPWaOXE09oOhbANqAAQAK4kE +GK/FeXyXRqRMoFk2euBmO88FgVaGDGE+4F4R2j8veZxwpo/nL9XawkadqhgQcCne +ATVpBLGXv54GV/Q0nSUruzdcZiBvwNgxJZm9vv7oYI7JSNzkhoB7qlNe0GrayceX +Y0cRqw== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEACuJBBivxXl8l0akTKBZNnrgZjvPBYFW +hgxhPuBeEdo/L3mccKaP5y/V2sJGnaoYEHAp3gE1aQSxl7+eBlf0NJ0lK7s3XGYg +b8DYMSWZvb7+6GCOyUjc5IaAe6pTXtBq2snHl2NHEas= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAeTVgNXprYFnHGzWYtVWm6/k11qk9Emu +1WvYAGGVIMnzLE4jDE2RscQR+QhtUpG6E3AUogAMj/tCOS/zl7vUZ5cvPtJR1aB5 +ll2gsdKjzBbDHSVdzpiGk3styUHqsNi+i7zRWqbtltY= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C2 +PeerKey=KAS-ECC-CDH_K-409_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00ce87aa5e7700384df59d3f1075d282c1aa511391c42ef609b8de1264eca8f7737df91565c73ee884ea882d47c56d979141f0f2 + +PrivateKey=KAS-ECC-CDH_K-409_C3 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDMR1DvAjanOXe/JS075 +DZMk3ggDR/9N+GZF0yVgOi3/0o7K8HdexTyvWlVOr4toSH34hlShbANqAAQBJXtq +vUcNKUtZ3a7azVRdz0OAiviQ9XYoiAM0L8Yes5b1YK90NC4Qu5TSJMJNjlkA5bly +AdzK2X7O9Dh6HPUSsW3VvHq2FfvFCHrBnV/Cdi9hW0kE6jk0O7sYXbZKGff3Ds8N +VXsV6A== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEASV7ar1HDSlLWd2u2s1UXc9DgIr4kPV2 +KIgDNC/GHrOW9WCvdDQuELuU0iTCTY5ZAOW5cgHcytl+zvQ4ehz1ErFt1bx6thX7 +xQh6wZ1fwnYvYVtJBOo5NDu7GF22Shn39w7PDVV7Feg= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEALfRk1TK3MlHCCZ67Ysj5ITjKgOBSwJq +gA9boB6SBMQwUuTUfG/NkjKWVODpAVsBL3k0SgF5lcFXlsWuk+CiB6JwcAT7saSa +DUf9QE8S1XhJ2Dl81NLG0rS5D4ZEA9Ss0Woyt/9Id7Q= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C3 +PeerKey=KAS-ECC-CDH_K-409_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00691dd6b5177702d6a0b1f8b07f3b018478680de7ee079272ff75659335c96afcea7650caa01f996aa37946b78e14a83e579fb4 + +PrivateKey=KAS-ECC-CDH_K-409_C4 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDMNayWWVtUmd33ttSRq +GS8MBccnCjtOZKnWyHfNBtKWKhrITsLYl2X5Z/YETy36VpAxB/OhbANqAAQBk6+h +O9Hggc7l3xKG/kSik7fRsQwpCl8q574tAnNgCaJtg6qqkBeoyL9g76Ffzq0Hdn1I +AdAv1mp4BsTIRF+mFSVP8yu5wdhaOQT5OcEGHiUNPrZBMTCipVcJlHlTEOltw6/z +uCGK0w== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAZOvoTvR4IHO5d8Shv5EopO30bEMKQpf +Kue+LQJzYAmibYOqqpAXqMi/YO+hX86tB3Z9SAHQL9ZqeAbEyERfphUlT/MrucHY +WjkE+TnBBh4lDT62QTEwoqVXCZR5UxDpbcOv87ghitM= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAPKhHM06U8leqY8xRPt31KaE+aH0I+uB +46i/viK2gPIYcPWMrraUbGs7hzaZz/0xQGP0CAD98m7t5sunJIJAcgkGzgdsxDIt +GLx2g9IkC6aEds55AieAsvpU4PfHZSi3f6Yx/lq7W5U= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C4 +PeerKey=KAS-ECC-CDH_K-409_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0136f5c04cf9a56db24ad99bd286feb800aea38d44f819be1c2a9dba15c635c4e122893570233a4c5754a41499eafa39a35aa57e + +PrivateKey=KAS-ECC-CDH_K-409_C5 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDNL9zUbGVh10B9jBsoS +fbihpfWXcZwNEOHWj11IVb8HYFeQaR/NDYtdsTfT/CZ53nWgZ4GhbANqAAQB04Zk +WqpI4v0JUOaprOnf9iyPXpTNukW9c8a+a/e3Y6LJqAeEYxLaOrghwEmsCGH4Izfw +ACpkNu+KEmGuzDjIIdp3Sjkf3Md1DJQ32d/mTIIzUIE5mfD9Twfx1tmAdAmGErxS +BEJJ1A== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAdOGZFqqSOL9CVDmqazp3/Ysj16UzbpF +vXPGvmv3t2OiyagHhGMS2jq4IcBJrAhh+CM38AAqZDbvihJhrsw4yCHad0o5H9zH +dQyUN9nf5kyCM1CBOZnw/U8H8dbZgHQJhhK8UgRCSdQ= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEARdEn76mstX06OTTmnIoQkzwb0Vr8645 +vB+yqZ5Bg7cW4ZT8UHRlZk0AnVvO46QmupMsEAEUbTK3DwnmX89p65rmYWLRC9BD +ad6OgYf6nD0bXdom8QtGnNSSXKN+CZRBV1fmiV5YgUU= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C5 +PeerKey=KAS-ECC-CDH_K-409_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=004f684f9d559d16485f0023bf012006265ed81f06fbc1441334a559e5500a3f77603565013694023e0d8f44fd12dcf69eb8d654 + +PrivateKey=KAS-ECC-CDH_K-409_C6 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDNp2mWQEDRcaQD97LMd ++bq+2+QlM5gpCzQBL7E0vFkUdXLmKmD1yszth7D40f98BJ3+lpKhbANqAAQAOGhw +GffCGd3ZVnsg9eoeilBFHdQL9bZfey4TPebzbko/j6L5d+/pIPhF0XbIpXAjzFXC +AUk5f7xCus+FxZ4EU13x1ScVdh7qmX1P+HIEhmzcPUpUwkJa0hSnoN1ZL0qZGrdo +yPQEvg== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEADhocBn3whnd2VZ7IPXqHopQRR3UC/W2 +X3suEz3m825KP4+i+Xfv6SD4RdF2yKVwI8xVwgFJOX+8QrrPhcWeBFNd8dUnFXYe +6pl9T/hyBIZs3D1KVMJCWtIUp6DdWS9KmRq3aMj0BL4= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEARmYDxEUne5eLC0AVh08JqQqWkTodHZd +3aTYGOpwTtu6I6vtXgi+ktZV155VxbxUeHtN1AE2az3aPph5xEgd3DZ+UcHAVBlF +lkY21QIWh8KFxH1A55/38LtWqTrFYL6Ny5cPWLI7EKc= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C6 +PeerKey=KAS-ECC-CDH_K-409_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00137894f637460a63576824536944cddb42dfe63169c84040a0345ad7516ec4f1ad00bb4de20ea6ea43824b9b0f74dfa6881cfc + +PrivateKey=KAS-ECC-CDH_K-409_C7 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDMG39qzyhsqKCHO/bWH +K7lfAjFhrk4tVJ0PsfOCVjQTWESRZX2xAcMjUUgyw2P2NqnmnoOhbANqAAQAPpqb +XyggZuIzhw3LAMSu0tc6Mx951JyNXC2TkIsO9ecrdIgU0biEBkLXW3qaVTAbHnyC +AQhfV2keBK+sbohOL9vY34AvTUNbzmESMasydHYerV4uajRKU/M8D6FW4xMgYvcr +zaP8DA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAD6am18oIGbiM4cNywDErtLXOjMfedSc +jVwtk5CLDvXnK3SIFNG4hAZC11t6mlUwGx58ggEIX1dpHgSvrG6ITi/b2N+AL01D +W85hEjGrMnR2Hq1eLmo0SlPzPA+hVuMTIGL3K82j/Aw= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAfo5tdM3XUMkeslQAGHr/3oMFbjF3+nH +UXhDhsmBhg3m4blYTaD0IRlBfzIzgpCRCpolngAr3s1QK6ZKbyHQj6QlA4nUJwMk +RW6UQWV0lccq12D7NIMl+Jt6VASiwhwqoHcRvPXzBBI= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C7 +PeerKey=KAS-ECC-CDH_K-409_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00f03b0b43a351311689eb1d3fc457013f294a7d02ad850c72e4ff9b64ce68a47beb49bc5bcbdc828534f8c8a5e13de5fe522eb0 + +PrivateKey=KAS-ECC-CDH_K-409_C8 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDMpsvyzCFlql1xbTNHn +UmfFQk4Ad0EU7CBRpXGymXZhifrSTpL5bj1SdzbqSANnvb3QUw6hbANqAAQBTHVz +mb4gHgiv2LSmcefTttf4hESYq1kuG/aTFTR86C29eF1FkiZg1NDSf6KwrGLnB/zs +AJjwdz0+/pwpCpkuygWHXTRj8HNrLf70r/2f8A+WreUzmZF96gdMeY/FNXOPDFaJ +okR/hg== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAUx1c5m+IB4Ir9i0pnHn07bX+IREmKtZ +Lhv2kxU0fOgtvXhdRZImYNTQ0n+isKxi5wf87ACY8Hc9Pv6cKQqZLsoFh100Y/Bz +ay3+9K/9n/APlq3lM5mRfeoHTHmPxTVzjwxWiaJEf4Y= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAbJV1bt10llwMB3p4OOVmhIgXVEfjmTw +QqAclQ20cbHW1YR/dWae6wvxh/FVnbOyKu7AlgF+WQz6hVNJE2GYwt3YpSEIgkc8 +ndWRwC4gLKBAS7yfY5HXOuAR2smWUVXSZQE5/i5U7Gc= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C8 +PeerKey=KAS-ECC-CDH_K-409_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=018f55b81f15f862aed042f37433050ac61718c9939d432b2a20e12d647f99753b8dd5127cf8963247fe7e1d5ade1442229bc646 + +PrivateKey=KAS-ECC-CDH_K-409_C9 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDMbmAFcAgLqFkF5caNz +BCUIOb1qbl2DSX9/k/D3Ryoh/OS+W+d26QlZ28QaDoXtIlg36NWhbANqAAQB/sCf +lFcWFOfNjpWOvNei/NjCSNQIzbo1ljBUXDE4OSJ3TTsk4gWR2LQelU4WZU/oXLrK +ADHg6x3RzkZ6i3jRDSW53pLP3Cdzgx5uKKFS0CripaUQmUzAEEYiVEQepBEhwGd/ +tBeL2g== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAf7An5RXFhTnzY6VjrzXovzYwkjUCM26 +NZYwVFwxODkid007JOIFkdi0HpVOFmVP6Fy6ygAx4Osd0c5Geot40Q0lud6Sz9wn +c4MebiihUtAq4qWlEJlMwBBGIlREHqQRIcBnf7QXi9o= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAOz3Bk9Sj62uOAyzgphIEQR6DX3ZqN6O +dvgXiqYAaed6lIrPp00sd6doUWWamBlwVNqNRAC5jhNJf3dgcnEcQsGNv8jrjIUj +/2M6+Yih8kLtPDxWXRjPIk+HUfKULjYLoW4PWDCVKRk= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C9 +PeerKey=KAS-ECC-CDH_K-409_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=002b560d1949297dc7e1bbe8ce49a595762924afcf0271e9c493c18ad5cbfcea5f3900c7b793ae5dd44f48884b0bc3b52c66e05a + +PrivateKey=KAS-ECC-CDH_K-409_C10 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDNHO87LE3cR5eiXY6QP +d9vi6owlCdIJBk45z5Ba+qkBCF+OeVybgBfJpdChuWgSwSSj/7+hbANqAAQByOmt +xIFuZgb//14afUinhUw1qvBV0xgz8Mq96LvE0kWOPNPIKkr4B0X1lbO6Evi1wM6Q +APxD8ZO1WJruYphXNeNig3TdRahqYbqveMIfpueHhW6muLiDFlQFcYJYZc5rhXit +1fqmnw== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAcjprcSBbmYG//9eGn1Ip4VMNarwVdMY +M/DKvei7xNJFjjzTyCpK+AdF9ZWzuhL4tcDOkAD8Q/GTtVia7mKYVzXjYoN03UWo +amG6r3jCH6bnh4Vupri4gxZUBXGCWGXOa4V4rdX6pp8= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAE4Fw02sRObhsIzfrmNXwg23pUTcJT3/ +HCPU26hxuWeBtqYWONc4Zdr+CpRDw+wyiFfSPgEibEJ3eLsiRiTNIVST16TzKk8U +GXkjZAlQXYz1jYHf08eT5ZVDp4AxTzzY7hdmTcLkY54= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C10 +PeerKey=KAS-ECC-CDH_K-409_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=000b43cb539bb4bb42f195ffdbcdeb482b69301c0155a840cd381f55c465a8e57ec51d6555871537b56bf84a1544cae2b2b8eb38 + +PrivateKey=KAS-ECC-CDH_K-409_C11 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDMg3d1nE0pBg3i6oN38 +kRHAou1JKyiVad0AYb8SJtI1vapSA9Pvor0BQdKs4nw66Oba8R+hbANqAAQBZ9V3 +sqQ8wafYimvog8KNv0jD4fvyGtg+en49dT+wttP4DNE3b9mL4mD0lHV83AYyVtWy +AV7XADt9K9XgNZMDZgrdCQBJA5z33zlpieoYxwL3BMRc9v3nrQctMSU9HVKV6cXR +1cYsOw== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAWfVd7KkPMGn2Ipr6IPCjb9Iw+H78hrY +Pnp+PXU/sLbT+AzRN2/Zi+Jg9JR1fNwGMlbVsgFe1wA7fSvV4DWTA2YK3QkASQOc +9985aYnqGMcC9wTEXPb9560HLTElPR1SlenF0dXGLDs= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAW9pYP0jV9L3C193i+XgqnFVa50vTM6x +T3gS2oWKuHKBi0YQ1BqPZiALQ0NCIifZ/d9xLgCq9ZKnJedzg4iJa5vp94wcPWly +ufmQNNAswPl3ap9sL5t9UB91vhhZmwiMTFiBxmFG5bk= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C11 +PeerKey=KAS-ECC-CDH_K-409_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0113dd2cf8732ceb8a893e149f13d52026e5d829322d0f1233a624fd6b74d56e7e6374d70942a25152ce5073831660333fb3e070 + +PrivateKey=KAS-ECC-CDH_K-409_C12 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDNgelplMhd7UvI0knF9 +0Keyr5jgSIT3cHXkYEQQxQRKCEYezzfE76PtwstmfIS4ZBWTa3ChbANqAAQAClZ3 +rGwA0mRgVNvr/FNtsKmzUaJAinPgg61i0YL7h8uAMixTlVPs28ITzoTGbd+NwdI0 +ATJ6CjdpJA/aRflLsHNhx0qoyNEZQUp7VmbiWjq2iBl1OWMlp39UGhuiaAEqgsUR +DSpJ4g== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAApWd6xsANJkYFTb6/xTbbCps1GiQIpz +4IOtYtGC+4fLgDIsU5VT7NvCE86Exm3fjcHSNAEyego3aSQP2kX5S7BzYcdKqMjR +GUFKe1Zm4lo6togZdTljJad/VBobomgBKoLFEQ0qSeI= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAPVJxH3I6S/s04tXUIlYgORJ8eMavgux +6syEKY+DYQjlowjMuVeNy9S+YXd1LrIx548BHACTZj7D/LVNZ2iXv8ldteVK1u6h +7HtGykvz0lNYOfEByz5tXxG2o2v0A2PDHJ+IE3hiZ08= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C12 +PeerKey=KAS-ECC-CDH_K-409_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00c8e62ac25c11e86b98642e4ec7adde9d9436f9337369fb065abc9ea784f90b8b8bebae35da92185486191dd9f49370b1148ce6 + +PrivateKey=KAS-ECC-CDH_K-409_C13 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDM02ppFNxHwSgseobmv +cB4Nw6Vc3VheQ+Ps9B6TTsr4gP8WFNzlzJkqaa3fxAja4bCbjQWhbANqAAQB97/0 +NVR6iVFtAX0b2sTNo2BBoNPf0DJYVisuKPQM1k9q4rcEV3c/lnXP/EDAIeRwKwjW +ABPFmnLwyD9buQoL/ueYlS+5HuMpyYxLWRT0Ra58hIN2cFK19SmXRiFUXdzWN39e +OH1XPA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAfe/9DVUeolRbQF9G9rEzaNgQaDT39Ay +WFYrLij0DNZPauK3BFd3P5Z1z/xAwCHkcCsI1gATxZpy8Mg/W7kKC/7nmJUvuR7j +KcmMS1kU9EWufISDdnBStfUpl0YhVF3c1jd/Xjh9Vzw= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAEEeXUyW413ptUHaX6xpEzZGLIgtjozk +1utxIUF+cJUMTZUC9kVl1abPpzXJDu+Dx7hh4gCWuQTjfKHC21mlRhVifhwzVhYP +4XUoSq3DsvoGugswqqB8hOZOSGUuX+swNZUGbg+EaPc= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C13 +PeerKey=KAS-ECC-CDH_K-409_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=012505746f1a40ef75f950595211ce04f87f1daffffdf8c12600a9e2994c8c1d8b19c0e0559adf9a94762cb983569de6d0d8baca + +PrivateKey=KAS-ECC-CDH_K-409_C14 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDMxQa+7qLTZ8MvoKX82 +WHMZZzlGXj4gqJr5/fiwHRlaoQUuYXa1+thWE2trMg7r/AjBzQGhbANqAAQBgF/8 +V26KRfBil7IzXQOryK39Fa03522A07QYDV9y78kPPysDas2Bf0D9SQZKol6jg8gu +AfItprUKxWKJQ/BbFBSTyswPArzfO//bQ1gjQ7aGFXYaGAvX0asd3BX1N0qPZl0T +tLkScg== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAYBf/FduikXwYpeyM10Dq8it/RWtN+dt +gNO0GA1fcu/JDz8rA2rNgX9A/UkGSqJeo4PILgHyLaa1CsViiUPwWxQUk8rMDwK8 +3zv/20NYI0O2hhV2GhgL19GrHdwV9TdKj2ZdE7S5EnI= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAA+oJD8ACjOYgIofiP/Fo0KWj+5ceyap +4f+ibvqIXnThxWICfZXbCMwVvSWj/BGrTcE8ogD+1ofHGX/xrrmA5yo6fDGBQgUs +I4mwhm2zuH5cgCXnm7T0+Zb6Y1KrnLIBcu941v/KkG8= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C14 +PeerKey=KAS-ECC-CDH_K-409_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=019a71ab576546e2351aa92b6075e8229813e6a2cb3647147b192b4597f1217223e7197d846c0d65ea0d4aa4c503bd000ba312ba + +PrivateKey=KAS-ECC-CDH_K-409_C15 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDNOUXeWysnXx1MW615o +lj/mMkeB+rmG6UAgDnEd2/mILZmmIKl2NS4klnSM+2Hcy/bWWcyhbANqAAQAVqRS ++x1VgHnD6RvyL4aITKiXiIBv59bWykC1SFB5133EPkZqcSWXksZf9qtyBAZsDmeo +AfKbcj2ffU3mzML5cIB5xdMK5dlg5ip8T23Ji/yVtPUx8ZfDlIZwVDJZQgPCUUcV +bf1bXA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAFakUvsdVYB5w+kb8i+GiEyol4iAb+fW +1spAtUhQedd9xD5GanEll5LGX/arcgQGbA5nqAHym3I9n31N5szC+XCAecXTCuXZ +YOYqfE9tyYv8lbT1MfGXw5SGcFQyWUIDwlFHFW39W1w= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAL59WAQyY6svQiUtQbWC2GLCskPOGFdg +gb1u3S9j8BZPNlyuZyaNIn85RGd+HBRq+GS4rgGkvLxkFthll6FIyk1hDuZWoAAm +zmBHvZ+9QNiVMBlqRpOuWV1plWUDudKrSqvnyVihTGk= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C15 +PeerKey=KAS-ECC-CDH_K-409_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=014f4b7ea93c9dd846d2228c2b6a8dfe616057232b7af845a570cb6cacf9feef2d8ef4fafb285b38e63cce0a09b4d82dbe43a390 + +PrivateKey=KAS-ECC-CDH_K-409_C16 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDMcgLZNUegCVpnnvixL +mDz6S36RsRLi7KX50Mt+PU+Fr/ezOpIeqhJMtwAuq2KXPWXha8mhbANqAAQB/Q5O +r7JsCMn450fUmR9GjHa0hkFm43ZCtYPbKFpLxMM5eZF9kSmpHLCnXBrufNT7q3PO +AEaO+rz0SPzOgh896B6ZTXmn2Z6piayB+hNfesiLFUx2eQnGgffkjACy5mu664+G +iPRGcg== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAf0OTq+ybAjJ+OdH1JkfRox2tIZBZuN2 +QrWD2yhaS8TDOXmRfZEpqRywp1wa7nzU+6tzzgBGjvq89Ej8zoIfPegemU15p9me +qYmsgfoTX3rIixVMdnkJxoH35IwAsuZruuuPhoj0RnI= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAR/qWNnjbPjtTvO0L3fM6pO/VCrJIUHc +LAlAYZhfPfeG0ZKle+4HJVCzAlg/D5QoMBsbdgGz3MG4o1RSZEJzhjKeuB/pkmVA +QGlHgcDYsnweSUQrmbq5Pvlmb+oU1IQ+5LxbBFrFDBE= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C16 +PeerKey=KAS-ECC-CDH_K-409_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=001fe2ed30ad4143c5eeb0b7622e6aa49e4e4d51c1ddc467b3fc54215dae931be0b6b6443e716895acb6570cdc21fcbdae46e5d6 + +PrivateKey=KAS-ECC-CDH_K-409_C17 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDNDyWwyz2SLA2ESQhrb +qpJc1UF1q6055Wgb/J60sbZJrsHIduwexGEPGzsGUUpI5up6SiWhbANqAAQA3hge +gbnnd21HRpSi0STQuHbZVI8g7jOGMElF2RMfkEV9m5ON8JiwNb7ar4DtbZeUBPxw +AYGjUW2+qdqX1uzs2xD5bVRGnSc6s2bomkD9ztzxvag31cFL0QwLaiqcikeBASXH +ZN017w== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAN4YHoG553dtR0aUotEk0Lh22VSPIO4z +hjBJRdkTH5BFfZuTjfCYsDW+2q+A7W2XlAT8cAGBo1Ftvqnal9bs7NsQ+W1URp0n +OrNm6JpA/c7c8b2oN9XBS9EMC2oqnIpHgQElx2TdNe8= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAMqAk0C9EzVLYHHQc+Zbmw0rrILiKr/K +x+cK/Z0iSFLw4hKXbl7II+uJUOArx1ns9W95qAAxKB6JdkAaq1j6jq+GNv6wExcL +yrV4G+CijScznpRw4WbH9oXy6pFDMQ3KGzq44cjmBZI= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C17 +PeerKey=KAS-ECC-CDH_K-409_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01610efb48fd22261921f7484ed6382fceb6bdf28f3bc2340a175b7971b93ed5ff357ed55e5307bbf42e40a5b3fabdaed0ce19a2 + +PrivateKey=KAS-ECC-CDH_K-409_C18 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDM2NoVLjuAlS7LQ6+3H +ILZrIBKaIfGk/jkRjP3U0Tfb5eVw6+LEin+awhz/PlrfR0NGl9uhbANqAAQB78DN +GobOdUTyX0TmOgkTwR/WsIvAmtjNgvOvfjKnp+ys1W4lUmWJMTh51Kf9Q4LUEU5K +AFo073QDWZwvg/PoMplSSJPyQY/5XWwv3Ao9uXDmL93PTNoYKqeLVP2MLoGPse4t +0ndnYw== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAe/AzRqGznVE8l9E5joJE8Ef1rCLwJrY +zYLzr34yp6fsrNVuJVJliTE4edSn/UOC1BFOSgBaNO90A1mcL4Pz6DKZUkiT8kGP ++V1sL9wKPblw5i/dz0zaGCqni1T9jC6Bj7HuLdJ3Z2M= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAHR5WwqcoHBJH7VKO8JJmB3vvsA35AQP +dmVkKLFTi5eFA/gfgK2e+XxeEnulHsBAWEuaIAA+zifz2u/nvf/fpyeyr5WvhZGv +lGzd/jfoVkO40XnKi5UpEG+cXzqVqIGSJfnX1Kcw/SI= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C18 +PeerKey=KAS-ECC-CDH_K-409_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=008d990982aac8d5371b867de21e09064fef30e73321337dc24f19ad5ddb6c4ad217136b7c61e360a73fa7571d526c8f514a06d4 + +PrivateKey=KAS-ECC-CDH_K-409_C19 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDNJmKBioyFwuzWJVNLC +SW2ohiAIJ/oTVmg2ribjjVGSbKPSAlife/on6iLTmZc9tvn96fShbANqAAQA9xWQ +sEKQtfPNm6DjlKO+WhUU9F5TSX9s3tv4OXKOAogTXXaeSyiTLIdYI/4lbokZl8R2 +AJ0WunJqWp4JEDvJSgnYB5rI7fI0EMhGn3n1XzNVz7OtcDYk7G117OrjiB2iCQPH +HeH1rA== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAPcVkLBCkLXzzZug45SjvloVFPReU0l/ +bN7b+DlyjgKIE112nksokyyHWCP+JW6JGZfEdgCdFrpyalqeCRA7yUoJ2AeayO3y +NBDIRp959V8zVc+zrXA2JOxtdezq44gdogkDxx3h9aw= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAR62TtQknhGVstEwejWlFNZtKbpvkET5 +wCtLLTyz49TAzcVInN37liJsnOPjb7j/Lu8gjACZiAsNDUPFxXmtd92uaPLJF/Sw +YuqNd3uc30Zcu1kQfnCZJxToy/rHYpbV7emcSNOKiXM= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C19 +PeerKey=KAS-ECC-CDH_K-409_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0155dc98729c8c1bc65eb8a3ec09135f46bfa313bf56aa3169e312db8991abda338f8ac7a75bce42884068efb7e6e625939d2b88 + +PrivateKey=KAS-ECC-CDH_K-409_C20 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDNaP4Bf48Mmb+s+C7fa +Z2G7EXYYvFevNXtT8Znm5MvBKBl1MhQD6m3mGOwy6GuMoeENfEOhbANqAAQBrkYO +EkhQTTPWftdQ8dYY5Tco1V45DfwY2UtW27PTwL3JbJLKHsqfRPuKWM823PzAWIy+ +APcBH8Mh72JY3Pwf3CwKTlTIbsk5vJzspsKRdQwf9UCzSkGHk4QqLFyrYGHbvptb +4/phFQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAa5GDhJIUE0z1n7XUPHWGOU3KNVeOQ38 +GNlLVtuz08C9yWySyh7Kn0T7iljPNtz8wFiMvgD3AR/DIe9iWNz8H9wsCk5UyG7J +Obyc7KbCkXUMH/VAs0pBh5OEKixcq2Bh276bW+P6YRU= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAKFelqd26tuPigthNgM1y1AX19lxFkiT +QemVFX8a3xeOVii60+gwvuVEMxGRZIhttcNGVABVHKVgXkrgU0U0oKs0PQOaO6eh +zOgyxNZeJrrnq45fnHSz1CGlKOVZd4qye1mq4akW1Os= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C20 +PeerKey=KAS-ECC-CDH_K-409_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0109e85c684d027a625ec5e6df952e2f20a14ed5b092d1b1b38435251303844d230fffc53d84b923555e1e1cbebe20b5d68c3bc6 + +PrivateKey=KAS-ECC-CDH_K-409_C21 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDNVkB6bZYa38zcmYOvP +6QJJkAyQLXxjKo0X+uIdP94wNzJbV3XqxaF0oe4rP/K8XOadjMGhbANqAAQAupUi +M1Mbamx63m8zjST8ZXd7XTBSl+ZtMssbxQbFvKIofTrNM/4ZZT1siKBuyjcSzpyq +AHFr6xTwIjNjDzRgPjCb9uJXLwt5HfpMWCr2o3q83WTo14WpXd/1m7xvvht/xzVy +Xvzwug== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEALqVIjNTG2pset5vM40k/GV3e10wUpfm +bTLLG8UGxbyiKH06zTP+GWU9bIigbso3Es6cqgBxa+sU8CIzYw80YD4wm/biVy8L +eR36TFgq9qN6vN1k6NeFqV3f9Zu8b74bf8c1cl788Lo= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAWQn5yvFfSapEKZyLqwsePuoq//MvBGp ++Dd7/iE+2a1kveKuhof4/x39sptdzs0CJpgowgCtT5q8IdoNMfGWWc07DBhVgUNq +wIsVwLSKesOe7QPg7pfhZM+qWrx3RBLL//lKnqKpY2o= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C21 +PeerKey=KAS-ECC-CDH_K-409_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01ae814e02c4684c21dd7e58a65ec51ec68c37e59e299ce65608186c0acce08e41c8320b1941a611fe66b1921b558d7f402d0eb0 + +PrivateKey=KAS-ECC-CDH_K-409_C22 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDMESuQ70kfnWvp72Nwo +51vbnd2Z31ZmjIMUVNwo8+mkTs/Ue6hCCihvHvNy/SmzZd+bgvGhbANqAAQAICaU +83jXCWXUKCitXzcTe/i2POwsDRWOW6lMqx+OYeWjAJhro0mzrfPvwF5lZwr4jNPW +ALrw2krtuXL4iiFd+/9k5CkPrcJdo/DYPzXmW8QXfTAl1x2O65xBRw88cZ4A7x+3 +VS5qiQ== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEACAmlPN41wll1CgorV83E3v4tjzsLA0V +jlupTKsfjmHlowCYa6NJs63z78BeZWcK+IzT1gC68NpK7bly+IohXfv/ZOQpD63C +XaPw2D815lvEF30wJdcdjuucQUcPPHGeAO8ft1Uuaok= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAS6J3M35dYUazPApTPS94SWckHptOs72 +nxk5tVjE0hFSLk6qxhPjrISRyT3rbTRKn4esvgGlJgjq0J0tsSOg3Hgqsg3beT1b +twrJXFjmIUa+tiu2aP1X+SA45Fhc3h+R7oxSUmr+sbU= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C22 +PeerKey=KAS-ECC-CDH_K-409_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0140e7db3f6415d884822ccc7316a329dfed177b76c0117abd722feca889bee4e14e65d26c6cc935c0e94205f05fc1a7abfb0348 + +PrivateKey=KAS-ECC-CDH_K-409_C23 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDNW1zcwdTracP2AHHSc +Lx8aYe9b1uy3lqnhXv6bvmFY9mlUJ4c1D01kO9pvPoxkI7gXtTChbANqAAQAJaBr +caCuJS8vkFIhmD6/ziGtlhIaXA3MXvDQ/sMB7HfvS5FYGP7c2n8/1zPH+eUpB5y2 +AAJokNUwO2Gcf4H2D7grJrC5jY8kxFyrQaRO6zo6MSlE6Im0A14ENgswUEPjDQy5 +BBqJ3g== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEACWga3GgriUvL5BSIZg+v84hrZYSGlwN +zF7w0P7DAex370uRWBj+3Np/P9czx/nlKQectgACaJDVMDthnH+B9g+4KyawuY2P +JMRcq0GkTus6OjEpROiJtANeBDYLMFBD4w0MuQQaid4= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAKupOuHRVSiAsx9QP8S+n5HRAkfxTIFg +Ff+yutKauBgOe1CicUTgHCHmPD2vzSUTCLrHaADkq2blFL0Cq+rhxxI3iKaSWE3b +SpCaIX+zXeZliCM9re9wNv+dnyTro3cuL6MDe7rmPP4= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C23 +PeerKey=KAS-ECC-CDH_K-409_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=002ec4deac3e83d60ad39969f2f93b49f31875831ecd51ea5c37ca48de081c0c8cc660edc53a222f3043447f9cb752763be7494a + +PrivateKey=KAS-ECC-CDH_K-409_C24 +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDNisCbUlyBmDPak9Wm+ +mN+hCMjroII0rpqH88iLbGWTS5loFTIqFvmqvtEzF793Jb6lgI6hbANqAAQAD1KS +U5TLUrwzDgY5DAwKLhDtl5cUn7zIjYD7yuwXPiSgXa75hAHV5H87dlvtu4JGMShW +AT2ZwXEIBdX8fbclmsnhNLQR0A1z+wdi49IRzcVr9/cUUS0EpjDIcyVR7nNCh0ds +9RHoNg== +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAA9SklOUy1K8Mw4GOQwMCi4Q7ZeXFJ+8 +yI2A+8rsFz4koF2u+YQB1eR/O3Zb7buCRjEoVgE9mcFxCAXV/H23JZrJ4TS0EdAN +c/sHYuPSEc3Fa/f3FFEtBKYwyHMlUe5zQodHbPUR6DY= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-409_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAKpOuJhEPM4+0sBy2Fh3WsIhwk4z7Kbz +FXlmNUS7M6SgaKhtE/FntlMExffyX4lfZbL0KACDze0wIRtm8a3xcxi23lDXckwF +hJleBotyRwOuCO1xoyszSYensx1sJjcVKRcyfTeszTM= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-409_C24 +PeerKey=KAS-ECC-CDH_K-409_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01c9cc05d19f96c4d233039cfbc43ab68d657bb507f46a353091fe98fc0f422a8e7593c195d326977a2be6bbd2cb44eb1fe81650 + +PrivateKey=KAS-ECC-CDH_K-571_C0 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAXPNFjHhjs4Btzs1 +cv+qdJXEvIH0B4rlDWnLHjOKzxNGkRcRKSEWbd8tKfOp+OEMZ+iMmpkgOoNFZb52 +rFkSZDZzmmr6ApzFoYGVA4GSAAQD+/u8+6YJFX9oojEm2AX3x177Gb77WV46l14I +/0a9NMi4e5ZFwOhuoK2RVGXVyFbGm7m3IrDRe/l62VxGAt6hfGtRIFTLItgHHBbf +ceG3G0vT2ZOIJ9OVkJO52x/4a+1zlEpC3LZ8wzEC4owdDpgEpkUGVvS/M61y7Pe7 +g70oLN5LwV1OSAZKqK0vApefXz8= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQD+/u8+6YJFX9oojEm2AX3x177Gb77 +WV46l14I/0a9NMi4e5ZFwOhuoK2RVGXVyFbGm7m3IrDRe/l62VxGAt6hfGtRIFTL +ItgHHBbfceG3G0vT2ZOIJ9OVkJO52x/4a+1zlEpC3LZ8wzEC4owdDpgEpkUGVvS/ +M61y7Pe7g70oLN5LwV1OSAZKqK0vApefXz8= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQDEGpcHZI6CZDqjGAIw2w2a1PlYiuY +RkBEdB+8eEAoTbi79gKGbDDMv1+bflnMHZv8xblw+mJNqbFfbLM29d2n5rmSTV3O +RUMAXFx7vVp4msTGKD3rDQ03xIUrqlfWvCsKxjN/6wlwTETRs4W3DMOU+iNdg+bn +EReH5X0JAsDLEyoZCm5i85hRHAwsTNUNRXA= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C0 +PeerKey=KAS-ECC-CDH_K-571_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=003198a6b5d6cce847e24348a6a6ceff7a89ed3794d7acedc4e858c80ad04a74dbc02c7038e05ab26b2a299ec92ee0d2c7e66a81872a5157fbc5d4d37ad598d6ddee995ed28a2d74 + +PrivateKey=KAS-ECC-CDH_K-571_C1 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAJN+2zqilWPSJIWR +yftEiYUJX5E6dFgxVZPPzofmj7DxpSW3MQoQEXbjTUXBAEU4lU4gRFQ4F8qw1WPf +bLDV6GF7u6FQ51XhoYGVA4GSAAQCNjzFYksG3xlWvvpZfUx1fMKxABo+FUTSRAgp +D2lId0VbqS5WCIRi8P+svTk8+DW1a3BGoV1Lck3Gw1c8sVbA3ymKqLElXLgECfdz +uY1e3Cc02DWVMoG4KsDhXZAtiHp8a6dWKaN2cbEB0Y3f3EGT2YsYVRQUxJFzAEUw +95dtJ8Jzpz3buJj8tfrenAu3iD8= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQCNjzFYksG3xlWvvpZfUx1fMKxABo+ +FUTSRAgpD2lId0VbqS5WCIRi8P+svTk8+DW1a3BGoV1Lck3Gw1c8sVbA3ymKqLEl +XLgECfdzuY1e3Cc02DWVMoG4KsDhXZAtiHp8a6dWKaN2cbEB0Y3f3EGT2YsYVRQU +xJFzAEUw95dtJ8Jzpz3buJj8tfrenAu3iD8= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQCESI8S3KbIGvgH4CFqZfh3eXNsnwE +iSWic2m8ymo+L7/GVjfx7OsTO+dJZ5oXsc5Ygh9GvRhEqJzwBCyAQ8sQXgGj/JSN +JmMCsewubiwjdbRksKUCxQU7WzSL0IF4xyxgMQXQRoGWpGldwmfW4QnxsSdEU7bv +8U3fN4OWnoglZI3rwhav/5JY9kTXfs2ZEc8= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C1 +PeerKey=KAS-ECC-CDH_K-571_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00577147459262e5ad42f222827f20ed574b2118924205bcdbd339ce20cfb085d072fd70f4ca1f5768fafaeb5710f7ccbea4fc2ae5377b0cff20a889a2201739139bf788a9bf2d7d + +PrivateKey=KAS-ECC-CDH_K-571_C2 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIADQJmwdz8CHuDT3R +hccEtRWKlDKNqgl2j61YBN8dovwGcZDPECjDAje/KkjaE6uuNaJcPmOH05k/m1aD +Bbi/CBj/Un3YIF30oYGVA4GSAAQGdNzE91XET9q9wHhIgQe7ZKRgupMsfhhUhMzS +f6hwAxEH6ZVSBLBjC5tNNgjZqpMdfHZswuRYeOttjNlr33EbL+i0e40jPtUF2Wvm +t+K6dMgDKvGcovKznS/U6MibFWtrJcLqT3H3SgLKfaKkY6zXYF1TUP0WqckFJTTn +6B1kjkBgorAcRZwmDLZWfaH8UxQ= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQGdNzE91XET9q9wHhIgQe7ZKRgupMs +fhhUhMzSf6hwAxEH6ZVSBLBjC5tNNgjZqpMdfHZswuRYeOttjNlr33EbL+i0e40j +PtUF2Wvmt+K6dMgDKvGcovKznS/U6MibFWtrJcLqT3H3SgLKfaKkY6zXYF1TUP0W +qckFJTTn6B1kjkBgorAcRZwmDLZWfaH8UxQ= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQATUi+WZ67HtYCRy16h/TNIID0TsKI +Vf7MOpzd4lVReHq9J8wdp+d4F+lMnAKJwAWg4247z7DTgejMloS2990FF38W9j+H +IcoGLPca8KL441xNf5MSvTSoRqOA9j8NxylMGIdxAzV+INHw7v8xKpk96yoez8gK +6galtx5Pi5zvrrzTJiaRkGT4ivQW2G4+evM= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C2 +PeerKey=KAS-ECC-CDH_K-571_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=014662b261d0bc2168642bfa4f80c4b3fe8176f604ad3703f443ec7aaa3dcf3c5465b869a8fcea60b8f55ce7118806c5d28a04848bd961db0061209b59bc02979acce9324d7c0c31 + +PrivateKey=KAS-ECC-CDH_K-571_C3 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIABVHQ433b8teKuaS +WEW7+wO0++glVhbsf72XtI8RJpIhn08SdebSRT1bzzusQQbwFhuBGfSH2ItfjI4I +s6oXuD/gEQLXY5LToYGVA4GSAAQEJ+LcEe5SI72cPZQYx5EUaC+R3aBufYjDOafl +bg37Y2tuY/3oo4EUbstwXKIC0rc99AhFF2PFFmBmqX/05PMvC0zJQjRLCy0HYMij +iOLuon72g4x9RQUuOMvuIJbL6J93R3QTQHZljfkMYsfcDj/emV16mQkJkwCatsU1 +Z329s3bxg+tQktLLaog3tr6jXc0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQEJ+LcEe5SI72cPZQYx5EUaC+R3aBu +fYjDOaflbg37Y2tuY/3oo4EUbstwXKIC0rc99AhFF2PFFmBmqX/05PMvC0zJQjRL +Cy0HYMijiOLuon72g4x9RQUuOMvuIJbL6J93R3QTQHZljfkMYsfcDj/emV16mQkJ +kwCatsU1Z329s3bxg+tQktLLaog3tr6jXc0= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQGvyUuYsmWkXGpcXZx2g9wMulSCkl+ +yDH03HdqyH4BlK+ZVGxB0IBI6gbakjXPE2nD6lPmuMu3p/1CljVFSNRO30Y/d600 +GwIClNX35zbc2JkBmOTg8LOYuKxqh3ZK9gFZYjSi4WLJxmfkfrPZh++66wO142ma +OO+VPHT7KP19ik7Fo2MZzMRKGaqIIB3ay/g= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C3 +PeerKey=KAS-ECC-CDH_K-571_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=051ec4db0622b7b1c798366453c70f959376ea3942aed2e931ff62a4019eb12ba5ff119214c8bfd8bdb66e62b562400f2d3d48a84b1b3baad3667f735ad4d0f183bdb91aaedcf1f1 + +PrivateKey=KAS-ECC-CDH_K-571_C4 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAMe0JSypsZLF/qqa +IQ/YTi5IMgJx8Q9n6p6zCw3oCG1Z2uBCWf0SsIbYkOItRdJ9fIRV3Petp5bjXjox +ODQsxza8PtN4HEEZoYGVA4GSAAQDJWI4OOixjYG2gGBzQlTrArjrsiZFVvyYUMNt +MDVEmqdk81Hbr3u8qbmtsR8nzIihrG+3GqEO+NDQk5Kwyn6qelzBQHjMGLsAmPx2 +VtneOlGSPbopDsvkE++NlR8k6SSMtVIwn5cSf7lCns9t0Htt6JTharYOM7TucwJM +y+hm3l4X8bR43HcnobtCNxggsS0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQDJWI4OOixjYG2gGBzQlTrArjrsiZF +VvyYUMNtMDVEmqdk81Hbr3u8qbmtsR8nzIihrG+3GqEO+NDQk5Kwyn6qelzBQHjM +GLsAmPx2VtneOlGSPbopDsvkE++NlR8k6SSMtVIwn5cSf7lCns9t0Htt6JTharYO +M7TucwJMy+hm3l4X8bR43HcnobtCNxggsS0= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQFcB5jsBwWxOsZk4JluhNMrHMWJ44v +HrQKBHdUSL3tl+ejfQH+2KTgtD/026IaR3WczUW/lnHdIu7GW0r/i424nf4+SQwK +ydYC3Ze2QVruKwHP6zzSoDV4q/7Zyoe+mibYmVlah7y9lydI+moL5OtVfmnG0o4r +uhWA3HTidR18zZGMRrS+aHWk5MKQ2VnCPBI= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C4 +PeerKey=KAS-ECC-CDH_K-571_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=05b355eb5c47d8027b6c5301d2463b99c636db207792e2975ab1a53c1cbb131280288432a79a3b47271d6a2bd777298baf8a675f66be9dc72c3588d299df8b52e7840322b43c2071 + +PrivateKey=KAS-ECC-CDH_K-571_C5 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAGbMUZgNOFG0iMLB +gUlsg1BfuVex7EqE3x4QXjDQAry5eLbQvcO3ZE7T37wzymv+Q2LNjMVBdAsN6M8u +3M5FkuNPoRrCbskioYGVA4GSAAQHcfop5ZMNbf0206nnFZZ1/SPQteH9muZFSsqe +gSfx5+P1MitcFrCVVzsyZtCPDcMwQ/+z17COTgUu0/A0mjKQJepv8+FmhUcCL5lP +mXRpLbtuWMx65fkGUu4jHgo5YVadxkbRFFIqN3dBDBs1LWaAefgAELtUDkwoQIZl +gQ/mH9YOcNMMaI6rj94ENk3uXJs= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQHcfop5ZMNbf0206nnFZZ1/SPQteH9 +muZFSsqegSfx5+P1MitcFrCVVzsyZtCPDcMwQ/+z17COTgUu0/A0mjKQJepv8+Fm +hUcCL5lPmXRpLbtuWMx65fkGUu4jHgo5YVadxkbRFFIqN3dBDBs1LWaAefgAELtU +DkwoQIZlgQ/mH9YOcNMMaI6rj94ENk3uXJs= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQDL6GBb9IxfBa1sZol1G+l5FqxXuny +sdEnTCoGAjmU2zCfrVb2CzzlfzLfx9BFqEt9gFIyvjTH51lRTDCiUge6gAIVsgYP +BMIEFGlZPVdIByuayP3gIwlSibzfZasb/AhW+D6a4GyJcwO9FvXkWCPWX+yDEP1D +MrZc/0enma9PfIY44tf4WUjEPxBTTJgMy2I= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C5 +PeerKey=KAS-ECC-CDH_K-571_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=052bd78bf1326c6d91840a351d4874d36b147139882356c595b8607f9998773092a99adf70adeed19e122d4d2fec16285f000161145135d96355cba039a96335e7716724c249f88b + +PrivateKey=KAS-ECC-CDH_K-571_C6 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAZkNFfosyQ54PUMi +AXhLq1a20p0fJmWnbNAT65b2MA7Y92K3ilWWrH6MHnYWfxB8IEQ7GscyEB6fCsoS +VRpTbRUt8rPbDyDeoYGVA4GSAAQHbD1y8OcV8kkbydmSeKjvPDkLOpbpmXs35be9 +il8Hr2j44O44krY/8RKnOoSfDoSngtT7Qm618vFa2szp5UdqbazPOn+popEFQKdj +gjWZ4MhgJ7rMjLsw46JGcnb8T35f1O04XfxviD/te8pp3yGgZotV69KS2o/WNWo+ +xc0cdiwBRzqgZwBMrO2tVk/gaRA= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQHbD1y8OcV8kkbydmSeKjvPDkLOpbp +mXs35be9il8Hr2j44O44krY/8RKnOoSfDoSngtT7Qm618vFa2szp5UdqbazPOn+p +opEFQKdjgjWZ4MhgJ7rMjLsw46JGcnb8T35f1O04XfxviD/te8pp3yGgZotV69KS +2o/WNWo+xc0cdiwBRzqgZwBMrO2tVk/gaRA= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQD5j3UyYwVE2HJkCt2OuMvLW3nWVP6 +PWg4wdYT1Ej8pzvzAtMCEqltMrlUnhfFzzlcVlGR9qItrE2nweGp2brobr+3LILq +GZoEFgmrnBLBXlEnAF6+/2/R9ztpEu0HCvh/X/wh35A93h1xVYLdL2mQQCAARc26 +ns11isTQhNTI14IZ9vrZTTQa132szau1Sis= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C6 +PeerKey=KAS-ECC-CDH_K-571_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0226c28e5a6bc735935f9df2c1b02d096d4dee41ffb95a67905aab8de1b2d8c66e2bb471293091438d3f05df7e48003e58a958b72f839f7f2e2c54287fa3cadcd41a2542ae4ec03a + +PrivateKey=KAS-ECC-CDH_K-571_C7 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIACsJN+cx9Z3d3w6U ++6krsabOuBnnZZvPbt1LSvScLvJcW2A5JW+Sg2PhhASxZT05mAVMLCWj+DoMVUih +OePmoYB1Z0bNNO4poYGVA4GSAAQCcMTADeJwkBDHzwR6DOabh/QdykjTW3H7pLJY +iG1zrkLe+4ZTlRwb0+tM4OYXWpRsZ6+md1NHXFH9UlsP2fWiba/KMZ+qXhUGaAu9 +woFQX10/vil0SpmeB/9hJXaZP2+L4xE9se5s8jeZhnu8gKFAN2qbYydFH5i/j9Hb +RvnZzAXohwTVcS1FZ+HfQNOeme8= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQCcMTADeJwkBDHzwR6DOabh/QdykjT +W3H7pLJYiG1zrkLe+4ZTlRwb0+tM4OYXWpRsZ6+md1NHXFH9UlsP2fWiba/KMZ+q +XhUGaAu9woFQX10/vil0SpmeB/9hJXaZP2+L4xE9se5s8jeZhnu8gKFAN2qbYydF +H5i/j9HbRvnZzAXohwTVcS1FZ+HfQNOeme8= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQG+Rp84Rupvy3h/gcPnchDu3F8MG2c +Y7UHjSoRMj8gycDXt3Q9MR3azc9d0A9JixmWcseK4l5oZNYr3BaTXW+42tIILTZ2 +6/MEWTxbrRLD1lXGYRx8qXEfnjKij+5Us7gkOWKjxV1B8sGF5MWLeimY6XgCG5W3 +JGNdrMvX/DDSByB5e8KRNixVsCSssr3PPVk= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C7 +PeerKey=KAS-ECC-CDH_K-571_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=051a3deb052d3e99bb6ab6c6b284db2c998e9bee543e02e57f1b13fe9fafbfe53a89658c58eb947dbd178aea2f6cb28e305c9867bd65bb26f71793f90c984ca11113e1a8dbc8f7d1 + +PrivateKey=KAS-ECC-CDH_K-571_C8 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAc1Bz/diQCqDTn4K +uQj8VJQPaXtQAipN/tjPCxPX4O5SP78z7paTiV+RjZThWwhGVdYbIpTKUcQSP+Xg +ho6dDRysITjwV3oXoYGVA4GSAAQGEHl7vG2RMRgK5Uq2bmeAhJJYNpdBRw4HbPBe +B4W7TnkAuQjTjY2rO5QnuVKt0g77dYz/gK62QcTd4e7aVQnzhtVlhVlgnO8GjSUV +9CWg4wN1RzQvG2/5MXY/UFLlNupPeDd7XJQUWcjCIBSCr8882nOQ6eXTGUUYZMoD +aDVBqyzXep2I/XphDKhF7lzT1Jg= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQGEHl7vG2RMRgK5Uq2bmeAhJJYNpdB +Rw4HbPBeB4W7TnkAuQjTjY2rO5QnuVKt0g77dYz/gK62QcTd4e7aVQnzhtVlhVlg +nO8GjSUV9CWg4wN1RzQvG2/5MXY/UFLlNupPeDd7XJQUWcjCIBSCr8882nOQ6eXT +GUUYZMoDaDVBqyzXep2I/XphDKhF7lzT1Jg= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQFqyp/EKyJ+YxAlYCrwRrZDJM2Dmqy +gpILWdMWyp8rI661CHbLG8vo7prmtVM/3NEa1PhtiRjWY4nah8mL8dYyO9CUfYCZ +CDsGieGUcnZ5HcuVJxg+MqCAcrfgPcrRdf48/Xvu/ISNzvSDOAxgBUEThccCfJpS +tgpuU3qHU4DSW8R8e/I2TdaKZvIdD1eGakI= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C8 +PeerKey=KAS-ECC-CDH_K-571_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00697c751ddbca7034fb4d3fc1b2618daf78cdae464e8332d1215020c8f896f4864c7a6f2c61a363f730f58fd3bdb4f78a90b40aeb83b4fbc1d8d37cf6a27a6f722c68a82979fa16 + +PrivateKey=KAS-ECC-CDH_K-571_C9 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAZ3/DXKosELE6S8d +rnQHv0oQbNpWTbdQjlp2sDEwyR1eXLzy9XjC6d7kOEn5Edd3PUwmfigsJ3tzH4im +7w7t3VIPV+dD6/lloYGVA4GSAAQFu2Cl/o47Fzz4QT6vQToyhqWnqjePIURsYQV2 +lgEnRtAtEKgx94XJyWVh/8atT57N9JN//9jmmECOZg/olvftRK9rO0LqhJ8Dfjo1 +5Iqma9hRxZ+FHUof8zTg5YnawwmGrNBtbrjOI28qlojyeKFNz+BmC1+g6X7Pzrv1 +tA09P1FQpVRay6YjnABBmsctwsw= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQFu2Cl/o47Fzz4QT6vQToyhqWnqjeP +IURsYQV2lgEnRtAtEKgx94XJyWVh/8atT57N9JN//9jmmECOZg/olvftRK9rO0Lq +hJ8Dfjo15Iqma9hRxZ+FHUof8zTg5YnawwmGrNBtbrjOI28qlojyeKFNz+BmC1+g +6X7Pzrv1tA09P1FQpVRay6YjnABBmsctwsw= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQANAkcOsb8UpnfGPFi6veiB/wVQ6pJ +jnJy4VqSdy9XdyIpBpRW4hnJwocr1TeDsPsTRfXoRnTENEEpoxQUa3Aw/HUZeiDF +iKoEnjo/XuZYdeFAEImXBji4B9+XVopZlcj+L1Akc7g/WMVWxfIU7W8D747OAUAa +ITS8BB9mki/MTjk44MbTAutCIAZ4qXE58pE= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C9 +PeerKey=KAS-ECC-CDH_K-571_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0322517da30e010aeaa2ec9bad2745d8e67f906294ecd6b1d16808be3837f79070d0e1bbbd617f4b8b031d3b51ea2acc59de408a130138c78571f8800fa907caf550d23323d1c818 + +PrivateKey=KAS-ECC-CDH_K-571_C10 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAeFBbUKZJsq+pUe7 +J3ZxClL3EwOTCBAgMSs5Yhletu0XxtQ2vEaltHp6qs+PgRf+o8r6FmZcwYRbDslP +r2h1ebHBFroYPoJfoYGVA4GSAAQGVmClhoihZYipwWuCcgQKMK/jFQYwZ2Aj/hZW +ht+9pk/IWZXdwYycWwKb/71N/6j2KYnGOaaGI+yngAnLCI7hy0LEhVt50wIEksOG +fxN78nh6erBWjTB5uNmh4LC6XSnQx7phbQuydyXaLKa8Z78IT6tSWZ7UKw70h0NC +PLxvQTVpLDCa4mMMxKU5C+k/J0s= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQGVmClhoihZYipwWuCcgQKMK/jFQYw +Z2Aj/hZWht+9pk/IWZXdwYycWwKb/71N/6j2KYnGOaaGI+yngAnLCI7hy0LEhVt5 +0wIEksOGfxN78nh6erBWjTB5uNmh4LC6XSnQx7phbQuydyXaLKa8Z78IT6tSWZ7U +Kw70h0NCPLxvQTVpLDCa4mMMxKU5C+k/J0s= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQFe3xlvFHoe9rTfCtNrmf7AIznH9MH +LkG3fFYtfEF0iHKiC++FF7pL6JY33emOK6GzsB9jlAcT4oI9jatopcx4Vh3hQIXk +z4cAundDClVgCJ36xPaLTzSTejhN1ge8u1+rVnen+uCe0Hz63jmeh86f3ZOXxoGq +M3jOO8grAH9t5PfLltrfVaTIc0o385pcLyU= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C10 +PeerKey=KAS-ECC-CDH_K-571_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=000911ec1cf82a22c849b401dfe56453a06f4af32644ea8b63135b68a979236d05968eeadca7f0cd339d295cc58967a7f38cfad6e947a71295733e42ca3c1ba9b4ff6195607bb530 + +PrivateKey=KAS-ECC-CDH_K-571_C11 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAZY2Pu8aDlvpfY92 +Af5A/0AQ9JSfAWkIqQbtXNrxIh06WTs6Rna+r9H6FLwPfFM7FwhvIH+cSEz8L7w9 +sr5BI6jobztJEczjoYGVA4GSAAQBsS44kU7gB1qIjW1hzcdXDFEdkKnjoOJzjDqZ +gauauppsYUYLrQeaKEKaUgfSyAGvL9zto2ZEChFoZ2Xpunf3prxVAS1MlRAHDt5Y +d2Zf1jatz9ByINdF7XrAqbAgIVn0UMn2wbg3GSpp7mrZVTJ+uc0yagWItZcj206P +0lixHbiIpT6xTyvghRJogykFmJI= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQBsS44kU7gB1qIjW1hzcdXDFEdkKnj +oOJzjDqZgauauppsYUYLrQeaKEKaUgfSyAGvL9zto2ZEChFoZ2Xpunf3prxVAS1M +lRAHDt5Yd2Zf1jatz9ByINdF7XrAqbAgIVn0UMn2wbg3GSpp7mrZVTJ+uc0yagWI +tZcj206P0lixHbiIpT6xTyvghRJogykFmJI= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQG+nR37exfHnQogfjXsq9WN1ET6ZK3 +l/04frW1PDPGunI2QXssfm40YmfxuMbXhX1uCPmmDobeI9pLNoQk+wA/lrTIn10k +SnQHPh/t9i6MgSg2IrU+ss2ye2TDwd142gyQ3Ww8d2rRRjAuQ6ulQTebyPO93C4Z +/xXZZmTOLQnrb7WxOEioKzG0UtjoTaO4Uxg= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C11 +PeerKey=KAS-ECC-CDH_K-571_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0724c979affb3ab8d307529759bae5fa67319d441851e5817fef014350e3014e068428c9dac395c5e7b9e5b8877457b3e4625ef49ede4ae3626755eefc3fb3cf09c23e8a5a9f8c25 + +PrivateKey=KAS-ECC-CDH_K-571_C12 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAKGaDt9Qg0f0QCzs +vOEn3GQQsZZ9P4nms7oItIqtCM1speXRIozcxBocOA8q6QUtc9t1UOejwdhXBWyY +lH9bLHHDPE7rwSEMoYGVA4GSAAQGKfcFWDCHCOaSmxrQ/jEoqK9/llkbR8uOosNF +QSCm05PtmJ0TIxxmGWajeLln76ZNPAk46cC4sWyZ1zSb3Vni1EgE+P7h+0cGpeUP +1QJNiVPjIkKCMlDpmMpgK1JZlAUSlzWodOgzs71z16ncU63qCSuo0kIH9epWV6KZ +GbiKbWP9CpQ7Vt3kyEeEgbV3I+Q= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQGKfcFWDCHCOaSmxrQ/jEoqK9/llkb +R8uOosNFQSCm05PtmJ0TIxxmGWajeLln76ZNPAk46cC4sWyZ1zSb3Vni1EgE+P7h ++0cGpeUP1QJNiVPjIkKCMlDpmMpgK1JZlAUSlzWodOgzs71z16ncU63qCSuo0kIH +9epWV6KZGbiKbWP9CpQ7Vt3kyEeEgbV3I+Q= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQBi7bL/L+67UaFZLNo8LCrw/vKR9zB +nyyEa/ooc3DhuRL2tw4IUZ9XfwysMlt5/Wa2sjqh4q4mK80ueossLZjZ7XelTHKV ++Y0Fvpu9kXcrtCJmq6nIk+VmcM+2bK++RAHKLLV2W0aVBISFl8f0RumYFHRnhxWK +g+v443loVzY6jgT4dCoJ1+yhY4bWD9fIWN8= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C12 +PeerKey=KAS-ECC-CDH_K-571_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=005a526588a3a2ce08b20925e83987eb0a1e68f997102df7f9af83823ac8e06abbd29c04cb1f974ba9c9ac49b48b5af37679a39b532d359cdec3d41b3f80a1ee12c80276256b738d + +PrivateKey=KAS-ECC-CDH_K-571_C13 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAEysP8wAc0RCzdgO +r4JEEsIOqe6wPUO5mdSd5hhzYCAgorPEeWX29FO5G3osHZPhOolURTPjWhIs/IYS +yGkLabt6VXh1+WCyoYGVA4GSAAQD4hHDtJhpJ8Q4jRaAy0dw3ubHgmZyRYLGbMxQ +xssoI5R01SH6zHIGr2uynM7XM+27wNILkmTOY9lDcYjj0xwOC8Pp+diEKeQDenxZ +ASqC1ZzB4vD9T9dR5XN6y3fyoHmeCvOJlqteEQkKY5bMSA5vKqvY+tRGEWkeWCIR +X9SdKgAMm0nR9JZOJNQ/u4H6h58= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQD4hHDtJhpJ8Q4jRaAy0dw3ubHgmZy +RYLGbMxQxssoI5R01SH6zHIGr2uynM7XM+27wNILkmTOY9lDcYjj0xwOC8Pp+diE +KeQDenxZASqC1ZzB4vD9T9dR5XN6y3fyoHmeCvOJlqteEQkKY5bMSA5vKqvY+tRG +EWkeWCIRX9SdKgAMm0nR9JZOJNQ/u4H6h58= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQDIYS2hj4stbxxuv9ba1ehBZSDHMEa +nl7t7EgE4gFuPdBkz/0Soe6g9pMpEd7TRazlwf8lC5ZI2TuVM4ba6bVijDxiUnuJ +BRkH94PgNBqHHmJW2jSeu1OfiHZ9fawVEePD5NQ7D9MdXdLC8PF26sVEqHH0K5g/ +j7pN9nq2ojm335lyJjBLcxZdli9OHS0Y3p8= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C13 +PeerKey=KAS-ECC-CDH_K-571_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=049db68dc9fb4cfbad8247ca4fe7c573c0640abead8f319194d665ecaf4f04b61f84f5df0d8a6386f6df04ca1a685a7394567eba5deb9f739b1e623ed6507021593f0e22e2dfc3f6 + +PrivateKey=KAS-ECC-CDH_K-571_C14 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIANUUFE1FSLz8vPVw +Cffo7hBLFUVvSRgmvf2bpn6HH9vY/ISQ7LyyaQkfx1KeXlVxOoHeIMDtAeyzFZrm +FCS9vFZTcyWH0elPoYGVA4GSAAQD7l+He3N9rkC6+R4MxYHf6NKR+MRR1b/AtpDf +cCWHXZVp1SAhs7aJDgGiupWJnikoqQLNXcgUPAfqJnSanJQGi1w0xZawlD4Fjhul +FqgYyumzcIYofgiAg+K0If7wtZuoFqsDE3XQnXr31XhmdEaHvju0HOInbTo4+Xu7 +n7WfJKkvAIWwTuXtGsDvpnE5T3M= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQD7l+He3N9rkC6+R4MxYHf6NKR+MRR +1b/AtpDfcCWHXZVp1SAhs7aJDgGiupWJnikoqQLNXcgUPAfqJnSanJQGi1w0xZaw +lD4FjhulFqgYyumzcIYofgiAg+K0If7wtZuoFqsDE3XQnXr31XhmdEaHvju0HOIn +bTo4+Xu7n7WfJKkvAIWwTuXtGsDvpnE5T3M= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQHHhZ+WeKnCev0vj2D+53GntdJ46uK +VOICw1+NRd6qK9qGwq+hsKBHVNGImPzdmxhfHYui4YCkesKRu0qtj5l/c7FCO81+ +m5IFcRkIW8fLICPSP4gQFCD59Qjw25T4377dXL6IzsgKnccI32zM34FddbFGKA18 +0uuXzxp91VC+Ujgk+TKnd2efLun2bUJY3aY= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C14 +PeerKey=KAS-ECC-CDH_K-571_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0343c45daab4f91e02ef9bd6e1cd157b00ab0ab0a3e0d9734918a1d896cdf7cc1212bf74d7bb9bf96bd4abf42df325756c407217f44a5950c2b66af820692742ed7ebe14e48d2d88 + +PrivateKey=KAS-ECC-CDH_K-571_C15 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAMzG3KWphVg84AgS +w9B4IvY0HHnXjBay565Lv1v/rBrNneq2eBk/j4mw4qrlLjAxFETdESU/ltYts6v7 +F+Qj8N3w6ZEIEVTDoYGVA4GSAAQDgmIVNDz9Stlo1XK6st7iJ5+ejv+g/4Cw313S +6oIrUCJ05QfIfSQp3Yu9um64q0M7HuHK06l8fSRBlP2aQ/Ph/zMUTi24CGQHD0UI +rjkc4kFUs4hzrwCC2ViVrJL9GqMhupO+70BKY/exr6H+7Jl4hVI6ZoitqU3UXrMs +p/G7h+Y8Tel0kxlsO1PPg9IY3Dc= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQDgmIVNDz9Stlo1XK6st7iJ5+ejv+g +/4Cw313S6oIrUCJ05QfIfSQp3Yu9um64q0M7HuHK06l8fSRBlP2aQ/Ph/zMUTi24 +CGQHD0UIrjkc4kFUs4hzrwCC2ViVrJL9GqMhupO+70BKY/exr6H+7Jl4hVI6Zoit +qU3UXrMsp/G7h+Y8Tel0kxlsO1PPg9IY3Dc= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQHTxp7XPsO7vHhXmNRLHMYja++iOjp +xCBzsrZSufAoIU8L7HkULYiJQWq/eoPin0eee8PKZX7woQwuo63jEXwNNp2swjOd +HBIA6JkqVAdnUwKfLA6djBZua6hIlqR4X//1mMSCPlRh/wBUkLt/tth4rDT0J/2d +tIy98S65gm1o/SzxcdTWHD8nXUSUfU30x1I= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C15 +PeerKey=KAS-ECC-CDH_K-571_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=04a565cb3e15236a7f6c413afeb419c082427b10a6d07ff87e81740716433c06b3254414381e4ff9860340dd6201ab6621d162cd12047a5515ab1d65f20c97eb3d7132642f8ad58a + +PrivateKey=KAS-ECC-CDH_K-571_C16 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAYhiE2WL0X59wzTd +gAOSakR8NKGX7l1tC7xG6F7Bz6aAKFjRw2cnbKVyuieqel0eIWkCQWtIr25Cd5Re +Rl19hA3/FDhUPKpGoYGVA4GSAAQEf2zEIQfEDBaNxnmoZPlptT91YlcRO3UCeW76 +VM3M5wS5NE7kv5ZHUtaJECYr0mq2s0cIRASygwbKNCXymJTOb9QpPFlzUi8GDP21 +RnZ1p4mSO+lzxmRdvibQCjnU6BJVIXKRo4gs+o+R9KqCFNNSTJXvaiTkezudDvVf +ZwdWrkpNnGXwdfQXCy0YqvvKAmU= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQEf2zEIQfEDBaNxnmoZPlptT91YlcR +O3UCeW76VM3M5wS5NE7kv5ZHUtaJECYr0mq2s0cIRASygwbKNCXymJTOb9QpPFlz +Ui8GDP21RnZ1p4mSO+lzxmRdvibQCjnU6BJVIXKRo4gs+o+R9KqCFNNSTJXvaiTk +ezudDvVfZwdWrkpNnGXwdfQXCy0YqvvKAmU= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQAS1Szzv1BX16qykrk5drPvOIMuhky +ovUFSbzTFjABetIUdd8VT/N74TymGkxgM2sz0P/HYqqenp/G5v0XJQteQCK1UUHS +P78Fb3yNZcVo3pW9FmT/9xQp7HOJh2l/IX3lrfNtFKgLb+WF5GheA8gYOKvt/cBa +HgFAevSrmJ/B0Sc7qKGCxGGFbV7/5wXX3+U= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C16 +PeerKey=KAS-ECC-CDH_K-571_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=047265831f1f589b5f30806e2fb80aa7844cbf32b6993384beaac7d992b327b97dfd0bb89ca09e711507e846ed4ad003e7115fa8843b23d38f320e43b5eb506bde48fbd7af4983b9 + +PrivateKey=KAS-ECC-CDH_K-571_C17 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAEwN03FeiIjcIiIG +nn9hGAFoUUAwPha4tENDPV4YpLGAPVaAQWrr2nrn6USRVL40an3LNsHbInRGc/s7 +JF5YRAeH7T3sbT21oYGVA4GSAAQC+yQessKKGwZ1tXYP5WY++mA+sFkIQvRVlz8F +c+FIpH5j+X6N+aVwsGVdWvxCAZ/pX+RP2wKmgnHYLfWAAQ+R3/DLPZvaiZIDP5Op +3DnYdAO2qU3AYy3sZ1eELQqvitjEHrtjcFi/wRwZo6mr3fIEIB70+W/pYpIzpQcK +CHlNFEcAkeMM3Ydqr2VAdicjMjQ= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQC+yQessKKGwZ1tXYP5WY++mA+sFkI +QvRVlz8Fc+FIpH5j+X6N+aVwsGVdWvxCAZ/pX+RP2wKmgnHYLfWAAQ+R3/DLPZva +iZIDP5Op3DnYdAO2qU3AYy3sZ1eELQqvitjEHrtjcFi/wRwZo6mr3fIEIB70+W/p +YpIzpQcKCHlNFEcAkeMM3Ydqr2VAdicjMjQ= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQH7HG+oIEZCpxM3/gJ7Stlp3gAzRs7 +7/0eQATRJqw1LSQjXHl6WlZ9rvc5PSdmOBMup/D2HlUNwlHTQfZhAvlsKr9+43wP +ye0A78KshwWy+cnAapEKMExCsa1TEBrrDRRjGdwkgVx8wZg7HK2R1fnG1e7xZ3of +LSvddaH7TFeWpMVpZKo+Q/PaJsc37dnLCRA= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C17 +PeerKey=KAS-ECC-CDH_K-571_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=059b62c25c96955b8fb4deddcf90ebe6845ee71ea357739273d6d67f21a0c47d154add9d5d4d2b657fe1988ad614b0b4902faa92fe999abd754ad33cd6b92fe2f6a68a6f2c1eeb27 + +PrivateKey=KAS-ECC-CDH_K-571_C18 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAH1UGU/CJsw59kDT +0XublbcLUfmK1coZkVZhCNg543fiG6SMv0QVMLM0HdxhsKWBQaqmZTAkH6UpUF1w +gEslYMW+SBMQuZYtoYGVA4GSAAQC7V86LvpKsPnbX87XsTAN5NRXqa0IJ0V+XhxL +wV69GDd13ktzwfgg3UAzNmEA5ItBZNBOn7bPGkvbVRIqhgBfvQvSzdvJX6cDJ/5l +TvaFY8yIiKzKhRY8KxVPtwsPSitYw2OIoMJfgKTIh5d9RgANxNhulc/Y+QZcAOso +ZTyPtHe7tcY91HuDyl4Phx6e7T0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQC7V86LvpKsPnbX87XsTAN5NRXqa0I +J0V+XhxLwV69GDd13ktzwfgg3UAzNmEA5ItBZNBOn7bPGkvbVRIqhgBfvQvSzdvJ +X6cDJ/5lTvaFY8yIiKzKhRY8KxVPtwsPSitYw2OIoMJfgKTIh5d9RgANxNhulc/Y ++QZcAOsoZTyPtHe7tcY91HuDyl4Phx6e7T0= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQGcIaGtPWtL+xFeq1axKPcSGekd+tU +/A1JNRG1Vh6hUd1Mr11DEZg1ALSMgEOvCeP0BC1aB+vwUKToAdru8zF74JOVUCBF +KykFJchoJYO1X37OxZuSCEb3XRHQIen/sgAYY59quTAiRywZLTmOFQzcYwoR/PlC +5dI4zWwUsw9Eok0vhD7F0TXdx6vaVgR6vCE= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C18 +PeerKey=KAS-ECC-CDH_K-571_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=02777c72853b76b29f69d3aa27a1659789a025af0633d833b22b57bf328d231ebd128bf96a4c8a7ffd2ee7a51e5ebb7a8e5bca20e4ad49671a2123dfbc0d6c40594e04765186de06 + +PrivateKey=KAS-ECC-CDH_K-571_C19 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAQdAuVgoUkIEXNU1 +jX/5Iyt9fUE69+IFwoX4hJLvJ6L7hQ4FZ+wkxIDHWtMvcDQgJchiZ9vk/4CixQnl +uaRRMOmefHzIzG7OoYGVA4GSAAQD8/WFyv1GpmO2z4uDI++RWdUZXTEY8+3zhzLK +D/c7LQZdnmmuHjl4ss5txhUA97i79vanC0e7ZMxP0ZW7pqyTK3C+r+F0FIoAsVZv +5hnyzACroF4kpszLyRM4su71U9oNR31sjArExlbhNNvPMf+xXGfVib0pGPEXSQnl +QoxxyQ44xOEbViNqv6HeaoV5600= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQD8/WFyv1GpmO2z4uDI++RWdUZXTEY +8+3zhzLKD/c7LQZdnmmuHjl4ss5txhUA97i79vanC0e7ZMxP0ZW7pqyTK3C+r+F0 +FIoAsVZv5hnyzACroF4kpszLyRM4su71U9oNR31sjArExlbhNNvPMf+xXGfVib0p +GPEXSQnlQoxxyQ44xOEbViNqv6HeaoV5600= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQHznZ0QD38YoldceKrWHznNfJ58S99 +8xYTNb5D/CkI6nNvb1i5MteTr/ZvMyc11NOPBcsDzydcoOANofVzgeCL/rUBeHc0 +InIH1mSfPZHnv1+N5hG9lxgYEG3y43k1u0ZM2edGlinGrn5/KyJAJ2yw7tt6JtDH +03f0AJod1Ip5PMmT+w1KBNsdutRJMwS8XA4= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C19 +PeerKey=KAS-ECC-CDH_K-571_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=02c2ec1632e83416182a9a438f7360b88061bab84f5bded3dd8a0c87baf44507df94fdcf99353b107e61cfcfc8af071b3aa8cec7b34a542bf2ab8ea0bd9db67d66b428c9a6c14458 + +PrivateKey=KAS-ECC-CDH_K-571_C20 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAMheXS3tW8O2tVP+ +CgIxG3K8XNyOlt8XnOV1EcJqyehz/B92zd6afY5Sp+m+XHdTYgMx6Jd6mJArSK6Y +mc6KamY2YRJ2riODoYGVA4GSAAQCiapSCf57Gte5xeDmMLpeApKeobHxFNMKBkgB +K/Ap4GZFPy0o4dUDZl3Qgz8Lo35Fg7Q03ZlWEAoa5uVPltk0fYBnQdOnbjEDOv6H +sp7e9Ef/WgLmP2SQW19TrIVs/XdVrVQoEuzdVo6K4fnTL+oPAgGNz9DhbWpqJ5e3 +49yFW/22sNCyUl4UNnjVOb+MBnI= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQCiapSCf57Gte5xeDmMLpeApKeobHx +FNMKBkgBK/Ap4GZFPy0o4dUDZl3Qgz8Lo35Fg7Q03ZlWEAoa5uVPltk0fYBnQdOn +bjEDOv6Hsp7e9Ef/WgLmP2SQW19TrIVs/XdVrVQoEuzdVo6K4fnTL+oPAgGNz9Dh +bWpqJ5e349yFW/22sNCyUl4UNnjVOb+MBnI= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQEg61zguNIr8fycdUNjTm4FLfW3AxW +KmulVlaARb0tYgkGqxEG+RN/9yWJLoQ2qM17iIkqMvGasmnirTDX8OwA46BS+7xG +YwcEHMSw8ZXcc8So4QYF8qOCkjq9I4HyTkq71AHgh8UNGPbasBol236J3/9oxmNJ +T7TQh6gWuFRE2IK+wqwl5C/eeOvMp5pv3fA= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C20 +PeerKey=KAS-ECC-CDH_K-571_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=07e1d202a54d34020939f7aed56931f21b206761e4fc79b9a7b320f81077be322ae7809446b5b3ea701618ecdb0a1796ab80407a281bdbcb4d580131b61f8743bfef7a4d9c5941f1 + +PrivateKey=KAS-ECC-CDH_K-571_C21 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAFOkjP2o7iMs6jVJ +knsi83XWCWVgAl4hMWHUPu0C0HNl2e3nyT1FfqUeojaeh0Y+3b8loGux8ID7R2MH +SoKD3T1p8d6GUpXjoYGVA4GSAAQEeQ+dtgC5oKV+A9J0o9I6VaoNhrLW+gf6/jyd +TDOTdx3eiccKZHCjG60QXCHUhEzXv8O1lzj51sUoxBTVJPiODIYuThev9FQF3BLb +BOJInbikbN7/n42dLgDQJPZWx4HrTS2xZ2JLOnCt2qoVjKAGAdTK0GWRe+vnZpEv +q6mYf8xfyKeN0hZDqmUOakp+IGE= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQEeQ+dtgC5oKV+A9J0o9I6VaoNhrLW ++gf6/jydTDOTdx3eiccKZHCjG60QXCHUhEzXv8O1lzj51sUoxBTVJPiODIYuThev +9FQF3BLbBOJInbikbN7/n42dLgDQJPZWx4HrTS2xZ2JLOnCt2qoVjKAGAdTK0GWR +e+vnZpEvq6mYf8xfyKeN0hZDqmUOakp+IGE= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQHpejrSWhJehG5DGDhPV88YcaGhXOm +ttt8IIqFbVTnT0No4oEAueC/SfwxBOFG+9p4RiOjbZ8B8j6636sE1/SP9mUGxpi+ +3REBPblo/HzTOMuOMEKhcfowb5q29shl3cW6X+mUow2PwfoScZHwjk4UuaoIalL7 +yqRtIhB/1t9TEItT/gu5a8l0wDqMZSj5eS0= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C21 +PeerKey=KAS-ECC-CDH_K-571_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=07f49ee5d822b17e3f1ec9946fad8d0a0a6b327242afe675806b3e6b7541745e21cd1b70df926af057a9f8deae4cb9a1edc782014426152e8aa4cf6a4080dad4678dc8ff0d9e1af9 + +PrivateKey=KAS-ECC-CDH_K-571_C22 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAVpeWUb+LJyubUEs +YYwb0HckQysvHe2xMn2Kmc6DDmsDD0AlwUtOPRkS6pp4KQoc/H0BiaMMYUAQyHMU +ahgvY5GTopEu3NBKoYGVA4GSAAQDFAiH6HA5eXhp9dnbUNkbpp0L/cWmd8cAYQVi +9oDZUaXgUXyy+WY2fUjkI7BG205ovBxLMYPcgL7hJuiQFJlM34PEMSo+XqcHuNcG +liyxkvDtFMTacQ0bGwc/2MpJepQ3mnRUycPUzm5f0uY4aFKnfFQ1q7I1NtzIOYbO +3UUSdS8pXKUA8FX0YnY8KftnjKo= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQDFAiH6HA5eXhp9dnbUNkbpp0L/cWm +d8cAYQVi9oDZUaXgUXyy+WY2fUjkI7BG205ovBxLMYPcgL7hJuiQFJlM34PEMSo+ +XqcHuNcGliyxkvDtFMTacQ0bGwc/2MpJepQ3mnRUycPUzm5f0uY4aFKnfFQ1q7I1 +NtzIOYbO3UUSdS8pXKUA8FX0YnY8KftnjKo= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQBPKr4zi4jIc8lbytkqomt1paMKYYk +oivTjvlN6zpw6kTOh6lI6la/DulAcTT4yXsXsfVFYf93R+P2tlb4DWB3jQW4xMu7 +zzwAR6Lco+tnVLCp/Rawgfykl7Kd0uyeanWW0GsFnCqxiQD8xYcVJHJ245DfHbqy +a6gSNaTcZzgjf879OBK3q0NskmxQxgDm6Qc= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C22 +PeerKey=KAS-ECC-CDH_K-571_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=058cd5608dd9d64d4d822baeca123358a4d7e56d3777ecdf569a149c2f85ed35479eaeaababd0b026dc3b56aedafedfc8491040413f85b669d8512a3ef7bc8fe8706b5c7585370aa + +PrivateKey=KAS-ECC-CDH_K-571_C23 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAL1Y4ZwF336ZvZYg +cOC0x1dgQoWER+AjtBuyl0Womkh03+MloV040vuehw9BndFfSqrGXbvFrCxUD1fN +sORbyGYhcm2SLRSqoYGVA4GSAAQB5LKid93Xjy8RnAW2rh6noqdElh4IlA9lae6I +CMU7x6EhOAZO1cjCIu7yd05wwovOOmwF86ZU4SEAarYryUOB0Byg0bCCNNYH7tjN +eoo1SbDZ74eGh579ycD0zpCzmRozy7sdNwTbk1ExOLGaUOysiA5XjeIQRvA6IABI +GAiEvELPmq/ljMHq9TbW0l8VQdg= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQB5LKid93Xjy8RnAW2rh6noqdElh4I +lA9lae6ICMU7x6EhOAZO1cjCIu7yd05wwovOOmwF86ZU4SEAarYryUOB0Byg0bCC +NNYH7tjNeoo1SbDZ74eGh579ycD0zpCzmRozy7sdNwTbk1ExOLGaUOysiA5XjeIQ +RvA6IABIGAiEvELPmq/ljMHq9TbW0l8VQdg= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQHQ7PJZag+6fa9uZAaHcwfeBllRKiL +nPgRf4ntFXTlxdgE/EUREsJXh34SsKZsaTxmVcErukU12Z1iQF9Knc68BW2LfLut +oSAD76WKo6jGok9DxVgf7AQUQq6VUnXbwdRtEBVgWdJje5qCmUsCSiR9KmZyS6kN +Anh7FosfofS2dJZFQGxDj40xbWcPHg2LAwE= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C23 +PeerKey=KAS-ECC-CDH_K-571_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=03bf7a59bbdd688682c45664d20c19cb2d24fcca6772120cbeed1cde762d449ebf22855627eb6b2be6e7f7c0f0034d02686f2a4488549f8cb198e02b46972bcb88914bea66dd6400 + +PrivateKey=KAS-ECC-CDH_K-571_C24 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIARRjBw/LSii+Tipn +wpx/pIpMWFowdAXQahoGeOkJ3W6vuJhmLN2LzAGd6xTl2S0XK6HEOO8PZNgBB8fo +5oAp9OCqgUoQmco4oYGVA4GSAAQAk5OY5GOIbw27SKdPVzoSFQAGaOELV5idwwCy ++ajAjNQ9bLt/Rux3wcKUsj+GKZAn0rk/1usYIQqCML9G45IfGCySYMMIR6sD1I7G +M7naFlDqdiZWs+MfJq7Afnymqvwe18tGbqrzmT4EZwSMlnux6bSuBzojDB4vdOLm +GGZs9WoG8rZew5Vbb/uwapCM9hY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQAk5OY5GOIbw27SKdPVzoSFQAGaOEL +V5idwwCy+ajAjNQ9bLt/Rux3wcKUsj+GKZAn0rk/1usYIQqCML9G45IfGCySYMMI +R6sD1I7GM7naFlDqdiZWs+MfJq7Afnymqvwe18tGbqrzmT4EZwSMlnux6bSuBzoj +DB4vdOLmGGZs9WoG8rZew5Vbb/uwapCM9hY= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_K-571_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQHIvHnoGB3UNri1ixdPUcPAGwyVFWO +qqKU7u28qNML9Ku5Vd62LkF5kl9sut87+HdvFdyuNVat33lxBad7f29xIGyg5uqR +4YgDXRCMoNYgyrlrfL9hfRtawG43eSYpiGVk/RR8WOVeQjNE/08fukrw/jQVKzhL +doXKrRXTvCcOQ0Iq2HTnHkCKcabIqQ0q2Xg= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_K-571_C24 +PeerKey=KAS-ECC-CDH_K-571_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=06d410e9ba6b8b87b00d0f676de8ba27f6afe7e308c2e992f318fc14cba0a447316ad86e8e6c1d3345d8e4035735232c2c597e760b8800a89a521567b09408f9c7be279c137c963f + +PrivateKey=KAS-ECC-CDH_B-163_C0 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUD7a4XPej6DPBBLWp73IH9 +vQYXrfihLgMsAAQDVGZwHQsAMNCYtu0jQ9NVwkyQcnEA2LwC80HSYYYN+2Xwy38L +SI2Clsw= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEA1RmcB0LADDQmLbtI0PTVcJMkHJxANi8 +AvNB0mGGDftl8Mt/C0iNgpbM +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEA6ZHujLaxx7GeAsGOKcM0k/DvUyOAuae +lhVBhEpKozdpp7znEPZkClYM +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C0 +PeerKey=KAS-ECC-CDH_B-163_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0100fb42d177ffe6c31378e2e04e0da7376ffe8765 + +PrivateKey=KAS-ECC-CDH_B-163_C1 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUBeNzIIWQl1L9xyPKSXdGv +htwEomihLgMsAAQBHklDDN0G8udluPLMBnzUJOLnVIUAg68VsizX39Hf9zlr8/MD +j1BSSZE= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAR5JQwzdBvLnZbjyzAZ81CTi51SFAIOv +FbIs19/R3/c5a/PzA49QUkmR +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEASgomJNkhtwuPNFYXzLVVEJk4ZHkBenp +i7dJm/iV93+PyDAdbhx6n2GR +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C1 +PeerKey=KAS-ECC-CDH_B-163_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0681c9e59eb7eba769f5b6f2b06ddf1efd12997995 + +PrivateKey=KAS-ECC-CDH_B-163_C2 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUD6h555SoHCJjWo8TnSOla +yHENd/ahLgMsAAQBN4YLo0WK8Twir4Il9WHgEzHNh6gHcgNW4V3HP5/uehwCH+yp +fNQSBOM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEATeGC6NFivE8Iq+CJfVh4BMxzYeoB3ID +VuFdxz+f7nocAh/sqXzUEgTj +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBYdPzIxITAFBcxAty3DGJO5hCNMdAElp +P07ccUsNC6pb/F2LxqwECJ3k +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C2 +PeerKey=KAS-ECC-CDH_B-163_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01e0749a21fc508f76dade85435bbbe12c448bd8c4 + +PrivateKey=KAS-ECC-CDH_B-163_C3 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUBrVypq8i83MSCmVrRqXfk +cnFQuzahLgMsAAQCWueDEbD882lWajGfiYSVRq6uwwUGQOsP31IEgK++ufJnT+sd +bfSC1/U= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAlrngxGw/PNpVmoxn4mElUaursMFBkDr +D99SBICvvrnyZ0/rHW30gtf1 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEADdI15jxQCaPHnGLOyOqKswDM8B0AMQq +knq1eWlhIwlVdayUmwen0dS8 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C3 +PeerKey=KAS-ECC-CDH_B-163_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0320398f7acf791e0d602d7b94742cce58e9fddbac + +PrivateKey=KAS-ECC-CDH_B-163_C4 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUC0oqKodifo+Xllv/RgIJU +7heg0PqhLgMsAAQG5sUklKtjyJyXiFVvcWZ387SAQqAE6YJYucVvAtPttMpbCu6q +naqm/g8= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBubFJJSrY8icl4hVb3Fmd/O0gEKgBOmC +WLnFbwLT7bTKWwruqp2qpv4P +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEA4DbPfKxwBVKjoyzBK7NWB018xXNBxU0 +7C6LNX2eBp1/H6mL1E7YsGgm +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C4 +PeerKey=KAS-ECC-CDH_B-163_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=03e4de43de85223d818e5be6549c29cdfa1afe1782 + +PrivateKey=KAS-ECC-CDH_B-163_C5 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUC4XD39NwVL+Rwb5nZviKe +ExfYK72hLgMsAAQHkA2sJR3oqUTPChvy6y7+7hRnbpsAkeffZ/d2InKdWbfjS5Rx +J+f6Ll0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEB5ANrCUd6KlEzwob8usu/u4UZ26bAJHn +32f3diJynVm340uUcSfn+i5d +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEATbg0FtPOYuCfhmARhSLL0FXP8B8BzmT +TOwQVyhS4fYZIi4vXsTg+lqm +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C5 +PeerKey=KAS-ECC-CDH_B-163_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=037b178aab014d5abab305e37deed7f4798cdb862c + +PrivateKey=KAS-ECC-CDH_B-163_C6 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUCkj0sgCzsQt7yYz3r3KdZ +1ZdE0+ihLgMsAAQCzctPke19F3aNuAvis6yeCVax2XEDJDP0VabNJT6RWC0vb1px +JlXaHWk= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAs3LT5HtfRd2jbgL4rOsnglWsdlxAyQz +9FWmzSU+kVgtL29acSZV2h1p +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEB2w65KeBZzYn0Om8thX2JqFgpV3aBYwO +yPJknC3c2cJLZDQzsU2QfFkD +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C6 +PeerKey=KAS-ECC-CDH_B-163_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00958b2aaa6061222dd248a6b9700fb6839dacdc99 + +PrivateKey=KAS-ECC-CDH_B-163_C7 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUCWxe9bkIH2fsaOvAv1dsm +r4NIrrChLgMsAAQG9vWx87GPRdtPs3d+aED7WlthqRQHN84UrrJOBZFYWnQXuJJW +dJ9GHeY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBvb1sfOxj0XbT7N3fmhA+1pbYakUBzfO +FK6yTgWRWFp0F7iSVnSfRh3m +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEANZfBRbBs+7ZIg5Zs9BJ3RFTF5rFAgv+ +EHqJpzYM0uIXU01t8pjMS8RY +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C7 +PeerKey=KAS-ECC-CDH_B-163_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0393387e1dab35748f20d506a0e2b4dc0ee6c3ff39 + +PrivateKey=KAS-ECC-CDH_B-163_C8 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUAE36BMq0oiSPmSBHpIpj1 +wNzJVwWhLgMsAAQG8s3R1jDdcx7Xf5Acew5zVRXibU4BBi8vcVxNKvl7sb6LbPou +PuMUJT4= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBvLN0dYw3XMe13+QHHsOc1UV4m1OAQYv +L3FcTSr5e7G+i2z6Lj7jFCU+ +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBA2QPOKzD3CmoDhJsOF1j++Ih70xBKvY +vbfBMnyZszgg2+GK4RT7Q1lJ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C8 +PeerKey=KAS-ECC-CDH_B-163_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0212358d3f8bce69b662447333b3edbbc9b2f7e805 + +PrivateKey=KAS-ECC-CDH_B-163_C9 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUBxIxQt9Ps3zuQG60O78Pj +gm486p+hLgMsAAQBkXVXMRfdhR5u6/2fseWohOv+/uUDrfN+Te1SVz+lfIyyv8ps +ZcNnRGI= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAZF1VzEX3YUebuv9n7HlqITr/v7lA63z +fk3tUlc/pXyMsr/KbGXDZ0Ri +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAi7SRkPwzsaMjkrRqixDadiqA/WUBczK +YrbdHTFt7b0PHVML7W5VazrY +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C9 +PeerKey=KAS-ECC-CDH_B-163_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=023472fa59846f7be07cf060cdd69a9fbb27d4fe44 + +PrivateKey=KAS-ECC-CDH_B-163_C10 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUBFi2e06ZgRV6MAV0eRdFR +V0mj3NKhLgMsAAQEKD6w5QhdGYs3j8lfb7TDGYtNPHgBB6EWjy9HuWPks6kCTgw1 +el69+Sw= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBCg+sOUIXRmLN4/JX2+0wxmLTTx4AQeh +Fo8vR7lj5LOpAk4MNXpevfks +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEB5P0sxFy7uZvJ2nrMF0DtcP3z/+LAfPs +7Gu9qb3opNoU2z5f+TS5g1sX +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C10 +PeerKey=KAS-ECC-CDH_B-163_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0173a056c4c9ef6707cd23928999c4680f42b71f7c + +PrivateKey=KAS-ECC-CDH_B-163_C11 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUBmh0W9KVy88G1HqKs5pKA +5xN7j4yhLgMsAAQFzt6Wpw9xTNaJY/LWyiNiaak48xEGza3VS29zPICTR4fijCzP +WLEie8A= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBc7elqcPcUzWiWPy1sojYmmpOPMRBs2t +1UtvczyAk0eH4owsz1ixInvA +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAup6UINGAvES9t0ObSXwZPnQXv8mAb8/ +adFKzIMzUzqIwuiCSGOkeuAn +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C11 +PeerKey=KAS-ECC-CDH_B-163_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=03d34f411a297d7c990fa4a83b5f54759607f9d33f + +PrivateKey=KAS-ECC-CDH_B-163_C12 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUC79RADa08+tjRY3+pKQxL +dYowFbahLgMsAAQFExMbS8ty72irBD7oT8jLA7bY8YcBILfVdyu7F+yxyegMNvgI +/VSpOq4= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBRMTG0vLcu9oqwQ+6E/IywO22PGHASC3 +1XcruxfsscnoDDb4CP1UqTqu +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBt0TBTSeiqCAIAc6DeWvxdwbamLTA0l+ +t79Aie8CzQpd0Phr2HmKRMVs +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C12 +PeerKey=KAS-ECC-CDH_B-163_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=06120aed8d4c1e506710e2cfb98ca2022e642ca89f + +PrivateKey=KAS-ECC-CDH_B-163_C13 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUBKw1kl3z8E7SDRe9wctGj +iQ6vuVuhLgMsAAQBuTY89Ic1Z2h42AzhSBuFiGg/dEQHaPpzJ81yUsj2lu1JR4aJ +Fa2h+10= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAbk2PPSHNWdoeNgM4UgbhYhoP3REB2j6 +cyfNclLI9pbtSUeGiRWtoftd +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBaDjQRGOaYJ9an+CgvvwuUQA8IJABCO5 +k9Q2f79PZQTZ4JpkEjo7U9Eo +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C13 +PeerKey=KAS-ECC-CDH_B-163_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=021a58087968c5df57afd7c343a4cfa2ee8e7073f1 + +PrivateKey=KAS-ECC-CDH_B-163_C14 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUDOslTgD0ERrPNpOvQcbTr +AnwRv9ihLgMsAAQFxEbpiWykTMpzPp9OW2Sv3cBTchEGutGyUiaS+XCzi+aTXcfR +wJ3NIG8= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBcRG6YlspEzKcz6fTltkr93AU3IRBrrR +slImkvlws4vmk13H0cCdzSBv +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEABqSPWGRY0MGEkweJnMJsH26Mt7LBaNR +f1Qmo0Eacn7dwpo+wilVg2jR +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C14 +PeerKey=KAS-ECC-CDH_B-163_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=03da9c0879219e48c3df56174898fab9ee5b0a6bcd + +PrivateKey=KAS-ECC-CDH_B-163_C15 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUBvXkUWuf0LGsl0cOJZewI +/SdTOnqhLgMsAAQA6dj8OgJpJcit1Qj5IPouX/UoJogFt79jElmsfTaTbBMP8gbY +ILE73oE= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAOnY/DoCaSXIrdUI+SD6Ll/1KCaIBbe/ +YxJZrH02k2wTD/IG2CCxO96B +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAvqLrw1hKK3ZuQKqGByB4kKYRR4uArk9 +H2kTkU/+FVnHwRTGMbtrKWF+ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C15 +PeerKey=KAS-ECC-CDH_B-163_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=05b33fe3874d32aed99919265cc0074902e538fe54 + +PrivateKey=KAS-ECC-CDH_B-163_C16 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUDMMofWtd9embYdCMygCDJ +HsefN2ShLgMsAAQFujfTaZfE8qvmA9/gQiMnOOgrCzoHPIzZUARJcqAFxvGvjkMG +4MzvuUY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBbo302mXxPKr5gPf4EIjJzjoKws6BzyM +2VAESXKgBcbxr45DBuDM77lG +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEA1Pi2kWrfEkwKAw+20upABLVbfYvAmkx +4wuX/173uswN5NlJBwhSLjsr +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C16 +PeerKey=KAS-ECC-CDH_B-163_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=053dbce9826af4d290036feb46875e975b7848a9c4 + +PrivateKey=KAS-ECC-CDH_B-163_C17 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUC0jFAB01u3dW8CZsX3hKv +ud3y7L6hLgMsAAQG4GzHww9e1+aGw6daHUQld3BgHLIDDcQUxK+zkO1GevRxqpvS +t18y39g= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBuBsx8MPXtfmhsOnWh1EJXdwYByyAw3E +FMSvs5DtRnr0caqb0rdfMt/Y +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEByFnCITaqM1idjjskPNEjvsPJIm6BPhK +mDvsayiJyCEb8jEUm1vrzHXg +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C17 +PeerKey=KAS-ECC-CDH_B-163_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00d49b971cab937f40908913fe259849679ca076d9 + +PrivateKey=KAS-ECC-CDH_B-163_C18 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUCRJwbn/CeepoDsX9f9GER +X18/Gn+hLgMsAAQHP53d3EZQkz3szJVG05KjXbvGanYE3nVY3eZJ9yMis54xyOKc +5vWZSF4= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBz+d3dxGUJM97MyVRtOSo127xmp2BN51 +WN3mSfcjIrOeMcjinOb1mUhe +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAdYxnsLcXAjwJhrtAjFBjW3D0M2nA45k +lT982scdBS5VhVdGtD1EGBuR +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C18 +PeerKey=KAS-ECC-CDH_B-163_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0483ad0b7f8a716273f624b8979c19126705266e4b + +PrivateKey=KAS-ECC-CDH_B-163_C19 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUA0IuV2aTOck7EYszhJwH9 +jD1T/c2hLgMsAAQAJqdw2G4cibp6hq72Sbp+qG/H1bIB2xAg4Pdk31SlPCPJOM7J +jZp3rR0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEACancNhuHIm6eoau9km6fqhvx9WyAdsQ +IOD3ZN9UpTwjyTjOyY2ad60d +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBPFnkHv0uY6Gltgdp9LBBW76DcFMBsua +tlFDgyuc79XZzmnsTbLt0Geq +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C19 +PeerKey=KAS-ECC-CDH_B-163_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00f69dcb547119fc9b8c454335aab184c3ada5f1c6 + +PrivateKey=KAS-ECC-CDH_B-163_C20 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUDgI7+atUNJQ2HGS4WSZzj +JZQo87ihLgMsAAQAE6AuJfySeHWvpVe9Zz9lhwRZ5nEEA4265cXlQIRwiiS8P9By +52nBI3c= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEABOgLiX8knh1r6VXvWc/ZYcEWeZxBAON +uuXF5UCEcIokvD/QcudpwSN3 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEB5ttFMdDJxQC0TI2AyFf6zxosURVBOOQ +VoalOMJaAr6pL0IYQCG16iWT +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C20 +PeerKey=KAS-ECC-CDH_B-163_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01bc5ee5261b2bba55b10cbaa6cc3c97b98d00ffea + +PrivateKey=KAS-ECC-CDH_B-163_C21 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUCrSMqekHmzCSVU42HsCPN +7HtuHyOhLgMsAAQFSeMHgNk/eW/c9pGQVXXYXGZFO9sCFiqIW+oxNEVD9dBhkTad +7G5w6Wc= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBUnjB4DZP3lv3PaRkFV12FxmRTvbAhYq +iFvqMTRFQ/XQYZE2nexucOln +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEB3L0LScqBX3g/5Jsn5RgXGZ10hUmBgLn +5TJV3pv1jAV+77ebzkMbXDgI +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C21 +PeerKey=KAS-ECC-CDH_B-163_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=008574d838d3de87965fc1b4343fe4f078588c4ea1 + +PrivateKey=KAS-ECC-CDH_B-163_C22 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUA3Jmxnz2IR4dRkOlYiyu9 +gw29OpWhLgMsAAQA9l2YTXHcwYvxcqvk05k84PfPMkwAG0nmos8Rc6raw69sCelm +8xFBq9k= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAPZdmE1x3MGL8XKr5NOZPOD3zzJMABtJ +5qLPEXOq2sOvbAnpZvMRQavZ +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBQskKUYJcXOanW1WcLxtdZ5WVnaLBJK8 +LT9jjUl45MpYylpO8ZxezOqN +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C22 +PeerKey=KAS-ECC-CDH_B-163_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=04579b477a92ed961cfdb2014407e88e7716452a4b + +PrivateKey=KAS-ECC-CDH_B-163_C23 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUDVquFsE0IUbj2a0p5ZSbT +8+OIKEShLgMsAAQHdqLhr5MtdFGQcL+pQeqpPp/16XoFq+ntRiRf0BRiUNKlY8Ru +v3rNI0I= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEB3ai4a+TLXRRkHC/qUHqqT6f9el6Bavp +7UYkX9AUYlDSpWPEbr96zSNC +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAX1SEW8MlVh/G3sGx26Y2ZyC3PIMAk6i +K92ZC9eeY+c1shKCrhtepmZI +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C23 +PeerKey=KAS-ECC-CDH_B-163_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=035a8c10e64403c52ef8d17c5f4dead0df81fb1f21 + +PrivateKey=KAS-ECC-CDH_B-163_C24 +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUAentUdVDHWKnefwbi845V +9enkTOahLgMsAAQEWVLAtRfmhcqwlHAyf51LISdRsEkESkKabvsEvOoCQKtYBd50 +CqYfmU4= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBFlSwLUX5oXKsJRwMn+dSyEnUbBJBEpC +mm77BLzqAkCrWAXedAqmH5lO +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-163_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEA6fqELodaqVFcAtAtzeVGp5zbfoMBPk1 +L7KsJETpKHVONlX9YuOkJWTo +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-163_C24 +PeerKey=KAS-ECC-CDH_B-163_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=000142615e3607ac148c4de8f334be849235d01cdb + +PrivateKey=KAS-ECC-CDH_B-233_C0 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4APD7kdKwNC8HfVn48NfX3 +ZsUzKy1nMP8OTY51rtuhQAM+AAQAYeiptRf9BaAm7DdmFiKf2GOaH6dt7+U5gCL5 +2cgAcGtcsIc4qUVS/uWEsTcv6tSveQQJCfz29QCEu/o= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAGHoqbUX/QWgJuw3ZhYin9hjmh+nbe/l +OYAi+dnIAHBrXLCHOKlFUv7lhLE3L+rUr3kECQn89vUAhLv6 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAEdWut3vw9wzerJ7VFLrEK/9njH1tVwz +DpDw9oaiASp59lIyMIohyYwBVVzK/H3OFcj+0wJadgy9bCMn +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C0 +PeerKey=KAS-ECC-CDH_B-233_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00e9f3d8c4f1bec0f920e763ea1bb7415899f01734609e7547dc425ec946 + +PrivateKey=KAS-ECC-CDH_B-233_C1 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AqkGloBpOZqZ5l7C+FvVr +FgsFYa0H868pZDhkYdChQAM+AAQALZFAJEZVcGjED8B13uk5FrDxqTkuR+VrdHEl +rh8BOrCRXkrPd5UWgm+h3BiFoGq8XQgJySJAzPnD2KQ= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAC2RQCRGVXBoxA/Add7pORaw8ak5Lkfl +a3RxJa4fATqwkV5Kz3eVFoJvodwYhaBqvF0ICckiQMz5w9ik +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEARhqAo+aGNuSf2MlPCA+smqjq6DUCxo6 +vGTkeiKtAMvYuV+J5CESi8c6Q8XMJU44ZwlquJ14iy7TuQqW +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C1 +PeerKey=KAS-ECC-CDH_B-233_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00f1fbecfadb158d62eb1109c085124fad67a8795b58815eb396c95db4b9 + +PrivateKey=KAS-ECC-CDH_B-233_C2 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4Axmd8KAaLRi40hizmydit +jBs8fv6Ay6tB2kGSeOShQAM+AAQAQssxHc/ySCos7OaWwetkxprCqlmSCaXBh2Oj +FQoBsDKfNsE10ALwi+Pj/6naGMXWpww2D0+HHxK/P5U= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAELLMR3P8kgqLOzmlsHrZMaawqpZkgml +wYdjoxUKAbAynzbBNdAC8Ivj4/+p2hjF1qcMNg9Phx8Svz+V +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAJO/hWIWAiOOmNCcmIKNUaSUYDYsI8UU +HT0bI1KWAISXFSGHqLOylYodCi7s/0SSJRgHy/0D1fJoW8o3 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C2 +PeerKey=KAS-ECC-CDH_B-233_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=019ea831c51d88a7cf754495a1c474082ed481c8eb83190a77defb09d479 + +PrivateKey=KAS-ECC-CDH_B-233_C3 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AnGECSz3/IZs38b5nAYBK +3yR0FESN0PDcUSk6yROhQAM+AAQAEkEg2ECYUOceM8ni2cQOoyvtEdd4BHhumwdo +kqsAba4bpIFylv9jBzusnOBl1DMboaXImcwcB0Bdrj4= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEABJBINhAmFDnHjPJ4tnEDqMr7RHXeAR4 +bpsHaJKrAG2uG6SBcpb/Ywc7rJzgZdQzG6GlyJnMHAdAXa4+ +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAEVJZIaSr5XYjk4dSRTYyXaaraxaD3V4 +MmXz65ZXAbCUtIAvOXZj0OaC+r8clMTiFOSDJ7le78uSt3H9 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C3 +PeerKey=KAS-ECC-CDH_B-233_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00088425fb04c2ce408f08d81385a322703a077bf00ba0791e4e79b80419 + +PrivateKey=KAS-ECC-CDH_B-233_C4 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AbmnQZNvZp5T2jmmaDpQb +3aalOhzso7PbgpJbb4uhQAM+AAQAxX1h/LH+6Q1djJfL8YjI74JZsK4lh+zx/4zS +4voAuK2GxoBaSrRFE9u6L1CYuenB4Ftnn1KTeuzisYI= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAMV9Yfyx/ukNXYyXy/GIyO+CWbCuJYfs +8f+M0uL6ALithsaAWkq0RRPbui9QmLnpweBbZ59Sk3rs4rGC +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAHPFz0oB0J47QbXnd4xrm6Utr4j8QE+O +L9CdtAJ+AHA5Htqnbw45cDlMrAM4BhBYhYw8c9XLUS5TJjBP +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C4 +PeerKey=KAS-ECC-CDH_B-233_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=019b5efb23bc18a4f18c22fe2fd5cdbd02372cabde5e5c9f4b4f9a49438f + +PrivateKey=KAS-ECC-CDH_B-233_C5 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AWuXeMMfDFxgTot0+PqLF +zqoEc8OUV+mSkHHhpCChQAM+AAQBfPn8oF1KVeS2j+56O9Q/BHMD8qJm2Bu14ex+ +JVgAOwr0PeBQAzl94dSyeCetL81nXL9hpEWh7EClabY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAXz5/KBdSlXkto/uejvUPwRzA/KiZtgb +teHsfiVYADsK9D3gUAM5feHUsngnrS/NZ1y/YaRFoexApWm2 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEASOmsIGnYehsBC4ZFK9H8JOyZVVD5WRY +S2BkJTmpAFGO48GuVGQE3x7M1pqmhWQx0ciIHPBXjP9OuMEb +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C5 +PeerKey=KAS-ECC-CDH_B-233_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01f36d9519c3d47f030eeac3338db583b96fefa551a4b56cc5567f2d9d7a + +PrivateKey=KAS-ECC-CDH_B-233_C6 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AxoeWlVtotfiCfjisB4Kx +rCxFUsrvDGCVhGfNhcGhQAM+AAQANHifvGDxCGA0yPLOhv1KozUZTJFGiQNX3EdW +meQB0395Yyf3HsMVEEaEY9CykFSIpKYCZ4cN/uVnwlA= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEADR4n7xg8QhgNMjyzob9SqM1GUyRRokD +V9xHVpnkAdN/eWMn9x7DFRBGhGPQspBUiKSmAmeHDf7lZ8JQ +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAUH7vys2HCyM5e2r+iKqR1VYHlsaZmAD +YqDue8V0Aa6jysID+MeAR1omCbKXDMhvlupAEcNI2oJiszSq +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C6 +PeerKey=KAS-ECC-CDH_B-233_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00e54b1c916ff3ba1aa0b2b99f0ebde4f1a4cc6a10d959bb2f7f4c777b84 + +PrivateKey=KAS-ECC-CDH_B-233_C7 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AdCRcyX3UUJNWieo/ynsL +MMHWfObovhfLEZJXXK+hQAM+AAQB4cVwrMZTxwb9d0AZSlVN5/N5mhK4INapQRl/ +dh0B4iJejQ1ByAj26tevMg+yX+0pqZCYoPDhHNhp5Tw= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAeHFcKzGU8cG/XdAGUpVTefzeZoSuCDW +qUEZf3YdAeIiXo0NQcgI9urXrzIPsl/tKamQmKDw4RzYaeU8 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAJag0/Nuj3U3kQdM6ml7JHFifgyeeilK +ApqdO5QpALdnF0opILYvHwL6eQl4RdUdk+DIEEQQgxot1Vw8 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C7 +PeerKey=KAS-ECC-CDH_B-233_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00bc0dcf7585753cc79aa412d2740b4b2d1c644fc9755cb0550286bcf68e + +PrivateKey=KAS-ECC-CDH_B-233_C8 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4Al77tS3OKYgXMnqBGtEi1 +IxKLkxAaAtlkQ16xeAahQAM+AAQBg1jalAeacAoQsgojJdM9gOletPxKmBAcMSY1 +k5wADE9ELQBxx70dIXzyNf0DHewwnoXqIBTmi1D8K6A= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAYNY2pQHmnAKELIKIyXTPYDpXrT8SpgQ +HDEmNZOcAAxPRC0Acce9HSF88jX9Ax3sMJ6F6iAU5otQ/Cug +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAWa+JCazv45tBaJNfR8sDjKeQSDPyOb/ +UkhvCVWGAHNx4ogUX8JaWpy18qOGA08vMoxuqiTIsJboqx8M +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C8 +PeerKey=KAS-ECC-CDH_B-233_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01b7ef3148be331115321b1c2a68832fdfb991b26224a60dddce3e060d27 + +PrivateKey=KAS-ECC-CDH_B-233_C9 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AdZxV2lXh/bW6f4uJOrqu +WSW5sIGEo9VUlXrPPsChQAM+AAQAKvJfgQ4YqBtp2iVKZbimx6uA3cJ8hWIuI0it +0TIBKLdT5LIajDrPhaq5Kpqmp7M/LLadcCS6+OiwcUI= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEACryX4EOGKgbadolSmW4psergN3CfIVi +LiNIrdEyASi3U+SyGow6z4WquSqapqezPyy2nXAkuvjosHFC +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAYHzuwsJdxMnfF87Rs7wKqnL4pq5XHbp +tgofelHlAC4vtnLXK/ePfP7cQNNybGtPtYVBfHR2tlXjK707 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C9 +PeerKey=KAS-ECC-CDH_B-233_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0041249865c913b287a253150b207e2682efd96057cb0709e9bbb48c0fc9 + +PrivateKey=KAS-ECC-CDH_B-233_C10 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4A7mOdifDkM8B14u9XzCQ1 +gelbJh+Kk7jvb16/gBWhQAM+AAQABmOPa82FBDOV0B12f/d+nWd/N+9ADy4W/uht +uvIAbBJJYmbeux2DQ7loTifF9xKcFwJKjmcEZypfPWM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAAZjj2vNhQQzldAddn/3fp1nfzfvQA8u +Fv7obbryAGwSSWJm3rsdg0O5aE4nxfcSnBcCSo5nBGcqXz1j +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAGWqQRXlnmBFqvme4b7KH6uSO73JGSBu +CTFiC6mWASjQC3dYmaWKWbyyq3nWCeLc2pjmUju2cWhVT4Tm +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C10 +PeerKey=KAS-ECC-CDH_B-233_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01cf480fbc2be2c2c4448c88890972c7ff9cbe08a75e26c3809596b8b5c0 + +PrivateKey=KAS-ECC-CDH_B-233_C11 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AkpsJtnspqk/xXWd5oXMw +ZQSfrrLCJwEsSfJ37VGhQAM+AAQAygQD2V2F8MsK5NKurhjhh7ecIB7WjBStJO0A +OSIAz2sKUCspDQru6CBmGsz26ll2h8Rcf5Onc9JfYqY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAMoEA9ldhfDLCuTSrq4Y4Ye3nCAe1owU +rSTtADkiAM9rClArKQ0K7uggZhrM9upZdofEXH+Tp3PSX2Km +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEATV25wDzY2f7dBhC8jGInzaCKqspM8JF +7tV7naytAXkQ6QcaPkLn8hs2Pw5ofSiYEKTsKcNuzhSFTh3R +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C11 +PeerKey=KAS-ECC-CDH_B-233_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01ce8abf3c8ccfa30e5f35ddb75f5e106aab1e67086156a1ededa1717b77 + +PrivateKey=KAS-ECC-CDH_B-233_C12 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4A4nrwTv4thv/tbs33GPwL +jgSe0iLnYAw84xzk6XqhQAM+AAQBRewNtf5iuSVHeSASJoryG6koqP2Y0KHe49j7 +JVkBCgMc6laxg+kwkwCKtwXMkJnltlxctEBzJLlv7pA= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAUXsDbX+YrklR3kgEiaK8hupKKj9mNCh +3uPY+yVZAQoDHOpWsYPpMJMAircFzJCZ5bZcXLRAcyS5b+6Q +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAOn7pxpkq7F3+kNsuXOcn2jAFVrciXE5 +wb89+ZpTAZrxExvkfeCIcINdoUlG/tcwNBefgJKY0BSbFt02 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C12 +PeerKey=KAS-ECC-CDH_B-233_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0025df759a20312361b9f6767efe8e8d69979e34639469a91fed9fce04f8 + +PrivateKey=KAS-ECC-CDH_B-233_C13 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AGnJte5koaR6wFJyo8O3u +R70Mc0ETq2ADJB7hk96hQAM+AAQAdCa/qIeP5ZsWqbjGORCh4vvGsHuplboEwxQC +ES4AlE6WFmdssvx/oPnhuHo1h0gkPoD7YiZChGRaak0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAHQmv6iHj+WbFqm4xjkQoeL7xrB7qZW6 +BMMUAhEuAJROlhZnbLL8f6D54bh6NYdIJD6A+2ImQoRkWmpN +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAR+ZSkFswZkLjGF2ej1o++pzr3tItlXk +dHD8zHkfAV3piINdaBLwvdcAeolZceGgb00izhMDyfVe/mR8 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C13 +PeerKey=KAS-ECC-CDH_B-233_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00437ab4a53756ff678a1f580c0fd1f33b23021d62060808453b4aabe627 + +PrivateKey=KAS-ECC-CDH_B-233_C14 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4A9FnHZyFpwSWeThmTM5ZM +H/+851rTDd4SZPXLhtGhQAM+AAQBtEqBiV0hBfoWpuCVJsCa5/bL284hCHD04z24 +tvQAseByxiomQpdfBsaHxkZ9opXvk/BNHFSUpiRoPIA= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAbRKgYldIQX6FqbglSbAmuf2y9vOIQhw +9OM9uLb0ALHgcsYqJkKXXwbGh8ZGfaKV75PwTRxUlKYkaDyA +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAQUTYgruDQR4hyQ46Zsj6kkAFT+TZusX +1hvfNaoZARNt+8hAG72g1nXKBqDP9r3UZ8CsmpeCkzAHKOfc +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C14 +PeerKey=KAS-ECC-CDH_B-233_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01ebd55823c57d1fc7b36cf1ed2051ead64db6d114014d3407186f50d957 + +PrivateKey=KAS-ECC-CDH_B-233_C15 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AZWpHuHcrCLHZB8gj+2xF +xl+fGPi0Pzph5sdGEeGhQAM+AAQBU8262S640g2gwceq1G0IM2y8l26Nb4OUfk9N +ZhYByXe5el4SBcpmVF3zpSa24yXgh8DgcIOf5+we54g= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAVPNutkuuNINoMHHqtRtCDNsvJdujW+D +lH5PTWYWAcl3uXpeEgXKZlRd86UmtuMl4IfA4HCDn+fsHueI +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEADXf/skRftcWdieiSj693Umj9F2RrRhA +HT1Emy/vAZMXVM5c9Vehwazt/l6aewuR+BZD2oWGpoZYhfBC +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C15 +PeerKey=KAS-ECC-CDH_B-233_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=006d07f6e08b11a060ccec43b07ca7d9eaf6c3ece06f4785519284bf6f0a + +PrivateKey=KAS-ECC-CDH_B-233_C16 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4A8U9exO+vhuQ/7OZfF/+R +sajWG+NBbu64hPTi0U6hQAM+AAQB2fjAHpwg9hUOx2IKdeOelvkke+zhN7A2W+xU +JUwAYAg3O54IeAUpTa2uAIlGZ/259rik0WKV5bnSGm0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAdn4wB6cIPYVDsdiCnXjnpb5JHvs4Tew +NlvsVCVMAGAINzueCHgFKU2trgCJRmf9ufa4pNFileW50hpt +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAEhFzmYbHq40wWmfG/443IfvKLiwp3cf +82bcIdhjAQlrGVSwbqpwc+2TmAGqKXTaHWDWbpfDHfD2h2+v +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C16 +PeerKey=KAS-ECC-CDH_B-233_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00aea594f092b4052f7564b2e5651bcf43ef7e336a064d6bfb1a89cf5e51 + +PrivateKey=KAS-ECC-CDH_B-233_C17 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AH6XL2IoUb2zPX3nfvHCG +j9m7TIEVl2yWJw/3vF6hQAM+AAQBTSdvQoHLUKJrKeyB/O2W0OkJmUsihUM4VSVt +WNsArEeSr2Kg3E/U7sOE+/P7uCyDR0hrwesTOLx/OrA= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAU0nb0KBy1CiaynsgfztltDpCZlLIoVD +OFUlbVjbAKxHkq9ioNxP1O7DhPvz+7gsg0dIa8HrEzi8fzqw +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAUc0GSFlyW+9t5TKseLR7xEeGiCnIF2w +GqgDoDKiAezfw5QLfQYYzWMVRBdR9mPfdNNWSS75NLS6KyrR +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C17 +PeerKey=KAS-ECC-CDH_B-233_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0099d6d076e14ccfee15ed7e7ef384bfee12deba8c9ae8f6cca3486a1494 + +PrivateKey=KAS-ECC-CDH_B-233_C18 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4A9YaE6hSmj++4zCayZ6E0 +GcYtcmG60U5TaKmBmhihQAM+AAQAmmWoU5QHD+DloQgWTrKJzD137QhI/VfzhOYs +qiAA5/VvLCe+T66yDidMJgTG3C2IWXAwrSFk+tA8uQQ= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAJplqFOUBw/g5aEIFk6yicw9d+0ISP1X +84TmLKogAOf1bywnvk+usg4nTCYExtwtiFlwMK0hZPrQPLkE +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAH4fMlHioKpt4fjfhrhe2dEdpetxNq3U +XqfSXIZ8ANligeB1benapV0u9lc7sv4t0Jtx2RGRpaBDuuDz +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C18 +PeerKey=KAS-ECC-CDH_B-233_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01b1e977c43afd203132c085b95db0e2046a4b6ac2c046ee9ad665050578 + +PrivateKey=KAS-ECC-CDH_B-233_C19 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4A7vskeJsytDbOOWIsEUw5 +ps0eWOyUQ8iHDl7i+AGhQAM+AAQBP7HKntcJuzhvugLMeGL9bGThCHvl9h6nM5Rs +FjQBy0CX5EpzBwDev+gUP7+byjo9bEaYWifNUEOyylo= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAT+xyp7XCbs4b7oCzHhi/Wxk4Qh75fYe +pzOUbBY0ActAl+RKcwcA3r/oFD+/m8o6PWxGmFonzVBDsspa +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAL4e51DycSsqyyDEXpc1fFDbO+iVsz+D +DHG8n089AV/sgQzbF5/NHOjk3BokmeQN6KSkmpQg8A5WEQz0 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C19 +PeerKey=KAS-ECC-CDH_B-233_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=000e4cb704355cba1b40cee3da102cb048519a91b4c789b3757cfdd933aa + +PrivateKey=KAS-ECC-CDH_B-233_C20 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AF1JNUGYWvSBcs5eLx146 +NHYjPkm23CBvlxFpdVehQAM+AAQBUKFzJ4Ree8edjs4Skw3Ct3ZUyqEIK1ewz44F +sawAFRx2gi2N9e/9jGlDOVtqjVOEMdQuhG6f+N5+ruY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAVChcyeEXnvHnY7OEpMNwrd2VMqhCCtX +sM+OBbGsABUcdoItjfXv/YxpQzlbao1ThDHULoRun/jefq7m +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAVwuLOC8cizqTLx8M1LL4NKLWwAuRNk3 +BYldeRr8AU9haYOtCOdFMVxHZ7CuIab9imKcJYznrvpMF6jg +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C20 +PeerKey=KAS-ECC-CDH_B-233_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00d8c13bc5e819c6101daef3f6fb5be6bccecf233c4b7fc65054e8e8d3bc + +PrivateKey=KAS-ECC-CDH_B-233_C21 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AprBdMKcD8ReagPioZLNM +oVxFPoKAihCV5DXpusuhQAM+AAQAk7MlIlH9nW2cgdeM8fE0zdVU1jwqHi8a+hTi +1OQAiusKirP/Xk+wI/fhkX8BCIkK8Rq8p9oCf62sw7Q= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAJOzJSJR/Z1tnIHXjPHxNM3VVNY8Kh4v +GvoU4tTkAIrrCoqz/15PsCP34ZF/AQiJCvEavKfaAn+trMO0 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEALr6m7qScl7vDEoK/L1CY+VfUVVkW1xY +qWvD6ellANGz0ONdYX4J4HjFcaX0HqIt/REtZ6lNjfu6Zump +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C21 +PeerKey=KAS-ECC-CDH_B-233_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0129af50fa085133771753f297a313bba0d2f5882e7634b7ef5adce760ff + +PrivateKey=KAS-ECC-CDH_B-233_C22 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AFo0JgJ659qzzETTrXrGv +lm4hK5tr5oz9IkAUJemhQAM+AAQBcQoF8CtVBXKVFrGsc9RfPPCPHFE00vc9ElcC +Q8kBhhGxDatQdYPyvhD9Qpb1N9SvCVdvlpefHq3+KRw= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAXEKBfArVQVylRaxrHPUXzzwjxxRNNL3 +PRJXAkPJAYYRsQ2rUHWD8r4Q/UKW9TfUrwlXb5aXnx6t/ikc +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAHmL9at2G7as/tDO8c1xs+9G8lBDI8r8 +QIFZLdb2AWJ3rrPhysASGwfZN4o6DLxlZ7SEI5KeNtyFXp0a +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C22 +PeerKey=KAS-ECC-CDH_B-233_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0077c4ea1095fadc4cb4190a3fd530c7d15325e5d79b8e8a2b708e2344cf + +PrivateKey=KAS-ECC-CDH_B-233_C23 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AOCT3HsMlW70DZC14LMZ5 +Th5Uqo+l8qMx7hP3hFChQAM+AAQBpONajDJxfyqqPu7xd4SOWA4P7WyAloaPasxO +HAkBNydgToHTqdk9JD/nni24pEIzSo6hhSufg8rhvD4= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAaTjWowycX8qqj7u8XeEjlgOD+1sgJaG +j2rMThwJATcnYE6B06nZPSQ/554tuKRCM0qOoYUrn4PK4bw+ +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAV9yPamjjC2lBiwX0Lg3Ui98aceT95wX ++2ll1EoDATKxd2CsLiu5+BPtd5DFzTqg04q2Ti4nLd9KTCwa +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C23 +PeerKey=KAS-ECC-CDH_B-233_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00d9eb3c79cf442595dad03ed4a38daf358b97d5dfc01cb61ff200a47958 + +PrivateKey=KAS-ECC-CDH_B-233_C24 +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AkK3Asgfa44FiLPkuBLzn +R5GA7G4XcWYvXDF5vZmhQAM+AAQBBq2/m7/bMINZin9tsukdLnwXT3BfwhZjG30F +7fIBkNhMpvRpX9vKQNJqdJmKBcPXYdvwiYG2RcDqI54= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAQatv5u/2zCDWYp/bbLpHS58F09wX8IW +Yxt9Be3yAZDYTKb0aV/bykDSanSZigXD12Hb8ImBtkXA6iOe +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-233_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAFG3C7i44jQbhoIdVLl0tpa9pEOst+pl +ll0n0qxwAMd4Tu+InEccnSaz4N4krStL+Lu6b+GPUaQSGIBY +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-233_C24 +PeerKey=KAS-ECC-CDH_B-233_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0124c19cffc0b9549bfa378a548e8ce11ee7fca28d2d898de49ae1f2ff61 + +PrivateKey=KAS-ECC-CDH_B-283_C0 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAvQ0VYQiRqLMjsBo6dbG +5BYPa6Tjtdgx2Twdqo/T1almDHuxoUwDSgAEBWHklVYwGBaYBNTI4kNbSv2F2jdt +kUtp05JG+OBhE6oy5kLSB4Gn9Z3n9C9fnWw0gfM/xd6zV8bs9MdY43DSQ13j2O5z +dwP0 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBWHklVYwGBaYBNTI4kNbSv2F2jdtkUtp +05JG+OBhE6oy5kLSB4Gn9Z3n9C9fnWw0gfM/xd6zV8bs9MdY43DSQ13j2O5zdwP0 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAlBOGheBnTnwEKSmmgVoKZQCtY+USjhM +fRpiyck+pNH/MA4TAmUTL3tMZLdLkXntDy4hH0Mo1iVAUCL1VBcNqTK4D998GqsS +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C0 +PeerKey=KAS-ECC-CDH_B-283_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=065194e26090e74047ee75f13f9769d20e1b52189650011e283daa090732cc53755dc366 + +PrivateKey=KAS-ECC-CDH_B-283_C1 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkArlB5pLgqYTF/6iDyfn4 +JWpDqx/RrZeCpC5CmpTpEOSCuRwjoUwDSgAEB7kK8Ra3N9kAjkwY9q1TnSnuF5AA +ih2vLoVvpnLspKr8lspjBqr3jQ8gZXt3uXzKMOq3m2eaOqqQsQkH+XnN6YjOcYSR +AQwq +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEB7kK8Ra3N9kAjkwY9q1TnSnuF5AAih2v +LoVvpnLspKr8lspjBqr3jQ8gZXt3uXzKMOq3m2eaOqqQsQkH+XnN6YjOcYSRAQwq +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAWI6lnXoxANm4mEx5Hsa8GyLM6z16S9U +ZEgW3LhEOCyUTMIfAp0oD01MDF/XD34kCVlQEovqPK48pG9qX3C3Of4amQJogE44 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C1 +PeerKey=KAS-ECC-CDH_B-283_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=075c535cc70de19c92d7314afa2f33200903431f6990ad40ac31dadaf4e492a799b75b05 + +PrivateKey=KAS-ECC-CDH_B-283_C2 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAofeFyulDzJ7/H1ajAFW +0lofC59x04mFLy47WHQGy3TvO9BBoUwDSgAEAKA0kHZfyQwjVTwOK3nfojK1GnPy +FVTl6xjaTJlNkl+O0rvvAwT/1BxbCrKnC4IYjo8VeNarfTzjzjT6RdzDIgfxY+kc +XWgU +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAKA0kHZfyQwjVTwOK3nfojK1GnPyFVTl +6xjaTJlNkl+O0rvvAwT/1BxbCrKnC4IYjo8VeNarfTzjzjT6RdzDIgfxY+kcXWgU +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEB7g2lyhDL3Uo0+7IpniOac0uuIFixHUS +dC7g8CfMtBV6KKIjBZhut/EJqh+FVuuivciOSRO2Xv+5ROrmOWNsun4B3DcYvLNh +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C2 +PeerKey=KAS-ECC-CDH_B-283_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=02956f63d48a49a330e2068955cc2886dbfd5bf72a81b10ed83f2d758dd315eca172927d + +PrivateKey=KAS-ECC-CDH_B-283_C3 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAVO7uKPOShuZlg9WGGq1 +Agf1iPMMlL7vKECEI7pE/IdfrzjYoUwDSgAEBPLCRUiZYjrxO2WCCroUVzhAf3cY +arr6UtJLNb/fWAj/6uB2ARH0SEYK0kMKrseI3ikVSEdaHlg22sUg2OSTyfYBJ15w +6inS +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBPLCRUiZYjrxO2WCCroUVzhAf3cYarr6 +UtJLNb/fWAj/6uB2ARH0SEYK0kMKrseI3ikVSEdaHlg22sUg2OSTyfYBJ15w6inS +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBzsJKipNfJoXu4jnW0Cp5OQ7mYE89haC +1JuSkFwt1gZ5Cu05BWatRSotjvCjJ86OKFYUb+yvCeRDHMwEJWoHf2BwHORHa22s +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C3 +PeerKey=KAS-ECC-CDH_B-283_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=068a3f6938c44b797524377508585842c6a7f1af5ffe9131dd3ff786ae56e1739345d3d7 + +PrivateKey=KAS-ECC-CDH_B-283_C4 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAyrA3LmqOXJAH59YhF7X +Zdo2t9b3c1V3m/skOYJ/81VqdXgcoUwDSgAEBxWchrnGrbIWDCjYYRj4RWSpDBSe +3igylGNnekyHcp+JfC+YAIp4Fn4WkGJZkrDvwuDvb21h6Bg3yOzf2rUdFTQON+fY +0FEg +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBxWchrnGrbIWDCjYYRj4RWSpDBSe3igy +lGNnekyHcp+JfC+YAIp4Fn4WkGJZkrDvwuDvb21h6Bg3yOzf2rUdFTQON+fY0FEg +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBFXoe8Iwzn/FhjEt0gfFKeR+PHTMDOXQ +c/v0sclX+Mu9kRO8Ah/79i+yUx2znvLQvc4NnBQckunNymJ8qjm1k/xKAhDo7kgf +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C4 +PeerKey=KAS-ECC-CDH_B-283_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=019b48d5eeaeb05b58801ae8f345ad9bacb91daac885e506949b849ebc67bcbfa308aab7 + +PrivateKey=KAS-ECC-CDH_B-283_C5 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAmib8hR10y/nGnNV79mn +eHyqlUXr64U+UYTOQhUkKQUfQMvEoUwDSgAEANflvPrFePzXKBgGRRdtfgiLaNMw +ognxi5aGYv7RY0KzkhogBvdQs7XpjgCZtpWWWqHRZHXRB0+SMRJ+1wPiaW1LVq/e +u86q +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEANflvPrFePzXKBgGRRdtfgiLaNMwognx +i5aGYv7RY0KzkhogBvdQs7XpjgCZtpWWWqHRZHXRB0+SMRJ+1wPiaW1LVq/eu86q +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBlLMyJIfQ5r0KiMBI2tYQ6QvH9mez+G0 +E0w94BTNx2A1NHzAAzQdgHSfGl7J96xiUjhP79OLbyu83Bj+vobBYPXnjAA/Bm4G +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C5 +PeerKey=KAS-ECC-CDH_B-283_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=061b3bef1766460f6296ed47d39ebf5a710d202d2b7e7cac0f0d3b235405eece99aa30d7 + +PrivateKey=KAS-ECC-CDH_B-283_C6 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAQUgQpiN3fRw0KLjb/9b +k+xp9NJAqON8BkzE1ZlGe6J688nxoUwDSgAEAMfJ/3fgGLiAG934hnAlVrEmptmh +gxofYPNYcuUkwTTVU+SkADXXZ7WLSZ2ftUViw4MEEa9Z5wiKSjMz1dx/5bD38eHF +46wr +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAMfJ/3fgGLiAG934hnAlVrEmptmhgxof +YPNYcuUkwTTVU+SkADXXZ7WLSZ2ftUViw4MEEa9Z5wiKSjMz1dx/5bD38eHF46wr +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBiMxuTOvtDhPo6TSJFUa6BILxV/H6nPy +vnSeIXr8ThunnnYPAr9RxE+DYcMFTK1kD5JEb+OCCwY89LsiyhfAonT9RvUFBPvs +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C6 +PeerKey=KAS-ECC-CDH_B-283_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=055d579458860a3dd92ac6570847632f04460755c22a4c432cf4dde9611d2ce1608ca185 + +PrivateKey=KAS-ECC-CDH_B-283_C7 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkA7ua1fpVLTjRp3y1U8Yx +4tCUDbawTwvXAR6nNb5Q0EXampwdoUwDSgAEBocHGAXCWn0LFzn3z2gbLylcT52J +NzUdIdHUP2NOmlcQW/EnBjO6IYcuN5xQ5Eg3KxwOZehdB+3XEtfcBvppopn2A33s +5mDc +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBocHGAXCWn0LFzn3z2gbLylcT52JNzUd +IdHUP2NOmlcQW/EnBjO6IYcuN5xQ5Eg3KxwOZehdB+3XEtfcBvppopn2A33s5mDc +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAh6C1q9tMhGYF2/4mGwrx4agCBMmzIXw +JrcbMqwGwLrmtMuiAelzP6nSmWEmlCDbJO3A1a4oXXjJrhSzixAZ8TZS8ZAnfcR/ +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C7 +PeerKey=KAS-ECC-CDH_B-283_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=054fa7c6c84fb89e5892d9194540860ea31ae2b6e37a86971344230ea512a3f6c0569216 + +PrivateKey=KAS-ECC-CDH_B-283_C8 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkATOqRF3IDX1aCX0doR1R +DmVxp4O0+yNUAnF9aLqP0UVOazGfoUwDSgAEAtJuRqbtn88dL4nGPYDgFy3ttPWu +3f8JKDaqyFmQlIhVV+rZB9ZxOXRwHBYK7eyPlOZEa/fTx5DL/4cCzHhAp4GOW2Ji +cfcj +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAtJuRqbtn88dL4nGPYDgFy3ttPWu3f8J +KDaqyFmQlIhVV+rZB9ZxOXRwHBYK7eyPlOZEa/fTx5DL/4cCzHhAp4GOW2Jicfcj +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBF1i0B217xc9DP8xWpKpoQXRrXhP+bCO +ch81gOBiZf9TihlLBrdkwf92mFSWuURRt1bE8w/fxjjYmQMSu+zL+9c+jFqFWtt1 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C8 +PeerKey=KAS-ECC-CDH_B-283_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0353ff03afda3772984aadc4000e1275656607154b06c3a59c664945fa6fde1c255ffa86 + +PrivateKey=KAS-ECC-CDH_B-283_C9 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAEZh8QeptXAEXduwc4q2 +mxwXqazBHaXax/2GSz38NqJSgtaqoUwDSgAEBhurvv7lIRxJF1Bs5fn549HlKyUG +84ygluG2U8qftp9GEFcCABS/0u8ii1oD4mIwweiXrQgacEATzuVRZspG3jlfxS9d +ISA6 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBhurvv7lIRxJF1Bs5fn549HlKyUG84yg +luG2U8qftp9GEFcCABS/0u8ii1oD4mIwweiXrQgacEATzuVRZspG3jlfxS9dISA6 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBKVhtRhK3tnHvZho8wQ7Xi3lGQj5wD1e +awijCIvMUO4yA+JjBYFbV5/13sb6yXe6cIizM79MAjHaAhh07gDXH+JdP01QpXrD +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C9 +PeerKey=KAS-ECC-CDH_B-283_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=050795ba093d2e02398c358951f20c9e3b4f60628a96a4d0c46cb8fc0005e5331b38a09a + +PrivateKey=KAS-ECC-CDH_B-283_C10 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkADa9IfhKudtvS93JRjXx +n4CssoE9pTmeB3eDLC/r3HGGKr4zoUwDSgAEBo7jJFdU1R33eABGrzmstAfEmYxi +C/+U+zdPr0tJgAbuoM+IA2akSfCez7rsxJ2IAwf1ckbBHFvqAK9CcYZ3qN7xXlkm +2hgi +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBo7jJFdU1R33eABGrzmstAfEmYxiC/+U ++zdPr0tJgAbuoM+IA2akSfCez7rsxJ2IAwf1ckbBHFvqAK9CcYZ3qN7xXlkm2hgi +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAdfXU2zYOD4cCxuKrgK6qf0sTmiyGAjB +dU0LFRNhFX+BJFkwBzA02kFnl9qVo4Nu7yex+icfWaQ0hI6YC60v3VP/0eNm/2kX +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C10 +PeerKey=KAS-ECC-CDH_B-283_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=02ab08d63cdb4be2502558e67eab27570f2d029e7f981d153b973080585d01e42f7187d9 + +PrivateKey=KAS-ECC-CDH_B-283_C11 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAWWXrm5J550GkDSXKmNS +Wjw+LSwlO54d0/N4FoEs9UrWXFRqoUwDSgAEBQ6gc1ItvlFAj4Xwpghr1Mjv5XL4 +Cq2t1+cOu0tyi/2/1PG8B9pSABfHrSkWonGbhViVj3fHEtNSz/nArZn7yYoOBl63 +rH/r +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBQ6gc1ItvlFAj4Xwpghr1Mjv5XL4Cq2t +1+cOu0tyi/2/1PG8B9pSABfHrSkWonGbhViVj3fHEtNSz/nArZn7yYoOBl63rH/r +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAgQvWj/l49MzW7e8253L2HFu0Y1/wv9C +l7wf63zKMQAi4iE9B767bA4EbVr9v6h+qYyn9V6c27BV0MxUm0RY1pmL27NFF3OI +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C11 +PeerKey=KAS-ECC-CDH_B-283_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0599757e3ffeb484b32d3b47828b6823d46786d35477082ceacf3a5a11552394fe58f53b + +PrivateKey=KAS-ECC-CDH_B-283_C12 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAV6oVnx7grSD+jZejmgc +CmNfVjocgUcLTf5E8ZT6ket4QhgeoUwDSgAEB6/isitU/olcJCwgwFSYn6gE5ZGX +DdqKfOEJ1r0xttqo8vx0BgczvVpOqbXqcJCs/ukYEGt/JScvP3yzbto4us0hN1YQ +zeko +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEB6/isitU/olcJCwgwFSYn6gE5ZGXDdqK +fOEJ1r0xttqo8vx0BgczvVpOqbXqcJCs/ukYEGt/JScvP3yzbto4us0hN1YQzeko +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBnr994j49IMcPH12BNB6W9xZ2kLZMnMf +r16vB1MoCWaraTeQABs50dhytl4xJRwfWE5P4+111TrZDoNv6QyNuU/nfO8LynIE +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C12 +PeerKey=KAS-ECC-CDH_B-283_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=005e331af55e96153d8a7b906a4a19016a26381977b49f80b9d70db099053c6a3b8e80d5 + +PrivateKey=KAS-ECC-CDH_B-283_C13 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkACkR2TjZUIrsy5h34SfR +sUYaza7QNfIOD3RMd08ccnA7XEtJoUwDSgAEA4a/3+YDc74RS0F8Tc60QyI/3mfA +/vKe0PhntaFfXqDMtNzKAvrDjshJTPdXYjPsgoLeOEtn8MqASAhCAQOdGUyL2k9u +Cv8+ +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEA4a/3+YDc74RS0F8Tc60QyI/3mfA/vKe +0PhntaFfXqDMtNzKAvrDjshJTPdXYjPsgoLeOEtn8MqASAhCAQOdGUyL2k9uCv8+ +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAYhmpPovfCU05WOikd6HGoswUqZ09dvC +O53qDozv2garwyyPBY3Ezxv5hdG1ZpcIR8umuKT0DH5ipYCLByC7uM3ztFMeOAvn +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C13 +PeerKey=KAS-ECC-CDH_B-283_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=07e132ea71a16c7cc261b9d6ff6fc52cc490da616b07d92f9e591fc1e630d3442572338f + +PrivateKey=KAS-ECC-CDH_B-283_C14 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAWYvVUhWwCCKMbGVFI+C +jgtckqTqTAMySL6/lXtYa0Ce1ZhQoUwDSgAEBwVSZMPeOmItJv561wC96gRdSzzn +GPTmrkTPN2w6lqJlCzIhAPRcwROGaK3IFQ03wHK7QkVmDBh4VoPHsXqh+4WRumza +I2V6 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBwVSZMPeOmItJv561wC96gRdSzznGPTm +rkTPN2w6lqJlCzIhAPRcwROGaK3IFQ03wHK7QkVmDBh4VoPHsXqh+4WRumzaI2V6 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAAVx177wVgiRcvE0I6WFq5efS49351LA +QsDGUmO0dpgeXzFXBEvKaT6dOxp/pq1C2382saZXEtCe87txXiZAoYL0NmIGhsCk +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C14 +PeerKey=KAS-ECC-CDH_B-283_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=010f26817098ce1bbd6743784d6fb65e60699c14933a2c8d854027aa58b58db9e66a53a7 + +PrivateKey=KAS-ECC-CDH_B-283_C15 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkASwBAKmWPuF9es9N344C +2K5187mRFPU2avtKAK3po8DuOaiHoUwDSgAEB3lPoZxrENOZ4PUtNvSDx4UYSOYr +rPlbWvUeygmtRF7hnvNNBhQNLuFs0KbLGWBQmnzMZkvpdkSpWuFvShc9moZwFfCD +fwVg +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEB3lPoZxrENOZ4PUtNvSDx4UYSOYrrPlb +WvUeygmtRF7hnvNNBhQNLuFs0KbLGWBQmnzMZkvpdkSpWuFvShc9moZwFfCDfwVg +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAW60u7PDhuD0L7A3vuR4xMDb++Vcxo4z +/bApueXnJK/0/Yv2AlFDL4RWikSXHoarcV04eeYU4Qclc174+2ZS0HnHkI8RvR8B +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C15 +PeerKey=KAS-ECC-CDH_B-283_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00bdd8ccd1b40c5bc2efc1c105999350fefaf784710914ff639582f1277678699491140c + +PrivateKey=KAS-ECC-CDH_B-283_C16 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkA0XCdrBezp58hoEfjIr0 +iyLbQdQGYnUAlhG4gNfSzvMpxQ6CoUwDSgAEAHr//PoxwRCqs7s5RTCkHEFq9Wa/ +uo8Vn5hEN+eZ3dqvjN/SBl+zxoRGp0BourfjargOmEcH45pKFD9aRtZGNC+fEvJq +Mikb +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAHr//PoxwRCqs7s5RTCkHEFq9Wa/uo8V +n5hEN+eZ3dqvjN/SBl+zxoRGp0BourfjargOmEcH45pKFD9aRtZGNC+fEvJqMikb +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAkF8ZWlNhQx8hm9+EWOaX4cYypqrs5L6 +hhDi1dfdozdaYH+bBRM5ONyZFE0W6nUlw/5OMuMg7QdbllJ+E7KpnJ8nrenvnty2 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C16 +PeerKey=KAS-ECC-CDH_B-283_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=014a83e747c90aec6101c0a752d92eef7475b00051ecad3d7c2e50cf4eba1ef3c80b8c94 + +PrivateKey=KAS-ECC-CDH_B-283_C17 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkA6/Vr/o0a1JZaX2SF5Uq +/NA93+wEYxvZlcEKwlg7DKjSRh9doUwDSgAEBrTCw2FbJmVD3hiciWz/d7VVfHgs +IVlhrHMkGF/JqBCY8uvqBH/vGWBzmuCu45o//bguiQ1CNvwi2tOV1JC8Ol7qWOjN +A+27 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBrTCw2FbJmVD3hiciWz/d7VVfHgsIVlh +rHMkGF/JqBCY8uvqBH/vGWBzmuCu45o//bguiQ1CNvwi2tOV1JC8Ol7qWOjNA+27 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAMXWFJ+HF0ujf0wcb2f2kFq7MZ9Sa3qh +vh3SBd+TCrHJG7H4AMLiHhIGzUu1tiKr6Xyj8lLLxo0FSnf466utWT+xhjMGkov3 +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C17 +PeerKey=KAS-ECC-CDH_B-283_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00afd29e352779a39021536ea50c24fa264c599f8f8fe8f2ccf0615a6547a064d7c1a150 + +PrivateKey=KAS-ECC-CDH_B-283_C18 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkA9V3H4SFw7i+YqVvOTZR +PjtjGlYalCYT35UUD0cyFN9hfExOoUwDSgAEBZBsxFKbIgIo77sFRb9V7APIb4fi +9OOjy/QE4HtzpbGl9SjNAWWI5IDEhWzS7pqvHjAoEvvAsz9SfCm3fOD0h46gidAl +pEDA +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBZBsxFKbIgIo77sFRb9V7APIb4fi9OOj +y/QE4HtzpbGl9SjNAWWI5IDEhWzS7pqvHjAoEvvAsz9SfCm3fOD0h46gidAlpEDA +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAXMETlvmOZfXkl5DG78ATPDwuoWqKVo0 +Ho9YV6EgvonXdlPpBzfMBJaQ+XCCSnsMICJDloLJ2C9PI+SOXwf+qWJnyjvU1zCl +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C18 +PeerKey=KAS-ECC-CDH_B-283_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0477990f17d65589289c28e54a56a83bc05ef4ea6863c5ebe840925c9fbef64ccd6e69a4 + +PrivateKey=KAS-ECC-CDH_B-283_C19 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAOLAxgL7EyOZ7p8xAINl +6iLMEmD3n+OuYQibim+kVZyska7IoUwDSgAEBubjGMDEwLZh39PnIgkOzTL9yco9 +Fo2ccXTB1Arbss5nLZJSBAvcHbx7Fj98lVH0faqClKwtxP4NRyxOLyz+/JXVI/9Z +4OiA +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBubjGMDEwLZh39PnIgkOzTL9yco9Fo2c +cXTB1Arbss5nLZJSBAvcHbx7Fj98lVH0faqClKwtxP4NRyxOLyz+/JXVI/9Z4OiA +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBoWH5p3t30tVrFHyoX3Yv9b5TnIQAyFC +Fb+ySySCgedaPGWUBE7unHArxMHiEMfMIUUkWSVorA+f1n1uoCtNw++0LPuyJj2s +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C19 +PeerKey=KAS-ECC-CDH_B-283_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=067a661346fe052ca27f3f03e75bbdfc8fe6d0d85c62c8f79525252aa241ae9de97d56c3 + +PrivateKey=KAS-ECC-CDH_B-283_C20 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAy1XP964Wk2iKXiWYxQU +UY1LoH3E3XL3MXKIkNC0TTbyMJwOoUwDSgAEBvb/6gqHvZ7rU5xIo/y/OIFZhiJZ +x/eEDmSAn77bAag4EsDGB8eVuPKEf8OfpWwt4ebLv0lFCHyy47kZ3HdrTMHIPksc +ebi6 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBvb/6gqHvZ7rU5xIo/y/OIFZhiJZx/eE +DmSAn77bAag4EsDGB8eVuPKEf8OfpWwt4ebLv0lFCHyy47kZ3HdrTMHIPkscebi6 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEA/EibYAsV1+HGiE7gVD3gYu9YlZjtz5y +CnN/BxiWCG2gsUzZB9HLDOGcmKY6r3sxTx9XIOMohwUzhKwPXrabbEcajj09Fudv +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C20 +PeerKey=KAS-ECC-CDH_B-283_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=06476b0620eef165941a4507e6d798d6f150ab29333c0552281b629170d3291b2f9b3f41 + +PrivateKey=KAS-ECC-CDH_B-283_C21 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAKaqy13T6DWBT0UtggfR +WlM2OPcOlPh8Bhlu/4g41I7tLiZ0oUwDSgAEAt0Ak6jUGYMfNLrGxgpXDFHQjmmb +GByWS2Z9DRftcqSRGazZAakZdr5dXgN/IjUNZ6t7+rUbvE+mAm00fSj7RAe8zEDd +EKAO +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAt0Ak6jUGYMfNLrGxgpXDFHQjmmbGByW +S2Z9DRftcqSRGazZAakZdr5dXgN/IjUNZ6t7+rUbvE+mAm00fSj7RAe8zEDdEKAO +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAqkR5+bS/HcNHqvH33AbsRkISmhZANIt +UtWY/h0o/IkbMbSHAbjcZxPKRT6RsuxOTR+DSwjuvH6IhsOkWOcJJSQsSyK/CyBT +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C21 +PeerKey=KAS-ECC-CDH_B-283_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0746719f2ad08f8a8d6d6fbf15723f336285ce75d3a2fcbd5a0c54c577517a22bc264161 + +PrivateKey=KAS-ECC-CDH_B-283_C22 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkABEvsqtWRDdlZ2oeQbPL +kesaZ5DpZO6QDPySlWNrpMb6h6rSoUwDSgAEA/UH2ZzCSY4sf1T7PJwDLzglSOLj +Fo+hQBJaUmBIVo87s+WhBScN9378fWxV+SWbyCJzyba982duE8NgGxswIrli3hEp +yzsU +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEA/UH2ZzCSY4sf1T7PJwDLzglSOLjFo+h +QBJaUmBIVo87s+WhBScN9378fWxV+SWbyCJzyba982duE8NgGxswIrli3hEpyzsU +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEB1QapR1zAuK7VXwn7BXX+cOuO3bsL4bL +lejerX+ga1eDl/HxAX6iL2tUdPD18PTq1UFyBkBRU40+IypTDfyl8qDcZ3Rsi7Ha +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C22 +PeerKey=KAS-ECC-CDH_B-283_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=03cda4b5f44b5d3dc248310f994419fbcbd665115d1876046652251ad4aeeb1dcf184288 + +PrivateKey=KAS-ECC-CDH_B-283_C23 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkA+TxxPMOKo1v1Vn3/ogg +6IaUneh8AdjrZMe0DxVIy2F6kmAzoUwDSgAEBeP8VuwWKIXBKR5K6cGcjrK7VZ63 +7NWBdUm1ouo6ZtlRiAqmBMAE8q5NtPdItDe8EV4G6iAXqHeYKY3WAEYW/P/cx+wt +/W25 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBeP8VuwWKIXBKR5K6cGcjrK7VZ637NWB +dUm1ouo6ZtlRiAqmBMAE8q5NtPdItDe8EV4G6iAXqHeYKY3WAEYW/P/cx+wt/W25 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAh+xTlLNQkOlIPYwIpsd1pYcSb2W9D+p +yuN63YTaeuctwweOAN1ji/kFP61qpP8tMwuKSiC/4wIPQLlpIwLQsKPC2HeFbsRq +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C23 +PeerKey=KAS-ECC-CDH_B-283_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=015c892f95768a96ab5a4f9523b7fd466e101f63b88ad8f1fecb3027cd70aa00735dcc90 + +PrivateKey=KAS-ECC-CDH_B-283_C24 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAK5+s9QDVPn4/tGPIWLe +44FWyuBTW1U3DaNjjwFmiuz5cIvmoUwDSgAEBh6IWONo2ckX8SnZMt3EzKUh/0Gf +HXQjDoqlsbPpzmf0HEtMArDX+9xjajvDS73SqJKRtWew+yrzI4OGi9QNS6TKyYgM +JUC4 +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBh6IWONo2ckX8SnZMt3EzKUh/0GfHXQj +DoqlsbPpzmf0HEtMArDX+9xjajvDS73SqJKRtWew+yrzI4OGi9QNS6TKyYgMJUC4 +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-283_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEANCO04VqvvfUpiJDyS1uZwzrOvMjV/25 +05wZF1oQ0curNs54BdufrX/Ir+eci5zkjmL/oNRrgFqeWCHidhwlwO26krEgsGPy +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-283_C24 +PeerKey=KAS-ECC-CDH_B-283_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01adf5a96358e18d69fd383b4dc7b20dd646b68a5c9f1417bcf426240ca22b8f32bdf1a4 + +PrivateKey=KAS-ECC-CDH_B-409_C0 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQArOkhA//iYqwXrUKk +bUNm9MtMWA7/OrHd5r3f27c3SBHVKx+pkyC0r11OkgjBTrjvqJFsoWwDagAEAE68 +TUrPm0BNq8OvPoy+qLiLMpmdPst/NnsS6zpigLhAA44iaBY3p9FkNuAU9pYWq/cu +RQCeJBCVQcgCQhfpqyyWP6njc2QAlabCWibu+sWOQ0LAyFRIsnCVkqEkAv4raKeT +xVjOjNY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAE68TUrPm0BNq8OvPoy+qLiLMpmdPst/ +NnsS6zpigLhAA44iaBY3p9FkNuAU9pYWq/cuRQCeJBCVQcgCQhfpqyyWP6njc2QA +labCWibu+sWOQ0LAyFRIsnCVkqEkAv4raKeTxVjOjNY= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAUaYmlApe+Nz3WZcRUVaKuTCIdpc1CQA +e9l/no6Eb5Z0Dz+ljDyUEpZxzdTX6mUKKq3p1wG0K//ahDlGoUrWCA+VuPxrfhc1 +KNCO02/mQKr4WqAPte3VkFo4s8eWG3cit3uNy0S7JfU= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C0 +PeerKey=KAS-ECC-CDH_B-409_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01d48a586be9285fa38dd3e70b0330b0ffebd327ceefef88fdc1521ef2fd61cbc9124e03b0c926e70fa56acb3edb54c3c48fab2b + +PrivateKey=KAS-ECC-CDH_B-409_C1 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAP/IvfXwEmYmkPg6j +9dYXmBWcF4qnktedH/6/+Ntw7h/eBApLXx7TP7P/I8ROfGshsGI7oWwDagAEAdXJ +Jg5z6jbk3qqkuPRUH2eAZraQdxqG8NrcWA/biVmB5t0C3SZO2fnBdjvVSmBSotPb +pwEacGgmNl7OKOOLM2ILygFtLZM4UY39aGg3BHbay0HjuUdGV2nr6BtiBzFnNXb3 +dFHQ/hQ= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAdXJJg5z6jbk3qqkuPRUH2eAZraQdxqG +8NrcWA/biVmB5t0C3SZO2fnBdjvVSmBSotPbpwEacGgmNl7OKOOLM2ILygFtLZM4 +UY39aGg3BHbay0HjuUdGV2nr6BtiBzFnNXb3dFHQ/hQ= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAX6fAbHW5XAjKDMNIyod0/LFksxAn2yu +8HCEQIN/NZdRDxEZVKpR5WRsz0fv8fB6T4rhywA3FPbqH9FDznUeLYW69UxVI5dh +CO1IL9auEDdDExynFgJrFqHkliMfmRzcj220R/X5X44= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C1 +PeerKey=KAS-ECC-CDH_B-409_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01856c92b46d671d8a7f6cc468efb60a61093d006c95bb931c1fccc336d4a8490fe17fe163c972bac39fe728f24534a0c34d2d21 + +PrivateKey=KAS-ECC-CDH_B-409_C2 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAlt4sOSnECF+cwdN3 +jC2/Pbfw9357p7vE5AjH1l4si4iwdV8WC621JOdpfFDmDI2Z5W2koWwDagAEAZxH +15kUyL2udU7F7B6ByP8ympOOaXHu48lFxOv0ieFLFeYTVhbImMgLewa4r2cGHHaa +tQAAiAIrT7DnVOxPq4z0/GNiVUJnVfqZtWgFwV6sBDJRVdzL+kFF4WHEDxib26o9 +0+DD1sk= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAZxH15kUyL2udU7F7B6ByP8ympOOaXHu +48lFxOv0ieFLFeYTVhbImMgLewa4r2cGHHaatQAAiAIrT7DnVOxPq4z0/GNiVUJn +VfqZtWgFwV6sBDJRVdzL+kFF4WHEDxib26o90+DD1sk= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAYPuNVqTzROv8XVqCOWOIZWoJimNQ/bQ +e7HDgrTlaNAICTkmAAnGr8vtDyMlLgHW0UxtjwGyMJs4GcJFSkitJTrJe848ebUf +UO1oA88FRkt0paHeIhE+I8AYxc7ZGG3bmBxini6ds+4= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C2 +PeerKey=KAS-ECC-CDH_B-409_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01972e225e08b47512e92c0da9a1bdddb1802be402222cac5788b322e101feeb06b66b2fe726c1cd8aec92e02f37d15f4c97e64d + +PrivateKey=KAS-ECC-CDH_B-409_C3 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAq9XWHN4xGAMBwmnV +KvhWuqObifXvRTZ/VRkhDHHXezGNBT7AwvSb9G3gXKvyPH0r19I/oWwDagAEAafv +PRfDAehmG6ZsHN7oKptE1xaQnjZjtCPcBu9r5PYWzReTIc56Vy2kvKLom3aO3IRZ +swDfdDhJogvDAmBitCDTlC8Y4tbFMH5uGVXjOwnVlR3FmzGisdWMIz4siW4tnMqo +7rjo8RM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAafvPRfDAehmG6ZsHN7oKptE1xaQnjZj +tCPcBu9r5PYWzReTIc56Vy2kvKLom3aO3IRZswDfdDhJogvDAmBitCDTlC8Y4tbF +MH5uGVXjOwnVlR3FmzGisdWMIz4siW4tnMqo7rjo8RM= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAOhd6dY+NOXHu6b/mxb0yE2V8R3+khB7 +H77K6Yzm7/PblthpAL/SLNQj284eVya+jll5MwC3FBdx98gW1V7IxTgi0uehkvpU +oX5bmbLZCWG1Spn+1Tq6S9oaQHStPSP5yREgV5W1RQs= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C3 +PeerKey=KAS-ECC-CDH_B-409_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00b6661a866abbf1843dea8f220e360fe7cd7d9e85c316138fd2532a57d7d2a6bfe6e5518019c603a2d0e338ac6a8690093c2883 + +PrivateKey=KAS-ECC-CDH_B-409_C4 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQA8yPI7kM8m6FdNwgG +mDSsxNk3vlAX4dGC7HZGarooLHO14+lv4QYUNkFALHLGJIS6HxLyoWwDagAEALdP +UlIBGfwIU2zqWEIg3psGJAHmT/Y1kwXC5rDASpX3e69T4jwyau52IRSVwwssFQuS +dQFUBYji/VaI0bNXY5CMH4I+7sqJQvYhbOBM72btaZHfaiL7dEEbE9BlE6ZbZOYo +Fe4CBpc= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEALdPUlIBGfwIU2zqWEIg3psGJAHmT/Y1 +kwXC5rDASpX3e69T4jwyau52IRSVwwssFQuSdQFUBYji/VaI0bNXY5CMH4I+7sqJ +QvYhbOBM72btaZHfaiL7dEEbE9BlE6ZbZOYoFe4CBpc= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAMqHCsvk6zrmXt2V1pROsJDg5VBxK+Ox +Np5HMgP1Kxg4ZU96Q0K9gwlwT+1pM66dFizNfQF5bMKGvz1TrWNpdzdPg1bkVzC3 +qkOAX7UoAfc74+mzKAiYSq677Xvl455RM1sN/zR4KUg= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C4 +PeerKey=KAS-ECC-CDH_B-409_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=010889037c707d90b833d03256ff2e8a5ffce16fb3613486221494a4fee82e74625a93d966c2028d0930115494f9456cec4d2b6d + +PrivateKey=KAS-ECC-CDH_B-409_C5 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAEz2iulSzYkTIBC8O +LaNxjlbb0oSO9Ce92yQXf2JEdbU0AK/csYh56P5rRgmk97vCFSsToWwDagAEAOOi +9OY8+8HuhEdFqz4eW+VzIEYJrs5eKLj7iriuBomEZ6lae1nAiYpBSr/ycDzLzcCS +CQENc8Q7YwFwOVEErK1sGlY9MpZjIzKhSB3cLDGDa9Gj7hpzZNf1uClduVo3RbS7 +vrgJW8I= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAOOi9OY8+8HuhEdFqz4eW+VzIEYJrs5e +KLj7iriuBomEZ6lae1nAiYpBSr/ycDzLzcCSCQENc8Q7YwFwOVEErK1sGlY9MpZj +IzKhSB3cLDGDa9Gj7hpzZNf1uClduVo3RbS7vrgJW8I= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAH62Hf3fw8DQg/4iE5Z5hjgdnjDmhK/f +K6yPGjYujG1jWN+VkwYAQn38HrFBGP0SObZ7aQFbqH+YEUzsiyy0W7o9zwBrKH4H +477x2ifOCNqeT0i9JB9ZofnJPIN4hHFXUPQIX5E/T3o= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C5 +PeerKey=KAS-ECC-CDH_B-409_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=010a8aafbb243fc9466bf381eae173c01be95d88a9c131b07ed54d2f117cd3af4019ffb196ebe8290b1269622f9df26763ffa211 + +PrivateKey=KAS-ECC-CDH_B-409_C6 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQA33VUwBMv1OSiuSF4 +dfmSSlXKsxm3anwXnPAiKTdXmZbPlJILr9RT5S9dL8SAATKfvXjEoWwDagAEAWCF +HP+UfOcqEYqrTa1M4sPOm8Mwzh0G761/Yw5Fu883CX2UBR2dMQq/+o2W7SKoR8vm +kwB5o93eY2vGKvQebsDgc/5kYuOK1Lnjo27MgROixjlM7SGr3I7Flp5Y4AnqE9vp +KalnCco= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAWCFHP+UfOcqEYqrTa1M4sPOm8Mwzh0G +761/Yw5Fu883CX2UBR2dMQq/+o2W7SKoR8vmkwB5o93eY2vGKvQebsDgc/5kYuOK +1Lnjo27MgROixjlM7SGr3I7Flp5Y4AnqE9vpKalnCco= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAILxSOw00dCLJueeN3LhLWWVmLc7b/8L +qxhF6aW1BxRJ7ydZ/tY6qAYkuDprLp1zm4P22wEJzqBIpyC6dJ/FIsha9f54N1HD +n+jQUVug8NPc0Z8Ywi2jkJ8C14c1qhGy/roPjTMMVwM= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C6 +PeerKey=KAS-ECC-CDH_B-409_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01e17b8844c4c757553a628d6f4c48f3a337ed2bbb6e4047dbfcfbfd02bb81c6e096f8ccbb7f2e5d10ee9cbcc960e3a99e79bd09 + +PrivateKey=KAS-ECC-CDH_B-409_C7 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAMnNd1/EY0p+fPKs6 +By24yIbUL6Xee+plA27TyNRKEej5b04abyVIiMqyFDBRkaJt0drRoWwDagAEAC05 +4PifuHUVHuOzVPjqFZ5/um8j+Kdk1J4H70PxjTz4bhuqrgrXnUAAcJpQJS8c42Ax +NQDORKm3dbA89CsxAklmB5TCXgQisDrZurqiNhBhMlH+DlQEbgT5IQQ23TdgA9GP +mN/a4Yk= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAC054PifuHUVHuOzVPjqFZ5/um8j+Kdk +1J4H70PxjTz4bhuqrgrXnUAAcJpQJS8c42AxNQDORKm3dbA89CsxAklmB5TCXgQi +sDrZurqiNhBhMlH+DlQEbgT5IQQ23TdgA9GPmN/a4Yk= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAIPKBN+EWOXmzm4TuTfatJhSHYJvuVQS +NFZ+mV8Gg8gPQ4UW7v8M+JGKX4tSYszco5l0FwBfizwg4/4lWe/g6FoSJ235Iu8P +Qlf+cDviUp9u/7bymaGiUcAeONQ8pspXbvHgvrbJEh4= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C7 +PeerKey=KAS-ECC-CDH_B-409_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01167edf7a3c50e13be126eb2caf6b5f8f761cc8dba413246423b877df74a3aa3f48144b44cd133ad9f2d05ef97a08f7ca511d7f + +PrivateKey=KAS-ECC-CDH_B-409_C8 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAsE8ztoeZYw1i9EM3 +x3xaa24Pdga1yHJEqk59ppjMj/HTMRtI7nyaaBK6+QVDea62HAwToWwDagAEAcWU +DC3is3NYJK4plMFQhvqVh1Dk2DEjrwR+mzwmR0bJtdkZ2iFTVdjCiygIo30MxfL2 +oQAKv+bxUQoYLv943YAum6IeZorqVzLHMt38XfkwH1iZ8CuugPgoJgHvPu/kFO8s +cm/gAlg= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAcWUDC3is3NYJK4plMFQhvqVh1Dk2DEj +rwR+mzwmR0bJtdkZ2iFTVdjCiygIo30MxfL2oQAKv+bxUQoYLv943YAum6IeZorq +VzLHMt38XfkwH1iZ8CuugPgoJgHvPu/kFO8scm/gAlg= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEATEVNql0W3R15sL9ckwj2epmgDoTm0fj +riY7D7fkLjMWJ5u/YiriYlMbLiKD7MGmEnybCQHUjMx4HwvewxMJEARLdpCamr1/ +yxhAfcQvY5EvomZyCAA6stKBAq3PuT3cBTdg5Twtqng= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C8 +PeerKey=KAS-ECC-CDH_B-409_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=015c0d202bfdee2dfbd4be91625171992e6c6b1a1d06cc1b2b66ed64c9d928bd4f062912900d3f89045c7190f513d3b019a634f5 + +PrivateKey=KAS-ECC-CDH_B-409_C9 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQA1OvDHJpl7jsavZ1u +ZJV4DFTmM/WiqfYchAjXZ9CRbZHLVM/Nk3U435LPxFk44zt31yTyoWwDagAEAU36 +qnBRjzZ838qJeVoNs3S7e0B6WMqsJLpGgk3OeFAQZ9fgRn0wueH9uwp+rOFfsMII +zwGdYr4rEqF6ePbJ9+cDZpdl92PGI1/nr3jyUETpnEsbkGU2QLPwrkgaVdR9HrF7 +hsW62hs= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAU36qnBRjzZ838qJeVoNs3S7e0B6WMqs +JLpGgk3OeFAQZ9fgRn0wueH9uwp+rOFfsMIIzwGdYr4rEqF6ePbJ9+cDZpdl92PG +I1/nr3jyUETpnEsbkGU2QLPwrkgaVdR9HrF7hsW62hs= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAQwnNTD1T+F0u71cJ3GlWkLmQFDDvyUj +5ggq9HbrAleHaW7fbkON0Fa1mPUABjPCZP17pQBEPnLak7DHgl9CI8eWgm/RMiNF +6iWt898aLGlYkIwP2bE+k8wAX07LFVov/3rFT6gYB4U= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C9 +PeerKey=KAS-ECC-CDH_B-409_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=007c32383aae80e1111207894c8cc5be66fe538af4a19195742a94a4c3f5c765d9776a56177c485ddb53c038b70478959d374627 + +PrivateKey=KAS-ECC-CDH_B-409_C10 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAJhdqr5imQzVm8dzB +kZ6URT6cvzyX4Gm0oXQmRJFn9qEImsFqECpLPkMql4v7RiVdxD0aoWwDagAEAVNf +yUm0kDAwi8Dal5PVcIh2asjPIujWwnbY8/dlDzATXh9sADAME0Ti8DBuoOJwsJqA +rwC4/D+mHcIsVVAfKmspRJRtmfe7/vvses9PsgDBAC4yLDkXLsCits4IB/Hj67Hq +NAA1MUM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAVNfyUm0kDAwi8Dal5PVcIh2asjPIujW +wnbY8/dlDzATXh9sADAME0Ti8DBuoOJwsJqArwC4/D+mHcIsVVAfKmspRJRtmfe7 +/vvses9PsgDBAC4yLDkXLsCits4IB/Hj67HqNAA1MUM= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEATvrjTbR5/U9gL7qM+/D4AmN6uqheXfa +j5qunFdueSDo9tpVogkwzmD9SQtPsBVNSSd9mQEdwdh/NS4SvbQaG3ofHlFmKe0y +PF1bJj/wNvAj8P9fci0FbCSkEfU7NH0HhthPe+h5EFo= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C10 +PeerKey=KAS-ECC-CDH_B-409_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01166107ab98db1dbe22c5888a70c992af4faf4623ef593802aedfe433809c53ef4ab0b2dc4dc2546488b356ef3265356055d8f5 + +PrivateKey=KAS-ECC-CDH_B-409_C11 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAvz5zlccqqEwJYOXG +kCLOOQZ0BFNEc8THgpQk+B8dRLMfIOK5guJRz5/7Mnp9g09Z0ZSKoWwDagAEARy8 +TtkDaifv/In/1V+h4+rQ+5O6z6Cni8r+ORSrGpeGD+wTNMqroHJDWRYD5neRrqS8 +twEBB0xERidjCtClJY4kQ41x8mq5TQW7R9Grl4WMS5LG/xy5vma5hP6OFuRPOT5j ++dZCgcg= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEARy8TtkDaifv/In/1V+h4+rQ+5O6z6Cn +i8r+ORSrGpeGD+wTNMqroHJDWRYD5neRrqS8twEBB0xERidjCtClJY4kQ41x8mq5 +TQW7R9Grl4WMS5LG/xy5vma5hP6OFuRPOT5j+dZCgcg= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAWkMdGSekuHBAE9D/W5GkL5ZWQTFbSrN +haSa8KF9NDaMh2jQOe3pySrSayYwa1/973v9GQCBJ19+L/BopsG5LdOMA0JW7XMi +sCdwKZTHT1uBgSTTShkJh/1liJL8meesuYd71v6UaRk= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C11 +PeerKey=KAS-ECC-CDH_B-409_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=007e7a249094eb52bee0115b8bd5545f81bf0b7d66998fe124c9a3dd3c5715d03b2f973d47c19af5108a2ae005fcca65e61f337d + +PrivateKey=KAS-ECC-CDH_B-409_C12 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAltQDsPpgHJp1qn3p +/p4R1C76k9lt01EC2gXTrIB+RBlOGOeci1vhHF+znIvU4xIyWvryoWwDagAEAAmD +OUYpTUruzbb3JUykicD/E68txuLKViaDXV3SIkFEDDemNpDNEYZ1gf9htyUtB6+4 +/wBhg/7m9NbvW3I8U8lsXB7N2EZS43nJN4eNdm+DNwUAQSNZwi1HeL34B7PITluD +NQkQoak= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAAmDOUYpTUruzbb3JUykicD/E68txuLK +ViaDXV3SIkFEDDemNpDNEYZ1gf9htyUtB6+4/wBhg/7m9NbvW3I8U8lsXB7N2EZS +43nJN4eNdm+DNwUAQSNZwi1HeL34B7PITluDNQkQoak= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAFwk9K2b3LFGBoWiLaVNvd0VB+9t5Gna +QXDOMBR1eaVJRduxvOnwLkcAM7sV/Bpw+DHnmwF8qTK5CgjKLj9VxQzA4T0nnXvJ +EZxXPD90FBC7fBytEHbDukKu0c5p1WIosIL7beDu+2g= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C12 +PeerKey=KAS-ECC-CDH_B-409_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00b9d8b68642b2729340d8b7c5ed3b3a8913c4a3f6b947473017c0e105bc7edc60daa9b0732772220f93eca4878085f756e3adad + +PrivateKey=KAS-ECC-CDH_B-409_C13 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAZxJewwmrXcfqVo+I +FaKzDPrDNmu08BYNU3OKuZXOdWgfzV5JLzqXJbTPdbpDAaeGBJNCoWwDagAEAfHR +ruX8WUykoiuButcH2CG+8yU5ZvXXeVYVdIOWFpb0xgR2pCtFK4nB7LNhVHXsnJbc +hwB1XF71WIm0Fc76DogaPvyb6G82xnYVQjtFLqtM1WEa70GY3bMa7LQ07u7BLt0F +kTrxn8Q= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAfHRruX8WUykoiuButcH2CG+8yU5ZvXX +eVYVdIOWFpb0xgR2pCtFK4nB7LNhVHXsnJbchwB1XF71WIm0Fc76DogaPvyb6G82 +xnYVQjtFLqtM1WEa70GY3bMa7LQ07u7BLt0FkTrxn8Q= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAKq/aquz6Q+VbXAE/8iTxw+OkM3DH8DH +qI8WMgVB1YRDrzlAXYiNlnZVfN05SyfcVEn5RQEn8m26BsM/j7RdlVz9tc7dqT3Y +pF20LuC5JkoFTBaoe+2tRcDZoPNbvGqnoSlWIug+vos= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C13 +PeerKey=KAS-ECC-CDH_B-409_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=017d60394c7ee64ba73db91484713370daa821255807349c237e5849411bf0bab3a1b353be3cd07eeddc5c2ffc74336225dae6f7 + +PrivateKey=KAS-ECC-CDH_B-409_C14 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAayzCOH9pr9Q5eLf2 +a9F2ZiVwgbpNZu5qmoK3yHxKxfDrprwtmByh2p/yArpyy3/pwGzwoWwDagAEAIak +TW7k6MUNHhDX0dETqWEHUCEGeeDkyrjGImeEKTitXZM8mA7vnUZEeRu/01u6xknS +EwEdpjISYxYF/qDpP1gmsZKbK9HblQYV/LBetHvZy2nq4DscM9ep5HszWkBJgjj+ +24mZsE0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAIakTW7k6MUNHhDX0dETqWEHUCEGeeDk +yrjGImeEKTitXZM8mA7vnUZEeRu/01u6xknSEwEdpjISYxYF/qDpP1gmsZKbK9Hb +lQYV/LBetHvZy2nq4DscM9ep5HszWkBJgjj+24mZsE0= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAB9P+/IvZ8FZGwp3DlY8Crpm/gFWHF4i +flIrXd4jx0jKz49KAikN4mtHdn04ilyDbT7/SwAtJz8uhRblCDiPjtIBXsn+Z8Zv +gyzysmHfrVhWEoBC+0phqRo3s0HeQpbUv2O/Z6NFinQ= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C14 +PeerKey=KAS-ECC-CDH_B-409_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=00b19e052edd44421ee2f5ba845911fed9183d885da85d51dc819ca565ce574f7db257509876377b40c5a08349019563b60e13e9 + +PrivateKey=KAS-ECC-CDH_B-409_C15 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAPgmPPxleidpx1jZw +APgEB5rcoydbLnk+jTEsjkAs8NDOUzF0L4dRX03ZzGaCRhlLlXK2oWwDagAEAQr0 +rjNLpAvWU44PCVqlb2GivStfOOlUt2F9kroQYDzcyoNlVNAkLds31eFXawvmnw7s +5wGzNVIa7DBfMU1/I+0ozAxNI/M6Z4X8bG3pPl+rzicTAvlVf20q53xScg7aWi4V +Q2RD39I= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAQr0rjNLpAvWU44PCVqlb2GivStfOOlU +t2F9kroQYDzcyoNlVNAkLds31eFXawvmnw7s5wGzNVIa7DBfMU1/I+0ozAxNI/M6 +Z4X8bG3pPl+rzicTAvlVf20q53xScg7aWi4VQ2RD39I= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAbCDPrNEBFDj+lFIwlwt8uACBibyQHQi +IX5Oy4vYp1GnK6suxWQq6Q/SnYxNeenMGRtbpQAjB4kFtqMwCf/qGhl325Q1ea++ +uHGXAFlpaynvkN2EYXdrNDoJyFOlOOTyL9+FT8vztzQ= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C15 +PeerKey=KAS-ECC-CDH_B-409_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01697512676ae56ff5ab778c411042d217ad24a24ea05bbc253e4395fecc8a07fe77ae0ca4ed977459f1a14d9b83931bccf46107 + +PrivateKey=KAS-ECC-CDH_B-409_C16 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAfYSTE8ZJna5HKwvd +t23sRYBvguCYcjMB3zO2u7l/eUvyaHn8M8KXP4bBVRVJZBqBm1cRoWwDagAEAEgS +rxk3YwuOp9D/cjy7BbeidA/Eyb55LbIE+SlnTDLkfYXkdwuQPTKQptYsJ0yyV7do +NwCMb2FxF4a/XFTrDBsxJtZBskpmYrZ7JXMCqaYaqM1QOEa8uxsU+lyXRUNotsJ9 +0t4q6As= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAEgSrxk3YwuOp9D/cjy7BbeidA/Eyb55 +LbIE+SlnTDLkfYXkdwuQPTKQptYsJ0yyV7doNwCMb2FxF4a/XFTrDBsxJtZBskpm +YrZ7JXMCqaYaqM1QOEa8uxsU+lyXRUNotsJ90t4q6As= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAXS9Iz+GHHuFPMqPWjg1dISe8s127yK8 +DhWfcTodBzh8QgOxH0wzm2aWdPzx2sGZcDvrBwHix3jMpklj2HMp5XyLyW0PZzcE +H9CH2vwH3WcOLOclVH4aJhxD+8VOFMNHPr27Mf2oRzo= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C16 +PeerKey=KAS-ECC-CDH_B-409_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=015960ea8b92bd77d52874e3ea82ed1763440189d68728d3974d4c01d6aafdbb5274648f6f3eaa4faf3fc72d09892ab038cb2fb7 + +PrivateKey=KAS-ECC-CDH_B-409_C17 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAv6WUhWxnwoNrf7Fx +tnx6Qa5D7zRQiYAkqTE2VPzzHh4fusetUrK8Q1iXWlxhq59OPk6eoWwDagAEAOG1 +MJpEgAqRatik0ZuCpYsA7gSCSAUKbtbDPOG8lwFUfpPXyQQvhJBlS3OizX1z9zPA +vwGAsgM4dGNR+sz7mjcRpOE4RXVQu/WDFgNMbyFqU3SSY9/+I1m93NyJ7GRGqaSp +9O+QyG0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAOG1MJpEgAqRatik0ZuCpYsA7gSCSAUK +btbDPOG8lwFUfpPXyQQvhJBlS3OizX1z9zPAvwGAsgM4dGNR+sz7mjcRpOE4RXVQ +u/WDFgNMbyFqU3SSY9/+I1m93NyJ7GRGqaSp9O+QyG0= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAMHctzfSUwNbuR0qSoXzfQAUK+gfySeM +sjpNHXnSfI08RECyyEK8HiH2kk4U3IMbCr+4RQAMc9VoewSQzMB/ZUEBrN2zbNDC +7szhZd8nb4O+IR0B0w/1wkPwkAVy7m3wf1Od9qRomws= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C17 +PeerKey=KAS-ECC-CDH_B-409_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01127491ff33a67ffc4757416cd02a081cafb723aff52af35b069b89963e8e3ef5bc19c5a093ccf511e3c3c19be789280e986809 + +PrivateKey=KAS-ECC-CDH_B-409_C18 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQASgIOBsQA7ySYwRHN +4VCHzaSKb7LswB2YW1fw05IZIOksQ/OraIEp3AGtKfwx1o6WIjGboWwDagAEAWci +f2KElZTtY/JH94Cy0R3ZosLHG9a3EpTPi1nOaQv+ANqbwduNHarJv/jADnvfBx/g +0wE2w+p30JPZc5++aJExixSVl3hZm9Hn1al7/IL/6F/VqaAbgvcuEfrZbS9ctXmP +We/qFe0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAWcif2KElZTtY/JH94Cy0R3ZosLHG9a3 +EpTPi1nOaQv+ANqbwduNHarJv/jADnvfBx/g0wE2w+p30JPZc5++aJExixSVl3hZ +m9Hn1al7/IL/6F/VqaAbgvcuEfrZbS9ctXmPWe/qFe0= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAT2WomfRoqnqg66xsB2KziLiUcgvX1/D +71mXowEadKEBFd9g6Y0TnN02DnTXb6Ui7rVvSwFrZVq3zQ059Yj77+xU5PRQR2ZM +izvo5XqxE3cPX+DGIwD0oJ+iiZ5zu8mCMmX1XVz0rhg= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C18 +PeerKey=KAS-ECC-CDH_B-409_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=01254508553eab09fbc2fafe13fa9b324d9217d7d0ba4cedbe5dc869ad68de4f87774dd17d6428ed242c71956f252969e6bd5837 + +PrivateKey=KAS-ECC-CDH_B-409_C19 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAwZs5FmX1A1NUf8cs +ntAZ9TEWkO5B58iVqn75LGD7nzRU36xXUkWmhp8f3sdF1j6lbIkioWwDagAEAFOn +piqLQES2Cvdu+ltEQpv2X2WYfWoGIWPdVfCNyakbi7m2Jw+KAmEj+Z65NyzL3SfK +OwCt1G9+pwkvSN2qL+uWyyS/ktJij7bk983fUj5fhAEc+Kq6vWAJoT8ppjtrfuZk +xm84KfM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAFOnpiqLQES2Cvdu+ltEQpv2X2WYfWoG +IWPdVfCNyakbi7m2Jw+KAmEj+Z65NyzL3SfKOwCt1G9+pwkvSN2qL+uWyyS/ktJi +j7bk983fUj5fhAEc+Kq6vWAJoT8ppjtrfuZkxm84KfM= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAXh7MLOyBOKYaQudcR/+7xZ63FeSBotc +jUIuyQ+Uwr3ShM2/i+5kL3C9e+LakGue27ws0QBDB4+RIRApChPZAWDw5xWC+jnA +512BkOuBHUUCIARMxtaA2VapiGDm/IW7htZZkKFgxbg= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C19 +PeerKey=KAS-ECC-CDH_B-409_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=004b9accc21d7122835fc21410ed1d83767c47a54ffee5f0c180fc55f3d0e8484af3ad38020294be92f02f0ba7e2b4f4eb1db07f + +PrivateKey=KAS-ECC-CDH_B-409_C20 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAbJCYtT0Q8qwChKmZ +AmWPZn6kyrKGmK8/oHAGobtGNjsQPEqkySwcP+dTkJf6cLik+kbFoWwDagAEANPt +9lL0P5yakqLk00uoP11+lQwoNGoqaFG/dVRwUBQKTpwcG1AOHSrTZMMGuaRK9QOm +IQCZsmxkNn8ZA9qV31FWLSUELAGhrdp1u6WL2w2KqzULUuz76YSIwmGd4BzXD14A +iVO8pUc= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEANPt9lL0P5yakqLk00uoP11+lQwoNGoq +aFG/dVRwUBQKTpwcG1AOHSrTZMMGuaRK9QOmIQCZsmxkNn8ZA9qV31FWLSUELAGh +rdp1u6WL2w2KqzULUuz76YSIwmGd4BzXD14AiVO8pUc= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAenaCtGhWsPEMfIglU7S5QKve3RsP9V7 +Ls63dIZYAgoJVmSHg1TfCqGB5X5erSyYWtMCPQCcznOlRwg0i0j48/Z0u3ZU9EHy +g9TopOyPhZLvUjlfJMES1ZQtOuCP/o2Znv3jmYiKfPM= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C20 +PeerKey=KAS-ECC-CDH_B-409_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0093e2581c159d74d11f8667ee03399208b5c1a4ee5b20070ce8d97d251ef1236dc81dd688b2f07a730e6b8aeca0c193a28b178f + +PrivateKey=KAS-ECC-CDH_B-409_C21 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAp/o4qKuAMNa0l6I7 +3l5QB+OdFNqfgtxWSuPNtK9fz0G8/vetrbWRcebX09PDrGf3vnBzoWwDagAEABO7 +O6kdXSSIr1ctmVzvj/+x/YXRE0IejSwMOql824qTP8DT8F9GRs6EHr3PGphgS/+j +3wHy4E6hagEtSGTPLKdWSEbec6M/JFeNxNIhNZxPL4bKgjywWWv+R2Dp6ty0rVCK +saFx7L0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEABO7O6kdXSSIr1ctmVzvj/+x/YXRE0Ie +jSwMOql824qTP8DT8F9GRs6EHr3PGphgS/+j3wHy4E6hagEtSGTPLKdWSEbec6M/ +JFeNxNIhNZxPL4bKgjywWWv+R2Dp6ty0rVCKsaFx7L0= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAMSSlPtxKUIiGiUAMkr3vYx+wc0bgJTe +0brAAQqGlgg/fvrsqlED1nYkmeG+SFfTIAMCgQBWT6ERCzk5Jd+7JLqaazNz9GJO +y8PhL5cG86sFQpktjbbI2Lsl+gYU1Ib20ayfPZi57f4= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C21 +PeerKey=KAS-ECC-CDH_B-409_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=008e2f1c4bad19c46a5134afccf7f4ec14ab591c8b8ea48d9c3d1e7354ab43ba20aa39a65fd92cdc176cf3dedecbf9da49a8d855 + +PrivateKey=KAS-ECC-CDH_B-409_C22 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAzp+Ce9JMAUw+5Z7e +90cXjWwDDBlmmtjnGLoTAr70ta0sEjNEj1J1spqJbAsuew2pIGi+oWwDagAEAXbj +EBLZxgSy0aGSKijYpXTwYMw2OIsoFtL4EX2iDAaZqwoI92+6pHbwqcQkv0yVK0dU +/QEf7cPo+Ogo4P+/Av2F0pwCAf0PU78mFMEK5RzLWMvEkAw4zEyaUthtifm4wt5O +In9OIo4= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAXbjEBLZxgSy0aGSKijYpXTwYMw2OIso +FtL4EX2iDAaZqwoI92+6pHbwqcQkv0yVK0dU/QEf7cPo+Ogo4P+/Av2F0pwCAf0P +U78mFMEK5RzLWMvEkAw4zEyaUthtifm4wt5OIn9OIo4= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEATSt0sSZFy33ktlKmziV4kW4QHPDJSY6 +hYwen3zzCkTyaNP4NYQR3AqcqrUFwKvAFhML9QAxwjaxQ8oDbIg2Qff5uVf095ij +FmfEFWA0Ann84JYqIb2LtS+iPbcahPNaV5TvXgdZct0= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C22 +PeerKey=KAS-ECC-CDH_B-409_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0190a1693eebe287ec980236d8762804d23fdb6f222763a0efc364f9280fdd53394c2badcc51ff09557f3b97cae7f70d790bf9df + +PrivateKey=KAS-ECC-CDH_B-409_C23 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQA4287mhNBmVsT/nC8 +VF0nnm2xSCySsTzozA2hwQDqL6qAOmSljMfrHP0WdXCDXFIvZZNHoWwDagAEANHK +gjk7jVC9GJipCb85Mz7KO96YsLDc7Wb4KGMOaebrEot87CPwcmAEcHMmCnZTMd1v +VwBsU1/5Q6D+dQ/Gw5kEppEroevA9GwbCCPkATx3R16imz8ySBlm8bFlvtumwXoU +lPttTz0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEANHKgjk7jVC9GJipCb85Mz7KO96YsLDc +7Wb4KGMOaebrEot87CPwcmAEcHMmCnZTMd1vVwBsU1/5Q6D+dQ/Gw5kEppEroevA +9GwbCCPkATx3R16imz8ySBlm8bFlvtumwXoUlPttTz0= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAPDsly3J/f0IzY38unKYtN8tvYDCCyiJ +5mOsWMw0jL+Pn/0x/7UGGNbDjXKpnVxdLqzAAQC7C0iJPNuRXmXNXXl4BIAgF6KV +NDZUJGo3/jpg196YfmqaEKrwY9lrEBhGEszSZAfX4D4= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C23 +PeerKey=KAS-ECC-CDH_B-409_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=001469dabcf2210aa7de0040b201221eb4d1a4725431fb5a93212a66ddea4187e078f5e3d82606f6cdfc0ffe6b69574d1d0ba643 + +PrivateKey=KAS-ECC-CDH_B-409_C24 +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQACKBnFu1vTPco+QGZ +KPNnx3qQUkkLmouoelnNyoTnfGopmFP1SW/r5lL0ujM1AcT88rovoWwDagAEAKBF +tea7t5UElfbV1kWit9cgBnJdAiPH/3VTQCLJJgqw0tjTM3iaPcz8OolQLKUAvQwf +YQHsVW4bFiHsGJNlThmNWSPjEUeKi9L//ygMkJL/wHNyiamXSStunr+TGUdjTvf0 +O0Kc82o= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAKBFtea7t5UElfbV1kWit9cgBnJdAiPH +/3VTQCLJJgqw0tjTM3iaPcz8OolQLKUAvQwfYQHsVW4bFiHsGJNlThmNWSPjEUeK +i9L//ygMkJL/wHNyiamXSStunr+TGUdjTvf0O0Kc82o= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-409_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEATeERODe7P867Fq2506BI7qY2LkaUHz8 +oNhQl6rZRMFbT9icjL4sdFHY7GQQRUIbS/aXiwFkR8ITyQNd57zCm91h1u5u1Vec +Nr7Fa8a0T5KGv56Z+sl/NWcIzQMQ2/Yzj5r417E1kQI= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-409_C24 +PeerKey=KAS-ECC-CDH_B-409_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=005c701a93d7790322aa7c67440fdd9ee8057a0dae86d1e856ae89e7893da178bd67777f86db2be5c8e31dc50ed8a440aabc342d + +PrivateKey=KAS-ECC-CDH_B-571_C0 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIA0TyK+h5mblbIof2 +dDDqj+ZGxi/ji3zmHx+VZZfCe93ZkC4g1ENqvzvr2CQ+wpoASBqKLBn1UOmWQbXx +Sq+7W9qVOnVZ+GU6oYGVA4GSAAQGr3H87BopBBFv4Uh4Zjdkwex0hw5dLVORnwtj +WRLbgN1UYNnmmUWP+ElMW/x0+6jTsS9l8BXo3vEN4z8YABkfTLUC0hk4uVEBlYQX +exicZkH/tni214M9jUuyXe5QGN2k5MDSGQSMAc0Nqer/40bVPPGgezOz291Lw6yr +5IMvmYHv8mYJkarIUhR5he6jpR4= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C0-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQGr3H87BopBBFv4Uh4Zjdkwex0hw5d +LVORnwtjWRLbgN1UYNnmmUWP+ElMW/x0+6jTsS9l8BXo3vEN4z8YABkfTLUC0hk4 +uVEBlYQXexicZkH/tni214M9jUuyXe5QGN2k5MDSGQSMAc0Nqer/40bVPPGgezOz +291Lw6yr5IMvmYHv8mYJkarIUhR5he6jpR4= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C0-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQDtj9foRKua18RPHZRRP5MvWAg4m1A +DBFgmjpjS5oyX0FrDj0yFXNMaKHCyPrR0Lues5OaQa8iQh9oeB5+sGZLnfXOpEje +qjsAjmzHe83cgW6Ez8H2JoJPok09X9M9gJPL/h/E2IG2O0lBI7x1lnDtyxiHuzud +WotRa8UDgoFjcJ1NrLWU0nehWpLAZOV3DRs= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C0 +PeerKey=KAS-ECC-CDH_B-571_C0-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=06775e1b99a236e02b020bc73666e5751c1210dcb6e9b02a69f4075376e49f7a1476d2209e861abb73f5e3ad189d268e035b1de93d47b3a64de5783c9a09bc223e1cc612f26dcdf1 + +PrivateKey=KAS-ECC-CDH_B-571_C1 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAvTSt+Y2YObCCUng +bcZwvoqvglMOC26v4hAR/p0PRAfIVJUVc0UozaKZ6fz3OKl/v0PEu6JnRLMnUxtA +FD4Vi8hkWQnqiIRWoYGVA4GSAAQG6nEYJ62O1Ym3Ce819qnNRiV5i9iH5f5ZxR8P +QcMot+zfhHNsQ/tw45hu5eX5huAJ9kEVinXM5rOfU6i/BoKDAZTkAHFI3u8Exrny +pgmfwDZ/qWCTlMMiGtjG+xEdK9xDBQU4BHiNMur3ZDFAbnaKRIy1yONMgSJe7JAV +q72SclwAJxLtMZLYB7Nq/qhT9yI= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C1-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQG6nEYJ62O1Ym3Ce819qnNRiV5i9iH +5f5ZxR8PQcMot+zfhHNsQ/tw45hu5eX5huAJ9kEVinXM5rOfU6i/BoKDAZTkAHFI +3u8ExrnypgmfwDZ/qWCTlMMiGtjG+xEdK9xDBQU4BHiNMur3ZDFAbnaKRIy1yONM +gSJe7JAVq72SclwAJxLtMZLYB7Nq/qhT9yI= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C1-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQFdcuwWfQjMJ+ZO2wGrHHXvMXR5qGa +/nKBHLYSpiOMnMwzHmfaDBC4jMKl8e8v9ta3RAZdJC9ZjaLWM11MO+z1w5U5QMYO +/McGtDNlLjo2oHAYqorT0v8x7Xhc5WAXFu/3cQ/BPG/5/3XH83AdRZ/Y/nDAtK/O +2ghoFxfbmCHYyFj9OeJ0/zd3L46EhW5wZ0U= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C1 +PeerKey=KAS-ECC-CDH_B-571_C1-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=03a80ea8cfecb858f9b77bdb46b6cda26320ee8c561a2fd6b7e0a2b62201fbfe60f577780c75a98a11a69de4c4ee911930d2200b6972bc3123d7f278615ecc65984a59fe352a1cec + +PrivateKey=KAS-ECC-CDH_B-571_C2 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAStjE7VoU8+NAnME +nPftKrjmMuWSVu0EM2aFdkjz8qlnTK62+w/NX7qwu6u84XoPxKeBSEmcOJr1dIY3 +RkFpWw6FLzFS7sckoYGVA4GSAAQECnh2PRcEWd00tcBOx4LmmMvpA6WjSFUcUkjZ +2s8ZvLmkmOoF6A4tbMHz6lujpDhVuAHIwDVv4+Ke4iS7kfTtDIVng3m3JUIB/0nO +CmLp7a5qpjqYSORPGFQS0P60a4f5FCS9r/7VFoMh7XbyNfddM2Z/bX1qnIV7tPhU +QvxA+aIMBK4GNipG7O6hXEXWm+s= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C2-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQECnh2PRcEWd00tcBOx4LmmMvpA6Wj +SFUcUkjZ2s8ZvLmkmOoF6A4tbMHz6lujpDhVuAHIwDVv4+Ke4iS7kfTtDIVng3m3 +JUIB/0nOCmLp7a5qpjqYSORPGFQS0P60a4f5FCS9r/7VFoMh7XbyNfddM2Z/bX1q +nIV7tPhUQvxA+aIMBK4GNipG7O6hXEXWm+s= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C2-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQGSqZoMP9EMkpnroqQeJaJe1B1Zs9S +3+E+Otux55NmXStxg1h1Tv6AnkSWIYUC/rVgTb+8BKEQfKnsTq3H0QqdbRR0zt9X +gUUG9j9p+MGLZ/EQUbPTAjahokkIiyvKtc/4MM256z51wehyUuXY5huxpmNI+2ge +li1lq8VNXeot1yxVRZB0AHT3xmxLjf0wdWE= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C2 +PeerKey=KAS-ECC-CDH_B-571_C2-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=03edea7e47ded7c2ab1115f4ebcbb42677c7fba6e0cfd811602896251ada1d5a0b461aaf4e000f4d4231b96d8dee7630d9f1b7860e6418dac8c3b07b66af6fd1acdb44b2683b29b4 + +PrivateKey=KAS-ECC-CDH_B-571_C3 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAhmXtUgcDPbPQ2v+ +Ngw7EZueTdVvPChHr/sgIcusS1fcGPUHXWeK8rpunu+8QTjYGAU/LfMqEOiuXWQJ +9bLx88q/NvgI/cB8oYGVA4GSAAQFYM+RMowmu6E/ccm13d0FwYWWnYi9Dp00o2B6 +kjsjpbZ1RSFnADri8K3VFB6kvkHrrpHTpqoVw5Pb9YWtbJIUsmnoa08FS/UC4y7C +QEGKmk+QF+Yy+Kd4l6IjPW8fRbj3qoGPhH3bPOq1paEsdU/OjVewMgoHa1NEHc+f +Ze8yBOCJGR7xVv92IpSJenL8qTI= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C3-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQFYM+RMowmu6E/ccm13d0FwYWWnYi9 +Dp00o2B6kjsjpbZ1RSFnADri8K3VFB6kvkHrrpHTpqoVw5Pb9YWtbJIUsmnoa08F +S/UC4y7CQEGKmk+QF+Yy+Kd4l6IjPW8fRbj3qoGPhH3bPOq1paEsdU/OjVewMgoH +a1NEHc+fZe8yBOCJGR7xVv92IpSJenL8qTI= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C3-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQFBnGvZcvvkvMF5frLQojMBKTGl4o7 +eK/kBJxqmV/ow8C7YJq+SdFSse7WxxTSVP5u/xWanr0krRaRnvdvRHAFfrfCZaS9 +lugFHQjiHSZNjk28c0CIQqtXzXjTI+fetiWzdBmUuK/+Aa9EYWIttBmv7q0EWEX2 +w9ttmC9FtpK+oRzyXRiso8g77IQMdYKnBi0= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C3 +PeerKey=KAS-ECC-CDH_B-571_C3-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=005b640015330f8416f2bbbf8b5660e01a7abba8b0197a29e52bb535d62f89ad0443e08b6e0d1d15f4eb03c0fe35e3e43bd7739cb692092698a2cd13126cee4432831ec7423b3434 + +PrivateKey=KAS-ECC-CDH_B-571_C4 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIArU5rMdwdYeZ9Dln +Dq6Fubo0qLTzccyTWiDOjFZlIe7NjE9a/xFq4Nsq1urhozhENMWZN5ghrQXYGtoF +SCmd/ZjP1tPxVzUkoYGVA4GSAAQG2uU4yCBEOXdBXO9OeZdLp2K2m0NIECAMxv/z +JqI0TNIb4ZwVNkLfgqPlelUxqL8Zdn4ZldJyj8tmHVjsVh7yOjTYYHlxSQ0FBCQ8 +eSuQMYTqclqUfKiSGMqcj6Hgmn3WjeiOrpD5vSqN9BTdaaiysaLe0sbX9RTIkHmX +Yk6wvJ6pM6LUdO+Pg7rqMkODTeI= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C4-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQG2uU4yCBEOXdBXO9OeZdLp2K2m0NI +ECAMxv/zJqI0TNIb4ZwVNkLfgqPlelUxqL8Zdn4ZldJyj8tmHVjsVh7yOjTYYHlx +SQ0FBCQ8eSuQMYTqclqUfKiSGMqcj6Hgmn3WjeiOrpD5vSqN9BTdaaiysaLe0sbX +9RTIkHmXYk6wvJ6pM6LUdO+Pg7rqMkODTeI= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C4-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQDmsnpGvWUB03NM42k9SQFdPAeQTpJ +uSJGuj1t6FXj3t9uf97amrf3+Edudwzpu8OppeuYRUPcw39fEb5uKKHRCQkx9cW1 +o1EHgNMtuxNImb2i6YhIlBh4OHq6ZmX9JCUhYM4xI/aPm1vY8lSji4TsU2Ul/gB6 +hjtvzEifk3oFpf2UbWKCUyign4Ony6J/6l4= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C4 +PeerKey=KAS-ECC-CDH_B-571_C4-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=027af05ecd0332784d64b0b1bdb45c310fd445c5a6d6b34f35f4eaa3fa3e171ab98763d243a1dedf46aa29864620a47d05eeaefd748186bcbcf187c01e7ce36e2a53ded071036b59 + +PrivateKey=KAS-ECC-CDH_B-571_C5 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAxipbjgngtRHbxvr +9pehB28i4dLshHR/n8QlBdVUfaqgjYFHIXWWWZWGhc9OpLuhL/+2avCfZpRSHxHA +m2YmyK5S+/szalKhoYGVA4GSAAQGdw8vzS6bf4vFwpLSg6uthRVQcf4373zoTzTH +YW2j2+G9zpqwTOp7xLwljF0qt3I509CEVost/3eZiCiNn8a7Nk9RnQ6FWtME9qH0 +5f4A/pol2EWbiIA5iO8r8v71oj8T56fn80Wav8PVwAMDq8xQgPq4GwnVvgMg75kF +GaBq8TwpVi7pVXFagswNrvLF4Os= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C5-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQGdw8vzS6bf4vFwpLSg6uthRVQcf43 +73zoTzTHYW2j2+G9zpqwTOp7xLwljF0qt3I509CEVost/3eZiCiNn8a7Nk9RnQ6F +WtME9qH05f4A/pol2EWbiIA5iO8r8v71oj8T56fn80Wav8PVwAMDq8xQgPq4GwnV +vgMg75kFGaBq8TwpVi7pVXFagswNrvLF4Os= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C5-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQG9liEkQYKHogUjkve44vGdHE/44TX +z9v1vZDJ27bhWH5Fnc5uDWm4ss/rUFW+5WpzwTQ2BgGYrUdQ2uglPqg5ouJG1UFF +l3UFthuPfY1sgWKiJp5yh9RZA0uPqsA2D8+Z+yHaNKMU5nNTGbnQNia5JoNpNF86 +YkrK2yGbIHGI0OlFy8Z8mCBo0yYT/CH4sPQ= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C5 +PeerKey=KAS-ECC-CDH_B-571_C5-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0763c0d659a7c080912005a2afd60ce57e610619b388ef3d5dd3c9386ab12069c6ef3a8e72eb741cba2da5c6f9267f6c09fada6459690ed4e432445d6f0f72dbcb059c87df36f665 + +PrivateKey=KAS-ECC-CDH_B-571_C6 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAotDGetwVM/2OCgg +xS+cMy6uZw0fB8/I8UcukmD15Ho4V2gBbNIAZwDKe9xdHVZ9kkYK98KkJd0NeK7u +PRX7KNcRZ+ZIa4HEoYGVA4GSAAQFsbEUzvE6pd8wbOdBl9aA+bjJ2PZ1OgnbiEZq +a7BOrx64c4NgItdQT0X66FqOSlQX7dfOOg5eueeSZIhO14NXez/FLYJfC1cBjjIm +42tLM2eZxGhLulBemE3IgZFm8XzrhA42ElsoOoyGNd3353BAbZhW2Cs3z/H7zF0/ +XPS1XspB7hMfIep7yxnOBfZWQkU= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C6-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQFsbEUzvE6pd8wbOdBl9aA+bjJ2PZ1 +OgnbiEZqa7BOrx64c4NgItdQT0X66FqOSlQX7dfOOg5eueeSZIhO14NXez/FLYJf +C1cBjjIm42tLM2eZxGhLulBemE3IgZFm8XzrhA42ElsoOoyGNd3353BAbZhW2Cs3 +z/H7zF0/XPS1XspB7hMfIep7yxnOBfZWQkU= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C6-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQFpSzr9oEDyrAmbPLGicSPCAVJ//xw +25gJwqRvkItyib5ZcynznuHkzKOYZk/6m9zwEpP0NZPRiOEkEdV+VZs/ajDpVUhp +8EkBThNxZfsNUw6GU9fLKoRhjdOvz6PwhWAXkUKq6XJ5DOdGov1EadQVWHRDeMZA +rnOkibt/gc3KaxuxZ8eUwm1iOKDSVq/DuiE= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C6 +PeerKey=KAS-ECC-CDH_B-571_C6-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0428413f2d2aad4d5288885c2edc8b976321ae1dd4fc6b41275fb88b8c5e7776165effce79025163538a0e83c919220a407ead6cefd616b4b05294488c2ef5d30ab8caa55ccbd1b1 + +PrivateKey=KAS-ECC-CDH_B-571_C7 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAgEV0X5B4TF4tCoA +TAHV5O8cdiQQScfTG/DqhdbgcKLiuSCA5h3lRvzL1NmRI2uzYO8/IG7hbYhDoN3I +A0Y2ZKjM3C2HoQJ3oYGVA4GSAAQGyKw0NkrK4148QXFgMz5IZBho/MoEwNV3vgb1 +irClX9fbd5/nN3edoz0An1e1utSXAurPV1rLryffgzBwzYk6eSR3DJLv86AGG4Ll +RdQcYv7waLNM2/ATlhFdKhQX+XGUg9JphrbVL49t4Gg3eV9tndfNCVdBEUMYxuim +IGs97u8BTw5EsNxmhOEA5Kw2FlA= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C7-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQGyKw0NkrK4148QXFgMz5IZBho/MoE +wNV3vgb1irClX9fbd5/nN3edoz0An1e1utSXAurPV1rLryffgzBwzYk6eSR3DJLv +86AGG4LlRdQcYv7waLNM2/ATlhFdKhQX+XGUg9JphrbVL49t4Gg3eV9tndfNCVdB +EUMYxuimIGs97u8BTw5EsNxmhOEA5Kw2FlA= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C7-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQCbi8e5k55WOkCVHp9sKHhSGbz0sAS +fCu5sJ7iMtPZUY7kSuj1u0M6CIBp+jhs1ciQJxG3YqwNo6ejQgRyxH6FD5iN1gpj +bX0Gd/9RAFLU9GCEn7jvDU81Gc0jjk4caItzbPbjdZVQ0TSh5so8tHnWi03F0Luh +ruF4vW/hXsGW+x9ifYcHk5T294VOBTIo3uU= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C7 +PeerKey=KAS-ECC-CDH_B-571_C7-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=031bd2a84369e93dfa00581446d52762100d985cc7bb91c4fa8be7472e2e8e9781c52b19a54330442441bacae23f4bdc76486eb475d51f26aafbfb272a5ab5db184a4d3c3006e5d1 + +PrivateKey=KAS-ECC-CDH_B-571_C8 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAIR7VF70lhVnHwi+ +c6SRRwYxhEkzQBEepNzhPC+SHwe/rP/IRB9MfJ0EefV/OhP0wzxj7UfDpD+y8G0G +qXgOXAs6wwQQrcSRoYGVA4GSAAQGmU3cWuLFtvRdwytxDxpJORpH86D4wteEZVL+ +SH7wHMoEMRVbtUUzsGeinoNnNzr5XWp/C/mNhptwj0j5XxuIoVMP4iVH6X4E9iiN +TXBPM6iYAx59AEb78eNKcsivGQ9NMxYzQ8iXugwNivioYjahw7ZVuXncRSLTPWam +ZbO2UBVw8HYyKvCtK7qqBOoumV0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C8-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQGmU3cWuLFtvRdwytxDxpJORpH86D4 +wteEZVL+SH7wHMoEMRVbtUUzsGeinoNnNzr5XWp/C/mNhptwj0j5XxuIoVMP4iVH +6X4E9iiNTXBPM6iYAx59AEb78eNKcsivGQ9NMxYzQ8iXugwNivioYjahw7ZVuXnc +RSLTPWamZbO2UBVw8HYyKvCtK7qqBOoumV0= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C8-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQCPuT57CTe4gOs+2WGMTE8etQ5TEfx +eU0ItZn/wV8OXaspEdl+Aw3ffLS7rfilvOBcNTWPvQz5XT1cf/PNjua1TjedjQEj +k5sGBr4j58V0bb04QE/WB/t/J47iSdyOJ0DPG7mxwHsc9+ClCkMlZ9GGl5moAxIl +ENtDeYGiqhJuuarzx74FqA+sFJXhxAyhwQY= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C8 +PeerKey=KAS-ECC-CDH_B-571_C8-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=04df20154fa49a1d6e04dc2ba6e55a7f2ae575de5e2c6e4091a4d2c36aa93ca9699b890f0ee4df53aa75d0d9babad68605bc027ec67c187a6826aac0f4bc596baae788b376110216 + +PrivateKey=KAS-ECC-CDH_B-571_C9 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIA0wkWDArQ4V/Eq2L +2ah1I3ZBoh4hyjz5oJVtPP7e2WpeH1M9gntSj7tYbak+77tm0HeLGbGn+28Xu/nn +m5rO/N17lgXniY8moYGVA4GSAAQDLTp6QJnwif6pGJIR9zZvLtxKv7MWxcBZSNje +V/ygI7+2oRsQLqQSC6YhksDfYQvY0vY/xXcn9Ka2QKv40pn6xWxMeviDSeoE5jmf +HO0madOlUG016ivr/M8M7IS8lzg6rcO0g0f2KWJuYJb4kENeWTNnUEj9zvze3j7W +FuZWDULp4XxUkuMLwt5GicBZLss= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C9-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQDLTp6QJnwif6pGJIR9zZvLtxKv7MW +xcBZSNjeV/ygI7+2oRsQLqQSC6YhksDfYQvY0vY/xXcn9Ka2QKv40pn6xWxMeviD +SeoE5jmfHO0madOlUG016ivr/M8M7IS8lzg6rcO0g0f2KWJuYJb4kENeWTNnUEj9 +zvze3j7WFuZWDULp4XxUkuMLwt5GicBZLss= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C9-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQA1KCxHBc5vtCU5y16aSODaDbZIVdG +xyzGgARaNtga314lOU8mmiraHZQ568M7uTHW+llaJSYcJEoeF7BG+xD7VLsxIojP +Lo0HUgT1DTKrimq7/5gtH+NyuMVBW7W3JrNGqk8IvjL4yigsHvbhUkIzYNl7cooH +Tms887kScYsWks2YMBl0GiVBgkI0vcjDI/k= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C9 +PeerKey=KAS-ECC-CDH_B-571_C9-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=037a380f525590582658e2dd272a32de67fc0cf5390b37f4d33c1359f075d4461ea38a55027317892a3d1d22f5ea333ad437667d2f3eb8781c39504036ae33e4b0a26b6894722f0b + +PrivateKey=KAS-ECC-CDH_B-571_C10 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAS23haA8Jr46bppY +LlwyqJVwrUMItxPOVHHqGT3sHzLWi0/N+xYA/bHstnaeJqDgV4Etu/DtSVWSZl5r +jpqXN4owtcZg+63BoYGVA4GSAAQH7ffuDsd/Wmw8nsTtj9PLgUo0LpzGRwtUeB7W +wUHiEVyG29e6J5k+t+vteji+SI+W/d+pgvNpGqHCppf3cGv/PRrdc5YGYZQHs4JL +f3smb6Qv5Tatwqx5udHltAjnIXs6md3rmS8xI/8tFod00wCoGKMmkuJlr8b29XjZ +vTEhEytZeYQfei0GDolIkB1lfBw= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C10-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQH7ffuDsd/Wmw8nsTtj9PLgUo0LpzG +RwtUeB7WwUHiEVyG29e6J5k+t+vteji+SI+W/d+pgvNpGqHCppf3cGv/PRrdc5YG +YZQHs4JLf3smb6Qv5Tatwqx5udHltAjnIXs6md3rmS8xI/8tFod00wCoGKMmkuJl +r8b29XjZvTEhEytZeYQfei0GDolIkB1lfBw= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C10-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQDu4QDK3//zieszzVLid3fZGzctWY0 +3w+FIKdzD4q+sF+ZM9ikNS0cd2fMP5uAzv/N0Ms6l7WSg/0KZ03E/SQDM/AgyCtI +BMUHRJkzasOoBUMHiZAnaCUgJrUm7OVKwo6MyHjxi6+fq0K6TONOSWiqwe5qC7Fc +mnCYgqU3KvVuoLNoFzhfu/6sS5BgaeU/v7o= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C10 +PeerKey=KAS-ECC-CDH_B-571_C10-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0420de313bddce87d07321e3f0af404d9d13e5369b79506e807178711153c9b1837cd055562eff3aadfc5954a221eeebb1bec1696d3df1cccfb8b61172a50d83cee95f4140ba070b + +PrivateKey=KAS-ECC-CDH_B-571_C11 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAgJgana2oT1uKSgL +wWE+EVAldwskX1Vh1Yg+E14VnMQ3sck1Wy7uKzur7yKf5UWqsrzKFV6JcklfGXS9 +sewOYMTmx5xI8mpGoYGVA4GSAAQG5026TgcC8YbTNNPEniV44e36xWRkXdqMSliB +WPjXo+9jJDZTwNUHQnc0+0zIet9KNr1avKH5ILm9bjv6UckW1XEIhFlOlIUFuSFH +ottIo4MMz6KJUaK36OuEMTuZsKmQMceDTGM/hlovmESVJSiuXe4CQoqCTN+34gko +/8U0IN846tC0JA0GWdWtsf8uLcs= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C11-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQG5026TgcC8YbTNNPEniV44e36xWRk +XdqMSliBWPjXo+9jJDZTwNUHQnc0+0zIet9KNr1avKH5ILm9bjv6UckW1XEIhFlO +lIUFuSFHottIo4MMz6KJUaK36OuEMTuZsKmQMceDTGM/hlovmESVJSiuXe4CQoqC +TN+34gko/8U0IN846tC0JA0GWdWtsf8uLcs= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C11-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQGVWpMyYRmeUqT0DOIU2d296SzNEw9 +xOuWCkpkWPx4ac1ORbLxQMRop9TruoTJSCM3oqitqsiKmmKdoD3SR1JmQrCrcft6 +jHAFS5fZUrGfdChW2s9OUN8MMQO68lP03mWj2crOY/6CkG0sjoozEvtTXgD5tcpp ++H28f6P32H/gJFNmBKr+RkBZPMz+9vrAKKY= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C11 +PeerKey=KAS-ECC-CDH_B-571_C11-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=0606228f5a05077aeefbefac23c0d5bac7a6062bfc2b02ce8bba6698ea96b456b1f0d32c6e05dbb9be61a83090428eedea18c74f41238edede9e3a12e28722d2f314613c2e84d6db + +PrivateKey=KAS-ECC-CDH_B-571_C12 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAEhng0isM7kvLFln +cQPqQJlGtVk9EF/EmDNRxO3pKcS5O/xpWHZVXjrOQXuCrAW4Mmdqwj4pVaCe5kog +pfmOYkmfQ7p/f8jhoYGVA4GSAAQDHdSAjSs0G4iB9eUKLczjjfg5AJ+SGFl439mm +DNruAFzbqCZVZHc21AevuQxnzdsTuisBYY9F6KJ0MX4C93D4Dvh7u8GxEFYFCgZx +ycDOV6SU5pEfE3bPH8M5OIW6jCb23cu1Nhh2hgo1r8H0Vg8pcMMNs/HIF9vIrysC +Xa7TqdoS0vrp1xTOrYBEXmoKCBM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C12-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQDHdSAjSs0G4iB9eUKLczjjfg5AJ+S +GFl439mmDNruAFzbqCZVZHc21AevuQxnzdsTuisBYY9F6KJ0MX4C93D4Dvh7u8Gx +EFYFCgZxycDOV6SU5pEfE3bPH8M5OIW6jCb23cu1Nhh2hgo1r8H0Vg8pcMMNs/HI +F9vIrysCXa7TqdoS0vrp1xTOrYBEXmoKCBM= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C12-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQBAFGCsCmkhSju9f/QIhrYcIWrrGpy +cFIDo8Fomru8DhKSel6Ds1Khutl3BhAfRKECLMwNVSLcXRyhQz3gOiuh34ZIdfUi +vmEBiwKpjws+TM9EqWk5ogg6sfKgTa/Vvc7jz/Q4uwi/8SBDqhksX8804TtcKXQs +XYZLnKxGvqbpbfKxvkSTrPlQIk1xc3+ZBlg= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C12 +PeerKey=KAS-ECC-CDH_B-571_C12-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=052669336019db5eddef5eab2336abeb60bbc7295e4bb663ab43e373fb6d888d7433ec89a487a91d4a59c289a9509ddd1bab33cd02a7bf37aaad78dbedf0b4ae5f2f35d15cb4e628 + +PrivateKey=KAS-ECC-CDH_B-571_C13 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIABe6ty14j4t4ub/E +kShjxaSJIv5p6KTPXm6Rdj79VHehzUOd7dCv6lBOOzr2gj6jCJwDdO2a7iSohRbI +zzr6vplbm5Z187WroYGVA4GSAAQBYcFLvITkLsdneow3cAZezR8PROrIJCpxWmGX +Hn5P//eP9Xob8blcv8LtlX0RlfnqUICXFcJDnHVD5XNSATVCbUdTW4v8hTMBJTYz +0CJRRk7cxT7Z6KntkykyDvXurzXWTFm5c1yW4H8aYuwXvO5PBM2ahaPrUEqvN7s4 +jGx9CNkKoLaFVrXAaOy/ClmERg0= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C13-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQBYcFLvITkLsdneow3cAZezR8PROrI +JCpxWmGXHn5P//eP9Xob8blcv8LtlX0RlfnqUICXFcJDnHVD5XNSATVCbUdTW4v8 +hTMBJTYz0CJRRk7cxT7Z6KntkykyDvXurzXWTFm5c1yW4H8aYuwXvO5PBM2ahaPr +UEqvN7s4jGx9CNkKoLaFVrXAaOy/ClmERg0= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C13-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQH+rTlkyjHAPdGSb2Qp9Uf8olY/nIN +qqsyjPybACqnBs6zmTTbnM+B3uyVaJzox3a0/GVCqCNYzFHrvG2OUyLLP6bkaV4X +D8EFrNRc/6Kd2zTuQudBACZ5jjeo0anOn5KU2lGYFktpAQxoxTKBzL/EB9FBCX2h +N+eEnyKP3BoHqimL4myncfR6xP6ycj1aZmY= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C13 +PeerKey=KAS-ECC-CDH_B-571_C13-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=062de5aa98b440c6cb7a1428f6b5e47452b30454eec4d651982b531121febbd5a3833b180017f7ddb5ce38d7bb1c842de1a8a8fc7fc981e24733b7662813fd010a4e757ca4ea5c28 + +PrivateKey=KAS-ECC-CDH_B-571_C14 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAqstQwJ7CPir+jWY +7wFEOZpgtgN7F6OuQT1CLvohZ+nqTxnX7KmNhcZ8H+hfvLwfErr6MKhdvfVCRmiJ +MV8VMt78XRgVCfAIoYGVA4GSAAQDKMDWf9VS6hDlvfe4fVC/TcujTcpWmuuGnFx9 +x9gyzjD+7TLiWnI3k/l8VX4vl4xeE0nmm3PvmRYAH/sNbNssY0PjRTg4bm4B0VG0 +btAEJjzZpcDUaoQNAyImMfkv+SgOlaNXRs28r9n+1oEcdhS51Qqigo3HonWznT1B +ijSd0eK3MhH03po0tC/KEbl2Dso= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C14-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQDKMDWf9VS6hDlvfe4fVC/TcujTcpW +muuGnFx9x9gyzjD+7TLiWnI3k/l8VX4vl4xeE0nmm3PvmRYAH/sNbNssY0PjRTg4 +bm4B0VG0btAEJjzZpcDUaoQNAyImMfkv+SgOlaNXRs28r9n+1oEcdhS51Qqigo3H +onWznT1BijSd0eK3MhH03po0tC/KEbl2Dso= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C14-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQHJnYwKtGHMbdiArxRQp6/fsz2Ml9O +CEwvkuMojtKQSIueNnIOKdqi2xmTp9F86O+djM7GHeikBxduJnTCXVe/8sRlljWL +NgUDwAItUyKQkeFK8PdFDeyhy124IecVkGCP4Jhtc+iMkV5e6N/ryJVZE9kWT5kv +VjlKZi7xHIIU6K2oXfGxewuXQUzdZi0Yi10= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C14 +PeerKey=KAS-ECC-CDH_B-571_C14-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=07c7eb4892816cc3388ebcdfb412984e05910c112dd15b8e5481719401701aceba22fcf35aab0c3b040096161011f6177097c505395d9d6d8a713f6a5100fb476adbe7b9cdf4b68b + +PrivateKey=KAS-ECC-CDH_B-571_C15 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAEnG5MBaGXskr9Jw +ckP/v9VbAIj9M9h9rk0hBI918rhiVjB1JB0vNv3Q6UBatCqlXL8gldq8Pa7frp3r +kiIgeD6Fkc/WdgCxoYGVA4GSAAQAH+KaTC3QALvtEpEhuI7btcObNAA/FwrBn6mo +XF/lh6q4ITYfSWNEDyWstJdYgQVS8Gtxmp60O3IOm3rW751BJI1fM1+ZUVoBSZ25 +WAjHGdJOsFxjPbiwXPlpygv2VkNbH98bCSgpD2pr+ICtuf1TyG7Hbg9izonL60wm +b2Sodtd4IxoAMMOKoA1mxr1oB4U= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C15-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQAH+KaTC3QALvtEpEhuI7btcObNAA/ +FwrBn6moXF/lh6q4ITYfSWNEDyWstJdYgQVS8Gtxmp60O3IOm3rW751BJI1fM1+Z +UVoBSZ25WAjHGdJOsFxjPbiwXPlpygv2VkNbH98bCSgpD2pr+ICtuf1TyG7Hbg9i +zonL60wmb2Sodtd4IxoAMMOKoA1mxr1oB4U= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C15-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQGzXkx/PGTX4HzAUee2a0Mb5oFvs9O +Vzov9Am6/EQuwZX34/39COWBYdTg/Tf2KpaUIbGc1I/oSKXX90uBN6fHJqnL03os +87QEtbLNg7J4lXUcNNOsW5YKEz7BiwOcLhKNNEHbT3bot1BkCUYZsSLl+y8cJ5ZV +mtlTxxHjMNx79V7fKfCVyuRVV7fI1YQ9ib0= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C15 +PeerKey=KAS-ECC-CDH_B-571_C15-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=05c638349000ec30881cd190c067e7f12b6b42d5842a8285a8ff0dc7e9c9eaf483309e48314fdc2ce7f9da6a468e549c8e70a50b68d07aee29708a98172209e5cd2e8c09cb66d982 + +PrivateKey=KAS-ECC-CDH_B-571_C16 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAYazHOSQx/KPJ5MH +WkrmRayznnH/6UTuYr+CWH8cPL4ojOYCTY0DXxB9mk+u1Xp7Ie4dbnEpoJgATyLM +1SdAwDSm3ze1PQcyoYGVA4GSAAQGsV8ahZ49gJJGEbIMG5Tf9r0FdP74GTfx5U0U +jS0x+MIbDqnOAxyUVXBvCFpp/UkkGFWMfemq3CyamW5+0f7aMpx9dgm7ayIDKRBU +TLE24sKaozVyqmw0caUuvKayKL7nSfqf/ikpakpbaqDG3J8JUhbnsVE9gcugB5Sj +9Vj3ShtUHHOyMI9PjnQCi1wrzfM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C16-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQGsV8ahZ49gJJGEbIMG5Tf9r0FdP74 +GTfx5U0UjS0x+MIbDqnOAxyUVXBvCFpp/UkkGFWMfemq3CyamW5+0f7aMpx9dgm7 +ayIDKRBUTLE24sKaozVyqmw0caUuvKayKL7nSfqf/ikpakpbaqDG3J8JUhbnsVE9 +gcugB5Sj9Vj3ShtUHHOyMI9PjnQCi1wrzfM= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C16-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQCmEtlMHTDaiWa2VbVVWUSwscx+lDy +AF0ASanZd95cALegVMlgzdcHiWMhSQvkM71e/9RMVk6qLVAhF1BQxb/BY82x6B3x +M1oBp4bSkJizNPXBxK6GpBvydcxnh9pyBpFlV6T0MxkhQQNFZ+BB1V15SncHx6ry +iELVyPWQN1pDZWkYqoDlWwKFNHzOj/4fFeg= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C16 +PeerKey=KAS-ECC-CDH_B-571_C16-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=007a40a59b6632156a43158565a4eeaf80618e501c5ac5afdab4ce3cb76ac99a0bcd17e9eec549373ace8c96aac78e2af6600483a2c49ec81298a083d5237118de96a953999beb26 + +PrivateKey=KAS-ECC-CDH_B-571_C17 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIA0H46GGC3k/D9DhX +JQqSmkGZTTMdoVTAJJ+g0cJqbeDoNfoIqMxSTj2sKGOD+QvS9NLHUULx04EI2cBi +FDyObtu9oK+Hp2rVoYGVA4GSAAQCxcXrcydAJnJXPDe0kokDQ6tCK1G8ZbYAdm7B +0HkI/wO8/edpTYMrzeUpRjOd8Kq0B0rgeon4IfWhEw0rc9sMQjrnoCOuLBgEdu09 +vZNtHDaYekNRLI8FYuMWEi0Fp+3U5CSJhMEfbrhSFdWqoCYqlfIGZsnb9FJIrhd9 +Lf/6OmqVBTMpi1w/Shti2h6vzVE= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C17-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQCxcXrcydAJnJXPDe0kokDQ6tCK1G8 +ZbYAdm7B0HkI/wO8/edpTYMrzeUpRjOd8Kq0B0rgeon4IfWhEw0rc9sMQjrnoCOu +LBgEdu09vZNtHDaYekNRLI8FYuMWEi0Fp+3U5CSJhMEfbrhSFdWqoCYqlfIGZsnb +9FJIrhd9Lf/6OmqVBTMpi1w/Shti2h6vzVE= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C17-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQBqGguCezNGGjaICkWpWHuhRPA1zRw +zTQa7nntk1VqOm58eyAwLsdKDFFwqON9eKm10N45AOsqZjpyR895Q/04HZWzqv0V +YWcFL+zGj3aV1OQaCAxHZQ0gKHTaFjoXSOVQNzlY4xvQquUgmW0w84RzD0hU9eVO +aMwklYrcUuKkxAc1ZRTz6nFmBW3Gfk0Rj6g= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C17 +PeerKey=KAS-ECC-CDH_B-571_C17-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=021fd2726973405fc30d2a1f2115907cbd0de90bb6bcb0496452e389b1b10ccf38e2400617040cf0dbb188f345337678b0ad8603dcfe926582d4321f384daec0943e2cd267f48343 + +PrivateKey=KAS-ECC-CDH_B-571_C18 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAgenOC2KIlcSJuDA +bCaB0JvKGbXbfnu/wTrCCDid+BaNd2FeMMqGEDk25T3ZrwHN/iT1COxgk5l3XOhM +hon41flvZS4BTg3ooYGVA4GSAAQEYI3AUSvFXHNM1WKsWCX3yji3k/js6bmBzBxA +Mt3YA5Fk0MZGtCsv1FO1odOnSuI8MsfVhAB948004zEhuQ+rOtpmIbOsl4UGqp/7 +/WXFCTcIRnB2dKxyPawkpvM6Hgu834skujLPe97I/ckjO3V7wHPWTe30hMb6Ae8o +6HT7DTT1iw4ysYZFwwvctRbuOEE= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C18-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQEYI3AUSvFXHNM1WKsWCX3yji3k/js +6bmBzBxAMt3YA5Fk0MZGtCsv1FO1odOnSuI8MsfVhAB948004zEhuQ+rOtpmIbOs +l4UGqp/7/WXFCTcIRnB2dKxyPawkpvM6Hgu834skujLPe97I/ckjO3V7wHPWTe30 +hMb6Ae8o6HT7DTT1iw4ysYZFwwvctRbuOEE= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C18-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQCza8TmgzaKADWESj/5NcyOzSg/PSM +lABHn/TIKRy/RvFsQeRAmq7fFLxgpkKy17qs3o4AUd2K4Bv1rS5uZJDHfNQGqZnF +ZeYHjt0p22o7h6EVBbV8VD/7dGpbQPuD1yBhgPOun8siLFQRp3R2Zgx7MRtkYxCQ +WImpWg8v3DXTD8YcxVYKKRQjLWKtNjhrkXk= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C18 +PeerKey=KAS-ECC-CDH_B-571_C18-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=07a47bdc7d54ecd391672f131b3214d0efc4d40195db1ec993a62fe9da875efff5403bd708fa491a01a94f4bddc7d516baffff9fbdd213ca1a4905f9aa679d65da25c0f1fd2afb0a + +PrivateKey=KAS-ECC-CDH_B-571_C19 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAGuo8SzG4OeN+Mxi +mISKdAAl5yxi0JnpJYSsdvWVrB/HJMsGqFoH8NRED6893qLyZfIBXdBZoWoDopkV +uHMdYEUSzu8iuEHzoYGVA4GSAAQGNvQ16AYAZmEIc3MAdzqO1v+o6/gwfIH/X0Q1 +PpG60IYzG4/v8/HNuG4GG95fccX7k48RfiImqX0rZrCY6f9SUYLIFucCxqkBwb2K ++uapQQj8LHVdXeP6Kks0cfwqXN9K3aaFKb8YD/KNsVSrQxEkezkuk6M1u+h5Zgi7 +1gE/Q83MhG7CImdCPDz9os6KPZY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C19-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQGNvQ16AYAZmEIc3MAdzqO1v+o6/gw +fIH/X0Q1PpG60IYzG4/v8/HNuG4GG95fccX7k48RfiImqX0rZrCY6f9SUYLIFucC +xqkBwb2K+uapQQj8LHVdXeP6Kks0cfwqXN9K3aaFKb8YD/KNsVSrQxEkezkuk6M1 +u+h5Zgi71gE/Q83MhG7CImdCPDz9os6KPZY= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C19-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQABRUS5KDbxTXJe+EP+nQldYOCiDBA +RmYB1TkbyzWCwRUlKTJJ8kSXzIByFrNMksHgdXgcg5HD9tPRT4ih1Q6p/HX/jVHM ++TMDnaRsrIZqs0dhesWotPFlcDTjuN22a8QnPi4c4BZB7OY2l53oskktxp6IU3w2 +scOtDTUif4Z+Q9+ciRfc6fjB7zujy1youlI= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C19 +PeerKey=KAS-ECC-CDH_B-571_C19-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=07326196a7decc92c81ae5a0779c9a42f53d94cfa4c3a13f19dbb554138e0e864eee6bc93e39214e2f74705a4b172aab510444c93b5b3e62517bbb7279337102db1c61de349d9747 + +PrivateKey=KAS-ECC-CDH_B-571_C20 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAQcW8ud08n9C3j9s +lpTY7KIXmCMJHSAvK6FikZOhyYcAaTOY/8gxV/fOSFjnU145kNIZvCSd4WRVjKyA +fuFZd4oBLaGeUBK/oYGVA4GSAAQBULOt3hYqfwk1Daz0YEGf6GuZ3NlPRCg/uj5D +0oG5O7VCgoEs5SJlqUg4lo1nqdbs3BtstkzxWUUhxHSepD2OTsBF5kX/I4sHtDMh +thGLh8Rse1IojfXdHPfaYYPs5WM7TBfK42LYIRkffVeSOSgzmq332F9/Gd6UhnCe +TS3e9CxVu012o8tQytKgmOrVlSo= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C20-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQBULOt3hYqfwk1Daz0YEGf6GuZ3NlP +RCg/uj5D0oG5O7VCgoEs5SJlqUg4lo1nqdbs3BtstkzxWUUhxHSepD2OTsBF5kX/ +I4sHtDMhthGLh8Rse1IojfXdHPfaYYPs5WM7TBfK42LYIRkffVeSOSgzmq332F9/ +Gd6UhnCeTS3e9CxVu012o8tQytKgmOrVlSo= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C20-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQATC3lZCQxvMbrgu/UNVVAqLXSOxKw +330xrWlCW5RUmHdEPujdfAnPu+2G8TZlkx1LKiF1nDPhC0rPxjuh72GsqqGMlOPP +yTMBdlt6N+uAbUMZbSkx2hoZU3QtPg2nzLZ+Df26XgNJFMzj7mOTv95AZw9AYZYG +faiyk8aENZPdIhyJv5eWNna9BE6MirjnF60= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C20 +PeerKey=KAS-ECC-CDH_B-571_C20-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=059052d3e1c66efa4b7dd39e74299e886367d8fe49d7cab90e4f051bec10316438fb29b1290dfdaec169decd622a1010cf0a0275008814f4861b4d83ba78515a8768d978be430011 + +PrivateKey=KAS-ECC-CDH_B-571_C21 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAdAQP8eUivEH5R9N +LMA5K2aAgFnR8my6Bb5qOB9SLUy4VBN5NKzNHOozYJSOQG0xCMlDdp3HALTJzAzB +2EurWKNeJ+skBHXwoYGVA4GSAAQBK9qN7T7X6LbTm1hVpY1yW2XjhXwqZ0mW6zk6 +Pj+RWVu/qHJTpW66wrEO1Aavnb/1OyImX761p2nKzitgtF2/l87tKwoE21ACZFSC +fv4psySuPy1MDco6OpVJFRHFMWRaz1RbRe9qxKUMCdPSHyE8p2uW+xgkLsvgivaH +Vd5OEHcXNHWCbqq+0mp1w2nNew8= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C21-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQBK9qN7T7X6LbTm1hVpY1yW2XjhXwq +Z0mW6zk6Pj+RWVu/qHJTpW66wrEO1Aavnb/1OyImX761p2nKzitgtF2/l87tKwoE +21ACZFSCfv4psySuPy1MDco6OpVJFRHFMWRaz1RbRe9qxKUMCdPSHyE8p2uW+xgk +LsvgivaHVd5OEHcXNHWCbqq+0mp1w2nNew8= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C21-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQCUDig5yrowW424+O1BO1zQe9wm5/s +i+kBdzRtdsp7xxM9DsKArPBmAFxcwQtSqmVDNf6CCmYX5WDicJA/8cLMivE5jyTf +4rADEHTKOTGAGmrLdltukUQXLtgdmZ7Z6DW9NVJrA+8qE/eDdgMrDrgUbCMTI2X8 +4Xany9ykSzWqN5hZ9oisJtxkyBSaQyLQg9E= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C21 +PeerKey=KAS-ECC-CDH_B-571_C21-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=03acfa4b3d1c2a6b62af23bdff6a215a416d4437ce6cc114d17dc4201195987a5d7301da11b913254702d7172e31d64e59b24deaa3270f20445e51dc484f7a2b8c3cbeb0bb9efb28 + +PrivateKey=KAS-ECC-CDH_B-571_C22 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAy0vVX/ke40oD2gu +JP2mJ916WOmwCCKjqvbregFPR2wXlBrcXiI4owgNcG8eFqRRt+kpQneZMMVnCkcy +gcrHi4WNHxzJmwr/oYGVA4GSAAQEDzEw50scjrJl58TmkhQR65cUGCZ+jeqHnC6L +Vjhk8jphsjQiyaBvoXiooVXj54RXWXWH8+NbefGdDC4YWu9G25WBnL4SexAByR0n +wq5xE+sDvpjpTTrW3seR+sL+DSyMmLcTcbBYpkn6nD+jzNu6kyOVwnr/og2VrAQb +yZeOP1MIKaLGTImxvM6sBoVPuQM= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C22-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQEDzEw50scjrJl58TmkhQR65cUGCZ+ +jeqHnC6LVjhk8jphsjQiyaBvoXiooVXj54RXWXWH8+NbefGdDC4YWu9G25WBnL4S +exAByR0nwq5xE+sDvpjpTTrW3seR+sL+DSyMmLcTcbBYpkn6nD+jzNu6kyOVwnr/ +og2VrAQbyZeOP1MIKaLGTImxvM6sBoVPuQM= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C22-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQBvf/9acLgj7A8hT7y69CI5o0jP9uV +8LJG3nlV1hUHff0LD/AsZNAd55M1kJa4XgV7G3+fWSYtwnV/GCQ+GC4aC/6dy7An +1osCGL59lWAp8TnBnS2jRnc7FtevyFirjctg1+SErs7DCcs/6pavOQNjfl2022eL +tdubCxjYPPnrwbGq8k9DZ+xTNoTOnVZYLUM= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C22 +PeerKey=KAS-ECC-CDH_B-571_C22-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=067a58e5b3287bb9aa83ed9ca2d718cf7165fb574b6a446c3019849cd1584673d561b574bc8f68419437c5e8113e060847cad3b5ddc2f67ad75bc1e3f04554e63a5e4945cfcb65f5 + +PrivateKey=KAS-ECC-CDH_B-571_C23 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIA+7ikZaovnDrOjEE +ZAWcwMTELxNIerGgdiwsvjBOvmNQPmxwaKf0vBl/gfZbQpXBSyEPPLI3i2dAH89S +vsAsE7YbbeFOG35boYGVA4GSAAQBd6zF/p9C9N4tJ6ub9vfg6s4wPCZv+LNGkIKr +qTZ+ZkQL1rG9i24a7JK2XjWuqPAH8J1M1n7qXWAAc2yru53MyUPrtWVqBYYHFvGJ +jiqMJzGd56JpjyHV3likuLjdArXkMxENOXf+6OxcCJ0XCvAqStPB+rRLDR4qO+up +4HGc2L+DZEeNaGxONfdFfSTQIdY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C23-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQBd6zF/p9C9N4tJ6ub9vfg6s4wPCZv ++LNGkIKrqTZ+ZkQL1rG9i24a7JK2XjWuqPAH8J1M1n7qXWAAc2yru53MyUPrtWVq +BYYHFvGJjiqMJzGd56JpjyHV3likuLjdArXkMxENOXf+6OxcCJ0XCvAqStPB+rRL +DR4qO+up4HGc2L+DZEeNaGxONfdFfSTQIdY= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C23-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQAj8O0FPNBK0A/AcJTvSImFQIl3aqz +TSAQifSdeeXcwuO2ghb6pm2sRFKcf+O6TSjYFbCII1lVcTu3chODUztdlCIbTtHh +YrgCsyIB3icrGzK2pqWOoiQRxI9dxc8PlYcuZ1HtYizuzqIqVWl13mADhpriCvOb +QrqIcXicgujzrTz2AG9DvEx9QQIDLEP495c= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C23 +PeerKey=KAS-ECC-CDH_B-571_C23-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=06b272ca3330c0cdfbe60a1746bc0ddea6257536cdd8e976f2517eb541460a3f0e6ea7fec2b495e0f57712c8cac35e8a7d64d876c29851bbfeb6fe726d57e0be43dc76a584ef9c93 + +PrivateKey=KAS-ECC-CDH_B-571_C24 +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAWmi2HWGlEwxc7+a +InXjCAAD22SMLR4cVuLDfODXzZ+Bjqa3u6ND93TvDzNOpcEu8L51k9BO2UVFjXHh +cRLrAdkEHSEzsTRzoYGVA4GSAAQFHlIXZCZa9/AbzZw/0CLf2y1KLFizsj0uVQMC +xCqt1X0d9vwY5GW9mEQkle7SLz/WcAKEyfp4M7UWUUm44akeDgmaClcy1cIBmOfn +0JTiB1KMWDhl0mKpGPwqOSYelcB9y9BE79OYGJkHivPrlzmCAaRlDw3Mvxn5Isjb +w4Ob9r4AU/hFMccYQ6nmoQKrWNY= +-----END PRIVATE KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C24-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQFHlIXZCZa9/AbzZw/0CLf2y1KLFiz +sj0uVQMCxCqt1X0d9vwY5GW9mEQkle7SLz/WcAKEyfp4M7UWUUm44akeDgmaClcy +1cIBmOfn0JTiB1KMWDhl0mKpGPwqOSYelcB9y9BE79OYGJkHivPrlzmCAaRlDw3M +vxn5Isjbw4Ob9r4AU/hFMccYQ6nmoQKrWNY= +-----END PUBLIC KEY----- + +PublicKey=KAS-ECC-CDH_B-571_C24-Peer-PUBLIC +-----BEGIN PUBLIC KEY----- +MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQFZagplNfm9T7ra/Z1I+5oD/t3ARhn +PD4VwyAObI0fJsq68AwdpI5jdDFkl8ul8Z8XQg8mdjP0DlsGNieJv/Ea31ltWxz3 +aO8Bay1Nqsqca+2XayBk71Q1KliuNDZ4NaYhDhV4KRwd6NZ8ILw9b/piDIezCYor +nzq7jSys1bLuK2g5nqxOj2XOvdZjAP0Em1s= +-----END PUBLIC KEY----- + + +Derive=KAS-ECC-CDH_B-571_C24 +PeerKey=KAS-ECC-CDH_B-571_C24-Peer-PUBLIC +Ctrl=ecdh_cofactor_mode:1 +SharedSecret=02da266a269bdc8d8b2a0c6bb5762f102fc801c8d5394a9271539136bd81d4b69cfbb7525cd0a983fb7f7e9deec583b8f8e574c6184b2d79831ec770649e484dc006fa35b0bffd0b + diff --git a/test/recipes/15-test_ecdh.t b/test/recipes/15-test_ecdh.t deleted file mode 100644 index f11cd06..0000000 --- a/test/recipes/15-test_ecdh.t +++ /dev/null @@ -1,12 +0,0 @@ -#! /usr/bin/env perl -# Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. -# -# Licensed under the OpenSSL license (the "License"). You may not use -# this file except in compliance with the License. You can obtain a copy -# in the file LICENSE in the source distribution or at -# https://www.openssl.org/source/license.html - - -use OpenSSL::Test::Simple; - -simple_test("test_ecdh", "ecdhtest", "ec"); From builds at travis-ci.org Fri Apr 14 12:16:03 2017 From: builds at travis-ci.org (Travis CI) Date: Fri, 14 Apr 2017 12:16:03 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10309 (master - 4afc606) In-Reply-To: Message-ID: <58f0bd837f586_43feb533d213c482731@ed6de1cd-785e-477d-baf5-b83d96f7d1ea.mail> Build Update for openssl/openssl ------------------------------------- Build: #10309 Status: Still Failing Duration: 20 minutes and 27 seconds Commit: 4afc606 (master) Author: Rich Salz Message: WIP: Convert ui,v3ext,verify_extra_test verify_extra_test still failing :( Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3194) View the changeset: https://github.com/openssl/openssl/compare/80b06b0cc067...4afc60605abc View the full build log and details: https://travis-ci.org/openssl/openssl/builds/222048650 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From rsalz at openssl.org Fri Apr 14 12:17:01 2017 From: rsalz at openssl.org (Rich Salz) Date: Fri, 14 Apr 2017 12:17:01 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1492172221.007005.20514.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via cece12299b3163857a65c384885b91a9c7de93b8 (commit) from 9be439a31821c36ef31e5ebdc6f8c6f8a1f4843f (commit) - Log ----------------------------------------------------------------- commit cece12299b3163857a65c384885b91a9c7de93b8 Author: Nicola Tuveri Date: Thu Apr 13 20:35:32 2017 +0300 Reformat evptests.txt When compiling without EC support the test fails abruptly reading some keys. Some keys merged in commit db040557c8bf4449e0a0b43510a2b30d89d58a83 start with ------BEGIN EC PRIVATE KEY----- this format is not supported without EC support. This commit reformat those keys with the generic format. After this change the test simply skips the unsupported EC keys when EC is disabled, without parsing errors. Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3222) ----------------------------------------------------------------------- Summary of changes: test/evptests.txt | 1606 +++++++++++++++++++++++++++-------------------------- 1 file changed, 824 insertions(+), 782 deletions(-) diff --git a/test/evptests.txt b/test/evptests.txt index 8a7f174..ff518d6 100644 --- a/test/evptests.txt +++ b/test/evptests.txt @@ -2446,7 +2446,6 @@ Output = 8F49A1B7D6AA2258 # RSA 2048 bit key. PrivateKey = RSA-2048 - -----BEGIN PRIVATE KEY----- MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDNAIHqeyrh6gbV n3xz2f+5SglhXC5Lp8Y2zvCN01M+wxhVJbAVx2m5mnfWclv5w1Mqm25fZifV+4UW @@ -2479,7 +2478,6 @@ fMkTd7GabVourqIZdgvu1Q== # Corresponding public key PublicKey = RSA-2048-PUBLIC - -----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzQCB6nsq4eoG1Z98c9n/ uUoJYVwuS6fGNs7wjdNTPsMYVSWwFcdpuZp31nJb+cNTKptuX2Yn1fuFFgdo092p @@ -2493,7 +2491,6 @@ TwIDAQAB # EC P-256 key PrivateKey=P-256 - -----BEGIN PRIVATE KEY----- MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgiocvtiiTxNH/xbnw +RdYBp+DUuCPoFpJ+NuSbLVyhyWhRANCAAQsFQ9CnOcPIWwlLPXgYs4fY5zV0WXH @@ -2503,7 +2500,6 @@ MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgiocvtiiTxNH/xbnw # EC public key for above PublicKey=P-256-PUBLIC - -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAELBUPQpznDyFsJSz14GLOH2Oc1dFl x/iUJAcsJxl9eLM7kg6VzbZk6ZDc8M/qDZTiqOavnQ5YBW5lMQSSW5/myQ== @@ -2525,7 +2521,6 @@ CrmVlCNy6lFAldO8IPkSyzGPMjSvZI6nIGQ7P3Afm3reuJ0KvnTZ77acRg== # DSA key PrivateKey=DSA-1024 - -----BEGIN PRIVATE KEY----- MIIBSwIBADCCASwGByqGSM44BAEwggEfAoGBAO0SwRpkAeM21qSM5ch4CLEHpFk4 19R5ve1UUr421y3HEUURsrVpxYKvyx8aOBQC/akz95cYxNN3y1JnJJMxPklhdJrJ @@ -2537,7 +2532,6 @@ woS0mp33oQYs43nt29B6UwbtMmbzCOQ9vGGwWVho+JtHyyPWrDuLmkvLtoQPaxYt -----END PRIVATE KEY----- PublicKey=DSA-1024-PUBLIC - -----BEGIN PUBLIC KEY----- MIIBtzCCASwGByqGSM44BAEwggEfAoGBAO0SwRpkAeM21qSM5ch4CLEHpFk419R5 ve1UUr421y3HEUURsrVpxYKvyx8aOBQC/akz95cYxNN3y1JnJJMxPklhdJrJf/WD @@ -3687,10 +3681,10 @@ Reason = operation not supported for this keytype # TEST CURVE secp112r1 PrivateKey=ALICE_secp112r1 ------BEGIN EC PRIVATE KEY----- -MD4CAQEEDqyoqnf0BYsKW6zaFrmuoAcGBSuBBAAGoSADHgAEng1OA5HXFACvczp4 -zjpapdbbMDoWexQwoUXBzA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +ME4CAQAwEAYHKoZIzj0CAQYFK4EEAAYENzA1AgEBBA6sqKp39AWLClus2ha5rqEg +Ax4ABJ4NTgOR1xQAr3M6eM46WqXW2zA6FnsUMKFFwcw= +-----END PRIVATE KEY----- PublicKey=ALICE_secp112r1_PUB -----BEGIN PUBLIC KEY----- @@ -3699,10 +3693,10 @@ oUXBzA== -----END PUBLIC KEY----- PrivateKey=BOB_secp112r1 ------BEGIN EC PRIVATE KEY----- -MD4CAQEEDmkhtf6ESrj2YU+NSXj/oAcGBSuBBAAGoSADHgAEGw81kebWlx3DXTiJ -vAjJwJ76vm+h5F9BRlFndw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +ME4CAQAwEAYHKoZIzj0CAQYFK4EEAAYENzA1AgEBBA5pIbX+hEq49mFPjUl4/6Eg +Ax4ABBsPNZHm1pcdw104ibwIycCe+r5voeRfQUZRZ3c= +-----END PRIVATE KEY----- PublicKey=BOB_secp112r1_PUB -----BEGIN PUBLIC KEY----- @@ -3723,10 +3717,10 @@ SharedSecret=a6cefb5aa7a352afe818749eb401 # TEST CURVE secp112r2 PrivateKey=ALICE_secp112r2 ------BEGIN EC PRIVATE KEY----- -MD4CAQEEDiDPNuUp8TpnChRbQVCZoAcGBSuBBAAHoSADHgAEkngvtWjnQ1nlUZni -c2TEU1yMlDAMhBvX/0iQsQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +ME4CAQAwEAYHKoZIzj0CAQYFK4EEAAcENzA1AgEBBA4gzzblKfE6ZwoUW0FQmaEg +Ax4ABJJ4L7Vo50NZ5VGZ4nNkxFNcjJQwDIQb1/9IkLE= +-----END PRIVATE KEY----- PublicKey=ALICE_secp112r2_PUB -----BEGIN PUBLIC KEY----- @@ -3735,10 +3729,10 @@ MDIwEAYHKoZIzj0CAQYFK4EEAAcDHgAEkngvtWjnQ1nlUZnic2TEU1yMlDAMhBvX -----END PUBLIC KEY----- PrivateKey=BOB_secp112r2 ------BEGIN EC PRIVATE KEY----- -MD4CAQEEDgP2gYaP47y+NnPc5k1qoAcGBSuBBAAHoSADHgAE1k6/mBTO9VuAAelO -C7eFSFNC0HwtqZMQh9pFYQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +ME4CAQAwEAYHKoZIzj0CAQYFK4EEAAcENzA1AgEBBA4D9oGGj+O8vjZz3OZNaqEg +Ax4ABNZOv5gUzvVbgAHpTgu3hUhTQtB8LamTEIfaRWE= +-----END PRIVATE KEY----- PublicKey=BOB_secp112r2_PUB -----BEGIN PUBLIC KEY----- @@ -3759,10 +3753,10 @@ SharedSecret=6bed2c55e233e9214d5898c4c12a # TEST CURVE secp128r1 PrivateKey=ALICE_secp128r1 ------BEGIN EC PRIVATE KEY----- -MEQCAQEEEI/Vz6XF9FP4xlZny4YJhiWgBwYFK4EEAByhJAMiAAQfafSJynzuKe/u -RRisQWOlm4cngOoCuEdL5l+nZdc7UA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFQCAQAwEAYHKoZIzj0CAQYFK4EEABwEPTA7AgEBBBCP1c+lxfRT+MZWZ8uGCYYl +oSQDIgAEH2n0icp87inv7kUYrEFjpZuHJ4DqArhHS+Zfp2XXO1A= +-----END PRIVATE KEY----- PublicKey=ALICE_secp128r1_PUB -----BEGIN PUBLIC KEY----- @@ -3771,10 +3765,10 @@ S+Zfp2XXO1A= -----END PUBLIC KEY----- PrivateKey=BOB_secp128r1 ------BEGIN EC PRIVATE KEY----- -MEQCAQEEEIZsR3ceHCvvpdtB6SEisNOgBwYFK4EEAByhJAMiAAQ0qNLQc3H+AQph -A01pv2/zOVb8PjNKO/c3LcSnQZViaw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFQCAQAwEAYHKoZIzj0CAQYFK4EEABwEPTA7AgEBBBCGbEd3Hhwr76XbQekhIrDT +oSQDIgAENKjS0HNx/gEKYQNNab9v8zlW/D4zSjv3Ny3Ep0GVYms= +-----END PRIVATE KEY----- PublicKey=BOB_secp128r1_PUB -----BEGIN PUBLIC KEY----- @@ -3795,10 +3789,10 @@ SharedSecret=91ded46ac404afdbd708fdcc1cac6842 # TEST CURVE secp128r2 PrivateKey=ALICE_secp128r2 ------BEGIN EC PRIVATE KEY----- -MEQCAQEEECBEpKM+xnvosMYgDaK3lIKgBwYFK4EEAB2hJAMiAAQFV2NxSlH5votE -+bpHx8AP/qQHFXQqXf3f1afT6dSl/w== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFQCAQAwEAYHKoZIzj0CAQYFK4EEAB0EPTA7AgEBBBAgRKSjPsZ76LDGIA2it5SC +oSQDIgAEBVdjcUpR+b6LRPm6R8fAD/6kBxV0Kl3939Wn0+nUpf8= +-----END PRIVATE KEY----- PublicKey=ALICE_secp128r2_PUB -----BEGIN PUBLIC KEY----- @@ -3807,10 +3801,10 @@ MDYwEAYHKoZIzj0CAQYFK4EEAB0DIgAEBVdjcUpR+b6LRPm6R8fAD/6kBxV0Kl39 -----END PUBLIC KEY----- PrivateKey=BOB_secp128r2 ------BEGIN EC PRIVATE KEY----- -MEQCAQEEEAKnTSPDkPuhu8OYmnvAO4CgBwYFK4EEAB2hJAMiAAQE7cFtWtzlK+G8 -35+ZZKG7a1YgVBqnnKzlEcwIsuXT3w== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFQCAQAwEAYHKoZIzj0CAQYFK4EEAB0EPTA7AgEBBBACp00jw5D7obvDmJp7wDuA +oSQDIgAEBO3BbVrc5SvhvN+fmWShu2tWIFQap5ys5RHMCLLl098= +-----END PRIVATE KEY----- PublicKey=BOB_secp128r2_PUB -----BEGIN PUBLIC KEY----- @@ -3831,10 +3825,11 @@ SharedSecret=dc32faa978008a694672076b756a1e4b # TEST CURVE secp160k1 PrivateKey=ALICE_secp160k1 ------BEGIN EC PRIVATE KEY----- -MFECAQEEFQC503dg5c3S67QIvZMZl09h41T/vaAHBgUrgQQACaEsAyoABHcO7R0r -by1LJbFhLP8SzZaqvgL5s18nW6IrgncEVLlR1zjyezHF+OM= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGECAQAwEAYHKoZIzj0CAQYFK4EEAAkESjBIAgEBBBUAudN3YOXN0uu0CL2TGZdP +YeNU/72hLAMqAAR3Du0dK28tSyWxYSz/Es2Wqr4C+bNfJ1uiK4J3BFS5Udc48nsx +xfjj +-----END PRIVATE KEY----- PublicKey=ALICE_secp160k1_PUB -----BEGIN PUBLIC KEY----- @@ -3843,10 +3838,11 @@ oiuCdwRUuVHXOPJ7McX44w== -----END PUBLIC KEY----- PrivateKey=BOB_secp160k1 ------BEGIN EC PRIVATE KEY----- -MFECAQEEFQDl82IIVUY8zVoe7BdS+6HGhjbJT6AHBgUrgQQACaEsAyoABAeUzqi2 -Zqm3T/Sxz7ltw+hhPpx/IBG/hVQ46jojZ4EZcsibzXbWuJw= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGECAQAwEAYHKoZIzj0CAQYFK4EEAAkESjBIAgEBBBUA5fNiCFVGPM1aHuwXUvuh +xoY2yU+hLAMqAAQHlM6otmapt0/0sc+5bcPoYT6cfyARv4VUOOo6I2eBGXLIm812 +1ric +-----END PRIVATE KEY----- PublicKey=BOB_secp160k1_PUB -----BEGIN PUBLIC KEY----- @@ -3867,10 +3863,11 @@ SharedSecret=5457d367346cc3e82031784f95ebcd856de0c735 # TEST CURVE secp160r1 PrivateKey=ALICE_secp160r1 ------BEGIN EC PRIVATE KEY----- -MFECAQEEFQDQoO1qIVRZ3w0bSU71Mu7OMtZcl6AHBgUrgQQACKEsAyoABIdA3UMY -Fe13IXf4GN8h9taDjTd1SpdshfNmhy0PI49NBoZVuWZLBcI= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGECAQAwEAYHKoZIzj0CAQYFK4EEAAgESjBIAgEBBBUA0KDtaiFUWd8NG0lO9TLu +zjLWXJehLAMqAASHQN1DGBXtdyF3+BjfIfbWg403dUqXbIXzZoctDyOPTQaGVblm +SwXC +-----END PRIVATE KEY----- PublicKey=ALICE_secp160r1_PUB -----BEGIN PUBLIC KEY----- @@ -3879,10 +3876,11 @@ MD4wEAYHKoZIzj0CAQYFK4EEAAgDKgAEh0DdQxgV7Xchd/gY3yH21oONN3VKl2yF -----END PUBLIC KEY----- PrivateKey=BOB_secp160r1 ------BEGIN EC PRIVATE KEY----- -MFECAQEEFQCwEjC/HpkAGKeGyL5sZqIK962K5aAHBgUrgQQACKEsAyoABAnb5GGk -Z52RRhdSI9n+mUdcUHLpHdfMxQYgqJcUZIGnAXyEZE2pQPI= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGECAQAwEAYHKoZIzj0CAQYFK4EEAAgESjBIAgEBBBUAsBIwvx6ZABinhsi+bGai +CvetiuWhLAMqAAQJ2+RhpGedkUYXUiPZ/plHXFBy6R3XzMUGIKiXFGSBpwF8hGRN +qUDy +-----END PRIVATE KEY----- PublicKey=BOB_secp160r1_PUB -----BEGIN PUBLIC KEY----- @@ -3903,10 +3901,11 @@ SharedSecret=87856536b6a295ea94d3e483d69c6212d5c7afcf # TEST CURVE secp160r2 PrivateKey=ALICE_secp160r2 ------BEGIN EC PRIVATE KEY----- -MFECAQEEFQCGYs4AkY25KhlQI3h/Q6ctnqtFJKAHBgUrgQQAHqEsAyoABA9I2+El -CiEwR+KNer4mWrtr2XOixB8++4jI6DqyHLNRVLjdH7suCvk= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGECAQAwEAYHKoZIzj0CAQYFK4EEAB4ESjBIAgEBBBUAhmLOAJGNuSoZUCN4f0On +LZ6rRSShLAMqAAQPSNvhJQohMEfijXq+Jlq7a9lzosQfPvuIyOg6shyzUVS43R+7 +Lgr5 +-----END PRIVATE KEY----- PublicKey=ALICE_secp160r2_PUB -----BEGIN PUBLIC KEY----- @@ -3915,10 +3914,11 @@ iMjoOrIcs1FUuN0fuy4K+Q== -----END PUBLIC KEY----- PrivateKey=BOB_secp160r2 ------BEGIN EC PRIVATE KEY----- -MFECAQEEFQDXSaPNHYPLQIuab8xMAdNvkIF6c6AHBgUrgQQAHqEsAyoABGrNgBxK -KPMCja/OYy4ry1ryyX9uC64KlHAUP3cAI/rhPOAjet4WGxc= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGECAQAwEAYHKoZIzj0CAQYFK4EEAB4ESjBIAgEBBBUA10mjzR2Dy0CLmm/MTAHT +b5CBenOhLAMqAARqzYAcSijzAo2vzmMuK8ta8sl/bguuCpRwFD93ACP64TzgI3re +FhsX +-----END PRIVATE KEY----- PublicKey=BOB_secp160r2_PUB -----BEGIN PUBLIC KEY----- @@ -3939,10 +3939,11 @@ SharedSecret=5481e282c47cbd37c84873847c4fc2f31fc15a1a # TEST CURVE secp192k1 PrivateKey=ALICE_secp192k1 ------BEGIN EC PRIVATE KEY----- -MFwCAQEEGLMXcp4cyxpX8o5H+i0KZ0tBPaoY2rceFaAHBgUrgQQAH6E0AzIABM/4 -v1IaXcrrCZ6+QvAmeQw0enQjlF9e6VJ8e4dk+ngIauGLp4o1AuSlnY5Bo8gTEA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGwCAQAwEAYHKoZIzj0CAQYFK4EEAB8EVTBTAgEBBBizF3KeHMsaV/KOR/otCmdL +QT2qGNq3HhWhNAMyAATP+L9SGl3K6wmevkLwJnkMNHp0I5RfXulSfHuHZPp4CGrh +i6eKNQLkpZ2OQaPIExA= +-----END PRIVATE KEY----- PublicKey=ALICE_secp192k1_PUB -----BEGIN PUBLIC KEY----- @@ -3951,10 +3952,11 @@ Unx7h2T6eAhq4YunijUC5KWdjkGjyBMQ -----END PUBLIC KEY----- PrivateKey=BOB_secp192k1 ------BEGIN EC PRIVATE KEY----- -MFwCAQEEGHwFc9UZApgLDS/sNjfBlVpzKHJSMhtTKaAHBgUrgQQAH6E0AzIABOAj -uHDYtKPq43fIvme8c46QyI+1qUqv4EawVpzf1Fianriav7DrpsMhY3dWWU7otg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGwCAQAwEAYHKoZIzj0CAQYFK4EEAB8EVTBTAgEBBBh8BXPVGQKYCw0v7DY3wZVa +cyhyUjIbUymhNAMyAATgI7hw2LSj6uN3yL5nvHOOkMiPtalKr+BGsFac39RYmp64 +mr+w66bDIWN3VllO6LY= +-----END PRIVATE KEY----- PublicKey=BOB_secp192k1_PUB -----BEGIN PUBLIC KEY----- @@ -3975,11 +3977,11 @@ SharedSecret=6a4daca0412284172e8fcaafa0d9df76257d899752bf0f23 # TEST CURVE secp224k1 PrivateKey=ALICE_secp224k1 ------BEGIN EC PRIVATE KEY----- -MGkCAQEEHQCFcoYkWo4jg/U8sVHczoyR6lP/YO13bsjUDDPHoAcGBSuBBAAgoTwD -OgAE9U3/VvpUdurtTqlZo6tR6onm9KBYvj27+64PjwPgVF/ugV2LE31VYivGvQ9E -HJ4RiaUfDgw4RAo= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHkCAQAwEAYHKoZIzj0CAQYFK4EEACAEYjBgAgEBBB0AhXKGJFqOI4P1PLFR3M6M +kepT/2Dtd27I1Awzx6E8AzoABPVN/1b6VHbq7U6pWaOrUeqJ5vSgWL49u/uuD48D +4FRf7oFdixN9VWIrxr0PRByeEYmlHw4MOEQK +-----END PRIVATE KEY----- PublicKey=ALICE_secp224k1_PUB -----BEGIN PUBLIC KEY----- @@ -3988,11 +3990,11 @@ ME4wEAYHKoZIzj0CAQYFK4EEACADOgAE9U3/VvpUdurtTqlZo6tR6onm9KBYvj27 -----END PUBLIC KEY----- PrivateKey=BOB_secp224k1 ------BEGIN EC PRIVATE KEY----- -MGkCAQEEHQA6MRdijPxhxaiRJ/hTmBcduMN8gs9096OUTRP8oAcGBSuBBAAgoTwD -OgAEZcBD4Ce1fs6fhwrA/5/grNkZolnCMGreMKPKayv0DdzxUKhFdcGD5U+gqDt8 -OQwiAjyo+asL3lA= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHkCAQAwEAYHKoZIzj0CAQYFK4EEACAEYjBgAgEBBB0AOjEXYoz8YcWokSf4U5gX +HbjDfILPdPejlE0T/KE8AzoABGXAQ+AntX7On4cKwP+f4KzZGaJZwjBq3jCjymsr +9A3c8VCoRXXBg+VPoKg7fDkMIgI8qPmrC95Q +-----END PRIVATE KEY----- PublicKey=BOB_secp224k1_PUB -----BEGIN PUBLIC KEY----- @@ -4013,11 +4015,11 @@ SharedSecret=80b65e65fe29c779213dd31189d371ff57b0b2bf08c6458ed142399a # TEST CURVE secp224r1 PrivateKey=ALICE_secp224r1 ------BEGIN EC PRIVATE KEY----- -MGgCAQEEHEsqRcUldioZSVOyaCOV6yKTCp6Ot6SuRJNt6HKgBwYFK4EEACGhPAM6 -AARRwSHQaDL+sP42P0lCjPMj6rM+2JTtvYPYe10JriF9tU9eeBxEfYHbE3xb51we -gjGvE7ZQVfLjGg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBxLKkXFJXYqGUlTsmgjlesi +kwqejrekrkSTbehyoTwDOgAEUcEh0Ggy/rD+Nj9JQozzI+qzPtiU7b2D2HtdCa4h +fbVPXngcRH2B2xN8W+dcHoIxrxO2UFXy4xo= +-----END PRIVATE KEY----- PublicKey=ALICE_secp224r1_PUB -----BEGIN PUBLIC KEY----- @@ -4026,11 +4028,11 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEUcEh0Ggy/rD+Nj9JQozzI+qzPtiU7b2D -----END PUBLIC KEY----- PrivateKey=BOB_secp224r1 ------BEGIN EC PRIVATE KEY----- -MGgCAQEEHM4cYZRHd9liDcZJpQ3qnGg1C0CU7MzdRyUSEzOgBwYFK4EEACGhPAM6 -AAR3AWSUr9igNFTpsztfa6U0vCrH1NQRMwVQzpVX0MHhhy8DO/qlCBXBgRTshqGZ -IqlfX1yFs+3YjQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBzOHGGUR3fZYg3GSaUN6pxo +NQtAlOzM3UclEhMzoTwDOgAEdwFklK/YoDRU6bM7X2ulNLwqx9TUETMFUM6VV9DB +4YcvAzv6pQgVwYEU7IahmSKpX19chbPt2I0= +-----END PRIVATE KEY----- PublicKey=BOB_secp224r1_PUB -----BEGIN PUBLIC KEY----- @@ -4051,11 +4053,11 @@ SharedSecret=34ea06d16d82f0d1725de47f3639ac0c23db7d7ed68f01488539a2a5 # TEST CURVE secp256k1 PrivateKey=ALICE_secp256k1 ------BEGIN EC PRIVATE KEY----- -MHQCAQEEIBwkc8tCHBMegngOqIDTSkjn7k5R8uHxPyzcZADVEuJPoAcGBSuBBAAK -oUQDQgAEgwZsCpJV+DnG2UiSV/ZsZtVq+0z0y6W8qcSnCkZtFyjcVZa2VPFkApeu -hrV9gw8l/tPl4gt4W2kVnGLYOz+ljg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGEAgEAMBAGByqGSM49AgEGBSuBBAAKBG0wawIBAQQgHCRzy0IcEx6CeA6ogNNK +SOfuTlHy4fE/LNxkANUS4k+hRANCAASDBmwKklX4OcbZSJJX9mxm1Wr7TPTLpbyp +xKcKRm0XKNxVlrZU8WQCl66GtX2DDyX+0+XiC3hbaRWcYtg7P6WO +-----END PRIVATE KEY----- PublicKey=ALICE_secp256k1_PUB -----BEGIN PUBLIC KEY----- @@ -4064,11 +4066,11 @@ qcSnCkZtFyjcVZa2VPFkApeuhrV9gw8l/tPl4gt4W2kVnGLYOz+ljg== -----END PUBLIC KEY----- PrivateKey=BOB_secp256k1 ------BEGIN EC PRIVATE KEY----- -MHQCAQEEIAoQpBb1rTnK1y5l1RqpEdIHZ7csrYxsxCrnubfiC9pYoAcGBSuBBAAK -oUQDQgAEBUKCHJHsvlcod0MCVlFHylzW241nveMmRAFhryNgX6rVqooGReVUm+Wi -F7Uz0ZsIjdHKd9HHe+2BOWfnuWyR1A== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGEAgEAMBAGByqGSM49AgEGBSuBBAAKBG0wawIBAQQgChCkFvWtOcrXLmXVGqkR +0gdntyytjGzEKue5t+IL2lihRANCAAQFQoIckey+Vyh3QwJWUUfKXNbbjWe94yZE +AWGvI2BfqtWqigZF5VSb5aIXtTPRmwiN0cp30cd77YE5Z+e5bJHU +-----END PRIVATE KEY----- PublicKey=BOB_secp256k1_PUB -----BEGIN PUBLIC KEY----- @@ -4089,12 +4091,12 @@ SharedSecret=af43b52790082fd87afb1d14b883c12d12bb9e554080d1f8e527920676e31f3e # TEST CURVE secp384r1 PrivateKey=ALICE_secp384r1 ------BEGIN EC PRIVATE KEY----- -MIGkAgEBBDCxE7Q4m1dsK7M3OtxocgY/ejX9JOKKdAtSnRiU4bnK3eFmALkMN7XI -veQnWLB1PEKgBwYFK4EEACKhZANiAAQaUsvUFr/uISpAmYqYZIme4VassCtb0tNG -U97s3qt4ozcogZ4z+fIzXZ4YXqfGoEa57+uQDgqr+jNOTji7Gxopt6AqZ9EvwuVa -CuunUi0pcx6cc8IuUfrwMwSFovV/7sM= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDCxE7Q4m1dsK7M3Otxo +cgY/ejX9JOKKdAtSnRiU4bnK3eFmALkMN7XIveQnWLB1PEKhZANiAAQaUsvUFr/u +ISpAmYqYZIme4VassCtb0tNGU97s3qt4ozcogZ4z+fIzXZ4YXqfGoEa57+uQDgqr ++jNOTji7Gxopt6AqZ9EvwuVaCuunUi0pcx6cc8IuUfrwMwSFovV/7sM= +-----END PRIVATE KEY----- PublicKey=ALICE_secp384r1_PUB -----BEGIN PUBLIC KEY----- @@ -4104,12 +4106,12 @@ Wgrrp1ItKXMenHPCLlH68DMEhaL1f+7D -----END PUBLIC KEY----- PrivateKey=BOB_secp384r1 ------BEGIN EC PRIVATE KEY----- -MIGkAgEBBDBRiGXRsb5sUq0b3/dgZ+pA9kbrSivBMCUCXVwxno1d/30hI/Yy0Z5P -WwbBgwTFprWgBwYFK4EEACKhZANiAASp1FeUOBJFmzQCNbGiOz8He0kF+KIf24UG -YVO5MC7u5rV9hpoYsbcgmwxALskPN18os2ygK1Pnf/h+WALIsG2RknSTbiyvBYko -IhJV9cflvEDpMeaWSLF7qJ5YjEIf9PM= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDBRiGXRsb5sUq0b3/dg +Z+pA9kbrSivBMCUCXVwxno1d/30hI/Yy0Z5PWwbBgwTFprWhZANiAASp1FeUOBJF +mzQCNbGiOz8He0kF+KIf24UGYVO5MC7u5rV9hpoYsbcgmwxALskPN18os2ygK1Pn +f/h+WALIsG2RknSTbiyvBYkoIhJV9cflvEDpMeaWSLF7qJ5YjEIf9PM= +-----END PRIVATE KEY----- PublicKey=BOB_secp384r1_PUB -----BEGIN PUBLIC KEY----- @@ -4131,13 +4133,14 @@ SharedSecret=2006ed49acbb991b8fbf8a15c3f263542496eaefe1e2952591b72fb929463eac7a4 # TEST CURVE secp521r1 PrivateKey=ALICE_secp521r1 ------BEGIN EC PRIVATE KEY----- -MIHcAgEBBEIAFBIz3FLAuX8VCWzMwu1f/tm8pf1QqnsdLqaIWCQAJa2W5ldpJTYf -kj1gGxM44AD3qHnkXISvNLwwuxI1hr2+pOGgBwYFK4EEACOhgYkDgYYABACWlOOF -Yk/p3AS2LxEQWBuMm6uIjo3XArjh1QrsLcUc5hhi82CIz6kKwKjCnYRDHq4iv1x6 -3rVEzGGhQOM1g+cRVwHSpfbBpaxK7bMLkVFOOavvOdcdyRHaHsvxw2pREmdS/Gwt -fgT8odQrG06KMIwVeL+H08fGJSbPX0Zock0DOPCpaw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAFBIz3FLAuX8VCWzM +wu1f/tm8pf1QqnsdLqaIWCQAJa2W5ldpJTYfkj1gGxM44AD3qHnkXISvNLwwuxI1 +hr2+pOGhgYkDgYYABACWlOOFYk/p3AS2LxEQWBuMm6uIjo3XArjh1QrsLcUc5hhi +82CIz6kKwKjCnYRDHq4iv1x63rVEzGGhQOM1g+cRVwHSpfbBpaxK7bMLkVFOOavv +OdcdyRHaHsvxw2pREmdS/GwtfgT8odQrG06KMIwVeL+H08fGJSbPX0Zock0DOPCp +aw== +-----END PRIVATE KEY----- PublicKey=ALICE_secp521r1_PUB -----BEGIN PUBLIC KEY----- @@ -4148,13 +4151,14 @@ xiUmz19GaHJNAzjwqWs= -----END PUBLIC KEY----- PrivateKey=BOB_secp521r1 ------BEGIN EC PRIVATE KEY----- -MIHcAgEBBEIA9C/sMWveRlHPr9P5cc3U+1L2/zB0VtHewKSQRWZ67SmS4+m7uXTq -UVSLRHiQEgQid0cg77gSxXPlmV+zy0f3zd+gBwYFK4EEACOhgYkDgYYABAE18N3S -wDGtea3IOqUdh3j0JtnMeP41i/agEBlxK8/iEBXcQ61mkIrQIKcabRhoylEugXHi -yNnqNQOD4DUa0bTKzAHtJ4UqqbEVno6byRmcUQwbmvG89eS8GLEmk5X/O2atHU4y -IGTuTRQWn/BTJUCS+OgJz4FZdadscc5Z640EZqSDiw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIA9C/sMWveRlHPr9P5 +cc3U+1L2/zB0VtHewKSQRWZ67SmS4+m7uXTqUVSLRHiQEgQid0cg77gSxXPlmV+z +y0f3zd+hgYkDgYYABAE18N3SwDGtea3IOqUdh3j0JtnMeP41i/agEBlxK8/iEBXc +Q61mkIrQIKcabRhoylEugXHiyNnqNQOD4DUa0bTKzAHtJ4UqqbEVno6byRmcUQwb +mvG89eS8GLEmk5X/O2atHU4yIGTuTRQWn/BTJUCS+OgJz4FZdadscc5Z640EZqSD +iw== +-----END PRIVATE KEY----- PublicKey=BOB_secp521r1_PUB -----BEGIN PUBLIC KEY----- @@ -4177,11 +4181,11 @@ SharedSecret=018c8f33e544a0fa8854dcd96bdba75b7687d1c42b2ff1bf0a06d49c424fee96d8a # TEST CURVE prime192v1 PrivateKey=ALICE_prime192v1 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGPF9e9IU2oPZTMVU3UttCs+XOint3FCr96AKBggqhkjOPQMBAaE0AzIA -BOJuka5jMKORPW1YtgSiCkrPvhaqG9tC1k+QJhAKKfVyZm41b4FnSPJUSkaWmdk8 -yA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBjxfXvSFNqD2UzFVN1L +bQrPlzop7dxQq/ehNAMyAATibpGuYzCjkT1tWLYEogpKz74WqhvbQtZPkCYQCin1 +cmZuNW+BZ0jyVEpGlpnZPMg= +-----END PRIVATE KEY----- PublicKey=ALICE_prime192v1_PUB -----BEGIN PUBLIC KEY----- @@ -4190,11 +4194,11 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE4m6RrmMwo5E9bVi2BKIKSs++Fqob -----END PUBLIC KEY----- PrivateKey=BOB_prime192v1 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGF7Bqpc1mVjKqea4QQRj+hRd7f+OnOGbIaAKBggqhkjOPQMBAaE0AzIA -BKSnA0kQ//UW65YoIMNSbbqLKquz7MrBrJmdoXvtgLqoK2CJrvI1xKX22VYeHeBC -DA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBhewaqXNZlYyqnmuEEE +Y/oUXe3/jpzhmyGhNAMyAASkpwNJEP/1FuuWKCDDUm26iyqrs+zKwayZnaF77YC6 +qCtgia7yNcSl9tlWHh3gQgw= +-----END PRIVATE KEY----- PublicKey=BOB_prime192v1_PUB -----BEGIN PUBLIC KEY----- @@ -4215,11 +4219,11 @@ SharedSecret=be2a779b587f8f5d7c9d8f006e0a6d0e996c9c63c255f861 # TEST CURVE prime192v2 PrivateKey=ALICE_prime192v2 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGC0i4qqlFzusRi4bHVp0PFy+yjQ0BnD59aAKBggqhkjOPQMBAqE0AzIA -BMxIfAk+rvrVVrClFsosHe64NKeDhZ4U+OG+5svqDxXxSoVopEQPk9QhDSVhK1UJ -qg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQIEVTBTAgEBBBgtIuKqpRc7rEYuGx1a +dDxcvso0NAZw+fWhNAMyAATMSHwJPq761VawpRbKLB3uuDSng4WeFPjhvubL6g8V +8UqFaKRED5PUIQ0lYStVCao= +-----END PRIVATE KEY----- PublicKey=ALICE_prime192v2_PUB -----BEGIN PUBLIC KEY----- @@ -4228,11 +4232,11 @@ nhT44b7my+oPFfFKhWikRA+T1CENJWErVQmq -----END PUBLIC KEY----- PrivateKey=BOB_prime192v2 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGCBOOpYLX+Ieu8pH3+7WDGkva1YmSQAxi6AKBggqhkjOPQMBAqE0AzIA -BJricb7As9MfF+SqJMgjk8EsApeZdR/l0y2mYClyOuNeOfAkgkRCvzQwr36DWtqo -3w== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQIEVTBTAgEBBBggTjqWC1/iHrvKR9/u +1gxpL2tWJkkAMYuhNAMyAASa4nG+wLPTHxfkqiTII5PBLAKXmXUf5dMtpmApcjrj +XjnwJIJEQr80MK9+g1raqN8= +-----END PRIVATE KEY----- PublicKey=BOB_prime192v2_PUB -----BEGIN PUBLIC KEY----- @@ -4253,11 +4257,11 @@ SharedSecret=9b37033a48af7fe1825c062625f8b57d4b3ac48c12bec69c # TEST CURVE prime192v3 PrivateKey=ALICE_prime192v3 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGDSIN1yCKx7X+/aTqOxSSArBc+rH+4klN6AKBggqhkjOPQMBA6E0AzIA -BDr+LSlI0eTzbhc7oy/SKtB9K/bLMZDL4PBaj+SVlyiQ8NxcoR1TxmacAAEfuPpR -Xw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQMEVTBTAgEBBBg0iDdcgise1/v2k6js +UkgKwXPqx/uJJTehNAMyAAQ6/i0pSNHk824XO6Mv0irQfSv2yzGQy+DwWo/klZco +kPDcXKEdU8ZmnAABH7j6UV8= +-----END PRIVATE KEY----- PublicKey=ALICE_prime192v3_PUB -----BEGIN PUBLIC KEY----- @@ -4266,11 +4270,11 @@ kMvg8FqP5JWXKJDw3FyhHVPGZpwAAR+4+lFf -----END PUBLIC KEY----- PrivateKey=BOB_prime192v3 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGJ5bWG6rBVTd6/uqClMsWNgQxE8404BxoqAKBggqhkjOPQMBA6E0AzIA -BJdpOMEhBfrzoFkkCJ1f6EW68PLFs3W8FC+njQ5WXQsIbiGhn7kxwu08BMv6iwq9 -fw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQMEVTBTAgEBBBieW1huqwVU3ev7qgpT +LFjYEMRPONOAcaKhNAMyAASXaTjBIQX686BZJAidX+hFuvDyxbN1vBQvp40OVl0L +CG4hoZ+5McLtPATL+osKvX8= +-----END PRIVATE KEY----- PublicKey=BOB_prime192v3_PUB -----BEGIN PUBLIC KEY----- @@ -4291,11 +4295,11 @@ SharedSecret=7133f1d99b0e03ed9c4d78d3be40598cf419cd588283ac29 # TEST CURVE prime239v1 PrivateKey=ALICE_prime239v1 ------BEGIN EC PRIVATE KEY----- -MHECAQEEHkZomV2qq97tdYYhitXB++VP6ynNfvGDKsXF4QAkZKAKBggqhkjOPQMB -BKFAAz4ABHyCaVYIAl1ETh4F+IeYeuv9D4K/2jLTKhMR0D+88VmM393GAD+Ff7fT -gk+fNlozC5wpnZRZ2FDw+dHclA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwEEBGcwZQIBAQQeRmiZXaqr3u11hiGK +1cH75U/rKc1+8YMqxcXhACRkoUADPgAEfIJpVggCXUROHgX4h5h66/0Pgr/aMtMq +ExHQP7zxWYzf3cYAP4V/t9OCT582WjMLnCmdlFnYUPD50dyU +-----END PRIVATE KEY----- PublicKey=ALICE_prime239v1_PUB -----BEGIN PUBLIC KEY----- @@ -4304,11 +4308,11 @@ MtMqExHQP7zxWYzf3cYAP4V/t9OCT582WjMLnCmdlFnYUPD50dyU -----END PUBLIC KEY----- PrivateKey=BOB_prime239v1 ------BEGIN EC PRIVATE KEY----- -MHECAQEEHgGxkUaAYKh1VARaLeZvWLZvEVPiEpAN91YEKxxjP6AKBggqhkjOPQMB -BKFAAz4ABHUYD7C/zIt7nCXGIm7xSUMQw8i6oFB94jJNuukQBxaqIqIhk+9kzonQ -YYvla1J+jTiMp2vH6MMNjOOb0Q== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwEEBGcwZQIBAQQeAbGRRoBgqHVUBFot +5m9Ytm8RU+ISkA33VgQrHGM/oUADPgAEdRgPsL/Mi3ucJcYibvFJQxDDyLqgUH3i +Mk266RAHFqoioiGT72TOidBhi+VrUn6NOIyna8foww2M45vR +-----END PRIVATE KEY----- PublicKey=BOB_prime239v1_PUB -----BEGIN PUBLIC KEY----- @@ -4329,11 +4333,11 @@ SharedSecret=2ef92070f7a5fa14c8a67a8aa3080b4c4a597eafaa81d3f698599ac0be1e # TEST CURVE prime239v2 PrivateKey=ALICE_prime239v2 ------BEGIN EC PRIVATE KEY----- -MHECAQEEHnpqukuabhxfeGVv1ugTEYpvhxRTNM8VWUKVhvm39qAKBggqhkjOPQMB -BaFAAz4ABC7pFKHQkLJsMxlUd5SxBikOqrhnepA1zQ443DKw2mwbVig7rlK4IwRr -COzUWwkNGuTVk6PhJ1ntC122DQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwEFBGcwZQIBAQQeemq6S5puHF94ZW/W +6BMRim+HFFM0zxVZQpWG+bf2oUADPgAELukUodCQsmwzGVR3lLEGKQ6quGd6kDXN +DjjcMrDabBtWKDuuUrgjBGsI7NRbCQ0a5NWTo+EnWe0LXbYN +-----END PRIVATE KEY----- PublicKey=ALICE_prime239v2_PUB -----BEGIN PUBLIC KEY----- @@ -4342,11 +4346,11 @@ kDXNDjjcMrDabBtWKDuuUrgjBGsI7NRbCQ0a5NWTo+EnWe0LXbYN -----END PUBLIC KEY----- PrivateKey=BOB_prime239v2 ------BEGIN EC PRIVATE KEY----- -MHECAQEEHgBGgsO7pRfBmXJm42g5nK8PBnsfoV9Kzb8M6Au/uqAKBggqhkjOPQMB -BaFAAz4ABCodBJmFKY+l27hBsTAWj5hAk/C/vooVFprOMWrtEVGIo+B4EtYI0jA3 -8r7wgVMtdESJMPoKMVXVIX1trg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwEFBGcwZQIBAQQeAEaCw7ulF8GZcmbj +aDmcrw8Gex+hX0rNvwzoC7+6oUADPgAEKh0EmYUpj6XbuEGxMBaPmECT8L++ihUW +ms4xau0RUYij4HgS1gjSMDfyvvCBUy10RIkw+goxVdUhfW2u +-----END PRIVATE KEY----- PublicKey=BOB_prime239v2_PUB -----BEGIN PUBLIC KEY----- @@ -4367,11 +4371,11 @@ SharedSecret=5bdab282dc371ee88ade318a6aad2b329ec3ea957e0df18b7a691c1bf703 # TEST CURVE prime239v3 PrivateKey=ALICE_prime239v3 ------BEGIN EC PRIVATE KEY----- -MHECAQEEHhpcEjwGH5oj/a9pwEg+dlaismaRJ1PiZsp5X9gyO6AKBggqhkjOPQMB -BqFAAz4ABBZSAeGJfuSdruCS2L/M/orcH/l5zi/wQ6jSt7kaGDyh2HWFiZIF8ZEN -UA2cDaaQEEXMUoEypyelfHK26Q== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwEGBGcwZQIBAQQeGlwSPAYfmiP9r2nA +SD52VqKyZpEnU+Jmynlf2DI7oUADPgAEFlIB4Yl+5J2u4JLYv8z+itwf+XnOL/BD +qNK3uRoYPKHYdYWJkgXxkQ1QDZwNppAQRcxSgTKnJ6V8crbp +-----END PRIVATE KEY----- PublicKey=ALICE_prime239v3_PUB -----BEGIN PUBLIC KEY----- @@ -4380,11 +4384,11 @@ L/BDqNK3uRoYPKHYdYWJkgXxkQ1QDZwNppAQRcxSgTKnJ6V8crbp -----END PUBLIC KEY----- PrivateKey=BOB_prime239v3 ------BEGIN EC PRIVATE KEY----- -MHECAQEEHlNSiHyQRryLa/P/4JFtc6D5L3qPZb1wZZ1Fef+aw6AKBggqhkjOPQMB -BqFAAz4ABHqXNNwBBIDpyPor6YxleMqb5/LEUGlQG90AHiBGA0C1ARTnW95BdjL5 -ZyyldzgnQdxkIDX2bRB23Z9G6g== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwEGBGcwZQIBAQQeU1KIfJBGvItr8//g +kW1zoPkveo9lvXBlnUV5/5rDoUADPgAEepc03AEEgOnI+ivpjGV4ypvn8sRQaVAb +3QAeIEYDQLUBFOdb3kF2MvlnLKV3OCdB3GQgNfZtEHbdn0bq +-----END PRIVATE KEY----- PublicKey=BOB_prime239v3_PUB -----BEGIN PUBLIC KEY----- @@ -4405,11 +4409,11 @@ SharedSecret=78e80ae760061178bd005e9e3634333971468bc6d3f82baee238c5ed32f9 # TEST CURVE prime256v1 PrivateKey=ALICE_prime256v1 ------BEGIN EC PRIVATE KEY----- -MHcCAQEEIJVDw5PIEPJTI9/Fe9IzwWQ30FMeaTTlUijjE6pYdODzoAoGCCqGSM49 -AwEHoUQDQgAEavO8PitKvW9ZsyRod9PZIzb2E0tNpmJBysQHsImcJrf+cPubssM/ -/tNd9EnQFm17RAo2h1CveGBB86dBvzwpeQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQglUPDk8gQ8lMj38V7 +0jPBZDfQUx5pNOVSKOMTqlh04POhRANCAARq87w+K0q9b1mzJGh309kjNvYTS02m +YkHKxAewiZwmt/5w+5uywz/+0130SdAWbXtECjaHUK94YEHzp0G/PCl5 +-----END PRIVATE KEY----- PublicKey=ALICE_prime256v1_PUB -----BEGIN PUBLIC KEY----- @@ -4418,11 +4422,11 @@ pmJBysQHsImcJrf+cPubssM//tNd9EnQFm17RAo2h1CveGBB86dBvzwpeQ== -----END PUBLIC KEY----- PrivateKey=BOB_prime256v1 ------BEGIN EC PRIVATE KEY----- -MHcCAQEEIDbC35/7EWX5vWXDO8VEYlB0+/sPCYJPUm8E1Q46S2GJoAoGCCqGSM49 -AwEHoUQDQgAEkZsijYFGwAxsZCDgFYfU+yF79mQ0+iOWDFusDrNu1TDgA9AIjS67 -+7FtU3asZFLRde/xhaS7xTrmXG3V+Kd4vw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgNsLfn/sRZfm9ZcM7 +xURiUHT7+w8Jgk9SbwTVDjpLYYmhRANCAASRmyKNgUbADGxkIOAVh9T7IXv2ZDT6 +I5YMW6wOs27VMOAD0AiNLrv7sW1TdqxkUtF17/GFpLvFOuZcbdX4p3i/ +-----END PRIVATE KEY----- PublicKey=BOB_prime256v1_PUB -----BEGIN PUBLIC KEY----- @@ -4443,10 +4447,10 @@ SharedSecret=390021fbca00d959c1adaf7e9cedef0e65a582489eab9adbe739ef66bf82adb4 # TEST CURVE sect113r1 PrivateKey=ALICE_sect113r1 ------BEGIN EC PRIVATE KEY----- -MEECAQEEDwBys/27wGVZviSeQZVmZKAHBgUrgQQABKEiAyAABAG+JN/rb7VXh60l -vYP0uQFp0AWZ2ZFL6tUjeylNiw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFECAQAwEAYHKoZIzj0CAQYFK4EEAAQEOjA4AgEBBA8AcrP9u8BlWb4knkGVZmSh +IgMgAAQBviTf62+1V4etJb2D9LkBadAFmdmRS+rVI3spTYs= +-----END PRIVATE KEY----- PublicKey=ALICE_sect113r1_PUB -----BEGIN PUBLIC KEY----- @@ -4455,10 +4459,10 @@ MDQwEAYHKoZIzj0CAQYFK4EEAAQDIAAEAb4k3+tvtVeHrSW9g/S5AWnQBZnZkUvq -----END PUBLIC KEY----- PrivateKey=BOB_sect113r1 ------BEGIN EC PRIVATE KEY----- -MEECAQEEDwCaESrcD0p1spBTPUX8zKAHBgUrgQQABKEiAyAABAC5JEE3FeMiN7PC -sYXxWQHFZHr2DRQloEggCul02g== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFECAQAwEAYHKoZIzj0CAQYFK4EEAAQEOjA4AgEBBA8AmhEq3A9KdbKQUz1F/Myh +IgMgAAQAuSRBNxXjIjezwrGF8VkBxWR69g0UJaBIIArpdNo= +-----END PRIVATE KEY----- PublicKey=BOB_sect113r1_PUB -----BEGIN PUBLIC KEY----- @@ -4479,10 +4483,10 @@ SharedSecret=015405437add26b8841c62a9016c85 # TEST CURVE sect113r2 PrivateKey=ALICE_sect113r2 ------BEGIN EC PRIVATE KEY----- -MEECAQEEDwAGoVnpnsEoqO+vNeH31aAHBgUrgQQABaEiAyAABAFNBMcD25LFxnyS -+xJVRQFwtDibjlTXRXBUJD6gZA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFECAQAwEAYHKoZIzj0CAQYFK4EEAAUEOjA4AgEBBA8ABqFZ6Z7BKKjvrzXh99Wh +IgMgAAQBTQTHA9uSxcZ8kvsSVUUBcLQ4m45U10VwVCQ+oGQ= +-----END PRIVATE KEY----- PublicKey=ALICE_sect113r2_PUB -----BEGIN PUBLIC KEY----- @@ -4491,10 +4495,10 @@ cFQkPqBk -----END PUBLIC KEY----- PrivateKey=BOB_sect113r2 ------BEGIN EC PRIVATE KEY----- -MEECAQEEDwAE8eFnSQKnROhxAki6K6AHBgUrgQQABaEiAyAABAFKLu75SvvvqIbK -DQiPpQA3vQjM9VnEYrnM/GnrCg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFECAQAwEAYHKoZIzj0CAQYFK4EEAAUEOjA4AgEBBA8ABPHhZ0kCp0TocQJIuiuh +IgMgAAQBSi7u+Ur776iGyg0Ij6UAN70IzPVZxGK5zPxp6wo= +-----END PRIVATE KEY----- PublicKey=BOB_sect113r2_PUB -----BEGIN PUBLIC KEY----- @@ -4515,10 +4519,10 @@ SharedSecret=014231c5e9e28d451aa44a755407e1 # TEST CURVE sect131r1 PrivateKey=ALICE_sect131r1 ------BEGIN EC PRIVATE KEY----- -MEcCAQEEEQBQIUPAkstOEseIOXD9ByfxoAcGBSuBBAAWoSYDJAAEABT7LAX2I+/o -sOV0o4uEuBcFEjsSlmdtc9eFSaRBY+EcBA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFcCAQAwEAYHKoZIzj0CAQYFK4EEABYEQDA+AgEBBBEAUCFDwJLLThLHiDlw/Qcn +8aEmAyQABAAU+ywF9iPv6LDldKOLhLgXBRI7EpZnbXPXhUmkQWPhHAQ= +-----END PRIVATE KEY----- PublicKey=ALICE_sect131r1_PUB -----BEGIN PUBLIC KEY----- @@ -4527,10 +4531,10 @@ c9eFSaRBY+EcBA== -----END PUBLIC KEY----- PrivateKey=BOB_sect131r1 ------BEGIN EC PRIVATE KEY----- -MEcCAQEEEQPHEzPGPEmZh9Jm9Ykqr5W8oAcGBSuBBAAWoSYDJAAEAUdDZr6H5ifk -3gu3QiglxVUGt/3GRk1LTHFuWH7TCd2r2w== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFcCAQAwEAYHKoZIzj0CAQYFK4EEABYEQDA+AgEBBBEDxxMzxjxJmYfSZvWJKq+V +vKEmAyQABAFHQ2a+h+Yn5N4Lt0IoJcVVBrf9xkZNS0xxblh+0wndq9s= +-----END PRIVATE KEY----- PublicKey=BOB_sect131r1_PUB -----BEGIN PUBLIC KEY----- @@ -4551,10 +4555,10 @@ SharedSecret=009e4acc8c1ba3a129a9ad83a733d7d702 # TEST CURVE sect131r2 PrivateKey=ALICE_sect131r2 ------BEGIN EC PRIVATE KEY----- -MEcCAQEEEQMc8+1AIokHyDTWsyRPxKT1oAcGBSuBBAAXoSYDJAAEBxaXZn/WQhzi -ZYJtEfj5z/YHjtELfUnKJ8q+TGQe3TnHeA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFcCAQAwEAYHKoZIzj0CAQYFK4EEABcEQDA+AgEBBBEDHPPtQCKJB8g01rMkT8Sk +9aEmAyQABAcWl2Z/1kIc4mWCbRH4+c/2B47RC31JyifKvkxkHt05x3g= +-----END PRIVATE KEY----- PublicKey=ALICE_sect131r2_PUB -----BEGIN PUBLIC KEY----- @@ -4563,10 +4567,10 @@ J8q+TGQe3TnHeA== -----END PUBLIC KEY----- PrivateKey=BOB_sect131r2 ------BEGIN EC PRIVATE KEY----- -MEcCAQEEEQNH17P9i1Lb1Lv9Hn6tSJdUoAcGBSuBBAAXoSYDJAAEAtkc0EhMOiKC -k7BPNzOVo30CxGTknMxQldiS8ESqP5ggtA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFcCAQAwEAYHKoZIzj0CAQYFK4EEABcEQDA+AgEBBBEDR9ez/YtS29S7/R5+rUiX +VKEmAyQABALZHNBITDoigpOwTzczlaN9AsRk5JzMUJXYkvBEqj+YILQ= +-----END PRIVATE KEY----- PublicKey=BOB_sect131r2_PUB -----BEGIN PUBLIC KEY----- @@ -4587,10 +4591,11 @@ SharedSecret=03cbec3a3050c7f13d4801ad692d61c417 # TEST CURVE sect163k1 PrivateKey=ALICE_sect163k1 ------BEGIN EC PRIVATE KEY----- -MFMCAQEEFQHGR4Y5cTzo8CKOmTy2s39/eSXhSaAHBgUrgQQAAaEuAywABAPWGsMI -nYxIUpnpDXVxOWVf+XkdjQeDldkLEwULzgBpzPA+00lg0LF8KQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUBxkeGOXE86PAijpk8trN/ +f3kl4UmhLgMsAAQD1hrDCJ2MSFKZ6Q11cTllX/l5HY0Hg5XZCxMFC84AaczwPtNJ +YNCxfCk= +-----END PRIVATE KEY----- PublicKey=ALICE_sect163k1_PUB -----BEGIN PUBLIC KEY----- @@ -4599,10 +4604,11 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEA9YawwidjEhSmekNdXE5ZV/5eR2NB4OV -----END PUBLIC KEY----- PrivateKey=BOB_sect163k1 ------BEGIN EC PRIVATE KEY----- -MFMCAQEEFQJQnmQi1J9eJ0deyCiRxLufM8Vs5KAHBgUrgQQAAaEuAywABAatg0nW -qB1vcD0hI6ZO6N9L5ZgUrAFdeskSW4CR42HeNecOrxf5cEHSTw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUCUJ5kItSfXidHXsgokcS7 +nzPFbOShLgMsAAQGrYNJ1qgdb3A9ISOmTujfS+WYFKwBXXrJEluAkeNh3jXnDq8X ++XBB0k8= +-----END PRIVATE KEY----- PublicKey=BOB_sect163k1_PUB -----BEGIN PUBLIC KEY----- @@ -4623,10 +4629,11 @@ SharedSecret=07bfdf00759b383aa7741ae4634400f8ddf2047092 # TEST CURVE sect163r1 PrivateKey=ALICE_sect163r1 ------BEGIN EC PRIVATE KEY----- -MFMCAQEEFQGX3OaU+YUXm/2HUggQ0DHVvy2PT6AHBgUrgQQAAqEuAywABATePwmf -nwIK0QPC85nkPCBgYFi8gQLPXM3xTA99MVJ1eNNZByv2BbE0wA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAIETDBKAgEBBBUBl9zmlPmFF5v9h1IIENAx +1b8tj0+hLgMsAAQE3j8Jn58CCtEDwvOZ5DwgYGBYvIECz1zN8UwPfTFSdXjTWQcr +9gWxNMA= +-----END PRIVATE KEY----- PublicKey=ALICE_sect163r1_PUB -----BEGIN PUBLIC KEY----- @@ -4635,10 +4642,11 @@ zfFMD30xUnV401kHK/YFsTTA -----END PUBLIC KEY----- PrivateKey=BOB_sect163r1 ------BEGIN EC PRIVATE KEY----- -MFMCAQEEFQD+fM3nIJq+9mVfIMYSKFavAbfrT6AHBgUrgQQAAqEuAywABAO3pdkd -/NcAFJOcaHN+g+190tmBqgaEF15bP7fXy82YLoAwk/4+e0fOwA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAIETDBKAgEBBBUA/nzN5yCavvZlXyDGEihW +rwG360+hLgMsAAQDt6XZHfzXABSTnGhzfoPtfdLZgaoGhBdeWz+318vNmC6AMJP+ +PntHzsA= +-----END PRIVATE KEY----- PublicKey=BOB_sect163r1_PUB -----BEGIN PUBLIC KEY----- @@ -4659,10 +4667,11 @@ SharedSecret=02355c765bbc07fcc44bb1496e490912f6df56e6d4 # TEST CURVE sect163r2 PrivateKey=ALICE_sect163r2 ------BEGIN EC PRIVATE KEY----- -MFMCAQEEFQOMfYbsGQ9MEzhW2WNpCvyxdUs06qAHBgUrgQQAD6EuAywABAcepbEl -ZHYqscI+n89KNkh0rzwRPQDfbf9Q5PGFgfCwulHuundqGrWVDw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUDjH2G7BkPTBM4VtljaQr8 +sXVLNOqhLgMsAAQHHqWxJWR2KrHCPp/PSjZIdK88ET0A323/UOTxhYHwsLpR7rp3 +ahq1lQ8= +-----END PRIVATE KEY----- PublicKey=ALICE_sect163r2_PUB -----BEGIN PUBLIC KEY----- @@ -4671,10 +4680,11 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBx6lsSVkdiqxwj6fz0o2SHSvPBE9AN9t -----END PUBLIC KEY----- PrivateKey=BOB_sect163r2 ------BEGIN EC PRIVATE KEY----- -MFMCAQEEFQFc4z1ObqwpdSVEuVbQeAI1MPFbaKAHBgUrgQQAD6EuAywABAbFrzFF -wL5MhwOAa16ENURXU+gGiQHC0guPXo09gLRoFkjz+cUXiOGCZw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUBXOM9Tm6sKXUlRLlW0HgC +NTDxW2ihLgMsAAQGxa8xRcC+TIcDgGtehDVEV1PoBokBwtILj16NPYC0aBZI8/nF +F4jhgmc= +-----END PRIVATE KEY----- PublicKey=BOB_sect163r2_PUB -----BEGIN PUBLIC KEY----- @@ -4695,11 +4705,11 @@ SharedSecret=040df54e6df412790ef5c0fafbbfcba5136b872951 # TEST CURVE sect193r1 PrivateKey=ALICE_sect193r1 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGQARCWh8GW+PzMMrmjgIJ8Bo5A6aUDJOKYGgBwYFK4EEABihNgM0AAQA -oFzJEHFANlO+k8zf1lVdhBLlonBl9Sc3AGflPbqbXlEzgwudgZ2SVwAzygw4wv33 -3A== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEAYHKoZIzj0CAQYFK4EEABgEWDBWAgEBBBkAEQlofBlvj8zDK5o4CCfA +aOQOmlAyTimBoTYDNAAEAKBcyRBxQDZTvpPM39ZVXYQS5aJwZfUnNwBn5T26m15R +M4MLnYGdklcAM8oMOML999w= +-----END PRIVATE KEY----- PublicKey=ALICE_sect193r1_PUB -----BEGIN PUBLIC KEY----- @@ -4708,11 +4718,11 @@ NwBn5T26m15RM4MLnYGdklcAM8oMOML999w= -----END PUBLIC KEY----- PrivateKey=BOB_sect193r1 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGQCfG9gsplrDhGPbhZNEF+CJqvm+ndHekImgBwYFK4EEABihNgM0AAQB -fDQ9a3c+1lPm/1ofSjpacW0UY4E0RSlhAT+MGPNQcgKow1lMfL2BPZH3JzQYFn8O -Jw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEAYHKoZIzj0CAQYFK4EEABgEWDBWAgEBBBkAnxvYLKZaw4Rj24WTRBfg +iar5vp3R3pCJoTYDNAAEAXw0PWt3PtZT5v9aH0o6WnFtFGOBNEUpYQE/jBjzUHIC +qMNZTHy9gT2R9yc0GBZ/Dic= +-----END PRIVATE KEY----- PublicKey=BOB_sect193r1_PUB -----BEGIN PUBLIC KEY----- @@ -4733,11 +4743,11 @@ SharedSecret=00458b4c5ad122de5a377bea0adf1ab87bcb961b24ed764f47 # TEST CURVE sect193r2 PrivateKey=ALICE_sect193r2 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGQCPnhdBb5vdudf126+ppr6U9M1y86XFEC+gBwYFK4EEABmhNgM0AAQA -eFbrGMfhM0+z97Xa2xlywYP5r3aQBaTBAVzibUhLHiia03IJUjsVdXnM2doZZUAJ -Pg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEAYHKoZIzj0CAQYFK4EEABkEWDBWAgEBBBkAj54XQW+b3bnX9duvqaa+ +lPTNcvOlxRAvoTYDNAAEAHhW6xjH4TNPs/e12tsZcsGD+a92kAWkwQFc4m1ISx4o +mtNyCVI7FXV5zNnaGWVACT4= +-----END PRIVATE KEY----- PublicKey=ALICE_sect193r2_PUB -----BEGIN PUBLIC KEY----- @@ -4746,11 +4756,11 @@ wQFc4m1ISx4omtNyCVI7FXV5zNnaGWVACT4= -----END PUBLIC KEY----- PrivateKey=BOB_sect193r2 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGQC8yJVHRpuTqkeh44gERIt8H0HiCxkmMuygBwYFK4EEABmhNgM0AAQA -O0oNzAvrrT4ybXVWXbngYjdOcP5+tqB3AX7BjmqUy7lW2tQMwe4A/Srd4ZBSyvM2 -jQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEAYHKoZIzj0CAQYFK4EEABkEWDBWAgEBBBkAvMiVR0abk6pHoeOIBESL +fB9B4gsZJjLsoTYDNAAEADtKDcwL660+Mm11Vl254GI3TnD+fragdwF+wY5qlMu5 +VtrUDMHuAP0q3eGQUsrzNo0= +-----END PRIVATE KEY----- PublicKey=BOB_sect193r2_PUB -----BEGIN PUBLIC KEY----- @@ -4771,11 +4781,11 @@ SharedSecret=019d1f316d204a9cd1b9632cebb4accddb204158be3e435891 # TEST CURVE sect233k1 PrivateKey=ALICE_sect233k1 ------BEGIN EC PRIVATE KEY----- -MG0CAQEEHVpHupoqbW+ZlYrZsawnWteYfoGlORbi3UvjNJ/8oAcGBSuBBAAaoUAD -PgAEANwOK/5tO89VWKpgs3PTpU7nCh2vL6waLp+ckitBAJN9n13nCGIixtjlOGVy -bsjQD9wgahKED/ou6Y5U ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB1aR7qaKm1vmZWK2bGsJ1rX +mH6BpTkW4t1L4zSf/KFAAz4ABADcDiv+bTvPVViqYLNz06VO5wodry+sGi6fnJIr +QQCTfZ9d5whiIsbY5Thlcm7I0A/cIGoShA/6LumOVA== +-----END PRIVATE KEY----- PublicKey=ALICE_sect233k1_PUB -----BEGIN PUBLIC KEY----- @@ -4784,11 +4794,11 @@ Lp+ckitBAJN9n13nCGIixtjlOGVybsjQD9wgahKED/ou6Y5U -----END PUBLIC KEY----- PrivateKey=BOB_sect233k1 ------BEGIN EC PRIVATE KEY----- -MG0CAQEEHShrkGvNjGbqafnVfKmGfpc5SMpz2gwMcKjADIdNoAcGBSuBBAAaoUAD -PgAEAYqIW4UlVB7KYdhFWe3Ys0XYxJpMxwv0kZI+fbM7AGKzkxLiSAQVqRZCXsqk -aLLe9Lz3CaluW8csn/4h ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0oa5BrzYxm6mn51Xyphn6X +OUjKc9oMDHCowAyHTaFAAz4ABAGKiFuFJVQeymHYRVnt2LNF2MSaTMcL9JGSPn2z +OwBis5MS4kgEFakWQl7KpGiy3vS89wmpblvHLJ/+IQ== +-----END PRIVATE KEY----- PublicKey=BOB_sect233k1_PUB -----BEGIN PUBLIC KEY----- @@ -4809,11 +4819,11 @@ SharedSecret=00a5e5f2e992f4360d530dd365d14f5c6013212e14f4ea258c91c71f1512 # TEST CURVE sect233r1 PrivateKey=ALICE_sect233r1 ------BEGIN EC PRIVATE KEY----- -MG4CAQEEHgAQ3p949HaCLPJfNTqQiBQaKOnn4hABeg0F8qdV4KAHBgUrgQQAG6FA -Az4ABAHSQTC7Z/BBajW/WPtdDy4lPeIzBELzD5zGDHEZDgH8XKOuEhSkQNZoyp9X -bcxxnpZ1shR7cxnsrmkbfw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AEN6fePR2gizyXzU6kIgU +Gijp5+IQAXoNBfKnVeChQAM+AAQB0kEwu2fwQWo1v1j7XQ8uJT3iMwRC8w+cxgxx +GQ4B/FyjrhIUpEDWaMqfV23McZ6WdbIUe3MZ7K5pG38= +-----END PRIVATE KEY----- PublicKey=ALICE_sect233r1_PUB -----BEGIN PUBLIC KEY----- @@ -4822,11 +4832,11 @@ nMYMcRkOAfxco64SFKRA1mjKn1dtzHGelnWyFHtzGeyuaRt/ -----END PUBLIC KEY----- PrivateKey=BOB_sect233r1 ------BEGIN EC PRIVATE KEY----- -MG4CAQEEHgBcdY55Lp8bRcIfcWccO5IhwQtR4Mb4Bg014tVl3qAHBgUrgQQAG6FA -Az4ABABhFFgfTXu7Fxow8XcY6wvhu+h1bXJksS0vemYKRwB+okj/ieIKvy4cqHSA -FrYkGMFYxXW7wyl/rS6+iQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AXHWOeS6fG0XCH3FnHDuS +IcELUeDG+AYNNeLVZd6hQAM+AAQAYRRYH017uxcaMPF3GOsL4bvodW1yZLEtL3pm +CkcAfqJI/4niCr8uHKh0gBa2JBjBWMV1u8Mpf60uvok= +-----END PRIVATE KEY----- PublicKey=BOB_sect233r1_PUB -----BEGIN PUBLIC KEY----- @@ -4847,11 +4857,11 @@ SharedSecret=01625f3fcd367ee7cd74c67cca02dccfce6c3b19ef07e358ed943d17a8e2 # TEST CURVE sect239k1 PrivateKey=ALICE_sect239k1 ------BEGIN EC PRIVATE KEY----- -MG4CAQEEHgyGm5BO0N4sFuhmCJbXV38oGWBQvhi9ONnzODgdHaAHBgUrgQQAA6FA -Az4ABBp9EPpfcv/tz8U3r0q4DThrhuHEdl7ObPUbXma2W3CXzOVaxHn4Y1OjFXQ4 -EttK0BBtfGoFrYaDzcHShw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEAAMEZzBlAgEBBB4MhpuQTtDeLBboZgiW11d/ +KBlgUL4YvTjZ8zg4HR2hQAM+AAQafRD6X3L/7c/FN69KuA04a4bhxHZezmz1G15m +tltwl8zlWsR5+GNToxV0OBLbStAQbXxqBa2Gg83B0oc= +-----END PRIVATE KEY----- PublicKey=ALICE_sect239k1_PUB -----BEGIN PUBLIC KEY----- @@ -4860,11 +4870,11 @@ MFIwEAYHKoZIzj0CAQYFK4EEAAMDPgAEGn0Q+l9y/+3PxTevSrgNOGuG4cR2Xs5s -----END PUBLIC KEY----- PrivateKey=BOB_sect239k1 ------BEGIN EC PRIVATE KEY----- -MG4CAQEEHgUEbjvsq/KWKymlQXBsOX9JEadfkUWZ/D/FYiIQx6AHBgUrgQQAA6FA -Az4ABAWKLT3hRfoXmbwOTR4j8OEXf4gNS7uHzWFN3JnHERPQiiTEWRNR/+t71Y8D -svE84K6Ig9lQ1UJHFFZK5Q== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEAAMEZzBlAgEBBB4FBG477KvylisppUFwbDl/ +SRGnX5FFmfw/xWIiEMehQAM+AAQFii094UX6F5m8Dk0eI/DhF3+IDUu7h81hTdyZ +xxET0IokxFkTUf/re9WPA7LxPOCuiIPZUNVCRxRWSuU= +-----END PRIVATE KEY----- PublicKey=BOB_sect239k1_PUB -----BEGIN PUBLIC KEY----- @@ -4885,11 +4895,12 @@ SharedSecret=4d1c9a8ae73f754d0a593d6e426114f4f67d7c8082ccc4e04a72b0d2aff8 # TEST CURVE sect283k1 PrivateKey=ALICE_sect283k1 ------BEGIN EC PRIVATE KEY----- -MIGAAgEBBCQAaGeyZnZQMpXdAqareT7fctDqfloJi8pdwyCJmUFL9GtWAhGgBwYF -K4EEABChTANKAAQFKCk7DlMxNzg7wceHDlq0mXmauda4LqhZVhFikPUgy881NGwB -ijhJhGY8h+DNW/8RJVwdVoPWU82j56rQc3WqG9Ff7iuYY7s= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAGhnsmZ2UDKV3QKmq3k+ +33LQ6n5aCYvKXcMgiZlBS/RrVgIRoUwDSgAEBSgpOw5TMTc4O8HHhw5atJl5mrnW +uC6oWVYRYpD1IMvPNTRsAYo4SYRmPIfgzVv/ESVcHVaD1lPNo+eq0HN1qhvRX+4r +mGO7 +-----END PRIVATE KEY----- PublicKey=ALICE_sect283k1_PUB -----BEGIN PUBLIC KEY----- @@ -4898,11 +4909,12 @@ WVYRYpD1IMvPNTRsAYo4SYRmPIfgzVv/ESVcHVaD1lPNo+eq0HN1qhvRX+4rmGO7 -----END PUBLIC KEY----- PrivateKey=BOB_sect283k1 ------BEGIN EC PRIVATE KEY----- -MIGAAgEBBCQAAlcjB9aNhuIzmMRw3Dzz/WRsSeFWNYaK87vMM+2zsC4pIySgBwYF -K4EEABChTANKAAQDkC6x7ml0fqSzs93I96g9tgCTPpUPm/wpNXVv3s+JiZk0N6gF -jvwVDIdFK91Kj6hF7DZFpyloICe1GiJYfI3WcB0NLOMI3+Y= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAAJXIwfWjYbiM5jEcNw8 +8/1kbEnhVjWGivO7zDPts7AuKSMkoUwDSgAEA5Ause5pdH6ks7PdyPeoPbYAkz6V +D5v8KTV1b97PiYmZNDeoBY78FQyHRSvdSo+oRew2RacpaCAntRoiWHyN1nAdDSzj +CN/m +-----END PRIVATE KEY----- PublicKey=BOB_sect283k1_PUB -----BEGIN PUBLIC KEY----- @@ -4923,11 +4935,12 @@ SharedSecret=02f2e682c2f60d7261624f3661a5e85fca920443b72aa4dd5a540082e65e552302d # TEST CURVE sect283r1 PrivateKey=ALICE_sect283r1 ------BEGIN EC PRIVATE KEY----- -MIGAAgEBBCQCLgmuG7X2S3sfyPDUU7tXMLGHqnSkjSiCXer16/k0WS59mRmgBwYF -K4EEABGhTANKAAQAfHpzCdbD72XehkenH5Hye7tIupRLjRNTa4vRbpVM0A0i9wkH -Vv77eiQfQUmAUBqFtqi1p9hPJ+oKhjXVVrGdWpTn9oTuOwM= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAi4Jrhu19kt7H8jw1FO7 +VzCxh6p0pI0ogl3q9ev5NFkufZkZoUwDSgAEAHx6cwnWw+9l3oZHpx+R8nu7SLqU +S40TU2uL0W6VTNANIvcJB1b++3okH0FJgFAahbaotafYTyfqCoY11VaxnVqU5/aE +7jsD +-----END PRIVATE KEY----- PublicKey=ALICE_sect283r1_PUB -----BEGIN PUBLIC KEY----- @@ -4936,11 +4949,12 @@ U2uL0W6VTNANIvcJB1b++3okH0FJgFAahbaotafYTyfqCoY11VaxnVqU5/aE7jsD -----END PUBLIC KEY----- PrivateKey=BOB_sect283r1 ------BEGIN EC PRIVATE KEY----- -MIGAAgEBBCQAIPTiAlpV9XEr8OlvGOqvNlZzoHvprbcwr8hAPWMyUY9DPPGgBwYF -K4EEABGhTANKAAQDXeYhgy+KTXYMGnwmR0RMwHV7A7DbYL/GGfMsQeaCsbR7DF4A -1UCghnLa6/m3RVQking9h0s1qoiC4372/pTvw7iVqywirkg= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkACD04gJaVfVxK/Dpbxjq +rzZWc6B76a23MK/IQD1jMlGPQzzxoUwDSgAEA13mIYMvik12DBp8JkdETMB1ewOw +22C/xhnzLEHmgrG0ewxeANVAoIZy2uv5t0VUJIp4PYdLNaqIguN+9v6U78O4lass +Iq5I +-----END PRIVATE KEY----- PublicKey=BOB_sect283r1_PUB -----BEGIN PUBLIC KEY----- @@ -4961,12 +4975,13 @@ SharedSecret=05778bc1afcf38d7dddb2150cacbfe4d38dc588968fd8b2e859c28ae2629d3435f8 # TEST CURVE sect409k1 PrivateKey=ALICE_sect409k1 ------BEGIN EC PRIVATE KEY----- -MIGvAgEBBDMg1vV7wiPe1ovX+ukzVfwPZoqvyj/vdif04Opi9PcjV5mPBEZgSFBg -8hbutNxZJdVLrxSgBwYFK4EEACShbANqAAQACe1IJ5ilSk1pPLvbcjEZIE6abC9L -Z9WmHuNJxM9LAW1OuLvJGi72AsGYUOGpX0WGmK6CAYaqZb2Qeedq/yUIljDHYi66 -J+26owYl7lOMpRzZ9U2QDJrZ7TYuxeMUui6re0B+JuZdYw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDMg1vV7wiPe1ovX+ukz +VfwPZoqvyj/vdif04Opi9PcjV5mPBEZgSFBg8hbutNxZJdVLrxShbANqAAQACe1I +J5ilSk1pPLvbcjEZIE6abC9LZ9WmHuNJxM9LAW1OuLvJGi72AsGYUOGpX0WGmK6C +AYaqZb2Qeedq/yUIljDHYi66J+26owYl7lOMpRzZ9U2QDJrZ7TYuxeMUui6re0B+ +JuZdYw== +-----END PRIVATE KEY----- PublicKey=ALICE_sect409k1_PUB -----BEGIN PUBLIC KEY----- @@ -4976,12 +4991,13 @@ uqMGJe5TjKUc2fVNkAya2e02LsXjFLouq3tAfibmXWM= -----END PUBLIC KEY----- PrivateKey=BOB_sect409k1 ------BEGIN EC PRIVATE KEY----- -MIGvAgEBBDMIYBGZZcZz4qCdhAV9vqpfe8vV+vJEhjawR52JUV1rumWEBPAx0o6E -+gaxHBr5hzVGkIKgBwYFK4EEACShbANqAAQAAQKKs60CTUUkltsT+lIBukjz850p -kGGLltJ4eaZn4k9AtN/lFTCq6Vgqe2sDrjA3b45qAdWjf1vRaP0wawJ13SjApJmy -Xg5hQks6d0Zqz2OHYhGEGiM159VtTlStK067dVe1fGVDeg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDMIYBGZZcZz4qCdhAV9 +vqpfe8vV+vJEhjawR52JUV1rumWEBPAx0o6E+gaxHBr5hzVGkIKhbANqAAQAAQKK +s60CTUUkltsT+lIBukjz850pkGGLltJ4eaZn4k9AtN/lFTCq6Vgqe2sDrjA3b45q +AdWjf1vRaP0wawJ13SjApJmyXg5hQks6d0Zqz2OHYhGEGiM159VtTlStK067dVe1 +fGVDeg== +-----END PRIVATE KEY----- PublicKey=BOB_sect409k1_PUB -----BEGIN PUBLIC KEY----- @@ -5003,12 +5019,13 @@ SharedSecret=01523ec40ad40226a57281a4c423801ae9495dcf736eddd667023b1390977d018ce # TEST CURVE sect409r1 PrivateKey=ALICE_sect409r1 ------BEGIN EC PRIVATE KEY----- -MIGwAgEBBDQAYTMsTpey51D2ULndpN+AAWnJLy9pTerziakhjii8OyWKpUVfpDFN -neCCd2oQTDcPX5vdoAcGBSuBBAAloWwDagAEAYfk3ZejxpVYCG7dYHTVhhcqILEy -TYoQa4YehGPxKcbmgpqW4Wev1tEDVI3JIowICYGUowHXXzgDXoJeR79wgb7ySAlX -JXgQ8Ficr7i0CaqyAuIpFw9FWJT3jheFwnbpDTvIeIozlf4= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAYTMsTpey51D2ULnd +pN+AAWnJLy9pTerziakhjii8OyWKpUVfpDFNneCCd2oQTDcPX5vdoWwDagAEAYfk +3ZejxpVYCG7dYHTVhhcqILEyTYoQa4YehGPxKcbmgpqW4Wev1tEDVI3JIowICYGU +owHXXzgDXoJeR79wgb7ySAlXJXgQ8Ficr7i0CaqyAuIpFw9FWJT3jheFwnbpDTvI +eIozlf4= +-----END PRIVATE KEY----- PublicKey=ALICE_sect409r1_PUB -----BEGIN PUBLIC KEY----- @@ -5018,12 +5035,13 @@ a4YehGPxKcbmgpqW4Wev1tEDVI3JIowICYGUowHXXzgDXoJeR79wgb7ySAlXJXgQ -----END PUBLIC KEY----- PrivateKey=BOB_sect409r1 ------BEGIN EC PRIVATE KEY----- -MIGwAgEBBDQAsCs1nRgwW97TdKIHPRcsqmK1e8TIZ00e6rqLb3nD4sIe+Gw/fGhS -UER9akQ7lAluEUnfoAcGBSuBBAAloWwDagAEAfM2fvBEic+7jV4oC+v8GfsunD9Z -p9rzNgMp3dJ+ZU7r6Bp+ZH3dL9Uvv8kUiB89UlDlLwBm/W6TlzGuh1FnzXYKVnhn -XpzSlRZQsPCceKukbV46Asl8O23b2+DPJgQBGbMfWsgK+KA= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAsCs1nRgwW97TdKIH +PRcsqmK1e8TIZ00e6rqLb3nD4sIe+Gw/fGhSUER9akQ7lAluEUnfoWwDagAEAfM2 +fvBEic+7jV4oC+v8GfsunD9Zp9rzNgMp3dJ+ZU7r6Bp+ZH3dL9Uvv8kUiB89UlDl +LwBm/W6TlzGuh1FnzXYKVnhnXpzSlRZQsPCceKukbV46Asl8O23b2+DPJgQBGbMf +WsgK+KA= +-----END PRIVATE KEY----- PublicKey=BOB_sect409r1_PUB -----BEGIN PUBLIC KEY----- @@ -5045,14 +5063,14 @@ SharedSecret=019dc849870dc6f79978aca8e1fc6aa6836c8fcb25bbfe3d5ab41ea53eae2c73299 # TEST CURVE sect571k1 PrivateKey=ALICE_sect571k1 ------BEGIN EC PRIVATE KEY----- -MIHuAgEBBEgBE7yEjyPpNnnnr91Fx0Zi91uWcAsPZdkIq7ZzcLnJAh4DxOJ2L5/y -fpwKdvkW0k1Ngqo/y1F8eXABm1b+CJeL/jIXkra3BLegBwYFK4EEACahgZUDgZIA -BAC2K5RvPu/qeOG6OcOFqcPiJXzgrQtB33A/X6S/QGfzfecq0WtkKiaCuKnZLBRo -Rg4Tohw/IInjy9Y4q8hHp9TXW1bCwVE9TQJy3RKpVsA0AnPAvW6bC4o09uUnpkTB -wF2DDuFYUvqyH7RrIBDdrzM6LOFWIk8KdopH86gC1pSkJYtJMcMXWArj+SaXATH7 -yg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIARO8hI8j6TZ556/d +RcdGYvdblnALD2XZCKu2c3C5yQIeA8Tidi+f8n6cCnb5FtJNTYKqP8tRfHlwAZtW +/giXi/4yF5K2twS3oYGVA4GSAAQAtiuUbz7v6njhujnDhanD4iV84K0LQd9wP1+k +v0Bn833nKtFrZComgrip2SwUaEYOE6IcPyCJ48vWOKvIR6fU11tWwsFRPU0Cct0S +qVbANAJzwL1umwuKNPblJ6ZEwcBdgw7hWFL6sh+0ayAQ3a8zOizhViJPCnaKR/Oo +AtaUpCWLSTHDF1gK4/kmlwEx+8o= +-----END PRIVATE KEY----- PublicKey=ALICE_sect571k1_PUB -----BEGIN PUBLIC KEY----- @@ -5063,14 +5081,14 @@ CnaKR/OoAtaUpCWLSTHDF1gK4/kmlwEx+8o= -----END PUBLIC KEY----- PrivateKey=BOB_sect571k1 ------BEGIN EC PRIVATE KEY----- -MIHuAgEBBEgBVlPi2df10xZLpV1gKhhGX2j+P8fPsoaoXhSOT2f1vj6Zdsnfu2hu -mOek2oqUl8jTjDzQk+n43GmgFHfynVtxz2IvhKaHjxigBwYFK4EEACahgZUDgZIA -BABHMDH3JWQcvylt7WbKiwgsiGEstRFhEMeaik4iKMtCZMBNX2lg7sKsUE8GNoo1 -GM+nD9xU6zz1f0l3PH9uiWQapUCyMs3W2wKuoRPfUXiamd+w/BwzrNunqUTg3aAv -lxqQoybI80zh3ebzGXV/p7nosFh9rE5qpxjNtcJD8CKKPXcfTqoqG4UziKIH/QPX -rg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAVZT4tnX9dMWS6Vd +YCoYRl9o/j/Hz7KGqF4Ujk9n9b4+mXbJ37tobpjnpNqKlJfI04w80JPp+NxpoBR3 +8p1bcc9iL4Smh48YoYGVA4GSAAQARzAx9yVkHL8pbe1myosILIhhLLURYRDHmopO +IijLQmTATV9pYO7CrFBPBjaKNRjPpw/cVOs89X9Jdzx/bolkGqVAsjLN1tsCrqET +31F4mpnfsPwcM6zbp6lE4N2gL5cakKMmyPNM4d3m8xl1f6e56LBYfaxOaqcYzbXC +Q/Aiij13H06qKhuFM4iiB/0D164= +-----END PRIVATE KEY----- PublicKey=BOB_sect571k1_PUB -----BEGIN PUBLIC KEY----- @@ -5093,14 +5111,14 @@ SharedSecret=05a423515fcc91b3171c83edd5c4085ff729a8ff0a3fa1578ebf769523ded0f5c1e # TEST CURVE sect571r1 PrivateKey=ALICE_sect571r1 ------BEGIN EC PRIVATE KEY----- -MIHuAgEBBEgCuyL/9mn2955RFhXMZgefgyU0jE23pTq+2ZM9L81qiJpq/Fs6Kake -DFg8KOmg9iEzfdnZUGHumXZqhFbcYF6ksUugXyiJBougBwYFK4EEACehgZUDgZIA -BANEbZvsoJQpsYNNZWBbSqo0LehhzPh/8DBMeahRLWbN1FmP9J/ohT7uYhMadDqW -DUSRNqz9fpMrWE0xXu0CNJ6jB03vnDN3xgXfZIUcwhxZ7DmDnqgX3rWq/ci8gJmd -EA6ZbIYd4d1jAfEwFIE82C5rjZAagnPonp1gBR68T4Xc3b2n+1EEY3MwUiqgN1b4 -0A== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIArsi//Zp9veeURYV +zGYHn4MlNIxNt6U6vtmTPS/NaoiaavxbOimpHgxYPCjpoPYhM33Z2VBh7pl2aoRW +3GBepLFLoF8oiQaLoYGVA4GSAAQDRG2b7KCUKbGDTWVgW0qqNC3oYcz4f/AwTHmo +US1mzdRZj/Sf6IU+7mITGnQ6lg1EkTas/X6TK1hNMV7tAjSeowdN75wzd8YF32SF +HMIcWew5g56oF961qv3IvICZnRAOmWyGHeHdYwHxMBSBPNgua42QGoJz6J6dYAUe +vE+F3N29p/tRBGNzMFIqoDdW+NA= +-----END PRIVATE KEY----- PublicKey=ALICE_sect571r1_PUB -----BEGIN PUBLIC KEY----- @@ -5111,14 +5129,14 @@ d8YF32SFHMIcWew5g56oF961qv3IvICZnRAOmWyGHeHdYwHxMBSBPNgua42QGoJz -----END PUBLIC KEY----- PrivateKey=BOB_sect571r1 ------BEGIN EC PRIVATE KEY----- -MIHuAgEBBEgBiPrk3lclNC6yf6Fn3GP92BnipHUYMLUiPuNi6jD5O8asbbDP9ZPv -r+Us22UIt8NbaQ4MNSYMAl4r975Uw7uy4lNcaesYUeKgBwYFK4EEACehgZUDgZIA -BAbHKRgXGrPuNnFwFuI8th8kSFeV/ZJiYwq97vi2s5P6qMibfn65QByDaSs7Mftf -/zAfptVKf9Qob+TbvBmsCdbNnlcp3xAjvQfxoe8uCsKgyio6ej6HonhOC+UOrsUg -Znx+8Noztgnx0c9fkULxXKmG7zZNw12c0BMGqibpYNZztFMVniyKMvnLBWGi/AnW -AA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAYj65N5XJTQusn+h +Z9xj/dgZ4qR1GDC1Ij7jYuow+TvGrG2wz/WT76/lLNtlCLfDW2kODDUmDAJeK/e+ +VMO7suJTXGnrGFHioYGVA4GSAAQGxykYFxqz7jZxcBbiPLYfJEhXlf2SYmMKve74 +trOT+qjIm35+uUAcg2krOzH7X/8wH6bVSn/UKG/k27wZrAnWzZ5XKd8QI70H8aHv +LgrCoMoqOno+h6J4TgvlDq7FIGZ8fvDaM7YJ8dHPX5FC8Vyphu82TcNdnNATBqom +6WDWc7RTFZ4sijL5ywVhovwJ1gA= +-----END PRIVATE KEY----- PublicKey=BOB_sect571r1_PUB -----BEGIN PUBLIC KEY----- @@ -5141,10 +5159,11 @@ SharedSecret=004b397e564055e2c7d87648183c948655ccb0ebb20bd441f9b11635cf461cb5815 # TEST CURVE c2pnb163v1 PrivateKey=ALICE_c2pnb163v1 ------BEGIN EC PRIVATE KEY----- -MFYCAQEEFQNNUFcMh0wyDkkhvrJkcumQ41q7O6AKBggqhkjOPQMAAaEuAywABAL9 -NoyLZgZjhKZhUKshVWiaYOc7IwclnVVnj59P6ET+pGlYcwxbmA5k7g== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAEETDBKAgEBBBUDTVBXDIdMMg5JIb6y +ZHLpkONauzuhLgMsAAQC/TaMi2YGY4SmYVCrIVVommDnOyMHJZ1VZ4+fT+hE/qRp +WHMMW5gOZO4= +-----END PRIVATE KEY----- PublicKey=ALICE_c2pnb163v1_PUB -----BEGIN PUBLIC KEY----- @@ -5153,10 +5172,11 @@ ByWdVWePn0/oRP6kaVhzDFuYDmTu -----END PUBLIC KEY----- PrivateKey=BOB_c2pnb163v1 ------BEGIN EC PRIVATE KEY----- -MFYCAQEEFQLe4QB8Zzf5rQU6sWF+11QG1nkE86AKBggqhkjOPQMAAaEuAywABAai -MqSGc525RBjpdPQbBBsN7VgzXAWSPe9kaSE7k7OyobVCpAuQV4zAqg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAEETDBKAgEBBBUC3uEAfGc3+a0FOrFh +ftdUBtZ5BPOhLgMsAAQGojKkhnOduUQY6XT0GwQbDe1YM1wFkj3vZGkhO5OzsqG1 +QqQLkFeMwKo= +-----END PRIVATE KEY----- PublicKey=BOB_c2pnb163v1_PUB -----BEGIN PUBLIC KEY----- @@ -5177,10 +5197,11 @@ SharedSecret=05939a47cb503656e684f433001e45776c7620e13b # TEST CURVE c2pnb163v2 PrivateKey=ALICE_c2pnb163v2 ------BEGIN EC PRIVATE KEY----- -MFYCAQEEFQLebeZ4k1uEPDAUfcL/8vYTI5A2u6AKBggqhkjOPQMAAqEuAywABAFo -BM6I9XpzyJwFhZzMtczqT63xTgUg3nuKILxGyYhLf5XIz+s3dQFlrA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAIETDBKAgEBBBUC3m3meJNbhDwwFH3C +//L2EyOQNruhLgMsAAQBaATOiPV6c8icBYWczLXM6k+t8U4FIN57iiC8RsmIS3+V +yM/rN3UBZaw= +-----END PRIVATE KEY----- PublicKey=ALICE_c2pnb163v2_PUB -----BEGIN PUBLIC KEY----- @@ -5189,10 +5210,11 @@ BSDee4ogvEbJiEt/lcjP6zd1AWWs -----END PUBLIC KEY----- PrivateKey=BOB_c2pnb163v2 ------BEGIN EC PRIVATE KEY----- -MFYCAQEEFQG938O8qFqvLByRJpZoCeIoHJcHCKAKBggqhkjOPQMAAqEuAywABAfT -4VZ7iZvXdCsRkI/B8hL6AKERegaHIFW5u3r5JKBLmdJ4MaCNb/fpDA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAIETDBKAgEBBBUBvd/DvKharywckSaW +aAniKByXBwihLgMsAAQH0+FWe4mb13QrEZCPwfIS+gChEXoGhyBVubt6+SSgS5nS +eDGgjW/36Qw= +-----END PRIVATE KEY----- PublicKey=BOB_c2pnb163v2_PUB -----BEGIN PUBLIC KEY----- @@ -5213,10 +5235,11 @@ SharedSecret=0779fb5f6ac7892f2f342b785d71244e0b03ca562d # TEST CURVE c2pnb163v3 PrivateKey=ALICE_c2pnb163v3 ------BEGIN EC PRIVATE KEY----- -MFYCAQEEFQK0nRlAwPlPpib+NnEXNv21CQs6G6AKBggqhkjOPQMAA6EuAywABATb -pgPuEb4JjTb6cEMUogGcy8dZRAZ+SIh8b3LFX4um04wJ1TjL1GEz7A== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAMETDBKAgEBBBUCtJ0ZQMD5T6Ym/jZx +Fzb9tQkLOhuhLgMsAAQE26YD7hG+CY02+nBDFKIBnMvHWUQGfkiIfG9yxV+LptOM +CdU4y9RhM+w= +-----END PRIVATE KEY----- PublicKey=ALICE_c2pnb163v3_PUB -----BEGIN PUBLIC KEY----- @@ -5225,10 +5248,11 @@ Bn5IiHxvcsVfi6bTjAnVOMvUYTPs -----END PUBLIC KEY----- PrivateKey=BOB_c2pnb163v3 ------BEGIN EC PRIVATE KEY----- -MFYCAQEEFQH0ydhH01czw6gKto6itDPUtchkkKAKBggqhkjOPQMAA6EuAywABAfX -lH/EAbKu2aD6Gt0Boaf2tUR9ZADvJQKfi8pHZ4jL+o1h9t4dMhpMFg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAMETDBKAgEBBBUB9MnYR9NXM8OoCraO +orQz1LXIZJChLgMsAAQH15R/xAGyrtmg+hrdAaGn9rVEfWQA7yUCn4vKR2eIy/qN +YfbeHTIaTBY= +-----END PRIVATE KEY----- PublicKey=BOB_c2pnb163v3_PUB -----BEGIN PUBLIC KEY----- @@ -5249,10 +5273,11 @@ SharedSecret=02bf68863a8798e72cdc9cd3b9ce731f12654bfa81 # TEST CURVE c2pnb176v1 PrivateKey=ALICE_c2pnb176v1 ------BEGIN EC PRIVATE KEY----- -MFgCAQEEFQDFcTPU+O2GqwjrriU3ktEs3wLa7KAKBggqhkjOPQMABKEwAy4ABEPW -pUkdsvkDsGEQp4dK4N5Ppd5nc4MWf15/rup0X61LunfOBcYq3ikoyhhy ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGgCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAQETjBMAgEBBBUAxXEz1PjthqsI664l +N5LRLN8C2uyhMAMuAARD1qVJHbL5A7BhEKeHSuDeT6XeZ3ODFn9ef67qdF+tS7p3 +zgXGKt4pKMoYcg== +-----END PRIVATE KEY----- PublicKey=ALICE_c2pnb176v1_PUB -----BEGIN PUBLIC KEY----- @@ -5261,10 +5286,11 @@ gxZ/Xn+u6nRfrUu6d84FxireKSjKGHI= -----END PUBLIC KEY----- PrivateKey=BOB_c2pnb176v1 ------BEGIN EC PRIVATE KEY----- -MFgCAQEEFQAm8ccVbS/79yNot3teC3oW1KBrn6AKBggqhkjOPQMABKEwAy4ABJSz -utQCW/WqGmkjzaKQu9nxjQMCkLfnqeGztLJBh0u0dEz6pQcEHcjOssp1 ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGgCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAQETjBMAgEBBBUAJvHHFW0v+/cjaLd7 +Xgt6FtSga5+hMAMuAASUs7rUAlv1qhppI82ikLvZ8Y0DApC356nhs7SyQYdLtHRM ++qUHBB3IzrLKdQ== +-----END PRIVATE KEY----- PublicKey=BOB_c2pnb176v1_PUB -----BEGIN PUBLIC KEY----- @@ -5285,11 +5311,11 @@ SharedSecret=b204734417542df762e09013d6ba958940837a2aa25a # TEST CURVE c2tnb191v1 PrivateKey=ALICE_c2tnb191v1 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGBiCk77CCKtS26ocXTTajTZVzvFCMqBLMKAKBggqhkjOPQMABaE0AzIA -BDZp77m0NDYINpXlc90L5G0uBwdLmVM5yVMKWv9ZKk9OUy3ZMaH8pGsPzn2heDop -hg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAUEVTBTAgEBBBgYgpO+wgirUtuqHF00 +2o02Vc7xQjKgSzChNAMyAAQ2ae+5tDQ2CDaV5XPdC+RtLgcHS5lTOclTClr/WSpP +TlMt2TGh/KRrD859oXg6KYY= +-----END PRIVATE KEY----- PublicKey=ALICE_c2tnb191v1_PUB -----BEGIN PUBLIC KEY----- @@ -5298,11 +5324,11 @@ UznJUwpa/1kqT05TLdkxofykaw/OfaF4OimG -----END PUBLIC KEY----- PrivateKey=BOB_c2tnb191v1 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGC7Obm4U1HL+Vfc4q4mPyL+8f/6+Ix3jzKAKBggqhkjOPQMABaE0AzIA -BGRrmuF1Oa1upBVExZlCNSqwdQxfjeyJG3l/ZZBJl+D4hDaX/y95rLJf16tRK3eA -rg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAUEVTBTAgEBBBguzm5uFNRy/lX3OKuJ +j8i/vH/+viMd48yhNAMyAARka5rhdTmtbqQVRMWZQjUqsHUMX43siRt5f2WQSZfg ++IQ2l/8veayyX9erUSt3gK4= +-----END PRIVATE KEY----- PublicKey=BOB_c2tnb191v1_PUB -----BEGIN PUBLIC KEY----- @@ -5323,11 +5349,11 @@ SharedSecret=7a30d30acd3b067f38bb3be9e8cdef739483df26455e36e1 # TEST CURVE c2tnb191v2 PrivateKey=ALICE_c2tnb191v2 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGA6WyWAnRdIre8oLkuxCZjFl+vw4QpdFDaAKBggqhkjOPQMABqE0AzIA -BAAeK8uFLBbZIlm1Q+G5XWn19BJ/PvD1Iljx0k6lV/z0N689SUkw9xpIbKNf7ecl -lw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAYEVTBTAgEBBBgOlslgJ0XSK3vKC5Ls +QmYxZfr8OEKXRQ2hNAMyAAQAHivLhSwW2SJZtUPhuV1p9fQSfz7w9SJY8dJOpVf8 +9DevPUlJMPcaSGyjX+3nJZc= +-----END PRIVATE KEY----- PublicKey=ALICE_c2tnb191v2_PUB -----BEGIN PUBLIC KEY----- @@ -5336,11 +5362,11 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAYDMgAEAB4ry4UsFtkiWbVD4bldafX0En8+ -----END PUBLIC KEY----- PrivateKey=BOB_c2tnb191v2 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGAr1BpLZINTrLPu5eo77/4L5tpNNUwAZUaAKBggqhkjOPQMABqE0AzIA -BCJHS32mWbvt7N9e8nMM12XJgLSlZf5CYnwRq+AQSWSTL8z5hdvm5+QXMVcgR9T2 -kw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAYEVTBTAgEBBBgK9QaS2SDU6yz7uXqO ++/+C+baTTVMAGVGhNAMyAAQiR0t9plm77ezfXvJzDNdlyYC0pWX+QmJ8EavgEElk +ky/M+YXb5ufkFzFXIEfU9pM= +-----END PRIVATE KEY----- PublicKey=BOB_c2tnb191v2_PUB -----BEGIN PUBLIC KEY----- @@ -5361,11 +5387,11 @@ SharedSecret=5ec2b6ccd193620dbad302c4ad8f8909a40698bf454d7534 # TEST CURVE c2tnb191v3 PrivateKey=ALICE_c2tnb191v3 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGBJoE5DKrpdfeFlVWBUWVGvFO6+C2/fcLqAKBggqhkjOPQMAB6E0AzIA -BEv4W6nyM6eLFBg/HylT9vTro8euFNd+I16sURgD/k5cIoISR1EKm4MmfKqmZoLa -/A== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAcEVTBTAgEBBBgSaBOQyq6XX3hZVVgV +FlRrxTuvgtv33C6hNAMyAARL+Fup8jOnixQYPx8pU/b066PHrhTXfiNerFEYA/5O +XCKCEkdRCpuDJnyqpmaC2vw= +-----END PRIVATE KEY----- PublicKey=ALICE_c2tnb191v3_PUB -----BEGIN PUBLIC KEY----- @@ -5374,11 +5400,11 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAcDMgAES/hbqfIzp4sUGD8fKVP29Oujx64U -----END PUBLIC KEY----- PrivateKey=BOB_c2tnb191v3 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGAQTwuzulzX+rf/Su5GAytYaEYivhUu3i6AKBggqhkjOPQMAB6E0AzIA -BAcBmyOQBdqfAZtdHdIqSgqWLqtJ9KK7SVTZccOJl20to834SKHPgp4bZgz+nebV -2g== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAcEVTBTAgEBBBgEE8Ls7pc1/q3/0ruR +gMrWGhGIr4VLt4uhNAMyAAQHAZsjkAXanwGbXR3SKkoKli6rSfSiu0lU2XHDiZdt +LaPN+Eihz4KeG2YM/p3m1do= +-----END PRIVATE KEY----- PublicKey=BOB_c2tnb191v3_PUB -----BEGIN PUBLIC KEY----- @@ -5399,11 +5425,11 @@ SharedSecret=39093dc8a2e6724a6206ed41bb99490d527d80c902c41891 # TEST CURVE c2pnb208w1 PrivateKey=ALICE_c2pnb208w1 ------BEGIN EC PRIVATE KEY----- -MGQCAQEEGQBt+c1uhfoOT40ugE7qoEHZoTWyuZOBL3qgCgYIKoZIzj0DAAqhOAM2 -AAQUsdyIC7h7FxgHSa3LysXjjZQtdl+ov3QiSA/kbbPDNjWYCUQEUyDzeLN5FoIn -+9GKFkMn ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHQCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAoEWjBYAgEBBBkAbfnNboX6Dk+NLoBO +6qBB2aE1srmTgS96oTgDNgAEFLHciAu4excYB0mty8rF442ULXZfqL90IkgP5G2z +wzY1mAlEBFMg83izeRaCJ/vRihZDJw== +-----END PRIVATE KEY----- PublicKey=ALICE_c2pnb208w1_PUB -----BEGIN PUBLIC KEY----- @@ -5412,11 +5438,11 @@ qL90IkgP5G2zwzY1mAlEBFMg83izeRaCJ/vRihZDJw== -----END PUBLIC KEY----- PrivateKey=BOB_c2pnb208w1 ------BEGIN EC PRIVATE KEY----- -MGQCAQEEGQDCMYUk4+RmpA9n6YgB7cbXbOlSJrjS1GOgCgYIKoZIzj0DAAqhOAM2 -AAQPFo/q7SmEMt8zhGxmGAh9nLwK6tHj8g+2owbFt/Ok8o8xldXXYXoytauitIUN -nwoV3nxb ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHQCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAoEWjBYAgEBBBkAwjGFJOPkZqQPZ+mI +Ae3G12zpUia40tRjoTgDNgAEDxaP6u0phDLfM4RsZhgIfZy8CurR4/IPtqMGxbfz +pPKPMZXV12F6MrWrorSFDZ8KFd58Ww== +-----END PRIVATE KEY----- PublicKey=BOB_c2pnb208w1_PUB -----BEGIN PUBLIC KEY----- @@ -5437,11 +5463,11 @@ SharedSecret=59bf3c91bd168d4d4d900d9ce155933045e0fd16dcf0511bb5af # TEST CURVE c2tnb239v1 PrivateKey=ALICE_c2tnb239v1 ------BEGIN EC PRIVATE KEY----- -MHECAQEEHhOAgsFxCrD9wnywvwy0khfZX8jmjUrkF5qva8y6sKAKBggqhkjOPQMA -C6FAAz4ABDOqECLFybPgDSkKRdw8wXRuBXUuQ0vqqXOX1U7GYiOBQFgl1L88z00Q -Hsd8MLxf+Ca2CunClYfItRDqzQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwALBGcwZQIBAQQeE4CCwXEKsP3CfLC/ +DLSSF9lfyOaNSuQXmq9rzLqwoUADPgAEM6oQIsXJs+ANKQpF3DzBdG4FdS5DS+qp +c5fVTsZiI4FAWCXUvzzPTRAex3wwvF/4JrYK6cKVh8i1EOrN +-----END PRIVATE KEY----- PublicKey=ALICE_c2tnb239v1_PUB -----BEGIN PUBLIC KEY----- @@ -5450,11 +5476,11 @@ S+qpc5fVTsZiI4FAWCXUvzzPTRAex3wwvF/4JrYK6cKVh8i1EOrN -----END PUBLIC KEY----- PrivateKey=BOB_c2tnb239v1 ------BEGIN EC PRIVATE KEY----- -MHECAQEEHgBg2AhgF6g9N8eddId+SUs5YEXlulv0/JWDxAONnaAKBggqhkjOPQMA -C6FAAz4ABApOlMofFC5DlTsWUjWWBsLZKP6Mu2SwzxfHW7BGU3mCAaUOoVqmf+Dc -90cs36LpMnwm92/DjLaavkIIqA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwALBGcwZQIBAQQeAGDYCGAXqD03x510 +h35JSzlgReW6W/T8lYPEA42doUADPgAECk6Uyh8ULkOVOxZSNZYGwtko/oy7ZLDP +F8dbsEZTeYIBpQ6hWqZ/4Nz3RyzfoukyfCb3b8OMtpq+Qgio +-----END PRIVATE KEY----- PublicKey=BOB_c2tnb239v1_PUB -----BEGIN PUBLIC KEY----- @@ -5475,11 +5501,11 @@ SharedSecret=78c42256900725df9a47bb042cef7dad9f639b32e3010738a144e7472d1a # TEST CURVE c2tnb239v2 PrivateKey=ALICE_c2tnb239v2 ------BEGIN EC PRIVATE KEY----- -MHECAQEEHhPJAYxy4xXgvmdoGatLJ8Ed1IBIFjFtMYpYSTY1tqAKBggqhkjOPQMA -DKFAAz4ABEPrmyGIYfNlaIcCklc+9D5B7I5mFg7w1P0gUZPAIj+9QjPQ+1xCiubZ -1PeDLStirHMeZ1mRXPqCIdfrGA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwAMBGcwZQIBAQQeE8kBjHLjFeC+Z2gZ +q0snwR3UgEgWMW0xilhJNjW2oUADPgAEQ+ubIYhh82VohwKSVz70PkHsjmYWDvDU +/SBRk8AiP71CM9D7XEKK5tnU94MtK2Kscx5nWZFc+oIh1+sY +-----END PRIVATE KEY----- PublicKey=ALICE_c2tnb239v2_PUB -----BEGIN PUBLIC KEY----- @@ -5488,11 +5514,11 @@ DvDU/SBRk8AiP71CM9D7XEKK5tnU94MtK2Kscx5nWZFc+oIh1+sY -----END PUBLIC KEY----- PrivateKey=BOB_c2tnb239v2 ------BEGIN EC PRIVATE KEY----- -MHECAQEEHhO24cymWVJu/NHNHtxAVmNRsQ/dDM7u860DIu2wM6AKBggqhkjOPQMA -DKFAAz4ABGIFe26JGOoizM2UxtdHOjQ2ltdaZQJtEzSlVcMz6nt8pYbEJpptNixy -l9IDeBNXVEtLgpQWzBjatpoZZw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwAMBGcwZQIBAQQeE7bhzKZZUm780c0e +3EBWY1GxD90Mzu7zrQMi7bAzoUADPgAEYgV7bokY6iLMzZTG10c6NDaW11plAm0T +NKVVwzPqe3ylhsQmmm02LHKX0gN4E1dUS0uClBbMGNq2mhln +-----END PRIVATE KEY----- PublicKey=BOB_c2tnb239v2_PUB -----BEGIN PUBLIC KEY----- @@ -5513,11 +5539,11 @@ SharedSecret=4ba2ecfa8ec7a375594d1673886cccf96d7763c55611b3c9008a35160192 # TEST CURVE c2tnb239v3 PrivateKey=ALICE_c2tnb239v3 ------BEGIN EC PRIVATE KEY----- -MHECAQEEHgsYguZWx2C9UGG29os2YkqCz51gmSHbPNdSdTeyraAKBggqhkjOPQMA -DaFAAz4ABHRzM/rbLju1XDvSBYLElk8Hi6AdWoeViIOnFq7XFH5juxBnz8DZ4uAX -/DaO6xhjMG4rFtL+ib9qZE0jPA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwANBGcwZQIBAQQeCxiC5lbHYL1QYbb2 +izZiSoLPnWCZIds811J1N7KtoUADPgAEdHMz+tsuO7VcO9IFgsSWTweLoB1ah5WI +g6cWrtcUfmO7EGfPwNni4Bf8No7rGGMwbisW0v6Jv2pkTSM8 +-----END PRIVATE KEY----- PublicKey=ALICE_c2tnb239v3_PUB -----BEGIN PUBLIC KEY----- @@ -5526,11 +5552,11 @@ h5WIg6cWrtcUfmO7EGfPwNni4Bf8No7rGGMwbisW0v6Jv2pkTSM8 -----END PUBLIC KEY----- PrivateKey=BOB_c2tnb239v3 ------BEGIN EC PRIVATE KEY----- -MHECAQEEHgQT8XXlNzKIWXOSce1mnS7j0nl3joO+a1wtRJXsbKAKBggqhkjOPQMA -DaFAAz4ABGh8IsEJqKmz4o/PpeoSx1UM9AGSwU+bl4QIfH4UwASqiO6mEoSAgAF9 -Lb7txL0PAUCz9eIK8VLEqBKgBQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwANBGcwZQIBAQQeBBPxdeU3MohZc5Jx +7WadLuPSeXeOg75rXC1ElexsoUADPgAEaHwiwQmoqbPij8+l6hLHVQz0AZLBT5uX +hAh8fhTABKqI7qYShICAAX0tvu3EvQ8BQLP14grxUsSoEqAF +-----END PRIVATE KEY----- PublicKey=BOB_c2tnb239v3_PUB -----BEGIN PUBLIC KEY----- @@ -5551,11 +5577,11 @@ SharedSecret=47ad60e5480375fccd9246c93ab04da8e5da83e1dbf5f177f10a47cb54a0 # TEST CURVE c2pnb272w1 PrivateKey=ALICE_c2pnb272w1 ------BEGIN EC PRIVATE KEY----- -MHwCAQEEIQCjLSnXRDVRo801OMPoVtEoAzrSBJXLOdsG+NEtPI+oDKAKBggqhkjO -PQMAEKFIA0YABHxr0s0KPtNFVyA11e4ohl6SNepM7OgvK5HIQObFQQWOep0gqdJ+ -BaSF0c2n4hUJJSQ/TqycwOj13O7adp9l4SML7jpi ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGMAgEAMBMGByqGSM49AgEGCCqGSM49AwAQBHIwcAIBAQQhAKMtKddENVGjzTU4 +w+hW0SgDOtIElcs52wb40S08j6gMoUgDRgAEfGvSzQo+00VXIDXV7iiGXpI16kzs +6C8rkchA5sVBBY56nSCp0n4FpIXRzafiFQklJD9OrJzA6PXc7tp2n2XhIwvuOmI= +-----END PRIVATE KEY----- PublicKey=ALICE_c2pnb272w1_PUB -----BEGIN PUBLIC KEY----- @@ -5564,11 +5590,11 @@ MF0wEwYHKoZIzj0CAQYIKoZIzj0DABADRgAEfGvSzQo+00VXIDXV7iiGXpI16kzs -----END PUBLIC KEY----- PrivateKey=BOB_c2pnb272w1 ------BEGIN EC PRIVATE KEY----- -MHwCAQEEIQBQCjwcl9cJWFKVOJhAgwMYPlTOWhaOCT5ahM0dG/YSOqAKBggqhkjO -PQMAEKFIA0YABC/PvOtyFOLsWxGPI1QY4bKxuFugBTBerfmhr6Iih7RDC0GulNef -E0WqQ1qeHkbq5uiHb7+4XqQj6jjBBskg1MDBAokD ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGMAgEAMBMGByqGSM49AgEGCCqGSM49AwAQBHIwcAIBAQQhAFAKPByX1wlYUpU4 +mECDAxg+VM5aFo4JPlqEzR0b9hI6oUgDRgAEL8+863IU4uxbEY8jVBjhsrG4W6AF +MF6t+aGvoiKHtEMLQa6U158TRapDWp4eRurm6Idvv7hepCPqOMEGySDUwMECiQM= +-----END PRIVATE KEY----- PublicKey=BOB_c2pnb272w1_PUB -----BEGIN PUBLIC KEY----- @@ -5589,11 +5615,12 @@ SharedSecret=3ae063b2bed6ba8aa28ff35e9bd2673f22ee8087860c86b89429a5b52538216632a # TEST CURVE c2pnb304w1 PrivateKey=ALICE_c2pnb304w1 ------BEGIN EC PRIVATE KEY----- -MIGIAgEBBCUA4rN9xXZc69WxJSGhXPdIcbNIJ/Sr2L6KXPll8HFz7myyMruMoAoG -CCqGSM49AwARoVADTgAENzjNA0Vpm6SP2LPeJdNh3Nq0I5hm+t86OtuDOX/w+gXG -3mrrIlO7flW71dWnmlMK2OkMSnLAGPTFvTtFG5UMSTxO2EU/m8Z5MhYsPg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGYAgEAMBMGByqGSM49AgEGCCqGSM49AwARBH4wfAIBAQQlAOKzfcV2XOvVsSUh +oVz3SHGzSCf0q9i+ilz5ZfBxc+5ssjK7jKFQA04ABDc4zQNFaZukj9iz3iXTYdza +tCOYZvrfOjrbgzl/8PoFxt5q6yJTu35Vu9XVp5pTCtjpDEpywBj0xb07RRuVDEk8 +TthFP5vGeTIWLD4= +-----END PRIVATE KEY----- PublicKey=ALICE_c2pnb304w1_PUB -----BEGIN PUBLIC KEY----- @@ -5603,11 +5630,12 @@ m8Z5MhYsPg== -----END PUBLIC KEY----- PrivateKey=BOB_c2pnb304w1 ------BEGIN EC PRIVATE KEY----- -MIGIAgEBBCUA8/iHPqxr4p1MniF8F4JSIkF+yFxmhqmRkwWuEjW91xFjsx4BoAoG -CCqGSM49AwARoVADTgAEwdFTMuJRjs7icQF2Z7HfVTiXpM790P7kxX+1U2LNWxaO -RO+LZ+zvvaVn0x42npCcYxnmfmy5sexrRA4kvUumZdcrRQhYZtbSdBvnaA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGYAgEAMBMGByqGSM49AgEGCCqGSM49AwARBH4wfAIBAQQlAPP4hz6sa+KdTJ4h +fBeCUiJBfshcZoapkZMFrhI1vdcRY7MeAaFQA04ABMHRUzLiUY7O4nEBdmex31U4 +l6TO/dD+5MV/tVNizVsWjkTvi2fs772lZ9MeNp6QnGMZ5n5subHsa0QOJL1LpmXX +K0UIWGbW0nQb52g= +-----END PRIVATE KEY----- PublicKey=BOB_c2pnb304w1_PUB -----BEGIN PUBLIC KEY----- @@ -5629,12 +5657,12 @@ SharedSecret=6df88b20de9f095c7632234291ea4658a9265cd2293424e11ed56705b09a069f09d # TEST CURVE c2tnb359v1 PrivateKey=ALICE_c2tnb359v1 ------BEGIN EC PRIVATE KEY----- -MIGeAgEBBC0BeMU97SvjsIvQ1v+Ztf56OCL8JXHxRJDQZ5gWEa4c2b3FZXFVC4Cw -EPd7cB+gCgYIKoZIzj0DABKhXgNcAAQOBgLp0TzS4Hf/VYbJCFuj3OlRC5JMzFV7 -ox41ubhl5Ij+gHIodu1bQ6cqd0YAb2/30PxwX++NNpFvq8u8435zhPYXsut6txOP -NU5ZzCeagy2xsKacXSZc7D0= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGwAgEAMBMGByqGSM49AgEGCCqGSM49AwASBIGVMIGSAgEBBC0BeMU97SvjsIvQ +1v+Ztf56OCL8JXHxRJDQZ5gWEa4c2b3FZXFVC4CwEPd7cB+hXgNcAAQOBgLp0TzS +4Hf/VYbJCFuj3OlRC5JMzFV7ox41ubhl5Ij+gHIodu1bQ6cqd0YAb2/30PxwX++N +NpFvq8u8435zhPYXsut6txOPNU5ZzCeagy2xsKacXSZc7D0= +-----END PRIVATE KEY----- PublicKey=ALICE_c2tnb359v1_PUB -----BEGIN PUBLIC KEY----- @@ -5644,12 +5672,12 @@ ercTjzVOWcwnmoMtsbCmnF0mXOw9 -----END PUBLIC KEY----- PrivateKey=BOB_c2tnb359v1 ------BEGIN EC PRIVATE KEY----- -MIGeAgEBBC0BRZ3IIh3mrLIXKBbh6Vj7TXNY5bzRuD5/ayHPlHQkJcd8K66dOqu7 -hgaN91GgCgYIKoZIzj0DABKhXgNcAAQ7njbTQ2xYYZtkKswYr8E6P/R3Dg/XEZgQ -Q72B4qXnqbK/SgYsZAntFg7CRztcTkHjKAgdSz6fTRIc4///gwXN3Oi6D8Peswhz -PJi/uLmCAHMm3GT6SUO3aTY= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGwAgEAMBMGByqGSM49AgEGCCqGSM49AwASBIGVMIGSAgEBBC0BRZ3IIh3mrLIX +KBbh6Vj7TXNY5bzRuD5/ayHPlHQkJcd8K66dOqu7hgaN91GhXgNcAAQ7njbTQ2xY +YZtkKswYr8E6P/R3Dg/XEZgQQ72B4qXnqbK/SgYsZAntFg7CRztcTkHjKAgdSz6f +TRIc4///gwXN3Oi6D8PeswhzPJi/uLmCAHMm3GT6SUO3aTY= +-----END PRIVATE KEY----- PublicKey=BOB_c2tnb359v1_PUB -----BEGIN PUBLIC KEY----- @@ -5671,12 +5699,12 @@ SharedSecret=1d3f3396492d130caea54233c79833e90a072fe883071bb08cec671ce0319f0bc39 # TEST CURVE c2pnb368w1 PrivateKey=ALICE_c2pnb368w1 ------BEGIN EC PRIVATE KEY----- -MIGgAgEBBC0AFagbth/4/M2sb1G4FpxbFEVLIulioS34v0hrClpZ38/Z+PHmIhOf -EFminyegCgYIKoZIzj0DABOhYANeAAQAU42w7mIIjkyAdnCC4qoEPdH42fh3oVyC -tnaRtKUmdhUdXm0IgSM4T4SYEOsx+aQZLGIjnhHJCabcaKPQ0sai3dirUr2YsNXN -DJiU93T7buUr+DnRPGsfBy/nEg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGyAgEAMBMGByqGSM49AgEGCCqGSM49AwATBIGXMIGUAgEBBC0AFagbth/4/M2s +b1G4FpxbFEVLIulioS34v0hrClpZ38/Z+PHmIhOfEFminyehYANeAAQAU42w7mII +jkyAdnCC4qoEPdH42fh3oVyCtnaRtKUmdhUdXm0IgSM4T4SYEOsx+aQZLGIjnhHJ +CabcaKPQ0sai3dirUr2YsNXNDJiU93T7buUr+DnRPGsfBy/nEg== +-----END PRIVATE KEY----- PublicKey=ALICE_c2pnb368w1_PUB -----BEGIN PUBLIC KEY----- @@ -5686,12 +5714,12 @@ mLDVzQyYlPd0+27lK/g50TxrHwcv5xI= -----END PUBLIC KEY----- PrivateKey=BOB_c2pnb368w1 ------BEGIN EC PRIVATE KEY----- -MIGgAgEBBC0AA/woMzOFy8k2zBqBkubhkOIwc7sx0u+JadM9f7V45L4P8nK7bjJa -sOqrHRagCgYIKoZIzj0DABOhYANeAATKE6jcstacH8yWzg/qBgvGoGan2PVwTN/U -+68K4WxHO7+oPHviUh1OVF7ZxYjsVSdyno83iHE33sq2Ej6j26f+uVs/fuWk19t8 -NpAQ6+sVETZszuMDm5adqtVZRQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGyAgEAMBMGByqGSM49AgEGCCqGSM49AwATBIGXMIGUAgEBBC0AA/woMzOFy8k2 +zBqBkubhkOIwc7sx0u+JadM9f7V45L4P8nK7bjJasOqrHRahYANeAATKE6jcstac +H8yWzg/qBgvGoGan2PVwTN/U+68K4WxHO7+oPHviUh1OVF7ZxYjsVSdyno83iHE3 +3sq2Ej6j26f+uVs/fuWk19t8NpAQ6+sVETZszuMDm5adqtVZRQ== +-----END PRIVATE KEY----- PublicKey=BOB_c2pnb368w1_PUB -----BEGIN PUBLIC KEY----- @@ -5713,12 +5741,13 @@ SharedSecret=d191710b156d1b1d14242843a7f0abf28060bbb9e655655b53852a8b0f250ef1eee # TEST CURVE c2tnb431r1 PrivateKey=ALICE_c2tnb431r1 ------BEGIN EC PRIVATE KEY----- -MIG4AgEBBDUC18JhUt+NCIZ/q6kdjNZ7zX72UqpW4K6Uc2bAWu2PXK1aL573LNzu -4oUlHfbvuE1BUrxNpaAKBggqhkjOPQMAFKFwA24ABDrG8SG4lckR1rrvLRpXYf7W -spmh/fbql+Zpulyl896XtwQK2BkLVRkZ5ixTG4PUyb64OiffdSnvIaM++cb7LgJL -BBgT3d5le8V1gtxWFFm0NggUyF6glmUqHQL0LuhXWS468O6w05KS0AL6vQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIHKAgEAMBMGByqGSM49AgEGCCqGSM49AwAUBIGvMIGsAgEBBDUC18JhUt+NCIZ/ +q6kdjNZ7zX72UqpW4K6Uc2bAWu2PXK1aL573LNzu4oUlHfbvuE1BUrxNpaFwA24A +BDrG8SG4lckR1rrvLRpXYf7Wspmh/fbql+Zpulyl896XtwQK2BkLVRkZ5ixTG4PU +yb64OiffdSnvIaM++cb7LgJLBBgT3d5le8V1gtxWFFm0NggUyF6glmUqHQL0LuhX +WS468O6w05KS0AL6vQ== +-----END PRIVATE KEY----- PublicKey=ALICE_c2tnb431r1_PUB -----BEGIN PUBLIC KEY----- @@ -5728,12 +5757,13 @@ MIGFMBMGByqGSM49AgEGCCqGSM49AwAUA24ABDrG8SG4lckR1rrvLRpXYf7Wspmh -----END PUBLIC KEY----- PrivateKey=BOB_c2tnb431r1 ------BEGIN EC PRIVATE KEY----- -MIG4AgEBBDUApanyPgvpfrAu1jNAKGpctH71v0+P/kFF9JxdFYarpWEwBBd4tz6C -xoYKmvDZ9ukOOqBbX6AKBggqhkjOPQMAFKFwA24ABGh3JXuYmh6dGGEmbRhoR2T5 -pVD/5Mq2ZKKzfzY2NOoKiIs6rVzv2SW7S6BScYlRqRWiXCeZVFvT0crDY/5uodkH -bcRw6B/Yo/iMN8wLI257Tjm9/C5G+JPCLopCcLILgTwAJM2ZhtPnc08LyQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIHKAgEAMBMGByqGSM49AgEGCCqGSM49AwAUBIGvMIGsAgEBBDUApanyPgvpfrAu +1jNAKGpctH71v0+P/kFF9JxdFYarpWEwBBd4tz6CxoYKmvDZ9ukOOqBbX6FwA24A +BGh3JXuYmh6dGGEmbRhoR2T5pVD/5Mq2ZKKzfzY2NOoKiIs6rVzv2SW7S6BScYlR +qRWiXCeZVFvT0crDY/5uodkHbcRw6B/Yo/iMN8wLI257Tjm9/C5G+JPCLopCcLIL +gTwAJM2ZhtPnc08LyQ== +-----END PRIVATE KEY----- PublicKey=BOB_c2tnb431r1_PUB -----BEGIN PUBLIC KEY----- @@ -5755,10 +5785,10 @@ SharedSecret=4c4d7d387843ff5152f22f101b0609238819357fae2ccc9097b818e383ef6809cb4 # TEST CURVE wap-wsg-idm-ecid-wtls1 PrivateKey=ALICE_wap-wsg-idm-ecid-wtls1 ------BEGIN EC PRIVATE KEY----- -MEACAQEEDle73WoHDFMOaEP/fQp/oAcGBWcrAQQBoSIDIAAEAVBJnQb5p9rXHgrB -TMGNARYU11mgXpQ1gaQJEg3K ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFACAQAwEAYHKoZIzj0CAQYFZysBBAEEOTA3AgEBBA5Xu91qBwxTDmhD/30Kf6Ei +AyAABAFQSZ0G+afa1x4KwUzBjQEWFNdZoF6UNYGkCRINyg== +-----END PRIVATE KEY----- PublicKey=ALICE_wap-wsg-idm-ecid-wtls1_PUB -----BEGIN PUBLIC KEY----- @@ -5767,10 +5797,10 @@ gaQJEg3K -----END PUBLIC KEY----- PrivateKey=BOB_wap-wsg-idm-ecid-wtls1 ------BEGIN EC PRIVATE KEY----- -MEACAQEEDlpToJDjvhnV8ffEC2f/oAcGBWcrAQQBoSIDIAAEAWlvgZNz7m9/meS3 -jMvHAZlDqpJtiUfylRum/Byo ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFACAQAwEAYHKoZIzj0CAQYFZysBBAEEOTA3AgEBBA5aU6CQ474Z1fH3xAtn/6Ei +AyAABAFpb4GTc+5vf5nkt4zLxwGZQ6qSbYlH8pUbpvwcqA== +-----END PRIVATE KEY----- PublicKey=BOB_wap-wsg-idm-ecid-wtls1_PUB -----BEGIN PUBLIC KEY----- @@ -5791,10 +5821,11 @@ SharedSecret=0000fc6e280987e8b9bf6e3c7fa003 # TEST CURVE wap-wsg-idm-ecid-wtls3 PrivateKey=ALICE_wap-wsg-idm-ecid-wtls3 ------BEGIN EC PRIVATE KEY----- -MFMCAQEEFQE3YUWBCLPgo8n0YSyuPkGb3TyJ+6AHBgVnKwEEA6EuAywABAFXbVPH -e/z7XAUqrs+KWhHULHOaVQO+fJeuziY2Zzk2zfybM94255A2jQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFZysBBAMETDBKAgEBBBUBN2FFgQiz4KPJ9GEsrj5B +m908ifuhLgMsAAQBV21Tx3v8+1wFKq7PiloR1CxzmlUDvnyXrs4mNmc5Ns38mzPe +NueQNo0= +-----END PRIVATE KEY----- PublicKey=ALICE_wap-wsg-idm-ecid-wtls3_PUB -----BEGIN PUBLIC KEY----- @@ -5803,10 +5834,11 @@ l67OJjZnOTbN/Jsz3jbnkDaN -----END PUBLIC KEY----- PrivateKey=BOB_wap-wsg-idm-ecid-wtls3 ------BEGIN EC PRIVATE KEY----- -MFMCAQEEFQD/RSy3signnbrOfbCJYG6tHk15JaAHBgVnKwEEA6EuAywABAHt37/M -wy2Lh2OGVWdoapqqiduajgK/6IpPVwXefNdX8pcdIkin2Jl5qw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFZysBBAMETDBKAgEBBBUA/0Ust7IoJ526zn2wiWBu +rR5NeSWhLgMsAAQB7d+/zMMti4djhlVnaGqaqonbmo4Cv+iKT1cF3nzXV/KXHSJI +p9iZeas= +-----END PRIVATE KEY----- PublicKey=BOB_wap-wsg-idm-ecid-wtls3_PUB -----BEGIN PUBLIC KEY----- @@ -5827,10 +5859,10 @@ SharedSecret=00cf1d850f396436be68f1e5502935853ed054511f # TEST CURVE wap-wsg-idm-ecid-wtls4 PrivateKey=ALICE_wap-wsg-idm-ecid-wtls4 ------BEGIN EC PRIVATE KEY----- -MEECAQEEDwCy4Qa59I1KsM+7djU1qaAHBgVnKwEEBKEiAyAABABy89FsCuyR4Gzp -bag56wAcxCjwuT8UdxgpR8w4pg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFECAQAwEAYHKoZIzj0CAQYFZysBBAQEOjA4AgEBBA8AsuEGufSNSrDPu3Y1Namh +IgMgAAQAcvPRbArskeBs6W2oOesAHMQo8Lk/FHcYKUfMOKY= +-----END PRIVATE KEY----- PublicKey=ALICE_wap-wsg-idm-ecid-wtls4_PUB -----BEGIN PUBLIC KEY----- @@ -5839,10 +5871,10 @@ GClHzDim -----END PUBLIC KEY----- PrivateKey=BOB_wap-wsg-idm-ecid-wtls4 ------BEGIN EC PRIVATE KEY----- -MEECAQEEDwAUnCZSQptZ2bO+q/4BtaAHBgVnKwEEBKEiAyAABAGuI4lLJEviujnk -JsLB6QGW4QrAh8/rg58kIR9ZNQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFECAQAwEAYHKoZIzj0CAQYFZysBBAQEOjA4AgEBBA8AFJwmUkKbWdmzvqv+AbWh +IgMgAAQBriOJSyRL4ro55CbCwekBluEKwIfP64OfJCEfWTU= +-----END PRIVATE KEY----- PublicKey=BOB_wap-wsg-idm-ecid-wtls4_PUB -----BEGIN PUBLIC KEY----- @@ -5863,10 +5895,11 @@ SharedSecret=01076232302ca32b5f3daf075e5213 # TEST CURVE wap-wsg-idm-ecid-wtls5 PrivateKey=ALICE_wap-wsg-idm-ecid-wtls5 ------BEGIN EC PRIVATE KEY----- -MFMCAQEEFQKaeBto7ZL/9NrRlSGf+dtnJ1MoP6AHBgVnKwEEBaEuAywABADXv3aJ -3eEsi7bPQoQKQEJRtNI/1QUu7YVMmQtryo/hkisG3kVcomjYPA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFZysBBAUETDBKAgEBBBUCmngbaO2S//Ta0ZUhn/nb +ZydTKD+hLgMsAAQA1792id3hLIu2z0KECkBCUbTSP9UFLu2FTJkLa8qP4ZIrBt5F +XKJo2Dw= +-----END PRIVATE KEY----- PublicKey=ALICE_wap-wsg-idm-ecid-wtls5_PUB -----BEGIN PUBLIC KEY----- @@ -5875,10 +5908,11 @@ hUyZC2vKj+GSKwbeRVyiaNg8 -----END PUBLIC KEY----- PrivateKey=BOB_wap-wsg-idm-ecid-wtls5 ------BEGIN EC PRIVATE KEY----- -MFMCAQEEFQGtprhp5jEd30cnS8sigLBq4Yp33KAHBgVnKwEEBaEuAywABAfNzYWB -8kZqw2Uxwk0MOs1ASWEDVwcPiLOoR52YLe54y7vb9KlUXY+mKA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFZysBBAUETDBKAgEBBBUBraa4aeYxHd9HJ0vLIoCw +auGKd9yhLgMsAAQHzc2FgfJGasNlMcJNDDrNQElhA1cHD4izqEedmC3ueMu72/Sp +VF2Ppig= +-----END PRIVATE KEY----- PublicKey=BOB_wap-wsg-idm-ecid-wtls5_PUB -----BEGIN PUBLIC KEY----- @@ -5899,10 +5933,10 @@ SharedSecret=066091c591278f5b949106052b2546aacc20917c20 # TEST CURVE wap-wsg-idm-ecid-wtls6 PrivateKey=ALICE_wap-wsg-idm-ecid-wtls6 ------BEGIN EC PRIVATE KEY----- -MD4CAQEEDksnBE2s80zAbKgE/3lroAcGBWcrAQQGoSADHgAExnEWLvXVaXmvu1vV -cn18ncfVbUwq9Wti9+Y0Wg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +ME4CAQAwEAYHKoZIzj0CAQYFZysBBAYENzA1AgEBBA5LJwRNrPNMwGyoBP95a6Eg +Ax4ABMZxFi711Wl5r7tb1XJ9fJ3H1W1MKvVrYvfmNFo= +-----END PRIVATE KEY----- PublicKey=ALICE_wap-wsg-idm-ecid-wtls6_PUB -----BEGIN PUBLIC KEY----- @@ -5911,10 +5945,10 @@ MDIwEAYHKoZIzj0CAQYFZysBBAYDHgAExnEWLvXVaXmvu1vVcn18ncfVbUwq9Wti -----END PUBLIC KEY----- PrivateKey=BOB_wap-wsg-idm-ecid-wtls6 ------BEGIN EC PRIVATE KEY----- -MD4CAQEEDreLXPgqXwEQTUjcJhT0oAcGBWcrAQQGoSADHgAEbcW3kXzC+caKZQCY -ZCt+oCVUkp3OE1Jre/jspw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +ME4CAQAwEAYHKoZIzj0CAQYFZysBBAYENzA1AgEBBA63i1z4Kl8BEE1I3CYU9KEg +Ax4ABG3Ft5F8wvnGimUAmGQrfqAlVJKdzhNSa3v47Kc= +-----END PRIVATE KEY----- PublicKey=BOB_wap-wsg-idm-ecid-wtls6_PUB -----BEGIN PUBLIC KEY----- @@ -5935,10 +5969,11 @@ SharedSecret=8d184455748c56115ba2183070b0 # TEST CURVE wap-wsg-idm-ecid-wtls7 PrivateKey=ALICE_wap-wsg-idm-ecid-wtls7 ------BEGIN EC PRIVATE KEY----- -MFECAQEEFQC56iKyI36W4kTLTB2IjuNwAuVOoKAHBgVnKwEEB6EsAyoABD8VawbE -Py+68QVZd9ZF46q8HOpasX2Z0x5N44TXL2v0844hRUk820s= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGECAQAwEAYHKoZIzj0CAQYFZysBBAcESjBIAgEBBBUAueoisiN+luJEy0wdiI7j +cALlTqChLAMqAAQ/FWsGxD8vuvEFWXfWReOqvBzqWrF9mdMeTeOE1y9r9POOIUVJ +PNtL +-----END PRIVATE KEY----- PublicKey=ALICE_wap-wsg-idm-ecid-wtls7_PUB -----BEGIN PUBLIC KEY----- @@ -5947,10 +5982,11 @@ Hk3jhNcva/TzjiFFSTzbSw== -----END PUBLIC KEY----- PrivateKey=BOB_wap-wsg-idm-ecid-wtls7 ------BEGIN EC PRIVATE KEY----- -MFECAQEEFQCvja8qNtRcVqTaZXMVim7KE39wPKAHBgVnKwEEB6EsAyoABIlmm4WD -6fy+xy6r6mp8UU9h6ad8t2F0AHgmh19HcnkHO7ruESZsgpA= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGECAQAwEAYHKoZIzj0CAQYFZysBBAcESjBIAgEBBBUAr42vKjbUXFak2mVzFYpu +yhN/cDyhLAMqAASJZpuFg+n8vscuq+pqfFFPYemnfLdhdAB4JodfR3J5Bzu67hEm +bIKQ +-----END PRIVATE KEY----- PublicKey=BOB_wap-wsg-idm-ecid-wtls7_PUB -----BEGIN PUBLIC KEY----- @@ -5971,10 +6007,10 @@ SharedSecret=990eda6a0406caef965018b97c94d0faa200f6e4 # TEST CURVE wap-wsg-idm-ecid-wtls8 PrivateKey=ALICE_wap-wsg-idm-ecid-wtls8 ------BEGIN EC PRIVATE KEY----- -MD8CAQEEDwDWbrZ9+XqeK4zjpc5TKKAHBgVnKwEECKEgAx4ABPiapgCh7s0S0p8Q -xCzah8ieFlFkIWsVTlyMRaI= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +ME8CAQAwEAYHKoZIzj0CAQYFZysBBAgEODA2AgEBBA8A1m62ffl6niuM46XOUyih +IAMeAAT4mqYAoe7NEtKfEMQs2ofInhZRZCFrFU5cjEWi +-----END PRIVATE KEY----- PublicKey=ALICE_wap-wsg-idm-ecid-wtls8_PUB -----BEGIN PUBLIC KEY----- @@ -5983,10 +6019,10 @@ XIxFog== -----END PUBLIC KEY----- PrivateKey=BOB_wap-wsg-idm-ecid-wtls8 ------BEGIN EC PRIVATE KEY----- -MD8CAQEEDwB6BOsugxHI+XhTjE52DqAHBgVnKwEECKEgAx4ABNAqTJDeMvYSS7oL -69JBrNuONKTM17rs5xyqPY8= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +ME8CAQAwEAYHKoZIzj0CAQYFZysBBAgEODA2AgEBBA8AegTrLoMRyPl4U4xOdg6h +IAMeAATQKkyQ3jL2Eku6C+vSQazbjjSkzNe67Occqj2P +-----END PRIVATE KEY----- PublicKey=BOB_wap-wsg-idm-ecid-wtls8_PUB -----BEGIN PUBLIC KEY----- @@ -6007,10 +6043,11 @@ SharedSecret=7524c547bd6b26644ce70571cb06 # TEST CURVE wap-wsg-idm-ecid-wtls9 PrivateKey=ALICE_wap-wsg-idm-ecid-wtls9 ------BEGIN EC PRIVATE KEY----- -MFECAQEEFQATTfvo2/OwheLpdp2tWfjTqhtNEKAHBgVnKwEECaEsAyoABFsLXLD1 -/W4E5WUx/lkVB7BODJzzUCqHZMUxJF+6MIiF28ZNiBG27oU= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGECAQAwEAYHKoZIzj0CAQYFZysBBAkESjBIAgEBBBUAE0376NvzsIXi6XadrVn4 +06obTRChLAMqAARbC1yw9f1uBOVlMf5ZFQewTgyc81Aqh2TFMSRfujCIhdvGTYgR +tu6F +-----END PRIVATE KEY----- PublicKey=ALICE_wap-wsg-idm-ecid-wtls9_PUB -----BEGIN PUBLIC KEY----- @@ -6019,10 +6056,11 @@ xTEkX7owiIXbxk2IEbbuhQ== -----END PUBLIC KEY----- PrivateKey=BOB_wap-wsg-idm-ecid-wtls9 ------BEGIN EC PRIVATE KEY----- -MFECAQEEFQB3aR8xyVolTZuDxrJOuNmiiUjzbKAHBgVnKwEECaEsAyoABDQ15b1M -qFB4WutPIxH0Zvnn4Gd4JBIHIBKEzwOfdXUUVjPufTJu8Fc= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGECAQAwEAYHKoZIzj0CAQYFZysBBAkESjBIAgEBBBUAd2kfMclaJU2bg8ayTrjZ +oolI82yhLAMqAAQ0NeW9TKhQeFrrTyMR9Gb55+BneCQSByAShM8Dn3V1FFYz7n0y +bvBX +-----END PRIVATE KEY----- PublicKey=BOB_wap-wsg-idm-ecid-wtls9_PUB -----BEGIN PUBLIC KEY----- @@ -6043,11 +6081,11 @@ SharedSecret=5ca1d9eed44def2c390fd5bbb16ca2c3a09eb7b1 # TEST CURVE wap-wsg-idm-ecid-wtls10 PrivateKey=ALICE_wap-wsg-idm-ecid-wtls10 ------BEGIN EC PRIVATE KEY----- -MG0CAQEEHTVMOCMgZ36Bc9nh6xCdbPP/LW/MmeJQEzlc3I+roAcGBWcrAQQKoUAD -PgAEAdWzmBilsnOrI7wuTeeRPCG7gG5dvjC2uAZxjYtPAbGQLhmrhqoujCx7EaNV -rQiMYp1bPn9N/AvAak3g ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFZysBBAoEZjBkAgEBBB01TDgjIGd+gXPZ4esQnWzz +/y1vzJniUBM5XNyPq6FAAz4ABAHVs5gYpbJzqyO8Lk3nkTwhu4BuXb4wtrgGcY2L +TwGxkC4Zq4aqLowsexGjVa0IjGKdWz5/TfwLwGpN4A== +-----END PRIVATE KEY----- PublicKey=ALICE_wap-wsg-idm-ecid-wtls10_PUB -----BEGIN PUBLIC KEY----- @@ -6056,11 +6094,11 @@ uAZxjYtPAbGQLhmrhqoujCx7EaNVrQiMYp1bPn9N/AvAak3g -----END PUBLIC KEY----- PrivateKey=BOB_wap-wsg-idm-ecid-wtls10 ------BEGIN EC PRIVATE KEY----- -MG0CAQEEHSZOrBjAHJG67jNxTVAspwabzB7C5qgqpVKmnzFBoAcGBWcrAQQKoUAD -PgAEAQXjFOtYAgXURpw0ypMbeTDHBqu0AoUWrI6V77AHAOLqCtrtwVV50PWnlHAP -iBlThDOAItLBrvFlsHOC ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFZysBBAoEZjBkAgEBBB0mTqwYwByRuu4zcU1QLKcG +m8wewuaoKqVSpp8xQaFAAz4ABAEF4xTrWAIF1EacNMqTG3kwxwartAKFFqyOle+w +BwDi6gra7cFVedD1p5RwD4gZU4QzgCLSwa7xZbBzgg== +-----END PRIVATE KEY----- PublicKey=BOB_wap-wsg-idm-ecid-wtls10_PUB -----BEGIN PUBLIC KEY----- @@ -6081,11 +6119,11 @@ SharedSecret=0199de137bc263e25b543994d6315b5a3f1e38e7e1f60662cb5cbaab5f98 # TEST CURVE wap-wsg-idm-ecid-wtls11 PrivateKey=ALICE_wap-wsg-idm-ecid-wtls11 ------BEGIN EC PRIVATE KEY----- -MG4CAQEEHgC7qWvMLdEiTeNea1t44Cktk9HQ1Suvp1N/WVIIaqAHBgVnKwEEC6FA -Az4ABAGXvdXZMRnwE7hAL5iIGUnQaZbxYtzdG1LeIiv+hQBoNBAAZUkUPcaCGME9 -8j0pUFxnY/y1RdS/mJ+tZw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFZysBBAsEZzBlAgEBBB4Au6lrzC3RIk3jXmtbeOAp +LZPR0NUrr6dTf1lSCGqhQAM+AAQBl73V2TEZ8BO4QC+YiBlJ0GmW8WLc3RtS3iIr +/oUAaDQQAGVJFD3GghjBPfI9KVBcZ2P8tUXUv5ifrWc= +-----END PRIVATE KEY----- PublicKey=ALICE_wap-wsg-idm-ecid-wtls11_PUB -----BEGIN PUBLIC KEY----- @@ -6094,11 +6132,11 @@ Ut4iK/6FAGg0EABlSRQ9xoIYwT3yPSlQXGdj/LVF1L+Yn61n -----END PUBLIC KEY----- PrivateKey=BOB_wap-wsg-idm-ecid-wtls11 ------BEGIN EC PRIVATE KEY----- -MG4CAQEEHgAYm4a1AjUW8d+nYCx0pvc1VZrCOllC7IzVp6XCzaAHBgVnKwEEC6FA -Az4ABAB1NbfFToiN/9jzflnaFLh86fpeanc7qJuVceucqgE5G7EdVF9eR90vlOp8 -Wm4OCHMLIBLpkxJaGMZXmg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFZysBBAsEZzBlAgEBBB4AGJuGtQI1FvHfp2AsdKb3 +NVWawjpZQuyM1aelws2hQAM+AAQAdTW3xU6Ijf/Y835Z2hS4fOn6Xmp3O6iblXHr +nKoBORuxHVRfXkfdL5TqfFpuDghzCyAS6ZMSWhjGV5o= +-----END PRIVATE KEY----- PublicKey=BOB_wap-wsg-idm-ecid-wtls11_PUB -----BEGIN PUBLIC KEY----- @@ -6119,11 +6157,11 @@ SharedSecret=01ee4b517d8a64be5ee32e10152c7bbcb8cde73a3da8e9643bce173011f7 # TEST CURVE wap-wsg-idm-ecid-wtls12 PrivateKey=ALICE_wap-wsg-idm-ecid-wtls12 ------BEGIN EC PRIVATE KEY----- -MGgCAQEEHICdS9BmFmvWWBNGLFIwjHQoe5Xi3xxtcJbjXmygBwYFZysBBAyhPAM6 -AATcbzAiX1InSYCa4gxZsmkWN/3A7yAo27qcCnJ7f1iGld5hEv+ebsboeaKIDk7W -K51YLeENsEfRxw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFZysBBAwEYTBfAgEBBByAnUvQZhZr1lgTRixSMIx0 +KHuV4t8cbXCW415soTwDOgAE3G8wIl9SJ0mAmuIMWbJpFjf9wO8gKNu6nApye39Y +hpXeYRL/nm7G6HmiiA5O1iudWC3hDbBH0cc= +-----END PRIVATE KEY----- PublicKey=ALICE_wap-wsg-idm-ecid-wtls12_PUB -----BEGIN PUBLIC KEY----- @@ -6132,11 +6170,11 @@ nApye39YhpXeYRL/nm7G6HmiiA5O1iudWC3hDbBH0cc= -----END PUBLIC KEY----- PrivateKey=BOB_wap-wsg-idm-ecid-wtls12 ------BEGIN EC PRIVATE KEY----- -MGgCAQEEHNnue3gKs+uTabmJHri+mSP3kkc6bNZ/hWFFmp2gBwYFZysBBAyhPAM6 -AAS6TPjQjiBalSZcIz48uZYZ3Qg7Rcg9Br0pfNe+Fst0kfTIWQn4KVJug4LbqC0x -MgKI+ESBiN4oRA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFZysBBAwEYTBfAgEBBBzZ7nt4CrPrk2m5iR64vpkj +95JHOmzWf4VhRZqdoTwDOgAEukz40I4gWpUmXCM+PLmWGd0IO0XIPQa9KXzXvhbL +dJH0yFkJ+ClSboOC26gtMTICiPhEgYjeKEQ= +-----END PRIVATE KEY----- PublicKey=BOB_wap-wsg-idm-ecid-wtls12_PUB -----BEGIN PUBLIC KEY----- @@ -6157,10 +6195,11 @@ SharedSecret=c75a8283a73312de82c8f99d41a9173a43b8f921e8161dd140131b36 # TEST CURVE brainpoolP160r1 PrivateKey=ALICE_brainpoolP160r1 ------BEGIN EC PRIVATE KEY----- -MFQCAQEEFGU0GLeiDrGVFIK9+lmBik49dHq0oAsGCSskAwMCCAEBAaEsAyoABCQx -/ve3cKi/Zx17M9JS31afTJ2GmT37YfBnXdi59TJ9y8+KN0n/MU4= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGQCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEBBEkwRwIBAQQUZTQYt6IOsZUUgr36 +WYGKTj10erShLAMqAAQkMf73t3Cov2cdezPSUt9Wn0ydhpk9+2HwZ13YufUyfcvP +ijdJ/zFO +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP160r1_PUB -----BEGIN PUBLIC KEY----- @@ -6169,10 +6208,11 @@ mT37YfBnXdi59TJ9y8+KN0n/MU4= -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP160r1 ------BEGIN EC PRIVATE KEY----- -MFQCAQEEFG/7pSERuMqDjooVgwFeJe/CNhi1oAsGCSskAwMCCAEBAaEsAyoABE+M -Qx609ZLgWWAUIe9V8rWdMr9MuxhJwet6B5kBmqfyBoW+CrhsTy8= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGQCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEBBEkwRwIBAQQUb/ulIRG4yoOOihWD +AV4l78I2GLWhLAMqAARPjEMetPWS4FlgFCHvVfK1nTK/TLsYScHregeZAZqn8gaF +vgq4bE8v +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP160r1_PUB -----BEGIN PUBLIC KEY----- @@ -6193,10 +6233,11 @@ SharedSecret=e4fe5ae99a60d17b597f5705a719cea6709c63b9 # TEST CURVE brainpoolP160t1 PrivateKey=ALICE_brainpoolP160t1 ------BEGIN EC PRIVATE KEY----- -MFQCAQEEFFlgMlJzL5kMninhxGyI8q1tCc1aoAsGCSskAwMCCAEBAqEsAyoABD+H -VVI8q+fZxM+Z8yrQVnebHKmMIha0Ixq/sYf0VvL6QKtYoDSUVXA= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGQCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQECBEkwRwIBAQQUWWAyUnMvmQyeKeHE +bIjyrW0JzVqhLAMqAAQ/h1VSPKvn2cTPmfMq0FZ3mxypjCIWtCMav7GH9Fby+kCr +WKA0lFVw +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP160t1_PUB -----BEGIN PUBLIC KEY----- @@ -6205,10 +6246,11 @@ Iha0Ixq/sYf0VvL6QKtYoDSUVXA= -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP160t1 ------BEGIN EC PRIVATE KEY----- -MFQCAQEEFAxaVMfEme9fF9HML/qEGk10itM8oAsGCSskAwMCCAEBAqEsAyoABAiA -NiG7L1yPTggUTQt+iuAk+32uByO47zVXpZH4Tcs0RMmtizLVf2Q= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGQCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQECBEkwRwIBAQQUDFpUx8SZ718X0cwv ++oQaTXSK0zyhLAMqAAQIgDYhuy9cj04IFE0LforgJPt9rgcjuO81V6WR+E3LNETJ +rYsy1X9k +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP160t1_PUB -----BEGIN PUBLIC KEY----- @@ -6229,11 +6271,11 @@ SharedSecret=199a218458b71a4e13f05a599fc17bc76f30ea2f # TEST CURVE brainpoolP192r1 PrivateKey=ALICE_brainpoolP192r1 ------BEGIN EC PRIVATE KEY----- -MGACAQEEGBoiKWVUe9Qt9W/QBJS4hIhMs3YUbL025KALBgkrJAMDAggBAQOhNAMy -AAQcCi9Vkl+bnYpaomv0grPvDtNr7sdQ3kGPL6pHzuQ6jec/7jf1Ms6ziIOEi/M/ -yPU= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHACAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEDBFUwUwIBAQQYGiIpZVR71C31b9AE +lLiEiEyzdhRsvTbkoTQDMgAEHAovVZJfm52KWqJr9IKz7w7Ta+7HUN5Bjy+qR87k +Oo3nP+439TLOs4iDhIvzP8j1 +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP192r1_PUB -----BEGIN PUBLIC KEY----- @@ -6242,11 +6284,11 @@ x1DeQY8vqkfO5DqN5z/uN/UyzrOIg4SL8z/I9Q== -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP192r1 ------BEGIN EC PRIVATE KEY----- -MGACAQEEGJLrfB5Y8Ms8TgKygGs4pW6APMmOqMuLL6ALBgkrJAMDAggBAQOhNAMy -AAS//c2Gt1UQD48wUKb6a5eGsLTDFflQe8JR384DJ1pzYmXtdXDaBLiF9eRN5Psx -Ay4= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHACAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEDBFUwUwIBAQQYkut8HljwyzxOArKA +azilboA8yY6oy4svoTQDMgAEv/3NhrdVEA+PMFCm+muXhrC0wxX5UHvCUd/OAyda +c2Jl7XVw2gS4hfXkTeT7MQMu +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP192r1_PUB -----BEGIN PUBLIC KEY----- @@ -6267,11 +6309,11 @@ SharedSecret=7ce122b49afdfd1adde6cdfaa13dc7180d6d4e70322c8773 # TEST CURVE brainpoolP192t1 PrivateKey=ALICE_brainpoolP192t1 ------BEGIN EC PRIVATE KEY----- -MGACAQEEGAldTbmMOw8DmsKoGJAC3xaRMxRNq416mKALBgkrJAMDAggBAQShNAMy -AASYGYnbbT9klV3F9KAcVPPcU4LY8eqXYi1sbQtez+/uf+qRYZbP0HtHYUGoVosG -TQs= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHACAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEEBFUwUwIBAQQYCV1NuYw7DwOawqgY +kALfFpEzFE2rjXqYoTQDMgAEmBmJ220/ZJVdxfSgHFTz3FOC2PHql2ItbG0LXs/v +7n/qkWGWz9B7R2FBqFaLBk0L +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP192t1_PUB -----BEGIN PUBLIC KEY----- @@ -6280,11 +6322,11 @@ MEowFAYHKoZIzj0CAQYJKyQDAwIIAQEEAzIABJgZidttP2SVXcX0oBxU89xTgtjx -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP192t1 ------BEGIN EC PRIVATE KEY----- -MGACAQEEGJmT9r5mKXyb0p6hJeCtGI9IjAq+HbPW26ALBgkrJAMDAggBAQShNAMy -AARxK4tIQPazhIi4R2iZlt0MxKY2umd7MlG/9b5sJCnhtydABvbS2njshLD/JehB -IDQ= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHACAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEEBFUwUwIBAQQYmZP2vmYpfJvSnqEl +4K0Yj0iMCr4ds9bboTQDMgAEcSuLSED2s4SIuEdomZbdDMSmNrpnezJRv/W+bCQp +4bcnQAb20tp47ISw/yXoQSA0 +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP192t1_PUB -----BEGIN PUBLIC KEY----- @@ -6305,11 +6347,11 @@ SharedSecret=1a5444c2600d9d21d6a450d158fd25272ade262ab519790b # TEST CURVE brainpoolP224r1 PrivateKey=ALICE_brainpoolP224r1 ------BEGIN EC PRIVATE KEY----- -MGwCAQEEHIfdRZjs/bSfVn3csJKzjOlF4p07mAcY1FrVNBygCwYJKyQDAwIIAQEF -oTwDOgAEirRPkAknN0OX3BtirLETEx9Ns0O3pb+i6d1lNLqpdi8x6An6cFxd4KL4 -UEjSm7qUe/y0XVmNYtI= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHwCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEFBGEwXwIBAQQch91FmOz9tJ9Wfdyw +krOM6UXinTuYBxjUWtU0HKE8AzoABIq0T5AJJzdDl9wbYqyxExMfTbNDt6W/ound +ZTS6qXYvMegJ+nBcXeCi+FBI0pu6lHv8tF1ZjWLS +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP224r1_PUB -----BEGIN PUBLIC KEY----- @@ -6318,11 +6360,11 @@ t6W/oundZTS6qXYvMegJ+nBcXeCi+FBI0pu6lHv8tF1ZjWLS -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP224r1 ------BEGIN EC PRIVATE KEY----- -MGwCAQEEHL2m5CVp60eC7hlMXyzvA6gwXC+Hosf2tKkVsZugCwYJKyQDAwIIAQEF -oTwDOgAEzqqAEj1uZnDJgTRAUEl/k2ld7amGBw5sqsbhRGN2w5GXhQnCWrt4vAg0 -ks/10+XRCVvQW/+A1Wg= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHwCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEFBGEwXwIBAQQcvabkJWnrR4LuGUxf +LO8DqDBcL4eix/a0qRWxm6E8AzoABM6qgBI9bmZwyYE0QFBJf5NpXe2phgcObKrG +4URjdsORl4UJwlq7eLwINJLP9dPl0Qlb0Fv/gNVo +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP224r1_PUB -----BEGIN PUBLIC KEY----- @@ -6343,11 +6385,11 @@ SharedSecret=419e446a66968fcc372126cff4d637505c848c3a9b82503f2d441215 # TEST CURVE brainpoolP224t1 PrivateKey=ALICE_brainpoolP224t1 ------BEGIN EC PRIVATE KEY----- -MGwCAQEEHEsFgnKmLojcsUdIGFQjAUNe8pH2sRIDDMgcmaKgCwYJKyQDAwIIAQEG -oTwDOgAEmJWHAhkCrL44qPxF7COx1c88I4N+b7hEZXzZtgtbxKqIN4QMH5G8mKtj -DP9rlGL4QvleT1BWRAU= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHwCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEGBGEwXwIBAQQcSwWCcqYuiNyxR0gY +VCMBQ17ykfaxEgMMyByZoqE8AzoABJiVhwIZAqy+OKj8RewjsdXPPCODfm+4RGV8 +2bYLW8SqiDeEDB+RvJirYwz/a5Ri+EL5Xk9QVkQF +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP224t1_PUB -----BEGIN PUBLIC KEY----- @@ -6356,11 +6398,11 @@ fm+4RGV82bYLW8SqiDeEDB+RvJirYwz/a5Ri+EL5Xk9QVkQF -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP224t1 ------BEGIN EC PRIVATE KEY----- -MGwCAQEEHCyuUfonb86gtWtvBnvZuhIebqfNmrVUk0Vnl8CgCwYJKyQDAwIIAQEG -oTwDOgAEGDpqveWRhK/QBw4znjZJs+ECrGfL9qdL4OgQtWIzSuh/GVy+TLBmIFjR -PjTFS9cEgsOxj/SF7bY= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHwCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEGBGEwXwIBAQQcLK5R+idvzqC1a28G +e9m6Eh5up82atVSTRWeXwKE8AzoABBg6ar3lkYSv0AcOM542SbPhAqxny/anS+Do +ELViM0rofxlcvkywZiBY0T40xUvXBILDsY/0he22 +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP224t1_PUB -----BEGIN PUBLIC KEY----- @@ -6381,11 +6423,11 @@ SharedSecret=8f83465fb6353912a51c2809ea30b19b73b3e391c0422650e0f20b58 # TEST CURVE brainpoolP256r1 PrivateKey=ALICE_brainpoolP256r1 ------BEGIN EC PRIVATE KEY----- -MHgCAQEEIBMmEFKb8UQb4oCuk226EiMpk/omRsx/rrRNuh9WGB/zoAsGCSskAwMC -CAEBB6FEA0IABHiGHSaSKZMZ3imy/aj/70idv3e3BwrNmV4IHEYn+yijeeSKIre0 -NbFRHhsxAxW8aUViugPioLvLBZBPix6+QRk= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGIAgEAMBQGByqGSM49AgEGCSskAwMCCAEBBwRtMGsCAQEEIBMmEFKb8UQb4oCu +k226EiMpk/omRsx/rrRNuh9WGB/zoUQDQgAEeIYdJpIpkxneKbL9qP/vSJ2/d7cH +Cs2ZXggcRif7KKN55Ioit7Q1sVEeGzEDFbxpRWK6A+Kgu8sFkE+LHr5BGQ== +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP256r1_PUB -----BEGIN PUBLIC KEY----- @@ -6394,11 +6436,11 @@ BwrNmV4IHEYn+yijeeSKIre0NbFRHhsxAxW8aUViugPioLvLBZBPix6+QRk= -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP256r1 ------BEGIN EC PRIVATE KEY----- -MHgCAQEEIKXsf2pxFfTQiwbW2SKwZq50UOGhJYJZYO/xY33RHuQaoAsGCSskAwMC -CAEBB6FEA0IABAvxQjYcsWeFXB2PMwXoRW4NzOeAFMOosSevYCNvsaMgFwZ+XfqX -/LQBtA9E1KrcUbcAYD1pLeqWOGGAUDGPjTg= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGIAgEAMBQGByqGSM49AgEGCSskAwMCCAEBBwRtMGsCAQEEIKXsf2pxFfTQiwbW +2SKwZq50UOGhJYJZYO/xY33RHuQaoUQDQgAEC/FCNhyxZ4VcHY8zBehFbg3M54AU +w6ixJ69gI2+xoyAXBn5d+pf8tAG0D0TUqtxRtwBgPWkt6pY4YYBQMY+NOA== +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP256r1_PUB -----BEGIN PUBLIC KEY----- @@ -6419,11 +6461,11 @@ SharedSecret=78ed4b7bb4ed808813f8c27132fe04f5d805365549b754994d83b002416b6ba0 # TEST CURVE brainpoolP256t1 PrivateKey=ALICE_brainpoolP256t1 ------BEGIN EC PRIVATE KEY----- -MHgCAQEEIC4yFvVLhvRyF9wuyYJbncxLagsMCD+Sxt2vAJiKFpKdoAsGCSskAwMC -CAEBCKFEA0IABIhsZfBNMo94BOIjshQ1XtLVGEvXzXDc5MRMdgomcJtPY20jUBdq -SgKApi2UGvFQc/lGanXl2cvUnPFKSVNxYIY= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGIAgEAMBQGByqGSM49AgEGCSskAwMCCAEBCARtMGsCAQEEIC4yFvVLhvRyF9wu +yYJbncxLagsMCD+Sxt2vAJiKFpKdoUQDQgAEiGxl8E0yj3gE4iOyFDVe0tUYS9fN +cNzkxEx2CiZwm09jbSNQF2pKAoCmLZQa8VBz+UZqdeXZy9Sc8UpJU3Fghg== +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP256t1_PUB -----BEGIN PUBLIC KEY----- @@ -6432,11 +6474,11 @@ zXDc5MRMdgomcJtPY20jUBdqSgKApi2UGvFQc/lGanXl2cvUnPFKSVNxYIY= -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP256t1 ------BEGIN EC PRIVATE KEY----- -MHgCAQEEIIfXus/y+3RdwUZ00db3boxPCzzRcI3CgIC8ggdGDPqPoAsGCSskAwMC -CAEBCKFEA0IABHZWdsjogbJkRD2sPE7KxjZkyy+qtZVc/PjkO/NF8X6PVSBXkdEG -5PAoKl9JVreYWxG28xGxeiNp2QiZ3UPVSKA= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGIAgEAMBQGByqGSM49AgEGCSskAwMCCAEBCARtMGsCAQEEIIfXus/y+3RdwUZ0 +0db3boxPCzzRcI3CgIC8ggdGDPqPoUQDQgAEdlZ2yOiBsmREPaw8TsrGNmTLL6q1 +lVz8+OQ780Xxfo9VIFeR0Qbk8CgqX0lWt5hbEbbzEbF6I2nZCJndQ9VIoA== +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP256t1_PUB -----BEGIN PUBLIC KEY----- @@ -6457,12 +6499,12 @@ SharedSecret=287a8f19e6f06476b222805eb11907c536fa6ea02b8877ea6d5323f9fabccdd8 # TEST CURVE brainpoolP320r1 PrivateKey=ALICE_brainpoolP320r1 ------BEGIN EC PRIVATE KEY----- -MIGQAgEBBChEG+GykvgdkDphx+i7OI1YW4TV7VFw3r3GWwnw4ZkQyhtXb2me1CVJ -oAsGCSskAwMCCAEBCaFUA1IABFDmVKAu6UDU1doe67Fzp3WeLAKNcaLjX13W0X70 -4bqNvSU7q747RCCbd46miRYsiqYejnsX0A/A5bOiI1LJixCGcAgm1pnGajKeok/e -csl+ ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGiAgEAMBQGByqGSM49AgEGCSskAwMCCAEBCQSBhjCBgwIBAQQoRBvhspL4HZA6 +YcfouziNWFuE1e1RcN69xlsJ8OGZEMobV29pntQlSaFUA1IABFDmVKAu6UDU1doe +67Fzp3WeLAKNcaLjX13W0X704bqNvSU7q747RCCbd46miRYsiqYejnsX0A/A5bOi +I1LJixCGcAgm1pnGajKeok/ecsl+ +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP320r1_PUB -----BEGIN PUBLIC KEY----- @@ -6472,12 +6514,12 @@ caLjX13W0X704bqNvSU7q747RCCbd46miRYsiqYejnsX0A/A5bOiI1LJixCGcAgm -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP320r1 ------BEGIN EC PRIVATE KEY----- -MIGQAgEBBCiL2CGoxCnxl3HFVe44wLrq1Ui9ND0Rfq1pYsPLzZ4FEC3swi1vktoy -oAsGCSskAwMCCAEBCaFUA1IABHFexsmyGSMPdLCma5vzaFlbk/gAkq6yfpE+BMok -I+7GXx4dJz9+sKOi8h++T4SnocW03M7I5zOQVfK+82Kkq/vXCzEdkVRUPU4HVls7 -nil0 ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGiAgEAMBQGByqGSM49AgEGCSskAwMCCAEBCQSBhjCBgwIBAQQoi9ghqMQp8Zdx +xVXuOMC66tVIvTQ9EX6taWLDy82eBRAt7MItb5LaMqFUA1IABHFexsmyGSMPdLCm +a5vzaFlbk/gAkq6yfpE+BMokI+7GXx4dJz9+sKOi8h++T4SnocW03M7I5zOQVfK+ +82Kkq/vXCzEdkVRUPU4HVls7nil0 +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP320r1_PUB -----BEGIN PUBLIC KEY----- @@ -6499,12 +6541,12 @@ SharedSecret=13a56c63c2dafe3e053534d5bf32c7eb4a0733bf356510725d378c5cbcf69742407 # TEST CURVE brainpoolP320t1 PrivateKey=ALICE_brainpoolP320t1 ------BEGIN EC PRIVATE KEY----- -MIGQAgEBBCjGX454gtrCjrkzhhu0tIBFdgmwUmLgXxxQXq9+jWzBGgIvqwCdXRBJ -oAsGCSskAwMCCAEBCqFUA1IABFN48RBqcd0PyU7NTRjaJsUaYXBlectX7JwhB/X/ -bbuNUK1YW9tZJZSZ/bBUfVfEgUhC+0qrvomc3xhyYBJIQeGWODwC1rHjO2H7GGvx -1HmF ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGiAgEAMBQGByqGSM49AgEGCSskAwMCCAEBCgSBhjCBgwIBAQQoxl+OeILawo65 +M4YbtLSARXYJsFJi4F8cUF6vfo1swRoCL6sAnV0QSaFUA1IABFN48RBqcd0PyU7N +TRjaJsUaYXBlectX7JwhB/X/bbuNUK1YW9tZJZSZ/bBUfVfEgUhC+0qrvomc3xhy +YBJIQeGWODwC1rHjO2H7GGvx1HmF +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP320t1_PUB -----BEGIN PUBLIC KEY----- @@ -6514,12 +6556,12 @@ ectX7JwhB/X/bbuNUK1YW9tZJZSZ/bBUfVfEgUhC+0qrvomc3xhyYBJIQeGWODwC -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP320t1 ------BEGIN EC PRIVATE KEY----- -MIGQAgEBBCgyVOIfYIzdcZpVc85Dm12b4Ymac/TeBs0rg863nJCmdbwehodz5JLn -oAsGCSskAwMCCAEBCqFUA1IABLXO5ngGf17dU+aeQetDyXqlTTxtTrav1/NGb+i9 -BQUAsbIMQkdY0zWWbhksoMn56F2DBTSFwBlb1hBtp9fNIGUbgKqOlvtBpQHIoKXY -Eq3l ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGiAgEAMBQGByqGSM49AgEGCSskAwMCCAEBCgSBhjCBgwIBAQQoMlTiH2CM3XGa +VXPOQ5tdm+GJmnP03gbNK4POt5yQpnW8HoaHc+SS56FUA1IABLXO5ngGf17dU+ae +QetDyXqlTTxtTrav1/NGb+i9BQUAsbIMQkdY0zWWbhksoMn56F2DBTSFwBlb1hBt +p9fNIGUbgKqOlvtBpQHIoKXYEq3l +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP320t1_PUB -----BEGIN PUBLIC KEY----- @@ -6541,12 +6583,12 @@ SharedSecret=170d1f5fc4248700be75499eac813fac642df1311ab005e10796cc2ef43b82f8d78 # TEST CURVE brainpoolP384r1 PrivateKey=ALICE_brainpoolP384r1 ------BEGIN EC PRIVATE KEY----- -MIGoAgEBBDB5NssOnd89sgvzDsj5pDNTx51VdeIW23xSXHsdK4C8e7+5p550IoD6 -xcpd7ff9qgOgCwYJKyQDAwIIAQELoWQDYgAEgQEp8Mrclp7hd1kkTnaXCEzAyhlM -UtBIXQGI8ALS3FaMoL4mjIlhAU+vNdIcI9NGBx7QFRUzFIy3IAyF+VPq8fM7Yyjk -0x4P8UB1N+d2odKvKFqFBQBQmd6S5h+0ijis ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIG6AgEAMBQGByqGSM49AgEGCSskAwMCCAEBCwSBnjCBmwIBAQQweTbLDp3fPbIL +8w7I+aQzU8edVXXiFtt8Ulx7HSuAvHu/uaeedCKA+sXKXe33/aoDoWQDYgAEgQEp +8Mrclp7hd1kkTnaXCEzAyhlMUtBIXQGI8ALS3FaMoL4mjIlhAU+vNdIcI9NGBx7Q +FRUzFIy3IAyF+VPq8fM7Yyjk0x4P8UB1N+d2odKvKFqFBQBQmd6S5h+0ijis +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP384r1_PUB -----BEGIN PUBLIC KEY----- @@ -6556,12 +6598,12 @@ TFLQSF0BiPAC0txWjKC+JoyJYQFPrzXSHCPTRgce0BUVMxSMtyAMhflT6vHzO2Mo -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP384r1 ------BEGIN EC PRIVATE KEY----- -MIGoAgEBBDAXoRGwEo8iza9gc2eTJvXl4d9MhDnyqwWUX3SrO050bOHK2JZlc+86 -HiSHO6MV91mgCwYJKyQDAwIIAQELoWQDYgAEDxy4ddTAt+nTw0F16nhHhmmNbns3 -bX3rKEcY+686v58dAvx4VWOC7vHsiwek9ZYbZSkmKy6H78ndkBrmU3BBR7hFGyU7 -CWSDFoH5Oybk0+JzkNa0qAm8+MpAIcFqb+IY ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIG6AgEAMBQGByqGSM49AgEGCSskAwMCCAEBCwSBnjCBmwIBAQQwF6ERsBKPIs2v +YHNnkyb15eHfTIQ58qsFlF90qztOdGzhytiWZXPvOh4khzujFfdZoWQDYgAEDxy4 +ddTAt+nTw0F16nhHhmmNbns3bX3rKEcY+686v58dAvx4VWOC7vHsiwek9ZYbZSkm +Ky6H78ndkBrmU3BBR7hFGyU7CWSDFoH5Oybk0+JzkNa0qAm8+MpAIcFqb+IY +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP384r1_PUB -----BEGIN PUBLIC KEY----- @@ -6583,12 +6625,12 @@ SharedSecret=0b3ad57e83759760d94904d9ea266b538120c6db2b5046217aa1ecd924828b949d3 # TEST CURVE brainpoolP384t1 PrivateKey=ALICE_brainpoolP384t1 ------BEGIN EC PRIVATE KEY----- -MIGoAgEBBDBhv/Ff07ybES61s5DBD+kHzraR6r95bGPwZbjWbY6ugS04lkvVKwr/ -xnAAvcF02jKgCwYJKyQDAwIIAQEMoWQDYgAENpcXDPQYBhU8zi4G6mQtjdgVmpdn -4Iuwb0/VVmopmFAL0ISDB0qk9Hn2Lt9rmE8NathqkKKlVHd/Y5FRqf06PZj8jaYH -Axvz5E1J8ykrbT7rUpbj9Df2t+eop9YBbSxc ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIG6AgEAMBQGByqGSM49AgEGCSskAwMCCAEBDASBnjCBmwIBAQQwYb/xX9O8mxEu +tbOQwQ/pB862keq/eWxj8GW41m2OroEtOJZL1SsK/8ZwAL3BdNoyoWQDYgAENpcX +DPQYBhU8zi4G6mQtjdgVmpdn4Iuwb0/VVmopmFAL0ISDB0qk9Hn2Lt9rmE8Nathq +kKKlVHd/Y5FRqf06PZj8jaYHAxvz5E1J8ykrbT7rUpbj9Df2t+eop9YBbSxc +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP384t1_PUB -----BEGIN PUBLIC KEY----- @@ -6598,12 +6640,12 @@ BwMb8+RNSfMpK20+61KW4/Q39rfnqKfWAW0sXA== -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP384t1 ------BEGIN EC PRIVATE KEY----- -MIGoAgEBBDBsUc4UweUxdFh3b10XofMoyHT13Ds4DLER5E5Oo6MWwj7CFqq0vgZY -fk/RSAU8MAegCwYJKyQDAwIIAQEMoWQDYgAER24uXKoWWnFFusbCPtDzz7n9zDIW -zFqMeP6YE3MOseyfRFcKIVz/omWBVwpUbd3ca6Ord/Mh8hThIV4tZbPUwlyzzEW2 -NMJtd2t5JKdja0aT7fbp7NS9IJzNIRDl7r8z ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIG6AgEAMBQGByqGSM49AgEGCSskAwMCCAEBDASBnjCBmwIBAQQwbFHOFMHlMXRY +d29dF6HzKMh09dw7OAyxEeROTqOjFsI+whaqtL4GWH5P0UgFPDAHoWQDYgAER24u +XKoWWnFFusbCPtDzz7n9zDIWzFqMeP6YE3MOseyfRFcKIVz/omWBVwpUbd3ca6Or +d/Mh8hThIV4tZbPUwlyzzEW2NMJtd2t5JKdja0aT7fbp7NS9IJzNIRDl7r8z +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP384t1_PUB -----BEGIN PUBLIC KEY----- @@ -6625,13 +6667,13 @@ SharedSecret=0fde85a61157cdd898196f291802ebd57bb2e39d98c4e6ad9bb3e2e0375e1df9bf7 # TEST CURVE brainpoolP512r1 PrivateKey=ALICE_brainpoolP512r1 ------BEGIN EC PRIVATE KEY----- -MIHaAgEBBECMxUrk8DnFiTzmA2zbxijR6tBKSCaKV0vtbAxV5PrpqWCghKV4UpP5 -9CQNGV9Io9cJmMrQ2cpfkr2uQybzD3LAoAsGCSskAwMCCAEBDaGBhQOBggAEHlj4 -gsnR2wN53k/hSIcAtbgHwbld5uS1/gR8RtoyaEDit4Ti59/I9kRkZFEHJemhpTP2 -xY03j3M5rHP7vzk1NVKgYHJQ9MvMtPd6G+Fj5D0YN1nnyqP3IJ8PyXmOdXBMoMHu -+H50QbYZpcUFOqJhKp1T0+58xTXJdP8axl1IjtI= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIHsAgEAMBQGByqGSM49AgEGCSskAwMCCAEBDQSB0DCBzQIBAQRAjMVK5PA5xYk8 +5gNs28Yo0erQSkgmildL7WwMVeT66algoISleFKT+fQkDRlfSKPXCZjK0NnKX5K9 +rkMm8w9ywKGBhQOBggAEHlj4gsnR2wN53k/hSIcAtbgHwbld5uS1/gR8RtoyaEDi +t4Ti59/I9kRkZFEHJemhpTP2xY03j3M5rHP7vzk1NVKgYHJQ9MvMtPd6G+Fj5D0Y +N1nnyqP3IJ8PyXmOdXBMoMHu+H50QbYZpcUFOqJhKp1T0+58xTXJdP8axl1IjtI= +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP512r1_PUB -----BEGIN PUBLIC KEY----- @@ -6642,13 +6684,13 @@ YHJQ9MvMtPd6G+Fj5D0YN1nnyqP3IJ8PyXmOdXBMoMHu+H50QbYZpcUFOqJhKp1T -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP512r1 ------BEGIN EC PRIVATE KEY----- -MIHaAgEBBEBkDXT6Tj4SyZ6+ORP0t1JfTtqZHBetPsIGcSyRmkeRkShhVBroW4Ts -VqLSSMvzqVQILjGhOMVsfe0susPS/u/CoAsGCSskAwMCCAEBDaGBhQOBggAEo3NA -MIGp0rJxReih4nbEiTegA4pSEk84CUHHBLGuLsekVo1vmj1LTnu4dVuILLf+MSZh -9jjNmsWuEGSHIaZx6hniFHGdaRQ3GFODGvkE6z2d2kwv3Fmsq9+gu4By2OhSCfP+ -hpFhobXAYwWXzgaBFH+TqlF31Dyr2fuPnkL7tK4= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIHsAgEAMBQGByqGSM49AgEGCSskAwMCCAEBDQSB0DCBzQIBAQRAZA10+k4+Esme +vjkT9LdSX07amRwXrT7CBnEskZpHkZEoYVQa6FuE7Fai0kjL86lUCC4xoTjFbH3t +LLrD0v7vwqGBhQOBggAEo3NAMIGp0rJxReih4nbEiTegA4pSEk84CUHHBLGuLsek +Vo1vmj1LTnu4dVuILLf+MSZh9jjNmsWuEGSHIaZx6hniFHGdaRQ3GFODGvkE6z2d +2kwv3Fmsq9+gu4By2OhSCfP+hpFhobXAYwWXzgaBFH+TqlF31Dyr2fuPnkL7tK4= +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP512r1_PUB -----BEGIN PUBLIC KEY----- @@ -6671,13 +6713,13 @@ SharedSecret=80751feb09215a9da32f9f8c97133f53f0286a89969bd00d7f365da7f7736f45e63 # TEST CURVE brainpoolP512t1 PrivateKey=ALICE_brainpoolP512t1 ------BEGIN EC PRIVATE KEY----- -MIHaAgEBBECbwO3WdaC7ErmKqF/qaKD9jty2YyBtEJZIkwx3eXDn+Izia0/1pyGF -oRYYiYhZXoVuvKLom/eeK0IFTGmpESlyoAsGCSskAwMCCAEBDqGBhQOBggAEH/z+ -dOHhLfxI0GLpmUjYaSlC2H380nBhe6P4GSrnpya/Yew0IRyDfo0p99vwgOaLh8wJ -IH3Joy4NMtHthg8IAFmoctAoWkQ21E0HjPjwqZbxmvBD0S9opVycFR8XUSaK0EHy -HO7hfuVsdyYzIIjpKViP7uOOtrggsTepWzBQt9I= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIHsAgEAMBQGByqGSM49AgEGCSskAwMCCAEBDgSB0DCBzQIBAQRAm8Dt1nWguxK5 +iqhf6mig/Y7ctmMgbRCWSJMMd3lw5/iM4mtP9achhaEWGImIWV6Fbryi6Jv3nitC +BUxpqREpcqGBhQOBggAEH/z+dOHhLfxI0GLpmUjYaSlC2H380nBhe6P4GSrnpya/ +Yew0IRyDfo0p99vwgOaLh8wJIH3Joy4NMtHthg8IAFmoctAoWkQ21E0HjPjwqZbx +mvBD0S9opVycFR8XUSaK0EHyHO7hfuVsdyYzIIjpKViP7uOOtrggsTepWzBQt9I= +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP512t1_PUB -----BEGIN PUBLIC KEY----- @@ -6688,13 +6730,13 @@ ctAoWkQ21E0HjPjwqZbxmvBD0S9opVycFR8XUSaK0EHyHO7hfuVsdyYzIIjpKViP -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP512t1 ------BEGIN EC PRIVATE KEY----- -MIHaAgEBBEAVK2tYHA61OVj+kF5PadyNMdw3Mqb6hxOIi+vRFQS5fwhN34vnH0f5 -kuTjhPzn/zKpM+WTpxlIdvJMblSQ8ZW9oAsGCSskAwMCCAEBDqGBhQOBggAEE6EY -YwpBA3NBflj/HYwxzbaxuALefTsTr5O0bLqh4J6SxkAwsQnlkU8PCnzEuvdBNxSw -W7276VGfwDO7kFKEdZq3cnT+P41yi/XBVK7xgaL1R2U+vCxWsje6JLixWEdJkJ+6 -TqPKICdriNge1zbjvfhb01zP58E/Xsgh5/deJco= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIHsAgEAMBQGByqGSM49AgEGCSskAwMCCAEBDgSB0DCBzQIBAQRAFStrWBwOtTlY +/pBeT2ncjTHcNzKm+ocTiIvr0RUEuX8ITd+L5x9H+ZLk44T85/8yqTPlk6cZSHby +TG5UkPGVvaGBhQOBggAEE6EYYwpBA3NBflj/HYwxzbaxuALefTsTr5O0bLqh4J6S +xkAwsQnlkU8PCnzEuvdBNxSwW7276VGfwDO7kFKEdZq3cnT+P41yi/XBVK7xgaL1 +R2U+vCxWsje6JLixWEdJkJ+6TqPKICdriNge1zbjvfhb01zP58E/Xsgh5/deJco= +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP512t1_PUB -----BEGIN PUBLIC KEY----- From rsalz at openssl.org Fri Apr 14 12:27:23 2017 From: rsalz at openssl.org (Rich Salz) Date: Fri, 14 Apr 2017 12:27:23 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492172843.125712.23133.nullmailer@dev.openssl.org> The branch master has been updated via 7db0289ea70b9bec94e32350cc8ec9da96ab2776 (commit) from a81c33ef65b4bd2a9c74c22c192c09972db77a52 (commit) - Log ----------------------------------------------------------------- commit 7db0289ea70b9bec94e32350cc8ec9da96ab2776 Author: Nicola Tuveri Date: Thu Apr 13 20:56:19 2017 +0300 Reformat evptests.txt When compiling without EC support the test fails abruptly reading some keys. Some keys merged in commit db04055 start with ------BEGIN EC PRIVATE KEY----- this format is not supported without EC support. This commit reformat those keys with the generic format. After this change the test simply skips the unsupported EC keys when EC is disabled, without parsing errors. Reviewed-by: Richard Levitte Reviewed-by: Andy Polyakov Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3223) ----------------------------------------------------------------------- Summary of changes: test/evptests.txt | 1606 +++++++++++++++++++++++++++-------------------------- 1 file changed, 824 insertions(+), 782 deletions(-) diff --git a/test/evptests.txt b/test/evptests.txt index 9310aa1..cad828f 100644 --- a/test/evptests.txt +++ b/test/evptests.txt @@ -2624,7 +2624,6 @@ Output = 8F49A1B7D6AA2258 # RSA 2048 bit key. PrivateKey = RSA-2048 - -----BEGIN PRIVATE KEY----- MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDNAIHqeyrh6gbV n3xz2f+5SglhXC5Lp8Y2zvCN01M+wxhVJbAVx2m5mnfWclv5w1Mqm25fZifV+4UW @@ -2657,7 +2656,6 @@ fMkTd7GabVourqIZdgvu1Q== # Corresponding public key PublicKey = RSA-2048-PUBLIC - -----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzQCB6nsq4eoG1Z98c9n/ uUoJYVwuS6fGNs7wjdNTPsMYVSWwFcdpuZp31nJb+cNTKptuX2Yn1fuFFgdo092p @@ -2671,7 +2669,6 @@ TwIDAQAB # EC P-256 key PrivateKey=P-256 - -----BEGIN PRIVATE KEY----- MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgiocvtiiTxNH/xbnw +RdYBp+DUuCPoFpJ+NuSbLVyhyWhRANCAAQsFQ9CnOcPIWwlLPXgYs4fY5zV0WXH @@ -2681,7 +2678,6 @@ MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgiocvtiiTxNH/xbnw # EC public key for above PublicKey=P-256-PUBLIC - -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAELBUPQpznDyFsJSz14GLOH2Oc1dFl x/iUJAcsJxl9eLM7kg6VzbZk6ZDc8M/qDZTiqOavnQ5YBW5lMQSSW5/myQ== @@ -2703,7 +2699,6 @@ CrmVlCNy6lFAldO8IPkSyzGPMjSvZI6nIGQ7P3Afm3reuJ0KvnTZ77acRg== # DSA key PrivateKey=DSA-1024 - -----BEGIN PRIVATE KEY----- MIIBSwIBADCCASwGByqGSM44BAEwggEfAoGBAO0SwRpkAeM21qSM5ch4CLEHpFk4 19R5ve1UUr421y3HEUURsrVpxYKvyx8aOBQC/akz95cYxNN3y1JnJJMxPklhdJrJ @@ -2715,7 +2710,6 @@ woS0mp33oQYs43nt29B6UwbtMmbzCOQ9vGGwWVho+JtHyyPWrDuLmkvLtoQPaxYt -----END PRIVATE KEY----- PublicKey=DSA-1024-PUBLIC - -----BEGIN PUBLIC KEY----- MIIBtzCCASwGByqGSM44BAEwggEfAoGBAO0SwRpkAeM21qSM5ch4CLEHpFk419R5 ve1UUr421y3HEUURsrVpxYKvyx8aOBQC/akz95cYxNN3y1JnJJMxPklhdJrJf/WD @@ -5258,10 +5252,10 @@ Output=eaf1a73a1b0c4609537de69cd9228bbcfb9a8ca8c6c3efaf056fe4a7f4634ed00b7c39ec6 # TEST CURVE secp112r1 PrivateKey=ALICE_secp112r1 ------BEGIN EC PRIVATE KEY----- -MD4CAQEEDqyoqnf0BYsKW6zaFrmuoAcGBSuBBAAGoSADHgAEng1OA5HXFACvczp4 -zjpapdbbMDoWexQwoUXBzA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +ME4CAQAwEAYHKoZIzj0CAQYFK4EEAAYENzA1AgEBBA6sqKp39AWLClus2ha5rqEg +Ax4ABJ4NTgOR1xQAr3M6eM46WqXW2zA6FnsUMKFFwcw= +-----END PRIVATE KEY----- PublicKey=ALICE_secp112r1_PUB -----BEGIN PUBLIC KEY----- @@ -5270,10 +5264,10 @@ oUXBzA== -----END PUBLIC KEY----- PrivateKey=BOB_secp112r1 ------BEGIN EC PRIVATE KEY----- -MD4CAQEEDmkhtf6ESrj2YU+NSXj/oAcGBSuBBAAGoSADHgAEGw81kebWlx3DXTiJ -vAjJwJ76vm+h5F9BRlFndw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +ME4CAQAwEAYHKoZIzj0CAQYFK4EEAAYENzA1AgEBBA5pIbX+hEq49mFPjUl4/6Eg +Ax4ABBsPNZHm1pcdw104ibwIycCe+r5voeRfQUZRZ3c= +-----END PRIVATE KEY----- PublicKey=BOB_secp112r1_PUB -----BEGIN PUBLIC KEY----- @@ -5294,10 +5288,10 @@ SharedSecret=a6cefb5aa7a352afe818749eb401 # TEST CURVE secp112r2 PrivateKey=ALICE_secp112r2 ------BEGIN EC PRIVATE KEY----- -MD4CAQEEDiDPNuUp8TpnChRbQVCZoAcGBSuBBAAHoSADHgAEkngvtWjnQ1nlUZni -c2TEU1yMlDAMhBvX/0iQsQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +ME4CAQAwEAYHKoZIzj0CAQYFK4EEAAcENzA1AgEBBA4gzzblKfE6ZwoUW0FQmaEg +Ax4ABJJ4L7Vo50NZ5VGZ4nNkxFNcjJQwDIQb1/9IkLE= +-----END PRIVATE KEY----- PublicKey=ALICE_secp112r2_PUB -----BEGIN PUBLIC KEY----- @@ -5306,10 +5300,10 @@ MDIwEAYHKoZIzj0CAQYFK4EEAAcDHgAEkngvtWjnQ1nlUZnic2TEU1yMlDAMhBvX -----END PUBLIC KEY----- PrivateKey=BOB_secp112r2 ------BEGIN EC PRIVATE KEY----- -MD4CAQEEDgP2gYaP47y+NnPc5k1qoAcGBSuBBAAHoSADHgAE1k6/mBTO9VuAAelO -C7eFSFNC0HwtqZMQh9pFYQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +ME4CAQAwEAYHKoZIzj0CAQYFK4EEAAcENzA1AgEBBA4D9oGGj+O8vjZz3OZNaqEg +Ax4ABNZOv5gUzvVbgAHpTgu3hUhTQtB8LamTEIfaRWE= +-----END PRIVATE KEY----- PublicKey=BOB_secp112r2_PUB -----BEGIN PUBLIC KEY----- @@ -5330,10 +5324,10 @@ SharedSecret=6bed2c55e233e9214d5898c4c12a # TEST CURVE secp128r1 PrivateKey=ALICE_secp128r1 ------BEGIN EC PRIVATE KEY----- -MEQCAQEEEI/Vz6XF9FP4xlZny4YJhiWgBwYFK4EEAByhJAMiAAQfafSJynzuKe/u -RRisQWOlm4cngOoCuEdL5l+nZdc7UA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFQCAQAwEAYHKoZIzj0CAQYFK4EEABwEPTA7AgEBBBCP1c+lxfRT+MZWZ8uGCYYl +oSQDIgAEH2n0icp87inv7kUYrEFjpZuHJ4DqArhHS+Zfp2XXO1A= +-----END PRIVATE KEY----- PublicKey=ALICE_secp128r1_PUB -----BEGIN PUBLIC KEY----- @@ -5342,10 +5336,10 @@ S+Zfp2XXO1A= -----END PUBLIC KEY----- PrivateKey=BOB_secp128r1 ------BEGIN EC PRIVATE KEY----- -MEQCAQEEEIZsR3ceHCvvpdtB6SEisNOgBwYFK4EEAByhJAMiAAQ0qNLQc3H+AQph -A01pv2/zOVb8PjNKO/c3LcSnQZViaw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFQCAQAwEAYHKoZIzj0CAQYFK4EEABwEPTA7AgEBBBCGbEd3Hhwr76XbQekhIrDT +oSQDIgAENKjS0HNx/gEKYQNNab9v8zlW/D4zSjv3Ny3Ep0GVYms= +-----END PRIVATE KEY----- PublicKey=BOB_secp128r1_PUB -----BEGIN PUBLIC KEY----- @@ -5366,10 +5360,10 @@ SharedSecret=91ded46ac404afdbd708fdcc1cac6842 # TEST CURVE secp128r2 PrivateKey=ALICE_secp128r2 ------BEGIN EC PRIVATE KEY----- -MEQCAQEEECBEpKM+xnvosMYgDaK3lIKgBwYFK4EEAB2hJAMiAAQFV2NxSlH5votE -+bpHx8AP/qQHFXQqXf3f1afT6dSl/w== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFQCAQAwEAYHKoZIzj0CAQYFK4EEAB0EPTA7AgEBBBAgRKSjPsZ76LDGIA2it5SC +oSQDIgAEBVdjcUpR+b6LRPm6R8fAD/6kBxV0Kl3939Wn0+nUpf8= +-----END PRIVATE KEY----- PublicKey=ALICE_secp128r2_PUB -----BEGIN PUBLIC KEY----- @@ -5378,10 +5372,10 @@ MDYwEAYHKoZIzj0CAQYFK4EEAB0DIgAEBVdjcUpR+b6LRPm6R8fAD/6kBxV0Kl39 -----END PUBLIC KEY----- PrivateKey=BOB_secp128r2 ------BEGIN EC PRIVATE KEY----- -MEQCAQEEEAKnTSPDkPuhu8OYmnvAO4CgBwYFK4EEAB2hJAMiAAQE7cFtWtzlK+G8 -35+ZZKG7a1YgVBqnnKzlEcwIsuXT3w== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFQCAQAwEAYHKoZIzj0CAQYFK4EEAB0EPTA7AgEBBBACp00jw5D7obvDmJp7wDuA +oSQDIgAEBO3BbVrc5SvhvN+fmWShu2tWIFQap5ys5RHMCLLl098= +-----END PRIVATE KEY----- PublicKey=BOB_secp128r2_PUB -----BEGIN PUBLIC KEY----- @@ -5402,10 +5396,11 @@ SharedSecret=dc32faa978008a694672076b756a1e4b # TEST CURVE secp160k1 PrivateKey=ALICE_secp160k1 ------BEGIN EC PRIVATE KEY----- -MFECAQEEFQC503dg5c3S67QIvZMZl09h41T/vaAHBgUrgQQACaEsAyoABHcO7R0r -by1LJbFhLP8SzZaqvgL5s18nW6IrgncEVLlR1zjyezHF+OM= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGECAQAwEAYHKoZIzj0CAQYFK4EEAAkESjBIAgEBBBUAudN3YOXN0uu0CL2TGZdP +YeNU/72hLAMqAAR3Du0dK28tSyWxYSz/Es2Wqr4C+bNfJ1uiK4J3BFS5Udc48nsx +xfjj +-----END PRIVATE KEY----- PublicKey=ALICE_secp160k1_PUB -----BEGIN PUBLIC KEY----- @@ -5414,10 +5409,11 @@ oiuCdwRUuVHXOPJ7McX44w== -----END PUBLIC KEY----- PrivateKey=BOB_secp160k1 ------BEGIN EC PRIVATE KEY----- -MFECAQEEFQDl82IIVUY8zVoe7BdS+6HGhjbJT6AHBgUrgQQACaEsAyoABAeUzqi2 -Zqm3T/Sxz7ltw+hhPpx/IBG/hVQ46jojZ4EZcsibzXbWuJw= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGECAQAwEAYHKoZIzj0CAQYFK4EEAAkESjBIAgEBBBUA5fNiCFVGPM1aHuwXUvuh +xoY2yU+hLAMqAAQHlM6otmapt0/0sc+5bcPoYT6cfyARv4VUOOo6I2eBGXLIm812 +1ric +-----END PRIVATE KEY----- PublicKey=BOB_secp160k1_PUB -----BEGIN PUBLIC KEY----- @@ -5438,10 +5434,11 @@ SharedSecret=5457d367346cc3e82031784f95ebcd856de0c735 # TEST CURVE secp160r1 PrivateKey=ALICE_secp160r1 ------BEGIN EC PRIVATE KEY----- -MFECAQEEFQDQoO1qIVRZ3w0bSU71Mu7OMtZcl6AHBgUrgQQACKEsAyoABIdA3UMY -Fe13IXf4GN8h9taDjTd1SpdshfNmhy0PI49NBoZVuWZLBcI= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGECAQAwEAYHKoZIzj0CAQYFK4EEAAgESjBIAgEBBBUA0KDtaiFUWd8NG0lO9TLu +zjLWXJehLAMqAASHQN1DGBXtdyF3+BjfIfbWg403dUqXbIXzZoctDyOPTQaGVblm +SwXC +-----END PRIVATE KEY----- PublicKey=ALICE_secp160r1_PUB -----BEGIN PUBLIC KEY----- @@ -5450,10 +5447,11 @@ MD4wEAYHKoZIzj0CAQYFK4EEAAgDKgAEh0DdQxgV7Xchd/gY3yH21oONN3VKl2yF -----END PUBLIC KEY----- PrivateKey=BOB_secp160r1 ------BEGIN EC PRIVATE KEY----- -MFECAQEEFQCwEjC/HpkAGKeGyL5sZqIK962K5aAHBgUrgQQACKEsAyoABAnb5GGk -Z52RRhdSI9n+mUdcUHLpHdfMxQYgqJcUZIGnAXyEZE2pQPI= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGECAQAwEAYHKoZIzj0CAQYFK4EEAAgESjBIAgEBBBUAsBIwvx6ZABinhsi+bGai +CvetiuWhLAMqAAQJ2+RhpGedkUYXUiPZ/plHXFBy6R3XzMUGIKiXFGSBpwF8hGRN +qUDy +-----END PRIVATE KEY----- PublicKey=BOB_secp160r1_PUB -----BEGIN PUBLIC KEY----- @@ -5474,10 +5472,11 @@ SharedSecret=87856536b6a295ea94d3e483d69c6212d5c7afcf # TEST CURVE secp160r2 PrivateKey=ALICE_secp160r2 ------BEGIN EC PRIVATE KEY----- -MFECAQEEFQCGYs4AkY25KhlQI3h/Q6ctnqtFJKAHBgUrgQQAHqEsAyoABA9I2+El -CiEwR+KNer4mWrtr2XOixB8++4jI6DqyHLNRVLjdH7suCvk= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGECAQAwEAYHKoZIzj0CAQYFK4EEAB4ESjBIAgEBBBUAhmLOAJGNuSoZUCN4f0On +LZ6rRSShLAMqAAQPSNvhJQohMEfijXq+Jlq7a9lzosQfPvuIyOg6shyzUVS43R+7 +Lgr5 +-----END PRIVATE KEY----- PublicKey=ALICE_secp160r2_PUB -----BEGIN PUBLIC KEY----- @@ -5486,10 +5485,11 @@ iMjoOrIcs1FUuN0fuy4K+Q== -----END PUBLIC KEY----- PrivateKey=BOB_secp160r2 ------BEGIN EC PRIVATE KEY----- -MFECAQEEFQDXSaPNHYPLQIuab8xMAdNvkIF6c6AHBgUrgQQAHqEsAyoABGrNgBxK -KPMCja/OYy4ry1ryyX9uC64KlHAUP3cAI/rhPOAjet4WGxc= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGECAQAwEAYHKoZIzj0CAQYFK4EEAB4ESjBIAgEBBBUA10mjzR2Dy0CLmm/MTAHT +b5CBenOhLAMqAARqzYAcSijzAo2vzmMuK8ta8sl/bguuCpRwFD93ACP64TzgI3re +FhsX +-----END PRIVATE KEY----- PublicKey=BOB_secp160r2_PUB -----BEGIN PUBLIC KEY----- @@ -5510,10 +5510,11 @@ SharedSecret=5481e282c47cbd37c84873847c4fc2f31fc15a1a # TEST CURVE secp192k1 PrivateKey=ALICE_secp192k1 ------BEGIN EC PRIVATE KEY----- -MFwCAQEEGLMXcp4cyxpX8o5H+i0KZ0tBPaoY2rceFaAHBgUrgQQAH6E0AzIABM/4 -v1IaXcrrCZ6+QvAmeQw0enQjlF9e6VJ8e4dk+ngIauGLp4o1AuSlnY5Bo8gTEA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGwCAQAwEAYHKoZIzj0CAQYFK4EEAB8EVTBTAgEBBBizF3KeHMsaV/KOR/otCmdL +QT2qGNq3HhWhNAMyAATP+L9SGl3K6wmevkLwJnkMNHp0I5RfXulSfHuHZPp4CGrh +i6eKNQLkpZ2OQaPIExA= +-----END PRIVATE KEY----- PublicKey=ALICE_secp192k1_PUB -----BEGIN PUBLIC KEY----- @@ -5522,10 +5523,11 @@ Unx7h2T6eAhq4YunijUC5KWdjkGjyBMQ -----END PUBLIC KEY----- PrivateKey=BOB_secp192k1 ------BEGIN EC PRIVATE KEY----- -MFwCAQEEGHwFc9UZApgLDS/sNjfBlVpzKHJSMhtTKaAHBgUrgQQAH6E0AzIABOAj -uHDYtKPq43fIvme8c46QyI+1qUqv4EawVpzf1Fianriav7DrpsMhY3dWWU7otg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGwCAQAwEAYHKoZIzj0CAQYFK4EEAB8EVTBTAgEBBBh8BXPVGQKYCw0v7DY3wZVa +cyhyUjIbUymhNAMyAATgI7hw2LSj6uN3yL5nvHOOkMiPtalKr+BGsFac39RYmp64 +mr+w66bDIWN3VllO6LY= +-----END PRIVATE KEY----- PublicKey=BOB_secp192k1_PUB -----BEGIN PUBLIC KEY----- @@ -5546,11 +5548,11 @@ SharedSecret=6a4daca0412284172e8fcaafa0d9df76257d899752bf0f23 # TEST CURVE secp224k1 PrivateKey=ALICE_secp224k1 ------BEGIN EC PRIVATE KEY----- -MGkCAQEEHQCFcoYkWo4jg/U8sVHczoyR6lP/YO13bsjUDDPHoAcGBSuBBAAgoTwD -OgAE9U3/VvpUdurtTqlZo6tR6onm9KBYvj27+64PjwPgVF/ugV2LE31VYivGvQ9E -HJ4RiaUfDgw4RAo= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHkCAQAwEAYHKoZIzj0CAQYFK4EEACAEYjBgAgEBBB0AhXKGJFqOI4P1PLFR3M6M +kepT/2Dtd27I1Awzx6E8AzoABPVN/1b6VHbq7U6pWaOrUeqJ5vSgWL49u/uuD48D +4FRf7oFdixN9VWIrxr0PRByeEYmlHw4MOEQK +-----END PRIVATE KEY----- PublicKey=ALICE_secp224k1_PUB -----BEGIN PUBLIC KEY----- @@ -5559,11 +5561,11 @@ ME4wEAYHKoZIzj0CAQYFK4EEACADOgAE9U3/VvpUdurtTqlZo6tR6onm9KBYvj27 -----END PUBLIC KEY----- PrivateKey=BOB_secp224k1 ------BEGIN EC PRIVATE KEY----- -MGkCAQEEHQA6MRdijPxhxaiRJ/hTmBcduMN8gs9096OUTRP8oAcGBSuBBAAgoTwD -OgAEZcBD4Ce1fs6fhwrA/5/grNkZolnCMGreMKPKayv0DdzxUKhFdcGD5U+gqDt8 -OQwiAjyo+asL3lA= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHkCAQAwEAYHKoZIzj0CAQYFK4EEACAEYjBgAgEBBB0AOjEXYoz8YcWokSf4U5gX +HbjDfILPdPejlE0T/KE8AzoABGXAQ+AntX7On4cKwP+f4KzZGaJZwjBq3jCjymsr +9A3c8VCoRXXBg+VPoKg7fDkMIgI8qPmrC95Q +-----END PRIVATE KEY----- PublicKey=BOB_secp224k1_PUB -----BEGIN PUBLIC KEY----- @@ -5584,11 +5586,11 @@ SharedSecret=80b65e65fe29c779213dd31189d371ff57b0b2bf08c6458ed142399a # TEST CURVE secp224r1 PrivateKey=ALICE_secp224r1 ------BEGIN EC PRIVATE KEY----- -MGgCAQEEHEsqRcUldioZSVOyaCOV6yKTCp6Ot6SuRJNt6HKgBwYFK4EEACGhPAM6 -AARRwSHQaDL+sP42P0lCjPMj6rM+2JTtvYPYe10JriF9tU9eeBxEfYHbE3xb51we -gjGvE7ZQVfLjGg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBxLKkXFJXYqGUlTsmgjlesi +kwqejrekrkSTbehyoTwDOgAEUcEh0Ggy/rD+Nj9JQozzI+qzPtiU7b2D2HtdCa4h +fbVPXngcRH2B2xN8W+dcHoIxrxO2UFXy4xo= +-----END PRIVATE KEY----- PublicKey=ALICE_secp224r1_PUB -----BEGIN PUBLIC KEY----- @@ -5597,11 +5599,11 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEUcEh0Ggy/rD+Nj9JQozzI+qzPtiU7b2D -----END PUBLIC KEY----- PrivateKey=BOB_secp224r1 ------BEGIN EC PRIVATE KEY----- -MGgCAQEEHM4cYZRHd9liDcZJpQ3qnGg1C0CU7MzdRyUSEzOgBwYFK4EEACGhPAM6 -AAR3AWSUr9igNFTpsztfa6U0vCrH1NQRMwVQzpVX0MHhhy8DO/qlCBXBgRTshqGZ -IqlfX1yFs+3YjQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBzOHGGUR3fZYg3GSaUN6pxo +NQtAlOzM3UclEhMzoTwDOgAEdwFklK/YoDRU6bM7X2ulNLwqx9TUETMFUM6VV9DB +4YcvAzv6pQgVwYEU7IahmSKpX19chbPt2I0= +-----END PRIVATE KEY----- PublicKey=BOB_secp224r1_PUB -----BEGIN PUBLIC KEY----- @@ -5622,11 +5624,11 @@ SharedSecret=34ea06d16d82f0d1725de47f3639ac0c23db7d7ed68f01488539a2a5 # TEST CURVE secp256k1 PrivateKey=ALICE_secp256k1 ------BEGIN EC PRIVATE KEY----- -MHQCAQEEIBwkc8tCHBMegngOqIDTSkjn7k5R8uHxPyzcZADVEuJPoAcGBSuBBAAK -oUQDQgAEgwZsCpJV+DnG2UiSV/ZsZtVq+0z0y6W8qcSnCkZtFyjcVZa2VPFkApeu -hrV9gw8l/tPl4gt4W2kVnGLYOz+ljg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGEAgEAMBAGByqGSM49AgEGBSuBBAAKBG0wawIBAQQgHCRzy0IcEx6CeA6ogNNK +SOfuTlHy4fE/LNxkANUS4k+hRANCAASDBmwKklX4OcbZSJJX9mxm1Wr7TPTLpbyp +xKcKRm0XKNxVlrZU8WQCl66GtX2DDyX+0+XiC3hbaRWcYtg7P6WO +-----END PRIVATE KEY----- PublicKey=ALICE_secp256k1_PUB -----BEGIN PUBLIC KEY----- @@ -5635,11 +5637,11 @@ qcSnCkZtFyjcVZa2VPFkApeuhrV9gw8l/tPl4gt4W2kVnGLYOz+ljg== -----END PUBLIC KEY----- PrivateKey=BOB_secp256k1 ------BEGIN EC PRIVATE KEY----- -MHQCAQEEIAoQpBb1rTnK1y5l1RqpEdIHZ7csrYxsxCrnubfiC9pYoAcGBSuBBAAK -oUQDQgAEBUKCHJHsvlcod0MCVlFHylzW241nveMmRAFhryNgX6rVqooGReVUm+Wi -F7Uz0ZsIjdHKd9HHe+2BOWfnuWyR1A== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGEAgEAMBAGByqGSM49AgEGBSuBBAAKBG0wawIBAQQgChCkFvWtOcrXLmXVGqkR +0gdntyytjGzEKue5t+IL2lihRANCAAQFQoIckey+Vyh3QwJWUUfKXNbbjWe94yZE +AWGvI2BfqtWqigZF5VSb5aIXtTPRmwiN0cp30cd77YE5Z+e5bJHU +-----END PRIVATE KEY----- PublicKey=BOB_secp256k1_PUB -----BEGIN PUBLIC KEY----- @@ -5660,12 +5662,12 @@ SharedSecret=af43b52790082fd87afb1d14b883c12d12bb9e554080d1f8e527920676e31f3e # TEST CURVE secp384r1 PrivateKey=ALICE_secp384r1 ------BEGIN EC PRIVATE KEY----- -MIGkAgEBBDCxE7Q4m1dsK7M3OtxocgY/ejX9JOKKdAtSnRiU4bnK3eFmALkMN7XI -veQnWLB1PEKgBwYFK4EEACKhZANiAAQaUsvUFr/uISpAmYqYZIme4VassCtb0tNG -U97s3qt4ozcogZ4z+fIzXZ4YXqfGoEa57+uQDgqr+jNOTji7Gxopt6AqZ9EvwuVa -CuunUi0pcx6cc8IuUfrwMwSFovV/7sM= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDCxE7Q4m1dsK7M3Otxo +cgY/ejX9JOKKdAtSnRiU4bnK3eFmALkMN7XIveQnWLB1PEKhZANiAAQaUsvUFr/u +ISpAmYqYZIme4VassCtb0tNGU97s3qt4ozcogZ4z+fIzXZ4YXqfGoEa57+uQDgqr ++jNOTji7Gxopt6AqZ9EvwuVaCuunUi0pcx6cc8IuUfrwMwSFovV/7sM= +-----END PRIVATE KEY----- PublicKey=ALICE_secp384r1_PUB -----BEGIN PUBLIC KEY----- @@ -5675,12 +5677,12 @@ Wgrrp1ItKXMenHPCLlH68DMEhaL1f+7D -----END PUBLIC KEY----- PrivateKey=BOB_secp384r1 ------BEGIN EC PRIVATE KEY----- -MIGkAgEBBDBRiGXRsb5sUq0b3/dgZ+pA9kbrSivBMCUCXVwxno1d/30hI/Yy0Z5P -WwbBgwTFprWgBwYFK4EEACKhZANiAASp1FeUOBJFmzQCNbGiOz8He0kF+KIf24UG -YVO5MC7u5rV9hpoYsbcgmwxALskPN18os2ygK1Pnf/h+WALIsG2RknSTbiyvBYko -IhJV9cflvEDpMeaWSLF7qJ5YjEIf9PM= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDBRiGXRsb5sUq0b3/dg +Z+pA9kbrSivBMCUCXVwxno1d/30hI/Yy0Z5PWwbBgwTFprWhZANiAASp1FeUOBJF +mzQCNbGiOz8He0kF+KIf24UGYVO5MC7u5rV9hpoYsbcgmwxALskPN18os2ygK1Pn +f/h+WALIsG2RknSTbiyvBYkoIhJV9cflvEDpMeaWSLF7qJ5YjEIf9PM= +-----END PRIVATE KEY----- PublicKey=BOB_secp384r1_PUB -----BEGIN PUBLIC KEY----- @@ -5702,13 +5704,14 @@ SharedSecret=2006ed49acbb991b8fbf8a15c3f263542496eaefe1e2952591b72fb929463eac7a4 # TEST CURVE secp521r1 PrivateKey=ALICE_secp521r1 ------BEGIN EC PRIVATE KEY----- -MIHcAgEBBEIAFBIz3FLAuX8VCWzMwu1f/tm8pf1QqnsdLqaIWCQAJa2W5ldpJTYf -kj1gGxM44AD3qHnkXISvNLwwuxI1hr2+pOGgBwYFK4EEACOhgYkDgYYABACWlOOF -Yk/p3AS2LxEQWBuMm6uIjo3XArjh1QrsLcUc5hhi82CIz6kKwKjCnYRDHq4iv1x6 -3rVEzGGhQOM1g+cRVwHSpfbBpaxK7bMLkVFOOavvOdcdyRHaHsvxw2pREmdS/Gwt -fgT8odQrG06KMIwVeL+H08fGJSbPX0Zock0DOPCpaw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAFBIz3FLAuX8VCWzM +wu1f/tm8pf1QqnsdLqaIWCQAJa2W5ldpJTYfkj1gGxM44AD3qHnkXISvNLwwuxI1 +hr2+pOGhgYkDgYYABACWlOOFYk/p3AS2LxEQWBuMm6uIjo3XArjh1QrsLcUc5hhi +82CIz6kKwKjCnYRDHq4iv1x63rVEzGGhQOM1g+cRVwHSpfbBpaxK7bMLkVFOOavv +OdcdyRHaHsvxw2pREmdS/GwtfgT8odQrG06KMIwVeL+H08fGJSbPX0Zock0DOPCp +aw== +-----END PRIVATE KEY----- PublicKey=ALICE_secp521r1_PUB -----BEGIN PUBLIC KEY----- @@ -5719,13 +5722,14 @@ xiUmz19GaHJNAzjwqWs= -----END PUBLIC KEY----- PrivateKey=BOB_secp521r1 ------BEGIN EC PRIVATE KEY----- -MIHcAgEBBEIA9C/sMWveRlHPr9P5cc3U+1L2/zB0VtHewKSQRWZ67SmS4+m7uXTq -UVSLRHiQEgQid0cg77gSxXPlmV+zy0f3zd+gBwYFK4EEACOhgYkDgYYABAE18N3S -wDGtea3IOqUdh3j0JtnMeP41i/agEBlxK8/iEBXcQ61mkIrQIKcabRhoylEugXHi -yNnqNQOD4DUa0bTKzAHtJ4UqqbEVno6byRmcUQwbmvG89eS8GLEmk5X/O2atHU4y -IGTuTRQWn/BTJUCS+OgJz4FZdadscc5Z640EZqSDiw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIA9C/sMWveRlHPr9P5 +cc3U+1L2/zB0VtHewKSQRWZ67SmS4+m7uXTqUVSLRHiQEgQid0cg77gSxXPlmV+z +y0f3zd+hgYkDgYYABAE18N3SwDGtea3IOqUdh3j0JtnMeP41i/agEBlxK8/iEBXc +Q61mkIrQIKcabRhoylEugXHiyNnqNQOD4DUa0bTKzAHtJ4UqqbEVno6byRmcUQwb +mvG89eS8GLEmk5X/O2atHU4yIGTuTRQWn/BTJUCS+OgJz4FZdadscc5Z640EZqSD +iw== +-----END PRIVATE KEY----- PublicKey=BOB_secp521r1_PUB -----BEGIN PUBLIC KEY----- @@ -5748,11 +5752,11 @@ SharedSecret=018c8f33e544a0fa8854dcd96bdba75b7687d1c42b2ff1bf0a06d49c424fee96d8a # TEST CURVE prime192v1 PrivateKey=ALICE_prime192v1 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGPF9e9IU2oPZTMVU3UttCs+XOint3FCr96AKBggqhkjOPQMBAaE0AzIA -BOJuka5jMKORPW1YtgSiCkrPvhaqG9tC1k+QJhAKKfVyZm41b4FnSPJUSkaWmdk8 -yA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBjxfXvSFNqD2UzFVN1L +bQrPlzop7dxQq/ehNAMyAATibpGuYzCjkT1tWLYEogpKz74WqhvbQtZPkCYQCin1 +cmZuNW+BZ0jyVEpGlpnZPMg= +-----END PRIVATE KEY----- PublicKey=ALICE_prime192v1_PUB -----BEGIN PUBLIC KEY----- @@ -5761,11 +5765,11 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE4m6RrmMwo5E9bVi2BKIKSs++Fqob -----END PUBLIC KEY----- PrivateKey=BOB_prime192v1 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGF7Bqpc1mVjKqea4QQRj+hRd7f+OnOGbIaAKBggqhkjOPQMBAaE0AzIA -BKSnA0kQ//UW65YoIMNSbbqLKquz7MrBrJmdoXvtgLqoK2CJrvI1xKX22VYeHeBC -DA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBhewaqXNZlYyqnmuEEE +Y/oUXe3/jpzhmyGhNAMyAASkpwNJEP/1FuuWKCDDUm26iyqrs+zKwayZnaF77YC6 +qCtgia7yNcSl9tlWHh3gQgw= +-----END PRIVATE KEY----- PublicKey=BOB_prime192v1_PUB -----BEGIN PUBLIC KEY----- @@ -5786,11 +5790,11 @@ SharedSecret=be2a779b587f8f5d7c9d8f006e0a6d0e996c9c63c255f861 # TEST CURVE prime192v2 PrivateKey=ALICE_prime192v2 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGC0i4qqlFzusRi4bHVp0PFy+yjQ0BnD59aAKBggqhkjOPQMBAqE0AzIA -BMxIfAk+rvrVVrClFsosHe64NKeDhZ4U+OG+5svqDxXxSoVopEQPk9QhDSVhK1UJ -qg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQIEVTBTAgEBBBgtIuKqpRc7rEYuGx1a +dDxcvso0NAZw+fWhNAMyAATMSHwJPq761VawpRbKLB3uuDSng4WeFPjhvubL6g8V +8UqFaKRED5PUIQ0lYStVCao= +-----END PRIVATE KEY----- PublicKey=ALICE_prime192v2_PUB -----BEGIN PUBLIC KEY----- @@ -5799,11 +5803,11 @@ nhT44b7my+oPFfFKhWikRA+T1CENJWErVQmq -----END PUBLIC KEY----- PrivateKey=BOB_prime192v2 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGCBOOpYLX+Ieu8pH3+7WDGkva1YmSQAxi6AKBggqhkjOPQMBAqE0AzIA -BJricb7As9MfF+SqJMgjk8EsApeZdR/l0y2mYClyOuNeOfAkgkRCvzQwr36DWtqo -3w== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQIEVTBTAgEBBBggTjqWC1/iHrvKR9/u +1gxpL2tWJkkAMYuhNAMyAASa4nG+wLPTHxfkqiTII5PBLAKXmXUf5dMtpmApcjrj +XjnwJIJEQr80MK9+g1raqN8= +-----END PRIVATE KEY----- PublicKey=BOB_prime192v2_PUB -----BEGIN PUBLIC KEY----- @@ -5824,11 +5828,11 @@ SharedSecret=9b37033a48af7fe1825c062625f8b57d4b3ac48c12bec69c # TEST CURVE prime192v3 PrivateKey=ALICE_prime192v3 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGDSIN1yCKx7X+/aTqOxSSArBc+rH+4klN6AKBggqhkjOPQMBA6E0AzIA -BDr+LSlI0eTzbhc7oy/SKtB9K/bLMZDL4PBaj+SVlyiQ8NxcoR1TxmacAAEfuPpR -Xw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQMEVTBTAgEBBBg0iDdcgise1/v2k6js +UkgKwXPqx/uJJTehNAMyAAQ6/i0pSNHk824XO6Mv0irQfSv2yzGQy+DwWo/klZco +kPDcXKEdU8ZmnAABH7j6UV8= +-----END PRIVATE KEY----- PublicKey=ALICE_prime192v3_PUB -----BEGIN PUBLIC KEY----- @@ -5837,11 +5841,11 @@ kMvg8FqP5JWXKJDw3FyhHVPGZpwAAR+4+lFf -----END PUBLIC KEY----- PrivateKey=BOB_prime192v3 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGJ5bWG6rBVTd6/uqClMsWNgQxE8404BxoqAKBggqhkjOPQMBA6E0AzIA -BJdpOMEhBfrzoFkkCJ1f6EW68PLFs3W8FC+njQ5WXQsIbiGhn7kxwu08BMv6iwq9 -fw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQMEVTBTAgEBBBieW1huqwVU3ev7qgpT +LFjYEMRPONOAcaKhNAMyAASXaTjBIQX686BZJAidX+hFuvDyxbN1vBQvp40OVl0L +CG4hoZ+5McLtPATL+osKvX8= +-----END PRIVATE KEY----- PublicKey=BOB_prime192v3_PUB -----BEGIN PUBLIC KEY----- @@ -5862,11 +5866,11 @@ SharedSecret=7133f1d99b0e03ed9c4d78d3be40598cf419cd588283ac29 # TEST CURVE prime239v1 PrivateKey=ALICE_prime239v1 ------BEGIN EC PRIVATE KEY----- -MHECAQEEHkZomV2qq97tdYYhitXB++VP6ynNfvGDKsXF4QAkZKAKBggqhkjOPQMB -BKFAAz4ABHyCaVYIAl1ETh4F+IeYeuv9D4K/2jLTKhMR0D+88VmM393GAD+Ff7fT -gk+fNlozC5wpnZRZ2FDw+dHclA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwEEBGcwZQIBAQQeRmiZXaqr3u11hiGK +1cH75U/rKc1+8YMqxcXhACRkoUADPgAEfIJpVggCXUROHgX4h5h66/0Pgr/aMtMq +ExHQP7zxWYzf3cYAP4V/t9OCT582WjMLnCmdlFnYUPD50dyU +-----END PRIVATE KEY----- PublicKey=ALICE_prime239v1_PUB -----BEGIN PUBLIC KEY----- @@ -5875,11 +5879,11 @@ MtMqExHQP7zxWYzf3cYAP4V/t9OCT582WjMLnCmdlFnYUPD50dyU -----END PUBLIC KEY----- PrivateKey=BOB_prime239v1 ------BEGIN EC PRIVATE KEY----- -MHECAQEEHgGxkUaAYKh1VARaLeZvWLZvEVPiEpAN91YEKxxjP6AKBggqhkjOPQMB -BKFAAz4ABHUYD7C/zIt7nCXGIm7xSUMQw8i6oFB94jJNuukQBxaqIqIhk+9kzonQ -YYvla1J+jTiMp2vH6MMNjOOb0Q== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwEEBGcwZQIBAQQeAbGRRoBgqHVUBFot +5m9Ytm8RU+ISkA33VgQrHGM/oUADPgAEdRgPsL/Mi3ucJcYibvFJQxDDyLqgUH3i +Mk266RAHFqoioiGT72TOidBhi+VrUn6NOIyna8foww2M45vR +-----END PRIVATE KEY----- PublicKey=BOB_prime239v1_PUB -----BEGIN PUBLIC KEY----- @@ -5900,11 +5904,11 @@ SharedSecret=2ef92070f7a5fa14c8a67a8aa3080b4c4a597eafaa81d3f698599ac0be1e # TEST CURVE prime239v2 PrivateKey=ALICE_prime239v2 ------BEGIN EC PRIVATE KEY----- -MHECAQEEHnpqukuabhxfeGVv1ugTEYpvhxRTNM8VWUKVhvm39qAKBggqhkjOPQMB -BaFAAz4ABC7pFKHQkLJsMxlUd5SxBikOqrhnepA1zQ443DKw2mwbVig7rlK4IwRr -COzUWwkNGuTVk6PhJ1ntC122DQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwEFBGcwZQIBAQQeemq6S5puHF94ZW/W +6BMRim+HFFM0zxVZQpWG+bf2oUADPgAELukUodCQsmwzGVR3lLEGKQ6quGd6kDXN +DjjcMrDabBtWKDuuUrgjBGsI7NRbCQ0a5NWTo+EnWe0LXbYN +-----END PRIVATE KEY----- PublicKey=ALICE_prime239v2_PUB -----BEGIN PUBLIC KEY----- @@ -5913,11 +5917,11 @@ kDXNDjjcMrDabBtWKDuuUrgjBGsI7NRbCQ0a5NWTo+EnWe0LXbYN -----END PUBLIC KEY----- PrivateKey=BOB_prime239v2 ------BEGIN EC PRIVATE KEY----- -MHECAQEEHgBGgsO7pRfBmXJm42g5nK8PBnsfoV9Kzb8M6Au/uqAKBggqhkjOPQMB -BaFAAz4ABCodBJmFKY+l27hBsTAWj5hAk/C/vooVFprOMWrtEVGIo+B4EtYI0jA3 -8r7wgVMtdESJMPoKMVXVIX1trg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwEFBGcwZQIBAQQeAEaCw7ulF8GZcmbj +aDmcrw8Gex+hX0rNvwzoC7+6oUADPgAEKh0EmYUpj6XbuEGxMBaPmECT8L++ihUW +ms4xau0RUYij4HgS1gjSMDfyvvCBUy10RIkw+goxVdUhfW2u +-----END PRIVATE KEY----- PublicKey=BOB_prime239v2_PUB -----BEGIN PUBLIC KEY----- @@ -5938,11 +5942,11 @@ SharedSecret=5bdab282dc371ee88ade318a6aad2b329ec3ea957e0df18b7a691c1bf703 # TEST CURVE prime239v3 PrivateKey=ALICE_prime239v3 ------BEGIN EC PRIVATE KEY----- -MHECAQEEHhpcEjwGH5oj/a9pwEg+dlaismaRJ1PiZsp5X9gyO6AKBggqhkjOPQMB -BqFAAz4ABBZSAeGJfuSdruCS2L/M/orcH/l5zi/wQ6jSt7kaGDyh2HWFiZIF8ZEN -UA2cDaaQEEXMUoEypyelfHK26Q== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwEGBGcwZQIBAQQeGlwSPAYfmiP9r2nA +SD52VqKyZpEnU+Jmynlf2DI7oUADPgAEFlIB4Yl+5J2u4JLYv8z+itwf+XnOL/BD +qNK3uRoYPKHYdYWJkgXxkQ1QDZwNppAQRcxSgTKnJ6V8crbp +-----END PRIVATE KEY----- PublicKey=ALICE_prime239v3_PUB -----BEGIN PUBLIC KEY----- @@ -5951,11 +5955,11 @@ L/BDqNK3uRoYPKHYdYWJkgXxkQ1QDZwNppAQRcxSgTKnJ6V8crbp -----END PUBLIC KEY----- PrivateKey=BOB_prime239v3 ------BEGIN EC PRIVATE KEY----- -MHECAQEEHlNSiHyQRryLa/P/4JFtc6D5L3qPZb1wZZ1Fef+aw6AKBggqhkjOPQMB -BqFAAz4ABHqXNNwBBIDpyPor6YxleMqb5/LEUGlQG90AHiBGA0C1ARTnW95BdjL5 -ZyyldzgnQdxkIDX2bRB23Z9G6g== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwEGBGcwZQIBAQQeU1KIfJBGvItr8//g +kW1zoPkveo9lvXBlnUV5/5rDoUADPgAEepc03AEEgOnI+ivpjGV4ypvn8sRQaVAb +3QAeIEYDQLUBFOdb3kF2MvlnLKV3OCdB3GQgNfZtEHbdn0bq +-----END PRIVATE KEY----- PublicKey=BOB_prime239v3_PUB -----BEGIN PUBLIC KEY----- @@ -5976,11 +5980,11 @@ SharedSecret=78e80ae760061178bd005e9e3634333971468bc6d3f82baee238c5ed32f9 # TEST CURVE prime256v1 PrivateKey=ALICE_prime256v1 ------BEGIN EC PRIVATE KEY----- -MHcCAQEEIJVDw5PIEPJTI9/Fe9IzwWQ30FMeaTTlUijjE6pYdODzoAoGCCqGSM49 -AwEHoUQDQgAEavO8PitKvW9ZsyRod9PZIzb2E0tNpmJBysQHsImcJrf+cPubssM/ -/tNd9EnQFm17RAo2h1CveGBB86dBvzwpeQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQglUPDk8gQ8lMj38V7 +0jPBZDfQUx5pNOVSKOMTqlh04POhRANCAARq87w+K0q9b1mzJGh309kjNvYTS02m +YkHKxAewiZwmt/5w+5uywz/+0130SdAWbXtECjaHUK94YEHzp0G/PCl5 +-----END PRIVATE KEY----- PublicKey=ALICE_prime256v1_PUB -----BEGIN PUBLIC KEY----- @@ -5989,11 +5993,11 @@ pmJBysQHsImcJrf+cPubssM//tNd9EnQFm17RAo2h1CveGBB86dBvzwpeQ== -----END PUBLIC KEY----- PrivateKey=BOB_prime256v1 ------BEGIN EC PRIVATE KEY----- -MHcCAQEEIDbC35/7EWX5vWXDO8VEYlB0+/sPCYJPUm8E1Q46S2GJoAoGCCqGSM49 -AwEHoUQDQgAEkZsijYFGwAxsZCDgFYfU+yF79mQ0+iOWDFusDrNu1TDgA9AIjS67 -+7FtU3asZFLRde/xhaS7xTrmXG3V+Kd4vw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgNsLfn/sRZfm9ZcM7 +xURiUHT7+w8Jgk9SbwTVDjpLYYmhRANCAASRmyKNgUbADGxkIOAVh9T7IXv2ZDT6 +I5YMW6wOs27VMOAD0AiNLrv7sW1TdqxkUtF17/GFpLvFOuZcbdX4p3i/ +-----END PRIVATE KEY----- PublicKey=BOB_prime256v1_PUB -----BEGIN PUBLIC KEY----- @@ -6014,10 +6018,10 @@ SharedSecret=390021fbca00d959c1adaf7e9cedef0e65a582489eab9adbe739ef66bf82adb4 # TEST CURVE sect113r1 PrivateKey=ALICE_sect113r1 ------BEGIN EC PRIVATE KEY----- -MEECAQEEDwBys/27wGVZviSeQZVmZKAHBgUrgQQABKEiAyAABAG+JN/rb7VXh60l -vYP0uQFp0AWZ2ZFL6tUjeylNiw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFECAQAwEAYHKoZIzj0CAQYFK4EEAAQEOjA4AgEBBA8AcrP9u8BlWb4knkGVZmSh +IgMgAAQBviTf62+1V4etJb2D9LkBadAFmdmRS+rVI3spTYs= +-----END PRIVATE KEY----- PublicKey=ALICE_sect113r1_PUB -----BEGIN PUBLIC KEY----- @@ -6026,10 +6030,10 @@ MDQwEAYHKoZIzj0CAQYFK4EEAAQDIAAEAb4k3+tvtVeHrSW9g/S5AWnQBZnZkUvq -----END PUBLIC KEY----- PrivateKey=BOB_sect113r1 ------BEGIN EC PRIVATE KEY----- -MEECAQEEDwCaESrcD0p1spBTPUX8zKAHBgUrgQQABKEiAyAABAC5JEE3FeMiN7PC -sYXxWQHFZHr2DRQloEggCul02g== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFECAQAwEAYHKoZIzj0CAQYFK4EEAAQEOjA4AgEBBA8AmhEq3A9KdbKQUz1F/Myh +IgMgAAQAuSRBNxXjIjezwrGF8VkBxWR69g0UJaBIIArpdNo= +-----END PRIVATE KEY----- PublicKey=BOB_sect113r1_PUB -----BEGIN PUBLIC KEY----- @@ -6050,10 +6054,10 @@ SharedSecret=015405437add26b8841c62a9016c85 # TEST CURVE sect113r2 PrivateKey=ALICE_sect113r2 ------BEGIN EC PRIVATE KEY----- -MEECAQEEDwAGoVnpnsEoqO+vNeH31aAHBgUrgQQABaEiAyAABAFNBMcD25LFxnyS -+xJVRQFwtDibjlTXRXBUJD6gZA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFECAQAwEAYHKoZIzj0CAQYFK4EEAAUEOjA4AgEBBA8ABqFZ6Z7BKKjvrzXh99Wh +IgMgAAQBTQTHA9uSxcZ8kvsSVUUBcLQ4m45U10VwVCQ+oGQ= +-----END PRIVATE KEY----- PublicKey=ALICE_sect113r2_PUB -----BEGIN PUBLIC KEY----- @@ -6062,10 +6066,10 @@ cFQkPqBk -----END PUBLIC KEY----- PrivateKey=BOB_sect113r2 ------BEGIN EC PRIVATE KEY----- -MEECAQEEDwAE8eFnSQKnROhxAki6K6AHBgUrgQQABaEiAyAABAFKLu75SvvvqIbK -DQiPpQA3vQjM9VnEYrnM/GnrCg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFECAQAwEAYHKoZIzj0CAQYFK4EEAAUEOjA4AgEBBA8ABPHhZ0kCp0TocQJIuiuh +IgMgAAQBSi7u+Ur776iGyg0Ij6UAN70IzPVZxGK5zPxp6wo= +-----END PRIVATE KEY----- PublicKey=BOB_sect113r2_PUB -----BEGIN PUBLIC KEY----- @@ -6086,10 +6090,10 @@ SharedSecret=014231c5e9e28d451aa44a755407e1 # TEST CURVE sect131r1 PrivateKey=ALICE_sect131r1 ------BEGIN EC PRIVATE KEY----- -MEcCAQEEEQBQIUPAkstOEseIOXD9ByfxoAcGBSuBBAAWoSYDJAAEABT7LAX2I+/o -sOV0o4uEuBcFEjsSlmdtc9eFSaRBY+EcBA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFcCAQAwEAYHKoZIzj0CAQYFK4EEABYEQDA+AgEBBBEAUCFDwJLLThLHiDlw/Qcn +8aEmAyQABAAU+ywF9iPv6LDldKOLhLgXBRI7EpZnbXPXhUmkQWPhHAQ= +-----END PRIVATE KEY----- PublicKey=ALICE_sect131r1_PUB -----BEGIN PUBLIC KEY----- @@ -6098,10 +6102,10 @@ c9eFSaRBY+EcBA== -----END PUBLIC KEY----- PrivateKey=BOB_sect131r1 ------BEGIN EC PRIVATE KEY----- -MEcCAQEEEQPHEzPGPEmZh9Jm9Ykqr5W8oAcGBSuBBAAWoSYDJAAEAUdDZr6H5ifk -3gu3QiglxVUGt/3GRk1LTHFuWH7TCd2r2w== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFcCAQAwEAYHKoZIzj0CAQYFK4EEABYEQDA+AgEBBBEDxxMzxjxJmYfSZvWJKq+V +vKEmAyQABAFHQ2a+h+Yn5N4Lt0IoJcVVBrf9xkZNS0xxblh+0wndq9s= +-----END PRIVATE KEY----- PublicKey=BOB_sect131r1_PUB -----BEGIN PUBLIC KEY----- @@ -6122,10 +6126,10 @@ SharedSecret=009e4acc8c1ba3a129a9ad83a733d7d702 # TEST CURVE sect131r2 PrivateKey=ALICE_sect131r2 ------BEGIN EC PRIVATE KEY----- -MEcCAQEEEQMc8+1AIokHyDTWsyRPxKT1oAcGBSuBBAAXoSYDJAAEBxaXZn/WQhzi -ZYJtEfj5z/YHjtELfUnKJ8q+TGQe3TnHeA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFcCAQAwEAYHKoZIzj0CAQYFK4EEABcEQDA+AgEBBBEDHPPtQCKJB8g01rMkT8Sk +9aEmAyQABAcWl2Z/1kIc4mWCbRH4+c/2B47RC31JyifKvkxkHt05x3g= +-----END PRIVATE KEY----- PublicKey=ALICE_sect131r2_PUB -----BEGIN PUBLIC KEY----- @@ -6134,10 +6138,10 @@ J8q+TGQe3TnHeA== -----END PUBLIC KEY----- PrivateKey=BOB_sect131r2 ------BEGIN EC PRIVATE KEY----- -MEcCAQEEEQNH17P9i1Lb1Lv9Hn6tSJdUoAcGBSuBBAAXoSYDJAAEAtkc0EhMOiKC -k7BPNzOVo30CxGTknMxQldiS8ESqP5ggtA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFcCAQAwEAYHKoZIzj0CAQYFK4EEABcEQDA+AgEBBBEDR9ez/YtS29S7/R5+rUiX +VKEmAyQABALZHNBITDoigpOwTzczlaN9AsRk5JzMUJXYkvBEqj+YILQ= +-----END PRIVATE KEY----- PublicKey=BOB_sect131r2_PUB -----BEGIN PUBLIC KEY----- @@ -6158,10 +6162,11 @@ SharedSecret=03cbec3a3050c7f13d4801ad692d61c417 # TEST CURVE sect163k1 PrivateKey=ALICE_sect163k1 ------BEGIN EC PRIVATE KEY----- -MFMCAQEEFQHGR4Y5cTzo8CKOmTy2s39/eSXhSaAHBgUrgQQAAaEuAywABAPWGsMI -nYxIUpnpDXVxOWVf+XkdjQeDldkLEwULzgBpzPA+00lg0LF8KQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUBxkeGOXE86PAijpk8trN/ +f3kl4UmhLgMsAAQD1hrDCJ2MSFKZ6Q11cTllX/l5HY0Hg5XZCxMFC84AaczwPtNJ +YNCxfCk= +-----END PRIVATE KEY----- PublicKey=ALICE_sect163k1_PUB -----BEGIN PUBLIC KEY----- @@ -6170,10 +6175,11 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEA9YawwidjEhSmekNdXE5ZV/5eR2NB4OV -----END PUBLIC KEY----- PrivateKey=BOB_sect163k1 ------BEGIN EC PRIVATE KEY----- -MFMCAQEEFQJQnmQi1J9eJ0deyCiRxLufM8Vs5KAHBgUrgQQAAaEuAywABAatg0nW -qB1vcD0hI6ZO6N9L5ZgUrAFdeskSW4CR42HeNecOrxf5cEHSTw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUCUJ5kItSfXidHXsgokcS7 +nzPFbOShLgMsAAQGrYNJ1qgdb3A9ISOmTujfS+WYFKwBXXrJEluAkeNh3jXnDq8X ++XBB0k8= +-----END PRIVATE KEY----- PublicKey=BOB_sect163k1_PUB -----BEGIN PUBLIC KEY----- @@ -6194,10 +6200,11 @@ SharedSecret=07bfdf00759b383aa7741ae4634400f8ddf2047092 # TEST CURVE sect163r1 PrivateKey=ALICE_sect163r1 ------BEGIN EC PRIVATE KEY----- -MFMCAQEEFQGX3OaU+YUXm/2HUggQ0DHVvy2PT6AHBgUrgQQAAqEuAywABATePwmf -nwIK0QPC85nkPCBgYFi8gQLPXM3xTA99MVJ1eNNZByv2BbE0wA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAIETDBKAgEBBBUBl9zmlPmFF5v9h1IIENAx +1b8tj0+hLgMsAAQE3j8Jn58CCtEDwvOZ5DwgYGBYvIECz1zN8UwPfTFSdXjTWQcr +9gWxNMA= +-----END PRIVATE KEY----- PublicKey=ALICE_sect163r1_PUB -----BEGIN PUBLIC KEY----- @@ -6206,10 +6213,11 @@ zfFMD30xUnV401kHK/YFsTTA -----END PUBLIC KEY----- PrivateKey=BOB_sect163r1 ------BEGIN EC PRIVATE KEY----- -MFMCAQEEFQD+fM3nIJq+9mVfIMYSKFavAbfrT6AHBgUrgQQAAqEuAywABAO3pdkd -/NcAFJOcaHN+g+190tmBqgaEF15bP7fXy82YLoAwk/4+e0fOwA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAIETDBKAgEBBBUA/nzN5yCavvZlXyDGEihW +rwG360+hLgMsAAQDt6XZHfzXABSTnGhzfoPtfdLZgaoGhBdeWz+318vNmC6AMJP+ +PntHzsA= +-----END PRIVATE KEY----- PublicKey=BOB_sect163r1_PUB -----BEGIN PUBLIC KEY----- @@ -6230,10 +6238,11 @@ SharedSecret=02355c765bbc07fcc44bb1496e490912f6df56e6d4 # TEST CURVE sect163r2 PrivateKey=ALICE_sect163r2 ------BEGIN EC PRIVATE KEY----- -MFMCAQEEFQOMfYbsGQ9MEzhW2WNpCvyxdUs06qAHBgUrgQQAD6EuAywABAcepbEl -ZHYqscI+n89KNkh0rzwRPQDfbf9Q5PGFgfCwulHuundqGrWVDw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUDjH2G7BkPTBM4VtljaQr8 +sXVLNOqhLgMsAAQHHqWxJWR2KrHCPp/PSjZIdK88ET0A323/UOTxhYHwsLpR7rp3 +ahq1lQ8= +-----END PRIVATE KEY----- PublicKey=ALICE_sect163r2_PUB -----BEGIN PUBLIC KEY----- @@ -6242,10 +6251,11 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBx6lsSVkdiqxwj6fz0o2SHSvPBE9AN9t -----END PUBLIC KEY----- PrivateKey=BOB_sect163r2 ------BEGIN EC PRIVATE KEY----- -MFMCAQEEFQFc4z1ObqwpdSVEuVbQeAI1MPFbaKAHBgUrgQQAD6EuAywABAbFrzFF -wL5MhwOAa16ENURXU+gGiQHC0guPXo09gLRoFkjz+cUXiOGCZw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUBXOM9Tm6sKXUlRLlW0HgC +NTDxW2ihLgMsAAQGxa8xRcC+TIcDgGtehDVEV1PoBokBwtILj16NPYC0aBZI8/nF +F4jhgmc= +-----END PRIVATE KEY----- PublicKey=BOB_sect163r2_PUB -----BEGIN PUBLIC KEY----- @@ -6266,11 +6276,11 @@ SharedSecret=040df54e6df412790ef5c0fafbbfcba5136b872951 # TEST CURVE sect193r1 PrivateKey=ALICE_sect193r1 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGQARCWh8GW+PzMMrmjgIJ8Bo5A6aUDJOKYGgBwYFK4EEABihNgM0AAQA -oFzJEHFANlO+k8zf1lVdhBLlonBl9Sc3AGflPbqbXlEzgwudgZ2SVwAzygw4wv33 -3A== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEAYHKoZIzj0CAQYFK4EEABgEWDBWAgEBBBkAEQlofBlvj8zDK5o4CCfA +aOQOmlAyTimBoTYDNAAEAKBcyRBxQDZTvpPM39ZVXYQS5aJwZfUnNwBn5T26m15R +M4MLnYGdklcAM8oMOML999w= +-----END PRIVATE KEY----- PublicKey=ALICE_sect193r1_PUB -----BEGIN PUBLIC KEY----- @@ -6279,11 +6289,11 @@ NwBn5T26m15RM4MLnYGdklcAM8oMOML999w= -----END PUBLIC KEY----- PrivateKey=BOB_sect193r1 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGQCfG9gsplrDhGPbhZNEF+CJqvm+ndHekImgBwYFK4EEABihNgM0AAQB -fDQ9a3c+1lPm/1ofSjpacW0UY4E0RSlhAT+MGPNQcgKow1lMfL2BPZH3JzQYFn8O -Jw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEAYHKoZIzj0CAQYFK4EEABgEWDBWAgEBBBkAnxvYLKZaw4Rj24WTRBfg +iar5vp3R3pCJoTYDNAAEAXw0PWt3PtZT5v9aH0o6WnFtFGOBNEUpYQE/jBjzUHIC +qMNZTHy9gT2R9yc0GBZ/Dic= +-----END PRIVATE KEY----- PublicKey=BOB_sect193r1_PUB -----BEGIN PUBLIC KEY----- @@ -6304,11 +6314,11 @@ SharedSecret=00458b4c5ad122de5a377bea0adf1ab87bcb961b24ed764f47 # TEST CURVE sect193r2 PrivateKey=ALICE_sect193r2 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGQCPnhdBb5vdudf126+ppr6U9M1y86XFEC+gBwYFK4EEABmhNgM0AAQA -eFbrGMfhM0+z97Xa2xlywYP5r3aQBaTBAVzibUhLHiia03IJUjsVdXnM2doZZUAJ -Pg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEAYHKoZIzj0CAQYFK4EEABkEWDBWAgEBBBkAj54XQW+b3bnX9duvqaa+ +lPTNcvOlxRAvoTYDNAAEAHhW6xjH4TNPs/e12tsZcsGD+a92kAWkwQFc4m1ISx4o +mtNyCVI7FXV5zNnaGWVACT4= +-----END PRIVATE KEY----- PublicKey=ALICE_sect193r2_PUB -----BEGIN PUBLIC KEY----- @@ -6317,11 +6327,11 @@ wQFc4m1ISx4omtNyCVI7FXV5zNnaGWVACT4= -----END PUBLIC KEY----- PrivateKey=BOB_sect193r2 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGQC8yJVHRpuTqkeh44gERIt8H0HiCxkmMuygBwYFK4EEABmhNgM0AAQA -O0oNzAvrrT4ybXVWXbngYjdOcP5+tqB3AX7BjmqUy7lW2tQMwe4A/Srd4ZBSyvM2 -jQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEAYHKoZIzj0CAQYFK4EEABkEWDBWAgEBBBkAvMiVR0abk6pHoeOIBESL +fB9B4gsZJjLsoTYDNAAEADtKDcwL660+Mm11Vl254GI3TnD+fragdwF+wY5qlMu5 +VtrUDMHuAP0q3eGQUsrzNo0= +-----END PRIVATE KEY----- PublicKey=BOB_sect193r2_PUB -----BEGIN PUBLIC KEY----- @@ -6342,11 +6352,11 @@ SharedSecret=019d1f316d204a9cd1b9632cebb4accddb204158be3e435891 # TEST CURVE sect233k1 PrivateKey=ALICE_sect233k1 ------BEGIN EC PRIVATE KEY----- -MG0CAQEEHVpHupoqbW+ZlYrZsawnWteYfoGlORbi3UvjNJ/8oAcGBSuBBAAaoUAD -PgAEANwOK/5tO89VWKpgs3PTpU7nCh2vL6waLp+ckitBAJN9n13nCGIixtjlOGVy -bsjQD9wgahKED/ou6Y5U ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB1aR7qaKm1vmZWK2bGsJ1rX +mH6BpTkW4t1L4zSf/KFAAz4ABADcDiv+bTvPVViqYLNz06VO5wodry+sGi6fnJIr +QQCTfZ9d5whiIsbY5Thlcm7I0A/cIGoShA/6LumOVA== +-----END PRIVATE KEY----- PublicKey=ALICE_sect233k1_PUB -----BEGIN PUBLIC KEY----- @@ -6355,11 +6365,11 @@ Lp+ckitBAJN9n13nCGIixtjlOGVybsjQD9wgahKED/ou6Y5U -----END PUBLIC KEY----- PrivateKey=BOB_sect233k1 ------BEGIN EC PRIVATE KEY----- -MG0CAQEEHShrkGvNjGbqafnVfKmGfpc5SMpz2gwMcKjADIdNoAcGBSuBBAAaoUAD -PgAEAYqIW4UlVB7KYdhFWe3Ys0XYxJpMxwv0kZI+fbM7AGKzkxLiSAQVqRZCXsqk -aLLe9Lz3CaluW8csn/4h ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0oa5BrzYxm6mn51Xyphn6X +OUjKc9oMDHCowAyHTaFAAz4ABAGKiFuFJVQeymHYRVnt2LNF2MSaTMcL9JGSPn2z +OwBis5MS4kgEFakWQl7KpGiy3vS89wmpblvHLJ/+IQ== +-----END PRIVATE KEY----- PublicKey=BOB_sect233k1_PUB -----BEGIN PUBLIC KEY----- @@ -6380,11 +6390,11 @@ SharedSecret=00a5e5f2e992f4360d530dd365d14f5c6013212e14f4ea258c91c71f1512 # TEST CURVE sect233r1 PrivateKey=ALICE_sect233r1 ------BEGIN EC PRIVATE KEY----- -MG4CAQEEHgAQ3p949HaCLPJfNTqQiBQaKOnn4hABeg0F8qdV4KAHBgUrgQQAG6FA -Az4ABAHSQTC7Z/BBajW/WPtdDy4lPeIzBELzD5zGDHEZDgH8XKOuEhSkQNZoyp9X -bcxxnpZ1shR7cxnsrmkbfw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AEN6fePR2gizyXzU6kIgU +Gijp5+IQAXoNBfKnVeChQAM+AAQB0kEwu2fwQWo1v1j7XQ8uJT3iMwRC8w+cxgxx +GQ4B/FyjrhIUpEDWaMqfV23McZ6WdbIUe3MZ7K5pG38= +-----END PRIVATE KEY----- PublicKey=ALICE_sect233r1_PUB -----BEGIN PUBLIC KEY----- @@ -6393,11 +6403,11 @@ nMYMcRkOAfxco64SFKRA1mjKn1dtzHGelnWyFHtzGeyuaRt/ -----END PUBLIC KEY----- PrivateKey=BOB_sect233r1 ------BEGIN EC PRIVATE KEY----- -MG4CAQEEHgBcdY55Lp8bRcIfcWccO5IhwQtR4Mb4Bg014tVl3qAHBgUrgQQAG6FA -Az4ABABhFFgfTXu7Fxow8XcY6wvhu+h1bXJksS0vemYKRwB+okj/ieIKvy4cqHSA -FrYkGMFYxXW7wyl/rS6+iQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AXHWOeS6fG0XCH3FnHDuS +IcELUeDG+AYNNeLVZd6hQAM+AAQAYRRYH017uxcaMPF3GOsL4bvodW1yZLEtL3pm +CkcAfqJI/4niCr8uHKh0gBa2JBjBWMV1u8Mpf60uvok= +-----END PRIVATE KEY----- PublicKey=BOB_sect233r1_PUB -----BEGIN PUBLIC KEY----- @@ -6418,11 +6428,11 @@ SharedSecret=01625f3fcd367ee7cd74c67cca02dccfce6c3b19ef07e358ed943d17a8e2 # TEST CURVE sect239k1 PrivateKey=ALICE_sect239k1 ------BEGIN EC PRIVATE KEY----- -MG4CAQEEHgyGm5BO0N4sFuhmCJbXV38oGWBQvhi9ONnzODgdHaAHBgUrgQQAA6FA -Az4ABBp9EPpfcv/tz8U3r0q4DThrhuHEdl7ObPUbXma2W3CXzOVaxHn4Y1OjFXQ4 -EttK0BBtfGoFrYaDzcHShw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEAAMEZzBlAgEBBB4MhpuQTtDeLBboZgiW11d/ +KBlgUL4YvTjZ8zg4HR2hQAM+AAQafRD6X3L/7c/FN69KuA04a4bhxHZezmz1G15m +tltwl8zlWsR5+GNToxV0OBLbStAQbXxqBa2Gg83B0oc= +-----END PRIVATE KEY----- PublicKey=ALICE_sect239k1_PUB -----BEGIN PUBLIC KEY----- @@ -6431,11 +6441,11 @@ MFIwEAYHKoZIzj0CAQYFK4EEAAMDPgAEGn0Q+l9y/+3PxTevSrgNOGuG4cR2Xs5s -----END PUBLIC KEY----- PrivateKey=BOB_sect239k1 ------BEGIN EC PRIVATE KEY----- -MG4CAQEEHgUEbjvsq/KWKymlQXBsOX9JEadfkUWZ/D/FYiIQx6AHBgUrgQQAA6FA -Az4ABAWKLT3hRfoXmbwOTR4j8OEXf4gNS7uHzWFN3JnHERPQiiTEWRNR/+t71Y8D -svE84K6Ig9lQ1UJHFFZK5Q== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFK4EEAAMEZzBlAgEBBB4FBG477KvylisppUFwbDl/ +SRGnX5FFmfw/xWIiEMehQAM+AAQFii094UX6F5m8Dk0eI/DhF3+IDUu7h81hTdyZ +xxET0IokxFkTUf/re9WPA7LxPOCuiIPZUNVCRxRWSuU= +-----END PRIVATE KEY----- PublicKey=BOB_sect239k1_PUB -----BEGIN PUBLIC KEY----- @@ -6456,11 +6466,12 @@ SharedSecret=4d1c9a8ae73f754d0a593d6e426114f4f67d7c8082ccc4e04a72b0d2aff8 # TEST CURVE sect283k1 PrivateKey=ALICE_sect283k1 ------BEGIN EC PRIVATE KEY----- -MIGAAgEBBCQAaGeyZnZQMpXdAqareT7fctDqfloJi8pdwyCJmUFL9GtWAhGgBwYF -K4EEABChTANKAAQFKCk7DlMxNzg7wceHDlq0mXmauda4LqhZVhFikPUgy881NGwB -ijhJhGY8h+DNW/8RJVwdVoPWU82j56rQc3WqG9Ff7iuYY7s= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAGhnsmZ2UDKV3QKmq3k+ +33LQ6n5aCYvKXcMgiZlBS/RrVgIRoUwDSgAEBSgpOw5TMTc4O8HHhw5atJl5mrnW +uC6oWVYRYpD1IMvPNTRsAYo4SYRmPIfgzVv/ESVcHVaD1lPNo+eq0HN1qhvRX+4r +mGO7 +-----END PRIVATE KEY----- PublicKey=ALICE_sect283k1_PUB -----BEGIN PUBLIC KEY----- @@ -6469,11 +6480,12 @@ WVYRYpD1IMvPNTRsAYo4SYRmPIfgzVv/ESVcHVaD1lPNo+eq0HN1qhvRX+4rmGO7 -----END PUBLIC KEY----- PrivateKey=BOB_sect283k1 ------BEGIN EC PRIVATE KEY----- -MIGAAgEBBCQAAlcjB9aNhuIzmMRw3Dzz/WRsSeFWNYaK87vMM+2zsC4pIySgBwYF -K4EEABChTANKAAQDkC6x7ml0fqSzs93I96g9tgCTPpUPm/wpNXVv3s+JiZk0N6gF -jvwVDIdFK91Kj6hF7DZFpyloICe1GiJYfI3WcB0NLOMI3+Y= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAAJXIwfWjYbiM5jEcNw8 +8/1kbEnhVjWGivO7zDPts7AuKSMkoUwDSgAEA5Ause5pdH6ks7PdyPeoPbYAkz6V +D5v8KTV1b97PiYmZNDeoBY78FQyHRSvdSo+oRew2RacpaCAntRoiWHyN1nAdDSzj +CN/m +-----END PRIVATE KEY----- PublicKey=BOB_sect283k1_PUB -----BEGIN PUBLIC KEY----- @@ -6494,11 +6506,12 @@ SharedSecret=02f2e682c2f60d7261624f3661a5e85fca920443b72aa4dd5a540082e65e552302d # TEST CURVE sect283r1 PrivateKey=ALICE_sect283r1 ------BEGIN EC PRIVATE KEY----- -MIGAAgEBBCQCLgmuG7X2S3sfyPDUU7tXMLGHqnSkjSiCXer16/k0WS59mRmgBwYF -K4EEABGhTANKAAQAfHpzCdbD72XehkenH5Hye7tIupRLjRNTa4vRbpVM0A0i9wkH -Vv77eiQfQUmAUBqFtqi1p9hPJ+oKhjXVVrGdWpTn9oTuOwM= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkAi4Jrhu19kt7H8jw1FO7 +VzCxh6p0pI0ogl3q9ev5NFkufZkZoUwDSgAEAHx6cwnWw+9l3oZHpx+R8nu7SLqU +S40TU2uL0W6VTNANIvcJB1b++3okH0FJgFAahbaotafYTyfqCoY11VaxnVqU5/aE +7jsD +-----END PRIVATE KEY----- PublicKey=ALICE_sect283r1_PUB -----BEGIN PUBLIC KEY----- @@ -6507,11 +6520,12 @@ U2uL0W6VTNANIvcJB1b++3okH0FJgFAahbaotafYTyfqCoY11VaxnVqU5/aE7jsD -----END PUBLIC KEY----- PrivateKey=BOB_sect283r1 ------BEGIN EC PRIVATE KEY----- -MIGAAgEBBCQAIPTiAlpV9XEr8OlvGOqvNlZzoHvprbcwr8hAPWMyUY9DPPGgBwYF -K4EEABGhTANKAAQDXeYhgy+KTXYMGnwmR0RMwHV7A7DbYL/GGfMsQeaCsbR7DF4A -1UCghnLa6/m3RVQking9h0s1qoiC4372/pTvw7iVqywirkg= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkACD04gJaVfVxK/Dpbxjq +rzZWc6B76a23MK/IQD1jMlGPQzzxoUwDSgAEA13mIYMvik12DBp8JkdETMB1ewOw +22C/xhnzLEHmgrG0ewxeANVAoIZy2uv5t0VUJIp4PYdLNaqIguN+9v6U78O4lass +Iq5I +-----END PRIVATE KEY----- PublicKey=BOB_sect283r1_PUB -----BEGIN PUBLIC KEY----- @@ -6532,12 +6546,13 @@ SharedSecret=05778bc1afcf38d7dddb2150cacbfe4d38dc588968fd8b2e859c28ae2629d3435f8 # TEST CURVE sect409k1 PrivateKey=ALICE_sect409k1 ------BEGIN EC PRIVATE KEY----- -MIGvAgEBBDMg1vV7wiPe1ovX+ukzVfwPZoqvyj/vdif04Opi9PcjV5mPBEZgSFBg -8hbutNxZJdVLrxSgBwYFK4EEACShbANqAAQACe1IJ5ilSk1pPLvbcjEZIE6abC9L -Z9WmHuNJxM9LAW1OuLvJGi72AsGYUOGpX0WGmK6CAYaqZb2Qeedq/yUIljDHYi66 -J+26owYl7lOMpRzZ9U2QDJrZ7TYuxeMUui6re0B+JuZdYw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDMg1vV7wiPe1ovX+ukz +VfwPZoqvyj/vdif04Opi9PcjV5mPBEZgSFBg8hbutNxZJdVLrxShbANqAAQACe1I +J5ilSk1pPLvbcjEZIE6abC9LZ9WmHuNJxM9LAW1OuLvJGi72AsGYUOGpX0WGmK6C +AYaqZb2Qeedq/yUIljDHYi66J+26owYl7lOMpRzZ9U2QDJrZ7TYuxeMUui6re0B+ +JuZdYw== +-----END PRIVATE KEY----- PublicKey=ALICE_sect409k1_PUB -----BEGIN PUBLIC KEY----- @@ -6547,12 +6562,13 @@ uqMGJe5TjKUc2fVNkAya2e02LsXjFLouq3tAfibmXWM= -----END PUBLIC KEY----- PrivateKey=BOB_sect409k1 ------BEGIN EC PRIVATE KEY----- -MIGvAgEBBDMIYBGZZcZz4qCdhAV9vqpfe8vV+vJEhjawR52JUV1rumWEBPAx0o6E -+gaxHBr5hzVGkIKgBwYFK4EEACShbANqAAQAAQKKs60CTUUkltsT+lIBukjz850p -kGGLltJ4eaZn4k9AtN/lFTCq6Vgqe2sDrjA3b45qAdWjf1vRaP0wawJ13SjApJmy -Xg5hQks6d0Zqz2OHYhGEGiM159VtTlStK067dVe1fGVDeg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDMIYBGZZcZz4qCdhAV9 +vqpfe8vV+vJEhjawR52JUV1rumWEBPAx0o6E+gaxHBr5hzVGkIKhbANqAAQAAQKK +s60CTUUkltsT+lIBukjz850pkGGLltJ4eaZn4k9AtN/lFTCq6Vgqe2sDrjA3b45q +AdWjf1vRaP0wawJ13SjApJmyXg5hQks6d0Zqz2OHYhGEGiM159VtTlStK067dVe1 +fGVDeg== +-----END PRIVATE KEY----- PublicKey=BOB_sect409k1_PUB -----BEGIN PUBLIC KEY----- @@ -6574,12 +6590,13 @@ SharedSecret=01523ec40ad40226a57281a4c423801ae9495dcf736eddd667023b1390977d018ce # TEST CURVE sect409r1 PrivateKey=ALICE_sect409r1 ------BEGIN EC PRIVATE KEY----- -MIGwAgEBBDQAYTMsTpey51D2ULndpN+AAWnJLy9pTerziakhjii8OyWKpUVfpDFN -neCCd2oQTDcPX5vdoAcGBSuBBAAloWwDagAEAYfk3ZejxpVYCG7dYHTVhhcqILEy -TYoQa4YehGPxKcbmgpqW4Wev1tEDVI3JIowICYGUowHXXzgDXoJeR79wgb7ySAlX -JXgQ8Ficr7i0CaqyAuIpFw9FWJT3jheFwnbpDTvIeIozlf4= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAYTMsTpey51D2ULnd +pN+AAWnJLy9pTerziakhjii8OyWKpUVfpDFNneCCd2oQTDcPX5vdoWwDagAEAYfk +3ZejxpVYCG7dYHTVhhcqILEyTYoQa4YehGPxKcbmgpqW4Wev1tEDVI3JIowICYGU +owHXXzgDXoJeR79wgb7ySAlXJXgQ8Ficr7i0CaqyAuIpFw9FWJT3jheFwnbpDTvI +eIozlf4= +-----END PRIVATE KEY----- PublicKey=ALICE_sect409r1_PUB -----BEGIN PUBLIC KEY----- @@ -6589,12 +6606,13 @@ a4YehGPxKcbmgpqW4Wev1tEDVI3JIowICYGUowHXXzgDXoJeR79wgb7ySAlXJXgQ -----END PUBLIC KEY----- PrivateKey=BOB_sect409r1 ------BEGIN EC PRIVATE KEY----- -MIGwAgEBBDQAsCs1nRgwW97TdKIHPRcsqmK1e8TIZ00e6rqLb3nD4sIe+Gw/fGhS -UER9akQ7lAluEUnfoAcGBSuBBAAloWwDagAEAfM2fvBEic+7jV4oC+v8GfsunD9Z -p9rzNgMp3dJ+ZU7r6Bp+ZH3dL9Uvv8kUiB89UlDlLwBm/W6TlzGuh1FnzXYKVnhn -XpzSlRZQsPCceKukbV46Asl8O23b2+DPJgQBGbMfWsgK+KA= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAsCs1nRgwW97TdKIH +PRcsqmK1e8TIZ00e6rqLb3nD4sIe+Gw/fGhSUER9akQ7lAluEUnfoWwDagAEAfM2 +fvBEic+7jV4oC+v8GfsunD9Zp9rzNgMp3dJ+ZU7r6Bp+ZH3dL9Uvv8kUiB89UlDl +LwBm/W6TlzGuh1FnzXYKVnhnXpzSlRZQsPCceKukbV46Asl8O23b2+DPJgQBGbMf +WsgK+KA= +-----END PRIVATE KEY----- PublicKey=BOB_sect409r1_PUB -----BEGIN PUBLIC KEY----- @@ -6616,14 +6634,14 @@ SharedSecret=019dc849870dc6f79978aca8e1fc6aa6836c8fcb25bbfe3d5ab41ea53eae2c73299 # TEST CURVE sect571k1 PrivateKey=ALICE_sect571k1 ------BEGIN EC PRIVATE KEY----- -MIHuAgEBBEgBE7yEjyPpNnnnr91Fx0Zi91uWcAsPZdkIq7ZzcLnJAh4DxOJ2L5/y -fpwKdvkW0k1Ngqo/y1F8eXABm1b+CJeL/jIXkra3BLegBwYFK4EEACahgZUDgZIA -BAC2K5RvPu/qeOG6OcOFqcPiJXzgrQtB33A/X6S/QGfzfecq0WtkKiaCuKnZLBRo -Rg4Tohw/IInjy9Y4q8hHp9TXW1bCwVE9TQJy3RKpVsA0AnPAvW6bC4o09uUnpkTB -wF2DDuFYUvqyH7RrIBDdrzM6LOFWIk8KdopH86gC1pSkJYtJMcMXWArj+SaXATH7 -yg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIARO8hI8j6TZ556/d +RcdGYvdblnALD2XZCKu2c3C5yQIeA8Tidi+f8n6cCnb5FtJNTYKqP8tRfHlwAZtW +/giXi/4yF5K2twS3oYGVA4GSAAQAtiuUbz7v6njhujnDhanD4iV84K0LQd9wP1+k +v0Bn833nKtFrZComgrip2SwUaEYOE6IcPyCJ48vWOKvIR6fU11tWwsFRPU0Cct0S +qVbANAJzwL1umwuKNPblJ6ZEwcBdgw7hWFL6sh+0ayAQ3a8zOizhViJPCnaKR/Oo +AtaUpCWLSTHDF1gK4/kmlwEx+8o= +-----END PRIVATE KEY----- PublicKey=ALICE_sect571k1_PUB -----BEGIN PUBLIC KEY----- @@ -6634,14 +6652,14 @@ CnaKR/OoAtaUpCWLSTHDF1gK4/kmlwEx+8o= -----END PUBLIC KEY----- PrivateKey=BOB_sect571k1 ------BEGIN EC PRIVATE KEY----- -MIHuAgEBBEgBVlPi2df10xZLpV1gKhhGX2j+P8fPsoaoXhSOT2f1vj6Zdsnfu2hu -mOek2oqUl8jTjDzQk+n43GmgFHfynVtxz2IvhKaHjxigBwYFK4EEACahgZUDgZIA -BABHMDH3JWQcvylt7WbKiwgsiGEstRFhEMeaik4iKMtCZMBNX2lg7sKsUE8GNoo1 -GM+nD9xU6zz1f0l3PH9uiWQapUCyMs3W2wKuoRPfUXiamd+w/BwzrNunqUTg3aAv -lxqQoybI80zh3ebzGXV/p7nosFh9rE5qpxjNtcJD8CKKPXcfTqoqG4UziKIH/QPX -rg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAVZT4tnX9dMWS6Vd +YCoYRl9o/j/Hz7KGqF4Ujk9n9b4+mXbJ37tobpjnpNqKlJfI04w80JPp+NxpoBR3 +8p1bcc9iL4Smh48YoYGVA4GSAAQARzAx9yVkHL8pbe1myosILIhhLLURYRDHmopO +IijLQmTATV9pYO7CrFBPBjaKNRjPpw/cVOs89X9Jdzx/bolkGqVAsjLN1tsCrqET +31F4mpnfsPwcM6zbp6lE4N2gL5cakKMmyPNM4d3m8xl1f6e56LBYfaxOaqcYzbXC +Q/Aiij13H06qKhuFM4iiB/0D164= +-----END PRIVATE KEY----- PublicKey=BOB_sect571k1_PUB -----BEGIN PUBLIC KEY----- @@ -6664,14 +6682,14 @@ SharedSecret=05a423515fcc91b3171c83edd5c4085ff729a8ff0a3fa1578ebf769523ded0f5c1e # TEST CURVE sect571r1 PrivateKey=ALICE_sect571r1 ------BEGIN EC PRIVATE KEY----- -MIHuAgEBBEgCuyL/9mn2955RFhXMZgefgyU0jE23pTq+2ZM9L81qiJpq/Fs6Kake -DFg8KOmg9iEzfdnZUGHumXZqhFbcYF6ksUugXyiJBougBwYFK4EEACehgZUDgZIA -BANEbZvsoJQpsYNNZWBbSqo0LehhzPh/8DBMeahRLWbN1FmP9J/ohT7uYhMadDqW -DUSRNqz9fpMrWE0xXu0CNJ6jB03vnDN3xgXfZIUcwhxZ7DmDnqgX3rWq/ci8gJmd -EA6ZbIYd4d1jAfEwFIE82C5rjZAagnPonp1gBR68T4Xc3b2n+1EEY3MwUiqgN1b4 -0A== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIArsi//Zp9veeURYV +zGYHn4MlNIxNt6U6vtmTPS/NaoiaavxbOimpHgxYPCjpoPYhM33Z2VBh7pl2aoRW +3GBepLFLoF8oiQaLoYGVA4GSAAQDRG2b7KCUKbGDTWVgW0qqNC3oYcz4f/AwTHmo +US1mzdRZj/Sf6IU+7mITGnQ6lg1EkTas/X6TK1hNMV7tAjSeowdN75wzd8YF32SF +HMIcWew5g56oF961qv3IvICZnRAOmWyGHeHdYwHxMBSBPNgua42QGoJz6J6dYAUe +vE+F3N29p/tRBGNzMFIqoDdW+NA= +-----END PRIVATE KEY----- PublicKey=ALICE_sect571r1_PUB -----BEGIN PUBLIC KEY----- @@ -6682,14 +6700,14 @@ d8YF32SFHMIcWew5g56oF961qv3IvICZnRAOmWyGHeHdYwHxMBSBPNgua42QGoJz -----END PUBLIC KEY----- PrivateKey=BOB_sect571r1 ------BEGIN EC PRIVATE KEY----- -MIHuAgEBBEgBiPrk3lclNC6yf6Fn3GP92BnipHUYMLUiPuNi6jD5O8asbbDP9ZPv -r+Us22UIt8NbaQ4MNSYMAl4r975Uw7uy4lNcaesYUeKgBwYFK4EEACehgZUDgZIA -BAbHKRgXGrPuNnFwFuI8th8kSFeV/ZJiYwq97vi2s5P6qMibfn65QByDaSs7Mftf -/zAfptVKf9Qob+TbvBmsCdbNnlcp3xAjvQfxoe8uCsKgyio6ej6HonhOC+UOrsUg -Znx+8Noztgnx0c9fkULxXKmG7zZNw12c0BMGqibpYNZztFMVniyKMvnLBWGi/AnW -AA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAYj65N5XJTQusn+h +Z9xj/dgZ4qR1GDC1Ij7jYuow+TvGrG2wz/WT76/lLNtlCLfDW2kODDUmDAJeK/e+ +VMO7suJTXGnrGFHioYGVA4GSAAQGxykYFxqz7jZxcBbiPLYfJEhXlf2SYmMKve74 +trOT+qjIm35+uUAcg2krOzH7X/8wH6bVSn/UKG/k27wZrAnWzZ5XKd8QI70H8aHv +LgrCoMoqOno+h6J4TgvlDq7FIGZ8fvDaM7YJ8dHPX5FC8Vyphu82TcNdnNATBqom +6WDWc7RTFZ4sijL5ywVhovwJ1gA= +-----END PRIVATE KEY----- PublicKey=BOB_sect571r1_PUB -----BEGIN PUBLIC KEY----- @@ -6712,10 +6730,11 @@ SharedSecret=004b397e564055e2c7d87648183c948655ccb0ebb20bd441f9b11635cf461cb5815 # TEST CURVE c2pnb163v1 PrivateKey=ALICE_c2pnb163v1 ------BEGIN EC PRIVATE KEY----- -MFYCAQEEFQNNUFcMh0wyDkkhvrJkcumQ41q7O6AKBggqhkjOPQMAAaEuAywABAL9 -NoyLZgZjhKZhUKshVWiaYOc7IwclnVVnj59P6ET+pGlYcwxbmA5k7g== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAEETDBKAgEBBBUDTVBXDIdMMg5JIb6y +ZHLpkONauzuhLgMsAAQC/TaMi2YGY4SmYVCrIVVommDnOyMHJZ1VZ4+fT+hE/qRp +WHMMW5gOZO4= +-----END PRIVATE KEY----- PublicKey=ALICE_c2pnb163v1_PUB -----BEGIN PUBLIC KEY----- @@ -6724,10 +6743,11 @@ ByWdVWePn0/oRP6kaVhzDFuYDmTu -----END PUBLIC KEY----- PrivateKey=BOB_c2pnb163v1 ------BEGIN EC PRIVATE KEY----- -MFYCAQEEFQLe4QB8Zzf5rQU6sWF+11QG1nkE86AKBggqhkjOPQMAAaEuAywABAai -MqSGc525RBjpdPQbBBsN7VgzXAWSPe9kaSE7k7OyobVCpAuQV4zAqg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAEETDBKAgEBBBUC3uEAfGc3+a0FOrFh +ftdUBtZ5BPOhLgMsAAQGojKkhnOduUQY6XT0GwQbDe1YM1wFkj3vZGkhO5OzsqG1 +QqQLkFeMwKo= +-----END PRIVATE KEY----- PublicKey=BOB_c2pnb163v1_PUB -----BEGIN PUBLIC KEY----- @@ -6748,10 +6768,11 @@ SharedSecret=05939a47cb503656e684f433001e45776c7620e13b # TEST CURVE c2pnb163v2 PrivateKey=ALICE_c2pnb163v2 ------BEGIN EC PRIVATE KEY----- -MFYCAQEEFQLebeZ4k1uEPDAUfcL/8vYTI5A2u6AKBggqhkjOPQMAAqEuAywABAFo -BM6I9XpzyJwFhZzMtczqT63xTgUg3nuKILxGyYhLf5XIz+s3dQFlrA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAIETDBKAgEBBBUC3m3meJNbhDwwFH3C +//L2EyOQNruhLgMsAAQBaATOiPV6c8icBYWczLXM6k+t8U4FIN57iiC8RsmIS3+V +yM/rN3UBZaw= +-----END PRIVATE KEY----- PublicKey=ALICE_c2pnb163v2_PUB -----BEGIN PUBLIC KEY----- @@ -6760,10 +6781,11 @@ BSDee4ogvEbJiEt/lcjP6zd1AWWs -----END PUBLIC KEY----- PrivateKey=BOB_c2pnb163v2 ------BEGIN EC PRIVATE KEY----- -MFYCAQEEFQG938O8qFqvLByRJpZoCeIoHJcHCKAKBggqhkjOPQMAAqEuAywABAfT -4VZ7iZvXdCsRkI/B8hL6AKERegaHIFW5u3r5JKBLmdJ4MaCNb/fpDA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAIETDBKAgEBBBUBvd/DvKharywckSaW +aAniKByXBwihLgMsAAQH0+FWe4mb13QrEZCPwfIS+gChEXoGhyBVubt6+SSgS5nS +eDGgjW/36Qw= +-----END PRIVATE KEY----- PublicKey=BOB_c2pnb163v2_PUB -----BEGIN PUBLIC KEY----- @@ -6784,10 +6806,11 @@ SharedSecret=0779fb5f6ac7892f2f342b785d71244e0b03ca562d # TEST CURVE c2pnb163v3 PrivateKey=ALICE_c2pnb163v3 ------BEGIN EC PRIVATE KEY----- -MFYCAQEEFQK0nRlAwPlPpib+NnEXNv21CQs6G6AKBggqhkjOPQMAA6EuAywABATb -pgPuEb4JjTb6cEMUogGcy8dZRAZ+SIh8b3LFX4um04wJ1TjL1GEz7A== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAMETDBKAgEBBBUCtJ0ZQMD5T6Ym/jZx +Fzb9tQkLOhuhLgMsAAQE26YD7hG+CY02+nBDFKIBnMvHWUQGfkiIfG9yxV+LptOM +CdU4y9RhM+w= +-----END PRIVATE KEY----- PublicKey=ALICE_c2pnb163v3_PUB -----BEGIN PUBLIC KEY----- @@ -6796,10 +6819,11 @@ Bn5IiHxvcsVfi6bTjAnVOMvUYTPs -----END PUBLIC KEY----- PrivateKey=BOB_c2pnb163v3 ------BEGIN EC PRIVATE KEY----- -MFYCAQEEFQH0ydhH01czw6gKto6itDPUtchkkKAKBggqhkjOPQMAA6EuAywABAfX -lH/EAbKu2aD6Gt0Boaf2tUR9ZADvJQKfi8pHZ4jL+o1h9t4dMhpMFg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAMETDBKAgEBBBUB9MnYR9NXM8OoCraO +orQz1LXIZJChLgMsAAQH15R/xAGyrtmg+hrdAaGn9rVEfWQA7yUCn4vKR2eIy/qN +YfbeHTIaTBY= +-----END PRIVATE KEY----- PublicKey=BOB_c2pnb163v3_PUB -----BEGIN PUBLIC KEY----- @@ -6820,10 +6844,11 @@ SharedSecret=02bf68863a8798e72cdc9cd3b9ce731f12654bfa81 # TEST CURVE c2pnb176v1 PrivateKey=ALICE_c2pnb176v1 ------BEGIN EC PRIVATE KEY----- -MFgCAQEEFQDFcTPU+O2GqwjrriU3ktEs3wLa7KAKBggqhkjOPQMABKEwAy4ABEPW -pUkdsvkDsGEQp4dK4N5Ppd5nc4MWf15/rup0X61LunfOBcYq3ikoyhhy ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGgCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAQETjBMAgEBBBUAxXEz1PjthqsI664l +N5LRLN8C2uyhMAMuAARD1qVJHbL5A7BhEKeHSuDeT6XeZ3ODFn9ef67qdF+tS7p3 +zgXGKt4pKMoYcg== +-----END PRIVATE KEY----- PublicKey=ALICE_c2pnb176v1_PUB -----BEGIN PUBLIC KEY----- @@ -6832,10 +6857,11 @@ gxZ/Xn+u6nRfrUu6d84FxireKSjKGHI= -----END PUBLIC KEY----- PrivateKey=BOB_c2pnb176v1 ------BEGIN EC PRIVATE KEY----- -MFgCAQEEFQAm8ccVbS/79yNot3teC3oW1KBrn6AKBggqhkjOPQMABKEwAy4ABJSz -utQCW/WqGmkjzaKQu9nxjQMCkLfnqeGztLJBh0u0dEz6pQcEHcjOssp1 ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGgCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAQETjBMAgEBBBUAJvHHFW0v+/cjaLd7 +Xgt6FtSga5+hMAMuAASUs7rUAlv1qhppI82ikLvZ8Y0DApC356nhs7SyQYdLtHRM ++qUHBB3IzrLKdQ== +-----END PRIVATE KEY----- PublicKey=BOB_c2pnb176v1_PUB -----BEGIN PUBLIC KEY----- @@ -6856,11 +6882,11 @@ SharedSecret=b204734417542df762e09013d6ba958940837a2aa25a # TEST CURVE c2tnb191v1 PrivateKey=ALICE_c2tnb191v1 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGBiCk77CCKtS26ocXTTajTZVzvFCMqBLMKAKBggqhkjOPQMABaE0AzIA -BDZp77m0NDYINpXlc90L5G0uBwdLmVM5yVMKWv9ZKk9OUy3ZMaH8pGsPzn2heDop -hg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAUEVTBTAgEBBBgYgpO+wgirUtuqHF00 +2o02Vc7xQjKgSzChNAMyAAQ2ae+5tDQ2CDaV5XPdC+RtLgcHS5lTOclTClr/WSpP +TlMt2TGh/KRrD859oXg6KYY= +-----END PRIVATE KEY----- PublicKey=ALICE_c2tnb191v1_PUB -----BEGIN PUBLIC KEY----- @@ -6869,11 +6895,11 @@ UznJUwpa/1kqT05TLdkxofykaw/OfaF4OimG -----END PUBLIC KEY----- PrivateKey=BOB_c2tnb191v1 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGC7Obm4U1HL+Vfc4q4mPyL+8f/6+Ix3jzKAKBggqhkjOPQMABaE0AzIA -BGRrmuF1Oa1upBVExZlCNSqwdQxfjeyJG3l/ZZBJl+D4hDaX/y95rLJf16tRK3eA -rg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAUEVTBTAgEBBBguzm5uFNRy/lX3OKuJ +j8i/vH/+viMd48yhNAMyAARka5rhdTmtbqQVRMWZQjUqsHUMX43siRt5f2WQSZfg ++IQ2l/8veayyX9erUSt3gK4= +-----END PRIVATE KEY----- PublicKey=BOB_c2tnb191v1_PUB -----BEGIN PUBLIC KEY----- @@ -6894,11 +6920,11 @@ SharedSecret=7a30d30acd3b067f38bb3be9e8cdef739483df26455e36e1 # TEST CURVE c2tnb191v2 PrivateKey=ALICE_c2tnb191v2 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGA6WyWAnRdIre8oLkuxCZjFl+vw4QpdFDaAKBggqhkjOPQMABqE0AzIA -BAAeK8uFLBbZIlm1Q+G5XWn19BJ/PvD1Iljx0k6lV/z0N689SUkw9xpIbKNf7ecl -lw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAYEVTBTAgEBBBgOlslgJ0XSK3vKC5Ls +QmYxZfr8OEKXRQ2hNAMyAAQAHivLhSwW2SJZtUPhuV1p9fQSfz7w9SJY8dJOpVf8 +9DevPUlJMPcaSGyjX+3nJZc= +-----END PRIVATE KEY----- PublicKey=ALICE_c2tnb191v2_PUB -----BEGIN PUBLIC KEY----- @@ -6907,11 +6933,11 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAYDMgAEAB4ry4UsFtkiWbVD4bldafX0En8+ -----END PUBLIC KEY----- PrivateKey=BOB_c2tnb191v2 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGAr1BpLZINTrLPu5eo77/4L5tpNNUwAZUaAKBggqhkjOPQMABqE0AzIA -BCJHS32mWbvt7N9e8nMM12XJgLSlZf5CYnwRq+AQSWSTL8z5hdvm5+QXMVcgR9T2 -kw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAYEVTBTAgEBBBgK9QaS2SDU6yz7uXqO ++/+C+baTTVMAGVGhNAMyAAQiR0t9plm77ezfXvJzDNdlyYC0pWX+QmJ8EavgEElk +ky/M+YXb5ufkFzFXIEfU9pM= +-----END PRIVATE KEY----- PublicKey=BOB_c2tnb191v2_PUB -----BEGIN PUBLIC KEY----- @@ -6932,11 +6958,11 @@ SharedSecret=5ec2b6ccd193620dbad302c4ad8f8909a40698bf454d7534 # TEST CURVE c2tnb191v3 PrivateKey=ALICE_c2tnb191v3 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGBJoE5DKrpdfeFlVWBUWVGvFO6+C2/fcLqAKBggqhkjOPQMAB6E0AzIA -BEv4W6nyM6eLFBg/HylT9vTro8euFNd+I16sURgD/k5cIoISR1EKm4MmfKqmZoLa -/A== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAcEVTBTAgEBBBgSaBOQyq6XX3hZVVgV +FlRrxTuvgtv33C6hNAMyAARL+Fup8jOnixQYPx8pU/b066PHrhTXfiNerFEYA/5O +XCKCEkdRCpuDJnyqpmaC2vw= +-----END PRIVATE KEY----- PublicKey=ALICE_c2tnb191v3_PUB -----BEGIN PUBLIC KEY----- @@ -6945,11 +6971,11 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAcDMgAES/hbqfIzp4sUGD8fKVP29Oujx64U -----END PUBLIC KEY----- PrivateKey=BOB_c2tnb191v3 ------BEGIN EC PRIVATE KEY----- -MF8CAQEEGAQTwuzulzX+rf/Su5GAytYaEYivhUu3i6AKBggqhkjOPQMAB6E0AzIA -BAcBmyOQBdqfAZtdHdIqSgqWLqtJ9KK7SVTZccOJl20to834SKHPgp4bZgz+nebV -2g== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAcEVTBTAgEBBBgEE8Ls7pc1/q3/0ruR +gMrWGhGIr4VLt4uhNAMyAAQHAZsjkAXanwGbXR3SKkoKli6rSfSiu0lU2XHDiZdt +LaPN+Eihz4KeG2YM/p3m1do= +-----END PRIVATE KEY----- PublicKey=BOB_c2tnb191v3_PUB -----BEGIN PUBLIC KEY----- @@ -6970,11 +6996,11 @@ SharedSecret=39093dc8a2e6724a6206ed41bb99490d527d80c902c41891 # TEST CURVE c2pnb208w1 PrivateKey=ALICE_c2pnb208w1 ------BEGIN EC PRIVATE KEY----- -MGQCAQEEGQBt+c1uhfoOT40ugE7qoEHZoTWyuZOBL3qgCgYIKoZIzj0DAAqhOAM2 -AAQUsdyIC7h7FxgHSa3LysXjjZQtdl+ov3QiSA/kbbPDNjWYCUQEUyDzeLN5FoIn -+9GKFkMn ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHQCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAoEWjBYAgEBBBkAbfnNboX6Dk+NLoBO +6qBB2aE1srmTgS96oTgDNgAEFLHciAu4excYB0mty8rF442ULXZfqL90IkgP5G2z +wzY1mAlEBFMg83izeRaCJ/vRihZDJw== +-----END PRIVATE KEY----- PublicKey=ALICE_c2pnb208w1_PUB -----BEGIN PUBLIC KEY----- @@ -6983,11 +7009,11 @@ qL90IkgP5G2zwzY1mAlEBFMg83izeRaCJ/vRihZDJw== -----END PUBLIC KEY----- PrivateKey=BOB_c2pnb208w1 ------BEGIN EC PRIVATE KEY----- -MGQCAQEEGQDCMYUk4+RmpA9n6YgB7cbXbOlSJrjS1GOgCgYIKoZIzj0DAAqhOAM2 -AAQPFo/q7SmEMt8zhGxmGAh9nLwK6tHj8g+2owbFt/Ok8o8xldXXYXoytauitIUN -nwoV3nxb ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHQCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAoEWjBYAgEBBBkAwjGFJOPkZqQPZ+mI +Ae3G12zpUia40tRjoTgDNgAEDxaP6u0phDLfM4RsZhgIfZy8CurR4/IPtqMGxbfz +pPKPMZXV12F6MrWrorSFDZ8KFd58Ww== +-----END PRIVATE KEY----- PublicKey=BOB_c2pnb208w1_PUB -----BEGIN PUBLIC KEY----- @@ -7008,11 +7034,11 @@ SharedSecret=59bf3c91bd168d4d4d900d9ce155933045e0fd16dcf0511bb5af # TEST CURVE c2tnb239v1 PrivateKey=ALICE_c2tnb239v1 ------BEGIN EC PRIVATE KEY----- -MHECAQEEHhOAgsFxCrD9wnywvwy0khfZX8jmjUrkF5qva8y6sKAKBggqhkjOPQMA -C6FAAz4ABDOqECLFybPgDSkKRdw8wXRuBXUuQ0vqqXOX1U7GYiOBQFgl1L88z00Q -Hsd8MLxf+Ca2CunClYfItRDqzQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwALBGcwZQIBAQQeE4CCwXEKsP3CfLC/ +DLSSF9lfyOaNSuQXmq9rzLqwoUADPgAEM6oQIsXJs+ANKQpF3DzBdG4FdS5DS+qp +c5fVTsZiI4FAWCXUvzzPTRAex3wwvF/4JrYK6cKVh8i1EOrN +-----END PRIVATE KEY----- PublicKey=ALICE_c2tnb239v1_PUB -----BEGIN PUBLIC KEY----- @@ -7021,11 +7047,11 @@ S+qpc5fVTsZiI4FAWCXUvzzPTRAex3wwvF/4JrYK6cKVh8i1EOrN -----END PUBLIC KEY----- PrivateKey=BOB_c2tnb239v1 ------BEGIN EC PRIVATE KEY----- -MHECAQEEHgBg2AhgF6g9N8eddId+SUs5YEXlulv0/JWDxAONnaAKBggqhkjOPQMA -C6FAAz4ABApOlMofFC5DlTsWUjWWBsLZKP6Mu2SwzxfHW7BGU3mCAaUOoVqmf+Dc -90cs36LpMnwm92/DjLaavkIIqA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwALBGcwZQIBAQQeAGDYCGAXqD03x510 +h35JSzlgReW6W/T8lYPEA42doUADPgAECk6Uyh8ULkOVOxZSNZYGwtko/oy7ZLDP +F8dbsEZTeYIBpQ6hWqZ/4Nz3RyzfoukyfCb3b8OMtpq+Qgio +-----END PRIVATE KEY----- PublicKey=BOB_c2tnb239v1_PUB -----BEGIN PUBLIC KEY----- @@ -7046,11 +7072,11 @@ SharedSecret=78c42256900725df9a47bb042cef7dad9f639b32e3010738a144e7472d1a # TEST CURVE c2tnb239v2 PrivateKey=ALICE_c2tnb239v2 ------BEGIN EC PRIVATE KEY----- -MHECAQEEHhPJAYxy4xXgvmdoGatLJ8Ed1IBIFjFtMYpYSTY1tqAKBggqhkjOPQMA -DKFAAz4ABEPrmyGIYfNlaIcCklc+9D5B7I5mFg7w1P0gUZPAIj+9QjPQ+1xCiubZ -1PeDLStirHMeZ1mRXPqCIdfrGA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwAMBGcwZQIBAQQeE8kBjHLjFeC+Z2gZ +q0snwR3UgEgWMW0xilhJNjW2oUADPgAEQ+ubIYhh82VohwKSVz70PkHsjmYWDvDU +/SBRk8AiP71CM9D7XEKK5tnU94MtK2Kscx5nWZFc+oIh1+sY +-----END PRIVATE KEY----- PublicKey=ALICE_c2tnb239v2_PUB -----BEGIN PUBLIC KEY----- @@ -7059,11 +7085,11 @@ DvDU/SBRk8AiP71CM9D7XEKK5tnU94MtK2Kscx5nWZFc+oIh1+sY -----END PUBLIC KEY----- PrivateKey=BOB_c2tnb239v2 ------BEGIN EC PRIVATE KEY----- -MHECAQEEHhO24cymWVJu/NHNHtxAVmNRsQ/dDM7u860DIu2wM6AKBggqhkjOPQMA -DKFAAz4ABGIFe26JGOoizM2UxtdHOjQ2ltdaZQJtEzSlVcMz6nt8pYbEJpptNixy -l9IDeBNXVEtLgpQWzBjatpoZZw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwAMBGcwZQIBAQQeE7bhzKZZUm780c0e +3EBWY1GxD90Mzu7zrQMi7bAzoUADPgAEYgV7bokY6iLMzZTG10c6NDaW11plAm0T +NKVVwzPqe3ylhsQmmm02LHKX0gN4E1dUS0uClBbMGNq2mhln +-----END PRIVATE KEY----- PublicKey=BOB_c2tnb239v2_PUB -----BEGIN PUBLIC KEY----- @@ -7084,11 +7110,11 @@ SharedSecret=4ba2ecfa8ec7a375594d1673886cccf96d7763c55611b3c9008a35160192 # TEST CURVE c2tnb239v3 PrivateKey=ALICE_c2tnb239v3 ------BEGIN EC PRIVATE KEY----- -MHECAQEEHgsYguZWx2C9UGG29os2YkqCz51gmSHbPNdSdTeyraAKBggqhkjOPQMA -DaFAAz4ABHRzM/rbLju1XDvSBYLElk8Hi6AdWoeViIOnFq7XFH5juxBnz8DZ4uAX -/DaO6xhjMG4rFtL+ib9qZE0jPA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwANBGcwZQIBAQQeCxiC5lbHYL1QYbb2 +izZiSoLPnWCZIds811J1N7KtoUADPgAEdHMz+tsuO7VcO9IFgsSWTweLoB1ah5WI +g6cWrtcUfmO7EGfPwNni4Bf8No7rGGMwbisW0v6Jv2pkTSM8 +-----END PRIVATE KEY----- PublicKey=ALICE_c2tnb239v3_PUB -----BEGIN PUBLIC KEY----- @@ -7097,11 +7123,11 @@ h5WIg6cWrtcUfmO7EGfPwNni4Bf8No7rGGMwbisW0v6Jv2pkTSM8 -----END PUBLIC KEY----- PrivateKey=BOB_c2tnb239v3 ------BEGIN EC PRIVATE KEY----- -MHECAQEEHgQT8XXlNzKIWXOSce1mnS7j0nl3joO+a1wtRJXsbKAKBggqhkjOPQMA -DaFAAz4ABGh8IsEJqKmz4o/PpeoSx1UM9AGSwU+bl4QIfH4UwASqiO6mEoSAgAF9 -Lb7txL0PAUCz9eIK8VLEqBKgBQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwANBGcwZQIBAQQeBBPxdeU3MohZc5Jx +7WadLuPSeXeOg75rXC1ElexsoUADPgAEaHwiwQmoqbPij8+l6hLHVQz0AZLBT5uX +hAh8fhTABKqI7qYShICAAX0tvu3EvQ8BQLP14grxUsSoEqAF +-----END PRIVATE KEY----- PublicKey=BOB_c2tnb239v3_PUB -----BEGIN PUBLIC KEY----- @@ -7122,11 +7148,11 @@ SharedSecret=47ad60e5480375fccd9246c93ab04da8e5da83e1dbf5f177f10a47cb54a0 # TEST CURVE c2pnb272w1 PrivateKey=ALICE_c2pnb272w1 ------BEGIN EC PRIVATE KEY----- -MHwCAQEEIQCjLSnXRDVRo801OMPoVtEoAzrSBJXLOdsG+NEtPI+oDKAKBggqhkjO -PQMAEKFIA0YABHxr0s0KPtNFVyA11e4ohl6SNepM7OgvK5HIQObFQQWOep0gqdJ+ -BaSF0c2n4hUJJSQ/TqycwOj13O7adp9l4SML7jpi ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGMAgEAMBMGByqGSM49AgEGCCqGSM49AwAQBHIwcAIBAQQhAKMtKddENVGjzTU4 +w+hW0SgDOtIElcs52wb40S08j6gMoUgDRgAEfGvSzQo+00VXIDXV7iiGXpI16kzs +6C8rkchA5sVBBY56nSCp0n4FpIXRzafiFQklJD9OrJzA6PXc7tp2n2XhIwvuOmI= +-----END PRIVATE KEY----- PublicKey=ALICE_c2pnb272w1_PUB -----BEGIN PUBLIC KEY----- @@ -7135,11 +7161,11 @@ MF0wEwYHKoZIzj0CAQYIKoZIzj0DABADRgAEfGvSzQo+00VXIDXV7iiGXpI16kzs -----END PUBLIC KEY----- PrivateKey=BOB_c2pnb272w1 ------BEGIN EC PRIVATE KEY----- -MHwCAQEEIQBQCjwcl9cJWFKVOJhAgwMYPlTOWhaOCT5ahM0dG/YSOqAKBggqhkjO -PQMAEKFIA0YABC/PvOtyFOLsWxGPI1QY4bKxuFugBTBerfmhr6Iih7RDC0GulNef -E0WqQ1qeHkbq5uiHb7+4XqQj6jjBBskg1MDBAokD ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGMAgEAMBMGByqGSM49AgEGCCqGSM49AwAQBHIwcAIBAQQhAFAKPByX1wlYUpU4 +mECDAxg+VM5aFo4JPlqEzR0b9hI6oUgDRgAEL8+863IU4uxbEY8jVBjhsrG4W6AF +MF6t+aGvoiKHtEMLQa6U158TRapDWp4eRurm6Idvv7hepCPqOMEGySDUwMECiQM= +-----END PRIVATE KEY----- PublicKey=BOB_c2pnb272w1_PUB -----BEGIN PUBLIC KEY----- @@ -7160,11 +7186,12 @@ SharedSecret=3ae063b2bed6ba8aa28ff35e9bd2673f22ee8087860c86b89429a5b52538216632a # TEST CURVE c2pnb304w1 PrivateKey=ALICE_c2pnb304w1 ------BEGIN EC PRIVATE KEY----- -MIGIAgEBBCUA4rN9xXZc69WxJSGhXPdIcbNIJ/Sr2L6KXPll8HFz7myyMruMoAoG -CCqGSM49AwARoVADTgAENzjNA0Vpm6SP2LPeJdNh3Nq0I5hm+t86OtuDOX/w+gXG -3mrrIlO7flW71dWnmlMK2OkMSnLAGPTFvTtFG5UMSTxO2EU/m8Z5MhYsPg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGYAgEAMBMGByqGSM49AgEGCCqGSM49AwARBH4wfAIBAQQlAOKzfcV2XOvVsSUh +oVz3SHGzSCf0q9i+ilz5ZfBxc+5ssjK7jKFQA04ABDc4zQNFaZukj9iz3iXTYdza +tCOYZvrfOjrbgzl/8PoFxt5q6yJTu35Vu9XVp5pTCtjpDEpywBj0xb07RRuVDEk8 +TthFP5vGeTIWLD4= +-----END PRIVATE KEY----- PublicKey=ALICE_c2pnb304w1_PUB -----BEGIN PUBLIC KEY----- @@ -7174,11 +7201,12 @@ m8Z5MhYsPg== -----END PUBLIC KEY----- PrivateKey=BOB_c2pnb304w1 ------BEGIN EC PRIVATE KEY----- -MIGIAgEBBCUA8/iHPqxr4p1MniF8F4JSIkF+yFxmhqmRkwWuEjW91xFjsx4BoAoG -CCqGSM49AwARoVADTgAEwdFTMuJRjs7icQF2Z7HfVTiXpM790P7kxX+1U2LNWxaO -RO+LZ+zvvaVn0x42npCcYxnmfmy5sexrRA4kvUumZdcrRQhYZtbSdBvnaA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGYAgEAMBMGByqGSM49AgEGCCqGSM49AwARBH4wfAIBAQQlAPP4hz6sa+KdTJ4h +fBeCUiJBfshcZoapkZMFrhI1vdcRY7MeAaFQA04ABMHRUzLiUY7O4nEBdmex31U4 +l6TO/dD+5MV/tVNizVsWjkTvi2fs772lZ9MeNp6QnGMZ5n5subHsa0QOJL1LpmXX +K0UIWGbW0nQb52g= +-----END PRIVATE KEY----- PublicKey=BOB_c2pnb304w1_PUB -----BEGIN PUBLIC KEY----- @@ -7200,12 +7228,12 @@ SharedSecret=6df88b20de9f095c7632234291ea4658a9265cd2293424e11ed56705b09a069f09d # TEST CURVE c2tnb359v1 PrivateKey=ALICE_c2tnb359v1 ------BEGIN EC PRIVATE KEY----- -MIGeAgEBBC0BeMU97SvjsIvQ1v+Ztf56OCL8JXHxRJDQZ5gWEa4c2b3FZXFVC4Cw -EPd7cB+gCgYIKoZIzj0DABKhXgNcAAQOBgLp0TzS4Hf/VYbJCFuj3OlRC5JMzFV7 -ox41ubhl5Ij+gHIodu1bQ6cqd0YAb2/30PxwX++NNpFvq8u8435zhPYXsut6txOP -NU5ZzCeagy2xsKacXSZc7D0= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGwAgEAMBMGByqGSM49AgEGCCqGSM49AwASBIGVMIGSAgEBBC0BeMU97SvjsIvQ +1v+Ztf56OCL8JXHxRJDQZ5gWEa4c2b3FZXFVC4CwEPd7cB+hXgNcAAQOBgLp0TzS +4Hf/VYbJCFuj3OlRC5JMzFV7ox41ubhl5Ij+gHIodu1bQ6cqd0YAb2/30PxwX++N +NpFvq8u8435zhPYXsut6txOPNU5ZzCeagy2xsKacXSZc7D0= +-----END PRIVATE KEY----- PublicKey=ALICE_c2tnb359v1_PUB -----BEGIN PUBLIC KEY----- @@ -7215,12 +7243,12 @@ ercTjzVOWcwnmoMtsbCmnF0mXOw9 -----END PUBLIC KEY----- PrivateKey=BOB_c2tnb359v1 ------BEGIN EC PRIVATE KEY----- -MIGeAgEBBC0BRZ3IIh3mrLIXKBbh6Vj7TXNY5bzRuD5/ayHPlHQkJcd8K66dOqu7 -hgaN91GgCgYIKoZIzj0DABKhXgNcAAQ7njbTQ2xYYZtkKswYr8E6P/R3Dg/XEZgQ -Q72B4qXnqbK/SgYsZAntFg7CRztcTkHjKAgdSz6fTRIc4///gwXN3Oi6D8Peswhz -PJi/uLmCAHMm3GT6SUO3aTY= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGwAgEAMBMGByqGSM49AgEGCCqGSM49AwASBIGVMIGSAgEBBC0BRZ3IIh3mrLIX +KBbh6Vj7TXNY5bzRuD5/ayHPlHQkJcd8K66dOqu7hgaN91GhXgNcAAQ7njbTQ2xY +YZtkKswYr8E6P/R3Dg/XEZgQQ72B4qXnqbK/SgYsZAntFg7CRztcTkHjKAgdSz6f +TRIc4///gwXN3Oi6D8PeswhzPJi/uLmCAHMm3GT6SUO3aTY= +-----END PRIVATE KEY----- PublicKey=BOB_c2tnb359v1_PUB -----BEGIN PUBLIC KEY----- @@ -7242,12 +7270,12 @@ SharedSecret=1d3f3396492d130caea54233c79833e90a072fe883071bb08cec671ce0319f0bc39 # TEST CURVE c2pnb368w1 PrivateKey=ALICE_c2pnb368w1 ------BEGIN EC PRIVATE KEY----- -MIGgAgEBBC0AFagbth/4/M2sb1G4FpxbFEVLIulioS34v0hrClpZ38/Z+PHmIhOf -EFminyegCgYIKoZIzj0DABOhYANeAAQAU42w7mIIjkyAdnCC4qoEPdH42fh3oVyC -tnaRtKUmdhUdXm0IgSM4T4SYEOsx+aQZLGIjnhHJCabcaKPQ0sai3dirUr2YsNXN -DJiU93T7buUr+DnRPGsfBy/nEg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGyAgEAMBMGByqGSM49AgEGCCqGSM49AwATBIGXMIGUAgEBBC0AFagbth/4/M2s +b1G4FpxbFEVLIulioS34v0hrClpZ38/Z+PHmIhOfEFminyehYANeAAQAU42w7mII +jkyAdnCC4qoEPdH42fh3oVyCtnaRtKUmdhUdXm0IgSM4T4SYEOsx+aQZLGIjnhHJ +CabcaKPQ0sai3dirUr2YsNXNDJiU93T7buUr+DnRPGsfBy/nEg== +-----END PRIVATE KEY----- PublicKey=ALICE_c2pnb368w1_PUB -----BEGIN PUBLIC KEY----- @@ -7257,12 +7285,12 @@ mLDVzQyYlPd0+27lK/g50TxrHwcv5xI= -----END PUBLIC KEY----- PrivateKey=BOB_c2pnb368w1 ------BEGIN EC PRIVATE KEY----- -MIGgAgEBBC0AA/woMzOFy8k2zBqBkubhkOIwc7sx0u+JadM9f7V45L4P8nK7bjJa -sOqrHRagCgYIKoZIzj0DABOhYANeAATKE6jcstacH8yWzg/qBgvGoGan2PVwTN/U -+68K4WxHO7+oPHviUh1OVF7ZxYjsVSdyno83iHE33sq2Ej6j26f+uVs/fuWk19t8 -NpAQ6+sVETZszuMDm5adqtVZRQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGyAgEAMBMGByqGSM49AgEGCCqGSM49AwATBIGXMIGUAgEBBC0AA/woMzOFy8k2 +zBqBkubhkOIwc7sx0u+JadM9f7V45L4P8nK7bjJasOqrHRahYANeAATKE6jcstac +H8yWzg/qBgvGoGan2PVwTN/U+68K4WxHO7+oPHviUh1OVF7ZxYjsVSdyno83iHE3 +3sq2Ej6j26f+uVs/fuWk19t8NpAQ6+sVETZszuMDm5adqtVZRQ== +-----END PRIVATE KEY----- PublicKey=BOB_c2pnb368w1_PUB -----BEGIN PUBLIC KEY----- @@ -7284,12 +7312,13 @@ SharedSecret=d191710b156d1b1d14242843a7f0abf28060bbb9e655655b53852a8b0f250ef1eee # TEST CURVE c2tnb431r1 PrivateKey=ALICE_c2tnb431r1 ------BEGIN EC PRIVATE KEY----- -MIG4AgEBBDUC18JhUt+NCIZ/q6kdjNZ7zX72UqpW4K6Uc2bAWu2PXK1aL573LNzu -4oUlHfbvuE1BUrxNpaAKBggqhkjOPQMAFKFwA24ABDrG8SG4lckR1rrvLRpXYf7W -spmh/fbql+Zpulyl896XtwQK2BkLVRkZ5ixTG4PUyb64OiffdSnvIaM++cb7LgJL -BBgT3d5le8V1gtxWFFm0NggUyF6glmUqHQL0LuhXWS468O6w05KS0AL6vQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIHKAgEAMBMGByqGSM49AgEGCCqGSM49AwAUBIGvMIGsAgEBBDUC18JhUt+NCIZ/ +q6kdjNZ7zX72UqpW4K6Uc2bAWu2PXK1aL573LNzu4oUlHfbvuE1BUrxNpaFwA24A +BDrG8SG4lckR1rrvLRpXYf7Wspmh/fbql+Zpulyl896XtwQK2BkLVRkZ5ixTG4PU +yb64OiffdSnvIaM++cb7LgJLBBgT3d5le8V1gtxWFFm0NggUyF6glmUqHQL0LuhX +WS468O6w05KS0AL6vQ== +-----END PRIVATE KEY----- PublicKey=ALICE_c2tnb431r1_PUB -----BEGIN PUBLIC KEY----- @@ -7299,12 +7328,13 @@ MIGFMBMGByqGSM49AgEGCCqGSM49AwAUA24ABDrG8SG4lckR1rrvLRpXYf7Wspmh -----END PUBLIC KEY----- PrivateKey=BOB_c2tnb431r1 ------BEGIN EC PRIVATE KEY----- -MIG4AgEBBDUApanyPgvpfrAu1jNAKGpctH71v0+P/kFF9JxdFYarpWEwBBd4tz6C -xoYKmvDZ9ukOOqBbX6AKBggqhkjOPQMAFKFwA24ABGh3JXuYmh6dGGEmbRhoR2T5 -pVD/5Mq2ZKKzfzY2NOoKiIs6rVzv2SW7S6BScYlRqRWiXCeZVFvT0crDY/5uodkH -bcRw6B/Yo/iMN8wLI257Tjm9/C5G+JPCLopCcLILgTwAJM2ZhtPnc08LyQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIHKAgEAMBMGByqGSM49AgEGCCqGSM49AwAUBIGvMIGsAgEBBDUApanyPgvpfrAu +1jNAKGpctH71v0+P/kFF9JxdFYarpWEwBBd4tz6CxoYKmvDZ9ukOOqBbX6FwA24A +BGh3JXuYmh6dGGEmbRhoR2T5pVD/5Mq2ZKKzfzY2NOoKiIs6rVzv2SW7S6BScYlR +qRWiXCeZVFvT0crDY/5uodkHbcRw6B/Yo/iMN8wLI257Tjm9/C5G+JPCLopCcLIL +gTwAJM2ZhtPnc08LyQ== +-----END PRIVATE KEY----- PublicKey=BOB_c2tnb431r1_PUB -----BEGIN PUBLIC KEY----- @@ -7326,10 +7356,10 @@ SharedSecret=4c4d7d387843ff5152f22f101b0609238819357fae2ccc9097b818e383ef6809cb4 # TEST CURVE wap-wsg-idm-ecid-wtls1 PrivateKey=ALICE_wap-wsg-idm-ecid-wtls1 ------BEGIN EC PRIVATE KEY----- -MEACAQEEDle73WoHDFMOaEP/fQp/oAcGBWcrAQQBoSIDIAAEAVBJnQb5p9rXHgrB -TMGNARYU11mgXpQ1gaQJEg3K ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFACAQAwEAYHKoZIzj0CAQYFZysBBAEEOTA3AgEBBA5Xu91qBwxTDmhD/30Kf6Ei +AyAABAFQSZ0G+afa1x4KwUzBjQEWFNdZoF6UNYGkCRINyg== +-----END PRIVATE KEY----- PublicKey=ALICE_wap-wsg-idm-ecid-wtls1_PUB -----BEGIN PUBLIC KEY----- @@ -7338,10 +7368,10 @@ gaQJEg3K -----END PUBLIC KEY----- PrivateKey=BOB_wap-wsg-idm-ecid-wtls1 ------BEGIN EC PRIVATE KEY----- -MEACAQEEDlpToJDjvhnV8ffEC2f/oAcGBWcrAQQBoSIDIAAEAWlvgZNz7m9/meS3 -jMvHAZlDqpJtiUfylRum/Byo ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFACAQAwEAYHKoZIzj0CAQYFZysBBAEEOTA3AgEBBA5aU6CQ474Z1fH3xAtn/6Ei +AyAABAFpb4GTc+5vf5nkt4zLxwGZQ6qSbYlH8pUbpvwcqA== +-----END PRIVATE KEY----- PublicKey=BOB_wap-wsg-idm-ecid-wtls1_PUB -----BEGIN PUBLIC KEY----- @@ -7362,10 +7392,11 @@ SharedSecret=0000fc6e280987e8b9bf6e3c7fa003 # TEST CURVE wap-wsg-idm-ecid-wtls3 PrivateKey=ALICE_wap-wsg-idm-ecid-wtls3 ------BEGIN EC PRIVATE KEY----- -MFMCAQEEFQE3YUWBCLPgo8n0YSyuPkGb3TyJ+6AHBgVnKwEEA6EuAywABAFXbVPH -e/z7XAUqrs+KWhHULHOaVQO+fJeuziY2Zzk2zfybM94255A2jQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFZysBBAMETDBKAgEBBBUBN2FFgQiz4KPJ9GEsrj5B +m908ifuhLgMsAAQBV21Tx3v8+1wFKq7PiloR1CxzmlUDvnyXrs4mNmc5Ns38mzPe +NueQNo0= +-----END PRIVATE KEY----- PublicKey=ALICE_wap-wsg-idm-ecid-wtls3_PUB -----BEGIN PUBLIC KEY----- @@ -7374,10 +7405,11 @@ l67OJjZnOTbN/Jsz3jbnkDaN -----END PUBLIC KEY----- PrivateKey=BOB_wap-wsg-idm-ecid-wtls3 ------BEGIN EC PRIVATE KEY----- -MFMCAQEEFQD/RSy3signnbrOfbCJYG6tHk15JaAHBgVnKwEEA6EuAywABAHt37/M -wy2Lh2OGVWdoapqqiduajgK/6IpPVwXefNdX8pcdIkin2Jl5qw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFZysBBAMETDBKAgEBBBUA/0Ust7IoJ526zn2wiWBu +rR5NeSWhLgMsAAQB7d+/zMMti4djhlVnaGqaqonbmo4Cv+iKT1cF3nzXV/KXHSJI +p9iZeas= +-----END PRIVATE KEY----- PublicKey=BOB_wap-wsg-idm-ecid-wtls3_PUB -----BEGIN PUBLIC KEY----- @@ -7398,10 +7430,10 @@ SharedSecret=00cf1d850f396436be68f1e5502935853ed054511f # TEST CURVE wap-wsg-idm-ecid-wtls4 PrivateKey=ALICE_wap-wsg-idm-ecid-wtls4 ------BEGIN EC PRIVATE KEY----- -MEECAQEEDwCy4Qa59I1KsM+7djU1qaAHBgVnKwEEBKEiAyAABABy89FsCuyR4Gzp -bag56wAcxCjwuT8UdxgpR8w4pg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFECAQAwEAYHKoZIzj0CAQYFZysBBAQEOjA4AgEBBA8AsuEGufSNSrDPu3Y1Namh +IgMgAAQAcvPRbArskeBs6W2oOesAHMQo8Lk/FHcYKUfMOKY= +-----END PRIVATE KEY----- PublicKey=ALICE_wap-wsg-idm-ecid-wtls4_PUB -----BEGIN PUBLIC KEY----- @@ -7410,10 +7442,10 @@ GClHzDim -----END PUBLIC KEY----- PrivateKey=BOB_wap-wsg-idm-ecid-wtls4 ------BEGIN EC PRIVATE KEY----- -MEECAQEEDwAUnCZSQptZ2bO+q/4BtaAHBgVnKwEEBKEiAyAABAGuI4lLJEviujnk -JsLB6QGW4QrAh8/rg58kIR9ZNQ== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MFECAQAwEAYHKoZIzj0CAQYFZysBBAQEOjA4AgEBBA8AFJwmUkKbWdmzvqv+AbWh +IgMgAAQBriOJSyRL4ro55CbCwekBluEKwIfP64OfJCEfWTU= +-----END PRIVATE KEY----- PublicKey=BOB_wap-wsg-idm-ecid-wtls4_PUB -----BEGIN PUBLIC KEY----- @@ -7434,10 +7466,11 @@ SharedSecret=01076232302ca32b5f3daf075e5213 # TEST CURVE wap-wsg-idm-ecid-wtls5 PrivateKey=ALICE_wap-wsg-idm-ecid-wtls5 ------BEGIN EC PRIVATE KEY----- -MFMCAQEEFQKaeBto7ZL/9NrRlSGf+dtnJ1MoP6AHBgVnKwEEBaEuAywABADXv3aJ -3eEsi7bPQoQKQEJRtNI/1QUu7YVMmQtryo/hkisG3kVcomjYPA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFZysBBAUETDBKAgEBBBUCmngbaO2S//Ta0ZUhn/nb +ZydTKD+hLgMsAAQA1792id3hLIu2z0KECkBCUbTSP9UFLu2FTJkLa8qP4ZIrBt5F +XKJo2Dw= +-----END PRIVATE KEY----- PublicKey=ALICE_wap-wsg-idm-ecid-wtls5_PUB -----BEGIN PUBLIC KEY----- @@ -7446,10 +7479,11 @@ hUyZC2vKj+GSKwbeRVyiaNg8 -----END PUBLIC KEY----- PrivateKey=BOB_wap-wsg-idm-ecid-wtls5 ------BEGIN EC PRIVATE KEY----- -MFMCAQEEFQGtprhp5jEd30cnS8sigLBq4Yp33KAHBgVnKwEEBaEuAywABAfNzYWB -8kZqw2Uxwk0MOs1ASWEDVwcPiLOoR52YLe54y7vb9KlUXY+mKA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGMCAQAwEAYHKoZIzj0CAQYFZysBBAUETDBKAgEBBBUBraa4aeYxHd9HJ0vLIoCw +auGKd9yhLgMsAAQHzc2FgfJGasNlMcJNDDrNQElhA1cHD4izqEedmC3ueMu72/Sp +VF2Ppig= +-----END PRIVATE KEY----- PublicKey=BOB_wap-wsg-idm-ecid-wtls5_PUB -----BEGIN PUBLIC KEY----- @@ -7470,10 +7504,10 @@ SharedSecret=066091c591278f5b949106052b2546aacc20917c20 # TEST CURVE wap-wsg-idm-ecid-wtls6 PrivateKey=ALICE_wap-wsg-idm-ecid-wtls6 ------BEGIN EC PRIVATE KEY----- -MD4CAQEEDksnBE2s80zAbKgE/3lroAcGBWcrAQQGoSADHgAExnEWLvXVaXmvu1vV -cn18ncfVbUwq9Wti9+Y0Wg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +ME4CAQAwEAYHKoZIzj0CAQYFZysBBAYENzA1AgEBBA5LJwRNrPNMwGyoBP95a6Eg +Ax4ABMZxFi711Wl5r7tb1XJ9fJ3H1W1MKvVrYvfmNFo= +-----END PRIVATE KEY----- PublicKey=ALICE_wap-wsg-idm-ecid-wtls6_PUB -----BEGIN PUBLIC KEY----- @@ -7482,10 +7516,10 @@ MDIwEAYHKoZIzj0CAQYFZysBBAYDHgAExnEWLvXVaXmvu1vVcn18ncfVbUwq9Wti -----END PUBLIC KEY----- PrivateKey=BOB_wap-wsg-idm-ecid-wtls6 ------BEGIN EC PRIVATE KEY----- -MD4CAQEEDreLXPgqXwEQTUjcJhT0oAcGBWcrAQQGoSADHgAEbcW3kXzC+caKZQCY -ZCt+oCVUkp3OE1Jre/jspw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +ME4CAQAwEAYHKoZIzj0CAQYFZysBBAYENzA1AgEBBA63i1z4Kl8BEE1I3CYU9KEg +Ax4ABG3Ft5F8wvnGimUAmGQrfqAlVJKdzhNSa3v47Kc= +-----END PRIVATE KEY----- PublicKey=BOB_wap-wsg-idm-ecid-wtls6_PUB -----BEGIN PUBLIC KEY----- @@ -7506,10 +7540,11 @@ SharedSecret=8d184455748c56115ba2183070b0 # TEST CURVE wap-wsg-idm-ecid-wtls7 PrivateKey=ALICE_wap-wsg-idm-ecid-wtls7 ------BEGIN EC PRIVATE KEY----- -MFECAQEEFQC56iKyI36W4kTLTB2IjuNwAuVOoKAHBgVnKwEEB6EsAyoABD8VawbE -Py+68QVZd9ZF46q8HOpasX2Z0x5N44TXL2v0844hRUk820s= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGECAQAwEAYHKoZIzj0CAQYFZysBBAcESjBIAgEBBBUAueoisiN+luJEy0wdiI7j +cALlTqChLAMqAAQ/FWsGxD8vuvEFWXfWReOqvBzqWrF9mdMeTeOE1y9r9POOIUVJ +PNtL +-----END PRIVATE KEY----- PublicKey=ALICE_wap-wsg-idm-ecid-wtls7_PUB -----BEGIN PUBLIC KEY----- @@ -7518,10 +7553,11 @@ Hk3jhNcva/TzjiFFSTzbSw== -----END PUBLIC KEY----- PrivateKey=BOB_wap-wsg-idm-ecid-wtls7 ------BEGIN EC PRIVATE KEY----- -MFECAQEEFQCvja8qNtRcVqTaZXMVim7KE39wPKAHBgVnKwEEB6EsAyoABIlmm4WD -6fy+xy6r6mp8UU9h6ad8t2F0AHgmh19HcnkHO7ruESZsgpA= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGECAQAwEAYHKoZIzj0CAQYFZysBBAcESjBIAgEBBBUAr42vKjbUXFak2mVzFYpu +yhN/cDyhLAMqAASJZpuFg+n8vscuq+pqfFFPYemnfLdhdAB4JodfR3J5Bzu67hEm +bIKQ +-----END PRIVATE KEY----- PublicKey=BOB_wap-wsg-idm-ecid-wtls7_PUB -----BEGIN PUBLIC KEY----- @@ -7542,10 +7578,10 @@ SharedSecret=990eda6a0406caef965018b97c94d0faa200f6e4 # TEST CURVE wap-wsg-idm-ecid-wtls8 PrivateKey=ALICE_wap-wsg-idm-ecid-wtls8 ------BEGIN EC PRIVATE KEY----- -MD8CAQEEDwDWbrZ9+XqeK4zjpc5TKKAHBgVnKwEECKEgAx4ABPiapgCh7s0S0p8Q -xCzah8ieFlFkIWsVTlyMRaI= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +ME8CAQAwEAYHKoZIzj0CAQYFZysBBAgEODA2AgEBBA8A1m62ffl6niuM46XOUyih +IAMeAAT4mqYAoe7NEtKfEMQs2ofInhZRZCFrFU5cjEWi +-----END PRIVATE KEY----- PublicKey=ALICE_wap-wsg-idm-ecid-wtls8_PUB -----BEGIN PUBLIC KEY----- @@ -7554,10 +7590,10 @@ XIxFog== -----END PUBLIC KEY----- PrivateKey=BOB_wap-wsg-idm-ecid-wtls8 ------BEGIN EC PRIVATE KEY----- -MD8CAQEEDwB6BOsugxHI+XhTjE52DqAHBgVnKwEECKEgAx4ABNAqTJDeMvYSS7oL -69JBrNuONKTM17rs5xyqPY8= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +ME8CAQAwEAYHKoZIzj0CAQYFZysBBAgEODA2AgEBBA8AegTrLoMRyPl4U4xOdg6h +IAMeAATQKkyQ3jL2Eku6C+vSQazbjjSkzNe67Occqj2P +-----END PRIVATE KEY----- PublicKey=BOB_wap-wsg-idm-ecid-wtls8_PUB -----BEGIN PUBLIC KEY----- @@ -7578,10 +7614,11 @@ SharedSecret=7524c547bd6b26644ce70571cb06 # TEST CURVE wap-wsg-idm-ecid-wtls9 PrivateKey=ALICE_wap-wsg-idm-ecid-wtls9 ------BEGIN EC PRIVATE KEY----- -MFECAQEEFQATTfvo2/OwheLpdp2tWfjTqhtNEKAHBgVnKwEECaEsAyoABFsLXLD1 -/W4E5WUx/lkVB7BODJzzUCqHZMUxJF+6MIiF28ZNiBG27oU= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGECAQAwEAYHKoZIzj0CAQYFZysBBAkESjBIAgEBBBUAE0376NvzsIXi6XadrVn4 +06obTRChLAMqAARbC1yw9f1uBOVlMf5ZFQewTgyc81Aqh2TFMSRfujCIhdvGTYgR +tu6F +-----END PRIVATE KEY----- PublicKey=ALICE_wap-wsg-idm-ecid-wtls9_PUB -----BEGIN PUBLIC KEY----- @@ -7590,10 +7627,11 @@ xTEkX7owiIXbxk2IEbbuhQ== -----END PUBLIC KEY----- PrivateKey=BOB_wap-wsg-idm-ecid-wtls9 ------BEGIN EC PRIVATE KEY----- -MFECAQEEFQB3aR8xyVolTZuDxrJOuNmiiUjzbKAHBgVnKwEECaEsAyoABDQ15b1M -qFB4WutPIxH0Zvnn4Gd4JBIHIBKEzwOfdXUUVjPufTJu8Fc= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGECAQAwEAYHKoZIzj0CAQYFZysBBAkESjBIAgEBBBUAd2kfMclaJU2bg8ayTrjZ +oolI82yhLAMqAAQ0NeW9TKhQeFrrTyMR9Gb55+BneCQSByAShM8Dn3V1FFYz7n0y +bvBX +-----END PRIVATE KEY----- PublicKey=BOB_wap-wsg-idm-ecid-wtls9_PUB -----BEGIN PUBLIC KEY----- @@ -7614,11 +7652,11 @@ SharedSecret=5ca1d9eed44def2c390fd5bbb16ca2c3a09eb7b1 # TEST CURVE wap-wsg-idm-ecid-wtls10 PrivateKey=ALICE_wap-wsg-idm-ecid-wtls10 ------BEGIN EC PRIVATE KEY----- -MG0CAQEEHTVMOCMgZ36Bc9nh6xCdbPP/LW/MmeJQEzlc3I+roAcGBWcrAQQKoUAD -PgAEAdWzmBilsnOrI7wuTeeRPCG7gG5dvjC2uAZxjYtPAbGQLhmrhqoujCx7EaNV -rQiMYp1bPn9N/AvAak3g ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFZysBBAoEZjBkAgEBBB01TDgjIGd+gXPZ4esQnWzz +/y1vzJniUBM5XNyPq6FAAz4ABAHVs5gYpbJzqyO8Lk3nkTwhu4BuXb4wtrgGcY2L +TwGxkC4Zq4aqLowsexGjVa0IjGKdWz5/TfwLwGpN4A== +-----END PRIVATE KEY----- PublicKey=ALICE_wap-wsg-idm-ecid-wtls10_PUB -----BEGIN PUBLIC KEY----- @@ -7627,11 +7665,11 @@ uAZxjYtPAbGQLhmrhqoujCx7EaNVrQiMYp1bPn9N/AvAak3g -----END PUBLIC KEY----- PrivateKey=BOB_wap-wsg-idm-ecid-wtls10 ------BEGIN EC PRIVATE KEY----- -MG0CAQEEHSZOrBjAHJG67jNxTVAspwabzB7C5qgqpVKmnzFBoAcGBWcrAQQKoUAD -PgAEAQXjFOtYAgXURpw0ypMbeTDHBqu0AoUWrI6V77AHAOLqCtrtwVV50PWnlHAP -iBlThDOAItLBrvFlsHOC ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MH0CAQAwEAYHKoZIzj0CAQYFZysBBAoEZjBkAgEBBB0mTqwYwByRuu4zcU1QLKcG +m8wewuaoKqVSpp8xQaFAAz4ABAEF4xTrWAIF1EacNMqTG3kwxwartAKFFqyOle+w +BwDi6gra7cFVedD1p5RwD4gZU4QzgCLSwa7xZbBzgg== +-----END PRIVATE KEY----- PublicKey=BOB_wap-wsg-idm-ecid-wtls10_PUB -----BEGIN PUBLIC KEY----- @@ -7652,11 +7690,11 @@ SharedSecret=0199de137bc263e25b543994d6315b5a3f1e38e7e1f60662cb5cbaab5f98 # TEST CURVE wap-wsg-idm-ecid-wtls11 PrivateKey=ALICE_wap-wsg-idm-ecid-wtls11 ------BEGIN EC PRIVATE KEY----- -MG4CAQEEHgC7qWvMLdEiTeNea1t44Cktk9HQ1Suvp1N/WVIIaqAHBgVnKwEEC6FA -Az4ABAGXvdXZMRnwE7hAL5iIGUnQaZbxYtzdG1LeIiv+hQBoNBAAZUkUPcaCGME9 -8j0pUFxnY/y1RdS/mJ+tZw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFZysBBAsEZzBlAgEBBB4Au6lrzC3RIk3jXmtbeOAp +LZPR0NUrr6dTf1lSCGqhQAM+AAQBl73V2TEZ8BO4QC+YiBlJ0GmW8WLc3RtS3iIr +/oUAaDQQAGVJFD3GghjBPfI9KVBcZ2P8tUXUv5ifrWc= +-----END PRIVATE KEY----- PublicKey=ALICE_wap-wsg-idm-ecid-wtls11_PUB -----BEGIN PUBLIC KEY----- @@ -7665,11 +7703,11 @@ Ut4iK/6FAGg0EABlSRQ9xoIYwT3yPSlQXGdj/LVF1L+Yn61n -----END PUBLIC KEY----- PrivateKey=BOB_wap-wsg-idm-ecid-wtls11 ------BEGIN EC PRIVATE KEY----- -MG4CAQEEHgAYm4a1AjUW8d+nYCx0pvc1VZrCOllC7IzVp6XCzaAHBgVnKwEEC6FA -Az4ABAB1NbfFToiN/9jzflnaFLh86fpeanc7qJuVceucqgE5G7EdVF9eR90vlOp8 -Wm4OCHMLIBLpkxJaGMZXmg== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MH4CAQAwEAYHKoZIzj0CAQYFZysBBAsEZzBlAgEBBB4AGJuGtQI1FvHfp2AsdKb3 +NVWawjpZQuyM1aelws2hQAM+AAQAdTW3xU6Ijf/Y835Z2hS4fOn6Xmp3O6iblXHr +nKoBORuxHVRfXkfdL5TqfFpuDghzCyAS6ZMSWhjGV5o= +-----END PRIVATE KEY----- PublicKey=BOB_wap-wsg-idm-ecid-wtls11_PUB -----BEGIN PUBLIC KEY----- @@ -7690,11 +7728,11 @@ SharedSecret=01ee4b517d8a64be5ee32e10152c7bbcb8cde73a3da8e9643bce173011f7 # TEST CURVE wap-wsg-idm-ecid-wtls12 PrivateKey=ALICE_wap-wsg-idm-ecid-wtls12 ------BEGIN EC PRIVATE KEY----- -MGgCAQEEHICdS9BmFmvWWBNGLFIwjHQoe5Xi3xxtcJbjXmygBwYFZysBBAyhPAM6 -AATcbzAiX1InSYCa4gxZsmkWN/3A7yAo27qcCnJ7f1iGld5hEv+ebsboeaKIDk7W -K51YLeENsEfRxw== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFZysBBAwEYTBfAgEBBByAnUvQZhZr1lgTRixSMIx0 +KHuV4t8cbXCW415soTwDOgAE3G8wIl9SJ0mAmuIMWbJpFjf9wO8gKNu6nApye39Y +hpXeYRL/nm7G6HmiiA5O1iudWC3hDbBH0cc= +-----END PRIVATE KEY----- PublicKey=ALICE_wap-wsg-idm-ecid-wtls12_PUB -----BEGIN PUBLIC KEY----- @@ -7703,11 +7741,11 @@ nApye39YhpXeYRL/nm7G6HmiiA5O1iudWC3hDbBH0cc= -----END PUBLIC KEY----- PrivateKey=BOB_wap-wsg-idm-ecid-wtls12 ------BEGIN EC PRIVATE KEY----- -MGgCAQEEHNnue3gKs+uTabmJHri+mSP3kkc6bNZ/hWFFmp2gBwYFZysBBAyhPAM6 -AAS6TPjQjiBalSZcIz48uZYZ3Qg7Rcg9Br0pfNe+Fst0kfTIWQn4KVJug4LbqC0x -MgKI+ESBiN4oRA== ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHgCAQAwEAYHKoZIzj0CAQYFZysBBAwEYTBfAgEBBBzZ7nt4CrPrk2m5iR64vpkj +95JHOmzWf4VhRZqdoTwDOgAEukz40I4gWpUmXCM+PLmWGd0IO0XIPQa9KXzXvhbL +dJH0yFkJ+ClSboOC26gtMTICiPhEgYjeKEQ= +-----END PRIVATE KEY----- PublicKey=BOB_wap-wsg-idm-ecid-wtls12_PUB -----BEGIN PUBLIC KEY----- @@ -7728,10 +7766,11 @@ SharedSecret=c75a8283a73312de82c8f99d41a9173a43b8f921e8161dd140131b36 # TEST CURVE brainpoolP160r1 PrivateKey=ALICE_brainpoolP160r1 ------BEGIN EC PRIVATE KEY----- -MFQCAQEEFGU0GLeiDrGVFIK9+lmBik49dHq0oAsGCSskAwMCCAEBAaEsAyoABCQx -/ve3cKi/Zx17M9JS31afTJ2GmT37YfBnXdi59TJ9y8+KN0n/MU4= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGQCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEBBEkwRwIBAQQUZTQYt6IOsZUUgr36 +WYGKTj10erShLAMqAAQkMf73t3Cov2cdezPSUt9Wn0ydhpk9+2HwZ13YufUyfcvP +ijdJ/zFO +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP160r1_PUB -----BEGIN PUBLIC KEY----- @@ -7740,10 +7779,11 @@ mT37YfBnXdi59TJ9y8+KN0n/MU4= -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP160r1 ------BEGIN EC PRIVATE KEY----- -MFQCAQEEFG/7pSERuMqDjooVgwFeJe/CNhi1oAsGCSskAwMCCAEBAaEsAyoABE+M -Qx609ZLgWWAUIe9V8rWdMr9MuxhJwet6B5kBmqfyBoW+CrhsTy8= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGQCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEBBEkwRwIBAQQUb/ulIRG4yoOOihWD +AV4l78I2GLWhLAMqAARPjEMetPWS4FlgFCHvVfK1nTK/TLsYScHregeZAZqn8gaF +vgq4bE8v +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP160r1_PUB -----BEGIN PUBLIC KEY----- @@ -7764,10 +7804,11 @@ SharedSecret=e4fe5ae99a60d17b597f5705a719cea6709c63b9 # TEST CURVE brainpoolP160t1 PrivateKey=ALICE_brainpoolP160t1 ------BEGIN EC PRIVATE KEY----- -MFQCAQEEFFlgMlJzL5kMninhxGyI8q1tCc1aoAsGCSskAwMCCAEBAqEsAyoABD+H -VVI8q+fZxM+Z8yrQVnebHKmMIha0Ixq/sYf0VvL6QKtYoDSUVXA= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGQCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQECBEkwRwIBAQQUWWAyUnMvmQyeKeHE +bIjyrW0JzVqhLAMqAAQ/h1VSPKvn2cTPmfMq0FZ3mxypjCIWtCMav7GH9Fby+kCr +WKA0lFVw +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP160t1_PUB -----BEGIN PUBLIC KEY----- @@ -7776,10 +7817,11 @@ Iha0Ixq/sYf0VvL6QKtYoDSUVXA= -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP160t1 ------BEGIN EC PRIVATE KEY----- -MFQCAQEEFAxaVMfEme9fF9HML/qEGk10itM8oAsGCSskAwMCCAEBAqEsAyoABAiA -NiG7L1yPTggUTQt+iuAk+32uByO47zVXpZH4Tcs0RMmtizLVf2Q= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MGQCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQECBEkwRwIBAQQUDFpUx8SZ718X0cwv ++oQaTXSK0zyhLAMqAAQIgDYhuy9cj04IFE0LforgJPt9rgcjuO81V6WR+E3LNETJ +rYsy1X9k +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP160t1_PUB -----BEGIN PUBLIC KEY----- @@ -7800,11 +7842,11 @@ SharedSecret=199a218458b71a4e13f05a599fc17bc76f30ea2f # TEST CURVE brainpoolP192r1 PrivateKey=ALICE_brainpoolP192r1 ------BEGIN EC PRIVATE KEY----- -MGACAQEEGBoiKWVUe9Qt9W/QBJS4hIhMs3YUbL025KALBgkrJAMDAggBAQOhNAMy -AAQcCi9Vkl+bnYpaomv0grPvDtNr7sdQ3kGPL6pHzuQ6jec/7jf1Ms6ziIOEi/M/ -yPU= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHACAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEDBFUwUwIBAQQYGiIpZVR71C31b9AE +lLiEiEyzdhRsvTbkoTQDMgAEHAovVZJfm52KWqJr9IKz7w7Ta+7HUN5Bjy+qR87k +Oo3nP+439TLOs4iDhIvzP8j1 +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP192r1_PUB -----BEGIN PUBLIC KEY----- @@ -7813,11 +7855,11 @@ x1DeQY8vqkfO5DqN5z/uN/UyzrOIg4SL8z/I9Q== -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP192r1 ------BEGIN EC PRIVATE KEY----- -MGACAQEEGJLrfB5Y8Ms8TgKygGs4pW6APMmOqMuLL6ALBgkrJAMDAggBAQOhNAMy -AAS//c2Gt1UQD48wUKb6a5eGsLTDFflQe8JR384DJ1pzYmXtdXDaBLiF9eRN5Psx -Ay4= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHACAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEDBFUwUwIBAQQYkut8HljwyzxOArKA +azilboA8yY6oy4svoTQDMgAEv/3NhrdVEA+PMFCm+muXhrC0wxX5UHvCUd/OAyda +c2Jl7XVw2gS4hfXkTeT7MQMu +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP192r1_PUB -----BEGIN PUBLIC KEY----- @@ -7838,11 +7880,11 @@ SharedSecret=7ce122b49afdfd1adde6cdfaa13dc7180d6d4e70322c8773 # TEST CURVE brainpoolP192t1 PrivateKey=ALICE_brainpoolP192t1 ------BEGIN EC PRIVATE KEY----- -MGACAQEEGAldTbmMOw8DmsKoGJAC3xaRMxRNq416mKALBgkrJAMDAggBAQShNAMy -AASYGYnbbT9klV3F9KAcVPPcU4LY8eqXYi1sbQtez+/uf+qRYZbP0HtHYUGoVosG -TQs= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHACAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEEBFUwUwIBAQQYCV1NuYw7DwOawqgY +kALfFpEzFE2rjXqYoTQDMgAEmBmJ220/ZJVdxfSgHFTz3FOC2PHql2ItbG0LXs/v +7n/qkWGWz9B7R2FBqFaLBk0L +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP192t1_PUB -----BEGIN PUBLIC KEY----- @@ -7851,11 +7893,11 @@ MEowFAYHKoZIzj0CAQYJKyQDAwIIAQEEAzIABJgZidttP2SVXcX0oBxU89xTgtjx -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP192t1 ------BEGIN EC PRIVATE KEY----- -MGACAQEEGJmT9r5mKXyb0p6hJeCtGI9IjAq+HbPW26ALBgkrJAMDAggBAQShNAMy -AARxK4tIQPazhIi4R2iZlt0MxKY2umd7MlG/9b5sJCnhtydABvbS2njshLD/JehB -IDQ= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHACAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEEBFUwUwIBAQQYmZP2vmYpfJvSnqEl +4K0Yj0iMCr4ds9bboTQDMgAEcSuLSED2s4SIuEdomZbdDMSmNrpnezJRv/W+bCQp +4bcnQAb20tp47ISw/yXoQSA0 +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP192t1_PUB -----BEGIN PUBLIC KEY----- @@ -7876,11 +7918,11 @@ SharedSecret=1a5444c2600d9d21d6a450d158fd25272ade262ab519790b # TEST CURVE brainpoolP224r1 PrivateKey=ALICE_brainpoolP224r1 ------BEGIN EC PRIVATE KEY----- -MGwCAQEEHIfdRZjs/bSfVn3csJKzjOlF4p07mAcY1FrVNBygCwYJKyQDAwIIAQEF -oTwDOgAEirRPkAknN0OX3BtirLETEx9Ns0O3pb+i6d1lNLqpdi8x6An6cFxd4KL4 -UEjSm7qUe/y0XVmNYtI= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHwCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEFBGEwXwIBAQQch91FmOz9tJ9Wfdyw +krOM6UXinTuYBxjUWtU0HKE8AzoABIq0T5AJJzdDl9wbYqyxExMfTbNDt6W/ound +ZTS6qXYvMegJ+nBcXeCi+FBI0pu6lHv8tF1ZjWLS +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP224r1_PUB -----BEGIN PUBLIC KEY----- @@ -7889,11 +7931,11 @@ t6W/oundZTS6qXYvMegJ+nBcXeCi+FBI0pu6lHv8tF1ZjWLS -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP224r1 ------BEGIN EC PRIVATE KEY----- -MGwCAQEEHL2m5CVp60eC7hlMXyzvA6gwXC+Hosf2tKkVsZugCwYJKyQDAwIIAQEF -oTwDOgAEzqqAEj1uZnDJgTRAUEl/k2ld7amGBw5sqsbhRGN2w5GXhQnCWrt4vAg0 -ks/10+XRCVvQW/+A1Wg= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHwCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEFBGEwXwIBAQQcvabkJWnrR4LuGUxf +LO8DqDBcL4eix/a0qRWxm6E8AzoABM6qgBI9bmZwyYE0QFBJf5NpXe2phgcObKrG +4URjdsORl4UJwlq7eLwINJLP9dPl0Qlb0Fv/gNVo +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP224r1_PUB -----BEGIN PUBLIC KEY----- @@ -7914,11 +7956,11 @@ SharedSecret=419e446a66968fcc372126cff4d637505c848c3a9b82503f2d441215 # TEST CURVE brainpoolP224t1 PrivateKey=ALICE_brainpoolP224t1 ------BEGIN EC PRIVATE KEY----- -MGwCAQEEHEsFgnKmLojcsUdIGFQjAUNe8pH2sRIDDMgcmaKgCwYJKyQDAwIIAQEG -oTwDOgAEmJWHAhkCrL44qPxF7COx1c88I4N+b7hEZXzZtgtbxKqIN4QMH5G8mKtj -DP9rlGL4QvleT1BWRAU= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHwCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEGBGEwXwIBAQQcSwWCcqYuiNyxR0gY +VCMBQ17ykfaxEgMMyByZoqE8AzoABJiVhwIZAqy+OKj8RewjsdXPPCODfm+4RGV8 +2bYLW8SqiDeEDB+RvJirYwz/a5Ri+EL5Xk9QVkQF +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP224t1_PUB -----BEGIN PUBLIC KEY----- @@ -7927,11 +7969,11 @@ fm+4RGV82bYLW8SqiDeEDB+RvJirYwz/a5Ri+EL5Xk9QVkQF -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP224t1 ------BEGIN EC PRIVATE KEY----- -MGwCAQEEHCyuUfonb86gtWtvBnvZuhIebqfNmrVUk0Vnl8CgCwYJKyQDAwIIAQEG -oTwDOgAEGDpqveWRhK/QBw4znjZJs+ECrGfL9qdL4OgQtWIzSuh/GVy+TLBmIFjR -PjTFS9cEgsOxj/SF7bY= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MHwCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEGBGEwXwIBAQQcLK5R+idvzqC1a28G +e9m6Eh5up82atVSTRWeXwKE8AzoABBg6ar3lkYSv0AcOM542SbPhAqxny/anS+Do +ELViM0rofxlcvkywZiBY0T40xUvXBILDsY/0he22 +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP224t1_PUB -----BEGIN PUBLIC KEY----- @@ -7952,11 +7994,11 @@ SharedSecret=8f83465fb6353912a51c2809ea30b19b73b3e391c0422650e0f20b58 # TEST CURVE brainpoolP256r1 PrivateKey=ALICE_brainpoolP256r1 ------BEGIN EC PRIVATE KEY----- -MHgCAQEEIBMmEFKb8UQb4oCuk226EiMpk/omRsx/rrRNuh9WGB/zoAsGCSskAwMC -CAEBB6FEA0IABHiGHSaSKZMZ3imy/aj/70idv3e3BwrNmV4IHEYn+yijeeSKIre0 -NbFRHhsxAxW8aUViugPioLvLBZBPix6+QRk= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGIAgEAMBQGByqGSM49AgEGCSskAwMCCAEBBwRtMGsCAQEEIBMmEFKb8UQb4oCu +k226EiMpk/omRsx/rrRNuh9WGB/zoUQDQgAEeIYdJpIpkxneKbL9qP/vSJ2/d7cH +Cs2ZXggcRif7KKN55Ioit7Q1sVEeGzEDFbxpRWK6A+Kgu8sFkE+LHr5BGQ== +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP256r1_PUB -----BEGIN PUBLIC KEY----- @@ -7965,11 +8007,11 @@ BwrNmV4IHEYn+yijeeSKIre0NbFRHhsxAxW8aUViugPioLvLBZBPix6+QRk= -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP256r1 ------BEGIN EC PRIVATE KEY----- -MHgCAQEEIKXsf2pxFfTQiwbW2SKwZq50UOGhJYJZYO/xY33RHuQaoAsGCSskAwMC -CAEBB6FEA0IABAvxQjYcsWeFXB2PMwXoRW4NzOeAFMOosSevYCNvsaMgFwZ+XfqX -/LQBtA9E1KrcUbcAYD1pLeqWOGGAUDGPjTg= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGIAgEAMBQGByqGSM49AgEGCSskAwMCCAEBBwRtMGsCAQEEIKXsf2pxFfTQiwbW +2SKwZq50UOGhJYJZYO/xY33RHuQaoUQDQgAEC/FCNhyxZ4VcHY8zBehFbg3M54AU +w6ixJ69gI2+xoyAXBn5d+pf8tAG0D0TUqtxRtwBgPWkt6pY4YYBQMY+NOA== +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP256r1_PUB -----BEGIN PUBLIC KEY----- @@ -7990,11 +8032,11 @@ SharedSecret=78ed4b7bb4ed808813f8c27132fe04f5d805365549b754994d83b002416b6ba0 # TEST CURVE brainpoolP256t1 PrivateKey=ALICE_brainpoolP256t1 ------BEGIN EC PRIVATE KEY----- -MHgCAQEEIC4yFvVLhvRyF9wuyYJbncxLagsMCD+Sxt2vAJiKFpKdoAsGCSskAwMC -CAEBCKFEA0IABIhsZfBNMo94BOIjshQ1XtLVGEvXzXDc5MRMdgomcJtPY20jUBdq -SgKApi2UGvFQc/lGanXl2cvUnPFKSVNxYIY= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGIAgEAMBQGByqGSM49AgEGCSskAwMCCAEBCARtMGsCAQEEIC4yFvVLhvRyF9wu +yYJbncxLagsMCD+Sxt2vAJiKFpKdoUQDQgAEiGxl8E0yj3gE4iOyFDVe0tUYS9fN +cNzkxEx2CiZwm09jbSNQF2pKAoCmLZQa8VBz+UZqdeXZy9Sc8UpJU3Fghg== +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP256t1_PUB -----BEGIN PUBLIC KEY----- @@ -8003,11 +8045,11 @@ zXDc5MRMdgomcJtPY20jUBdqSgKApi2UGvFQc/lGanXl2cvUnPFKSVNxYIY= -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP256t1 ------BEGIN EC PRIVATE KEY----- -MHgCAQEEIIfXus/y+3RdwUZ00db3boxPCzzRcI3CgIC8ggdGDPqPoAsGCSskAwMC -CAEBCKFEA0IABHZWdsjogbJkRD2sPE7KxjZkyy+qtZVc/PjkO/NF8X6PVSBXkdEG -5PAoKl9JVreYWxG28xGxeiNp2QiZ3UPVSKA= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGIAgEAMBQGByqGSM49AgEGCSskAwMCCAEBCARtMGsCAQEEIIfXus/y+3RdwUZ0 +0db3boxPCzzRcI3CgIC8ggdGDPqPoUQDQgAEdlZ2yOiBsmREPaw8TsrGNmTLL6q1 +lVz8+OQ780Xxfo9VIFeR0Qbk8CgqX0lWt5hbEbbzEbF6I2nZCJndQ9VIoA== +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP256t1_PUB -----BEGIN PUBLIC KEY----- @@ -8028,12 +8070,12 @@ SharedSecret=287a8f19e6f06476b222805eb11907c536fa6ea02b8877ea6d5323f9fabccdd8 # TEST CURVE brainpoolP320r1 PrivateKey=ALICE_brainpoolP320r1 ------BEGIN EC PRIVATE KEY----- -MIGQAgEBBChEG+GykvgdkDphx+i7OI1YW4TV7VFw3r3GWwnw4ZkQyhtXb2me1CVJ -oAsGCSskAwMCCAEBCaFUA1IABFDmVKAu6UDU1doe67Fzp3WeLAKNcaLjX13W0X70 -4bqNvSU7q747RCCbd46miRYsiqYejnsX0A/A5bOiI1LJixCGcAgm1pnGajKeok/e -csl+ ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGiAgEAMBQGByqGSM49AgEGCSskAwMCCAEBCQSBhjCBgwIBAQQoRBvhspL4HZA6 +YcfouziNWFuE1e1RcN69xlsJ8OGZEMobV29pntQlSaFUA1IABFDmVKAu6UDU1doe +67Fzp3WeLAKNcaLjX13W0X704bqNvSU7q747RCCbd46miRYsiqYejnsX0A/A5bOi +I1LJixCGcAgm1pnGajKeok/ecsl+ +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP320r1_PUB -----BEGIN PUBLIC KEY----- @@ -8043,12 +8085,12 @@ caLjX13W0X704bqNvSU7q747RCCbd46miRYsiqYejnsX0A/A5bOiI1LJixCGcAgm -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP320r1 ------BEGIN EC PRIVATE KEY----- -MIGQAgEBBCiL2CGoxCnxl3HFVe44wLrq1Ui9ND0Rfq1pYsPLzZ4FEC3swi1vktoy -oAsGCSskAwMCCAEBCaFUA1IABHFexsmyGSMPdLCma5vzaFlbk/gAkq6yfpE+BMok -I+7GXx4dJz9+sKOi8h++T4SnocW03M7I5zOQVfK+82Kkq/vXCzEdkVRUPU4HVls7 -nil0 ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGiAgEAMBQGByqGSM49AgEGCSskAwMCCAEBCQSBhjCBgwIBAQQoi9ghqMQp8Zdx +xVXuOMC66tVIvTQ9EX6taWLDy82eBRAt7MItb5LaMqFUA1IABHFexsmyGSMPdLCm +a5vzaFlbk/gAkq6yfpE+BMokI+7GXx4dJz9+sKOi8h++T4SnocW03M7I5zOQVfK+ +82Kkq/vXCzEdkVRUPU4HVls7nil0 +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP320r1_PUB -----BEGIN PUBLIC KEY----- @@ -8070,12 +8112,12 @@ SharedSecret=13a56c63c2dafe3e053534d5bf32c7eb4a0733bf356510725d378c5cbcf69742407 # TEST CURVE brainpoolP320t1 PrivateKey=ALICE_brainpoolP320t1 ------BEGIN EC PRIVATE KEY----- -MIGQAgEBBCjGX454gtrCjrkzhhu0tIBFdgmwUmLgXxxQXq9+jWzBGgIvqwCdXRBJ -oAsGCSskAwMCCAEBCqFUA1IABFN48RBqcd0PyU7NTRjaJsUaYXBlectX7JwhB/X/ -bbuNUK1YW9tZJZSZ/bBUfVfEgUhC+0qrvomc3xhyYBJIQeGWODwC1rHjO2H7GGvx -1HmF ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGiAgEAMBQGByqGSM49AgEGCSskAwMCCAEBCgSBhjCBgwIBAQQoxl+OeILawo65 +M4YbtLSARXYJsFJi4F8cUF6vfo1swRoCL6sAnV0QSaFUA1IABFN48RBqcd0PyU7N +TRjaJsUaYXBlectX7JwhB/X/bbuNUK1YW9tZJZSZ/bBUfVfEgUhC+0qrvomc3xhy +YBJIQeGWODwC1rHjO2H7GGvx1HmF +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP320t1_PUB -----BEGIN PUBLIC KEY----- @@ -8085,12 +8127,12 @@ ectX7JwhB/X/bbuNUK1YW9tZJZSZ/bBUfVfEgUhC+0qrvomc3xhyYBJIQeGWODwC -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP320t1 ------BEGIN EC PRIVATE KEY----- -MIGQAgEBBCgyVOIfYIzdcZpVc85Dm12b4Ymac/TeBs0rg863nJCmdbwehodz5JLn -oAsGCSskAwMCCAEBCqFUA1IABLXO5ngGf17dU+aeQetDyXqlTTxtTrav1/NGb+i9 -BQUAsbIMQkdY0zWWbhksoMn56F2DBTSFwBlb1hBtp9fNIGUbgKqOlvtBpQHIoKXY -Eq3l ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIGiAgEAMBQGByqGSM49AgEGCSskAwMCCAEBCgSBhjCBgwIBAQQoMlTiH2CM3XGa +VXPOQ5tdm+GJmnP03gbNK4POt5yQpnW8HoaHc+SS56FUA1IABLXO5ngGf17dU+ae +QetDyXqlTTxtTrav1/NGb+i9BQUAsbIMQkdY0zWWbhksoMn56F2DBTSFwBlb1hBt +p9fNIGUbgKqOlvtBpQHIoKXYEq3l +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP320t1_PUB -----BEGIN PUBLIC KEY----- @@ -8112,12 +8154,12 @@ SharedSecret=170d1f5fc4248700be75499eac813fac642df1311ab005e10796cc2ef43b82f8d78 # TEST CURVE brainpoolP384r1 PrivateKey=ALICE_brainpoolP384r1 ------BEGIN EC PRIVATE KEY----- -MIGoAgEBBDB5NssOnd89sgvzDsj5pDNTx51VdeIW23xSXHsdK4C8e7+5p550IoD6 -xcpd7ff9qgOgCwYJKyQDAwIIAQELoWQDYgAEgQEp8Mrclp7hd1kkTnaXCEzAyhlM -UtBIXQGI8ALS3FaMoL4mjIlhAU+vNdIcI9NGBx7QFRUzFIy3IAyF+VPq8fM7Yyjk -0x4P8UB1N+d2odKvKFqFBQBQmd6S5h+0ijis ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIG6AgEAMBQGByqGSM49AgEGCSskAwMCCAEBCwSBnjCBmwIBAQQweTbLDp3fPbIL +8w7I+aQzU8edVXXiFtt8Ulx7HSuAvHu/uaeedCKA+sXKXe33/aoDoWQDYgAEgQEp +8Mrclp7hd1kkTnaXCEzAyhlMUtBIXQGI8ALS3FaMoL4mjIlhAU+vNdIcI9NGBx7Q +FRUzFIy3IAyF+VPq8fM7Yyjk0x4P8UB1N+d2odKvKFqFBQBQmd6S5h+0ijis +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP384r1_PUB -----BEGIN PUBLIC KEY----- @@ -8127,12 +8169,12 @@ TFLQSF0BiPAC0txWjKC+JoyJYQFPrzXSHCPTRgce0BUVMxSMtyAMhflT6vHzO2Mo -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP384r1 ------BEGIN EC PRIVATE KEY----- -MIGoAgEBBDAXoRGwEo8iza9gc2eTJvXl4d9MhDnyqwWUX3SrO050bOHK2JZlc+86 -HiSHO6MV91mgCwYJKyQDAwIIAQELoWQDYgAEDxy4ddTAt+nTw0F16nhHhmmNbns3 -bX3rKEcY+686v58dAvx4VWOC7vHsiwek9ZYbZSkmKy6H78ndkBrmU3BBR7hFGyU7 -CWSDFoH5Oybk0+JzkNa0qAm8+MpAIcFqb+IY ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIG6AgEAMBQGByqGSM49AgEGCSskAwMCCAEBCwSBnjCBmwIBAQQwF6ERsBKPIs2v +YHNnkyb15eHfTIQ58qsFlF90qztOdGzhytiWZXPvOh4khzujFfdZoWQDYgAEDxy4 +ddTAt+nTw0F16nhHhmmNbns3bX3rKEcY+686v58dAvx4VWOC7vHsiwek9ZYbZSkm +Ky6H78ndkBrmU3BBR7hFGyU7CWSDFoH5Oybk0+JzkNa0qAm8+MpAIcFqb+IY +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP384r1_PUB -----BEGIN PUBLIC KEY----- @@ -8154,12 +8196,12 @@ SharedSecret=0b3ad57e83759760d94904d9ea266b538120c6db2b5046217aa1ecd924828b949d3 # TEST CURVE brainpoolP384t1 PrivateKey=ALICE_brainpoolP384t1 ------BEGIN EC PRIVATE KEY----- -MIGoAgEBBDBhv/Ff07ybES61s5DBD+kHzraR6r95bGPwZbjWbY6ugS04lkvVKwr/ -xnAAvcF02jKgCwYJKyQDAwIIAQEMoWQDYgAENpcXDPQYBhU8zi4G6mQtjdgVmpdn -4Iuwb0/VVmopmFAL0ISDB0qk9Hn2Lt9rmE8NathqkKKlVHd/Y5FRqf06PZj8jaYH -Axvz5E1J8ykrbT7rUpbj9Df2t+eop9YBbSxc ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIG6AgEAMBQGByqGSM49AgEGCSskAwMCCAEBDASBnjCBmwIBAQQwYb/xX9O8mxEu +tbOQwQ/pB862keq/eWxj8GW41m2OroEtOJZL1SsK/8ZwAL3BdNoyoWQDYgAENpcX +DPQYBhU8zi4G6mQtjdgVmpdn4Iuwb0/VVmopmFAL0ISDB0qk9Hn2Lt9rmE8Nathq +kKKlVHd/Y5FRqf06PZj8jaYHAxvz5E1J8ykrbT7rUpbj9Df2t+eop9YBbSxc +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP384t1_PUB -----BEGIN PUBLIC KEY----- @@ -8169,12 +8211,12 @@ BwMb8+RNSfMpK20+61KW4/Q39rfnqKfWAW0sXA== -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP384t1 ------BEGIN EC PRIVATE KEY----- -MIGoAgEBBDBsUc4UweUxdFh3b10XofMoyHT13Ds4DLER5E5Oo6MWwj7CFqq0vgZY -fk/RSAU8MAegCwYJKyQDAwIIAQEMoWQDYgAER24uXKoWWnFFusbCPtDzz7n9zDIW -zFqMeP6YE3MOseyfRFcKIVz/omWBVwpUbd3ca6Ord/Mh8hThIV4tZbPUwlyzzEW2 -NMJtd2t5JKdja0aT7fbp7NS9IJzNIRDl7r8z ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIG6AgEAMBQGByqGSM49AgEGCSskAwMCCAEBDASBnjCBmwIBAQQwbFHOFMHlMXRY +d29dF6HzKMh09dw7OAyxEeROTqOjFsI+whaqtL4GWH5P0UgFPDAHoWQDYgAER24u +XKoWWnFFusbCPtDzz7n9zDIWzFqMeP6YE3MOseyfRFcKIVz/omWBVwpUbd3ca6Or +d/Mh8hThIV4tZbPUwlyzzEW2NMJtd2t5JKdja0aT7fbp7NS9IJzNIRDl7r8z +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP384t1_PUB -----BEGIN PUBLIC KEY----- @@ -8196,13 +8238,13 @@ SharedSecret=0fde85a61157cdd898196f291802ebd57bb2e39d98c4e6ad9bb3e2e0375e1df9bf7 # TEST CURVE brainpoolP512r1 PrivateKey=ALICE_brainpoolP512r1 ------BEGIN EC PRIVATE KEY----- -MIHaAgEBBECMxUrk8DnFiTzmA2zbxijR6tBKSCaKV0vtbAxV5PrpqWCghKV4UpP5 -9CQNGV9Io9cJmMrQ2cpfkr2uQybzD3LAoAsGCSskAwMCCAEBDaGBhQOBggAEHlj4 -gsnR2wN53k/hSIcAtbgHwbld5uS1/gR8RtoyaEDit4Ti59/I9kRkZFEHJemhpTP2 -xY03j3M5rHP7vzk1NVKgYHJQ9MvMtPd6G+Fj5D0YN1nnyqP3IJ8PyXmOdXBMoMHu -+H50QbYZpcUFOqJhKp1T0+58xTXJdP8axl1IjtI= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIHsAgEAMBQGByqGSM49AgEGCSskAwMCCAEBDQSB0DCBzQIBAQRAjMVK5PA5xYk8 +5gNs28Yo0erQSkgmildL7WwMVeT66algoISleFKT+fQkDRlfSKPXCZjK0NnKX5K9 +rkMm8w9ywKGBhQOBggAEHlj4gsnR2wN53k/hSIcAtbgHwbld5uS1/gR8RtoyaEDi +t4Ti59/I9kRkZFEHJemhpTP2xY03j3M5rHP7vzk1NVKgYHJQ9MvMtPd6G+Fj5D0Y +N1nnyqP3IJ8PyXmOdXBMoMHu+H50QbYZpcUFOqJhKp1T0+58xTXJdP8axl1IjtI= +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP512r1_PUB -----BEGIN PUBLIC KEY----- @@ -8213,13 +8255,13 @@ YHJQ9MvMtPd6G+Fj5D0YN1nnyqP3IJ8PyXmOdXBMoMHu+H50QbYZpcUFOqJhKp1T -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP512r1 ------BEGIN EC PRIVATE KEY----- -MIHaAgEBBEBkDXT6Tj4SyZ6+ORP0t1JfTtqZHBetPsIGcSyRmkeRkShhVBroW4Ts -VqLSSMvzqVQILjGhOMVsfe0susPS/u/CoAsGCSskAwMCCAEBDaGBhQOBggAEo3NA -MIGp0rJxReih4nbEiTegA4pSEk84CUHHBLGuLsekVo1vmj1LTnu4dVuILLf+MSZh -9jjNmsWuEGSHIaZx6hniFHGdaRQ3GFODGvkE6z2d2kwv3Fmsq9+gu4By2OhSCfP+ -hpFhobXAYwWXzgaBFH+TqlF31Dyr2fuPnkL7tK4= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIHsAgEAMBQGByqGSM49AgEGCSskAwMCCAEBDQSB0DCBzQIBAQRAZA10+k4+Esme +vjkT9LdSX07amRwXrT7CBnEskZpHkZEoYVQa6FuE7Fai0kjL86lUCC4xoTjFbH3t +LLrD0v7vwqGBhQOBggAEo3NAMIGp0rJxReih4nbEiTegA4pSEk84CUHHBLGuLsek +Vo1vmj1LTnu4dVuILLf+MSZh9jjNmsWuEGSHIaZx6hniFHGdaRQ3GFODGvkE6z2d +2kwv3Fmsq9+gu4By2OhSCfP+hpFhobXAYwWXzgaBFH+TqlF31Dyr2fuPnkL7tK4= +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP512r1_PUB -----BEGIN PUBLIC KEY----- @@ -8242,13 +8284,13 @@ SharedSecret=80751feb09215a9da32f9f8c97133f53f0286a89969bd00d7f365da7f7736f45e63 # TEST CURVE brainpoolP512t1 PrivateKey=ALICE_brainpoolP512t1 ------BEGIN EC PRIVATE KEY----- -MIHaAgEBBECbwO3WdaC7ErmKqF/qaKD9jty2YyBtEJZIkwx3eXDn+Izia0/1pyGF -oRYYiYhZXoVuvKLom/eeK0IFTGmpESlyoAsGCSskAwMCCAEBDqGBhQOBggAEH/z+ -dOHhLfxI0GLpmUjYaSlC2H380nBhe6P4GSrnpya/Yew0IRyDfo0p99vwgOaLh8wJ -IH3Joy4NMtHthg8IAFmoctAoWkQ21E0HjPjwqZbxmvBD0S9opVycFR8XUSaK0EHy -HO7hfuVsdyYzIIjpKViP7uOOtrggsTepWzBQt9I= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIHsAgEAMBQGByqGSM49AgEGCSskAwMCCAEBDgSB0DCBzQIBAQRAm8Dt1nWguxK5 +iqhf6mig/Y7ctmMgbRCWSJMMd3lw5/iM4mtP9achhaEWGImIWV6Fbryi6Jv3nitC +BUxpqREpcqGBhQOBggAEH/z+dOHhLfxI0GLpmUjYaSlC2H380nBhe6P4GSrnpya/ +Yew0IRyDfo0p99vwgOaLh8wJIH3Joy4NMtHthg8IAFmoctAoWkQ21E0HjPjwqZbx +mvBD0S9opVycFR8XUSaK0EHyHO7hfuVsdyYzIIjpKViP7uOOtrggsTepWzBQt9I= +-----END PRIVATE KEY----- PublicKey=ALICE_brainpoolP512t1_PUB -----BEGIN PUBLIC KEY----- @@ -8259,13 +8301,13 @@ ctAoWkQ21E0HjPjwqZbxmvBD0S9opVycFR8XUSaK0EHyHO7hfuVsdyYzIIjpKViP -----END PUBLIC KEY----- PrivateKey=BOB_brainpoolP512t1 ------BEGIN EC PRIVATE KEY----- -MIHaAgEBBEAVK2tYHA61OVj+kF5PadyNMdw3Mqb6hxOIi+vRFQS5fwhN34vnH0f5 -kuTjhPzn/zKpM+WTpxlIdvJMblSQ8ZW9oAsGCSskAwMCCAEBDqGBhQOBggAEE6EY -YwpBA3NBflj/HYwxzbaxuALefTsTr5O0bLqh4J6SxkAwsQnlkU8PCnzEuvdBNxSw -W7276VGfwDO7kFKEdZq3cnT+P41yi/XBVK7xgaL1R2U+vCxWsje6JLixWEdJkJ+6 -TqPKICdriNge1zbjvfhb01zP58E/Xsgh5/deJco= ------END EC PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIHsAgEAMBQGByqGSM49AgEGCSskAwMCCAEBDgSB0DCBzQIBAQRAFStrWBwOtTlY +/pBeT2ncjTHcNzKm+ocTiIvr0RUEuX8ITd+L5x9H+ZLk44T85/8yqTPlk6cZSHby +TG5UkPGVvaGBhQOBggAEE6EYYwpBA3NBflj/HYwxzbaxuALefTsTr5O0bLqh4J6S +xkAwsQnlkU8PCnzEuvdBNxSwW7276VGfwDO7kFKEdZq3cnT+P41yi/XBVK7xgaL1 +R2U+vCxWsje6JLixWEdJkJ+6TqPKICdriNge1zbjvfhb01zP58E/Xsgh5/deJco= +-----END PRIVATE KEY----- PublicKey=BOB_brainpoolP512t1_PUB -----BEGIN PUBLIC KEY----- From builds at travis-ci.org Fri Apr 14 12:28:19 2017 From: builds at travis-ci.org (Travis CI) Date: Fri, 14 Apr 2017 12:28:19 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10310 (master - a81c33e) In-Reply-To: Message-ID: <58f0c052aef9f_43feb533c9adc49131e@ed6de1cd-785e-477d-baf5-b83d96f7d1ea.mail> Build Update for openssl/openssl ------------------------------------- Build: #10310 Status: Still Failing Duration: 23 minutes and 45 seconds Commit: a81c33e (master) Author: Nicola Tuveri Message: Remove ecdhtest.c All tests from ecdhtest.c have been ported to evptests.txt Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3219) View the changeset: https://github.com/openssl/openssl/compare/4afc60605abc...a81c33ef65b4 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/222051346 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Fri Apr 14 12:55:12 2017 From: builds at travis-ci.org (Travis CI) Date: Fri, 14 Apr 2017 12:55:12 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10313 (master - 7db0289) In-Reply-To: Message-ID: <58f0c6cbc2d32_43fe8ca5cb960262024@be920534-bbc8-4169-a55c-044ad24735e2.mail> Build Update for openssl/openssl ------------------------------------- Build: #10313 Status: Still Failing Duration: 22 minutes and 50 seconds Commit: 7db0289 (master) Author: Nicola Tuveri Message: Reformat evptests.txt When compiling without EC support the test fails abruptly reading some keys. Some keys merged in commit db04055 start with ------BEGIN EC PRIVATE KEY----- this format is not supported without EC support. This commit reformat those keys with the generic format. After this change the test simply skips the unsupported EC keys when EC is disabled, without parsing errors. Reviewed-by: Richard Levitte Reviewed-by: Andy Polyakov Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3223) View the changeset: https://github.com/openssl/openssl/compare/a81c33ef65b4...7db0289ea70b View the full build log and details: https://travis-ci.org/openssl/openssl/builds/222057085 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Fri Apr 14 14:41:51 2017 From: no-reply at appveyor.com (AppVeyor) Date: Fri, 14 Apr 2017 14:41:51 +0000 Subject: [openssl-commits] Build failed: openssl master.9630 Message-ID: <20170414144149.64457.3407.C5E23B2C@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Fri Apr 14 15:33:05 2017 From: no-reply at appveyor.com (AppVeyor) Date: Fri, 14 Apr 2017 15:33:05 +0000 Subject: [openssl-commits] Build completed: openssl master.9631 Message-ID: <20170414153304.23134.74050.D432A795@appveyor.com> An HTML attachment was scrubbed... URL: From osslsanity at gmail.com Sat Apr 15 06:45:56 2017 From: osslsanity at gmail.com (address not configured yet) Date: Sat, 15 Apr 2017 06:45:56 +0000 (UTC) Subject: [openssl-commits] Jenkins build is back to normal : 1_0_2_basic #13 Message-ID: <51336087.1.1492238756969.JavaMail.jenkins@ip-172-31-11-199.us-west-2.compute.internal> See From rsalz at openssl.org Sun Apr 16 14:23:14 2017 From: rsalz at openssl.org (Rich Salz) Date: Sun, 16 Apr 2017 14:23:14 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492352594.082199.388.nullmailer@dev.openssl.org> The branch master has been updated via cad3f9dacbd03ea686a26690c8f4e58866d08104 (commit) from 7db0289ea70b9bec94e32350cc8ec9da96ab2776 (commit) - Log ----------------------------------------------------------------- commit cad3f9dacbd03ea686a26690c8f4e58866d08104 Author: Rich Salz Date: Fri Apr 14 21:20:54 2017 -0400 Add -f -r flags to find-unused-errs Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3230) ----------------------------------------------------------------------- Summary of changes: util/find-unused-errs | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/util/find-unused-errs b/util/find-unused-errs index 68cf66b..cd1026d 100755 --- a/util/find-unused-errs +++ b/util/find-unused-errs @@ -13,8 +13,27 @@ export X1=/tmp/f.1.$$ export X2=/tmp/f.2.$$ +case "$1" in + -f) + PAT='_F_' + echo Functions only + ;; + -[er]) + PAT='_R_' + echo Reason codes only + ;; + "") + PAT='_[FR]_' + echo Function and reasons + ;; + *) + echo "Usage error; one of -[efr] required." + exit 1; + ;; +esac + cd include/openssl || exit 1 -grep '_[RF]_' * | awk '{print $3;}' | sort -u >$X1 +grep "$PAT" * | grep -v ERR_FATAL_ERROR | awk '{print $3;}' | sort -u >$X1 cd ../.. for F in `cat $X1` ; do From builds at travis-ci.org Sun Apr 16 14:46:51 2017 From: builds at travis-ci.org (Travis CI) Date: Sun, 16 Apr 2017 14:46:51 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10336 (master - cad3f9d) In-Reply-To: Message-ID: <58f383dbd130e_43fd51e8e21e0376682@0521b2ac-70ac-42d7-919e-4427e3632541.mail> Build Update for openssl/openssl ------------------------------------- Build: #10336 Status: Still Failing Duration: 22 minutes and 24 seconds Commit: cad3f9d (master) Author: Rich Salz Message: Add -f -r flags to find-unused-errs Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3230) View the changeset: https://github.com/openssl/openssl/compare/7db0289ea70b...cad3f9dacbd0 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/222561326 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From kurt at openssl.org Sun Apr 16 17:31:07 2017 From: kurt at openssl.org (Kurt Roeckx) Date: Sun, 16 Apr 2017 17:31:07 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492363867.547481.13964.nullmailer@dev.openssl.org> The branch master has been updated via ff54cd9beb07e47c48dac02d3006b0fbe5fc6cc2 (commit) via 14a6570f318562faf850f842ef3ce56f54ddc890 (commit) via 930aa9eeedd57478418ee267bb91d15ac95b1a78 (commit) via b534df96c99b7f6103188005a688944645e2ec7b (commit) via 644fb113a0fe069c43911a86ff1b78bb6b7892c3 (commit) from cad3f9dacbd03ea686a26690c8f4e58866d08104 (commit) - Log ----------------------------------------------------------------- commit ff54cd9beb07e47c48dac02d3006b0fbe5fc6cc2 Author: Kurt Roeckx Date: Mon Mar 13 22:43:36 2017 +0100 Optionally check for early data This adds a way to use the last byte of the buffer to change the behavior of the server. The last byte is used so that the existing corpus can be reused either without changing it, or just adding a single byte, and that it can still be used by other projects. Reviewed-by: Rich Salz Reviewed-by: Andy Polyakov GH: #2683 commit 14a6570f318562faf850f842ef3ce56f54ddc890 Author: Kurt Roeckx Date: Sun Feb 19 16:59:25 2017 +0100 Use a fixed time when fuzzing. Reviewed-by: Rich Salz Reviewed-by: Andy Polyakov GH: #2683 commit 930aa9eeedd57478418ee267bb91d15ac95b1a78 Author: Kurt Roeckx Date: Sun Feb 19 17:09:45 2017 +0100 Document how to update the corpus. Reviewed-by: Rich Salz Reviewed-by: Andy Polyakov GH: #2683 commit b534df96c99b7f6103188005a688944645e2ec7b Author: Kurt Roeckx Date: Sun Feb 19 17:04:11 2017 +0100 Make x509 and asn1 fuzzer reproducible Reviewed-by: Rich Salz Reviewed-by: Andy Polyakov GH: #2683 commit 644fb113a0fe069c43911a86ff1b78bb6b7892c3 Author: Kurt Roeckx Date: Sun Feb 19 17:05:00 2017 +0100 Switch libfuzzer to use trace-pc-guard Reviewed-by: Rich Salz Reviewed-by: Andy Polyakov GH: #2683 ----------------------------------------------------------------------- Summary of changes: fuzz/README.md | 14 +++++++++++++- fuzz/asn1.c | 12 ++++++++++++ fuzz/client.c | 18 ++++++++++++++++++ fuzz/server.c | 39 +++++++++++++++++++++++++++++++++++++-- fuzz/x509.c | 12 ++++++++++++ 5 files changed, 92 insertions(+), 3 deletions(-) diff --git a/fuzz/README.md b/fuzz/README.md index 31e21ac..3800ef1 100644 --- a/fuzz/README.md +++ b/fuzz/README.md @@ -40,7 +40,7 @@ Configure for fuzzing: --with-fuzzer-lib=../../svn-work/Fuzzer/libFuzzer \ -DPEDANTIC enable-asan enable-ubsan no-shared \ -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION \ - -fsanitize-coverage=edge,indirect-calls,8bit-counters \ + -fsanitize-coverage=trace-pc-guard,indirect-calls,trace-cmp \ enable-ec_nistp_64_gcc_128 -fno-sanitize=alignment enable-tls1_3 \ enable-weak-ssl-ciphers enable-rc5 enable-md2 \ enable-ssl3 enable-ssl3-method enable-nextprotoneg \ @@ -117,3 +117,15 @@ Since the corpus depends on the default behaviour of the client and the server, changes in what they send by default will have an impact on the coverage. The corpus will need to be updated in that case. +Updating the corpus +=================== + +The client and server corpus is generated with multiple config options: +- The options as documented above +- Without enable-ec_nistp_64_gcc_128 and without --debug +- With no-asm +- Using 32 bit +- A default config, plus options needed to generate the fuzzer. + +The libfuzzer merge option is used to add the additional coverage +from each config to the minimal set. diff --git a/fuzz/asn1.c b/fuzz/asn1.c index 0c61315..c45fd79 100644 --- a/fuzz/asn1.c +++ b/fuzz/asn1.c @@ -28,8 +28,14 @@ #include #include #include +#include #include "fuzzer.h" +#ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION +extern int rand_predictable; +#endif +#define ENTROPY_NEEDED 32 + static ASN1_ITEM_EXP *item_type[] = { ASN1_ITEM_ref(ACCESS_DESCRIPTION), #ifndef OPENSSL_NO_RFC3779 @@ -210,6 +216,12 @@ int FuzzerInitialize(int *argc, char ***argv) OPENSSL_init_crypto(OPENSSL_INIT_LOAD_CRYPTO_STRINGS, NULL); ERR_get_state(); CRYPTO_free_ex_index(0, -1); + RAND_add("", 1, ENTROPY_NEEDED); + RAND_status(); + +#ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION + rand_predictable = 1; +#endif return 1; } diff --git a/fuzz/client.c b/fuzz/client.c index 9404a95..622d782 100644 --- a/fuzz/client.c +++ b/fuzz/client.c @@ -8,6 +8,7 @@ * or in the file LICENSE in the source distribution. */ +#include #include #include #include @@ -25,6 +26,23 @@ extern int rand_predictable; /* unused, to avoid warning. */ static int idx; +#define FUZZTIME 1485898104 + +#define TIME_IMPL(t) { if (t != NULL) *t = FUZZTIME; return FUZZTIME; } + +/* + * This might not in all cases and still get the current time + * instead of the fixed time. This will just result in things + * not being fully reproducible and have a slightly different + * coverage. + */ +#if defined(_WIN32) && defined(_TIME64_T_DEFINED) +time64_t _time64(time64_t *t) TIME_IMPL(t) +#endif +#if !defined(_WIN32) || !defined(_MSC_VER) +time_t time(time_t *t) TIME_IMPL(t) +#endif + int FuzzerInitialize(int *argc, char ***argv) { STACK_OF(SSL_COMP) *comp_methods; diff --git a/fuzz/server.c b/fuzz/server.c index 5bbba1c..1a6dd2c 100644 --- a/fuzz/server.c +++ b/fuzz/server.c @@ -12,7 +12,7 @@ /* Test first part of SSL server handshake. */ - +#include #include #include #include @@ -473,6 +473,23 @@ extern int rand_predictable; /* unused, to avoid warning. */ static int idx; +#define FUZZTIME 1485898104 + +#define TIME_IMPL(t) { if (t != NULL) *t = FUZZTIME; return FUZZTIME; } + +/* + * This might not in all cases and still get the current time + * instead of the fixed time. This will just result in things + * not being fully reproducible and have a slightly different + * coverage. + */ +#if defined(_WIN32) && defined(_TIME64_T_DEFINED) +time64_t _time64(time64_t *t) TIME_IMPL(t) +#endif +#if !defined(_WIN32) || !defined(_MSC_VER) +time_t time(time_t *t) TIME_IMPL(t) +#endif + int FuzzerInitialize(int *argc, char ***argv) { STACK_OF(SSL_COMP) *comp_methods; @@ -513,8 +530,9 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len) #ifndef OPENSSL_NO_DSA DSA *dsakey = NULL; #endif + uint8_t opt; - if (len == 0) + if (len < 2) return 0; /* @@ -598,7 +616,24 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len) out = BIO_new(BIO_s_mem()); SSL_set_bio(server, in, out); SSL_set_accept_state(server); + + opt = (uint8_t)buf[len-1]; + len--; + OPENSSL_assert((size_t)BIO_write(in, buf, len) == len); + + if ((opt & 0x01) != 0) + { + do { + char early_buf[16384]; + size_t early_len; + ret = SSL_read_early_data(server, early_buf, sizeof(early_buf), &early_len); + + if (ret != SSL_READ_EARLY_DATA_SUCCESS) + break; + } while (1); + } + if (SSL_do_handshake(server) == 1) { /* Keep reading application data until error or EOF. */ uint8_t tmp[1024]; diff --git a/fuzz/x509.c b/fuzz/x509.c index 8d383e4..83b00f6 100644 --- a/fuzz/x509.c +++ b/fuzz/x509.c @@ -11,13 +11,25 @@ #include #include #include +#include #include "fuzzer.h" +#ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION +extern int rand_predictable; +#endif +#define ENTROPY_NEEDED 32 + int FuzzerInitialize(int *argc, char ***argv) { OPENSSL_init_crypto(OPENSSL_INIT_LOAD_CRYPTO_STRINGS, NULL); ERR_get_state(); CRYPTO_free_ex_index(0, -1); + RAND_add("", 1, ENTROPY_NEEDED); + RAND_status(); + +#ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION + rand_predictable = 1; +#endif return 1; } From builds at travis-ci.org Sun Apr 16 17:50:00 2017 From: builds at travis-ci.org (Travis CI) Date: Sun, 16 Apr 2017 17:50:00 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10340 (master - ff54cd9) In-Reply-To: Message-ID: <58f3aef0f12e7_43fdf9b7b805860802@f32c914a-988e-4d60-b37d-425a3eb591ea.mail> Build Update for openssl/openssl ------------------------------------- Build: #10340 Status: Still Failing Duration: 18 minutes and 20 seconds Commit: ff54cd9 (master) Author: Kurt Roeckx Message: Optionally check for early data This adds a way to use the last byte of the buffer to change the behavior of the server. The last byte is used so that the existing corpus can be reused either without changing it, or just adding a single byte, and that it can still be used by other projects. Reviewed-by: Rich Salz Reviewed-by: Andy Polyakov GH: #2683 View the changeset: https://github.com/openssl/openssl/compare/cad3f9dacbd0...ff54cd9beb07 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/222595894 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From rsalz at openssl.org Mon Apr 17 01:55:18 2017 From: rsalz at openssl.org (Rich Salz) Date: Mon, 17 Apr 2017 01:55:18 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492394118.757695.19577.nullmailer@dev.openssl.org> The branch master has been updated via 0c44545c0f5781b1d2401b0d3c93c0376399c8e5 (commit) from ff54cd9beb07e47c48dac02d3006b0fbe5fc6cc2 (commit) - Log ----------------------------------------------------------------- commit 0c44545c0f5781b1d2401b0d3c93c0376399c8e5 Author: Rich Salz Date: Sun Apr 16 21:46:31 2017 -0400 Catch EC_R_UNKNOWN_GROUP in check_unsupported() If EC support is enabled we should catch also EC_R_UNKNOWN_GROUP as an hint to an unsupported algorithm/curve (e.g. if binary EC support is disabled). Before this commit the issue arise for example if binary EC keys are added in evptests.txt, and the test is run when EC is enabled but EC2m is disabled. E.g. adding these lines to evptests.txt would reproduce the issue: ~~~ PrivateKey=KAS-ECC-CDH_K-163_C0 -----BEGIN PRIVATE KEY----- MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUAZlO2B3OY+tx79eYBWBcB SMPcRSehLgMsAAQHH4sod9YCfZwa3kJE8t6hJpLvI9UFwV7ndiIccrhLNHzjg/OA Z7icPpo= -----END PRIVATE KEY----- PublicKey=KAS-ECC-CDH_K-163_C0-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBx+LKHfWAn2cGt5CRPLeoSaS7yPVBcFe 53YiHHK4SzR844PzgGe4nD6a -----END PUBLIC KEY----- PublicKey=KAS-ECC-CDH_K-163_C0-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBXQjbxQoxDITCUZ4Ols6q7bCfqXWB5CM JRuNoCHLrCgfEj969PrFs9u4 -----END PUBLIC KEY----- Derive=KAS-ECC-CDH_K-163_C0 PeerKey=KAS-ECC-CDH_K-163_C0-Peer-PUBLIC Ctrl=ecdh_cofactor_mode:1 SharedSecret=04325bff38f1b0c83c27f554a6c972a80f14bc23bc ~~~ Reviewed-by: Andy Polyakov Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3226) ----------------------------------------------------------------------- Summary of changes: test/evp_test.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/test/evp_test.c b/test/evp_test.c index f9dafec..f99269d 100644 --- a/test/evp_test.c +++ b/test/evp_test.c @@ -469,6 +469,18 @@ static int check_unsupported() ERR_clear_error(); return 1; } +#ifndef OPENSSL_NO_EC + /* + * If EC support is enabled we should catch also EC_R_UNKNOWN_GROUP as an + * hint to an unsupported algorithm/curve (e.g. if binary EC support is + * disabled). + */ + if (ERR_GET_LIB(err) == ERR_LIB_EC + && ERR_GET_REASON(err) == EC_R_UNKNOWN_GROUP) { + ERR_clear_error(); + return 1; + } +#endif /* OPENSSL_NO_EC */ return 0; } From rsalz at openssl.org Mon Apr 17 01:55:40 2017 From: rsalz at openssl.org (Rich Salz) Date: Mon, 17 Apr 2017 01:55:40 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1492394140.686462.20497.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via dca39445fc4ef95adc46d0ba33491934adfbef77 (commit) from cece12299b3163857a65c384885b91a9c7de93b8 (commit) - Log ----------------------------------------------------------------- commit dca39445fc4ef95adc46d0ba33491934adfbef77 Author: Rich Salz Date: Sun Apr 16 21:46:31 2017 -0400 Catch EC_R_UNKNOWN_GROUP in check_unsupported() If EC support is enabled we should catch also EC_R_UNKNOWN_GROUP as an hint to an unsupported algorithm/curve (e.g. if binary EC support is disabled). Before this commit the issue arise for example if binary EC keys are added in evptests.txt, and the test is run when EC is enabled but EC2m is disabled. E.g. adding these lines to evptests.txt would reproduce the issue: ~~~ PrivateKey=KAS-ECC-CDH_K-163_C0 -----BEGIN PRIVATE KEY----- MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUAZlO2B3OY+tx79eYBWBcB SMPcRSehLgMsAAQHH4sod9YCfZwa3kJE8t6hJpLvI9UFwV7ndiIccrhLNHzjg/OA Z7icPpo= -----END PRIVATE KEY----- PublicKey=KAS-ECC-CDH_K-163_C0-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBx+LKHfWAn2cGt5CRPLeoSaS7yPVBcFe 53YiHHK4SzR844PzgGe4nD6a -----END PUBLIC KEY----- PublicKey=KAS-ECC-CDH_K-163_C0-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBXQjbxQoxDITCUZ4Ols6q7bCfqXWB5CM JRuNoCHLrCgfEj969PrFs9u4 -----END PUBLIC KEY----- Derive=KAS-ECC-CDH_K-163_C0 PeerKey=KAS-ECC-CDH_K-163_C0-Peer-PUBLIC Ctrl=ecdh_cofactor_mode:1 SharedSecret=04325bff38f1b0c83c27f554a6c972a80f14bc23bc ~~~ Reviewed-by: Andy Polyakov Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3226) (cherry picked from commit 0c44545c0f5781b1d2401b0d3c93c0376399c8e5) ----------------------------------------------------------------------- Summary of changes: test/evp_test.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/test/evp_test.c b/test/evp_test.c index 41cbe11..d52bbfe 100644 --- a/test/evp_test.c +++ b/test/evp_test.c @@ -469,6 +469,18 @@ static int check_unsupported() ERR_clear_error(); return 1; } +#ifndef OPENSSL_NO_EC + /* + * If EC support is enabled we should catch also EC_R_UNKNOWN_GROUP as an + * hint to an unsupported algorithm/curve (e.g. if binary EC support is + * disabled). + */ + if (ERR_GET_LIB(err) == ERR_LIB_EC + && ERR_GET_REASON(err) == EC_R_UNKNOWN_GROUP) { + ERR_clear_error(); + return 1; + } +#endif /* OPENSSL_NO_EC */ return 0; } From rsalz at openssl.org Mon Apr 17 02:04:51 2017 From: rsalz at openssl.org (Rich Salz) Date: Mon, 17 Apr 2017 02:04:51 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492394691.959441.29366.nullmailer@dev.openssl.org> The branch master has been updated via 5c8e9d531ba54d26e4bcbe66710c7c75bf0fc4e9 (commit) via 529243992bcfbb9ac9aade69451eb2c663739c04 (commit) from 0c44545c0f5781b1d2401b0d3c93c0376399c8e5 (commit) - Log ----------------------------------------------------------------- commit 5c8e9d531ba54d26e4bcbe66710c7c75bf0fc4e9 Author: Rich Salz Date: Sun Apr 16 09:17:39 2017 -0400 [squash]Build works with/out NO_ENGINE and NO_AFALG Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3229) commit 529243992bcfbb9ac9aade69451eb2c663739c04 Author: Rich Salz Date: Fri Apr 14 20:32:20 2017 -0400 Convert afalgtest Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3229) ----------------------------------------------------------------------- Summary of changes: test/afalgtest.c | 109 +++++++++++++++++++++++-------------------------------- test/build.info | 2 +- 2 files changed, 47 insertions(+), 64 deletions(-) diff --git a/test/afalgtest.c b/test/afalgtest.c index 7fc03ba..40ea025 100644 --- a/test/afalgtest.c +++ b/test/afalgtest.c @@ -10,6 +10,20 @@ #include #include +#include +#include +#include +#include +#include "testutil.h" + +/* Use a buffer size which is not aligned to block size */ +#define BUFFER_SIZE (8 * 1024) - 13 + +#ifndef OPENSSL_NO_ENGINE +static ENGINE *e; +#endif + + #ifndef OPENSSL_NO_AFALGENG # include # define K_MAJ 4 @@ -27,15 +41,7 @@ #endif #ifndef OPENSSL_NO_AFALGENG -#include -#include -#include -#include - -/* Use a buffer size which is not aligned to block size */ -#define BUFFER_SIZE (8 * 1024) - 13 - -static int test_afalg_aes_128_cbc(ENGINE *e) +static int test_afalg_aes_128_cbc(void) { EVP_CIPHER_CTX *ctx; const EVP_CIPHER *cipher = EVP_aes_128_cbc(); @@ -48,86 +54,63 @@ static int test_afalg_aes_128_cbc(ENGINE *e) unsigned char ebuf[BUFFER_SIZE + 32]; unsigned char dbuf[BUFFER_SIZE + 32]; int encl, encf, decl, decf; - unsigned int status = 0; + int ret = 0; - ctx = EVP_CIPHER_CTX_new(); - if (ctx == NULL) { - fprintf(stderr, "%s() failed to allocate ctx\n", __func__); - return 0; - } + if (!TEST_ptr(ctx = EVP_CIPHER_CTX_new())) + return 0; RAND_bytes(in, BUFFER_SIZE); - if ( !EVP_CipherInit_ex(ctx, cipher, e, key, iv, 1) - || !EVP_CipherUpdate(ctx, ebuf, &encl, in, BUFFER_SIZE) - || !EVP_CipherFinal_ex(ctx, ebuf+encl, &encf)) { - fprintf(stderr, "%s() failed encryption\n", __func__); + if (!TEST_true(EVP_CipherInit_ex(ctx, cipher, e, key, iv, 1)) + || !TEST_true(EVP_CipherUpdate(ctx, ebuf, &encl, in, BUFFER_SIZE)) + || !TEST_true(EVP_CipherFinal_ex(ctx, ebuf+encl, &encf))) goto end; - } encl += encf; - if ( !EVP_CIPHER_CTX_reset(ctx) - || !EVP_CipherInit_ex(ctx, cipher, e, key, iv, 0) - || !EVP_CipherUpdate(ctx, dbuf, &decl, ebuf, encl) - || !EVP_CipherFinal_ex(ctx, dbuf+decl, &decf)) { - fprintf(stderr, "%s() failed decryption\n", __func__); + if (!TEST_true(EVP_CIPHER_CTX_reset(ctx)) + || !TEST_true(EVP_CipherInit_ex(ctx, cipher, e, key, iv, 0)) + || !TEST_true(EVP_CipherUpdate(ctx, dbuf, &decl, ebuf, encl)) + || !TEST_true(EVP_CipherFinal_ex(ctx, dbuf+decl, &decf))) goto end; - } decl += decf; - if ( decl != BUFFER_SIZE - || memcmp(dbuf, in, BUFFER_SIZE)) { - fprintf(stderr, "%s() failed Dec(Enc(P)) != P\n", __func__); + if (!TEST_int_eq(decl, BUFFER_SIZE) + || !TEST_mem_eq(dbuf, BUFFER_SIZE, in, BUFFER_SIZE)) goto end; - } - status = 1; + ret = 1; end: EVP_CIPHER_CTX_free(ctx); - return status; + return ret; } +#endif int main(int argc, char **argv) { - ENGINE *e; - - CRYPTO_set_mem_debug(1); - CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON); + int ret = 0; +#ifdef OPENSSL_NO_ENGINE + setup_test(); + ret = run_tests(argv[0]); +#else ENGINE_load_builtin_engines(); - # ifndef OPENSSL_NO_STATIC_ENGINE OPENSSL_init_crypto(OPENSSL_INIT_ENGINE_AFALG, NULL); # endif - e = ENGINE_by_id("afalg"); - if (e == NULL) { - /* - * A failure to load is probably a platform environment problem so we - * don't treat this as an OpenSSL test failure, i.e. we return 0 - */ - fprintf(stderr, - "AFALG Test: Failed to load AFALG Engine - skipping test\n"); - return 0; - } + setup_test(); - if (test_afalg_aes_128_cbc(e) == 0) { - ENGINE_free(e); - return 1; + if ((e = ENGINE_by_id("afalg")) == NULL) { + /* Probably a platform env issue, not a test failure. */ + TEST_info("Can't load AFALG engine"); + } else { +# ifndef OPENSSL_NO_AFALGENG + ADD_TEST(test_afalg_aes_128_cbc); +# endif } - + ret = run_tests(argv[0]); ENGINE_free(e); - printf("PASS\n"); - return 0; -} - -#else /* OPENSSL_NO_AFALGENG */ +#endif -int main(int argc, char **argv) -{ - fprintf(stderr, "AFALG not supported - skipping AFALG tests\n"); - printf("PASS\n"); - return 0; + return finish_test(ret); } - -#endif diff --git a/test/build.info b/test/build.info index 2d290df..537b361 100644 --- a/test/build.info +++ b/test/build.info @@ -231,7 +231,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[threadstest]=.. ../include DEPEND[threadstest]=../libcrypto - SOURCE[afalgtest]=afalgtest.c + SOURCE[afalgtest]=afalgtest.c testutil.c INCLUDE[afalgtest]=.. ../include DEPEND[afalgtest]=../libcrypto From builds at travis-ci.org Mon Apr 17 02:17:53 2017 From: builds at travis-ci.org (Travis CI) Date: Mon, 17 Apr 2017 02:17:53 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10342 (master - 0c44545) In-Reply-To: Message-ID: <58f425d1808bb_43fd51e8e22e4823478@0521b2ac-70ac-42d7-919e-4427e3632541.mail> Build Update for openssl/openssl ------------------------------------- Build: #10342 Status: Still Failing Duration: 21 minutes and 24 seconds Commit: 0c44545 (master) Author: Rich Salz Message: Catch EC_R_UNKNOWN_GROUP in check_unsupported() If EC support is enabled we should catch also EC_R_UNKNOWN_GROUP as an hint to an unsupported algorithm/curve (e.g. if binary EC support is disabled). Before this commit the issue arise for example if binary EC keys are added in evptests.txt, and the test is run when EC is enabled but EC2m is disabled. E.g. adding these lines to evptests.txt would reproduce the issue: ~~~ PrivateKey=KAS-ECC-CDH_K-163_C0 -----BEGIN PRIVATE KEY----- MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUAZlO2B3OY+tx79eYBWBcB SMPcRSehLgMsAAQHH4sod9YCfZwa3kJE8t6hJpLvI9UFwV7ndiIccrhLNHzjg/OA Z7icPpo= -----END PRIVATE KEY----- PublicKey=KAS-ECC-CDH_K-163_C0-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBx+LKHfWAn2cGt5CRPLeoSaS7yPVBcFe 53YiHHK4SzR844PzgGe4nD6a -----END PUBLIC KEY----- PublicKey=KAS-ECC-CDH_K-163_C0-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBXQjbxQoxDITCUZ4Ols6q7bCfqXWB5CM JRuNoCHLrCgfEj969PrFs9u4 -----END PUBLIC KEY----- Derive=KAS-ECC-CDH_K-163_C0 PeerKey=KAS-ECC-CDH_K-163_C0-Peer-PUBLIC Ctrl=ecdh_cofactor_mode:1 SharedSecret=04325bff38f1b0c83c27f554a6c972a80f14bc23bc ~~~ Reviewed-by: Andy Polyakov Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3226) View the changeset: https://github.com/openssl/openssl/compare/ff54cd9beb07...0c44545c0f57 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/222677000 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Mon Apr 17 02:35:15 2017 From: builds at travis-ci.org (Travis CI) Date: Mon, 17 Apr 2017 02:35:15 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10344 (master - 5c8e9d5) In-Reply-To: Message-ID: <58f429e2e0d02_43fd51e6931b4832497@0521b2ac-70ac-42d7-919e-4427e3632541.mail> Build Update for openssl/openssl ------------------------------------- Build: #10344 Status: Still Failing Duration: 20 minutes and 56 seconds Commit: 5c8e9d5 (master) Author: Rich Salz Message: [squash]Build works with/out NO_ENGINE and NO_AFALG Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3229) View the changeset: https://github.com/openssl/openssl/compare/0c44545c0f57...5c8e9d531ba5 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/222678274 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From openssl at openssl.org Mon Apr 17 12:05:59 2017 From: openssl at openssl.org (OpenSSL run-checker) Date: Mon, 17 Apr 2017 12:05:59 +0000 Subject: [openssl-commits] SUCCESSFUL build of OpenSSL branch OpenSSL_1_1_0-stable with options -d --strict-warnings no-ec Message-ID: <1492430759.770683.31834.nullmailer@run.openssl.org> Platform and configuration command: $ uname -a Linux run 4.4.0-71-generic #92-Ubuntu SMP Fri Mar 24 12:59:01 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux $ CC=clang ../openssl/config -d --strict-warnings no-ec Commit log since last time: dca3944 Catch EC_R_UNKNOWN_GROUP in check_unsupported() cece122 Reformat evptests.txt 9be439a Remove ecdhtest.c 11361f5 ecdhtest.c: move co-factor ECDH KATs to evptests From openssl at openssl.org Mon Apr 17 12:10:04 2017 From: openssl at openssl.org (OpenSSL run-checker) Date: Mon, 17 Apr 2017 12:10:04 +0000 Subject: [openssl-commits] SUCCESSFUL build of OpenSSL branch OpenSSL_1_1_0-stable with options -d --strict-warnings no-ec2m Message-ID: <1492431004.194592.11334.nullmailer@run.openssl.org> Platform and configuration command: $ uname -a Linux run 4.4.0-71-generic #92-Ubuntu SMP Fri Mar 24 12:59:01 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux $ CC=clang ../openssl/config -d --strict-warnings no-ec2m Commit log since last time: dca3944 Catch EC_R_UNKNOWN_GROUP in check_unsupported() cece122 Reformat evptests.txt 9be439a Remove ecdhtest.c 11361f5 ecdhtest.c: move co-factor ECDH KATs to evptests From no-reply at appveyor.com Mon Apr 17 18:46:46 2017 From: no-reply at appveyor.com (AppVeyor) Date: Mon, 17 Apr 2017 18:46:46 +0000 Subject: [openssl-commits] Build failed: openssl master.9664 Message-ID: <20170417184646.104410.86130.D0679682@appveyor.com> An HTML attachment was scrubbed... URL: From appro at openssl.org Mon Apr 17 19:14:25 2017 From: appro at openssl.org (Andy Polyakov) Date: Mon, 17 Apr 2017 19:14:25 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492456465.963703.10114.nullmailer@dev.openssl.org> The branch master has been updated via 786b6a45fbecc068d0fb8b05252a9228e0661c63 (commit) from 5c8e9d531ba54d26e4bcbe66710c7c75bf0fc4e9 (commit) - Log ----------------------------------------------------------------- commit 786b6a45fbecc068d0fb8b05252a9228e0661c63 Author: Andy Polyakov Date: Sat Apr 15 15:53:50 2017 +0200 asn1/a_int.c: clean up asn1_get_int64. Trouble was that integer negation wasn't producing *formally* correct result in platform-neutral sense. Formally correct thing to do is -(int64_t)u, but this triggers undefined behaviour for one value that would still be representable in ASN.1. The trigger was masked with (int64_t)(0-u), but this is formally inappropriate for values other than the problematic one. [Also reorder branches to favour most-likely paths and harmonize asn1_string_set_int64 with asn1_get_int64].] Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3231) ----------------------------------------------------------------------- Summary of changes: crypto/asn1/a_int.c | 29 ++++++++++++++++++++--------- 1 file changed, 20 insertions(+), 9 deletions(-) diff --git a/crypto/asn1/a_int.c b/crypto/asn1/a_int.c index fe700b2..e154343 100644 --- a/crypto/asn1/a_int.c +++ b/crypto/asn1/a_int.c @@ -229,12 +229,10 @@ static size_t asn1_put_uint64(unsigned char b[sizeof(uint64_t)], uint64_t r) } /* - * Absolute value of INT64_MIN: we can't just use -INT64_MIN as it produces + * Absolute value of INT64_MIN: we can't just use -INT64_MIN as gcc produces * overflow warnings. */ - -#define ABS_INT64_MIN \ - ((uint64_t)INT64_MAX + (uint64_t)(-(INT64_MIN + INT64_MAX))) +#define ABS_INT64_MIN ((uint64_t)INT64_MAX + (-(INT64_MIN + INT64_MAX))) /* signed version of asn1_get_uint64 */ static int asn1_get_int64(int64_t *pr, const unsigned char *b, size_t blen, @@ -244,17 +242,25 @@ static int asn1_get_int64(int64_t *pr, const unsigned char *b, size_t blen, if (asn1_get_uint64(&r, b, blen) == 0) return 0; if (neg) { - if (r > ABS_INT64_MIN) { + if (r <= INT64_MAX) { + /* Most significant bit is guaranteed to be clear, negation + * is guaranteed to be meaningful in platform-neutral sense. */ + *pr = -(int64_t)r; + } else if (r == ABS_INT64_MIN) { + /* This never happens if INT64_MAX == ABS_INT64_MIN, e.g. + * on ones'-complement system. */ + *pr = (int64_t)(0 - r); + } else { ASN1err(ASN1_F_ASN1_GET_INT64, ASN1_R_TOO_SMALL); return 0; } - *pr = 0 - (uint64_t)r; } else { - if (r > INT64_MAX) { + if (r <= INT64_MAX) { + *pr = (int64_t)r; + } else { ASN1err(ASN1_F_ASN1_GET_INT64, ASN1_R_TOO_LARGE); return 0; } - *pr = (int64_t)r; } return 1; } @@ -319,7 +325,12 @@ static int asn1_string_set_int64(ASN1_STRING *a, int64_t r, int itype) a->type = itype; if (r < 0) { - off = asn1_put_uint64(tbuf, -r); + /* Most obvious '-r' triggers undefined behaviour for most + * common INT64_MIN. Even though below '0 - (uint64_t)r' can + * appear two's-complement centric, it does produce correct/ + * expected result even on one's-complement. This is because + * cast to unsigned has to change bit pattern... */ + off = asn1_put_uint64(tbuf, 0 - (uint64_t)r); a->type |= V_ASN1_NEG; } else { off = asn1_put_uint64(tbuf, r); From builds at travis-ci.org Mon Apr 17 19:35:02 2017 From: builds at travis-ci.org (Travis CI) Date: Mon, 17 Apr 2017 19:35:02 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10352 (master - 786b6a4) In-Reply-To: Message-ID: <58f518ec88199_43fb95bc912981240874@234572f7-b488-4f8c-887d-3097eed38c11.mail> Build Update for openssl/openssl ------------------------------------- Build: #10352 Status: Still Failing Duration: 19 minutes and 8 seconds Commit: 786b6a4 (master) Author: Andy Polyakov Message: asn1/a_int.c: clean up asn1_get_int64. Trouble was that integer negation wasn't producing *formally* correct result in platform-neutral sense. Formally correct thing to do is -(int64_t)u, but this triggers undefined behaviour for one value that would still be representable in ASN.1. The trigger was masked with (int64_t)(0-u), but this is formally inappropriate for values other than the problematic one. [Also reorder branches to favour most-likely paths and harmonize asn1_string_set_int64 with asn1_get_int64].] Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3231) View the changeset: https://github.com/openssl/openssl/compare/5c8e9d531ba5...786b6a45fbec View the full build log and details: https://travis-ci.org/openssl/openssl/builds/222892536 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Mon Apr 17 19:50:30 2017 From: no-reply at appveyor.com (AppVeyor) Date: Mon, 17 Apr 2017 19:50:30 +0000 Subject: [openssl-commits] Build completed: openssl master.9665 Message-ID: <20170417195022.127674.94809.DF891EE6@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Tue Apr 18 14:58:33 2017 From: no-reply at appveyor.com (AppVeyor) Date: Tue, 18 Apr 2017 14:58:33 +0000 Subject: [openssl-commits] Build failed: openssl master.9677 Message-ID: <20170418145832.103484.87824.815497C0@appveyor.com> An HTML attachment was scrubbed... URL: From rsalz at openssl.org Tue Apr 18 15:08:35 2017 From: rsalz at openssl.org (Rich Salz) Date: Tue, 18 Apr 2017 15:08:35 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492528115.480942.32762.nullmailer@dev.openssl.org> The branch master has been updated via 800b5dac006344896a3aa947ab13cd9f63e3fc4c (commit) from 786b6a45fbecc068d0fb8b05252a9228e0661c63 (commit) - Log ----------------------------------------------------------------- commit 800b5dac006344896a3aa947ab13cd9f63e3fc4c Author: Thiago Arrais Date: Wed Apr 5 15:10:26 2017 +0000 update docs because depth refers only to intermediate certs Reviewed-by: Viktor Dukhovni Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3132) ----------------------------------------------------------------------- Summary of changes: doc/man3/SSL_CTX_set_verify.pod | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/doc/man3/SSL_CTX_set_verify.pod b/doc/man3/SSL_CTX_set_verify.pod index c2077bb..7993498 100644 --- a/doc/man3/SSL_CTX_set_verify.pod +++ b/doc/man3/SSL_CTX_set_verify.pod @@ -39,10 +39,10 @@ B can be called to get the data index of the current SSL object that is doing the verification. SSL_CTX_set_verify_depth() sets the maximum B for the certificate chain -verification that shall be allowed for B. (See the BUGS section.) +verification that shall be allowed for B. SSL_set_verify_depth() sets the maximum B for the certificate chain -verification that shall be allowed for B. (See the BUGS section.) +verification that shall be allowed for B. =head1 NOTES @@ -107,16 +107,19 @@ application provided procedure also has access to the verify depth information and the verify_callback() function, but the way this information is used may be different. -SSL_CTX_set_verify_depth() and SSL_set_verify_depth() set the limit up -to which depth certificates in a chain are used during the verification -procedure. If the certificate chain is longer than allowed, the certificates -above the limit are ignored. Error messages are generated as if these -certificates would not be present, most likely a -X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY will be issued. +SSL_CTX_set_verify_depth() and SSL_set_verify_depth() set a limit on the +number of certificates between the end-entity and trust-anchor certificates. +Neither the +end-entity nor the trust-anchor certificates count against B. If the +certificate chain needed to reach a trusted issuer is longer than B, +X509_V_ERR_CERT_CHAIN_TOO_LONG will be issued. The depth count is "level 0:peer certificate", "level 1: CA certificate", "level 2: higher level CA certificate", and so on. Setting the maximum -depth to 2 allows the levels 0, 1, and 2. The default depth limit is 100, -allowing for the peer certificate and additional 100 CA certificates. +depth to 2 allows the levels 0, 1, 2 and 3 (0 being the end-entity and 3 the +trust-anchor). +The default depth limit is 100, +allowing for the peer certificate, at most 100 intermediate CA certificates and +a final trust anchor certificate. The B function is used to control the behaviour when the SSL_VERIFY_PEER flag is set. It must be supplied by the application and From rsalz at openssl.org Tue Apr 18 15:08:51 2017 From: rsalz at openssl.org (Rich Salz) Date: Tue, 18 Apr 2017 15:08:51 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1492528131.059916.1290.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via cff4c7b9d01ebe68217d491841424b8223d8507d (commit) from dca39445fc4ef95adc46d0ba33491934adfbef77 (commit) - Log ----------------------------------------------------------------- commit cff4c7b9d01ebe68217d491841424b8223d8507d Author: Thiago Arrais Date: Wed Apr 5 15:10:26 2017 +0000 update docs because depth refers only to intermediate certs Reviewed-by: Viktor Dukhovni Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3132) (cherry picked from commit 800b5dac006344896a3aa947ab13cd9f63e3fc4c) ----------------------------------------------------------------------- Summary of changes: doc/ssl/SSL_CTX_set_verify.pod | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/doc/ssl/SSL_CTX_set_verify.pod b/doc/ssl/SSL_CTX_set_verify.pod index c2077bb..7993498 100644 --- a/doc/ssl/SSL_CTX_set_verify.pod +++ b/doc/ssl/SSL_CTX_set_verify.pod @@ -39,10 +39,10 @@ B can be called to get the data index of the current SSL object that is doing the verification. SSL_CTX_set_verify_depth() sets the maximum B for the certificate chain -verification that shall be allowed for B. (See the BUGS section.) +verification that shall be allowed for B. SSL_set_verify_depth() sets the maximum B for the certificate chain -verification that shall be allowed for B. (See the BUGS section.) +verification that shall be allowed for B. =head1 NOTES @@ -107,16 +107,19 @@ application provided procedure also has access to the verify depth information and the verify_callback() function, but the way this information is used may be different. -SSL_CTX_set_verify_depth() and SSL_set_verify_depth() set the limit up -to which depth certificates in a chain are used during the verification -procedure. If the certificate chain is longer than allowed, the certificates -above the limit are ignored. Error messages are generated as if these -certificates would not be present, most likely a -X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY will be issued. +SSL_CTX_set_verify_depth() and SSL_set_verify_depth() set a limit on the +number of certificates between the end-entity and trust-anchor certificates. +Neither the +end-entity nor the trust-anchor certificates count against B. If the +certificate chain needed to reach a trusted issuer is longer than B, +X509_V_ERR_CERT_CHAIN_TOO_LONG will be issued. The depth count is "level 0:peer certificate", "level 1: CA certificate", "level 2: higher level CA certificate", and so on. Setting the maximum -depth to 2 allows the levels 0, 1, and 2. The default depth limit is 100, -allowing for the peer certificate and additional 100 CA certificates. +depth to 2 allows the levels 0, 1, 2 and 3 (0 being the end-entity and 3 the +trust-anchor). +The default depth limit is 100, +allowing for the peer certificate, at most 100 intermediate CA certificates and +a final trust anchor certificate. The B function is used to control the behaviour when the SSL_VERIFY_PEER flag is set. It must be supplied by the application and From no-reply at appveyor.com Tue Apr 18 15:12:23 2017 From: no-reply at appveyor.com (AppVeyor) Date: Tue, 18 Apr 2017 15:12:23 +0000 Subject: [openssl-commits] Build failed: openssl master.9679 Message-ID: <20170418151221.38883.88960.653CB354@appveyor.com> An HTML attachment was scrubbed... URL: From builds at travis-ci.org Tue Apr 18 15:31:17 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 18 Apr 2017 15:31:17 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10367 (master - 800b5da) In-Reply-To: Message-ID: <58f6314577ce0_43fce535628c0786948@9e5f8421-76bc-47b6-893c-2b8fa7f00260.mail> Build Update for openssl/openssl ------------------------------------- Build: #10367 Status: Still Failing Duration: 20 minutes and 39 seconds Commit: 800b5da (master) Author: Thiago Arrais Message: update docs because depth refers only to intermediate certs Reviewed-by: Viktor Dukhovni Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3132) View the changeset: https://github.com/openssl/openssl/compare/786b6a45fbec...800b5dac0063 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/223192087 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Tue Apr 18 15:50:50 2017 From: no-reply at appveyor.com (AppVeyor) Date: Tue, 18 Apr 2017 15:50:50 +0000 Subject: [openssl-commits] Build completed: openssl master.9680 Message-ID: <20170418155049.37728.39875.DE446E92@appveyor.com> An HTML attachment was scrubbed... URL: From levitte at openssl.org Tue Apr 18 17:10:30 2017 From: levitte at openssl.org (Richard Levitte) Date: Tue, 18 Apr 2017 17:10:30 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492535430.206933.30915.nullmailer@dev.openssl.org> The branch master has been updated via 0fef74486ede58e34eeac2fab38c3f467ea31f95 (commit) via 483bc2dcd3b4a33e13f0e71c145af7e453d3af10 (commit) via 77edd02f348d6486005f9138d394e38aa2318e30 (commit) via 7c82f5673bea290fac52b2d41932f6125f56802c (commit) from 800b5dac006344896a3aa947ab13cd9f63e3fc4c (commit) - Log ----------------------------------------------------------------- commit 0fef74486ede58e34eeac2fab38c3f467ea31f95 Author: Robbie Harwood Date: Wed Apr 5 12:54:41 2017 -0400 [extended tests] Enable krb5 tests in Travis Reviewed-by: Matt Caswell Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/2022) commit 483bc2dcd3b4a33e13f0e71c145af7e453d3af10 Author: Robbie Harwood Date: Wed Apr 5 12:50:07 2017 -0400 Fix formatting of PYCA external test instructions Reviewed-by: Matt Caswell Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/2022) commit 77edd02f348d6486005f9138d394e38aa2318e30 Author: Robbie Harwood Date: Wed Apr 5 12:49:27 2017 -0400 Update external test README for running krb5 Reviewed-by: Matt Caswell Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/2022) commit 7c82f5673bea290fac52b2d41932f6125f56802c Author: Robbie Harwood Date: Wed Apr 5 12:40:22 2017 -0400 Add external krb5 test support Reviewed-by: Matt Caswell Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/2022) ----------------------------------------------------------------------- Summary of changes: .gitmodules | 4 +++ .travis.yml | 3 ++ krb5 | 1 + test/README.external | 36 +++++++++++++++++++++- ...70-test_recordlen.t => 95-test_external_krb5.t} | 18 ++++++----- test/recipes/95-test_external_krb5_data/krb5.sh | 23 ++++++++++++++ 6 files changed, 77 insertions(+), 8 deletions(-) create mode 160000 krb5 copy test/recipes/{70-test_recordlen.t => 95-test_external_krb5.t} (51%) create mode 100755 test/recipes/95-test_external_krb5_data/krb5.sh diff --git a/.gitmodules b/.gitmodules index 696fdff..af32ea6 100644 --- a/.gitmodules +++ b/.gitmodules @@ -5,3 +5,7 @@ [submodule "pyca.cryptography"] path = pyca-cryptography url = https://github.com/pyca/cryptography.git + +[submodule "krb5"] + path = krb5 + url = https://github.com/krb5/krb5 diff --git a/.travis.yml b/.travis.yml index cb08e40..61a9acc 100644 --- a/.travis.yml +++ b/.travis.yml @@ -196,6 +196,9 @@ script: sudo apt-get -yq --no-install-suggests --no-install-recommends --force-yes install wine; export EXE_SHELL="wine" WINEPREFIX=`pwd`; fi; + if [ -e krb5/src ]; then + sudo apt-get -yq install bison dejagnu gettext keyutils ldap-utils libldap2-dev libkeyutils-dev python-cjson python-paste python-pyrad slapd tcl-dev tcsh; + fi; HARNESS_VERBOSE=yes BORING_RUNNER_DIR=$top/boringssl/ssl/test/runner make test; else $make build_tests; diff --git a/krb5 b/krb5 new file mode 160000 index 0000000..b9ad6c4 --- /dev/null +++ b/krb5 @@ -0,0 +1 @@ +Subproject commit b9ad6c49505c96a088326b62a52568e3484f2168 diff --git a/test/README.external b/test/README.external index f74b8a7..8eaefd2 100644 --- a/test/README.external +++ b/test/README.external @@ -93,8 +93,42 @@ to be installed. $ make test VERBOSE=1 TESTS=test_external_pyca Test failures and suppressions -============================== +------------------------------ Some tests target older (<=1.0.2) versions so will not run. Other tests target other crypto implementations so are not relevant. Currently no tests fail. + +krb5 test suite +=============== + +Much like the PYCA/Cryptography test suite, this builds and runs the krb5 +tests against the local OpenSSL build. + +You will need a git checkout of krb5 at the top level: + +$ git clone https://github.com/krb5/krb5 + +krb5's master has to pass this same CI, but a known-good version is +krb5-1.15.1-final if you want to be sure. + +$ cd krb5 +$ git checkout krb5-1.15.1-final +$ cd .. + +OpenSSL must be built with external tests enabled: + +$ ./config enable-external-tests +$ make + +krb5's tests will then be run as part of the rest of the suite, or can be +explicitly run (with more debugging): + +$ VERBOSE=1 make TESTS=test_external_krb5 test + +Test failures supressions +------------------------- + +krb5 will automatically adapt its test suite to account for the configuration +of your system. Certain tests may require more installed packages to run. No +tests are expected to fail. diff --git a/test/recipes/70-test_recordlen.t b/test/recipes/95-test_external_krb5.t similarity index 51% copy from test/recipes/70-test_recordlen.t copy to test/recipes/95-test_external_krb5.t index 12647a2..8144003 100644 --- a/test/recipes/70-test_recordlen.t +++ b/test/recipes/95-test_external_krb5.t @@ -7,15 +7,19 @@ # https://www.openssl.org/source/license.html +use OpenSSL::Test; use OpenSSL::Test::Utils; -use OpenSSL::Test qw/:DEFAULT srctop_file/; +use OpenSSL::Test qw/:DEFAULT data_file srctop_file/; -setup("test_recordlen"); - -plan skip_all => "No TLS/SSL protocols are supported by this OpenSSL build" - if alldisabled(grep { $_ ne "ssl3" } available_protocols("tls")); +setup("test_external_krb5"); plan tests => 1; -ok(run(test(["recordlentest", srctop_file("apps", "server.pem"), - srctop_file("apps", "server.pem")])), "running recordlentest"); +SKIP: { + skip "No external tests in this configuration" + if disabled("external-tests"); + skip "krb5 not available", 1 + if ! -f srctop_file("krb5", "README"); + + ok(run(cmd([data_file("krb5.sh")])), "running krb5 tests"); +} diff --git a/test/recipes/95-test_external_krb5_data/krb5.sh b/test/recipes/95-test_external_krb5_data/krb5.sh new file mode 100755 index 0000000..39c6592 --- /dev/null +++ b/test/recipes/95-test_external_krb5_data/krb5.sh @@ -0,0 +1,23 @@ +#!/bin/sh -ex +# +# Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the OpenSSL license (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + +# krb5's test suite clears LD_LIBRARY_PATH +LDFLAGS="-L`pwd`/$BLDTOP -Wl,-rpath,`pwd`/$BLDTOP" +CFLAGS="-I`pwd`/$BLDTOP/include -I`pwd`/$SRCTOP/include" + +cd $SRCTOP/krb5/src +autoreconf +./configure --with-ldap --with-prng-alg=os --enable-pkinit \ + --with-crypto-impl=openssl --with-tls-impl=openssl \ + CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" + +# quiet make so that Travis doesn't overflow +make -s + +make check From builds at travis-ci.org Tue Apr 18 17:31:52 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 18 Apr 2017 17:31:52 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10380 (master - 0fef744) In-Reply-To: Message-ID: <58f64d86941ca_43fce57944d689489db@9e5f8421-76bc-47b6-893c-2b8fa7f00260.mail> Build Update for openssl/openssl ------------------------------------- Build: #10380 Status: Still Failing Duration: 19 minutes and 38 seconds Commit: 0fef744 (master) Author: Robbie Harwood Message: [extended tests] Enable krb5 tests in Travis Reviewed-by: Matt Caswell Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/2022) View the changeset: https://github.com/openssl/openssl/compare/800b5dac0063...0fef74486ede View the full build log and details: https://travis-ci.org/openssl/openssl/builds/223237535 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Tue Apr 18 18:43:25 2017 From: no-reply at appveyor.com (AppVeyor) Date: Tue, 18 Apr 2017 18:43:25 +0000 Subject: [openssl-commits] Build failed: openssl master.9691 Message-ID: <20170418184324.10591.90110.35BB9450@appveyor.com> An HTML attachment was scrubbed... URL: From rsalz at openssl.org Tue Apr 18 18:45:34 2017 From: rsalz at openssl.org (Rich Salz) Date: Tue, 18 Apr 2017 18:45:34 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492541134.657755.3564.nullmailer@dev.openssl.org> The branch master has been updated via b66411f6cda6970c01283ddde6d8063c57b3b7d9 (commit) from 0fef74486ede58e34eeac2fab38c3f467ea31f95 (commit) - Log ----------------------------------------------------------------- commit b66411f6cda6970c01283ddde6d8063c57b3b7d9 Author: Rich Salz Date: Tue Apr 18 14:34:43 2017 -0400 Convert more tests recordlentest, srptest, ecdsatest, enginetest, pbelutest Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3237) ----------------------------------------------------------------------- Summary of changes: test/build.info | 10 +- test/ecdsatest.c | 316 ++++++++++++++++++--------------------------------- test/enginetest.c | 182 ++++++++++++++--------------- test/pbelutest.c | 43 ++++--- test/recordlentest.c | 48 +++----- test/srptest.c | 180 +++++++++++++---------------- 6 files changed, 317 insertions(+), 462 deletions(-) diff --git a/test/build.info b/test/build.info index 537b361..8346385 100644 --- a/test/build.info +++ b/test/build.info @@ -55,7 +55,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[ectest]=.. ../include DEPEND[ectest]=../libcrypto - SOURCE[ecdsatest]=ecdsatest.c + SOURCE[ecdsatest]=ecdsatest.c testutil.c test_main.c INCLUDE[ecdsatest]=../include DEPEND[ecdsatest]=../libcrypto @@ -63,7 +63,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[gmdifftest]=../include DEPEND[gmdifftest]=../libcrypto - SOURCE[pbelutest]=pbelutest.c + SOURCE[pbelutest]=pbelutest.c testutil.c test_main.c INCLUDE[pbelutest]=../include DEPEND[pbelutest]=../libcrypto @@ -119,11 +119,11 @@ IF[{- !$disabled{tests} -}] INCLUDE[dhtest]=../include DEPEND[dhtest]=../libcrypto - SOURCE[enginetest]=enginetest.c + SOURCE[enginetest]=enginetest.c testutil.c test_main.c INCLUDE[enginetest]=../include DEPEND[enginetest]=../libcrypto - SOURCE[casttest]=casttest.c testutil.c test_main.o + SOURCE[casttest]=casttest.c testutil.c test_main.c INCLUDE[casttest]=.. ../include DEPEND[casttest]=../libcrypto @@ -203,7 +203,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[secmemtest]=../include DEPEND[secmemtest]=../libcrypto - SOURCE[srptest]=srptest.c + SOURCE[srptest]=srptest.c testutil.c test_main.c INCLUDE[srptest]=../include DEPEND[srptest]=../libcrypto diff --git a/test/ecdsatest.c b/test/ecdsatest.c index ce73778..8b1e566 100644 --- a/test/ecdsatest.c +++ b/test/ecdsatest.c @@ -45,48 +45,39 @@ int main(int argc, char *argv[]) # endif # include # include +# include "testutil.h" +# include "test_main.h" static const char rnd_seed[] = "string to make the random number generator " "think it has entropy"; -/* declaration of the test functions */ -int x9_62_tests(BIO *); -int x9_62_test_internal(BIO *out, int nid, const char *r, const char *s); -int test_builtin(BIO *); /* functions to change the RAND_METHOD */ -int change_rand(void); -int restore_rand(void); -int fbytes(unsigned char *buf, int num); +static int fbytes(unsigned char *buf, int num); static RAND_METHOD fake_rand; static const RAND_METHOD *old_rand; -int change_rand(void) +static int change_rand(void) { /* save old rand method */ - if ((old_rand = RAND_get_rand_method()) == NULL) + if (!TEST_ptr(old_rand = RAND_get_rand_method())) return 0; - fake_rand.seed = old_rand->seed; - fake_rand.cleanup = old_rand->cleanup; - fake_rand.add = old_rand->add; - fake_rand.status = old_rand->status; + fake_rand = *old_rand; /* use own random function */ fake_rand.bytes = fbytes; - fake_rand.pseudorand = old_rand->bytes; /* set new RAND_METHOD */ - if (!RAND_set_rand_method(&fake_rand)) + if (!TEST_true(RAND_set_rand_method(&fake_rand))) return 0; return 1; } -int restore_rand(void) +static int restore_rand(void) { - if (!RAND_set_rand_method(old_rand)) + if (!TEST_true(RAND_set_rand_method(old_rand))) return 0; - else - return 1; + return 1; } static int fbytes_counter = 0, use_fake = 0; @@ -105,9 +96,9 @@ static const char *numbers[8] = { "40041670216363" }; -int fbytes(unsigned char *buf, int num) +static int fbytes(unsigned char *buf, int num) { - int ret; + int ret = 0; BIGNUM *tmp = NULL; if (use_fake == 0) @@ -117,85 +108,77 @@ int fbytes(unsigned char *buf, int num) if (fbytes_counter >= 8) return 0; - tmp = BN_new(); - if (!tmp) + if (!TEST_ptr(tmp = BN_new())) return 0; - if (!BN_dec2bn(&tmp, numbers[fbytes_counter])) { + if (!TEST_true(BN_dec2bn(&tmp, numbers[fbytes_counter]))) { BN_free(tmp); return 0; } fbytes_counter++; - if (num != BN_num_bytes(tmp) || !BN_bn2bin(tmp, buf)) - ret = 0; - else + if (TEST_int_eq(BN_num_bytes(tmp), num) + && TEST_true(BN_bn2bin(tmp, buf))) ret = 1; BN_free(tmp); return ret; } /* some tests from the X9.62 draft */ -int x9_62_test_internal(BIO *out, int nid, const char *r_in, const char *s_in) +static int x9_62_test_internal(int nid, const char *r_in, const char *s_in) { int ret = 0; const char message[] = "abc"; unsigned char digest[20]; unsigned int dgst_len = 0; - EVP_MD_CTX *md_ctx = EVP_MD_CTX_new(); + EVP_MD_CTX *md_ctx; EC_KEY *key = NULL; ECDSA_SIG *signature = NULL; BIGNUM *r = NULL, *s = NULL; BIGNUM *kinv = NULL, *rp = NULL; const BIGNUM *sig_r, *sig_s; - if (md_ctx == NULL) + if (!TEST_ptr(md_ctx = EVP_MD_CTX_new())) goto x962_int_err; /* get the message digest */ - if (!EVP_DigestInit(md_ctx, EVP_sha1()) - || !EVP_DigestUpdate(md_ctx, (const void *)message, 3) - || !EVP_DigestFinal(md_ctx, digest, &dgst_len)) + if (!TEST_true(EVP_DigestInit(md_ctx, EVP_sha1())) + || !TEST_true(EVP_DigestUpdate(md_ctx, (const void *)message, 3)) + || !TEST_true(EVP_DigestFinal(md_ctx, digest, &dgst_len))) goto x962_int_err; - BIO_printf(out, "testing %s: ", OBJ_nid2sn(nid)); + TEST_info("testing %s", OBJ_nid2sn(nid)); + /* create the key */ - if ((key = EC_KEY_new_by_curve_name(nid)) == NULL) + if (!TEST_ptr(key = EC_KEY_new_by_curve_name(nid))) goto x962_int_err; use_fake = 1; - if (!EC_KEY_generate_key(key)) + if (!TEST_true(EC_KEY_generate_key(key))) goto x962_int_err; - BIO_printf(out, "."); - (void)BIO_flush(out); + /* create the signature */ use_fake = 1; /* Use ECDSA_sign_setup to avoid use of ECDSA nonces */ - if (!ECDSA_sign_setup(key, NULL, &kinv, &rp)) + if (!TEST_true(ECDSA_sign_setup(key, NULL, &kinv, &rp))) goto x962_int_err; - signature = ECDSA_do_sign_ex(digest, 20, kinv, rp, key); - if (signature == NULL) + if (!TEST_ptr(signature = ECDSA_do_sign_ex(digest, 20, kinv, rp, key))) goto x962_int_err; - BIO_printf(out, "."); - (void)BIO_flush(out); + /* compare the created signature with the expected signature */ - if ((r = BN_new()) == NULL || (s = BN_new()) == NULL) + if (!TEST_ptr(r = BN_new()) || !TEST_ptr(s = BN_new())) goto x962_int_err; - if (!BN_dec2bn(&r, r_in) || !BN_dec2bn(&s, s_in)) + if (!TEST_true(BN_dec2bn(&r, r_in)) || !TEST_true(BN_dec2bn(&s, s_in))) goto x962_int_err; ECDSA_SIG_get0(signature, &sig_r, &sig_s); - if (BN_cmp(sig_r, r) || BN_cmp(sig_s, s)) + if (!TEST_int_eq(BN_cmp(sig_r, r), 0) + || !TEST_int_eq(BN_cmp(sig_s, s), 0)) goto x962_int_err; - BIO_printf(out, "."); - (void)BIO_flush(out); + /* verify the signature */ - if (ECDSA_do_verify(digest, 20, signature, key) != 1) + if (!TEST_int_eq(ECDSA_do_verify(digest, 20, signature, key), 1)) goto x962_int_err; - BIO_printf(out, "."); - (void)BIO_flush(out); - BIO_printf(out, " ok\n"); ret = 1; + x962_int_err: - if (!ret) - BIO_printf(out, " failed\n"); EC_KEY_free(key); ECDSA_SIG_free(signature); BN_free(r); @@ -206,46 +189,46 @@ int x9_62_test_internal(BIO *out, int nid, const char *r_in, const char *s_in) return ret; } -int x9_62_tests(BIO *out) +static int x9_62_tests() { int ret = 0; - BIO_printf(out, "some tests from X9.62:\n"); - /* set own rand method */ if (!change_rand()) goto x962_err; - if (!x9_62_test_internal(out, NID_X9_62_prime192v1, - "3342403536405981729393488334694600415596881826869351677613", - "5735822328888155254683894997897571951568553642892029982342")) + if (!TEST_true(x9_62_test_internal(NID_X9_62_prime192v1, + "3342403536405981729393488334694600415596881826869351677613", + "5735822328888155254683894997897571951568553642892029982342"))) goto x962_err; - if (!x9_62_test_internal(out, NID_X9_62_prime239v1, - "3086361431751678114926225473006680188549593787585317781474" + if (!TEST_true(x9_62_test_internal(NID_X9_62_prime239v1, + "3086361431751678114926225473006680188549593787585317781474" "62058306432176", - "3238135532097973577080787768312505059318910517550078427819" - "78505179448783")) + "3238135532097973577080787768312505059318910517550078427819" + "78505179448783"))) goto x962_err; + # ifndef OPENSSL_NO_EC2M - if (!x9_62_test_internal(out, NID_X9_62_c2tnb191v1, - "87194383164871543355722284926904419997237591535066528048", - "308992691965804947361541664549085895292153777025772063598")) + if (!TEST_true(x9_62_test_internal(NID_X9_62_c2tnb191v1, + "87194383164871543355722284926904419997237591535066528048", + "308992691965804947361541664549085895292153777025772063598"))) goto x962_err; - if (!x9_62_test_internal(out, NID_X9_62_c2tnb239v1, - "2159633321041961198501834003903461262881815148684178964245" + if (!TEST_true(x9_62_test_internal(NID_X9_62_c2tnb239v1, + "2159633321041961198501834003903461262881815148684178964245" "5876922391552", - "1970303740007316867383349976549972270528498040721988191026" - "49413465737174")) + "1970303740007316867383349976549972270528498040721988191026" + "49413465737174"))) goto x962_err; # endif ret = 1; + x962_err: - if (!restore_rand()) + if (!TEST_true(restore_rand())) ret = 0; return ret; } -int test_builtin(BIO *out) +static int test_builtin(void) { EC_builtin_curve *curves = NULL; size_t crv_len = 0, n = 0; @@ -264,29 +247,16 @@ int test_builtin(BIO *out) int nid, ret = 0; /* fill digest values with some random data */ - if (RAND_bytes(digest, 20) <= 0 || RAND_bytes(wrong_digest, 20) <= 0) { - BIO_printf(out, "ERROR: unable to get random data\n"); + if (!TEST_true(RAND_bytes(digest, 20)) + || !TEST_true(RAND_bytes(wrong_digest, 20))) goto builtin_err; - } - - /* - * create and verify a ecdsa signature with every available curve (with ) - */ - BIO_printf(out, "\ntesting ECDSA_sign() and ECDSA_verify() " - "with some internal curves:\n"); + /* create and verify a ecdsa signature with every available curve */ /* get a list of all internal curves */ crv_len = EC_get_builtin_curves(NULL, 0); - curves = OPENSSL_malloc(sizeof(*curves) * crv_len); - if (curves == NULL) { - BIO_printf(out, "malloc error\n"); + if (!TEST_ptr(curves = OPENSSL_malloc(sizeof(*curves) * crv_len)) + || !TEST_true(EC_get_builtin_curves(curves, crv_len))) goto builtin_err; - } - - if (!EC_get_builtin_curves(curves, crv_len)) { - BIO_printf(out, "unable to get internal curves\n"); - goto builtin_err; - } /* now create and verify a signature for every curve */ for (n = 0; n < crv_len; n++) { @@ -296,12 +266,9 @@ int test_builtin(BIO *out) if (nid == NID_ipsec4 || nid == NID_X25519) continue; /* create new ecdsa key (== EC_KEY) */ - if ((eckey = EC_KEY_new()) == NULL) - goto builtin_err; - group = EC_GROUP_new_by_curve_name(nid); - if (group == NULL) - goto builtin_err; - if (EC_KEY_set_group(eckey, group) == 0) + if (!TEST_ptr(eckey = EC_KEY_new()) + || !TEST_ptr(group = EC_GROUP_new_by_curve_name(nid)) + || !TEST_true(EC_KEY_set_group(eckey, group))) goto builtin_err; EC_GROUP_free(group); degree = EC_GROUP_get_degree(EC_KEY_get0_group(eckey)); @@ -311,73 +278,50 @@ int test_builtin(BIO *out) eckey = NULL; continue; } - BIO_printf(out, "%s: ", OBJ_nid2sn(nid)); + TEST_info("testing %s", OBJ_nid2sn(nid)); + /* create key */ - if (!EC_KEY_generate_key(eckey)) { - BIO_printf(out, " failed\n"); + if (!TEST_true(EC_KEY_generate_key(eckey))) goto builtin_err; - } /* create second key */ - if ((wrong_eckey = EC_KEY_new()) == NULL) - goto builtin_err; - group = EC_GROUP_new_by_curve_name(nid); - if (group == NULL) - goto builtin_err; - if (EC_KEY_set_group(wrong_eckey, group) == 0) + if (!TEST_ptr(wrong_eckey = EC_KEY_new()) + || !TEST_ptr(group = EC_GROUP_new_by_curve_name(nid)) + || !TEST_true(EC_KEY_set_group(wrong_eckey, group))) goto builtin_err; EC_GROUP_free(group); - if (!EC_KEY_generate_key(wrong_eckey)) { - BIO_printf(out, " failed\n"); + if (!TEST_true(EC_KEY_generate_key(wrong_eckey))) goto builtin_err; - } - BIO_printf(out, "."); - (void)BIO_flush(out); /* check key */ - if (!EC_KEY_check_key(eckey)) { - BIO_printf(out, " failed\n"); + if (!TEST_true(EC_KEY_check_key(eckey))) goto builtin_err; - } - BIO_printf(out, "."); - (void)BIO_flush(out); + /* create signature */ sig_len = ECDSA_size(eckey); - if ((signature = OPENSSL_malloc(sig_len)) == NULL) + if (!TEST_ptr(signature = OPENSSL_malloc(sig_len)) + || !TEST_true(ECDSA_sign(0, digest, 20, signature, &sig_len, + eckey))) goto builtin_err; - if (!ECDSA_sign(0, digest, 20, signature, &sig_len, eckey)) { - BIO_printf(out, " failed\n"); - goto builtin_err; - } - BIO_printf(out, "."); - (void)BIO_flush(out); + /* verify signature */ - if (ECDSA_verify(0, digest, 20, signature, sig_len, eckey) != 1) { - BIO_printf(out, " failed\n"); + if (!TEST_int_eq(ECDSA_verify(0, digest, 20, signature, sig_len, + eckey), 1)) goto builtin_err; - } - BIO_printf(out, "."); - (void)BIO_flush(out); + /* verify signature with the wrong key */ - if (ECDSA_verify(0, digest, 20, signature, sig_len, wrong_eckey) == 1) { - BIO_printf(out, " failed\n"); + if (!TEST_int_ne(ECDSA_verify(0, digest, 20, signature, sig_len, + wrong_eckey), 1)) goto builtin_err; - } - BIO_printf(out, "."); - (void)BIO_flush(out); + /* wrong digest */ - if (ECDSA_verify(0, wrong_digest, 20, signature, sig_len, eckey) == 1) { - BIO_printf(out, " failed\n"); + if (!TEST_int_ne(ECDSA_verify(0, wrong_digest, 20, signature, + sig_len, eckey), 1)) goto builtin_err; - } - BIO_printf(out, "."); - (void)BIO_flush(out); + /* wrong length */ - if (ECDSA_verify(0, digest, 20, signature, sig_len - 1, eckey) == 1) { - BIO_printf(out, " failed\n"); + if (!TEST_int_ne(ECDSA_verify(0, digest, 20, signature, + sig_len - 1, eckey), 1)) goto builtin_err; - } - BIO_printf(out, "."); - (void)BIO_flush(out); /* * Modify a single byte of the signature: to ensure we don't garble @@ -385,10 +329,8 @@ int test_builtin(BIO *out) * one of the bignums directly. */ sig_ptr = signature; - if ((ecdsa_sig = d2i_ECDSA_SIG(NULL, &sig_ptr, sig_len)) == NULL) { - BIO_printf(out, " failed\n"); + if (!TEST_ptr(ecdsa_sig = d2i_ECDSA_SIG(NULL, &sig_ptr, sig_len))) goto builtin_err; - } ECDSA_SIG_get0(ecdsa_sig, &sig_r, &sig_s); @@ -396,12 +338,11 @@ int test_builtin(BIO *out) r_len = BN_num_bytes(sig_r); s_len = BN_num_bytes(sig_s); bn_len = (degree + 7) / 8; - if ((r_len > bn_len) || (s_len > bn_len)) { - BIO_printf(out, " failed\n"); + if (!TEST_false(r_len > bn_len) + || !TEST_false(s_len > bn_len)) goto builtin_err; - } buf_len = 2 * bn_len; - if ((raw_buf = OPENSSL_zalloc(buf_len)) == NULL) + if (!TEST_ptr(raw_buf = OPENSSL_zalloc(buf_len))) goto builtin_err; BN_bn2bin(sig_r, raw_buf + bn_len - r_len); BN_bn2bin(sig_s, raw_buf + buf_len - s_len); @@ -410,30 +351,31 @@ int test_builtin(BIO *out) offset = raw_buf[10] % buf_len; dirt = raw_buf[11] ? raw_buf[11] : 1; raw_buf[offset] ^= dirt; + /* Now read the BIGNUMs back in from raw_buf. */ - modified_sig = ECDSA_SIG_new(); - if (modified_sig == NULL) + if (!TEST_ptr(modified_sig = ECDSA_SIG_new())) goto builtin_err; - if (((modified_r = BN_bin2bn(raw_buf, bn_len, NULL)) == NULL) - || ((modified_s = BN_bin2bn(raw_buf + bn_len, bn_len, NULL)) == NULL) - || !ECDSA_SIG_set0(modified_sig, modified_r, modified_s)) { + if (!TEST_ptr(modified_r = BN_bin2bn(raw_buf, bn_len, NULL)) + || !TEST_ptr(modified_s = BN_bin2bn(raw_buf + bn_len, + bn_len, NULL)) + || !TEST_true(ECDSA_SIG_set0(modified_sig, + modified_r, modified_s))) { BN_free(modified_r); BN_free(modified_s); goto builtin_err; } sig_ptr2 = signature; sig_len = i2d_ECDSA_SIG(modified_sig, &sig_ptr2); - if (ECDSA_verify(0, digest, 20, signature, sig_len, eckey) == 1) { - BIO_printf(out, " failed\n"); + if (!TEST_false(ECDSA_verify(0, digest, 20, signature, sig_len, eckey))) goto builtin_err; - } - /* - * Sanity check: undo the modification and verify signature. - */ + + /* Sanity check: undo the modification and verify signature. */ raw_buf[offset] ^= dirt; - if (((unmodified_r = BN_bin2bn(raw_buf, bn_len, NULL)) == NULL) - || ((unmodified_s = BN_bin2bn(raw_buf + bn_len, bn_len, NULL)) == NULL) - || !ECDSA_SIG_set0(modified_sig, unmodified_r, unmodified_s)) { + if (!TEST_ptr(unmodified_r = BN_bin2bn(raw_buf, bn_len, NULL)) + || !TEST_ptr(unmodified_s = BN_bin2bn(raw_buf + bn_len, + bn_len, NULL)) + || !TEST_true(ECDSA_SIG_set0(modified_sig, unmodified_r, + unmodified_s))) { BN_free(unmodified_r); BN_free(unmodified_s); goto builtin_err; @@ -441,16 +383,10 @@ int test_builtin(BIO *out) sig_ptr2 = signature; sig_len = i2d_ECDSA_SIG(modified_sig, &sig_ptr2); - if (ECDSA_verify(0, digest, 20, signature, sig_len, eckey) != 1) { - BIO_printf(out, " failed\n"); + if (!TEST_true(ECDSA_verify(0, digest, 20, signature, sig_len, eckey))) goto builtin_err; - } - BIO_printf(out, "."); - (void)BIO_flush(out); - BIO_printf(out, " ok\n"); /* cleanup */ - /* clean bogus errors */ ERR_clear_error(); OPENSSL_free(signature); signature = NULL; @@ -479,41 +415,11 @@ int test_builtin(BIO *out) return ret; } -int main(void) +void register_tests(void) { - int ret = 1; - BIO *out; - char *p; - - out = BIO_new_fp(stdout, BIO_NOCLOSE | BIO_FP_TEXT); - - p = getenv("OPENSSL_DEBUG_MEMORY"); - if (p != NULL && strcmp(p, "on") == 0) - CRYPTO_set_mem_debug(1); - /* initialize the prng */ RAND_seed(rnd_seed, sizeof(rnd_seed)); - - /* the tests */ - if (!x9_62_tests(out)) - goto err; - if (!test_builtin(out)) - goto err; - - ret = 0; - err: - if (ret) - BIO_printf(out, "\nECDSA test failed\n"); - else - BIO_printf(out, "\nECDSA test passed\n"); - if (ret) - ERR_print_errors(out); - -#ifndef OPENSSL_NO_CRYPTO_MDEBUG - if (CRYPTO_mem_leaks(out) <= 0) - ret = 1; -#endif - BIO_free(out); - return ret; + ADD_TEST(x9_62_tests); + ADD_TEST(test_builtin); } #endif diff --git a/test/enginetest.c b/test/enginetest.c index 21cd20a..89107a3 100644 --- a/test/enginetest.c +++ b/test/enginetest.c @@ -22,21 +22,20 @@ int main(int argc, char *argv[]) # include # include # include +# include "testutil.h" +# include "test_main.h" static void display_engine_list(void) { ENGINE *h; int loop; - h = ENGINE_get_first(); loop = 0; - printf("listing available engine types\n"); - while (h) { - printf("engine %i, id = \"%s\", name = \"%s\"\n", + for (h = ENGINE_get_first(); h != NULL; h = ENGINE_get_next(h)) { + TEST_info("#%d: id = \"%s\", name = \"%s\"", loop++, ENGINE_get_id(h), ENGINE_get_name(h)); - h = ENGINE_get_next(h); } - printf("end of list\n"); + /* * ENGINE_get_first() increases the struct_ref counter, so we must call * ENGINE_free() to decrease it again @@ -44,161 +43,146 @@ static void display_engine_list(void) ENGINE_free(h); } -int main(int argc, char *argv[]) +#define NUMTOADD 512 + +static int test_engines(void) { - ENGINE *block[512]; + ENGINE *block[NUMTOADD]; char buf[256]; - const char *id, *name, *p; + const char *id, *name; ENGINE *ptr; int loop; - int to_return = 1; + int to_return = 0; ENGINE *new_h1 = NULL; ENGINE *new_h2 = NULL; ENGINE *new_h3 = NULL; ENGINE *new_h4 = NULL; - p = getenv("OPENSSL_DEBUG_MEMORY"); - if (p != NULL && strcmp(p, "on") == 0) - CRYPTO_set_mem_debug(1); - memset(block, 0, sizeof(block)); - if (((new_h1 = ENGINE_new()) == NULL) || - !ENGINE_set_id(new_h1, "test_id0") || - !ENGINE_set_name(new_h1, "First test item") || - ((new_h2 = ENGINE_new()) == NULL) || - !ENGINE_set_id(new_h2, "test_id1") || - !ENGINE_set_name(new_h2, "Second test item") || - ((new_h3 = ENGINE_new()) == NULL) || - !ENGINE_set_id(new_h3, "test_id2") || - !ENGINE_set_name(new_h3, "Third test item") || - ((new_h4 = ENGINE_new()) == NULL) || - !ENGINE_set_id(new_h4, "test_id3") || - !ENGINE_set_name(new_h4, "Fourth test item")) { - printf("Couldn't set up test ENGINE structures\n"); + if (!TEST_ptr(new_h1 = ENGINE_new()) + || !TEST_true(ENGINE_set_id(new_h1, "test_id0")) + || !TEST_true(ENGINE_set_name(new_h1, "First test item")) + || !TEST_ptr(new_h2 = ENGINE_new()) + || !TEST_true(ENGINE_set_id(new_h2, "test_id1")) + || !TEST_true(ENGINE_set_name(new_h2, "Second test item")) + || !TEST_ptr(new_h3 = ENGINE_new()) + || !TEST_true(ENGINE_set_id(new_h3, "test_id2")) + || !TEST_true(ENGINE_set_name(new_h3, "Third test item")) + || !TEST_ptr(new_h4 = ENGINE_new()) + || !TEST_true(ENGINE_set_id(new_h4, "test_id3")) + || !TEST_true(ENGINE_set_name(new_h4, "Fourth test item"))) goto end; - } - printf("\nenginetest beginning\n\n"); + TEST_info("Engines:"); display_engine_list(); - if (!ENGINE_add(new_h1)) { - printf("Add failed!\n"); + + if (!TEST_true(ENGINE_add(new_h1))) goto end; - } + TEST_info("Engines:"); display_engine_list(); + ptr = ENGINE_get_first(); - if (!ENGINE_remove(ptr)) { - printf("Remove failed!\n"); + if (!TEST_true(ENGINE_remove(ptr))) goto end; - } ENGINE_free(ptr); + TEST_info("Engines:"); display_engine_list(); - if (!ENGINE_add(new_h3) || !ENGINE_add(new_h2)) { - printf("Add failed!\n"); + + if (!TEST_true(ENGINE_add(new_h3)) + || !TEST_true(ENGINE_add(new_h2))) goto end; - } + TEST_info("Engines:"); display_engine_list(); - if (!ENGINE_remove(new_h2)) { - printf("Remove failed!\n"); + + if (!TEST_true(ENGINE_remove(new_h2))) goto end; - } + TEST_info("Engines:"); display_engine_list(); - if (!ENGINE_add(new_h4)) { - printf("Add failed!\n"); + + if (!TEST_true(ENGINE_add(new_h4))) goto end; - } + TEST_info("Engines:"); display_engine_list(); - if (ENGINE_add(new_h3)) { - printf("Add *should* have failed but didn't!\n"); + + /* Should fail. */ + if (!TEST_false(ENGINE_add(new_h3))) goto end; - } else - printf("Add that should fail did.\n"); ERR_clear_error(); - if (ENGINE_remove(new_h2)) { - printf("Remove *should* have failed but didn't!\n"); + + /* Should fail. */ + if (!TEST_false(ENGINE_remove(new_h2))) goto end; - } else - printf("Remove that should fail did.\n"); ERR_clear_error(); - if (!ENGINE_remove(new_h3)) { - printf("Remove failed!\n"); + + if (!TEST_true(ENGINE_remove(new_h3))) goto end; - } + TEST_info("Engines:"); display_engine_list(); - if (!ENGINE_remove(new_h4)) { - printf("Remove failed!\n"); + + if (!TEST_true(ENGINE_remove(new_h4))) goto end; - } + TEST_info("Engines:"); display_engine_list(); + /* * Depending on whether there's any hardware support compiled in, this * remove may be destined to fail. */ - ptr = ENGINE_get_first(); - if (ptr) + if ((ptr = ENGINE_get_first()) != NULL) { if (!ENGINE_remove(ptr)) - printf("Remove failed!i - probably no hardware " - "support present.\n"); + TEST_info("Remove failed - probably no hardware support present"); + } ENGINE_free(ptr); + TEST_info("Engines:"); display_engine_list(); - if (!ENGINE_add(new_h1) || !ENGINE_remove(new_h1)) { - printf("Couldn't add and remove to an empty list!\n"); + + if (!TEST_true(ENGINE_add(new_h1)) + || !TEST_true(ENGINE_remove(new_h1))) goto end; - } else - printf("Successfully added and removed to an empty list!\n"); - printf("About to beef up the engine-type list\n"); - for (loop = 0; loop < 512; loop++) { - sprintf(buf, "id%i", loop); + + TEST_info("About to beef up the engine-type list"); + for (loop = 0; loop < NUMTOADD; loop++) { + sprintf(buf, "id%d", loop); id = OPENSSL_strdup(buf); - sprintf(buf, "Fake engine type %i", loop); + sprintf(buf, "Fake engine type %d", loop); name = OPENSSL_strdup(buf); - if (((block[loop] = ENGINE_new()) == NULL) || - !ENGINE_set_id(block[loop], id) || - !ENGINE_set_name(block[loop], name)) { - printf("Couldn't create block of ENGINE structures.\n" - "I'll probably also core-dump now, damn.\n"); + if (!TEST_ptr(block[loop] = ENGINE_new()) + || !TEST_true(ENGINE_set_id(block[loop], id)) + || !TEST_true(ENGINE_set_name(block[loop], name))) goto end; - } } - for (loop = 0; loop < 512; loop++) { - if (!ENGINE_add(block[loop])) { - printf("\nAdding stopped at %i, (%s,%s)\n", + for (loop = 0; loop < NUMTOADD; loop++) { + if (!TEST_true(ENGINE_add(block[loop]))) { + printf("Adding stopped at %d, (%s,%s)", loop, ENGINE_get_id(block[loop]), ENGINE_get_name(block[loop])); goto cleanup_loop; - } else - printf("."); - fflush(stdout); + } } cleanup_loop: - printf("\nAbout to empty the engine-type list\n"); + TEST_info("About to empty the engine-type list"); while ((ptr = ENGINE_get_first()) != NULL) { - if (!ENGINE_remove(ptr)) { - printf("\nRemove failed!\n"); + if (!TEST_true(ENGINE_remove(ptr))) goto end; - } ENGINE_free(ptr); - printf("."); - fflush(stdout); } - for (loop = 0; loop < 512; loop++) { + for (loop = 0; loop < NUMTOADD; loop++) { OPENSSL_free((void *)ENGINE_get_id(block[loop])); OPENSSL_free((void *)ENGINE_get_name(block[loop])); } - printf("\nTests completed happily\n"); - to_return = 0; + to_return = 1; + end: - if (to_return) - ERR_print_errors_fp(stderr); ENGINE_free(new_h1); ENGINE_free(new_h2); ENGINE_free(new_h3); ENGINE_free(new_h4); - for (loop = 0; loop < 512; loop++) + for (loop = 0; loop < NUMTOADD; loop++) ENGINE_free(block[loop]); - -#ifndef OPENSSL_NO_CRYPTO_MDEBUG - if (CRYPTO_mem_leaks_fp(stderr) <= 0) - to_return = 1; -#endif return to_return; } + +void register_tests(void) +{ + ADD_TEST(test_engines); +} #endif diff --git a/test/pbelutest.c b/test/pbelutest.c index e226d43..11189b4 100644 --- a/test/pbelutest.c +++ b/test/pbelutest.c @@ -8,40 +8,49 @@ */ #include -#include -#include +#include "testutil.h" +#include "test_main.h" /* * Password based encryption (PBE) table ordering test. * Attempt to look up all supported algorithms. */ -int main(int argc, char **argv) +static int test_pbelu(void) { - size_t i; - int rv = 0; - int pbe_type, pbe_nid; - int last_type = -1, last_nid = -1; + int i, failed = 0, ok; + int pbe_type, pbe_nid, last_type = -1, last_nid = -1; + for (i = 0; EVP_PBE_get(&pbe_type, &pbe_nid, i) != 0; i++) { - if (EVP_PBE_find(pbe_type, pbe_nid, NULL, NULL, 0) == 0) { - rv = 1; + if (!TEST_true(EVP_PBE_find(pbe_type, pbe_nid, NULL, NULL, 0))) { + TEST_info("i=%d, pbe_type=%d, pbe_nid=%d", i, pbe_type, pbe_nid); + failed = 1; break; } } - if (rv == 0) - return 0; + + if (!failed) + return 1; + /* Error: print out whole table */ for (i = 0; EVP_PBE_get(&pbe_type, &pbe_nid, i) != 0; i++) { if (pbe_type > last_type) - rv = 0; + ok = 0; else if (pbe_type < last_type || pbe_nid < last_nid) - rv = 1; + ok = 1; else - rv = 0; - fprintf(stderr, "PBE type=%d %d (%s): %s\n", pbe_type, pbe_nid, - OBJ_nid2sn(pbe_nid), rv ? "ERROR" : "OK"); + ok = 0; + if (!ok) + failed = 1; + TEST_info("PBE type=%d %d (%s): %s\n", pbe_type, pbe_nid, + OBJ_nid2sn(pbe_nid), ok ? "ERROR" : "OK"); last_type = pbe_type; last_nid = pbe_nid; } - return 1; + return failed ? 0 : 1; +} + +void register_tests(void) +{ + ADD_TEST(test_pbelu); } diff --git a/test/recordlentest.c b/test/recordlentest.c index b9d868f..7063149 100644 --- a/test/recordlentest.c +++ b/test/recordlentest.c @@ -103,11 +103,9 @@ static int test_record_overflow(int idx) ERR_clear_error(); - if (!create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), &sctx, - &cctx, cert, privkey)) { - printf("Unable to create SSL_CTX pair\n"); + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), + &sctx, &cctx, cert, privkey))) goto end; - } if (idx == TEST_ENCRYPTED_OVERFLOW_TLS1_2_OK || idx == TEST_ENCRYPTED_OVERFLOW_TLS1_2_NOT_OK) { @@ -121,10 +119,9 @@ static int test_record_overflow(int idx) len = SSL3_RT_MAX_TLS13_ENCRYPTED_LENGTH; } - if (!create_ssl_objects(sctx, cctx, &serverssl, &clientssl, NULL, NULL)) { - printf("Unable to create SSL objects\n"); + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl, + NULL, NULL))) goto end; - } serverbio = SSL_get_rbio(serverssl); @@ -135,29 +132,23 @@ static int test_record_overflow(int idx) if (idx == TEST_PLAINTEXT_OVERFLOW_NOT_OK) len++; - if (!write_record(serverbio, len, SSL3_RT_HANDSHAKE, TLS1_VERSION)) { - printf("Unable to write plaintext record\n"); + if (!TEST_true(write_record(serverbio, len, + SSL3_RT_HANDSHAKE, TLS1_VERSION))) goto end; - } - if (SSL_accept(serverssl) > 0) { - printf("Unexpected success reading plaintext record\n"); + if (!TEST_int_le(SSL_accept(serverssl), 0)) goto end; - } overf_expected = (idx == TEST_PLAINTEXT_OVERFLOW_OK) ? 0 : 1; - if (fail_due_to_record_overflow(0) != overf_expected) { - printf("Unexpected error value received\n"); + if (!TEST_int_eq(fail_due_to_record_overflow(0), overf_expected)) goto end; - } goto success; } - if (!create_ssl_connection(serverssl, clientssl, SSL_ERROR_NONE)) { - printf("Unable to create SSL connection\n"); + if (!TEST_true(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE))) goto end; - } if (idx == TEST_ENCRYPTED_OVERFLOW_TLS1_2_NOT_OK || idx == TEST_ENCRYPTED_OVERFLOW_TLS1_3_NOT_OK) { @@ -173,32 +164,24 @@ static int test_record_overflow(int idx) else recversion = TLS1_2_VERSION; - if (!write_record(serverbio, len, SSL3_RT_APPLICATION_DATA, recversion)) { - printf("Unable to write encrypted record\n"); + if (!TEST_true(write_record(serverbio, len, SSL3_RT_APPLICATION_DATA, + recversion))) goto end; - } - if (SSL_read_ex(serverssl, &buf, sizeof(buf), &written)) { - printf("Unexpected success reading encrypted record\n"); + if (!TEST_false(SSL_read_ex(serverssl, &buf, sizeof(buf), &written))) goto end; - } - if (fail_due_to_record_overflow(1) != overf_expected) { - printf("Unexpected error value received\n"); + if (!TEST_int_eq(fail_due_to_record_overflow(1), overf_expected)) goto end; - } success: testresult = 1; end: - if(!testresult) - ERR_print_errors_fp(stdout); SSL_free(serverssl); SSL_free(clientssl); SSL_CTX_free(sctx); SSL_CTX_free(cctx); - return testresult; } @@ -207,10 +190,9 @@ int test_main(int argc, char *argv[]) int testresult = 1; if (argc != 3) { - printf("Invalid argument count\n"); + TEST_error("Invalid argument count"); return 1; } - cert = argv[1]; privkey = argv[2]; diff --git a/test/srptest.c b/test/srptest.c index 73b3881..6d14571 100644 --- a/test/srptest.c +++ b/test/srptest.c @@ -23,13 +23,23 @@ int main(int argc, char *argv[]) # include # include # include +# include "testutil.h" +# include "test_main.h" static void showbn(const char *name, const BIGNUM *bn) { - fputs(name, stdout); - fputs(" = ", stdout); - BN_print_fp(stdout, bn); - putc('\n', stdout); + BIO *b; + const char *text; + + if (!TEST_ptr(b = BIO_new(BIO_s_mem()))) + return; + BIO_write(b, name, strlen(name)); + BIO_write(b, " = ", 3); + BN_print(b, bn); + BIO_write(b, "\0", 1); + BIO_get_mem_data(b, &text); + TEST_info("%s", text); + BIO_free(b); } # define RANDOM_SIZE 32 /* use 256 bits on each side */ @@ -37,7 +47,7 @@ static void showbn(const char *name, const BIGNUM *bn) static int run_srp(const char *username, const char *client_pass, const char *server_pass) { - int ret = -1; + int ret = 0; BIGNUM *s = NULL; BIGNUM *v = NULL; BIGNUM *a = NULL; @@ -50,17 +60,15 @@ static int run_srp(const char *username, const char *client_pass, BIGNUM *Kserver = NULL; unsigned char rand_tmp[RANDOM_SIZE]; /* use builtin 1024-bit params */ - const SRP_gN *GN = SRP_get_default_gN("1024"); + const SRP_gN *GN; + + if (!TEST_ptr(GN = SRP_get_default_gN("1024"))) + return 0; - if (GN == NULL) { - fprintf(stderr, "Failed to get SRP parameters\n"); - return -1; - } /* Set up server's password entry */ - if (!SRP_create_verifier_BN(username, server_pass, &s, &v, GN->N, GN->g)) { - fprintf(stderr, "Failed to create SRP verifier\n"); - return -1; - } + if (!TEST_true(SRP_create_verifier_BN(username, server_pass, + &s, &v, GN->N, GN->g))) + goto end; showbn("N", GN->N); showbn("g", GN->g); @@ -70,32 +78,30 @@ static int run_srp(const char *username, const char *client_pass, /* Server random */ RAND_bytes(rand_tmp, sizeof(rand_tmp)); b = BN_bin2bn(rand_tmp, sizeof(rand_tmp), NULL); - /* TODO - check b != 0 */ + if (!TEST_false(BN_is_zero(b))) + goto end; showbn("b", b); /* Server's first message */ Bpub = SRP_Calc_B(b, GN->N, GN->g, v); showbn("B", Bpub); - if (!SRP_Verify_B_mod_N(Bpub, GN->N)) { - fprintf(stderr, "Invalid B\n"); - return -1; - } + if (!TEST_true(SRP_Verify_B_mod_N(Bpub, GN->N))) + goto end; /* Client random */ RAND_bytes(rand_tmp, sizeof(rand_tmp)); a = BN_bin2bn(rand_tmp, sizeof(rand_tmp), NULL); - /* TODO - check a != 0 */ + if (!TEST_false(BN_is_zero(a))) + goto end; showbn("a", a); /* Client's response */ Apub = SRP_Calc_A(a, GN->N, GN->g); showbn("A", Apub); - if (!SRP_Verify_A_mod_N(Apub, GN->N)) { - fprintf(stderr, "Invalid A\n"); - return -1; - } + if (!TEST_true(SRP_Verify_A_mod_N(Apub, GN->N))) + goto end; /* Both sides calculate u */ u = SRP_Calc_u(Apub, Bpub, GN->N); @@ -109,13 +115,12 @@ static int run_srp(const char *username, const char *client_pass, Kserver = SRP_Calc_server_key(Apub, v, u, b, GN->N); showbn("Server's key", Kserver); - if (BN_cmp(Kclient, Kserver) == 0) { - ret = 0; - } else { - fprintf(stderr, "Keys mismatch\n"); - ret = 1; - } + if (!TEST_int_eq(BN_cmp(Kclient, Kserver), 0)) + goto end; + + ret = 1; +end: BN_clear_free(Kclient); BN_clear_free(Kserver); BN_clear_free(x); @@ -133,25 +138,19 @@ static int run_srp(const char *username, const char *client_pass, static int check_bn(const char *name, const BIGNUM *bn, const char *hexbn) { BIGNUM *tmp = NULL; - int rv; - if (BN_hex2bn(&tmp, hexbn) == 0) + + if (!TEST_true(BN_hex2bn(&tmp, hexbn))) return 0; - rv = BN_cmp(bn, tmp); - if (rv == 0) { - printf("%s = ", name); - BN_print_fp(stdout, bn); - printf("\n"); + + if (!TEST_int_eq(BN_cmp(bn, tmp), 0)) { + TEST_info("Unexpected %s value", name); + showbn("expecting", tmp); + showbn("received", bn); BN_free(tmp); - return 1; + return 0; } - printf("Unexpected %s value\n", name); - printf("Expecting: "); - BN_print_fp(stdout, tmp); - printf("\nReceived: "); - BN_print_fp(stdout, bn); - printf("\n"); BN_free(tmp); - return 0; + return 1; } /* SRP test vectors from RFC5054 */ @@ -169,26 +168,22 @@ static int run_srp_kat(void) BIGNUM *Kclient = NULL; BIGNUM *Kserver = NULL; /* use builtin 1024-bit params */ - const SRP_gN *GN = SRP_get_default_gN("1024"); - - if (GN == NULL) { - fprintf(stderr, "Failed to get SRP parameters\n"); + const SRP_gN *GN; + + if (!TEST_ptr(GN = SRP_get_default_gN("1024"))) goto err; - } BN_hex2bn(&s, "BEB25379D1A8581EB5A727673A2441EE"); /* Set up server's password entry */ - if (!SRP_create_verifier_BN("alice", "password123", &s, &v, GN->N, - GN->g)) { - fprintf(stderr, "Failed to create SRP verifier\n"); + if (!TEST_true(SRP_create_verifier_BN("alice", "password123", &s, &v, GN->N, + GN->g))) goto err; - } - if (!check_bn("v", v, + if (!TEST_true(check_bn("v", v, "7E273DE8696FFC4F4E337D05B4B375BEB0DDE1569E8FA00A9886D812" "9BADA1F1822223CA1A605B530E379BA4729FDC59F105B4787E5186F5" "C671085A1447B52A48CF1970B4FB6F8400BBF4CEBFBB168152E08AB5" "EA53D15C1AFF87B2B9DA6E04E058AD51CC72BFC9033B564E26480D78" - "E955A5E29E7AB245DB2BE315E2099AFB")) + "E955A5E29E7AB245DB2BE315E2099AFB"))) goto err; /* Server random */ @@ -197,18 +192,15 @@ static int run_srp_kat(void) /* Server's first message */ Bpub = SRP_Calc_B(b, GN->N, GN->g, v); - - if (!SRP_Verify_B_mod_N(Bpub, GN->N)) { - fprintf(stderr, "Invalid B\n"); + if (!TEST_true(SRP_Verify_B_mod_N(Bpub, GN->N))) goto err; - } - if (!check_bn("B", Bpub, + if (!TEST_true(check_bn("B", Bpub, "BD0C61512C692C0CB6D041FA01BB152D4916A1E77AF46AE105393011" "BAF38964DC46A0670DD125B95A981652236F99D9B681CBF87837EC99" "6C6DA04453728610D0C6DDB58B318885D7D82C7F8DEB75CE7BD4FBAA" "37089E6F9C6059F388838E7A00030B331EB76840910440B1B27AAEAE" - "EB4012B7D7665238A8E3FB004B117B58")) + "EB4012B7D7665238A8E3FB004B117B58"))) goto err; /* Client random */ @@ -217,49 +209,48 @@ static int run_srp_kat(void) /* Client's response */ Apub = SRP_Calc_A(a, GN->N, GN->g); + if (!TEST_true(SRP_Verify_A_mod_N(Apub, GN->N))) + goto err; - if (!SRP_Verify_A_mod_N(Apub, GN->N)) { - fprintf(stderr, "Invalid A\n"); - return -1; - } - - if (!check_bn("A", Apub, + if (!TEST_true(check_bn("A", Apub, "61D5E490F6F1B79547B0704C436F523DD0E560F0C64115BB72557EC4" "4352E8903211C04692272D8B2D1A5358A2CF1B6E0BFCF99F921530EC" "8E39356179EAE45E42BA92AEACED825171E1E8B9AF6D9C03E1327F44" "BE087EF06530E69F66615261EEF54073CA11CF5858F0EDFDFE15EFEA" - "B349EF5D76988A3672FAC47B0769447B")) + "B349EF5D76988A3672FAC47B0769447B"))) goto err; /* Both sides calculate u */ u = SRP_Calc_u(Apub, Bpub, GN->N); - if (!check_bn("u", u, "CE38B9593487DA98554ED47D70A7AE5F462EF019")) + if (!TEST_true(check_bn("u", u, + "CE38B9593487DA98554ED47D70A7AE5F462EF019"))) goto err; /* Client's key */ x = SRP_Calc_x(s, "alice", "password123"); Kclient = SRP_Calc_client_key(GN->N, Bpub, GN->g, x, a, u); - if (!check_bn("Client's key", Kclient, + if (!TEST_true(check_bn("Client's key", Kclient, "B0DC82BABCF30674AE450C0287745E7990A3381F63B387AAF271A10D" "233861E359B48220F7C4693C9AE12B0A6F67809F0876E2D013800D6C" "41BB59B6D5979B5C00A172B4A2A5903A0BDCAF8A709585EB2AFAFA8F" "3499B200210DCC1F10EB33943CD67FC88A2F39A4BE5BEC4EC0A3212D" - "C346D7E474B29EDE8A469FFECA686E5A")) + "C346D7E474B29EDE8A469FFECA686E5A"))) goto err; + /* Server's key */ Kserver = SRP_Calc_server_key(Apub, v, u, b, GN->N); - if (!check_bn("Server's key", Kserver, + if (!TEST_true(check_bn("Server's key", Kserver, "B0DC82BABCF30674AE450C0287745E7990A3381F63B387AAF271A10D" "233861E359B48220F7C4693C9AE12B0A6F67809F0876E2D013800D6C" "41BB59B6D5979B5C00A172B4A2A5903A0BDCAF8A709585EB2AFAFA8F" "3499B200210DCC1F10EB33943CD67FC88A2F39A4BE5BEC4EC0A3212D" - "C346D7E474B29EDE8A469FFECA686E5A")) + "C346D7E474B29EDE8A469FFECA686E5A"))) goto err; ret = 1; - err: +err: BN_clear_free(Kclient); BN_clear_free(Kserver); BN_clear_free(x); @@ -274,39 +265,22 @@ static int run_srp_kat(void) return ret; } -int main(int argc, char **argv) +static int run_srp_tests(void) { - BIO *bio_err; - bio_err = BIO_new_fp(stderr, BIO_NOCLOSE | BIO_FP_TEXT); - - CRYPTO_set_mem_debug(1); - CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON); - - /* "Negative" test, expect a mismatch */ - if (run_srp("alice", "password1", "password2") == 0) { - fprintf(stderr, "Mismatched SRP run failed\n"); - return 1; - } + if (!TEST_false(run_srp("alice", "password1", "password2"))) + return 0; /* "Positive" test, should pass */ - if (run_srp("alice", "password", "password") != 0) { - fprintf(stderr, "Plain SRP run failed\n"); - return 1; - } - - /* KAT from RFC5054: should pass */ - if (run_srp_kat() != 1) { - fprintf(stderr, "SRP KAT failed\n"); - return 1; - } + if (!TEST_true(run_srp("alice", "password", "password"))) + return 0; -#ifndef OPENSSL_NO_CRYPTO_MDEBUG - if (CRYPTO_mem_leaks(bio_err) <= 0) - return 1; -#endif - BIO_free(bio_err); + return 1; +} - return 0; +void register_tests(void) +{ + ADD_TEST(run_srp_tests); + ADD_TEST(run_srp_kat); } #endif From rsalz at openssl.org Tue Apr 18 18:58:38 2017 From: rsalz at openssl.org (Rich Salz) Date: Tue, 18 Apr 2017 18:58:38 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492541918.182444.13859.nullmailer@dev.openssl.org> The branch master has been updated via 3304d57848479441ffa0facc6d9693a466559756 (commit) from b66411f6cda6970c01283ddde6d8063c57b3b7d9 (commit) - Log ----------------------------------------------------------------- commit 3304d57848479441ffa0facc6d9693a466559756 Author: Rich Salz Date: Tue Apr 18 14:50:00 2017 -0400 Convert more tests to framework randtest, cipher_overhead_test, bioprintest, constant_time_test Move test_bioprint to 04 group Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3228) ----------------------------------------------------------------------- Summary of changes: test/bioprinttest.c | 255 +++++------- test/build.info | 10 +- test/cipher_overhead_test.c | 25 +- test/constant_time_test.c | 446 ++++++++------------- test/randtest.c | 95 ++--- .../{90-test_bioprint.t => 04-test_bioprint.t} | 0 6 files changed, 327 insertions(+), 504 deletions(-) rename test/recipes/{90-test_bioprint.t => 04-test_bioprint.t} (100%) diff --git a/test/bioprinttest.c b/test/bioprinttest.c index 4eeb4c6..ca0f1aa 100644 --- a/test/bioprinttest.c +++ b/test/bioprinttest.c @@ -11,8 +11,11 @@ #include #include #include "internal/numbers.h" +#include "testutil.h" +#include "test_main.h" +#include "test_main_custom.h" -#define nelem(x) (sizeof(x)/sizeof((x)[0])) +#define nelem(x) (int)(sizeof(x) / sizeof((x)[0])) static int justprint = 0; @@ -89,64 +92,13 @@ static char *fpexpected[][5] = { /* 69 */ { "6.6667e+04", "66666.6667", "6.667e+04", "6.6667E+04", "6.667E+04" }, }; -static void dofptest(int test, double val, char *width, int prec, int *fail) -{ - char format[80], result[80]; - int i; - - for (i = 0; i < 5; i++) { - char *fspec = NULL; - switch (i) { - case 0: - fspec = "e"; - break; - case 1: - fspec = "f"; - break; - case 2: - fspec = "g"; - break; - case 3: - fspec = "E"; - break; - case 4: - fspec = "G"; - break; - } - - if (prec >= 0) - BIO_snprintf(format, sizeof(format), "%%%s.%d%s", width, prec, - fspec); - else - BIO_snprintf(format, sizeof(format), "%%%s%s", width, fspec); - BIO_snprintf(result, sizeof(result), format, val); - - if (justprint) { - if (i == 0) { - printf(" /* %3d */ { \"%s\"", test, result); - } else { - printf(", \"%s\"", result); - } - } else { - if (strcmp(fpexpected[test][i], result) != 0) { - printf("Test %d(%d) failed. Expected \"%s\". Got \"%s\". " - "Format \"%s\"\n", test, i, fpexpected[test][i], result, - format); - *fail = 1; - } - } - } - if (justprint) { - printf(" },\n"); - } -} - -struct z_data_st { +typedef struct z_data_st { size_t value; const char *format; const char *expected; -}; -static struct z_data_st zu_data[] = { +} z_data; + +static z_data zu_data[] = { { SIZE_MAX, "%zu", (sizeof(size_t) == 4 ? "4294967295" : sizeof(size_t) == 8 ? "18446744073709551615" : "") }, @@ -161,24 +113,24 @@ static struct z_data_st zu_data[] = { { 0, "%zi", "0" }, }; -static void dozutest(int test, const struct z_data_st *data, int *fail) +static int test_zu(int i) { char bio_buf[80]; + const z_data *data = &zu_data[i]; BIO_snprintf(bio_buf, sizeof(bio_buf) - 1, data->format, data->value); - if (strcmp(bio_buf, data->expected) != 0) { - printf("Test %d failed. Expected \"%s\". Got \"%s\". " - "Format \"%s\"\n", test, data->expected, bio_buf, data->format); - *fail = 1; - } + if (!TEST_str_eq(bio_buf, data->expected)) + return 0; + return 1; } -struct j_data_st { +typedef struct j_data_st { uint64_t value; const char *format; const char *expected; -}; -static struct j_data_st j_data[] = { +} j_data; + +static j_data jf_data[] = { { 0xffffffffffffffffU, "%ju", "18446744073709551615" }, { 0xffffffffffffffffU, "%jx", "ffffffffffffffff" }, { 0x8000000000000000U, "%ju", "9223372036854775808" }, @@ -189,108 +141,109 @@ static struct j_data_st j_data[] = { { 0x8000000000000000U, "%ji", "-9223372036854775808" }, }; -static void dojtest(int test, const struct j_data_st *data, int *fail) +static int test_j(int i) { + const j_data *data = &jf_data[i]; char bio_buf[80]; BIO_snprintf(bio_buf, sizeof(bio_buf) - 1, data->format, data->value); - if (strcmp(bio_buf, data->expected) != 0) { - printf("Test %d failed. Expected \"%s\". Got \"%s\". " - "Format \"%s\"\n", test, data->expected, bio_buf, data->format); - *fail = 1; - } + if (!TEST_str_eq(bio_buf, data->expected)) + return 0; + return 1; } -int main(int argc, char **argv) + +/* Precision and width. */ +typedef struct pw_st { + int p; + const char *w; +} pw; + +static pw pw_params[] = { + { 4, "" }, + { 5, "" }, + { 4, "12" }, + { 5, "12" }, + { 0, "" }, + { -1, "" }, + { 4, "08" } +}; + +static int dofptest(int test, double val, const char *width, int prec) { - int test = 0; - size_t i; - int fail = 0; - int prec = -1; - char *width = ""; - const double frac = 2.0/3.0; - char buf[80]; + static const char *fspecs[] = { + "e", "f", "g", "E", "G" + }; + char format[80], result[80]; + int ret = 1, i; - if (argc == 2 && strcmp(argv[1], "-expected") == 0) { - justprint = 1; - } + for (i = 0; i < nelem(fspecs); i++) { + const char *fspec = fspecs[i]; - CRYPTO_set_mem_debug(1); - CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON); + if (prec >= 0) + BIO_snprintf(format, sizeof(format), "%%%s.%d%s", width, prec, + fspec); + else + BIO_snprintf(format, sizeof(format), "%%%s%s", width, fspec); + BIO_snprintf(result, sizeof(result), format, val); - /* Tests for floating point format specifiers */ - for (i = 0; i < 7; i++) { - switch (i) { - case 0: - prec = 4; - width = ""; - break; - case 1: - prec = 5; - width = ""; - break; - case 2: - prec = 4; - width = "12"; - break; - case 3: - prec = 5; - width = "12"; - break; - case 4: - prec = 0; - width = ""; - break; - case 5: - prec = -1; - width = ""; - break; - case 6: - prec = 4; - width = "08"; - break; + if (justprint) { + if (i == 0) + printf(" /* %d */ { \"%s\"", test, result); + else + printf(", \"%s\"", result); + } else if (!TEST_str_eq(fpexpected[test][i], result)) { + TEST_info("test %d format=|%s| exp=|%s|, ret=|%s|", + test, format, fpexpected[test][i], result); + ret = 0; } - - dofptest(test++, 0.0, width, prec, &fail); - dofptest(test++, 0.67, width, prec, &fail); - dofptest(test++, frac, width, prec, &fail); - dofptest(test++, frac / 1000, width, prec, &fail); - dofptest(test++, frac / 10000, width, prec, &fail); - dofptest(test++, 6.0 + frac, width, prec, &fail); - dofptest(test++, 66.0 + frac, width, prec, &fail); - dofptest(test++, 666.0 + frac, width, prec, &fail); - dofptest(test++, 6666.0 + frac, width, prec, &fail); - dofptest(test++, 66666.0 + frac, width, prec, &fail); } + if (justprint) + printf(" },\n"); + return ret; +} - /* Test excessively big number. Should fail */ - if (BIO_snprintf(buf, sizeof(buf), "%f\n", 2 * (double)ULONG_MAX) != -1) { - printf("Test %d failed. Unexpected success return from " - "BIO_snprintf()\n", test); - fail = 1; - } +static int test_fp(int i) +{ + static int t = 0; + const double frac = 2.0 / 3.0; + const pw *pwp = &pw_params[i]; + + if (!TEST_true(dofptest(t++, 0.0, pwp->w, pwp->p)) + || !TEST_true(dofptest(t++, 0.67, pwp->w, pwp->p)) + || !TEST_true(dofptest(t++, frac, pwp->w, pwp->p)) + || !TEST_true(dofptest(t++, frac / 1000, pwp->w, pwp->p)) + || !TEST_true(dofptest(t++, frac / 10000, pwp->w, pwp->p)) + || !TEST_true(dofptest(t++, 6.0 + frac, pwp->w, pwp->p)) + || !TEST_true(dofptest(t++, 66.0 + frac, pwp->w, pwp->p)) + || !TEST_true(dofptest(t++, 666.0 + frac, pwp->w, pwp->p)) + || !TEST_true(dofptest(t++, 6666.0 + frac, pwp->w, pwp->p)) + || !TEST_true(dofptest(t++, 66666.0 + frac, pwp->w, pwp->p))) + return 0; + return 1; +} - for (i = 0; i < nelem(zu_data); i++) { - dozutest(test++, &zu_data[i], &fail); - } +static int test_big(void) +{ + char buf[80]; - for (i = 0; i < nelem(j_data); i++) { - dojtest(test++, &j_data[i], &fail); - } + /* Test excessively big number. Should fail */ + if (!TEST_int_eq(BIO_snprintf(buf, sizeof(buf), + "%f\n", 2 * (double)ULONG_MAX), -1)) + return 0; + return 1; +} -#ifndef OPENSSL_NO_CRYPTO_MDEBUG - if (CRYPTO_mem_leaks_fp(stderr) <= 0) - return 1; -# endif - if (!justprint) { - if (fail) { - printf("FAIL\n"); - return 1; - } - printf ("PASS\n"); - } - return 0; -} +int test_main(int argc, char **argv) +{ + if (argc == 2 && strcmp(argv[1], "-expected") == 0) + justprint = 1; + ADD_TEST(test_big); + ADD_ALL_TESTS(test_fp, nelem(pw_params)); + ADD_ALL_TESTS(test_zu, nelem(zu_data)); + ADD_ALL_TESTS(test_j, nelem(jf_data)); + return run_tests(argv[0]); +} diff --git a/test/build.info b/test/build.info index 8346385..eb36596 100644 --- a/test/build.info +++ b/test/build.info @@ -111,7 +111,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[mdc2test]=../include DEPEND[mdc2test]=../libcrypto - SOURCE[randtest]=randtest.c + SOURCE[randtest]=randtest.c testutil.c test_main.c INCLUDE[randtest]=../include DEPEND[randtest]=../libcrypto @@ -175,7 +175,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[danetest]=../include DEPEND[danetest]=../libcrypto ../libssl - SOURCE[constant_time_test]=constant_time_test.c + SOURCE[constant_time_test]=constant_time_test.c testutil.c test_main.c INCLUDE[constant_time_test]=.. ../include DEPEND[constant_time_test]=../libcrypto @@ -264,8 +264,8 @@ IF[{- !$disabled{tests} -}] INCLUDE[asynciotest]=../include DEPEND[asynciotest]=../libcrypto ../libssl - SOURCE[bioprinttest]=bioprinttest.c - INCLUDE[bioprinttest]=../include + SOURCE[bioprinttest]=bioprinttest.c testutil.c test_main_custom.c + INCLUDE[bioprinttest]=../ ../include DEPEND[bioprinttest]=../libcrypto SOURCE[sslapitest]=sslapitest.c ssltestlib.c testutil.c test_main_custom.c @@ -311,7 +311,7 @@ IF[{- !$disabled{tests} -}] IF[{- $disabled{shared} -}] PROGRAMS_NO_INST=cipher_overhead_test - SOURCE[cipher_overhead_test]=cipher_overhead_test.c + SOURCE[cipher_overhead_test]=cipher_overhead_test.c testutil.c test_main.c INCLUDE[cipher_overhead_test]=.. ../include DEPEND[cipher_overhead_test]=../libcrypto ../libssl ENDIF diff --git a/test/cipher_overhead_test.c b/test/cipher_overhead_test.c index 8c262b3..5ddd21c 100644 --- a/test/cipher_overhead_test.c +++ b/test/cipher_overhead_test.c @@ -7,13 +7,15 @@ * https://www.openssl.org/source/license.html */ -#include +#include "e_os.h" +#include "testutil.h" +#include "test_main.h" #include "../ssl/ssl_locl.h" -int main(void) +static int cipher_overhead(void) { - int i, n = ssl3_num_ciphers(); + int ret = 1, i, n = ssl3_num_ciphers(); const SSL_CIPHER *ciph; size_t mac, in, blk, ex; @@ -21,13 +23,18 @@ int main(void) ciph = ssl3_get_cipher(i); if (!ciph->min_dtls) continue; - if (!ssl_cipher_get_overhead(ciph, &mac, &in, &blk, &ex)) { - printf("Error getting overhead for %s\n", ciph->name); - exit(1); + if (!TEST_true(ssl_cipher_get_overhead(ciph, &mac, &in, &blk, &ex))) { + TEST_info("Failed getting %s", ciph->name); + ret = 0; } else { - printf("Cipher %s: %"OSSLzu" %"OSSLzu" %"OSSLzu" %"OSSLzu"\n", - ciph->name, mac, in, blk, ex); + TEST_info("Cipher %s: %"OSSLzu" %"OSSLzu" %"OSSLzu" %"OSSLzu, + ciph->name, mac, in, blk, ex); } } - exit(0); + return ret; +} + +void register_tests(void) +{ + ADD_TEST(cipher_overhead); } diff --git a/test/constant_time_test.c b/test/constant_time_test.c index e53a73b..d34e386 100644 --- a/test/constant_time_test.c +++ b/test/constant_time_test.c @@ -7,12 +7,13 @@ * https://www.openssl.org/source/license.html */ -#include "internal/constant_time_locl.h" -#include "e_os.h" - #include #include +#include "e_os.h" +#include "internal/constant_time_locl.h" +#include "testutil.h" +#include "test_main.h" #include "internal/numbers.h" static const unsigned int CONSTTIME_TRUE = (unsigned)(~0); @@ -26,17 +27,11 @@ static int test_binary_op(unsigned int (*op) (unsigned int a, unsigned int b), const char *op_name, unsigned int a, unsigned int b, int is_true) { - unsigned c = op(a, b); - if (is_true && c != CONSTTIME_TRUE) { - fprintf(stderr, "Test failed for %s(%du, %du): expected %du " - "(TRUE), got %du\n", op_name, a, b, CONSTTIME_TRUE, c); - return 1; - } else if (!is_true && c != CONSTTIME_FALSE) { - fprintf(stderr, "Test failed for %s(%du, %du): expected %du " - "(FALSE), got %du\n", op_name, a, b, CONSTTIME_FALSE, c); - return 1; - } - return 0; + if (is_true && !TEST_uint_eq(op(a, b), CONSTTIME_TRUE)) + return 0; + if (!is_true && !TEST_uint_eq(op(a, b), CONSTTIME_FALSE)) + return 0; + return 1; } static int test_binary_op_8(unsigned @@ -44,210 +39,112 @@ static int test_binary_op_8(unsigned const char *op_name, unsigned int a, unsigned int b, int is_true) { - unsigned char c = op(a, b); - if (is_true && c != CONSTTIME_TRUE_8) { - fprintf(stderr, "Test failed for %s(%du, %du): expected %u " - "(TRUE), got %u\n", op_name, a, b, CONSTTIME_TRUE_8, c); - return 1; - } else if (!is_true && c != CONSTTIME_FALSE_8) { - fprintf(stderr, "Test failed for %s(%du, %du): expected %u " - "(FALSE), got %u\n", op_name, a, b, CONSTTIME_FALSE_8, c); - return 1; - } - return 0; + if (is_true && !TEST_uint_eq(op(a, b), CONSTTIME_TRUE_8)) + return 0; + if (!is_true && !TEST_uint_eq(op(a, b), CONSTTIME_FALSE_8)) + return 0; + return 1; } static int test_binary_op_s(size_t (*op) (size_t a, size_t b), const char *op_name, size_t a, size_t b, int is_true) { - size_t c = op(a, b); - if (is_true && c != CONSTTIME_TRUE_S) { - fprintf(stderr, "Test failed for %s(%"OSSLzu", %"OSSLzu - "): expected %"OSSLzu" (TRUE), got %"OSSLzu"\n", - op_name, a, b, CONSTTIME_TRUE_S, c); - return 1; - } else if (!is_true && c != CONSTTIME_FALSE_S) { - fprintf(stderr, "Test failed for %s(%"OSSLzu", %"OSSLzu - "): expected %" OSSLzu " (FALSE), got %"OSSLzu"\n", - op_name, a, b, CONSTTIME_FALSE_S, c); - return 1; - } - return 0; + if (is_true && !TEST_size_t_eq(op(a,b), CONSTTIME_TRUE_S)) + return 0; + if (!is_true && !TEST_uint_eq(op(a,b), CONSTTIME_FALSE_S)) + return 0; + return 1; } static int test_is_zero(unsigned int a) { - unsigned int c = constant_time_is_zero(a); - if (a == 0 && c != CONSTTIME_TRUE) { - fprintf(stderr, "Test failed for constant_time_is_zero(%du): " - "expected %du (TRUE), got %du\n", a, CONSTTIME_TRUE, c); - return 1; - } else if (a != 0 && c != CONSTTIME_FALSE) { - fprintf(stderr, "Test failed for constant_time_is_zero(%du): " - "expected %du (FALSE), got %du\n", a, CONSTTIME_FALSE, c); - return 1; - } - return 0; + if (a == 0 && !TEST_uint_eq(constant_time_is_zero(a), CONSTTIME_TRUE)) + return 0; + if (a != 0 && !TEST_uint_eq(constant_time_is_zero(a), CONSTTIME_FALSE)) + return 0; + return 1; } static int test_is_zero_8(unsigned int a) { - unsigned char c = constant_time_is_zero_8(a); - if (a == 0 && c != CONSTTIME_TRUE_8) { - fprintf(stderr, "Test failed for constant_time_is_zero(%du): " - "expected %u (TRUE), got %u\n", a, CONSTTIME_TRUE_8, c); - return 1; - } else if (a != 0 && c != CONSTTIME_FALSE) { - fprintf(stderr, "Test failed for constant_time_is_zero(%du): " - "expected %u (FALSE), got %u\n", a, CONSTTIME_FALSE_8, c); - return 1; - } - return 0; + if (a == 0 && !TEST_uint_eq(constant_time_is_zero_8(a), CONSTTIME_TRUE_8)) + return 0; + if (a != 0 && !TEST_uint_eq(constant_time_is_zero_8(a), CONSTTIME_FALSE_8)) + return 0; + return 1; } -static int test_is_zero_s(size_t a) +static int test_is_zero_s(unsigned int a) { - size_t c = constant_time_is_zero_s(a); - if (a == 0 && c != CONSTTIME_TRUE_S) { - fprintf(stderr, "Test failed for constant_time_is_zero_s(%"OSSLzu"): " - "expected %"OSSLzu" (TRUE), got %"OSSLzu"\n", - a, CONSTTIME_TRUE_S, c); - return 1; - } else if (a != 0 && c != CONSTTIME_FALSE) { - fprintf(stderr, "Test failed for constant_time_is_zero_s(%"OSSLzu"): " - "expected %"OSSLzu" (FALSE), got %"OSSLzu"\n", - a, CONSTTIME_FALSE_S, c); - return 1; - } - return 0; + if (a == 0 && !TEST_size_t_eq(constant_time_is_zero_s(a), CONSTTIME_TRUE_S)) + return 0; + if (a != 0 && !TEST_uint_eq(constant_time_is_zero_s(a), CONSTTIME_FALSE_S)) + return 0; + return 1; } + static int test_select(unsigned int a, unsigned int b) { - unsigned int selected = constant_time_select(CONSTTIME_TRUE, a, b); - if (selected != a) { - fprintf(stderr, "Test failed for constant_time_select(%du, %du," - "%du): expected %du(first value), got %du\n", - CONSTTIME_TRUE, a, b, a, selected); - return 1; - } - selected = constant_time_select(CONSTTIME_FALSE, a, b); - if (selected != b) { - fprintf(stderr, "Test failed for constant_time_select(%du, %du," - "%du): expected %du(second value), got %du\n", - CONSTTIME_FALSE, a, b, b, selected); - return 1; - } - return 0; + if (!TEST_uint_eq(constant_time_select(CONSTTIME_TRUE, a, b), a)) + return 0; + if (!TEST_uint_eq(constant_time_select(CONSTTIME_FALSE, a, b), b)) + return 0; + return 1; } static int test_select_8(unsigned char a, unsigned char b) { - unsigned char selected = constant_time_select_8(CONSTTIME_TRUE_8, a, b); - if (selected != a) { - fprintf(stderr, "Test failed for constant_time_select(%u, %u," - "%u): expected %u(first value), got %u\n", - CONSTTIME_TRUE, a, b, a, selected); - return 1; - } - selected = constant_time_select_8(CONSTTIME_FALSE_8, a, b); - if (selected != b) { - fprintf(stderr, "Test failed for constant_time_select(%u, %u," - "%u): expected %u(second value), got %u\n", - CONSTTIME_FALSE, a, b, b, selected); - return 1; - } - return 0; + if (!TEST_uint_eq(constant_time_select_8(CONSTTIME_TRUE_8, a, b), a)) + return 0; + if (!TEST_uint_eq(constant_time_select_8(CONSTTIME_FALSE_8, a, b), b)) + return 0; + return 1; } -static int test_select_int(int a, int b) +static int test_select_s(unsigned char a, unsigned char b) { - int selected = constant_time_select_int(CONSTTIME_TRUE, a, b); - if (selected != a) { - fprintf(stderr, "Test failed for constant_time_select(%du, %d," - "%d): expected %d(first value), got %d\n", - CONSTTIME_TRUE, a, b, a, selected); - return 1; - } - selected = constant_time_select_int(CONSTTIME_FALSE, a, b); - if (selected != b) { - fprintf(stderr, "Test failed for constant_time_select(%du, %d," - "%d): expected %d(second value), got %d\n", - CONSTTIME_FALSE, a, b, b, selected); - return 1; - } - return 0; + if (!TEST_uint_eq(constant_time_select_s(CONSTTIME_TRUE_S, a, b), a)) + return 0; + if (!TEST_uint_eq(constant_time_select_s(CONSTTIME_FALSE_S, a, b), b)) + return 0; + return 1; } - -static int test_select_s(size_t a, size_t b) +static int test_select_int(int a, int b) { - size_t selected = constant_time_select_s(CONSTTIME_TRUE_S, a, b); - if (selected != a) { - fprintf(stderr, "Test failed for constant_time_select_s(%"OSSLzu - ", %"OSSLzu",%"OSSLzu"): expected %"OSSLzu - "(first value), got %"OSSLzu"\n", - CONSTTIME_TRUE_S, a, b, a, selected); - return 1; - } - selected = constant_time_select_s(CONSTTIME_FALSE_S, a, b); - if (selected != b) { - fprintf(stderr, "Test failed for constant_time_select_s(%"OSSLzu - ", %"OSSLzu",%"OSSLzu"): expected %"OSSLzu - "(second value), got %"OSSLzu"\n", - CONSTTIME_FALSE_S, a, b, b, selected); - return 1; - } - return 0; + if (!TEST_int_eq(constant_time_select_int(CONSTTIME_TRUE, a, b), a)) + return 0; + if (!TEST_int_eq(constant_time_select_int(CONSTTIME_FALSE, a, b), b)) + return 0; + return 1; } -static int test_eq_int(int a, int b) +static int test_eq_int_8(int a, int b) { - unsigned int equal = constant_time_eq_int(a, b); - if (a == b && equal != CONSTTIME_TRUE) { - fprintf(stderr, "Test failed for constant_time_eq_int(%d, %d): " - "expected %du(TRUE), got %du\n", a, b, CONSTTIME_TRUE, equal); - return 1; - } else if (a != b && equal != CONSTTIME_FALSE) { - fprintf(stderr, "Test failed for constant_time_eq_int(%d, %d): " - "expected %du(FALSE), got %du\n", - a, b, CONSTTIME_FALSE, equal); - return 1; - } - return 0; + if (a == b && !TEST_int_eq(constant_time_eq_int_8(a, b), CONSTTIME_TRUE_8)) + return 0; + if (a != b && !TEST_int_eq(constant_time_eq_int_8(a, b), CONSTTIME_FALSE_8)) + return 0; + return 1; } -static int test_eq_int_8(int a, int b) +static int test_eq_s(size_t a, size_t b) { - unsigned char equal = constant_time_eq_int_8(a, b); - if (a == b && equal != CONSTTIME_TRUE_8) { - fprintf(stderr, "Test failed for constant_time_eq_int_8(%d, %d): " - "expected %u(TRUE), got %u\n", a, b, CONSTTIME_TRUE_8, equal); - return 1; - } else if (a != b && equal != CONSTTIME_FALSE_8) { - fprintf(stderr, "Test failed for constant_time_eq_int_8(%d, %d): " - "expected %u(FALSE), got %u\n", - a, b, CONSTTIME_FALSE_8, equal); - return 1; - } - return 0; + if (a == b && !TEST_size_t_eq(constant_time_eq_s(a, b), CONSTTIME_TRUE_S)) + return 0; + if (a != b && !TEST_int_eq(constant_time_eq_s(a, b), CONSTTIME_FALSE_S)) + return 0; + return 1; } -static int test_eq_s(size_t a, size_t b) +static int test_eq_int(int a, int b) { - size_t equal = constant_time_eq_s(a, b); - if (a == b && equal != CONSTTIME_TRUE_S) { - fprintf(stderr, "Test failed for constant_time_eq_int(%"OSSLzu - ", %"OSSLzu"): expected %"OSSLzu"(TRUE), got %"OSSLzu"\n", - a, b, CONSTTIME_TRUE_S, equal); - return 1; - } else if (a != b && equal != CONSTTIME_FALSE_S) { - fprintf(stderr, "Test failed for constant_time_eq_int(%"OSSLzu", %" - OSSLzu"): expected %"OSSLzu"(FALSE), got %"OSSLzu"\n", - a, b, CONSTTIME_FALSE_S, equal); - return 1; - } - return 0; + if (a == b && !TEST_uint_eq(constant_time_eq_int(a, b), CONSTTIME_TRUE)) + return 0; + if (a != b && !TEST_uint_eq(constant_time_eq_int(a, b), CONSTTIME_FALSE)) + return 0; + return 1; } static unsigned int test_values[] = @@ -270,108 +167,109 @@ static size_t test_values_s[] = SIZE_MAX }; -int main(int argc, char *argv[]) +static int test_sizeofs(void) { - unsigned int a, b, i, j; - int c, d; - unsigned char e, f; - size_t g, h; - int num_failed = 0, num_all = 0; - fprintf(stdout, "Testing constant time operations...\n"); - - if (OSSL_NELEM(test_values) != OSSL_NELEM(test_values_s)) { - fprintf(stdout, "Unexpected number of tests\n"); - return EXIT_FAILURE; - } + if (!TEST_uint_eq(OSSL_NELEM(test_values), OSSL_NELEM(test_values_s))) + return 0; + return 1; +} - for (i = 0; i < OSSL_NELEM(test_values); ++i) { - a = test_values[i]; - g = test_values_s[i]; - num_failed += test_is_zero(a); - num_failed += test_is_zero_8(a); - num_failed += test_is_zero_s(g); - num_all += 3; - for (j = 0; j < OSSL_NELEM(test_values); ++j) { - b = test_values[j]; - h = test_values[j]; - num_failed += test_binary_op(&constant_time_lt, - "constant_time_lt", a, b, a < b); - num_failed += test_binary_op_8(&constant_time_lt_8, - "constant_time_lt_8", a, b, a < b); - num_failed += test_binary_op_s(&constant_time_lt_s, - "constant_time_lt_s", g, h, g < h); - num_failed += test_binary_op(&constant_time_lt, - "constant_time_lt", b, a, b < a); - num_failed += test_binary_op_8(&constant_time_lt_8, - "constant_time_lt_8", b, a, b < a); - num_failed += test_binary_op_s(&constant_time_lt_s, - "constant_time_lt_s", h, g, h < g); - num_failed += test_binary_op(&constant_time_ge, - "constant_time_ge", a, b, a >= b); - num_failed += test_binary_op_8(&constant_time_ge_8, - "constant_time_ge_8", a, b, - a >= b); - num_failed += test_binary_op_s(&constant_time_ge_s, - "constant_time_ge_s", g, h, g >= h); - num_failed += - test_binary_op(&constant_time_ge, "constant_time_ge", b, a, - b >= a); - num_failed += - test_binary_op_8(&constant_time_ge_8, "constant_time_ge_8", b, - a, b >= a); - num_failed += - test_binary_op_s(&constant_time_ge_s, "constant_time_ge_s", h, g, - h >= g); - num_failed += - test_binary_op(&constant_time_eq, "constant_time_eq", a, b, - a == b); - num_failed += - test_binary_op_8(&constant_time_eq_8, "constant_time_eq_8", a, - b, a == b); - num_failed += - test_binary_op_s(&constant_time_eq_s, "constant_time_eq_s", g, h, - g == h); - num_failed += - test_binary_op(&constant_time_eq, "constant_time_eq", b, a, - b == a); - num_failed += - test_binary_op_8(&constant_time_eq_8, "constant_time_eq_8", b, - a, b == a); - num_failed += - test_binary_op_s(&constant_time_eq_s, "constant_time_eq_s", h, g, - h == g); - num_failed += test_select(a, b); - num_failed += test_select_s(g, h); - num_failed += test_eq_s(g, h); - num_all += 21; - } - } +static int test_binops(int i) +{ + unsigned int a = test_values[i]; + unsigned int g = test_values_s[i]; + int j; + int ret = 1; + + if (!test_is_zero(a) || !test_is_zero_8(a) || !test_is_zero_s(g)) + ret = 0; + + for (j = 0; j < (int)OSSL_NELEM(test_values); ++j) { + unsigned int b = test_values[j]; + unsigned int h = test_values[j]; - for (i = 0; i < OSSL_NELEM(signed_test_values); ++i) { - c = signed_test_values[i]; - for (j = 0; j < OSSL_NELEM(signed_test_values); ++j) { - d = signed_test_values[j]; - num_failed += test_select_int(c, d); - num_failed += test_eq_int(c, d); - num_failed += test_eq_int_8(c, d); - num_all += 3; + if (!test_select(a, b) + || !test_select_s(g, h) + || !test_eq_s(g, h) + || !test_binary_op(&constant_time_lt, "ct_lt", + a, b, a < b) + || !test_binary_op_8(&constant_time_lt_8, "constant_time_lt_8", + a, b, a < b) + || !test_binary_op_s(&constant_time_lt_s, "constant_time_lt_s", + g, h, g < h) + || !test_binary_op(&constant_time_lt, "constant_time_lt", + b, a, b < a) + || !test_binary_op_8(&constant_time_lt_8, "constant_time_lt_8", + b, a, b < a) + || !test_binary_op_s(&constant_time_lt_s, "constant_time_lt_s", + h, g, h < g) + || !test_binary_op(&constant_time_ge, "constant_time_ge", + a, b, a >= b) + || !test_binary_op_8(&constant_time_ge_8, "constant_time_ge_8", + a, b, a >= b) + || !test_binary_op_s(&constant_time_ge_s, "constant_time_ge_s", + g, h, g >= h) + || !test_binary_op(&constant_time_ge, "constant_time_ge", + b, a, b >= a) + || !test_binary_op_8(&constant_time_ge_8, "constant_time_ge_8", + b, a, b >= a) + || !test_binary_op_s(&constant_time_ge_s, "constant_time_ge_s", + h, g, h >= g) + || !test_binary_op(&constant_time_eq, "constant_time_eq", + a, b, a == b) + || !test_binary_op_8(&constant_time_eq_8, "constant_time_eq_8", + a, b, a == b) + || !test_binary_op_s(&constant_time_eq_s, "constant_time_eq_s", + g, h, g == h) + || !test_binary_op(&constant_time_eq, "constant_time_eq", + b, a, b == a) + || !test_binary_op_8(&constant_time_eq_8, "constant_time_eq_8", + b, a, b == a) + || !test_binary_op_s(&constant_time_eq_s, "constant_time_eq_s", + h, g, h == g)) { + ret = 0; } } + return ret; +} - for (i = 0; i < sizeof(test_values_8); ++i) { - e = test_values_8[i]; - for (j = 0; j < sizeof(test_values_8); ++j) { - f = test_values_8[j]; - num_failed += test_select_8(e, f); - num_all += 1; - } +static int test_signed(int i) +{ + int c = signed_test_values[i]; + unsigned int j; + int ret = 1; + + for (j = 0; j < OSSL_NELEM(signed_test_values); ++j) { + int d = signed_test_values[j]; + + if (!test_select_int(c, d) + || !test_eq_int(c, d) + || !test_eq_int_8(c, d)) + ret = 0; } + return ret; +} - if (!num_failed) { - fprintf(stdout, "success (ran %d tests)\n", num_all); - return EXIT_SUCCESS; - } else { - fprintf(stdout, "%d of %d tests failed!\n", num_failed, num_all); - return EXIT_FAILURE; +static int test_8values(int i) +{ + unsigned char e = test_values_8[i]; + unsigned int j; + int ret = 1; + + for (j = 0; j < sizeof(test_values_8); ++j) { + unsigned char f = test_values_8[j]; + + if (!test_select_8(e, f)) + ret = 0; } + return ret; +} + + +void register_tests(void) +{ + ADD_TEST(test_sizeofs); + ADD_ALL_TESTS(test_binops, OSSL_NELEM(test_values)); + ADD_ALL_TESTS(test_signed, OSSL_NELEM(signed_test_values)); + ADD_ALL_TESTS(test_8values, sizeof(test_values_8)); } diff --git a/test/randtest.c b/test/randtest.c index 9f7a037..e1d84c3 100644 --- a/test/randtest.c +++ b/test/randtest.c @@ -7,33 +7,24 @@ * https://www.openssl.org/source/license.html */ -#include -#include #include - -#include "../e_os.h" +#include "testutil.h" +#include "test_main.h" /* some FIPS 140-1 random number test */ /* some simple tests */ -int main(int argc, char **argv) +static int fips_random_tests(void) { unsigned char buf[2500]; - int i, j, k, s, sign, nsign, err = 0; + int i, j, k, s, sign, nsign, ret = 1; unsigned long n1; unsigned long n2[16]; unsigned long runs[2][34]; - /* - * double d; - */ long d; - i = RAND_bytes(buf, 2500); - if (i <= 0) { - printf("init failed, the rand method is not properly installed\n"); - err++; - goto err; - } + if (!TEST_int_ge(RAND_bytes(buf, sizeof(buf)), 0)) + return 0; n1 = 0; for (i = 0; i < 16; i++) @@ -77,69 +68,43 @@ int main(int argc, char **argv) runs[sign][nsign - 1]++; /* test 1 */ - if (!((9654 < n1) && (n1 < 10346))) { - printf("test 1 failed, X=%lu\n", n1); - err++; + if (!TEST_true(9654 < n1 && n1 < 10346)) { + TEST_info("test 1 failed, X=%lu", n1); + ret = 0; } - printf("test 1 done\n"); /* test 2 */ d = 0; for (i = 0; i < 16; i++) d += n2[i] * n2[i]; d = (d * 8) / 25 - 500000; - if (!((103 < d) && (d < 5740))) { - printf("test 2 failed, X=%ld.%02ld\n", d / 100L, d % 100L); - err++; + if (!TEST_true(103 < d && d < 5740)) { + TEST_info("test 2 failed, X=%ld.%02ld", d / 100L, d % 100L); + ret = 0; } - printf("test 2 done\n"); /* test 3 */ for (i = 0; i < 2; i++) { - if (!((2267 < runs[i][0]) && (runs[i][0] < 2733))) { - printf("test 3 failed, bit=%d run=%d num=%lu\n", - i, 1, runs[i][0]); - err++; - } - if (!((1079 < runs[i][1]) && (runs[i][1] < 1421))) { - printf("test 3 failed, bit=%d run=%d num=%lu\n", - i, 2, runs[i][1]); - err++; - } - if (!((502 < runs[i][2]) && (runs[i][2] < 748))) { - printf("test 3 failed, bit=%d run=%d num=%lu\n", - i, 3, runs[i][2]); - err++; - } - if (!((223 < runs[i][3]) && (runs[i][3] < 402))) { - printf("test 3 failed, bit=%d run=%d num=%lu\n", - i, 4, runs[i][3]); - err++; - } - if (!((90 < runs[i][4]) && (runs[i][4] < 223))) { - printf("test 3 failed, bit=%d run=%d num=%lu\n", - i, 5, runs[i][4]); - err++; - } - if (!((90 < runs[i][5]) && (runs[i][5] < 223))) { - printf("test 3 failed, bit=%d run=%d num=%lu\n", - i, 6, runs[i][5]); - err++; + if (!TEST_true(2267 < runs[i][0] && runs[i][0] < 2733) + || !TEST_true(1079 < runs[i][1] && runs[i][1] < 1421) + || !TEST_true(502 < runs[i][2] && runs[i][2] < 748) + || !TEST_true(223 < runs[i][3] && runs[i][3] < 402) + || !TEST_true(90 < runs[i][4] && runs[i][4] < 223) + || !TEST_true(90 < runs[i][5] && runs[i][5] < 223)) { + TEST_info("During run %d", i); + ret = 0; } } - printf("test 3 done\n"); /* test 4 */ - if (runs[0][33] != 0) { - printf("test 4 failed, bit=%d run=%d num=%lu\n", 0, 34, runs[0][33]); - err++; - } - if (runs[1][33] != 0) { - printf("test 4 failed, bit=%d run=%d num=%lu\n", 1, 34, runs[1][33]); - err++; - } - printf("test 4 done\n"); - err: - err = ((err) ? 1 : 0); - EXIT(err); + if (!TEST_int_eq(runs[0][33], 0) + || !TEST_int_eq(runs[1][33], 0)) + ret = 0; + + return ret; +} + +void register_tests(void) +{ + ADD_TEST(fips_random_tests); } diff --git a/test/recipes/90-test_bioprint.t b/test/recipes/04-test_bioprint.t similarity index 100% rename from test/recipes/90-test_bioprint.t rename to test/recipes/04-test_bioprint.t From no-reply at appveyor.com Tue Apr 18 18:58:46 2017 From: no-reply at appveyor.com (AppVeyor) Date: Tue, 18 Apr 2017 18:58:46 +0000 Subject: [openssl-commits] Build completed: openssl master.9692 Message-ID: <20170418185845.94271.36711.A23A12EB@appveyor.com> An HTML attachment was scrubbed... URL: From builds at travis-ci.org Tue Apr 18 19:06:25 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 18 Apr 2017 19:06:25 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10382 (master - b66411f) In-Reply-To: Message-ID: <58f663b129738_43fce5361cbd01078725@9e5f8421-76bc-47b6-893c-2b8fa7f00260.mail> Build Update for openssl/openssl ------------------------------------- Build: #10382 Status: Still Failing Duration: 19 minutes and 29 seconds Commit: b66411f (master) Author: Rich Salz Message: Convert more tests recordlentest, srptest, ecdsatest, enginetest, pbelutest Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3237) View the changeset: https://github.com/openssl/openssl/compare/0fef74486ede...b66411f6cda6 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/223270449 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From rsalz at openssl.org Tue Apr 18 19:11:21 2017 From: rsalz at openssl.org (Rich Salz) Date: Tue, 18 Apr 2017 19:11:21 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492542681.571065.24557.nullmailer@dev.openssl.org> The branch master has been updated via f3ab6c16c424054c8d6d2c152744dcbaf41c3232 (commit) from 3304d57848479441ffa0facc6d9693a466559756 (commit) - Log ----------------------------------------------------------------- commit f3ab6c16c424054c8d6d2c152744dcbaf41c3232 Author: Rich Salz Date: Mon Apr 17 13:54:45 2017 -0400 Update more tests modes_internal_test, sslcorrupttest, v3nametest Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3238) ----------------------------------------------------------------------- Summary of changes: test/build.info | 6 +-- test/modes_internal_test.c | 65 +++++++++-------------- test/sslcorrupttest.c | 95 +++++++++------------------------ test/v3nametest.c | 127 +++++++++++++++++++++++---------------------- 4 files changed, 119 insertions(+), 174 deletions(-) diff --git a/test/build.info b/test/build.info index eb36596..d6e43cf 100644 --- a/test/build.info +++ b/test/build.info @@ -159,8 +159,8 @@ IF[{- !$disabled{tests} -}] INCLUDE[igetest]=.. ../include DEPEND[igetest]=../libcrypto - SOURCE[v3nametest]=v3nametest.c - INCLUDE[v3nametest]=../include + SOURCE[v3nametest]=v3nametest.c testutil.c test_main.c + INCLUDE[v3nametest]=.. ../include DEPEND[v3nametest]=../libcrypto SOURCE[crltest]=crltest.c testutil.c test_main.c @@ -276,7 +276,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[dtlstest]=../include . DEPEND[dtlstest]=../libcrypto ../libssl - SOURCE[sslcorrupttest]=sslcorrupttest.c ssltestlib.c testutil.c + SOURCE[sslcorrupttest]=sslcorrupttest.c ssltestlib.c testutil.c test_main_custom.c INCLUDE[sslcorrupttest]=../include . DEPEND[sslcorrupttest]=../libcrypto ../libssl diff --git a/test/modes_internal_test.c b/test/modes_internal_test.c index c5265c9..087115b 100644 --- a/test/modes_internal_test.c +++ b/test/modes_internal_test.c @@ -198,8 +198,7 @@ static int execute_cts128(CTS128_FIXTURE fixture) unsigned char cleartext[64], ciphertext[64], vector[64]; size_t tail; - fprintf(stderr, "%s_vector_%" OSSLzu "\n", fixture.case_name, len); - fflush(stdout); + TEST_info("%s_vector_%lu", fixture.case_name, (unsigned long)len); tail = fixture.transform_output(orig_vector, vector, len); @@ -208,54 +207,39 @@ static int execute_cts128(CTS128_FIXTURE fixture) fixture.encrypt_block(test_input, ciphertext, len, encrypt_key_schedule, iv, (block128_f)AES_encrypt); - if (memcmp(ciphertext, vector, len)) { - fprintf(stderr, "block encrypt: output_%" OSSLzu " mismatch\n", len); + if (!TEST_mem_eq(ciphertext, len, vector, len)) return 0; - } - if (memcmp(iv, vector + len - tail, sizeof(iv))) { - fprintf(stderr, "block encrypt: iv_%" OSSLzu " mismatch\n", len); + + if (!TEST_mem_eq(iv, sizeof(iv), vector + len - tail, sizeof(iv))) return 0; - } /* test block-based decryption */ memcpy(iv, test_iv, test_iv_len); fixture.decrypt_block(ciphertext, cleartext, len, decrypt_key_schedule, iv, (block128_f)AES_decrypt); - if (memcmp(cleartext, test_input, len)) { - fprintf(stderr, "block decrypt: input_%" OSSLzu " mismatch\n", len); + if (!TEST_mem_eq(cleartext, len, test_input, len)) return 0; - } - if (memcmp(iv, vector + len - tail, sizeof(iv))) { - fprintf(stderr, "block decrypt: iv_%" OSSLzu " mismatch\n", len); + if (!TEST_mem_eq(iv, sizeof(iv), vector + len - tail, sizeof(iv))) return 0; - } /* test streamed encryption */ memcpy(iv, test_iv, test_iv_len); fixture.encrypt(test_input, ciphertext, len, encrypt_key_schedule, iv, (cbc128_f) AES_cbc_encrypt); - if (memcmp(ciphertext, vector, len)) { - fprintf(stderr, "stream encrypt: output_%" OSSLzu " mismatch\n", len); + if (!TEST_mem_eq(ciphertext, len, vector, len)) return 0; - } - if (memcmp(iv, vector + len - tail, sizeof(iv))) { - fprintf(stderr, "stream encrypt: iv_%" OSSLzu " mismatch\n", len); + if (!TEST_mem_eq(iv, sizeof(iv), vector + len - tail, sizeof(iv))) return 0; - } /* test streamed decryption */ memcpy(iv, test_iv, test_iv_len); fixture.decrypt(ciphertext, cleartext, len, decrypt_key_schedule, iv, (cbc128_f)AES_cbc_encrypt); - if (memcmp(cleartext, test_input, len)) { - fprintf(stderr, "stream decrypt: input_%" OSSLzu " mismatch\n", len); + if (!TEST_mem_eq(cleartext, len, test_input, len)) return 0; - } - if (memcmp(iv, vector + len - tail, sizeof(iv))) { - fprintf(stderr, "stream decrypt: iv_%" OSSLzu " mismatch\n", len); + if (!TEST_mem_eq(iv, sizeof(iv), vector + len - tail, sizeof(iv))) return 0; - } return 1; } @@ -286,11 +270,11 @@ static int test_cts128_nist(int idx) EXECUTE_TEST_NO_TEARDOWN(execute_cts128); } -/********************************************************************** +/* * * Test of gcm128 * - ***/ + */ /* Test Case 1 */ static const u8 K1[16], P1[] = { 0 }, A1[] = { 0 }, IV1[12], C1[] = { 0 }; @@ -876,7 +860,6 @@ static int test_gcm128(int idx) SIZED_DATA T = gcm128_vectors[idx].T; GCM128_CONTEXT ctx; AES_KEY key; - int err = 0; /* Size 1 inputs are special-cased to signal NULL. */ if (A.size == 1) @@ -891,25 +874,27 @@ static int test_gcm128(int idx) CRYPTO_gcm128_init(&ctx, &key, (block128_f)AES_encrypt); CRYPTO_gcm128_setiv(&ctx, IV.data, IV.size); memset(out, 0, P.size); - if (A.data) + if (A.data != NULL) CRYPTO_gcm128_aad(&ctx, A.data, A.size); - if (P.data) + if (P.data != NULL) CRYPTO_gcm128_encrypt( &ctx, P.data, out, P.size); - if (CRYPTO_gcm128_finish(&ctx, T.data, 16) - || (C.data && memcmp(out, C.data, P.size))) - err++, fprintf(stderr, "encrypt test#%d failed.\n", idx); + if (!TEST_false(CRYPTO_gcm128_finish(&ctx, T.data, 16)) + || (C.data != NULL + && !TEST_mem_eq(out, P.size, C.data, P.size))) + return 0; CRYPTO_gcm128_setiv(&ctx, IV.data, IV.size); memset(out, 0, P.size); - if (A.data) + if (A.data != NULL) CRYPTO_gcm128_aad(&ctx, A.data, A.size); - if (C.data) + if (C.data != NULL) CRYPTO_gcm128_decrypt(&ctx, C.data, out, P.size); - if (CRYPTO_gcm128_finish(&ctx, T.data, 16) - || (P.data && memcmp(out, P.data, P.size))) - err++, fprintf(stderr, "decrypt test#%d failed.\n", idx); + if (!TEST_false(CRYPTO_gcm128_finish(&ctx, T.data, 16)) + || (P.data != NULL + && !TEST_mem_eq(out, P.size, P.data, P.size))) + return 0; - return err == 0; + return 1; } static void benchmark_gcm128(const unsigned char *K, size_t Klen, diff --git a/test/sslcorrupttest.c b/test/sslcorrupttest.c index 8ccad16..98e5bb3 100644 --- a/test/sslcorrupttest.c +++ b/test/sslcorrupttest.c @@ -10,6 +10,7 @@ #include #include "ssltestlib.h" #include "testutil.h" +#include "test_main_custom.h" static int docorrupt = 0; @@ -180,39 +181,30 @@ static char *privkey = NULL; static int test_ssl_corrupt(int testidx) { + static unsigned char junk[16000] = { 0 }; SSL_CTX *sctx = NULL, *cctx = NULL; SSL *server = NULL, *client = NULL; BIO *c_to_s_fbio; int testresult = 0; - static unsigned char junk[16000] = { 0 }; STACK_OF(SSL_CIPHER) *ciphers; const SSL_CIPHER *currcipher; docorrupt = 0; - printf("Starting Test %d, %s\n", testidx, cipher_list[testidx]); + TEST_info("Starting #%d, %s", testidx, cipher_list[testidx]); - if (!create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), &sctx, - &cctx, cert, privkey)) { - printf("Unable to create SSL_CTX pair\n"); + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), + TLS_client_method(), &sctx, + &cctx, cert, privkey))) return 0; - } - if (!SSL_CTX_set_cipher_list(cctx, cipher_list[testidx])) { - printf("Failed setting cipher list\n"); + if (!TEST_true(SSL_CTX_set_cipher_list(cctx, cipher_list[testidx]))) goto end; - } - ciphers = SSL_CTX_get_ciphers(cctx); - if (ciphers == NULL || sk_SSL_CIPHER_num(ciphers) != 1) { - printf("Unexpected ciphers set\n"); + if (!TEST_ptr(ciphers = SSL_CTX_get_ciphers(cctx)) + || !TEST_int_eq(sk_SSL_CIPHER_num(ciphers), 1) + || !TEST_ptr(currcipher = sk_SSL_CIPHER_value(ciphers, 0))) goto end; - } - currcipher = sk_SSL_CIPHER_value(ciphers, 0); - if (currcipher == NULL) { - printf("Failed getting the current cipher\n"); - goto end; - } /* * If we haven't got a TLSv1.3 cipher, then we mustn't attempt to use @@ -220,50 +212,32 @@ static int test_ssl_corrupt(int testidx) * get a "no shared cipher" error. */ if (strcmp(SSL_CIPHER_get_version(currcipher), "TLSv1.3") != 0) { - if (!SSL_CTX_set_max_proto_version(cctx, TLS1_2_VERSION)) { - printf("Failed setting max protocol version\n"); + if (!TEST_true(SSL_CTX_set_max_proto_version(cctx, TLS1_2_VERSION))) goto end; - } } - c_to_s_fbio = BIO_new(bio_f_tls_corrupt_filter()); - if (c_to_s_fbio == NULL) { - printf("Failed to create filter BIO\n"); + if (!TEST_ptr(c_to_s_fbio = BIO_new(bio_f_tls_corrupt_filter()))) goto end; - } /* BIO is freed by create_ssl_connection on error */ - if (!create_ssl_objects(sctx, cctx, &server, &client, NULL, - c_to_s_fbio)) { - printf("Unable to create SSL objects\n"); - ERR_print_errors_fp(stdout); + if (!TEST_true(create_ssl_objects(sctx, cctx, &server, &client, NULL, + c_to_s_fbio))) goto end; - } - if (!create_ssl_connection(server, client, SSL_ERROR_NONE)) { - printf("Unable to create SSL connection\n"); - ERR_print_errors_fp(stdout); + if (!TEST_true(create_ssl_connection(server, client, SSL_ERROR_NONE))) goto end; - } docorrupt = 1; - if (SSL_write(client, junk, sizeof(junk)) < 0) { - printf("Unable to SSL_write\n"); - ERR_print_errors_fp(stdout); + if (!TEST_int_ge(SSL_write(client, junk, sizeof(junk)), 0)) goto end; - } - if (SSL_read(server, junk, sizeof(junk)) >= 0) { - printf("Read should have failed with \"bad record mac\"\n"); + if (!TEST_int_lt(SSL_read(server, junk, sizeof(junk)), 0)) goto end; - } - if (ERR_GET_REASON(ERR_peek_error()) != - SSL_R_DECRYPTION_FAILED_OR_BAD_RECORD_MAC) { - ERR_print_errors_fp(stdout); + if (!TEST_int_eq(ERR_GET_REASON(ERR_peek_error()), + SSL_R_DECRYPTION_FAILED_OR_BAD_RECORD_MAC)) goto end; - } testresult = 1; end: @@ -271,44 +245,25 @@ static int test_ssl_corrupt(int testidx) SSL_free(client); SSL_CTX_free(sctx); SSL_CTX_free(cctx); - return testresult; } -int main(int argc, char *argv[]) +int test_main(int argc, char *argv[]) { - BIO *err = NULL; - int testresult = 1; + int ret; if (argc != 3) { - printf("Invalid argument count\n"); - return 1; + TEST_error("Usage error"); + return 0; } - cert = argv[1]; privkey = argv[2]; - err = BIO_new_fp(stderr, BIO_NOCLOSE | BIO_FP_TEXT); - - CRYPTO_set_mem_debug(1); - CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON); - ADD_ALL_TESTS(test_ssl_corrupt, setup_cipher_list()); - testresult = run_tests(argv[0]); - + ret = run_tests(argv[0]); bio_f_tls_corrupt_filter_free(); - OPENSSL_free(cipher_list); -#ifndef OPENSSL_NO_CRYPTO_MDEBUG - if (CRYPTO_mem_leaks(err) <= 0) - testresult = 1; -#endif - BIO_free(err); - - if (!testresult) - printf("PASS\n"); - - return testresult; + return ret; } diff --git a/test/v3nametest.c b/test/v3nametest.c index 648c1df..39dcfe8 100644 --- a/test/v3nametest.c +++ b/test/v3nametest.c @@ -7,10 +7,12 @@ * https://www.openssl.org/source/license.html */ +#include +#include "e_os.h" #include #include -#include "../e_os.h" -#include +#include "testutil.h" +#include "test_main.h" static const char *const names[] = { "a", "b", ".", "*", "@", @@ -72,6 +74,7 @@ static const char *const exceptions[] = { static int is_exception(const char *msg) { const char *const *p; + for (p = exceptions; *p; ++p) if (strcmp(msg, *p) == 0) return 1; @@ -83,13 +86,16 @@ static int set_cn(X509 *crt, ...) int ret = 0; X509_NAME *n = NULL; va_list ap; + va_start(ap, crt); n = X509_NAME_new(); if (n == NULL) goto out; + while (1) { int nid; const char *name; + nid = va_arg(ap, int); if (nid == 0) break; @@ -238,59 +244,55 @@ static const struct set_name_fn name_fns[] = { {set_email_and_cn, "set emailAddress", 0, 1}, {set_altname_dns, "set dnsName", 1, 0}, {set_altname_email, "set rfc822Name", 0, 1}, - {NULL, NULL, 0} }; static X509 *make_cert() { - X509 *ret = NULL; X509 *crt = NULL; - X509_NAME *issuer = NULL; - crt = X509_new(); - if (crt == NULL) - goto out; - if (!X509_set_version(crt, 3)) - goto out; - ret = crt; - crt = NULL; - out: - X509_NAME_free(issuer); - return ret; -} -static int errors; + if (!TEST_ptr(crt = X509_new())) + return NULL; + if (!TEST_true(X509_set_version(crt, 3))) { + X509_free(crt); + return NULL; + } + return crt; +} -static void check_message(const struct set_name_fn *fn, const char *op, - const char *nameincert, int match, const char *name) +static int check_message(const struct set_name_fn *fn, const char *op, + const char *nameincert, int match, const char *name) { char msg[1024]; + if (match < 0) - return; + return 1; BIO_snprintf(msg, sizeof(msg), "%s: %s: [%s] %s [%s]", fn->name, op, nameincert, match ? "matches" : "does not match", name); if (is_exception(msg)) - return; - puts(msg); - ++errors; + return 1; + TEST_error("%s", msg); + return 0; } -static void run_cert(X509 *crt, const char *nameincert, +static int run_cert(X509 *crt, const char *nameincert, const struct set_name_fn *fn) { const char *const *pname = names; - while (*pname) { + int failed = 0; + + for (; *pname != NULL; ++pname) { int samename = strcasecmp(nameincert, *pname) == 0; size_t namelen = strlen(*pname); - char *name = malloc(namelen); + char *name = OPENSSL_malloc(namelen); int match, ret; + memcpy(name, *pname, namelen); - ret = X509_check_host(crt, name, namelen, 0, NULL); match = -1; - if (ret < 0) { - fprintf(stderr, "internal error in X509_check_host"); - ++errors; + if (!TEST_int_ge(ret = X509_check_host(crt, name, namelen, 0, NULL), + 0)) { + failed = 1; } else if (fn->host) { if (ret == 1 && !samename) match = 1; @@ -298,14 +300,14 @@ static void run_cert(X509 *crt, const char *nameincert, match = 0; } else if (ret == 1) match = 1; - check_message(fn, "host", nameincert, match, *pname); + if (!TEST_true(check_message(fn, "host", nameincert, match, *pname))) + failed = 1; - ret = X509_check_host(crt, name, namelen, - X509_CHECK_FLAG_NO_WILDCARDS, NULL); match = -1; - if (ret < 0) { - fprintf(stderr, "internal error in X509_check_host"); - ++errors; + if (!TEST_int_ge(ret = X509_check_host(crt, name, namelen, + X509_CHECK_FLAG_NO_WILDCARDS, + NULL), 0)) { + failed = 1; } else if (fn->host) { if (ret == 1 && !samename) match = 1; @@ -313,10 +315,12 @@ static void run_cert(X509 *crt, const char *nameincert, match = 0; } else if (ret == 1) match = 1; - check_message(fn, "host-no-wildcards", nameincert, match, *pname); + if (!TEST_true(check_message(fn, "host-no-wildcards", + nameincert, match, *pname))) + failed = 1; - ret = X509_check_email(crt, name, namelen, 0); match = -1; + ret = X509_check_email(crt, name, namelen, 0); if (fn->email) { if (ret && !samename) match = 1; @@ -324,32 +328,33 @@ static void run_cert(X509 *crt, const char *nameincert, match = 0; } else if (ret) match = 1; - check_message(fn, "email", nameincert, match, *pname); - ++pname; - free(name); + if (!TEST_true(check_message(fn, "email", nameincert, match, *pname))) + failed = 1; + OPENSSL_free(name); } + + return failed == 0; } -int main(void) +static int call_run_cert(int i) { - const struct set_name_fn *pfn = name_fns; - while (pfn->name) { - const char *const *pname = names; - while (*pname) { - X509 *crt = make_cert(); - if (crt == NULL) { - fprintf(stderr, "make_cert failed\n"); - return 1; - } - if (!pfn->fn(crt, *pname)) { - fprintf(stderr, "X509 name setting failed\n"); - return 1; - } - run_cert(crt, *pname, pfn); - X509_free(crt); - ++pname; - } - ++pfn; + int failed = 0; + const struct set_name_fn *pfn = &name_fns[i]; + X509 *crt; + const char *const *pname; + + TEST_info("%s", pfn->name); + for (pname = names; *pname != NULL; pname++) { + if (!TEST_ptr(crt = make_cert()) + || !TEST_true(pfn->fn(crt, *pname)) + || !run_cert(crt, *pname, pfn)) + failed = 1; + X509_free(crt); } - return errors > 0 ? 1 : 0; + return failed == 0; +} + +void register_tests(void) +{ + ADD_ALL_TESTS(call_run_cert, sizeof(name_fns) / sizeof(name_fns[0])); } From builds at travis-ci.org Tue Apr 18 19:19:26 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 18 Apr 2017 19:19:26 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10383 (master - 3304d57) In-Reply-To: Message-ID: <58f666bebee26_43fce532bab541095794@9e5f8421-76bc-47b6-893c-2b8fa7f00260.mail> Build Update for openssl/openssl ------------------------------------- Build: #10383 Status: Still Failing Duration: 19 minutes and 44 seconds Commit: 3304d57 (master) Author: Rich Salz Message: Convert more tests to framework randtest, cipher_overhead_test, bioprintest, constant_time_test Move test_bioprint to 04 group Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3228) View the changeset: https://github.com/openssl/openssl/compare/b66411f6cda6...3304d5784847 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/223274795 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Tue Apr 18 19:37:15 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 18 Apr 2017 19:37:15 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10384 (master - f3ab6c1) In-Reply-To: Message-ID: <58f66ae9ad50e_43fce57944d68111956b@9e5f8421-76bc-47b6-893c-2b8fa7f00260.mail> Build Update for openssl/openssl ------------------------------------- Build: #10384 Status: Still Failing Duration: 24 minutes and 37 seconds Commit: f3ab6c1 (master) Author: Rich Salz Message: Update more tests modes_internal_test, sslcorrupttest, v3nametest Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3238) View the changeset: https://github.com/openssl/openssl/compare/3304d5784847...f3ab6c16c424 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/223279754 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From rsalz at openssl.org Tue Apr 18 20:48:49 2017 From: rsalz at openssl.org (Rich Salz) Date: Tue, 18 Apr 2017 20:48:49 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492548529.852000.31235.nullmailer@dev.openssl.org> The branch master has been updated via adcd8e37db682a5818415b1e0e1d8847dd9ab1e6 (commit) from f3ab6c16c424054c8d6d2c152744dcbaf41c3232 (commit) - Log ----------------------------------------------------------------- commit adcd8e37db682a5818415b1e0e1d8847dd9ab1e6 Author: Rich Salz Date: Tue Apr 18 16:33:15 2017 -0400 Convert more tests ct_test,evp_extra_test,wpackettest,packettest Add strncmp TEST wrappers And make some style/consistency fixes to ct_test Silence travis; gcc bug? Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3234) ----------------------------------------------------------------------- Summary of changes: test/build.info | 4 +- test/ct_test.c | 230 +++++++------------- test/evp_extra_test.c | 178 ++++++---------- test/packettest.c | 565 +++++++++++++++++++++++--------------------------- test/testutil.c | 32 +++ test/testutil.h | 10 + test/wpackettest.c | 481 ++++++++++++++++++------------------------ 7 files changed, 646 insertions(+), 854 deletions(-) diff --git a/test/build.info b/test/build.info index d6e43cf..01b4c68 100644 --- a/test/build.info +++ b/test/build.info @@ -151,7 +151,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[evp_test]=../include DEPEND[evp_test]=../libcrypto - SOURCE[evp_extra_test]=evp_extra_test.c + SOURCE[evp_extra_test]=evp_extra_test.c testutil.c test_main.c INCLUDE[evp_extra_test]=../include DEPEND[evp_extra_test]=../libcrypto @@ -191,7 +191,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[bad_dtls_test]=../include DEPEND[bad_dtls_test]=../libcrypto ../libssl - SOURCE[packettest]=packettest.c + SOURCE[packettest]=packettest.c testutil.c test_main.c INCLUDE[packettest]=../include DEPEND[packettest]=../libcrypto diff --git a/test/ct_test.c b/test/ct_test.c index ac89f57..e96eab0 100644 --- a/test/ct_test.c +++ b/test/ct_test.c @@ -60,29 +60,21 @@ typedef struct ct_test_fixture { static CT_TEST_FIXTURE set_up(const char *const test_case_name) { CT_TEST_FIXTURE fixture; - int setup_ok = 1; + int ok = 0; memset(&fixture, 0, sizeof(fixture)); - fixture.test_case_name = test_case_name; fixture.epoch_time_in_ms = 1473269626000; /* Sep 7 17:33:46 2016 GMT */ - fixture.ctlog_store = CTLOG_STORE_new(); - - if (fixture.ctlog_store == NULL) { - setup_ok = 0; - fprintf(stderr, "Failed to create a new CT log store\n"); + if (!TEST_ptr(fixture.ctlog_store = CTLOG_STORE_new()) + || !TEST_int_eq( + CTLOG_STORE_load_default_file(fixture.ctlog_store), 1)) goto end; - } - - if (CTLOG_STORE_load_default_file(fixture.ctlog_store) != 1) { - setup_ok = 0; - fprintf(stderr, "Failed to load CT log list\n"); - goto end; - } + ok = 1; end: - if (!setup_ok) { + if (!ok) { CTLOG_STORE_free(fixture.ctlog_store); + TEST_error("Failed to setup"); exit(EXIT_FAILURE); } return fixture; @@ -96,19 +88,18 @@ static void tear_down(CT_TEST_FIXTURE fixture) static char *mk_file_path(const char *dir, const char *file) { - char *full_file = NULL; - size_t full_file_l = 0; - const char *sep = ""; #ifndef OPENSSL_SYS_VMS - sep = "/"; + const char *sep = "/"; +#else + const char *sep = ""; #endif + size_t len = strlen(dir) + strlen(sep) + strlen(file) + 1; + char *full_file = OPENSSL_zalloc(len); - full_file_l = strlen(dir) + strlen(sep) + strlen(file) + 1; - full_file = OPENSSL_zalloc(full_file_l); if (full_file != NULL) { - OPENSSL_strlcpy(full_file, dir, full_file_l); - OPENSSL_strlcat(full_file, sep, full_file_l); - OPENSSL_strlcat(full_file, file, full_file_l); + OPENSSL_strlcpy(full_file, dir, len); + OPENSSL_strlcat(full_file, sep, len); + OPENSSL_strlcat(full_file, file, len); } return full_file; @@ -121,65 +112,54 @@ static X509 *load_pem_cert(const char *dir, const char *file) if (file_path != NULL) { BIO *cert_io = BIO_new_file(file_path, "r"); - OPENSSL_free(file_path); if (cert_io != NULL) cert = PEM_read_bio_X509(cert_io, NULL, NULL, NULL); - BIO_free(cert_io); } + + OPENSSL_free(file_path); return cert; } static int read_text_file(const char *dir, const char *file, char *buffer, int buffer_length) { - int result = -1; + int len = -1; char *file_path = mk_file_path(dir, file); if (file_path != NULL) { BIO *file_io = BIO_new_file(file_path, "r"); - OPENSSL_free(file_path); - if (file_io != NULL) { - result = BIO_read(file_io, buffer, buffer_length); - BIO_free(file_io); - } + if (file_io != NULL) + len = BIO_read(file_io, buffer, buffer_length); + BIO_free(file_io); } - return result; + OPENSSL_free(file_path); + return len; } static int compare_sct_list_printout(STACK_OF(SCT) *sct, - const char *expected_output) + const char *expected_output) { BIO *text_buffer = NULL; char *actual_output = NULL; - int result = 1; + int result = 0; - text_buffer = BIO_new(BIO_s_mem()); - if (text_buffer == NULL) { - fprintf(stderr, "Unable to allocate buffer\n"); + if (!TEST_ptr(text_buffer = BIO_new(BIO_s_mem()))) goto end; - } SCT_LIST_print(sct, text_buffer, 0, "\n", NULL); - /* Append null terminator because we're about to use the buffer contents - * as a string. */ - if (BIO_write(text_buffer, "\0", 1) != 1) { - fprintf(stderr, "Failed to append null terminator to SCT text\n"); + /* Append \0 because we're about to use the buffer contents as a string. */ + if (!TEST_true(BIO_write(text_buffer, "\0", 1))) goto end; - } BIO_get_mem_data(text_buffer, &actual_output); - result = strcmp(actual_output, expected_output); - - if (result != 0) { - fprintf(stderr, - "Expected SCT printout:\n%s\nActual SCT printout:\n%s\n", - expected_output, actual_output); - } + if (!TEST_str_eq(actual_output, expected_output)) + goto end; + result = 1; end: BIO_free(text_buffer); @@ -191,55 +171,41 @@ static int compare_extension_printout(X509_EXTENSION *extension, { BIO *text_buffer = NULL; char *actual_output = NULL; - int result = 1; - - text_buffer = BIO_new(BIO_s_mem()); - if (text_buffer == NULL) { - fprintf(stderr, "Unable to allocate buffer\n"); - goto end; - } + int result = 0; - if (!X509V3_EXT_print(text_buffer, extension, X509V3_EXT_DEFAULT, 0)) { - fprintf(stderr, "Failed to print extension\n"); + if (!TEST_ptr(text_buffer = BIO_new(BIO_s_mem())) + || !TEST_true(X509V3_EXT_print(text_buffer, extension, + X509V3_EXT_DEFAULT, 0))) goto end; - } - /* Append null terminator because we're about to use the buffer contents - * as a string. */ - if (BIO_write(text_buffer, "\0", 1) != 1) { - fprintf(stderr, - "Failed to append null terminator to extension text\n"); + /* Append \0 because we're about to use the buffer contents as a string. */ + if (!TEST_true(BIO_write(text_buffer, "\0", 1))) goto end; - } BIO_get_mem_data(text_buffer, &actual_output); - result = strcmp(actual_output, expected_output); + if (!TEST_str_eq(actual_output, expected_output)) + goto end; - if (result != 0) { - fprintf(stderr, - "Expected SCT printout:\n%s\nActual SCT printout:\n%s\n", - expected_output, actual_output); - } + result = 1; end: BIO_free(text_buffer); return result; } -static int assert_validity(CT_TEST_FIXTURE fixture, - STACK_OF(SCT) *scts, - CT_POLICY_EVAL_CTX *policy_ctx) { +static int assert_validity(CT_TEST_FIXTURE fixture, STACK_OF(SCT) *scts, + CT_POLICY_EVAL_CTX *policy_ctx) +{ int invalid_sct_count = 0; int valid_sct_count = 0; int i; - if (SCT_LIST_validate(scts, policy_ctx) < 0) { - fprintf(stderr, "Error verifying SCTs\n"); + if (!TEST_int_ge(SCT_LIST_validate(scts, policy_ctx), 0)) return 0; - } for (i = 0; i < sk_SCT_num(scts); ++i) { SCT *sct_i = sk_SCT_value(scts, i); + switch (SCT_get_validation_status(sct_i)) { case SCT_VALIDATION_STATUS_VALID: ++valid_sct_count; @@ -256,18 +222,12 @@ static int assert_validity(CT_TEST_FIXTURE fixture, } } - if (valid_sct_count != fixture.expected_valid_sct_count) { + if (!TEST_int_eq(valid_sct_count, fixture.expected_valid_sct_count)) { int unverified_sct_count = sk_SCT_num(scts) - - invalid_sct_count - valid_sct_count; - - fprintf(stderr, - "%d SCTs failed verification\n" - "%d SCTs passed verification (%d expected)\n" - "%d SCTs were unverified\n", - invalid_sct_count, - valid_sct_count, - fixture.expected_valid_sct_count, - unverified_sct_count); + invalid_sct_count - valid_sct_count; + + TEST_info("%d SCTs failed, %d SCTs unverified", + invalid_sct_count, unverified_sct_count); return 0; } @@ -291,12 +251,8 @@ static int execute_cert_test(CT_TEST_FIXTURE fixture) expected_sct_text, CT_TEST_MAX_FILE_SIZE - 1); - if (sct_text_len < 0) { - fprintf(stderr, "Test data file not found: %s\n", - fixture.sct_text_file); + if (!TEST_int_ge(sct_text_len, 0)) goto end; - } - expected_sct_text[sct_text_len] = '\0'; } @@ -308,25 +264,17 @@ static int execute_cert_test(CT_TEST_FIXTURE fixture) if (fixture.certificate_file != NULL) { int sct_extension_index; X509_EXTENSION *sct_extension = NULL; - cert = load_pem_cert(fixture.certs_dir, fixture.certificate_file); - if (cert == NULL) { - fprintf(stderr, "Unable to load certificate: %s\n", - fixture.certificate_file); + if (!TEST_ptr(cert = load_pem_cert(fixture.certs_dir, + fixture.certificate_file))) goto end; - } CT_POLICY_EVAL_CTX_set1_cert(ct_policy_ctx, cert); if (fixture.issuer_file != NULL) { - issuer = load_pem_cert(fixture.certs_dir, fixture.issuer_file); - - if (issuer == NULL) { - fprintf(stderr, "Unable to load issuer certificate: %s\n", - fixture.issuer_file); + if (!TEST_ptr(issuer = load_pem_cert(fixture.certs_dir, + fixture.issuer_file))) goto end; - } - CT_POLICY_EVAL_CTX_set1_issuer(ct_policy_ctx, issuer); } @@ -334,17 +282,13 @@ static int execute_cert_test(CT_TEST_FIXTURE fixture) X509_get_ext_by_NID(cert, NID_ct_precert_scts, -1); sct_extension = X509_get_ext(cert, sct_extension_index); if (fixture.expected_sct_count > 0) { - if (sct_extension == NULL) { - fprintf(stderr, "SCT extension not found in: %s\n", - fixture.certificate_file); + if (!TEST_ptr(sct_extension)) goto end; - } if (fixture.sct_text_file - && compare_extension_printout(sct_extension, - expected_sct_text)) { + && !compare_extension_printout(sct_extension, + expected_sct_text)) goto end; - } if (fixture.test_validity) { int i; @@ -353,30 +297,24 @@ static int execute_cert_test(CT_TEST_FIXTURE fixture) for (i = 0; i < sk_SCT_num(scts); ++i) { SCT *sct_i = sk_SCT_value(scts, i); - if (!SCT_set_source(sct_i, SCT_SOURCE_X509V3_EXTENSION)) { - fprintf(stderr, - "Error setting SCT source to X509v3 extension\n"); + if (!TEST_true(SCT_set_source(sct_i, + SCT_SOURCE_X509V3_EXTENSION))) goto end; - } } if (!assert_validity(fixture, scts, ct_policy_ctx)) goto end; } - } else if (sct_extension != NULL) { - fprintf(stderr, - "Expected no SCTs, but found SCT extension in: %s\n", - fixture.certificate_file); + } else if (!TEST_ptr_null(sct_extension)) { goto end; } } if (fixture.tls_sct_list != NULL) { const unsigned char *p = fixture.tls_sct_list; - if (o2i_SCT_LIST(&scts, &p, fixture.tls_sct_list_len) == NULL) { - fprintf(stderr, "Failed to decode SCTs from TLS format\n"); + + if (!TEST_ptr(o2i_SCT_LIST(&scts, &p, fixture.tls_sct_list_len))) goto end; - } if (fixture.test_validity && cert != NULL) { if (!assert_validity(fixture, scts, ct_policy_ctx)) @@ -384,17 +322,14 @@ static int execute_cert_test(CT_TEST_FIXTURE fixture) } if (fixture.sct_text_file - && compare_sct_list_printout(scts, expected_sct_text)) { + && !compare_sct_list_printout(scts, expected_sct_text)) { goto end; } tls_sct_list_len = i2o_SCT_LIST(scts, &tls_sct_list); - if (tls_sct_list_len != fixture.tls_sct_list_len || - memcmp(fixture.tls_sct_list, tls_sct_list, tls_sct_list_len) != 0) { - fprintf(stderr, - "Failed to encode SCTs into TLS format correctly\n"); + if (!TEST_mem_eq(fixture.tls_sct_list, fixture.tls_sct_list_len, + tls_sct_list, tls_sct_list_len)) goto end; - } } success = 1; @@ -520,15 +455,11 @@ static int test_encode_tls_sct() SETUP_CT_TEST_FIXTURE(); fixture.sct_list = sk_SCT_new_null(); - sct = SCT_new_from_base64(SCT_VERSION_V1, log_id, - CT_LOG_ENTRY_TYPE_X509, timestamp, - extensions, signature); + if (!TEST_ptr(sct = SCT_new_from_base64(SCT_VERSION_V1, log_id, + CT_LOG_ENTRY_TYPE_X509, timestamp, + extensions, signature))) - if (sct == NULL) { - tear_down(fixture); - fprintf(stderr, "Failed to create SCT from base64-encoded test data\n"); return 0; - } sk_SCT_push(fixture.sct_list, sct); fixture.sct_dir = ct_dir; @@ -548,11 +479,8 @@ static int test_default_ct_policy_eval_ctx_time_is_now() 1000; const time_t time_tolerance = 600; /* 10 minutes */ - if (fabs(difftime(time(NULL), default_time)) > time_tolerance) { - fprintf(stderr, - "Default CT_POLICY_EVAL_CTX time is not approximately now.\n"); + if (!TEST_uint_le(fabs(difftime(time(NULL), default_time)), time_tolerance)) goto end; - } success = 1; end: @@ -562,13 +490,10 @@ end: int test_main(int argc, char *argv[]) { - int result = 0; - char *tmp_env; - - tmp_env = getenv("CT_DIR"); - ct_dir = OPENSSL_strdup(tmp_env != NULL ? tmp_env : "ct"); - tmp_env = getenv("CERTS_DIR"); - certs_dir = OPENSSL_strdup(tmp_env != NULL ? tmp_env : "certs"); + if ((ct_dir = getenv("CT_DIR")) == NULL) + ct_dir = "ct"; + if ((certs_dir = getenv("CERTS_DIR")) == NULL) + certs_dir = "certs"; ADD_TEST(test_no_scts_in_certificate); ADD_TEST(test_one_sct_in_certificate); @@ -580,12 +505,7 @@ int test_main(int argc, char *argv[]) ADD_TEST(test_encode_tls_sct); ADD_TEST(test_default_ct_policy_eval_ctx_time_is_now); - result = run_tests(argv[0]); - - OPENSSL_free(ct_dir); - OPENSSL_free(certs_dir); - - return result; + return run_tests(argv[0]); } #else int test_main(int argc, char *argv[]) diff --git a/test/evp_extra_test.c b/test/evp_extra_test.c index 9217f3a..b8cfc0d 100644 --- a/test/evp_extra_test.c +++ b/test/evp_extra_test.c @@ -15,6 +15,8 @@ #include #include #include +#include "testutil.h" +#include "test_main.h" /* * kExampleRSAKeyDER is an RSA private key in ASN.1, DER format. Of course, you @@ -186,6 +188,18 @@ static const unsigned char kExampleBadECKeyDER[] = { }; #endif +typedef struct APK_DATA_st { + const unsigned char *kder; + size_t size; + int evptype; +} APK_DATA; + +static APK_DATA keydata[] = { + {kExampleRSAKeyDER, sizeof(kExampleRSAKeyDER), EVP_PKEY_RSA}, + {kExampleRSAKeyPKCS8, sizeof(kExampleRSAKeyPKCS8), EVP_PKEY_RSA}, + {kExampleECKeyDER, sizeof(kExampleECKeyDER), EVP_PKEY_EC} +}; + static EVP_PKEY *load_example_rsa_key(void) { EVP_PKEY *ret = NULL; @@ -193,19 +207,17 @@ static EVP_PKEY *load_example_rsa_key(void) EVP_PKEY *pkey = NULL; RSA *rsa = NULL; - if (!d2i_RSAPrivateKey(&rsa, &derp, sizeof(kExampleRSAKeyDER))) { + if (!TEST_true(d2i_RSAPrivateKey(&rsa, &derp, sizeof(kExampleRSAKeyDER)))) return NULL; - } - pkey = EVP_PKEY_new(); - if (pkey == NULL || !EVP_PKEY_set1_RSA(pkey, rsa)) { - goto out; - } + if (!TEST_ptr(pkey = EVP_PKEY_new()) + || !TEST_true(EVP_PKEY_set1_RSA(pkey, rsa))) + goto end; ret = pkey; pkey = NULL; - out: +end: EVP_PKEY_free(pkey); RSA_free(rsa); @@ -218,48 +230,37 @@ static int test_EVP_DigestSignInit(void) EVP_PKEY *pkey = NULL; unsigned char *sig = NULL; size_t sig_len = 0; - EVP_MD_CTX *md_ctx, *md_ctx_verify; + EVP_MD_CTX *md_ctx, *md_ctx_verify = NULL; - md_ctx = EVP_MD_CTX_new(); - md_ctx_verify = EVP_MD_CTX_new(); - if (md_ctx == NULL || md_ctx_verify == NULL) + if (!TEST_ptr(md_ctx = EVP_MD_CTX_new()) + || !TEST_ptr(md_ctx_verify = EVP_MD_CTX_new()) + || !TEST_ptr(pkey = load_example_rsa_key())) goto out; - pkey = load_example_rsa_key(); - if (pkey == NULL || - !EVP_DigestSignInit(md_ctx, NULL, EVP_sha256(), NULL, pkey) || - !EVP_DigestSignUpdate(md_ctx, kMsg, sizeof(kMsg))) { + if (!TEST_true(EVP_DigestSignInit(md_ctx, NULL, EVP_sha256(), NULL, pkey)) + || !TEST_true(EVP_DigestSignUpdate(md_ctx, kMsg, sizeof(kMsg)))) goto out; - } + /* Determine the size of the signature. */ - if (!EVP_DigestSignFinal(md_ctx, NULL, &sig_len)) { + if (!TEST_true(EVP_DigestSignFinal(md_ctx, NULL, &sig_len)) + || !TEST_size_t_eq(sig_len, (size_t)EVP_PKEY_size(pkey))) goto out; - } - /* Sanity check for testing. */ - if (sig_len != (size_t)EVP_PKEY_size(pkey)) { - fprintf(stderr, "sig_len mismatch\n"); - goto out; - } - sig = OPENSSL_malloc(sig_len); - if (sig == NULL || !EVP_DigestSignFinal(md_ctx, sig, &sig_len)) { + if (!TEST_ptr(sig = OPENSSL_malloc(sig_len)) + || !TEST_true(EVP_DigestSignFinal(md_ctx, sig, &sig_len))) goto out; - } /* Ensure that the signature round-trips. */ - if (!EVP_DigestVerifyInit(md_ctx_verify, NULL, EVP_sha256(), NULL, pkey) - || !EVP_DigestVerifyUpdate(md_ctx_verify, kMsg, sizeof(kMsg)) - || !EVP_DigestVerifyFinal(md_ctx_verify, sig, sig_len)) { + if (!TEST_true(EVP_DigestVerifyInit(md_ctx_verify, NULL, EVP_sha256(), + NULL, pkey)) + || !TEST_true(EVP_DigestVerifyUpdate(md_ctx_verify, + kMsg, sizeof(kMsg))) + || !TEST_true(EVP_DigestVerifyFinal(md_ctx_verify, sig, sig_len))) goto out; - } ret = 1; out: - if (!ret) { - ERR_print_errors_fp(stderr); - } - EVP_MD_CTX_free(md_ctx); EVP_MD_CTX_free(md_ctx_verify); EVP_PKEY_free(pkey); @@ -272,56 +273,44 @@ static int test_EVP_DigestVerifyInit(void) { int ret = 0; EVP_PKEY *pkey = NULL; - EVP_MD_CTX *md_ctx; + EVP_MD_CTX *md_ctx = NULL; - md_ctx = EVP_MD_CTX_new(); + if (!TEST_ptr(md_ctx = EVP_MD_CTX_new()) + || !TEST_ptr(pkey = load_example_rsa_key())) + goto out; - pkey = load_example_rsa_key(); - if (pkey == NULL || - !EVP_DigestVerifyInit(md_ctx, NULL, EVP_sha256(), NULL, pkey) || - !EVP_DigestVerifyUpdate(md_ctx, kMsg, sizeof(kMsg)) || - !EVP_DigestVerifyFinal(md_ctx, kSignature, sizeof(kSignature))) { + if (!TEST_true(EVP_DigestVerifyInit(md_ctx, NULL, EVP_sha256(), NULL, pkey)) + || !TEST_true(EVP_DigestVerifyUpdate(md_ctx, kMsg, sizeof(kMsg))) + || !TEST_true(EVP_DigestVerifyFinal(md_ctx, kSignature, + sizeof(kSignature)))) goto out; - } ret = 1; out: - if (!ret) { - ERR_print_errors_fp(stderr); - } - EVP_MD_CTX_free(md_ctx); EVP_PKEY_free(pkey); - return ret; } -static int test_d2i_AutoPrivateKey(const unsigned char *input, - size_t input_len, int expected_id) +static int test_d2i_AutoPrivateKey(int i) { int ret = 0; const unsigned char *p; EVP_PKEY *pkey = NULL; + const APK_DATA *ak = &keydata[i]; + const unsigned char *input = ak->kder; + size_t input_len = ak->size; + int expected_id = ak->evptype; p = input; - pkey = d2i_AutoPrivateKey(NULL, &p, input_len); - if (pkey == NULL || p != input + input_len) { - fprintf(stderr, "d2i_AutoPrivateKey failed\n"); - goto done; - } - - if (EVP_PKEY_id(pkey) != expected_id) { - fprintf(stderr, "Did not decode expected type\n"); + if (!TEST_ptr(pkey = d2i_AutoPrivateKey(NULL, &p, input_len)) + || !TEST_ptr_eq(p, input + input_len) + || !TEST_int_eq(EVP_PKEY_id(pkey), expected_id)) goto done; - } ret = 1; done: - if (!ret) { - ERR_print_errors_fp(stderr); - } - EVP_PKEY_free(pkey); return ret; } @@ -335,18 +324,16 @@ static int test_EVP_PKCS82PKEY(void) PKCS8_PRIV_KEY_INFO *p8inf = NULL; EVP_PKEY *pkey = NULL; - p8inf = d2i_PKCS8_PRIV_KEY_INFO(NULL, &derp, sizeof(kExampleBadECKeyDER)); + if (!TEST_ptr(p8inf = d2i_PKCS8_PRIV_KEY_INFO(NULL, &derp, + sizeof(kExampleBadECKeyDER)))) + goto done; - if (!p8inf || derp != kExampleBadECKeyDER + sizeof(kExampleBadECKeyDER)) { - fprintf(stderr, "Failed to parse key\n"); + if (!TEST_ptr_eq(derp, + kExampleBadECKeyDER + sizeof(kExampleBadECKeyDER))) goto done; - } - pkey = EVP_PKCS82PKEY(p8inf); - if (pkey) { - fprintf(stderr, "Imported invalid EC key\n"); + if (!TEST_ptr_null(pkey = EVP_PKCS82PKEY(p8inf))) goto done; - } ret = 1; @@ -358,52 +345,13 @@ static int test_EVP_PKCS82PKEY(void) } #endif -int main(void) +void register_tests(void) { - CRYPTO_set_mem_debug(1); - CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON); - - - if (!test_EVP_DigestSignInit()) { - fprintf(stderr, "EVP_DigestSignInit failed\n"); - return 1; - } - - if (!test_EVP_DigestVerifyInit()) { - fprintf(stderr, "EVP_DigestVerifyInit failed\n"); - return 1; - } - - if (!test_d2i_AutoPrivateKey(kExampleRSAKeyDER, sizeof(kExampleRSAKeyDER), - EVP_PKEY_RSA)) { - fprintf(stderr, "d2i_AutoPrivateKey(kExampleRSAKeyDER) failed\n"); - return 1; - } - - if (!test_d2i_AutoPrivateKey - (kExampleRSAKeyPKCS8, sizeof(kExampleRSAKeyPKCS8), EVP_PKEY_RSA)) { - fprintf(stderr, "d2i_AutoPrivateKey(kExampleRSAKeyPKCS8) failed\n"); - return 1; - } - + ADD_TEST(test_EVP_DigestSignInit); + ADD_TEST(test_EVP_DigestVerifyInit); + ADD_ALL_TESTS(test_d2i_AutoPrivateKey, + sizeof(keydata) / sizeof(keydata[0])); #ifndef OPENSSL_NO_EC - if (!test_d2i_AutoPrivateKey(kExampleECKeyDER, sizeof(kExampleECKeyDER), - EVP_PKEY_EC)) { - fprintf(stderr, "d2i_AutoPrivateKey(kExampleECKeyDER) failed\n"); - return 1; - } - - if (!test_EVP_PKCS82PKEY()) { - fprintf(stderr, "test_EVP_PKCS82PKEY failed\n"); - return 1; - } + ADD_TEST(test_EVP_PKCS82PKEY); #endif - -#ifndef OPENSSL_NO_CRYPTO_MDEBUG - if (CRYPTO_mem_leaks_fp(stderr) <= 0) - return 1; -#endif - - printf("PASS\n"); - return 0; } diff --git a/test/packettest.c b/test/packettest.c index 58fc752..7ee4a08 100644 --- a/test/packettest.c +++ b/test/packettest.c @@ -8,328 +8,311 @@ */ #include "../ssl/packet_locl.h" +#include "testutil.h" +#include "test_main.h" #define BUF_LEN 255 -static int test_PACKET_remaining(unsigned char buf[BUF_LEN]) +static unsigned char smbuf[BUF_LEN]; + +static int test_PACKET_remaining() { PACKET pkt; - if ( !PACKET_buf_init(&pkt, buf, BUF_LEN) - || PACKET_remaining(&pkt) != BUF_LEN - || !PACKET_forward(&pkt, BUF_LEN - 1) - || PACKET_remaining(&pkt) != 1 - || !PACKET_forward(&pkt, 1) - || PACKET_remaining(&pkt) != 0) { - fprintf(stderr, "test_PACKET_remaining() failed\n"); + if (!TEST_true(PACKET_buf_init(&pkt, smbuf, sizeof(smbuf)) + || !TEST_size_t_eq(PACKET_remaining(&pkt), BUF_LEN) + || !TEST_true(PACKET_forward(&pkt, BUF_LEN - 1)) + || !TEST_size_t_eq(PACKET_remaining(&pkt), 1) + || !TEST_true(PACKET_forward(&pkt, 1)) + || !TEST_size_t_eq(PACKET_remaining(&pkt), 0))) return 0; - } return 1; } -static int test_PACKET_end(unsigned char buf[BUF_LEN]) +static int test_PACKET_end() { PACKET pkt; - if ( !PACKET_buf_init(&pkt, buf, BUF_LEN) - || PACKET_remaining(&pkt) != BUF_LEN - || PACKET_end(&pkt) != buf + BUF_LEN - || !PACKET_forward(&pkt, BUF_LEN - 1) - || PACKET_end(&pkt) != buf + BUF_LEN - || !PACKET_forward(&pkt, 1) - || PACKET_end(&pkt) != buf + BUF_LEN) { - fprintf(stderr, "test_PACKET_end() failed\n"); + if (!TEST_true(PACKET_buf_init(&pkt, smbuf, sizeof(smbuf)) + || !TEST_size_t_eq(PACKET_remaining(&pkt), BUF_LEN) + || !TEST_ptr_ne(PACKET_end(&pkt), smbuf + BUF_LEN) + || !TEST_true(PACKET_forward(&pkt, BUF_LEN - 1)) + || !TEST_ptr_eq(PACKET_end(&pkt), smbuf + BUF_LEN) + || !TEST_true(PACKET_forward(&pkt, 1)) + || !TEST_ptr_eq(PACKET_end(&pkt), smbuf + BUF_LEN))) return 0; - } return 1; } -static int test_PACKET_get_1(unsigned char buf[BUF_LEN]) +static int test_PACKET_get_1() { unsigned int i; PACKET pkt; - if ( !PACKET_buf_init(&pkt, buf, BUF_LEN) - || !PACKET_get_1(&pkt, &i) - || i != 0x02 - || !PACKET_forward(&pkt, BUF_LEN - 2) - || !PACKET_get_1(&pkt, &i) - || i != 0xfe - || PACKET_get_1(&pkt, &i)) { - fprintf(stderr, "test_PACKET_get_1() failed\n"); + if (!TEST_true(PACKET_buf_init(&pkt, smbuf, BUF_LEN)) + || !TEST_true(PACKET_get_1(&pkt, &i)) + || !TEST_uint_eq(i, 0x02) + || !TEST_true(PACKET_forward(&pkt, BUF_LEN - 2)) + || !TEST_true(PACKET_get_1(&pkt, &i)) + || !TEST_uint_eq(i, 0xfe) + || !TEST_false(PACKET_get_1(&pkt, &i))) return 0; - } return 1; } -static int test_PACKET_get_4(unsigned char buf[BUF_LEN]) +static int test_PACKET_get_4() { unsigned long i; PACKET pkt; - if ( !PACKET_buf_init(&pkt, buf, BUF_LEN) - || !PACKET_get_4(&pkt, &i) - || i != 0x08060402UL - || !PACKET_forward(&pkt, BUF_LEN - 8) - || !PACKET_get_4(&pkt, &i) - || i != 0xfefcfaf8UL - || PACKET_get_4(&pkt, &i)) { - fprintf(stderr, "test_PACKET_get_4() failed\n"); + if (!TEST_true(PACKET_buf_init(&pkt, smbuf, BUF_LEN)) + || !TEST_true(PACKET_get_4(&pkt, &i)) + || !TEST_ulong_eq(i, 0x08060402UL) + || !TEST_true(PACKET_forward(&pkt, BUF_LEN - 8)) + || !TEST_true(PACKET_get_4(&pkt, &i)) + || !TEST_ulong_eq(i, 0xfefcfaf8UL) + || !TEST_false(PACKET_get_4(&pkt, &i))) return 0; - } return 1; } -static int test_PACKET_get_net_2(unsigned char buf[BUF_LEN]) +static int test_PACKET_get_net_2() { unsigned int i; PACKET pkt; - if ( !PACKET_buf_init(&pkt, buf, BUF_LEN) - || !PACKET_get_net_2(&pkt, &i) - || i != 0x0204 - || !PACKET_forward(&pkt, BUF_LEN - 4) - || !PACKET_get_net_2(&pkt, &i) - || i != 0xfcfe - || PACKET_get_net_2(&pkt, &i)) { - fprintf(stderr, "test_PACKET_get_net_2() failed\n"); + if (!TEST_true(PACKET_buf_init(&pkt, smbuf, BUF_LEN)) + || !TEST_true(PACKET_get_net_2(&pkt, &i)) + || !TEST_uint_eq(i, 0x0204) + || !TEST_true(PACKET_forward(&pkt, BUF_LEN - 4)) + || !TEST_true(PACKET_get_net_2(&pkt, &i)) + || !TEST_uint_eq(i, 0xfcfe) + || !TEST_false(PACKET_get_net_2(&pkt, &i))) return 0; - } return 1; } -static int test_PACKET_get_net_3(unsigned char buf[BUF_LEN]) +static int test_PACKET_get_net_3() { unsigned long i; PACKET pkt; - if ( !PACKET_buf_init(&pkt, buf, BUF_LEN) - || !PACKET_get_net_3(&pkt, &i) - || i != 0x020406UL - || !PACKET_forward(&pkt, BUF_LEN - 6) - || !PACKET_get_net_3(&pkt, &i) - || i != 0xfafcfeUL - || PACKET_get_net_3(&pkt, &i)) { - fprintf(stderr, "test_PACKET_get_net_3() failed\n"); + if (!TEST_true(PACKET_buf_init(&pkt, smbuf, BUF_LEN)) + || !TEST_true(PACKET_get_net_3(&pkt, &i)) + || !TEST_ulong_eq(i, 0x020406UL) + || !TEST_true(PACKET_forward(&pkt, BUF_LEN - 6)) + || !TEST_true(PACKET_get_net_3(&pkt, &i)) + || !TEST_ulong_eq(i, 0xfafcfeUL) + || !TEST_false(PACKET_get_net_3(&pkt, &i))) return 0; - } return 1; } -static int test_PACKET_get_net_4(unsigned char buf[BUF_LEN]) +static int test_PACKET_get_net_4() { unsigned long i; PACKET pkt; - if ( !PACKET_buf_init(&pkt, buf, BUF_LEN) - || !PACKET_get_net_4(&pkt, &i) - || i != 0x02040608UL - || !PACKET_forward(&pkt, BUF_LEN - 8) - || !PACKET_get_net_4(&pkt, &i) - || i != 0xf8fafcfeUL - || PACKET_get_net_4(&pkt, &i)) { - fprintf(stderr, "test_PACKET_get_net_4() failed\n"); + if (!TEST_true(PACKET_buf_init(&pkt, smbuf, BUF_LEN)) + || !TEST_true(PACKET_get_net_4(&pkt, &i)) + || !TEST_ulong_eq(i, 0x02040608UL) + || !TEST_true(PACKET_forward(&pkt, BUF_LEN - 8)) + || !TEST_true(PACKET_get_net_4(&pkt, &i)) + || !TEST_ulong_eq(i, 0xf8fafcfeUL) + || !TEST_false(PACKET_get_net_4(&pkt, &i))) return 0; - } return 1; } -static int test_PACKET_get_sub_packet(unsigned char buf[BUF_LEN]) +static int test_PACKET_get_sub_packet() { PACKET pkt, subpkt; unsigned long i; - if ( !PACKET_buf_init(&pkt, buf, BUF_LEN) - || !PACKET_get_sub_packet(&pkt, &subpkt, 4) - || !PACKET_get_net_4(&subpkt, &i) - || i != 0x02040608UL - || PACKET_remaining(&subpkt) - || !PACKET_forward(&pkt, BUF_LEN - 8) - || !PACKET_get_sub_packet(&pkt, &subpkt, 4) - || !PACKET_get_net_4(&subpkt, &i) - || i != 0xf8fafcfeUL - || PACKET_remaining(&subpkt) - || PACKET_get_sub_packet(&pkt, &subpkt, 4)) { - fprintf(stderr, "test_PACKET_get_sub_packet() failed\n"); + if (!TEST_true(PACKET_buf_init(&pkt, smbuf, BUF_LEN)) + || !TEST_true(PACKET_get_sub_packet(&pkt, &subpkt, 4)) + || !TEST_true(PACKET_get_net_4(&subpkt, &i)) + || !TEST_ulong_eq(i, 0x02040608UL) + || !TEST_size_t_eq(PACKET_remaining(&subpkt), 0) + || !TEST_true(PACKET_forward(&pkt, BUF_LEN - 8)) + || !TEST_true(PACKET_get_sub_packet(&pkt, &subpkt, 4)) + || !TEST_true(PACKET_get_net_4(&subpkt, &i)) + || !TEST_ulong_eq(i, 0xf8fafcfeUL) + || !TEST_size_t_eq(PACKET_remaining(&subpkt), 0) + || !TEST_false(PACKET_get_sub_packet(&pkt, &subpkt, 4))) return 0; - } return 1; } -static int test_PACKET_get_bytes(unsigned char buf[BUF_LEN]) +static int test_PACKET_get_bytes() { const unsigned char *bytes; PACKET pkt; - if ( !PACKET_buf_init(&pkt, buf, BUF_LEN) - || !PACKET_get_bytes(&pkt, &bytes, 4) - || bytes[0] != 2 || bytes[1] != 4 - || bytes[2] != 6 || bytes[3] != 8 - || PACKET_remaining(&pkt) != BUF_LEN -4 - || !PACKET_forward(&pkt, BUF_LEN - 8) - || !PACKET_get_bytes(&pkt, &bytes, 4) - || bytes[0] != 0xf8 || bytes[1] != 0xfa - || bytes[2] != 0xfc || bytes[3] != 0xfe - || PACKET_remaining(&pkt)) { - fprintf(stderr, "test_PACKET_get_bytes() failed\n"); + if (!TEST_true(PACKET_buf_init(&pkt, smbuf, BUF_LEN)) + || !TEST_true(PACKET_get_bytes(&pkt, &bytes, 4)) + || !TEST_uchar_eq(bytes[0], 2) + || !TEST_uchar_eq(bytes[1], 4) + || !TEST_uchar_eq(bytes[2], 6) + || !TEST_uchar_eq(bytes[3], 8) + || !TEST_size_t_eq(PACKET_remaining(&pkt), BUF_LEN -4) + || !TEST_true(PACKET_forward(&pkt, BUF_LEN - 8)) + || !TEST_true(PACKET_get_bytes(&pkt, &bytes, 4)) + || !TEST_uchar_eq(bytes[0], 0xf8) + || !TEST_uchar_eq(bytes[1], 0xfa) + || !TEST_uchar_eq(bytes[2], 0xfc) + || !TEST_uchar_eq(bytes[3], 0xfe) + || !TEST_false(PACKET_remaining(&pkt))) return 0; - } return 1; } -static int test_PACKET_copy_bytes(unsigned char buf[BUF_LEN]) +static int test_PACKET_copy_bytes() { unsigned char bytes[4]; PACKET pkt; - if ( !PACKET_buf_init(&pkt, buf, BUF_LEN) - || !PACKET_copy_bytes(&pkt, bytes, 4) - || bytes[0] != 2 || bytes[1] != 4 - || bytes[2] != 6 || bytes[3] != 8 - || PACKET_remaining(&pkt) != BUF_LEN - 4 - || !PACKET_forward(&pkt, BUF_LEN - 8) - || !PACKET_copy_bytes(&pkt, bytes, 4) - || bytes[0] != 0xf8 || bytes[1] != 0xfa - || bytes[2] != 0xfc || bytes[3] != 0xfe - || PACKET_remaining(&pkt)) { - fprintf(stderr, "test_PACKET_copy_bytes() failed\n"); + if (!TEST_true(PACKET_buf_init(&pkt, smbuf, BUF_LEN)) + || !TEST_true(PACKET_copy_bytes(&pkt, bytes, 4)) + || !TEST_char_eq(bytes[0], 2) + || !TEST_char_eq(bytes[1], 4) + || !TEST_char_eq(bytes[2], 6) + || !TEST_char_eq(bytes[3], 8) + || !TEST_size_t_eq(PACKET_remaining(&pkt), BUF_LEN - 4) + || !TEST_true(PACKET_forward(&pkt, BUF_LEN - 8)) + || !TEST_true(PACKET_copy_bytes(&pkt, bytes, 4)) + || !TEST_uchar_eq(bytes[0], 0xf8) + || !TEST_uchar_eq(bytes[1], 0xfa) + || !TEST_uchar_eq(bytes[2], 0xfc) + || !TEST_uchar_eq(bytes[3], 0xfe) + || !TEST_false(PACKET_remaining(&pkt))) return 0; - } return 1; } -static int test_PACKET_copy_all(unsigned char buf[BUF_LEN]) +static int test_PACKET_copy_all() { unsigned char tmp[BUF_LEN]; PACKET pkt; size_t len; - if ( !PACKET_buf_init(&pkt, buf, BUF_LEN) - || !PACKET_copy_all(&pkt, tmp, BUF_LEN, &len) - || len != BUF_LEN - || memcmp(buf, tmp, BUF_LEN) != 0 - || PACKET_remaining(&pkt) != BUF_LEN - || PACKET_copy_all(&pkt, tmp, BUF_LEN - 1, &len)) { - fprintf(stderr, "test_PACKET_copy_bytes() failed\n"); + if (!TEST_true(PACKET_buf_init(&pkt, smbuf, BUF_LEN)) + || !TEST_true(PACKET_copy_all(&pkt, tmp, BUF_LEN, &len)) + || !TEST_size_t_eq(len, BUF_LEN) + || !TEST_mem_eq(smbuf, BUF_LEN, tmp, BUF_LEN) + || !TEST_size_t_eq(PACKET_remaining(&pkt), BUF_LEN) + || !TEST_false(PACKET_copy_all(&pkt, tmp, BUF_LEN - 1, &len))) return 0; - } return 1; } -static int test_PACKET_memdup(unsigned char buf[BUF_LEN]) +static int test_PACKET_memdup() { unsigned char *data = NULL; size_t len; PACKET pkt; - - if ( !PACKET_buf_init(&pkt, buf, BUF_LEN) - || !PACKET_memdup(&pkt, &data, &len) - || len != BUF_LEN - || memcmp(data, PACKET_data(&pkt), len) - || !PACKET_forward(&pkt, 10) - || !PACKET_memdup(&pkt, &data, &len) - || len != BUF_LEN - 10 - || memcmp(data, PACKET_data(&pkt), len)) { - fprintf(stderr, "test_PACKET_memdup() failed\n"); - OPENSSL_free(data); - return 0; - } - + int result = 0; + + if (!TEST_true(PACKET_buf_init(&pkt, smbuf, BUF_LEN)) + || !TEST_true(PACKET_memdup(&pkt, &data, &len)) + || !TEST_size_t_eq(len, BUF_LEN) + || !TEST_mem_eq(data, len, PACKET_data(&pkt), len) + || !TEST_true(PACKET_forward(&pkt, 10)) + || !TEST_true(PACKET_memdup(&pkt, &data, &len)) + || !TEST_size_t_eq(len, BUF_LEN - 10) + || !TEST_mem_eq(data, len, PACKET_data(&pkt), len)) + goto end; + result = 1; +end: OPENSSL_free(data); - return 1; + return result; } static int test_PACKET_strndup() { - char buf[10], buf2[10]; + char buf1[10], buf2[10]; char *data = NULL; PACKET pkt; + int result = 0; - memset(buf, 'x', 10); + memset(buf1, 'x', 10); memset(buf2, 'y', 10); buf2[5] = '\0'; - if ( !PACKET_buf_init(&pkt, (unsigned char*)buf, 10) - || !PACKET_strndup(&pkt, &data) - || strlen(data) != 10 - || strncmp(data, buf, 10) - || !PACKET_buf_init(&pkt, (unsigned char*)buf2, 10) - || !PACKET_strndup(&pkt, &data) - || strlen(data) != 5 - || strcmp(data, buf2)) { - fprintf(stderr, "test_PACKET_strndup failed\n"); - OPENSSL_free(data); - return 0; - } - + if (!TEST_true(PACKET_buf_init(&pkt, (unsigned char*)buf1, 10)) + || !TEST_true(PACKET_strndup(&pkt, &data)) + || !TEST_size_t_eq(strlen(data), 10) + || !TEST_strn_eq(data, buf1, 10) + || !TEST_true(PACKET_buf_init(&pkt, (unsigned char*)buf2, 10)) + || !TEST_true(PACKET_strndup(&pkt, &data)) + || !TEST_size_t_eq(strlen(data), 5) + || !TEST_str_eq(data, buf2)) + goto end; + + result = 1; +end: OPENSSL_free(data); - return 1; + return result; } static int test_PACKET_contains_zero_byte() { - char buf[10], buf2[10]; + char buf1[10], buf2[10]; PACKET pkt; - memset(buf, 'x', 10); + memset(buf1, 'x', 10); memset(buf2, 'y', 10); buf2[5] = '\0'; - if ( !PACKET_buf_init(&pkt, (unsigned char*)buf, 10) - || PACKET_contains_zero_byte(&pkt) - || !PACKET_buf_init(&pkt, (unsigned char*)buf2, 10) - || !PACKET_contains_zero_byte(&pkt)) { - fprintf(stderr, "test_PACKET_contains_zero_byte failed\n"); + if (!TEST_true(PACKET_buf_init(&pkt, (unsigned char*)buf1, 10)) + || !TEST_false(PACKET_contains_zero_byte(&pkt)) + || !TEST_true(PACKET_buf_init(&pkt, (unsigned char*)buf2, 10)) + || !TEST_true(PACKET_contains_zero_byte(&pkt))) return 0; - } return 1; } -static int test_PACKET_forward(unsigned char buf[BUF_LEN]) +static int test_PACKET_forward() { const unsigned char *byte; PACKET pkt; - if ( !PACKET_buf_init(&pkt, buf, BUF_LEN) - || !PACKET_forward(&pkt, 1) - || !PACKET_get_bytes(&pkt, &byte, 1) - || byte[0] != 4 - || !PACKET_forward(&pkt, BUF_LEN - 3) - || !PACKET_get_bytes(&pkt, &byte, 1) - || byte[0] != 0xfe) { - fprintf(stderr, "test_PACKET_forward() failed\n"); + if (!TEST_true(PACKET_buf_init(&pkt, smbuf, BUF_LEN)) + || !TEST_true(PACKET_forward(&pkt, 1)) + || !TEST_true(PACKET_get_bytes(&pkt, &byte, 1)) + || !TEST_uchar_eq(byte[0], 4) + || !TEST_true(PACKET_forward(&pkt, BUF_LEN - 3)) + || !TEST_true(PACKET_get_bytes(&pkt, &byte, 1)) + || !TEST_uchar_eq(byte[0], 0xfe)) return 0; - } return 1; } static int test_PACKET_buf_init() { - unsigned char buf[BUF_LEN]; + unsigned char buf1[BUF_LEN]; PACKET pkt; /* Also tests PACKET_remaining() */ - if ( !PACKET_buf_init(&pkt, buf, 4) - || PACKET_remaining(&pkt) != 4 - || !PACKET_buf_init(&pkt, buf, BUF_LEN) - || PACKET_remaining(&pkt) != BUF_LEN - || PACKET_buf_init(&pkt, buf, -1)) { - fprintf(stderr, "test_PACKET_buf_init() failed\n"); + if (!TEST_true(PACKET_buf_init(&pkt, buf1, 4)) + || !TEST_size_t_eq(PACKET_remaining(&pkt), 4) + || !TEST_true(PACKET_buf_init(&pkt, buf1, BUF_LEN)) + || !TEST_size_t_eq(PACKET_remaining(&pkt), BUF_LEN) + || !TEST_false(PACKET_buf_init(&pkt, buf1, -1))) return 0; - } return 1; } @@ -339,135 +322,119 @@ static int test_PACKET_null_init() PACKET pkt; PACKET_null_init(&pkt); - if ( PACKET_remaining(&pkt) != 0 - || PACKET_forward(&pkt, 1)) { - fprintf(stderr, "test_PACKET_null_init() failed\n"); + if (!TEST_size_t_eq(PACKET_remaining(&pkt), 0) + || !TEST_false(PACKET_forward(&pkt, 1))) return 0; - } return 1; } -static int test_PACKET_equal(unsigned char buf[BUF_LEN]) +static int test_PACKET_equal() { PACKET pkt; - if ( !PACKET_buf_init(&pkt, buf, 4) - || !PACKET_equal(&pkt, buf, 4) - || PACKET_equal(&pkt, buf + 1, 4) - || !PACKET_buf_init(&pkt, buf, BUF_LEN) - || !PACKET_equal(&pkt, buf, BUF_LEN) - || PACKET_equal(&pkt, buf, BUF_LEN - 1) - || PACKET_equal(&pkt, buf, BUF_LEN + 1) - || PACKET_equal(&pkt, buf, 0)) { - fprintf(stderr, "test_PACKET_equal() failed\n"); + if (!TEST_true(PACKET_buf_init(&pkt, smbuf, 4)) + || !TEST_true(PACKET_equal(&pkt, smbuf, 4)) + || !TEST_false(PACKET_equal(&pkt, smbuf + 1, 4)) + || !TEST_true(PACKET_buf_init(&pkt, smbuf, BUF_LEN)) + || !TEST_true(PACKET_equal(&pkt, smbuf, BUF_LEN)) + || !TEST_false(PACKET_equal(&pkt, smbuf, BUF_LEN - 1)) + || !TEST_false(PACKET_equal(&pkt, smbuf, BUF_LEN + 1)) + || !TEST_false(PACKET_equal(&pkt, smbuf, 0))) return 0; - } return 1; } static int test_PACKET_get_length_prefixed_1() { - unsigned char buf[BUF_LEN]; + unsigned char buf1[BUF_LEN]; const size_t len = 16; unsigned int i; - PACKET pkt, short_pkt, subpkt; - - buf[0] = len; - for (i = 1; i < BUF_LEN; i++) { - buf[i] = (i * 2) & 0xff; - } - - if ( !PACKET_buf_init(&pkt, buf, BUF_LEN) - || !PACKET_buf_init(&short_pkt, buf, len) - || !PACKET_get_length_prefixed_1(&pkt, &subpkt) - || PACKET_remaining(&subpkt) != len - || !PACKET_get_net_2(&subpkt, &i) - || i != 0x0204 - || PACKET_get_length_prefixed_1(&short_pkt, &subpkt) - || PACKET_remaining(&short_pkt) != len) { - fprintf(stderr, "test_PACKET_get_length_prefixed_1() failed\n"); + PACKET pkt, short_pkt, subpkt = {0}; + + buf1[0] = len; + for (i = 1; i < BUF_LEN; i++) + buf1[i] = (i * 2) & 0xff; + + if (!TEST_true(PACKET_buf_init(&pkt, buf1, BUF_LEN)) + || !TEST_true(PACKET_buf_init(&short_pkt, buf1, len)) + || !TEST_true(PACKET_get_length_prefixed_1(&pkt, &subpkt)) + || !TEST_size_t_eq(PACKET_remaining(&subpkt), len) + || !TEST_true(PACKET_get_net_2(&subpkt, &i)) + || !TEST_uint_eq(i, 0x0204) + || !TEST_false(PACKET_get_length_prefixed_1(&short_pkt, &subpkt)) + || !TEST_size_t_eq(PACKET_remaining(&short_pkt), len)) return 0; - } return 1; } static int test_PACKET_get_length_prefixed_2() { - unsigned char buf[1024]; + unsigned char buf1[1024]; const size_t len = 516; /* 0x0204 */ unsigned int i; - PACKET pkt, short_pkt, subpkt; - - for (i = 1; i <= 1024; i++) { - buf[i-1] = (i * 2) & 0xff; - } - - if ( !PACKET_buf_init(&pkt, buf, 1024) - || !PACKET_buf_init(&short_pkt, buf, len) - || !PACKET_get_length_prefixed_2(&pkt, &subpkt) - || PACKET_remaining(&subpkt) != len - || !PACKET_get_net_2(&subpkt, &i) - || i != 0x0608 - || PACKET_get_length_prefixed_2(&short_pkt, &subpkt) - || PACKET_remaining(&short_pkt) != len) { - fprintf(stderr, "test_PACKET_get_length_prefixed_2() failed\n"); + PACKET pkt, short_pkt, subpkt = {0}; + + for (i = 1; i <= 1024; i++) + buf1[i - 1] = (i * 2) & 0xff; + + if (!TEST_true(PACKET_buf_init(&pkt, buf1, 1024)) + || !TEST_true(PACKET_buf_init(&short_pkt, buf1, len)) + || !TEST_true(PACKET_get_length_prefixed_2(&pkt, &subpkt)) + || !TEST_size_t_eq(PACKET_remaining(&subpkt), len) + || !TEST_true(PACKET_get_net_2(&subpkt, &i)) + || !TEST_uint_eq(i, 0x0608) + || !TEST_false(PACKET_get_length_prefixed_2(&short_pkt, &subpkt)) + || !TEST_size_t_eq(PACKET_remaining(&short_pkt), len)) return 0; - } return 1; } static int test_PACKET_get_length_prefixed_3() { - unsigned char buf[1024]; + unsigned char buf1[1024]; const size_t len = 516; /* 0x000204 */ unsigned int i; - PACKET pkt, short_pkt, subpkt; - - for (i = 0; i < 1024; i++) { - buf[i] = (i * 2) & 0xff; - } - - if ( !PACKET_buf_init(&pkt, buf, 1024) - || !PACKET_buf_init(&short_pkt, buf, len) - || !PACKET_get_length_prefixed_3(&pkt, &subpkt) - || PACKET_remaining(&subpkt) != len - || !PACKET_get_net_2(&subpkt, &i) - || i != 0x0608 - || PACKET_get_length_prefixed_3(&short_pkt, &subpkt) - || PACKET_remaining(&short_pkt) != len) { - fprintf(stderr, "test_PACKET_get_length_prefixed_3() failed\n"); + PACKET pkt, short_pkt, subpkt = {0}; + + for (i = 0; i < 1024; i++) + buf1[i] = (i * 2) & 0xff; + + if (!TEST_true(PACKET_buf_init(&pkt, buf1, 1024)) + || !TEST_true(PACKET_buf_init(&short_pkt, buf1, len)) + || !TEST_true(PACKET_get_length_prefixed_3(&pkt, &subpkt)) + || !TEST_size_t_eq(PACKET_remaining(&subpkt), len) + || !TEST_true(PACKET_get_net_2(&subpkt, &i)) + || !TEST_uint_eq(i, 0x0608) + || !TEST_false(PACKET_get_length_prefixed_3(&short_pkt, &subpkt)) + || !TEST_size_t_eq(PACKET_remaining(&short_pkt), len)) return 0; - } return 1; } static int test_PACKET_as_length_prefixed_1() { - unsigned char buf[BUF_LEN]; + unsigned char buf1[BUF_LEN]; const size_t len = 16; unsigned int i; PACKET pkt, exact_pkt, subpkt; - buf[0] = len; - for (i = 1; i < BUF_LEN; i++) { - buf[i] = (i * 2) & 0xff; - } - - if ( !PACKET_buf_init(&pkt, buf, BUF_LEN) - || !PACKET_buf_init(&exact_pkt, buf, len + 1) - || PACKET_as_length_prefixed_1(&pkt, &subpkt) - || PACKET_remaining(&pkt) != BUF_LEN - || !PACKET_as_length_prefixed_1(&exact_pkt, &subpkt) - || PACKET_remaining(&exact_pkt) != 0 - || PACKET_remaining(&subpkt) != len) { - fprintf(stderr, "test_PACKET_as_length_prefixed_1() failed\n"); + buf1[0] = len; + for (i = 1; i < BUF_LEN; i++) + buf1[i] = (i * 2) & 0xff; + + if (!TEST_true(PACKET_buf_init(&pkt, buf1, BUF_LEN)) + || !TEST_true(PACKET_buf_init(&exact_pkt, buf1, len + 1)) + || !TEST_false(PACKET_as_length_prefixed_1(&pkt, &subpkt)) + || !TEST_size_t_eq(PACKET_remaining(&pkt), BUF_LEN) + || !TEST_true(PACKET_as_length_prefixed_1(&exact_pkt, &subpkt) + || !TEST_size_t_eq(PACKET_remaining(&exact_pkt), 0) + || !TEST_size_t_eq(PACKET_remaining(&subpkt), len))) return 0; - } return 1; } @@ -479,59 +446,49 @@ static int test_PACKET_as_length_prefixed_2() unsigned int i; PACKET pkt, exact_pkt, subpkt; - for (i = 1; i <= 1024; i++) { + for (i = 1; i <= 1024; i++) buf[i-1] = (i * 2) & 0xff; - } - - if ( !PACKET_buf_init(&pkt, buf, 1024) - || !PACKET_buf_init(&exact_pkt, buf, len + 2) - || PACKET_as_length_prefixed_2(&pkt, &subpkt) - || PACKET_remaining(&pkt) != 1024 - || !PACKET_as_length_prefixed_2(&exact_pkt, &subpkt) - || PACKET_remaining(&exact_pkt) != 0 - || PACKET_remaining(&subpkt) != len) { - fprintf(stderr, "test_PACKET_as_length_prefixed_2() failed\n"); + + if (!TEST_true(PACKET_buf_init(&pkt, buf, 1024)) + || !TEST_true(PACKET_buf_init(&exact_pkt, buf, len + 2)) + || !TEST_false(PACKET_as_length_prefixed_2(&pkt, &subpkt)) + || !TEST_size_t_eq(PACKET_remaining(&pkt), 1024) + || !TEST_true(PACKET_as_length_prefixed_2(&exact_pkt, &subpkt)) + || !TEST_size_t_eq(PACKET_remaining(&exact_pkt), 0) + || !TEST_size_t_eq(PACKET_remaining(&subpkt), len)) return 0; - } return 1; } -int main(int argc, char **argv) +void register_tests(void) { - unsigned char buf[BUF_LEN]; unsigned int i; - for (i=1; i<=BUF_LEN; i++) { - buf[i-1] = (i * 2) & 0xff; - } - i = 0; - - if ( !test_PACKET_buf_init() - || !test_PACKET_null_init() - || !test_PACKET_remaining(buf) - || !test_PACKET_end(buf) - || !test_PACKET_equal(buf) - || !test_PACKET_get_1(buf) - || !test_PACKET_get_4(buf) - || !test_PACKET_get_net_2(buf) - || !test_PACKET_get_net_3(buf) - || !test_PACKET_get_net_4(buf) - || !test_PACKET_get_sub_packet(buf) - || !test_PACKET_get_bytes(buf) - || !test_PACKET_copy_bytes(buf) - || !test_PACKET_copy_all(buf) - || !test_PACKET_memdup(buf) - || !test_PACKET_strndup() - || !test_PACKET_contains_zero_byte() - || !test_PACKET_forward(buf) - || !test_PACKET_get_length_prefixed_1() - || !test_PACKET_get_length_prefixed_2() - || !test_PACKET_get_length_prefixed_3() - || !test_PACKET_as_length_prefixed_1() - || !test_PACKET_as_length_prefixed_2()) { - return 1; - } - printf("PASS\n"); - return 0; + for (i = 1; i <= BUF_LEN; i++) + smbuf[i - 1] = (i * 2) & 0xff; + + ADD_TEST(test_PACKET_buf_init); + ADD_TEST(test_PACKET_null_init); + ADD_TEST(test_PACKET_remaining); + ADD_TEST(test_PACKET_end); + ADD_TEST(test_PACKET_equal); + ADD_TEST(test_PACKET_get_1); + ADD_TEST(test_PACKET_get_4); + ADD_TEST(test_PACKET_get_net_2); + ADD_TEST(test_PACKET_get_net_3); + ADD_TEST(test_PACKET_get_net_4); + ADD_TEST(test_PACKET_get_sub_packet); + ADD_TEST(test_PACKET_get_bytes); + ADD_TEST(test_PACKET_copy_bytes); + ADD_TEST(test_PACKET_copy_all); + ADD_TEST(test_PACKET_memdup); + ADD_TEST(test_PACKET_strndup); + ADD_TEST(test_PACKET_contains_zero_byte); + ADD_TEST(test_PACKET_forward); + ADD_TEST(test_PACKET_get_length_prefixed_1); + ADD_TEST(test_PACKET_get_length_prefixed_2); + ADD_TEST(test_PACKET_get_length_prefixed_3); + ADD_TEST(test_PACKET_as_length_prefixed_1); + ADD_TEST(test_PACKET_as_length_prefixed_2); } diff --git a/test/testutil.c b/test/testutil.c index 3d2824c..ae98e10 100644 --- a/test/testutil.c +++ b/test/testutil.c @@ -363,6 +363,38 @@ int test_str_ne(const char *file, int line, const char *st1, const char *st2, return 1; } +int test_strn_eq(const char *file, int line, const char *st1, const char *st2, + const char *s1, const char *s2, size_t len) +{ + int prec = (int)len; + + if (s1 == NULL && s2 == NULL) + return 1; + if (s1 == NULL || s2 == NULL || strncmp(s1, s2, len) != 0) { + test_fail_message(NULL, file, line, "string", "%.s [%.*s] == %s [%.*s]", + st1, prec, print_string_maybe_null(s1), + st2, prec, print_string_maybe_null(s2)); + return 0; + } + return 1; +} + +int test_strn_ne(const char *file, int line, const char *st1, const char *st2, + const char *s1, const char *s2, size_t len) +{ + int prec = (int)len; + + if ((s1 == NULL) ^ (s2 == NULL)) + return 1; + if (s1 == NULL || strncmp(s1, s2, len) == 0) { + test_fail_message(NULL, file, line, "string", "%s [%.*s] != %s [%.*s]", + st1, prec, print_string_maybe_null(s1), + st2, prec, print_string_maybe_null(s2)); + return 0; + } + return 1; +} + /* * We could use OPENSSL_buf2hexstr() to do this but trying to allocate memory * in a failure state isn't generally a great idea. diff --git a/test/testutil.h b/test/testutil.h index 0631a8b..e7478a8 100644 --- a/test/testutil.h +++ b/test/testutil.h @@ -190,6 +190,14 @@ DECLARE_COMPARISON(char *, str, eq) DECLARE_COMPARISON(char *, str, ne) /* + * Same as above, but for strncmp. + */ +int test_strn_eq(const char *file, int line, const char *, const char *, + const char *a, const char *b, size_t s); +int test_strn_ne(const char *file, int line, const char *, const char *, + const char *a, const char *b, size_t s); + +/* * Equality test for memory blocks where NULL is a legitimate value. * These calls return 1 if the two memory blocks compare true. * Otherwise, they return 0 and pretty-print diagnostics. @@ -293,6 +301,8 @@ void test_info_c90(const char *desc, ...) PRINTF_FORMAT(1, 2); # define TEST_str_eq(a, b) test_str_eq(__FILE__, __LINE__, #a, #b, a, b) # define TEST_str_ne(a, b) test_str_ne(__FILE__, __LINE__, #a, #b, a, b) +# define TEST_strn_eq(a, b, n) test_strn_eq(__FILE__, __LINE__, #a, #b, a, b, n) +# define TEST_strn_ne(a, b, n) test_strn_ne(__FILE__, __LINE__, #a, #b, a, b, n) # define TEST_mem_eq(a, m, b, n) test_mem_eq(__FILE__, __LINE__, #a, #b, a, m, b, n) # define TEST_mem_ne(a, m, b, n) test_mem_ne(__FILE__, __LINE__, #a, #b, a, m, b, n) diff --git a/test/wpackettest.c b/test/wpackettest.c index 3ab293e..2546ef3 100644 --- a/test/wpackettest.c +++ b/test/wpackettest.c @@ -13,22 +13,22 @@ #include "testutil.h" #include "test_main_custom.h" -const static unsigned char simple1 = 0xff; +const static unsigned char simple1[] = { 0xff }; const static unsigned char simple2[] = { 0x01, 0xff }; const static unsigned char simple3[] = { 0x00, 0x00, 0x00, 0x01, 0xff }; const static unsigned char nestedsub[] = { 0x03, 0xff, 0x01, 0xff }; const static unsigned char seqsub[] = { 0x01, 0xff, 0x01, 0xff }; -const static unsigned char empty = 0x00; +const static unsigned char empty[] = { 0x00 }; const static unsigned char alloc[] = { 0x02, 0xfe, 0xff }; const static unsigned char submem[] = { 0x03, 0x02, 0xfe, 0xff }; const static unsigned char fixed[] = { 0xff, 0xff, 0xff }; static BUF_MEM *buf; -static void testfail(const char *msg, WPACKET *pkt) +static int cleanup(WPACKET *pkt) { - fprintf(stderr, "%s", msg); WPACKET_cleanup(pkt); + return 0; } static int test_WPACKET_init(void) @@ -38,90 +38,71 @@ static int test_WPACKET_init(void) size_t written; unsigned char sbuf[3]; - if (!WPACKET_init(&pkt, buf) - || !WPACKET_put_bytes_u8(&pkt, 0xff) + if (!TEST_true(WPACKET_init(&pkt, buf)) + || !TEST_true(WPACKET_put_bytes_u8(&pkt, 0xff)) /* Closing a top level WPACKET should fail */ - || WPACKET_close(&pkt) + || !TEST_false(WPACKET_close(&pkt)) /* Finishing a top level WPACKET should succeed */ - || !WPACKET_finish(&pkt) + || !TEST_true(WPACKET_finish(&pkt)) /* * Can't call close or finish on a WPACKET that's already * finished. */ - || WPACKET_close(&pkt) - || WPACKET_finish(&pkt) - || !WPACKET_get_total_written(&pkt, &written) - || written != sizeof(simple1) - || memcmp(buf->data, &simple1, written) != 0) { - testfail("test_WPACKET_init():1 failed\n", &pkt); - return 0; - } + || !TEST_false(WPACKET_close(&pkt)) + || !TEST_false(WPACKET_finish(&pkt)) + || !TEST_true(WPACKET_get_total_written(&pkt, &written)) + || !TEST_mem_eq(buf->data, written, simple1, sizeof(simple1))) + return cleanup(&pkt); /* Now try with a one byte length prefix */ - if (!WPACKET_init_len(&pkt, buf, 1) - || !WPACKET_put_bytes_u8(&pkt, 0xff) - || !WPACKET_finish(&pkt) - || !WPACKET_get_total_written(&pkt, &written) - || written != sizeof(simple2) - || memcmp(buf->data, &simple2, written) != 0) { - testfail("test_WPACKET_init():2 failed\n", &pkt); - return 0; - } + if (!TEST_true(WPACKET_init_len(&pkt, buf, 1)) + || !TEST_true(WPACKET_put_bytes_u8(&pkt, 0xff)) + || !TEST_true(WPACKET_finish(&pkt)) + || !TEST_true(WPACKET_get_total_written(&pkt, &written)) + || !TEST_mem_eq(buf->data, written, simple2, sizeof(simple2))) + return cleanup(&pkt); /* And a longer length prefix */ - if (!WPACKET_init_len(&pkt, buf, 4) - || !WPACKET_put_bytes_u8(&pkt, 0xff) - || !WPACKET_finish(&pkt) - || !WPACKET_get_total_written(&pkt, &written) - || written != sizeof(simple3) - || memcmp(buf->data, &simple3, written) != 0) { - testfail("test_WPACKET_init():3 failed\n", &pkt); - return 0; - } - - if (!WPACKET_init_len(&pkt, buf, 1)) { - testfail("test_WPACKET_init():4 failed\n", &pkt); - return 0; - } + if (!TEST_true(WPACKET_init_len(&pkt, buf, 4)) + || !TEST_true(WPACKET_put_bytes_u8(&pkt, 0xff)) + || !TEST_true(WPACKET_finish(&pkt)) + || !TEST_true(WPACKET_get_total_written(&pkt, &written)) + || !TEST_mem_eq(buf->data, written, simple3, sizeof(simple3))) + return cleanup(&pkt); + + if (!TEST_true(WPACKET_init_len(&pkt, buf, 1))) + return cleanup(&pkt); for (i = 1; i < 257; i++) { /* * Putting more bytes in than fit for the size of the length prefix * should fail */ - if ((!WPACKET_put_bytes_u8(&pkt, 0xff)) == (i != 256)) { - testfail("test_WPACKET_init():4 failed\n", &pkt); - return 0; - } - } - if (!WPACKET_finish(&pkt)) { - testfail("test_WPACKET_init():4 failed\n", &pkt); - return 0; + if (!TEST_int_eq(WPACKET_put_bytes_u8(&pkt, 0xff), i < 256)) + return cleanup(&pkt); } + if (!TEST_true(WPACKET_finish(&pkt))) + return cleanup(&pkt); /* Test initialising from a fixed size buffer */ - if (!WPACKET_init_static_len(&pkt, sbuf, sizeof(sbuf), 0) + if (!TEST_true(WPACKET_init_static_len(&pkt, sbuf, sizeof(sbuf), 0)) /* Adding 3 bytes should succeed */ - || !WPACKET_put_bytes_u24(&pkt, 0xffffff) + || !TEST_true(WPACKET_put_bytes_u24(&pkt, 0xffffff)) /* Adding 1 more byte should fail */ - || WPACKET_put_bytes_u8(&pkt, 0xff) + || !TEST_false(WPACKET_put_bytes_u8(&pkt, 0xff)) /* Finishing the top level WPACKET should succeed */ - || !WPACKET_finish(&pkt) - || !WPACKET_get_total_written(&pkt, &written) - || written != sizeof(fixed) - || memcmp(sbuf, fixed, sizeof(sbuf)) != 0 + || !TEST_true(WPACKET_finish(&pkt)) + || !TEST_true(WPACKET_get_total_written(&pkt, &written)) + || !TEST_mem_eq(sbuf, written, fixed, sizeof(sbuf)) /* Initialise with 1 len byte */ - || !WPACKET_init_static_len(&pkt, sbuf, sizeof(sbuf), 1) + || !TEST_true(WPACKET_init_static_len(&pkt, sbuf, sizeof(sbuf), 1)) /* Adding 2 bytes should succeed */ - || !WPACKET_put_bytes_u16(&pkt, 0xfeff) + || !TEST_true(WPACKET_put_bytes_u16(&pkt, 0xfeff)) /* Adding 1 more byte should fail */ - || WPACKET_put_bytes_u8(&pkt, 0xff) - || !WPACKET_finish(&pkt) - || !WPACKET_get_total_written(&pkt, &written) - || written != sizeof(alloc) - || memcmp(sbuf, alloc, written) != 0) { - testfail("test_WPACKET_init():5 failed\n", &pkt); - return 0; - } + || !TEST_false(WPACKET_put_bytes_u8(&pkt, 0xff)) + || !TEST_true(WPACKET_finish(&pkt)) + || !TEST_true(WPACKET_get_total_written(&pkt, &written)) + || !TEST_mem_eq(sbuf, written, alloc, sizeof(alloc))) + return cleanup(&pkt); return 1; } @@ -131,53 +112,44 @@ static int test_WPACKET_set_max_size(void) WPACKET pkt; size_t written; - if (!WPACKET_init(&pkt, buf) + if (!TEST_true(WPACKET_init(&pkt, buf)) /* * No previous lenbytes set so we should be ok to set the max * possible max size */ - || !WPACKET_set_max_size(&pkt, SIZE_MAX) + || !TEST_true(WPACKET_set_max_size(&pkt, SIZE_MAX)) /* We should be able to set it smaller too */ - || !WPACKET_set_max_size(&pkt, SIZE_MAX -1) + || !TEST_true(WPACKET_set_max_size(&pkt, SIZE_MAX -1)) /* And setting it bigger again should be ok */ - || !WPACKET_set_max_size(&pkt, SIZE_MAX) - || !WPACKET_finish(&pkt)) { - testfail("test_WPACKET_set_max_size():1 failed\n", &pkt); - return 0; - } + || !TEST_true(WPACKET_set_max_size(&pkt, SIZE_MAX)) + || !TEST_true(WPACKET_finish(&pkt))) + return cleanup(&pkt); - if (!WPACKET_init_len(&pkt, buf, 1) + if (!TEST_true(WPACKET_init_len(&pkt, buf, 1)) /* * Should fail because we already consumed 1 byte with the * length */ - || WPACKET_set_max_size(&pkt, 0) + || !TEST_false(WPACKET_set_max_size(&pkt, 0)) /* * Max size can't be bigger than biggest that will fit in * lenbytes */ - || WPACKET_set_max_size(&pkt, 0x0101) + || !TEST_false(WPACKET_set_max_size(&pkt, 0x0101)) /* It can be the same as the maximum possible size */ - || !WPACKET_set_max_size(&pkt, 0x0100) + || !TEST_true(WPACKET_set_max_size(&pkt, 0x0100)) /* Or it can be less */ - || !WPACKET_set_max_size(&pkt, 0x01) - /* - * Should fail because packet is already filled - */ - || WPACKET_put_bytes_u8(&pkt, 0xff) - /* - * You can't put in more bytes than max size - */ - || !WPACKET_set_max_size(&pkt, 0x02) - || !WPACKET_put_bytes_u8(&pkt, 0xff) - || WPACKET_put_bytes_u8(&pkt, 0xff) - || !WPACKET_finish(&pkt) - || !WPACKET_get_total_written(&pkt, &written) - || written != sizeof(simple2) - || memcmp(buf->data, &simple2, written) != 0) { - testfail("test_WPACKET_set_max_size():2 failed\n", &pkt); - return 0; - } + || !TEST_true(WPACKET_set_max_size(&pkt, 0x01)) + /* Should fail because packet is already filled */ + || !TEST_false(WPACKET_put_bytes_u8(&pkt, 0xff)) + /* You can't put in more bytes than max size */ + || !TEST_true(WPACKET_set_max_size(&pkt, 0x02)) + || !TEST_true(WPACKET_put_bytes_u8(&pkt, 0xff)) + || !TEST_false(WPACKET_put_bytes_u8(&pkt, 0xff)) + || !TEST_true(WPACKET_finish(&pkt)) + || !TEST_true(WPACKET_get_total_written(&pkt, &written)) + || !TEST_mem_eq(buf->data, written, simple2, sizeof(simple2))) + return cleanup(&pkt); return 1; } @@ -188,92 +160,77 @@ static int test_WPACKET_start_sub_packet(void) size_t written; size_t len; - if (!WPACKET_init(&pkt, buf) - || !WPACKET_start_sub_packet(&pkt) - || !WPACKET_put_bytes_u8(&pkt, 0xff) + if (!TEST_true(WPACKET_init(&pkt, buf)) + || !TEST_true(WPACKET_start_sub_packet(&pkt)) + || !TEST_true(WPACKET_put_bytes_u8(&pkt, 0xff)) /* Can't finish because we have a sub packet */ - || WPACKET_finish(&pkt) - || !WPACKET_close(&pkt) + || !TEST_false(WPACKET_finish(&pkt)) + || !TEST_true(WPACKET_close(&pkt)) /* Sub packet is closed so can't close again */ - || WPACKET_close(&pkt) + || !TEST_false(WPACKET_close(&pkt)) /* Now a top level so finish should succeed */ - || !WPACKET_finish(&pkt) - || !WPACKET_get_total_written(&pkt, &written) - || written != sizeof(simple1) - || memcmp(buf->data, &simple1, written) != 0) { - testfail("test_WPACKET_start_sub_packet():1 failed\n", &pkt); - return 0; - } + || !TEST_true(WPACKET_finish(&pkt)) + || !TEST_true(WPACKET_get_total_written(&pkt, &written)) + || !TEST_mem_eq(buf->data, written, simple1, sizeof(simple1))) + return cleanup(&pkt); /* Single sub-packet with length prefix */ - if (!WPACKET_init(&pkt, buf) - || !WPACKET_start_sub_packet_u8(&pkt) - || !WPACKET_put_bytes_u8(&pkt, 0xff) - || !WPACKET_close(&pkt) - || !WPACKET_finish(&pkt) - || !WPACKET_get_total_written(&pkt, &written) - || written != sizeof(simple2) - || memcmp(buf->data, &simple2, written) != 0) { - testfail("test_WPACKET_start_sub_packet():2 failed\n", &pkt); - return 0; - } + if (!TEST_true(WPACKET_init(&pkt, buf)) + || !TEST_true(WPACKET_start_sub_packet_u8(&pkt)) + || !TEST_true(WPACKET_put_bytes_u8(&pkt, 0xff)) + || !TEST_true(WPACKET_close(&pkt)) + || !TEST_true(WPACKET_finish(&pkt)) + || !TEST_true(WPACKET_get_total_written(&pkt, &written)) + || !TEST_mem_eq(buf->data, written, simple2, sizeof(simple2))) + return cleanup(&pkt); /* Nested sub-packets with length prefixes */ - if (!WPACKET_init(&pkt, buf) - || !WPACKET_start_sub_packet_u8(&pkt) - || !WPACKET_put_bytes_u8(&pkt, 0xff) - || !WPACKET_start_sub_packet_u8(&pkt) - || !WPACKET_put_bytes_u8(&pkt, 0xff) - || !WPACKET_get_length(&pkt, &len) - || len != 1 - || !WPACKET_close(&pkt) - || !WPACKET_get_length(&pkt, &len) - || len != 3 - || !WPACKET_close(&pkt) - || !WPACKET_finish(&pkt) - || !WPACKET_get_total_written(&pkt, &written) - || written != sizeof(nestedsub) - || memcmp(buf->data, &nestedsub, written) != 0) { - testfail("test_WPACKET_start_sub_packet():3 failed\n", &pkt); - return 0; - } + if (!TEST_true(WPACKET_init(&pkt, buf)) + || !TEST_true(WPACKET_start_sub_packet_u8(&pkt)) + || !TEST_true(WPACKET_put_bytes_u8(&pkt, 0xff)) + || !TEST_true(WPACKET_start_sub_packet_u8(&pkt)) + || !TEST_true(WPACKET_put_bytes_u8(&pkt, 0xff)) + || !TEST_true(WPACKET_get_length(&pkt, &len)) + || !TEST_size_t_eq(len, 1) + || !TEST_true(WPACKET_close(&pkt)) + || !TEST_true(WPACKET_get_length(&pkt, &len)) + || !TEST_size_t_eq(len, 3) + || !TEST_true(WPACKET_close(&pkt)) + || !TEST_true(WPACKET_finish(&pkt)) + || !TEST_true(WPACKET_get_total_written(&pkt, &written)) + || !TEST_mem_eq(buf->data, written, nestedsub, sizeof(nestedsub))) + return cleanup(&pkt); /* Sequential sub-packets with length prefixes */ - if (!WPACKET_init(&pkt, buf) - || !WPACKET_start_sub_packet_u8(&pkt) - || !WPACKET_put_bytes_u8(&pkt, 0xff) - || !WPACKET_close(&pkt) - || !WPACKET_start_sub_packet_u8(&pkt) - || !WPACKET_put_bytes_u8(&pkt, 0xff) - || !WPACKET_close(&pkt) - || !WPACKET_finish(&pkt) - || !WPACKET_get_total_written(&pkt, &written) - || written != sizeof(seqsub) - || memcmp(buf->data, &seqsub, written) != 0) { - testfail("test_WPACKET_start_sub_packet():4 failed\n", &pkt); - return 0; - } + if (!TEST_true(WPACKET_init(&pkt, buf)) + || !TEST_true(WPACKET_start_sub_packet_u8(&pkt)) + || !TEST_true(WPACKET_put_bytes_u8(&pkt, 0xff)) + || !TEST_true(WPACKET_close(&pkt)) + || !TEST_true(WPACKET_start_sub_packet_u8(&pkt)) + || !TEST_true(WPACKET_put_bytes_u8(&pkt, 0xff)) + || !TEST_true(WPACKET_close(&pkt)) + || !TEST_true(WPACKET_finish(&pkt)) + || !TEST_true(WPACKET_get_total_written(&pkt, &written)) + || !TEST_mem_eq(buf->data, written, seqsub, sizeof(seqsub))) + return cleanup(&pkt); /* Nested sub-packets with lengths filled before finish */ - if (!WPACKET_init(&pkt, buf) - || !WPACKET_start_sub_packet_u8(&pkt) - || !WPACKET_put_bytes_u8(&pkt, 0xff) - || !WPACKET_start_sub_packet_u8(&pkt) - || !WPACKET_put_bytes_u8(&pkt, 0xff) - || !WPACKET_get_length(&pkt, &len) - || len != 1 - || !WPACKET_close(&pkt) - || !WPACKET_get_length(&pkt, &len) - || len != 3 - || !WPACKET_close(&pkt) - || !WPACKET_fill_lengths(&pkt) - || !WPACKET_get_total_written(&pkt, &written) - || written != sizeof(nestedsub) - || memcmp(buf->data, &nestedsub, written) != 0 - || !WPACKET_finish(&pkt)) { - testfail("test_WPACKET_start_sub_packet():5 failed\n", &pkt); - return 0; - } + if (!TEST_true(WPACKET_init(&pkt, buf)) + || !TEST_true(WPACKET_start_sub_packet_u8(&pkt)) + || !TEST_true(WPACKET_put_bytes_u8(&pkt, 0xff)) + || !TEST_true(WPACKET_start_sub_packet_u8(&pkt)) + || !TEST_true(WPACKET_put_bytes_u8(&pkt, 0xff)) + || !TEST_true(WPACKET_get_length(&pkt, &len)) + || !TEST_size_t_eq(len, 1) + || !TEST_true(WPACKET_close(&pkt)) + || !TEST_true(WPACKET_get_length(&pkt, &len)) + || !TEST_size_t_eq(len, 3) + || !TEST_true(WPACKET_close(&pkt)) + || !TEST_true(WPACKET_fill_lengths(&pkt)) + || !TEST_true(WPACKET_get_total_written(&pkt, &written)) + || !TEST_mem_eq(buf->data, written, nestedsub, sizeof(nestedsub)) + || !TEST_true(WPACKET_finish(&pkt))) + return cleanup(&pkt); return 1; } @@ -285,71 +242,57 @@ static int test_WPACKET_set_flags(void) size_t written; /* Set packet to be non-zero length */ - if (!WPACKET_init(&pkt, buf) - || !WPACKET_set_flags(&pkt, WPACKET_FLAGS_NON_ZERO_LENGTH) + if (!TEST_true(WPACKET_init(&pkt, buf)) + || !TEST_true(WPACKET_set_flags(&pkt, WPACKET_FLAGS_NON_ZERO_LENGTH)) /* Should fail because of zero length */ - || WPACKET_finish(&pkt) - || !WPACKET_put_bytes_u8(&pkt, 0xff) - || !WPACKET_finish(&pkt) - || !WPACKET_get_total_written(&pkt, &written) - || written != sizeof(simple1) - || memcmp(buf->data, &simple1, written) != 0) { - testfail("test_WPACKET_set_flags():1 failed\n", &pkt); - return 0; - } + || !TEST_false(WPACKET_finish(&pkt)) + || !TEST_true(WPACKET_put_bytes_u8(&pkt, 0xff)) + || !TEST_true(WPACKET_finish(&pkt)) + || !TEST_true(WPACKET_get_total_written(&pkt, &written)) + || !TEST_mem_eq(buf->data, written, simple1, sizeof(simple1))) + return cleanup(&pkt); /* Repeat above test in a sub-packet */ - if (!WPACKET_init(&pkt, buf) - || !WPACKET_start_sub_packet(&pkt) - || !WPACKET_set_flags(&pkt, WPACKET_FLAGS_NON_ZERO_LENGTH) + if (!TEST_true(WPACKET_init(&pkt, buf)) + || !TEST_true(WPACKET_start_sub_packet(&pkt)) + || !TEST_true(WPACKET_set_flags(&pkt, WPACKET_FLAGS_NON_ZERO_LENGTH)) /* Should fail because of zero length */ - || WPACKET_close(&pkt) - || !WPACKET_put_bytes_u8(&pkt, 0xff) - || !WPACKET_close(&pkt) - || !WPACKET_finish(&pkt) - || !WPACKET_get_total_written(&pkt, &written) - || written != sizeof(simple1) - || memcmp(buf->data, &simple1, written) != 0) { - testfail("test_WPACKET_set_flags():2 failed\n", &pkt); - return 0; - } + || !TEST_false(WPACKET_close(&pkt)) + || !TEST_true(WPACKET_put_bytes_u8(&pkt, 0xff)) + || !TEST_true(WPACKET_close(&pkt)) + || !TEST_true(WPACKET_finish(&pkt)) + || !TEST_true(WPACKET_get_total_written(&pkt, &written)) + || !TEST_mem_eq(buf->data, written, simple1, sizeof(simple1))) + return cleanup(&pkt); /* Set packet to abandon non-zero length */ - if (!WPACKET_init_len(&pkt, buf, 1) - || !WPACKET_set_flags(&pkt, WPACKET_FLAGS_ABANDON_ON_ZERO_LENGTH) - || !WPACKET_finish(&pkt) - || !WPACKET_get_total_written(&pkt, &written) - || written != 0) { - testfail("test_WPACKET_set_flags():3 failed\n", &pkt); - return 0; - } + if (!TEST_true(WPACKET_init_len(&pkt, buf, 1)) + || !TEST_true(WPACKET_set_flags(&pkt, WPACKET_FLAGS_ABANDON_ON_ZERO_LENGTH)) + || !TEST_true(WPACKET_finish(&pkt)) + || !TEST_true(WPACKET_get_total_written(&pkt, &written)) + || !TEST_size_t_eq(written, 0)) + return cleanup(&pkt); /* Repeat above test but only abandon a sub-packet */ - if (!WPACKET_init_len(&pkt, buf, 1) - || !WPACKET_start_sub_packet_u8(&pkt) - || !WPACKET_set_flags(&pkt, WPACKET_FLAGS_ABANDON_ON_ZERO_LENGTH) - || !WPACKET_close(&pkt) - || !WPACKET_finish(&pkt) - || !WPACKET_get_total_written(&pkt, &written) - || written != sizeof(empty) - || memcmp(buf->data, &empty, written) != 0) { - testfail("test_WPACKET_set_flags():4 failed\n", &pkt); - return 0; - } + if (!TEST_true(WPACKET_init_len(&pkt, buf, 1)) + || !TEST_true(WPACKET_start_sub_packet_u8(&pkt)) + || !TEST_true(WPACKET_set_flags(&pkt, WPACKET_FLAGS_ABANDON_ON_ZERO_LENGTH)) + || !TEST_true(WPACKET_close(&pkt)) + || !TEST_true(WPACKET_finish(&pkt)) + || !TEST_true(WPACKET_get_total_written(&pkt, &written)) + || !TEST_mem_eq(buf->data, written, empty, sizeof(empty))) + return cleanup(&pkt); /* And repeat with a non empty sub-packet */ - if (!WPACKET_init(&pkt, buf) - || !WPACKET_start_sub_packet_u8(&pkt) - || !WPACKET_set_flags(&pkt, WPACKET_FLAGS_ABANDON_ON_ZERO_LENGTH) - || !WPACKET_put_bytes_u8(&pkt, 0xff) - || !WPACKET_close(&pkt) - || !WPACKET_finish(&pkt) - || !WPACKET_get_total_written(&pkt, &written) - || written != sizeof(simple2) - || memcmp(buf->data, &simple2, written) != 0) { - testfail("test_WPACKET_set_flags():5 failed\n", &pkt); - return 0; - } + if (!TEST_true(WPACKET_init(&pkt, buf)) + || !TEST_true(WPACKET_start_sub_packet_u8(&pkt)) + || !TEST_true(WPACKET_set_flags(&pkt, WPACKET_FLAGS_ABANDON_ON_ZERO_LENGTH)) + || !TEST_true(WPACKET_put_bytes_u8(&pkt, 0xff)) + || !TEST_true(WPACKET_close(&pkt)) + || !TEST_true(WPACKET_finish(&pkt)) + || !TEST_true(WPACKET_get_total_written(&pkt, &written)) + || !TEST_mem_eq(buf->data, written, simple2, sizeof(simple2))) + return cleanup(&pkt); return 1; } @@ -359,36 +302,26 @@ static int test_WPACKET_allocate_bytes(void) size_t written; unsigned char *bytes; - if (!WPACKET_init_len(&pkt, buf, 1) - || !WPACKET_allocate_bytes(&pkt, 2, &bytes)) { - testfail("test_WPACKET_allocate_bytes():1 failed\n", &pkt); - return 0; - } + if (!TEST_true(WPACKET_init_len(&pkt, buf, 1)) + || !TEST_true(WPACKET_allocate_bytes(&pkt, 2, &bytes))) + return cleanup(&pkt); bytes[0] = 0xfe; bytes[1] = 0xff; - if (!WPACKET_finish(&pkt) - || !WPACKET_get_total_written(&pkt, &written) - || written != sizeof(alloc) - || memcmp(buf->data, &alloc, written) != 0) { - testfail("test_WPACKET_allocate_bytes():2 failed\n", &pkt); - return 0; - } + if (!TEST_true(WPACKET_finish(&pkt)) + || !TEST_true(WPACKET_get_total_written(&pkt, &written)) + || !TEST_mem_eq(buf->data, written, alloc, sizeof(alloc))) + return cleanup(&pkt); /* Repeat with WPACKET_sub_allocate_bytes */ - if (!WPACKET_init_len(&pkt, buf, 1) - || !WPACKET_sub_allocate_bytes_u8(&pkt, 2, &bytes)) { - testfail("test_WPACKET_allocate_bytes():3 failed\n", &pkt); - return 0; - } + if (!TEST_true(WPACKET_init_len(&pkt, buf, 1)) + || !TEST_true(WPACKET_sub_allocate_bytes_u8(&pkt, 2, &bytes))) + return cleanup(&pkt); bytes[0] = 0xfe; bytes[1] = 0xff; - if (!WPACKET_finish(&pkt) - || !WPACKET_get_total_written(&pkt, &written) - || written != sizeof(submem) - || memcmp(buf->data, &submem, written) != 0) { - testfail("test_WPACKET_allocate_bytes():4 failed\n", &pkt); - return 0; - } + if (!TEST_true(WPACKET_finish(&pkt)) + || !TEST_true(WPACKET_get_total_written(&pkt, &written)) + || !TEST_mem_eq(buf->data, written, submem, sizeof(submem))) + return cleanup(&pkt); return 1; } @@ -399,26 +332,20 @@ static int test_WPACKET_memcpy(void) size_t written; const unsigned char bytes[] = { 0xfe, 0xff }; - if (!WPACKET_init_len(&pkt, buf, 1) - || !WPACKET_memcpy(&pkt, bytes, sizeof(bytes)) - || !WPACKET_finish(&pkt) - || !WPACKET_get_total_written(&pkt, &written) - || written != sizeof(alloc) - || memcmp(buf->data, &alloc, written) != 0) { - testfail("test_WPACKET_memcpy():1 failed\n", &pkt); - return 0; - } + if (!TEST_true(WPACKET_init_len(&pkt, buf, 1)) + || !TEST_true(WPACKET_memcpy(&pkt, bytes, sizeof(bytes))) + || !TEST_true(WPACKET_finish(&pkt)) + || !TEST_true(WPACKET_get_total_written(&pkt, &written)) + || !TEST_mem_eq(buf->data, written, alloc, sizeof(alloc))) + return cleanup(&pkt); /* Repeat with WPACKET_sub_memcpy() */ - if (!WPACKET_init_len(&pkt, buf, 1) - || !WPACKET_sub_memcpy_u8(&pkt, bytes, sizeof(bytes)) - || !WPACKET_finish(&pkt) - || !WPACKET_get_total_written(&pkt, &written) - || written != sizeof(submem) - || memcmp(buf->data, &submem, written) != 0) { - testfail("test_WPACKET_memcpy():2 failed\n", &pkt); - return 0; - } + if (!TEST_true(WPACKET_init_len(&pkt, buf, 1)) + || !TEST_true(WPACKET_sub_memcpy_u8(&pkt, bytes, sizeof(bytes))) + || !TEST_true(WPACKET_finish(&pkt)) + || !TEST_true(WPACKET_get_total_written(&pkt, &written)) + || !TEST_mem_eq(buf->data, written, submem, sizeof(submem))) + return cleanup(&pkt); return 1; } @@ -427,19 +354,17 @@ int test_main(int argc, char *argv[]) { int testresult = 0; - buf = BUF_MEM_new(); - if (buf != NULL) { - ADD_TEST(test_WPACKET_init); - ADD_TEST(test_WPACKET_set_max_size); - ADD_TEST(test_WPACKET_start_sub_packet); - ADD_TEST(test_WPACKET_set_flags); - ADD_TEST(test_WPACKET_allocate_bytes); - ADD_TEST(test_WPACKET_memcpy); - - testresult = run_tests(argv[0]); + if (!TEST_ptr(buf = BUF_MEM_new())) + return 0; - BUF_MEM_free(buf); - } + ADD_TEST(test_WPACKET_init); + ADD_TEST(test_WPACKET_set_max_size); + ADD_TEST(test_WPACKET_start_sub_packet); + ADD_TEST(test_WPACKET_set_flags); + ADD_TEST(test_WPACKET_allocate_bytes); + ADD_TEST(test_WPACKET_memcpy); + testresult = run_tests(argv[0]); + BUF_MEM_free(buf); return testresult; } From builds at travis-ci.org Tue Apr 18 21:10:38 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 18 Apr 2017 21:10:38 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10387 (master - adcd8e3) In-Reply-To: Message-ID: <58f680ce5b4da_43fdff9696f18109615a@e5cbb263-969a-49d7-b63c-a8c08ece7945.mail> Build Update for openssl/openssl ------------------------------------- Build: #10387 Status: Still Failing Duration: 20 minutes and 30 seconds Commit: adcd8e3 (master) Author: Rich Salz Message: Convert more tests ct_test,evp_extra_test,wpackettest,packettest Add strncmp TEST wrappers And make some style/consistency fixes to ct_test Silence travis; gcc bug? Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3234) View the changeset: https://github.com/openssl/openssl/compare/f3ab6c16c424...adcd8e37db68 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/223313237 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From levitte at openssl.org Tue Apr 18 21:47:15 2017 From: levitte at openssl.org (Richard Levitte) Date: Tue, 18 Apr 2017 21:47:15 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492552035.610242.8311.nullmailer@dev.openssl.org> The branch master has been updated via edd689efbfa26a657a5d8310f43a4f11d29a460e (commit) via 19eaee749d3b460246d9feadea350b22fa329f03 (commit) from adcd8e37db682a5818415b1e0e1d8847dd9ab1e6 (commit) - Log ----------------------------------------------------------------- commit edd689efbfa26a657a5d8310f43a4f11d29a460e Author: Richard Levitte Date: Tue Apr 18 23:30:57 2017 +0200 VMS: Fix internals test programs The internals test programs access header files that aren't guarded by the public __DECC_INCLUDE_PROLOGUE.H and __DECC_INCLUDE_EPILOGUE.H files, and therefore have no idea what the naming convention is. Therefore, we need to specify that explicitely in the internals test programs, since they aren't built with the same naming convention as the library they belong with. Reviewed-by: Tim Hudson (Merged from https://github.com/openssl/openssl/pull/3247) commit 19eaee749d3b460246d9feadea350b22fa329f03 Author: Richard Levitte Date: Tue Apr 18 22:50:10 2017 +0200 VMS: Fix the passing of cflags for things not being installed When building object files for libraries, information whether the library would be installed or not wasn't passed down to the object file building rules. Also, make it so settings like |no_inst_lib_cflags| can be the empty string. Reviewed-by: Tim Hudson (Merged from https://github.com/openssl/openssl/pull/3247) ----------------------------------------------------------------------- Summary of changes: Configurations/10-main.conf | 6 +++--- Configurations/common.tmpl | 2 +- Configurations/descrip.mms.tmpl | 12 ++++++------ test/asn1_internal_test.c | 10 ++++++++++ test/chacha_internal_test.c | 10 ++++++++++ test/poly1305_internal_test.c | 11 +++++++++++ test/siphash_internal_test.c | 11 +++++++++++ test/tls13encryptiontest.c | 10 ++++++++++ test/tls13secretstest.c | 10 ++++++++++ test/uitest.c | 11 +---------- test/wpackettest.c | 11 +++++++++++ test/x509_internal_test.c | 9 +++++++++ 12 files changed, 93 insertions(+), 20 deletions(-) diff --git a/Configurations/10-main.conf b/Configurations/10-main.conf index 09c0f2d..6a86b35 100644 --- a/Configurations/10-main.conf +++ b/Configurations/10-main.conf @@ -1789,9 +1789,9 @@ sub vms_info { debug => "/DEBUG/TRACEBACK", release => "/NODEBUG/NOTRACEBACK"), lib_cflags => add("/NAMES=(AS_IS,SHORTENED)/EXTERN_MODEL=STRICT_REFDEF"), - # no_inst_bin_cflags is used instead of bin_cflags by descrip.mms.tmpl - # for object files belonging to selected internal programs - no_inst_bin_cflags => "/NAMES=(AS_IS,SHORTENED)", + # no_inst_lib_cflags is used instead of lib_cflags by descrip.mms.tmpl + # for object files belonging to selected internal libraries + no_inst_lib_cflags => "", shared_target => "vms-shared", dso_scheme => "vms", thread_scheme => "pthreads", diff --git a/Configurations/common.tmpl b/Configurations/common.tmpl index 5fd6b97..5e9cb36 100644 --- a/Configurations/common.tmpl +++ b/Configurations/common.tmpl @@ -133,7 +133,7 @@ objs => [ map { (my $x = $_) =~ s|\.o$||; $x } @{$unified_info{sources}->{$lib}} ]); foreach (@{$unified_info{sources}->{$lib}}) { - doobj($_, $lib, intent => "lib"); + doobj($_, $lib, intent => "lib", installed => is_installed($lib)); } $cache{$lib} = 1; } diff --git a/Configurations/descrip.mms.tmpl b/Configurations/descrip.mms.tmpl index b6eb94a..5b4b109 100644 --- a/Configurations/descrip.mms.tmpl +++ b/Configurations/descrip.mms.tmpl @@ -157,12 +157,12 @@ CFLAGS_Q=$(CFLAGS) DEPFLAG= /DEFINE=({- join(",", @{$config{depdefines}}) -}) LDFLAGS= {- $target{lflags} -} EX_LIBS= {- $target{ex_libs} ? ",".$target{ex_libs} : "" -}{- $config{ex_libs} ? ",".$config{ex_libs} : "" -} -LIB_CFLAGS={- $target{lib_cflags} || "" -} -DSO_CFLAGS={- $target{dso_cflags} || "" -} -BIN_CFLAGS={- $target{bin_cflags} || "" -} -NO_INST_LIB_CFLAGS={- $target{no_inst_lib_cflags} || '$(LIB_CFLAGS)' -} -NO_INST_DSO_CFLAGS={- $target{no_inst_dso_cflags} || '$(DSO_CFLAGS)' -} -NO_INST_BIN_CFLAGS={- $target{no_inst_bin_cflags} || '$(BIN_CFLAGS)' -} +LIB_CFLAGS={- $target{lib_cflags} // "" -} +DSO_CFLAGS={- $target{dso_cflags} // "" -} +BIN_CFLAGS={- $target{bin_cflags} // "" -} +NO_INST_LIB_CFLAGS={- $target{no_inst_lib_cflags} // '$(LIB_CFLAGS)' -} +NO_INST_DSO_CFLAGS={- $target{no_inst_dso_cflags} // '$(DSO_CFLAGS)' -} +NO_INST_BIN_CFLAGS={- $target{no_inst_bin_cflags} // '$(BIN_CFLAGS)' -} PERL={- $config{perl} -} diff --git a/test/asn1_internal_test.c b/test/asn1_internal_test.c index f936098..6dc8a11 100644 --- a/test/asn1_internal_test.c +++ b/test/asn1_internal_test.c @@ -59,7 +59,17 @@ static int test_tbl_standard() * ***/ +#ifdef __VMS +# pragma names save +# pragma names as_is,shortened +#endif + #include "internal/asn1_int.h" + +#ifdef __VMS +# pragma names restore +#endif + #include "../crypto/asn1/standard_methods.h" static int test_standard_methods() diff --git a/test/chacha_internal_test.c b/test/chacha_internal_test.c index 0c0be9b..1c8d90a 100644 --- a/test/chacha_internal_test.c +++ b/test/chacha_internal_test.c @@ -16,8 +16,18 @@ #include #include "test_main.h" #include "testutil.h" + +#ifdef __VMS +# pragma names save +# pragma names as_is,shortened +#endif + #include "internal/chacha.h" +#ifdef __VMS +# pragma names restore +#endif + const static unsigned int key[] = { 0x03020100, 0x07060504, 0x0b0a0908, 0x0f0e0d0c, 0x13121110, 0x17161514, 0x1b1a1918, 0x1f1e1d1c diff --git a/test/poly1305_internal_test.c b/test/poly1305_internal_test.c index 03b0fa9..1ede874 100644 --- a/test/poly1305_internal_test.c +++ b/test/poly1305_internal_test.c @@ -14,7 +14,18 @@ #include "testutil.h" #include "test_main_custom.h" + +#ifdef __VMS +# pragma names save +# pragma names as_is,shortened +#endif + #include "internal/poly1305.h" + +#ifdef __VMS +# pragma names restore +#endif + #include "../crypto/poly1305/poly1305_local.h" #include "e_os.h" diff --git a/test/siphash_internal_test.c b/test/siphash_internal_test.c index fd097e0..2df7f39 100644 --- a/test/siphash_internal_test.c +++ b/test/siphash_internal_test.c @@ -15,7 +15,18 @@ #include #include "testutil.h" #include "test_main_custom.h" + +#ifdef __VMS +# pragma names save +# pragma names as_is,shortened +#endif + #include "internal/siphash.h" + +#ifdef __VMS +# pragma names restore +#endif + #include "../crypto/siphash/siphash_local.h" #include "e_os.h" diff --git a/test/tls13encryptiontest.c b/test/tls13encryptiontest.c index 8137847..c60d3b6 100644 --- a/test/tls13encryptiontest.c +++ b/test/tls13encryptiontest.c @@ -9,9 +9,19 @@ #include #include + +#ifdef __VMS +# pragma names save +# pragma names as_is,shortened +#endif + #include "../ssl/ssl_locl.h" #include "../ssl/record/record_locl.h" +#ifdef __VMS +# pragma names restore +#endif + #include "testutil.h" #include "test_main.h" diff --git a/test/tls13secretstest.c b/test/tls13secretstest.c index 46ccd19..e74c486 100644 --- a/test/tls13secretstest.c +++ b/test/tls13secretstest.c @@ -9,8 +9,18 @@ #include #include + +#ifdef __VMS +# pragma names save +# pragma names as_is,shortened +#endif + #include "../ssl/ssl_locl.h" +#ifdef __VMS +# pragma names restore +#endif + #include "testutil.h" #include "test_main.h" diff --git a/test/uitest.c b/test/uitest.c index 0000505..574412d 100644 --- a/test/uitest.c +++ b/test/uitest.c @@ -13,23 +13,14 @@ #include /* - * We know that on VMS, the [.apps] object files are compiled with uppercased - * symbols. We must therefore follow suit, or there will be linking errors. - * Additionally, the VMS build does stdio via a socketpair. + * The VMS build does stdio via a socketpair. */ #ifdef __VMS -# pragma names save -# pragma names uppercase, truncated - # include "../apps/vms_term_sock.h" #endif #include "../apps/apps.h" -#ifdef __VMS -# pragma names restore -#endif - #include "testutil.h" #include "test_main_custom.h" diff --git a/test/wpackettest.c b/test/wpackettest.c index 2546ef3..a37fab7 100644 --- a/test/wpackettest.c +++ b/test/wpackettest.c @@ -9,7 +9,18 @@ #include #include + +#ifdef __VMS +# pragma names save +# pragma names as_is,shortened +#endif + #include "../ssl/packet_locl.h" + +#ifdef __VMS +# pragma names restore +#endif + #include "testutil.h" #include "test_main_custom.h" diff --git a/test/x509_internal_test.c b/test/x509_internal_test.c index d602efc..0a3a9be 100644 --- a/test/x509_internal_test.c +++ b/test/x509_internal_test.c @@ -24,9 +24,18 @@ * ***/ +#ifdef __VMS +# pragma names save +# pragma names as_is,shortened +#endif + #include "../crypto/x509v3/ext_dat.h" #include "../crypto/x509v3/standard_exts.h" +#ifdef __VMS +# pragma names restore +#endif + static int test_standard_exts() { size_t i; From builds at travis-ci.org Tue Apr 18 22:12:22 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 18 Apr 2017 22:12:22 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10392 (master - edd689e) In-Reply-To: Message-ID: <58f68f5fe7807_43fdff6c0e5701174359@e5cbb263-969a-49d7-b63c-a8c08ece7945.mail> Build Update for openssl/openssl ------------------------------------- Build: #10392 Status: Still Failing Duration: 22 minutes and 25 seconds Commit: edd689e (master) Author: Richard Levitte Message: VMS: Fix internals test programs The internals test programs access header files that aren't guarded by the public __DECC_INCLUDE_PROLOGUE.H and __DECC_INCLUDE_EPILOGUE.H files, and therefore have no idea what the naming convention is. Therefore, we need to specify that explicitely in the internals test programs, since they aren't built with the same naming convention as the library they belong with. Reviewed-by: Tim Hudson (Merged from https://github.com/openssl/openssl/pull/3247) View the changeset: https://github.com/openssl/openssl/compare/adcd8e37db68...edd689efbfa2 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/223334541 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Tue Apr 18 22:37:29 2017 From: no-reply at appveyor.com (AppVeyor) Date: Tue, 18 Apr 2017 22:37:29 +0000 Subject: [openssl-commits] Build failed: openssl master.9707 Message-ID: <20170418223729.60427.57923.78F94298@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Wed Apr 19 00:44:16 2017 From: no-reply at appveyor.com (AppVeyor) Date: Wed, 19 Apr 2017 00:44:16 +0000 Subject: [openssl-commits] Build completed: openssl master.9708 Message-ID: <20170419004416.22918.46268.B5677966@appveyor.com> An HTML attachment was scrubbed... URL: From rsalz at openssl.org Wed Apr 19 01:48:37 2017 From: rsalz at openssl.org (Rich Salz) Date: Wed, 19 Apr 2017 01:48:37 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492566517.904721.18431.nullmailer@dev.openssl.org> The branch master has been updated via 93d02986656bf4a3ae145f65afc1ca52d2810950 (commit) from edd689efbfa26a657a5d8310f43a4f11d29a460e (commit) - Log ----------------------------------------------------------------- commit 93d02986656bf4a3ae145f65afc1ca52d2810950 Author: Rich Salz Date: Wed Apr 12 20:25:53 2017 -0400 Convert dhtest, dsatest, cipherbytes_test Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3209) ----------------------------------------------------------------------- Summary of changes: test/build.info | 10 +-- test/cipherbytes_test.c | 147 +++++++++++++++++++-------------- test/dhtest.c | 215 +++++++++++++++--------------------------------- test/dsatest.c | 104 ++++++----------------- 4 files changed, 181 insertions(+), 295 deletions(-) diff --git a/test/build.info b/test/build.info index 01b4c68..0b0bf8e 100644 --- a/test/build.info +++ b/test/build.info @@ -115,8 +115,8 @@ IF[{- !$disabled{tests} -}] INCLUDE[randtest]=../include DEPEND[randtest]=../libcrypto - SOURCE[dhtest]=dhtest.c - INCLUDE[dhtest]=../include + SOURCE[dhtest]=dhtest.c testutil.c test_main.c + INCLUDE[dhtest]=.. ../include DEPEND[dhtest]=../libcrypto SOURCE[enginetest]=enginetest.c testutil.c test_main.c @@ -135,8 +135,8 @@ IF[{- !$disabled{tests} -}] INCLUDE[ssltest_old]=.. ../include DEPEND[ssltest_old]=../libcrypto ../libssl - SOURCE[dsatest]=dsatest.c - INCLUDE[dsatest]=../include + SOURCE[dsatest]=dsatest.c testutil.c test_main.c + INCLUDE[dsatest]=.. ../include DEPEND[dsatest]=../libcrypto SOURCE[exptest]=exptest.c @@ -321,7 +321,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[uitest]=.. ../include DEPEND[uitest]=../libcrypto ../libssl - SOURCE[cipherbytes_test]=cipherbytes_test.c + SOURCE[cipherbytes_test]=cipherbytes_test.c testutil.c test_main_custom.c INCLUDE[cipherbytes_test]=.. ../include DEPEND[cipherbytes_test]=../libcrypto ../libssl diff --git a/test/cipherbytes_test.c b/test/cipherbytes_test.c index 90a4c93..00e361b 100644 --- a/test/cipherbytes_test.c +++ b/test/cipherbytes_test.c @@ -19,110 +19,133 @@ #include #include "e_os.h" +#include "testutil.h" +#include "test_main_custom.h" -static int test_empty(SSL *s) +static SSL_CTX *ctx; +static SSL *s; + +static int test_empty(void) { STACK_OF(SSL_CIPHER) *sk = NULL, *scsv = NULL; const unsigned char bytes[] = {0x00}; + int ret = 0; + + if (!TEST_int_eq(SSL_bytes_to_cipher_list(s, bytes, 0, 0, &sk, &scsv), 0) + || !TEST_ptr_null(sk) + || !TEST_ptr_null(scsv)) + goto err; + ret = 1; - if (SSL_bytes_to_cipher_list(s, bytes, 0, 0, &sk, &scsv) || - sk != NULL || scsv != NULL) - return 0; - return 1; +err: + sk_SSL_CIPHER_free(sk); + sk_SSL_CIPHER_free(scsv); + return ret; } -static int test_unsupported(SSL *s) +static int test_unsupported(void) { STACK_OF(SSL_CIPHER) *sk, *scsv; /* ECDH-RSA-AES256 (unsupported), ECDHE-ECDSA-AES128, */ const unsigned char bytes[] = {0xc0, 0x0f, 0x00, 0x2f, 0x01, 0x00}; - - if (!SSL_bytes_to_cipher_list(s, bytes, sizeof(bytes), 0, &sk, &scsv) || - sk == NULL || sk_SSL_CIPHER_num(sk) != 1 || scsv == NULL || - sk_SSL_CIPHER_num(scsv) != 0) - return 0; - if (strcmp(SSL_CIPHER_get_name(sk_SSL_CIPHER_value(sk, 0)), - "AES128-SHA") != 0) - return 0; - + int ret = 0; + + if (!TEST_true(SSL_bytes_to_cipher_list(s, bytes, sizeof(bytes), + 0, &sk, &scsv)) + || !TEST_ptr(sk) + || !TEST_int_eq(sk_SSL_CIPHER_num(sk), 1) + || !TEST_ptr(scsv) + || !TEST_int_eq(sk_SSL_CIPHER_num(scsv), 0) + || !TEST_str_eq(SSL_CIPHER_get_name(sk_SSL_CIPHER_value(sk, 0)), + "AES128-SHA")) + goto err; + + ret = 1; +err: sk_SSL_CIPHER_free(sk); sk_SSL_CIPHER_free(scsv); - return 1; + return ret; } -static int test_v2(SSL *s) +static int test_v2(void) { STACK_OF(SSL_CIPHER) *sk, *scsv; /* ECDHE-ECDSA-AES256GCM, SSL2_RC4_1238_WITH_MD5, * ECDHE-ECDSA-CHACHA20-POLY1305 */ const unsigned char bytes[] = {0x00, 0x00, 0x35, 0x01, 0x00, 0x80, 0x00, 0x00, 0x33}; - - if (!SSL_bytes_to_cipher_list(s, bytes, sizeof(bytes), 1, &sk, &scsv) || - sk == NULL || sk_SSL_CIPHER_num(sk) != 2 || scsv == NULL || - sk_SSL_CIPHER_num(scsv) != 0) - return 0; + int ret = 0; + + if (!TEST_true(SSL_bytes_to_cipher_list(s, bytes, sizeof(bytes), 1, + &sk, &scsv)) + || !TEST_ptr(sk) + || !TEST_int_eq(sk_SSL_CIPHER_num(sk), 2) + || !TEST_ptr(scsv) + || !TEST_int_eq(sk_SSL_CIPHER_num(scsv), 0)) + goto err; if (strcmp(SSL_CIPHER_get_name(sk_SSL_CIPHER_value(sk, 0)), "AES256-SHA") != 0 || strcmp(SSL_CIPHER_get_name(sk_SSL_CIPHER_value(sk, 1)), "DHE-RSA-AES128-SHA") != 0) - return 0; + goto err; + + ret = 1; + +err: sk_SSL_CIPHER_free(sk); sk_SSL_CIPHER_free(scsv); - return 1; + return ret; } -static int test_v3(SSL *s) +static int test_v3(void) { - STACK_OF(SSL_CIPHER) *sk, *scsv; + STACK_OF(SSL_CIPHER) *sk = NULL, *scsv = NULL; /* ECDHE-ECDSA-AES256GCM, ECDHE-ECDSA-CHACHAPOLY, DHE-RSA-AES256GCM, * EMPTY-RENEGOTIATION-INFO-SCSV, FALLBACK-SCSV */ const unsigned char bytes[] = {0x00, 0x2f, 0x00, 0x33, 0x00, 0x9f, 0x00, 0xff, 0x56, 0x00}; - - if (!SSL_bytes_to_cipher_list(s, bytes, sizeof(bytes), 0, &sk, &scsv) || - sk == NULL || sk_SSL_CIPHER_num(sk) != 3 || scsv == NULL || - sk_SSL_CIPHER_num(scsv) != 2) - return 0; - if (strcmp(SSL_CIPHER_get_name(sk_SSL_CIPHER_value(sk, 0)), - "AES128-SHA") != 0 || - strcmp(SSL_CIPHER_get_name(sk_SSL_CIPHER_value(sk, 1)), - "DHE-RSA-AES128-SHA") != 0 || - strcmp(SSL_CIPHER_get_name(sk_SSL_CIPHER_value(sk, 2)), - "DHE-RSA-AES256-GCM-SHA384") != 0 || - strcmp(SSL_CIPHER_get_name(sk_SSL_CIPHER_value(scsv, 0)), - "TLS_EMPTY_RENEGOTIATION_INFO_SCSV") != 0 || - strcmp(SSL_CIPHER_get_name(sk_SSL_CIPHER_value(scsv, 1)), - "TLS_FALLBACK_SCSV") != 0) - return 0; + int ret = 0; + + if (!SSL_bytes_to_cipher_list(s, bytes, sizeof(bytes), 0, &sk, &scsv) + || !TEST_ptr(sk) + || !TEST_int_eq(sk_SSL_CIPHER_num(sk), 3) + || !TEST_ptr(scsv) + || !TEST_int_eq(sk_SSL_CIPHER_num(scsv), 2) + || !TEST_str_eq(SSL_CIPHER_get_name(sk_SSL_CIPHER_value(sk, 0)), + "AES128-SHA") + || !TEST_str_eq(SSL_CIPHER_get_name(sk_SSL_CIPHER_value(sk, 1)), + "DHE-RSA-AES128-SHA") + || !TEST_str_eq(SSL_CIPHER_get_name(sk_SSL_CIPHER_value(sk, 2)), + "DHE-RSA-AES256-GCM-SHA384") + || !TEST_str_eq(SSL_CIPHER_get_name(sk_SSL_CIPHER_value(scsv, 0)), + "TLS_EMPTY_RENEGOTIATION_INFO_SCSV") + || !TEST_str_eq(SSL_CIPHER_get_name(sk_SSL_CIPHER_value(scsv, 1)), + "TLS_FALLBACK_SCSV")) + goto err; + + ret = 1; +err: sk_SSL_CIPHER_free(sk); sk_SSL_CIPHER_free(scsv); - return 1; + return ret; } -int main(int argc, char **argv) +int test_main(int argc, char **argv) { - SSL_CTX *ctx; - SSL *s; + int ret; - ctx = SSL_CTX_new(TLS_server_method()); - s = SSL_new(ctx); - OPENSSL_assert(s != NULL); + if (!TEST_ptr(ctx = SSL_CTX_new(TLS_server_method())) + || !TEST_ptr(s = SSL_new(ctx))) + return EXIT_FAILURE; - if (!test_empty(s)) - return 1; + ADD_TEST(test_empty); + ADD_TEST(test_unsupported); + ADD_TEST(test_v2); + ADD_TEST(test_v3); + ret = run_tests(argv[0]); - if (!test_unsupported(s)) - return 1; - - if (!test_v2(s)) - return 1; - - if (!test_v3(s)) - return 1; - - printf("PASS\n"); SSL_free(s); SSL_CTX_free(ctx); - return 0; + + return ret; } diff --git a/test/dhtest.c b/test/dhtest.c index 2847c5c..196535b 100644 --- a/test/dhtest.c +++ b/test/dhtest.c @@ -11,13 +11,14 @@ #include #include -#include "../e_os.h" - +#include "e_os.h" #include #include #include #include #include +#include "test_main.h" +#include "testutil.h" #ifdef OPENSSL_NO_DH int main(int argc, char *argv[]) @@ -33,125 +34,68 @@ static int cb(int p, int n, BN_GENCB *arg); static const char rnd_seed[] = "string to make the random number generator think it has entropy"; -static int run_rfc5114_tests(void); - -int main(int argc, char *argv[]) +static int dh_test(void) { BN_GENCB *_cb = NULL; DH *a = NULL; DH *b = NULL; - const BIGNUM *ap = NULL, *ag = NULL, *apub_key = NULL, *priv_key = NULL; + const BIGNUM *ap = NULL, *ag = NULL, *apub_key = NULL; const BIGNUM *bpub_key = NULL; BIGNUM *bp = NULL, *bg = NULL; - char buf[12] = {0}; unsigned char *abuf = NULL; unsigned char *bbuf = NULL; int i, alen, blen, aout, bout; int ret = 1; - BIO *out = NULL; - - CRYPTO_set_mem_debug(1); - CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON); RAND_seed(rnd_seed, sizeof rnd_seed); - out = BIO_new(BIO_s_file()); - if (out == NULL) - EXIT(1); - BIO_set_fp(out, stdout, BIO_NOCLOSE | BIO_FP_TEXT); - - _cb = BN_GENCB_new(); - if (_cb == NULL) + if (!TEST_ptr(_cb = BN_GENCB_new())) goto err; - BN_GENCB_set(_cb, &cb, out); - if (((a = DH_new()) == NULL) - || (!DH_generate_parameters_ex(a, 64, DH_GENERATOR_5, _cb))) + BN_GENCB_set(_cb, &cb, NULL); + if (!TEST_ptr(a = DH_new()) + || !TEST_true(DH_generate_parameters_ex(a, 64, + DH_GENERATOR_5, _cb))) goto err; if (!DH_check(a, &i)) goto err; - if (i & DH_CHECK_P_NOT_PRIME) - BIO_puts(out, "p value is not prime\n"); - if (i & DH_CHECK_P_NOT_SAFE_PRIME) - BIO_puts(out, "p value is not a safe prime\n"); - if (i & DH_UNABLE_TO_CHECK_GENERATOR) - BIO_puts(out, "unable to check the generator value\n"); - if (i & DH_NOT_SUITABLE_GENERATOR) - BIO_puts(out, "the g value is not a generator\n"); - - DH_get0_pqg(a, &ap, NULL, &ag); - BIO_puts(out, "\np ="); - BN_print(out, ap); - BIO_puts(out, "\ng ="); - BN_print(out, ag); - BIO_puts(out, "\n"); - - b = DH_new(); - if (b == NULL) + if (TEST_false(i & DH_CHECK_P_NOT_PRIME) + || TEST_false(i & DH_CHECK_P_NOT_SAFE_PRIME) + || TEST_false(i & DH_UNABLE_TO_CHECK_GENERATOR) + || TEST_false(i & DH_NOT_SUITABLE_GENERATOR)) goto err; - bp = BN_dup(ap); - bg = BN_dup(ag); - if ((bp == NULL) || (bg == NULL) || !DH_set0_pqg(b, bp, NULL, bg)) + if (!TEST_ptr(b = DH_new())) + goto err; + + if (!TEST_ptr(bp = BN_dup(ap)) + || !TEST_ptr(bg = BN_dup(ag)) + || !TEST_true(DH_set0_pqg(b, bp, NULL, bg))) goto err; bp = bg = NULL; if (!DH_generate_key(a)) goto err; - DH_get0_key(a, &apub_key, &priv_key); - BIO_puts(out, "pri 1="); - BN_print(out, priv_key); - BIO_puts(out, "\npub 1="); - BN_print(out, apub_key); - BIO_puts(out, "\n"); if (!DH_generate_key(b)) goto err; - DH_get0_key(b, &bpub_key, &priv_key); - BIO_puts(out, "pri 2="); - BN_print(out, priv_key); - BIO_puts(out, "\npub 2="); - BN_print(out, bpub_key); - BIO_puts(out, "\n"); alen = DH_size(a); - abuf = OPENSSL_malloc(alen); - if (abuf == NULL) + if (!TEST_ptr(abuf = OPENSSL_malloc(alen)) + || !TEST_true(aout = DH_compute_key(abuf, bpub_key, a))) goto err; - aout = DH_compute_key(abuf, bpub_key, a); - - BIO_puts(out, "key1 ="); - for (i = 0; i < aout; i++) { - sprintf(buf, "%02X", abuf[i]); - BIO_puts(out, buf); - } - BIO_puts(out, "\n"); - blen = DH_size(b); - bbuf = OPENSSL_malloc(blen); - if (bbuf == NULL) + if (!TEST_ptr(bbuf = OPENSSL_malloc(blen)) + || !TEST_true(bout = DH_compute_key(bbuf, apub_key, b))) + goto err; + if (!TEST_true(aout < 4) + || !TEST_mem_eq(abuf, aout, bbuf, bout)) goto err; - - bout = DH_compute_key(bbuf, apub_key, b); - - BIO_puts(out, "key2 ="); - for (i = 0; i < bout; i++) { - sprintf(buf, "%02X", bbuf[i]); - BIO_puts(out, buf); - } - BIO_puts(out, "\n"); - if ((aout < 4) || (bout != aout) || (memcmp(abuf, bbuf, aout) != 0)) { - fprintf(stderr, "Error in DH routines\n"); - ret = 1; - } else ret = 0; - if (!run_rfc5114_tests()) - ret = 1; - err: - (void)BIO_flush(out); - ERR_print_errors_fp(stderr); + ret = 1; + err: OPENSSL_free(abuf); OPENSSL_free(bbuf); DH_free(b); @@ -159,30 +103,11 @@ int main(int argc, char *argv[]) BN_free(bp); BN_free(bg); BN_GENCB_free(_cb); - BIO_free(out); - -#ifndef OPENSSL_NO_CRYPTO_MDEBUG - if (CRYPTO_mem_leaks_fp(stderr) <= 0) - ret = 1; -#endif - - EXIT(ret); + return ret; } static int cb(int p, int n, BN_GENCB *arg) { - char c = '*'; - - if (p == 0) - c = '.'; - if (p == 1) - c = '+'; - if (p == 2) - c = '*'; - if (p == 3) - c = '\n'; - BIO_write(BN_GENCB_get_arg(arg), &c, 1); - (void)BIO_flush(BN_GENCB_get_arg(arg)); return 1; } @@ -468,7 +393,7 @@ static const rfc5114_td rfctd[] = { make_rfc5114_td(2048_256) }; -static int run_rfc5114_tests(void) +static int rfc5114_test(void) { int i; DH *dhA = NULL; @@ -482,74 +407,63 @@ static int run_rfc5114_tests(void) for (i = 0; i < (int)OSSL_NELEM(rfctd); i++) { td = rfctd + i; /* Set up DH structures setting key components */ - dhA = td->get_param(); - dhB = td->get_param(); - if ((dhA == NULL) || (dhB == NULL)) + if (!TEST_ptr(dhA = td->get_param()) + || !TEST_ptr(dhB = td->get_param())) goto bad_err; - priv_key = BN_bin2bn(td->xA, td->xA_len, NULL); - pub_key = BN_bin2bn(td->yA, td->yA_len, NULL); - if (priv_key == NULL || pub_key == NULL - || !DH_set0_key(dhA, pub_key, priv_key)) + if (!TEST_ptr(priv_key = BN_bin2bn(td->xA, td->xA_len, NULL)) + || !TEST_ptr(pub_key = BN_bin2bn(td->yA, td->yA_len, NULL)) + || !TEST_true(DH_set0_key(dhA, pub_key, priv_key))) goto bad_err; - priv_key = BN_bin2bn(td->xB, td->xB_len, NULL); - pub_key = BN_bin2bn(td->yB, td->yB_len, NULL); - - if (priv_key == NULL || pub_key == NULL - || !DH_set0_key(dhB, pub_key, priv_key)) + if (!TEST_ptr(priv_key = BN_bin2bn(td->xB, td->xB_len, NULL)) + || !TEST_ptr(pub_key = BN_bin2bn(td->yB, td->yB_len, NULL)) + || !TEST_true( DH_set0_key(dhB, pub_key, priv_key))) goto bad_err; priv_key = pub_key = NULL; - if ((td->Z_len != (size_t)DH_size(dhA)) - || (td->Z_len != (size_t)DH_size(dhB))) + if (!TEST_uint_eq(td->Z_len, (size_t)DH_size(dhA)) + || !TEST_uint_eq(td->Z_len, (size_t)DH_size(dhB))) goto err; - Z1 = OPENSSL_malloc(DH_size(dhA)); - Z2 = OPENSSL_malloc(DH_size(dhB)); - if ((Z1 == NULL) || (Z2 == NULL)) + if (!TEST_ptr(Z1 = OPENSSL_malloc(DH_size(dhA))) + || !TEST_ptr(Z2 = OPENSSL_malloc(DH_size(dhB)))) goto bad_err; /* * Work out shared secrets using both sides and compare with expected * values. */ DH_get0_key(dhB, &pub_key_tmp, NULL); - if (DH_compute_key(Z1, pub_key_tmp, dhA) == -1) + if (!TEST_int_ne(DH_compute_key(Z1, pub_key_tmp, dhA), -1)) goto bad_err; DH_get0_key(dhA, &pub_key_tmp, NULL); - if (DH_compute_key(Z2, pub_key_tmp, dhB) == -1) + if (!TEST_int_ne(DH_compute_key(Z2, pub_key_tmp, dhB), -1)) goto bad_err; - if (memcmp(Z1, td->Z, td->Z_len)) + if (!TEST_mem_eq(Z1, td->Z_len, td->Z, td->Z_len) + || !TEST_mem_eq(Z2, td->Z_len, td->Z, td->Z_len)) goto err; - if (memcmp(Z2, td->Z, td->Z_len)) - goto err; - - printf("RFC5114 parameter test %d OK\n", i + 1); DH_free(dhA); - DH_free(dhB); - OPENSSL_free(Z1); - OPENSSL_free(Z2); dhA = NULL; + DH_free(dhB); dhB = NULL; + OPENSSL_free(Z1); Z1 = NULL; + OPENSSL_free(Z2); Z2 = NULL; } /* Now i == OSSL_NELEM(rfctd) */ /* RFC5114 uses unsafe primes, so now test an invalid y value */ - dhA = DH_get_2048_224(); - if (dhA == NULL) - goto bad_err; - Z1 = OPENSSL_malloc(DH_size(dhA)); - if (Z1 == NULL) + if (!TEST_ptr(dhA = DH_get_2048_224()) + || !TEST_ptr(Z1 = OPENSSL_malloc(DH_size(dhA)))) goto bad_err; - bady = BN_bin2bn(dhtest_rfc5114_2048_224_bad_y, - sizeof(dhtest_rfc5114_2048_224_bad_y), NULL); - if (bady == NULL) + if (!TEST_ptr(bady = BN_bin2bn(dhtest_rfc5114_2048_224_bad_y, + sizeof(dhtest_rfc5114_2048_224_bad_y), + NULL))) goto bad_err; if (!DH_generate_key(dhA)) @@ -564,14 +478,11 @@ static int run_rfc5114_tests(void) } /* We'll have a stale error on the queue from the above test so clear it */ ERR_clear_error(); - - printf("RFC5114 parameter test %d OK\n", i + 1); - BN_free(bady); DH_free(dhA); OPENSSL_free(Z1); - return 1; + bad_err: BN_free(bady); DH_free(dhA); @@ -580,19 +491,23 @@ static int run_rfc5114_tests(void) BN_free(priv_key); OPENSSL_free(Z1); OPENSSL_free(Z2); - - fprintf(stderr, "Initialisation error RFC5114 set %d\n", i + 1); - ERR_print_errors_fp(stderr); + TEST_error("Initialisation error RFC5114 set %d\n", i + 1); return 0; + err: BN_free(bady); DH_free(dhA); DH_free(dhB); OPENSSL_free(Z1); OPENSSL_free(Z2); - - fprintf(stderr, "Test failed RFC5114 set %d\n", i + 1); + TEST_error("Test failed RFC5114 set %d\n", i + 1); return 0; } + +void register_tests(void) +{ + ADD_TEST(dh_test); + ADD_TEST(rfc5114_test); +} #endif diff --git a/test/dsatest.c b/test/dsatest.c index 1085422..bff0b96 100644 --- a/test/dsatest.c +++ b/test/dsatest.c @@ -13,22 +13,14 @@ #include #include -#include "../e_os.h" - #include #include -#include -#include #include +#include -#ifdef OPENSSL_NO_DSA -int main(int argc, char *argv[]) -{ - printf("No DSA support\n"); - return (0); -} -#else -# include +#include "test_main.h" +#include "testutil.h" +#include "e_os.h" static int dsa_cb(int p, int n, BN_GENCB *arg); @@ -74,9 +66,7 @@ static const unsigned char str1[] = "12345678901234567890"; static const char rnd_seed[] = "string to make the random number generator think it has entropy"; -static BIO *bio_err = NULL; - -int main(int argc, char **argv) +static int dsa_test(void) { BN_GENCB *cb; DSA *dsa = NULL; @@ -87,110 +77,68 @@ int main(int argc, char **argv) unsigned int siglen; const BIGNUM *p = NULL, *q = NULL, *g = NULL; - if (bio_err == NULL) - bio_err = BIO_new_fp(stderr, BIO_NOCLOSE | BIO_FP_TEXT); - - CRYPTO_set_mem_debug(1); - CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON); - RAND_seed(rnd_seed, sizeof rnd_seed); - BIO_printf(bio_err, "test generation of DSA parameters\n"); - - cb = BN_GENCB_new(); - if (!cb) + if (!TEST_ptr(cb = BN_GENCB_new())) goto end; - BN_GENCB_set(cb, dsa_cb, bio_err); - if (((dsa = DSA_new()) == NULL) || !DSA_generate_parameters_ex(dsa, 512, - seed, 20, - &counter, - &h, cb)) + BN_GENCB_set(cb, dsa_cb, NULL); + if (!TEST_ptr(dsa = DSA_new()) + || !TEST_true(DSA_generate_parameters_ex(dsa, 512, seed, 20, + &counter, &h, cb))) goto end; - BIO_printf(bio_err, "seed\n"); - for (i = 0; i < 20; i += 4) { - BIO_printf(bio_err, "%02X%02X%02X%02X ", - seed[i], seed[i + 1], seed[i + 2], seed[i + 3]); - } - BIO_printf(bio_err, "\ncounter=%d h=%ld\n", counter, h); - - DSA_print(bio_err, dsa, 0); - if (counter != 105) { - BIO_printf(bio_err, "counter should be 105\n"); + if (!TEST_int_eq(counter, 105)) goto end; - } - if (h != 2) { - BIO_printf(bio_err, "h should be 2\n"); + if (!TEST_int_eq(h, 2)) goto end; - } DSA_get0_pqg(dsa, &p, &q, &g); i = BN_bn2bin(q, buf); j = sizeof(out_q); - if ((i != j) || (memcmp(buf, out_q, i) != 0)) { - BIO_printf(bio_err, "q value is wrong\n"); + if (!TEST_int_eq(i, j) || !TEST_mem_eq(buf, i, out_q, i)) goto end; - } i = BN_bn2bin(p, buf); j = sizeof(out_p); - if ((i != j) || (memcmp(buf, out_p, i) != 0)) { - BIO_printf(bio_err, "p value is wrong\n"); + if (!TEST_int_eq(i, j) || !TEST_mem_eq(buf, i, out_p, i)) goto end; - } i = BN_bn2bin(g, buf); j = sizeof(out_g); - if ((i != j) || (memcmp(buf, out_g, i) != 0)) { - BIO_printf(bio_err, "g value is wrong\n"); + if (!TEST_int_eq(i, j) || !TEST_mem_eq(buf, i, out_g, i)) goto end; - } DSA_generate_key(dsa); DSA_sign(0, str1, 20, sig, &siglen, dsa); - if (DSA_verify(0, str1, 20, sig, siglen, dsa) == 1) + if (TEST_true(DSA_verify(0, str1, 20, sig, siglen, dsa))) ret = 1; end: - if (!ret) - ERR_print_errors(bio_err); DSA_free(dsa); BN_GENCB_free(cb); - -#ifndef OPENSSL_NO_CRYPTO_MDEBUG - if (CRYPTO_mem_leaks(bio_err) <= 0) - ret = 0; -#endif - BIO_free(bio_err); - bio_err = NULL; - EXIT(!ret); + return ret; } static int dsa_cb(int p, int n, BN_GENCB *arg) { - char c = '*'; static int ok = 0, num = 0; - if (p == 0) { - c = '.'; + if (p == 0) num++; - }; - if (p == 1) - c = '+'; - if (p == 2) { - c = '*'; + if (p == 2) ok++; - } - if (p == 3) - c = '\n'; - BIO_write(BN_GENCB_get_arg(arg), &c, 1); - (void)BIO_flush(BN_GENCB_get_arg(arg)); if (!ok && (p == 0) && (num > 1)) { - BIO_printf(BN_GENCB_get_arg(arg), "error in dsatest\n"); + TEST_error("dsa_cb error"); return 0; } return 1; } + +void register_tests(void) +{ +#ifndef OPENSSL_NO_DSA + ADD_TEST(dsa_test); #endif +} From builds at travis-ci.org Wed Apr 19 02:13:27 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 19 Apr 2017 02:13:27 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10396 (master - 93d0298) In-Reply-To: Message-ID: <58f6c7c75fcef_43fdff6b97a3813627e@e5cbb263-969a-49d7-b63c-a8c08ece7945.mail> Build Update for openssl/openssl ------------------------------------- Build: #10396 Status: Still Failing Duration: 23 minutes and 8 seconds Commit: 93d0298 (master) Author: Rich Salz Message: Convert dhtest, dsatest, cipherbytes_test Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3209) View the changeset: https://github.com/openssl/openssl/compare/edd689efbfa2...93d02986656b View the full build log and details: https://travis-ci.org/openssl/openssl/builds/223391005 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Wed Apr 19 11:27:22 2017 From: no-reply at appveyor.com (AppVeyor) Date: Wed, 19 Apr 2017 11:27:22 +0000 Subject: [openssl-commits] Build failed: openssl master.9715 Message-ID: <20170419112721.37425.34204.93504A64@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Wed Apr 19 12:25:22 2017 From: no-reply at appveyor.com (AppVeyor) Date: Wed, 19 Apr 2017 12:25:22 +0000 Subject: [openssl-commits] Build failed: openssl master.9719 Message-ID: <20170419122520.22918.16699.FDA39CC7@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Wed Apr 19 12:40:15 2017 From: no-reply at appveyor.com (AppVeyor) Date: Wed, 19 Apr 2017 12:40:15 +0000 Subject: [openssl-commits] Build completed: openssl master.9720 Message-ID: <20170419124013.91860.17507.6CC019BF@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Wed Apr 19 13:44:34 2017 From: no-reply at appveyor.com (AppVeyor) Date: Wed, 19 Apr 2017 13:44:34 +0000 Subject: [openssl-commits] Build failed: openssl master.9722 Message-ID: <20170419134431.128278.56761.8F4D51D6@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Wed Apr 19 14:33:41 2017 From: no-reply at appveyor.com (AppVeyor) Date: Wed, 19 Apr 2017 14:33:41 +0000 Subject: [openssl-commits] Build completed: openssl master.9723 Message-ID: <20170419143324.23308.32428.6C4874C1@appveyor.com> An HTML attachment was scrubbed... URL: From rsalz at openssl.org Wed Apr 19 16:47:09 2017 From: rsalz at openssl.org (Rich Salz) Date: Wed, 19 Apr 2017 16:47:09 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492620429.132135.19353.nullmailer@dev.openssl.org> The branch master has been updated via 87b81496fec2f969371b3167dea3b6aaed9f9f9d (commit) from 93d02986656bf4a3ae145f65afc1ca52d2810950 (commit) - Log ----------------------------------------------------------------- commit 87b81496fec2f969371b3167dea3b6aaed9f9f9d Author: Rich Salz Date: Wed Apr 19 12:38:27 2017 -0400 Document Next Protocol Negotiation APIs Add callback function prototypes, fix description Reviewed-by: Kurt Roeckx Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3084) ----------------------------------------------------------------------- Summary of changes: doc/man3/SSL_CTX_set_alpn_select_cb.pod | 65 ++++++++++++++++++++++++++++++--- 1 file changed, 60 insertions(+), 5 deletions(-) diff --git a/doc/man3/SSL_CTX_set_alpn_select_cb.pod b/doc/man3/SSL_CTX_set_alpn_select_cb.pod index 5ad063e..56c8609 100644 --- a/doc/man3/SSL_CTX_set_alpn_select_cb.pod +++ b/doc/man3/SSL_CTX_set_alpn_select_cb.pod @@ -3,8 +3,9 @@ =head1 NAME SSL_CTX_set_alpn_protos, SSL_set_alpn_protos, SSL_CTX_set_alpn_select_cb, -SSL_select_next_proto, SSL_get0_alpn_selected - handle application layer -protocol negotiation (ALPN) +SSL_CTX_set_next_proto_select_cb, SSL_CTX_set_next_protos_advertised_cb, +SSL_select_next_proto, SSL_get0_alpn_selected, SSL_get0_next_proto_negotiated +- handle application layer protocol negotiation (ALPN) =head1 SYNOPSIS @@ -21,13 +22,30 @@ protocol negotiation (ALPN) const unsigned char *in, unsigned int inlen, void *arg), void *arg); + void SSL_get0_alpn_selected(const SSL *ssl, const unsigned char **data, + unsigned int *len); + + void SSL_CTX_set_next_protos_advertised_cb(SSL_CTX *ctx, + int (*cb)(SSL *ssl, + const unsigned char **out, + unsigned int *outlen, + void *arg), + void *arg); + void SSL_CTX_set_next_proto_select_cb(SSL_CTX *ctx, + int (*cb)(SSL *s, + unsigned char **out, + unsigned char *outlen, + const unsigned char *in, + unsigned int inlen, + void *arg), + void *arg); int SSL_select_next_proto(unsigned char **out, unsigned char *outlen, const unsigned char *server, unsigned int server_len, const unsigned char *client, unsigned int client_len) - void SSL_get0_alpn_selected(const SSL *ssl, const unsigned char **data, - unsigned int *len); + void SSL_get0_next_proto_negotiated(const SSL *s, const unsigned char **data, + unsigned *len); =head1 DESCRIPTION @@ -59,10 +77,40 @@ B, so it should be copied immediately. If no match is found, the first item in B, B is returned in B, B. This function can also be used in the NPN callback. +SSL_CTX_set_next_proto_select_cb() sets a callback B that is called when a +client needs to select a protocol from the server's provided list, and a +user-defined pointer argument B which will be passed to this callback. +For the callback itself, B +must be set to point to the selected protocol (which may be within B). +The length of the protocol name must be written into B. The +server's advertised protocols are provided in B and B. The +callback can assume that B is syntactically valid. The client must +select a protocol. It is fatal to the connection if this callback returns +a value other than B. The B parameter is the pointer +set via SSL_CTX_set_next_proto_select_cb(). + +SSL_CTX_set_next_protos_advertised_cb() sets a callback B that is called +when a TLS server needs a list of supported protocols for Next Protocol +Negotiation. The returned list must be in protocol-list format, described +below. The list is +returned by setting B to point to it and B to its length. This +memory will not be modified, but the B does keep a +reference to it. The callback should return B if it +wishes to advertise. Otherwise, no such extension will be included in the +ServerHello. + SSL_get0_alpn_selected() returns a pointer to the selected protocol in B with length B. It is not NUL-terminated. B is set to NULL and B is set to 0 if no protocol has been selected. B must not be freed. +SSL_get0_next_proto_negotiated() sets B and B to point to the +client's requested protocol for this connection. If the client did not +request any protocol or NPN is not enabled, then B is set to NULL and +B to 0. Note that +the client can request any protocol it chooses. The value returned from +this function need not be a member of the list of supported protocols +provided by the callback. + =head1 NOTES The protocol-lists must be in wire-format, which is defined as a vector of @@ -125,6 +173,13 @@ this connection. =back +The callback set using SSL_CTX_set_next_proto_select_cb() should return +B if successful. Any other value is fatal to the connection. + +The callback set using SSL_CTX_set_next_protos_advertised_cb() should return +B if it wishes to advertise. Otherwise, no such extension +will be included in the ServerHello. + =head1 SEE ALSO L, L, @@ -132,7 +187,7 @@ L =head1 COPYRIGHT -Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy From rsalz at openssl.org Wed Apr 19 16:48:46 2017 From: rsalz at openssl.org (Rich Salz) Date: Wed, 19 Apr 2017 16:48:46 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1492620526.950663.21396.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 48e017b9ca6876f709197de22b986e8238868ce4 (commit) from cff4c7b9d01ebe68217d491841424b8223d8507d (commit) - Log ----------------------------------------------------------------- commit 48e017b9ca6876f709197de22b986e8238868ce4 Author: Rich Salz Date: Wed Apr 19 12:38:27 2017 -0400 Document Next Protocol Negotiation APIs Add callback function prototypes, fix description Reviewed-by: Kurt Roeckx Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3084) (cherry picked from commit 87b81496fec2f969371b3167dea3b6aaed9f9f9d) ----------------------------------------------------------------------- Summary of changes: doc/ssl/SSL_CTX_set_alpn_select_cb.pod | 67 +++++++++++++++++++++++++++++++--- 1 file changed, 61 insertions(+), 6 deletions(-) diff --git a/doc/ssl/SSL_CTX_set_alpn_select_cb.pod b/doc/ssl/SSL_CTX_set_alpn_select_cb.pod index d96185c..56c8609 100644 --- a/doc/ssl/SSL_CTX_set_alpn_select_cb.pod +++ b/doc/ssl/SSL_CTX_set_alpn_select_cb.pod @@ -3,8 +3,9 @@ =head1 NAME SSL_CTX_set_alpn_protos, SSL_set_alpn_protos, SSL_CTX_set_alpn_select_cb, -SSL_select_next_proto, SSL_get0_alpn_selected - handle application layer -protocol negotiation (ALPN) +SSL_CTX_set_next_proto_select_cb, SSL_CTX_set_next_protos_advertised_cb, +SSL_select_next_proto, SSL_get0_alpn_selected, SSL_get0_next_proto_negotiated +- handle application layer protocol negotiation (ALPN) =head1 SYNOPSIS @@ -21,13 +22,30 @@ protocol negotiation (ALPN) const unsigned char *in, unsigned int inlen, void *arg), void *arg); + void SSL_get0_alpn_selected(const SSL *ssl, const unsigned char **data, + unsigned int *len); + + void SSL_CTX_set_next_protos_advertised_cb(SSL_CTX *ctx, + int (*cb)(SSL *ssl, + const unsigned char **out, + unsigned int *outlen, + void *arg), + void *arg); + void SSL_CTX_set_next_proto_select_cb(SSL_CTX *ctx, + int (*cb)(SSL *s, + unsigned char **out, + unsigned char *outlen, + const unsigned char *in, + unsigned int inlen, + void *arg), + void *arg); int SSL_select_next_proto(unsigned char **out, unsigned char *outlen, const unsigned char *server, unsigned int server_len, const unsigned char *client, unsigned int client_len) - void SSL_get0_alpn_selected(const SSL *ssl, const unsigned char **data, - unsigned int *len); + void SSL_get0_next_proto_negotiated(const SSL *s, const unsigned char **data, + unsigned *len); =head1 DESCRIPTION @@ -59,10 +77,40 @@ B, so it should be copied immediately. If no match is found, the first item in B, B is returned in B, B. This function can also be used in the NPN callback. +SSL_CTX_set_next_proto_select_cb() sets a callback B that is called when a +client needs to select a protocol from the server's provided list, and a +user-defined pointer argument B which will be passed to this callback. +For the callback itself, B +must be set to point to the selected protocol (which may be within B). +The length of the protocol name must be written into B. The +server's advertised protocols are provided in B and B. The +callback can assume that B is syntactically valid. The client must +select a protocol. It is fatal to the connection if this callback returns +a value other than B. The B parameter is the pointer +set via SSL_CTX_set_next_proto_select_cb(). + +SSL_CTX_set_next_protos_advertised_cb() sets a callback B that is called +when a TLS server needs a list of supported protocols for Next Protocol +Negotiation. The returned list must be in protocol-list format, described +below. The list is +returned by setting B to point to it and B to its length. This +memory will not be modified, but the B does keep a +reference to it. The callback should return B if it +wishes to advertise. Otherwise, no such extension will be included in the +ServerHello. + SSL_get0_alpn_selected() returns a pointer to the selected protocol in B with length B. It is not NUL-terminated. B is set to NULL and B is set to 0 if no protocol has been selected. B must not be freed. +SSL_get0_next_proto_negotiated() sets B and B to point to the +client's requested protocol for this connection. If the client did not +request any protocol or NPN is not enabled, then B is set to NULL and +B to 0. Note that +the client can request any protocol it chooses. The value returned from +this function need not be a member of the list of supported protocols +provided by the callback. + =head1 NOTES The protocol-lists must be in wire-format, which is defined as a vector of @@ -125,14 +173,21 @@ this connection. =back +The callback set using SSL_CTX_set_next_proto_select_cb() should return +B if successful. Any other value is fatal to the connection. + +The callback set using SSL_CTX_set_next_protos_advertised_cb() should return +B if it wishes to advertise. Otherwise, no such extension +will be included in the ServerHello. + =head1 SEE ALSO -L, L, +L, L, L =head1 COPYRIGHT -Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy From rsalz at openssl.org Wed Apr 19 16:59:45 2017 From: rsalz at openssl.org (Rich Salz) Date: Wed, 19 Apr 2017 16:59:45 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492621185.803862.29394.nullmailer@dev.openssl.org> The branch master has been updated via d1186c30a265aedecb1b497c220b4cb7c2a7f4ec (commit) from 87b81496fec2f969371b3167dea3b6aaed9f9f9d (commit) - Log ----------------------------------------------------------------- commit d1186c30a265aedecb1b497c220b4cb7c2a7f4ec Author: Todd Short Date: Thu Apr 13 10:20:04 2017 -0400 Fix minor compiler issues. Reviewed-by: Andy Polyakov Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3220) ----------------------------------------------------------------------- Summary of changes: ssl/record/ssl3_record_tls13.c | 14 +++++++------- ssl/statem/extensions_srvr.c | 2 +- ssl/statem/statem.c | 12 ++++++------ ssl/tls13_enc.c | 14 +++++++------- test/bad_dtls_test.c | 8 ++++---- 5 files changed, 25 insertions(+), 25 deletions(-) diff --git a/ssl/record/ssl3_record_tls13.c b/ssl/record/ssl3_record_tls13.c index c6ea511..9e65852 100644 --- a/ssl/record/ssl3_record_tls13.c +++ b/ssl/record/ssl3_record_tls13.c @@ -21,7 +21,7 @@ * -1: if the record's AEAD-authenticator is invalid or, if sending, * an internal error occurred. */ -int tls13_enc(SSL *s, SSL3_RECORD *recs, size_t n_recs, int send) +int tls13_enc(SSL *s, SSL3_RECORD *recs, size_t n_recs, int sending) { EVP_CIPHER_CTX *ctx; unsigned char iv[EVP_MAX_IV_LENGTH]; @@ -38,7 +38,7 @@ int tls13_enc(SSL *s, SSL3_RECORD *recs, size_t n_recs, int send) return -1; } - if (send) { + if (sending) { ctx = s->enc_write_ctx; staticiv = s->write_iv; seq = RECORD_LAYER_get_write_sequence(&s->rlayer); @@ -75,7 +75,7 @@ int tls13_enc(SSL *s, SSL3_RECORD *recs, size_t n_recs, int send) taglen = EVP_CCM8_TLS_TAG_LEN; else taglen = EVP_CCM_TLS_TAG_LEN; - if (send && EVP_CIPHER_CTX_ctrl(ctx, EVP_CTRL_AEAD_SET_TAG, taglen, + if (sending && EVP_CIPHER_CTX_ctrl(ctx, EVP_CTRL_AEAD_SET_TAG, taglen, NULL) <= 0) return -1; } else if (alg_enc & SSL_AESGCM) { @@ -86,7 +86,7 @@ int tls13_enc(SSL *s, SSL3_RECORD *recs, size_t n_recs, int send) return -1; } - if (!send) { + if (!sending) { /* * Take off tag. There must be at least one byte of content type as * well as the tag @@ -118,8 +118,8 @@ int tls13_enc(SSL *s, SSL3_RECORD *recs, size_t n_recs, int send) } /* TODO(size_t): lenu/lenf should be a size_t but EVP doesn't support it */ - if (EVP_CipherInit_ex(ctx, NULL, NULL, NULL, iv, send) <= 0 - || (!send && EVP_CIPHER_CTX_ctrl(ctx, EVP_CTRL_AEAD_SET_TAG, + if (EVP_CipherInit_ex(ctx, NULL, NULL, NULL, iv, sending) <= 0 + || (!sending && EVP_CIPHER_CTX_ctrl(ctx, EVP_CTRL_AEAD_SET_TAG, taglen, rec->data + rec->length) <= 0) || EVP_CipherUpdate(ctx, rec->data, &lenu, rec->input, @@ -128,7 +128,7 @@ int tls13_enc(SSL *s, SSL3_RECORD *recs, size_t n_recs, int send) || (size_t)(lenu + lenf) != rec->length) { return -1; } - if (send) { + if (sending) { /* Add the tag */ if (EVP_CIPHER_CTX_ctrl(ctx, EVP_CTRL_AEAD_GET_TAG, taglen, rec->data + rec->length) <= 0) diff --git a/ssl/statem/extensions_srvr.c b/ssl/statem/extensions_srvr.c index da7e8c8..7ba1aac 100644 --- a/ssl/statem/extensions_srvr.c +++ b/ssl/statem/extensions_srvr.c @@ -780,7 +780,7 @@ int tls_parse_ctos_psk(SSL *s, PACKET *pkt, unsigned int context, X509 *x, * client's due to the network latency). Therefore we add 1000ms to our age * calculation to adjust for rounding errors. */ - if (sess->timeout >= agesec + if (sess->timeout >= (long)agesec && agems / (uint32_t)1000 == agesec && ticket_age <= agems + 1000 && ticket_age + TICKET_AGE_ALLOWANCE >= agems + 1000) { diff --git a/ssl/statem/statem.c b/ssl/statem/statem.c index 92a0e8f..e63d0ad 100644 --- a/ssl/statem/statem.c +++ b/ssl/statem/statem.c @@ -172,13 +172,13 @@ int ossl_statem_skip_early_data(SSL *s) * Called when we are in SSL_read*(), SSL_write*(), or SSL_accept() * /SSL_connect()/SSL_do_handshake(). Used to test whether we are in an early * data state and whether we should attempt to move the handshake on if so. - * |send| is 1 if we are attempting to send data (SSL_write*()), 0 if we are + * |sending| is 1 if we are attempting to send data (SSL_write*()), 0 if we are * attempting to read data (SSL_read*()), or -1 if we are in SSL_do_handshake() * or similar. */ -void ossl_statem_check_finish_init(SSL *s, int send) +void ossl_statem_check_finish_init(SSL *s, int sending) { - if (send == -1) { + if (sending == -1) { if (s->statem.hand_state == TLS_ST_PENDING_EARLY_DATA_END || s->statem.hand_state == TLS_ST_EARLY_DATA) { ossl_statem_set_in_init(s, 1); @@ -191,16 +191,16 @@ void ossl_statem_check_finish_init(SSL *s, int send) } } } else if (!s->server) { - if ((send && (s->statem.hand_state == TLS_ST_PENDING_EARLY_DATA_END + if ((sending && (s->statem.hand_state == TLS_ST_PENDING_EARLY_DATA_END || s->statem.hand_state == TLS_ST_EARLY_DATA) && s->early_data_state != SSL_EARLY_DATA_WRITING) - || (!send && s->statem.hand_state == TLS_ST_EARLY_DATA)) { + || (!sending && s->statem.hand_state == TLS_ST_EARLY_DATA)) { ossl_statem_set_in_init(s, 1); /* * SSL_write() has been called directly. We don't allow any more * writing of early data. */ - if (send && s->early_data_state == SSL_EARLY_DATA_WRITE_RETRY) + if (sending && s->early_data_state == SSL_EARLY_DATA_WRITE_RETRY) s->early_data_state = SSL_EARLY_DATA_FINISHED_WRITING; } } else { diff --git a/ssl/tls13_enc.c b/ssl/tls13_enc.c index 2ae4552..9030d1a 100644 --- a/ssl/tls13_enc.c +++ b/ssl/tls13_enc.c @@ -267,7 +267,7 @@ int tls13_setup_key_block(SSL *s) return 1; } -static int derive_secret_key_and_iv(SSL *s, int send, const EVP_MD *md, +static int derive_secret_key_and_iv(SSL *s, int sending, const EVP_MD *md, const EVP_CIPHER *ciph, const unsigned char *insecret, const unsigned char *hash, @@ -312,7 +312,7 @@ static int derive_secret_key_and_iv(SSL *s, int send, const EVP_MD *md, goto err; } - if (EVP_CipherInit_ex(ciph_ctx, ciph, NULL, NULL, NULL, send) <= 0 + if (EVP_CipherInit_ex(ciph_ctx, ciph, NULL, NULL, NULL, sending) <= 0 || !EVP_CIPHER_CTX_ctrl(ciph_ctx, EVP_CTRL_AEAD_SET_IVLEN, ivlen, NULL) || (taglen != 0 && !EVP_CIPHER_CTX_ctrl(ciph_ctx, EVP_CTRL_AEAD_SET_TAG, taglen, NULL)) @@ -323,7 +323,7 @@ static int derive_secret_key_and_iv(SSL *s, int send, const EVP_MD *md, #ifdef OPENSSL_SSL_TRACE_CRYPTO if (s->msg_callback) { - int wh = send ? TLS1_RT_CRYPTO_WRITE : 0; + int wh = sending ? TLS1_RT_CRYPTO_WRITE : 0; if (ciph->key_len) s->msg_callback(2, s->version, wh | TLS1_RT_CRYPTO_KEY, @@ -557,7 +557,7 @@ int tls13_change_cipher_state(SSL *s, int which) return ret; } -int tls13_update_key(SSL *s, int send) +int tls13_update_key(SSL *s, int sending) { static const unsigned char application_traffic[] = "application traffic secret"; @@ -568,12 +568,12 @@ int tls13_update_key(SSL *s, int send) EVP_CIPHER_CTX *ciph_ctx; int ret = 0; - if (s->server == send) + if (s->server == sending) insecret = s->server_app_traffic_secret; else insecret = s->client_app_traffic_secret; - if (send) { + if (sending) { iv = s->write_iv; ciph_ctx = s->enc_write_ctx; RECORD_LAYER_reset_write_sequence(&s->rlayer); @@ -583,7 +583,7 @@ int tls13_update_key(SSL *s, int send) RECORD_LAYER_reset_read_sequence(&s->rlayer); } - if (!derive_secret_key_and_iv(s, send, ssl_handshake_md(s), + if (!derive_secret_key_and_iv(s, sending, ssl_handshake_md(s), s->s3->tmp.new_sym_enc, insecret, NULL, application_traffic, sizeof(application_traffic) - 1, secret, iv, diff --git a/test/bad_dtls_test.c b/test/bad_dtls_test.c index 43733e9..0bfbebf 100644 --- a/test/bad_dtls_test.c +++ b/test/bad_dtls_test.c @@ -548,8 +548,8 @@ static int test_bad_dtls(void) if (!TEST_true(send_record(rbio, SSL3_RT_APPLICATION_DATA, tests[i].seq, &tests[i].seq, sizeof(uint64_t)))) { - TEST_error("Failed to send data seq #0x%lx (%d)\n", - tests[i].seq, i); + TEST_error("Failed to send data seq #0x%x%08x (%d)\n", + (unsigned int)(tests[i].seq >> 32), (unsigned int)tests[i].seq, i); goto end; } @@ -558,8 +558,8 @@ static int test_bad_dtls(void) ret = SSL_read(con, recv_buf, 2 * sizeof(uint64_t)); if (!TEST_int_eq(ret, (int)sizeof(uint64_t))) { - TEST_error("SSL_read failed or wrong size on seq#0x%lx (%d)\n", - tests[i].seq, i); + TEST_error("SSL_read failed or wrong size on seq#0x%x%08x (%d)\n", + (unsigned int)(tests[i].seq >> 32), (unsigned int)tests[i].seq, i); goto end; } if (!TEST_true(recv_buf[0] == tests[i].seq)) From builds at travis-ci.org Wed Apr 19 17:09:18 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 19 Apr 2017 17:09:18 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10412 (master - 87b8149) In-Reply-To: Message-ID: <58f799e7482f8_43fe49a4df7b01039950@da461a4e-e60d-4777-85fa-3eca2a39d3d9.mail> Build Update for openssl/openssl ------------------------------------- Build: #10412 Status: Still Failing Duration: 21 minutes and 38 seconds Commit: 87b8149 (master) Author: Rich Salz Message: Document Next Protocol Negotiation APIs Add callback function prototypes, fix description Reviewed-by: Kurt Roeckx Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3084) View the changeset: https://github.com/openssl/openssl/compare/93d02986656b...87b81496fec2 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/223633708 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Wed Apr 19 17:34:37 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 19 Apr 2017 17:34:37 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10415 (master - d1186c3) In-Reply-To: Message-ID: <58f79fac35388_43fe49a6cadcc107253c@da461a4e-e60d-4777-85fa-3eca2a39d3d9.mail> Build Update for openssl/openssl ------------------------------------- Build: #10415 Status: Still Failing Duration: 23 minutes and 8 seconds Commit: d1186c3 (master) Author: Todd Short Message: Fix minor compiler issues. Reviewed-by: Andy Polyakov Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3220) View the changeset: https://github.com/openssl/openssl/compare/87b81496fec2...d1186c30a265 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/223638204 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From rsalz at openssl.org Wed Apr 19 20:03:30 2017 From: rsalz at openssl.org (Rich Salz) Date: Wed, 19 Apr 2017 20:03:30 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492632210.368666.5870.nullmailer@dev.openssl.org> The branch master has been updated via 424aa352458486d67e1e9cd3d3990dc06a60ba4a (commit) from d1186c30a265aedecb1b497c220b4cb7c2a7f4ec (commit) - Log ----------------------------------------------------------------- commit 424aa352458486d67e1e9cd3d3990dc06a60ba4a Author: Jon Spillett Date: Wed Apr 19 16:21:29 2017 +1000 Change 64-bit time type for windows Reviewed-by: Andy Polyakov Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3248) ----------------------------------------------------------------------- Summary of changes: fuzz/client.c | 2 +- fuzz/server.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/fuzz/client.c b/fuzz/client.c index 622d782..92ec6c0 100644 --- a/fuzz/client.c +++ b/fuzz/client.c @@ -37,7 +37,7 @@ static int idx; * coverage. */ #if defined(_WIN32) && defined(_TIME64_T_DEFINED) -time64_t _time64(time64_t *t) TIME_IMPL(t) +__time64_t _time64(__time64_t *t) TIME_IMPL(t) #endif #if !defined(_WIN32) || !defined(_MSC_VER) time_t time(time_t *t) TIME_IMPL(t) diff --git a/fuzz/server.c b/fuzz/server.c index 1a6dd2c..93cdc68 100644 --- a/fuzz/server.c +++ b/fuzz/server.c @@ -484,7 +484,7 @@ static int idx; * coverage. */ #if defined(_WIN32) && defined(_TIME64_T_DEFINED) -time64_t _time64(time64_t *t) TIME_IMPL(t) +__time64_t _time64(__time64_t *t) TIME_IMPL(t) #endif #if !defined(_WIN32) || !defined(_MSC_VER) time_t time(time_t *t) TIME_IMPL(t) From builds at travis-ci.org Wed Apr 19 20:26:11 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 19 Apr 2017 20:26:11 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10418 (master - 424aa35) In-Reply-To: Message-ID: <58f7c7e35bee6_43fe49a8382a4129817b@da461a4e-e60d-4777-85fa-3eca2a39d3d9.mail> Build Update for openssl/openssl ------------------------------------- Build: #10418 Status: Still Failing Duration: 18 minutes and 0 seconds Commit: 424aa35 (master) Author: Jon Spillett Message: Change 64-bit time type for windows Reviewed-by: Andy Polyakov Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3248) View the changeset: https://github.com/openssl/openssl/compare/d1186c30a265...424aa3524584 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/223702594 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From osslsanity at gmail.com Thu Apr 20 06:49:20 2017 From: osslsanity at gmail.com (address not configured yet) Date: Thu, 20 Apr 2017 06:49:20 +0000 (UTC) Subject: [openssl-commits] Build failed in Jenkins: 1_0_2_ppc64 #10 Message-ID: <1114963755.1.1492670962238.JavaMail.jenkins@ip-172-31-11-199.us-west-2.compute.internal> See Changes: [rsalz] Additional check to handle BAD SSL_write retry [levitte] pkeyutl exit with 0 if the verification succeeded ------------------------------------------ [...truncated 16.11 KB...] cms.h => ../../include/openssl/cms.h make[2]: Leaving directory ` making links in crypto/pqueue... make[2]: Entering directory ` pqueue.h => ../../include/openssl/pqueue.h make[2]: Leaving directory ` making links in crypto/ts... make[2]: Entering directory ` ts.h => ../../include/openssl/ts.h make[2]: Leaving directory ` making links in crypto/srp... make[2]: Entering directory ` srp.h => ../../include/openssl/srp.h srptest.c => ../../test/srptest.c make[2]: Leaving directory ` making links in crypto/cmac... make[2]: Entering directory ` cmac.h => ../../include/openssl/cmac.h make[2]: Leaving directory ` make[1]: Leaving directory ` making links in ssl... make[1]: Entering directory ` ssl.h => ../include/openssl/ssl.h ssl2.h => ../include/openssl/ssl2.h ssl3.h => ../include/openssl/ssl3.h ssl23.h => ../include/openssl/ssl23.h tls1.h => ../include/openssl/tls1.h dtls1.h => ../include/openssl/dtls1.h kssl.h => ../include/openssl/kssl.h srtp.h => ../include/openssl/srtp.h ssltest.c => ../test/ssltest.c heartbeat_test.c => ../test/heartbeat_test.c clienthellotest.c => ../test/clienthellotest.c sslv2conftest.c => ../test/sslv2conftest.c dtlstest.c => ../test/dtlstest.c bad_dtls_test.c => ../test/bad_dtls_test.c make[1]: Leaving directory ` making links in engines... make[1]: Entering directory ` making links in engines/ccgost... make[2]: Entering directory ` make[2]: Nothing to be done for `links'. make[2]: Leaving directory ` make[1]: Leaving directory ` making links in apps... make[1]: Entering directory ` make[1]: Nothing to be done for `links'. make[1]: Leaving directory ` making links in test... make[1]: Entering directory ` make[1]: Nothing to be done for `links'. make[1]: Leaving directory ` making links in tools... make[1]: Entering directory ` make[1]: Nothing to be done for `links'. make[1]: Leaving directory ` generating dummy tests (if needed)... make[1]: Entering directory ` make[1]: Nothing to be done for `generate'. make[1]: Leaving directory ` Configured for linux-ppc64. + make depend making depend in crypto... make[1]: Entering directory ` making depend in crypto/objects... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- o_names.c obj_dat.c obj_lib.c obj_err.c obj_xref.c make[2]: Leaving directory ` making depend in crypto/md4... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- md4_dgst.c md4_one.c make[2]: Leaving directory ` making depend in crypto/md5... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- md5_dgst.c md5_one.c make[2]: Leaving directory ` making depend in crypto/sha... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- sha_dgst.c sha1dgst.c sha_one.c sha1_one.c sha256.c sha512.c make[2]: Leaving directory ` making depend in crypto/mdc2... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- mdc2dgst.c mdc2_one.c make[2]: Leaving directory ` making depend in crypto/hmac... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- hmac.c hm_ameth.c hm_pmeth.c make[2]: Leaving directory ` making depend in crypto/ripemd... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- rmd_dgst.c rmd_one.c make[2]: Leaving directory ` making depend in crypto/whrlpool... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- wp_dgst.c wp_block.c make[2]: Leaving directory ` making depend in crypto/des... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- cbc_cksm.c cbc_enc.c cfb64enc.c cfb_enc.c ecb3_enc.c ecb_enc.c enc_read.c enc_writ.c fcrypt.c ofb64enc.c ofb_enc.c pcbc_enc.c qud_cksm.c rand_key.c rpc_enc.c set_key.c des_enc.c fcrypt_b.c xcbc_enc.c str2key.c cfb64ede.c ofb64ede.c ede_cbcm_enc.c des_old.c des_old2.c read2pwd.c make[2]: Leaving directory ` making depend in crypto/aes... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- aes_core.c aes_misc.c aes_ecb.c aes_cbc.c aes_cfb.c aes_ofb.c aes_ctr.c aes_ige.c aes_wrap.c make[2]: Leaving directory ` making depend in crypto/rc2... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- rc2_ecb.c rc2_skey.c rc2_cbc.c rc2cfb64.c rc2ofb64.c make[2]: Leaving directory ` making depend in crypto/rc4... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- rc4_skey.c rc4_enc.c rc4_utl.c make[2]: Leaving directory ` making depend in crypto/idea... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- i_cbc.c i_cfb64.c i_ofb64.c i_ecb.c i_skey.c make[2]: Leaving directory ` making depend in crypto/bf... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- bf_skey.c bf_ecb.c bf_enc.c bf_cfb64.c bf_ofb64.c make[2]: Leaving directory ` making depend in crypto/cast... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- c_skey.c c_ecb.c c_enc.c c_cfb64.c c_ofb64.c make[2]: Leaving directory ` making depend in crypto/camellia... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- camellia.c cmll_misc.c cmll_ecb.c cmll_cbc.c cmll_ofb.c cmll_cfb.c cmll_ctr.c cmll_utl.c make[2]: Leaving directory ` making depend in crypto/seed... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- seed.c seed_ecb.c seed_cbc.c seed_cfb.c seed_ofb.c make[2]: Leaving directory ` making depend in crypto/modes... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- cbc128.c ctr128.c cts128.c cfb128.c ofb128.c gcm128.c ccm128.c xts128.c wrap128.c make[2]: Leaving directory ` making depend in crypto/bn... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- bn_add.c bn_div.c bn_exp.c bn_lib.c bn_ctx.c bn_mul.c bn_mod.c bn_print.c bn_rand.c bn_shift.c bn_word.c bn_blind.c bn_kron.c bn_sqrt.c bn_gcd.c bn_prime.c bn_err.c bn_sqr.c bn_asm.c bn_recp.c bn_mont.c bn_mpi.c bn_exp2.c bn_gf2m.c bn_nist.c bn_depr.c bn_const.c bn_x931p.c make[2]: Leaving directory ` making depend in crypto/ec... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- ec_lib.c ecp_smpl.c ecp_mont.c ecp_nist.c ec_cvt.c ec_mult.c ec_err.c ec_curve.c ec_check.c ec_print.c ec_asn1.c ec_key.c ec2_smpl.c ec2_mult.c ec_ameth.c ec_pmeth.c eck_prn.c ecp_nistp224.c ecp_nistp256.c ecp_nistp521.c ecp_nistputil.c ecp_oct.c ec2_oct.c ec_oct.c make[2]: Leaving directory ` making depend in crypto/rsa... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- rsa_eay.c rsa_gen.c rsa_lib.c rsa_sign.c rsa_saos.c rsa_err.c rsa_pk1.c rsa_ssl.c rsa_none.c rsa_oaep.c rsa_chk.c rsa_null.c rsa_pss.c rsa_x931.c rsa_asn1.c rsa_depr.c rsa_ameth.c rsa_prn.c rsa_pmeth.c rsa_crpt.c make[2]: Leaving directory ` making depend in crypto/dsa... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- dsa_gen.c dsa_key.c dsa_lib.c dsa_asn1.c dsa_vrf.c dsa_sign.c dsa_err.c dsa_ossl.c dsa_depr.c dsa_ameth.c dsa_pmeth.c dsa_prn.c make[2]: Leaving directory ` making depend in crypto/ecdsa... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- ecs_lib.c ecs_asn1.c ecs_ossl.c ecs_sign.c ecs_vrf.c ecs_err.c make[2]: Leaving directory ` making depend in crypto/dh... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- dh_asn1.c dh_gen.c dh_key.c dh_lib.c dh_check.c dh_err.c dh_depr.c dh_ameth.c dh_pmeth.c dh_prn.c dh_rfc5114.c dh_kdf.c make[2]: Leaving directory ` making depend in crypto/ecdh... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- ech_lib.c ech_ossl.c ech_key.c ech_err.c ech_kdf.c make[2]: Leaving directory ` making depend in crypto/dso... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- dso_dl.c dso_dlfcn.c dso_err.c dso_lib.c dso_null.c dso_openssl.c dso_win32.c dso_vms.c dso_beos.c make[2]: Leaving directory ` making depend in crypto/engine... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- eng_err.c eng_lib.c eng_list.c eng_init.c eng_ctrl.c eng_table.c eng_pkey.c eng_fat.c eng_all.c tb_rsa.c tb_dsa.c tb_ecdsa.c tb_dh.c tb_ecdh.c tb_rand.c tb_store.c tb_cipher.c tb_digest.c tb_pkmeth.c tb_asnmth.c eng_openssl.c eng_cnf.c eng_dyn.c eng_cryptodev.c eng_rdrand.c make[2]: Leaving directory ` making depend in crypto/buffer... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- buffer.c buf_str.c buf_err.c make[2]: Leaving directory ` making depend in crypto/bio... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- bio_lib.c bio_cb.c bio_err.c bss_mem.c bss_null.c bss_fd.c bss_file.c bss_sock.c bss_conn.c bf_null.c bf_buff.c b_print.c b_dump.c b_sock.c bss_acpt.c bf_nbio.c bss_log.c bss_bio.c bss_dgram.c make[2]: Leaving directory ` making depend in crypto/stack... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- stack.c make[2]: Leaving directory ` making depend in crypto/lhash... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- lhash.c lh_stats.c make[2]: Leaving directory ` making depend in crypto/rand... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- md_rand.c randfile.c rand_lib.c rand_err.c rand_egd.c rand_win.c rand_unix.c rand_os2.c rand_nw.c make[2]: Leaving directory ` making depend in crypto/err... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- err.c err_all.c err_prn.c make[2]: Leaving directory ` making depend in crypto/evp... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- encode.c digest.c evp_enc.c evp_key.c evp_acnf.c evp_cnf.c e_des.c e_bf.c e_idea.c e_des3.c e_camellia.c e_rc4.c e_aes.c names.c e_seed.c e_xcbc_d.c e_rc2.c e_cast.c e_rc5.c m_null.c m_md2.c m_md4.c m_md5.c m_sha.c m_sha1.c m_wp.c m_dss.c m_dss1.c m_mdc2.c m_ripemd.c m_ecdsa.c p_open.c p_seal.c p_sign.c p_verify.c p_lib.c p_enc.c p_dec.c bio_md.c bio_b64.c bio_enc.c evp_err.c e_null.c c_all.c c_allc.c c_alld.c evp_lib.c bio_ok.c evp_pkey.c evp_pbe.c p5_crpt.c p5_crpt2.c e_old.c pmeth_lib.c pmeth_fn.c pmeth_gn.c m_sigver.c e_aes_cbc_hmac_sha1.c e_aes_cbc_hmac_sha256.c e_rc4_hmac_md5.c make[2]: Leaving directory ` making depend in crypto/asn1... make[2]: Entering directory ` ../../util/domd ../.. -MD powerpc64-linux-gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- a_object.c a_bitstr.c a_utctm.c a_gentm.c a_time.c a_int.c a_octet.c a_print.c a_type.c a_set.c a_dup.c a_d2i_fp.c a_i2d_fp.c a_enum.c a_utf8.c a_sign.c a_digest.c a_verify.c a_mbstr.c a_strex.c x_algor.c x_val.c x_pubkey.c x_sig.c x_req.c x_attrib.c x_bignum.c x_long.c x_name.c x_x509.c x_x509a.c x_crl.c x_info.c x_spki.c nsseq.c x_nx509.c d2i_pu.c d2i_pr.c i2d_pu.c i2d_pr.c t_req.c t_x509.c t_x509a.c t_crl.c t_pkey.c t_spki.c t_bitst.c tasn_new.c tasn_fre.c tasn_enc.c tasn_dec.c tasn_utl.c tasn_typ.c tasn_prn.c ameth_lib.c f_int.c f_string.c n_pkey.c f_enum.c x_pkey.c a_bool.c x_exten.c bio_asn1.c bio_ndef.c asn_mime.c asn1_gen.c asn1_par.c asn1_lib.c asn1_err.c a_bytes.c a_strnid.c evp_asn1.c asn_pack.c p5_pbe.c p5_pbev2.c p8_pkey.c asn_moid.c virtual memory exhausted: Cannot allocate memory virtual memory exhausted: Cannot allocate memory virtual memory exhausted: Cannot allocate memory virtual memory exhausted: Cannot allocate memory virtual memory exhausted: Cannot allocate memory virtual memory exhausted: Cannot allocate memory virtual memory exhausted: Cannot allocate memory virtual memory exhausted: Cannot allocate memory virtual memory exhausted: Cannot allocate memory virtual memory exhausted: Cannot allocate memory virtual memory exhausted: Cannot allocate memory virtual memory exhausted: Cannot allocate memory virtual memory exhausted: Cannot allocate memory virtual memory exhausted: Cannot allocate memory virtual memory exhausted: Cannot allocate memory virtual memory exhausted: Cannot allocate memory out of memory out of memory powerpc64-linux-gcc: error trying to exec '/opt/cisco/trust/buildroot-ppc64-big-endian/output/host/usr/libexec/gcc/powerpc64-buildroot-linux-gnu/4.8.4/cc1': execv: Cannot allocate memory /opt/cisco/trust/buildroot-ppc64-big-endian/output/host/usr/libexec/gcc/powerpc64-buildroot-linux-gnu/4.8.4/cc1: error while loading shared libraries: cannot allocate dependency list: Cannot allocate memory out of memory powerpc64-linux-gcc: error trying to exec '/opt/cisco/trust/buildroot-ppc64-big-endian/output/host/usr/libexec/gcc/powerpc64-buildroot-linux-gnu/4.8.4/cc1': execv: Cannot allocate memory powerpc64-linux-gcc: error trying to exec '/opt/cisco/trust/buildroot-ppc64-big-endian/output/host/usr/libexec/gcc/powerpc64-buildroot-linux-gnu/4.8.4/cc1': execv: Cannot allocate memory powerpc64-linux-gcc: error trying to exec '/opt/cisco/trust/buildroot-ppc64-big-endian/output/host/usr/libexec/gcc/powerpc64-buildroot-linux-gnu/4.8.4/cc1': execv: Cannot allocate memory powerpc64-linux-gcc: error trying to exec '/opt/cisco/trust/buildroot-ppc64-big-endian/output/host/usr/libexec/gcc/powerpc64-buildroot-linux-gnu/4.8.4/cc1': execv: Cannot allocate memory powerpc64-linux-gcc: error trying to exec '/opt/cisco/trust/buildroot-ppc64-big-endian/output/host/usr/libexec/gcc/powerpc64-buildroot-linux-gnu/4.8.4/cc1': execv: Cannot allocate memory powerpc64-linux-gcc: error trying to exec '/opt/cisco/trust/buildroot-ppc64-big-endian/output/host/usr/libexec/gcc/powerpc64-buildroot-linux-gnu/4.8.4/cc1': execv: Cannot allocate memory powerpc64-linux-gcc: error trying to exec '/opt/cisco/trust/buildroot-ppc64-big-endian/output/host/usr/libexec/gcc/powerpc64-buildroot-linux-gnu/4.8.4/cc1': execv: Cannot allocate memory powerpc64-linux-gcc: error trying to exec '/opt/cisco/trust/buildroot-ppc64-big-endian/output/host/usr/libexec/gcc/powerpc64-buildroot-linux-gnu/4.8.4/cc1': execv: Cannot allocate memory powerpc64-linux-gcc: error trying to exec '/opt/cisco/trust/buildroot-ppc64-big-endian/output/host/usr/libexec/gcc/powerpc64-buildroot-linux-gnu/4.8.4/cc1': execv: Cannot allocate memory powerpc64-linux-gcc: error trying to exec '/opt/cisco/trust/buildroot-ppc64-big-endian/output/host/usr/libexec/gcc/powerpc64-buildroot-linux-gnu/4.8.4/cc1': execv: Cannot allocate memory powerpc64-linux-gcc: error trying to exec '/opt/cisco/trust/buildroot-ppc64-big-endian/output/host/usr/libexec/gcc/powerpc64-buildroot-linux-gnu/4.8.4/cc1': execv: Cannot allocate memory powerpc64-linux-gcc: error trying to exec '/opt/cisco/trust/buildroot-ppc64-big-endian/output/host/usr/libexec/gcc/powerpc64-buildroot-linux-gnu/4.8.4/cc1': execv: Cannot allocate memory powerpc64-linux-gcc: error trying to exec '/opt/cisco/trust/buildroot-ppc64-big-endian/output/host/usr/libexec/gcc/powerpc64-buildroot-linux-gnu/4.8.4/cc1': execv: Cannot allocate memory powerpc64-linux-gcc: error trying to exec '/opt/cisco/trust/buildroot-ppc64-big-endian/output/host/usr/libexec/gcc/powerpc64-buildroot-linux-gnu/4.8.4/cc1': execv: Cannot allocate memory powerpc64-linux-gcc: error trying to exec '/opt/cisco/trust/buildroot-ppc64-big-endian/output/host/usr/libexec/gcc/powerpc64-buildroot-linux-gnu/4.8.4/cc1': execv: Cannot allocate memory /opt/cisco/trust/buildroot-ppc64-big-endian/output/host/usr/libexec/gcc/powerpc64-buildroot-linux-gnu/4.8.4/cc1: error while loading shared libraries: libdl.so.2: failed to map segment from shared object: Cannot allocate memory powerpc64-linux-gcc: error trying to exec '/opt/cisco/trust/buildroot-ppc64-big-endian/output/host/usr/libexec/gcc/powerpc64-buildroot-linux-gnu/4.8.4/cc1': execv: Cannot allocate memory powerpc64-linux-gcc: error trying to exec '/opt/cisco/trust/buildroot-ppc64-big-endian/output/host/usr/libexec/gcc/powerpc64-buildroot-linux-gnu/4.8.4/cc1': execv: Cannot allocate memory make[2]: *** [depend] Error 1 make[2]: Leaving directory ` make[1]: *** [depend] Error 1 make[1]: Leaving directory ` make: *** [depend] Error 1 Build step 'Execute shell' marked build as failure From osslsanity at gmail.com Thu Apr 20 06:49:23 2017 From: osslsanity at gmail.com (address not configured yet) Date: Thu, 20 Apr 2017 06:49:23 +0000 (UTC) Subject: [openssl-commits] Build failed in Jenkins: 1_0_2_norc4 #10 Message-ID: <937804546.2.1492670963629.JavaMail.jenkins@ip-172-31-11-199.us-west-2.compute.internal> See Changes: [matt] Add missing macros for DHxparams [matt] Ensure dhparams can handle X9.42 params in DER [appro] crypto/ppccap.c: SIGILL-free processor capabilities detection on MacOS [rsalz] Additional check to handle BAD SSL_write retry [levitte] pkeyutl exit with 0 if the verification succeeded ------------------------------------------ [...truncated 79.25 KB...] making clean in crypto/bio... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/stack... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/lhash... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/rand... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/err... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/evp... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/asn1... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/pem... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/x509... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/x509v3... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/conf... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/txt_db... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/pkcs7... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff enc dec sign verify make[2]: Leaving directory ` making clean in crypto/pkcs12... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/comp... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/ocsp... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/ui... make[2]: Entering directory ` rm -f *.o */*.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/krb5... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/cms... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/pqueue... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/ts... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff enc dec sign verify make[2]: Leaving directory ` making clean in crypto/srp... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/cmac... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` make[1]: Leaving directory ` making clean in ssl... make[1]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[1]: Leaving directory ` making clean in engines... make[1]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff making clean in engines/ccgost... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff *.so *.sl *.dll make[2]: Leaving directory ` make[1]: Leaving directory ` making clean in apps... make[1]: Entering directory ` rm -f *.o *.obj *.dll lib tags core .pure .nfs* *.old *.bak fluff openssl rm -f req make[1]: Leaving directory ` making clean in test... make[1]: Entering directory ` rm -f .rnd tmp.bntest tmp.bctest *.o *.obj *.dll lib tags core .pure .nfs* *.old *.bak fluff bntest ectest ecdsatest ecdhtest ideatest md2test md4test md5test hmactest wp_test rc2test rc4test rc5test destest shatest sha1test sha256t sha512t mdc2test rmdtest randtest dhtest enginetest bftest casttest ssltest exptest dsatest rsa_test evp_test evp_extra_test igetest jpaketest srptest asn1test v3nametest heartbeat_test constant_time_test verify_extra_test clienthellotest sslv2conftest dtlstest bad_dtls_test *.ss *.srl log dummytest make[1]: Leaving directory ` making clean in tools... make[1]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[1]: Leaving directory ` rm -f libcrypto.a libssl.a rm -f openssl.pc libssl.pc libcrypto.pc rm -f speed.* .pure rm -f ../openssl-1.0.2l-dev.tar + make making all in crypto... make[1]: Entering directory ` /usr/bin/perl ../util/mkbuildinf.pl "gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM" "linux-x86_64" >buildinf.h gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o cryptlib.o cryptlib.c gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o mem.o mem.c gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o mem_dbg.o mem_dbg.c gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o cversion.o cversion.c gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o ex_data.o ex_data.c gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o cpt_err.o cpt_err.c gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o ebcdic.o ebcdic.c gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o uid.o uid.c gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o o_time.o o_time.c gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o o_str.o o_str.c gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o o_dir.o o_dir.c gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o o_fips.o o_fips.c gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o o_init.o o_init.c gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o fips_ers.o fips_ers.c /usr/bin/perl x86_64cpuid.pl elf > x86_64cpuid.s gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o x86_64cpuid.o x86_64cpuid.s ar r ../libcrypto.a cryptlib.o mem.o mem_dbg.o cversion.o ex_data.o cpt_err.o ebcdic.o uid.o o_time.o o_str.o o_dir.o o_fips.o o_init.o fips_ers.o x86_64cpuid.o ar: creating ../libcrypto.a test -z "" || ar r ../libcrypto.a fipscanister.o /usr/bin/ranlib ../libcrypto.a || echo Never mind. making all in crypto/objects... make[2]: Entering directory ` gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o o_names.o o_names.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o obj_dat.o obj_dat.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o obj_lib.o obj_lib.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o obj_err.o obj_err.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o obj_xref.o obj_xref.c ar r ../../libcrypto.a o_names.o obj_dat.o obj_lib.o obj_err.o obj_xref.o /usr/bin/ranlib ../../libcrypto.a || echo Never mind. make[2]: Leaving directory ` making all in crypto/md4... make[2]: Entering directory ` gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o md4_dgst.o md4_dgst.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o md4_one.o md4_one.c ar r ../../libcrypto.a md4_dgst.o md4_one.o /usr/bin/ranlib ../../libcrypto.a || echo Never mind. make[2]: Leaving directory ` making all in crypto/md5... make[2]: Entering directory ` gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o md5_dgst.o md5_dgst.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o md5_one.o md5_one.c /usr/bin/perl asm/md5-x86_64.pl elf > md5-x86_64.s gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o md5-x86_64.o md5-x86_64.s ar r ../../libcrypto.a md5_dgst.o md5_one.o md5-x86_64.o /usr/bin/ranlib ../../libcrypto.a || echo Never mind. make[2]: Leaving directory ` making all in crypto/sha... make[2]: Entering directory ` gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o sha_dgst.o sha_dgst.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o sha1dgst.o sha1dgst.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o sha_one.o sha_one.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o sha1_one.o sha1_one.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o sha256.o sha256.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o sha512.o sha512.c /usr/bin/perl asm/sha1-x86_64.pl elf > sha1-x86_64.s gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o sha1-x86_64.o sha1-x86_64.s /usr/bin/perl asm/sha512-x86_64.pl elf sha256-x86_64.s gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o sha256-x86_64.o sha256-x86_64.s /usr/bin/perl asm/sha512-x86_64.pl elf sha512-x86_64.s gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o sha512-x86_64.o sha512-x86_64.s /usr/bin/perl asm/sha1-mb-x86_64.pl elf > sha1-mb-x86_64.s gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o sha1-mb-x86_64.o sha1-mb-x86_64.s /usr/bin/perl asm/sha256-mb-x86_64.pl elf > sha256-mb-x86_64.s gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o sha256-mb-x86_64.o sha256-mb-x86_64.s ar r ../../libcrypto.a sha_dgst.o sha1dgst.o sha_one.o sha1_one.o sha256.o sha512.o sha1-x86_64.o sha256-x86_64.o sha512-x86_64.o sha1-mb-x86_64.o sha256-mb-x86_64.o /usr/bin/ranlib ../../libcrypto.a || echo Never mind. make[2]: Leaving directory ` making all in crypto/mdc2... make[2]: Entering directory ` gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o mdc2dgst.o mdc2dgst.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o mdc2_one.o mdc2_one.c ar r ../../libcrypto.a mdc2dgst.o mdc2_one.o /usr/bin/ranlib ../../libcrypto.a || echo Never mind. make[2]: Leaving directory ` making all in crypto/hmac... make[2]: Entering directory ` gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o hmac.o hmac.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o hm_ameth.o hm_ameth.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o hm_pmeth.o hm_pmeth.c ar r ../../libcrypto.a hmac.o hm_ameth.o hm_pmeth.o /usr/bin/ranlib ../../libcrypto.a || echo Never mind. make[2]: Leaving directory ` making all in crypto/ripemd... make[2]: Entering directory ` gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o rmd_dgst.o rmd_dgst.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o rmd_one.o rmd_one.c ar r ../../libcrypto.a rmd_dgst.o rmd_one.o /usr/bin/ranlib ../../libcrypto.a || echo Never mind. make[2]: Leaving directory ` making all in crypto/whrlpool... make[2]: Entering directory ` gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o wp_dgst.o wp_dgst.c /usr/bin/perl asm/wp-x86_64.pl elf > wp-x86_64.s gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o wp-x86_64.o wp-x86_64.s ar r ../../libcrypto.a wp_dgst.o wp-x86_64.o /usr/bin/ranlib ../../libcrypto.a || echo Never mind. make[2]: Leaving directory ` making all in crypto/des... make[2]: Entering directory ` gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o set_key.o set_key.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o ecb_enc.o ecb_enc.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o cbc_enc.o cbc_enc.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o ecb3_enc.o ecb3_enc.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o cfb64enc.o cfb64enc.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o cfb64ede.o cfb64ede.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o cfb_enc.o cfb_enc.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o ofb64ede.o ofb64ede.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o enc_read.o enc_read.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o enc_writ.o enc_writ.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o ofb64enc.o ofb64enc.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o ofb_enc.o ofb_enc.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o str2key.o str2key.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o pcbc_enc.o pcbc_enc.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o qud_cksm.o qud_cksm.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o rand_key.o rand_key.c gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -c -o des_enc.o des_enc.c virtual memory exhausted: Cannot allocate memory make[2]: *** [des_enc.o] Error 1 make[2]: Leaving directory ` make[1]: *** [subdirs] Error 1 make[1]: Leaving directory ` make: *** [build_crypto] Error 1 Build step 'Execute shell' marked build as failure From no-reply at appveyor.com Thu Apr 20 09:26:00 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 20 Apr 2017 09:26:00 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.1 Message-ID: <20170420092600.37728.77059.4A992A95@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 20 10:01:42 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 20 Apr 2017 10:01:42 +0000 Subject: [openssl-commits] Build completed: openssl 1.0.2 Message-ID: <20170420100142.59829.37391.3E5CA355@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 20 11:02:44 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 20 Apr 2017 11:02:44 +0000 Subject: [openssl-commits] Build failed: openssl ct_ssl_tests_backport_1.1.0.311 Message-ID: <20170420110243.65036.28943.24A8C8F6@appveyor.com> An HTML attachment was scrubbed... URL: From levitte at openssl.org Thu Apr 20 11:10:12 2017 From: levitte at openssl.org (Richard Levitte) Date: Thu, 20 Apr 2017 11:10:12 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492686612.646537.8360.nullmailer@dev.openssl.org> The branch master has been updated via 27fc8ae22001a066ff99a8108f8dd70e547d6d64 (commit) via f46f69f4092768ec4b911ced45c8cc73cc008739 (commit) from 424aa352458486d67e1e9cd3d3990dc06a60ba4a (commit) - Log ----------------------------------------------------------------- commit 27fc8ae22001a066ff99a8108f8dd70e547d6d64 Author: Richard Levitte Date: Thu Apr 20 11:16:40 2017 +0200 VMS: remove name mangling guards around inclusion of internals Note that these guards are still needed around local header files that declare linkable symbols. Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3259) commit f46f69f4092768ec4b911ced45c8cc73cc008739 Author: Richard Levitte Date: Thu Apr 20 10:14:03 2017 +0200 VMS: Copy DECC inclusion epi- and prologues to internals Because many of our test programs use internal headers, we need to make sure they know how, exactly, to mangle the symbols. So far, we've done so by specifying it in the affected test programs, but as things change, that will develop into a goose chase. Better then to declare once and for all how symbols belonging in our libraries are meant to be treated, internally as well as publically. Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3259) ----------------------------------------------------------------------- Summary of changes: .../include/internal}/__DECC_INCLUDE_EPILOGUE.H | 0 .../include/internal}/__DECC_INCLUDE_PROLOGUE.H | 0 include/{openssl => internal}/__DECC_INCLUDE_EPILOGUE.H | 0 include/{openssl => internal}/__DECC_INCLUDE_PROLOGUE.H | 0 test/asn1_internal_test.c | 10 ---------- test/chacha_internal_test.c | 10 ---------- test/cipher_overhead_test.c | 9 +++++++++ test/poly1305_internal_test.c | 11 ----------- test/siphash_internal_test.c | 11 ----------- 9 files changed, 9 insertions(+), 42 deletions(-) copy {include/openssl => crypto/include/internal}/__DECC_INCLUDE_EPILOGUE.H (100%) copy {include/openssl => crypto/include/internal}/__DECC_INCLUDE_PROLOGUE.H (100%) copy include/{openssl => internal}/__DECC_INCLUDE_EPILOGUE.H (100%) copy include/{openssl => internal}/__DECC_INCLUDE_PROLOGUE.H (100%) diff --git a/include/openssl/__DECC_INCLUDE_EPILOGUE.H b/crypto/include/internal/__DECC_INCLUDE_EPILOGUE.H similarity index 100% copy from include/openssl/__DECC_INCLUDE_EPILOGUE.H copy to crypto/include/internal/__DECC_INCLUDE_EPILOGUE.H diff --git a/include/openssl/__DECC_INCLUDE_PROLOGUE.H b/crypto/include/internal/__DECC_INCLUDE_PROLOGUE.H similarity index 100% copy from include/openssl/__DECC_INCLUDE_PROLOGUE.H copy to crypto/include/internal/__DECC_INCLUDE_PROLOGUE.H diff --git a/include/openssl/__DECC_INCLUDE_EPILOGUE.H b/include/internal/__DECC_INCLUDE_EPILOGUE.H similarity index 100% copy from include/openssl/__DECC_INCLUDE_EPILOGUE.H copy to include/internal/__DECC_INCLUDE_EPILOGUE.H diff --git a/include/openssl/__DECC_INCLUDE_PROLOGUE.H b/include/internal/__DECC_INCLUDE_PROLOGUE.H similarity index 100% copy from include/openssl/__DECC_INCLUDE_PROLOGUE.H copy to include/internal/__DECC_INCLUDE_PROLOGUE.H diff --git a/test/asn1_internal_test.c b/test/asn1_internal_test.c index 6dc8a11..f936098 100644 --- a/test/asn1_internal_test.c +++ b/test/asn1_internal_test.c @@ -59,17 +59,7 @@ static int test_tbl_standard() * ***/ -#ifdef __VMS -# pragma names save -# pragma names as_is,shortened -#endif - #include "internal/asn1_int.h" - -#ifdef __VMS -# pragma names restore -#endif - #include "../crypto/asn1/standard_methods.h" static int test_standard_methods() diff --git a/test/chacha_internal_test.c b/test/chacha_internal_test.c index 1c8d90a..0c0be9b 100644 --- a/test/chacha_internal_test.c +++ b/test/chacha_internal_test.c @@ -16,18 +16,8 @@ #include #include "test_main.h" #include "testutil.h" - -#ifdef __VMS -# pragma names save -# pragma names as_is,shortened -#endif - #include "internal/chacha.h" -#ifdef __VMS -# pragma names restore -#endif - const static unsigned int key[] = { 0x03020100, 0x07060504, 0x0b0a0908, 0x0f0e0d0c, 0x13121110, 0x17161514, 0x1b1a1918, 0x1f1e1d1c diff --git a/test/cipher_overhead_test.c b/test/cipher_overhead_test.c index 5ddd21c..98d44bd 100644 --- a/test/cipher_overhead_test.c +++ b/test/cipher_overhead_test.c @@ -11,8 +11,17 @@ #include "testutil.h" #include "test_main.h" +#ifdef __VMS +# pragma names save +# pragma names as_is,shortened +#endif + #include "../ssl/ssl_locl.h" +#ifdef __VMS +# pragma names restore +#endif + static int cipher_overhead(void) { int ret = 1, i, n = ssl3_num_ciphers(); diff --git a/test/poly1305_internal_test.c b/test/poly1305_internal_test.c index 1ede874..03b0fa9 100644 --- a/test/poly1305_internal_test.c +++ b/test/poly1305_internal_test.c @@ -14,18 +14,7 @@ #include "testutil.h" #include "test_main_custom.h" - -#ifdef __VMS -# pragma names save -# pragma names as_is,shortened -#endif - #include "internal/poly1305.h" - -#ifdef __VMS -# pragma names restore -#endif - #include "../crypto/poly1305/poly1305_local.h" #include "e_os.h" diff --git a/test/siphash_internal_test.c b/test/siphash_internal_test.c index 2df7f39..fd097e0 100644 --- a/test/siphash_internal_test.c +++ b/test/siphash_internal_test.c @@ -15,18 +15,7 @@ #include #include "testutil.h" #include "test_main_custom.h" - -#ifdef __VMS -# pragma names save -# pragma names as_is,shortened -#endif - #include "internal/siphash.h" - -#ifdef __VMS -# pragma names restore -#endif - #include "../crypto/siphash/siphash_local.h" #include "e_os.h" From no-reply at appveyor.com Thu Apr 20 11:33:39 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 20 Apr 2017 11:33:39 +0000 Subject: [openssl-commits] Build completed: openssl ct_ssl_tests_backport_1.1.0.312 Message-ID: <20170420113339.23134.50079.F86DE8E7@appveyor.com> An HTML attachment was scrubbed... URL: From builds at travis-ci.org Thu Apr 20 11:32:13 2017 From: builds at travis-ci.org (Travis CI) Date: Thu, 20 Apr 2017 11:32:13 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10426 (master - 27fc8ae) In-Reply-To: Message-ID: <58f89c80907c8_43fe7ac2c48086337de@9f56771b-ba82-4ab6-b13c-200a354a17d4.mail> Build Update for openssl/openssl ------------------------------------- Build: #10426 Status: Still Failing Duration: 21 minutes and 51 seconds Commit: 27fc8ae (master) Author: Richard Levitte Message: VMS: remove name mangling guards around inclusion of internals Note that these guards are still needed around local header files that declare linkable symbols. Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3259) View the changeset: https://github.com/openssl/openssl/compare/424aa3524584...27fc8ae22001 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/223914557 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 20 12:35:13 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 20 Apr 2017 12:35:13 +0000 Subject: [openssl-commits] Build failed: openssl master.9742 Message-ID: <20170420123513.128153.34717.21DCCBBE@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 20 12:43:25 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 20 Apr 2017 12:43:25 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.4 Message-ID: <20170420124325.92190.38498.98B4F787@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 20 12:49:13 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 20 Apr 2017 12:49:13 +0000 Subject: [openssl-commits] Build completed: openssl master.9743 Message-ID: <20170420124912.38119.53786.E60C11C4@appveyor.com> An HTML attachment was scrubbed... URL: From levitte at openssl.org Thu Apr 20 12:56:22 2017 From: levitte at openssl.org (Richard Levitte) Date: Thu, 20 Apr 2017 12:56:22 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492692982.776638.18386.nullmailer@dev.openssl.org> The branch master has been updated via 112c4e02680eeb3f9369f270f009a577fdb4019b (commit) from 27fc8ae22001a066ff99a8108f8dd70e547d6d64 (commit) - Log ----------------------------------------------------------------- commit 112c4e02680eeb3f9369f270f009a577fdb4019b Author: Richard Levitte Date: Thu Apr 20 13:30:08 2017 +0200 Fix test/recipes/95-test_external_krb5.t "skip() needs to know $how_many tests are in the block" Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3261) ----------------------------------------------------------------------- Summary of changes: test/recipes/95-test_external_krb5.t | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/recipes/95-test_external_krb5.t b/test/recipes/95-test_external_krb5.t index 8144003..9981354 100644 --- a/test/recipes/95-test_external_krb5.t +++ b/test/recipes/95-test_external_krb5.t @@ -16,7 +16,7 @@ setup("test_external_krb5"); plan tests => 1; SKIP: { - skip "No external tests in this configuration" + skip "No external tests in this configuration", 1 if disabled("external-tests"); skip "krb5 not available", 1 if ! -f srctop_file("krb5", "README"); From no-reply at appveyor.com Thu Apr 20 13:19:05 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 20 Apr 2017 13:19:05 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.5 Message-ID: <20170420131903.94862.60457.380FC184@appveyor.com> An HTML attachment was scrubbed... URL: From builds at travis-ci.org Thu Apr 20 13:16:13 2017 From: builds at travis-ci.org (Travis CI) Date: Thu, 20 Apr 2017 13:16:13 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10431 (master - 112c4e0) In-Reply-To: Message-ID: <58f8b49be5923_43fe7ac2c42e0828939@9f56771b-ba82-4ab6-b13c-200a354a17d4.mail> Build Update for openssl/openssl ------------------------------------- Build: #10431 Status: Still Failing Duration: 18 minutes and 46 seconds Commit: 112c4e0 (master) Author: Richard Levitte Message: Fix test/recipes/95-test_external_krb5.t "skip() needs to know $how_many tests are in the block" Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3261) View the changeset: https://github.com/openssl/openssl/compare/27fc8ae22001...112c4e02680e View the full build log and details: https://travis-ci.org/openssl/openssl/builds/223945516 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 20 13:57:39 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 20 Apr 2017 13:57:39 +0000 Subject: [openssl-commits] Build completed: openssl 1.0.6 Message-ID: <20170420135738.60346.57739.F786EBE5@appveyor.com> An HTML attachment was scrubbed... URL: From osslsanity at gmail.com Thu Apr 20 15:09:19 2017 From: osslsanity at gmail.com (address not configured yet) Date: Thu, 20 Apr 2017 15:09:19 +0000 (UTC) Subject: [openssl-commits] Build failed in Jenkins: master_basic #15 Message-ID: <1257012735.0.1492700959922.JavaMail.jenkins@ip-172-31-11-199.us-west-2.compute.internal> See Changes: [levitte] In rand_cleanup_int(), don't go creating a default method [appro] Add support for MLOCK_ONFAULT to secure arena [appro] e_os2.h: Refine OSSL_SSIZE definition under UEFI environment [levitte] Make getting and setting the RAND default method thread safe [levitte] Don't try to clean up RAND from ENGINE [matt] Move ssl/t1_ext.c to ssl/statem/extensions_cust.c [matt] Move the extensions context codes into the public API [matt] Implement a new custom extensions API [matt] Add some tests for the new custom extensions API [matt] Add documentation for the new custom extensions API [matt] Various style tweaks based on feedback [matt] Prefix custom extension API callback types with SSL_ [matt] Create an ENDPOINT enum type for use internally [matt] Remove an out of date TODO [matt] Fix a test failure when configured without TLSv1.3 [levitte] Fix rand_lib.c for no-engine configuration [rsalz] Make default_method mostly compile-time [rsalz] Make default_method mostly compile-time (cont'd) [rsalz] Check for L [rsalz] Add missing =back [rsalz] Standardize on =over 4 and check for it. [rsalz] Use 'over 2' for bullet lists. [appro] appveyor.yml: split {build,test}_scripts to avoid exit code masking. [appro] asn1/x_long.c: remove conditions in inner loops and dependency on BN. [appro] rand/rand_lib.c: keep fixing no-engine configuration. [levitte] Publish our INT32, UINT32, INT64, UINT64 ASN.1 types and Z variants [levitte] Discourage the use of LONG and ZLONG, and deprecate it in the future [levitte] Act on deprecation of LONG and ZLONG, step 1 [levitte] Act on deprecation of LONG and ZLONG, step 2 [levitte] Act on deprecation of LONG and ZLONG, step 3 [levitte] Add a note in CHANGES [levitte] Fix util/mkdef.pl [rsalz] Allow an ALPN callback to pretend to not exist [rsalz] Make test marcos for true/false checks reliable for all integral types. [rsalz] Update rc2test to use the test infrastructure [matt] Update md2test to use the test infrastructure [matt] Update dtlstest to use the test infrastructure [matt] Reject decoding of an INT64 with a value >INT64_MAX [rsalz] Additional check to handle BAD SSL_write retry [rsalz] Remove ECDH(E) ciphers from SSLv3 [levitte] Fix int64 test of t_4bytes_4_neg [levitte] Fix x_int64.c [matt] Convert bad_dtls_test for the new test framework [matt] Convert asynciotest for the new test framework [matt] Convert clienthellotest for the new test framework [rsalz] Added error checking for OBJ_create [levitte] Convert exdata tests to new test framework [matt] Update sha256t and sha512t to use the test infrastructure [matt] Update sha1test to use the test infrastructure [matt] Update mdc2test to use the test infrastructure [matt] Update rc5test to use the test infrastructure [matt] Update rc4test to use the test infrastructure [matt] Convert RSA tests to new framework [matt] Updates after code review [matt] Remove seed completely... [matt] Convert blowfish tests to new framework [matt] Code review. Split tests up [matt] Remove unused variable. Thanks @pauli-oracle [matt] Update d2i_test to use the test infrastructure [matt] Update secmemtest and memeleaktest to use the test infrastructure. [matt] Update gmdifftime to use the test infrastructure [matt] Update ideatest to use the test infrastructure [matt] Update sanitytest to use the test infrastructure [levitte] In asn1_encode_test.c, add custom DER encoding checks [levitte] Fix definition of i2d_fn in asn1_encode_test.c [levitte] Add tests of custom negative 1 [matt] Update the internal chacha test to use the framework Reviewed-by: [levitte] Update threadstest to use the test framework [levitte] Remove fprintfs from the poly1305 internal test but keep the test number [levitte] test/testutil.c: Flush stdout when running tests [levitte] Update destest to use the test infrastructure [levitte] ecdhtest.c: move NAMED CURVES TESTS to evptests.txt [levitte] Remove stale code in ecdhtest.c [levitte] ecdhtest.c: move KATs to evptests.txt [levitte] Remove more stale code in ecdhtest.c [levitte] OpenSSL::Test: supported filtered command output [rsalz] Convert x509aux, cipherlist, casttest [rsalz] Address review feedback (to be squashed) [levitte] Add SSL tests for certificates with embedded SCTs [levitte] CT_POLICY_EVAL_CTX_set_time expects milliseconds, but given seconds [levitte] Correct travis.yml to only build extended tests when explicitely asked [rsalz] OCSP Updates: error codes and multiple certificates [levitte] Test printing of ASN.1 types INTxx et al [levitte] ASN.1: extend the possibilities to embed data instead of pointers [levitte] ASN.1: change INTxx, UINTxx and Z variants to be embedable [levitte] ASN.1: adapt our use of INTxx et al by making them explicitely embedded [levitte] Split the CAST tests up. [levitte] Update the internal siphash tests to use the framework's output. [rsalz] Guarantee single argument evaluation for test macros. Add test case that [appro] testlib/OpenSSL/Test.pm: keep default input private. [appro] asn1/a_int.c: remove code duplicate and optimize branches, [appro] asn1/a_int.c: simplify asn1_put_uint64. [appro] asn1/a_int.c: don't write result if returning error. [rsalz] Fix unit tests when no-bf configured [rsalz] WIP: Convert ui,v3ext,verify_extra_test [rsalz] ecdhtest.c: move co-factor ECDH KATs to evptests [rsalz] Remove ecdhtest.c [rsalz] Reformat evptests.txt [rsalz] Add -f -r flags to find-unused-errs [kurt] Switch libfuzzer to use trace-pc-guard [kurt] Make x509 and asn1 fuzzer reproducible [kurt] Document how to update the corpus. [kurt] Use a fixed time when fuzzing. [kurt] Optionally check for early data [rsalz] Catch EC_R_UNKNOWN_GROUP in check_unsupported() [rsalz] Convert afalgtest [rsalz] [squash]Build works with/out NO_ENGINE and NO_AFALG [appro] asn1/a_int.c: clean up asn1_get_int64. [rsalz] update docs because depth refers only to intermediate certs [levitte] Add external krb5 test support [levitte] Update external test README for running krb5 [levitte] Fix formatting of PYCA external test instructions [levitte] [extended tests] Enable krb5 tests in Travis [rsalz] Convert more tests [rsalz] Convert more tests to framework [rsalz] Update more tests [rsalz] Convert more tests [levitte] VMS: Fix the passing of cflags for things not being installed [levitte] VMS: Fix internals test programs [rsalz] Convert dhtest, dsatest, cipherbytes_test [rsalz] Document Next Protocol Negotiation APIs [rsalz] Fix minor compiler issues. [rsalz] Change 64-bit time type for windows [levitte] VMS: Copy DECC inclusion epi- and prologues to internals [levitte] VMS: remove name mangling guards around inclusion of internals [levitte] Fix test/recipes/95-test_external_krb5.t ------------------------------------------ Started by an SCM change Building in workspace > git rev-parse --is-inside-work-tree # timeout=10 Fetching changes from the remote Git repository > git config remote.origin.url https://github.com/openssl/openssl.git # timeout=10 Fetching upstream changes from https://github.com/openssl/openssl.git > git --version # timeout=10 > git fetch --tags --progress https://github.com/openssl/openssl.git +refs/heads/*:refs/remotes/origin/* > git rev-parse refs/remotes/origin/master^{commit} # timeout=10 > git rev-parse refs/remotes/origin/origin/master^{commit} # timeout=10 Checking out Revision 112c4e02680eeb3f9369f270f009a577fdb4019b (refs/remotes/origin/master) > git config core.sparsecheckout # timeout=10 > git checkout -f 112c4e02680eeb3f9369f270f009a577fdb4019b > git rev-list 5748e4dc3ab1cdde43ae6feecb106e3a41adcdf4 # timeout=10 [master_basic] $ /bin/sh -xe /tmp/jenkins3691106943620806043.sh + ./config no-shared Operating system: x86_64-whatever-linux2 Configuring OpenSSL version 1.1.1-dev (0x10101000L) no-aria [default] OPENSSL_NO_ARIA (skip dir) no-asan [default] OPENSSL_NO_ASAN no-crypto-mdebug [default] OPENSSL_NO_CRYPTO_MDEBUG no-crypto-mdebug-backtrace [default] OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE no-dynamic-engine [forced] no-ec_nistp_64_gcc_128 [default] OPENSSL_NO_EC_NISTP_64_GCC_128 no-egd [default] OPENSSL_NO_EGD no-external-tests [default] OPENSSL_NO_EXTERNAL_TESTS no-fuzz-afl [default] OPENSSL_NO_FUZZ_AFL no-fuzz-libfuzzer [default] OPENSSL_NO_FUZZ_LIBFUZZER no-heartbeats [default] OPENSSL_NO_HEARTBEATS no-md2 [default] OPENSSL_NO_MD2 (skip dir) no-msan [default] OPENSSL_NO_MSAN no-rc5 [default] OPENSSL_NO_RC5 (skip dir) no-sctp [default] OPENSSL_NO_SCTP no-shared [option] no-ssl-trace [default] OPENSSL_NO_SSL_TRACE no-ssl3 [default] OPENSSL_NO_SSL3 no-ssl3-method [default] OPENSSL_NO_SSL3_METHOD no-tls13downgrade [default] OPENSSL_NO_TLS13DOWNGRADE no-tls1_3 [default] OPENSSL_NO_TLS1_3 no-ubsan [default] OPENSSL_NO_UBSAN no-unit-test [default] OPENSSL_NO_UNIT_TEST no-weak-ssl-ciphers [default] OPENSSL_NO_WEAK_SSL_CIPHERS no-zlib [default] no-zlib-dynamic [default] Configuring for linux-x86_64 PERL =/usr/bin/perl PERLVERSION =5.18.2 for x86_64-linux-gnu-thread-multi HASHBANGPERL =/usr/bin/env perl CC =gcc CFLAG =-Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack CXX =g++ CXXFLAG =-Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack DEFINES =DSO_DLFCN HAVE_DLFCN_H NDEBUG OPENSSL_THREADS OPENSSL_NO_DYNAMIC_ENGINE OPENSSL_PIC OPENSSL_IA32_SSE2 OPENSSL_BN_ASM_MONT OPENSSL_BN_ASM_MONT5 OPENSSL_BN_ASM_GF2m SHA1_ASM SHA256_ASM SHA512_ASM RC4_ASM MD5_ASM AES_ASM VPAES_ASM BSAES_ASM GHASH_ASM ECP_NISTZ256_ASM PADLOCK_ASM POLY1305_ASM EX_LIBS =-ldl + make depend + make clean rm -f rm -f rm -f libcrypto.a libssl.a rm -f *.map rm -f apps/openssl fuzz/asn1-test fuzz/asn1parse-test fuzz/bignum-test fuzz/bndiv-test fuzz/client-test fuzz/cms-test fuzz/conf-test fuzz/crl-test fuzz/ct-test fuzz/server-test fuzz/x509-test test/aborttest test/afalgtest test/asn1_encode_test test/asn1_internal_test test/asynciotest test/asynctest test/bad_dtls_test test/bftest test/bio_enc_test test/bioprinttest test/bntest test/buildtest_aes test/buildtest_asn1 test/buildtest_asn1t test/buildtest_async test/buildtest_bio test/buildtest_blowfish test/buildtest_bn test/buildtest_buffer test/buildtest_camellia test/buildtest_cast test/buildtest_cmac test/buildtest_cms test/buildtest_comp test/buildtest_conf test/buildtest_conf_api test/buildtest_crypto test/buildtest_ct test/buildtest_des test/buildtest_dh test/buildtest_dsa test/buildtest_dtls1 test/buildtest_e_os2 test/buildtest_ebcdic test/buildtest_ec test/buildtest_ecdh test/buildtest_ecdsa test/buildtest_engine test/buildtest_err test/buildtest_evp test/buildtest_hmac test/buildtest_idea test/buildtest_kdf test/buildtest_lhash test/buildtest_md4 test/buildtest_md5 test/buildtest_mdc2 test/buildtest_modes test/buildtest_obj_mac test/buildtest_objects test/buildtest_ocsp test/buildtest_opensslconf test/buildtest_opensslv test/buildtest_ossl_typ test/buildtest_pem test/buildtest_pem2 test/buildtest_pkcs12 test/buildtest_pkcs7 test/buildtest_rand test/buildtest_rc2 test/buildtest_rc4 test/buildtest_ripemd test/buildtest_rsa test/buildtest_safestack test/buildtest_seed test/buildtest_sha test/buildtest_srp test/buildtest_srtp test/buildtest_ssl test/buildtest_ssl2 test/buildtest_stack test/buildtest_symhacks test/buildtest_tls1 test/buildtest_ts test/buildtest_txt_db test/buildtest_ui test/buildtest_whrlpool test/buildtest_x509 test/buildtest_x509_vfy test/buildtest_x509v3 test/casttest test/chacha_internal_test test/cipher_overhead_test test/cipherbytes_test test/cipherlist_test test/clienthellotest test/constant_time_test test/crltest test/ct_test test/d2i_test test/danetest test/destest test/dhtest test/dsatest test/dtls_mtu_test test/dtlstest test/dtlsv1listentest test/ecdsatest test/ectest test/enginetest test/evp_extra_test test/evp_test test/exdatatest test/exptest test/gmdifftest test/hmactest test/ideatest test/igetest test/lhash_test test/md2test test/mdc2_internal_test test/mdc2test test/memleaktest test/modes_internal_test test/packettest test/pbelutest test/pkey_meth_test test/poly1305_internal_test test/randtest test/rc2test test/rc4test test/rc5test test/recordlentest test/rsa_test test/sanitytest test/secmemtest test/sha1test test/sha256t test/sha512t test/siphash_internal_test test/srptest test/ssl_test test/ssl_test_ctx_test test/sslapitest test/sslcorrupttest test/ssltest_old test/stack_test test/test_test test/threadstest test/tls13encryptiontest test/uitest test/v3ext test/v3nametest test/verify_extra_test test/wpackettest test/x509_internal_test test/x509_time_test test/x509aux apps/CA.pl apps/tsget tools/c_rehash util/shlib_wrap.sh rm -f test/buildtest_conf.c test/buildtest_txt_db.c crypto/aes/aesni-x86_64.s test/buildtest_opensslv.c test/buildtest_ts.c test/buildtest_x509_vfy.c test/buildtest_ecdh.c test/buildtest_stack.c test/buildtest_cms.c crypto/bn/rsaz-avx2.s test/buildtest_tls1.c test/buildtest_ocsp.c test/buildtest_e_os2.c crypto/chacha/chacha-x86_64.s test/buildtest_ssl.c test/buildtest_asn1.c test/buildtest_conf_api.c crypto/md5/md5-x86_64.s crypto/sha/sha256-mb-x86_64.s crypto/sha/sha1-mb-x86_64.s test/buildtest_cast.c crypto/aes/vpaes-x86_64.s crypto/aes/aesni-sha1-x86_64.s test/buildtest_err.c crypto/rc4/rc4-x86_64.s test/buildtest_opensslconf.c test/buildtest_md4.c crypto/camellia/cmll-x86_64.s engines/e_padlock-x86_64.s test/buildtest_ripemd.c test/buildtest_async.c crypto/modes/aesni-gcm-x86_64.s crypto/rc4/rc4-md5-x86_64.s test/buildtest_dtls1.c test/buildtest_x509v3.c test/buildtest_seed.c test/buildtest_sha.c test/buildtest_rand.c crypto/whrlpool/wp-x86_64.s crypto/sha/sha1-x86_64.s test/buildtest_pem.c test/buildtest_rc2.c test/buildtest_mdc2.c test/buildtest_kdf.c test/buildtest_evp.c test/buildtest_dh.c test/buildtest_camellia.c test/buildtest_ct.c test/buildtest_aes.c test/buildtest_des.c crypto/sha/sha512-x86_64.s test/buildtest_pem2.c test/buildtest_srtp.c crypto/poly1305/poly1305-x86_64.s test/buildtest_pkcs7.c crypto/aes/aesni-sha256-x86_64.s test/buildtest_cmac.c test/buildtest_ssl2.c crypto/aes/aesni-mb-x86_64.s test/buildtest_srp.c crypto/bn/rsaz-x86_64.s test/buildtest_obj_mac.c test/buildtest_rsa.c test/buildtest_symhacks.c test/buildtest_asn1t.c crypto/ec/ecp_nistz256-x86_64.s crypto/x86_64cpuid.s crypto/bn/x86_64-mont.s test/buildtest_lhash.c test/buildtest_ossl_typ.c crypto/modes/ghash-x86_64.s test/buildtest_crypto.c test/buildtest_hmac.c test/buildtest_idea.c test/buildtest_ecdsa.c test/buildtest_x509.c test/buildtest_engine.c test/buildtest_buffer.c test/buildtest_ec.c test/buildtest_modes.c crypto/aes/aes-x86_64.s test/buildtest_blowfish.c crypto/aes/bsaes-x86_64.s crypto/bn/x86_64-mont5.s test/buildtest_bn.c test/buildtest_ui.c test/buildtest_bio.c test/buildtest_md5.c test/buildtest_objects.c test/buildtest_pkcs12.c test/buildtest_safestack.c test/buildtest_whrlpool.c test/buildtest_rc4.c crypto/bn/x86_64-gf2m.s test/buildtest_ebcdic.c crypto/sha/sha256-x86_64.s test/buildtest_comp.c test/buildtest_dsa.c crypto/include/internal/bn_conf.h crypto/include/internal/dso_conf.h crypto/buildinf.h include/openssl/opensslconf.h rm -f `find . -name '*.d' -a \! -path "./.git/*"` rm -f `find . -name '*.o' -a \! -path "./.git/*"` rm -f core rm -f tags TAGS doc-nits rm -f test/.rnd rm -f openssl.pc libcrypto.pc libssl.pc rm -f `find . -type l -a \! -path "./.git/*"` rm -f ../openssl-1.1.1-dev.tar + make /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \ "-oMakefile" crypto/include/internal/bn_conf.h.in > crypto/include/internal/bn_conf.h /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \ "-oMakefile" crypto/include/internal/dso_conf.h.in > crypto/include/internal/dso_conf.h /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \ "-oMakefile" include/openssl/opensslconf.h.in > include/openssl/opensslconf.h make depend && make _all make[1]: Entering directory ` make[1]: Leaving directory ` make[1]: Entering directory ` CC="gcc" /usr/bin/perl crypto/aes/asm/aes-x86_64.pl elf crypto/aes/aes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes-x86_64.d.tmp -MT crypto/aes/aes-x86_64.o -c -o crypto/aes/aes-x86_64.o crypto/aes/aes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_cfb.d.tmp -MT crypto/aes/aes_cfb.o -c -o crypto/aes/aes_cfb.o crypto/aes/aes_cfb.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_ecb.d.tmp -MT crypto/aes/aes_ecb.o -c -o crypto/aes/aes_ecb.o crypto/aes/aes_ecb.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_ige.d.tmp -MT crypto/aes/aes_ige.o -c -o crypto/aes/aes_ige.o crypto/aes/aes_ige.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_misc.d.tmp -MT crypto/aes/aes_misc.o -c -o crypto/aes/aes_misc.o crypto/aes/aes_misc.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_ofb.d.tmp -MT crypto/aes/aes_ofb.o -c -o crypto/aes/aes_ofb.o crypto/aes/aes_ofb.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_wrap.d.tmp -MT crypto/aes/aes_wrap.o -c -o crypto/aes/aes_wrap.o crypto/aes/aes_wrap.c CC="gcc" /usr/bin/perl crypto/aes/asm/aesni-mb-x86_64.pl elf crypto/aes/aesni-mb-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aesni-mb-x86_64.d.tmp -MT crypto/aes/aesni-mb-x86_64.o -c -o crypto/aes/aesni-mb-x86_64.o crypto/aes/aesni-mb-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/aesni-sha1-x86_64.pl elf crypto/aes/aesni-sha1-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aesni-sha1-x86_64.d.tmp -MT crypto/aes/aesni-sha1-x86_64.o -c -o crypto/aes/aesni-sha1-x86_64.o crypto/aes/aesni-sha1-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/aesni-sha256-x86_64.pl elf crypto/aes/aesni-sha256-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aesni-sha256-x86_64.d.tmp -MT crypto/aes/aesni-sha256-x86_64.o -c -o crypto/aes/aesni-sha256-x86_64.o crypto/aes/aesni-sha256-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/aesni-x86_64.pl elf crypto/aes/aesni-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aesni-x86_64.d.tmp -MT crypto/aes/aesni-x86_64.o -c -o crypto/aes/aesni-x86_64.o crypto/aes/aesni-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/bsaes-x86_64.pl elf crypto/aes/bsaes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/bsaes-x86_64.d.tmp -MT crypto/aes/bsaes-x86_64.o -c -o crypto/aes/bsaes-x86_64.o crypto/aes/bsaes-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/vpaes-x86_64.pl elf crypto/aes/vpaes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/vpaes-x86_64.d.tmp -MT crypto/aes/vpaes-x86_64.o -c -o crypto/aes/vpaes-x86_64.o crypto/aes/vpaes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_bitstr.d.tmp -MT crypto/asn1/a_bitstr.o -c -o crypto/asn1/a_bitstr.o crypto/asn1/a_bitstr.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_d2i_fp.d.tmp -MT crypto/asn1/a_d2i_fp.o -c -o crypto/asn1/a_d2i_fp.o crypto/asn1/a_d2i_fp.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_digest.d.tmp -MT crypto/asn1/a_digest.o -c -o crypto/asn1/a_digest.o crypto/asn1/a_digest.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_dup.d.tmp -MT crypto/asn1/a_dup.o -c -o crypto/asn1/a_dup.o crypto/asn1/a_dup.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_gentm.d.tmp -MT crypto/asn1/a_gentm.o -c -o crypto/asn1/a_gentm.o crypto/asn1/a_gentm.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_i2d_fp.d.tmp -MT crypto/asn1/a_i2d_fp.o -c -o crypto/asn1/a_i2d_fp.o crypto/asn1/a_i2d_fp.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_int.d.tmp -MT crypto/asn1/a_int.o -c -o crypto/asn1/a_int.o crypto/asn1/a_int.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_mbstr.d.tmp -MT crypto/asn1/a_mbstr.o -c -o crypto/asn1/a_mbstr.o crypto/asn1/a_mbstr.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_object.d.tmp -MT crypto/asn1/a_object.o -c -o crypto/asn1/a_object.o crypto/asn1/a_object.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_octet.d.tmp -MT crypto/asn1/a_octet.o -c -o crypto/asn1/a_octet.o crypto/asn1/a_octet.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_print.d.tmp -MT crypto/asn1/a_print.o -c -o crypto/asn1/a_print.o crypto/asn1/a_print.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_sign.d.tmp -MT crypto/asn1/a_sign.o -c -o crypto/asn1/a_sign.o crypto/asn1/a_sign.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_strex.d.tmp -MT crypto/asn1/a_strex.o -c -o crypto/asn1/a_strex.o crypto/asn1/a_strex.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_strnid.d.tmp -MT crypto/asn1/a_strnid.o -c -o crypto/asn1/a_strnid.o crypto/asn1/a_strnid.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_time.d.tmp -MT crypto/asn1/a_time.o -c -o crypto/asn1/a_time.o crypto/asn1/a_time.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_type.d.tmp -MT crypto/asn1/a_type.o -c -o crypto/asn1/a_type.o crypto/asn1/a_type.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_utctm.d.tmp -MT crypto/asn1/a_utctm.o -c -o crypto/asn1/a_utctm.o crypto/asn1/a_utctm.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_utf8.d.tmp -MT crypto/asn1/a_utf8.o -c -o crypto/asn1/a_utf8.o crypto/asn1/a_utf8.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_verify.d.tmp -MT crypto/asn1/a_verify.o -c -o crypto/asn1/a_verify.o crypto/asn1/a_verify.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/ameth_lib.d.tmp -MT crypto/asn1/ameth_lib.o -c -o crypto/asn1/ameth_lib.o crypto/asn1/ameth_lib.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_err.d.tmp -MT crypto/asn1/asn1_err.o -c -o crypto/asn1/asn1_err.o crypto/asn1/asn1_err.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_gen.d.tmp -MT crypto/asn1/asn1_gen.o -c -o crypto/asn1/asn1_gen.o crypto/asn1/asn1_gen.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_item_list.d.tmp -MT crypto/asn1/asn1_item_list.o -c -o crypto/asn1/asn1_item_list.o crypto/asn1/asn1_item_list.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_lib.d.tmp -MT crypto/asn1/asn1_lib.o -c -o crypto/asn1/asn1_lib.o crypto/asn1/asn1_lib.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_par.d.tmp -MT crypto/asn1/asn1_par.o -c -o crypto/asn1/asn1_par.o crypto/asn1/asn1_par.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_mime.d.tmp -MT crypto/asn1/asn_mime.o -c -o crypto/asn1/asn_mime.o crypto/asn1/asn_mime.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_moid.d.tmp -MT crypto/asn1/asn_moid.o -c -o crypto/asn1/asn_moid.o crypto/asn1/asn_moid.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_mstbl.d.tmp -MT crypto/asn1/asn_mstbl.o -c -o crypto/asn1/asn_mstbl.o crypto/asn1/asn_mstbl.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_pack.d.tmp -MT crypto/asn1/asn_pack.o -c -o crypto/asn1/asn_pack.o crypto/asn1/asn_pack.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/bio_asn1.d.tmp -MT crypto/asn1/bio_asn1.o -c -o crypto/asn1/bio_asn1.o crypto/asn1/bio_asn1.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/bio_ndef.d.tmp -MT crypto/asn1/bio_ndef.o -c -o crypto/asn1/bio_ndef.o crypto/asn1/bio_ndef.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/d2i_pr.d.tmp -MT crypto/asn1/d2i_pr.o -c -o crypto/asn1/d2i_pr.o crypto/asn1/d2i_pr.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/d2i_pu.d.tmp -MT crypto/asn1/d2i_pu.o -c -o crypto/asn1/d2i_pu.o crypto/asn1/d2i_pu.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/evp_asn1.d.tmp -MT crypto/asn1/evp_asn1.o -c -o crypto/asn1/evp_asn1.o crypto/asn1/evp_asn1.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/f_int.d.tmp -MT crypto/asn1/f_int.o -c -o crypto/asn1/f_int.o crypto/asn1/f_int.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/f_string.d.tmp -MT crypto/asn1/f_string.o -c -o crypto/asn1/f_string.o crypto/asn1/f_string.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/i2d_pr.d.tmp -MT crypto/asn1/i2d_pr.o -c -o crypto/asn1/i2d_pr.o crypto/asn1/i2d_pr.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/i2d_pu.d.tmp -MT crypto/asn1/i2d_pu.o -c -o crypto/asn1/i2d_pu.o crypto/asn1/i2d_pu.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/n_pkey.d.tmp -MT crypto/asn1/n_pkey.o -c -o crypto/asn1/n_pkey.o crypto/asn1/n_pkey.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/nsseq.d.tmp -MT crypto/asn1/nsseq.o -c -o crypto/asn1/nsseq.o crypto/asn1/nsseq.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p5_pbe.d.tmp -MT crypto/asn1/p5_pbe.o -c -o crypto/asn1/p5_pbe.o crypto/asn1/p5_pbe.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p5_pbev2.d.tmp -MT crypto/asn1/p5_pbev2.o -c -o crypto/asn1/p5_pbev2.o crypto/asn1/p5_pbev2.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p5_scrypt.d.tmp -MT crypto/asn1/p5_scrypt.o -c -o crypto/asn1/p5_scrypt.o crypto/asn1/p5_scrypt.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p8_pkey.d.tmp -MT crypto/asn1/p8_pkey.o -c -o crypto/asn1/p8_pkey.o crypto/asn1/p8_pkey.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/t_bitst.d.tmp -MT crypto/asn1/t_bitst.o -c -o crypto/asn1/t_bitst.o crypto/asn1/t_bitst.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/t_pkey.d.tmp -MT crypto/asn1/t_pkey.o -c -o crypto/asn1/t_pkey.o crypto/asn1/t_pkey.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/t_spki.d.tmp -MT crypto/asn1/t_spki.o -c -o crypto/asn1/t_spki.o crypto/asn1/t_spki.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_dec.d.tmp -MT crypto/asn1/tasn_dec.o -c -o crypto/asn1/tasn_dec.o crypto/asn1/tasn_dec.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_enc.d.tmp -MT crypto/asn1/tasn_enc.o -c -o crypto/asn1/tasn_enc.o crypto/asn1/tasn_enc.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_fre.d.tmp -MT crypto/asn1/tasn_fre.o -c -o crypto/asn1/tasn_fre.o crypto/asn1/tasn_fre.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_new.d.tmp -MT crypto/asn1/tasn_new.o -c -o crypto/asn1/tasn_new.o crypto/asn1/tasn_new.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_prn.d.tmp -MT crypto/asn1/tasn_prn.o -c -o crypto/asn1/tasn_prn.o crypto/asn1/tasn_prn.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_scn.d.tmp -MT crypto/asn1/tasn_scn.o -c -o crypto/asn1/tasn_scn.o crypto/asn1/tasn_scn.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_typ.d.tmp -MT crypto/asn1/tasn_typ.o -c -o crypto/asn1/tasn_typ.o crypto/asn1/tasn_typ.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_utl.d.tmp -MT crypto/asn1/tasn_utl.o -c -o crypto/asn1/tasn_utl.o crypto/asn1/tasn_utl.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/x_algor.d.tmp -MT crypto/asn1/x_algor.o -c -o crypto/asn1/x_algor.o crypto/asn1/x_algor.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/x_bignum.d.tmp -MT crypto/asn1/x_bignum.o -c -o crypto/asn1/x_bignum.o crypto/asn1/x_bignum.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/x_info.d.tmp -MT crypto/asn1/x_info.o -c -o crypto/asn1/x_info.o crypto/asn1/x_info.c make[1]: *** No rule to make target `include/internal/asn1t.h', needed by `crypto/asn1/x_int64.o'. Stop. make[1]: Leaving directory ` make: *** [all] Error 2 Build step 'Execute shell' marked build as failure From rsalz at openssl.org Thu Apr 20 17:11:20 2017 From: rsalz at openssl.org (Rich Salz) Date: Thu, 20 Apr 2017 17:11:20 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492708280.659676.9873.nullmailer@dev.openssl.org> The branch master has been updated via 9d9d2879627ba796db9dd7c688302f36c635a3c6 (commit) from 112c4e02680eeb3f9369f270f009a577fdb4019b (commit) - Log ----------------------------------------------------------------- commit 9d9d2879627ba796db9dd7c688302f36c635a3c6 Author: Rich Salz Date: Thu Apr 20 13:03:11 2017 -0400 fix dh_test. The issues were introduced by commit 93d0298. Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3263) ----------------------------------------------------------------------- Summary of changes: test/dhtest.c | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/test/dhtest.c b/test/dhtest.c index 196535b..eb6ec0e 100644 --- a/test/dhtest.c +++ b/test/dhtest.c @@ -45,7 +45,7 @@ static int dh_test(void) unsigned char *abuf = NULL; unsigned char *bbuf = NULL; int i, alen, blen, aout, bout; - int ret = 1; + int ret = 0; RAND_seed(rnd_seed, sizeof rnd_seed); @@ -59,12 +59,14 @@ static int dh_test(void) if (!DH_check(a, &i)) goto err; - if (TEST_false(i & DH_CHECK_P_NOT_PRIME) - || TEST_false(i & DH_CHECK_P_NOT_SAFE_PRIME) - || TEST_false(i & DH_UNABLE_TO_CHECK_GENERATOR) - || TEST_false(i & DH_NOT_SUITABLE_GENERATOR)) + if (!TEST_false(i & DH_CHECK_P_NOT_PRIME) + || !TEST_false(i & DH_CHECK_P_NOT_SAFE_PRIME) + || !TEST_false(i & DH_UNABLE_TO_CHECK_GENERATOR) + || !TEST_false(i & DH_NOT_SUITABLE_GENERATOR)) goto err; + DH_get0_pqg(a, &ap, NULL, &ag); + if (!TEST_ptr(b = DH_new())) goto err; @@ -76,23 +78,26 @@ static int dh_test(void) if (!DH_generate_key(a)) goto err; + DH_get0_key(a, &apub_key, NULL); if (!DH_generate_key(b)) goto err; + DH_get0_key(b, &bpub_key, NULL); alen = DH_size(a); if (!TEST_ptr(abuf = OPENSSL_malloc(alen)) - || !TEST_true(aout = DH_compute_key(abuf, bpub_key, a))) + || !TEST_true((aout = DH_compute_key(abuf, bpub_key, a)) != -1)) goto err; blen = DH_size(b); if (!TEST_ptr(bbuf = OPENSSL_malloc(blen)) - || !TEST_true(bout = DH_compute_key(bbuf, apub_key, b))) + || !TEST_true((bout = DH_compute_key(bbuf, apub_key, b)) != -1)) goto err; - if (!TEST_true(aout < 4) + + if (!TEST_true(aout >= 4) || !TEST_mem_eq(abuf, aout, bbuf, bout)) goto err; - ret = 0; + ret = 1; err: From builds at travis-ci.org Thu Apr 20 17:32:24 2017 From: builds at travis-ci.org (Travis CI) Date: Thu, 20 Apr 2017 17:32:24 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10441 (master - 9d9d287) In-Reply-To: Message-ID: <58f8f0a8b97e5_43fe7ae1af84413197bb@9f56771b-ba82-4ab6-b13c-200a354a17d4.mail> Build Update for openssl/openssl ------------------------------------- Build: #10441 Status: Still Failing Duration: 20 minutes and 5 seconds Commit: 9d9d287 (master) Author: Rich Salz Message: fix dh_test. The issues were introduced by commit 93d0298. Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3263) View the changeset: https://github.com/openssl/openssl/compare/112c4e02680e...9d9d2879627b View the full build log and details: https://travis-ci.org/openssl/openssl/builds/224041051 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From rsalz at openssl.org Thu Apr 20 18:13:35 2017 From: rsalz at openssl.org (Rich Salz) Date: Thu, 20 Apr 2017 18:13:35 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492712015.770787.22334.nullmailer@dev.openssl.org> The branch master has been updated via 623d1056de175ee5cd17839617fbfabac72cba91 (commit) from 9d9d2879627ba796db9dd7c688302f36c635a3c6 (commit) - Log ----------------------------------------------------------------- commit 623d1056de175ee5cd17839617fbfabac72cba91 Author: Rich Salz Date: Thu Apr 20 14:00:52 2017 -0400 Convert hmactest to new test framework Updated after code review, and fix indenting Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3175) ----------------------------------------------------------------------- Summary of changes: test/build.info | 2 +- test/hmactest.c | 332 +++++++++++++++++++++++--------------------------------- 2 files changed, 135 insertions(+), 199 deletions(-) diff --git a/test/build.info b/test/build.info index 0b0bf8e..4525362 100644 --- a/test/build.info +++ b/test/build.info @@ -75,7 +75,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[md2test]=../include DEPEND[md2test]=../libcrypto - SOURCE[hmactest]=hmactest.c + SOURCE[hmactest]=hmactest.c testutil.c test_main.c INCLUDE[hmactest]=../include DEPEND[hmactest]=../libcrypto diff --git a/test/hmactest.c b/test/hmactest.c index a5c6e74..d7e68b4 100644 --- a/test/hmactest.c +++ b/test/hmactest.c @@ -23,6 +23,9 @@ # include # endif +#include "test_main.h" +#include "testutil.h" + # ifndef OPENSSL_NO_MD5 static struct test_st { unsigned char key[16]; @@ -79,21 +82,11 @@ static struct test_st { static char *pt(unsigned char *md, unsigned int len); -int main(int argc, char *argv[]) -{ + # ifndef OPENSSL_NO_MD5 - int i; +static int test_hmac_md5(int idx) +{ char *p; -# endif - int err = 0; - HMAC_CTX *ctx = NULL, *ctx2 = NULL; - unsigned char buf[EVP_MAX_MD_SIZE]; - unsigned int len; - -# ifdef OPENSSL_NO_MD5 - printf("test skipped: MD5 disabled\n"); -# else - # ifdef CHARSET_EBCDIC ebcdic2ascii(test[0].data, test[0].data, test[0].data_len); ebcdic2ascii(test[1].data, test[1].data, test[1].data_len); @@ -101,202 +94,135 @@ int main(int argc, char *argv[]) ebcdic2ascii(test[2].data, test[2].data, test[2].data_len); # endif - for (i = 0; i < 4; i++) { - p = pt(HMAC(EVP_md5(), - test[i].key, test[i].key_len, - test[i].data, test[i].data_len, NULL, NULL), - MD5_DIGEST_LENGTH); - - if (strcmp(p, (char *)test[i].digest) != 0) { - printf("Error calculating HMAC on %d entry'\n", i); - printf("got %s instead of %s\n", p, test[i].digest); - err++; - } else - printf("test %d ok\n", i); - } -# endif /* OPENSSL_NO_MD5 */ + p = pt(HMAC(EVP_md5(), + test[idx].key, test[idx].key_len, + test[idx].data, test[idx].data_len, NULL, NULL), + MD5_DIGEST_LENGTH); + + if (!TEST_str_eq(p, (char *)test[idx].digest)) + return 0; + + return 1; +} +# endif + +static int test_hmac_bad() +{ + HMAC_CTX *ctx = NULL; + int ret = 0; -/* test4 */ ctx = HMAC_CTX_new(); - if (ctx == NULL) { - printf("HMAC malloc failure (test 4)\n"); - err++; - goto end; - } - if (HMAC_CTX_get_md(ctx) != NULL) { - printf("Message digest not NULL for HMAC (test 4)\n"); - err++; - goto test5; - } - if (HMAC_Init_ex(ctx, NULL, 0, NULL, NULL)) { - printf("Should fail to initialise HMAC with empty MD and key (test 4)\n"); - err++; - goto test5; - } - if (HMAC_Update(ctx, test[4].data, test[4].data_len)) { - printf("Should fail HMAC_Update with ctx not set up (test 4)\n"); - err++; - goto test5; - } - if (HMAC_Init_ex(ctx, NULL, 0, EVP_sha1(), NULL)) { - printf("Should fail to initialise HMAC with empty key (test 4)\n"); - err++; - goto test5; - } - if (HMAC_Update(ctx, test[4].data, test[4].data_len)) { - printf("Should fail HMAC_Update with ctx not set up (test 4)\n"); - err++; - goto test5; - } - printf("test 4 ok\n"); -test5: - /* Test 5 has empty key; test that single-shot accepts a NULL key. */ - p = pt(HMAC(EVP_sha1(), NULL, 0, test[4].data, test[4].data_len, - NULL, NULL), SHA_DIGEST_LENGTH); - if (strcmp(p, (char *)test[4].digest) != 0) { - printf("Error calculating HMAC on %d entry'\n", i); - printf("got %s instead of %s\n", p, test[4].digest); - err++; - } + if (!TEST_ptr(ctx) + || !TEST_ptr_null(HMAC_CTX_get_md(ctx)) + || !TEST_false(HMAC_Init_ex(ctx, NULL, 0, NULL, NULL)) + || !TEST_false(HMAC_Update(ctx, test[4].data, test[4].data_len)) + || !TEST_false(HMAC_Init_ex(ctx, NULL, 0, EVP_sha1(), NULL)) + || !TEST_false(HMAC_Update(ctx, test[4].data, test[4].data_len))) + goto err; + + ret = 1; +err: + HMAC_CTX_free(ctx); + return ret; +} + +static int test_hmac_run() +{ + char *p; + HMAC_CTX *ctx = NULL; + unsigned char buf[EVP_MAX_MD_SIZE]; + unsigned int len; + int ret = 0; + ctx = HMAC_CTX_new(); HMAC_CTX_reset(ctx); - if (HMAC_CTX_get_md(ctx) != NULL) { - printf("Message digest not NULL for HMAC (test 5)\n"); - err++; - goto test6; - } - if (HMAC_Init_ex(ctx, test[4].key, test[4].key_len, NULL, NULL)) { - printf("Should fail to initialise HMAC with empty MD (test 5)\n"); - err++; - goto test6; - } - if (HMAC_Update(ctx, test[4].data, test[4].data_len)) { - printf("Should fail HMAC_Update with ctx not set up (test 5)\n"); - err++; - goto test6; - } - if (HMAC_Init_ex(ctx, test[4].key, -1, EVP_sha1(), NULL)) { - printf("Should fail to initialise HMAC with invalid key len(test 5)\n"); - err++; - goto test6; - } - if (!HMAC_Init_ex(ctx, test[4].key, test[4].key_len, EVP_sha1(), NULL)) { - printf("Failed to initialise HMAC (test 5)\n"); - err++; - goto test6; - } - if (!HMAC_Update(ctx, test[4].data, test[4].data_len)) { - printf("Error updating HMAC with data (test 5)\n"); - err++; - goto test6; - } - if (!HMAC_Final(ctx, buf, &len)) { - printf("Error finalising data (test 5)\n"); - err++; - goto test6; - } + + if (!TEST_ptr(ctx) + || !TEST_ptr_null(HMAC_CTX_get_md(ctx)) + || !TEST_false(HMAC_Init_ex(ctx, NULL, 0, NULL, NULL)) + || !TEST_false(HMAC_Update(ctx, test[4].data, test[4].data_len)) + || !TEST_false(HMAC_Init_ex(ctx, test[4].key, -1, EVP_sha1(), NULL))) + goto err; + + if (!TEST_true(HMAC_Init_ex(ctx, test[4].key, test[4].key_len, EVP_sha1(), NULL)) + || !TEST_true(HMAC_Update(ctx, test[4].data, test[4].data_len)) + || !TEST_true(HMAC_Final(ctx, buf, &len))) + goto err; + p = pt(buf, len); - if (strcmp(p, (char *)test[4].digest) != 0) { - printf("Error calculating interim HMAC on test 5\n"); - printf("got %s instead of %s\n", p, test[4].digest); - err++; - goto test6; - } - if (HMAC_Init_ex(ctx, NULL, 0, EVP_sha256(), NULL)) { - printf("Should disallow changing MD without a new key (test 5)\n"); - err++; - goto test6; - } - if (!HMAC_Init_ex(ctx, test[5].key, test[5].key_len, EVP_sha256(), NULL)) { - printf("Failed to reinitialise HMAC (test 5)\n"); - err++; - goto test6; - } - if (HMAC_CTX_get_md(ctx) != EVP_sha256()) { - printf("Unexpected message digest for HMAC (test 5)\n"); - err++; - goto test6; - } - if (!HMAC_Update(ctx, test[5].data, test[5].data_len)) { - printf("Error updating HMAC with data (sha256) (test 5)\n"); - err++; - goto test6; - } - if (!HMAC_Final(ctx, buf, &len)) { - printf("Error finalising data (sha256) (test 5)\n"); - err++; - goto test6; - } + if (!TEST_str_eq(p, (char *)test[4].digest)) + goto err; + + if (!TEST_false(HMAC_Init_ex(ctx, NULL, 0, EVP_sha256(), NULL))) + goto err; + + if (!TEST_true(HMAC_Init_ex(ctx, test[5].key, test[5].key_len, EVP_sha256(), NULL)) + || !TEST_ptr_eq(HMAC_CTX_get_md(ctx), EVP_sha256()) + || !TEST_true(HMAC_Update(ctx, test[5].data, test[5].data_len)) + || !TEST_true(HMAC_Final(ctx, buf, &len))) + goto err; + p = pt(buf, len); - if (strcmp(p, (char *)test[5].digest) != 0) { - printf("Error calculating 2nd interim HMAC on test 5\n"); - printf("got %s instead of %s\n", p, test[5].digest); - err++; - goto test6; - } - if (!HMAC_Init_ex(ctx, test[6].key, test[6].key_len, NULL, NULL)) { - printf("Failed to reinitialise HMAC with key (test 5)\n"); - err++; - goto test6; - } - if (!HMAC_Update(ctx, test[6].data, test[6].data_len)) { - printf("Error updating HMAC with data (new key) (test 5)\n"); - err++; - goto test6; - } - if (!HMAC_Final(ctx, buf, &len)) { - printf("Error finalising data (new key) (test 5)\n"); - err++; - goto test6; - } + if (!TEST_str_eq(p, (char *)test[5].digest)) + goto err; + + if (!TEST_true(HMAC_Init_ex(ctx, test[6].key, test[6].key_len, NULL, NULL)) + || !TEST_true(HMAC_Update(ctx, test[6].data, test[6].data_len)) + || !TEST_true(HMAC_Final(ctx, buf, &len))) + goto err; p = pt(buf, len); - if (strcmp(p, (char *)test[6].digest) != 0) { - printf("error calculating HMAC on test 5\n"); - printf("got %s instead of %s\n", p, test[6].digest); - err++; - } else { - printf("test 5 ok\n"); - } -test6: - HMAC_CTX_reset(ctx); + if (!TEST_str_eq(p, (char *)test[6].digest)) + goto err; + + ret = 1; +err: + HMAC_CTX_free(ctx); + return ret; +} + + +static int test_hmac_single_shot() +{ + char *p; + + /* Test single-shot with an empty key. */ + p = pt(HMAC(EVP_sha1(), NULL, 0, test[4].data, test[4].data_len, + NULL, NULL), SHA_DIGEST_LENGTH); + if (!TEST_str_eq(p, (char *)test[4].digest)) + return 0; + + return 1; +} + + +static int test_hmac_copy() +{ + char *p; + HMAC_CTX *ctx = NULL, *ctx2 = NULL; + unsigned char buf[EVP_MAX_MD_SIZE]; + unsigned int len; + int ret = 0; + + ctx = HMAC_CTX_new(); ctx2 = HMAC_CTX_new(); - if (ctx2 == NULL) { - printf("HMAC malloc failure (test 6)\n"); - err++; - goto end; - } - if (!HMAC_Init_ex(ctx, test[7].key, test[7].key_len, EVP_sha1(), NULL)) { - printf("Failed to initialise HMAC (test 6)\n"); - err++; - goto end; - } - if (!HMAC_Update(ctx, test[7].data, test[7].data_len)) { - printf("Error updating HMAC with data (test 6)\n"); - err++; - goto end; - } - if (!HMAC_CTX_copy(ctx2, ctx)) { - printf("Failed to copy HMAC_CTX (test 6)\n"); - err++; - goto end; - } - if (!HMAC_Final(ctx2, buf, &len)) { - printf("Error finalising data (test 6)\n"); - err++; - goto end; - } + if (!TEST_ptr(ctx) || !TEST_ptr(ctx2)) + goto err; + + if (!TEST_true(HMAC_Init_ex(ctx, test[7].key, test[7].key_len, EVP_sha1(), NULL)) + || !TEST_true(HMAC_Update(ctx, test[7].data, test[7].data_len)) + || !TEST_true(HMAC_CTX_copy(ctx2, ctx)) + || !TEST_true(HMAC_Final(ctx2, buf, &len))) + goto err; + p = pt(buf, len); - if (strcmp(p, (char *)test[7].digest) != 0) { - printf("Error calculating HMAC on test 6\n"); - printf("got %s instead of %s\n", p, test[7].digest); - err++; - } else { - printf("test 6 ok\n"); - } -end: + if (!TEST_str_eq(p, (char *)test[7].digest)) + goto err; + + ret = 1; +err: HMAC_CTX_free(ctx2); HMAC_CTX_free(ctx); - EXIT(err); + return ret; } # ifndef OPENSSL_NO_MD5 @@ -310,3 +236,13 @@ static char *pt(unsigned char *md, unsigned int len) return (buf); } # endif + +void register_tests(void) +{ + ADD_ALL_TESTS(test_hmac_md5, 4); + ADD_TEST(test_hmac_single_shot); + ADD_TEST(test_hmac_bad); + ADD_TEST(test_hmac_run); + ADD_TEST(test_hmac_copy); +} + From rsalz at openssl.org Thu Apr 20 19:00:15 2017 From: rsalz at openssl.org (Rich Salz) Date: Thu, 20 Apr 2017 19:00:15 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492714815.148364.24079.nullmailer@dev.openssl.org> The branch master has been updated via 0444c52a5ff3c2c09f8d7f0f5b464e10231de032 (commit) from 623d1056de175ee5cd17839617fbfabac72cba91 (commit) - Log ----------------------------------------------------------------- commit 0444c52a5ff3c2c09f8d7f0f5b464e10231de032 Author: Marek Klein Date: Thu Jan 21 18:43:57 2016 +0000 explicitText encoding Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/576) ----------------------------------------------------------------------- Summary of changes: crypto/x509v3/v3_cpols.c | 49 ++++++++++++++++++++++++++++++++++++++++++---- doc/man5/x509v3_config.pod | 6 ++++++ 2 files changed, 51 insertions(+), 4 deletions(-) diff --git a/crypto/x509v3/v3_cpols.c b/crypto/x509v3/v3_cpols.c index 22c56ba..ea65e07 100644 --- a/crypto/x509v3/v3_cpols.c +++ b/crypto/x509v3/v3_cpols.c @@ -31,6 +31,8 @@ static POLICYINFO *policy_section(X509V3_CTX *ctx, static POLICYQUALINFO *notice_section(X509V3_CTX *ctx, STACK_OF(CONF_VALUE) *unot, int ia5org); static int nref_nos(STACK_OF(ASN1_INTEGER) *nnums, STACK_OF(CONF_VALUE) *nos); +static int displaytext_str2tag(const char *tagstr, unsigned int *tag_len); +static int displaytext_get_tag_len(const char *tagstr); const X509V3_EXT_METHOD v3_cpols = { NID_certificate_policies, 0, ASN1_ITEM_ref(CERTIFICATEPOLICIES), @@ -242,13 +244,48 @@ static POLICYINFO *policy_section(X509V3_CTX *ctx, } +static int displaytext_get_tag_len(const char *tagstr) +{ + char *colon = strchr(tagstr, ':'); + + return (colon == NULL) ? -1 : colon - tagstr; +} + +static int displaytext_str2tag(const char *tagstr, unsigned int *tag_len) +{ + int len; + + *tag_len = 0; + len = displaytext_get_tag_len(tagstr); + + if (len == -1) + return V_ASN1_VISIBLESTRING; + *tag_len = len; + if (len == sizeof("UTF8") - 1 && strncmp(tagstr, "UTF8", len) == 0) + return V_ASN1_UTF8STRING; + if (len == sizeof("UTF8String") - 1 && strncmp(tagstr, "UTF8String", len) == 0) + return V_ASN1_UTF8STRING; + if (len == sizeof("BMP") - 1 && strncmp(tagstr, "BMP", len) == 0) + return V_ASN1_BMPSTRING; + if (len == sizeof("BMPSTRING") - 1 && strncmp(tagstr, "BMPSTRING", len) == 0) + return V_ASN1_BMPSTRING; + if (len == sizeof("VISIBLE") - 1 && strncmp(tagstr, "VISIBLE", len) == 0) + return V_ASN1_VISIBLESTRING; + if (len == sizeof("VISIBLESTRING") - 1 && strncmp(tagstr, "VISIBLESTRING", len) == 0) + return V_ASN1_VISIBLESTRING; + *tag_len = 0; + return V_ASN1_VISIBLESTRING; +} + static POLICYQUALINFO *notice_section(X509V3_CTX *ctx, STACK_OF(CONF_VALUE) *unot, int ia5org) { - int i, ret; + int i, ret, len, tag; + unsigned int tag_len; CONF_VALUE *cnf; USERNOTICE *not; POLICYQUALINFO *qual; + char *value = NULL; if ((qual = POLICYQUALINFO_new()) == NULL) goto merr; @@ -261,11 +298,15 @@ static POLICYQUALINFO *notice_section(X509V3_CTX *ctx, qual->d.usernotice = not; for (i = 0; i < sk_CONF_VALUE_num(unot); i++) { cnf = sk_CONF_VALUE_value(unot, i); + value = cnf->value; if (strcmp(cnf->name, "explicitText") == 0) { - if ((not->exptext = ASN1_VISIBLESTRING_new()) == NULL) + tag = displaytext_str2tag(value, &tag_len); + if ((not->exptext = ASN1_STRING_type_new(tag)) == NULL) goto merr; - if (!ASN1_STRING_set(not->exptext, cnf->value, - strlen(cnf->value))) + if (tag_len != 0) + value += tag_len + 1; + len = strlen(value); + if (!ASN1_STRING_set(not->exptext, value, len)) goto merr; } else if (strcmp(cnf->name, "organization") == 0) { NOTICEREF *nref; diff --git a/doc/man5/x509v3_config.pod b/doc/man5/x509v3_config.pod index 17800ea..0662326 100644 --- a/doc/man5/x509v3_config.pod +++ b/doc/man5/x509v3_config.pod @@ -353,6 +353,12 @@ The B option changes the type of the I field. In RFC2459 it can only be of type DisplayText. In RFC3280 IA5Strring is also permissible. Some software (for example some versions of MSIE) may require ia5org. +ASN1 type of explicitText can be specified by prepending B, +B or B prefix followed by colon. For example: + + [notice] + explicitText="UTF8:Explicit Text Here" + =head2 Policy Constraints This is a multi-valued extension which consisting of the names From builds at travis-ci.org Thu Apr 20 18:33:33 2017 From: builds at travis-ci.org (Travis CI) Date: Thu, 20 Apr 2017 18:33:33 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10442 (master - 623d105) In-Reply-To: Message-ID: <58f8fefd34b3d_43ff9899ec7548884be@d0d796d7-b441-4d81-bfb5-2cf37c59056c.mail> Build Update for openssl/openssl ------------------------------------- Build: #10442 Status: Still Failing Duration: 19 minutes and 1 second Commit: 623d105 (master) Author: Rich Salz Message: Convert hmactest to new test framework Updated after code review, and fix indenting Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3175) View the changeset: https://github.com/openssl/openssl/compare/9d9d2879627b...623d1056de17 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/224061776 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Thu Apr 20 19:23:20 2017 From: builds at travis-ci.org (Travis CI) Date: Thu, 20 Apr 2017 19:23:20 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10443 (master - 0444c52) In-Reply-To: Message-ID: <58f90aa836cb4_43ff989795f50955436@d0d796d7-b441-4d81-bfb5-2cf37c59056c.mail> Build Update for openssl/openssl ------------------------------------- Build: #10443 Status: Still Failing Duration: 22 minutes and 6 seconds Commit: 0444c52 (master) Author: Marek Klein Message: explicitText encoding Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/576) View the changeset: https://github.com/openssl/openssl/compare/623d1056de17...0444c52a5ff3 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/224080321 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From rsalz at openssl.org Thu Apr 20 19:42:57 2017 From: rsalz at openssl.org (Rich Salz) Date: Thu, 20 Apr 2017 19:42:57 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492717377.213262.21936.nullmailer@dev.openssl.org> The branch master has been updated via c0452248ea1a59a41023a4765ef7d9825e80a62b (commit) from 0444c52a5ff3c2c09f8d7f0f5b464e10231de032 (commit) - Log ----------------------------------------------------------------- commit c0452248ea1a59a41023a4765ef7d9825e80a62b Author: Rich Salz Date: Thu Apr 20 15:33:42 2017 -0400 Ignore dups in X509_STORE_add_* X509_STORE_add_cert and X509_STORE_add_crl are changed to return success if the object to be added was already found in the store, rather than returning an error. Raise errors if empty or malformed files are read when loading certificates and CRLs. Remove NULL checks and allow a segv to occur. Add error handing for all calls to X509_STORE_add_c{ert|tl} Refactor these two routines into one. Bring the unit test for duplicate certificates up to date using the test framework. Reviewed-by: Richard Levitte Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/2830) ----------------------------------------------------------------------- Summary of changes: CHANGES | 6 +++ crypto/x509/by_dir.c | 9 +++- crypto/x509/by_file.c | 21 +++++--- crypto/x509/x509_err.c | 6 ++- crypto/x509/x509_lu.c | 63 +++++++++------------- include/openssl/x509.h | 3 ++ ssl/ssl_cert.c | 21 ++------ test/build.info | 6 ++- .../{01-test_test.t => 60-test_x509_dup_cert.t} | 9 +++- test/x509_dup_cert_test.c | 47 ++++++++++++++++ 10 files changed, 124 insertions(+), 67 deletions(-) copy test/recipes/{01-test_test.t => 60-test_x509_dup_cert.t} (73%) create mode 100644 test/x509_dup_cert_test.c diff --git a/CHANGES b/CHANGES index 3617e8f..b1476d8 100644 --- a/CHANGES +++ b/CHANGES @@ -22,6 +22,12 @@ platform rather than 'mingw'. [Richard Levitte] + *) The functions X509_STORE_add_cert and X509_STORE_add_crl return + success if they are asked to add an object which already exists + in the store. This change cascades to other functions which load + certificates and CRLs. + [Paul Dale] + *) x86_64 assembly pack: annotate code with DWARF CFI directives to facilitate stack unwinding even from assembly subroutines. [Andy Polyakov] diff --git a/crypto/x509/by_dir.c b/crypto/x509/by_dir.c index f3a1f05..201ed12 100644 --- a/crypto/x509/by_dir.c +++ b/crypto/x509/by_dir.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -373,6 +373,13 @@ static int get_cert_by_subject(X509_LOOKUP *xl, X509_LOOKUP_TYPE type, ok = 1; ret->type = tmp->type; memcpy(&ret->data, &tmp->data, sizeof(ret->data)); + + /* + * Clear any errors that might have been raised processing empty + * or malformed files. + */ + ERR_clear_error(); + /* * If we were going to up the reference count, we would need to * do it on a perl 'type' basis diff --git a/crypto/x509/by_file.c b/crypto/x509/by_file.c index 4376bed..fa944e8 100644 --- a/crypto/x509/by_file.c +++ b/crypto/x509/by_file.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -79,8 +79,6 @@ int X509_load_cert_file(X509_LOOKUP *ctx, const char *file, int type) int i, count = 0; X509 *x = NULL; - if (file == NULL) - return (1); in = BIO_new(BIO_s_file()); if ((in == NULL) || (BIO_read_filename(in, file) <= 0)) { @@ -123,6 +121,8 @@ int X509_load_cert_file(X509_LOOKUP *ctx, const char *file, int type) X509err(X509_F_X509_LOAD_CERT_FILE, X509_R_BAD_X509_FILETYPE); goto err; } + if (ret == 0) + X509err(X509_F_X509_LOAD_CERT_FILE, X509_R_NO_CERTIFICATE_FOUND); err: X509_free(x); BIO_free(in); @@ -136,8 +136,6 @@ int X509_load_crl_file(X509_LOOKUP *ctx, const char *file, int type) int i, count = 0; X509_CRL *x = NULL; - if (file == NULL) - return (1); in = BIO_new(BIO_s_file()); if ((in == NULL) || (BIO_read_filename(in, file) <= 0)) { @@ -180,6 +178,8 @@ int X509_load_crl_file(X509_LOOKUP *ctx, const char *file, int type) X509err(X509_F_X509_LOAD_CRL_FILE, X509_R_BAD_X509_FILETYPE); goto err; } + if (ret == 0) + X509err(X509_F_X509_LOAD_CRL_FILE, X509_R_NO_CRL_FOUND); err: X509_CRL_free(x); BIO_free(in); @@ -192,6 +192,7 @@ int X509_load_cert_crl_file(X509_LOOKUP *ctx, const char *file, int type) X509_INFO *itmp; BIO *in; int i, count = 0; + if (type != X509_FILETYPE_PEM) return X509_load_cert_file(ctx, file, type); in = BIO_new_file(file, "r"); @@ -208,14 +209,20 @@ int X509_load_cert_crl_file(X509_LOOKUP *ctx, const char *file, int type) for (i = 0; i < sk_X509_INFO_num(inf); i++) { itmp = sk_X509_INFO_value(inf, i); if (itmp->x509) { - X509_STORE_add_cert(ctx->store_ctx, itmp->x509); + if (!X509_STORE_add_cert(ctx->store_ctx, itmp->x509)) + goto err; count++; } if (itmp->crl) { - X509_STORE_add_crl(ctx->store_ctx, itmp->crl); + if (!X509_STORE_add_crl(ctx->store_ctx, itmp->crl)) + goto err; count++; } } + if (count == 0) + X509err(X509_F_X509_LOAD_CERT_CRL_FILE, + X509_R_NO_CERTIFICATE_OR_CRL_FOUND); + err: sk_X509_INFO_pop_free(inf, X509_INFO_free); return count; } diff --git a/crypto/x509/x509_err.c b/crypto/x509/x509_err.c index 3f4b8ef..e50b7f6 100644 --- a/crypto/x509/x509_err.c +++ b/crypto/x509/x509_err.c @@ -1,6 +1,6 @@ /* * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -107,8 +107,12 @@ static ERR_STRING_DATA X509_str_reasons[] = { {ERR_REASON(X509_R_METHOD_NOT_SUPPORTED), "method not supported"}, {ERR_REASON(X509_R_NAME_TOO_LONG), "name too long"}, {ERR_REASON(X509_R_NEWER_CRL_NOT_NEWER), "newer crl not newer"}, + {ERR_REASON(X509_R_NO_CERTIFICATE_FOUND), "no certificate found"}, + {ERR_REASON(X509_R_NO_CERTIFICATE_OR_CRL_FOUND), + "no certificate or crl found"}, {ERR_REASON(X509_R_NO_CERT_SET_FOR_US_TO_VERIFY), "no cert set for us to verify"}, + {ERR_REASON(X509_R_NO_CRL_FOUND), "no crl found"}, {ERR_REASON(X509_R_NO_CRL_NUMBER), "no crl number"}, {ERR_REASON(X509_R_PUBLIC_KEY_DECODE_ERROR), "public key decode error"}, {ERR_REASON(X509_R_PUBLIC_KEY_ENCODE_ERROR), "public key encode error"}, diff --git a/crypto/x509/x509_lu.c b/crypto/x509/x509_lu.c index 889fbe8..e64fda2 100644 --- a/crypto/x509/x509_lu.c +++ b/crypto/x509/x509_lu.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -290,26 +290,29 @@ int X509_STORE_CTX_get_by_subject(X509_STORE_CTX *vs, X509_LOOKUP_TYPE type, return 1; } -int X509_STORE_add_cert(X509_STORE *ctx, X509 *x) -{ +static int x509_store_add(X509_STORE *ctx, void *x, int crl) { X509_OBJECT *obj; - int ret = 1, added = 1; + int ret = 0, added = 0; if (x == NULL) return 0; obj = X509_OBJECT_new(); if (obj == NULL) return 0; - obj->type = X509_LU_X509; - obj->data.x509 = x; + + if (crl) { + obj->type = X509_LU_CRL; + obj->data.crl = (X509_CRL *)x; + } else { + obj->type = X509_LU_X509; + obj->data.x509 = (X509 *)x; + } X509_OBJECT_up_ref_count(obj); CRYPTO_THREAD_write_lock(ctx->lock); if (X509_OBJECT_retrieve_match(ctx->objs, obj)) { - X509err(X509_F_X509_STORE_ADD_CERT, - X509_R_CERT_ALREADY_IN_HASH_TABLE); - ret = 0; + ret = 1; } else { added = sk_X509_OBJECT_push(ctx->objs, obj); ret = added != 0; @@ -317,46 +320,28 @@ int X509_STORE_add_cert(X509_STORE *ctx, X509 *x) CRYPTO_THREAD_unlock(ctx->lock); - if (!ret) /* obj not pushed */ + if (added == 0) /* obj not pushed */ X509_OBJECT_free(obj); - if (!added) /* on push failure */ - X509err(X509_F_X509_STORE_ADD_CERT, ERR_R_MALLOC_FAILURE); return ret; } -int X509_STORE_add_crl(X509_STORE *ctx, X509_CRL *x) +int X509_STORE_add_cert(X509_STORE *ctx, X509 *x) { - X509_OBJECT *obj; - int ret = 1, added = 1; - - if (x == NULL) - return 0; - obj = X509_OBJECT_new(); - if (obj == NULL) + if (!x509_store_add(ctx, x, 0)) { + X509err(X509_F_X509_STORE_ADD_CERT, ERR_R_MALLOC_FAILURE); return 0; - obj->type = X509_LU_CRL; - obj->data.crl = x; - X509_OBJECT_up_ref_count(obj); - - CRYPTO_THREAD_write_lock(ctx->lock); - - if (X509_OBJECT_retrieve_match(ctx->objs, obj)) { - X509err(X509_F_X509_STORE_ADD_CRL, X509_R_CERT_ALREADY_IN_HASH_TABLE); - ret = 0; - } else { - added = sk_X509_OBJECT_push(ctx->objs, obj); - ret = added != 0; } + return 1; +} - CRYPTO_THREAD_unlock(ctx->lock); - - if (!ret) /* obj not pushed */ - X509_OBJECT_free(obj); - if (!added) /* on push failure */ +int X509_STORE_add_crl(X509_STORE *ctx, X509_CRL *x) +{ + if (!x509_store_add(ctx, x, 1)) { X509err(X509_F_X509_STORE_ADD_CRL, ERR_R_MALLOC_FAILURE); - - return ret; + return 0; + } + return 1; } int X509_OBJECT_up_ref_count(X509_OBJECT *a) diff --git a/include/openssl/x509.h b/include/openssl/x509.h index d23fad8..49ad143 100644 --- a/include/openssl/x509.h +++ b/include/openssl/x509.h @@ -1102,7 +1102,10 @@ int ERR_load_X509_strings(void); # define X509_R_METHOD_NOT_SUPPORTED 124 # define X509_R_NAME_TOO_LONG 134 # define X509_R_NEWER_CRL_NOT_NEWER 132 +# define X509_R_NO_CERTIFICATE_FOUND 135 +# define X509_R_NO_CERTIFICATE_OR_CRL_FOUND 136 # define X509_R_NO_CERT_SET_FOR_US_TO_VERIFY 105 +# define X509_R_NO_CRL_FOUND 137 # define X509_R_NO_CRL_NUMBER 130 # define X509_R_PUBLIC_KEY_DECODE_ERROR 125 # define X509_R_PUBLIC_KEY_ENCODE_ERROR 126 diff --git a/ssl/ssl_cert.c b/ssl/ssl_cert.c index 3a85ede..f8e141a 100644 --- a/ssl/ssl_cert.c +++ b/ssl/ssl_cert.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -776,7 +776,6 @@ int ssl_build_cert_chain(SSL *s, SSL_CTX *ctx, int flags) STACK_OF(X509) *chain = NULL, *untrusted = NULL; X509 *x; int i, rv = 0; - unsigned long error; if (!cpk->x509) { SSLerr(SSL_F_SSL_BUILD_CERT_CHAIN, SSL_R_NO_CERTIFICATE_SET); @@ -789,22 +788,12 @@ int ssl_build_cert_chain(SSL *s, SSL_CTX *ctx, int flags) goto err; for (i = 0; i < sk_X509_num(cpk->chain); i++) { x = sk_X509_value(cpk->chain, i); - if (!X509_STORE_add_cert(chain_store, x)) { - error = ERR_peek_last_error(); - if (ERR_GET_LIB(error) != ERR_LIB_X509 || - ERR_GET_REASON(error) != X509_R_CERT_ALREADY_IN_HASH_TABLE) - goto err; - ERR_clear_error(); - } - } - /* Add EE cert too: it might be self signed */ - if (!X509_STORE_add_cert(chain_store, cpk->x509)) { - error = ERR_peek_last_error(); - if (ERR_GET_LIB(error) != ERR_LIB_X509 || - ERR_GET_REASON(error) != X509_R_CERT_ALREADY_IN_HASH_TABLE) + if (!X509_STORE_add_cert(chain_store, x)) goto err; - ERR_clear_error(); } + /* Add EE cert too: it might be self signed */ + if (!X509_STORE_add_cert(chain_store, cpk->x509)) + goto err; } else { if (c->chain_store) chain_store = c->chain_store; diff --git a/test/build.info b/test/build.info index 4525362..4bfa6f4 100644 --- a/test/build.info +++ b/test/build.info @@ -29,7 +29,7 @@ IF[{- !$disabled{tests} -}] ssl_test_ctx_test ssl_test x509aux cipherlist_test asynciotest \ bioprinttest sslapitest dtlstest sslcorrupttest bio_enc_test \ pkey_meth_test uitest cipherbytes_test asn1_encode_test \ - x509_time_test recordlentest + x509_time_test x509_dup_cert_test recordlentest SOURCE[aborttest]=aborttest.c INCLUDE[aborttest]=../include @@ -296,6 +296,10 @@ IF[{- !$disabled{tests} -}] INCLUDE[recordlentest]=../include . DEPEND[recordlentest]=../libcrypto ../libssl + SOURCE[x509_dup_cert_test]=x509_dup_cert_test.c testutil.c test_main_custom.c + INCLUDE[x509_dup_cert_test]=../include + DEPEND[x509_dup_cert_test]=../libcrypto + IF[{- !$disabled{psk} -}] PROGRAMS_NO_INST=dtls_mtu_test SOURCE[dtls_mtu_test]=dtls_mtu_test.c ssltestlib.c diff --git a/test/recipes/01-test_test.t b/test/recipes/60-test_x509_dup_cert.t similarity index 73% copy from test/recipes/01-test_test.t copy to test/recipes/60-test_x509_dup_cert.t index 90c8314..7588d8d 100644 --- a/test/recipes/01-test_test.t +++ b/test/recipes/60-test_x509_dup_cert.t @@ -9,6 +9,11 @@ # ====================================================================== # Copyright (c) 2017 Oracle and/or its affiliates. All rights reserved. -use OpenSSL::Test::Simple; -simple_test("test_test", "test_test"); +use OpenSSL::Test qw/:DEFAULT srctop_file/; + +setup("test_x509_dup_cert"); + +plan tests => 1; + +ok(run(test(["x509_dup_cert_test", srctop_file("test", "certs", "leaf.pem")]))); diff --git a/test/x509_dup_cert_test.c b/test/x509_dup_cert_test.c new file mode 100644 index 0000000..05899aa --- /dev/null +++ b/test/x509_dup_cert_test.c @@ -0,0 +1,47 @@ +/* + * Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +/* ==================================================================== + * Copyright (c) 2017 Oracle and/or its affiliates. All rights reserved. + */ + +#include +#include +#include + +#include "test_main_custom.h" +#include "testutil.h" + +static int test_509_dup_cert(const char *cert_f) +{ + int ret = 0; + X509_STORE_CTX *sctx = NULL; + X509_STORE *store = NULL; + X509_LOOKUP *lookup = NULL; + + if (TEST_ptr(store = X509_STORE_new()) + && TEST_ptr(lookup = X509_STORE_add_lookup(store, X509_LOOKUP_file())) + && TEST_true(X509_load_cert_file(lookup, cert_f, X509_FILETYPE_PEM)) + && TEST_true(X509_load_cert_file(lookup, cert_f, X509_FILETYPE_PEM))) + ret = 1; + + X509_STORE_CTX_free(sctx); + X509_STORE_free(store); + return ret; +} + +int test_main(int argc, char **argv) +{ + if (!TEST_int_eq(argc, 2)) { + TEST_info("usage: x509_dup_cert_test cert.pem"); + return 1; + } + + return !test_509_dup_cert(argv[1]); +} From builds at travis-ci.org Thu Apr 20 20:07:37 2017 From: builds at travis-ci.org (Travis CI) Date: Thu, 20 Apr 2017 20:07:37 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10446 (master - c045224) In-Reply-To: Message-ID: <58f915083351d_43fe7ac541c701579182@9f56771b-ba82-4ab6-b13c-200a354a17d4.mail> Build Update for openssl/openssl ------------------------------------- Build: #10446 Status: Still Failing Duration: 23 minutes and 26 seconds Commit: c045224 (master) Author: Rich Salz Message: Ignore dups in X509_STORE_add_* X509_STORE_add_cert and X509_STORE_add_crl are changed to return success if the object to be added was already found in the store, rather than returning an error. Raise errors if empty or malformed files are read when loading certificates and CRLs. Remove NULL checks and allow a segv to occur. Add error handing for all calls to X509_STORE_add_c{ert|tl} Refactor these two routines into one. Bring the unit test for duplicate certificates up to date using the test framework. Reviewed-by: Richard Levitte Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/2830) View the changeset: https://github.com/openssl/openssl/compare/0444c52a5ff3...c0452248ea1a View the full build log and details: https://travis-ci.org/openssl/openssl/builds/224093762 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From rsalz at openssl.org Thu Apr 20 20:18:18 2017 From: rsalz at openssl.org (Rich Salz) Date: Thu, 20 Apr 2017 20:18:18 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492719498.464476.15898.nullmailer@dev.openssl.org> The branch master has been updated via 6e64c560663f5542fdc2580bb7b030c19b6919e4 (commit) from c0452248ea1a59a41023a4765ef7d9825e80a62b (commit) - Log ----------------------------------------------------------------- commit 6e64c560663f5542fdc2580bb7b030c19b6919e4 Author: Adam Langley Date: Thu Apr 20 09:20:50 2017 -0700 Small primes are primes too. Previously, BN_is_prime_fasttest_ex, when doing trial-division, would check whether the candidate is a multiple of a number of small primes and, if so, reject it. However, three is a multiple of three yet is still a prime number. This change accepts small primes as prime when doing trial-division. Reviewed-by: Kurt Roeckx Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3264) ----------------------------------------------------------------------- Summary of changes: crypto/bn/bn_prime.c | 2 +- test/bntest.c | 24 ++++++++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/crypto/bn/bn_prime.c b/crypto/bn/bn_prime.c index bbb124f..9295aeb 100644 --- a/crypto/bn/bn_prime.c +++ b/crypto/bn/bn_prime.c @@ -176,7 +176,7 @@ int BN_is_prime_fasttest_ex(const BIGNUM *a, int checks, BN_CTX *ctx_passed, if (mod == (BN_ULONG)-1) goto err; if (mod == 0) - return 0; + return BN_is_word(a, primes[i]); } if (!BN_GENCB_call(cb, 1, -1)) goto err; diff --git a/test/bntest.c b/test/bntest.c index 0c15a12..449b3a4 100644 --- a/test/bntest.c +++ b/test/bntest.c @@ -2084,6 +2084,29 @@ err: return st; } +static int test_3_is_prime() +{ + int ret = 0; + BIGNUM *r = BN_new(); + + /* For a long time, small primes were not considered prime when + * do_trial_division was set. */ + if (r == NULL || + !BN_set_word(r, 3) || + BN_is_prime_fasttest_ex(r, 3 /* nchecks */, ctx, + 0 /* do_trial_division */, NULL) != 1 || + BN_is_prime_fasttest_ex(r, 3 /* nchecks */, ctx, + 1 /* do_trial_division */, NULL) != 1) { + goto err; + } + + ret = 1; + +err: + BN_free(r); + return ret; +} + /* Delete leading and trailing spaces from a string */ static char *strip_spaces(char *p) @@ -2250,6 +2273,7 @@ int test_main(int argc, char *argv[]) ADD_TEST(test_gf2m_modsqrt); ADD_TEST(test_gf2m_modsolvequad); #endif + ADD_TEST(test_3_is_prime); ADD_TEST(file_tests); RAND_seed(rnd_seed, sizeof rnd_seed); From no-reply at appveyor.com Thu Apr 20 20:36:57 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 20 Apr 2017 20:36:57 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.7 Message-ID: <20170420203657.23005.75230.F2AC260B@appveyor.com> An HTML attachment was scrubbed... URL: From builds at travis-ci.org Thu Apr 20 20:43:20 2017 From: builds at travis-ci.org (Travis CI) Date: Thu, 20 Apr 2017 20:43:20 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10450 (master - 6e64c56) In-Reply-To: Message-ID: <58f91d682ceab_43fb5829d93c0759728@8b45aa03-f24c-41d4-a1f5-29cafb4f1298.mail> Build Update for openssl/openssl ------------------------------------- Build: #10450 Status: Still Failing Duration: 20 minutes and 2 seconds Commit: 6e64c56 (master) Author: Adam Langley Message: Small primes are primes too. Previously, BN_is_prime_fasttest_ex, when doing trial-division, would check whether the candidate is a multiple of a number of small primes and, if so, reject it. However, three is a multiple of three yet is still a prime number. This change accepts small primes as prime when doing trial-division. Reviewed-by: Kurt Roeckx Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3264) View the changeset: https://github.com/openssl/openssl/compare/c0452248ea1a...6e64c560663f View the full build log and details: https://travis-ci.org/openssl/openssl/builds/224104820 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From appro at openssl.org Thu Apr 20 20:58:04 2017 From: appro at openssl.org (Andy Polyakov) Date: Thu, 20 Apr 2017 20:58:04 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492721884.481540.10295.nullmailer@dev.openssl.org> The branch master has been updated via dc99b885ded3cbc586d5ffec779f0e75a269bda3 (commit) from 6e64c560663f5542fdc2580bb7b030c19b6919e4 (commit) - Log ----------------------------------------------------------------- commit dc99b885ded3cbc586d5ffec779f0e75a269bda3 Author: letrhee-nsr Date: Tue Apr 18 19:39:46 2017 +0900 Add ARIA 32-bit implementation Modified code from http://seed.kisa.or.kr to human readable code. Previous 8-bit code is available with -DOPENSSL_SMALL_FOOTPRINT. New code is >2x faster. Reviewed-by: Andy Polyakov Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3242) ----------------------------------------------------------------------- Summary of changes: crypto/aria/aria.c | 963 ++++++++++++++++++++++++++++++++++++----- crypto/include/internal/aria.h | 11 +- 2 files changed, 869 insertions(+), 105 deletions(-) diff --git a/crypto/aria/aria.c b/crypto/aria/aria.c index 7e17e30..8f212b1 100644 --- a/crypto/aria/aria.c +++ b/crypto/aria/aria.c @@ -7,15 +7,754 @@ * https://www.openssl.org/source/license.html */ +/* + * Copyright (C) 2017 National Security Research Institute. All Rights Reserved. + * + * Information for ARIA + * http://210.104.33.10/ARIA/index-e.html (English) + * http://seed.kisa.or.kr/ (Korean) + * + * Public domain version is distributed above. + */ + /* ==================================================================== * Copyright (c) 2017 Oracle and/or its affiliates. All rights reserved. */ -#include #include -#include #include "internal/aria.h" +#include +#include + +#ifndef OPENSSL_SMALL_FOOTPRINT + +/* Begin macro */ + +/* rotation */ +#define rotl32(v, r) (((uint32_t)(v) << (r)) | ((uint32_t)(v) >> (32 - r))) +#define rotr32(v, r) (((uint32_t)(v) >> (r)) | ((uint32_t)(v) << (32 - r))) + +#define bswap32(v) \ + (((v) << 24) ^ ((v) >> 24) ^ \ + (((v) & 0x0000ff00) << 8) ^ (((v) & 0x00ff0000) >> 8)) + +#define GET_U8_BE(X, Y) ((uint8_t)((X) >> ((3 - Y) * 8))) +#define GET_U32_BE(X, Y) ( \ + ((uint32_t)((const uint8_t *)(X))[Y * 4 ] << 24) ^ \ + ((uint32_t)((const uint8_t *)(X))[Y * 4 + 1] << 16) ^ \ + ((uint32_t)((const uint8_t *)(X))[Y * 4 + 2] << 8) ^ \ + ((uint32_t)((const uint8_t *)(X))[Y * 4 + 3] ) ) + +#define PUT_U32_BE(DEST, IDX, VAL) \ + do { \ + ((uint8_t *)(DEST))[IDX * 4 ] = GET_U8_BE(VAL, 0); \ + ((uint8_t *)(DEST))[IDX * 4 + 1] = GET_U8_BE(VAL, 1); \ + ((uint8_t *)(DEST))[IDX * 4 + 2] = GET_U8_BE(VAL, 2); \ + ((uint8_t *)(DEST))[IDX * 4 + 3] = GET_U8_BE(VAL, 3); \ + } while(0) + +#define MAKE_U32(V0, V1, V2, V3) ( \ + ((uint32_t)((uint8_t)(V0)) << 24) | \ + ((uint32_t)((uint8_t)(V1)) << 16) | \ + ((uint32_t)((uint8_t)(V2)) << 8) | \ + ((uint32_t)((uint8_t)(V3)) ) ) + +/* End Macro*/ + +/* Key Constant + * 128bit : 0, 1, 2 + * 192bit : 1, 2, 3(0) + * 256bit : 2, 3(0), 4(1) + */ +static const uint32_t Key_RC[5][4] = { + { 0x517cc1b7, 0x27220a94, 0xfe13abe8, 0xfa9a6ee0 }, + { 0x6db14acc, 0x9e21c820, 0xff28b1d5, 0xef5de2b0 }, + { 0xdb92371d, 0x2126e970, 0x03249775, 0x04e8c90e }, + { 0x517cc1b7, 0x27220a94, 0xfe13abe8, 0xfa9a6ee0 }, + { 0x6db14acc, 0x9e21c820, 0xff28b1d5, 0xef5de2b0 } +}; + +/* 32bit expanded s-box */ +static const uint32_t S1[256] = { + 0x00636363, 0x007c7c7c, 0x00777777, 0x007b7b7b, + 0x00f2f2f2, 0x006b6b6b, 0x006f6f6f, 0x00c5c5c5, + 0x00303030, 0x00010101, 0x00676767, 0x002b2b2b, + 0x00fefefe, 0x00d7d7d7, 0x00ababab, 0x00767676, + 0x00cacaca, 0x00828282, 0x00c9c9c9, 0x007d7d7d, + 0x00fafafa, 0x00595959, 0x00474747, 0x00f0f0f0, + 0x00adadad, 0x00d4d4d4, 0x00a2a2a2, 0x00afafaf, + 0x009c9c9c, 0x00a4a4a4, 0x00727272, 0x00c0c0c0, + 0x00b7b7b7, 0x00fdfdfd, 0x00939393, 0x00262626, + 0x00363636, 0x003f3f3f, 0x00f7f7f7, 0x00cccccc, + 0x00343434, 0x00a5a5a5, 0x00e5e5e5, 0x00f1f1f1, + 0x00717171, 0x00d8d8d8, 0x00313131, 0x00151515, + 0x00040404, 0x00c7c7c7, 0x00232323, 0x00c3c3c3, + 0x00181818, 0x00969696, 0x00050505, 0x009a9a9a, + 0x00070707, 0x00121212, 0x00808080, 0x00e2e2e2, + 0x00ebebeb, 0x00272727, 0x00b2b2b2, 0x00757575, + 0x00090909, 0x00838383, 0x002c2c2c, 0x001a1a1a, + 0x001b1b1b, 0x006e6e6e, 0x005a5a5a, 0x00a0a0a0, + 0x00525252, 0x003b3b3b, 0x00d6d6d6, 0x00b3b3b3, + 0x00292929, 0x00e3e3e3, 0x002f2f2f, 0x00848484, + 0x00535353, 0x00d1d1d1, 0x00000000, 0x00ededed, + 0x00202020, 0x00fcfcfc, 0x00b1b1b1, 0x005b5b5b, + 0x006a6a6a, 0x00cbcbcb, 0x00bebebe, 0x00393939, + 0x004a4a4a, 0x004c4c4c, 0x00585858, 0x00cfcfcf, + 0x00d0d0d0, 0x00efefef, 0x00aaaaaa, 0x00fbfbfb, + 0x00434343, 0x004d4d4d, 0x00333333, 0x00858585, + 0x00454545, 0x00f9f9f9, 0x00020202, 0x007f7f7f, + 0x00505050, 0x003c3c3c, 0x009f9f9f, 0x00a8a8a8, + 0x00515151, 0x00a3a3a3, 0x00404040, 0x008f8f8f, + 0x00929292, 0x009d9d9d, 0x00383838, 0x00f5f5f5, + 0x00bcbcbc, 0x00b6b6b6, 0x00dadada, 0x00212121, + 0x00101010, 0x00ffffff, 0x00f3f3f3, 0x00d2d2d2, + 0x00cdcdcd, 0x000c0c0c, 0x00131313, 0x00ececec, + 0x005f5f5f, 0x00979797, 0x00444444, 0x00171717, + 0x00c4c4c4, 0x00a7a7a7, 0x007e7e7e, 0x003d3d3d, + 0x00646464, 0x005d5d5d, 0x00191919, 0x00737373, + 0x00606060, 0x00818181, 0x004f4f4f, 0x00dcdcdc, + 0x00222222, 0x002a2a2a, 0x00909090, 0x00888888, + 0x00464646, 0x00eeeeee, 0x00b8b8b8, 0x00141414, + 0x00dedede, 0x005e5e5e, 0x000b0b0b, 0x00dbdbdb, + 0x00e0e0e0, 0x00323232, 0x003a3a3a, 0x000a0a0a, + 0x00494949, 0x00060606, 0x00242424, 0x005c5c5c, + 0x00c2c2c2, 0x00d3d3d3, 0x00acacac, 0x00626262, + 0x00919191, 0x00959595, 0x00e4e4e4, 0x00797979, + 0x00e7e7e7, 0x00c8c8c8, 0x00373737, 0x006d6d6d, + 0x008d8d8d, 0x00d5d5d5, 0x004e4e4e, 0x00a9a9a9, + 0x006c6c6c, 0x00565656, 0x00f4f4f4, 0x00eaeaea, + 0x00656565, 0x007a7a7a, 0x00aeaeae, 0x00080808, + 0x00bababa, 0x00787878, 0x00252525, 0x002e2e2e, + 0x001c1c1c, 0x00a6a6a6, 0x00b4b4b4, 0x00c6c6c6, + 0x00e8e8e8, 0x00dddddd, 0x00747474, 0x001f1f1f, + 0x004b4b4b, 0x00bdbdbd, 0x008b8b8b, 0x008a8a8a, + 0x00707070, 0x003e3e3e, 0x00b5b5b5, 0x00666666, + 0x00484848, 0x00030303, 0x00f6f6f6, 0x000e0e0e, + 0x00616161, 0x00353535, 0x00575757, 0x00b9b9b9, + 0x00868686, 0x00c1c1c1, 0x001d1d1d, 0x009e9e9e, + 0x00e1e1e1, 0x00f8f8f8, 0x00989898, 0x00111111, + 0x00696969, 0x00d9d9d9, 0x008e8e8e, 0x00949494, + 0x009b9b9b, 0x001e1e1e, 0x00878787, 0x00e9e9e9, + 0x00cecece, 0x00555555, 0x00282828, 0x00dfdfdf, + 0x008c8c8c, 0x00a1a1a1, 0x00898989, 0x000d0d0d, + 0x00bfbfbf, 0x00e6e6e6, 0x00424242, 0x00686868, + 0x00414141, 0x00999999, 0x002d2d2d, 0x000f0f0f, + 0x00b0b0b0, 0x00545454, 0x00bbbbbb, 0x00161616 +}; + +static const uint32_t S2[256] = { + 0xe200e2e2, 0x4e004e4e, 0x54005454, 0xfc00fcfc, + 0x94009494, 0xc200c2c2, 0x4a004a4a, 0xcc00cccc, + 0x62006262, 0x0d000d0d, 0x6a006a6a, 0x46004646, + 0x3c003c3c, 0x4d004d4d, 0x8b008b8b, 0xd100d1d1, + 0x5e005e5e, 0xfa00fafa, 0x64006464, 0xcb00cbcb, + 0xb400b4b4, 0x97009797, 0xbe00bebe, 0x2b002b2b, + 0xbc00bcbc, 0x77007777, 0x2e002e2e, 0x03000303, + 0xd300d3d3, 0x19001919, 0x59005959, 0xc100c1c1, + 0x1d001d1d, 0x06000606, 0x41004141, 0x6b006b6b, + 0x55005555, 0xf000f0f0, 0x99009999, 0x69006969, + 0xea00eaea, 0x9c009c9c, 0x18001818, 0xae00aeae, + 0x63006363, 0xdf00dfdf, 0xe700e7e7, 0xbb00bbbb, + 0x00000000, 0x73007373, 0x66006666, 0xfb00fbfb, + 0x96009696, 0x4c004c4c, 0x85008585, 0xe400e4e4, + 0x3a003a3a, 0x09000909, 0x45004545, 0xaa00aaaa, + 0x0f000f0f, 0xee00eeee, 0x10001010, 0xeb00ebeb, + 0x2d002d2d, 0x7f007f7f, 0xf400f4f4, 0x29002929, + 0xac00acac, 0xcf00cfcf, 0xad00adad, 0x91009191, + 0x8d008d8d, 0x78007878, 0xc800c8c8, 0x95009595, + 0xf900f9f9, 0x2f002f2f, 0xce00cece, 0xcd00cdcd, + 0x08000808, 0x7a007a7a, 0x88008888, 0x38003838, + 0x5c005c5c, 0x83008383, 0x2a002a2a, 0x28002828, + 0x47004747, 0xdb00dbdb, 0xb800b8b8, 0xc700c7c7, + 0x93009393, 0xa400a4a4, 0x12001212, 0x53005353, + 0xff00ffff, 0x87008787, 0x0e000e0e, 0x31003131, + 0x36003636, 0x21002121, 0x58005858, 0x48004848, + 0x01000101, 0x8e008e8e, 0x37003737, 0x74007474, + 0x32003232, 0xca00caca, 0xe900e9e9, 0xb100b1b1, + 0xb700b7b7, 0xab00abab, 0x0c000c0c, 0xd700d7d7, + 0xc400c4c4, 0x56005656, 0x42004242, 0x26002626, + 0x07000707, 0x98009898, 0x60006060, 0xd900d9d9, + 0xb600b6b6, 0xb900b9b9, 0x11001111, 0x40004040, + 0xec00ecec, 0x20002020, 0x8c008c8c, 0xbd00bdbd, + 0xa000a0a0, 0xc900c9c9, 0x84008484, 0x04000404, + 0x49004949, 0x23002323, 0xf100f1f1, 0x4f004f4f, + 0x50005050, 0x1f001f1f, 0x13001313, 0xdc00dcdc, + 0xd800d8d8, 0xc000c0c0, 0x9e009e9e, 0x57005757, + 0xe300e3e3, 0xc300c3c3, 0x7b007b7b, 0x65006565, + 0x3b003b3b, 0x02000202, 0x8f008f8f, 0x3e003e3e, + 0xe800e8e8, 0x25002525, 0x92009292, 0xe500e5e5, + 0x15001515, 0xdd00dddd, 0xfd00fdfd, 0x17001717, + 0xa900a9a9, 0xbf00bfbf, 0xd400d4d4, 0x9a009a9a, + 0x7e007e7e, 0xc500c5c5, 0x39003939, 0x67006767, + 0xfe00fefe, 0x76007676, 0x9d009d9d, 0x43004343, + 0xa700a7a7, 0xe100e1e1, 0xd000d0d0, 0xf500f5f5, + 0x68006868, 0xf200f2f2, 0x1b001b1b, 0x34003434, + 0x70007070, 0x05000505, 0xa300a3a3, 0x8a008a8a, + 0xd500d5d5, 0x79007979, 0x86008686, 0xa800a8a8, + 0x30003030, 0xc600c6c6, 0x51005151, 0x4b004b4b, + 0x1e001e1e, 0xa600a6a6, 0x27002727, 0xf600f6f6, + 0x35003535, 0xd200d2d2, 0x6e006e6e, 0x24002424, + 0x16001616, 0x82008282, 0x5f005f5f, 0xda00dada, + 0xe600e6e6, 0x75007575, 0xa200a2a2, 0xef00efef, + 0x2c002c2c, 0xb200b2b2, 0x1c001c1c, 0x9f009f9f, + 0x5d005d5d, 0x6f006f6f, 0x80008080, 0x0a000a0a, + 0x72007272, 0x44004444, 0x9b009b9b, 0x6c006c6c, + 0x90009090, 0x0b000b0b, 0x5b005b5b, 0x33003333, + 0x7d007d7d, 0x5a005a5a, 0x52005252, 0xf300f3f3, + 0x61006161, 0xa100a1a1, 0xf700f7f7, 0xb000b0b0, + 0xd600d6d6, 0x3f003f3f, 0x7c007c7c, 0x6d006d6d, + 0xed00eded, 0x14001414, 0xe000e0e0, 0xa500a5a5, + 0x3d003d3d, 0x22002222, 0xb300b3b3, 0xf800f8f8, + 0x89008989, 0xde00dede, 0x71007171, 0x1a001a1a, + 0xaf00afaf, 0xba00baba, 0xb500b5b5, 0x81008181 +}; + +static const uint32_t X1[256] = { + 0x52520052, 0x09090009, 0x6a6a006a, 0xd5d500d5, + 0x30300030, 0x36360036, 0xa5a500a5, 0x38380038, + 0xbfbf00bf, 0x40400040, 0xa3a300a3, 0x9e9e009e, + 0x81810081, 0xf3f300f3, 0xd7d700d7, 0xfbfb00fb, + 0x7c7c007c, 0xe3e300e3, 0x39390039, 0x82820082, + 0x9b9b009b, 0x2f2f002f, 0xffff00ff, 0x87870087, + 0x34340034, 0x8e8e008e, 0x43430043, 0x44440044, + 0xc4c400c4, 0xdede00de, 0xe9e900e9, 0xcbcb00cb, + 0x54540054, 0x7b7b007b, 0x94940094, 0x32320032, + 0xa6a600a6, 0xc2c200c2, 0x23230023, 0x3d3d003d, + 0xeeee00ee, 0x4c4c004c, 0x95950095, 0x0b0b000b, + 0x42420042, 0xfafa00fa, 0xc3c300c3, 0x4e4e004e, + 0x08080008, 0x2e2e002e, 0xa1a100a1, 0x66660066, + 0x28280028, 0xd9d900d9, 0x24240024, 0xb2b200b2, + 0x76760076, 0x5b5b005b, 0xa2a200a2, 0x49490049, + 0x6d6d006d, 0x8b8b008b, 0xd1d100d1, 0x25250025, + 0x72720072, 0xf8f800f8, 0xf6f600f6, 0x64640064, + 0x86860086, 0x68680068, 0x98980098, 0x16160016, + 0xd4d400d4, 0xa4a400a4, 0x5c5c005c, 0xcccc00cc, + 0x5d5d005d, 0x65650065, 0xb6b600b6, 0x92920092, + 0x6c6c006c, 0x70700070, 0x48480048, 0x50500050, + 0xfdfd00fd, 0xeded00ed, 0xb9b900b9, 0xdada00da, + 0x5e5e005e, 0x15150015, 0x46460046, 0x57570057, + 0xa7a700a7, 0x8d8d008d, 0x9d9d009d, 0x84840084, + 0x90900090, 0xd8d800d8, 0xabab00ab, 0x00000000, + 0x8c8c008c, 0xbcbc00bc, 0xd3d300d3, 0x0a0a000a, + 0xf7f700f7, 0xe4e400e4, 0x58580058, 0x05050005, + 0xb8b800b8, 0xb3b300b3, 0x45450045, 0x06060006, + 0xd0d000d0, 0x2c2c002c, 0x1e1e001e, 0x8f8f008f, + 0xcaca00ca, 0x3f3f003f, 0x0f0f000f, 0x02020002, + 0xc1c100c1, 0xafaf00af, 0xbdbd00bd, 0x03030003, + 0x01010001, 0x13130013, 0x8a8a008a, 0x6b6b006b, + 0x3a3a003a, 0x91910091, 0x11110011, 0x41410041, + 0x4f4f004f, 0x67670067, 0xdcdc00dc, 0xeaea00ea, + 0x97970097, 0xf2f200f2, 0xcfcf00cf, 0xcece00ce, + 0xf0f000f0, 0xb4b400b4, 0xe6e600e6, 0x73730073, + 0x96960096, 0xacac00ac, 0x74740074, 0x22220022, + 0xe7e700e7, 0xadad00ad, 0x35350035, 0x85850085, + 0xe2e200e2, 0xf9f900f9, 0x37370037, 0xe8e800e8, + 0x1c1c001c, 0x75750075, 0xdfdf00df, 0x6e6e006e, + 0x47470047, 0xf1f100f1, 0x1a1a001a, 0x71710071, + 0x1d1d001d, 0x29290029, 0xc5c500c5, 0x89890089, + 0x6f6f006f, 0xb7b700b7, 0x62620062, 0x0e0e000e, + 0xaaaa00aa, 0x18180018, 0xbebe00be, 0x1b1b001b, + 0xfcfc00fc, 0x56560056, 0x3e3e003e, 0x4b4b004b, + 0xc6c600c6, 0xd2d200d2, 0x79790079, 0x20200020, + 0x9a9a009a, 0xdbdb00db, 0xc0c000c0, 0xfefe00fe, + 0x78780078, 0xcdcd00cd, 0x5a5a005a, 0xf4f400f4, + 0x1f1f001f, 0xdddd00dd, 0xa8a800a8, 0x33330033, + 0x88880088, 0x07070007, 0xc7c700c7, 0x31310031, + 0xb1b100b1, 0x12120012, 0x10100010, 0x59590059, + 0x27270027, 0x80800080, 0xecec00ec, 0x5f5f005f, + 0x60600060, 0x51510051, 0x7f7f007f, 0xa9a900a9, + 0x19190019, 0xb5b500b5, 0x4a4a004a, 0x0d0d000d, + 0x2d2d002d, 0xe5e500e5, 0x7a7a007a, 0x9f9f009f, + 0x93930093, 0xc9c900c9, 0x9c9c009c, 0xefef00ef, + 0xa0a000a0, 0xe0e000e0, 0x3b3b003b, 0x4d4d004d, + 0xaeae00ae, 0x2a2a002a, 0xf5f500f5, 0xb0b000b0, + 0xc8c800c8, 0xebeb00eb, 0xbbbb00bb, 0x3c3c003c, + 0x83830083, 0x53530053, 0x99990099, 0x61610061, + 0x17170017, 0x2b2b002b, 0x04040004, 0x7e7e007e, + 0xbaba00ba, 0x77770077, 0xd6d600d6, 0x26260026, + 0xe1e100e1, 0x69690069, 0x14140014, 0x63630063, + 0x55550055, 0x21210021, 0x0c0c000c, 0x7d7d007d +}; + +static const uint32_t X2[256] = { + 0x30303000, 0x68686800, 0x99999900, 0x1b1b1b00, + 0x87878700, 0xb9b9b900, 0x21212100, 0x78787800, + 0x50505000, 0x39393900, 0xdbdbdb00, 0xe1e1e100, + 0x72727200, 0x09090900, 0x62626200, 0x3c3c3c00, + 0x3e3e3e00, 0x7e7e7e00, 0x5e5e5e00, 0x8e8e8e00, + 0xf1f1f100, 0xa0a0a000, 0xcccccc00, 0xa3a3a300, + 0x2a2a2a00, 0x1d1d1d00, 0xfbfbfb00, 0xb6b6b600, + 0xd6d6d600, 0x20202000, 0xc4c4c400, 0x8d8d8d00, + 0x81818100, 0x65656500, 0xf5f5f500, 0x89898900, + 0xcbcbcb00, 0x9d9d9d00, 0x77777700, 0xc6c6c600, + 0x57575700, 0x43434300, 0x56565600, 0x17171700, + 0xd4d4d400, 0x40404000, 0x1a1a1a00, 0x4d4d4d00, + 0xc0c0c000, 0x63636300, 0x6c6c6c00, 0xe3e3e300, + 0xb7b7b700, 0xc8c8c800, 0x64646400, 0x6a6a6a00, + 0x53535300, 0xaaaaaa00, 0x38383800, 0x98989800, + 0x0c0c0c00, 0xf4f4f400, 0x9b9b9b00, 0xededed00, + 0x7f7f7f00, 0x22222200, 0x76767600, 0xafafaf00, + 0xdddddd00, 0x3a3a3a00, 0x0b0b0b00, 0x58585800, + 0x67676700, 0x88888800, 0x06060600, 0xc3c3c300, + 0x35353500, 0x0d0d0d00, 0x01010100, 0x8b8b8b00, + 0x8c8c8c00, 0xc2c2c200, 0xe6e6e600, 0x5f5f5f00, + 0x02020200, 0x24242400, 0x75757500, 0x93939300, + 0x66666600, 0x1e1e1e00, 0xe5e5e500, 0xe2e2e200, + 0x54545400, 0xd8d8d800, 0x10101000, 0xcecece00, + 0x7a7a7a00, 0xe8e8e800, 0x08080800, 0x2c2c2c00, + 0x12121200, 0x97979700, 0x32323200, 0xababab00, + 0xb4b4b400, 0x27272700, 0x0a0a0a00, 0x23232300, + 0xdfdfdf00, 0xefefef00, 0xcacaca00, 0xd9d9d900, + 0xb8b8b800, 0xfafafa00, 0xdcdcdc00, 0x31313100, + 0x6b6b6b00, 0xd1d1d100, 0xadadad00, 0x19191900, + 0x49494900, 0xbdbdbd00, 0x51515100, 0x96969600, + 0xeeeeee00, 0xe4e4e400, 0xa8a8a800, 0x41414100, + 0xdadada00, 0xffffff00, 0xcdcdcd00, 0x55555500, + 0x86868600, 0x36363600, 0xbebebe00, 0x61616100, + 0x52525200, 0xf8f8f800, 0xbbbbbb00, 0x0e0e0e00, + 0x82828200, 0x48484800, 0x69696900, 0x9a9a9a00, + 0xe0e0e000, 0x47474700, 0x9e9e9e00, 0x5c5c5c00, + 0x04040400, 0x4b4b4b00, 0x34343400, 0x15151500, + 0x79797900, 0x26262600, 0xa7a7a700, 0xdedede00, + 0x29292900, 0xaeaeae00, 0x92929200, 0xd7d7d700, + 0x84848400, 0xe9e9e900, 0xd2d2d200, 0xbababa00, + 0x5d5d5d00, 0xf3f3f300, 0xc5c5c500, 0xb0b0b000, + 0xbfbfbf00, 0xa4a4a400, 0x3b3b3b00, 0x71717100, + 0x44444400, 0x46464600, 0x2b2b2b00, 0xfcfcfc00, + 0xebebeb00, 0x6f6f6f00, 0xd5d5d500, 0xf6f6f600, + 0x14141400, 0xfefefe00, 0x7c7c7c00, 0x70707000, + 0x5a5a5a00, 0x7d7d7d00, 0xfdfdfd00, 0x2f2f2f00, + 0x18181800, 0x83838300, 0x16161600, 0xa5a5a500, + 0x91919100, 0x1f1f1f00, 0x05050500, 0x95959500, + 0x74747400, 0xa9a9a900, 0xc1c1c100, 0x5b5b5b00, + 0x4a4a4a00, 0x85858500, 0x6d6d6d00, 0x13131300, + 0x07070700, 0x4f4f4f00, 0x4e4e4e00, 0x45454500, + 0xb2b2b200, 0x0f0f0f00, 0xc9c9c900, 0x1c1c1c00, + 0xa6a6a600, 0xbcbcbc00, 0xececec00, 0x73737300, + 0x90909000, 0x7b7b7b00, 0xcfcfcf00, 0x59595900, + 0x8f8f8f00, 0xa1a1a100, 0xf9f9f900, 0x2d2d2d00, + 0xf2f2f200, 0xb1b1b100, 0x00000000, 0x94949400, + 0x37373700, 0x9f9f9f00, 0xd0d0d000, 0x2e2e2e00, + 0x9c9c9c00, 0x6e6e6e00, 0x28282800, 0x3f3f3f00, + 0x80808000, 0xf0f0f000, 0x3d3d3d00, 0xd3d3d300, + 0x25252500, 0x8a8a8a00, 0xb5b5b500, 0xe7e7e700, + 0x42424200, 0xb3b3b300, 0xc7c7c700, 0xeaeaea00, + 0xf7f7f700, 0x4c4c4c00, 0x11111100, 0x33333300, + 0x03030300, 0xa2a2a200, 0xacacac00, 0x60606000 +}; + +/* Key XOR Layer */ +#define ARIA_ADD_ROUND_KEY(RK, T0, T1, T2, T3) \ + do { \ + (T0) ^= (RK)->u[0]; \ + (T1) ^= (RK)->u[1]; \ + (T2) ^= (RK)->u[2]; \ + (T3) ^= (RK)->u[3]; \ + } while(0) + +/* S-Box Layer 1 + M */ +#define ARIA_SBOX_LAYER1_WITH_PRE_DIFF(T0, T1, T2, T3) \ + do { \ + (T0) = \ + S1[GET_U8_BE(T0, 0)] ^ \ + S2[GET_U8_BE(T0, 1)] ^ \ + X1[GET_U8_BE(T0, 2)] ^ \ + X2[GET_U8_BE(T0, 3)]; \ + (T1) = \ + S1[GET_U8_BE(T1, 0)] ^ \ + S2[GET_U8_BE(T1, 1)] ^ \ + X1[GET_U8_BE(T1, 2)] ^ \ + X2[GET_U8_BE(T1, 3)]; \ + (T2) = \ + S1[GET_U8_BE(T2, 0)] ^ \ + S2[GET_U8_BE(T2, 1)] ^ \ + X1[GET_U8_BE(T2, 2)] ^ \ + X2[GET_U8_BE(T2, 3)]; \ + (T3) = \ + S1[GET_U8_BE(T3, 0)] ^ \ + S2[GET_U8_BE(T3, 1)] ^ \ + X1[GET_U8_BE(T3, 2)] ^ \ + X2[GET_U8_BE(T3, 3)]; \ + } while(0) + +/* S-Box Layer 2 + M */ +#define ARIA_SBOX_LAYER2_WITH_PRE_DIFF(T0, T1, T2, T3) \ + do { \ + (T0) = \ + X1[GET_U8_BE(T0, 0)] ^ \ + X2[GET_U8_BE(T0, 1)] ^ \ + S1[GET_U8_BE(T0, 2)] ^ \ + S2[GET_U8_BE(T0, 3)]; \ + (T1) = \ + X1[GET_U8_BE(T1, 0)] ^ \ + X2[GET_U8_BE(T1, 1)] ^ \ + S1[GET_U8_BE(T1, 2)] ^ \ + S2[GET_U8_BE(T1, 3)]; \ + (T2) = \ + X1[GET_U8_BE(T2, 0)] ^ \ + X2[GET_U8_BE(T2, 1)] ^ \ + S1[GET_U8_BE(T2, 2)] ^ \ + S2[GET_U8_BE(T2, 3)]; \ + (T3) = \ + X1[GET_U8_BE(T3, 0)] ^ \ + X2[GET_U8_BE(T3, 1)] ^ \ + S1[GET_U8_BE(T3, 2)] ^ \ + S2[GET_U8_BE(T3, 3)]; \ + } while(0) + +/* Word-level diffusion */ +#define ARIA_DIFF_WORD(T0,T1,T2,T3) \ + do { \ + (T1) ^= (T2); \ + (T2) ^= (T3); \ + (T0) ^= (T1); \ + \ + (T3) ^= (T1); \ + (T2) ^= (T0); \ + (T1) ^= (T2); \ + } while(0) + +/* Byte-level diffusion */ +#define ARIA_DIFF_BYTE(T0, T1, T2, T3) \ + do { \ + (T1) = (((T1) << 8) & 0xff00ff00) ^ (((T1) >> 8) & 0x00ff00ff); \ + (T2) = rotr32(T2, 16); \ + (T3) = bswap32(T3); \ + } while(0) + +/* Odd round Substitution & Diffusion */ +#define ARIA_SUBST_DIFF_ODD(T0, T1, T2, T3) \ + do { \ + ARIA_SBOX_LAYER1_WITH_PRE_DIFF(T0, T1, T2, T3); \ + ARIA_DIFF_WORD(T0, T1, T2, T3); \ + ARIA_DIFF_BYTE(T0, T1, T2, T3); \ + ARIA_DIFF_WORD(T0, T1, T2, T3); \ + } while(0) + +/* Even round Substitution & Diffusion */ +#define ARIA_SUBST_DIFF_EVEN(T0, T1, T2, T3) \ + do { \ + ARIA_SBOX_LAYER2_WITH_PRE_DIFF(T0, T1, T2, T3); \ + ARIA_DIFF_WORD(T0, T1, T2, T3); \ + ARIA_DIFF_BYTE(T2, T3, T0, T1); \ + ARIA_DIFF_WORD(T0, T1, T2, T3); \ + } while(0) + +/* Q, R Macro expanded ARIA GSRK */ +#define _ARIA_GSRK(RK, X, Y, Q, R) \ + do { \ + (RK)->u[0] = \ + ((X)[0]) ^ \ + (((Y)[((Q) ) % 4]) >> (R)) ^ \ + (((Y)[((Q) + 3) % 4]) << (32 - (R))); \ + (RK)->u[1] = \ + ((X)[1]) ^ \ + (((Y)[((Q) + 1) % 4]) >> (R)) ^ \ + (((Y)[((Q) ) % 4]) << (32 - (R))); \ + (RK)->u[2] = \ + ((X)[2]) ^ \ + (((Y)[((Q) + 2) % 4]) >> (R)) ^ \ + (((Y)[((Q) + 1) % 4]) << (32 - (R))); \ + (RK)->u[3] = \ + ((X)[3]) ^ \ + (((Y)[((Q) + 3) % 4]) >> (R)) ^ \ + (((Y)[((Q) + 2) % 4]) << (32 - (R))); \ + } while(0) + +#define ARIA_GSRK(RK, X, Y, N) _ARIA_GSRK(RK, X, Y, 4 - ((N) / 32), (N) % 32) + +#define ARIA_DEC_DIFF_BYTE(X, Y, TMP, TMP2) \ + do { \ + (TMP) = (X); \ + (TMP2) = rotr32((TMP), 8); \ + (Y) = (TMP2) ^ rotr32((TMP) ^ (TMP2), 16); \ + } while(0) + +void aria_encrypt(const unsigned char *in, unsigned char *out, + const ARIA_KEY *key) +{ + register uint32_t reg0, reg1, reg2, reg3; + int Nr; + + const ARIA_u128 *rk = key->rd_key; + + if (in == NULL || out == NULL || key == NULL) { + return; + } + + Nr = key->rounds; + + if (Nr != 12 && Nr != 14 && Nr != 16) { + return; + } + + reg0 = GET_U32_BE(in, 0); + reg1 = GET_U32_BE(in, 1); + reg2 = GET_U32_BE(in, 2); + reg3 = GET_U32_BE(in, 3); + + ARIA_ADD_ROUND_KEY(rk, reg0, reg1, reg2, reg3); + rk++; + + ARIA_SUBST_DIFF_ODD(reg0, reg1, reg2, reg3); + ARIA_ADD_ROUND_KEY(rk, reg0, reg1, reg2, reg3); + rk++; + + while(Nr -= 2){ + ARIA_SUBST_DIFF_EVEN(reg0, reg1, reg2, reg3); + ARIA_ADD_ROUND_KEY(rk, reg0, reg1, reg2, reg3); + rk++; + + ARIA_SUBST_DIFF_ODD(reg0, reg1, reg2, reg3); + ARIA_ADD_ROUND_KEY(rk, reg0, reg1, reg2, reg3); + rk++; + } + + reg0 = rk->u[0] ^ MAKE_U32( + (uint8_t)(X1[GET_U8_BE(reg0, 0)] ), + (uint8_t)(X2[GET_U8_BE(reg0, 1)] >> 8), + (uint8_t)(S1[GET_U8_BE(reg0, 2)] ), + (uint8_t)(S2[GET_U8_BE(reg0, 3)] )); + reg1 = rk->u[1] ^ MAKE_U32( + (uint8_t)(X1[GET_U8_BE(reg1, 0)] ), + (uint8_t)(X2[GET_U8_BE(reg1, 1)] >> 8), + (uint8_t)(S1[GET_U8_BE(reg1, 2)] ), + (uint8_t)(S2[GET_U8_BE(reg1, 3)] )); + reg2 = rk->u[2] ^ MAKE_U32( + (uint8_t)(X1[GET_U8_BE(reg2, 0)] ), + (uint8_t)(X2[GET_U8_BE(reg2, 1)] >> 8), + (uint8_t)(S1[GET_U8_BE(reg2, 2)] ), + (uint8_t)(S2[GET_U8_BE(reg2, 3)] )); + reg3 = rk->u[3] ^ MAKE_U32( + (uint8_t)(X1[GET_U8_BE(reg3, 0)] ), + (uint8_t)(X2[GET_U8_BE(reg3, 1)] >> 8), + (uint8_t)(S1[GET_U8_BE(reg3, 2)] ), + (uint8_t)(S2[GET_U8_BE(reg3, 3)] )); + + PUT_U32_BE(out, 0, reg0); + PUT_U32_BE(out, 1, reg1); + PUT_U32_BE(out, 2, reg2); + PUT_U32_BE(out, 3, reg3); +} + +int aria_set_encrypt_key(const unsigned char *userKey, const int bits, + ARIA_KEY *key) +{ + register uint32_t reg0, reg1, reg2, reg3; + uint32_t w0[4], w1[4], w2[4], w3[4]; + const uint32_t *ck; + + ARIA_u128 *rk = key->rd_key; + int Nr = (bits + 256) / 32; + + if (userKey == NULL || key == NULL) { + return -1; + } + if (bits != 128 && bits != 192 && bits != 256) { + return -2; + } + + key->rounds = Nr; + ck = &Key_RC[(bits - 128) / 64][0]; + + w0[0] = GET_U32_BE(userKey, 0); + w0[1] = GET_U32_BE(userKey, 1); + w0[2] = GET_U32_BE(userKey, 2); + w0[3] = GET_U32_BE(userKey, 3); + + reg0 = w0[0] ^ ck[0]; + reg1 = w0[1] ^ ck[1]; + reg2 = w0[2] ^ ck[2]; + reg3 = w0[3] ^ ck[3]; + + ARIA_SUBST_DIFF_ODD(reg0, reg1, reg2, reg3); + + if (bits > 128) { + w1[0] = GET_U32_BE(userKey, 4); + w1[1] = GET_U32_BE(userKey, 5); + if (bits > 192) { + w1[2] = GET_U32_BE(userKey, 6); + w1[3] = GET_U32_BE(userKey, 7); + } + else { + w1[2] = w1[3] = 0; + } + } + else { + w1[0] = w1[1] = w1[2] = w1[3] = 0; + } + + w1[0] ^= reg0; + w1[1] ^= reg1; + w1[2] ^= reg2; + w1[3] ^= reg3; + + reg0 = w1[0]; + reg1 = w1[1]; + reg2 = w1[2]; + reg3 = w1[3]; + + reg0 ^= ck[4]; + reg1 ^= ck[5]; + reg2 ^= ck[6]; + reg3 ^= ck[7]; + + ARIA_SUBST_DIFF_EVEN(reg0, reg1, reg2, reg3); + + reg0 ^= w0[0]; + reg1 ^= w0[1]; + reg2 ^= w0[2]; + reg3 ^= w0[3]; + + w2[0] = reg0; + w2[1] = reg1; + w2[2] = reg2; + w2[3] = reg3; + + reg0 ^= ck[8]; + reg1 ^= ck[9]; + reg2 ^= ck[10]; + reg3 ^= ck[11]; + + ARIA_SUBST_DIFF_ODD(reg0, reg1, reg2, reg3); + + w3[0] = reg0 ^ w1[0]; + w3[1] = reg1 ^ w1[1]; + w3[2] = reg2 ^ w1[2]; + w3[3] = reg3 ^ w1[3]; + + ARIA_GSRK(rk, w0, w1, 19); + rk++; + ARIA_GSRK(rk, w1, w2, 19); + rk++; + ARIA_GSRK(rk, w2, w3, 19); + rk++; + ARIA_GSRK(rk, w3, w0, 19); + + rk++; + ARIA_GSRK(rk, w0, w1, 31); + rk++; + ARIA_GSRK(rk, w1, w2, 31); + rk++; + ARIA_GSRK(rk, w2, w3, 31); + rk++; + ARIA_GSRK(rk, w3, w0, 31); + + rk++; + ARIA_GSRK(rk, w0, w1, 67); + rk++; + ARIA_GSRK(rk, w1, w2, 67); + rk++; + ARIA_GSRK(rk, w2, w3, 67); + rk++; + ARIA_GSRK(rk, w3, w0, 67); + + rk++; + ARIA_GSRK(rk, w0, w1, 97); + if (bits > 128) { + rk++; + ARIA_GSRK(rk, w1, w2, 97); + rk++; + ARIA_GSRK(rk, w2, w3, 97); + } + if (bits > 192) { + rk++; + ARIA_GSRK(rk, w3, w0, 97); + + rk++; + ARIA_GSRK(rk, w0, w1, 109); + } + + return 0; +} + +int aria_set_decrypt_key(const unsigned char *userKey, const int bits, + ARIA_KEY *key) +{ + ARIA_u128 *rk_head; + ARIA_u128 *rk_tail; + register uint32_t w1, w2; + register uint32_t reg0, reg1, reg2, reg3; + uint32_t s0, s1, s2, s3; + + const int r = aria_set_encrypt_key(userKey, bits, key); + + if (r != 0) { + return r; + } + + rk_head = key->rd_key; + rk_tail = rk_head + key->rounds; + + reg0 = rk_head->u[0]; + reg1 = rk_head->u[1]; + reg2 = rk_head->u[2]; + reg3 = rk_head->u[3]; + + memcpy(rk_head, rk_tail, ARIA_BLOCK_SIZE); + + rk_tail->u[0] = reg0; + rk_tail->u[1] = reg1; + rk_tail->u[2] = reg2; + rk_tail->u[3] = reg3; + + rk_head++; + rk_tail--; + + for (; rk_head < rk_tail; rk_head++, rk_tail--) { + ARIA_DEC_DIFF_BYTE(rk_head->u[0], reg0, w1, w2); + ARIA_DEC_DIFF_BYTE(rk_head->u[1], reg1, w1, w2); + ARIA_DEC_DIFF_BYTE(rk_head->u[2], reg2, w1, w2); + ARIA_DEC_DIFF_BYTE(rk_head->u[3], reg3, w1, w2); + + ARIA_DIFF_WORD(reg0, reg1, reg2, reg3); + ARIA_DIFF_BYTE(reg0, reg1, reg2, reg3); + ARIA_DIFF_WORD(reg0, reg1, reg2, reg3); + + s0 = reg0; + s1 = reg1; + s2 = reg2; + s3 = reg3; + + ARIA_DEC_DIFF_BYTE(rk_tail->u[0], reg0, w1, w2); + ARIA_DEC_DIFF_BYTE(rk_tail->u[1], reg1, w1, w2); + ARIA_DEC_DIFF_BYTE(rk_tail->u[2], reg2, w1, w2); + ARIA_DEC_DIFF_BYTE(rk_tail->u[3], reg3, w1, w2); + + ARIA_DIFF_WORD(reg0, reg1, reg2, reg3); + ARIA_DIFF_BYTE(reg0, reg1, reg2, reg3); + ARIA_DIFF_WORD(reg0, reg1, reg2, reg3); + + rk_head->u[0] = reg0; + rk_head->u[1] = reg1; + rk_head->u[2] = reg2; + rk_head->u[3] = reg3; + + rk_tail->u[0] = s0; + rk_tail->u[1] = s1; + rk_tail->u[2] = s2; + rk_tail->u[3] = s3; + } + ARIA_DEC_DIFF_BYTE(rk_head->u[0], reg0, w1, w2); + ARIA_DEC_DIFF_BYTE(rk_head->u[1], reg1, w1, w2); + ARIA_DEC_DIFF_BYTE(rk_head->u[2], reg2, w1, w2); + ARIA_DEC_DIFF_BYTE(rk_head->u[3], reg3, w1, w2); + + ARIA_DIFF_WORD(reg0, reg1, reg2, reg3); + ARIA_DIFF_BYTE(reg0, reg1, reg2, reg3); + ARIA_DIFF_WORD(reg0, reg1, reg2, reg3); + + rk_tail->u[0] = reg0; + rk_tail->u[1] = reg1; + rk_tail->u[2] = reg2; + rk_tail->u[3] = reg3; + + return 0; +} + +#else + static const unsigned char sb1[256] = { 0x63, 0x7c, 0x77, 0x7b, 0xf2, 0x6b, 0x6f, 0xc5, 0x30, 0x01, 0x67, 0x2b, 0xfe, 0xd7, 0xab, 0x76, @@ -156,56 +895,57 @@ static const unsigned char sb4[256] = { 0xf7, 0x4c, 0x11, 0x33, 0x03, 0xa2, 0xac, 0x60 }; -static const ARIA_u128 c1 = { +static const ARIA_u128 c1 = {{ 0x51, 0x7c, 0xc1, 0xb7, 0x27, 0x22, 0x0a, 0x94, 0xfe, 0x13, 0xab, 0xe8, 0xfa, 0x9a, 0x6e, 0xe0 -}; +}}; -static const ARIA_u128 c2 = { +static const ARIA_u128 c2 = {{ 0x6d, 0xb1, 0x4a, 0xcc, 0x9e, 0x21, 0xc8, 0x20, 0xff, 0x28, 0xb1, 0xd5, 0xef, 0x5d, 0xe2, 0xb0 -}; +}}; -static const ARIA_u128 c3 = { +static const ARIA_u128 c3 = {{ 0xdb, 0x92, 0x37, 0x1d, 0x21, 0x26, 0xe9, 0x70, 0x03, 0x24, 0x97, 0x75, 0x04, 0xe8, 0xc9, 0x0e -}; +}}; /* * Exclusive or two 128 bit values into the result. * It is safe for the result to be the same as the either input. */ -static void xor128(ARIA_u128 o, const ARIA_u128 x, const ARIA_u128 y) +static void xor128(ARIA_u128 *o, const ARIA_u128 *x, const ARIA_u128 *y) { int i; for (i = 0; i < ARIA_BLOCK_SIZE; i++) - o[i] = x[i] ^ y[i]; + o->c[i] = x->c[i] ^ y->c[i]; } /* * Generalised circular rotate right and exclusive or function. * It is safe for the output to overlap either input. */ -static ossl_inline void rotnr(unsigned int n, ARIA_u128 o, const ARIA_u128 xor, - const ARIA_u128 z) +static ossl_inline void rotnr(unsigned int n, ARIA_u128 *o, + const ARIA_u128 *xor, const ARIA_u128 *z) { const unsigned int bytes = n / 8, bits = n % 8; unsigned int i; ARIA_u128 t; for (i = 0; i < ARIA_BLOCK_SIZE; i++) - t[(i + bytes) % ARIA_BLOCK_SIZE] = z[i]; + t.c[(i + bytes) % ARIA_BLOCK_SIZE] = z->c[i]; for (i = 0; i < ARIA_BLOCK_SIZE; i++) - o[i] = ((t[i] >> bits) | - (t[i ? i - 1 : ARIA_BLOCK_SIZE - 1] << (8 - bits))) ^ xor[i]; + o->c[i] = ((t.c[i] >> bits) | + (t.c[i ? i - 1 : ARIA_BLOCK_SIZE - 1] << (8 - bits))) ^ + xor->c[i]; } /* * Circular rotate 19 bits right and xor. * It is safe for the output to overlap either input. */ -static void rot19r(ARIA_u128 o, const ARIA_u128 xor, const ARIA_u128 z) +static void rot19r(ARIA_u128 *o, const ARIA_u128 *xor, const ARIA_u128 *z) { rotnr(19, o, xor, z); } @@ -214,7 +954,7 @@ static void rot19r(ARIA_u128 o, const ARIA_u128 xor, const ARIA_u128 z) * Circular rotate 31 bits right and xor. * It is safe for the output to overlap either input. */ -static void rot31r(ARIA_u128 o, const ARIA_u128 xor, const ARIA_u128 z) +static void rot31r(ARIA_u128 *o, const ARIA_u128 *xor, const ARIA_u128 *z) { rotnr(31, o, xor, z); } @@ -223,7 +963,7 @@ static void rot31r(ARIA_u128 o, const ARIA_u128 xor, const ARIA_u128 z) * Circular rotate 61 bits left and xor. * It is safe for the output to overlap either input. */ -static void rot61l(ARIA_u128 o, const ARIA_u128 xor, const ARIA_u128 z) +static void rot61l(ARIA_u128 *o, const ARIA_u128 *xor, const ARIA_u128 *z) { rotnr(8 * ARIA_BLOCK_SIZE - 61, o, xor, z); } @@ -232,7 +972,7 @@ static void rot61l(ARIA_u128 o, const ARIA_u128 xor, const ARIA_u128 z) * Circular rotate 31 bits left and xor. * It is safe for the output to overlap either input. */ -static void rot31l(ARIA_u128 o, const ARIA_u128 xor, const ARIA_u128 z) +static void rot31l(ARIA_u128 *o, const ARIA_u128 *xor, const ARIA_u128 *z) { rotnr(8 * ARIA_BLOCK_SIZE - 31, o, xor, z); } @@ -241,7 +981,7 @@ static void rot31l(ARIA_u128 o, const ARIA_u128 xor, const ARIA_u128 z) * Circular rotate 19 bits left and xor. * It is safe for the output to overlap either input. */ -static void rot19l(ARIA_u128 o, const ARIA_u128 xor, const ARIA_u128 z) +static void rot19l(ARIA_u128 *o, const ARIA_u128 *xor, const ARIA_u128 *z) { rotnr(8 * ARIA_BLOCK_SIZE - 19, o, xor, z); } @@ -250,14 +990,14 @@ static void rot19l(ARIA_u128 o, const ARIA_u128 xor, const ARIA_u128 z) * First substitution and xor layer, used for odd steps. * It is safe for the input and output to be the same. */ -static void sl1(ARIA_u128 o, const ARIA_u128 x, const ARIA_u128 y) +static void sl1(ARIA_u128 *o, const ARIA_u128 *x, const ARIA_u128 *y) { unsigned int i; for (i = 0; i < ARIA_BLOCK_SIZE; i += 4) { - o[i ] = sb1[x[i ] ^ y[i ]]; - o[i + 1] = sb2[x[i + 1] ^ y[i + 1]]; - o[i + 2] = sb3[x[i + 2] ^ y[i + 2]]; - o[i + 3] = sb4[x[i + 3] ^ y[i + 3]]; + o->c[i ] = sb1[x->c[i ] ^ y->c[i ]]; + o->c[i + 1] = sb2[x->c[i + 1] ^ y->c[i + 1]]; + o->c[i + 2] = sb3[x->c[i + 2] ^ y->c[i + 2]]; + o->c[i + 3] = sb4[x->c[i + 3] ^ y->c[i + 3]]; } } @@ -265,14 +1005,14 @@ static void sl1(ARIA_u128 o, const ARIA_u128 x, const ARIA_u128 y) * Second substitution and xor layer, used for even steps. * It is safe for the input and output to be the same. */ -static void sl2(ARIA_u128 o, const ARIA_u128 x, const ARIA_u128 y) +static void sl2(ARIA_u128 *o, const ARIA_u128 *x, const ARIA_u128 *y) { unsigned int i; for (i = 0; i < ARIA_BLOCK_SIZE; i += 4) { - o[i ] = sb3[x[i ] ^ y[i ]]; - o[i + 1] = sb4[x[i + 1] ^ y[i + 1]]; - o[i + 2] = sb1[x[i + 2] ^ y[i + 2]]; - o[i + 3] = sb2[x[i + 3] ^ y[i + 3]]; + o->c[i ] = sb3[x->c[i ] ^ y->c[i ]]; + o->c[i + 1] = sb4[x->c[i + 1] ^ y->c[i + 1]]; + o->c[i + 2] = sb1[x->c[i + 2] ^ y->c[i + 2]]; + o->c[i + 3] = sb2[x->c[i + 3] ^ y->c[i + 3]]; } } @@ -280,24 +1020,40 @@ static void sl2(ARIA_u128 o, const ARIA_u128 x, const ARIA_u128 y) * Diffusion layer step * It is NOT safe for the input and output to overlap. */ -static void a(ARIA_u128 y, const ARIA_u128 x) +static void a(ARIA_u128 *y, const ARIA_u128 *x) { - y[ 0] = x[3] ^ x[4] ^ x[6] ^ x[ 8] ^ x[ 9] ^ x[13] ^ x[14]; - y[ 1] = x[2] ^ x[5] ^ x[7] ^ x[ 8] ^ x[ 9] ^ x[12] ^ x[15]; - y[ 2] = x[1] ^ x[4] ^ x[6] ^ x[10] ^ x[11] ^ x[12] ^ x[15]; - y[ 3] = x[0] ^ x[5] ^ x[7] ^ x[10] ^ x[11] ^ x[13] ^ x[14]; - y[ 4] = x[0] ^ x[2] ^ x[5] ^ x[ 8] ^ x[11] ^ x[14] ^ x[15]; - y[ 5] = x[1] ^ x[3] ^ x[4] ^ x[ 9] ^ x[10] ^ x[14] ^ x[15]; - y[ 6] = x[0] ^ x[2] ^ x[7] ^ x[ 9] ^ x[10] ^ x[12] ^ x[13]; - y[ 7] = x[1] ^ x[3] ^ x[6] ^ x[ 8] ^ x[11] ^ x[12] ^ x[13]; - y[ 8] = x[0] ^ x[1] ^ x[4] ^ x[ 7] ^ x[10] ^ x[13] ^ x[15]; - y[ 9] = x[0] ^ x[1] ^ x[5] ^ x[ 6] ^ x[11] ^ x[12] ^ x[14]; - y[10] = x[2] ^ x[3] ^ x[5] ^ x[ 6] ^ x[ 8] ^ x[13] ^ x[15]; - y[11] = x[2] ^ x[3] ^ x[4] ^ x[ 7] ^ x[ 9] ^ x[12] ^ x[14]; - y[12] = x[1] ^ x[2] ^ x[6] ^ x[ 7] ^ x[ 9] ^ x[11] ^ x[12]; - y[13] = x[0] ^ x[3] ^ x[6] ^ x[ 7] ^ x[ 8] ^ x[10] ^ x[13]; - y[14] = x[0] ^ x[3] ^ x[4] ^ x[ 5] ^ x[ 9] ^ x[11] ^ x[14]; - y[15] = x[1] ^ x[2] ^ x[4] ^ x[ 5] ^ x[ 8] ^ x[10] ^ x[15]; + y->c[ 0] = x->c[ 3] ^ x->c[ 4] ^ x->c[ 6] ^ x->c[ 8] ^ + x->c[ 9] ^ x->c[13] ^ x->c[14]; + y->c[ 1] = x->c[ 2] ^ x->c[ 5] ^ x->c[ 7] ^ x->c[ 8] ^ + x->c[ 9] ^ x->c[12] ^ x->c[15]; + y->c[ 2] = x->c[ 1] ^ x->c[ 4] ^ x->c[ 6] ^ x->c[10] ^ + x->c[11] ^ x->c[12] ^ x->c[15]; + y->c[ 3] = x->c[ 0] ^ x->c[ 5] ^ x->c[ 7] ^ x->c[10] ^ + x->c[11] ^ x->c[13] ^ x->c[14]; + y->c[ 4] = x->c[ 0] ^ x->c[ 2] ^ x->c[ 5] ^ x->c[ 8] ^ + x->c[11] ^ x->c[14] ^ x->c[15]; + y->c[ 5] = x->c[ 1] ^ x->c[ 3] ^ x->c[ 4] ^ x->c[ 9] ^ + x->c[10] ^ x->c[14] ^ x->c[15]; + y->c[ 6] = x->c[ 0] ^ x->c[ 2] ^ x->c[ 7] ^ x->c[ 9] ^ + x->c[10] ^ x->c[12] ^ x->c[13]; + y->c[ 7] = x->c[ 1] ^ x->c[ 3] ^ x->c[ 6] ^ x->c[ 8] ^ + x->c[11] ^ x->c[12] ^ x->c[13]; + y->c[ 8] = x->c[ 0] ^ x->c[ 1] ^ x->c[ 4] ^ x->c[ 7] ^ + x->c[10] ^ x->c[13] ^ x->c[15]; + y->c[ 9] = x->c[ 0] ^ x->c[ 1] ^ x->c[ 5] ^ x->c[ 6] ^ + x->c[11] ^ x->c[12] ^ x->c[14]; + y->c[10] = x->c[ 2] ^ x->c[ 3] ^ x->c[ 5] ^ x->c[ 6] ^ + x->c[ 8] ^ x->c[13] ^ x->c[15]; + y->c[11] = x->c[ 2] ^ x->c[ 3] ^ x->c[ 4] ^ x->c[ 7] ^ + x->c[ 9] ^ x->c[12] ^ x->c[14]; + y->c[12] = x->c[ 1] ^ x->c[ 2] ^ x->c[ 6] ^ x->c[ 7] ^ + x->c[ 9] ^ x->c[11] ^ x->c[12]; + y->c[13] = x->c[ 0] ^ x->c[ 3] ^ x->c[ 6] ^ x->c[ 7] ^ + x->c[ 8] ^ x->c[10] ^ x->c[13]; + y->c[14] = x->c[ 0] ^ x->c[ 3] ^ x->c[ 4] ^ x->c[ 5] ^ + x->c[ 9] ^ x->c[11] ^ x->c[14]; + y->c[15] = x->c[ 1] ^ x->c[ 2] ^ x->c[ 4] ^ x->c[ 5] ^ + x->c[ 8] ^ x->c[10] ^ x->c[15]; } /* @@ -305,12 +1061,13 @@ static void a(ARIA_u128 y, const ARIA_u128 x) * Apply the first substitution layer and then a diffusion step. * It is safe for the input and output to overlap. */ -static ossl_inline void FO(ARIA_u128 o, const ARIA_u128 d, const ARIA_u128 rk) +static ossl_inline void FO(ARIA_u128 *o, const ARIA_u128 *d, + const ARIA_u128 *rk) { - ARIA_u128 y; + ARIA_u128 y; - sl1(y, d, rk); - a(o, y); + sl1(&y, d, rk); + a(o, &y); } /* @@ -318,32 +1075,34 @@ static ossl_inline void FO(ARIA_u128 o, const ARIA_u128 d, const ARIA_u128 rk) * Apply the second substitution layer and then a diffusion step. * It is safe for the input and output to overlap. */ -static ossl_inline void FE(ARIA_u128 o, const ARIA_u128 d, const ARIA_u128 rk) +static ossl_inline void FE(ARIA_u128 *o, const ARIA_u128 *d, + const ARIA_u128 *rk) { - ARIA_u128 y; + ARIA_u128 y; - sl2(y, d, rk); - a(o, y); + sl2(&y, d, rk); + a(o, &y); } /* * Encrypt or decrypt a single block * in and out can overlap */ -static void do_encrypt(ARIA_u128 o, const ARIA_u128 pin, unsigned int rounds, - const ARIA_u128 *keys) +static void do_encrypt(unsigned char *o, const unsigned char *pin, + unsigned int rounds, const ARIA_u128 *keys) { ARIA_u128 p; + ARIA_u128 *o128 = (ARIA_u128 *)o; unsigned int i; - memcpy(p, pin, sizeof(p)); + memcpy(&p, pin, sizeof(p)); for (i = 0; i < rounds - 2; i += 2) { - FO(p, p, keys[i]); - FE(p, p, keys[i + 1]); + FO(&p, &p, &keys[i]); + FE(&p, &p, &keys[i + 1]); } - FO(p, p, keys[rounds - 2]); - sl2(o, p, keys[rounds - 1]); - xor128(o, o, keys[rounds]); + FO(&p, &p, &keys[rounds - 2]); + sl2(o128, &p, &keys[rounds - 1]); + xor128(o128, o128, &keys[rounds]); } /* @@ -366,68 +1125,68 @@ void aria_encrypt(const unsigned char *in, unsigned char *out, int aria_set_encrypt_key(const unsigned char *userKey, const int bits, ARIA_KEY *key) { - const unsigned char *ck1, *ck2, *ck3; + const ARIA_u128 *ck1, *ck2, *ck3; ARIA_u128 kr, w0, w1, w2, w3; if (!userKey || !key) return -1; - memcpy(w0, userKey, sizeof(w0)); + memcpy(w0.c, userKey, sizeof(w0)); switch (bits) { default: return -2; case 128: key->rounds = 12; - ck1 = c1; - ck2 = c2; - ck3 = c3; - memset(kr, 0, sizeof(kr)); + ck1 = &c1; + ck2 = &c2; + ck3 = &c3; + memset(kr.c, 0, sizeof(kr)); break; case 192: key->rounds = 14; - ck1 = c2; - ck2 = c3; - ck3 = c1; - memcpy(kr, userKey + ARIA_BLOCK_SIZE, sizeof(kr) / 2); - memset(kr + ARIA_BLOCK_SIZE / 2, 0, sizeof(kr) / 2); + ck1 = &c2; + ck2 = &c3; + ck3 = &c1; + memcpy(kr.c, userKey + ARIA_BLOCK_SIZE, sizeof(kr) / 2); + memset(kr.c + ARIA_BLOCK_SIZE / 2, 0, sizeof(kr) / 2); break; case 256: key->rounds = 16; - ck1 = c3; - ck2 = c1; - ck3 = c2; - memcpy(kr, userKey + ARIA_BLOCK_SIZE, sizeof(kr)); + ck1 = &c3; + ck2 = &c1; + ck3 = &c2; + memcpy(kr.c, userKey + ARIA_BLOCK_SIZE, sizeof(kr)); break; } - FO(w3, w0, ck1); xor128(w1, w3, kr); - FE(w3, w1, ck2); xor128(w2, w3, w0); - FO(kr, w2, ck3); xor128(w3, kr, w1); + FO(&w3, &w0, ck1); xor128(&w1, &w3, &kr); + FE(&w3, &w1, ck2); xor128(&w2, &w3, &w0); + FO(&kr, &w2, ck3); xor128(&w3, &kr, &w1); - rot19r(key->rd_key[ 0], w0, w1); - rot19r(key->rd_key[ 1], w1, w2); - rot19r(key->rd_key[ 2], w2, w3); - rot19r(key->rd_key[ 3], w3, w0); + rot19r(&key->rd_key[ 0], &w0, &w1); + rot19r(&key->rd_key[ 1], &w1, &w2); + rot19r(&key->rd_key[ 2], &w2, &w3); + rot19r(&key->rd_key[ 3], &w3, &w0); - rot31r(key->rd_key[ 4], w0, w1); - rot31r(key->rd_key[ 5], w1, w2); - rot31r(key->rd_key[ 6], w2, w3); - rot31r(key->rd_key[ 7], w3, w0); + rot31r(&key->rd_key[ 4], &w0, &w1); + rot31r(&key->rd_key[ 5], &w1, &w2); + rot31r(&key->rd_key[ 6], &w2, &w3); + rot31r(&key->rd_key[ 7], &w3, &w0); - rot61l(key->rd_key[ 8], w0, w1); - rot61l(key->rd_key[ 9], w1, w2); - rot61l(key->rd_key[10], w2, w3); - rot61l(key->rd_key[11], w3, w0); + rot61l(&key->rd_key[ 8], &w0, &w1); + rot61l(&key->rd_key[ 9], &w1, &w2); + rot61l(&key->rd_key[10], &w2, &w3); + rot61l(&key->rd_key[11], &w3, &w0); - rot31l(key->rd_key[12], w0, w1); + rot31l(&key->rd_key[12], &w0, &w1); if (key->rounds > 12) { - rot31l(key->rd_key[13], w1, w2); - rot31l(key->rd_key[14], w2, w3); + rot31l(&key->rd_key[13], &w1, &w2); + rot31l(&key->rd_key[14], &w2, &w3); if (key->rounds > 14) { - rot31l(key->rd_key[15], w3, w0); - rot19l(key->rd_key[16], w0, w1); + rot31l(&key->rd_key[15], &w3, &w0); + rot19l(&key->rd_key[16], &w0, &w1); } } return 0; @@ -445,10 +1204,12 @@ int aria_set_decrypt_key(const unsigned char *userKey, const int bits, if (r == 0) { key->rounds = rounds; - memcpy(key->rd_key[0], ek.rd_key[rounds], sizeof(key->rd_key[0])); + memcpy(&key->rd_key[0], &ek.rd_key[rounds], sizeof(key->rd_key[0])); for (i = 1; i < rounds; i++) - a(key->rd_key[i], ek.rd_key[rounds - i]); - memcpy(key->rd_key[rounds], ek.rd_key[0], sizeof(key->rd_key[rounds])); + a(&key->rd_key[i], &ek.rd_key[rounds - i]); + memcpy(&key->rd_key[rounds], &ek.rd_key[0], sizeof(key->rd_key[rounds])); } return r; } + +#endif diff --git a/crypto/include/internal/aria.h b/crypto/include/internal/aria.h index 4d37189..59b6f4f 100644 --- a/crypto/include/internal/aria.h +++ b/crypto/include/internal/aria.h @@ -11,6 +11,8 @@ * Copyright (c) 2017 Oracle and/or its affiliates. All rights reserved. */ + /* Copyright (c) 2017 National Security Resarch Institute. All rights reserved. */ + #ifndef HEADER_ARIA_H # define HEADER_ARIA_H @@ -20,8 +22,6 @@ # error ARIA is disabled. # endif -# include - # define ARIA_ENCRYPT 1 # define ARIA_DECRYPT 0 @@ -32,11 +32,14 @@ extern "C" { # endif -typedef unsigned char ARIA_u128[ARIA_BLOCK_SIZE]; +typedef union { + unsigned char c[ARIA_BLOCK_SIZE]; + unsigned int u[ARIA_BLOCK_SIZE / sizeof(unsigned int)]; +} ARIA_u128; struct aria_key_st { - unsigned int rounds; ARIA_u128 rd_key[ARIA_MAX_KEYS]; + unsigned int rounds; }; typedef struct aria_key_st ARIA_KEY; From no-reply at appveyor.com Thu Apr 20 21:14:21 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 20 Apr 2017 21:14:21 +0000 Subject: [openssl-commits] Build completed: openssl 1.0.8 Message-ID: <20170420211421.59909.79157.1381C006@appveyor.com> An HTML attachment was scrubbed... URL: From builds at travis-ci.org Thu Apr 20 21:19:42 2017 From: builds at travis-ci.org (Travis CI) Date: Thu, 20 Apr 2017 21:19:42 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10455 (master - dc99b88) In-Reply-To: Message-ID: <58f925f5c0b5f_43ff9895d76001105846@d0d796d7-b441-4d81-bfb5-2cf37c59056c.mail> Build Update for openssl/openssl ------------------------------------- Build: #10455 Status: Still Failing Duration: 18 minutes and 54 seconds Commit: dc99b88 (master) Author: letrhee-nsr Message: Add ARIA 32-bit implementation Modified code from http://seed.kisa.or.kr to human readable code. Previous 8-bit code is available with -DOPENSSL_SMALL_FOOTPRINT. New code is >2x faster. Reviewed-by: Andy Polyakov Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3242) View the changeset: https://github.com/openssl/openssl/compare/6e64c560663f...dc99b885ded3 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/224117261 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From osslsanity at gmail.com Fri Apr 21 06:48:55 2017 From: osslsanity at gmail.com (address not configured yet) Date: Fri, 21 Apr 2017 06:48:55 +0000 (UTC) Subject: [openssl-commits] Build failed in Jenkins: 1_0_2_ppc64 #11 In-Reply-To: <1114963755.1.1492670962238.JavaMail.jenkins@ip-172-31-11-199.us-west-2.compute.internal> References: <1114963755.1.1492670962238.JavaMail.jenkins@ip-172-31-11-199.us-west-2.compute.internal> Message-ID: <1545821964.1.1492757335706.JavaMail.jenkins@ip-172-31-11-199.us-west-2.compute.internal> See ------------------------------------------ [...truncated 72.08 KB...] rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/bio... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/stack... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/lhash... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/rand... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/err... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/evp... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/asn1... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/pem... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/x509... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/x509v3... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/conf... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/txt_db... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/pkcs7... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff enc dec sign verify make[2]: Leaving directory ` making clean in crypto/pkcs12... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/comp... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/ocsp... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/ui... make[2]: Entering directory ` rm -f *.o */*.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/krb5... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/cms... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/pqueue... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/ts... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff enc dec sign verify make[2]: Leaving directory ` making clean in crypto/srp... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` making clean in crypto/cmac... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[2]: Leaving directory ` make[1]: Leaving directory ` making clean in ssl... make[1]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[1]: Leaving directory ` making clean in engines... make[1]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff making clean in engines/ccgost... make[2]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff *.so *.sl *.dll make[2]: Leaving directory ` make[1]: Leaving directory ` making clean in apps... make[1]: Entering directory ` rm -f *.o *.obj *.dll lib tags core .pure .nfs* *.old *.bak fluff openssl rm -f req make[1]: Leaving directory ` making clean in test... make[1]: Entering directory ` rm -f .rnd tmp.bntest tmp.bctest *.o *.obj *.dll lib tags core .pure .nfs* *.old *.bak fluff bntest ectest ecdsatest ecdhtest ideatest md2test md4test md5test hmactest wp_test rc2test rc4test rc5test destest shatest sha1test sha256t sha512t mdc2test rmdtest randtest dhtest enginetest bftest casttest ssltest exptest dsatest rsa_test evp_test evp_extra_test igetest jpaketest srptest asn1test v3nametest heartbeat_test constant_time_test verify_extra_test clienthellotest sslv2conftest dtlstest bad_dtls_test *.ss *.srl log dummytest make[1]: Leaving directory ` making clean in tools... make[1]: Entering directory ` rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff make[1]: Leaving directory ` rm -f libcrypto.a libssl.a rm -f openssl.pc libssl.pc libcrypto.pc rm -f speed.* .pure rm -f ../openssl-1.0.2l-dev.tar + make making all in crypto... make[1]: Entering directory ` /usr/bin/perl ../util/mkbuildinf.pl "powerpc64-linux-gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM" "linux-ppc64" >buildinf.h powerpc64-linux-gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o cryptlib.o cryptlib.c powerpc64-linux-gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o mem.o mem.c powerpc64-linux-gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o mem_dbg.o mem_dbg.c powerpc64-linux-gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o cversion.o cversion.c powerpc64-linux-gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o ex_data.o ex_data.c powerpc64-linux-gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o cpt_err.o cpt_err.c powerpc64-linux-gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o ebcdic.o ebcdic.c powerpc64-linux-gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o uid.o uid.c powerpc64-linux-gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o o_time.o o_time.c powerpc64-linux-gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o o_str.o o_str.c powerpc64-linux-gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o o_dir.o o_dir.c powerpc64-linux-gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o o_fips.o o_fips.c powerpc64-linux-gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o o_init.o o_init.c powerpc64-linux-gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o fips_ers.o fips_ers.c /usr/bin/perl ppccpuid.pl linux64 ppccpuid.s powerpc64-linux-gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o ppccpuid.o ppccpuid.s powerpc64-linux-gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o ppccap.o ppccap.c powerpc64-linux-ar r ../libcrypto.a cryptlib.o mem.o mem_dbg.o cversion.o ex_data.o cpt_err.o ebcdic.o uid.o o_time.o o_str.o o_dir.o o_fips.o o_init.o fips_ers.o ppccpuid.o ppccap.o powerpc64-linux-ar: creating ../libcrypto.a test -z "" || powerpc64-linux-ar r ../libcrypto.a fipscanister.o powerpc64-linux-ranlib ../libcrypto.a || echo Never mind. making all in crypto/objects... make[2]: Entering directory ` powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o o_names.o o_names.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o obj_dat.o obj_dat.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o obj_lib.o obj_lib.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o obj_err.o obj_err.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o obj_xref.o obj_xref.c powerpc64-linux-ar r ../../libcrypto.a o_names.o obj_dat.o obj_lib.o obj_err.o obj_xref.o powerpc64-linux-ranlib ../../libcrypto.a || echo Never mind. make[2]: Leaving directory ` making all in crypto/md4... make[2]: Entering directory ` powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o md4_dgst.o md4_dgst.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o md4_one.o md4_one.c powerpc64-linux-ar r ../../libcrypto.a md4_dgst.o md4_one.o powerpc64-linux-ranlib ../../libcrypto.a || echo Never mind. make[2]: Leaving directory ` making all in crypto/md5... make[2]: Entering directory ` powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o md5_dgst.o md5_dgst.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o md5_one.o md5_one.c powerpc64-linux-ar r ../../libcrypto.a md5_dgst.o md5_one.o powerpc64-linux-ranlib ../../libcrypto.a || echo Never mind. make[2]: Leaving directory ` making all in crypto/sha... make[2]: Entering directory ` powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o sha_dgst.o sha_dgst.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o sha1dgst.o sha1dgst.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o sha_one.o sha_one.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o sha1_one.o sha1_one.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o sha256.o sha256.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o sha512.o sha512.c /usr/bin/perl asm/sha1-ppc.pl linux64 sha1-ppc.s powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o sha1-ppc.o sha1-ppc.s /usr/bin/perl asm/sha512-ppc.pl linux64 sha256-ppc.s powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o sha256-ppc.o sha256-ppc.s /usr/bin/perl asm/sha512-ppc.pl linux64 sha512-ppc.s powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o sha512-ppc.o sha512-ppc.s /usr/bin/perl asm/sha512p8-ppc.pl linux64 sha256p8-ppc.s powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o sha256p8-ppc.o sha256p8-ppc.s /usr/bin/perl asm/sha512p8-ppc.pl linux64 sha512p8-ppc.s powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o sha512p8-ppc.o sha512p8-ppc.s powerpc64-linux-ar r ../../libcrypto.a sha_dgst.o sha1dgst.o sha_one.o sha1_one.o sha256.o sha512.o sha1-ppc.o sha256-ppc.o sha512-ppc.o sha256p8-ppc.o sha512p8-ppc.o powerpc64-linux-ranlib ../../libcrypto.a || echo Never mind. make[2]: Leaving directory ` making all in crypto/mdc2... make[2]: Entering directory ` powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o mdc2dgst.o mdc2dgst.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o mdc2_one.o mdc2_one.c powerpc64-linux-ar r ../../libcrypto.a mdc2dgst.o mdc2_one.o powerpc64-linux-ranlib ../../libcrypto.a || echo Never mind. make[2]: Leaving directory ` making all in crypto/hmac... make[2]: Entering directory ` powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o hmac.o hmac.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o hm_ameth.o hm_ameth.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o hm_pmeth.o hm_pmeth.c powerpc64-linux-ar r ../../libcrypto.a hmac.o hm_ameth.o hm_pmeth.o powerpc64-linux-ranlib ../../libcrypto.a || echo Never mind. make[2]: Leaving directory ` making all in crypto/ripemd... make[2]: Entering directory ` powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o rmd_dgst.o rmd_dgst.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o rmd_one.o rmd_one.c powerpc64-linux-ar r ../../libcrypto.a rmd_dgst.o rmd_one.o powerpc64-linux-ranlib ../../libcrypto.a || echo Never mind. make[2]: Leaving directory ` making all in crypto/whrlpool... make[2]: Entering directory ` powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o wp_dgst.o wp_dgst.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o wp_block.o wp_block.c powerpc64-linux-ar r ../../libcrypto.a wp_dgst.o wp_block.o powerpc64-linux-ranlib ../../libcrypto.a || echo Never mind. make[2]: Leaving directory ` making all in crypto/des... make[2]: Entering directory ` powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o set_key.o set_key.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o ecb_enc.o ecb_enc.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o cbc_enc.o cbc_enc.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o ecb3_enc.o ecb3_enc.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o cfb64enc.o cfb64enc.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o cfb64ede.o cfb64ede.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o cfb_enc.o cfb_enc.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o ofb64ede.o ofb64ede.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o enc_read.o enc_read.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o enc_writ.o enc_writ.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o ofb64enc.o ofb64enc.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o ofb_enc.o ofb_enc.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o str2key.o str2key.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o pcbc_enc.o pcbc_enc.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o qud_cksm.o qud_cksm.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o rand_key.o rand_key.c powerpc64-linux-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DB_ENDIAN -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DVPAES_ASM -c -o des_enc.o des_enc.c virtual memory exhausted: Cannot allocate memory make[2]: *** [des_enc.o] Error 1 make[2]: Leaving directory ` make[1]: *** [subdirs] Error 1 make[1]: Leaving directory ` make: *** [build_crypto] Error 1 Build step 'Execute shell' marked build as failure From osslsanity at gmail.com Fri Apr 21 06:49:29 2017 From: osslsanity at gmail.com (address not configured yet) Date: Fri, 21 Apr 2017 06:49:29 +0000 (UTC) Subject: [openssl-commits] Build failed in Jenkins: 1_0_2_norc4 #11 In-Reply-To: <937804546.2.1492670963629.JavaMail.jenkins@ip-172-31-11-199.us-west-2.compute.internal> References: <937804546.2.1492670963629.JavaMail.jenkins@ip-172-31-11-199.us-west-2.compute.internal> Message-ID: <353814807.2.1492757369813.JavaMail.jenkins@ip-172-31-11-199.us-west-2.compute.internal> See ------------------------------------------ [...truncated 8.82 KB...] making links in crypto/bn... make[2]: Entering directory ` bn.h => ../../include/openssl/bn.h bntest.c => ../../test/bntest.c exptest.c => ../../test/exptest.c make[2]: Leaving directory ` making links in crypto/ec... make[2]: Entering directory ` ec.h => ../../include/openssl/ec.h ectest.c => ../../test/ectest.c make[2]: Leaving directory ` making links in crypto/rsa... make[2]: Entering directory ` rsa.h => ../../include/openssl/rsa.h rsa_test.c => ../../test/rsa_test.c make[2]: Leaving directory ` making links in crypto/dsa... make[2]: Entering directory ` dsa.h => ../../include/openssl/dsa.h dsatest.c => ../../test/dsatest.c make[2]: Leaving directory ` making links in crypto/ecdsa... make[2]: Entering directory ` ecdsa.h => ../../include/openssl/ecdsa.h ecdsatest.c => ../../test/ecdsatest.c make[2]: Leaving directory ` making links in crypto/dh... make[2]: Entering directory ` dh.h => ../../include/openssl/dh.h dhtest.c => ../../test/dhtest.c make[2]: Leaving directory ` making links in crypto/ecdh... make[2]: Entering directory ` ecdh.h => ../../include/openssl/ecdh.h ecdhtest.c => ../../test/ecdhtest.c make[2]: Leaving directory ` making links in crypto/dso... make[2]: Entering directory ` dso.h => ../../include/openssl/dso.h make[2]: Leaving directory ` making links in crypto/engine... make[2]: Entering directory ` engine.h => ../../include/openssl/engine.h enginetest.c => ../../test/enginetest.c make[2]: Leaving directory ` making links in crypto/buffer... make[2]: Entering directory ` buffer.h => ../../include/openssl/buffer.h make[2]: Leaving directory ` making links in crypto/bio... make[2]: Entering directory ` bio.h => ../../include/openssl/bio.h make[2]: Leaving directory ` making links in crypto/stack... make[2]: Entering directory ` stack.h => ../../include/openssl/stack.h safestack.h => ../../include/openssl/safestack.h make[2]: Leaving directory ` making links in crypto/lhash... make[2]: Entering directory ` lhash.h => ../../include/openssl/lhash.h make[2]: Leaving directory ` making links in crypto/rand... make[2]: Entering directory ` rand.h => ../../include/openssl/rand.h randtest.c => ../../test/randtest.c make[2]: Leaving directory ` making links in crypto/err... make[2]: Entering directory ` err.h => ../../include/openssl/err.h make[2]: Leaving directory ` making links in crypto/evp... make[2]: Entering directory ` evp.h => ../../include/openssl/evp.h evp_test.c => ../../test/evp_test.c evp_extra_test.c => ../../test/evp_extra_test.c evptests.txt -> ../../test/evptests.txt make[2]: Leaving directory ` making links in crypto/asn1... make[2]: Entering directory ` asn1.h => ../../include/openssl/asn1.h asn1_mac.h => ../../include/openssl/asn1_mac.h asn1t.h => ../../include/openssl/asn1t.h make[2]: Leaving directory ` making links in crypto/pem... make[2]: Entering directory ` pem.h => ../../include/openssl/pem.h pem2.h => ../../include/openssl/pem2.h make[2]: Leaving directory ` making links in crypto/x509... make[2]: Entering directory ` x509.h => ../../include/openssl/x509.h x509_vfy.h => ../../include/openssl/x509_vfy.h verify_extra_test.c => ../../test/verify_extra_test.c make[2]: Leaving directory ` making links in crypto/x509v3... make[2]: Entering directory ` x509v3.h => ../../include/openssl/x509v3.h v3nametest.c => ../../test/v3nametest.c make[2]: Leaving directory ` making links in crypto/conf... make[2]: Entering directory ` conf.h => ../../include/openssl/conf.h conf_api.h => ../../include/openssl/conf_api.h make[2]: Leaving directory ` making links in crypto/txt_db... make[2]: Entering directory ` txt_db.h => ../../include/openssl/txt_db.h make[2]: Leaving directory ` making links in crypto/pkcs7... make[2]: Entering directory ` pkcs7.h => ../../include/openssl/pkcs7.h make[2]: Leaving directory ` making links in crypto/pkcs12... make[2]: Entering directory ` pkcs12.h => ../../include/openssl/pkcs12.h make[2]: Leaving directory ` making links in crypto/comp... make[2]: Entering directory ` comp.h => ../../include/openssl/comp.h make[2]: Leaving directory ` making links in crypto/ocsp... make[2]: Entering directory ` ocsp.h => ../../include/openssl/ocsp.h make[2]: Leaving directory ` making links in crypto/ui... make[2]: Entering directory ` ui.h => ../../include/openssl/ui.h ui_compat.h => ../../include/openssl/ui_compat.h make[2]: Leaving directory ` making links in crypto/krb5... make[2]: Entering directory ` krb5_asn.h => ../../include/openssl/krb5_asn.h make[2]: Leaving directory ` making links in crypto/cms... make[2]: Entering directory ` cms.h => ../../include/openssl/cms.h make[2]: Leaving directory ` making links in crypto/pqueue... make[2]: Entering directory ` pqueue.h => ../../include/openssl/pqueue.h make[2]: Leaving directory ` making links in crypto/ts... make[2]: Entering directory ` ts.h => ../../include/openssl/ts.h make[2]: Leaving directory ` making links in crypto/srp... make[2]: Entering directory ` srp.h => ../../include/openssl/srp.h srptest.c => ../../test/srptest.c make[2]: Leaving directory ` making links in crypto/cmac... make[2]: Entering directory ` cmac.h => ../../include/openssl/cmac.h make[2]: Leaving directory ` make[1]: Leaving directory ` making links in ssl... make[1]: Entering directory ` ssl.h => ../include/openssl/ssl.h ssl2.h => ../include/openssl/ssl2.h ssl3.h => ../include/openssl/ssl3.h ssl23.h => ../include/openssl/ssl23.h tls1.h => ../include/openssl/tls1.h dtls1.h => ../include/openssl/dtls1.h kssl.h => ../include/openssl/kssl.h srtp.h => ../include/openssl/srtp.h ssltest.c => ../test/ssltest.c heartbeat_test.c => ../test/heartbeat_test.c clienthellotest.c => ../test/clienthellotest.c sslv2conftest.c => ../test/sslv2conftest.c dtlstest.c => ../test/dtlstest.c bad_dtls_test.c => ../test/bad_dtls_test.c make[1]: Leaving directory ` making links in engines... make[1]: Entering directory ` making links in engines/ccgost... make[2]: Entering directory ` make[2]: Nothing to be done for `links'. make[2]: Leaving directory ` make[1]: Leaving directory ` making links in apps... make[1]: Entering directory ` make[1]: Nothing to be done for `links'. make[1]: Leaving directory ` making links in test... make[1]: Entering directory ` make[1]: Nothing to be done for `links'. make[1]: Leaving directory ` making links in tools... make[1]: Entering directory ` make[1]: Nothing to be done for `links'. make[1]: Leaving directory ` generating dummy tests (if needed)... make[1]: Entering directory ` make[1]: Nothing to be done for `generate'. make[1]: Leaving directory ` Configured for linux-x86_64. *** Because of configuration changes, you MUST do the following before *** building: make depend + make depend making depend in crypto... make[1]: Entering directory ` making depend in crypto/objects... make[2]: Entering directory ` ../../util/domd ../.. -MD gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC4 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- o_names.c obj_dat.c obj_lib.c obj_err.c obj_xref.c make[2]: Leaving directory ` making depend in crypto/md4... make[2]: Entering directory ` ../../util/domd ../.. -MD gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC4 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- md4_dgst.c md4_one.c make[2]: Leaving directory ` making depend in crypto/md5... make[2]: Entering directory ` ../../util/domd ../.. -MD gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC4 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- md5_dgst.c md5_one.c make[2]: Leaving directory ` making depend in crypto/sha... make[2]: Entering directory ` ../../util/domd ../.. -MD gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC4 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- sha_dgst.c sha1dgst.c sha_one.c sha1_one.c sha256.c sha512.c make[2]: Leaving directory ` making depend in crypto/mdc2... make[2]: Entering directory ` ../../util/domd ../.. -MD gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC4 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- mdc2dgst.c mdc2_one.c make[2]: Leaving directory ` making depend in crypto/hmac... make[2]: Entering directory ` ../../util/domd ../.. -MD gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC4 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- hmac.c hm_ameth.c hm_pmeth.c make[2]: Leaving directory ` making depend in crypto/ripemd... make[2]: Entering directory ` ../../util/domd ../.. -MD gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC4 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- rmd_dgst.c rmd_one.c make[2]: Leaving directory ` making depend in crypto/whrlpool... make[2]: Entering directory ` ../../util/domd ../.. -MD gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC4 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- wp_dgst.c wp_block.c make[2]: Leaving directory ` making depend in crypto/des... make[2]: Entering directory ` ../../util/domd ../.. -MD gcc -- -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_LIBUNBOUND -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC4 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_SSL2 -DOPENSSL_NO_STORE -DOPENSSL_NO_UNIT_TEST -DOPENSSL_NO_WEAK_SSL_CIPHERS -- cbc_cksm.c cbc_enc.c cfb64enc.c cfb_enc.c ecb3_enc.c ecb_enc.c enc_read.c enc_writ.c fcrypt.c ofb64enc.c ofb_enc.c pcbc_enc.c qud_cksm.c rand_key.c rpc_enc.c set_key.c des_enc.c fcrypt_b.c xcbc_enc.c str2key.c cfb64ede.c ofb64ede.c ede_cbcm_enc.c des_old.c des_old2.c read2pwd.c virtual memory exhausted: Cannot allocate memory virtual memory exhausted: Cannot allocate memory make[2]: *** [depend] Error 1 make[2]: Leaving directory ` make[1]: *** [depend] Error 1 make[1]: Leaving directory ` make: *** [depend] Error 1 Build step 'Execute shell' marked build as failure From osslsanity at gmail.com Fri Apr 21 06:50:33 2017 From: osslsanity at gmail.com (address not configured yet) Date: Fri, 21 Apr 2017 06:50:33 +0000 (UTC) Subject: [openssl-commits] Build failed in Jenkins: 1_0_2_android #9 Message-ID: <1044124131.3.1492757434600.JavaMail.jenkins@ip-172-31-11-199.us-west-2.compute.internal> See ------------------------------------------ Started by upstream project "1_0_2_basic" build number 15 originally caused by: Started by timer Building in workspace > git rev-parse --is-inside-work-tree # timeout=10 Fetching changes from the remote Git repository > git config remote.origin.url https://github.com/openssl/openssl.git # timeout=10 Fetching upstream changes from https://github.com/openssl/openssl.git > git --version # timeout=10 > git fetch --tags --progress https://github.com/openssl/openssl.git +refs/heads/*:refs/remotes/origin/* ERROR: Error fetching remote repo 'origin' hudson.plugins.git.GitException: Failed to fetch from https://github.com/openssl/openssl.git at hudson.plugins.git.GitSCM.fetchFrom(GitSCM.java:806) at hudson.plugins.git.GitSCM.retrieveChanges(GitSCM.java:1070) at hudson.plugins.git.GitSCM.checkout(GitSCM.java:1101) at hudson.scm.SCM.checkout(SCM.java:496) at hudson.model.AbstractProject.checkout(AbstractProject.java:1280) at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:604) at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:86) at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:529) at hudson.model.Run.execute(Run.java:1735) at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43) at hudson.model.ResourceController.execute(ResourceController.java:97) at hudson.model.Executor.run(Executor.java:405) Caused by: hudson.plugins.git.GitException: Command "git fetch --tags --progress https://github.com/openssl/openssl.git +refs/heads/*:refs/remotes/origin/*" returned status code 128: stdout: stderr: error: cannot create thread: Resource temporarily unavailable fatal: fetch-pack: unable to fork off sideband demultiplexer at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandIn(CliGitAPIImpl.java:1799) at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandWithCredentials(CliGitAPIImpl.java:1525) at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.access$300(CliGitAPIImpl.java:65) at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$1.execute(CliGitAPIImpl.java:316) at hudson.plugins.git.GitSCM.fetchFrom(GitSCM.java:804) ... 11 more ERROR: null From osslsanity at gmail.com Fri Apr 21 06:51:33 2017 From: osslsanity at gmail.com (address not configured yet) Date: Fri, 21 Apr 2017 06:51:33 +0000 (UTC) Subject: [openssl-commits] Build failed in Jenkins: 1_0_2_noec #9 Message-ID: <1627115013.4.1492757494309.JavaMail.jenkins@ip-172-31-11-199.us-west-2.compute.internal> See ------------------------------------------ Started by upstream project "1_0_2_basic" build number 15 originally caused by: Started by timer Building in workspace > git rev-parse --is-inside-work-tree # timeout=10 Fetching changes from the remote Git repository > git config remote.origin.url https://github.com/openssl/openssl.git # timeout=10 Fetching upstream changes from https://github.com/openssl/openssl.git > git --version # timeout=10 > git fetch --tags --progress https://github.com/openssl/openssl.git +refs/heads/*:refs/remotes/origin/* ERROR: Error fetching remote repo 'origin' hudson.plugins.git.GitException: Failed to fetch from https://github.com/openssl/openssl.git at hudson.plugins.git.GitSCM.fetchFrom(GitSCM.java:806) at hudson.plugins.git.GitSCM.retrieveChanges(GitSCM.java:1070) at hudson.plugins.git.GitSCM.checkout(GitSCM.java:1101) at hudson.scm.SCM.checkout(SCM.java:496) at hudson.model.AbstractProject.checkout(AbstractProject.java:1280) at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:604) at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:86) at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:529) at hudson.model.Run.execute(Run.java:1735) at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43) at hudson.model.ResourceController.execute(ResourceController.java:97) at hudson.model.Executor.run(Executor.java:405) Caused by: hudson.plugins.git.GitException: Command "git fetch --tags --progress https://github.com/openssl/openssl.git +refs/heads/*:refs/remotes/origin/*" returned status code 128: stdout: stderr: error: cannot fork() for rev-list: Cannot allocate memory error: Could not run 'git rev-list' error: cannot fork() for fetch-pack: Cannot allocate memory at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandIn(CliGitAPIImpl.java:1799) at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandWithCredentials(CliGitAPIImpl.java:1525) at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.access$300(CliGitAPIImpl.java:65) at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$1.execute(CliGitAPIImpl.java:316) at hudson.plugins.git.GitSCM.fetchFrom(GitSCM.java:804) ... 11 more ERROR: null From osslsanity at gmail.com Fri Apr 21 15:12:41 2017 From: osslsanity at gmail.com (address not configured yet) Date: Fri, 21 Apr 2017 15:12:41 +0000 (UTC) Subject: [openssl-commits] Jenkins build is back to normal : master_basic #16 In-Reply-To: <1257012735.0.1492700959922.JavaMail.jenkins@ip-172-31-11-199.us-west-2.compute.internal> References: <1257012735.0.1492700959922.JavaMail.jenkins@ip-172-31-11-199.us-west-2.compute.internal> Message-ID: <651849469.0.1492787561422.JavaMail.jenkins@ip-172-31-11-199.us-west-2.compute.internal> See From osslsanity at gmail.com Fri Apr 21 15:13:11 2017 From: osslsanity at gmail.com (address not configured yet) Date: Fri, 21 Apr 2017 15:13:11 +0000 (UTC) Subject: [openssl-commits] Build failed in Jenkins: master_android #15 Message-ID: <28869666.1.1492787592224.JavaMail.jenkins@ip-172-31-11-199.us-west-2.compute.internal> See Changes: [levitte] In rand_cleanup_int(), don't go creating a default method [appro] Add support for MLOCK_ONFAULT to secure arena [appro] e_os2.h: Refine OSSL_SSIZE definition under UEFI environment [levitte] Make getting and setting the RAND default method thread safe [levitte] Don't try to clean up RAND from ENGINE [matt] Move ssl/t1_ext.c to ssl/statem/extensions_cust.c [matt] Move the extensions context codes into the public API [matt] Implement a new custom extensions API [matt] Add some tests for the new custom extensions API [matt] Add documentation for the new custom extensions API [matt] Various style tweaks based on feedback [matt] Prefix custom extension API callback types with SSL_ [matt] Create an ENDPOINT enum type for use internally [matt] Remove an out of date TODO [matt] Fix a test failure when configured without TLSv1.3 [levitte] Fix rand_lib.c for no-engine configuration [rsalz] Make default_method mostly compile-time [rsalz] Make default_method mostly compile-time (cont'd) [rsalz] Check for L [rsalz] Add missing =back [rsalz] Standardize on =over 4 and check for it. [rsalz] Use 'over 2' for bullet lists. [appro] appveyor.yml: split {build,test}_scripts to avoid exit code masking. [appro] asn1/x_long.c: remove conditions in inner loops and dependency on BN. [appro] rand/rand_lib.c: keep fixing no-engine configuration. [levitte] Publish our INT32, UINT32, INT64, UINT64 ASN.1 types and Z variants [levitte] Discourage the use of LONG and ZLONG, and deprecate it in the future [levitte] Act on deprecation of LONG and ZLONG, step 1 [levitte] Act on deprecation of LONG and ZLONG, step 2 [levitte] Act on deprecation of LONG and ZLONG, step 3 [levitte] Add a note in CHANGES [levitte] Fix util/mkdef.pl [rsalz] Allow an ALPN callback to pretend to not exist [rsalz] Make test marcos for true/false checks reliable for all integral types. [rsalz] Update rc2test to use the test infrastructure [matt] Update md2test to use the test infrastructure [matt] Update dtlstest to use the test infrastructure [matt] Reject decoding of an INT64 with a value >INT64_MAX [rsalz] Additional check to handle BAD SSL_write retry [rsalz] Remove ECDH(E) ciphers from SSLv3 [levitte] Fix int64 test of t_4bytes_4_neg [levitte] Fix x_int64.c [matt] Convert bad_dtls_test for the new test framework [matt] Convert asynciotest for the new test framework [matt] Convert clienthellotest for the new test framework [rsalz] Added error checking for OBJ_create [levitte] Convert exdata tests to new test framework [matt] Update sha256t and sha512t to use the test infrastructure [matt] Update sha1test to use the test infrastructure [matt] Update mdc2test to use the test infrastructure [matt] Update rc5test to use the test infrastructure [matt] Update rc4test to use the test infrastructure [matt] Convert RSA tests to new framework [matt] Updates after code review [matt] Remove seed completely... [matt] Convert blowfish tests to new framework [matt] Code review. Split tests up [matt] Remove unused variable. Thanks @pauli-oracle [matt] Update d2i_test to use the test infrastructure [matt] Update secmemtest and memeleaktest to use the test infrastructure. [matt] Update gmdifftime to use the test infrastructure [matt] Update ideatest to use the test infrastructure [matt] Update sanitytest to use the test infrastructure [levitte] In asn1_encode_test.c, add custom DER encoding checks [levitte] Fix definition of i2d_fn in asn1_encode_test.c [levitte] Add tests of custom negative 1 [matt] Update the internal chacha test to use the framework Reviewed-by: [levitte] Update threadstest to use the test framework [levitte] Remove fprintfs from the poly1305 internal test but keep the test number [levitte] test/testutil.c: Flush stdout when running tests [levitte] Update destest to use the test infrastructure [levitte] ecdhtest.c: move NAMED CURVES TESTS to evptests.txt [levitte] Remove stale code in ecdhtest.c [levitte] ecdhtest.c: move KATs to evptests.txt [levitte] Remove more stale code in ecdhtest.c [levitte] OpenSSL::Test: supported filtered command output [rsalz] Convert x509aux, cipherlist, casttest [rsalz] Address review feedback (to be squashed) [levitte] Add SSL tests for certificates with embedded SCTs [levitte] CT_POLICY_EVAL_CTX_set_time expects milliseconds, but given seconds [levitte] Correct travis.yml to only build extended tests when explicitely asked [rsalz] OCSP Updates: error codes and multiple certificates [levitte] Test printing of ASN.1 types INTxx et al [levitte] ASN.1: extend the possibilities to embed data instead of pointers [levitte] ASN.1: change INTxx, UINTxx and Z variants to be embedable [levitte] ASN.1: adapt our use of INTxx et al by making them explicitely embedded [levitte] Split the CAST tests up. [levitte] Update the internal siphash tests to use the framework's output. [rsalz] Guarantee single argument evaluation for test macros. Add test case that [appro] testlib/OpenSSL/Test.pm: keep default input private. [appro] asn1/a_int.c: remove code duplicate and optimize branches, [appro] asn1/a_int.c: simplify asn1_put_uint64. [appro] asn1/a_int.c: don't write result if returning error. [rsalz] Fix unit tests when no-bf configured [rsalz] WIP: Convert ui,v3ext,verify_extra_test [rsalz] ecdhtest.c: move co-factor ECDH KATs to evptests [rsalz] Remove ecdhtest.c [rsalz] Reformat evptests.txt [rsalz] Add -f -r flags to find-unused-errs [kurt] Switch libfuzzer to use trace-pc-guard [kurt] Make x509 and asn1 fuzzer reproducible [kurt] Document how to update the corpus. [kurt] Use a fixed time when fuzzing. [kurt] Optionally check for early data [rsalz] Catch EC_R_UNKNOWN_GROUP in check_unsupported() [rsalz] Convert afalgtest [rsalz] [squash]Build works with/out NO_ENGINE and NO_AFALG [appro] asn1/a_int.c: clean up asn1_get_int64. [rsalz] update docs because depth refers only to intermediate certs [levitte] Add external krb5 test support [levitte] Update external test README for running krb5 [levitte] Fix formatting of PYCA external test instructions [levitte] [extended tests] Enable krb5 tests in Travis [rsalz] Convert more tests [rsalz] Convert more tests to framework [rsalz] Update more tests [rsalz] Convert more tests [levitte] VMS: Fix the passing of cflags for things not being installed [levitte] VMS: Fix internals test programs [rsalz] Convert dhtest, dsatest, cipherbytes_test [rsalz] Document Next Protocol Negotiation APIs [rsalz] Fix minor compiler issues. [rsalz] Change 64-bit time type for windows [levitte] VMS: Copy DECC inclusion epi- and prologues to internals [levitte] VMS: remove name mangling guards around inclusion of internals [levitte] Fix test/recipes/95-test_external_krb5.t [rsalz] fix dh_test. [rsalz] Convert hmactest to new test framework [rsalz] explicitText encoding [rsalz] Ignore dups in X509_STORE_add_* [rsalz] Small primes are primes too. [appro] Add ARIA 32-bit implementation ------------------------------------------ Started by upstream project "master_basic" build number 16 originally caused by: Started by an SCM change Building in workspace > git rev-parse --is-inside-work-tree # timeout=10 Fetching changes from the remote Git repository > git config remote.origin.url https://github.com/openssl/openssl.git # timeout=10 Fetching upstream changes from https://github.com/openssl/openssl.git > git --version # timeout=10 > git fetch --tags --progress https://github.com/openssl/openssl.git +refs/heads/*:refs/remotes/origin/* > git rev-parse refs/remotes/origin/master^{commit} # timeout=10 > git rev-parse refs/remotes/origin/origin/master^{commit} # timeout=10 Checking out Revision dc99b885ded3cbc586d5ffec779f0e75a269bda3 (refs/remotes/origin/master) > git config core.sparsecheckout # timeout=10 > git checkout -f dc99b885ded3cbc586d5ffec779f0e75a269bda3 > git rev-list 5748e4dc3ab1cdde43ae6feecb106e3a41adcdf4 # timeout=10 [master_android] $ /bin/sh -xe /tmp/jenkins506088575287297162.sh + export PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/usr/local/sbin:/usr/sbin:/sbin:/usr/local/arm-linux-androideabi-4.8/bin + export ANDROID_DEV=/usr/local/arm-linux-androideabi-4.8 + export CROSS_COMPILE=arm-linux-androideabi- + echo /usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/usr/local/sbin:/usr/sbin:/sbin:/usr/local/arm-linux-androideabi-4.8/bin /usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/usr/local/sbin:/usr/sbin:/sbin:/usr/local/arm-linux-androideabi-4.8/bin + ./Configure android-armeabi no-shared no-dso Configuring OpenSSL version 1.1.1-dev (0x10101000L) no-aria [default] OPENSSL_NO_ARIA (skip dir) no-asan [default] OPENSSL_NO_ASAN no-crypto-mdebug [default] OPENSSL_NO_CRYPTO_MDEBUG no-crypto-mdebug-backtrace [default] OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE no-dso [option] no-dynamic-engine [forced] no-ec_nistp_64_gcc_128 [default] OPENSSL_NO_EC_NISTP_64_GCC_128 no-egd [default] OPENSSL_NO_EGD no-external-tests [default] OPENSSL_NO_EXTERNAL_TESTS no-fuzz-afl [default] OPENSSL_NO_FUZZ_AFL no-fuzz-libfuzzer [default] OPENSSL_NO_FUZZ_LIBFUZZER no-heartbeats [default] OPENSSL_NO_HEARTBEATS no-md2 [default] OPENSSL_NO_MD2 (skip dir) no-msan [default] OPENSSL_NO_MSAN no-rc5 [default] OPENSSL_NO_RC5 (skip dir) no-sctp [default] OPENSSL_NO_SCTP no-shared [option] no-ssl-trace [default] OPENSSL_NO_SSL_TRACE no-ssl3 [default] OPENSSL_NO_SSL3 no-ssl3-method [default] OPENSSL_NO_SSL3_METHOD no-tls13downgrade [default] OPENSSL_NO_TLS13DOWNGRADE no-tls1_3 [default] OPENSSL_NO_TLS1_3 no-ubsan [default] OPENSSL_NO_UBSAN no-unit-test [default] OPENSSL_NO_UNIT_TEST no-weak-ssl-ciphers [default] OPENSSL_NO_WEAK_SSL_CIPHERS no-zlib [default] no-zlib-dynamic [default] Configuring for android-armeabi PERL =/usr/bin/perl PERLVERSION =5.18.2 for x86_64-linux-gnu-thread-multi HASHBANGPERL =/usr/bin/env perl CC =arm-linux-androideabi-gcc CFLAG =-Wall -O3 -pthread -mandroid -fPIC --sysroot=$(CROSS_SYSROOT) -Wa,--noexecstack CXX =arm-linux-androideabi-g++ CXXFLAG =-Wall -O3 -pthread -mandroid -fPIC --sysroot=$(CROSS_SYSROOT) -Wa,--noexecstack DEFINES =NDEBUG OPENSSL_THREADS OPENSSL_NO_DYNAMIC_ENGINE OPENSSL_PIC OPENSSL_BN_ASM_MONT OPENSSL_BN_ASM_GF2m SHA1_ASM SHA256_ASM SHA512_ASM AES_ASM BSAES_ASM GHASH_ASM ECP_NISTZ256_ASM POLY1305_ASM EX_LIBS =-ldl + make depend + make clean rm -f rm -f rm -f libcrypto.a libssl.a rm -f *.map rm -f apps/openssl fuzz/asn1-test fuzz/asn1parse-test fuzz/bignum-test fuzz/bndiv-test fuzz/client-test fuzz/cms-test fuzz/conf-test fuzz/crl-test fuzz/ct-test fuzz/server-test fuzz/x509-test test/aborttest test/afalgtest test/asn1_encode_test test/asn1_internal_test test/asynciotest test/asynctest test/bad_dtls_test test/bftest test/bio_enc_test test/bioprinttest test/bntest test/buildtest_aes test/buildtest_asn1 test/buildtest_asn1t test/buildtest_async test/buildtest_bio test/buildtest_blowfish test/buildtest_bn test/buildtest_buffer test/buildtest_camellia test/buildtest_cast test/buildtest_cmac test/buildtest_cms test/buildtest_comp test/buildtest_conf test/buildtest_conf_api test/buildtest_crypto test/buildtest_ct test/buildtest_des test/buildtest_dh test/buildtest_dsa test/buildtest_dtls1 test/buildtest_e_os2 test/buildtest_ebcdic test/buildtest_ec test/buildtest_ecdh test/buildtest_ecdsa test/buildtest_engine test/buildtest_err test/buildtest_evp test/buildtest_hmac test/buildtest_idea test/buildtest_kdf test/buildtest_lhash test/buildtest_md4 test/buildtest_md5 test/buildtest_mdc2 test/buildtest_modes test/buildtest_obj_mac test/buildtest_objects test/buildtest_ocsp test/buildtest_opensslconf test/buildtest_opensslv test/buildtest_ossl_typ test/buildtest_pem test/buildtest_pem2 test/buildtest_pkcs12 test/buildtest_pkcs7 test/buildtest_rand test/buildtest_rc2 test/buildtest_rc4 test/buildtest_ripemd test/buildtest_rsa test/buildtest_safestack test/buildtest_seed test/buildtest_sha test/buildtest_srp test/buildtest_srtp test/buildtest_ssl test/buildtest_ssl2 test/buildtest_stack test/buildtest_symhacks test/buildtest_tls1 test/buildtest_ts test/buildtest_txt_db test/buildtest_ui test/buildtest_whrlpool test/buildtest_x509 test/buildtest_x509_vfy test/buildtest_x509v3 test/casttest test/chacha_internal_test test/cipher_overhead_test test/cipherbytes_test test/cipherlist_test test/clienthellotest test/constant_time_test test/crltest test/ct_test test/d2i_test test/danetest test/destest test/dhtest test/dsatest test/dtls_mtu_test test/dtlstest test/dtlsv1listentest test/ecdsatest test/ectest test/enginetest test/evp_extra_test test/evp_test test/exdatatest test/exptest test/gmdifftest test/hmactest test/ideatest test/igetest test/lhash_test test/md2test test/mdc2_internal_test test/mdc2test test/memleaktest test/modes_internal_test test/packettest test/pbelutest test/pkey_meth_test test/poly1305_internal_test test/randtest test/rc2test test/rc4test test/rc5test test/recordlentest test/rsa_test test/sanitytest test/secmemtest test/sha1test test/sha256t test/sha512t test/siphash_internal_test test/srptest test/ssl_test test/ssl_test_ctx_test test/sslapitest test/sslcorrupttest test/ssltest_old test/stack_test test/test_test test/threadstest test/tls13encryptiontest test/uitest test/v3ext test/v3nametest test/verify_extra_test test/wpackettest test/x509_dup_cert_test test/x509_internal_test test/x509_time_test test/x509aux apps/CA.pl apps/tsget tools/c_rehash util/shlib_wrap.sh rm -f test/buildtest_asn1.c crypto/sha/sha1-armv4-large.s crypto/aes/aes-armv4.s test/buildtest_rsa.c test/buildtest_rc2.c test/buildtest_ct.c crypto/armv4cpuid.s crypto/chacha/chacha-armv4.s test/buildtest_md5.c test/buildtest_bio.c test/buildtest_objects.c crypto/modes/ghash-armv4.s test/buildtest_seed.c test/buildtest_ecdsa.c test/buildtest_idea.c test/buildtest_modes.c test/buildtest_ocsp.c test/buildtest_ui.c crypto/modes/ghashv8-armx.s test/buildtest_x509_vfy.c test/buildtest_cms.c test/buildtest_x509.c crypto/sha/sha512-armv4.s test/buildtest_pem.c test/buildtest_ts.c test/buildtest_kdf.c test/buildtest_mdc2.c test/buildtest_evp.c test/buildtest_buffer.c test/buildtest_pkcs12.c test/buildtest_blowfish.c test/buildtest_ec.c test/buildtest_sha.c test/buildtest_err.c test/buildtest_pkcs7.c test/buildtest_e_os2.c test/buildtest_cast.c test/buildtest_lhash.c test/buildtest_srp.c test/buildtest_ebcdic.c test/buildtest_pem2.c test/buildtest_tls1.c test/buildtest_ssl.c test/buildtest_opensslv.c test/buildtest_ecdh.c crypto/ec/ecp_nistz256-armv4.s test/buildtest_x509v3.c test/buildtest_camellia.c test/buildtest_symhacks.c test/buildtest_des.c test/buildtest_txt_db.c test/buildtest_ssl2.c test/buildtest_cmac.c test/buildtest_srtp.c crypto/sha/sha256-armv4.s test/buildtest_safestack.c crypto/aes/aesv8-armx.s crypto/bn/armv4-mont.s test/buildtest_async.c test/buildtest_crypto.c test/buildtest_stack.c test/buildtest_ripemd.c test/buildtest_conf.c test/buildtest_rand.c test/buildtest_dsa.c test/buildtest_asn1t.c test/buildtest_opensslconf.c test/buildtest_comp.c test/buildtest_aes.c crypto/aes/bsaes-armv7.s test/buildtest_bn.c test/buildtest_engine.c test/buildtest_md4.c test/buildtest_ossl_typ.c test/buildtest_whrlpool.c test/buildtest_dtls1.c test/buildtest_obj_mac.c test/buildtest_dh.c test/buildtest_conf_api.c test/buildtest_hmac.c crypto/poly1305/poly1305-armv4.s test/buildtest_rc4.c crypto/bn/armv4-gf2m.s crypto/buildinf.h crypto/include/internal/bn_conf.h include/openssl/opensslconf.h crypto/include/internal/dso_conf.h rm -f `find . -name '*.d' -a \! -path "./.git/*"` rm -f `find . -name '*.o' -a \! -path "./.git/*"` rm -f core rm -f tags TAGS doc-nits rm -f test/.rnd rm -f openssl.pc libcrypto.pc libssl.pc rm -f `find . -type l -a \! -path "./.git/*"` rm -f ../openssl-1.1.1-dev.tar + make /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \ "-oMakefile" crypto/include/internal/bn_conf.h.in > crypto/include/internal/bn_conf.h /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \ "-oMakefile" crypto/include/internal/dso_conf.h.in > crypto/include/internal/dso_conf.h /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \ "-oMakefile" include/openssl/opensslconf.h.in > include/openssl/opensslconf.h make depend && make _all make[1]: Entering directory ` make[1]: Leaving directory ` make[1]: Entering directory ` ( trap "rm -f crypto/aes/aes-armv4.s.*" INT 0; \ CC="arm-linux-androideabi-gcc" /usr/bin/perl crypto/aes/asm/aes-armv4.pl void crypto/aes/aes-armv4.s.S; \ arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -Icrypto -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -E crypto/aes/aes-armv4.s.S | \ /usr/bin/perl -ne '/^#(line)?\s*[0-9]+/ or print' > crypto/aes/aes-armv4.s.i && \ mv -f crypto/aes/aes-armv4.s.i crypto/aes/aes-armv4.s ) arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -Icrypto -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes-armv4.d.tmp -MT crypto/aes/aes-armv4.o -c -o crypto/aes/aes-armv4.o crypto/aes/aes-armv4.s arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_cbc.d.tmp -MT crypto/aes/aes_cbc.o -c -o crypto/aes/aes_cbc.o crypto/aes/aes_cbc.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_cfb.d.tmp -MT crypto/aes/aes_cfb.o -c -o crypto/aes/aes_cfb.o crypto/aes/aes_cfb.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_ecb.d.tmp -MT crypto/aes/aes_ecb.o -c -o crypto/aes/aes_ecb.o crypto/aes/aes_ecb.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_ige.d.tmp -MT crypto/aes/aes_ige.o -c -o crypto/aes/aes_ige.o crypto/aes/aes_ige.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_misc.d.tmp -MT crypto/aes/aes_misc.o -c -o crypto/aes/aes_misc.o crypto/aes/aes_misc.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_ofb.d.tmp -MT crypto/aes/aes_ofb.o -c -o crypto/aes/aes_ofb.o crypto/aes/aes_ofb.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_wrap.d.tmp -MT crypto/aes/aes_wrap.o -c -o crypto/aes/aes_wrap.o crypto/aes/aes_wrap.c ( trap "rm -f crypto/aes/aesv8-armx.s.*" INT 0; \ CC="arm-linux-androideabi-gcc" /usr/bin/perl crypto/aes/asm/aesv8-armx.pl void crypto/aes/aesv8-armx.s.S; \ arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -Icrypto -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -E crypto/aes/aesv8-armx.s.S | \ /usr/bin/perl -ne '/^#(line)?\s*[0-9]+/ or print' > crypto/aes/aesv8-armx.s.i && \ mv -f crypto/aes/aesv8-armx.s.i crypto/aes/aesv8-armx.s ) arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -Icrypto -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aesv8-armx.d.tmp -MT crypto/aes/aesv8-armx.o -c -o crypto/aes/aesv8-armx.o crypto/aes/aesv8-armx.s ( trap "rm -f crypto/aes/bsaes-armv7.s.*" INT 0; \ CC="arm-linux-androideabi-gcc" /usr/bin/perl crypto/aes/asm/bsaes-armv7.pl void crypto/aes/bsaes-armv7.s.S; \ arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -Icrypto -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -E crypto/aes/bsaes-armv7.s.S | \ /usr/bin/perl -ne '/^#(line)?\s*[0-9]+/ or print' > crypto/aes/bsaes-armv7.s.i && \ mv -f crypto/aes/bsaes-armv7.s.i crypto/aes/bsaes-armv7.s ) arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -Icrypto -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/bsaes-armv7.d.tmp -MT crypto/aes/bsaes-armv7.o -c -o crypto/aes/bsaes-armv7.o crypto/aes/bsaes-armv7.s arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/armcap.d.tmp -MT crypto/armcap.o -c -o crypto/armcap.o crypto/armcap.c ( trap "rm -f crypto/armv4cpuid.s.*" INT 0; \ CC="arm-linux-androideabi-gcc" /usr/bin/perl crypto/armv4cpuid.pl void crypto/armv4cpuid.s.S; \ arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -Icrypto -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -E crypto/armv4cpuid.s.S | \ /usr/bin/perl -ne '/^#(line)?\s*[0-9]+/ or print' > crypto/armv4cpuid.s.i && \ mv -f crypto/armv4cpuid.s.i crypto/armv4cpuid.s ) arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -Icrypto -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/armv4cpuid.d.tmp -MT crypto/armv4cpuid.o -c -o crypto/armv4cpuid.o crypto/armv4cpuid.s arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_bitstr.d.tmp -MT crypto/asn1/a_bitstr.o -c -o crypto/asn1/a_bitstr.o crypto/asn1/a_bitstr.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_d2i_fp.d.tmp -MT crypto/asn1/a_d2i_fp.o -c -o crypto/asn1/a_d2i_fp.o crypto/asn1/a_d2i_fp.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_digest.d.tmp -MT crypto/asn1/a_digest.o -c -o crypto/asn1/a_digest.o crypto/asn1/a_digest.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_dup.d.tmp -MT crypto/asn1/a_dup.o -c -o crypto/asn1/a_dup.o crypto/asn1/a_dup.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_gentm.d.tmp -MT crypto/asn1/a_gentm.o -c -o crypto/asn1/a_gentm.o crypto/asn1/a_gentm.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_i2d_fp.d.tmp -MT crypto/asn1/a_i2d_fp.o -c -o crypto/asn1/a_i2d_fp.o crypto/asn1/a_i2d_fp.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_int.d.tmp -MT crypto/asn1/a_int.o -c -o crypto/asn1/a_int.o crypto/asn1/a_int.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_mbstr.d.tmp -MT crypto/asn1/a_mbstr.o -c -o crypto/asn1/a_mbstr.o crypto/asn1/a_mbstr.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_object.d.tmp -MT crypto/asn1/a_object.o -c -o crypto/asn1/a_object.o crypto/asn1/a_object.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_octet.d.tmp -MT crypto/asn1/a_octet.o -c -o crypto/asn1/a_octet.o crypto/asn1/a_octet.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_print.d.tmp -MT crypto/asn1/a_print.o -c -o crypto/asn1/a_print.o crypto/asn1/a_print.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_sign.d.tmp -MT crypto/asn1/a_sign.o -c -o crypto/asn1/a_sign.o crypto/asn1/a_sign.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_strex.d.tmp -MT crypto/asn1/a_strex.o -c -o crypto/asn1/a_strex.o crypto/asn1/a_strex.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_strnid.d.tmp -MT crypto/asn1/a_strnid.o -c -o crypto/asn1/a_strnid.o crypto/asn1/a_strnid.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_time.d.tmp -MT crypto/asn1/a_time.o -c -o crypto/asn1/a_time.o crypto/asn1/a_time.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_type.d.tmp -MT crypto/asn1/a_type.o -c -o crypto/asn1/a_type.o crypto/asn1/a_type.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_utctm.d.tmp -MT crypto/asn1/a_utctm.o -c -o crypto/asn1/a_utctm.o crypto/asn1/a_utctm.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_utf8.d.tmp -MT crypto/asn1/a_utf8.o -c -o crypto/asn1/a_utf8.o crypto/asn1/a_utf8.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_verify.d.tmp -MT crypto/asn1/a_verify.o -c -o crypto/asn1/a_verify.o crypto/asn1/a_verify.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/ameth_lib.d.tmp -MT crypto/asn1/ameth_lib.o -c -o crypto/asn1/ameth_lib.o crypto/asn1/ameth_lib.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_err.d.tmp -MT crypto/asn1/asn1_err.o -c -o crypto/asn1/asn1_err.o crypto/asn1/asn1_err.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_gen.d.tmp -MT crypto/asn1/asn1_gen.o -c -o crypto/asn1/asn1_gen.o crypto/asn1/asn1_gen.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_item_list.d.tmp -MT crypto/asn1/asn1_item_list.o -c -o crypto/asn1/asn1_item_list.o crypto/asn1/asn1_item_list.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_lib.d.tmp -MT crypto/asn1/asn1_lib.o -c -o crypto/asn1/asn1_lib.o crypto/asn1/asn1_lib.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_par.d.tmp -MT crypto/asn1/asn1_par.o -c -o crypto/asn1/asn1_par.o crypto/asn1/asn1_par.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_mime.d.tmp -MT crypto/asn1/asn_mime.o -c -o crypto/asn1/asn_mime.o crypto/asn1/asn_mime.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_moid.d.tmp -MT crypto/asn1/asn_moid.o -c -o crypto/asn1/asn_moid.o crypto/asn1/asn_moid.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_mstbl.d.tmp -MT crypto/asn1/asn_mstbl.o -c -o crypto/asn1/asn_mstbl.o crypto/asn1/asn_mstbl.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_pack.d.tmp -MT crypto/asn1/asn_pack.o -c -o crypto/asn1/asn_pack.o crypto/asn1/asn_pack.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/bio_asn1.d.tmp -MT crypto/asn1/bio_asn1.o -c -o crypto/asn1/bio_asn1.o crypto/asn1/bio_asn1.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/bio_ndef.d.tmp -MT crypto/asn1/bio_ndef.o -c -o crypto/asn1/bio_ndef.o crypto/asn1/bio_ndef.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/d2i_pr.d.tmp -MT crypto/asn1/d2i_pr.o -c -o crypto/asn1/d2i_pr.o crypto/asn1/d2i_pr.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/d2i_pu.d.tmp -MT crypto/asn1/d2i_pu.o -c -o crypto/asn1/d2i_pu.o crypto/asn1/d2i_pu.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/evp_asn1.d.tmp -MT crypto/asn1/evp_asn1.o -c -o crypto/asn1/evp_asn1.o crypto/asn1/evp_asn1.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/f_int.d.tmp -MT crypto/asn1/f_int.o -c -o crypto/asn1/f_int.o crypto/asn1/f_int.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/f_string.d.tmp -MT crypto/asn1/f_string.o -c -o crypto/asn1/f_string.o crypto/asn1/f_string.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/i2d_pr.d.tmp -MT crypto/asn1/i2d_pr.o -c -o crypto/asn1/i2d_pr.o crypto/asn1/i2d_pr.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/i2d_pu.d.tmp -MT crypto/asn1/i2d_pu.o -c -o crypto/asn1/i2d_pu.o crypto/asn1/i2d_pu.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/n_pkey.d.tmp -MT crypto/asn1/n_pkey.o -c -o crypto/asn1/n_pkey.o crypto/asn1/n_pkey.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/nsseq.d.tmp -MT crypto/asn1/nsseq.o -c -o crypto/asn1/nsseq.o crypto/asn1/nsseq.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p5_pbe.d.tmp -MT crypto/asn1/p5_pbe.o -c -o crypto/asn1/p5_pbe.o crypto/asn1/p5_pbe.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p5_pbev2.d.tmp -MT crypto/asn1/p5_pbev2.o -c -o crypto/asn1/p5_pbev2.o crypto/asn1/p5_pbev2.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p5_scrypt.d.tmp -MT crypto/asn1/p5_scrypt.o -c -o crypto/asn1/p5_scrypt.o crypto/asn1/p5_scrypt.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p8_pkey.d.tmp -MT crypto/asn1/p8_pkey.o -c -o crypto/asn1/p8_pkey.o crypto/asn1/p8_pkey.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/t_bitst.d.tmp -MT crypto/asn1/t_bitst.o -c -o crypto/asn1/t_bitst.o crypto/asn1/t_bitst.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/t_pkey.d.tmp -MT crypto/asn1/t_pkey.o -c -o crypto/asn1/t_pkey.o crypto/asn1/t_pkey.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/t_spki.d.tmp -MT crypto/asn1/t_spki.o -c -o crypto/asn1/t_spki.o crypto/asn1/t_spki.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_dec.d.tmp -MT crypto/asn1/tasn_dec.o -c -o crypto/asn1/tasn_dec.o crypto/asn1/tasn_dec.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_enc.d.tmp -MT crypto/asn1/tasn_enc.o -c -o crypto/asn1/tasn_enc.o crypto/asn1/tasn_enc.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_fre.d.tmp -MT crypto/asn1/tasn_fre.o -c -o crypto/asn1/tasn_fre.o crypto/asn1/tasn_fre.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_new.d.tmp -MT crypto/asn1/tasn_new.o -c -o crypto/asn1/tasn_new.o crypto/asn1/tasn_new.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_prn.d.tmp -MT crypto/asn1/tasn_prn.o -c -o crypto/asn1/tasn_prn.o crypto/asn1/tasn_prn.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_scn.d.tmp -MT crypto/asn1/tasn_scn.o -c -o crypto/asn1/tasn_scn.o crypto/asn1/tasn_scn.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_typ.d.tmp -MT crypto/asn1/tasn_typ.o -c -o crypto/asn1/tasn_typ.o crypto/asn1/tasn_typ.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_utl.d.tmp -MT crypto/asn1/tasn_utl.o -c -o crypto/asn1/tasn_utl.o crypto/asn1/tasn_utl.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/x_algor.d.tmp -MT crypto/asn1/x_algor.o -c -o crypto/asn1/x_algor.o crypto/asn1/x_algor.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/x_bignum.d.tmp -MT crypto/asn1/x_bignum.o -c -o crypto/asn1/x_bignum.o crypto/asn1/x_bignum.c arm-linux-androideabi-gcc -I. -Icrypto/include -Iinclude -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot= -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/x_info.d.tmp -MT crypto/asn1/x_info.o -c -o crypto/asn1/x_info.o crypto/asn1/x_info.c make[1]: *** No rule to make target `include/internal/asn1t.h', needed by `crypto/asn1/x_int64.o'. Stop. make[1]: Leaving directory ` make: *** [all] Error 2 Build step 'Execute shell' marked build as failure From osslsanity at gmail.com Fri Apr 21 15:13:14 2017 From: osslsanity at gmail.com (address not configured yet) Date: Fri, 21 Apr 2017 15:13:14 +0000 (UTC) Subject: [openssl-commits] Build failed in Jenkins: master_norc4 #15 Message-ID: <188401864.2.1492787594707.JavaMail.jenkins@ip-172-31-11-199.us-west-2.compute.internal> See Changes: [levitte] In rand_cleanup_int(), don't go creating a default method [appro] Add support for MLOCK_ONFAULT to secure arena [appro] e_os2.h: Refine OSSL_SSIZE definition under UEFI environment [levitte] Make getting and setting the RAND default method thread safe [levitte] Don't try to clean up RAND from ENGINE [matt] Move ssl/t1_ext.c to ssl/statem/extensions_cust.c [matt] Move the extensions context codes into the public API [matt] Implement a new custom extensions API [matt] Add some tests for the new custom extensions API [matt] Add documentation for the new custom extensions API [matt] Various style tweaks based on feedback [matt] Prefix custom extension API callback types with SSL_ [matt] Create an ENDPOINT enum type for use internally [matt] Remove an out of date TODO [matt] Fix a test failure when configured without TLSv1.3 [levitte] Fix rand_lib.c for no-engine configuration [rsalz] Make default_method mostly compile-time [rsalz] Make default_method mostly compile-time (cont'd) [rsalz] Check for L [rsalz] Add missing =back [rsalz] Standardize on =over 4 and check for it. [rsalz] Use 'over 2' for bullet lists. [appro] appveyor.yml: split {build,test}_scripts to avoid exit code masking. [appro] asn1/x_long.c: remove conditions in inner loops and dependency on BN. [appro] rand/rand_lib.c: keep fixing no-engine configuration. [levitte] Publish our INT32, UINT32, INT64, UINT64 ASN.1 types and Z variants [levitte] Discourage the use of LONG and ZLONG, and deprecate it in the future [levitte] Act on deprecation of LONG and ZLONG, step 1 [levitte] Act on deprecation of LONG and ZLONG, step 2 [levitte] Act on deprecation of LONG and ZLONG, step 3 [levitte] Add a note in CHANGES [levitte] Fix util/mkdef.pl [rsalz] Allow an ALPN callback to pretend to not exist [rsalz] Make test marcos for true/false checks reliable for all integral types. [rsalz] Update rc2test to use the test infrastructure [matt] Update md2test to use the test infrastructure [matt] Update dtlstest to use the test infrastructure [matt] Reject decoding of an INT64 with a value >INT64_MAX [rsalz] Additional check to handle BAD SSL_write retry [rsalz] Remove ECDH(E) ciphers from SSLv3 [levitte] Fix int64 test of t_4bytes_4_neg [levitte] Fix x_int64.c [matt] Convert bad_dtls_test for the new test framework [matt] Convert asynciotest for the new test framework [matt] Convert clienthellotest for the new test framework [rsalz] Added error checking for OBJ_create [levitte] Convert exdata tests to new test framework [matt] Update sha256t and sha512t to use the test infrastructure [matt] Update sha1test to use the test infrastructure [matt] Update mdc2test to use the test infrastructure [matt] Update rc5test to use the test infrastructure [matt] Update rc4test to use the test infrastructure [matt] Convert RSA tests to new framework [matt] Updates after code review [matt] Remove seed completely... [matt] Convert blowfish tests to new framework [matt] Code review. Split tests up [matt] Remove unused variable. Thanks @pauli-oracle [matt] Update d2i_test to use the test infrastructure [matt] Update secmemtest and memeleaktest to use the test infrastructure. [matt] Update gmdifftime to use the test infrastructure [matt] Update ideatest to use the test infrastructure [matt] Update sanitytest to use the test infrastructure [levitte] In asn1_encode_test.c, add custom DER encoding checks [levitte] Fix definition of i2d_fn in asn1_encode_test.c [levitte] Add tests of custom negative 1 [matt] Update the internal chacha test to use the framework Reviewed-by: [levitte] Update threadstest to use the test framework [levitte] Remove fprintfs from the poly1305 internal test but keep the test number [levitte] test/testutil.c: Flush stdout when running tests [levitte] Update destest to use the test infrastructure [levitte] ecdhtest.c: move NAMED CURVES TESTS to evptests.txt [levitte] Remove stale code in ecdhtest.c [levitte] ecdhtest.c: move KATs to evptests.txt [levitte] Remove more stale code in ecdhtest.c [levitte] OpenSSL::Test: supported filtered command output [rsalz] Convert x509aux, cipherlist, casttest [rsalz] Address review feedback (to be squashed) [levitte] Add SSL tests for certificates with embedded SCTs [levitte] CT_POLICY_EVAL_CTX_set_time expects milliseconds, but given seconds [levitte] Correct travis.yml to only build extended tests when explicitely asked [rsalz] OCSP Updates: error codes and multiple certificates [levitte] Test printing of ASN.1 types INTxx et al [levitte] ASN.1: extend the possibilities to embed data instead of pointers [levitte] ASN.1: change INTxx, UINTxx and Z variants to be embedable [levitte] ASN.1: adapt our use of INTxx et al by making them explicitely embedded [levitte] Split the CAST tests up. [levitte] Update the internal siphash tests to use the framework's output. [rsalz] Guarantee single argument evaluation for test macros. Add test case that [appro] testlib/OpenSSL/Test.pm: keep default input private. [appro] asn1/a_int.c: remove code duplicate and optimize branches, [appro] asn1/a_int.c: simplify asn1_put_uint64. [appro] asn1/a_int.c: don't write result if returning error. [rsalz] Fix unit tests when no-bf configured [rsalz] WIP: Convert ui,v3ext,verify_extra_test [rsalz] ecdhtest.c: move co-factor ECDH KATs to evptests [rsalz] Remove ecdhtest.c [rsalz] Reformat evptests.txt [rsalz] Add -f -r flags to find-unused-errs [kurt] Switch libfuzzer to use trace-pc-guard [kurt] Make x509 and asn1 fuzzer reproducible [kurt] Document how to update the corpus. [kurt] Use a fixed time when fuzzing. [kurt] Optionally check for early data [rsalz] Catch EC_R_UNKNOWN_GROUP in check_unsupported() [rsalz] Convert afalgtest [rsalz] [squash]Build works with/out NO_ENGINE and NO_AFALG [appro] asn1/a_int.c: clean up asn1_get_int64. [rsalz] update docs because depth refers only to intermediate certs [levitte] Add external krb5 test support [levitte] Update external test README for running krb5 [levitte] Fix formatting of PYCA external test instructions [levitte] [extended tests] Enable krb5 tests in Travis [rsalz] Convert more tests [rsalz] Convert more tests to framework [rsalz] Update more tests [rsalz] Convert more tests [levitte] VMS: Fix the passing of cflags for things not being installed [levitte] VMS: Fix internals test programs [rsalz] Convert dhtest, dsatest, cipherbytes_test [rsalz] Document Next Protocol Negotiation APIs [rsalz] Fix minor compiler issues. [rsalz] Change 64-bit time type for windows [levitte] VMS: Copy DECC inclusion epi- and prologues to internals [levitte] VMS: remove name mangling guards around inclusion of internals [levitte] Fix test/recipes/95-test_external_krb5.t [rsalz] fix dh_test. [rsalz] Convert hmactest to new test framework [rsalz] explicitText encoding [rsalz] Ignore dups in X509_STORE_add_* [rsalz] Small primes are primes too. [appro] Add ARIA 32-bit implementation ------------------------------------------ Started by upstream project "master_basic" build number 16 originally caused by: Started by an SCM change Building in workspace > git rev-parse --is-inside-work-tree # timeout=10 Fetching changes from the remote Git repository > git config remote.origin.url https://github.com/openssl/openssl.git # timeout=10 Fetching upstream changes from https://github.com/openssl/openssl.git > git --version # timeout=10 > git fetch --tags --progress https://github.com/openssl/openssl.git +refs/heads/*:refs/remotes/origin/* > git rev-parse refs/remotes/origin/master^{commit} # timeout=10 > git rev-parse refs/remotes/origin/origin/master^{commit} # timeout=10 Checking out Revision dc99b885ded3cbc586d5ffec779f0e75a269bda3 (refs/remotes/origin/master) > git config core.sparsecheckout # timeout=10 > git checkout -f dc99b885ded3cbc586d5ffec779f0e75a269bda3 > git rev-list 5748e4dc3ab1cdde43ae6feecb106e3a41adcdf4 # timeout=10 [master_norc4] $ /bin/sh -xe /tmp/jenkins1336907686514618878.sh + ./config no-shared no-rc4 Operating system: x86_64-whatever-linux2 Configuring OpenSSL version 1.1.1-dev (0x10101000L) no-aria [default] OPENSSL_NO_ARIA (skip dir) no-asan [default] OPENSSL_NO_ASAN no-crypto-mdebug [default] OPENSSL_NO_CRYPTO_MDEBUG no-crypto-mdebug-backtrace [default] OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE no-dynamic-engine [forced] no-ec_nistp_64_gcc_128 [default] OPENSSL_NO_EC_NISTP_64_GCC_128 no-egd [default] OPENSSL_NO_EGD no-external-tests [default] OPENSSL_NO_EXTERNAL_TESTS no-fuzz-afl [default] OPENSSL_NO_FUZZ_AFL no-fuzz-libfuzzer [default] OPENSSL_NO_FUZZ_LIBFUZZER no-heartbeats [default] OPENSSL_NO_HEARTBEATS no-md2 [default] OPENSSL_NO_MD2 (skip dir) no-msan [default] OPENSSL_NO_MSAN no-rc4 [option] OPENSSL_NO_RC4 (skip dir) no-rc5 [default] OPENSSL_NO_RC5 (skip dir) no-sctp [default] OPENSSL_NO_SCTP no-shared [option] no-ssl-trace [default] OPENSSL_NO_SSL_TRACE no-ssl3 [default] OPENSSL_NO_SSL3 no-ssl3-method [default] OPENSSL_NO_SSL3_METHOD no-tls13downgrade [default] OPENSSL_NO_TLS13DOWNGRADE no-tls1_3 [default] OPENSSL_NO_TLS1_3 no-ubsan [default] OPENSSL_NO_UBSAN no-unit-test [default] OPENSSL_NO_UNIT_TEST no-weak-ssl-ciphers [default] OPENSSL_NO_WEAK_SSL_CIPHERS no-zlib [default] no-zlib-dynamic [default] Configuring for linux-x86_64 PERL =/usr/bin/perl PERLVERSION =5.18.2 for x86_64-linux-gnu-thread-multi HASHBANGPERL =/usr/bin/env perl CC =gcc CFLAG =-Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack CXX =g++ CXXFLAG =-Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack DEFINES =DSO_DLFCN HAVE_DLFCN_H NDEBUG OPENSSL_THREADS OPENSSL_NO_DYNAMIC_ENGINE OPENSSL_PIC OPENSSL_IA32_SSE2 OPENSSL_BN_ASM_MONT OPENSSL_BN_ASM_MONT5 OPENSSL_BN_ASM_GF2m SHA1_ASM SHA256_ASM SHA512_ASM RC4_ASM MD5_ASM AES_ASM VPAES_ASM BSAES_ASM GHASH_ASM ECP_NISTZ256_ASM PADLOCK_ASM POLY1305_ASM EX_LIBS =-ldl + make depend + make clean rm -f rm -f rm -f libcrypto.a libssl.a rm -f *.map rm -f apps/openssl fuzz/asn1-test fuzz/asn1parse-test fuzz/bignum-test fuzz/bndiv-test fuzz/client-test fuzz/cms-test fuzz/conf-test fuzz/crl-test fuzz/ct-test fuzz/server-test fuzz/x509-test test/aborttest test/afalgtest test/asn1_encode_test test/asn1_internal_test test/asynciotest test/asynctest test/bad_dtls_test test/bftest test/bio_enc_test test/bioprinttest test/bntest test/buildtest_aes test/buildtest_asn1 test/buildtest_asn1t test/buildtest_async test/buildtest_bio test/buildtest_blowfish test/buildtest_bn test/buildtest_buffer test/buildtest_camellia test/buildtest_cast test/buildtest_cmac test/buildtest_cms test/buildtest_comp test/buildtest_conf test/buildtest_conf_api test/buildtest_crypto test/buildtest_ct test/buildtest_des test/buildtest_dh test/buildtest_dsa test/buildtest_dtls1 test/buildtest_e_os2 test/buildtest_ebcdic test/buildtest_ec test/buildtest_ecdh test/buildtest_ecdsa test/buildtest_engine test/buildtest_err test/buildtest_evp test/buildtest_hmac test/buildtest_idea test/buildtest_kdf test/buildtest_lhash test/buildtest_md4 test/buildtest_md5 test/buildtest_mdc2 test/buildtest_modes test/buildtest_obj_mac test/buildtest_objects test/buildtest_ocsp test/buildtest_opensslconf test/buildtest_opensslv test/buildtest_ossl_typ test/buildtest_pem test/buildtest_pem2 test/buildtest_pkcs12 test/buildtest_pkcs7 test/buildtest_rand test/buildtest_rc2 test/buildtest_ripemd test/buildtest_rsa test/buildtest_safestack test/buildtest_seed test/buildtest_sha test/buildtest_srp test/buildtest_srtp test/buildtest_ssl test/buildtest_ssl2 test/buildtest_stack test/buildtest_symhacks test/buildtest_tls1 test/buildtest_ts test/buildtest_txt_db test/buildtest_ui test/buildtest_whrlpool test/buildtest_x509 test/buildtest_x509_vfy test/buildtest_x509v3 test/casttest test/chacha_internal_test test/cipher_overhead_test test/cipherbytes_test test/cipherlist_test test/clienthellotest test/constant_time_test test/crltest test/ct_test test/d2i_test test/danetest test/destest test/dhtest test/dsatest test/dtls_mtu_test test/dtlstest test/dtlsv1listentest test/ecdsatest test/ectest test/enginetest test/evp_extra_test test/evp_test test/exdatatest test/exptest test/gmdifftest test/hmactest test/ideatest test/igetest test/lhash_test test/md2test test/mdc2_internal_test test/mdc2test test/memleaktest test/modes_internal_test test/packettest test/pbelutest test/pkey_meth_test test/poly1305_internal_test test/randtest test/rc2test test/rc4test test/rc5test test/recordlentest test/rsa_test test/sanitytest test/secmemtest test/sha1test test/sha256t test/sha512t test/siphash_internal_test test/srptest test/ssl_test test/ssl_test_ctx_test test/sslapitest test/sslcorrupttest test/ssltest_old test/stack_test test/test_test test/threadstest test/tls13encryptiontest test/uitest test/v3ext test/v3nametest test/verify_extra_test test/wpackettest test/x509_dup_cert_test test/x509_internal_test test/x509_time_test test/x509aux apps/CA.pl apps/tsget tools/c_rehash util/shlib_wrap.sh rm -f test/buildtest_ocsp.c test/buildtest_whrlpool.c crypto/modes/ghash-x86_64.s test/buildtest_sha.c crypto/md5/md5-x86_64.s crypto/aes/vpaes-x86_64.s test/buildtest_dtls1.c test/buildtest_dh.c test/buildtest_idea.c test/buildtest_x509.c test/buildtest_symhacks.c test/buildtest_obj_mac.c crypto/camellia/cmll-x86_64.s test/buildtest_safestack.c crypto/sha/sha256-x86_64.s test/buildtest_ui.c test/buildtest_md5.c crypto/aes/aesni-sha1-x86_64.s test/buildtest_tls1.c test/buildtest_crypto.c test/buildtest_ts.c test/buildtest_pem.c test/buildtest_modes.c test/buildtest_pkcs7.c test/buildtest_e_os2.c crypto/bn/rsaz-avx2.s test/buildtest_asn1.c test/buildtest_opensslconf.c test/buildtest_asn1t.c crypto/sha/sha256-mb-x86_64.s test/buildtest_txt_db.c crypto/aes/bsaes-x86_64.s crypto/aes/aesni-mb-x86_64.s test/buildtest_ecdsa.c test/buildtest_cmac.c crypto/whrlpool/wp-x86_64.s test/buildtest_ssl.c test/buildtest_seed.c crypto/aes/aesni-x86_64.s crypto/modes/aesni-gcm-x86_64.s test/buildtest_comp.c crypto/bn/x86_64-mont5.s test/buildtest_srp.c crypto/ec/ecp_nistz256-x86_64.s test/buildtest_x509_vfy.c test/buildtest_blowfish.c test/buildtest_mdc2.c test/buildtest_err.c crypto/bn/x86_64-gf2m.s test/buildtest_pem2.c test/buildtest_conf_api.c crypto/aes/aes-x86_64.s test/buildtest_ec.c test/buildtest_pkcs12.c test/buildtest_camellia.c crypto/bn/x86_64-mont.s test/buildtest_hmac.c test/buildtest_ssl2.c test/buildtest_dsa.c test/buildtest_aes.c test/buildtest_stack.c test/buildtest_ebcdic.c engines/e_padlock-x86_64.s test/buildtest_x509v3.c crypto/sha/sha1-mb-x86_64.s crypto/aes/aesni-sha256-x86_64.s test/buildtest_cms.c test/buildtest_ct.c crypto/sha/sha1-x86_64.s test/buildtest_evp.c test/buildtest_lhash.c test/buildtest_cast.c test/buildtest_objects.c test/buildtest_rand.c test/buildtest_bn.c test/buildtest_conf.c crypto/sha/sha512-x86_64.s test/buildtest_rc2.c test/buildtest_srtp.c test/buildtest_des.c test/buildtest_ecdh.c test/buildtest_bio.c test/buildtest_rsa.c test/buildtest_engine.c test/buildtest_async.c test/buildtest_buffer.c test/buildtest_md4.c test/buildtest_ossl_typ.c crypto/x86_64cpuid.s crypto/chacha/chacha-x86_64.s test/buildtest_kdf.c crypto/bn/rsaz-x86_64.s crypto/poly1305/poly1305-x86_64.s test/buildtest_ripemd.c test/buildtest_opensslv.c crypto/include/internal/bn_conf.h include/openssl/opensslconf.h crypto/buildinf.h crypto/include/internal/dso_conf.h rm -f `find . -name '*.d' -a \! -path "./.git/*"` rm -f `find . -name '*.o' -a \! -path "./.git/*"` rm -f core rm -f tags TAGS doc-nits rm -f test/.rnd rm -f openssl.pc libcrypto.pc libssl.pc rm -f `find . -type l -a \! -path "./.git/*"` rm -f ../openssl-1.1.1-dev.tar + make /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \ "-oMakefile" crypto/include/internal/bn_conf.h.in > crypto/include/internal/bn_conf.h /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \ "-oMakefile" crypto/include/internal/dso_conf.h.in > crypto/include/internal/dso_conf.h /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \ "-oMakefile" include/openssl/opensslconf.h.in > include/openssl/opensslconf.h make depend && make _all make[1]: Entering directory ` make[1]: Leaving directory ` make[1]: Entering directory ` CC="gcc" /usr/bin/perl crypto/aes/asm/aes-x86_64.pl elf crypto/aes/aes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes-x86_64.d.tmp -MT crypto/aes/aes-x86_64.o -c -o crypto/aes/aes-x86_64.o crypto/aes/aes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_cfb.d.tmp -MT crypto/aes/aes_cfb.o -c -o crypto/aes/aes_cfb.o crypto/aes/aes_cfb.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_ecb.d.tmp -MT crypto/aes/aes_ecb.o -c -o crypto/aes/aes_ecb.o crypto/aes/aes_ecb.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_ige.d.tmp -MT crypto/aes/aes_ige.o -c -o crypto/aes/aes_ige.o crypto/aes/aes_ige.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_misc.d.tmp -MT crypto/aes/aes_misc.o -c -o crypto/aes/aes_misc.o crypto/aes/aes_misc.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_ofb.d.tmp -MT crypto/aes/aes_ofb.o -c -o crypto/aes/aes_ofb.o crypto/aes/aes_ofb.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_wrap.d.tmp -MT crypto/aes/aes_wrap.o -c -o crypto/aes/aes_wrap.o crypto/aes/aes_wrap.c CC="gcc" /usr/bin/perl crypto/aes/asm/aesni-mb-x86_64.pl elf crypto/aes/aesni-mb-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aesni-mb-x86_64.d.tmp -MT crypto/aes/aesni-mb-x86_64.o -c -o crypto/aes/aesni-mb-x86_64.o crypto/aes/aesni-mb-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/aesni-sha1-x86_64.pl elf crypto/aes/aesni-sha1-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aesni-sha1-x86_64.d.tmp -MT crypto/aes/aesni-sha1-x86_64.o -c -o crypto/aes/aesni-sha1-x86_64.o crypto/aes/aesni-sha1-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/aesni-sha256-x86_64.pl elf crypto/aes/aesni-sha256-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aesni-sha256-x86_64.d.tmp -MT crypto/aes/aesni-sha256-x86_64.o -c -o crypto/aes/aesni-sha256-x86_64.o crypto/aes/aesni-sha256-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/aesni-x86_64.pl elf crypto/aes/aesni-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aesni-x86_64.d.tmp -MT crypto/aes/aesni-x86_64.o -c -o crypto/aes/aesni-x86_64.o crypto/aes/aesni-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/bsaes-x86_64.pl elf crypto/aes/bsaes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/bsaes-x86_64.d.tmp -MT crypto/aes/bsaes-x86_64.o -c -o crypto/aes/bsaes-x86_64.o crypto/aes/bsaes-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/vpaes-x86_64.pl elf crypto/aes/vpaes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/vpaes-x86_64.d.tmp -MT crypto/aes/vpaes-x86_64.o -c -o crypto/aes/vpaes-x86_64.o crypto/aes/vpaes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_bitstr.d.tmp -MT crypto/asn1/a_bitstr.o -c -o crypto/asn1/a_bitstr.o crypto/asn1/a_bitstr.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_d2i_fp.d.tmp -MT crypto/asn1/a_d2i_fp.o -c -o crypto/asn1/a_d2i_fp.o crypto/asn1/a_d2i_fp.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_digest.d.tmp -MT crypto/asn1/a_digest.o -c -o crypto/asn1/a_digest.o crypto/asn1/a_digest.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_dup.d.tmp -MT crypto/asn1/a_dup.o -c -o crypto/asn1/a_dup.o crypto/asn1/a_dup.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_gentm.d.tmp -MT crypto/asn1/a_gentm.o -c -o crypto/asn1/a_gentm.o crypto/asn1/a_gentm.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_i2d_fp.d.tmp -MT crypto/asn1/a_i2d_fp.o -c -o crypto/asn1/a_i2d_fp.o crypto/asn1/a_i2d_fp.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_int.d.tmp -MT crypto/asn1/a_int.o -c -o crypto/asn1/a_int.o crypto/asn1/a_int.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_mbstr.d.tmp -MT crypto/asn1/a_mbstr.o -c -o crypto/asn1/a_mbstr.o crypto/asn1/a_mbstr.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_object.d.tmp -MT crypto/asn1/a_object.o -c -o crypto/asn1/a_object.o crypto/asn1/a_object.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_octet.d.tmp -MT crypto/asn1/a_octet.o -c -o crypto/asn1/a_octet.o crypto/asn1/a_octet.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_print.d.tmp -MT crypto/asn1/a_print.o -c -o crypto/asn1/a_print.o crypto/asn1/a_print.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_sign.d.tmp -MT crypto/asn1/a_sign.o -c -o crypto/asn1/a_sign.o crypto/asn1/a_sign.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_strex.d.tmp -MT crypto/asn1/a_strex.o -c -o crypto/asn1/a_strex.o crypto/asn1/a_strex.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_strnid.d.tmp -MT crypto/asn1/a_strnid.o -c -o crypto/asn1/a_strnid.o crypto/asn1/a_strnid.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_time.d.tmp -MT crypto/asn1/a_time.o -c -o crypto/asn1/a_time.o crypto/asn1/a_time.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_type.d.tmp -MT crypto/asn1/a_type.o -c -o crypto/asn1/a_type.o crypto/asn1/a_type.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_utctm.d.tmp -MT crypto/asn1/a_utctm.o -c -o crypto/asn1/a_utctm.o crypto/asn1/a_utctm.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_utf8.d.tmp -MT crypto/asn1/a_utf8.o -c -o crypto/asn1/a_utf8.o crypto/asn1/a_utf8.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_verify.d.tmp -MT crypto/asn1/a_verify.o -c -o crypto/asn1/a_verify.o crypto/asn1/a_verify.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/ameth_lib.d.tmp -MT crypto/asn1/ameth_lib.o -c -o crypto/asn1/ameth_lib.o crypto/asn1/ameth_lib.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_err.d.tmp -MT crypto/asn1/asn1_err.o -c -o crypto/asn1/asn1_err.o crypto/asn1/asn1_err.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_gen.d.tmp -MT crypto/asn1/asn1_gen.o -c -o crypto/asn1/asn1_gen.o crypto/asn1/asn1_gen.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_item_list.d.tmp -MT crypto/asn1/asn1_item_list.o -c -o crypto/asn1/asn1_item_list.o crypto/asn1/asn1_item_list.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_lib.d.tmp -MT crypto/asn1/asn1_lib.o -c -o crypto/asn1/asn1_lib.o crypto/asn1/asn1_lib.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_par.d.tmp -MT crypto/asn1/asn1_par.o -c -o crypto/asn1/asn1_par.o crypto/asn1/asn1_par.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_mime.d.tmp -MT crypto/asn1/asn_mime.o -c -o crypto/asn1/asn_mime.o crypto/asn1/asn_mime.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_moid.d.tmp -MT crypto/asn1/asn_moid.o -c -o crypto/asn1/asn_moid.o crypto/asn1/asn_moid.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_mstbl.d.tmp -MT crypto/asn1/asn_mstbl.o -c -o crypto/asn1/asn_mstbl.o crypto/asn1/asn_mstbl.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_pack.d.tmp -MT crypto/asn1/asn_pack.o -c -o crypto/asn1/asn_pack.o crypto/asn1/asn_pack.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/bio_asn1.d.tmp -MT crypto/asn1/bio_asn1.o -c -o crypto/asn1/bio_asn1.o crypto/asn1/bio_asn1.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/bio_ndef.d.tmp -MT crypto/asn1/bio_ndef.o -c -o crypto/asn1/bio_ndef.o crypto/asn1/bio_ndef.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/d2i_pr.d.tmp -MT crypto/asn1/d2i_pr.o -c -o crypto/asn1/d2i_pr.o crypto/asn1/d2i_pr.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/d2i_pu.d.tmp -MT crypto/asn1/d2i_pu.o -c -o crypto/asn1/d2i_pu.o crypto/asn1/d2i_pu.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/evp_asn1.d.tmp -MT crypto/asn1/evp_asn1.o -c -o crypto/asn1/evp_asn1.o crypto/asn1/evp_asn1.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/f_int.d.tmp -MT crypto/asn1/f_int.o -c -o crypto/asn1/f_int.o crypto/asn1/f_int.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/f_string.d.tmp -MT crypto/asn1/f_string.o -c -o crypto/asn1/f_string.o crypto/asn1/f_string.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/i2d_pr.d.tmp -MT crypto/asn1/i2d_pr.o -c -o crypto/asn1/i2d_pr.o crypto/asn1/i2d_pr.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/i2d_pu.d.tmp -MT crypto/asn1/i2d_pu.o -c -o crypto/asn1/i2d_pu.o crypto/asn1/i2d_pu.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/n_pkey.d.tmp -MT crypto/asn1/n_pkey.o -c -o crypto/asn1/n_pkey.o crypto/asn1/n_pkey.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/nsseq.d.tmp -MT crypto/asn1/nsseq.o -c -o crypto/asn1/nsseq.o crypto/asn1/nsseq.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p5_pbe.d.tmp -MT crypto/asn1/p5_pbe.o -c -o crypto/asn1/p5_pbe.o crypto/asn1/p5_pbe.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p5_pbev2.d.tmp -MT crypto/asn1/p5_pbev2.o -c -o crypto/asn1/p5_pbev2.o crypto/asn1/p5_pbev2.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p5_scrypt.d.tmp -MT crypto/asn1/p5_scrypt.o -c -o crypto/asn1/p5_scrypt.o crypto/asn1/p5_scrypt.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p8_pkey.d.tmp -MT crypto/asn1/p8_pkey.o -c -o crypto/asn1/p8_pkey.o crypto/asn1/p8_pkey.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/t_bitst.d.tmp -MT crypto/asn1/t_bitst.o -c -o crypto/asn1/t_bitst.o crypto/asn1/t_bitst.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/t_pkey.d.tmp -MT crypto/asn1/t_pkey.o -c -o crypto/asn1/t_pkey.o crypto/asn1/t_pkey.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/t_spki.d.tmp -MT crypto/asn1/t_spki.o -c -o crypto/asn1/t_spki.o crypto/asn1/t_spki.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_dec.d.tmp -MT crypto/asn1/tasn_dec.o -c -o crypto/asn1/tasn_dec.o crypto/asn1/tasn_dec.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_enc.d.tmp -MT crypto/asn1/tasn_enc.o -c -o crypto/asn1/tasn_enc.o crypto/asn1/tasn_enc.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_fre.d.tmp -MT crypto/asn1/tasn_fre.o -c -o crypto/asn1/tasn_fre.o crypto/asn1/tasn_fre.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_new.d.tmp -MT crypto/asn1/tasn_new.o -c -o crypto/asn1/tasn_new.o crypto/asn1/tasn_new.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_prn.d.tmp -MT crypto/asn1/tasn_prn.o -c -o crypto/asn1/tasn_prn.o crypto/asn1/tasn_prn.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_scn.d.tmp -MT crypto/asn1/tasn_scn.o -c -o crypto/asn1/tasn_scn.o crypto/asn1/tasn_scn.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_typ.d.tmp -MT crypto/asn1/tasn_typ.o -c -o crypto/asn1/tasn_typ.o crypto/asn1/tasn_typ.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_utl.d.tmp -MT crypto/asn1/tasn_utl.o -c -o crypto/asn1/tasn_utl.o crypto/asn1/tasn_utl.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/x_algor.d.tmp -MT crypto/asn1/x_algor.o -c -o crypto/asn1/x_algor.o crypto/asn1/x_algor.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/x_bignum.d.tmp -MT crypto/asn1/x_bignum.o -c -o crypto/asn1/x_bignum.o crypto/asn1/x_bignum.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/x_info.d.tmp -MT crypto/asn1/x_info.o -c -o crypto/asn1/x_info.o crypto/asn1/x_info.c make[1]: *** No rule to make target `include/internal/asn1t.h', needed by `crypto/asn1/x_int64.o'. Stop. make[1]: Leaving directory ` make: *** [all] Error 2 Build step 'Execute shell' marked build as failure From osslsanity at gmail.com Fri Apr 21 15:13:36 2017 From: osslsanity at gmail.com (address not configured yet) Date: Fri, 21 Apr 2017 15:13:36 +0000 (UTC) Subject: [openssl-commits] Build failed in Jenkins: master_nohw #15 Message-ID: <483220305.3.1492787617022.JavaMail.jenkins@ip-172-31-11-199.us-west-2.compute.internal> See Changes: [levitte] In rand_cleanup_int(), don't go creating a default method [appro] Add support for MLOCK_ONFAULT to secure arena [appro] e_os2.h: Refine OSSL_SSIZE definition under UEFI environment [levitte] Make getting and setting the RAND default method thread safe [levitte] Don't try to clean up RAND from ENGINE [matt] Move ssl/t1_ext.c to ssl/statem/extensions_cust.c [matt] Move the extensions context codes into the public API [matt] Implement a new custom extensions API [matt] Add some tests for the new custom extensions API [matt] Add documentation for the new custom extensions API [matt] Various style tweaks based on feedback [matt] Prefix custom extension API callback types with SSL_ [matt] Create an ENDPOINT enum type for use internally [matt] Remove an out of date TODO [matt] Fix a test failure when configured without TLSv1.3 [levitte] Fix rand_lib.c for no-engine configuration [rsalz] Make default_method mostly compile-time [rsalz] Make default_method mostly compile-time (cont'd) [rsalz] Check for L [rsalz] Add missing =back [rsalz] Standardize on =over 4 and check for it. [rsalz] Use 'over 2' for bullet lists. [appro] appveyor.yml: split {build,test}_scripts to avoid exit code masking. [appro] asn1/x_long.c: remove conditions in inner loops and dependency on BN. [appro] rand/rand_lib.c: keep fixing no-engine configuration. [levitte] Publish our INT32, UINT32, INT64, UINT64 ASN.1 types and Z variants [levitte] Discourage the use of LONG and ZLONG, and deprecate it in the future [levitte] Act on deprecation of LONG and ZLONG, step 1 [levitte] Act on deprecation of LONG and ZLONG, step 2 [levitte] Act on deprecation of LONG and ZLONG, step 3 [levitte] Add a note in CHANGES [levitte] Fix util/mkdef.pl [rsalz] Allow an ALPN callback to pretend to not exist [rsalz] Make test marcos for true/false checks reliable for all integral types. [rsalz] Update rc2test to use the test infrastructure [matt] Update md2test to use the test infrastructure [matt] Update dtlstest to use the test infrastructure [matt] Reject decoding of an INT64 with a value >INT64_MAX [rsalz] Additional check to handle BAD SSL_write retry [rsalz] Remove ECDH(E) ciphers from SSLv3 [levitte] Fix int64 test of t_4bytes_4_neg [levitte] Fix x_int64.c [matt] Convert bad_dtls_test for the new test framework [matt] Convert asynciotest for the new test framework [matt] Convert clienthellotest for the new test framework [rsalz] Added error checking for OBJ_create [levitte] Convert exdata tests to new test framework [matt] Update sha256t and sha512t to use the test infrastructure [matt] Update sha1test to use the test infrastructure [matt] Update mdc2test to use the test infrastructure [matt] Update rc5test to use the test infrastructure [matt] Update rc4test to use the test infrastructure [matt] Convert RSA tests to new framework [matt] Updates after code review [matt] Remove seed completely... [matt] Convert blowfish tests to new framework [matt] Code review. Split tests up [matt] Remove unused variable. Thanks @pauli-oracle [matt] Update d2i_test to use the test infrastructure [matt] Update secmemtest and memeleaktest to use the test infrastructure. [matt] Update gmdifftime to use the test infrastructure [matt] Update ideatest to use the test infrastructure [matt] Update sanitytest to use the test infrastructure [levitte] In asn1_encode_test.c, add custom DER encoding checks [levitte] Fix definition of i2d_fn in asn1_encode_test.c [levitte] Add tests of custom negative 1 [matt] Update the internal chacha test to use the framework Reviewed-by: [levitte] Update threadstest to use the test framework [levitte] Remove fprintfs from the poly1305 internal test but keep the test number [levitte] test/testutil.c: Flush stdout when running tests [levitte] Update destest to use the test infrastructure [levitte] ecdhtest.c: move NAMED CURVES TESTS to evptests.txt [levitte] Remove stale code in ecdhtest.c [levitte] ecdhtest.c: move KATs to evptests.txt [levitte] Remove more stale code in ecdhtest.c [levitte] OpenSSL::Test: supported filtered command output [rsalz] Convert x509aux, cipherlist, casttest [rsalz] Address review feedback (to be squashed) [levitte] Add SSL tests for certificates with embedded SCTs [levitte] CT_POLICY_EVAL_CTX_set_time expects milliseconds, but given seconds [levitte] Correct travis.yml to only build extended tests when explicitely asked [rsalz] OCSP Updates: error codes and multiple certificates [levitte] Test printing of ASN.1 types INTxx et al [levitte] ASN.1: extend the possibilities to embed data instead of pointers [levitte] ASN.1: change INTxx, UINTxx and Z variants to be embedable [levitte] ASN.1: adapt our use of INTxx et al by making them explicitely embedded [levitte] Split the CAST tests up. [levitte] Update the internal siphash tests to use the framework's output. [rsalz] Guarantee single argument evaluation for test macros. Add test case that [appro] testlib/OpenSSL/Test.pm: keep default input private. [appro] asn1/a_int.c: remove code duplicate and optimize branches, [appro] asn1/a_int.c: simplify asn1_put_uint64. [appro] asn1/a_int.c: don't write result if returning error. [rsalz] Fix unit tests when no-bf configured [rsalz] WIP: Convert ui,v3ext,verify_extra_test [rsalz] ecdhtest.c: move co-factor ECDH KATs to evptests [rsalz] Remove ecdhtest.c [rsalz] Reformat evptests.txt [rsalz] Add -f -r flags to find-unused-errs [kurt] Switch libfuzzer to use trace-pc-guard [kurt] Make x509 and asn1 fuzzer reproducible [kurt] Document how to update the corpus. [kurt] Use a fixed time when fuzzing. [kurt] Optionally check for early data [rsalz] Catch EC_R_UNKNOWN_GROUP in check_unsupported() [rsalz] Convert afalgtest [rsalz] [squash]Build works with/out NO_ENGINE and NO_AFALG [appro] asn1/a_int.c: clean up asn1_get_int64. [rsalz] update docs because depth refers only to intermediate certs [levitte] Add external krb5 test support [levitte] Update external test README for running krb5 [levitte] Fix formatting of PYCA external test instructions [levitte] [extended tests] Enable krb5 tests in Travis [rsalz] Convert more tests [rsalz] Convert more tests to framework [rsalz] Update more tests [rsalz] Convert more tests [levitte] VMS: Fix the passing of cflags for things not being installed [levitte] VMS: Fix internals test programs [rsalz] Convert dhtest, dsatest, cipherbytes_test [rsalz] Document Next Protocol Negotiation APIs [rsalz] Fix minor compiler issues. [rsalz] Change 64-bit time type for windows [levitte] VMS: Copy DECC inclusion epi- and prologues to internals [levitte] VMS: remove name mangling guards around inclusion of internals [levitte] Fix test/recipes/95-test_external_krb5.t [rsalz] fix dh_test. [rsalz] Convert hmactest to new test framework [rsalz] explicitText encoding [rsalz] Ignore dups in X509_STORE_add_* [rsalz] Small primes are primes too. [appro] Add ARIA 32-bit implementation ------------------------------------------ Started by upstream project "master_basic" build number 16 originally caused by: Started by an SCM change Building in workspace > git rev-parse --is-inside-work-tree # timeout=10 Fetching changes from the remote Git repository > git config remote.origin.url https://github.com/openssl/openssl.git # timeout=10 Fetching upstream changes from https://github.com/openssl/openssl.git > git --version # timeout=10 > git fetch --tags --progress https://github.com/openssl/openssl.git +refs/heads/*:refs/remotes/origin/* > git rev-parse refs/remotes/origin/master^{commit} # timeout=10 > git rev-parse refs/remotes/origin/origin/master^{commit} # timeout=10 Checking out Revision dc99b885ded3cbc586d5ffec779f0e75a269bda3 (refs/remotes/origin/master) > git config core.sparsecheckout # timeout=10 > git checkout -f dc99b885ded3cbc586d5ffec779f0e75a269bda3 > git rev-list 5748e4dc3ab1cdde43ae6feecb106e3a41adcdf4 # timeout=10 [master_nohw] $ /bin/sh -xe /tmp/jenkins7825252583203096602.sh + ./config no-shared no-hw Operating system: x86_64-whatever-linux2 Configuring OpenSSL version 1.1.1-dev (0x10101000L) no-aria [default] OPENSSL_NO_ARIA (skip dir) no-asan [default] OPENSSL_NO_ASAN no-crypto-mdebug [default] OPENSSL_NO_CRYPTO_MDEBUG no-crypto-mdebug-backtrace [default] OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE no-dynamic-engine [forced] no-ec_nistp_64_gcc_128 [default] OPENSSL_NO_EC_NISTP_64_GCC_128 no-egd [default] OPENSSL_NO_EGD no-external-tests [default] OPENSSL_NO_EXTERNAL_TESTS no-fuzz-afl [default] OPENSSL_NO_FUZZ_AFL no-fuzz-libfuzzer [default] OPENSSL_NO_FUZZ_LIBFUZZER no-heartbeats [default] OPENSSL_NO_HEARTBEATS no-hw [option] OPENSSL_NO_HW no-md2 [default] OPENSSL_NO_MD2 (skip dir) no-msan [default] OPENSSL_NO_MSAN no-rc5 [default] OPENSSL_NO_RC5 (skip dir) no-sctp [default] OPENSSL_NO_SCTP no-shared [option] no-ssl-trace [default] OPENSSL_NO_SSL_TRACE no-ssl3 [default] OPENSSL_NO_SSL3 no-ssl3-method [default] OPENSSL_NO_SSL3_METHOD no-tls13downgrade [default] OPENSSL_NO_TLS13DOWNGRADE no-tls1_3 [default] OPENSSL_NO_TLS1_3 no-ubsan [default] OPENSSL_NO_UBSAN no-unit-test [default] OPENSSL_NO_UNIT_TEST no-weak-ssl-ciphers [default] OPENSSL_NO_WEAK_SSL_CIPHERS no-zlib [default] no-zlib-dynamic [default] Configuring for linux-x86_64 PERL =/usr/bin/perl PERLVERSION =5.18.2 for x86_64-linux-gnu-thread-multi HASHBANGPERL =/usr/bin/env perl CC =gcc CFLAG =-Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack CXX =g++ CXXFLAG =-Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack DEFINES =DSO_DLFCN HAVE_DLFCN_H NDEBUG OPENSSL_THREADS OPENSSL_NO_DYNAMIC_ENGINE OPENSSL_PIC OPENSSL_IA32_SSE2 OPENSSL_BN_ASM_MONT OPENSSL_BN_ASM_MONT5 OPENSSL_BN_ASM_GF2m SHA1_ASM SHA256_ASM SHA512_ASM RC4_ASM MD5_ASM AES_ASM VPAES_ASM BSAES_ASM GHASH_ASM ECP_NISTZ256_ASM PADLOCK_ASM POLY1305_ASM EX_LIBS =-ldl + make depend + make clean rm -f rm -f rm -f libcrypto.a libssl.a rm -f *.map rm -f apps/openssl fuzz/asn1-test fuzz/asn1parse-test fuzz/bignum-test fuzz/bndiv-test fuzz/client-test fuzz/cms-test fuzz/conf-test fuzz/crl-test fuzz/ct-test fuzz/server-test fuzz/x509-test test/aborttest test/afalgtest test/asn1_encode_test test/asn1_internal_test test/asynciotest test/asynctest test/bad_dtls_test test/bftest test/bio_enc_test test/bioprinttest test/bntest test/buildtest_aes test/buildtest_asn1 test/buildtest_asn1t test/buildtest_async test/buildtest_bio test/buildtest_blowfish test/buildtest_bn test/buildtest_buffer test/buildtest_camellia test/buildtest_cast test/buildtest_cmac test/buildtest_cms test/buildtest_comp test/buildtest_conf test/buildtest_conf_api test/buildtest_crypto test/buildtest_ct test/buildtest_des test/buildtest_dh test/buildtest_dsa test/buildtest_dtls1 test/buildtest_e_os2 test/buildtest_ebcdic test/buildtest_ec test/buildtest_ecdh test/buildtest_ecdsa test/buildtest_engine test/buildtest_err test/buildtest_evp test/buildtest_hmac test/buildtest_idea test/buildtest_kdf test/buildtest_lhash test/buildtest_md4 test/buildtest_md5 test/buildtest_mdc2 test/buildtest_modes test/buildtest_obj_mac test/buildtest_objects test/buildtest_ocsp test/buildtest_opensslconf test/buildtest_opensslv test/buildtest_ossl_typ test/buildtest_pem test/buildtest_pem2 test/buildtest_pkcs12 test/buildtest_pkcs7 test/buildtest_rand test/buildtest_rc2 test/buildtest_rc4 test/buildtest_ripemd test/buildtest_rsa test/buildtest_safestack test/buildtest_seed test/buildtest_sha test/buildtest_srp test/buildtest_srtp test/buildtest_ssl test/buildtest_ssl2 test/buildtest_stack test/buildtest_symhacks test/buildtest_tls1 test/buildtest_ts test/buildtest_txt_db test/buildtest_ui test/buildtest_whrlpool test/buildtest_x509 test/buildtest_x509_vfy test/buildtest_x509v3 test/casttest test/chacha_internal_test test/cipher_overhead_test test/cipherbytes_test test/cipherlist_test test/clienthellotest test/constant_time_test test/crltest test/ct_test test/d2i_test test/danetest test/destest test/dhtest test/dsatest test/dtls_mtu_test test/dtlstest test/dtlsv1listentest test/ecdsatest test/ectest test/enginetest test/evp_extra_test test/evp_test test/exdatatest test/exptest test/gmdifftest test/hmactest test/ideatest test/igetest test/lhash_test test/md2test test/mdc2_internal_test test/mdc2test test/memleaktest test/modes_internal_test test/packettest test/pbelutest test/pkey_meth_test test/poly1305_internal_test test/randtest test/rc2test test/rc4test test/rc5test test/recordlentest test/rsa_test test/sanitytest test/secmemtest test/sha1test test/sha256t test/sha512t test/siphash_internal_test test/srptest test/ssl_test test/ssl_test_ctx_test test/sslapitest test/sslcorrupttest test/ssltest_old test/stack_test test/test_test test/threadstest test/tls13encryptiontest test/uitest test/v3ext test/v3nametest test/verify_extra_test test/wpackettest test/x509_dup_cert_test test/x509_internal_test test/x509_time_test test/x509aux apps/CA.pl apps/tsget tools/c_rehash util/shlib_wrap.sh rm -f test/buildtest_ssl.c test/buildtest_hmac.c test/buildtest_idea.c test/buildtest_camellia.c test/buildtest_tls1.c test/buildtest_symhacks.c test/buildtest_err.c test/buildtest_rc2.c test/buildtest_dtls1.c crypto/bn/x86_64-gf2m.s test/buildtest_x509.c crypto/bn/rsaz-x86_64.s test/buildtest_modes.c test/buildtest_md4.c test/buildtest_opensslv.c test/buildtest_rsa.c test/buildtest_pkcs7.c test/buildtest_kdf.c test/buildtest_rand.c test/buildtest_cast.c test/buildtest_rc4.c test/buildtest_ripemd.c test/buildtest_stack.c crypto/md5/md5-x86_64.s test/buildtest_conf_api.c test/buildtest_crypto.c test/buildtest_bn.c crypto/sha/sha1-mb-x86_64.s test/buildtest_txt_db.c crypto/aes/aesni-sha1-x86_64.s test/buildtest_evp.c test/buildtest_ecdh.c test/buildtest_async.c test/buildtest_sha.c crypto/sha/sha256-mb-x86_64.s test/buildtest_obj_mac.c test/buildtest_x509_vfy.c test/buildtest_aes.c test/buildtest_dsa.c test/buildtest_ct.c test/buildtest_mdc2.c test/buildtest_ocsp.c test/buildtest_dh.c crypto/bn/rsaz-avx2.s test/buildtest_blowfish.c test/buildtest_seed.c test/buildtest_ec.c crypto/aes/bsaes-x86_64.s crypto/poly1305/poly1305-x86_64.s crypto/sha/sha512-x86_64.s test/buildtest_ossl_typ.c crypto/bn/x86_64-mont5.s test/buildtest_conf.c crypto/rc4/rc4-x86_64.s crypto/sha/sha1-x86_64.s test/buildtest_objects.c test/buildtest_md5.c crypto/bn/x86_64-mont.s test/buildtest_ui.c test/buildtest_cmac.c engines/e_padlock-x86_64.s test/buildtest_buffer.c test/buildtest_e_os2.c test/buildtest_opensslconf.c test/buildtest_srp.c test/buildtest_ecdsa.c test/buildtest_bio.c test/buildtest_des.c crypto/aes/vpaes-x86_64.s test/buildtest_ebcdic.c crypto/modes/ghash-x86_64.s crypto/camellia/cmll-x86_64.s test/buildtest_lhash.c crypto/aes/aesni-x86_64.s test/buildtest_comp.c crypto/rc4/rc4-md5-x86_64.s crypto/aes/aesni-sha256-x86_64.s crypto/sha/sha256-x86_64.s test/buildtest_engine.c test/buildtest_srtp.c test/buildtest_ts.c test/buildtest_cms.c crypto/whrlpool/wp-x86_64.s crypto/aes/aes-x86_64.s crypto/chacha/chacha-x86_64.s test/buildtest_asn1.c crypto/ec/ecp_nistz256-x86_64.s test/buildtest_ssl2.c crypto/modes/aesni-gcm-x86_64.s test/buildtest_x509v3.c crypto/aes/aesni-mb-x86_64.s test/buildtest_safestack.c test/buildtest_pem.c test/buildtest_pkcs12.c test/buildtest_asn1t.c crypto/x86_64cpuid.s test/buildtest_pem2.c test/buildtest_whrlpool.c crypto/include/internal/bn_conf.h crypto/buildinf.h crypto/include/internal/dso_conf.h include/openssl/opensslconf.h rm -f `find . -name '*.d' -a \! -path "./.git/*"` rm -f `find . -name '*.o' -a \! -path "./.git/*"` rm -f core rm -f tags TAGS doc-nits rm -f test/.rnd rm -f openssl.pc libcrypto.pc libssl.pc rm -f `find . -type l -a \! -path "./.git/*"` rm -f ../openssl-1.1.1-dev.tar + make /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \ "-oMakefile" crypto/include/internal/bn_conf.h.in > crypto/include/internal/bn_conf.h /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \ "-oMakefile" crypto/include/internal/dso_conf.h.in > crypto/include/internal/dso_conf.h /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \ "-oMakefile" include/openssl/opensslconf.h.in > include/openssl/opensslconf.h make depend && make _all make[1]: Entering directory ` make[1]: Leaving directory ` make[1]: Entering directory ` CC="gcc" /usr/bin/perl crypto/aes/asm/aes-x86_64.pl elf crypto/aes/aes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes-x86_64.d.tmp -MT crypto/aes/aes-x86_64.o -c -o crypto/aes/aes-x86_64.o crypto/aes/aes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_cfb.d.tmp -MT crypto/aes/aes_cfb.o -c -o crypto/aes/aes_cfb.o crypto/aes/aes_cfb.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_ecb.d.tmp -MT crypto/aes/aes_ecb.o -c -o crypto/aes/aes_ecb.o crypto/aes/aes_ecb.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_ige.d.tmp -MT crypto/aes/aes_ige.o -c -o crypto/aes/aes_ige.o crypto/aes/aes_ige.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_misc.d.tmp -MT crypto/aes/aes_misc.o -c -o crypto/aes/aes_misc.o crypto/aes/aes_misc.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_ofb.d.tmp -MT crypto/aes/aes_ofb.o -c -o crypto/aes/aes_ofb.o crypto/aes/aes_ofb.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_wrap.d.tmp -MT crypto/aes/aes_wrap.o -c -o crypto/aes/aes_wrap.o crypto/aes/aes_wrap.c CC="gcc" /usr/bin/perl crypto/aes/asm/aesni-mb-x86_64.pl elf crypto/aes/aesni-mb-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aesni-mb-x86_64.d.tmp -MT crypto/aes/aesni-mb-x86_64.o -c -o crypto/aes/aesni-mb-x86_64.o crypto/aes/aesni-mb-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/aesni-sha1-x86_64.pl elf crypto/aes/aesni-sha1-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aesni-sha1-x86_64.d.tmp -MT crypto/aes/aesni-sha1-x86_64.o -c -o crypto/aes/aesni-sha1-x86_64.o crypto/aes/aesni-sha1-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/aesni-sha256-x86_64.pl elf crypto/aes/aesni-sha256-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aesni-sha256-x86_64.d.tmp -MT crypto/aes/aesni-sha256-x86_64.o -c -o crypto/aes/aesni-sha256-x86_64.o crypto/aes/aesni-sha256-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/aesni-x86_64.pl elf crypto/aes/aesni-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aesni-x86_64.d.tmp -MT crypto/aes/aesni-x86_64.o -c -o crypto/aes/aesni-x86_64.o crypto/aes/aesni-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/bsaes-x86_64.pl elf crypto/aes/bsaes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/bsaes-x86_64.d.tmp -MT crypto/aes/bsaes-x86_64.o -c -o crypto/aes/bsaes-x86_64.o crypto/aes/bsaes-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/vpaes-x86_64.pl elf crypto/aes/vpaes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/vpaes-x86_64.d.tmp -MT crypto/aes/vpaes-x86_64.o -c -o crypto/aes/vpaes-x86_64.o crypto/aes/vpaes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_bitstr.d.tmp -MT crypto/asn1/a_bitstr.o -c -o crypto/asn1/a_bitstr.o crypto/asn1/a_bitstr.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_d2i_fp.d.tmp -MT crypto/asn1/a_d2i_fp.o -c -o crypto/asn1/a_d2i_fp.o crypto/asn1/a_d2i_fp.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_digest.d.tmp -MT crypto/asn1/a_digest.o -c -o crypto/asn1/a_digest.o crypto/asn1/a_digest.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_dup.d.tmp -MT crypto/asn1/a_dup.o -c -o crypto/asn1/a_dup.o crypto/asn1/a_dup.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_gentm.d.tmp -MT crypto/asn1/a_gentm.o -c -o crypto/asn1/a_gentm.o crypto/asn1/a_gentm.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_i2d_fp.d.tmp -MT crypto/asn1/a_i2d_fp.o -c -o crypto/asn1/a_i2d_fp.o crypto/asn1/a_i2d_fp.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_int.d.tmp -MT crypto/asn1/a_int.o -c -o crypto/asn1/a_int.o crypto/asn1/a_int.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_mbstr.d.tmp -MT crypto/asn1/a_mbstr.o -c -o crypto/asn1/a_mbstr.o crypto/asn1/a_mbstr.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_object.d.tmp -MT crypto/asn1/a_object.o -c -o crypto/asn1/a_object.o crypto/asn1/a_object.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_octet.d.tmp -MT crypto/asn1/a_octet.o -c -o crypto/asn1/a_octet.o crypto/asn1/a_octet.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_print.d.tmp -MT crypto/asn1/a_print.o -c -o crypto/asn1/a_print.o crypto/asn1/a_print.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_sign.d.tmp -MT crypto/asn1/a_sign.o -c -o crypto/asn1/a_sign.o crypto/asn1/a_sign.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_strex.d.tmp -MT crypto/asn1/a_strex.o -c -o crypto/asn1/a_strex.o crypto/asn1/a_strex.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_strnid.d.tmp -MT crypto/asn1/a_strnid.o -c -o crypto/asn1/a_strnid.o crypto/asn1/a_strnid.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_time.d.tmp -MT crypto/asn1/a_time.o -c -o crypto/asn1/a_time.o crypto/asn1/a_time.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_type.d.tmp -MT crypto/asn1/a_type.o -c -o crypto/asn1/a_type.o crypto/asn1/a_type.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_utctm.d.tmp -MT crypto/asn1/a_utctm.o -c -o crypto/asn1/a_utctm.o crypto/asn1/a_utctm.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_utf8.d.tmp -MT crypto/asn1/a_utf8.o -c -o crypto/asn1/a_utf8.o crypto/asn1/a_utf8.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_verify.d.tmp -MT crypto/asn1/a_verify.o -c -o crypto/asn1/a_verify.o crypto/asn1/a_verify.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/ameth_lib.d.tmp -MT crypto/asn1/ameth_lib.o -c -o crypto/asn1/ameth_lib.o crypto/asn1/ameth_lib.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_err.d.tmp -MT crypto/asn1/asn1_err.o -c -o crypto/asn1/asn1_err.o crypto/asn1/asn1_err.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_gen.d.tmp -MT crypto/asn1/asn1_gen.o -c -o crypto/asn1/asn1_gen.o crypto/asn1/asn1_gen.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_item_list.d.tmp -MT crypto/asn1/asn1_item_list.o -c -o crypto/asn1/asn1_item_list.o crypto/asn1/asn1_item_list.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_lib.d.tmp -MT crypto/asn1/asn1_lib.o -c -o crypto/asn1/asn1_lib.o crypto/asn1/asn1_lib.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_par.d.tmp -MT crypto/asn1/asn1_par.o -c -o crypto/asn1/asn1_par.o crypto/asn1/asn1_par.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_mime.d.tmp -MT crypto/asn1/asn_mime.o -c -o crypto/asn1/asn_mime.o crypto/asn1/asn_mime.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_moid.d.tmp -MT crypto/asn1/asn_moid.o -c -o crypto/asn1/asn_moid.o crypto/asn1/asn_moid.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_mstbl.d.tmp -MT crypto/asn1/asn_mstbl.o -c -o crypto/asn1/asn_mstbl.o crypto/asn1/asn_mstbl.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_pack.d.tmp -MT crypto/asn1/asn_pack.o -c -o crypto/asn1/asn_pack.o crypto/asn1/asn_pack.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/bio_asn1.d.tmp -MT crypto/asn1/bio_asn1.o -c -o crypto/asn1/bio_asn1.o crypto/asn1/bio_asn1.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/bio_ndef.d.tmp -MT crypto/asn1/bio_ndef.o -c -o crypto/asn1/bio_ndef.o crypto/asn1/bio_ndef.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/d2i_pr.d.tmp -MT crypto/asn1/d2i_pr.o -c -o crypto/asn1/d2i_pr.o crypto/asn1/d2i_pr.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/d2i_pu.d.tmp -MT crypto/asn1/d2i_pu.o -c -o crypto/asn1/d2i_pu.o crypto/asn1/d2i_pu.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/evp_asn1.d.tmp -MT crypto/asn1/evp_asn1.o -c -o crypto/asn1/evp_asn1.o crypto/asn1/evp_asn1.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/f_int.d.tmp -MT crypto/asn1/f_int.o -c -o crypto/asn1/f_int.o crypto/asn1/f_int.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/f_string.d.tmp -MT crypto/asn1/f_string.o -c -o crypto/asn1/f_string.o crypto/asn1/f_string.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/i2d_pr.d.tmp -MT crypto/asn1/i2d_pr.o -c -o crypto/asn1/i2d_pr.o crypto/asn1/i2d_pr.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/i2d_pu.d.tmp -MT crypto/asn1/i2d_pu.o -c -o crypto/asn1/i2d_pu.o crypto/asn1/i2d_pu.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/n_pkey.d.tmp -MT crypto/asn1/n_pkey.o -c -o crypto/asn1/n_pkey.o crypto/asn1/n_pkey.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/nsseq.d.tmp -MT crypto/asn1/nsseq.o -c -o crypto/asn1/nsseq.o crypto/asn1/nsseq.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p5_pbe.d.tmp -MT crypto/asn1/p5_pbe.o -c -o crypto/asn1/p5_pbe.o crypto/asn1/p5_pbe.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p5_pbev2.d.tmp -MT crypto/asn1/p5_pbev2.o -c -o crypto/asn1/p5_pbev2.o crypto/asn1/p5_pbev2.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p5_scrypt.d.tmp -MT crypto/asn1/p5_scrypt.o -c -o crypto/asn1/p5_scrypt.o crypto/asn1/p5_scrypt.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p8_pkey.d.tmp -MT crypto/asn1/p8_pkey.o -c -o crypto/asn1/p8_pkey.o crypto/asn1/p8_pkey.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/t_bitst.d.tmp -MT crypto/asn1/t_bitst.o -c -o crypto/asn1/t_bitst.o crypto/asn1/t_bitst.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/t_pkey.d.tmp -MT crypto/asn1/t_pkey.o -c -o crypto/asn1/t_pkey.o crypto/asn1/t_pkey.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/t_spki.d.tmp -MT crypto/asn1/t_spki.o -c -o crypto/asn1/t_spki.o crypto/asn1/t_spki.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_dec.d.tmp -MT crypto/asn1/tasn_dec.o -c -o crypto/asn1/tasn_dec.o crypto/asn1/tasn_dec.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_enc.d.tmp -MT crypto/asn1/tasn_enc.o -c -o crypto/asn1/tasn_enc.o crypto/asn1/tasn_enc.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_fre.d.tmp -MT crypto/asn1/tasn_fre.o -c -o crypto/asn1/tasn_fre.o crypto/asn1/tasn_fre.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_new.d.tmp -MT crypto/asn1/tasn_new.o -c -o crypto/asn1/tasn_new.o crypto/asn1/tasn_new.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_prn.d.tmp -MT crypto/asn1/tasn_prn.o -c -o crypto/asn1/tasn_prn.o crypto/asn1/tasn_prn.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_scn.d.tmp -MT crypto/asn1/tasn_scn.o -c -o crypto/asn1/tasn_scn.o crypto/asn1/tasn_scn.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_typ.d.tmp -MT crypto/asn1/tasn_typ.o -c -o crypto/asn1/tasn_typ.o crypto/asn1/tasn_typ.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_utl.d.tmp -MT crypto/asn1/tasn_utl.o -c -o crypto/asn1/tasn_utl.o crypto/asn1/tasn_utl.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/x_algor.d.tmp -MT crypto/asn1/x_algor.o -c -o crypto/asn1/x_algor.o crypto/asn1/x_algor.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/x_bignum.d.tmp -MT crypto/asn1/x_bignum.o -c -o crypto/asn1/x_bignum.o crypto/asn1/x_bignum.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/x_info.d.tmp -MT crypto/asn1/x_info.o -c -o crypto/asn1/x_info.o crypto/asn1/x_info.c make[1]: *** No rule to make target `include/internal/asn1t.h', needed by `crypto/asn1/x_int64.o'. Stop. make[1]: Leaving directory ` make: *** [all] Error 2 Build step 'Execute shell' marked build as failure From osslsanity at gmail.com Fri Apr 21 15:13:39 2017 From: osslsanity at gmail.com (address not configured yet) Date: Fri, 21 Apr 2017 15:13:39 +0000 (UTC) Subject: [openssl-commits] Build failed in Jenkins: master_nossl3 #15 Message-ID: <291235911.4.1492787619623.JavaMail.jenkins@ip-172-31-11-199.us-west-2.compute.internal> See Changes: [levitte] In rand_cleanup_int(), don't go creating a default method [appro] Add support for MLOCK_ONFAULT to secure arena [appro] e_os2.h: Refine OSSL_SSIZE definition under UEFI environment [levitte] Make getting and setting the RAND default method thread safe [levitte] Don't try to clean up RAND from ENGINE [matt] Move ssl/t1_ext.c to ssl/statem/extensions_cust.c [matt] Move the extensions context codes into the public API [matt] Implement a new custom extensions API [matt] Add some tests for the new custom extensions API [matt] Add documentation for the new custom extensions API [matt] Various style tweaks based on feedback [matt] Prefix custom extension API callback types with SSL_ [matt] Create an ENDPOINT enum type for use internally [matt] Remove an out of date TODO [matt] Fix a test failure when configured without TLSv1.3 [levitte] Fix rand_lib.c for no-engine configuration [rsalz] Make default_method mostly compile-time [rsalz] Make default_method mostly compile-time (cont'd) [rsalz] Check for L [rsalz] Add missing =back [rsalz] Standardize on =over 4 and check for it. [rsalz] Use 'over 2' for bullet lists. [appro] appveyor.yml: split {build,test}_scripts to avoid exit code masking. [appro] asn1/x_long.c: remove conditions in inner loops and dependency on BN. [appro] rand/rand_lib.c: keep fixing no-engine configuration. [levitte] Publish our INT32, UINT32, INT64, UINT64 ASN.1 types and Z variants [levitte] Discourage the use of LONG and ZLONG, and deprecate it in the future [levitte] Act on deprecation of LONG and ZLONG, step 1 [levitte] Act on deprecation of LONG and ZLONG, step 2 [levitte] Act on deprecation of LONG and ZLONG, step 3 [levitte] Add a note in CHANGES [levitte] Fix util/mkdef.pl [rsalz] Allow an ALPN callback to pretend to not exist [rsalz] Make test marcos for true/false checks reliable for all integral types. [rsalz] Update rc2test to use the test infrastructure [matt] Update md2test to use the test infrastructure [matt] Update dtlstest to use the test infrastructure [matt] Reject decoding of an INT64 with a value >INT64_MAX [rsalz] Additional check to handle BAD SSL_write retry [rsalz] Remove ECDH(E) ciphers from SSLv3 [levitte] Fix int64 test of t_4bytes_4_neg [levitte] Fix x_int64.c [matt] Convert bad_dtls_test for the new test framework [matt] Convert asynciotest for the new test framework [matt] Convert clienthellotest for the new test framework [rsalz] Added error checking for OBJ_create [levitte] Convert exdata tests to new test framework [matt] Update sha256t and sha512t to use the test infrastructure [matt] Update sha1test to use the test infrastructure [matt] Update mdc2test to use the test infrastructure [matt] Update rc5test to use the test infrastructure [matt] Update rc4test to use the test infrastructure [matt] Convert RSA tests to new framework [matt] Updates after code review [matt] Remove seed completely... [matt] Convert blowfish tests to new framework [matt] Code review. Split tests up [matt] Remove unused variable. Thanks @pauli-oracle [matt] Update d2i_test to use the test infrastructure [matt] Update secmemtest and memeleaktest to use the test infrastructure. [matt] Update gmdifftime to use the test infrastructure [matt] Update ideatest to use the test infrastructure [matt] Update sanitytest to use the test infrastructure [levitte] In asn1_encode_test.c, add custom DER encoding checks [levitte] Fix definition of i2d_fn in asn1_encode_test.c [levitte] Add tests of custom negative 1 [matt] Update the internal chacha test to use the framework Reviewed-by: [levitte] Update threadstest to use the test framework [levitte] Remove fprintfs from the poly1305 internal test but keep the test number [levitte] test/testutil.c: Flush stdout when running tests [levitte] Update destest to use the test infrastructure [levitte] ecdhtest.c: move NAMED CURVES TESTS to evptests.txt [levitte] Remove stale code in ecdhtest.c [levitte] ecdhtest.c: move KATs to evptests.txt [levitte] Remove more stale code in ecdhtest.c [levitte] OpenSSL::Test: supported filtered command output [rsalz] Convert x509aux, cipherlist, casttest [rsalz] Address review feedback (to be squashed) [levitte] Add SSL tests for certificates with embedded SCTs [levitte] CT_POLICY_EVAL_CTX_set_time expects milliseconds, but given seconds [levitte] Correct travis.yml to only build extended tests when explicitely asked [rsalz] OCSP Updates: error codes and multiple certificates [levitte] Test printing of ASN.1 types INTxx et al [levitte] ASN.1: extend the possibilities to embed data instead of pointers [levitte] ASN.1: change INTxx, UINTxx and Z variants to be embedable [levitte] ASN.1: adapt our use of INTxx et al by making them explicitely embedded [levitte] Split the CAST tests up. [levitte] Update the internal siphash tests to use the framework's output. [rsalz] Guarantee single argument evaluation for test macros. Add test case that [appro] testlib/OpenSSL/Test.pm: keep default input private. [appro] asn1/a_int.c: remove code duplicate and optimize branches, [appro] asn1/a_int.c: simplify asn1_put_uint64. [appro] asn1/a_int.c: don't write result if returning error. [rsalz] Fix unit tests when no-bf configured [rsalz] WIP: Convert ui,v3ext,verify_extra_test [rsalz] ecdhtest.c: move co-factor ECDH KATs to evptests [rsalz] Remove ecdhtest.c [rsalz] Reformat evptests.txt [rsalz] Add -f -r flags to find-unused-errs [kurt] Switch libfuzzer to use trace-pc-guard [kurt] Make x509 and asn1 fuzzer reproducible [kurt] Document how to update the corpus. [kurt] Use a fixed time when fuzzing. [kurt] Optionally check for early data [rsalz] Catch EC_R_UNKNOWN_GROUP in check_unsupported() [rsalz] Convert afalgtest [rsalz] [squash]Build works with/out NO_ENGINE and NO_AFALG [appro] asn1/a_int.c: clean up asn1_get_int64. [rsalz] update docs because depth refers only to intermediate certs [levitte] Add external krb5 test support [levitte] Update external test README for running krb5 [levitte] Fix formatting of PYCA external test instructions [levitte] [extended tests] Enable krb5 tests in Travis [rsalz] Convert more tests [rsalz] Convert more tests to framework [rsalz] Update more tests [rsalz] Convert more tests [levitte] VMS: Fix the passing of cflags for things not being installed [levitte] VMS: Fix internals test programs [rsalz] Convert dhtest, dsatest, cipherbytes_test [rsalz] Document Next Protocol Negotiation APIs [rsalz] Fix minor compiler issues. [rsalz] Change 64-bit time type for windows [levitte] VMS: Copy DECC inclusion epi- and prologues to internals [levitte] VMS: remove name mangling guards around inclusion of internals [levitte] Fix test/recipes/95-test_external_krb5.t [rsalz] fix dh_test. [rsalz] Convert hmactest to new test framework [rsalz] explicitText encoding [rsalz] Ignore dups in X509_STORE_add_* [rsalz] Small primes are primes too. [appro] Add ARIA 32-bit implementation ------------------------------------------ Started by upstream project "master_basic" build number 16 originally caused by: Started by an SCM change Building in workspace > git rev-parse --is-inside-work-tree # timeout=10 Fetching changes from the remote Git repository > git config remote.origin.url https://github.com/openssl/openssl.git # timeout=10 Fetching upstream changes from https://github.com/openssl/openssl.git > git --version # timeout=10 > git fetch --tags --progress https://github.com/openssl/openssl.git +refs/heads/*:refs/remotes/origin/* > git rev-parse refs/remotes/origin/master^{commit} # timeout=10 > git rev-parse refs/remotes/origin/origin/master^{commit} # timeout=10 Checking out Revision dc99b885ded3cbc586d5ffec779f0e75a269bda3 (refs/remotes/origin/master) > git config core.sparsecheckout # timeout=10 > git checkout -f dc99b885ded3cbc586d5ffec779f0e75a269bda3 > git rev-list 5748e4dc3ab1cdde43ae6feecb106e3a41adcdf4 # timeout=10 [master_nossl3] $ /bin/sh -xe /tmp/jenkins3158114211665084574.sh + ./config no-shared no-ssl3 Operating system: x86_64-whatever-linux2 Configuring OpenSSL version 1.1.1-dev (0x10101000L) no-aria [default] OPENSSL_NO_ARIA (skip dir) no-asan [default] OPENSSL_NO_ASAN no-crypto-mdebug [default] OPENSSL_NO_CRYPTO_MDEBUG no-crypto-mdebug-backtrace [default] OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE no-dynamic-engine [forced] no-ec_nistp_64_gcc_128 [default] OPENSSL_NO_EC_NISTP_64_GCC_128 no-egd [default] OPENSSL_NO_EGD no-external-tests [default] OPENSSL_NO_EXTERNAL_TESTS no-fuzz-afl [default] OPENSSL_NO_FUZZ_AFL no-fuzz-libfuzzer [default] OPENSSL_NO_FUZZ_LIBFUZZER no-heartbeats [default] OPENSSL_NO_HEARTBEATS no-md2 [default] OPENSSL_NO_MD2 (skip dir) no-msan [default] OPENSSL_NO_MSAN no-rc5 [default] OPENSSL_NO_RC5 (skip dir) no-sctp [default] OPENSSL_NO_SCTP no-shared [option] no-ssl-trace [default] OPENSSL_NO_SSL_TRACE no-ssl3 [option] OPENSSL_NO_SSL3 no-ssl3-method [default] OPENSSL_NO_SSL3_METHOD no-tls13downgrade [default] OPENSSL_NO_TLS13DOWNGRADE no-tls1_3 [default] OPENSSL_NO_TLS1_3 no-ubsan [default] OPENSSL_NO_UBSAN no-unit-test [default] OPENSSL_NO_UNIT_TEST no-weak-ssl-ciphers [default] OPENSSL_NO_WEAK_SSL_CIPHERS no-zlib [default] no-zlib-dynamic [default] Configuring for linux-x86_64 PERL =/usr/bin/perl PERLVERSION =5.18.2 for x86_64-linux-gnu-thread-multi HASHBANGPERL =/usr/bin/env perl CC =gcc CFLAG =-Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack CXX =g++ CXXFLAG =-Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack DEFINES =DSO_DLFCN HAVE_DLFCN_H NDEBUG OPENSSL_THREADS OPENSSL_NO_DYNAMIC_ENGINE OPENSSL_PIC OPENSSL_IA32_SSE2 OPENSSL_BN_ASM_MONT OPENSSL_BN_ASM_MONT5 OPENSSL_BN_ASM_GF2m SHA1_ASM SHA256_ASM SHA512_ASM RC4_ASM MD5_ASM AES_ASM VPAES_ASM BSAES_ASM GHASH_ASM ECP_NISTZ256_ASM PADLOCK_ASM POLY1305_ASM EX_LIBS =-ldl + make depend + make clean rm -f rm -f rm -f libcrypto.a libssl.a rm -f *.map rm -f apps/openssl fuzz/asn1-test fuzz/asn1parse-test fuzz/bignum-test fuzz/bndiv-test fuzz/client-test fuzz/cms-test fuzz/conf-test fuzz/crl-test fuzz/ct-test fuzz/server-test fuzz/x509-test test/aborttest test/afalgtest test/asn1_encode_test test/asn1_internal_test test/asynciotest test/asynctest test/bad_dtls_test test/bftest test/bio_enc_test test/bioprinttest test/bntest test/buildtest_aes test/buildtest_asn1 test/buildtest_asn1t test/buildtest_async test/buildtest_bio test/buildtest_blowfish test/buildtest_bn test/buildtest_buffer test/buildtest_camellia test/buildtest_cast test/buildtest_cmac test/buildtest_cms test/buildtest_comp test/buildtest_conf test/buildtest_conf_api test/buildtest_crypto test/buildtest_ct test/buildtest_des test/buildtest_dh test/buildtest_dsa test/buildtest_dtls1 test/buildtest_e_os2 test/buildtest_ebcdic test/buildtest_ec test/buildtest_ecdh test/buildtest_ecdsa test/buildtest_engine test/buildtest_err test/buildtest_evp test/buildtest_hmac test/buildtest_idea test/buildtest_kdf test/buildtest_lhash test/buildtest_md4 test/buildtest_md5 test/buildtest_mdc2 test/buildtest_modes test/buildtest_obj_mac test/buildtest_objects test/buildtest_ocsp test/buildtest_opensslconf test/buildtest_opensslv test/buildtest_ossl_typ test/buildtest_pem test/buildtest_pem2 test/buildtest_pkcs12 test/buildtest_pkcs7 test/buildtest_rand test/buildtest_rc2 test/buildtest_rc4 test/buildtest_ripemd test/buildtest_rsa test/buildtest_safestack test/buildtest_seed test/buildtest_sha test/buildtest_srp test/buildtest_srtp test/buildtest_ssl test/buildtest_ssl2 test/buildtest_stack test/buildtest_symhacks test/buildtest_tls1 test/buildtest_ts test/buildtest_txt_db test/buildtest_ui test/buildtest_whrlpool test/buildtest_x509 test/buildtest_x509_vfy test/buildtest_x509v3 test/casttest test/chacha_internal_test test/cipher_overhead_test test/cipherbytes_test test/cipherlist_test test/clienthellotest test/constant_time_test test/crltest test/ct_test test/d2i_test test/danetest test/destest test/dhtest test/dsatest test/dtls_mtu_test test/dtlstest test/dtlsv1listentest test/ecdsatest test/ectest test/enginetest test/evp_extra_test test/evp_test test/exdatatest test/exptest test/gmdifftest test/hmactest test/ideatest test/igetest test/lhash_test test/md2test test/mdc2_internal_test test/mdc2test test/memleaktest test/modes_internal_test test/packettest test/pbelutest test/pkey_meth_test test/poly1305_internal_test test/randtest test/rc2test test/rc4test test/rc5test test/recordlentest test/rsa_test test/sanitytest test/secmemtest test/sha1test test/sha256t test/sha512t test/siphash_internal_test test/srptest test/ssl_test test/ssl_test_ctx_test test/sslapitest test/sslcorrupttest test/ssltest_old test/stack_test test/test_test test/threadstest test/tls13encryptiontest test/uitest test/v3ext test/v3nametest test/verify_extra_test test/wpackettest test/x509_dup_cert_test test/x509_internal_test test/x509_time_test test/x509aux apps/CA.pl apps/tsget tools/c_rehash util/shlib_wrap.sh rm -f crypto/aes/aes-x86_64.s test/buildtest_ts.c crypto/aes/bsaes-x86_64.s test/buildtest_asn1.c test/buildtest_md5.c test/buildtest_whrlpool.c test/buildtest_camellia.c test/buildtest_ui.c test/buildtest_dtls1.c test/buildtest_objects.c test/buildtest_symhacks.c test/buildtest_pkcs7.c test/buildtest_buffer.c crypto/modes/ghash-x86_64.s test/buildtest_async.c crypto/sha/sha1-mb-x86_64.s test/buildtest_e_os2.c crypto/rc4/rc4-md5-x86_64.s crypto/sha/sha256-mb-x86_64.s crypto/aes/aesni-x86_64.s crypto/bn/rsaz-x86_64.s test/buildtest_crypto.c test/buildtest_pkcs12.c test/buildtest_hmac.c crypto/bn/rsaz-avx2.s test/buildtest_pem2.c test/buildtest_obj_mac.c test/buildtest_srp.c test/buildtest_ec.c test/buildtest_tls1.c crypto/bn/x86_64-mont.s test/buildtest_rc2.c test/buildtest_opensslv.c test/buildtest_x509_vfy.c crypto/aes/aesni-mb-x86_64.s test/buildtest_ssl2.c test/buildtest_kdf.c crypto/modes/aesni-gcm-x86_64.s test/buildtest_cmac.c crypto/camellia/cmll-x86_64.s test/buildtest_opensslconf.c crypto/aes/aesni-sha256-x86_64.s test/buildtest_x509.c test/buildtest_err.c test/buildtest_cms.c test/buildtest_txt_db.c test/buildtest_ecdh.c test/buildtest_ocsp.c test/buildtest_dsa.c engines/e_padlock-x86_64.s crypto/whrlpool/wp-x86_64.s test/buildtest_md4.c test/buildtest_rsa.c crypto/bn/x86_64-gf2m.s test/buildtest_conf.c test/buildtest_ecdsa.c test/buildtest_aes.c test/buildtest_des.c test/buildtest_rc4.c crypto/md5/md5-x86_64.s test/buildtest_evp.c crypto/rc4/rc4-x86_64.s crypto/sha/sha256-x86_64.s test/buildtest_modes.c test/buildtest_pem.c test/buildtest_stack.c test/buildtest_asn1t.c crypto/ec/ecp_nistz256-x86_64.s test/buildtest_idea.c test/buildtest_sha.c test/buildtest_srtp.c test/buildtest_seed.c test/buildtest_rand.c test/buildtest_comp.c crypto/poly1305/poly1305-x86_64.s crypto/aes/aesni-sha1-x86_64.s crypto/aes/vpaes-x86_64.s test/buildtest_bn.c test/buildtest_ssl.c crypto/chacha/chacha-x86_64.s test/buildtest_blowfish.c test/buildtest_dh.c crypto/x86_64cpuid.s crypto/sha/sha1-x86_64.s test/buildtest_cast.c test/buildtest_mdc2.c test/buildtest_bio.c test/buildtest_x509v3.c test/buildtest_ct.c test/buildtest_conf_api.c test/buildtest_ossl_typ.c test/buildtest_lhash.c test/buildtest_safestack.c test/buildtest_engine.c test/buildtest_ripemd.c crypto/sha/sha512-x86_64.s crypto/bn/x86_64-mont5.s test/buildtest_ebcdic.c crypto/include/internal/bn_conf.h crypto/include/internal/dso_conf.h include/openssl/opensslconf.h crypto/buildinf.h rm -f `find . -name '*.d' -a \! -path "./.git/*"` rm -f `find . -name '*.o' -a \! -path "./.git/*"` rm -f core rm -f tags TAGS doc-nits rm -f test/.rnd rm -f openssl.pc libcrypto.pc libssl.pc rm -f `find . -type l -a \! -path "./.git/*"` rm -f ../openssl-1.1.1-dev.tar + make /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \ "-oMakefile" crypto/include/internal/bn_conf.h.in > crypto/include/internal/bn_conf.h /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \ "-oMakefile" crypto/include/internal/dso_conf.h.in > crypto/include/internal/dso_conf.h /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \ "-oMakefile" include/openssl/opensslconf.h.in > include/openssl/opensslconf.h make depend && make _all make[1]: Entering directory ` make[1]: Leaving directory ` make[1]: Entering directory ` CC="gcc" /usr/bin/perl crypto/aes/asm/aes-x86_64.pl elf crypto/aes/aes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes-x86_64.d.tmp -MT crypto/aes/aes-x86_64.o -c -o crypto/aes/aes-x86_64.o crypto/aes/aes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_cfb.d.tmp -MT crypto/aes/aes_cfb.o -c -o crypto/aes/aes_cfb.o crypto/aes/aes_cfb.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_ecb.d.tmp -MT crypto/aes/aes_ecb.o -c -o crypto/aes/aes_ecb.o crypto/aes/aes_ecb.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_ige.d.tmp -MT crypto/aes/aes_ige.o -c -o crypto/aes/aes_ige.o crypto/aes/aes_ige.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_misc.d.tmp -MT crypto/aes/aes_misc.o -c -o crypto/aes/aes_misc.o crypto/aes/aes_misc.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_ofb.d.tmp -MT crypto/aes/aes_ofb.o -c -o crypto/aes/aes_ofb.o crypto/aes/aes_ofb.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_wrap.d.tmp -MT crypto/aes/aes_wrap.o -c -o crypto/aes/aes_wrap.o crypto/aes/aes_wrap.c CC="gcc" /usr/bin/perl crypto/aes/asm/aesni-mb-x86_64.pl elf crypto/aes/aesni-mb-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aesni-mb-x86_64.d.tmp -MT crypto/aes/aesni-mb-x86_64.o -c -o crypto/aes/aesni-mb-x86_64.o crypto/aes/aesni-mb-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/aesni-sha1-x86_64.pl elf crypto/aes/aesni-sha1-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aesni-sha1-x86_64.d.tmp -MT crypto/aes/aesni-sha1-x86_64.o -c -o crypto/aes/aesni-sha1-x86_64.o crypto/aes/aesni-sha1-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/aesni-sha256-x86_64.pl elf crypto/aes/aesni-sha256-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aesni-sha256-x86_64.d.tmp -MT crypto/aes/aesni-sha256-x86_64.o -c -o crypto/aes/aesni-sha256-x86_64.o crypto/aes/aesni-sha256-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/aesni-x86_64.pl elf crypto/aes/aesni-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aesni-x86_64.d.tmp -MT crypto/aes/aesni-x86_64.o -c -o crypto/aes/aesni-x86_64.o crypto/aes/aesni-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/bsaes-x86_64.pl elf crypto/aes/bsaes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/bsaes-x86_64.d.tmp -MT crypto/aes/bsaes-x86_64.o -c -o crypto/aes/bsaes-x86_64.o crypto/aes/bsaes-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/vpaes-x86_64.pl elf crypto/aes/vpaes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/vpaes-x86_64.d.tmp -MT crypto/aes/vpaes-x86_64.o -c -o crypto/aes/vpaes-x86_64.o crypto/aes/vpaes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_bitstr.d.tmp -MT crypto/asn1/a_bitstr.o -c -o crypto/asn1/a_bitstr.o crypto/asn1/a_bitstr.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_d2i_fp.d.tmp -MT crypto/asn1/a_d2i_fp.o -c -o crypto/asn1/a_d2i_fp.o crypto/asn1/a_d2i_fp.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_digest.d.tmp -MT crypto/asn1/a_digest.o -c -o crypto/asn1/a_digest.o crypto/asn1/a_digest.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_dup.d.tmp -MT crypto/asn1/a_dup.o -c -o crypto/asn1/a_dup.o crypto/asn1/a_dup.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_gentm.d.tmp -MT crypto/asn1/a_gentm.o -c -o crypto/asn1/a_gentm.o crypto/asn1/a_gentm.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_i2d_fp.d.tmp -MT crypto/asn1/a_i2d_fp.o -c -o crypto/asn1/a_i2d_fp.o crypto/asn1/a_i2d_fp.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_int.d.tmp -MT crypto/asn1/a_int.o -c -o crypto/asn1/a_int.o crypto/asn1/a_int.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_mbstr.d.tmp -MT crypto/asn1/a_mbstr.o -c -o crypto/asn1/a_mbstr.o crypto/asn1/a_mbstr.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_object.d.tmp -MT crypto/asn1/a_object.o -c -o crypto/asn1/a_object.o crypto/asn1/a_object.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_octet.d.tmp -MT crypto/asn1/a_octet.o -c -o crypto/asn1/a_octet.o crypto/asn1/a_octet.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_print.d.tmp -MT crypto/asn1/a_print.o -c -o crypto/asn1/a_print.o crypto/asn1/a_print.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_sign.d.tmp -MT crypto/asn1/a_sign.o -c -o crypto/asn1/a_sign.o crypto/asn1/a_sign.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_strex.d.tmp -MT crypto/asn1/a_strex.o -c -o crypto/asn1/a_strex.o crypto/asn1/a_strex.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_strnid.d.tmp -MT crypto/asn1/a_strnid.o -c -o crypto/asn1/a_strnid.o crypto/asn1/a_strnid.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_time.d.tmp -MT crypto/asn1/a_time.o -c -o crypto/asn1/a_time.o crypto/asn1/a_time.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_type.d.tmp -MT crypto/asn1/a_type.o -c -o crypto/asn1/a_type.o crypto/asn1/a_type.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_utctm.d.tmp -MT crypto/asn1/a_utctm.o -c -o crypto/asn1/a_utctm.o crypto/asn1/a_utctm.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_utf8.d.tmp -MT crypto/asn1/a_utf8.o -c -o crypto/asn1/a_utf8.o crypto/asn1/a_utf8.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_verify.d.tmp -MT crypto/asn1/a_verify.o -c -o crypto/asn1/a_verify.o crypto/asn1/a_verify.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/ameth_lib.d.tmp -MT crypto/asn1/ameth_lib.o -c -o crypto/asn1/ameth_lib.o crypto/asn1/ameth_lib.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_err.d.tmp -MT crypto/asn1/asn1_err.o -c -o crypto/asn1/asn1_err.o crypto/asn1/asn1_err.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_gen.d.tmp -MT crypto/asn1/asn1_gen.o -c -o crypto/asn1/asn1_gen.o crypto/asn1/asn1_gen.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_item_list.d.tmp -MT crypto/asn1/asn1_item_list.o -c -o crypto/asn1/asn1_item_list.o crypto/asn1/asn1_item_list.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_lib.d.tmp -MT crypto/asn1/asn1_lib.o -c -o crypto/asn1/asn1_lib.o crypto/asn1/asn1_lib.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_par.d.tmp -MT crypto/asn1/asn1_par.o -c -o crypto/asn1/asn1_par.o crypto/asn1/asn1_par.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_mime.d.tmp -MT crypto/asn1/asn_mime.o -c -o crypto/asn1/asn_mime.o crypto/asn1/asn_mime.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_moid.d.tmp -MT crypto/asn1/asn_moid.o -c -o crypto/asn1/asn_moid.o crypto/asn1/asn_moid.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_mstbl.d.tmp -MT crypto/asn1/asn_mstbl.o -c -o crypto/asn1/asn_mstbl.o crypto/asn1/asn_mstbl.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_pack.d.tmp -MT crypto/asn1/asn_pack.o -c -o crypto/asn1/asn_pack.o crypto/asn1/asn_pack.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/bio_asn1.d.tmp -MT crypto/asn1/bio_asn1.o -c -o crypto/asn1/bio_asn1.o crypto/asn1/bio_asn1.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/bio_ndef.d.tmp -MT crypto/asn1/bio_ndef.o -c -o crypto/asn1/bio_ndef.o crypto/asn1/bio_ndef.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/d2i_pr.d.tmp -MT crypto/asn1/d2i_pr.o -c -o crypto/asn1/d2i_pr.o crypto/asn1/d2i_pr.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/d2i_pu.d.tmp -MT crypto/asn1/d2i_pu.o -c -o crypto/asn1/d2i_pu.o crypto/asn1/d2i_pu.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/evp_asn1.d.tmp -MT crypto/asn1/evp_asn1.o -c -o crypto/asn1/evp_asn1.o crypto/asn1/evp_asn1.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/f_int.d.tmp -MT crypto/asn1/f_int.o -c -o crypto/asn1/f_int.o crypto/asn1/f_int.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/f_string.d.tmp -MT crypto/asn1/f_string.o -c -o crypto/asn1/f_string.o crypto/asn1/f_string.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/i2d_pr.d.tmp -MT crypto/asn1/i2d_pr.o -c -o crypto/asn1/i2d_pr.o crypto/asn1/i2d_pr.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/i2d_pu.d.tmp -MT crypto/asn1/i2d_pu.o -c -o crypto/asn1/i2d_pu.o crypto/asn1/i2d_pu.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/n_pkey.d.tmp -MT crypto/asn1/n_pkey.o -c -o crypto/asn1/n_pkey.o crypto/asn1/n_pkey.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/nsseq.d.tmp -MT crypto/asn1/nsseq.o -c -o crypto/asn1/nsseq.o crypto/asn1/nsseq.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p5_pbe.d.tmp -MT crypto/asn1/p5_pbe.o -c -o crypto/asn1/p5_pbe.o crypto/asn1/p5_pbe.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p5_pbev2.d.tmp -MT crypto/asn1/p5_pbev2.o -c -o crypto/asn1/p5_pbev2.o crypto/asn1/p5_pbev2.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p5_scrypt.d.tmp -MT crypto/asn1/p5_scrypt.o -c -o crypto/asn1/p5_scrypt.o crypto/asn1/p5_scrypt.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p8_pkey.d.tmp -MT crypto/asn1/p8_pkey.o -c -o crypto/asn1/p8_pkey.o crypto/asn1/p8_pkey.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/t_bitst.d.tmp -MT crypto/asn1/t_bitst.o -c -o crypto/asn1/t_bitst.o crypto/asn1/t_bitst.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/t_pkey.d.tmp -MT crypto/asn1/t_pkey.o -c -o crypto/asn1/t_pkey.o crypto/asn1/t_pkey.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/t_spki.d.tmp -MT crypto/asn1/t_spki.o -c -o crypto/asn1/t_spki.o crypto/asn1/t_spki.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_dec.d.tmp -MT crypto/asn1/tasn_dec.o -c -o crypto/asn1/tasn_dec.o crypto/asn1/tasn_dec.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_enc.d.tmp -MT crypto/asn1/tasn_enc.o -c -o crypto/asn1/tasn_enc.o crypto/asn1/tasn_enc.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_fre.d.tmp -MT crypto/asn1/tasn_fre.o -c -o crypto/asn1/tasn_fre.o crypto/asn1/tasn_fre.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_new.d.tmp -MT crypto/asn1/tasn_new.o -c -o crypto/asn1/tasn_new.o crypto/asn1/tasn_new.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_prn.d.tmp -MT crypto/asn1/tasn_prn.o -c -o crypto/asn1/tasn_prn.o crypto/asn1/tasn_prn.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_scn.d.tmp -MT crypto/asn1/tasn_scn.o -c -o crypto/asn1/tasn_scn.o crypto/asn1/tasn_scn.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_typ.d.tmp -MT crypto/asn1/tasn_typ.o -c -o crypto/asn1/tasn_typ.o crypto/asn1/tasn_typ.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_utl.d.tmp -MT crypto/asn1/tasn_utl.o -c -o crypto/asn1/tasn_utl.o crypto/asn1/tasn_utl.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/x_algor.d.tmp -MT crypto/asn1/x_algor.o -c -o crypto/asn1/x_algor.o crypto/asn1/x_algor.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/x_bignum.d.tmp -MT crypto/asn1/x_bignum.o -c -o crypto/asn1/x_bignum.o crypto/asn1/x_bignum.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/x_info.d.tmp -MT crypto/asn1/x_info.o -c -o crypto/asn1/x_info.o crypto/asn1/x_info.c make[1]: *** No rule to make target `include/internal/asn1t.h', needed by `crypto/asn1/x_int64.o'. Stop. make[1]: Leaving directory ` make: *** [all] Error 2 Build step 'Execute shell' marked build as failure From osslsanity at gmail.com Fri Apr 21 15:14:39 2017 From: osslsanity at gmail.com (address not configured yet) Date: Fri, 21 Apr 2017 15:14:39 +0000 (UTC) Subject: [openssl-commits] Build failed in Jenkins: master_noec #15 Message-ID: <720416997.5.1492787680128.JavaMail.jenkins@ip-172-31-11-199.us-west-2.compute.internal> See Changes: [levitte] In rand_cleanup_int(), don't go creating a default method [appro] Add support for MLOCK_ONFAULT to secure arena [appro] e_os2.h: Refine OSSL_SSIZE definition under UEFI environment [levitte] Make getting and setting the RAND default method thread safe [levitte] Don't try to clean up RAND from ENGINE [matt] Move ssl/t1_ext.c to ssl/statem/extensions_cust.c [matt] Move the extensions context codes into the public API [matt] Implement a new custom extensions API [matt] Add some tests for the new custom extensions API [matt] Add documentation for the new custom extensions API [matt] Various style tweaks based on feedback [matt] Prefix custom extension API callback types with SSL_ [matt] Create an ENDPOINT enum type for use internally [matt] Remove an out of date TODO [matt] Fix a test failure when configured without TLSv1.3 [levitte] Fix rand_lib.c for no-engine configuration [rsalz] Make default_method mostly compile-time [rsalz] Make default_method mostly compile-time (cont'd) [rsalz] Check for L [rsalz] Add missing =back [rsalz] Standardize on =over 4 and check for it. [rsalz] Use 'over 2' for bullet lists. [appro] appveyor.yml: split {build,test}_scripts to avoid exit code masking. [appro] asn1/x_long.c: remove conditions in inner loops and dependency on BN. [appro] rand/rand_lib.c: keep fixing no-engine configuration. [levitte] Publish our INT32, UINT32, INT64, UINT64 ASN.1 types and Z variants [levitte] Discourage the use of LONG and ZLONG, and deprecate it in the future [levitte] Act on deprecation of LONG and ZLONG, step 1 [levitte] Act on deprecation of LONG and ZLONG, step 2 [levitte] Act on deprecation of LONG and ZLONG, step 3 [levitte] Add a note in CHANGES [levitte] Fix util/mkdef.pl [rsalz] Allow an ALPN callback to pretend to not exist [rsalz] Make test marcos for true/false checks reliable for all integral types. [rsalz] Update rc2test to use the test infrastructure [matt] Update md2test to use the test infrastructure [matt] Update dtlstest to use the test infrastructure [matt] Reject decoding of an INT64 with a value >INT64_MAX [rsalz] Additional check to handle BAD SSL_write retry [rsalz] Remove ECDH(E) ciphers from SSLv3 [levitte] Fix int64 test of t_4bytes_4_neg [levitte] Fix x_int64.c [matt] Convert bad_dtls_test for the new test framework [matt] Convert asynciotest for the new test framework [matt] Convert clienthellotest for the new test framework [rsalz] Added error checking for OBJ_create [levitte] Convert exdata tests to new test framework [matt] Update sha256t and sha512t to use the test infrastructure [matt] Update sha1test to use the test infrastructure [matt] Update mdc2test to use the test infrastructure [matt] Update rc5test to use the test infrastructure [matt] Update rc4test to use the test infrastructure [matt] Convert RSA tests to new framework [matt] Updates after code review [matt] Remove seed completely... [matt] Convert blowfish tests to new framework [matt] Code review. Split tests up [matt] Remove unused variable. Thanks @pauli-oracle [matt] Update d2i_test to use the test infrastructure [matt] Update secmemtest and memeleaktest to use the test infrastructure. [matt] Update gmdifftime to use the test infrastructure [matt] Update ideatest to use the test infrastructure [matt] Update sanitytest to use the test infrastructure [levitte] In asn1_encode_test.c, add custom DER encoding checks [levitte] Fix definition of i2d_fn in asn1_encode_test.c [levitte] Add tests of custom negative 1 [matt] Update the internal chacha test to use the framework Reviewed-by: [levitte] Update threadstest to use the test framework [levitte] Remove fprintfs from the poly1305 internal test but keep the test number [levitte] test/testutil.c: Flush stdout when running tests [levitte] Update destest to use the test infrastructure [levitte] ecdhtest.c: move NAMED CURVES TESTS to evptests.txt [levitte] Remove stale code in ecdhtest.c [levitte] ecdhtest.c: move KATs to evptests.txt [levitte] Remove more stale code in ecdhtest.c [levitte] OpenSSL::Test: supported filtered command output [rsalz] Convert x509aux, cipherlist, casttest [rsalz] Address review feedback (to be squashed) [levitte] Add SSL tests for certificates with embedded SCTs [levitte] CT_POLICY_EVAL_CTX_set_time expects milliseconds, but given seconds [levitte] Correct travis.yml to only build extended tests when explicitely asked [rsalz] OCSP Updates: error codes and multiple certificates [levitte] Test printing of ASN.1 types INTxx et al [levitte] ASN.1: extend the possibilities to embed data instead of pointers [levitte] ASN.1: change INTxx, UINTxx and Z variants to be embedable [levitte] ASN.1: adapt our use of INTxx et al by making them explicitely embedded [levitte] Split the CAST tests up. [levitte] Update the internal siphash tests to use the framework's output. [rsalz] Guarantee single argument evaluation for test macros. Add test case that [appro] testlib/OpenSSL/Test.pm: keep default input private. [appro] asn1/a_int.c: remove code duplicate and optimize branches, [appro] asn1/a_int.c: simplify asn1_put_uint64. [appro] asn1/a_int.c: don't write result if returning error. [rsalz] Fix unit tests when no-bf configured [rsalz] WIP: Convert ui,v3ext,verify_extra_test [rsalz] ecdhtest.c: move co-factor ECDH KATs to evptests [rsalz] Remove ecdhtest.c [rsalz] Reformat evptests.txt [rsalz] Add -f -r flags to find-unused-errs [kurt] Switch libfuzzer to use trace-pc-guard [kurt] Make x509 and asn1 fuzzer reproducible [kurt] Document how to update the corpus. [kurt] Use a fixed time when fuzzing. [kurt] Optionally check for early data [rsalz] Catch EC_R_UNKNOWN_GROUP in check_unsupported() [rsalz] Convert afalgtest [rsalz] [squash]Build works with/out NO_ENGINE and NO_AFALG [appro] asn1/a_int.c: clean up asn1_get_int64. [rsalz] update docs because depth refers only to intermediate certs [levitte] Add external krb5 test support [levitte] Update external test README for running krb5 [levitte] Fix formatting of PYCA external test instructions [levitte] [extended tests] Enable krb5 tests in Travis [rsalz] Convert more tests [rsalz] Convert more tests to framework [rsalz] Update more tests [rsalz] Convert more tests [levitte] VMS: Fix the passing of cflags for things not being installed [levitte] VMS: Fix internals test programs [rsalz] Convert dhtest, dsatest, cipherbytes_test [rsalz] Document Next Protocol Negotiation APIs [rsalz] Fix minor compiler issues. [rsalz] Change 64-bit time type for windows [levitte] VMS: Copy DECC inclusion epi- and prologues to internals [levitte] VMS: remove name mangling guards around inclusion of internals [levitte] Fix test/recipes/95-test_external_krb5.t [rsalz] fix dh_test. [rsalz] Convert hmactest to new test framework [rsalz] explicitText encoding [rsalz] Ignore dups in X509_STORE_add_* [rsalz] Small primes are primes too. [appro] Add ARIA 32-bit implementation ------------------------------------------ Started by upstream project "master_basic" build number 16 originally caused by: Started by an SCM change Building in workspace > git rev-parse --is-inside-work-tree # timeout=10 Fetching changes from the remote Git repository > git config remote.origin.url https://github.com/openssl/openssl.git # timeout=10 Fetching upstream changes from https://github.com/openssl/openssl.git > git --version # timeout=10 > git fetch --tags --progress https://github.com/openssl/openssl.git +refs/heads/*:refs/remotes/origin/* > git rev-parse refs/remotes/origin/master^{commit} # timeout=10 > git rev-parse refs/remotes/origin/origin/master^{commit} # timeout=10 Checking out Revision dc99b885ded3cbc586d5ffec779f0e75a269bda3 (refs/remotes/origin/master) > git config core.sparsecheckout # timeout=10 > git checkout -f dc99b885ded3cbc586d5ffec779f0e75a269bda3 > git rev-list 5748e4dc3ab1cdde43ae6feecb106e3a41adcdf4 # timeout=10 [master_noec] $ /bin/sh -xe /tmp/jenkins73549098521170340.sh + ./config no-shared no-ec Operating system: x86_64-whatever-linux2 Configuring OpenSSL version 1.1.1-dev (0x10101000L) no-aria [default] OPENSSL_NO_ARIA (skip dir) no-asan [default] OPENSSL_NO_ASAN no-crypto-mdebug [default] OPENSSL_NO_CRYPTO_MDEBUG no-crypto-mdebug-backtrace [default] OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE no-dynamic-engine [forced] no-ec [option] OPENSSL_NO_EC (skip dir) no-ec_nistp_64_gcc_128 [default] OPENSSL_NO_EC_NISTP_64_GCC_128 no-ecdh [forced] OPENSSL_NO_ECDH no-ecdsa [forced] OPENSSL_NO_ECDSA no-egd [default] OPENSSL_NO_EGD no-external-tests [default] OPENSSL_NO_EXTERNAL_TESTS no-fuzz-afl [default] OPENSSL_NO_FUZZ_AFL no-fuzz-libfuzzer [default] OPENSSL_NO_FUZZ_LIBFUZZER no-heartbeats [default] OPENSSL_NO_HEARTBEATS no-md2 [default] OPENSSL_NO_MD2 (skip dir) no-msan [default] OPENSSL_NO_MSAN no-rc5 [default] OPENSSL_NO_RC5 (skip dir) no-sctp [default] OPENSSL_NO_SCTP no-shared [option] no-ssl-trace [default] OPENSSL_NO_SSL_TRACE no-ssl3 [default] OPENSSL_NO_SSL3 no-ssl3-method [default] OPENSSL_NO_SSL3_METHOD no-tls13downgrade [default] OPENSSL_NO_TLS13DOWNGRADE no-tls1_3 [default] OPENSSL_NO_TLS1_3 no-ubsan [default] OPENSSL_NO_UBSAN no-unit-test [default] OPENSSL_NO_UNIT_TEST no-weak-ssl-ciphers [default] OPENSSL_NO_WEAK_SSL_CIPHERS no-zlib [default] no-zlib-dynamic [default] Configuring for linux-x86_64 PERL =/usr/bin/perl PERLVERSION =5.18.2 for x86_64-linux-gnu-thread-multi HASHBANGPERL =/usr/bin/env perl CC =gcc CFLAG =-Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack CXX =g++ CXXFLAG =-Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack DEFINES =DSO_DLFCN HAVE_DLFCN_H NDEBUG OPENSSL_THREADS OPENSSL_NO_DYNAMIC_ENGINE OPENSSL_PIC OPENSSL_IA32_SSE2 OPENSSL_BN_ASM_MONT OPENSSL_BN_ASM_MONT5 OPENSSL_BN_ASM_GF2m SHA1_ASM SHA256_ASM SHA512_ASM RC4_ASM MD5_ASM AES_ASM VPAES_ASM BSAES_ASM GHASH_ASM ECP_NISTZ256_ASM PADLOCK_ASM POLY1305_ASM EX_LIBS =-ldl + make depend + make clean rm -f rm -f rm -f libcrypto.a libssl.a rm -f *.map rm -f apps/openssl fuzz/asn1-test fuzz/asn1parse-test fuzz/bignum-test fuzz/bndiv-test fuzz/client-test fuzz/cms-test fuzz/conf-test fuzz/crl-test fuzz/ct-test fuzz/server-test fuzz/x509-test test/aborttest test/afalgtest test/asn1_encode_test test/asn1_internal_test test/asynciotest test/asynctest test/bad_dtls_test test/bftest test/bio_enc_test test/bioprinttest test/bntest test/buildtest_aes test/buildtest_asn1 test/buildtest_asn1t test/buildtest_async test/buildtest_bio test/buildtest_blowfish test/buildtest_bn test/buildtest_buffer test/buildtest_camellia test/buildtest_cast test/buildtest_cmac test/buildtest_cms test/buildtest_comp test/buildtest_conf test/buildtest_conf_api test/buildtest_crypto test/buildtest_ct test/buildtest_des test/buildtest_dh test/buildtest_dsa test/buildtest_dtls1 test/buildtest_e_os2 test/buildtest_ebcdic test/buildtest_engine test/buildtest_err test/buildtest_evp test/buildtest_hmac test/buildtest_idea test/buildtest_kdf test/buildtest_lhash test/buildtest_md4 test/buildtest_md5 test/buildtest_mdc2 test/buildtest_modes test/buildtest_obj_mac test/buildtest_objects test/buildtest_ocsp test/buildtest_opensslconf test/buildtest_opensslv test/buildtest_ossl_typ test/buildtest_pem test/buildtest_pem2 test/buildtest_pkcs12 test/buildtest_pkcs7 test/buildtest_rand test/buildtest_rc2 test/buildtest_rc4 test/buildtest_ripemd test/buildtest_rsa test/buildtest_safestack test/buildtest_seed test/buildtest_sha test/buildtest_srp test/buildtest_srtp test/buildtest_ssl test/buildtest_ssl2 test/buildtest_stack test/buildtest_symhacks test/buildtest_tls1 test/buildtest_ts test/buildtest_txt_db test/buildtest_ui test/buildtest_whrlpool test/buildtest_x509 test/buildtest_x509_vfy test/buildtest_x509v3 test/casttest test/chacha_internal_test test/cipher_overhead_test test/cipherbytes_test test/cipherlist_test test/clienthellotest test/constant_time_test test/crltest test/ct_test test/d2i_test test/danetest test/destest test/dhtest test/dsatest test/dtls_mtu_test test/dtlstest test/dtlsv1listentest test/ecdsatest test/ectest test/enginetest test/evp_extra_test test/evp_test test/exdatatest test/exptest test/gmdifftest test/hmactest test/ideatest test/igetest test/lhash_test test/md2test test/mdc2_internal_test test/mdc2test test/memleaktest test/modes_internal_test test/packettest test/pbelutest test/pkey_meth_test test/poly1305_internal_test test/randtest test/rc2test test/rc4test test/rc5test test/recordlentest test/rsa_test test/sanitytest test/secmemtest test/sha1test test/sha256t test/sha512t test/siphash_internal_test test/srptest test/ssl_test test/ssl_test_ctx_test test/sslapitest test/sslcorrupttest test/ssltest_old test/stack_test test/test_test test/threadstest test/tls13encryptiontest test/uitest test/v3ext test/v3nametest test/verify_extra_test test/wpackettest test/x509_dup_cert_test test/x509_internal_test test/x509_time_test test/x509aux apps/CA.pl apps/tsget tools/c_rehash util/shlib_wrap.sh rm -f test/buildtest_dtls1.c test/buildtest_bio.c test/buildtest_idea.c test/buildtest_bn.c test/buildtest_srp.c test/buildtest_x509.c test/buildtest_ui.c crypto/sha/sha512-x86_64.s test/buildtest_hmac.c test/buildtest_pem2.c test/buildtest_rand.c crypto/aes/aesni-x86_64.s crypto/aes/aesni-mb-x86_64.s test/buildtest_stack.c test/buildtest_conf_api.c test/buildtest_srtp.c test/buildtest_dsa.c crypto/md5/md5-x86_64.s crypto/aes/aesni-sha256-x86_64.s test/buildtest_x509v3.c test/buildtest_ts.c engines/e_padlock-x86_64.s test/buildtest_tls1.c test/buildtest_engine.c test/buildtest_md4.c test/buildtest_err.c test/buildtest_conf.c crypto/aes/aes-x86_64.s test/buildtest_cmac.c test/buildtest_pem.c test/buildtest_aes.c test/buildtest_comp.c test/buildtest_kdf.c crypto/aes/aesni-sha1-x86_64.s crypto/aes/vpaes-x86_64.s test/buildtest_des.c test/buildtest_lhash.c test/buildtest_ct.c test/buildtest_dh.c crypto/sha/sha256-mb-x86_64.s test/buildtest_modes.c test/buildtest_ocsp.c test/buildtest_ossl_typ.c test/buildtest_evp.c test/buildtest_rsa.c test/buildtest_seed.c test/buildtest_e_os2.c crypto/bn/x86_64-mont5.s test/buildtest_ebcdic.c test/buildtest_pkcs12.c crypto/aes/bsaes-x86_64.s test/buildtest_rc2.c crypto/whrlpool/wp-x86_64.s test/buildtest_async.c crypto/chacha/chacha-x86_64.s test/buildtest_symhacks.c crypto/bn/x86_64-gf2m.s test/buildtest_rc4.c test/buildtest_x509_vfy.c test/buildtest_opensslv.c test/buildtest_mdc2.c crypto/bn/rsaz-avx2.s crypto/sha/sha1-x86_64.s test/buildtest_obj_mac.c test/buildtest_crypto.c crypto/camellia/cmll-x86_64.s test/buildtest_buffer.c test/buildtest_asn1.c test/buildtest_cms.c crypto/bn/rsaz-x86_64.s crypto/x86_64cpuid.s crypto/rc4/rc4-x86_64.s test/buildtest_asn1t.c test/buildtest_txt_db.c crypto/modes/ghash-x86_64.s test/buildtest_ssl2.c crypto/poly1305/poly1305-x86_64.s test/buildtest_pkcs7.c test/buildtest_cast.c crypto/modes/aesni-gcm-x86_64.s test/buildtest_sha.c crypto/sha/sha256-x86_64.s test/buildtest_ripemd.c test/buildtest_ssl.c crypto/sha/sha1-mb-x86_64.s test/buildtest_objects.c test/buildtest_opensslconf.c test/buildtest_whrlpool.c test/buildtest_safestack.c crypto/bn/x86_64-mont.s test/buildtest_blowfish.c test/buildtest_md5.c crypto/rc4/rc4-md5-x86_64.s test/buildtest_camellia.c crypto/include/internal/dso_conf.h crypto/include/internal/bn_conf.h crypto/buildinf.h include/openssl/opensslconf.h rm -f `find . -name '*.d' -a \! -path "./.git/*"` rm -f `find . -name '*.o' -a \! -path "./.git/*"` rm -f core rm -f tags TAGS doc-nits rm -f test/.rnd rm -f openssl.pc libcrypto.pc libssl.pc rm -f `find . -type l -a \! -path "./.git/*"` rm -f ../openssl-1.1.1-dev.tar + make /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \ "-oMakefile" crypto/include/internal/bn_conf.h.in > crypto/include/internal/bn_conf.h /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \ "-oMakefile" crypto/include/internal/dso_conf.h.in > crypto/include/internal/dso_conf.h /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \ "-oMakefile" include/openssl/opensslconf.h.in > include/openssl/opensslconf.h make depend && make _all make[1]: Entering directory ` make[1]: Leaving directory ` make[1]: Entering directory ` CC="gcc" /usr/bin/perl crypto/aes/asm/aes-x86_64.pl elf crypto/aes/aes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes-x86_64.d.tmp -MT crypto/aes/aes-x86_64.o -c -o crypto/aes/aes-x86_64.o crypto/aes/aes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_cfb.d.tmp -MT crypto/aes/aes_cfb.o -c -o crypto/aes/aes_cfb.o crypto/aes/aes_cfb.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_ecb.d.tmp -MT crypto/aes/aes_ecb.o -c -o crypto/aes/aes_ecb.o crypto/aes/aes_ecb.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_ige.d.tmp -MT crypto/aes/aes_ige.o -c -o crypto/aes/aes_ige.o crypto/aes/aes_ige.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_misc.d.tmp -MT crypto/aes/aes_misc.o -c -o crypto/aes/aes_misc.o crypto/aes/aes_misc.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_ofb.d.tmp -MT crypto/aes/aes_ofb.o -c -o crypto/aes/aes_ofb.o crypto/aes/aes_ofb.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_wrap.d.tmp -MT crypto/aes/aes_wrap.o -c -o crypto/aes/aes_wrap.o crypto/aes/aes_wrap.c CC="gcc" /usr/bin/perl crypto/aes/asm/aesni-mb-x86_64.pl elf crypto/aes/aesni-mb-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aesni-mb-x86_64.d.tmp -MT crypto/aes/aesni-mb-x86_64.o -c -o crypto/aes/aesni-mb-x86_64.o crypto/aes/aesni-mb-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/aesni-sha1-x86_64.pl elf crypto/aes/aesni-sha1-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aesni-sha1-x86_64.d.tmp -MT crypto/aes/aesni-sha1-x86_64.o -c -o crypto/aes/aesni-sha1-x86_64.o crypto/aes/aesni-sha1-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/aesni-sha256-x86_64.pl elf crypto/aes/aesni-sha256-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aesni-sha256-x86_64.d.tmp -MT crypto/aes/aesni-sha256-x86_64.o -c -o crypto/aes/aesni-sha256-x86_64.o crypto/aes/aesni-sha256-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/aesni-x86_64.pl elf crypto/aes/aesni-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aesni-x86_64.d.tmp -MT crypto/aes/aesni-x86_64.o -c -o crypto/aes/aesni-x86_64.o crypto/aes/aesni-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/bsaes-x86_64.pl elf crypto/aes/bsaes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/bsaes-x86_64.d.tmp -MT crypto/aes/bsaes-x86_64.o -c -o crypto/aes/bsaes-x86_64.o crypto/aes/bsaes-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/vpaes-x86_64.pl elf crypto/aes/vpaes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/vpaes-x86_64.d.tmp -MT crypto/aes/vpaes-x86_64.o -c -o crypto/aes/vpaes-x86_64.o crypto/aes/vpaes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_bitstr.d.tmp -MT crypto/asn1/a_bitstr.o -c -o crypto/asn1/a_bitstr.o crypto/asn1/a_bitstr.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_d2i_fp.d.tmp -MT crypto/asn1/a_d2i_fp.o -c -o crypto/asn1/a_d2i_fp.o crypto/asn1/a_d2i_fp.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_digest.d.tmp -MT crypto/asn1/a_digest.o -c -o crypto/asn1/a_digest.o crypto/asn1/a_digest.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_dup.d.tmp -MT crypto/asn1/a_dup.o -c -o crypto/asn1/a_dup.o crypto/asn1/a_dup.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_gentm.d.tmp -MT crypto/asn1/a_gentm.o -c -o crypto/asn1/a_gentm.o crypto/asn1/a_gentm.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_i2d_fp.d.tmp -MT crypto/asn1/a_i2d_fp.o -c -o crypto/asn1/a_i2d_fp.o crypto/asn1/a_i2d_fp.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_int.d.tmp -MT crypto/asn1/a_int.o -c -o crypto/asn1/a_int.o crypto/asn1/a_int.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_mbstr.d.tmp -MT crypto/asn1/a_mbstr.o -c -o crypto/asn1/a_mbstr.o crypto/asn1/a_mbstr.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_object.d.tmp -MT crypto/asn1/a_object.o -c -o crypto/asn1/a_object.o crypto/asn1/a_object.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_octet.d.tmp -MT crypto/asn1/a_octet.o -c -o crypto/asn1/a_octet.o crypto/asn1/a_octet.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_print.d.tmp -MT crypto/asn1/a_print.o -c -o crypto/asn1/a_print.o crypto/asn1/a_print.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_sign.d.tmp -MT crypto/asn1/a_sign.o -c -o crypto/asn1/a_sign.o crypto/asn1/a_sign.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_strex.d.tmp -MT crypto/asn1/a_strex.o -c -o crypto/asn1/a_strex.o crypto/asn1/a_strex.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_strnid.d.tmp -MT crypto/asn1/a_strnid.o -c -o crypto/asn1/a_strnid.o crypto/asn1/a_strnid.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_time.d.tmp -MT crypto/asn1/a_time.o -c -o crypto/asn1/a_time.o crypto/asn1/a_time.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_type.d.tmp -MT crypto/asn1/a_type.o -c -o crypto/asn1/a_type.o crypto/asn1/a_type.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_utctm.d.tmp -MT crypto/asn1/a_utctm.o -c -o crypto/asn1/a_utctm.o crypto/asn1/a_utctm.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_utf8.d.tmp -MT crypto/asn1/a_utf8.o -c -o crypto/asn1/a_utf8.o crypto/asn1/a_utf8.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_verify.d.tmp -MT crypto/asn1/a_verify.o -c -o crypto/asn1/a_verify.o crypto/asn1/a_verify.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/ameth_lib.d.tmp -MT crypto/asn1/ameth_lib.o -c -o crypto/asn1/ameth_lib.o crypto/asn1/ameth_lib.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_err.d.tmp -MT crypto/asn1/asn1_err.o -c -o crypto/asn1/asn1_err.o crypto/asn1/asn1_err.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_gen.d.tmp -MT crypto/asn1/asn1_gen.o -c -o crypto/asn1/asn1_gen.o crypto/asn1/asn1_gen.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_item_list.d.tmp -MT crypto/asn1/asn1_item_list.o -c -o crypto/asn1/asn1_item_list.o crypto/asn1/asn1_item_list.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_lib.d.tmp -MT crypto/asn1/asn1_lib.o -c -o crypto/asn1/asn1_lib.o crypto/asn1/asn1_lib.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_par.d.tmp -MT crypto/asn1/asn1_par.o -c -o crypto/asn1/asn1_par.o crypto/asn1/asn1_par.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_mime.d.tmp -MT crypto/asn1/asn_mime.o -c -o crypto/asn1/asn_mime.o crypto/asn1/asn_mime.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_moid.d.tmp -MT crypto/asn1/asn_moid.o -c -o crypto/asn1/asn_moid.o crypto/asn1/asn_moid.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_mstbl.d.tmp -MT crypto/asn1/asn_mstbl.o -c -o crypto/asn1/asn_mstbl.o crypto/asn1/asn_mstbl.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_pack.d.tmp -MT crypto/asn1/asn_pack.o -c -o crypto/asn1/asn_pack.o crypto/asn1/asn_pack.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/bio_asn1.d.tmp -MT crypto/asn1/bio_asn1.o -c -o crypto/asn1/bio_asn1.o crypto/asn1/bio_asn1.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/bio_ndef.d.tmp -MT crypto/asn1/bio_ndef.o -c -o crypto/asn1/bio_ndef.o crypto/asn1/bio_ndef.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/d2i_pr.d.tmp -MT crypto/asn1/d2i_pr.o -c -o crypto/asn1/d2i_pr.o crypto/asn1/d2i_pr.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/d2i_pu.d.tmp -MT crypto/asn1/d2i_pu.o -c -o crypto/asn1/d2i_pu.o crypto/asn1/d2i_pu.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/evp_asn1.d.tmp -MT crypto/asn1/evp_asn1.o -c -o crypto/asn1/evp_asn1.o crypto/asn1/evp_asn1.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/f_int.d.tmp -MT crypto/asn1/f_int.o -c -o crypto/asn1/f_int.o crypto/asn1/f_int.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/f_string.d.tmp -MT crypto/asn1/f_string.o -c -o crypto/asn1/f_string.o crypto/asn1/f_string.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/i2d_pr.d.tmp -MT crypto/asn1/i2d_pr.o -c -o crypto/asn1/i2d_pr.o crypto/asn1/i2d_pr.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/i2d_pu.d.tmp -MT crypto/asn1/i2d_pu.o -c -o crypto/asn1/i2d_pu.o crypto/asn1/i2d_pu.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/n_pkey.d.tmp -MT crypto/asn1/n_pkey.o -c -o crypto/asn1/n_pkey.o crypto/asn1/n_pkey.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/nsseq.d.tmp -MT crypto/asn1/nsseq.o -c -o crypto/asn1/nsseq.o crypto/asn1/nsseq.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p5_pbe.d.tmp -MT crypto/asn1/p5_pbe.o -c -o crypto/asn1/p5_pbe.o crypto/asn1/p5_pbe.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p5_pbev2.d.tmp -MT crypto/asn1/p5_pbev2.o -c -o crypto/asn1/p5_pbev2.o crypto/asn1/p5_pbev2.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p5_scrypt.d.tmp -MT crypto/asn1/p5_scrypt.o -c -o crypto/asn1/p5_scrypt.o crypto/asn1/p5_scrypt.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p8_pkey.d.tmp -MT crypto/asn1/p8_pkey.o -c -o crypto/asn1/p8_pkey.o crypto/asn1/p8_pkey.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/t_bitst.d.tmp -MT crypto/asn1/t_bitst.o -c -o crypto/asn1/t_bitst.o crypto/asn1/t_bitst.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/t_pkey.d.tmp -MT crypto/asn1/t_pkey.o -c -o crypto/asn1/t_pkey.o crypto/asn1/t_pkey.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/t_spki.d.tmp -MT crypto/asn1/t_spki.o -c -o crypto/asn1/t_spki.o crypto/asn1/t_spki.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_dec.d.tmp -MT crypto/asn1/tasn_dec.o -c -o crypto/asn1/tasn_dec.o crypto/asn1/tasn_dec.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_enc.d.tmp -MT crypto/asn1/tasn_enc.o -c -o crypto/asn1/tasn_enc.o crypto/asn1/tasn_enc.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_fre.d.tmp -MT crypto/asn1/tasn_fre.o -c -o crypto/asn1/tasn_fre.o crypto/asn1/tasn_fre.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_new.d.tmp -MT crypto/asn1/tasn_new.o -c -o crypto/asn1/tasn_new.o crypto/asn1/tasn_new.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_prn.d.tmp -MT crypto/asn1/tasn_prn.o -c -o crypto/asn1/tasn_prn.o crypto/asn1/tasn_prn.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_scn.d.tmp -MT crypto/asn1/tasn_scn.o -c -o crypto/asn1/tasn_scn.o crypto/asn1/tasn_scn.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_typ.d.tmp -MT crypto/asn1/tasn_typ.o -c -o crypto/asn1/tasn_typ.o crypto/asn1/tasn_typ.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_utl.d.tmp -MT crypto/asn1/tasn_utl.o -c -o crypto/asn1/tasn_utl.o crypto/asn1/tasn_utl.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/x_algor.d.tmp -MT crypto/asn1/x_algor.o -c -o crypto/asn1/x_algor.o crypto/asn1/x_algor.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/x_bignum.d.tmp -MT crypto/asn1/x_bignum.o -c -o crypto/asn1/x_bignum.o crypto/asn1/x_bignum.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/x_info.d.tmp -MT crypto/asn1/x_info.o -c -o crypto/asn1/x_info.o crypto/asn1/x_info.c make[1]: *** No rule to make target `include/internal/asn1t.h', needed by `crypto/asn1/x_int64.o'. Stop. make[1]: Leaving directory ` make: *** [all] Error 2 Build step 'Execute shell' marked build as failure From osslsanity at gmail.com Fri Apr 21 15:14:50 2017 From: osslsanity at gmail.com (address not configured yet) Date: Fri, 21 Apr 2017 15:14:50 +0000 (UTC) Subject: [openssl-commits] Build failed in Jenkins: master_noidea #15 Message-ID: <104307257.6.1492787690467.JavaMail.jenkins@ip-172-31-11-199.us-west-2.compute.internal> See Changes: [levitte] In rand_cleanup_int(), don't go creating a default method [appro] Add support for MLOCK_ONFAULT to secure arena [appro] e_os2.h: Refine OSSL_SSIZE definition under UEFI environment [levitte] Make getting and setting the RAND default method thread safe [levitte] Don't try to clean up RAND from ENGINE [matt] Move ssl/t1_ext.c to ssl/statem/extensions_cust.c [matt] Move the extensions context codes into the public API [matt] Implement a new custom extensions API [matt] Add some tests for the new custom extensions API [matt] Add documentation for the new custom extensions API [matt] Various style tweaks based on feedback [matt] Prefix custom extension API callback types with SSL_ [matt] Create an ENDPOINT enum type for use internally [matt] Remove an out of date TODO [matt] Fix a test failure when configured without TLSv1.3 [levitte] Fix rand_lib.c for no-engine configuration [rsalz] Make default_method mostly compile-time [rsalz] Make default_method mostly compile-time (cont'd) [rsalz] Check for L [rsalz] Add missing =back [rsalz] Standardize on =over 4 and check for it. [rsalz] Use 'over 2' for bullet lists. [appro] appveyor.yml: split {build,test}_scripts to avoid exit code masking. [appro] asn1/x_long.c: remove conditions in inner loops and dependency on BN. [appro] rand/rand_lib.c: keep fixing no-engine configuration. [levitte] Publish our INT32, UINT32, INT64, UINT64 ASN.1 types and Z variants [levitte] Discourage the use of LONG and ZLONG, and deprecate it in the future [levitte] Act on deprecation of LONG and ZLONG, step 1 [levitte] Act on deprecation of LONG and ZLONG, step 2 [levitte] Act on deprecation of LONG and ZLONG, step 3 [levitte] Add a note in CHANGES [levitte] Fix util/mkdef.pl [rsalz] Allow an ALPN callback to pretend to not exist [rsalz] Make test marcos for true/false checks reliable for all integral types. [rsalz] Update rc2test to use the test infrastructure [matt] Update md2test to use the test infrastructure [matt] Update dtlstest to use the test infrastructure [matt] Reject decoding of an INT64 with a value >INT64_MAX [rsalz] Additional check to handle BAD SSL_write retry [rsalz] Remove ECDH(E) ciphers from SSLv3 [levitte] Fix int64 test of t_4bytes_4_neg [levitte] Fix x_int64.c [matt] Convert bad_dtls_test for the new test framework [matt] Convert asynciotest for the new test framework [matt] Convert clienthellotest for the new test framework [rsalz] Added error checking for OBJ_create [levitte] Convert exdata tests to new test framework [matt] Update sha256t and sha512t to use the test infrastructure [matt] Update sha1test to use the test infrastructure [matt] Update mdc2test to use the test infrastructure [matt] Update rc5test to use the test infrastructure [matt] Update rc4test to use the test infrastructure [matt] Convert RSA tests to new framework [matt] Updates after code review [matt] Remove seed completely... [matt] Convert blowfish tests to new framework [matt] Code review. Split tests up [matt] Remove unused variable. Thanks @pauli-oracle [matt] Update d2i_test to use the test infrastructure [matt] Update secmemtest and memeleaktest to use the test infrastructure. [matt] Update gmdifftime to use the test infrastructure [matt] Update ideatest to use the test infrastructure [matt] Update sanitytest to use the test infrastructure [levitte] In asn1_encode_test.c, add custom DER encoding checks [levitte] Fix definition of i2d_fn in asn1_encode_test.c [levitte] Add tests of custom negative 1 [matt] Update the internal chacha test to use the framework Reviewed-by: [levitte] Update threadstest to use the test framework [levitte] Remove fprintfs from the poly1305 internal test but keep the test number [levitte] test/testutil.c: Flush stdout when running tests [levitte] Update destest to use the test infrastructure [levitte] ecdhtest.c: move NAMED CURVES TESTS to evptests.txt [levitte] Remove stale code in ecdhtest.c [levitte] ecdhtest.c: move KATs to evptests.txt [levitte] Remove more stale code in ecdhtest.c [levitte] OpenSSL::Test: supported filtered command output [rsalz] Convert x509aux, cipherlist, casttest [rsalz] Address review feedback (to be squashed) [levitte] Add SSL tests for certificates with embedded SCTs [levitte] CT_POLICY_EVAL_CTX_set_time expects milliseconds, but given seconds [levitte] Correct travis.yml to only build extended tests when explicitely asked [rsalz] OCSP Updates: error codes and multiple certificates [levitte] Test printing of ASN.1 types INTxx et al [levitte] ASN.1: extend the possibilities to embed data instead of pointers [levitte] ASN.1: change INTxx, UINTxx and Z variants to be embedable [levitte] ASN.1: adapt our use of INTxx et al by making them explicitely embedded [levitte] Split the CAST tests up. [levitte] Update the internal siphash tests to use the framework's output. [rsalz] Guarantee single argument evaluation for test macros. Add test case that [appro] testlib/OpenSSL/Test.pm: keep default input private. [appro] asn1/a_int.c: remove code duplicate and optimize branches, [appro] asn1/a_int.c: simplify asn1_put_uint64. [appro] asn1/a_int.c: don't write result if returning error. [rsalz] Fix unit tests when no-bf configured [rsalz] WIP: Convert ui,v3ext,verify_extra_test [rsalz] ecdhtest.c: move co-factor ECDH KATs to evptests [rsalz] Remove ecdhtest.c [rsalz] Reformat evptests.txt [rsalz] Add -f -r flags to find-unused-errs [kurt] Switch libfuzzer to use trace-pc-guard [kurt] Make x509 and asn1 fuzzer reproducible [kurt] Document how to update the corpus. [kurt] Use a fixed time when fuzzing. [kurt] Optionally check for early data [rsalz] Catch EC_R_UNKNOWN_GROUP in check_unsupported() [rsalz] Convert afalgtest [rsalz] [squash]Build works with/out NO_ENGINE and NO_AFALG [appro] asn1/a_int.c: clean up asn1_get_int64. [rsalz] update docs because depth refers only to intermediate certs [levitte] Add external krb5 test support [levitte] Update external test README for running krb5 [levitte] Fix formatting of PYCA external test instructions [levitte] [extended tests] Enable krb5 tests in Travis [rsalz] Convert more tests [rsalz] Convert more tests to framework [rsalz] Update more tests [rsalz] Convert more tests [levitte] VMS: Fix the passing of cflags for things not being installed [levitte] VMS: Fix internals test programs [rsalz] Convert dhtest, dsatest, cipherbytes_test [rsalz] Document Next Protocol Negotiation APIs [rsalz] Fix minor compiler issues. [rsalz] Change 64-bit time type for windows [levitte] VMS: Copy DECC inclusion epi- and prologues to internals [levitte] VMS: remove name mangling guards around inclusion of internals [levitte] Fix test/recipes/95-test_external_krb5.t [rsalz] fix dh_test. [rsalz] Convert hmactest to new test framework [rsalz] explicitText encoding [rsalz] Ignore dups in X509_STORE_add_* [rsalz] Small primes are primes too. [appro] Add ARIA 32-bit implementation ------------------------------------------ Started by upstream project "master_basic" build number 16 originally caused by: Started by an SCM change Building in workspace > git rev-parse --is-inside-work-tree # timeout=10 Fetching changes from the remote Git repository > git config remote.origin.url https://github.com/openssl/openssl.git # timeout=10 Fetching upstream changes from https://github.com/openssl/openssl.git > git --version # timeout=10 > git fetch --tags --progress https://github.com/openssl/openssl.git +refs/heads/*:refs/remotes/origin/* > git rev-parse refs/remotes/origin/master^{commit} # timeout=10 > git rev-parse refs/remotes/origin/origin/master^{commit} # timeout=10 Checking out Revision dc99b885ded3cbc586d5ffec779f0e75a269bda3 (refs/remotes/origin/master) > git config core.sparsecheckout # timeout=10 > git checkout -f dc99b885ded3cbc586d5ffec779f0e75a269bda3 > git rev-list 5748e4dc3ab1cdde43ae6feecb106e3a41adcdf4 # timeout=10 [master_noidea] $ /bin/sh -xe /tmp/jenkins9070328223121635447.sh + ./config no-shared no-idea Operating system: x86_64-whatever-linux2 Configuring OpenSSL version 1.1.1-dev (0x10101000L) no-aria [default] OPENSSL_NO_ARIA (skip dir) no-asan [default] OPENSSL_NO_ASAN no-crypto-mdebug [default] OPENSSL_NO_CRYPTO_MDEBUG no-crypto-mdebug-backtrace [default] OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE no-dynamic-engine [forced] no-ec_nistp_64_gcc_128 [default] OPENSSL_NO_EC_NISTP_64_GCC_128 no-egd [default] OPENSSL_NO_EGD no-external-tests [default] OPENSSL_NO_EXTERNAL_TESTS no-fuzz-afl [default] OPENSSL_NO_FUZZ_AFL no-fuzz-libfuzzer [default] OPENSSL_NO_FUZZ_LIBFUZZER no-heartbeats [default] OPENSSL_NO_HEARTBEATS no-idea [option] OPENSSL_NO_IDEA (skip dir) no-md2 [default] OPENSSL_NO_MD2 (skip dir) no-msan [default] OPENSSL_NO_MSAN no-rc5 [default] OPENSSL_NO_RC5 (skip dir) no-sctp [default] OPENSSL_NO_SCTP no-shared [option] no-ssl-trace [default] OPENSSL_NO_SSL_TRACE no-ssl3 [default] OPENSSL_NO_SSL3 no-ssl3-method [default] OPENSSL_NO_SSL3_METHOD no-tls13downgrade [default] OPENSSL_NO_TLS13DOWNGRADE no-tls1_3 [default] OPENSSL_NO_TLS1_3 no-ubsan [default] OPENSSL_NO_UBSAN no-unit-test [default] OPENSSL_NO_UNIT_TEST no-weak-ssl-ciphers [default] OPENSSL_NO_WEAK_SSL_CIPHERS no-zlib [default] no-zlib-dynamic [default] Configuring for linux-x86_64 PERL =/usr/bin/perl PERLVERSION =5.18.2 for x86_64-linux-gnu-thread-multi HASHBANGPERL =/usr/bin/env perl CC =gcc CFLAG =-Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack CXX =g++ CXXFLAG =-Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack DEFINES =DSO_DLFCN HAVE_DLFCN_H NDEBUG OPENSSL_THREADS OPENSSL_NO_DYNAMIC_ENGINE OPENSSL_PIC OPENSSL_IA32_SSE2 OPENSSL_BN_ASM_MONT OPENSSL_BN_ASM_MONT5 OPENSSL_BN_ASM_GF2m SHA1_ASM SHA256_ASM SHA512_ASM RC4_ASM MD5_ASM AES_ASM VPAES_ASM BSAES_ASM GHASH_ASM ECP_NISTZ256_ASM PADLOCK_ASM POLY1305_ASM EX_LIBS =-ldl + make depend + make clean rm -f rm -f rm -f libcrypto.a libssl.a rm -f *.map rm -f apps/openssl fuzz/asn1-test fuzz/asn1parse-test fuzz/bignum-test fuzz/bndiv-test fuzz/client-test fuzz/cms-test fuzz/conf-test fuzz/crl-test fuzz/ct-test fuzz/server-test fuzz/x509-test test/aborttest test/afalgtest test/asn1_encode_test test/asn1_internal_test test/asynciotest test/asynctest test/bad_dtls_test test/bftest test/bio_enc_test test/bioprinttest test/bntest test/buildtest_aes test/buildtest_asn1 test/buildtest_asn1t test/buildtest_async test/buildtest_bio test/buildtest_blowfish test/buildtest_bn test/buildtest_buffer test/buildtest_camellia test/buildtest_cast test/buildtest_cmac test/buildtest_cms test/buildtest_comp test/buildtest_conf test/buildtest_conf_api test/buildtest_crypto test/buildtest_ct test/buildtest_des test/buildtest_dh test/buildtest_dsa test/buildtest_dtls1 test/buildtest_e_os2 test/buildtest_ebcdic test/buildtest_ec test/buildtest_ecdh test/buildtest_ecdsa test/buildtest_engine test/buildtest_err test/buildtest_evp test/buildtest_hmac test/buildtest_kdf test/buildtest_lhash test/buildtest_md4 test/buildtest_md5 test/buildtest_mdc2 test/buildtest_modes test/buildtest_obj_mac test/buildtest_objects test/buildtest_ocsp test/buildtest_opensslconf test/buildtest_opensslv test/buildtest_ossl_typ test/buildtest_pem test/buildtest_pem2 test/buildtest_pkcs12 test/buildtest_pkcs7 test/buildtest_rand test/buildtest_rc2 test/buildtest_rc4 test/buildtest_ripemd test/buildtest_rsa test/buildtest_safestack test/buildtest_seed test/buildtest_sha test/buildtest_srp test/buildtest_srtp test/buildtest_ssl test/buildtest_ssl2 test/buildtest_stack test/buildtest_symhacks test/buildtest_tls1 test/buildtest_ts test/buildtest_txt_db test/buildtest_ui test/buildtest_whrlpool test/buildtest_x509 test/buildtest_x509_vfy test/buildtest_x509v3 test/casttest test/chacha_internal_test test/cipher_overhead_test test/cipherbytes_test test/cipherlist_test test/clienthellotest test/constant_time_test test/crltest test/ct_test test/d2i_test test/danetest test/destest test/dhtest test/dsatest test/dtls_mtu_test test/dtlstest test/dtlsv1listentest test/ecdsatest test/ectest test/enginetest test/evp_extra_test test/evp_test test/exdatatest test/exptest test/gmdifftest test/hmactest test/ideatest test/igetest test/lhash_test test/md2test test/mdc2_internal_test test/mdc2test test/memleaktest test/modes_internal_test test/packettest test/pbelutest test/pkey_meth_test test/poly1305_internal_test test/randtest test/rc2test test/rc4test test/rc5test test/recordlentest test/rsa_test test/sanitytest test/secmemtest test/sha1test test/sha256t test/sha512t test/siphash_internal_test test/srptest test/ssl_test test/ssl_test_ctx_test test/sslapitest test/sslcorrupttest test/ssltest_old test/stack_test test/test_test test/threadstest test/tls13encryptiontest test/uitest test/v3ext test/v3nametest test/verify_extra_test test/wpackettest test/x509_dup_cert_test test/x509_internal_test test/x509_time_test test/x509aux apps/CA.pl apps/tsget tools/c_rehash util/shlib_wrap.sh rm -f test/buildtest_safestack.c test/buildtest_md4.c test/buildtest_whrlpool.c crypto/aes/vpaes-x86_64.s test/buildtest_tls1.c test/buildtest_ct.c test/buildtest_opensslv.c crypto/x86_64cpuid.s test/buildtest_x509.c test/buildtest_pem.c test/buildtest_ebcdic.c test/buildtest_ripemd.c crypto/aes/aes-x86_64.s crypto/modes/aesni-gcm-x86_64.s test/buildtest_ocsp.c test/buildtest_modes.c test/buildtest_stack.c test/buildtest_pkcs7.c test/buildtest_ssl2.c test/buildtest_aes.c test/buildtest_mdc2.c test/buildtest_rc2.c test/buildtest_obj_mac.c crypto/sha/sha256-mb-x86_64.s test/buildtest_hmac.c test/buildtest_ecdh.c test/buildtest_pkcs12.c test/buildtest_seed.c crypto/aes/bsaes-x86_64.s test/buildtest_rand.c test/buildtest_cms.c test/buildtest_x509_vfy.c crypto/sha/sha1-x86_64.s test/buildtest_evp.c crypto/ec/ecp_nistz256-x86_64.s test/buildtest_srp.c test/buildtest_e_os2.c test/buildtest_crypto.c test/buildtest_opensslconf.c test/buildtest_err.c crypto/rc4/rc4-md5-x86_64.s crypto/sha/sha256-x86_64.s test/buildtest_camellia.c test/buildtest_asn1t.c test/buildtest_cmac.c test/buildtest_conf.c test/buildtest_txt_db.c test/buildtest_symhacks.c test/buildtest_srtp.c crypto/bn/rsaz-x86_64.s test/buildtest_dtls1.c crypto/poly1305/poly1305-x86_64.s test/buildtest_rc4.c crypto/aes/aesni-x86_64.s crypto/chacha/chacha-x86_64.s crypto/bn/x86_64-mont5.s test/buildtest_engine.c test/buildtest_ui.c test/buildtest_blowfish.c test/buildtest_cast.c crypto/sha/sha512-x86_64.s engines/e_padlock-x86_64.s crypto/modes/ghash-x86_64.s crypto/aes/aesni-sha1-x86_64.s test/buildtest_async.c test/buildtest_des.c test/buildtest_ssl.c test/buildtest_rsa.c test/buildtest_comp.c test/buildtest_sha.c test/buildtest_ecdsa.c test/buildtest_lhash.c test/buildtest_bn.c crypto/rc4/rc4-x86_64.s test/buildtest_ossl_typ.c crypto/aes/aesni-sha256-x86_64.s test/buildtest_asn1.c test/buildtest_conf_api.c test/buildtest_kdf.c test/buildtest_dsa.c crypto/aes/aesni-mb-x86_64.s test/buildtest_bio.c crypto/whrlpool/wp-x86_64.s test/buildtest_x509v3.c crypto/bn/x86_64-gf2m.s crypto/bn/rsaz-avx2.s test/buildtest_dh.c crypto/bn/x86_64-mont.s test/buildtest_ec.c crypto/sha/sha1-mb-x86_64.s test/buildtest_md5.c test/buildtest_ts.c crypto/camellia/cmll-x86_64.s test/buildtest_pem2.c test/buildtest_objects.c crypto/md5/md5-x86_64.s test/buildtest_buffer.c crypto/buildinf.h crypto/include/internal/bn_conf.h include/openssl/opensslconf.h crypto/include/internal/dso_conf.h rm -f `find . -name '*.d' -a \! -path "./.git/*"` rm -f `find . -name '*.o' -a \! -path "./.git/*"` rm -f core rm -f tags TAGS doc-nits rm -f test/.rnd rm -f openssl.pc libcrypto.pc libssl.pc rm -f `find . -type l -a \! -path "./.git/*"` rm -f ../openssl-1.1.1-dev.tar + make /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \ "-oMakefile" crypto/include/internal/bn_conf.h.in > crypto/include/internal/bn_conf.h /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \ "-oMakefile" crypto/include/internal/dso_conf.h.in > crypto/include/internal/dso_conf.h /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \ "-oMakefile" include/openssl/opensslconf.h.in > include/openssl/opensslconf.h make depend && make _all make[1]: Entering directory ` make[1]: Leaving directory ` make[1]: Entering directory ` CC="gcc" /usr/bin/perl crypto/aes/asm/aes-x86_64.pl elf crypto/aes/aes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes-x86_64.d.tmp -MT crypto/aes/aes-x86_64.o -c -o crypto/aes/aes-x86_64.o crypto/aes/aes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_cfb.d.tmp -MT crypto/aes/aes_cfb.o -c -o crypto/aes/aes_cfb.o crypto/aes/aes_cfb.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_ecb.d.tmp -MT crypto/aes/aes_ecb.o -c -o crypto/aes/aes_ecb.o crypto/aes/aes_ecb.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_ige.d.tmp -MT crypto/aes/aes_ige.o -c -o crypto/aes/aes_ige.o crypto/aes/aes_ige.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_misc.d.tmp -MT crypto/aes/aes_misc.o -c -o crypto/aes/aes_misc.o crypto/aes/aes_misc.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_ofb.d.tmp -MT crypto/aes/aes_ofb.o -c -o crypto/aes/aes_ofb.o crypto/aes/aes_ofb.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_wrap.d.tmp -MT crypto/aes/aes_wrap.o -c -o crypto/aes/aes_wrap.o crypto/aes/aes_wrap.c CC="gcc" /usr/bin/perl crypto/aes/asm/aesni-mb-x86_64.pl elf crypto/aes/aesni-mb-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aesni-mb-x86_64.d.tmp -MT crypto/aes/aesni-mb-x86_64.o -c -o crypto/aes/aesni-mb-x86_64.o crypto/aes/aesni-mb-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/aesni-sha1-x86_64.pl elf crypto/aes/aesni-sha1-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aesni-sha1-x86_64.d.tmp -MT crypto/aes/aesni-sha1-x86_64.o -c -o crypto/aes/aesni-sha1-x86_64.o crypto/aes/aesni-sha1-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/aesni-sha256-x86_64.pl elf crypto/aes/aesni-sha256-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aesni-sha256-x86_64.d.tmp -MT crypto/aes/aesni-sha256-x86_64.o -c -o crypto/aes/aesni-sha256-x86_64.o crypto/aes/aesni-sha256-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/aesni-x86_64.pl elf crypto/aes/aesni-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aesni-x86_64.d.tmp -MT crypto/aes/aesni-x86_64.o -c -o crypto/aes/aesni-x86_64.o crypto/aes/aesni-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/bsaes-x86_64.pl elf crypto/aes/bsaes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/bsaes-x86_64.d.tmp -MT crypto/aes/bsaes-x86_64.o -c -o crypto/aes/bsaes-x86_64.o crypto/aes/bsaes-x86_64.s CC="gcc" /usr/bin/perl crypto/aes/asm/vpaes-x86_64.pl elf crypto/aes/vpaes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/vpaes-x86_64.d.tmp -MT crypto/aes/vpaes-x86_64.o -c -o crypto/aes/vpaes-x86_64.o crypto/aes/vpaes-x86_64.s gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_bitstr.d.tmp -MT crypto/asn1/a_bitstr.o -c -o crypto/asn1/a_bitstr.o crypto/asn1/a_bitstr.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_d2i_fp.d.tmp -MT crypto/asn1/a_d2i_fp.o -c -o crypto/asn1/a_d2i_fp.o crypto/asn1/a_d2i_fp.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_digest.d.tmp -MT crypto/asn1/a_digest.o -c -o crypto/asn1/a_digest.o crypto/asn1/a_digest.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_dup.d.tmp -MT crypto/asn1/a_dup.o -c -o crypto/asn1/a_dup.o crypto/asn1/a_dup.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_gentm.d.tmp -MT crypto/asn1/a_gentm.o -c -o crypto/asn1/a_gentm.o crypto/asn1/a_gentm.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_i2d_fp.d.tmp -MT crypto/asn1/a_i2d_fp.o -c -o crypto/asn1/a_i2d_fp.o crypto/asn1/a_i2d_fp.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_int.d.tmp -MT crypto/asn1/a_int.o -c -o crypto/asn1/a_int.o crypto/asn1/a_int.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_mbstr.d.tmp -MT crypto/asn1/a_mbstr.o -c -o crypto/asn1/a_mbstr.o crypto/asn1/a_mbstr.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_object.d.tmp -MT crypto/asn1/a_object.o -c -o crypto/asn1/a_object.o crypto/asn1/a_object.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_octet.d.tmp -MT crypto/asn1/a_octet.o -c -o crypto/asn1/a_octet.o crypto/asn1/a_octet.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_print.d.tmp -MT crypto/asn1/a_print.o -c -o crypto/asn1/a_print.o crypto/asn1/a_print.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_sign.d.tmp -MT crypto/asn1/a_sign.o -c -o crypto/asn1/a_sign.o crypto/asn1/a_sign.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_strex.d.tmp -MT crypto/asn1/a_strex.o -c -o crypto/asn1/a_strex.o crypto/asn1/a_strex.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_strnid.d.tmp -MT crypto/asn1/a_strnid.o -c -o crypto/asn1/a_strnid.o crypto/asn1/a_strnid.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_time.d.tmp -MT crypto/asn1/a_time.o -c -o crypto/asn1/a_time.o crypto/asn1/a_time.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_type.d.tmp -MT crypto/asn1/a_type.o -c -o crypto/asn1/a_type.o crypto/asn1/a_type.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_utctm.d.tmp -MT crypto/asn1/a_utctm.o -c -o crypto/asn1/a_utctm.o crypto/asn1/a_utctm.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_utf8.d.tmp -MT crypto/asn1/a_utf8.o -c -o crypto/asn1/a_utf8.o crypto/asn1/a_utf8.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/a_verify.d.tmp -MT crypto/asn1/a_verify.o -c -o crypto/asn1/a_verify.o crypto/asn1/a_verify.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/ameth_lib.d.tmp -MT crypto/asn1/ameth_lib.o -c -o crypto/asn1/ameth_lib.o crypto/asn1/ameth_lib.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_err.d.tmp -MT crypto/asn1/asn1_err.o -c -o crypto/asn1/asn1_err.o crypto/asn1/asn1_err.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_gen.d.tmp -MT crypto/asn1/asn1_gen.o -c -o crypto/asn1/asn1_gen.o crypto/asn1/asn1_gen.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_item_list.d.tmp -MT crypto/asn1/asn1_item_list.o -c -o crypto/asn1/asn1_item_list.o crypto/asn1/asn1_item_list.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_lib.d.tmp -MT crypto/asn1/asn1_lib.o -c -o crypto/asn1/asn1_lib.o crypto/asn1/asn1_lib.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn1_par.d.tmp -MT crypto/asn1/asn1_par.o -c -o crypto/asn1/asn1_par.o crypto/asn1/asn1_par.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_mime.d.tmp -MT crypto/asn1/asn_mime.o -c -o crypto/asn1/asn_mime.o crypto/asn1/asn_mime.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_moid.d.tmp -MT crypto/asn1/asn_moid.o -c -o crypto/asn1/asn_moid.o crypto/asn1/asn_moid.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_mstbl.d.tmp -MT crypto/asn1/asn_mstbl.o -c -o crypto/asn1/asn_mstbl.o crypto/asn1/asn_mstbl.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/asn_pack.d.tmp -MT crypto/asn1/asn_pack.o -c -o crypto/asn1/asn_pack.o crypto/asn1/asn_pack.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/bio_asn1.d.tmp -MT crypto/asn1/bio_asn1.o -c -o crypto/asn1/bio_asn1.o crypto/asn1/bio_asn1.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/bio_ndef.d.tmp -MT crypto/asn1/bio_ndef.o -c -o crypto/asn1/bio_ndef.o crypto/asn1/bio_ndef.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/d2i_pr.d.tmp -MT crypto/asn1/d2i_pr.o -c -o crypto/asn1/d2i_pr.o crypto/asn1/d2i_pr.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/d2i_pu.d.tmp -MT crypto/asn1/d2i_pu.o -c -o crypto/asn1/d2i_pu.o crypto/asn1/d2i_pu.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/evp_asn1.d.tmp -MT crypto/asn1/evp_asn1.o -c -o crypto/asn1/evp_asn1.o crypto/asn1/evp_asn1.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/f_int.d.tmp -MT crypto/asn1/f_int.o -c -o crypto/asn1/f_int.o crypto/asn1/f_int.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/f_string.d.tmp -MT crypto/asn1/f_string.o -c -o crypto/asn1/f_string.o crypto/asn1/f_string.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/i2d_pr.d.tmp -MT crypto/asn1/i2d_pr.o -c -o crypto/asn1/i2d_pr.o crypto/asn1/i2d_pr.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/i2d_pu.d.tmp -MT crypto/asn1/i2d_pu.o -c -o crypto/asn1/i2d_pu.o crypto/asn1/i2d_pu.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/n_pkey.d.tmp -MT crypto/asn1/n_pkey.o -c -o crypto/asn1/n_pkey.o crypto/asn1/n_pkey.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/nsseq.d.tmp -MT crypto/asn1/nsseq.o -c -o crypto/asn1/nsseq.o crypto/asn1/nsseq.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p5_pbe.d.tmp -MT crypto/asn1/p5_pbe.o -c -o crypto/asn1/p5_pbe.o crypto/asn1/p5_pbe.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p5_pbev2.d.tmp -MT crypto/asn1/p5_pbev2.o -c -o crypto/asn1/p5_pbev2.o crypto/asn1/p5_pbev2.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p5_scrypt.d.tmp -MT crypto/asn1/p5_scrypt.o -c -o crypto/asn1/p5_scrypt.o crypto/asn1/p5_scrypt.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/p8_pkey.d.tmp -MT crypto/asn1/p8_pkey.o -c -o crypto/asn1/p8_pkey.o crypto/asn1/p8_pkey.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/t_bitst.d.tmp -MT crypto/asn1/t_bitst.o -c -o crypto/asn1/t_bitst.o crypto/asn1/t_bitst.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/t_pkey.d.tmp -MT crypto/asn1/t_pkey.o -c -o crypto/asn1/t_pkey.o crypto/asn1/t_pkey.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/t_spki.d.tmp -MT crypto/asn1/t_spki.o -c -o crypto/asn1/t_spki.o crypto/asn1/t_spki.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_dec.d.tmp -MT crypto/asn1/tasn_dec.o -c -o crypto/asn1/tasn_dec.o crypto/asn1/tasn_dec.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_enc.d.tmp -MT crypto/asn1/tasn_enc.o -c -o crypto/asn1/tasn_enc.o crypto/asn1/tasn_enc.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_fre.d.tmp -MT crypto/asn1/tasn_fre.o -c -o crypto/asn1/tasn_fre.o crypto/asn1/tasn_fre.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_new.d.tmp -MT crypto/asn1/tasn_new.o -c -o crypto/asn1/tasn_new.o crypto/asn1/tasn_new.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_prn.d.tmp -MT crypto/asn1/tasn_prn.o -c -o crypto/asn1/tasn_prn.o crypto/asn1/tasn_prn.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_scn.d.tmp -MT crypto/asn1/tasn_scn.o -c -o crypto/asn1/tasn_scn.o crypto/asn1/tasn_scn.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_typ.d.tmp -MT crypto/asn1/tasn_typ.o -c -o crypto/asn1/tasn_typ.o crypto/asn1/tasn_typ.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/tasn_utl.d.tmp -MT crypto/asn1/tasn_utl.o -c -o crypto/asn1/tasn_utl.o crypto/asn1/tasn_utl.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/x_algor.d.tmp -MT crypto/asn1/x_algor.o -c -o crypto/asn1/x_algor.o crypto/asn1/x_algor.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/x_bignum.d.tmp -MT crypto/asn1/x_bignum.o -c -o crypto/asn1/x_bignum.o crypto/asn1/x_bignum.c gcc -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -m64 -DL_ENDIAN -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/asn1/x_info.d.tmp -MT crypto/asn1/x_info.o -c -o crypto/asn1/x_info.o crypto/asn1/x_info.c make[1]: *** No rule to make target `include/internal/asn1t.h', needed by `crypto/asn1/x_int64.o'. Stop. make[1]: Leaving directory ` make: *** [all] Error 2 Build step 'Execute shell' marked build as failure From rsalz at openssl.org Sat Apr 22 12:38:49 2017 From: rsalz at openssl.org (Rich Salz) Date: Sat, 22 Apr 2017 12:38:49 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492864729.351259.27213.nullmailer@dev.openssl.org> The branch master has been updated via 8b24f94209676bbe9933affd2879a686b1ed044d (commit) from dc99b885ded3cbc586d5ffec779f0e75a269bda3 (commit) - Log ----------------------------------------------------------------- commit 8b24f94209676bbe9933affd2879a686b1ed044d Author: David Benjamin Date: Fri Apr 21 12:07:03 2017 -0400 Numbers greater than 1 are usually non-negative. BN_is_prime_fasttest_ex begins by rejecting if a <= 1. Then it goes to set A := abs(a), but a cannot be negative at this point. Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3275) ----------------------------------------------------------------------- Summary of changes: crypto/bn/bn_prime.c | 24 ++++++------------------ 1 file changed, 6 insertions(+), 18 deletions(-) diff --git a/crypto/bn/bn_prime.c b/crypto/bn/bn_prime.c index 9295aeb..9b12dd2 100644 --- a/crypto/bn/bn_prime.c +++ b/crypto/bn/bn_prime.c @@ -158,7 +158,6 @@ int BN_is_prime_fasttest_ex(const BIGNUM *a, int checks, BN_CTX *ctx_passed, BN_CTX *ctx = NULL; BIGNUM *A1, *A1_odd, *check; /* taken from ctx */ BN_MONT_CTX *mont = NULL; - const BIGNUM *A = NULL; if (BN_cmp(a, BN_value_one()) <= 0) return 0; @@ -188,25 +187,14 @@ int BN_is_prime_fasttest_ex(const BIGNUM *a, int checks, BN_CTX *ctx_passed, goto err; BN_CTX_start(ctx); - /* A := abs(a) */ - if (a->neg) { - BIGNUM *t; - if ((t = BN_CTX_get(ctx)) == NULL) - goto err; - if (BN_copy(t, a) == NULL) - goto err; - t->neg = 0; - A = t; - } else - A = a; A1 = BN_CTX_get(ctx); A1_odd = BN_CTX_get(ctx); check = BN_CTX_get(ctx); if (check == NULL) goto err; - /* compute A1 := A - 1 */ - if (!BN_copy(A1, A)) + /* compute A1 := a - 1 */ + if (!BN_copy(A1, a)) goto err; if (!BN_sub_word(A1, 1)) goto err; @@ -222,11 +210,11 @@ int BN_is_prime_fasttest_ex(const BIGNUM *a, int checks, BN_CTX *ctx_passed, if (!BN_rshift(A1_odd, A1, k)) goto err; - /* Montgomery setup for computations mod A */ + /* Montgomery setup for computations mod a */ mont = BN_MONT_CTX_new(); if (mont == NULL) goto err; - if (!BN_MONT_CTX_set(mont, A, ctx)) + if (!BN_MONT_CTX_set(mont, a, ctx)) goto err; for (i = 0; i < checks; i++) { @@ -234,9 +222,9 @@ int BN_is_prime_fasttest_ex(const BIGNUM *a, int checks, BN_CTX *ctx_passed, goto err; if (!BN_add_word(check, 1)) goto err; - /* now 1 <= check < A */ + /* now 1 <= check < a */ - j = witness(check, A, A1, A1_odd, k, ctx, mont); + j = witness(check, a, A1, A1_odd, k, ctx, mont); if (j == -1) goto err; if (j) { From rsalz at openssl.org Sat Apr 22 12:39:06 2017 From: rsalz at openssl.org (Rich Salz) Date: Sat, 22 Apr 2017 12:39:06 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1492864746.238670.28072.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via bbe056fd676379067588cf823a7a7422c2077f6b (commit) from 48e017b9ca6876f709197de22b986e8238868ce4 (commit) - Log ----------------------------------------------------------------- commit bbe056fd676379067588cf823a7a7422c2077f6b Author: David Benjamin Date: Fri Apr 21 12:07:03 2017 -0400 Numbers greater than 1 are usually non-negative. BN_is_prime_fasttest_ex begins by rejecting if a <= 1. Then it goes to set A := abs(a), but a cannot be negative at this point. Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3275) (cherry picked from commit 8b24f94209676bbe9933affd2879a686b1ed044d) ----------------------------------------------------------------------- Summary of changes: crypto/bn/bn_prime.c | 24 ++++++------------------ 1 file changed, 6 insertions(+), 18 deletions(-) diff --git a/crypto/bn/bn_prime.c b/crypto/bn/bn_prime.c index 7103acf..616389c 100644 --- a/crypto/bn/bn_prime.c +++ b/crypto/bn/bn_prime.c @@ -205,7 +205,6 @@ int BN_is_prime_fasttest_ex(const BIGNUM *a, int checks, BN_CTX *ctx_passed, BN_CTX *ctx = NULL; BIGNUM *A1, *A1_odd, *check; /* taken from ctx */ BN_MONT_CTX *mont = NULL; - const BIGNUM *A = NULL; if (BN_cmp(a, BN_value_one()) <= 0) return 0; @@ -235,25 +234,14 @@ int BN_is_prime_fasttest_ex(const BIGNUM *a, int checks, BN_CTX *ctx_passed, goto err; BN_CTX_start(ctx); - /* A := abs(a) */ - if (a->neg) { - BIGNUM *t; - if ((t = BN_CTX_get(ctx)) == NULL) - goto err; - if (BN_copy(t, a) == NULL) - goto err; - t->neg = 0; - A = t; - } else - A = a; A1 = BN_CTX_get(ctx); A1_odd = BN_CTX_get(ctx); check = BN_CTX_get(ctx); if (check == NULL) goto err; - /* compute A1 := A - 1 */ - if (!BN_copy(A1, A)) + /* compute A1 := a - 1 */ + if (!BN_copy(A1, a)) goto err; if (!BN_sub_word(A1, 1)) goto err; @@ -269,11 +257,11 @@ int BN_is_prime_fasttest_ex(const BIGNUM *a, int checks, BN_CTX *ctx_passed, if (!BN_rshift(A1_odd, A1, k)) goto err; - /* Montgomery setup for computations mod A */ + /* Montgomery setup for computations mod a */ mont = BN_MONT_CTX_new(); if (mont == NULL) goto err; - if (!BN_MONT_CTX_set(mont, A, ctx)) + if (!BN_MONT_CTX_set(mont, a, ctx)) goto err; for (i = 0; i < checks; i++) { @@ -281,9 +269,9 @@ int BN_is_prime_fasttest_ex(const BIGNUM *a, int checks, BN_CTX *ctx_passed, goto err; if (!BN_add_word(check, 1)) goto err; - /* now 1 <= check < A */ + /* now 1 <= check < a */ - j = witness(check, A, A1, A1_odd, k, ctx, mont); + j = witness(check, a, A1, A1_odd, k, ctx, mont); if (j == -1) goto err; if (j) { From rsalz at openssl.org Sat Apr 22 12:39:18 2017 From: rsalz at openssl.org (Rich Salz) Date: Sat, 22 Apr 2017 12:39:18 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_0_2-stable update Message-ID: <1492864758.650957.28868.nullmailer@dev.openssl.org> The branch OpenSSL_1_0_2-stable has been updated via 74bcd775aa74697c1f7b8fd793e80ef0207276c4 (commit) from e8f2e2fb3d82485af297717b93358f488e15eae0 (commit) - Log ----------------------------------------------------------------- commit 74bcd775aa74697c1f7b8fd793e80ef0207276c4 Author: David Benjamin Date: Fri Apr 21 12:07:03 2017 -0400 Numbers greater than 1 are usually non-negative. BN_is_prime_fasttest_ex begins by rejecting if a <= 1. Then it goes to set A := abs(a), but a cannot be negative at this point. Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3275) (cherry picked from commit 8b24f94209676bbe9933affd2879a686b1ed044d) ----------------------------------------------------------------------- Summary of changes: crypto/bn/bn_prime.c | 24 ++++++------------------ 1 file changed, 6 insertions(+), 18 deletions(-) diff --git a/crypto/bn/bn_prime.c b/crypto/bn/bn_prime.c index 8177fd2..e911e15 100644 --- a/crypto/bn/bn_prime.c +++ b/crypto/bn/bn_prime.c @@ -252,7 +252,6 @@ int BN_is_prime_fasttest_ex(const BIGNUM *a, int checks, BN_CTX *ctx_passed, BN_CTX *ctx = NULL; BIGNUM *A1, *A1_odd, *check; /* taken from ctx */ BN_MONT_CTX *mont = NULL; - const BIGNUM *A = NULL; if (BN_cmp(a, BN_value_one()) <= 0) return 0; @@ -278,25 +277,14 @@ int BN_is_prime_fasttest_ex(const BIGNUM *a, int checks, BN_CTX *ctx_passed, goto err; BN_CTX_start(ctx); - /* A := abs(a) */ - if (a->neg) { - BIGNUM *t; - if ((t = BN_CTX_get(ctx)) == NULL) - goto err; - if (BN_copy(t, a) == NULL) - goto err; - t->neg = 0; - A = t; - } else - A = a; A1 = BN_CTX_get(ctx); A1_odd = BN_CTX_get(ctx); check = BN_CTX_get(ctx); if (check == NULL) goto err; - /* compute A1 := A - 1 */ - if (!BN_copy(A1, A)) + /* compute A1 := a - 1 */ + if (!BN_copy(A1, a)) goto err; if (!BN_sub_word(A1, 1)) goto err; @@ -312,11 +300,11 @@ int BN_is_prime_fasttest_ex(const BIGNUM *a, int checks, BN_CTX *ctx_passed, if (!BN_rshift(A1_odd, A1, k)) goto err; - /* Montgomery setup for computations mod A */ + /* Montgomery setup for computations mod a */ mont = BN_MONT_CTX_new(); if (mont == NULL) goto err; - if (!BN_MONT_CTX_set(mont, A, ctx)) + if (!BN_MONT_CTX_set(mont, a, ctx)) goto err; for (i = 0; i < checks; i++) { @@ -324,9 +312,9 @@ int BN_is_prime_fasttest_ex(const BIGNUM *a, int checks, BN_CTX *ctx_passed, goto err; if (!BN_add_word(check, 1)) goto err; - /* now 1 <= check < A */ + /* now 1 <= check < a */ - j = witness(check, A, A1, A1_odd, k, ctx, mont); + j = witness(check, a, A1, A1_odd, k, ctx, mont); if (j == -1) goto err; if (j) { From no-reply at appveyor.com Sat Apr 22 13:15:50 2017 From: no-reply at appveyor.com (AppVeyor) Date: Sat, 22 Apr 2017 13:15:50 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.10 Message-ID: <20170422131550.103512.69500.8DF59B12@appveyor.com> An HTML attachment was scrubbed... URL: From builds at travis-ci.org Sat Apr 22 13:03:59 2017 From: builds at travis-ci.org (Travis CI) Date: Sat, 22 Apr 2017 13:03:59 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10475 (master - 8b24f94) In-Reply-To: Message-ID: <58fb54bee5c8b_43f97d34c849830041a@c8cf6345-35a6-490c-a4be-35f487de04d9.mail> Build Update for openssl/openssl ------------------------------------- Build: #10475 Status: Still Failing Duration: 23 minutes and 55 seconds Commit: 8b24f94 (master) Author: David Benjamin Message: Numbers greater than 1 are usually non-negative. BN_is_prime_fasttest_ex begins by rejecting if a <= 1. Then it goes to set A := abs(a), but a cannot be negative at this point. Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3275) View the changeset: https://github.com/openssl/openssl/compare/dc99b885ded3...8b24f9420967 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/224666582 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Sat Apr 22 13:34:27 2017 From: no-reply at appveyor.com (AppVeyor) Date: Sat, 22 Apr 2017 13:34:27 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.11 Message-ID: <20170422133426.94239.70072.D4964AB9@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Sat Apr 22 13:43:27 2017 From: no-reply at appveyor.com (AppVeyor) Date: Sat, 22 Apr 2017 13:43:27 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.12 Message-ID: <20170422134326.94541.76383.8613ED48@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Sat Apr 22 13:46:10 2017 From: no-reply at appveyor.com (AppVeyor) Date: Sat, 22 Apr 2017 13:46:10 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.13 Message-ID: <20170422134610.78067.87390.25A2EA63@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Sat Apr 22 14:18:56 2017 From: no-reply at appveyor.com (AppVeyor) Date: Sat, 22 Apr 2017 14:18:56 +0000 Subject: [openssl-commits] Build completed: openssl 1.0.14 Message-ID: <20170422141856.10591.46400.464866A8@appveyor.com> An HTML attachment was scrubbed... URL: From rsalz at openssl.org Sat Apr 22 22:26:56 2017 From: rsalz at openssl.org (Rich Salz) Date: Sat, 22 Apr 2017 22:26:56 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492900016.550823.7174.nullmailer@dev.openssl.org> The branch master has been updated via 7643a1723ef8eb4e542e57dfadeeb8eff788ec05 (commit) from 8b24f94209676bbe9933affd2879a686b1ed044d (commit) - Log ----------------------------------------------------------------- commit 7643a1723ef8eb4e542e57dfadeeb8eff788ec05 Author: Camille Gu?rin Date: Fri Apr 21 13:35:51 2017 +0200 Fixed typo in X509_STORE_CTX_new description 'X509_XTORE_CTX_cleanup' -> 'X509_STORE_CTX_cleanup' Reviewed-by: Kurt Roeckx Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3271) ----------------------------------------------------------------------- Summary of changes: doc/man3/X509_STORE_CTX_new.pod | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/man3/X509_STORE_CTX_new.pod b/doc/man3/X509_STORE_CTX_new.pod index 0d8ce3b..2828ed7 100644 --- a/doc/man3/X509_STORE_CTX_new.pod +++ b/doc/man3/X509_STORE_CTX_new.pod @@ -61,7 +61,7 @@ If B is NULL nothing is done. X509_STORE_CTX_init() sets up B for a subsequent verification operation. It must be called before each call to X509_verify_cert(), i.e. a B is only good for one call to X509_verify_cert(); if you want to verify a second -certificate with the same B then you must call X509_XTORE_CTX_cleanup() +certificate with the same B then you must call X509_STORE_CTX_cleanup() and then X509_STORE_CTX_init() again before the second call to X509_verify_cert(). The trusted certificate store is set to B, the end entity certificate to be verified is set to B and a set of additional From rsalz at openssl.org Sat Apr 22 22:27:35 2017 From: rsalz at openssl.org (Rich Salz) Date: Sat, 22 Apr 2017 22:27:35 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1492900055.924457.7984.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 2c0b8d2872057fdda22d3f41c3d4e59835b414b4 (commit) from bbe056fd676379067588cf823a7a7422c2077f6b (commit) - Log ----------------------------------------------------------------- commit 2c0b8d2872057fdda22d3f41c3d4e59835b414b4 Author: Camille Gu?rin Date: Fri Apr 21 13:35:51 2017 +0200 Fixed typo in X509_STORE_CTX_new description 'X509_XTORE_CTX_cleanup' -> 'X509_STORE_CTX_cleanup' Reviewed-by: Kurt Roeckx Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3271) (cherry picked from commit 7643a1723ef8eb4e542e57dfadeeb8eff788ec05) ----------------------------------------------------------------------- Summary of changes: doc/crypto/X509_STORE_CTX_new.pod | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/crypto/X509_STORE_CTX_new.pod b/doc/crypto/X509_STORE_CTX_new.pod index 0d8ce3b..2828ed7 100644 --- a/doc/crypto/X509_STORE_CTX_new.pod +++ b/doc/crypto/X509_STORE_CTX_new.pod @@ -61,7 +61,7 @@ If B is NULL nothing is done. X509_STORE_CTX_init() sets up B for a subsequent verification operation. It must be called before each call to X509_verify_cert(), i.e. a B is only good for one call to X509_verify_cert(); if you want to verify a second -certificate with the same B then you must call X509_XTORE_CTX_cleanup() +certificate with the same B then you must call X509_STORE_CTX_cleanup() and then X509_STORE_CTX_init() again before the second call to X509_verify_cert(). The trusted certificate store is set to B, the end entity certificate to be verified is set to B and a set of additional From rsalz at openssl.org Sat Apr 22 22:28:13 2017 From: rsalz at openssl.org (Rich Salz) Date: Sat, 22 Apr 2017 22:28:13 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_0_2-stable update Message-ID: <1492900093.200737.8749.nullmailer@dev.openssl.org> The branch OpenSSL_1_0_2-stable has been updated via 60a70a510750f06007f92c22f5d130a1ce3150d2 (commit) from 74bcd775aa74697c1f7b8fd793e80ef0207276c4 (commit) - Log ----------------------------------------------------------------- commit 60a70a510750f06007f92c22f5d130a1ce3150d2 Author: Camille Gu?rin Date: Fri Apr 21 13:35:51 2017 +0200 Fixed typo in X509_STORE_CTX_new description 'X509_XTORE_CTX_cleanup' -> 'X509_STORE_CTX_cleanup' Reviewed-by: Kurt Roeckx Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3271) (cherry picked from commit 7643a1723ef8eb4e542e57dfadeeb8eff788ec05) (cherry picked from commit 2c0b8d2872057fdda22d3f41c3d4e59835b414b4) ----------------------------------------------------------------------- Summary of changes: doc/crypto/X509_STORE_CTX_new.pod | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/crypto/X509_STORE_CTX_new.pod b/doc/crypto/X509_STORE_CTX_new.pod index eb38b0a..1aee117 100644 --- a/doc/crypto/X509_STORE_CTX_new.pod +++ b/doc/crypto/X509_STORE_CTX_new.pod @@ -41,7 +41,7 @@ is no longer valid. X509_STORE_CTX_init() sets up B for a subsequent verification operation. It must be called before each call to X509_verify_cert(), i.e. a B is only good for one call to X509_verify_cert(); if you want to verify a second -certificate with the same B then you must call X509_XTORE_CTX_cleanup() +certificate with the same B then you must call X509_STORE_CTX_cleanup() and then X509_STORE_CTX_init() again before the second call to X509_verify_cert(). The trusted certificate store is set to B, the end entity certificate to be verified is set to B and a set of additional From builds at travis-ci.org Sat Apr 22 22:52:48 2017 From: builds at travis-ci.org (Travis CI) Date: Sat, 22 Apr 2017 22:52:48 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10484 (master - 7643a17) In-Reply-To: Message-ID: <58fbdec036aa3_43f9108ddbe581201560@a91d49a4-93ca-4726-9f68-160309b2569d.mail> Build Update for openssl/openssl ------------------------------------- Build: #10484 Status: Still Failing Duration: 24 minutes and 31 seconds Commit: 7643a17 (master) Author: Camille Gu?rin Message: Fixed typo in X509_STORE_CTX_new description 'X509_XTORE_CTX_cleanup' -> 'X509_STORE_CTX_cleanup' Reviewed-by: Kurt Roeckx Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3271) View the changeset: https://github.com/openssl/openssl/compare/8b24f9420967...7643a1723ef8 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/224783356 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From levitte at openssl.org Sun Apr 23 14:07:52 2017 From: levitte at openssl.org (Richard Levitte) Date: Sun, 23 Apr 2017 14:07:52 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492956472.683683.15560.nullmailer@dev.openssl.org> The branch master has been updated via f919c12f5c8b92f0318c650573e774fe6522c27c (commit) from 7643a1723ef8eb4e542e57dfadeeb8eff788ec05 (commit) - Log ----------------------------------------------------------------- commit f919c12f5c8b92f0318c650573e774fe6522c27c Author: Richard Levitte Date: Sat Apr 22 15:06:35 2017 +0200 Port Ben's parallell Makefile hack to Windows jom is an nmake clone that does parallell building, via the same -j argument as GNU make. To make it work, we need to apply the same dependeency build up as done in 27c40a93175d4dcb559325db9354910b3d16cd4e Fixes #3272 Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3277) ----------------------------------------------------------------------- Summary of changes: Configurations/windows-makefile.tmpl | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/Configurations/windows-makefile.tmpl b/Configurations/windows-makefile.tmpl index d744110..f16df75 100644 --- a/Configurations/windows-makefile.tmpl +++ b/Configurations/windows-makefile.tmpl @@ -47,6 +47,13 @@ return $dso . $dsoext; } + # This makes sure things get built in the order they need + # to. You're welcome. + sub dependmagic { + my $target = shift; + + return "$target: build_generated\n\t\$(MAKE) depend && \$(MAKE) _$target\n_$target"; + } ''; -} @@ -177,23 +184,21 @@ PROCESSOR= {- $config{processor} -} # The main targets ################################################### -all: build_generated \ - build_libs_nodep build_engines_nodep build_programs_nodep depend +{- dependmagic('all'); -}: build_libs_nodep build_engines_nodep build_programs_nodep +{- dependmagic('build_libs'); -}: build_libs_nodep +{- dependmagic('build_engines'); -}: build_engines_nodep +{- dependmagic('build_programs'); -}: build_programs_nodep -build_libs: build_generated build_libs_nodep depend +build_generated: $(GENERATED_MANDATORY) build_libs_nodep: $(LIBS) {- join(" ",map { shlib_import($_) } @{$unified_info{libraries}}) -} -build_engines: build_generated build_engines_nodep depend build_engines_nodep: $(ENGINES) -build_programs: build_generated build_programs_nodep depend build_programs_nodep: $(PROGRAMS) $(SCRIPTS) -build_generated: $(GENERATED_MANDATORY) - # Kept around for backward compatibility build_apps build_tests: build_programs test: tests -tests: build_generated build_programs_nodep build_engines_nodep depend +{- dependmagic('tests'); -}: build_programs_nodep build_engines_nodep @rem {- output_off() if $disabled{tests}; "" -} set SRCTOP=$(SRCDIR) set BLDTOP=$(BLDDIR) From levitte at openssl.org Sun Apr 23 14:08:33 2017 From: levitte at openssl.org (Richard Levitte) Date: Sun, 23 Apr 2017 14:08:33 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1492956513.167556.16807.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via fdd00d335b21e52b80e8423a072d6f82ca83f1c6 (commit) from 2c0b8d2872057fdda22d3f41c3d4e59835b414b4 (commit) - Log ----------------------------------------------------------------- commit fdd00d335b21e52b80e8423a072d6f82ca83f1c6 Author: Richard Levitte Date: Sat Apr 22 15:06:35 2017 +0200 Port Ben's parallell Makefile hack to Windows jom is an nmake clone that does parallell building, via the same -j argument as GNU make. To make it work, we need to apply the same dependeency build up as done in 27c40a93175d4dcb559325db9354910b3d16cd4e Fixes #3272 Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3277) (cherry picked from commit f919c12f5c8b92f0318c650573e774fe6522c27c) ----------------------------------------------------------------------- Summary of changes: Configurations/windows-makefile.tmpl | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/Configurations/windows-makefile.tmpl b/Configurations/windows-makefile.tmpl index 1d7e666..77104cf 100644 --- a/Configurations/windows-makefile.tmpl +++ b/Configurations/windows-makefile.tmpl @@ -47,6 +47,13 @@ return $dso . $dsoext; } + # This makes sure things get built in the order they need + # to. You're welcome. + sub dependmagic { + my $target = shift; + + return "$target: build_generated\n\t\$(MAKE) depend && \$(MAKE) _$target\n_$target"; + } ''; -} @@ -177,23 +184,21 @@ PROCESSOR= {- $config{processor} -} # The main targets ################################################### -all: build_generated \ - build_libs_nodep build_engines_nodep build_programs_nodep depend +{- dependmagic('all'); -}: build_libs_nodep build_engines_nodep build_programs_nodep +{- dependmagic('build_libs'); -}: build_libs_nodep +{- dependmagic('build_engines'); -}: build_engines_nodep +{- dependmagic('build_programs'); -}: build_programs_nodep -build_libs: build_generated build_libs_nodep depend +build_generated: $(GENERATED_MANDATORY) build_libs_nodep: $(LIBS) {- join(" ",map { shlib_import($_) } @{$unified_info{libraries}}) -} -build_engines: build_generated build_engines_nodep depend build_engines_nodep: $(ENGINES) -build_programs: build_generated build_programs_nodep depend build_programs_nodep: $(PROGRAMS) $(SCRIPTS) -build_generated: $(GENERATED_MANDATORY) - # Kept around for backward compatibility build_apps build_tests: build_programs test: tests -tests: build_generated build_programs_nodep build_engines_nodep depend +{- dependmagic('tests'); -}: build_programs_nodep build_engines_nodep @rem {- output_off() if $disabled{tests}; "" -} set SRCTOP=$(SRCDIR) set BLDTOP=$(BLDDIR) From builds at travis-ci.org Sun Apr 23 14:29:46 2017 From: builds at travis-ci.org (Travis CI) Date: Sun, 23 Apr 2017 14:29:46 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10488 (master - f919c12) In-Reply-To: Message-ID: <58fcba497d7db_43fba9c9e3900451128@b76ea1c2-9bd6-4e88-830f-062669b562dd.mail> Build Update for openssl/openssl ------------------------------------- Build: #10488 Status: Still Failing Duration: 20 minutes and 13 seconds Commit: f919c12 (master) Author: Richard Levitte Message: Port Ben's parallell Makefile hack to Windows jom is an nmake clone that does parallell building, via the same -j argument as GNU make. To make it work, we need to apply the same dependeency build up as done in 27c40a93175d4dcb559325db9354910b3d16cd4e Fixes #3272 Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3277) View the changeset: https://github.com/openssl/openssl/compare/7643a1723ef8...f919c12f5c8b View the full build log and details: https://travis-ci.org/openssl/openssl/builds/224912889 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From levitte at openssl.org Sun Apr 23 15:10:04 2017 From: levitte at openssl.org (Richard Levitte) Date: Sun, 23 Apr 2017 15:10:04 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492960204.334757.24133.nullmailer@dev.openssl.org> The branch master has been updated via 757264207ad8650a89ea903d48ad89f61d56ea9c (commit) from f919c12f5c8b92f0318c650573e774fe6522c27c (commit) - Log ----------------------------------------------------------------- commit 757264207ad8650a89ea903d48ad89f61d56ea9c Author: Richard Levitte Date: Sun Apr 23 16:17:32 2017 +0200 Port Ben's parallell Makefile hack to VMS As far as I know, there is no MMS / MMK with parallellism today. However, it might be added in the future (perhaps in MMK at least), so we may as well prepare for it now. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3282) ----------------------------------------------------------------------- Summary of changes: Configurations/descrip.mms.tmpl | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/Configurations/descrip.mms.tmpl b/Configurations/descrip.mms.tmpl index 5b4b109..b6704f8 100644 --- a/Configurations/descrip.mms.tmpl +++ b/Configurations/descrip.mms.tmpl @@ -76,6 +76,13 @@ = qq(deassign statem deassign record); } + # This makes sure things get built in the order they need + # to. You're welcome. + sub dependmagic { + my $target = shift; + + return "$target : build_generated\n\t\pipe $(MMS) depend && \$(MMS) _$target\n_$target"; + } #use Data::Dumper; #print STDERR "DEBUG: before:\n", Dumper($unified_info{before}); #print STDERR "DEBUG: after:\n", Dumper($unified_info{after}); @@ -236,24 +243,21 @@ NODEBUG=@ # The main targets ################################################### -all : build_generated, - - build_libs_nodep, build_engines_nodep, build_programs_nodep, - - depend +{- dependmagic('all'); -} : build_libs_nodep, build_engines_nodep, build_programs_nodep +{- dependmagic('build_libs'); -} : build_libs_nodep +{- dependmagic('build_engines'); -} : build_engines_nodep +{- dependmagic('build_programs'); -} : build_programs_nodep -build_libs : build_generated, build_libs_nodep, depend +build_generated : $(GENERATED_MANDATORY) build_libs_nodep : $(LIBS), $(SHLIBS) -build_engines : build_generated, build_engines_nodep, depend build_engines_nodep : $(ENGINES) -build_programs : build_generated, build_programs_nodep, depend build_programs_nodep : $(PROGRAMS), $(SCRIPTS) -build_generated : $(GENERATED_MANDATORY) - # Kept around for backward compatibility build_apps build_tests : build_programs -test tests : build_generated, build_programs_nodep, build_engines_nodep, - - depend +test : tests +{- dependmagic('tests'); -} : build_programs_nodep, build_engines_nodep @ ! {- output_off() if $disabled{tests}; "" -} SET DEFAULT [.test]{- move("test") -} DEFINE SRCTOP {- sourcedir() -} From levitte at openssl.org Sun Apr 23 15:10:33 2017 From: levitte at openssl.org (Richard Levitte) Date: Sun, 23 Apr 2017 15:10:33 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1492960233.377189.25256.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 64697db1243ea8cac331d7fd6c9bd055b3102644 (commit) from fdd00d335b21e52b80e8423a072d6f82ca83f1c6 (commit) - Log ----------------------------------------------------------------- commit 64697db1243ea8cac331d7fd6c9bd055b3102644 Author: Richard Levitte Date: Sun Apr 23 16:17:32 2017 +0200 Port Ben's parallell Makefile hack to VMS As far as I know, there is no MMS / MMK with parallellism today. However, it might be added in the future (perhaps in MMK at least), so we may as well prepare for it now. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3282) (cherry picked from commit 757264207ad8650a89ea903d48ad89f61d56ea9c) ----------------------------------------------------------------------- Summary of changes: Configurations/descrip.mms.tmpl | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/Configurations/descrip.mms.tmpl b/Configurations/descrip.mms.tmpl index da57049..0cb34c7 100644 --- a/Configurations/descrip.mms.tmpl +++ b/Configurations/descrip.mms.tmpl @@ -84,6 +84,13 @@ = qq(deassign statem deassign record); } + # This makes sure things get built in the order they need + # to. You're welcome. + sub dependmagic { + my $target = shift; + + return "$target : build_generated\n\t\pipe $(MMS) depend && \$(MMS) _$target\n_$target"; + } #use Data::Dumper; #print STDERR "DEBUG: before:\n", Dumper($unified_info{before}); #print STDERR "DEBUG: after:\n", Dumper($unified_info{after}); @@ -241,24 +248,21 @@ NODEBUG=@ # The main targets ################################################### -all : build_generated, - - build_libs_nodep, build_engines_nodep, build_programs_nodep, - - depend +{- dependmagic('all'); -} : build_libs_nodep, build_engines_nodep, build_programs_nodep +{- dependmagic('build_libs'); -} : build_libs_nodep +{- dependmagic('build_engines'); -} : build_engines_nodep +{- dependmagic('build_programs'); -} : build_programs_nodep -build_libs : build_generated, build_libs_nodep, depend +build_generated : $(GENERATED_MANDATORY) build_libs_nodep : $(LIBS), $(SHLIBS) -build_engines : build_generated, build_engines_nodep, depend build_engines_nodep : $(ENGINES) -build_programs : build_generated, build_programs_nodep, depend build_programs_nodep : $(PROGRAMS), $(SCRIPTS) -build_generated : $(GENERATED_MANDATORY) - # Kept around for backward compatibility build_apps build_tests : build_programs -test tests : build_generated, build_programs_nodep, build_engines_nodep, - - depend +test : tests +{- dependmagic('tests'); -} : build_programs_nodep, build_engines_nodep @ ! {- output_off() if $disabled{tests}; "" -} SET DEFAULT [.test]{- move("test") -} DEFINE SRCTOP {- sourcedir() -} From builds at travis-ci.org Sun Apr 23 15:30:18 2017 From: builds at travis-ci.org (Travis CI) Date: Sun, 23 Apr 2017 15:30:18 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10491 (master - 7572642) In-Reply-To: Message-ID: <58fcc88a2bef7_43fba9cbd2590536174@b76ea1c2-9bd6-4e88-830f-062669b562dd.mail> Build Update for openssl/openssl ------------------------------------- Build: #10491 Status: Still Failing Duration: 19 minutes and 5 seconds Commit: 7572642 (master) Author: Richard Levitte Message: Port Ben's parallell Makefile hack to VMS As far as I know, there is no MMS / MMK with parallellism today. However, it might be added in the future (perhaps in MMK at least), so we may as well prepare for it now. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3282) View the changeset: https://github.com/openssl/openssl/compare/f919c12f5c8b...757264207ad8 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/224925107 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From levitte at openssl.org Mon Apr 24 01:30:47 2017 From: levitte at openssl.org (Richard Levitte) Date: Mon, 24 Apr 2017 01:30:47 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1492997447.158187.20801.nullmailer@dev.openssl.org> The branch master has been updated via e8d542121b10158c1bdd5fbe02e0d17c59470cae (commit) from 757264207ad8650a89ea903d48ad89f61d56ea9c (commit) - Log ----------------------------------------------------------------- commit e8d542121b10158c1bdd5fbe02e0d17c59470cae Author: Alex Gaynor Date: Sun Apr 23 21:09:12 2017 -0400 Annotate ASN.1 attributes of the jurisdictionCountryName NID EV Guidelines section 9.2.5 says jurisdictionCountryName follows the same ASN.1 encoding rules as countryName. Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3284) ----------------------------------------------------------------------- Summary of changes: crypto/asn1/tbl_standard.h | 1 + 1 file changed, 1 insertion(+) diff --git a/crypto/asn1/tbl_standard.h b/crypto/asn1/tbl_standard.h index 7fb04f8..a5a5bc8 100644 --- a/crypto/asn1/tbl_standard.h +++ b/crypto/asn1/tbl_standard.h @@ -50,6 +50,7 @@ static const ASN1_STRING_TABLE tbl_standard[] = { {NID_ms_csp_name, -1, -1, B_ASN1_BMPSTRING, STABLE_NO_MASK}, {NID_rfc822Mailbox, 1, ub_rfc822_mailbox, B_ASN1_IA5STRING, STABLE_NO_MASK}, + {NID_jurisdictionCountryName, 2, 2, B_ASN1_PRINTABLESTRING, STABLE_NO_MASK}, {NID_INN, 1, 12, B_ASN1_NUMERICSTRING, STABLE_NO_MASK}, {NID_OGRN, 1, 13, B_ASN1_NUMERICSTRING, STABLE_NO_MASK}, {NID_SNILS, 1, 11, B_ASN1_NUMERICSTRING, STABLE_NO_MASK} From levitte at openssl.org Mon Apr 24 01:34:02 2017 From: levitte at openssl.org (Richard Levitte) Date: Mon, 24 Apr 2017 01:34:02 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1492997642.174687.21785.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 52c0c4d13e8220f19eb2b205dc0c30508c4a51a9 (commit) from 64697db1243ea8cac331d7fd6c9bd055b3102644 (commit) - Log ----------------------------------------------------------------- commit 52c0c4d13e8220f19eb2b205dc0c30508c4a51a9 Author: Alex Gaynor Date: Sun Apr 23 21:09:12 2017 -0400 Annotate ASN.1 attributes of the jurisdictionCountryName NID EV Guidelines section 9.2.5 says jurisdictionCountryName follows the same ASN.1 encoding rules as countryName. Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3284) (cherry picked from commit e8d542121b10158c1bdd5fbe02e0d17c59470cae) ----------------------------------------------------------------------- Summary of changes: crypto/asn1/a_strnid.c | 1 + 1 file changed, 1 insertion(+) diff --git a/crypto/asn1/a_strnid.c b/crypto/asn1/a_strnid.c index 53832c8..aadc26c 100644 --- a/crypto/asn1/a_strnid.c +++ b/crypto/asn1/a_strnid.c @@ -149,6 +149,7 @@ static const ASN1_STRING_TABLE tbl_standard[] = { {NID_ms_csp_name, -1, -1, B_ASN1_BMPSTRING, STABLE_NO_MASK}, {NID_rfc822Mailbox, 1, ub_rfc822_mailbox, B_ASN1_IA5STRING, STABLE_NO_MASK}, + {NID_jurisdictionCountryName, 2, 2, B_ASN1_PRINTABLESTRING, STABLE_NO_MASK}, {NID_INN, 1, 12, B_ASN1_NUMERICSTRING, STABLE_NO_MASK}, {NID_OGRN, 1, 13, B_ASN1_NUMERICSTRING, STABLE_NO_MASK}, {NID_SNILS, 1, 11, B_ASN1_NUMERICSTRING, STABLE_NO_MASK} From levitte at openssl.org Mon Apr 24 01:37:40 2017 From: levitte at openssl.org (Richard Levitte) Date: Mon, 24 Apr 2017 01:37:40 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_0_2-stable update Message-ID: <1492997860.979899.22809.nullmailer@dev.openssl.org> The branch OpenSSL_1_0_2-stable has been updated via fb2345a1aeecb51a2426a5890102f402dceee618 (commit) from 60a70a510750f06007f92c22f5d130a1ce3150d2 (commit) - Log ----------------------------------------------------------------- commit fb2345a1aeecb51a2426a5890102f402dceee618 Author: Alex Gaynor Date: Sun Apr 23 21:09:12 2017 -0400 Annotate ASN.1 attributes of the jurisdictionCountryName NID EV Guidelines section 9.2.5 says jurisdictionCountryName follows the same ASN.1 encoding rules as countryName. Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3284) (cherry picked from commit 52c0c4d13e8220f19eb2b205dc0c30508c4a51a9) ----------------------------------------------------------------------- Summary of changes: crypto/asn1/a_strnid.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/crypto/asn1/a_strnid.c b/crypto/asn1/a_strnid.c index 2d2303d..99ffe73 100644 --- a/crypto/asn1/a_strnid.c +++ b/crypto/asn1/a_strnid.c @@ -192,7 +192,8 @@ static const ASN1_STRING_TABLE tbl_standard[] = { {NID_name, 1, ub_name, DIRSTRING_TYPE, 0}, {NID_dnQualifier, -1, -1, B_ASN1_PRINTABLESTRING, STABLE_NO_MASK}, {NID_domainComponent, 1, -1, B_ASN1_IA5STRING, STABLE_NO_MASK}, - {NID_ms_csp_name, -1, -1, B_ASN1_BMPSTRING, STABLE_NO_MASK} + {NID_ms_csp_name, -1, -1, B_ASN1_BMPSTRING, STABLE_NO_MASK}, + {NID_jurisdictionCountryName, 2, 2, B_ASN1_PRINTABLESTRING, STABLE_NO_MASK} }; static int sk_table_cmp(const ASN1_STRING_TABLE *const *a, From builds at travis-ci.org Mon Apr 24 01:51:59 2017 From: builds at travis-ci.org (Travis CI) Date: Mon, 24 Apr 2017 01:51:59 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10494 (master - e8d5421) In-Reply-To: Message-ID: <58fd5a3f68f6c_43f8d397d12ec82386f@2c10b3f5-3198-492a-9694-3eadad293587.mail> Build Update for openssl/openssl ------------------------------------- Build: #10494 Status: Still Failing Duration: 19 minutes and 50 seconds Commit: e8d5421 (master) Author: Alex Gaynor Message: Annotate ASN.1 attributes of the jurisdictionCountryName NID EV Guidelines section 9.2.5 says jurisdictionCountryName follows the same ASN.1 encoding rules as countryName. Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3284) View the changeset: https://github.com/openssl/openssl/compare/757264207ad8...e8d542121b10 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/225040185 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From levitte at openssl.org Mon Apr 24 11:08:10 2017 From: levitte at openssl.org (Richard Levitte) Date: Mon, 24 Apr 2017 11:08:10 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493032090.612829.29900.nullmailer@dev.openssl.org> The branch master has been updated via cb2a6eb76ef7304a1b76ac5e2578cd9d5f59af28 (commit) from e8d542121b10158c1bdd5fbe02e0d17c59470cae (commit) - Log ----------------------------------------------------------------- commit cb2a6eb76ef7304a1b76ac5e2578cd9d5f59af28 Author: Richard Levitte Date: Mon Apr 24 09:31:45 2017 +0200 Typo fix in Configurations/descrip.mms.tmpl ... on the theme "I could have sworn I saved that fix!" Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3285) ----------------------------------------------------------------------- Summary of changes: Configurations/descrip.mms.tmpl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Configurations/descrip.mms.tmpl b/Configurations/descrip.mms.tmpl index b6704f8..cbec11c 100644 --- a/Configurations/descrip.mms.tmpl +++ b/Configurations/descrip.mms.tmpl @@ -81,7 +81,7 @@ sub dependmagic { my $target = shift; - return "$target : build_generated\n\t\pipe $(MMS) depend && \$(MMS) _$target\n_$target"; + return "$target : build_generated\n\t\pipe \$(MMS) depend && \$(MMS) _$target\n_$target"; } #use Data::Dumper; #print STDERR "DEBUG: before:\n", Dumper($unified_info{before}); From levitte at openssl.org Mon Apr 24 11:08:35 2017 From: levitte at openssl.org (Richard Levitte) Date: Mon, 24 Apr 2017 11:08:35 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1493032115.201593.30974.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via c13ff3d222d38f66f5cde3d46d8c8dd6b2055d82 (commit) from 52c0c4d13e8220f19eb2b205dc0c30508c4a51a9 (commit) - Log ----------------------------------------------------------------- commit c13ff3d222d38f66f5cde3d46d8c8dd6b2055d82 Author: Richard Levitte Date: Mon Apr 24 09:31:45 2017 +0200 Typo fix in Configurations/descrip.mms.tmpl ... on the theme "I could have sworn I saved that fix!" Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3285) (cherry picked from commit cb2a6eb76ef7304a1b76ac5e2578cd9d5f59af28) ----------------------------------------------------------------------- Summary of changes: Configurations/descrip.mms.tmpl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Configurations/descrip.mms.tmpl b/Configurations/descrip.mms.tmpl index 0cb34c7..c4eb0a8 100644 --- a/Configurations/descrip.mms.tmpl +++ b/Configurations/descrip.mms.tmpl @@ -89,7 +89,7 @@ sub dependmagic { my $target = shift; - return "$target : build_generated\n\t\pipe $(MMS) depend && \$(MMS) _$target\n_$target"; + return "$target : build_generated\n\t\pipe \$(MMS) depend && \$(MMS) _$target\n_$target"; } #use Data::Dumper; #print STDERR "DEBUG: before:\n", Dumper($unified_info{before}); From builds at travis-ci.org Mon Apr 24 11:30:14 2017 From: builds at travis-ci.org (Travis CI) Date: Mon, 24 Apr 2017 11:30:14 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10498 (master - cb2a6eb) In-Reply-To: Message-ID: <58fde1c6b04b5_43fc817dc1d78410271@acb9ff18-a4c8-4a06-a7fd-ef5d0f0fa223.mail> Build Update for openssl/openssl ------------------------------------- Build: #10498 Status: Still Failing Duration: 21 minutes and 0 seconds Commit: cb2a6eb (master) Author: Richard Levitte Message: Typo fix in Configurations/descrip.mms.tmpl ... on the theme "I could have sworn I saved that fix!" Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3285) View the changeset: https://github.com/openssl/openssl/compare/e8d542121b10...cb2a6eb76ef7 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/225163919 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Mon Apr 24 12:29:31 2017 From: no-reply at appveyor.com (AppVeyor) Date: Mon, 24 Apr 2017 12:29:31 +0000 Subject: [openssl-commits] Build failed: openssl master.9813 Message-ID: <20170424122930.10618.32702.B4E61EF9@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Mon Apr 24 13:35:37 2017 From: no-reply at appveyor.com (AppVeyor) Date: Mon, 24 Apr 2017 13:35:37 +0000 Subject: [openssl-commits] Build completed: openssl master.9814 Message-ID: <20170424133533.9704.65981.B6E7B8B6@appveyor.com> An HTML attachment was scrubbed... URL: From rsalz at openssl.org Mon Apr 24 13:50:30 2017 From: rsalz at openssl.org (Rich Salz) Date: Mon, 24 Apr 2017 13:50:30 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493041830.567606.2412.nullmailer@dev.openssl.org> The branch master has been updated via 26fb4b033c664df7e220db1960f1cdad73bbba06 (commit) from cb2a6eb76ef7304a1b76ac5e2578cd9d5f59af28 (commit) - Log ----------------------------------------------------------------- commit 26fb4b033c664df7e220db1960f1cdad73bbba06 Author: Rich Salz Date: Mon Apr 24 09:41:51 2017 -0400 if log fails, avoid pms getting double free doing the pms assignment after log is successful Reviewed-by: Richard Levitte Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3278) ----------------------------------------------------------------------- Summary of changes: ssl/statem/statem_clnt.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ssl/statem/statem_clnt.c b/ssl/statem/statem_clnt.c index 8207dde..a8bb566 100644 --- a/ssl/statem/statem_clnt.c +++ b/ssl/statem/statem_clnt.c @@ -2854,13 +2854,13 @@ static int tls_construct_cke_rsa(SSL *s, WPACKET *pkt, int *al) goto err; } - s->s3->tmp.pms = pms; - s->s3->tmp.pmslen = pmslen; - /* Log the premaster secret, if logging is enabled. */ if (!ssl_log_rsa_client_key_exchange(s, encdata, enclen, pms, pmslen)) goto err; + s->s3->tmp.pms = pms; + s->s3->tmp.pmslen = pmslen; + return 1; err: OPENSSL_clear_free(pms, pmslen); From builds at travis-ci.org Mon Apr 24 14:14:51 2017 From: builds at travis-ci.org (Travis CI) Date: Mon, 24 Apr 2017 14:14:51 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10503 (master - 26fb4b0) In-Reply-To: Message-ID: <58fe085b590b4_43fec2bce383848378@60321f1a-129e-413b-bbb7-36ab2c5fda8e.mail> Build Update for openssl/openssl ------------------------------------- Build: #10503 Status: Still Failing Duration: 21 minutes and 12 seconds Commit: 26fb4b0 (master) Author: Rich Salz Message: if log fails, avoid pms getting double free doing the pms assignment after log is successful Reviewed-by: Richard Levitte Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3278) View the changeset: https://github.com/openssl/openssl/compare/cb2a6eb76ef7...26fb4b033c66 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/225216501 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From rsalz at openssl.org Mon Apr 24 14:31:12 2017 From: rsalz at openssl.org (Rich Salz) Date: Mon, 24 Apr 2017 14:31:12 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_0_2-stable update Message-ID: <1493044272.561546.19153.nullmailer@dev.openssl.org> The branch OpenSSL_1_0_2-stable has been updated via b99f1023f8ac357ffb8d009cf78fba586de26b5a (commit) from fb2345a1aeecb51a2426a5890102f402dceee618 (commit) - Log ----------------------------------------------------------------- commit b99f1023f8ac357ffb8d009cf78fba586de26b5a Author: Rich Salz Date: Mon Apr 24 10:30:26 2017 -0400 check length sanity before correcting in EVP_CTRL_AEAD_TLS1_AAD Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3276) ----------------------------------------------------------------------- Summary of changes: crypto/evp/e_aes.c | 7 ++++++- crypto/evp/e_aes_cbc_hmac_sha1.c | 2 ++ crypto/evp/e_aes_cbc_hmac_sha256.c | 2 ++ 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/crypto/evp/e_aes.c b/crypto/evp/e_aes.c index 47fcd82..b45b364 100644 --- a/crypto/evp/e_aes.c +++ b/crypto/evp/e_aes.c @@ -1237,10 +1237,15 @@ static int aes_gcm_ctrl(EVP_CIPHER_CTX *c, int type, int arg, void *ptr) { unsigned int len = c->buf[arg - 2] << 8 | c->buf[arg - 1]; /* Correct length for explicit IV */ + if (len < EVP_GCM_TLS_EXPLICIT_IV_LEN) + return 0; len -= EVP_GCM_TLS_EXPLICIT_IV_LEN; /* If decrypting correct for tag too */ - if (!c->encrypt) + if (!c->encrypt) { + if (len < EVP_GCM_TLS_TAG_LEN) + return 0; len -= EVP_GCM_TLS_TAG_LEN; + } c->buf[arg - 2] = len >> 8; c->buf[arg - 1] = len & 0xff; } diff --git a/crypto/evp/e_aes_cbc_hmac_sha1.c b/crypto/evp/e_aes_cbc_hmac_sha1.c index 6dfd590..d114710 100644 --- a/crypto/evp/e_aes_cbc_hmac_sha1.c +++ b/crypto/evp/e_aes_cbc_hmac_sha1.c @@ -859,6 +859,8 @@ static int aesni_cbc_hmac_sha1_ctrl(EVP_CIPHER_CTX *ctx, int type, int arg, key->payload_length = len; if ((key->aux.tls_ver = p[arg - 4] << 8 | p[arg - 3]) >= TLS1_1_VERSION) { + if (len < AES_BLOCK_SIZE) + return 0; len -= AES_BLOCK_SIZE; p[arg - 2] = len >> 8; p[arg - 1] = len; diff --git a/crypto/evp/e_aes_cbc_hmac_sha256.c b/crypto/evp/e_aes_cbc_hmac_sha256.c index 8422aee..917ae07 100644 --- a/crypto/evp/e_aes_cbc_hmac_sha256.c +++ b/crypto/evp/e_aes_cbc_hmac_sha256.c @@ -836,6 +836,8 @@ static int aesni_cbc_hmac_sha256_ctrl(EVP_CIPHER_CTX *ctx, int type, int arg, key->payload_length = len; if ((key->aux.tls_ver = p[arg - 4] << 8 | p[arg - 3]) >= TLS1_1_VERSION) { + if (len < AES_BLOCK_SIZE) + return 0; len -= AES_BLOCK_SIZE; p[arg - 2] = len >> 8; p[arg - 1] = len; From levitte at openssl.org Mon Apr 24 15:14:24 2017 From: levitte at openssl.org (Richard Levitte) Date: Mon, 24 Apr 2017 15:14:24 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493046864.455714.24180.nullmailer@dev.openssl.org> The branch master has been updated via dd94c37a5c2f783102b125c620000b9719c662d3 (commit) from 26fb4b033c664df7e220db1960f1cdad73bbba06 (commit) - Log ----------------------------------------------------------------- commit dd94c37a5c2f783102b125c620000b9719c662d3 Author: Jon Spillett Date: Wed Apr 12 16:09:05 2017 +1000 Converted the bio_enc tests to use new test framework. This includes reworked reworked tests to do both encrypt and decrypt, and a few more ciphers added. Reviewed-by: Matt Caswell Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3197) ----------------------------------------------------------------------- Summary of changes: test/bio_enc_test.c | 188 ++++++++++++++++++++++++++++++++++++++-------------- test/build.info | 2 +- 2 files changed, 140 insertions(+), 50 deletions(-) diff --git a/test/bio_enc_test.c b/test/bio_enc_test.c index fad1a19..9b0dd6d 100644 --- a/test/bio_enc_test.c +++ b/test/bio_enc_test.c @@ -12,50 +12,74 @@ #include #include -int main() +#include "test_main.h" +#include "testutil.h" + +#define ENCRYPT 1 +#define DECRYPT 0 + +#define DATA_SIZE 1024 +#define MAX_IV 32 +#define BUF_SIZE (DATA_SIZE + MAX_IV) + +static const unsigned char KEY[] = { + 0x51, 0x50, 0xd1, 0x77, 0x2f, 0x50, 0x83, 0x4a, + 0x50, 0x3e, 0x06, 0x9a, 0x97, 0x3f, 0xbd, 0x7c, + 0xe6, 0x1c, 0x43, 0x2b, 0x72, 0x0b, 0x19, 0xd1, + 0x8e, 0xc8, 0xd8, 0x4b, 0xdc, 0x63, 0x15, 0x1b +}; + +static const unsigned char IV[] = { + 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, + 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, + 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, + 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08 +}; + +static int do_bio_cipher(const EVP_CIPHER* cipher, const unsigned char* key, + const unsigned char* iv) { BIO *b; - static const unsigned char key[16] = { 0 }; - static unsigned char inp[1024] = { 0 }; - unsigned char out[1024], ref[1024]; + static unsigned char inp[BUF_SIZE] = { 0 }; + unsigned char out[BUF_SIZE], ref[BUF_SIZE]; int i, lref, len; /* Fill buffer with non-zero data so that over steps can be detected */ - if (RAND_bytes(inp, sizeof(inp)) <= 0) - return -1; + if (!TEST_int_gt(RAND_bytes(inp, DATA_SIZE), 0)) + return 0; - /* - * Exercise CBC cipher - */ + /* Encrypt tests */ /* reference output for single-chunk operation */ b = BIO_new(BIO_f_cipher()); - if (!BIO_set_cipher(b, EVP_aes_128_cbc(), key, NULL, 0)) - return -1; - BIO_push(b, BIO_new_mem_buf(inp, sizeof(inp))); + if (!TEST_true(BIO_set_cipher(b, cipher, key, iv, ENCRYPT))) + return 0; + BIO_push(b, BIO_new_mem_buf(inp, DATA_SIZE)); lref = BIO_read(b, ref, sizeof(ref)); BIO_free_all(b); /* perform split operations and compare to reference */ for (i = 1; i < lref; i++) { b = BIO_new(BIO_f_cipher()); - if (!BIO_set_cipher(b, EVP_aes_128_cbc(), key, NULL, 0)) - return -1; - BIO_push(b, BIO_new_mem_buf(inp, sizeof(inp))); + if (!TEST_true(BIO_set_cipher(b, cipher, key, iv, ENCRYPT))) { + TEST_info("Split encrypt failed @ operation %d", i); + return 0; + } + BIO_push(b, BIO_new_mem_buf(inp, DATA_SIZE)); memset(out, 0, sizeof(out)); out[i] = ~ref[i]; len = BIO_read(b, out, i); /* check for overstep */ - if (out[i] != (unsigned char)~ref[i]) { - fprintf(stderr, "CBC output overstep@%d\n", i); - return 1; + if (!TEST_uchar_eq(out[i], (unsigned char)~ref[i])) { + TEST_info("Encrypt overstep check failed @ operation %d", i); + return 0; } len += BIO_read(b, out + len, sizeof(out) - len); BIO_free_all(b); - if (len != lref || memcmp(out, ref, len)) { - fprintf(stderr, "CBC output mismatch@%d\n", i); - return 2; + if (!TEST_mem_eq(out, len, ref, lref)) { + TEST_info("Encrypt compare failed @ operation %d", i); + return 0; } } @@ -64,53 +88,61 @@ int main() int delta; b = BIO_new(BIO_f_cipher()); - if (!BIO_set_cipher(b, EVP_aes_128_cbc(), key, NULL, 0)) - return -1; - BIO_push(b, BIO_new_mem_buf(inp, sizeof(inp))); + if (!TEST_true(BIO_set_cipher(b, cipher, key, iv, ENCRYPT))) { + TEST_info("Small chunk encrypt failed @ operation %d", i); + return 0; + } + BIO_push(b, BIO_new_mem_buf(inp, DATA_SIZE)); memset(out, 0, sizeof(out)); for (len = 0; (delta = BIO_read(b, out + len, i)); ) { len += delta; } BIO_free_all(b); - if (len != lref || memcmp(out, ref, len)) { - fprintf(stderr, "CBC output mismatch@%d\n", i); - return 3; + if (!TEST_mem_eq(out, len, ref, lref)) { + TEST_info("Small chunk encrypt compare failed @ operation %d", i); + return 0; } } - /* - * Exercise CTR cipher - */ + /* Decrypt tests */ /* reference output for single-chunk operation */ b = BIO_new(BIO_f_cipher()); - if (!BIO_set_cipher(b, EVP_aes_128_ctr(), key, NULL, 0)) - return -1; - BIO_push(b, BIO_new_mem_buf(inp, sizeof(inp))); - lref = BIO_read(b, ref, sizeof(ref)); + if (!TEST_true(BIO_set_cipher(b, cipher, key, iv, DECRYPT))) + return 0; + /* Use original reference output as input */ + BIO_push(b, BIO_new_mem_buf(ref, lref)); + (void)BIO_flush(b); + memset(out, 0, sizeof(out)); + len = BIO_read(b, out, sizeof(out)); BIO_free_all(b); + if (!TEST_mem_eq(inp, DATA_SIZE, out, len)) + return 0; + /* perform split operations and compare to reference */ for (i = 1; i < lref; i++) { b = BIO_new(BIO_f_cipher()); - if (!BIO_set_cipher(b, EVP_aes_128_ctr(), key, NULL, 0)) - return -1; - BIO_push(b, BIO_new_mem_buf(inp, sizeof(inp))); + if (!TEST_true(BIO_set_cipher(b, cipher, key, iv, DECRYPT))) { + TEST_info("Split decrypt failed @ operation %d", i); + return 0; + } + BIO_push(b, BIO_new_mem_buf(ref, lref)); memset(out, 0, sizeof(out)); out[i] = ~ref[i]; len = BIO_read(b, out, i); /* check for overstep */ - if (out[i] != (unsigned char)~ref[i]) { - fprintf(stderr, "CTR output overstep@%d\n", i); - return 4; + if (!TEST_uchar_eq(out[i], (unsigned char)~ref[i])) { + TEST_info("Decrypt overstep check failed @ operation %d", i); + return 0; } len += BIO_read(b, out + len, sizeof(out) - len); BIO_free_all(b); - if (len != lref || memcmp(out, ref, len)) { - fprintf(stderr, "CTR output mismatch@%d\n", i); - return 5; + if (!TEST_mem_eq(inp, DATA_SIZE, out, len)) { + TEST_info("Decrypt compare failed @ operation %d", i); + return 0; } } @@ -119,20 +151,78 @@ int main() int delta; b = BIO_new(BIO_f_cipher()); - if (!BIO_set_cipher(b, EVP_aes_128_ctr(), key, NULL, 0)) - return -1; - BIO_push(b, BIO_new_mem_buf(inp, sizeof(inp))); + if (!TEST_true(BIO_set_cipher(b, cipher, key, iv, DECRYPT))) { + TEST_info("Small chunk decrypt failed @ operation %d", i); + return 0; + } + BIO_push(b, BIO_new_mem_buf(ref, lref)); memset(out, 0, sizeof(out)); for (len = 0; (delta = BIO_read(b, out + len, i)); ) { len += delta; } BIO_free_all(b); - if (len != lref || memcmp(out, ref, len)) { - fprintf(stderr, "CTR output mismatch@%d\n", i); - return 6; + if (!TEST_mem_eq(inp, DATA_SIZE, out, len)) { + TEST_info("Small chunk decrypt compare failed @ operation %d", i); + return 0; } } + return 1; +} + +static int do_test_bio_cipher(const EVP_CIPHER* cipher, int idx) +{ + switch(idx) + { + case 0: + return do_bio_cipher(cipher, KEY, NULL); + case 1: + return do_bio_cipher(cipher, KEY, IV); + } return 0; } + +static int test_bio_enc_aes_128_cbc(int idx) +{ + return do_test_bio_cipher(EVP_aes_128_cbc(), idx); +} + +static int test_bio_enc_aes_128_ctr(int idx) +{ + return do_test_bio_cipher(EVP_aes_128_ctr(), idx); +} + +static int test_bio_enc_aes_256_cfb(int idx) +{ + return do_test_bio_cipher(EVP_aes_256_cfb(), idx); +} + +static int test_bio_enc_aes_256_ofb(int idx) +{ + return do_test_bio_cipher(EVP_aes_256_ofb(), idx); +} + +static int test_bio_enc_chacha20(int idx) +{ + return do_test_bio_cipher(EVP_chacha20(), idx); +} + +static int test_bio_enc_chacha20_poly1305(int idx) +{ + return do_test_bio_cipher(EVP_chacha20_poly1305(), idx); +} + +void register_tests(void) +{ + ADD_ALL_TESTS(test_bio_enc_aes_128_cbc, 2); + ADD_ALL_TESTS(test_bio_enc_aes_128_ctr, 2); + ADD_ALL_TESTS(test_bio_enc_aes_256_cfb, 2); + ADD_ALL_TESTS(test_bio_enc_aes_256_ofb, 2); +# ifndef OPENSSL_NO_CHACHA + ADD_ALL_TESTS(test_bio_enc_chacha20, 2); +# ifndef OPENSSL_NO_POLY1305 + ADD_ALL_TESTS(test_bio_enc_chacha20_poly1305, 2); +# endif +# endif +} diff --git a/test/build.info b/test/build.info index 4bfa6f4..5a2e03e 100644 --- a/test/build.info +++ b/test/build.info @@ -280,7 +280,7 @@ IF[{- !$disabled{tests} -}] INCLUDE[sslcorrupttest]=../include . DEPEND[sslcorrupttest]=../libcrypto ../libssl - SOURCE[bio_enc_test]=bio_enc_test.c + SOURCE[bio_enc_test]=bio_enc_test.c testutil.c test_main.c INCLUDE[bio_enc_test]=../include DEPEND[bio_enc_test]=../libcrypto From matt at openssl.org Mon Apr 24 15:15:49 2017 From: matt at openssl.org (Matt Caswell) Date: Mon, 24 Apr 2017 15:15:49 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493046949.712938.26507.nullmailer@dev.openssl.org> The branch master has been updated via 8af91fd9d08487e0dffb6ccac5f42633c964f3f0 (commit) from dd94c37a5c2f783102b125c620000b9719c662d3 (commit) - Log ----------------------------------------------------------------- commit 8af91fd9d08487e0dffb6ccac5f42633c964f3f0 Author: Matt Caswell Date: Wed Apr 12 17:02:42 2017 +0100 Don't fail the connection in SSLv3 if server selects ECDHE ECDHE is not properly defined for SSLv3. Commit fe55c4a2 prevented ECDHE from being selected in that protocol. However, historically, servers do still select ECDHE anyway so that commit causes interoperability problems. Clients that previously worked when talking to an SSLv3 server could now fail. This commit introduces an exception which enables a client to continue in SSLv3 if the server selected ECDHE. [extended tests] Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3204) ----------------------------------------------------------------------- Summary of changes: ssl/ssl_lib.c | 2 +- ssl/ssl_locl.h | 2 +- ssl/statem/statem_clnt.c | 4 ++-- ssl/t1_lib.c | 20 ++++++++++++++++---- 4 files changed, 20 insertions(+), 8 deletions(-) diff --git a/ssl/ssl_lib.c b/ssl/ssl_lib.c index 4de2b47..c59aa84 100644 --- a/ssl/ssl_lib.c +++ b/ssl/ssl_lib.c @@ -2229,7 +2229,7 @@ STACK_OF(SSL_CIPHER) *SSL_get1_supported_ciphers(SSL *s) ssl_set_client_disabled(s); for (i = 0; i < sk_SSL_CIPHER_num(ciphers); i++) { const SSL_CIPHER *c = sk_SSL_CIPHER_value(ciphers, i); - if (!ssl_cipher_disabled(s, c, SSL_SECOP_CIPHER_SUPPORTED)) { + if (!ssl_cipher_disabled(s, c, SSL_SECOP_CIPHER_SUPPORTED, 0)) { if (!sk) sk = sk_SSL_CIPHER_new_null(); if (!sk) diff --git a/ssl/ssl_locl.h b/ssl/ssl_locl.h index 5ca7237..8eb6ff5 100644 --- a/ssl/ssl_locl.h +++ b/ssl/ssl_locl.h @@ -2394,7 +2394,7 @@ __owur int tls1_set_peer_legacy_sigalg(SSL *s, const EVP_PKEY *pkey); __owur size_t tls12_get_psigalgs(SSL *s, int sent, const uint16_t **psigs); __owur int tls12_check_peer_sigalg(SSL *s, uint16_t, EVP_PKEY *pkey); void ssl_set_client_disabled(SSL *s); -__owur int ssl_cipher_disabled(SSL *s, const SSL_CIPHER *c, int op); +__owur int ssl_cipher_disabled(SSL *s, const SSL_CIPHER *c, int op, int echde); __owur int ssl_handshake_hash(SSL *s, unsigned char *out, size_t outlen, size_t *hashlen); diff --git a/ssl/statem/statem_clnt.c b/ssl/statem/statem_clnt.c index a8bb566..0452729 100644 --- a/ssl/statem/statem_clnt.c +++ b/ssl/statem/statem_clnt.c @@ -1259,7 +1259,7 @@ static int set_client_ciphersuite(SSL *s, const unsigned char *cipherchars) * If it is a disabled cipher we either didn't send it in client hello, * or it's not allowed for the selected protocol. So we return an error. */ - if (ssl_cipher_disabled(s, c, SSL_SECOP_CIPHER_CHECK)) { + if (ssl_cipher_disabled(s, c, SSL_SECOP_CIPHER_CHECK, 1)) { SSLerr(SSL_F_SET_CLIENT_CIPHERSUITE, SSL_R_WRONG_CIPHER_RETURNED); return 0; } @@ -3552,7 +3552,7 @@ int ssl_cipher_list_to_bytes(SSL *s, STACK_OF(SSL_CIPHER) *sk, WPACKET *pkt) c = sk_SSL_CIPHER_value(sk, i); /* Skip disabled ciphers */ - if (ssl_cipher_disabled(s, c, SSL_SECOP_CIPHER_SUPPORTED)) + if (ssl_cipher_disabled(s, c, SSL_SECOP_CIPHER_SUPPORTED, 0)) continue; if (!s->method->put_cipher_by_char(c, pkt, &len)) { diff --git a/ssl/t1_lib.c b/ssl/t1_lib.c index 698c25b..5007f7e 100644 --- a/ssl/t1_lib.c +++ b/ssl/t1_lib.c @@ -1034,19 +1034,31 @@ void ssl_set_client_disabled(SSL *s) * @s: SSL connection that you want to use the cipher on * @c: cipher to check * @op: Security check that you want to do + * @ecdhe: If set to 1 then TLSv1 ECDHE ciphers are also allowed in SSLv3 * * Returns 1 when it's disabled, 0 when enabled. */ -int ssl_cipher_disabled(SSL *s, const SSL_CIPHER *c, int op) +int ssl_cipher_disabled(SSL *s, const SSL_CIPHER *c, int op, int ecdhe) { if (c->algorithm_mkey & s->s3->tmp.mask_k || c->algorithm_auth & s->s3->tmp.mask_a) return 1; if (s->s3->tmp.max_ver == 0) return 1; - if (!SSL_IS_DTLS(s) && ((c->min_tls > s->s3->tmp.max_ver) - || (c->max_tls < s->s3->tmp.min_ver))) - return 1; + if (!SSL_IS_DTLS(s)) { + int min_tls = c->min_tls; + + /* + * For historical reasons we will allow ECHDE to be selected by a server + * in SSLv3 if we are a client + */ + if (min_tls == TLS1_VERSION && ecdhe + && (c->algorithm_mkey & (SSL_kECDHE | SSL_kECDHEPSK)) != 0) + min_tls = SSL3_VERSION; + + if ((min_tls > s->s3->tmp.max_ver) || (c->max_tls < s->s3->tmp.min_ver)) + return 1; + } if (SSL_IS_DTLS(s) && (DTLS_VERSION_GT(c->min_dtls, s->s3->tmp.max_ver) || DTLS_VERSION_LT(c->max_dtls, s->s3->tmp.min_ver))) return 1; From rsalz at openssl.org Mon Apr 24 15:30:46 2017 From: rsalz at openssl.org (Rich Salz) Date: Mon, 24 Apr 2017 15:30:46 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493047846.680662.7516.nullmailer@dev.openssl.org> The branch master has been updated via a68d35057ba2676bc9b9a16f4952791eef4b9905 (commit) from 8af91fd9d08487e0dffb6ccac5f42633c964f3f0 (commit) - Log ----------------------------------------------------------------- commit a68d35057ba2676bc9b9a16f4952791eef4b9905 Author: Rich Salz Date: Mon Apr 24 11:19:56 2017 -0400 check length sanity before correcting in EVP_CTRL_AEAD_TLS1_AAD Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3289) ----------------------------------------------------------------------- Summary of changes: crypto/evp/e_aes_cbc_hmac_sha1.c | 2 ++ crypto/evp/e_aes_cbc_hmac_sha256.c | 2 ++ engines/e_dasync.c | 2 ++ 3 files changed, 6 insertions(+) diff --git a/crypto/evp/e_aes_cbc_hmac_sha1.c b/crypto/evp/e_aes_cbc_hmac_sha1.c index a3c8951..3721751 100644 --- a/crypto/evp/e_aes_cbc_hmac_sha1.c +++ b/crypto/evp/e_aes_cbc_hmac_sha1.c @@ -809,6 +809,8 @@ static int aesni_cbc_hmac_sha1_ctrl(EVP_CIPHER_CTX *ctx, int type, int arg, key->payload_length = len; if ((key->aux.tls_ver = p[arg - 4] << 8 | p[arg - 3]) >= TLS1_1_VERSION) { + if (len < AES_BLOCK_SIZE) + return 0; len -= AES_BLOCK_SIZE; p[arg - 2] = len >> 8; p[arg - 1] = len; diff --git a/crypto/evp/e_aes_cbc_hmac_sha256.c b/crypto/evp/e_aes_cbc_hmac_sha256.c index bef603a..daae825 100644 --- a/crypto/evp/e_aes_cbc_hmac_sha256.c +++ b/crypto/evp/e_aes_cbc_hmac_sha256.c @@ -788,6 +788,8 @@ static int aesni_cbc_hmac_sha256_ctrl(EVP_CIPHER_CTX *ctx, int type, int arg, key->payload_length = len; if ((key->aux.tls_ver = p[arg - 4] << 8 | p[arg - 3]) >= TLS1_1_VERSION) { + if (len < AES_BLOCK_SIZE) + return 0; len -= AES_BLOCK_SIZE; p[arg - 2] = len >> 8; p[arg - 1] = len; diff --git a/engines/e_dasync.c b/engines/e_dasync.c index 89b1277..4e3e936 100644 --- a/engines/e_dasync.c +++ b/engines/e_dasync.c @@ -606,6 +606,8 @@ static int dasync_cipher_ctrl_helper(EVP_CIPHER_CTX *ctx, int type, int arg, if (pipe_ctx->enc) { if ((p[arg - 4] << 8 | p[arg - 3]) >= TLS1_1_VERSION) { + if (len < AES_BLOCK_SIZE) + return 0; len -= AES_BLOCK_SIZE; } From builds at travis-ci.org Mon Apr 24 15:44:15 2017 From: builds at travis-ci.org (Travis CI) Date: Mon, 24 Apr 2017 15:44:15 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10512 (master - dd94c37) In-Reply-To: Message-ID: <58fe1d4fbd2a_43fec2bedc4a0602337@60321f1a-129e-413b-bbb7-36ab2c5fda8e.mail> Build Update for openssl/openssl ------------------------------------- Build: #10512 Status: Still Failing Duration: 24 minutes and 3 seconds Commit: dd94c37 (master) Author: Jon Spillett Message: Converted the bio_enc tests to use new test framework. This includes reworked reworked tests to do both encrypt and decrypt, and a few more ciphers added. Reviewed-by: Matt Caswell Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3197) View the changeset: https://github.com/openssl/openssl/compare/26fb4b033c66...dd94c37a5c2f View the full build log and details: https://travis-ci.org/openssl/openssl/builds/225251457 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Mon Apr 24 15:53:27 2017 From: builds at travis-ci.org (Travis CI) Date: Mon, 24 Apr 2017 15:53:27 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10513 (master - 8af91fd) In-Reply-To: Message-ID: <58fe1f77a9ed0_43fbebaac2ebc884351@cb998c7a-403b-49ba-b902-56b368e3bb34.mail> Build Update for openssl/openssl ------------------------------------- Build: #10513 Status: Still Failing Duration: 25 minutes and 13 seconds Commit: 8af91fd (master) Author: Matt Caswell Message: Don't fail the connection in SSLv3 if server selects ECDHE ECDHE is not properly defined for SSLv3. Commit fe55c4a2 prevented ECDHE from being selected in that protocol. However, historically, servers do still select ECDHE anyway so that commit causes interoperability problems. Clients that previously worked when talking to an SSLv3 server could now fail. This commit introduces an exception which enables a client to continue in SSLv3 if the server selected ECDHE. [extended tests] Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3204) View the changeset: https://github.com/openssl/openssl/compare/dd94c37a5c2f...8af91fd9d084 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/225251946 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From levitte at openssl.org Mon Apr 24 16:10:06 2017 From: levitte at openssl.org (Richard Levitte) Date: Mon, 24 Apr 2017 16:10:06 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493050206.172713.9496.nullmailer@dev.openssl.org> The branch master has been updated via f044cd05a1d28c998731108dfcd25ba580cdda07 (commit) via a9c6d221055c3a85edb23b1364cd60baafed4b9f (commit) via b3e5db40eca1b53fc37a95163feba0da82426142 (commit) via 4db40c94c38ee94fbef820a9816ac2d68f65506e (commit) via 20626cfd5870e80838010cddf99dd6297eceaa26 (commit) via 331058180aba047ac6b25da781eebc08b7267d2f (commit) from a68d35057ba2676bc9b9a16f4952791eef4b9905 (commit) - Log ----------------------------------------------------------------- commit f044cd05a1d28c998731108dfcd25ba580cdda07 Author: Richard Levitte Date: Wed Apr 19 13:06:08 2017 +0200 Avoid using BIO streams in bioprinttest.c Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3243) commit a9c6d221055c3a85edb23b1364cd60baafed4b9f Author: Richard Levitte Date: Tue Apr 18 16:47:11 2017 +0200 Adapt all test programs Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3243) commit b3e5db40eca1b53fc37a95163feba0da82426142 Author: Richard Levitte Date: Wed Apr 19 12:32:42 2017 +0200 VMS: Make sure to include MAIN from static libraries if needed Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3243) commit 4db40c94c38ee94fbef820a9816ac2d68f65506e Author: Richard Levitte Date: Tue Apr 18 16:27:27 2017 +0200 Refactor the test framework testutil It's now built as a static library, and greatly simplified for test programs, which no longer need to include test_main_custom.h or test_main.h and link with the corresponding object files. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3243) commit 20626cfd5870e80838010cddf99dd6297eceaa26 Author: Richard Levitte Date: Wed Apr 19 12:51:06 2017 +0200 Add CRYPTO_mem_leaks_cb Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3243) commit 331058180aba047ac6b25da781eebc08b7267d2f Author: Richard Levitte Date: Tue Apr 18 16:24:23 2017 +0200 Make it possible to build static-only libraries The trick is to use the .a extension explicitely in the build.info files. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3243) ----------------------------------------------------------------------- Summary of changes: Configurations/common.tmpl | 20 +- Configurations/descrip.mms.tmpl | 63 ++++-- Configurations/unix-Makefile.tmpl | 20 +- Configurations/windows-makefile.tmpl | 33 ++- Configure | 16 +- crypto/mem_dbg.c | 43 ++-- doc/man3/OPENSSL_malloc.pod | 9 +- include/openssl/crypto.h | 2 + test/README | 5 +- test/asn1_encode_test.c | 1 - test/asn1_internal_test.c | 1 - test/asynciotest.c | 1 - test/bad_dtls_test.c | 1 - test/bftest.c | 1 - test/bio_enc_test.c | 1 - test/bioprinttest.c | 62 +++++- test/bntest.c | 1 - test/build.info | 301 ++++++++++++++------------- test/casttest.c | 1 - test/chacha_internal_test.c | 1 - test/cipher_overhead_test.c | 3 +- test/cipherbytes_test.c | 1 - test/cipherlist_test.c | 1 - test/clienthellotest.c | 1 - test/constant_time_test.c | 1 - test/crltest.c | 1 - test/ct_test.c | 1 - test/d2i_test.c | 1 - test/destest.c | 1 - test/dhtest.c | 1 - test/dsatest.c | 1 - test/dtlstest.c | 1 - test/ecdsatest.c | 1 - test/enginetest.c | 1 - test/evp_extra_test.c | 1 - test/exdatatest.c | 1 - test/gmdifftest.c | 1 - test/hmactest.c | 1 - test/ideatest.c | 1 - test/lhash_test.c | 1 - test/md2test.c | 1 - test/mdc2_internal_test.c | 1 - test/mdc2test.c | 1 - test/modes_internal_test.c | 1 - test/packettest.c | 1 - test/pbelutest.c | 1 - test/pkey_meth_test.c | 1 - test/poly1305_internal_test.c | 3 +- test/randtest.c | 1 - test/rc2test.c | 1 - test/rc4test.c | 1 - test/rc5test.c | 1 - test/recordlentest.c | 1 - test/rsa_test.c | 1 - test/sanitytest.c | 1 - test/secmemtest.c | 1 - test/sha1test.c | 1 - test/sha256t.c | 1 - test/sha512t.c | 1 - test/siphash_internal_test.c | 5 +- test/srptest.c | 1 - test/ssl_test.c | 1 - test/ssl_test_ctx_test.c | 1 - test/sslapitest.c | 1 - test/sslcorrupttest.c | 1 - test/stack_test.c | 1 - test/test_main.h | 18 -- test/test_main_custom.h | 20 -- test/test_test.c | 1 - test/testutil.h | 52 ++++- test/testutil/basic_output.c | 80 +++++++ test/testutil/driver.c | 167 +++++++++++++++ test/{test_main_custom.c => testutil/main.c} | 8 +- test/{ => testutil}/test_main.c | 15 +- test/{testutil.c => testutil/tests.c} | 177 +++------------- test/threadstest.c | 1 - test/tls13encryptiontest.c | 9 +- test/tls13secretstest.c | 1 - test/uitest.c | 24 +-- test/v3ext.c | 1 - test/v3nametest.c | 1 - test/verify_extra_test.c | 1 - test/wpackettest.c | 1 - test/x509_dup_cert_test.c | 1 - test/x509_internal_test.c | 1 - test/x509_time_test.c | 1 - test/x509aux.c | 2 - util/libcrypto.num | 1 + 88 files changed, 700 insertions(+), 520 deletions(-) delete mode 100644 test/test_main.h delete mode 100644 test/test_main_custom.h create mode 100644 test/testutil/basic_output.c create mode 100644 test/testutil/driver.c rename test/{test_main_custom.c => testutil/main.c} (71%) rename test/{ => testutil}/test_main.c (51%) rename test/{testutil.c => testutil/tests.c} (71%) diff --git a/Configurations/common.tmpl b/Configurations/common.tmpl index 5e9cb36..70adf23 100644 --- a/Configurations/common.tmpl +++ b/Configurations/common.tmpl @@ -18,7 +18,8 @@ my $thing = shift; my $extensionlessthing = extensionlesslib($thing); my @listsofar = @_; # to check if we're looping - my @list = @{$unified_info{depends}->{$extensionlessthing}}; + my @list = @{$unified_info{depends}->{$thing} // + $unified_info{depends}->{$extensionlessthing}}; my @newlist = (); if (scalar @list) { foreach my $item (@list) { @@ -33,13 +34,22 @@ sub reducedepends { my @list = @_; my @newlist = (); + my %replace = (); while (@list) { my $item = shift @list; my $extensionlessitem = extensionlesslib($item); - push @newlist, $item - unless grep { $extensionlessitem eq extensionlesslib($_) } @list; + if (grep { $extensionlessitem eq extensionlesslib($_) } @list) { + if ($item ne $extensionlessitem) { + # If this instance of the library is explicitely static, we + # prefer that to any shared library name, since it must have + # been done on purpose. + $replace{$extensionlessitem} = $item; + } + } else { + push @newlist, $item; + } } - @newlist; + map { $replace{$_} // $_; } @newlist; } # is_installed checks if a given file will be installed (i.e. they are @@ -113,7 +123,7 @@ sub dolib { my $lib = shift; return "" if $cache{$lib}; - unless ($disabled{shared}) { + unless ($disabled{shared} || $lib =~ /\.a$/) { my %ordinals = $unified_info{ordinals}->{$lib} ? (ordinals => $unified_info{ordinals}->{$lib}) : (); diff --git a/Configurations/descrip.mms.tmpl b/Configurations/descrip.mms.tmpl index cbec11c..e0ded0b 100644 --- a/Configurations/descrip.mms.tmpl +++ b/Configurations/descrip.mms.tmpl @@ -42,8 +42,18 @@ # Because we need to make two computations of these data, # we store them in arrays for reuse - our @shlibs = map { $unified_info{sharednames}->{$_} || () } @{$unified_info{libraries}}; - our @install_shlibs = map { $unified_info{sharednames}->{$_} || () } @{$unified_info{install}->{libraries}}; + our @libs = + map { (my $x = $_) =~ s/\.a$//; $x } + @{$unified_info{libraries}}; + our @shlibs = + map { $unified_info{sharednames}->{$_} || () } + grep(!/\.a$/, @{$unified_info{libraries}}); + our @install_libs = + map { (my $x = $_) =~ s/\.a$//; $x } + @{$unified_info{install}->{libraries}}; + our @install_shlibs = + map { $unified_info{sharednames}->{$_} || () } + grep(!/\.a$/, @{$unified_info{install}->{libraries}}); our @generated = ( ( map { (my $x = $_) =~ s|\.S$|\.s|; $x } grep { defined $unified_info{generate}->{$_} } map { @{$unified_info{sources}->{$_}} } @@ -113,7 +123,7 @@ SHLIB_EXT=.EXE OBJ_EXT=.OBJ DEP_EXT=.D -LIBS={- join(", ", map { "-\n\t".$_.".OLB" } @{$unified_info{libraries}}) -} +LIBS={- join(", ", map { "-\n\t".$_.".OLB" } @libs) -} SHLIBS={- join(", ", map { "-\n\t".$_.".EXE" } @shlibs) -} ENGINES={- join(", ", map { "-\n\t".$_.".EXE" } @{$unified_info{engines}}) -} PROGRAMS={- join(", ", map { "-\n\t".$_.".EXE" } @{$unified_info{programs}}) -} @@ -127,7 +137,7 @@ DEPS={- our @deps = map { (my $x = $_) =~ s|\.o$|\$(DEP_EXT)|; $x; } GENERATED_MANDATORY={- join(", ", map { "-\n\t".$_ } @{$unified_info{depends}->{""}} ) -} GENERATED={- join(", ", map { "-\n\t".$_ } @generated) -} -INSTALL_LIBS={- join(", ", map { "-\n\t".$_.".OLB" } @{$unified_info{install}->{libraries}}) -} +INSTALL_LIBS={- join(", ", map { "-\n\t".$_.".OLB" } @install_libs) -} INSTALL_SHLIBS={- join(", ", map { "-\n\t".$_.".EXE" } @install_shlibs) -} INSTALL_ENGINES={- join(", ", map { "-\n\t".$_.".EXE" } @{$unified_info{install}->{engines}}) -} INSTALL_PROGRAMS={- join(", ", map { "-\n\t".$_.".EXE" } @{$unified_info{install}->{programs}}) -} @@ -230,10 +240,10 @@ NODEBUG=@ $(NODEBUG) ! Set up logical names for the libraries, so LINK and $(NODEBUG) ! running programs can use them. $(NODEBUG) ! - $(NODEBUG) {- join("\n\t\$(NODEBUG) ", map { "DEFINE ".uc($_)." 'F\$ENV(\"DEFAULT\")'".uc($_)."\$(SHLIB_EXT)" } map { $unified_info{sharednames}->{$_} || () } @{$unified_info{libraries}}) || "!" -} + $(NODEBUG) {- join("\n\t\$(NODEBUG) ", map { "DEFINE ".uc($_)." 'F\$ENV(\"DEFAULT\")'".uc($_)."\$(SHLIB_EXT)" } @shlibs) || "!" -} .LAST : - $(NODEBUG) {- join("\n\t\$(NODEBUG) ", map { "DEASSIGN ".uc($_) } map { $unified_info{sharednames}->{$_} || () } @{$unified_info{libraries}}) || "!" -} + $(NODEBUG) {- join("\n\t\$(NODEBUG) ", map { "DEASSIGN ".uc($_) } @shlibs) || "!" -} $(NODEBUG) DEASSIGN ossl_dataroot $(NODEBUG) DEASSIGN ossl_installroot $(NODEBUG) DEASSIGN internal @@ -317,7 +327,7 @@ uninstall : uninstall_docs uninstall_sw # Because VMS wants the generation number (or *) to delete files, we can't # use $(LIBS), $(PROGRAMS), $(GENERATED) and $(ENGINES)directly. libclean : - {- join("\n\t", map { "- DELETE $_.OLB;*" } @{$unified_info{libraries}}) || "@ !" -} + {- join("\n\t", map { "- DELETE $_.OLB;*" } @libs) || "@ !" -} {- join("\n\t", map { "- DELETE $_.EXE;*,$_.MAP;*,$_.OPT;*" } @shlibs) || "@ !" -} clean : libclean @@ -407,7 +417,7 @@ _install_dev_ns : check_INSTALLTOP - CREATE/DIR ossl_installroot:[LIB.'arch'] {- join("\n ", map { "COPY/PROT=W:R $_.OLB ossl_installroot:[LIB.'arch']" } - @{$unified_info{install}->{libraries}}) -} + @install_libs) -} install_dev : install_shared _install_dev_ns @@ -729,7 +739,7 @@ EOF } sub obj2lib { my %args = @_; - my $lib = $args{lib}; + (my $lib = $args{lib}) =~ s/\.a$//; my $objs = join(", -\n\t\t", map { $_.".OBJ" } (@{$args{objs}})); my $fill_lib = join("\n\t", (map { "LIBRARY/REPLACE $lib.OLB $_.OBJ" } @{$args{objs}})); @@ -746,21 +756,38 @@ EOF my $bind = dirname($bin); my $binn = basename($bin); my @objs = map { "$_.OBJ" } @{$args{objs}}; + my $objs = join(",", @objs); my @deps = compute_lib_depends(@{$args{deps}}); my $deps = join(", -\n\t\t", @objs, @deps); + + my $olb_count = scalar grep(m|\.OLB$|, @deps); + my $analyse_objs = "@ !"; + if ($olb_count > 0) { + my $analyse_quals = + $config{target} =~ m|alpha| ? "/GSD" : "/SECTIONS=SYMTAB"; + $analyse_objs = "- pipe ANALYSE/OBJECT$analyse_quals $objs | SEARCH SYS\$INPUT \"\"\"main\"\"\" ; nomain = \$severity .NE. 1" + } # The "[]" hack is because in .OPT files, each line inherits the # previous line's file spec as default, so if no directory spec # is present in the current line and the previous line has one that # doesn't apply, you're in for a surprise. my $write_opt1 = join(",-\"\n\t", map { my $x = $_ =~ /\[/ ? $_ : "[]".$_; - "WRITE OPT_FILE \"$x" } @objs). + "\@ WRITE OPT_FILE \"$x" } @objs). "\""; my $write_opt2 = - join("\n\t", map { my $x = $_ =~ /\[/ ? $_ : "[]".$_; - $x =~ s|(\.EXE)|$1/SHARE|; - $x =~ s|(\.OLB)|$1/LIB|; - "WRITE OPT_FILE \"$x\"" } @deps) + join("\n\t", map { my @lines = (); + my $x = $_ =~ /\[/ ? $_ : "[]".$_; + if ($x =~ m|\.EXE$|) { + push @lines, "\@ WRITE OPT_FILE \"$x/SHARE\""; + } elsif ($x =~ m|\.OLB$|) { + (my $l = $x) =~ s/\W/_/g; + push @lines, + "\@ IF nomain THEN WRITE OPT_FILE \"$x/LIB\$(INCLUDE_MAIN_$l)\"", + "\@ IF .NOT. nomain THEN WRITE OPT_FILE \"$x/LIB\"" + } + @lines + } @deps) || "\@ !"; # The linking commands looks a bit complex, but it's for good reason. # When you link, say, foo.obj, bar.obj and libsomething.exe/share, and @@ -782,10 +809,12 @@ EOF # and let it break the build. return <<"EOF" $bin.EXE : $deps - OPEN/WRITE/SHARE=READ OPT_FILE $bin.OPT + $analyse_objs + @ OPEN/WRITE/SHARE=READ OPT_FILE $bin.OPT $write_opt1 $write_opt2 - CLOSE OPT_FILE + @ CLOSE OPT_FILE + TYPE $bin.opt ! For debugging - pipe SPAWN/WAIT/NOLOG/OUT=$bin.LINKLOG - LINK \$(LDFLAGS)/EXEC=\$\@ $bin.OPT/OPT \$(EX_LIBS) ; - link_status = \$status ; link_severity = link_status .AND. 7 @@ -807,7 +836,7 @@ $bin.EXE : $deps @ IF .NOT. link_severity THEN SPAWN/WAIT/NOLOG EXIT 'link_status' - PURGE $bin.EXE,$bin.OPT EOF - . ($config{target} =~ m|alpha| ? "" : <<"EOF" + . ($config{target} =~ m|alpha| ? "" : <<"EOF" SET IMAGE/FLAGS=(NOCALL_DEBUG) \$\@ EOF ); diff --git a/Configurations/unix-Makefile.tmpl b/Configurations/unix-Makefile.tmpl index 0070fbf..132b83c 100644 --- a/Configurations/unix-Makefile.tmpl +++ b/Configurations/unix-Makefile.tmpl @@ -38,20 +38,26 @@ # removed. On some systems, they may therefore return the exact same # string. sub shlib { - return () if $disabled{shared}; my $lib = shift; + return () if $disabled{shared} || $lib =~ /\.a$/; return $unified_info{sharednames}->{$lib} . $shlibext; } sub shlib_simple { - return () if $disabled{shared}; - my $lib = shift; + return () if $disabled{shared} || $lib =~ /\.a$/; + if (windowsdll()) { return $lib . $shlibextimport; } return $lib . $shlibextsimple; } + # Easy fixing of static library names + sub lib { + (my $lib = shift) =~ s/\.a$//; + return $lib . $libext; + } + # dso is a complement to shlib / shlib_simple that returns the # given libname with the simple shared extension (possible SO version # removed). This differs from shlib_simple() by being unconditional. @@ -84,7 +90,7 @@ SHLIB_MAJOR={- $config{shlib_major} -} SHLIB_MINOR={- $config{shlib_minor} -} SHLIB_TARGET={- $target{shared_target} -} -LIBS={- join(" ", map { $_.$libext } @{$unified_info{libraries}}) -} +LIBS={- join(" ", map { lib($_) } @{$unified_info{libraries}}) -} SHLIBS={- join(" ", map { shlib($_) } @{$unified_info{libraries}}) -} SHLIB_INFO={- join(" ", map { "\"".shlib($_).";".shlib_simple($_)."\"" } @{$unified_info{libraries}}) -} ENGINES={- join(" ", map { dso($_) } @{$unified_info{engines}}) -} @@ -103,7 +109,7 @@ GENERATED={- join(" ", grep { /\.o$/ } keys %{$unified_info{sources}} ), ( grep { /\.h$/ } keys %{$unified_info{generate}} )) -} -INSTALL_LIBS={- join(" ", map { $_.$libext } @{$unified_info{install}->{libraries}}) -} +INSTALL_LIBS={- join(" ", map { lib($_) } @{$unified_info{install}->{libraries}}) -} INSTALL_SHLIBS={- join(" ", map { shlib($_) } @{$unified_info{install}->{libraries}}) -} INSTALL_SHLIB_INFO={- join(" ", map { "\"".shlib($_).";".shlib_simple($_)."\"" } @{$unified_info{install}->{libraries}}) -} INSTALL_ENGINES={- join(" ", map { dso($_) } @{$unified_info{install}->{engines}}) -} @@ -769,7 +775,7 @@ configdata.pm: $(SRCDIR)/Configure $(SRCDIR)/config {- join(" ", @{$config{build # It takes a list of library names and outputs a list of dependencies sub compute_lib_depends { if ($disabled{shared}) { - return map { $_ =~ /\.a$/ ? $`.$libext : $_.$libext } @_; + return map { lib($_) } @_; } # Depending on shared libraries: @@ -983,7 +989,7 @@ EOF } sub obj2lib { my %args = @_; - my $lib = $args{lib}; + (my $lib = $args{lib}) =~ s/\.a$//; my $objs = join(" ", map { $_.$objext } @{$args{objs}}); return <<"EOF"; $lib$libext: $objs diff --git a/Configurations/windows-makefile.tmpl b/Configurations/windows-makefile.tmpl index f16df75..87ad389 100644 --- a/Configurations/windows-makefile.tmpl +++ b/Configurations/windows-makefile.tmpl @@ -31,14 +31,20 @@ $win_commonroot = $ENV{$win_commonroot}; sub shlib { - return () if $disabled{shared}; my $lib = shift; + return () if $disabled{shared} || $lib =~ /\.a$/; + return () unless defined $unified_info{sharednames}->{$lib}; return $unified_info{sharednames}->{$lib} . $shlibext; } + sub lib { + (my $lib = shift) =~ s/\.a$//; + return $lib . $libext; + } + sub shlib_import { - return () if $disabled{shared}; my $lib = shift; + return () if $disabled{shared} || $lib =~ /\.a$/; return $lib . $shlibextimport; } @@ -67,7 +73,7 @@ MINOR={- $config{minor} -} SHLIB_VERSION_NUMBER={- $config{shlib_version_number} -} -LIBS={- join(" ", map { $_.$libext } @{$unified_info{libraries}}) -} +LIBS={- join(" ", map { lib($_) } @{$unified_info{libraries}}) -} SHLIBS={- join(" ", map { shlib($_) } @{$unified_info{libraries}}) -} SHLIBPDBS={- join(" ", map { local $shlibext = ".pdb"; shlib($_) } @{$unified_info{libraries}}) -} ENGINES={- join(" ", map { dso($_) } @{$unified_info{engines}}) -} @@ -88,7 +94,7 @@ GENERATED={- join(" ", grep { /\.o$/ } keys %{$unified_info{sources}} ), ( grep { /\.h$/ } keys %{$unified_info{generate}} )) -} -INSTALL_LIBS={- join(" ", map { $_.$libext } @{$unified_info{install}->{libraries}}) -} +INSTALL_LIBS={- join(" ", map { lib($_) } @{$unified_info{install}->{libraries}}) -} INSTALL_SHLIBS={- join(" ", map { shlib($_) } @{$unified_info{install}->{libraries}}) -} INSTALL_SHLIBPDBS={- join(" ", map { local $shlibext = ".pdb"; shlib($_) } @{$unified_info{install}->{libraries}}) -} INSTALL_ENGINES={- join(" ", map { dso($_) } @{$unified_info{install}->{engines}}) -} @@ -352,11 +358,14 @@ configdata.pm: "$(SRCDIR)\Configure" {- join(" ", map { '"'.$_.'"' } @{$config{b # It takes a list of library names and outputs a list of dependencies sub compute_lib_depends { if ($disabled{shared}) { - return map { $_ =~ /\.a$/ ? $`.$libext : $_.$libext } @_; + return map { lib($_) } @_; } - die "Linking with static OpenSSL libraries is not supported in this configuration\n" - if grep /\.a$/, @_; - return map { shlib_import($_) } @_; + foreach (@_) { + (my $l = $_) =~ s/\.a$//; + die "Linking with static variants of shared libraries is not supported in this configuration\n" + if $l ne $_ && shlib($l); + } + return map { shlib_import($_) or lib($_) } @_; } sub generatesrc { @@ -530,13 +539,15 @@ $objs$linklibs \$(EX_LIBS) EOF } sub obj2lib { + my %args = @_; + my $lib = $args{lib}; + # Because static libs and import libs are both named the same in native # Windows, we can't have both. We skip the static lib in that case, # as the shared libs are what we use anyway. - return "" unless $disabled{"shared"}; + return "" unless $disabled{"shared"} || $lib =~ /\.a$/; - my %args = @_; - my $lib = $args{lib}; + $lib =~ s/\.a$//; my $objs = join("\n", map { $_.$objext } @{$args{objs}}); my $deps = join(" ", map { $_.$objext } @{$args{objs}}); return <<"EOF"; diff --git a/Configure b/Configure index 66541be..c699ae0 100755 --- a/Configure +++ b/Configure @@ -1732,12 +1732,24 @@ EOF } # Additionally, we set up sharednames for libraries that don't - # have any, as themselves. - foreach (keys %{$unified_info{libraries}}) { + # have any, as themselves. Only for libraries that aren't + # explicitely static. + foreach (grep !/\.a$/, keys %{$unified_info{libraries}}) { if (!defined $unified_info{sharednames}->{$_}) { $unified_info{sharednames}->{$_} = $_ } } + + # Check that we haven't defined any library as both shared and + # explicitely static. That is forbidden. + my @doubles = (); + foreach (grep /\.a$/, keys %{$unified_info{libraries}}) { + (my $l = $_) =~ s/\.a$//; + push @doubles, $l if defined $unified_info{sharednames}->{$l}; + } + die "these libraries are both explicitely static and shared:\n ", + join(" ", @doubles), "\n" + if @doubles; } foreach (keys %ordinals) { diff --git a/crypto/mem_dbg.c b/crypto/mem_dbg.c index dc3f8ff..4c4e7d3 100644 --- a/crypto/mem_dbg.c +++ b/crypto/mem_dbg.c @@ -443,7 +443,8 @@ void CRYPTO_mem_debug_realloc(void *addr1, void *addr2, size_t num, } typedef struct mem_leak_st { - BIO *bio; + int (*print_cb) (const char *str, size_t len, void *u); + void *print_cb_arg; int chunks; long bytes; } MEM_LEAK; @@ -486,7 +487,7 @@ static void print_leak(const MEM *m, MEM_LEAK *l) m->num, m->addr); bufp += strlen(bufp); - BIO_puts(l->bio, buf); + l->print_cb(buf, strlen(buf), l->print_cb_arg); l->chunks++; l->bytes += m->num; @@ -520,7 +521,7 @@ static void print_leak(const MEM *m, MEM_LEAK *l) } BIO_snprintf(buf + buf_len, sizeof buf - buf_len, "\"\n"); - BIO_puts(l->bio, buf); + l->print_cb(buf, strlen(buf), l->print_cb_arg); amip = amip->next; } @@ -541,16 +542,11 @@ static void print_leak(const MEM *m, MEM_LEAK *l) IMPLEMENT_LHASH_DOALL_ARG_CONST(MEM, MEM_LEAK); -int CRYPTO_mem_leaks(BIO *b) +int CRYPTO_mem_leaks_cb(int (*cb) (const char *str, size_t len, void *u), + void *u) { MEM_LEAK ml; - /* - * OPENSSL_cleanup() will free the ex_data locks so we can't have any - * ex_data hanging around - */ - bio_free_ex_data(b); - /* Ensure all resources are released */ OPENSSL_cleanup(); @@ -559,14 +555,19 @@ int CRYPTO_mem_leaks(BIO *b) CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_DISABLE); - ml.bio = b; + ml.print_cb = cb; + ml.print_cb_arg = u; ml.bytes = 0; ml.chunks = 0; if (mh != NULL) lh_MEM_doall_MEM_LEAK(mh, print_leak, &ml); if (ml.chunks != 0) { - BIO_printf(b, "%ld bytes leaked in %d chunks\n", ml.bytes, ml.chunks); + char buf[256]; + + BIO_snprintf(buf, sizeof(buf), "%ld bytes leaked in %d chunks\n", + ml.bytes, ml.chunks); + cb(buf, strlen(buf), u); } else { /* * Make sure that, if we found no leaks, memory-leak debugging itself @@ -603,6 +604,22 @@ int CRYPTO_mem_leaks(BIO *b) return ml.chunks == 0 ? 1 : 0; } +static int print_bio(const char *str, size_t len, void *b) +{ + return BIO_write((BIO *)b, str, len); +} + +int CRYPTO_mem_leaks(BIO *b) +{ + /* + * OPENSSL_cleanup() will free the ex_data locks so we can't have any + * ex_data hanging around + */ + bio_free_ex_data(b); + + return CRYPTO_mem_leaks_cb(print_bio, b); +} + # ifndef OPENSSL_NO_STDIO int CRYPTO_mem_leaks_fp(FILE *fp) { @@ -620,7 +637,7 @@ int CRYPTO_mem_leaks_fp(FILE *fp) if (b == NULL) return -1; BIO_set_fp(b, fp, BIO_NOCLOSE); - ret = CRYPTO_mem_leaks(b); + ret = CRYPTO_mem_leaks_cb(print_bio, b); BIO_free(b); return ret; } diff --git a/doc/man3/OPENSSL_malloc.pod b/doc/man3/OPENSSL_malloc.pod index 2914143..afcdb55 100644 --- a/doc/man3/OPENSSL_malloc.pod +++ b/doc/man3/OPENSSL_malloc.pod @@ -15,7 +15,7 @@ CRYPTO_mem_debug_push, CRYPTO_mem_debug_pop, CRYPTO_clear_realloc, CRYPTO_clear_free, CRYPTO_get_mem_functions, CRYPTO_set_mem_functions, CRYPTO_set_mem_debug, CRYPTO_mem_ctrl, -CRYPTO_mem_leaks, CRYPTO_mem_leaks_fp +CRYPTO_mem_leaks, CRYPTO_mem_leaks_fp, CRYPTO_mem_leaks_cb, OPENSSL_MALLOC_FAILURES, OPENSSL_MALLOC_FD - Memory allocation functions @@ -76,6 +76,8 @@ OPENSSL_MALLOC_FD void CRYPTO_mem_leaks(BIO *b); void CRYPTO_mem_leaks_fp(FILE *fp); + void CRYPTO_mem_leaks_cb(int (*cb)(const char *str, size_t len, void *u), + void *u); =head1 DESCRIPTION @@ -190,6 +192,11 @@ CRYPTO_mem_leaks_fp() will report all "leaked" memory, writing it to the specified BIO B or FILE B. These functions return 1 if there are no leaks, 0 if there are leaks and -1 if an error occurred. +CRYPTO_mem_leaks_cb() does the same as CRYPTO_mem_leaks(), but instead +of writing to a given BIO, the callback function is called for each +output string with the string, length, and userdata B as the callback +parameters. + =head1 RETURN VALUES OPENSSL_malloc_init(), OPENSSL_free(), OPENSSL_clear_free() diff --git a/include/openssl/crypto.h b/include/openssl/crypto.h index a8b8dc1..42e888d 100644 --- a/include/openssl/crypto.h +++ b/include/openssl/crypto.h @@ -314,6 +314,8 @@ void CRYPTO_mem_debug_realloc(void *addr1, void *addr2, size_t num, int flag, void CRYPTO_mem_debug_free(void *addr, int flag, const char *file, int line); +int CRYPTO_mem_leaks_cb(int (*cb) (const char *str, size_t len, void *u), + void *u); # ifndef OPENSSL_NO_STDIO int CRYPTO_mem_leaks_fp(FILE *); # endif diff --git a/test/README b/test/README index 7831c86..fc9f7d0 100644 --- a/test/README +++ b/test/README @@ -99,14 +99,13 @@ test): to modify the include paths and source files if you don't want to use the basic test framework: - SOURCE[{name}]={name}.c testutil.c test_main.c + SOURCE[{name}]={name}.c INCLUDE[{name}]=.. ../include - DEPEND[{name}]=../libcrypto + DEPEND[{name}]=../libcrypto libtestutil.a Generic form of C test executables ================================== - #include "test_main.h" #include "testutil.h" static int my_test(void) diff --git a/test/asn1_encode_test.c b/test/asn1_encode_test.c index a24b284..7d762ae 100644 --- a/test/asn1_encode_test.c +++ b/test/asn1_encode_test.c @@ -13,7 +13,6 @@ #include #include #include "internal/numbers.h" -#include "test_main.h" #include "testutil.h" #ifdef __GNUC__ diff --git a/test/asn1_internal_test.c b/test/asn1_internal_test.c index f936098..f9fdeef 100644 --- a/test/asn1_internal_test.c +++ b/test/asn1_internal_test.c @@ -15,7 +15,6 @@ #include #include #include -#include "test_main.h" #include "testutil.h" #include "e_os.h" diff --git a/test/asynciotest.c b/test/asynciotest.c index f78b86f..ee450da 100644 --- a/test/asynciotest.c +++ b/test/asynciotest.c @@ -17,7 +17,6 @@ #include "ssltestlib.h" #include "testutil.h" -#include "test_main_custom.h" /* Should we fragment records or not? 0 = no, !0 = yes*/ static int fragment = 0; diff --git a/test/bad_dtls_test.c b/test/bad_dtls_test.c index 0bfbebf..9745ff8 100644 --- a/test/bad_dtls_test.c +++ b/test/bad_dtls_test.c @@ -41,7 +41,6 @@ #include "../ssl/packet_locl.h" #include "../e_os.h" /* for OSSL_NELEM() */ -#include "test_main.h" #include "testutil.h" /* For DTLS1_BAD_VER packets the MAC doesn't include the handshake header */ diff --git a/test/bftest.c b/test/bftest.c index eea9fcb..a7e0bf1 100644 --- a/test/bftest.c +++ b/test/bftest.c @@ -17,7 +17,6 @@ #include #include /* To see if OPENSSL_NO_BF is defined */ -#include "test_main_custom.h" #include "testutil.h" #include "../e_os.h" diff --git a/test/bio_enc_test.c b/test/bio_enc_test.c index 9b0dd6d..bc49a79 100644 --- a/test/bio_enc_test.c +++ b/test/bio_enc_test.c @@ -12,7 +12,6 @@ #include #include -#include "test_main.h" #include "testutil.h" #define ENCRYPT 1 diff --git a/test/bioprinttest.c b/test/bioprinttest.c index ca0f1aa..56aa0b0 100644 --- a/test/bioprinttest.c +++ b/test/bioprinttest.c @@ -7,13 +7,19 @@ * https://www.openssl.org/source/license.html */ +#define TESTUTIL_NO_size_t_COMPARISON + #include #include +#include +#ifdef OPENSSL_SYS_WINDOWS +# include +#else +# include OPENSSL_UNISTD +#endif #include #include "internal/numbers.h" #include "testutil.h" -#include "test_main.h" -#include "test_main_custom.h" #define nelem(x) (int)(sizeof(x) / sizeof((x)[0])) @@ -247,3 +253,55 @@ int test_main(int argc, char **argv) return run_tests(argv[0]); } + +/* + * Replace testutil output routines. We do this to eliminate possible sources + * of BIO error + */ +void test_open_streams(void) +{ +} + +void test_close_streams(void) +{ +} + +int test_puts_stdout(const char *str) +{ + return write(1, str, strlen(str)); +} + +int test_puts_stderr(const char *str) +{ + return write(2, str, strlen(str)); +} + +static char vprint_buf[10240]; + +int test_vprintf_stdout(const char *fmt, va_list ap) +{ + size_t len = vsnprintf(vprint_buf, sizeof(vprint_buf), fmt, ap); + + if (len >= sizeof(vprint_buf)) + return -1; + return test_puts_stdout(vprint_buf); +} + +int test_vprintf_stderr(const char *fmt, va_list ap) +{ + size_t len = vsnprintf(vprint_buf, sizeof(vprint_buf), fmt, ap); + + if (len >= sizeof(vprint_buf)) + return -1; + return test_puts_stderr(vprint_buf); +} + +int test_flush_stdout(void) +{ + return 0; +} + +int test_flush_stderr(void) +{ + return 0; +} diff --git a/test/bntest.c b/test/bntest.c index 449b3a4..0410e07 100644 --- a/test/bntest.c +++ b/test/bntest.c @@ -19,7 +19,6 @@ #include #include #include "testutil.h" -#include "test_main_custom.h" /* * In bn_lcl.h, bn_expand() is defined as a static ossl_inline function. diff --git a/test/build.info b/test/build.info index 5a2e03e..83a83c4 100644 --- a/test/build.info +++ b/test/build.info @@ -5,11 +5,23 @@ my ($base, $files) = @_; return join(" ", map { "$base/$_" } split(/\s+/, $files)); } - our $apps_extra = - $config{target} =~ /^vms-/ ? "../apps/vms_term_sock.c" : ""; "" -} IF[{- !$disabled{tests} -}] + LIBS_NO_INST=libtestutil.a + SOURCE[libtestutil.a]=testutil/basic_output.c testutil/driver.c \ + testutil/tests.c testutil/test_main.c testutil/main.c \ + {- rebase_files("../apps", $target{apps_aux_src}) -} + INCLUDE[libtestutil.a]=../include + DEPEND[libtestutil.a]=../libcrypto + + # Special hack for descrip.mms to include the MAIN object module + # explicitely. This will only be done if there isn't a MAIN in the + # program's object modules already. + BEGINRAW[descrip.mms] +INCLUDE_MAIN___test_libtestutil_OLB = /INCLUDE=MAIN + ENDRAW[descrip.mms] + PROGRAMS_NO_INST=\ aborttest test_test \ sanitytest exdatatest bntest \ @@ -35,270 +47,270 @@ IF[{- !$disabled{tests} -}] INCLUDE[aborttest]=../include DEPEND[aborttest]=../libcrypto - SOURCE[sanitytest]=sanitytest.c testutil.c test_main.c + SOURCE[sanitytest]=sanitytest.c INCLUDE[sanitytest]=../include - DEPEND[sanitytest]=../libcrypto + DEPEND[sanitytest]=../libcrypto libtestutil.a - SOURCE[test_test]=test_test.c testutil.c test_main.c + SOURCE[test_test]=test_test.c INCLUDE[test_test]=.. ../include - DEPEND[test_test]=../libcrypto + DEPEND[test_test]=../libcrypto libtestutil.a - SOURCE[exdatatest]=exdatatest.c testutil.c test_main.c + SOURCE[exdatatest]=exdatatest.c INCLUDE[exdatatest]=../include - DEPEND[exdatatest]=../libcrypto + DEPEND[exdatatest]=../libcrypto libtestutil.a - SOURCE[bntest]=bntest.c testutil.c test_main_custom.c + SOURCE[bntest]=bntest.c INCLUDE[bntest]=.. ../crypto/include ../include - DEPEND[bntest]=../libcrypto + DEPEND[bntest]=../libcrypto libtestutil.a SOURCE[ectest]=ectest.c INCLUDE[ectest]=.. ../include DEPEND[ectest]=../libcrypto - SOURCE[ecdsatest]=ecdsatest.c testutil.c test_main.c + SOURCE[ecdsatest]=ecdsatest.c INCLUDE[ecdsatest]=../include - DEPEND[ecdsatest]=../libcrypto + DEPEND[ecdsatest]=../libcrypto libtestutil.a - SOURCE[gmdifftest]=gmdifftest.c testutil.c test_main.c + SOURCE[gmdifftest]=gmdifftest.c INCLUDE[gmdifftest]=../include - DEPEND[gmdifftest]=../libcrypto + DEPEND[gmdifftest]=../libcrypto libtestutil.a - SOURCE[pbelutest]=pbelutest.c testutil.c test_main.c + SOURCE[pbelutest]=pbelutest.c INCLUDE[pbelutest]=../include - DEPEND[pbelutest]=../libcrypto + DEPEND[pbelutest]=../libcrypto libtestutil.a - SOURCE[ideatest]=ideatest.c testutil.c test_main.c + SOURCE[ideatest]=ideatest.c INCLUDE[ideatest]=../include - DEPEND[ideatest]=../libcrypto + DEPEND[ideatest]=../libcrypto libtestutil.a - SOURCE[md2test]=md2test.c testutil.c test_main.c + SOURCE[md2test]=md2test.c INCLUDE[md2test]=../include - DEPEND[md2test]=../libcrypto + DEPEND[md2test]=../libcrypto libtestutil.a - SOURCE[hmactest]=hmactest.c testutil.c test_main.c + SOURCE[hmactest]=hmactest.c INCLUDE[hmactest]=../include - DEPEND[hmactest]=../libcrypto + DEPEND[hmactest]=../libcrypto libtestutil.a - SOURCE[rc2test]=rc2test.c testutil.c test_main.c + SOURCE[rc2test]=rc2test.c INCLUDE[rc2test]=../include - DEPEND[rc2test]=../libcrypto + DEPEND[rc2test]=../libcrypto libtestutil.a - SOURCE[rc4test]=rc4test.c testutil.c test_main.c + SOURCE[rc4test]=rc4test.c INCLUDE[rc4test]=../include - DEPEND[rc4test]=../libcrypto + DEPEND[rc4test]=../libcrypto libtestutil.a - SOURCE[rc5test]=rc5test.c testutil.c test_main.c + SOURCE[rc5test]=rc5test.c INCLUDE[rc5test]=../include - DEPEND[rc5test]=../libcrypto + DEPEND[rc5test]=../libcrypto libtestutil.a - SOURCE[destest]=destest.c testutil.c test_main.c + SOURCE[destest]=destest.c INCLUDE[destest]=../include - DEPEND[destest]=../libcrypto + DEPEND[destest]=../libcrypto libtestutil.a - SOURCE[sha1test]=sha1test.c testutil.c test_main.c + SOURCE[sha1test]=sha1test.c INCLUDE[sha1test]=../include - DEPEND[sha1test]=../libcrypto + DEPEND[sha1test]=../libcrypto libtestutil.a - SOURCE[sha256t]=sha256t.c testutil.c test_main.c + SOURCE[sha256t]=sha256t.c INCLUDE[sha256t]=../include - DEPEND[sha256t]=../libcrypto + DEPEND[sha256t]=../libcrypto libtestutil.a - SOURCE[sha512t]=sha512t.c testutil.c test_main.c + SOURCE[sha512t]=sha512t.c INCLUDE[sha512t]=../include - DEPEND[sha512t]=../libcrypto + DEPEND[sha512t]=../libcrypto libtestutil.a - SOURCE[mdc2test]=mdc2test.c testutil.c test_main.c + SOURCE[mdc2test]=mdc2test.c INCLUDE[mdc2test]=../include - DEPEND[mdc2test]=../libcrypto + DEPEND[mdc2test]=../libcrypto libtestutil.a - SOURCE[randtest]=randtest.c testutil.c test_main.c + SOURCE[randtest]=randtest.c INCLUDE[randtest]=../include - DEPEND[randtest]=../libcrypto + DEPEND[randtest]=../libcrypto libtestutil.a - SOURCE[dhtest]=dhtest.c testutil.c test_main.c + SOURCE[dhtest]=dhtest.c INCLUDE[dhtest]=.. ../include - DEPEND[dhtest]=../libcrypto + DEPEND[dhtest]=../libcrypto libtestutil.a - SOURCE[enginetest]=enginetest.c testutil.c test_main.c + SOURCE[enginetest]=enginetest.c INCLUDE[enginetest]=../include - DEPEND[enginetest]=../libcrypto + DEPEND[enginetest]=../libcrypto libtestutil.a - SOURCE[casttest]=casttest.c testutil.c test_main.c + SOURCE[casttest]=casttest.c INCLUDE[casttest]=.. ../include - DEPEND[casttest]=../libcrypto + DEPEND[casttest]=../libcrypto libtestutil.a - SOURCE[bftest]=bftest.c testutil.c test_main_custom.c + SOURCE[bftest]=bftest.c INCLUDE[bftest]=../include - DEPEND[bftest]=../libcrypto + DEPEND[bftest]=../libcrypto libtestutil.a SOURCE[ssltest_old]=ssltest_old.c INCLUDE[ssltest_old]=.. ../include DEPEND[ssltest_old]=../libcrypto ../libssl - SOURCE[dsatest]=dsatest.c testutil.c test_main.c + SOURCE[dsatest]=dsatest.c INCLUDE[dsatest]=.. ../include - DEPEND[dsatest]=../libcrypto + DEPEND[dsatest]=../libcrypto libtestutil.a SOURCE[exptest]=exptest.c INCLUDE[exptest]=../include DEPEND[exptest]=../libcrypto - SOURCE[rsa_test]=rsa_test.c testutil.c test_main.c + SOURCE[rsa_test]=rsa_test.c INCLUDE[rsa_test]=.. ../include - DEPEND[rsa_test]=../libcrypto + DEPEND[rsa_test]=../libcrypto libtestutil.a SOURCE[evp_test]=evp_test.c INCLUDE[evp_test]=../include DEPEND[evp_test]=../libcrypto - SOURCE[evp_extra_test]=evp_extra_test.c testutil.c test_main.c + SOURCE[evp_extra_test]=evp_extra_test.c INCLUDE[evp_extra_test]=../include - DEPEND[evp_extra_test]=../libcrypto + DEPEND[evp_extra_test]=../libcrypto libtestutil.a SOURCE[igetest]=igetest.c INCLUDE[igetest]=.. ../include DEPEND[igetest]=../libcrypto - SOURCE[v3nametest]=v3nametest.c testutil.c test_main.c + SOURCE[v3nametest]=v3nametest.c INCLUDE[v3nametest]=.. ../include - DEPEND[v3nametest]=../libcrypto + DEPEND[v3nametest]=../libcrypto libtestutil.a - SOURCE[crltest]=crltest.c testutil.c test_main.c + SOURCE[crltest]=crltest.c INCLUDE[crltest]=../include - DEPEND[crltest]=../libcrypto + DEPEND[crltest]=../libcrypto libtestutil.a - SOURCE[v3ext]=v3ext.c testutil.c test_main_custom.c + SOURCE[v3ext]=v3ext.c INCLUDE[v3ext]=../include - DEPEND[v3ext]=../libcrypto + DEPEND[v3ext]=../libcrypto libtestutil.a SOURCE[danetest]=danetest.c INCLUDE[danetest]=../include DEPEND[danetest]=../libcrypto ../libssl - SOURCE[constant_time_test]=constant_time_test.c testutil.c test_main.c + SOURCE[constant_time_test]=constant_time_test.c INCLUDE[constant_time_test]=.. ../include - DEPEND[constant_time_test]=../libcrypto + DEPEND[constant_time_test]=../libcrypto libtestutil.a - SOURCE[verify_extra_test]=verify_extra_test.c testutil.c test_main_custom.c + SOURCE[verify_extra_test]=verify_extra_test.c INCLUDE[verify_extra_test]=../include - DEPEND[verify_extra_test]=../libcrypto + DEPEND[verify_extra_test]=../libcrypto libtestutil.a - SOURCE[clienthellotest]=clienthellotest.c testutil.c test_main_custom.c + SOURCE[clienthellotest]=clienthellotest.c INCLUDE[clienthellotest]=../include - DEPEND[clienthellotest]=../libcrypto ../libssl + DEPEND[clienthellotest]=../libcrypto ../libssl libtestutil.a - SOURCE[bad_dtls_test]=bad_dtls_test.c testutil.c test_main.c + SOURCE[bad_dtls_test]=bad_dtls_test.c INCLUDE[bad_dtls_test]=../include - DEPEND[bad_dtls_test]=../libcrypto ../libssl + DEPEND[bad_dtls_test]=../libcrypto ../libssl libtestutil.a - SOURCE[packettest]=packettest.c testutil.c test_main.c + SOURCE[packettest]=packettest.c INCLUDE[packettest]=../include - DEPEND[packettest]=../libcrypto + DEPEND[packettest]=../libcrypto libtestutil.a SOURCE[asynctest]=asynctest.c INCLUDE[asynctest]=.. ../include DEPEND[asynctest]=../libcrypto - SOURCE[secmemtest]=secmemtest.c testutil.c test_main.c + SOURCE[secmemtest]=secmemtest.c INCLUDE[secmemtest]=../include - DEPEND[secmemtest]=../libcrypto + DEPEND[secmemtest]=../libcrypto libtestutil.a - SOURCE[srptest]=srptest.c testutil.c test_main.c + SOURCE[srptest]=srptest.c INCLUDE[srptest]=../include - DEPEND[srptest]=../libcrypto + DEPEND[srptest]=../libcrypto libtestutil.a - SOURCE[memleaktest]=memleaktest.c testutil.c + SOURCE[memleaktest]=memleaktest.c INCLUDE[memleaktest]=../include - DEPEND[memleaktest]=../libcrypto + DEPEND[memleaktest]=../libcrypto libtestutil.a - SOURCE[stack_test]=stack_test.c testutil.c test_main.c + SOURCE[stack_test]=stack_test.c INCLUDE[stack_test]=.. ../include - DEPEND[stack_test]=../libcrypto + DEPEND[stack_test]=../libcrypto libtestutil.a - SOURCE[lhash_test]=lhash_test.c testutil.c test_main.c + SOURCE[lhash_test]=lhash_test.c INCLUDE[lhash_test]=.. ../include - DEPEND[lhash_test]=../libcrypto + DEPEND[lhash_test]=../libcrypto libtestutil.a SOURCE[dtlsv1listentest]=dtlsv1listentest.c INCLUDE[dtlsv1listentest]=.. ../include DEPEND[dtlsv1listentest]=../libssl - SOURCE[ct_test]=ct_test.c testutil.c test_main_custom.c + SOURCE[ct_test]=ct_test.c INCLUDE[ct_test]=../crypto/include ../include - DEPEND[ct_test]=../libcrypto + DEPEND[ct_test]=../libcrypto libtestutil.a - SOURCE[threadstest]=threadstest.c testutil.c test_main.c + SOURCE[threadstest]=threadstest.c INCLUDE[threadstest]=.. ../include - DEPEND[threadstest]=../libcrypto + DEPEND[threadstest]=../libcrypto libtestutil.a - SOURCE[afalgtest]=afalgtest.c testutil.c + SOURCE[afalgtest]=afalgtest.c INCLUDE[afalgtest]=.. ../include - DEPEND[afalgtest]=../libcrypto + DEPEND[afalgtest]=../libcrypto libtestutil.a - SOURCE[d2i_test]=d2i_test.c testutil.c test_main_custom.c + SOURCE[d2i_test]=d2i_test.c INCLUDE[d2i_test]=.. ../include - DEPEND[d2i_test]=../libcrypto + DEPEND[d2i_test]=../libcrypto libtestutil.a - SOURCE[ssl_test_ctx_test]=ssl_test_ctx_test.c ssl_test_ctx.c testutil.c test_main_custom.c + SOURCE[ssl_test_ctx_test]=ssl_test_ctx_test.c ssl_test_ctx.c INCLUDE[ssl_test_ctx_test]=.. ../include - DEPEND[ssl_test_ctx_test]=../libcrypto ../libssl + DEPEND[ssl_test_ctx_test]=../libcrypto ../libssl libtestutil.a - SOURCE[ssl_test]=ssl_test.c ssl_test_ctx.c testutil.c handshake_helper.c test_main_custom.c + SOURCE[ssl_test]=ssl_test.c ssl_test_ctx.c handshake_helper.c INCLUDE[ssl_test]=.. ../include - DEPEND[ssl_test]=../libcrypto ../libssl + DEPEND[ssl_test]=../libcrypto ../libssl libtestutil.a - SOURCE[cipherlist_test]=cipherlist_test.c testutil.c test_main.c + SOURCE[cipherlist_test]=cipherlist_test.c INCLUDE[cipherlist_test]=.. ../include - DEPEND[cipherlist_test]=../libcrypto ../libssl + DEPEND[cipherlist_test]=../libcrypto ../libssl libtestutil.a INCLUDE[testutil.o]=.. INCLUDE[ssl_test_ctx.o]=../include INCLUDE[handshake_helper.o]=../include INCLUDE[ssltestlib.o]=.. ../include - SOURCE[x509aux]=x509aux.c testutil.c test_main_custom.c + SOURCE[x509aux]=x509aux.c INCLUDE[x509aux]=.. ../include - DEPEND[x509aux]=../libcrypto + DEPEND[x509aux]=../libcrypto libtestutil.a - SOURCE[asynciotest]=asynciotest.c ssltestlib.c testutil.c test_main_custom.c + SOURCE[asynciotest]=asynciotest.c ssltestlib.c INCLUDE[asynciotest]=../include - DEPEND[asynciotest]=../libcrypto ../libssl + DEPEND[asynciotest]=../libcrypto ../libssl libtestutil.a - SOURCE[bioprinttest]=bioprinttest.c testutil.c test_main_custom.c + SOURCE[bioprinttest]=bioprinttest.c INCLUDE[bioprinttest]=../ ../include - DEPEND[bioprinttest]=../libcrypto + DEPEND[bioprinttest]=../libcrypto libtestutil.a - SOURCE[sslapitest]=sslapitest.c ssltestlib.c testutil.c test_main_custom.c + SOURCE[sslapitest]=sslapitest.c ssltestlib.c INCLUDE[sslapitest]=../include .. - DEPEND[sslapitest]=../libcrypto ../libssl + DEPEND[sslapitest]=../libcrypto ../libssl libtestutil.a - SOURCE[dtlstest]=dtlstest.c ssltestlib.c testutil.c test_main_custom.c + SOURCE[dtlstest]=dtlstest.c ssltestlib.c INCLUDE[dtlstest]=../include . - DEPEND[dtlstest]=../libcrypto ../libssl + DEPEND[dtlstest]=../libcrypto ../libssl libtestutil.a - SOURCE[sslcorrupttest]=sslcorrupttest.c ssltestlib.c testutil.c test_main_custom.c + SOURCE[sslcorrupttest]=sslcorrupttest.c ssltestlib.c INCLUDE[sslcorrupttest]=../include . - DEPEND[sslcorrupttest]=../libcrypto ../libssl + DEPEND[sslcorrupttest]=../libcrypto ../libssl libtestutil.a - SOURCE[bio_enc_test]=bio_enc_test.c testutil.c test_main.c + SOURCE[bio_enc_test]=bio_enc_test.c INCLUDE[bio_enc_test]=../include - DEPEND[bio_enc_test]=../libcrypto + DEPEND[bio_enc_test]=../libcrypto libtestutil.a - SOURCE[pkey_meth_test]=pkey_meth_test.c testutil.c test_main.c + SOURCE[pkey_meth_test]=pkey_meth_test.c INCLUDE[pkey_meth_test]=../include - DEPEND[pkey_meth_test]=../libcrypto + DEPEND[pkey_meth_test]=../libcrypto libtestutil.a - SOURCE[x509_time_test]=x509_time_test.c testutil.c test_main.c + SOURCE[x509_time_test]=x509_time_test.c INCLUDE[x509_time_test]=.. ../include - DEPEND[x509_time_test]=../libcrypto + DEPEND[x509_time_test]=../libcrypto libtestutil.a - SOURCE[recordlentest]=recordlentest.c ssltestlib.c testutil.c test_main_custom.c + SOURCE[recordlentest]=recordlentest.c ssltestlib.c INCLUDE[recordlentest]=../include . - DEPEND[recordlentest]=../libcrypto ../libssl + DEPEND[recordlentest]=../libcrypto ../libssl libtestutil.a - SOURCE[x509_dup_cert_test]=x509_dup_cert_test.c testutil.c test_main_custom.c + SOURCE[x509_dup_cert_test]=x509_dup_cert_test.c INCLUDE[x509_dup_cert_test]=../include - DEPEND[x509_dup_cert_test]=../libcrypto + DEPEND[x509_dup_cert_test]=../libcrypto libtestutil.a IF[{- !$disabled{psk} -}] PROGRAMS_NO_INST=dtls_mtu_test @@ -315,23 +327,22 @@ IF[{- !$disabled{tests} -}] IF[{- $disabled{shared} -}] PROGRAMS_NO_INST=cipher_overhead_test - SOURCE[cipher_overhead_test]=cipher_overhead_test.c testutil.c test_main.c + SOURCE[cipher_overhead_test]=cipher_overhead_test.c INCLUDE[cipher_overhead_test]=.. ../include - DEPEND[cipher_overhead_test]=../libcrypto ../libssl + DEPEND[cipher_overhead_test]=../libcrypto ../libssl libtestutil.a ENDIF - SOURCE[uitest]=uitest.c testutil.c test_main_custom.c \ - ../apps/apps.c ../apps/opt.c {- $apps_extra -} + SOURCE[uitest]=uitest.c ../apps/apps.c ../apps/opt.c INCLUDE[uitest]=.. ../include - DEPEND[uitest]=../libcrypto ../libssl + DEPEND[uitest]=../libcrypto ../libssl libtestutil.a - SOURCE[cipherbytes_test]=cipherbytes_test.c testutil.c test_main_custom.c + SOURCE[cipherbytes_test]=cipherbytes_test.c INCLUDE[cipherbytes_test]=.. ../include - DEPEND[cipherbytes_test]=../libcrypto ../libssl + DEPEND[cipherbytes_test]=../libcrypto ../libssl libtestutil.a - SOURCE[asn1_encode_test]=asn1_encode_test.c testutil.c test_main.c + SOURCE[asn1_encode_test]=asn1_encode_test.c INCLUDE[asn1_encode_test]=../include - DEPEND[asn1_encode_test]=../libcrypto + DEPEND[asn1_encode_test]=../libcrypto libtestutil.a # Internal test programs. These are essentially a collection of internal # test routines. Some of them need to reach internal symbols that aren't @@ -354,56 +365,56 @@ IF[{- !$disabled{tests} -}] PROGRAMS_NO_INST=siphash_internal_test ENDIF - SOURCE[poly1305_internal_test]=poly1305_internal_test.c testutil.c test_main_custom.c + SOURCE[poly1305_internal_test]=poly1305_internal_test.c INCLUDE[poly1305_internal_test]=.. ../include ../crypto/include - DEPEND[poly1305_internal_test]=../libcrypto.a + DEPEND[poly1305_internal_test]=../libcrypto.a libtestutil.a - SOURCE[chacha_internal_test]=chacha_internal_test.c testutil.c test_main.c + SOURCE[chacha_internal_test]=chacha_internal_test.c INCLUDE[chacha_internal_test]=.. ../include ../crypto/include - DEPEND[chacha_internal_test]=../libcrypto.a + DEPEND[chacha_internal_test]=../libcrypto.a libtestutil.a - SOURCE[asn1_internal_test]=asn1_internal_test.c testutil.c test_main.c + SOURCE[asn1_internal_test]=asn1_internal_test.c INCLUDE[asn1_internal_test]=.. ../include ../crypto/include - DEPEND[asn1_internal_test]=../libcrypto.a + DEPEND[asn1_internal_test]=../libcrypto.a libtestutil.a - SOURCE[modes_internal_test]=modes_internal_test.c testutil.c test_main_custom.c + SOURCE[modes_internal_test]=modes_internal_test.c INCLUDE[modes_internal_test]=.. ../include - DEPEND[modes_internal_test]=../libcrypto.a + DEPEND[modes_internal_test]=../libcrypto.a libtestutil.a - SOURCE[x509_internal_test]=x509_internal_test.c testutil.c test_main.c + SOURCE[x509_internal_test]=x509_internal_test.c INCLUDE[x509_internal_test]=.. ../include - DEPEND[x509_internal_test]=../libcrypto.a + DEPEND[x509_internal_test]=../libcrypto.a libtestutil.a - SOURCE[tls13encryptiontest]=tls13encryptiontest.c testutil.c test_main.c + SOURCE[tls13encryptiontest]=tls13encryptiontest.c INCLUDE[tls13encryptiontest]=.. ../include - DEPEND[tls13encryptiontest]=../libcrypto ../libssl.a + DEPEND[tls13encryptiontest]=../libcrypto ../libssl.a libtestutil.a - SOURCE[wpackettest]=wpackettest.c testutil.c test_main_custom.c + SOURCE[wpackettest]=wpackettest.c INCLUDE[wpackettest]=../include - DEPEND[wpackettest]=../libcrypto ../libssl.a + DEPEND[wpackettest]=../libcrypto ../libssl.a libtestutil.a - SOURCE[siphash_internal_test]=siphash_internal_test.c testutil.c test_main_custom.c + SOURCE[siphash_internal_test]=siphash_internal_test.c INCLUDE[siphash_internal_test]=.. ../include ../crypto/include - DEPEND[siphash_internal_test]=../libcrypto.a + DEPEND[siphash_internal_test]=../libcrypto.a libtestutil.a ENDIF IF[{- !$disabled{mdc2} -}] PROGRAMS_NO_INST=mdc2_internal_test ENDIF - SOURCE[mdc2_internal_test]=mdc2_internal_test.c testutil.c test_main.c + SOURCE[mdc2_internal_test]=mdc2_internal_test.c INCLUDE[mdc2_internal_test]=.. ../include - DEPEND[mdc2_internal_test]=../libcrypto + DEPEND[mdc2_internal_test]=../libcrypto libtestutil.a # We disable this test completely in a shared build because it deliberately # redefines some internal libssl symbols. This doesn't work in a non-shared # build IF[{- !$disabled{shared} -}] PROGRAMS_NO_INST=tls13secretstest - SOURCE[tls13secretstest]=tls13secretstest.c testutil.c test_main.c + SOURCE[tls13secretstest]=tls13secretstest.c SOURCE[tls13secretstest]= ../ssl/tls13_enc.c ../ssl/packet.c INCLUDE[tls13secretstest]=.. ../include - DEPEND[tls13secretstest]=../libcrypto ../libssl + DEPEND[tls13secretstest]=../libcrypto ../libssl libtestutil.a ENDIF ENDIF diff --git a/test/casttest.c b/test/casttest.c index fc0c700..24cfbfd 100644 --- a/test/casttest.c +++ b/test/casttest.c @@ -13,7 +13,6 @@ #include /* To see if OPENSSL_NO_CAST is defined */ #include "e_os.h" -#include "test_main.h" #include "testutil.h" #ifndef OPENSSL_NO_CAST diff --git a/test/chacha_internal_test.c b/test/chacha_internal_test.c index 0c0be9b..de8e4b2 100644 --- a/test/chacha_internal_test.c +++ b/test/chacha_internal_test.c @@ -14,7 +14,6 @@ #include #include -#include "test_main.h" #include "testutil.h" #include "internal/chacha.h" diff --git a/test/cipher_overhead_test.c b/test/cipher_overhead_test.c index 98d44bd..6bf74a5 100644 --- a/test/cipher_overhead_test.c +++ b/test/cipher_overhead_test.c @@ -9,7 +9,6 @@ #include "e_os.h" #include "testutil.h" -#include "test_main.h" #ifdef __VMS # pragma names save @@ -36,7 +35,7 @@ static int cipher_overhead(void) TEST_info("Failed getting %s", ciph->name); ret = 0; } else { - TEST_info("Cipher %s: %"OSSLzu" %"OSSLzu" %"OSSLzu" %"OSSLzu, + TEST_info("Cipher %s: %zu %zu %zu %zu", ciph->name, mac, in, blk, ex); } } diff --git a/test/cipherbytes_test.c b/test/cipherbytes_test.c index 00e361b..bc3051e 100644 --- a/test/cipherbytes_test.c +++ b/test/cipherbytes_test.c @@ -20,7 +20,6 @@ #include "e_os.h" #include "testutil.h" -#include "test_main_custom.h" static SSL_CTX *ctx; static SSL *s; diff --git a/test/cipherlist_test.c b/test/cipherlist_test.c index 31063e6..61551d9 100644 --- a/test/cipherlist_test.c +++ b/test/cipherlist_test.c @@ -18,7 +18,6 @@ #include #include "e_os.h" -#include "test_main.h" #include "testutil.h" typedef struct cipherlist_test_fixture { diff --git a/test/clienthellotest.c b/test/clienthellotest.c index a5d3ad3..2de8512 100644 --- a/test/clienthellotest.c +++ b/test/clienthellotest.c @@ -20,7 +20,6 @@ #include "../ssl/packet_locl.h" #include "testutil.h" -#include "test_main_custom.h" #define CLIENT_VERSION_LEN 2 diff --git a/test/constant_time_test.c b/test/constant_time_test.c index d34e386..3e3542e 100644 --- a/test/constant_time_test.c +++ b/test/constant_time_test.c @@ -13,7 +13,6 @@ #include "e_os.h" #include "internal/constant_time_locl.h" #include "testutil.h" -#include "test_main.h" #include "internal/numbers.h" static const unsigned int CONSTTIME_TRUE = (unsigned)(~0); diff --git a/test/crltest.c b/test/crltest.c index e633fd3..790fc5f 100644 --- a/test/crltest.c +++ b/test/crltest.c @@ -17,7 +17,6 @@ #include #include "testutil.h" -#include "test_main.h" #define PARAM_TIME 1474934400 /* Sep 27th, 2016 */ diff --git a/test/ct_test.c b/test/ct_test.c index e96eab0..583db44 100644 --- a/test/ct_test.c +++ b/test/ct_test.c @@ -19,7 +19,6 @@ #include #include #include "testutil.h" -#include "test_main_custom.h" #ifndef OPENSSL_NO_CT /* Used when declaring buffers to read text files into */ diff --git a/test/d2i_test.c b/test/d2i_test.c index 0413ceb..8126ace 100644 --- a/test/d2i_test.c +++ b/test/d2i_test.c @@ -13,7 +13,6 @@ #include #include "testutil.h" -#include "test_main_custom.h" #include #include diff --git a/test/destest.c b/test/destest.c index b863ee8..2aae1ca 100644 --- a/test/destest.c +++ b/test/destest.c @@ -10,7 +10,6 @@ #include #include -#include "test_main.h" #include "testutil.h" #ifndef OPENSSL_NO_DES diff --git a/test/dhtest.c b/test/dhtest.c index eb6ec0e..618b84e 100644 --- a/test/dhtest.c +++ b/test/dhtest.c @@ -17,7 +17,6 @@ #include #include #include -#include "test_main.h" #include "testutil.h" #ifdef OPENSSL_NO_DH diff --git a/test/dsatest.c b/test/dsatest.c index bff0b96..e4ed8eb 100644 --- a/test/dsatest.c +++ b/test/dsatest.c @@ -18,7 +18,6 @@ #include #include -#include "test_main.h" #include "testutil.h" #include "e_os.h" diff --git a/test/dtlstest.c b/test/dtlstest.c index cb58b18..b766802 100644 --- a/test/dtlstest.c +++ b/test/dtlstest.c @@ -14,7 +14,6 @@ #include "ssltestlib.h" #include "testutil.h" -#include "test_main_custom.h" static char *cert = NULL; static char *privkey = NULL; diff --git a/test/ecdsatest.c b/test/ecdsatest.c index 8b1e566..561ff0c 100644 --- a/test/ecdsatest.c +++ b/test/ecdsatest.c @@ -46,7 +46,6 @@ int main(int argc, char *argv[]) # include # include # include "testutil.h" -# include "test_main.h" static const char rnd_seed[] = "string to make the random number generator " "think it has entropy"; diff --git a/test/enginetest.c b/test/enginetest.c index 89107a3..55bb4e0 100644 --- a/test/enginetest.c +++ b/test/enginetest.c @@ -23,7 +23,6 @@ int main(int argc, char *argv[]) # include # include # include "testutil.h" -# include "test_main.h" static void display_engine_list(void) { diff --git a/test/evp_extra_test.c b/test/evp_extra_test.c index b8cfc0d..80737f9 100644 --- a/test/evp_extra_test.c +++ b/test/evp_extra_test.c @@ -16,7 +16,6 @@ #include #include #include "testutil.h" -#include "test_main.h" /* * kExampleRSAKeyDER is an RSA private key in ASN.1, DER format. Of course, you diff --git a/test/exdatatest.c b/test/exdatatest.c index fb1694d..8880f6f 100644 --- a/test/exdatatest.c +++ b/test/exdatatest.c @@ -12,7 +12,6 @@ #include #include -#include "test_main.h" #include "testutil.h" static long saved_argl; diff --git a/test/gmdifftest.c b/test/gmdifftest.c index 462436f..1d508c0 100644 --- a/test/gmdifftest.c +++ b/test/gmdifftest.c @@ -9,7 +9,6 @@ #include -#include "test_main.h" #include "testutil.h" #define SECS_PER_DAY (24 * 60 * 60) diff --git a/test/hmactest.c b/test/hmactest.c index d7e68b4..db1b7af 100644 --- a/test/hmactest.c +++ b/test/hmactest.c @@ -23,7 +23,6 @@ # include # endif -#include "test_main.h" #include "testutil.h" # ifndef OPENSSL_NO_MD5 diff --git a/test/ideatest.c b/test/ideatest.c index a208334..14d69dc 100644 --- a/test/ideatest.c +++ b/test/ideatest.c @@ -10,7 +10,6 @@ #include #include "../e_os.h" -#include "test_main.h" #include "testutil.h" #ifndef OPENSSL_NO_IDEA diff --git a/test/lhash_test.c b/test/lhash_test.c index 1761efd..b812796 100644 --- a/test/lhash_test.c +++ b/test/lhash_test.c @@ -20,7 +20,6 @@ #include #include "e_os.h" -#include "test_main.h" #include "testutil.h" /* diff --git a/test/md2test.c b/test/md2test.c index 81a1760..7a1436d 100644 --- a/test/md2test.c +++ b/test/md2test.c @@ -10,7 +10,6 @@ #include #include "../e_os.h" -#include "test_main.h" #include "testutil.h" #ifndef OPENSSL_NO_MD2 diff --git a/test/mdc2_internal_test.c b/test/mdc2_internal_test.c index 7deaf26..d696ea7 100644 --- a/test/mdc2_internal_test.c +++ b/test/mdc2_internal_test.c @@ -14,7 +14,6 @@ #include #include "testutil.h" -#include "test_main.h" #include "e_os.h" typedef struct { diff --git a/test/mdc2test.c b/test/mdc2test.c index fb513e1..724d6d3 100644 --- a/test/mdc2test.c +++ b/test/mdc2test.c @@ -10,7 +10,6 @@ #include #include "../e_os.h" -#include "test_main.h" #include "testutil.h" #if defined(OPENSSL_NO_DES) && !defined(OPENSSL_NO_MDC2) diff --git a/test/modes_internal_test.c b/test/modes_internal_test.c index 087115b..b3a2b10 100644 --- a/test/modes_internal_test.c +++ b/test/modes_internal_test.c @@ -16,7 +16,6 @@ #include #include "../crypto/modes/modes_lcl.h" #include "testutil.h" -#include "test_main_custom.h" #include "e_os.h" typedef struct { diff --git a/test/packettest.c b/test/packettest.c index 7ee4a08..4866d27 100644 --- a/test/packettest.c +++ b/test/packettest.c @@ -9,7 +9,6 @@ #include "../ssl/packet_locl.h" #include "testutil.h" -#include "test_main.h" #define BUF_LEN 255 diff --git a/test/pbelutest.c b/test/pbelutest.c index 11189b4..c6ce586 100644 --- a/test/pbelutest.c +++ b/test/pbelutest.c @@ -9,7 +9,6 @@ #include #include "testutil.h" -#include "test_main.h" /* * Password based encryption (PBE) table ordering test. diff --git a/test/pkey_meth_test.c b/test/pkey_meth_test.c index 8876537..adff232 100644 --- a/test/pkey_meth_test.c +++ b/test/pkey_meth_test.c @@ -14,7 +14,6 @@ #include #include "testutil.h" -#include "test_main.h" /********************************************************************** * diff --git a/test/poly1305_internal_test.c b/test/poly1305_internal_test.c index 03b0fa9..a6825d2 100644 --- a/test/poly1305_internal_test.c +++ b/test/poly1305_internal_test.c @@ -13,7 +13,6 @@ #include #include "testutil.h" -#include "test_main_custom.h" #include "internal/poly1305.h" #include "../crypto/poly1305/poly1305_local.h" #include "e_os.h" @@ -1600,7 +1599,7 @@ static int test_poly1305(int idx) Poly1305_Final(&poly1305, out); if (!TEST_mem_eq(out, expectedlen, expected, expectedlen)) { - TEST_info("Poly1305 test #%d/%" OSSLzu "+%" OSSLzu " failed.", + TEST_info("Poly1305 test #%d/%zu+%zu failed.", idx, half, inlen-half); return 0; } diff --git a/test/randtest.c b/test/randtest.c index e1d84c3..8ef5943 100644 --- a/test/randtest.c +++ b/test/randtest.c @@ -9,7 +9,6 @@ #include #include "testutil.h" -#include "test_main.h" /* some FIPS 140-1 random number test */ /* some simple tests */ diff --git a/test/rc2test.c b/test/rc2test.c index 2553c91..0561576 100644 --- a/test/rc2test.c +++ b/test/rc2test.c @@ -8,7 +8,6 @@ */ #include "../e_os.h" -#include "test_main.h" #include "testutil.h" #ifndef OPENSSL_NO_RC2 diff --git a/test/rc4test.c b/test/rc4test.c index e6d4ccf..bf2ec31 100644 --- a/test/rc4test.c +++ b/test/rc4test.c @@ -10,7 +10,6 @@ #include #include "../e_os.h" -#include "test_main.h" #include "testutil.h" #ifndef OPENSSL_NO_RC4 diff --git a/test/rc5test.c b/test/rc5test.c index bc2cd97..bd02f72 100644 --- a/test/rc5test.c +++ b/test/rc5test.c @@ -10,7 +10,6 @@ #include #include "../e_os.h" -#include "test_main.h" #include "testutil.h" #ifndef OPENSSL_NO_RC5 diff --git a/test/recordlentest.c b/test/recordlentest.c index 7063149..57c4648 100644 --- a/test/recordlentest.c +++ b/test/recordlentest.c @@ -11,7 +11,6 @@ #include "ssltestlib.h" #include "testutil.h" -#include "test_main_custom.h" static char *cert = NULL; static char *privkey = NULL; diff --git a/test/rsa_test.c b/test/rsa_test.c index ea10c8e..47be258 100644 --- a/test/rsa_test.c +++ b/test/rsa_test.c @@ -19,7 +19,6 @@ #include #include -#include "test_main.h" #include "testutil.h" #ifdef OPENSSL_NO_RSA diff --git a/test/sanitytest.c b/test/sanitytest.c index 3ef0a37..5a9e6bb 100644 --- a/test/sanitytest.c +++ b/test/sanitytest.c @@ -10,7 +10,6 @@ #include #include -#include "test_main.h" #include "testutil.h" static int test_sanity_null_zero(void) diff --git a/test/secmemtest.c b/test/secmemtest.c index 9fd0235..3244d06 100644 --- a/test/secmemtest.c +++ b/test/secmemtest.c @@ -9,7 +9,6 @@ #include -#include "test_main.h" #include "testutil.h" static int test_sec_mem(void) diff --git a/test/sha1test.c b/test/sha1test.c index 25c7f10..6a8b304 100644 --- a/test/sha1test.c +++ b/test/sha1test.c @@ -11,7 +11,6 @@ #include #include "../e_os.h" -#include "test_main.h" #include "testutil.h" #include diff --git a/test/sha256t.c b/test/sha256t.c index 29e65d5..c6ce1ae 100644 --- a/test/sha256t.c +++ b/test/sha256t.c @@ -10,7 +10,6 @@ #include #include -#include "test_main.h" #include "testutil.h" static const unsigned char app_b1[SHA256_DIGEST_LENGTH] = { diff --git a/test/sha512t.c b/test/sha512t.c index 91efa32..2a1bd1b 100644 --- a/test/sha512t.c +++ b/test/sha512t.c @@ -10,7 +10,6 @@ #include #include -#include "test_main.h" #include "testutil.h" static const unsigned char app_c1[SHA512_DIGEST_LENGTH] = { diff --git a/test/siphash_internal_test.c b/test/siphash_internal_test.c index fd097e0..0114af1 100644 --- a/test/siphash_internal_test.c +++ b/test/siphash_internal_test.c @@ -14,7 +14,6 @@ #include #include "testutil.h" -#include "test_main_custom.h" #include "internal/siphash.h" #include "../crypto/siphash/siphash_local.h" #include "e_os.h" @@ -226,7 +225,7 @@ static int test_siphash(int idx) if (expectedlen != SIPHASH_MIN_DIGEST_SIZE && expectedlen != SIPHASH_MAX_DIGEST_SIZE) { - TEST_info("size %" OSSLzu " vs %d and %d", expectedlen, + TEST_info("size %zu vs %d and %d", expectedlen, SIPHASH_MIN_DIGEST_SIZE, SIPHASH_MAX_DIGEST_SIZE); return 0; } @@ -286,7 +285,7 @@ static int test_siphash(int idx) return 0; if (!TEST_mem_eq(out, expectedlen, expected, expectedlen)) { - TEST_info("SipHash test #%d/%" OSSLzu "+%" OSSLzu " failed.", + TEST_info("SipHash test #%d/%zu+%zu failed.", idx, half, inlen-half); return 0; } diff --git a/test/srptest.c b/test/srptest.c index 6d14571..c908c39 100644 --- a/test/srptest.c +++ b/test/srptest.c @@ -24,7 +24,6 @@ int main(int argc, char *argv[]) # include # include # include "testutil.h" -# include "test_main.h" static void showbn(const char *name, const BIGNUM *bn) { diff --git a/test/ssl_test.c b/test/ssl_test.c index 9406f94..092e755 100644 --- a/test/ssl_test.c +++ b/test/ssl_test.c @@ -17,7 +17,6 @@ #include "handshake_helper.h" #include "ssl_test_ctx.h" #include "testutil.h" -#include "test_main_custom.h" static CONF *conf = NULL; diff --git a/test/ssl_test_ctx_test.c b/test/ssl_test_ctx_test.c index 6f277e5..2a633f9 100644 --- a/test/ssl_test_ctx_test.c +++ b/test/ssl_test_ctx_test.c @@ -18,7 +18,6 @@ #include "e_os.h" #include "ssl_test_ctx.h" #include "testutil.h" -#include "test_main_custom.h" #include #include #include diff --git a/test/sslapitest.c b/test/sslapitest.c index 3b4d01a..436fbbb 100644 --- a/test/sslapitest.c +++ b/test/sslapitest.c @@ -17,7 +17,6 @@ #include "ssltestlib.h" #include "testutil.h" -#include "test_main_custom.h" #include "e_os.h" static char *cert = NULL; diff --git a/test/sslcorrupttest.c b/test/sslcorrupttest.c index 98e5bb3..c480f23 100644 --- a/test/sslcorrupttest.c +++ b/test/sslcorrupttest.c @@ -10,7 +10,6 @@ #include #include "ssltestlib.h" #include "testutil.h" -#include "test_main_custom.h" static int docorrupt = 0; diff --git a/test/stack_test.c b/test/stack_test.c index 25b2e00..6d1cd91 100644 --- a/test/stack_test.c +++ b/test/stack_test.c @@ -20,7 +20,6 @@ #include #include "e_os.h" -#include "test_main.h" #include "testutil.h" /* The macros below generate unused functions which error out one of the clang diff --git a/test/test_main.h b/test/test_main.h deleted file mode 100644 index ce0d06a..0000000 --- a/test/test_main.h +++ /dev/null @@ -1,18 +0,0 @@ -/* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. - * - * Licensed under the OpenSSL license (the "License"). You may not use - * this file except in compliance with the License. You can obtain a copy - * in the file LICENSE in the source distribution or at - * https://www.openssl.org/source/license.html - */ - -#ifndef HEADER_TEST_MAIN_H -# define HEADER_TEST_MAIN_H - -/* - * Simple unit tests should implement register_tests() and link to test_main.c. - */ -extern void register_tests(void); - -#endif /* HEADER_TEST_MAIN_H */ diff --git a/test/test_main_custom.h b/test/test_main_custom.h deleted file mode 100644 index 22bc8f5..0000000 --- a/test/test_main_custom.h +++ /dev/null @@ -1,20 +0,0 @@ -/* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. - * - * Licensed under the OpenSSL license (the "License"). You may not use - * this file except in compliance with the License. You can obtain a copy - * in the file LICENSE in the source distribution or at - * https://www.openssl.org/source/license.html - */ - -#ifndef HEADER_TEST_MAIN_CUSTOM_H -# define HEADER_TEST_MAIN_CUSTOM_H - -/* - * Unit tests that need a custom main() should implement test_main and link to - * test_main_custom.c - * test_main() should return the result of run_tests(). - */ -extern int test_main(int argc, char *argv[]); - -#endif /* HEADER_TEST_MAIN_CUSTOM_H */ diff --git a/test/test_test.c b/test/test_test.c index a154289..879a051 100644 --- a/test/test_test.c +++ b/test/test_test.c @@ -19,7 +19,6 @@ #include #include "e_os.h" -#include "test_main.h" #include "testutil.h" #define C(l, b, t) \ diff --git a/test/testutil.h b/test/testutil.h index e7478a8..5d96ddd 100644 --- a/test/testutil.h +++ b/test/testutil.h @@ -16,12 +16,9 @@ #include /*- - * Simple unit tests should implement register_tests() from test_main.h - * and link against test_main.c. + * Simple unit tests should implement register_tests(). * To register tests, call ADD_TEST or ADD_ALL_TESTS: * - * #include "test_main.h" - * * void register_tests(void) * { * ADD_TEST(test_foo); @@ -29,8 +26,7 @@ * } * * Tests that need to perform custom setup or read command-line arguments should - * implement test_main() from test_main_custom.h and link against - * test_main_custom.c: + * implement test_main(): * * int test_main(int argc, char *argv[]) * { @@ -139,13 +135,26 @@ void add_all_tests(const char *test_case_name, int (*test_fn)(int idx), int num) __owur int run_tests(const char *test_prog_name); /* + * Declarations for user defined functions + */ +void register_tests(void); +int test_main(int argc, char *argv[]); + + +/* * Test assumption verification helpers. */ -# if defined(__GNUC__) -#define PRINTF_FORMAT(a, b) __attribute__ ((format(printf, a, b))) -# else #define PRINTF_FORMAT(a, b) +#if defined(__GNUC__) && defined(__STDC_VERSION__) + /* + * Because we support the 'z' modifier, which made its appearance in C99, + * we can't use __attribute__ with pre C99 dialects. + */ +# if __STDC_VERSION__ >= 199901L +# undef PRINTF_FORMAT +# define PRINTF_FORMAT(a, b) __attribute__ ((format(printf, a, b))) +# endif #endif # define DECLARE_COMPARISON(type, name, opname) \ @@ -167,7 +176,13 @@ DECLARE_COMPARISONS(char, char) DECLARE_COMPARISONS(unsigned char, uchar) DECLARE_COMPARISONS(long, long) DECLARE_COMPARISONS(unsigned long, ulong) +/* + * Because this comparison uses a printf format specifier that's not + * universally known (yet), we provide an option to not have it declared. + */ +# ifndef TESTUTIL_NO_size_t_COMPARISON DECLARE_COMPARISONS(size_t, size_t) +# endif /* * Pointer comparisons against other pointers and null. @@ -335,3 +350,22 @@ void test_info_c90(const char *desc, ...) PRINTF_FORMAT(1, 2); } \ } while (0) #endif /* HEADER_TESTUTIL_H */ + + +/* + * The basic I/O functions used by the test framework. These can be + * overriden when needed. Note that if one is, then all must be. + */ +void test_open_streams(void); +void test_close_streams(void); +/* The following ALL return the number of characters written */ +int test_puts_stdout(const char *str); +int test_puts_stderr(const char *str); +int test_vprintf_stdout(const char *fmt, va_list ap); +int test_vprintf_stderr(const char *fmt, va_list ap); +/* These return failure or success */ +int test_flush_stdout(void); +int test_flush_stderr(void); + +extern BIO *bio_out; +extern BIO *bio_err; diff --git a/test/testutil/basic_output.c b/test/testutil/basic_output.c new file mode 100644 index 0000000..ac413a6 --- /dev/null +++ b/test/testutil/basic_output.c @@ -0,0 +1,80 @@ +/* + * Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +#include "../testutil.h" + +#include +#include + +BIO *bio_out = NULL; +BIO *bio_err = NULL; + +#ifdef OPENSSL_USE_APPLINK +/* + * Using BIO_new_fd() obligates the use of applinks on platforms where it's + * relevant. Because it becomes a module of the libtestutil library and would + * be disregarded if not actively referred to, we have this dummy that does + * exactly this. For any module that uses the rest of the routines here, + * OPENSSL_Applink should tag along for sure. + */ +void Applink_dummy(void); +void Applink_dummy(void) +{ + OPENSSL_EXTERN void OPENSSL_Applink(void); + + OPENSSL_Applink(); +} +/* Generate an error for anyone who tries to actually use this dummy */ +# define Applink_dummy "DON'T USE THIS" +#endif + +void test_open_streams(void) +{ + bio_out = BIO_new_fd(1, 0); + bio_err = BIO_new_fd(2, 0); + + OPENSSL_assert(bio_out != NULL); + OPENSSL_assert(bio_err != NULL); +} + +void test_close_streams(void) +{ + BIO_free(bio_out); + BIO_free(bio_err); +} + +int test_puts_stdout(const char *str) +{ + return BIO_puts(bio_out, str); +} + +int test_puts_stderr(const char *str) +{ + return BIO_puts(bio_err, str); +} + +int test_vprintf_stdout(const char *fmt, va_list ap) +{ + return BIO_vprintf(bio_out, fmt, ap); +} + +int test_vprintf_stderr(const char *fmt, va_list ap) +{ + return BIO_vprintf(bio_err, fmt, ap); +} + +int test_flush_stdout(void) +{ + return BIO_flush(bio_out); +} + +int test_flush_stderr(void) +{ + return BIO_flush(bio_err); +} diff --git a/test/testutil/driver.c b/test/testutil/driver.c new file mode 100644 index 0000000..e70fd21 --- /dev/null +++ b/test/testutil/driver.c @@ -0,0 +1,167 @@ +/* + * Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +#include "../testutil.h" + +#include +#include + +#include "../../e_os.h" +#include + +/* + * Declares the structures needed to register each test case function. + */ +typedef struct test_info { + const char *test_case_name; + int (*test_fn) (); + int (*param_test_fn)(int idx); + int num; +} TEST_INFO; + +static TEST_INFO all_tests[1024]; +static int num_tests = 0; +/* + * A parameterised tests runs a loop of test cases. + * |num_test_cases| counts the total number of test cases + * across all tests. + */ +static int num_test_cases = 0; + +void add_test(const char *test_case_name, int (*test_fn) ()) +{ + assert(num_tests != OSSL_NELEM(all_tests)); + all_tests[num_tests].test_case_name = test_case_name; + all_tests[num_tests].test_fn = test_fn; + all_tests[num_tests].num = -1; + ++num_tests; + ++num_test_cases; +} + +void add_all_tests(const char *test_case_name, int(*test_fn)(int idx), + int num) +{ + assert(num_tests != OSSL_NELEM(all_tests)); + all_tests[num_tests].test_case_name = test_case_name; + all_tests[num_tests].param_test_fn = test_fn; + all_tests[num_tests].num = num; + ++num_tests; + num_test_cases += num; +} + +#ifndef OPENSSL_NO_CRYPTO_MDEBUG +static int should_report_leaks() +{ + /* + * When compiled with enable-crypto-mdebug, OPENSSL_DEBUG_MEMORY=0 + * can be used to disable leak checking at runtime. + * Note this only works when running the test binary manually; + * the test harness always enables OPENSSL_DEBUG_MEMORY. + */ + char *mem_debug_env = getenv("OPENSSL_DEBUG_MEMORY"); + + return mem_debug_env == NULL + || (strcmp(mem_debug_env, "0") && strcmp(mem_debug_env, "")); +} +#endif + + +static int err_cb(const char *str, size_t len, void *u) +{ + return test_puts_stderr(str); +} + +void setup_test() +{ + test_open_streams(); + +#ifndef OPENSSL_NO_CRYPTO_MDEBUG + if (should_report_leaks()) { + CRYPTO_set_mem_debug(1); + CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON); + } +#endif +} + +int finish_test(int ret) +{ +#ifndef OPENSSL_NO_CRYPTO_MDEBUG + if (should_report_leaks() && CRYPTO_mem_leaks_cb(err_cb, NULL) <= 0) + return EXIT_FAILURE; +#endif + + test_close_streams(); + + return ret; +} + +static void finalize(int success) +{ + if (success) + ERR_clear_error(); + else + ERR_print_errors_cb(err_cb, NULL); +} + +static void helper_printf_stdout(const char *fmt, ...) +{ + va_list ap; + + va_start(ap, fmt); + test_vprintf_stdout(fmt, ap); + va_end(ap); +} + +int run_tests(const char *test_prog_name) +{ + int num_failed = 0; + int i, j; + + helper_printf_stdout("%s: %d test case%s\n", test_prog_name, num_test_cases, + num_test_cases == 1 ? "" : "s"); + test_flush_stdout(); + + for (i = 0; i != num_tests; ++i) { + if (all_tests[i].num == -1) { + int ret = all_tests[i].test_fn(); + + if (!ret) { + helper_printf_stdout("** %s failed **\n--------\n", + all_tests[i].test_case_name); + test_flush_stdout(); + ++num_failed; + } + finalize(ret); + } else { + for (j = 0; j < all_tests[i].num; j++) { + int ret = all_tests[i].param_test_fn(j); + + if (!ret) { + helper_printf_stdout("** %s failed test %d\n--------\n", + all_tests[i].test_case_name, j); + test_flush_stdout(); + ++num_failed; + } + finalize(ret); + } + } + } + + if (num_failed != 0) { + helper_printf_stdout("%s: %d test%s failed (out of %d)\n", + test_prog_name, num_failed, + num_failed != 1 ? "s" : "", num_test_cases); + test_flush_stdout(); + return EXIT_FAILURE; + } + helper_printf_stdout(" All tests passed.\n"); + test_flush_stdout(); + return EXIT_SUCCESS; +} + diff --git a/test/test_main_custom.c b/test/testutil/main.c similarity index 71% rename from test/test_main_custom.c rename to test/testutil/main.c index e10f279..435a358 100644 --- a/test/test_main_custom.c +++ b/test/testutil/main.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,11 +7,7 @@ * https://www.openssl.org/source/license.html */ -#include "test_main_custom.h" -#include "testutil.h" - -#include -#include +#include "../testutil.h" int main(int argc, char *argv[]) { diff --git a/test/test_main.c b/test/testutil/test_main.c similarity index 51% rename from test/test_main.c rename to test/testutil/test_main.c index 99b21ac..0152421 100644 --- a/test/test_main.c +++ b/test/testutil/test_main.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,20 +7,15 @@ * https://www.openssl.org/source/license.html */ -#include "test_main.h" -#include "testutil.h" +#include "../testutil.h" #include -int main(int argc, char *argv[]) +int test_main(int argc, char *argv[]) { - int ret; if (argc > 1) - printf("Warning: ignoring extra command-line arguments.\n"); + test_puts_stderr("Warning: ignoring extra command-line arguments.\n"); - setup_test(); register_tests(); - ret = run_tests(argv[0]); - - return finish_test(ret); + return run_tests(argv[0]); } diff --git a/test/testutil.c b/test/testutil/tests.c similarity index 71% rename from test/testutil.c rename to test/testutil/tests.c index ae98e10..f00ec6c 100644 --- a/test/testutil.c +++ b/test/testutil/tests.c @@ -1,5 +1,5 @@ /* - * Copyright 2014-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,153 +7,15 @@ * https://www.openssl.org/source/license.html */ -#include "testutil.h" +#include "../testutil.h" -#include -#include -#include #include -#include "e_os.h" - -#include -#include -#include +#include "../../e_os.h" /* The size of memory buffers to display on failure */ #define MEM_BUFFER_SIZE (21) /* - * Declares the structures needed to register each test case function. - */ -typedef struct test_info { - const char *test_case_name; - int (*test_fn) (); - int (*param_test_fn)(int idx); - int num; -} TEST_INFO; - -static TEST_INFO all_tests[1024]; -static int num_tests = 0; -/* - * A parameterised tests runs a loop of test cases. - * |num_test_cases| counts the total number of test cases - * across all tests. - */ -static int num_test_cases = 0; - -void add_test(const char *test_case_name, int (*test_fn) ()) -{ - assert(num_tests != OSSL_NELEM(all_tests)); - all_tests[num_tests].test_case_name = test_case_name; - all_tests[num_tests].test_fn = test_fn; - all_tests[num_tests].num = -1; - ++num_test_cases; - ++num_tests; -} - -void add_all_tests(const char *test_case_name, int(*test_fn)(int idx), - int num) -{ - assert(num_tests != OSSL_NELEM(all_tests)); - all_tests[num_tests].test_case_name = test_case_name; - all_tests[num_tests].param_test_fn = test_fn; - all_tests[num_tests].num = num; - ++num_tests; - num_test_cases += num; -} - -#ifndef OPENSSL_NO_CRYPTO_MDEBUG -static int should_report_leaks() -{ - /* - * When compiled with enable-crypto-mdebug, OPENSSL_DEBUG_MEMORY=0 - * can be used to disable leak checking at runtime. - * Note this only works when running the test binary manually; - * the test harness always enables OPENSSL_DEBUG_MEMORY. - */ - char *mem_debug_env = getenv("OPENSSL_DEBUG_MEMORY"); - - return mem_debug_env == NULL - || (strcmp(mem_debug_env, "0") && strcmp(mem_debug_env, "")); -} -#endif - - -void setup_test() -{ -#ifndef OPENSSL_NO_CRYPTO_MDEBUG - if (should_report_leaks()) { - CRYPTO_set_mem_debug(1); - CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON); - } -#endif -} - -int finish_test(int ret) -{ -#ifndef OPENSSL_NO_CRYPTO_MDEBUG - if (should_report_leaks() && CRYPTO_mem_leaks_fp(stderr) <= 0) - return EXIT_FAILURE; -#endif - return ret; -} - -static void finalize(int success) -{ - if (success) - ERR_clear_error(); - else - ERR_print_errors_fp(stderr); -} - -int run_tests(const char *test_prog_name) -{ - int num_failed = 0; - - int i, j; - - printf("%s: %d test case%s\n", test_prog_name, num_test_cases, - num_test_cases == 1 ? "" : "s"); - fflush(stdout); - - for (i = 0; i != num_tests; ++i) { - if (all_tests[i].num == -1) { - int ret = all_tests[i].test_fn(); - - if (!ret) { - printf("** %s failed **\n--------\n", - all_tests[i].test_case_name); - fflush(stdout); - ++num_failed; - } - finalize(ret); - } else { - for (j = 0; j < all_tests[i].num; j++) { - int ret = all_tests[i].param_test_fn(j); - - if (!ret) { - printf("** %s failed test %d\n--------\n", - all_tests[i].test_case_name, j); - fflush(stdout); - ++num_failed; - } - finalize(ret); - } - } - } - - if (num_failed != 0) { - printf("%s: %d test%s failed (out of %d)\n", test_prog_name, - num_failed, num_failed != 1 ? "s" : "", num_test_cases); - fflush(stdout); - return EXIT_FAILURE; - } - printf(" All tests passed.\n"); - fflush(stdout); - return EXIT_SUCCESS; -} - -/* * A common routine to output test failure messages. Generally this should not * be called directly, rather it should be called by the following functions. * @@ -182,27 +44,38 @@ static void test_fail_message(const char *prefix, const char *file, int line, const char *type, const char *fmt, ...) PRINTF_FORMAT(5, 6); +static void helper_printf_stderr(const char *fmt, ...) +{ + va_list ap; + + va_start(ap, fmt); + test_vprintf_stderr(fmt, ap); + va_end(ap); +} + static void test_fail_message_va(const char *prefix, const char *file, int line, const char *type, const char *fmt, va_list ap) { - fputs(prefix != NULL ? prefix : "ERROR", stderr); - fputs(":", stderr); + test_puts_stderr(prefix != NULL ? prefix : "ERROR"); + test_puts_stderr(":"); if (type) - fprintf(stderr, " (%s)", type); + helper_printf_stderr(" (%s)", type); if (fmt != NULL) { - fputc(' ', stderr); - vfprintf(stderr, fmt, ap); + test_puts_stderr(" "); + test_vprintf_stderr(fmt, ap); } if (file != NULL) { - fprintf(stderr, " @ %s:%d", file, line); + helper_printf_stderr(" @ %s:%d", file, line); } - fputc('\n', stderr); + test_puts_stderr("\n"); + test_flush_stderr(); } static void test_fail_message(const char *prefix, const char *file, int line, const char *type, const char *fmt, ...) { va_list ap; + va_start(ap, fmt); test_fail_message_va(prefix, file, line, type, fmt, ap); va_end(ap); @@ -293,7 +166,7 @@ DEFINE_COMPARISONS(char, char, "%c") DEFINE_COMPARISONS(unsigned char, uchar, "%u") DEFINE_COMPARISONS(long, long, "%ld") DEFINE_COMPARISONS(unsigned long, ulong, "%lu") -DEFINE_COMPARISONS(size_t, size_t, "%" OSSLzu) +DEFINE_COMPARISONS(size_t, size_t, "%zu") DEFINE_COMPARISON(void *, ptr, eq, ==, "%p") DEFINE_COMPARISON(void *, ptr, ne, !=, "%p") @@ -434,14 +307,14 @@ int test_mem_eq(const char *file, int line, const char *st1, const char *st2, return 1; if (n1 != n2) { test_fail_message(NULL, file, line, "memory", - "size mismatch %s %s [%"OSSLzu"] != %s %s [%"OSSLzu"]", + "size mismatch %s %s [%zu] != %s %s [%zu]", st1, print_mem_maybe_null(s1, n1, b1), n1, st2, print_mem_maybe_null(s2, n2, b2), n2); return 0; } if (s1 == NULL || s2 == NULL || memcmp(s1, s2, n1) != 0) { test_fail_message(NULL, file, line, "memory", - "%s %s [%"OSSLzu"] != %s %s [%"OSSLzu"]", + "%s %s [%zu] != %s %s [%zu]", st1, print_mem_maybe_null(s1, n1, b1), n1, st2, print_mem_maybe_null(s2, n2, b2), n2); return 0; @@ -460,7 +333,7 @@ int test_mem_ne(const char *file, int line, const char *st1, const char *st2, return 1; if (s1 == NULL || memcmp(s1, s2, n1) == 0) { test_fail_message(NULL, file, line, "memory", - "%s %s [%"OSSLzu"] != %s %s [%"OSSLzu"]", + "%s %s [%zu] != %s %s [%zu]", st1, print_mem_maybe_null(s1, n1, b1), n1, st2, print_mem_maybe_null(s2, n2, b2), n2); return 0; diff --git a/test/threadstest.c b/test/threadstest.c index 9c735ff..60064d6 100644 --- a/test/threadstest.c +++ b/test/threadstest.c @@ -12,7 +12,6 @@ #endif #include -#include "test_main.h" #include "testutil.h" #if !defined(OPENSSL_THREADS) || defined(CRYPTO_TDEBUG) diff --git a/test/tls13encryptiontest.c b/test/tls13encryptiontest.c index c60d3b6..861a815 100644 --- a/test/tls13encryptiontest.c +++ b/test/tls13encryptiontest.c @@ -23,7 +23,6 @@ #endif #include "testutil.h" -#include "test_main.h" /* * Based on the test vectors provided in: @@ -358,21 +357,21 @@ static int test_tls13_encryption(void) /* Encrypt it */ if (!TEST_size_t_eq(tls13_enc(s, &rec, 1, 1), 1)) { - TEST_info("Failed to encrypt record %"OSSLzu"", ctr); + TEST_info("Failed to encrypt record %zu", ctr); goto err; } if (!TEST_true(test_record(&rec, &refdata[ctr], 1))) { - TEST_info("Record %"OSSLzu" encryption test failed", ctr); + TEST_info("Record %zu encryption test failed", ctr); goto err; } /* Decrypt it */ if (!TEST_int_eq(tls13_enc(s, &rec, 1, 0), 1)) { - TEST_info("Failed to decrypt record %"OSSLzu"", ctr); + TEST_info("Failed to decrypt record %zu", ctr); goto err; } if (!TEST_true(test_record(&rec, &refdata[ctr], 0))) { - TEST_info("Record %"OSSLzu" decryption test failed", ctr); + TEST_info("Record %zu decryption test failed", ctr); goto err; } diff --git a/test/tls13secretstest.c b/test/tls13secretstest.c index e74c486..2904ba9 100644 --- a/test/tls13secretstest.c +++ b/test/tls13secretstest.c @@ -22,7 +22,6 @@ #endif #include "testutil.h" -#include "test_main.h" #define IVLEN 12 #define KEYLEN 16 diff --git a/test/uitest.c b/test/uitest.c index 574412d..855dc45 100644 --- a/test/uitest.c +++ b/test/uitest.c @@ -11,22 +11,11 @@ #include #include #include - -/* - * The VMS build does stdio via a socketpair. - */ -#ifdef __VMS -# include "../apps/vms_term_sock.h" -#endif - #include "../apps/apps.h" - #include "testutil.h" -#include "test_main_custom.h" /* apps/apps.c depend on these */ char *default_config_file = NULL; -BIO *bio_err = NULL; #ifndef OPENSSL_NO_UI # include @@ -102,21 +91,10 @@ static int test_new_ui() #endif -int test_main(int argc, char *argv[]) +void register_tests(void) { - int ret; - - bio_err = dup_bio_err(FORMAT_TEXT); - #ifndef OPENSSL_NO_UI ADD_TEST(test_old); ADD_TEST(test_new_ui); #endif - - ret = run_tests(argv[0]); - - (void)BIO_flush(bio_err); - BIO_free(bio_err); - - return ret; } diff --git a/test/v3ext.c b/test/v3ext.c index f4cb568..9fbdfd2 100644 --- a/test/v3ext.c +++ b/test/v3ext.c @@ -13,7 +13,6 @@ #include #include -#include "test_main_custom.h" #include "testutil.h" static const char *infile; diff --git a/test/v3nametest.c b/test/v3nametest.c index 39dcfe8..cb7b799 100644 --- a/test/v3nametest.c +++ b/test/v3nametest.c @@ -12,7 +12,6 @@ #include #include #include "testutil.h" -#include "test_main.h" static const char *const names[] = { "a", "b", ".", "*", "@", diff --git a/test/verify_extra_test.c b/test/verify_extra_test.c index d528fa5..a0df29d 100644 --- a/test/verify_extra_test.c +++ b/test/verify_extra_test.c @@ -14,7 +14,6 @@ #include #include #include "testutil.h" -#include "test_main_custom.h" static STACK_OF(X509) *load_certs_from_file(const char *filename) { diff --git a/test/wpackettest.c b/test/wpackettest.c index a37fab7..a0872c5 100644 --- a/test/wpackettest.c +++ b/test/wpackettest.c @@ -22,7 +22,6 @@ #endif #include "testutil.h" -#include "test_main_custom.h" const static unsigned char simple1[] = { 0xff }; const static unsigned char simple2[] = { 0x01, 0xff }; diff --git a/test/x509_dup_cert_test.c b/test/x509_dup_cert_test.c index 05899aa..adeb8ea 100644 --- a/test/x509_dup_cert_test.c +++ b/test/x509_dup_cert_test.c @@ -15,7 +15,6 @@ #include #include -#include "test_main_custom.h" #include "testutil.h" static int test_509_dup_cert(const char *cert_f) diff --git a/test/x509_internal_test.c b/test/x509_internal_test.c index 0a3a9be..10cb0b1 100644 --- a/test/x509_internal_test.c +++ b/test/x509_internal_test.c @@ -15,7 +15,6 @@ #include #include #include "testutil.h" -#include "test_main.h" #include "e_os.h" /********************************************************************** diff --git a/test/x509_time_test.c b/test/x509_time_test.c index d9a7f50..b73e655 100644 --- a/test/x509_time_test.c +++ b/test/x509_time_test.c @@ -15,7 +15,6 @@ #include #include #include "testutil.h" -#include "test_main.h" #include "e_os.h" typedef struct { diff --git a/test/x509aux.c b/test/x509aux.c index 7030a13..44a9db1 100644 --- a/test/x509aux.c +++ b/test/x509aux.c @@ -17,8 +17,6 @@ #include #include #include "e_os.h" -#include "test_main.h" -#include "test_main_custom.h" #include "testutil.h" diff --git a/util/libcrypto.num b/util/libcrypto.num index 1a19273..725e075 100644 --- a/util/libcrypto.num +++ b/util/libcrypto.num @@ -4270,3 +4270,4 @@ UINT32_it 4214 1_1_0f EXIST:!EXPORT_VAR_AS_FUNCTIO UINT32_it 4214 1_1_0f EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: ZINT64_it 4215 1_1_0f EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: ZINT64_it 4215 1_1_0f EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +CRYPTO_mem_leaks_cb 4216 1_1_1 EXIST::FUNCTION:CRYPTO_MDEBUG From builds at travis-ci.org Mon Apr 24 16:13:54 2017 From: builds at travis-ci.org (Travis CI) Date: Mon, 24 Apr 2017 16:13:54 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10515 (master - a68d350) In-Reply-To: Message-ID: <58fe2441dbf04_43fec2bed9ed064618d@60321f1a-129e-413b-bbb7-36ab2c5fda8e.mail> Build Update for openssl/openssl ------------------------------------- Build: #10515 Status: Still Failing Duration: 23 minutes and 7 seconds Commit: a68d350 (master) Author: Rich Salz Message: check length sanity before correcting in EVP_CTRL_AEAD_TLS1_AAD Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3289) View the changeset: https://github.com/openssl/openssl/compare/8af91fd9d084...a68d35057ba2 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/225257809 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Mon Apr 24 16:33:20 2017 From: builds at travis-ci.org (Travis CI) Date: Mon, 24 Apr 2017 16:33:20 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10517 (master - f044cd0) In-Reply-To: Message-ID: <58fe2914cbffa_43fc817eb4c58815068@acb9ff18-a4c8-4a06-a7fd-ef5d0f0fa223.mail> Build Update for openssl/openssl ------------------------------------- Build: #10517 Status: Still Failing Duration: 21 minutes and 40 seconds Commit: f044cd0 (master) Author: Richard Levitte Message: Avoid using BIO streams in bioprinttest.c Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3243) View the changeset: https://github.com/openssl/openssl/compare/a68d35057ba2...f044cd05a1d2 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/225272950 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Mon Apr 24 18:21:02 2017 From: no-reply at appveyor.com (AppVeyor) Date: Mon, 24 Apr 2017 18:21:02 +0000 Subject: [openssl-commits] Build failed: openssl master.9830 Message-ID: <20170424182101.128080.19251.93080099@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Mon Apr 24 18:33:10 2017 From: no-reply at appveyor.com (AppVeyor) Date: Mon, 24 Apr 2017 18:33:10 +0000 Subject: [openssl-commits] Build failed: openssl master.9831 Message-ID: <20170424183309.23775.51183.495FCE07@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Mon Apr 24 19:06:45 2017 From: no-reply at appveyor.com (AppVeyor) Date: Mon, 24 Apr 2017 19:06:45 +0000 Subject: [openssl-commits] Build completed: openssl OpenSSL_1_1_0-stable.9832 Message-ID: <20170424190644.23831.42373.1C2EF555@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Mon Apr 24 20:15:08 2017 From: no-reply at appveyor.com (AppVeyor) Date: Mon, 24 Apr 2017 20:15:08 +0000 Subject: [openssl-commits] Build failed: openssl master.9833 Message-ID: <20170424201506.65036.26175.41273353@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Mon Apr 24 22:08:01 2017 From: no-reply at appveyor.com (AppVeyor) Date: Mon, 24 Apr 2017 22:08:01 +0000 Subject: [openssl-commits] Build completed: openssl master.9834 Message-ID: <20170424220801.95022.49882.7B0DD880@appveyor.com> An HTML attachment was scrubbed... URL: From rsalz at openssl.org Mon Apr 24 22:41:07 2017 From: rsalz at openssl.org (Rich Salz) Date: Mon, 24 Apr 2017 22:41:07 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1493073667.991008.11543.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 1e0b1ae58393bc25b5ece816b2df0525a862bdd1 (commit) from c13ff3d222d38f66f5cde3d46d8c8dd6b2055d82 (commit) - Log ----------------------------------------------------------------- commit 1e0b1ae58393bc25b5ece816b2df0525a862bdd1 Author: Rich Salz Date: Mon Apr 24 18:23:11 2017 -0400 check length sanity before correcting in EVP_CTRL_AEAD_TLS1_AAD Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3290) ----------------------------------------------------------------------- Summary of changes: crypto/evp/e_aes_cbc_hmac_sha1.c | 2 ++ crypto/evp/e_aes_cbc_hmac_sha256.c | 2 ++ engines/e_dasync.c | 2 ++ 3 files changed, 6 insertions(+) diff --git a/crypto/evp/e_aes_cbc_hmac_sha1.c b/crypto/evp/e_aes_cbc_hmac_sha1.c index 52c7c74..8e71e59 100644 --- a/crypto/evp/e_aes_cbc_hmac_sha1.c +++ b/crypto/evp/e_aes_cbc_hmac_sha1.c @@ -809,6 +809,8 @@ static int aesni_cbc_hmac_sha1_ctrl(EVP_CIPHER_CTX *ctx, int type, int arg, key->payload_length = len; if ((key->aux.tls_ver = p[arg - 4] << 8 | p[arg - 3]) >= TLS1_1_VERSION) { + if (len < AES_BLOCK_SIZE) + return 0; len -= AES_BLOCK_SIZE; p[arg - 2] = len >> 8; p[arg - 1] = len; diff --git a/crypto/evp/e_aes_cbc_hmac_sha256.c b/crypto/evp/e_aes_cbc_hmac_sha256.c index 93b88a0..f0be05c 100644 --- a/crypto/evp/e_aes_cbc_hmac_sha256.c +++ b/crypto/evp/e_aes_cbc_hmac_sha256.c @@ -788,6 +788,8 @@ static int aesni_cbc_hmac_sha256_ctrl(EVP_CIPHER_CTX *ctx, int type, int arg, key->payload_length = len; if ((key->aux.tls_ver = p[arg - 4] << 8 | p[arg - 3]) >= TLS1_1_VERSION) { + if (len < AES_BLOCK_SIZE) + return 0; len -= AES_BLOCK_SIZE; p[arg - 2] = len >> 8; p[arg - 1] = len; diff --git a/engines/e_dasync.c b/engines/e_dasync.c index 89b1277..4e3e936 100644 --- a/engines/e_dasync.c +++ b/engines/e_dasync.c @@ -606,6 +606,8 @@ static int dasync_cipher_ctrl_helper(EVP_CIPHER_CTX *ctx, int type, int arg, if (pipe_ctx->enc) { if ((p[arg - 4] << 8 | p[arg - 3]) >= TLS1_1_VERSION) { + if (len < AES_BLOCK_SIZE) + return 0; len -= AES_BLOCK_SIZE; } From no-reply at appveyor.com Tue Apr 25 00:27:49 2017 From: no-reply at appveyor.com (AppVeyor) Date: Tue, 25 Apr 2017 00:27:49 +0000 Subject: [openssl-commits] Build failed: openssl master.9841 Message-ID: <20170425002748.129634.72171.D15A6BCE@appveyor.com> An HTML attachment was scrubbed... URL: From rsalz at openssl.org Tue Apr 25 00:33:34 2017 From: rsalz at openssl.org (Rich Salz) Date: Tue, 25 Apr 2017 00:33:34 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493080414.349201.9060.nullmailer@dev.openssl.org> The branch master has been updated via b3c42fc2503a685a9e51427c1a83c8f09487389d (commit) from f044cd05a1d28c998731108dfcd25ba580cdda07 (commit) - Log ----------------------------------------------------------------- commit b3c42fc2503a685a9e51427c1a83c8f09487389d Author: Rich Salz Date: Mon Apr 24 20:24:38 2017 -0400 Fix typo in OPENSSL_LH_new compat API CLA: trivial Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3292) ----------------------------------------------------------------------- Summary of changes: include/openssl/lhash.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/openssl/lhash.h b/include/openssl/lhash.h index e2ccb65..a3adc64 100644 --- a/include/openssl/lhash.h +++ b/include/openssl/lhash.h @@ -95,7 +95,7 @@ void OPENSSL_LH_node_usage_stats_bio(const OPENSSL_LHASH *lh, BIO *out); # define _LHASH OPENSSL_LHASH # define LHASH_NODE OPENSSL_LH_NODE # define lh_error OPENSSL_LH_error -# define lh_new OPENSSL_lh_new +# define lh_new OPENSSL_LH_new # define lh_free OPENSSL_LH_free # define lh_insert OPENSSL_LH_insert # define lh_delete OPENSSL_LH_delete From builds at travis-ci.org Tue Apr 25 00:57:42 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 25 Apr 2017 00:57:42 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10530 (master - b3c42fc) In-Reply-To: Message-ID: <58fe9f0641c37_43fbebaa8ebe417085ab@cb998c7a-403b-49ba-b902-56b368e3bb34.mail> Build Update for openssl/openssl ------------------------------------- Build: #10530 Status: Still Failing Duration: 22 minutes and 59 seconds Commit: b3c42fc (master) Author: Rich Salz Message: Fix typo in OPENSSL_LH_new compat API CLA: trivial Reviewed-by: Matt Caswell Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3292) View the changeset: https://github.com/openssl/openssl/compare/f044cd05a1d2...b3c42fc2503a View the full build log and details: https://travis-ci.org/openssl/openssl/builds/225434230 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Tue Apr 25 01:07:04 2017 From: no-reply at appveyor.com (AppVeyor) Date: Tue, 25 Apr 2017 01:07:04 +0000 Subject: [openssl-commits] Build completed: openssl master.9842 Message-ID: <20170425010704.10416.034B55535CDCF243@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Tue Apr 25 09:29:16 2017 From: no-reply at appveyor.com (AppVeyor) Date: Tue, 25 Apr 2017 09:29:16 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.19 Message-ID: <20170425092916.9716.E25A7AEA3D4FAA12@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Tue Apr 25 10:15:31 2017 From: no-reply at appveyor.com (AppVeyor) Date: Tue, 25 Apr 2017 10:15:31 +0000 Subject: [openssl-commits] Build completed: openssl 1.0.20 Message-ID: <20170425101531.64691.27126.7BA2BAC3@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Tue Apr 25 12:53:48 2017 From: no-reply at appveyor.com (AppVeyor) Date: Tue, 25 Apr 2017 12:53:48 +0000 Subject: [openssl-commits] Build failed: openssl master.9853 Message-ID: <20170425125347.9891.85D7E825C24EC961@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Tue Apr 25 12:58:48 2017 From: no-reply at appveyor.com (AppVeyor) Date: Tue, 25 Apr 2017 12:58:48 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.24 Message-ID: <20170425125848.94239.8550.4AB6DB2E@appveyor.com> An HTML attachment was scrubbed... URL: From matt at openssl.org Tue Apr 25 13:01:29 2017 From: matt at openssl.org (Matt Caswell) Date: Tue, 25 Apr 2017 13:01:29 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493125289.348790.22392.nullmailer@dev.openssl.org> The branch master has been updated via f7b3cb2ad0fac9d5ea0025c4d84ff4603a78b64e (commit) via 561f6f1ed237cb9a5a9020e58a368dd9d351b40b (commit) via ce466c96f0eb14e5c35181e54e52164de1afe921 (commit) via e829142846467b4815d96fe9198e73d5e4d9bbf1 (commit) via c90da922ddaa3b470f4c1c11d02f370589a31912 (commit) via 0f5df0f1037590de12cc11eeab26fe29bf3f16a3 (commit) via cf1560092316c7d2318c5783192781d4e2d41277 (commit) via 00da4f4dd9d02c8e0d0d499ba7a0d29e7c1989a4 (commit) via 4ef8a6b22b830d89d5f3e2ff0d63c2040a9f0cac (commit) via 978b945b9493ddc5930e5b2186feb584b9952460 (commit) via 83964ca0dac18df510a315ff486ecc346521e15d (commit) via 41b3c9ce2a02195aa7cf74c90b80468354ac708d (commit) via aefb925647175a310df73416c9c7253424a65106 (commit) via bd79bcb42bab120575fc398692b7b61b1c5e6ed2 (commit) via c4666bfa13480c1e700a0d487300da2a56e889af (commit) via dcf88c5b79cbd433ee37276cdf63cdb5d49673cd (commit) via 8ccc237720d59cdf249c2c901d19f1fec739e66e (commit) via 72d0bc84de394e93f7d756a997c0d42a4ae35058 (commit) via 5114d8227e0516fffc0c8653f5118290709f6494 (commit) from b3c42fc2503a685a9e51427c1a83c8f09487389d (commit) - Log ----------------------------------------------------------------- commit f7b3cb2ad0fac9d5ea0025c4d84ff4603a78b64e Author: Matt Caswell Date: Mon Apr 24 15:36:02 2017 +0100 Fix doc-nits issue BIO_lookup_ex() should be in the NAME section Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3286) commit 561f6f1ed237cb9a5a9020e58a368dd9d351b40b Author: Matt Caswell Date: Mon Apr 24 14:15:49 2017 +0100 Address review feedback for the SCTP changes Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3286) commit ce466c96f0eb14e5c35181e54e52164de1afe921 Author: Matt Caswell Date: Mon Apr 24 13:58:07 2017 +0100 Fix issue in 18-dtls-renegotiate.conf.in Don't skip all tests if SCTP is disabled! Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3286) commit e829142846467b4815d96fe9198e73d5e4d9bbf1 Author: Matt Caswell Date: Mon Apr 24 11:46:09 2017 +0100 Document BIO_lookup_ex() We also change the enum type to an int. Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3286) commit c90da922ddaa3b470f4c1c11d02f370589a31912 Author: Matt Caswell Date: Mon Apr 24 11:45:42 2017 +0100 Fix some variable references in init_client We were incorrectly using "res" when we meant "ai" Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3286) commit 0f5df0f1037590de12cc11eeab26fe29bf3f16a3 Author: Matt Caswell Date: Mon Apr 24 11:19:05 2017 +0100 Add SCTP testing for 04-client_auth.conf Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3286) commit cf1560092316c7d2318c5783192781d4e2d41277 Author: Matt Caswell Date: Mon Apr 24 11:03:11 2017 +0100 Add SCTP testing for 11-dtls_resumption.conf Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3286) commit 00da4f4dd9d02c8e0d0d499ba7a0d29e7c1989a4 Author: Matt Caswell Date: Mon Apr 24 10:16:21 2017 +0100 Add SCTP testing to 07-dtls-protocol-version.conf Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3286) commit 4ef8a6b22b830d89d5f3e2ff0d63c2040a9f0cac Author: Matt Caswell Date: Mon Apr 24 09:43:17 2017 +0100 Add SCTP testing to 18-dtls-renegotiate.conf Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3286) commit 978b945b9493ddc5930e5b2186feb584b9952460 Author: Matt Caswell Date: Mon Apr 24 09:42:53 2017 +0100 Add SCTP testing to 16-dtls-certstatus.conf Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3286) commit 83964ca0dac18df510a315ff486ecc346521e15d Author: Matt Caswell Date: Mon Apr 24 09:42:28 2017 +0100 Add support to test_ssl_new for testing with DTLS over SCTP Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3286) commit 41b3c9ce2a02195aa7cf74c90b80468354ac708d Author: Matt Caswell Date: Fri Apr 21 16:56:06 2017 +0100 Fix problem with SCTP close_notify alerts In SCTP the code was only allowing a send of a close_notify alert if the socket is dry. If the socket isn't dry then it was attempting to save away the close_notify alert to resend later when it is dry and then it returned success. However because the application then thinks that the close_notify alert has been successfully sent it never re-enters the DTLS code to actually resend the alert. A much simpler solution is to just fail with a retryable error in the event that the socket isn't dry. That way the application knows to retry sending the close_notify alert. Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3286) commit aefb925647175a310df73416c9c7253424a65106 Author: Matt Caswell Date: Fri Apr 21 14:00:20 2017 +0100 Don't attempt to send fragments > max_send_fragment in DTLS We were allocating the write buffer based on the size of max_send_fragment, but ignoring it when writing data. We should fragment handshake messages if they exceed max_send_fragment and reject application data writes that are too large. Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3286) commit bd79bcb42bab120575fc398692b7b61b1c5e6ed2 Author: Matt Caswell Date: Thu Apr 20 15:13:28 2017 +0100 Remove special case code for SCTP reneg handling There was code existing which attempted to handle the case where application data is received after a reneg handshake has started in SCTP. In normal DTLS we just fail the connection if this occurs, so there doesn't seem any reason to try and work around it for SCTP. In practice it didn't work properly anyway and is probably a bad idea to start with. Fixes #3251 Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3286) commit c4666bfa13480c1e700a0d487300da2a56e889af Author: Matt Caswell Date: Thu Apr 20 14:45:33 2017 +0100 Ask libssl if we should retry not the socket s_server was asking the underlying socket if it is a retryable error rather than libssl which has more information. Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3286) commit dcf88c5b79cbd433ee37276cdf63cdb5d49673cd Author: Matt Caswell Date: Thu Apr 20 10:58:27 2017 +0100 Add better error logging if SCTP AUTH chunks are not enabled In order to use SCTP over DTLS we need ACTP AUTH chunks to be enabled in the kernel. Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3286) commit 8ccc237720d59cdf249c2c901d19f1fec739e66e Author: Matt Caswell Date: Thu Apr 20 09:57:12 2017 +0100 Add a -sctp option to s_client Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3286) commit 72d0bc84de394e93f7d756a997c0d42a4ae35058 Author: Matt Caswell Date: Thu Apr 20 09:56:56 2017 +0100 Add a -sctp option to s_server Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3286) commit 5114d8227e0516fffc0c8653f5118290709f6494 Author: Matt Caswell Date: Thu Apr 20 09:51:55 2017 +0100 Add a BIO_lookup_ex() function The existing BIO_lookup() wraps a call to getaddrinfo and provides an abstracted capability to lookup addresses based on socket type and family. However it provides no ability to lookup based on protocol. Normally, when dealing with TCP/UDP this is not required. However getaddrinfo (at least on linux) never returns SCTP addresses unless you specifically ask for them in the protocol field. Therefore BIO_lookup_ex() is added which provides the protocol field. Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3286) ----------------------------------------------------------------------- Summary of changes: apps/s_apps.h | 6 +- apps/s_client.c | 40 +++- apps/s_server.c | 72 +++++-- apps/s_socket.c | 65 +++++- crypto/bio/b_addr.c | 33 ++-- crypto/bio/bio_err.c | 4 +- crypto/bio/bss_dgram.c | 60 ++---- doc/man3/BIO_ADDRINFO.pod | 41 +++- include/openssl/bio.h | 5 + include/openssl/ssl.h | 1 + ssl/d1_msg.c | 13 +- ssl/record/rec_layer_d1.c | 28 +-- ssl/ssl_err.c | 2 + ssl/statem/statem.c | 23 --- ssl/statem/statem.h | 7 - ssl/statem/statem_clnt.c | 24 +-- ssl/statem/statem_dtls.c | 3 + ssl/statem/statem_lib.c | 5 +- ssl/statem/statem_srvr.c | 37 ---- test/handshake_helper.c | 207 ++++++++++++++++--- test/recipes/80-test_ssl_new.t | 10 +- test/ssl-tests/02-protocol-version.conf | 208 ++++++++++---------- test/ssl-tests/04-client_auth.conf.in | 264 +++++++++++++------------ test/ssl-tests/16-dtls-certstatus.conf.in | 35 +++- test/ssl-tests/18-dtls-renegotiate.conf | 9 + test/ssl-tests/18-dtls-renegotiate.conf.in | 306 +++++++++++++++-------------- test/ssl-tests/protocol_version.pm | 143 +++++++------- test/ssl_test_ctx.c | 2 + test/ssl_test_ctx.h | 2 + util/libcrypto.num | 1 + 30 files changed, 956 insertions(+), 700 deletions(-) diff --git a/apps/s_apps.h b/apps/s_apps.h index aa0565d..38c6b67 100644 --- a/apps/s_apps.h +++ b/apps/s_apps.h @@ -20,9 +20,9 @@ #define PORT "4433" #define PROTOCOL "tcp" -typedef int (*do_server_cb)(int s, int stype, unsigned char *context); +typedef int (*do_server_cb)(int s, int stype, int prot, unsigned char *context); int do_server(int *accept_sock, const char *host, const char *port, - int family, int type, + int family, int type, int protocol, do_server_cb cb, unsigned char *context, int naccept); #ifdef HEADER_X509_H @@ -38,7 +38,7 @@ int ssl_print_groups(BIO *out, SSL *s, int noshared); #endif int ssl_print_tmp_key(BIO *out, SSL *s); int init_client(int *sock, const char *host, const char *port, - int family, int type); + int family, int type, int protocol); int should_retry(int i); long bio_dump_callback(BIO *bio, int cmd, const char *argp, diff --git a/apps/s_client.c b/apps/s_client.c index 9267393..52b99ce 100644 --- a/apps/s_client.c +++ b/apps/s_client.c @@ -539,7 +539,7 @@ typedef enum OPTION_choice { #endif OPT_SSL3, OPT_SSL_CONFIG, OPT_TLS1_3, OPT_TLS1_2, OPT_TLS1_1, OPT_TLS1, OPT_DTLS, OPT_DTLS1, - OPT_DTLS1_2, OPT_TIMEOUT, OPT_MTU, OPT_KEYFORM, OPT_PASS, + OPT_DTLS1_2, OPT_SCTP, OPT_TIMEOUT, OPT_MTU, OPT_KEYFORM, OPT_PASS, OPT_CERT_CHAIN, OPT_CAPATH, OPT_NOCAPATH, OPT_CHAINCAPATH, OPT_VERIFYCAPATH, OPT_KEY, OPT_RECONNECT, OPT_BUILD_CHAIN, OPT_CAFILE, OPT_NOCAFILE, @@ -699,6 +699,9 @@ const OPTIONS s_client_options[] = { #ifndef OPENSSL_NO_DTLS1_2 {"dtls1_2", OPT_DTLS1_2, '-', "Just use DTLSv1.2"}, #endif +#ifndef OPENSSL_NO_SCTP + {"sctp", OPT_SCTP, '-', "Use SCTP"}, +#endif #ifndef OPENSSL_NO_SSL_TRACE {"trace", OPT_TRACE, '-', "Show trace output of protocol messages"}, #endif @@ -847,7 +850,7 @@ int s_client_main(int argc, char **argv) int reconnect = 0, verify = SSL_VERIFY_NONE, vpmtouched = 0; int ret = 1, in_init = 1, i, nbio_test = 0, s = -1, k, width, state = 0; int sbuf_len, sbuf_off, cmdletters = 1; - int socket_family = AF_UNSPEC, socket_type = SOCK_STREAM; + int socket_family = AF_UNSPEC, socket_type = SOCK_STREAM, protocol = 0; int starttls_proto = PROTO_OFF, crl_format = FORMAT_PEM, crl_download = 0; int write_tty, read_tty, write_ssl, read_ssl, tty_on, ssl_pending; #if !defined(OPENSSL_SYS_WINDOWS) && !defined(OPENSSL_SYS_MSDOS) @@ -900,6 +903,7 @@ int s_client_main(int argc, char **argv) #endif BIO *bio_c_msg = NULL; const char *keylog_file = NULL, *early_data_file = NULL; + int isdtls = 0; FD_ZERO(&readfds); FD_ZERO(&writefds); @@ -1217,6 +1221,7 @@ int s_client_main(int argc, char **argv) #ifndef OPENSSL_NO_DTLS meth = DTLS_client_method(); socket_type = SOCK_DGRAM; + isdtls = 1; #endif break; case OPT_DTLS1: @@ -1225,6 +1230,7 @@ int s_client_main(int argc, char **argv) min_version = DTLS1_VERSION; max_version = DTLS1_VERSION; socket_type = SOCK_DGRAM; + isdtls = 1; #endif break; case OPT_DTLS1_2: @@ -1233,6 +1239,12 @@ int s_client_main(int argc, char **argv) min_version = DTLS1_2_VERSION; max_version = DTLS1_2_VERSION; socket_type = SOCK_DGRAM; + isdtls = 1; +#endif + break; + case OPT_SCTP: +#ifndef OPENSSL_NO_SCTP + protocol = IPPROTO_SCTP; #endif break; case OPT_TIMEOUT: @@ -1432,6 +1444,17 @@ int s_client_main(int argc, char **argv) goto end; } +#ifndef OPENSSL_NO_SCTP + if (protocol == IPPROTO_SCTP) { + if (socket_type != SOCK_DGRAM) { + BIO_printf(bio_err, "Can't use -sctp without DTLS\n"); + goto end; + } + /* SCTP is unusual. It uses DTLS over a SOCK_STREAM protocol */ + socket_type = SOCK_STREAM; + } +#endif + if (split_send_fragment > SSL3_RT_MAX_PLAIN_LENGTH) { BIO_printf(bio_err, "Bad split send fragment size\n"); goto end; @@ -1804,7 +1827,8 @@ int s_client_main(int argc, char **argv) } re_start: - if (init_client(&s, host, port, socket_family, socket_type) == 0) { + if (init_client(&s, host, port, socket_family, socket_type, protocol) + == 0) { BIO_printf(bio_err, "connect:errno=%d\n", get_last_socket_error()); BIO_closesocket(s); goto end; @@ -1819,10 +1843,16 @@ int s_client_main(int argc, char **argv) BIO_printf(bio_c_out, "Turned on non blocking io\n"); } #ifndef OPENSSL_NO_DTLS - if (socket_type == SOCK_DGRAM) { + if (isdtls) { union BIO_sock_info_u peer_info; - sbio = BIO_new_dgram(s, BIO_NOCLOSE); +#ifndef OPENSSL_NO_SCTP + if (protocol == IPPROTO_SCTP) + sbio = BIO_new_dgram_sctp(s, BIO_NOCLOSE); + else +#endif + sbio = BIO_new_dgram(s, BIO_NOCLOSE); + if ((peer_info.addr = BIO_ADDR_new()) == NULL) { BIO_printf(bio_err, "memory allocation failure\n"); BIO_closesocket(s); diff --git a/apps/s_server.c b/apps/s_server.c index 4bd2620..7fb7772 100644 --- a/apps/s_server.c +++ b/apps/s_server.c @@ -91,9 +91,9 @@ typedef unsigned int u_int; #endif static int not_resumable_sess_cb(SSL *s, int is_forward_secure); -static int sv_body(int s, int stype, unsigned char *context); -static int www_body(int s, int stype, unsigned char *context); -static int rev_body(int s, int stype, unsigned char *context); +static int sv_body(int s, int stype, int prot, unsigned char *context); +static int www_body(int s, int stype, int prot, unsigned char *context); +static int rev_body(int s, int stype, int prot, unsigned char *context); static void close_accept_socket(void); static int init_ssl_connection(SSL *s); static void print_stats(BIO *bp, SSL_CTX *ctx); @@ -719,7 +719,7 @@ typedef enum OPTION_choice { OPT_SRPUSERSEED, OPT_REV, OPT_WWW, OPT_UPPER_WWW, OPT_HTTP, OPT_ASYNC, OPT_SSL_CONFIG, OPT_SPLIT_SEND_FRAG, OPT_MAX_PIPELINES, OPT_READ_BUF, OPT_SSL3, OPT_TLS1_3, OPT_TLS1_2, OPT_TLS1_1, OPT_TLS1, OPT_DTLS, OPT_DTLS1, - OPT_DTLS1_2, OPT_TIMEOUT, OPT_MTU, OPT_LISTEN, + OPT_DTLS1_2, OPT_SCTP, OPT_TIMEOUT, OPT_MTU, OPT_LISTEN, OPT_ID_PREFIX, OPT_RAND, OPT_SERVERNAME, OPT_SERVERNAME_FATAL, OPT_CERT2, OPT_KEY2, OPT_NEXTPROTONEG, OPT_ALPN, OPT_SRTP_PROFILES, OPT_KEYMATEXPORT, OPT_KEYMATEXPORTLEN, @@ -903,6 +903,9 @@ const OPTIONS s_server_options[] = { #ifndef OPENSSL_NO_DTLS1_2 {"dtls1_2", OPT_DTLS1_2, '-', "Just talk DTLSv1.2"}, #endif +#ifndef OPENSSL_NO_SCTP + {"sctp", OPT_SCTP, '-', "Use SCTP"}, +#endif #ifndef OPENSSL_NO_DH {"no_dhe", OPT_NO_DHE, '-', "Disable ephemeral DH"}, #endif @@ -960,7 +963,7 @@ int s_server_main(int argc, char *argv[]) int s_cert_format = FORMAT_PEM, s_key_format = FORMAT_PEM; int s_dcert_format = FORMAT_PEM, s_dkey_format = FORMAT_PEM; int rev = 0, naccept = -1, sdebug = 0; - int socket_family = AF_UNSPEC, socket_type = SOCK_STREAM; + int socket_family = AF_UNSPEC, socket_type = SOCK_STREAM, protocol = 0; int state = 0, crl_format = FORMAT_PEM, crl_download = 0; char *host = NULL; char *port = BUF_strdup(PORT); @@ -1431,6 +1434,11 @@ int s_server_main(int argc, char *argv[]) socket_type = SOCK_DGRAM; #endif break; + case OPT_SCTP: +#ifndef OPENSSL_NO_SCTP + protocol = IPPROTO_SCTP; +#endif + break; case OPT_TIMEOUT: #ifndef OPENSSL_NO_DTLS enable_timeouts = 1; @@ -1543,6 +1551,17 @@ int s_server_main(int argc, char *argv[]) } #endif +#ifndef OPENSSL_NO_SCTP + if (protocol == IPPROTO_SCTP) { + if (socket_type != SOCK_DGRAM) { + BIO_printf(bio_err, "Can't use -sctp without DTLS\n"); + goto end; + } + /* SCTP is unusual. It uses DTLS over a SOCK_STREAM protocol */ + socket_type = SOCK_STREAM; + } +#endif + if (split_send_fragment > SSL3_RT_MAX_PLAIN_LENGTH) { BIO_printf(bio_err, "Bad split send fragment size\n"); goto end; @@ -2018,7 +2037,7 @@ int s_server_main(int argc, char *argv[]) && unlink_unix_path) unlink(host); #endif - do_server(&accept_socket, host, port, socket_family, socket_type, + do_server(&accept_socket, host, port, socket_family, socket_type, protocol, server_cb, context, naccept); print_stats(bio_s_out, ctx); ret = 0; @@ -2090,7 +2109,7 @@ static void print_stats(BIO *bio, SSL_CTX *ssl_ctx) SSL_CTX_sess_get_cache_size(ssl_ctx)); } -static int sv_body(int s, int stype, unsigned char *context) +static int sv_body(int s, int stype, int prot, unsigned char *context) { char *buf = NULL; fd_set readfds; @@ -2105,6 +2124,13 @@ static int sv_body(int s, int stype, unsigned char *context) #else struct timeval *timeoutp; #endif +#ifndef OPENSSL_NO_DTLS + #ifndef OPENSSL_NO_SCTP + int isdtls = (stype == SOCK_DGRAM || prot == IPPROTO_SCTP); + #else + int isdtls = (stype == SOCK_DGRAM); + #endif +#endif buf = app_malloc(bufsize, "server buffer"); if (s_nbio) { @@ -2136,9 +2162,13 @@ static int sv_body(int s, int stype, unsigned char *context) goto err; } #ifndef OPENSSL_NO_DTLS - if (stype == SOCK_DGRAM) { - - sbio = BIO_new_dgram(s, BIO_NOCLOSE); + if (isdtls) { +#ifndef OPENSSL_NO_SCTP + if (prot == IPPROTO_SCTP) + sbio = BIO_new_dgram_sctp(s, BIO_NOCLOSE); + else +#endif + sbio = BIO_new_dgram(s, BIO_NOCLOSE); if (enable_timeouts) { timeout.tv_sec = 0; @@ -2169,12 +2199,20 @@ static int sv_body(int s, int stype, unsigned char *context) /* want to do MTU discovery */ BIO_ctrl(sbio, BIO_CTRL_DGRAM_MTU_DISCOVER, 0, NULL); - /* turn on cookie exchange */ - SSL_set_options(con, SSL_OP_COOKIE_EXCHANGE); + if (prot != IPPROTO_SCTP) { + /* Turn on cookie exchange. Not necessary for SCTP */ + SSL_set_options(con, SSL_OP_COOKIE_EXCHANGE); + } } else #endif sbio = BIO_new_socket(s, BIO_NOCLOSE); + if (sbio == NULL) { + BIO_printf(bio_err, "Unable to create BIO\n"); + ERR_print_errors(bio_err); + goto err; + } + if (s_nbio_test) { BIO *test; @@ -2608,7 +2646,7 @@ static int init_ssl_connection(SSL *con) i = SSL_accept(con); if (i <= 0) - retry = BIO_sock_should_retry(i); + retry = !SSL_want_nothing(con); #ifdef CERT_CB_TEST_RETRY { while (i <= 0 @@ -2618,7 +2656,7 @@ static int init_ssl_connection(SSL *con) "LOOKUP from certificate callback during accept\n"); i = SSL_accept(con); if (i <= 0) - retry = BIO_sock_should_retry(i); + retry = !SSL_want_nothing(con); } } #endif @@ -2639,7 +2677,7 @@ static int init_ssl_connection(SSL *con) BIO_printf(bio_s_out, "LOOKUP not successful\n"); i = SSL_accept(con); if (i <= 0) - retry = BIO_sock_should_retry(i); + retry = !SSL_want_nothing(con); } #endif } while (i < 0 && SSL_waiting_for_async(con)); @@ -2767,7 +2805,7 @@ static DH *load_dh_param(const char *dhfile) } #endif -static int www_body(int s, int stype, unsigned char *context) +static int www_body(int s, int stype, int prot, unsigned char *context) { char *buf = NULL; int ret = 1; @@ -3153,7 +3191,7 @@ static int www_body(int s, int stype, unsigned char *context) return (ret); } -static int rev_body(int s, int stype, unsigned char *context) +static int rev_body(int s, int stype, int prot, unsigned char *context) { char *buf = NULL; int i; diff --git a/apps/s_socket.c b/apps/s_socket.c index d16f5ad..1c5c137 100644 --- a/apps/s_socket.c +++ b/apps/s_socket.c @@ -44,6 +44,7 @@ typedef unsigned int u_int; * @family: desired socket family, may be AF_INET, AF_INET6, AF_UNIX or * AF_UNSPEC * @type: socket type, must be SOCK_STREAM or SOCK_DGRAM + * @protocol: socket protocol, e.g. IPPROTO_TCP or IPPROTO_UDP (or 0 for any) * * This will create a socket and use it to connect to a host:port, or if * family == AF_UNIX, to the path found in host. @@ -55,7 +56,7 @@ typedef unsigned int u_int; * Returns 1 on success, 0 on failure. */ int init_client(int *sock, const char *host, const char *port, - int family, int type) + int family, int type, int protocol) { BIO_ADDRINFO *res = NULL; const BIO_ADDRINFO *ai = NULL; @@ -64,7 +65,8 @@ int init_client(int *sock, const char *host, const char *port, if (!BIO_sock_init()) return 0; - ret = BIO_lookup(host, port, BIO_LOOKUP_CLIENT, family, type, &res); + ret = BIO_lookup_ex(host, port, BIO_LOOKUP_CLIENT, family, type, protocol, + &res); if (ret == 0) { ERR_print_errors(bio_err); return 0; @@ -75,17 +77,39 @@ int init_client(int *sock, const char *host, const char *port, /* Admittedly, these checks are quite paranoid, we should not get * anything in the BIO_ADDRINFO chain that we haven't * asked for. */ - OPENSSL_assert((family == AF_UNSPEC || family == BIO_ADDRINFO_family(res)) - && (type == 0 || type == BIO_ADDRINFO_socktype(res))); + OPENSSL_assert((family == AF_UNSPEC + || family == BIO_ADDRINFO_family(ai)) + && (type == 0 || type == BIO_ADDRINFO_socktype(ai)) + && (protocol == 0 + || protocol == BIO_ADDRINFO_protocol(ai))); *sock = BIO_socket(BIO_ADDRINFO_family(ai), BIO_ADDRINFO_socktype(ai), - BIO_ADDRINFO_protocol(res), 0); + BIO_ADDRINFO_protocol(ai), 0); if (*sock == INVALID_SOCKET) { /* Maybe the kernel doesn't support the socket family, even if * BIO_lookup() added it in the returned result... */ continue; } + +#ifndef OPENSSL_NO_SCTP + if (protocol == IPPROTO_SCTP) { + /* + * For SCTP we have to set various options on the socket prior to + * connecting. This is done automatically by BIO_new_dgram_sctp(). + * We don't actually need the created BIO though so we free it again + * immediately. + */ + BIO *tmpbio = BIO_new_dgram_sctp(*sock, BIO_NOCLOSE); + + if (tmpbio == NULL) { + ERR_print_errors(bio_err); + return 0; + } + BIO_free(tmpbio); + } +#endif + if (!BIO_connect(*sock, BIO_ADDRINFO_address(ai), 0)) { BIO_closesocket(*sock); *sock = INVALID_SOCKET; @@ -128,7 +152,7 @@ int init_client(int *sock, const char *host, const char *port, * 0 on failure, something other on success. */ int do_server(int *accept_sock, const char *host, const char *port, - int family, int type, do_server_cb cb, + int family, int type, int protocol, do_server_cb cb, unsigned char *context, int naccept) { int asock = 0; @@ -140,7 +164,8 @@ int do_server(int *accept_sock, const char *host, const char *port, if (!BIO_sock_init()) return 0; - if (!BIO_lookup(host, port, BIO_LOOKUP_SERVER, family, type, &res)) { + if (!BIO_lookup_ex(host, port, BIO_LOOKUP_SERVER, family, type, protocol, + &res)) { ERR_print_errors(bio_err); return 0; } @@ -148,7 +173,8 @@ int do_server(int *accept_sock, const char *host, const char *port, /* Admittedly, these checks are quite paranoid, we should not get * anything in the BIO_ADDRINFO chain that we haven't asked for */ OPENSSL_assert((family == AF_UNSPEC || family == BIO_ADDRINFO_family(res)) - && (type == 0 || type == BIO_ADDRINFO_socktype(res))); + && (type == 0 || type == BIO_ADDRINFO_socktype(res)) + && (protocol == 0 || protocol == BIO_ADDRINFO_protocol(res))); asock = BIO_socket(BIO_ADDRINFO_family(res), BIO_ADDRINFO_socktype(res), BIO_ADDRINFO_protocol(res), 0); @@ -161,6 +187,25 @@ int do_server(int *accept_sock, const char *host, const char *port, goto end; } +#ifndef OPENSSL_NO_SCTP + if (protocol == IPPROTO_SCTP) { + /* + * For SCTP we have to set various options on the socket prior to + * accepting. This is done automatically by BIO_new_dgram_sctp(). + * We don't actually need the created BIO though so we free it again + * immediately. + */ + BIO *tmpbio = BIO_new_dgram_sctp(asock, BIO_NOCLOSE); + + if (tmpbio == NULL) { + BIO_closesocket(asock); + ERR_print_errors(bio_err); + goto end; + } + BIO_free(tmpbio); + } +#endif + BIO_ADDRINFO_free(res); res = NULL; @@ -176,10 +221,10 @@ int do_server(int *accept_sock, const char *host, const char *port, BIO_closesocket(asock); break; } - i = (*cb)(sock, type, context); + i = (*cb)(sock, type, protocol, context); BIO_closesocket(sock); } else { - i = (*cb)(asock, type, context); + i = (*cb)(asock, type, protocol, context); } if (naccept != -1) diff --git a/crypto/bio/b_addr.c b/crypto/bio/b_addr.c index 289404c..b8e1f96 100644 --- a/crypto/bio/b_addr.c +++ b/crypto/bio/b_addr.c @@ -609,8 +609,15 @@ DEFINE_RUN_ONCE_STATIC(do_bio_lookup_init) return bio_lookup_lock != NULL; } +int BIO_lookup(const char *host, const char *service, + enum BIO_lookup_type lookup_type, + int family, int socktype, BIO_ADDRINFO **res) +{ + return BIO_lookup_ex(host, service, lookup_type, family, socktype, 0, res); +} + /*- - * BIO_lookup - look up the node and service you want to connect to. + * BIO_lookup_ex - look up the node and service you want to connect to. * @node: the node you want to connect to. * @service: the service you want to connect to. * @lookup_type: declare intent with the result, client or server. @@ -618,6 +625,10 @@ DEFINE_RUN_ONCE_STATIC(do_bio_lookup_init) * AF_INET, AF_INET6 or AF_UNIX. * @socktype: The socket type you want to use. Can be SOCK_STREAM, SOCK_DGRAM * or 0 for all. + * @protocol: The protocol to use, e.g. IPPROTO_TCP or IPPROTO_UDP or 0 for all. + * Note that some platforms may not return IPPROTO_SCTP without + * explicitly requesting it (i.e. IPPROTO_SCTP may not be returned + * with 0 for the protocol) * @res: Storage place for the resulting list of returned addresses * * This will do a lookup of the node and service that you want to connect to. @@ -627,9 +638,8 @@ DEFINE_RUN_ONCE_STATIC(do_bio_lookup_init) * * The return value is 1 on success or 0 in case of error. */ -int BIO_lookup(const char *host, const char *service, - enum BIO_lookup_type lookup_type, - int family, int socktype, BIO_ADDRINFO **res) +int BIO_lookup_ex(const char *host, const char *service, int lookup_type, + int family, int socktype, int protocol, BIO_ADDRINFO **res) { int ret = 0; /* Assume failure */ @@ -646,7 +656,7 @@ int BIO_lookup(const char *host, const char *service, #endif break; default: - BIOerr(BIO_F_BIO_LOOKUP, BIO_R_UNSUPPORTED_PROTOCOL_FAMILY); + BIOerr(BIO_F_BIO_LOOKUP_EX, BIO_R_UNSUPPORTED_PROTOCOL_FAMILY); return 0; } @@ -655,7 +665,7 @@ int BIO_lookup(const char *host, const char *service, if (addrinfo_wrap(family, socktype, host, strlen(host), 0, res)) return 1; else - BIOerr(BIO_F_BIO_LOOKUP, ERR_R_MALLOC_FAILURE); + BIOerr(BIO_F_BIO_LOOKUP_EX, ERR_R_MALLOC_FAILURE); return 0; } #endif @@ -672,6 +682,7 @@ int BIO_lookup(const char *host, const char *service, hints.ai_family = family; hints.ai_socktype = socktype; + hints.ai_protocol = protocol; if (lookup_type == BIO_LOOKUP_SERVER) hints.ai_flags |= AI_PASSIVE; @@ -683,14 +694,14 @@ int BIO_lookup(const char *host, const char *service, # ifdef EAI_SYSTEM case EAI_SYSTEM: SYSerr(SYS_F_GETADDRINFO, get_last_socket_error()); - BIOerr(BIO_F_BIO_LOOKUP, ERR_R_SYS_LIB); + BIOerr(BIO_F_BIO_LOOKUP_EX, ERR_R_SYS_LIB); break; # endif case 0: ret = 1; /* Success */ break; default: - BIOerr(BIO_F_BIO_LOOKUP, ERR_R_SYS_LIB); + BIOerr(BIO_F_BIO_LOOKUP_EX, ERR_R_SYS_LIB); ERR_add_error_data(1, gai_strerror(gai_ret)); break; } @@ -732,7 +743,7 @@ int BIO_lookup(const char *host, const char *service, #endif if (!RUN_ONCE(&bio_lookup_init, do_bio_lookup_init)) { - BIOerr(BIO_F_BIO_LOOKUP, ERR_R_MALLOC_FAILURE); + BIOerr(BIO_F_BIO_LOOKUP_EX, ERR_R_MALLOC_FAILURE); ret = 0; goto err; } @@ -824,7 +835,7 @@ int BIO_lookup(const char *host, const char *service, goto err; } } else { - BIOerr(BIO_F_BIO_LOOKUP, BIO_R_MALFORMED_HOST_OR_SERVICE); + BIOerr(BIO_F_BIO_LOOKUP_EX, BIO_R_MALFORMED_HOST_OR_SERVICE); goto err; } } @@ -866,7 +877,7 @@ int BIO_lookup(const char *host, const char *service, addrinfo_malloc_err: BIO_ADDRINFO_free(*res); *res = NULL; - BIOerr(BIO_F_BIO_LOOKUP, ERR_R_MALLOC_FAILURE); + BIOerr(BIO_F_BIO_LOOKUP_EX, ERR_R_MALLOC_FAILURE); ret = 0; goto err; } diff --git a/crypto/bio/bio_err.c b/crypto/bio/bio_err.c index b8cb1eb..9442d80 100644 --- a/crypto/bio/bio_err.c +++ b/crypto/bio/bio_err.c @@ -1,6 +1,6 @@ /* * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -33,8 +33,10 @@ static ERR_STRING_DATA BIO_str_functs[] = { {ERR_FUNC(BIO_F_BIO_GET_PORT), "BIO_get_port"}, {ERR_FUNC(BIO_F_BIO_LISTEN), "BIO_listen"}, {ERR_FUNC(BIO_F_BIO_LOOKUP), "BIO_lookup"}, + {ERR_FUNC(BIO_F_BIO_LOOKUP_EX), "BIO_lookup_ex"}, {ERR_FUNC(BIO_F_BIO_MAKE_PAIR), "bio_make_pair"}, {ERR_FUNC(BIO_F_BIO_NEW), "BIO_new"}, + {ERR_FUNC(BIO_F_BIO_NEW_DGRAM_SCTP), "BIO_new_dgram_sctp"}, {ERR_FUNC(BIO_F_BIO_NEW_FILE), "BIO_new_file"}, {ERR_FUNC(BIO_F_BIO_NEW_MEM_BUF), "BIO_new_mem_buf"}, {ERR_FUNC(BIO_F_BIO_NREAD), "BIO_nread"}, diff --git a/crypto/bio/bss_dgram.c b/crypto/bio/bss_dgram.c index d43e8dc..7ef4281 100644 --- a/crypto/bio/bss_dgram.c +++ b/crypto/bio/bss_dgram.c @@ -135,7 +135,6 @@ typedef struct bio_dgram_sctp_data_st { int ccs_sent; int save_shutdown; int peer_auth_tested; - bio_dgram_sctp_save_message saved_message; } bio_dgram_sctp_data; # endif @@ -842,6 +841,8 @@ BIO *BIO_new_dgram_sctp(int fd, int close_flag) sizeof(struct sctp_authchunk)); if (ret < 0) { BIO_vfree(bio); + BIOerr(BIO_F_BIO_NEW_DGRAM_SCTP, ERR_R_SYS_LIB); + ERR_add_error_data(1, "Ensure SCTP AUTH chunks are enabled in kernel"); return (NULL); } auth.sauth_chunk = OPENSSL_SCTP_FORWARD_CUM_TSN_CHUNK_TYPE; @@ -850,13 +851,16 @@ BIO *BIO_new_dgram_sctp(int fd, int close_flag) sizeof(struct sctp_authchunk)); if (ret < 0) { BIO_vfree(bio); + BIOerr(BIO_F_BIO_NEW_DGRAM_SCTP, ERR_R_SYS_LIB); + ERR_add_error_data(1, "Ensure SCTP AUTH chunks are enabled in kernel"); return (NULL); } /* * Test if activation was successful. When using accept(), SCTP-AUTH has * to be activated for the listening socket already, otherwise the - * connected socket won't use it. + * connected socket won't use it. Similarly with connect(): the socket + * prior to connection must be activated for SCTP-AUTH */ sockopt_len = (socklen_t) (sizeof(sctp_assoc_t) + 256 * sizeof(uint8_t)); authchunks = OPENSSL_zalloc(sockopt_len); @@ -883,8 +887,14 @@ BIO *BIO_new_dgram_sctp(int fd, int close_flag) OPENSSL_free(authchunks); - OPENSSL_assert(auth_data); - OPENSSL_assert(auth_forward); + if (!auth_data || !auth_forward) { + BIO_vfree(bio); + BIOerr(BIO_F_BIO_NEW_DGRAM_SCTP, ERR_R_SYS_LIB); + ERR_add_error_data(1, + "Ensure SCTP AUTH chunks are enabled on the " + "underlying socket"); + return NULL; + } # ifdef SCTP_AUTHENTICATION_EVENT # ifdef SCTP_EVENT @@ -967,10 +977,8 @@ static int dgram_sctp_free(BIO *a) return 0; data = (bio_dgram_sctp_data *) a->ptr; - if (data != NULL) { - OPENSSL_free(data->saved_message.data); + if (data != NULL) OPENSSL_free(data); - } return (1); } @@ -1072,22 +1080,6 @@ static int dgram_sctp_read(BIO *b, char *out, int outl) struct sctp_event_subscribe event; socklen_t eventsize; # endif - /* - * If a message has been delayed until the socket is dry, - * it can be sent now. - */ - if (data->saved_message.length > 0) { - i = dgram_sctp_write(data->saved_message.bio, - data->saved_message.data, - data->saved_message.length); - if (i < 0) { - ret = i; - break; - } - OPENSSL_free(data->saved_message.data); - data->saved_message.data = NULL; - data->saved_message.length = 0; - } /* disable sender dry event */ # ifdef SCTP_EVENT @@ -1270,27 +1262,15 @@ static int dgram_sctp_write(BIO *b, const char *in, int inl) sinfo = &handshake_sinfo; } - /* - * If we have to send a shutdown alert message and the socket is not dry - * yet, we have to save it and send it as soon as the socket gets dry. - */ + /* We can only send a shutdown alert if the socket is dry */ if (data->save_shutdown) { ret = BIO_dgram_sctp_wait_for_dry(b); - if (ret < 0) { + if (ret < 0) return -1; - } if (ret == 0) { - char *tmp; - data->saved_message.bio = b; - if ((tmp = OPENSSL_malloc(inl)) == NULL) { - BIOerr(BIO_F_DGRAM_SCTP_WRITE, ERR_R_MALLOC_FAILURE); - return -1; - } - OPENSSL_free(data->saved_message.data); - data->saved_message.data = tmp; - memcpy(data->saved_message.data, in, inl); - data->saved_message.length = inl; - return inl; + BIO_clear_retry_flags(b); + BIO_set_retry_write(b); + return -1; } } diff --git a/doc/man3/BIO_ADDRINFO.pod b/doc/man3/BIO_ADDRINFO.pod index 7811da4..8ca6454 100644 --- a/doc/man3/BIO_ADDRINFO.pod +++ b/doc/man3/BIO_ADDRINFO.pod @@ -6,6 +6,7 @@ BIO_lookup_type, BIO_ADDRINFO, BIO_ADDRINFO_next, BIO_ADDRINFO_free, BIO_ADDRINFO_family, BIO_ADDRINFO_socktype, BIO_ADDRINFO_protocol, BIO_ADDRINFO_address, +BIO_lookup_ex, BIO_lookup - BIO_ADDRINFO type and routines @@ -19,6 +20,9 @@ BIO_lookup enum BIO_lookup_type { BIO_LOOKUP_CLIENT, BIO_LOOKUP_SERVER }; + + int BIO_lookup_ex(const char *host, const char *service, int lookup_type, + int family, int socktype, int protocol, BIO_ADDRINFO **res); int BIO_lookup(const char *node, const char *service, enum BIO_lookup_type lookup_type, int family, int socktype, BIO_ADDRINFO **res); @@ -38,18 +42,24 @@ types provided on your platform. B normally forms a chain of several that can be picked at one by one. -BIO_lookup() looks up a specified B and B, and +BIO_lookup_ex() looks up a specified B and B, and uses B to determine what the default address should -be if B is B. B, B are used to -determine what protocol family and protocol should be used for +be if B is B. B, B and B are used to +determine what protocol family, socket type and protocol should be used for the lookup. B can be any of AF_INET, AF_INET6, AF_UNIX and -AF_UNSPEC, and B can be SOCK_STREAM or SOCK_DGRAM. -B points at a pointer to hold the start of a B +AF_UNSPEC. B can be SOCK_STREAM, SOCK_DGRAM or 0. Specifying 0 +indicates that any type can be used. B specifies a protocol such as +IPPROTO_TCP, IPPROTO_UDP or IPPORTO_SCTP. If set to 0 than any protocol can be +used. B points at a pointer to hold the start of a B chain. -For the family B, BIO_lookup() will ignore the B + +For the family B, BIO_lookup_ex() will ignore the B parameter and expects the B parameter to hold the path to the socket file. +BIO_lookup() does the same as BIO_lookup_ex() but does not provide the ability +to select based on the protocol (any protocol may be returned). + BIO_ADDRINFO_family() returns the family of the given B. The result will be one of the constants AF_INET, AF_INET6 and AF_UNIX. @@ -73,15 +83,28 @@ with the given one. =head1 RETURN VALUES -BIO_lookup() returns 1 on success and 0 when an error occurred, and -will leave an error indication on the OpenSSL error stack in that case. +BIO_lookup_ex() and BIO_lookup() return 1 on success and 0 when an error +occurred, and will leave an error indication on the OpenSSL error stack in that +case. All other functions described here return 0 or B when the information they should return isn't available. +=head1 NOTES + +The BIO_lookup_ex() implementation uses the platform provided getaddrinfo() +function. On Linux it is known that specifying 0 for the protocol will not +return any SCTP based addresses when calling getaddrinfo(). Therefore if an SCTP +address is required then the B parameter to BIO_lookup_ex() should be +explicitly set to IPPROTO_SCTP. The same may be true on other platforms. + +=head1 HISTORY + +The BIO_lookup_ex() function was added in OpenSSL 1.1.1. + =head1 COPYRIGHT -Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/include/openssl/bio.h b/include/openssl/bio.h index 6585ec0..b1276a5 100644 --- a/include/openssl/bio.h +++ b/include/openssl/bio.h @@ -667,6 +667,9 @@ enum BIO_lookup_type { int BIO_lookup(const char *host, const char *service, enum BIO_lookup_type lookup_type, int family, int socktype, BIO_ADDRINFO **res); +int BIO_lookup_ex(const char *host, const char *service, + int lookup_type, int family, int socktype, int protocol, + BIO_ADDRINFO **res); int BIO_sock_error(int sock); int BIO_socket_ioctl(int fd, long type, void *arg); int BIO_socket_nbio(int fd, int mode); @@ -805,8 +808,10 @@ int ERR_load_BIO_strings(void); # define BIO_F_BIO_GET_PORT 107 # define BIO_F_BIO_LISTEN 139 # define BIO_F_BIO_LOOKUP 135 +# define BIO_F_BIO_LOOKUP_EX 143 # define BIO_F_BIO_MAKE_PAIR 121 # define BIO_F_BIO_NEW 108 +# define BIO_F_BIO_NEW_DGRAM_SCTP 145 # define BIO_F_BIO_NEW_FILE 109 # define BIO_F_BIO_NEW_MEM_BUF 126 # define BIO_F_BIO_NREAD 123 diff --git a/include/openssl/ssl.h b/include/openssl/ssl.h index 6e3b9c5..c14859f 100644 --- a/include/openssl/ssl.h +++ b/include/openssl/ssl.h @@ -2607,6 +2607,7 @@ int ERR_load_SSL_strings(void); # define SSL_R_ENCRYPTED_LENGTH_TOO_LONG 150 # define SSL_R_ERROR_IN_RECEIVED_CIPHER_LIST 151 # define SSL_R_ERROR_SETTING_TLSA_BASE_DOMAIN 204 +# define SSL_R_EXCEEDS_MAX_FRAGMENT_SIZE 194 # define SSL_R_EXCESSIVE_MESSAGE_SIZE 152 # define SSL_R_EXTRA_DATA_IN_MESSAGE 153 # define SSL_R_EXT_LENGTH_MISMATCH 163 diff --git a/ssl/d1_msg.c b/ssl/d1_msg.c index a8253b9..aaee3ca 100644 --- a/ssl/d1_msg.c +++ b/ssl/d1_msg.c @@ -15,18 +15,7 @@ int dtls1_write_app_data_bytes(SSL *s, int type, const void *buf_, size_t len, { int i; -#ifndef OPENSSL_NO_SCTP - /* - * Check if we have to continue an interrupted handshake for reading - * belated app data with SCTP. - */ - if ((SSL_in_init(s) && !ossl_statem_get_in_handshake(s)) || - (BIO_dgram_is_sctp(SSL_get_wbio(s)) && - ossl_statem_in_sctp_read_sock(s))) -#else - if (SSL_in_init(s) && !ossl_statem_get_in_handshake(s)) -#endif - { + if (SSL_in_init(s) && !ossl_statem_get_in_handshake(s)) { i = s->handshake_func(s); if (i < 0) return (i); diff --git a/ssl/record/rec_layer_d1.c b/ssl/record/rec_layer_d1.c index cd6343a..243eff7 100644 --- a/ssl/record/rec_layer_d1.c +++ b/ssl/record/rec_layer_d1.c @@ -367,18 +367,7 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, * type == SSL3_RT_HANDSHAKE. */ -#ifndef OPENSSL_NO_SCTP - /* - * Continue handshake if it had to be interrupted to read app data with - * SCTP. - */ - if ((!ossl_statem_get_in_handshake(s) && SSL_in_init(s)) || - (BIO_dgram_is_sctp(SSL_get_rbio(s)) - && ossl_statem_in_sctp_read_sock(s) - && s->s3->in_read_app_data != 2)) -#else if (!ossl_statem_get_in_handshake(s) && SSL_in_init(s)) -#endif { /* type == SSL3_RT_APPLICATION_DATA */ i = s->handshake_func(s); @@ -521,18 +510,6 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, } #ifndef OPENSSL_NO_SCTP /* - * We were about to renegotiate but had to read belated application - * data first, so retry. - */ - if (BIO_dgram_is_sctp(SSL_get_rbio(s)) && - SSL3_RECORD_get_type(rr) == SSL3_RT_APPLICATION_DATA && - ossl_statem_in_sctp_read_sock(s)) { - s->rwstate = SSL_READING; - BIO_clear_retry_flags(SSL_get_rbio(s)); - BIO_set_retry_read(SSL_get_rbio(s)); - } - - /* * We might had to delay a close_notify alert because of reordered * app data. If there was an alert and there is no message to read * anymore, finally set shutdown. @@ -905,6 +882,11 @@ int do_dtls1_write(SSL *s, int type, const unsigned char *buf, if (len == 0 && !create_empty_fragment) return 0; + if (len > s->max_send_fragment) { + SSLerr(SSL_F_DO_DTLS1_WRITE, SSL_R_EXCEEDS_MAX_FRAGMENT_SIZE); + return 0; + } + sess = s->session; if ((sess == NULL) || diff --git a/ssl/ssl_err.c b/ssl/ssl_err.c index c7e407f..296ce0d 100644 --- a/ssl/ssl_err.c +++ b/ssl/ssl_err.c @@ -590,6 +590,8 @@ static ERR_STRING_DATA SSL_str_reasons[] = { "error in received cipher list"}, {ERR_REASON(SSL_R_ERROR_SETTING_TLSA_BASE_DOMAIN), "error setting tlsa base domain"}, + {ERR_REASON(SSL_R_EXCEEDS_MAX_FRAGMENT_SIZE), + "exceeds max fragment size"}, {ERR_REASON(SSL_R_EXCESSIVE_MESSAGE_SIZE), "excessive message size"}, {ERR_REASON(SSL_R_EXTRA_DATA_IN_MESSAGE), "extra data in message"}, {ERR_REASON(SSL_R_EXT_LENGTH_MISMATCH), "ext length mismatch"}, diff --git a/ssl/statem/statem.c b/ssl/statem/statem.c index e63d0ad..52beac7 100644 --- a/ssl/statem/statem.c +++ b/ssl/statem/statem.c @@ -885,26 +885,3 @@ int ossl_statem_app_data_allowed(SSL *s) return 0; } - -#ifndef OPENSSL_NO_SCTP -/* - * Set flag used by SCTP to determine whether we are in the read sock state - */ -void ossl_statem_set_sctp_read_sock(SSL *s, int read_sock) -{ - s->statem.in_sctp_read_sock = read_sock; -} - -/* - * Called by the record layer to determine whether we are in the read sock - * state or not. - * - * Return values are: - * 1: Yes (we are in the read sock state) - * 0: No (we are not in the read sock state) - */ -int ossl_statem_in_sctp_read_sock(SSL *s) -{ - return s->statem.in_sctp_read_sock; -} -#endif diff --git a/ssl/statem/statem.h b/ssl/statem/statem.h index 7012115..98c8291 100644 --- a/ssl/statem/statem.h +++ b/ssl/statem/statem.h @@ -100,9 +100,6 @@ struct ossl_statem_st { /* Should we skip the CertificateVerify message? */ unsigned int no_cert_verify; int use_timer; -#ifndef OPENSSL_NO_SCTP - int in_sctp_read_sock; -#endif }; typedef struct ossl_statem_st OSSL_STATEM; @@ -126,7 +123,3 @@ __owur int ossl_statem_skip_early_data(SSL *s); void ossl_statem_check_finish_init(SSL *s, int send); void ossl_statem_set_hello_verify_done(SSL *s); __owur int ossl_statem_app_data_allowed(SSL *s); -#ifndef OPENSSL_NO_SCTP -void ossl_statem_set_sctp_read_sock(SSL *s, int read_sock); -__owur int ossl_statem_in_sctp_read_sock(SSL *s); -#endif diff --git a/ssl/statem/statem_clnt.c b/ssl/statem/statem_clnt.c index 0452729..7bcd3ac 100644 --- a/ssl/statem/statem_clnt.c +++ b/ssl/statem/statem_clnt.c @@ -1022,21 +1022,6 @@ WORK_STATE ossl_statem_client_post_process_message(SSL *s, WORK_STATE wst) case TLS_ST_CR_CERT_REQ: return tls_prepare_client_certificate(s, wst); - -#ifndef OPENSSL_NO_SCTP - case TLS_ST_CR_SRVR_DONE: - /* We only get here if we are using SCTP and we are renegotiating */ - if (BIO_dgram_sctp_msg_waiting(SSL_get_rbio(s))) { - s->s3->in_read_app_data = 2; - s->rwstate = SSL_READING; - BIO_clear_retry_flags(SSL_get_rbio(s)); - BIO_set_retry_read(SSL_get_rbio(s)); - ossl_statem_set_sctp_read_sock(s, 1); - return WORK_MORE_A; - } - ossl_statem_set_sctp_read_sock(s, 0); - return WORK_FINISHED_STOP; -#endif } } @@ -2691,14 +2676,7 @@ MSG_PROCESS_RETURN tls_process_server_done(SSL *s, PACKET *pkt) if (!tls_process_initial_server_flight(s, &al)) goto err; -#ifndef OPENSSL_NO_SCTP - /* Only applies to renegotiation */ - if (SSL_IS_DTLS(s) && BIO_dgram_is_sctp(SSL_get_wbio(s)) - && s->renegotiate != 0) - return MSG_PROCESS_CONTINUE_PROCESSING; - else -#endif - return MSG_PROCESS_FINISHED_READING; + return MSG_PROCESS_FINISHED_READING; err: ssl3_send_alert(s, SSL3_AL_FATAL, al); diff --git a/ssl/statem/statem_dtls.c b/ssl/statem/statem_dtls.c index 34964db..b2ba357 100644 --- a/ssl/statem/statem_dtls.c +++ b/ssl/statem/statem_dtls.c @@ -214,6 +214,9 @@ int dtls1_do_write(SSL *s, int type) else len = s->init_num; + if (len > s->max_send_fragment) + len = s->max_send_fragment; + /* * XDTLS: this function is too long. split out the CCS part */ diff --git a/ssl/statem/statem_lib.c b/ssl/statem/statem_lib.c index d5e87f7..0180445 100644 --- a/ssl/statem/statem_lib.c +++ b/ssl/statem/statem_lib.c @@ -418,10 +418,7 @@ MSG_PROCESS_RETURN tls_process_cert_verify(SSL *s, PACKET *pkt) goto f_err; } - if (SSL_IS_TLS13(s)) - ret = MSG_PROCESS_CONTINUE_READING; - else - ret = MSG_PROCESS_CONTINUE_PROCESSING; + ret = MSG_PROCESS_CONTINUE_READING; if (0) { f_err: ssl3_send_alert(s, SSL3_AL_FATAL, al); diff --git a/ssl/statem/statem_srvr.c b/ssl/statem/statem_srvr.c index d931c7f..919469f 100644 --- a/ssl/statem/statem_srvr.c +++ b/ssl/statem/statem_srvr.c @@ -1106,24 +1106,6 @@ WORK_STATE ossl_statem_server_post_process_message(SSL *s, WORK_STATE wst) case TLS_ST_SR_KEY_EXCH: return tls_post_process_client_key_exchange(s, wst); - - case TLS_ST_SR_CERT_VRFY: -#ifndef OPENSSL_NO_SCTP - if ( /* Is this SCTP? */ - BIO_dgram_is_sctp(SSL_get_wbio(s)) - /* Are we renegotiating? */ - && s->renegotiate && BIO_dgram_sctp_msg_waiting(SSL_get_rbio(s))) { - s->s3->in_read_app_data = 2; - s->rwstate = SSL_READING; - BIO_clear_retry_flags(SSL_get_rbio(s)); - BIO_set_retry_read(SSL_get_rbio(s)); - ossl_statem_set_sctp_read_sock(s, 1); - return WORK_MORE_A; - } else { - ossl_statem_set_sctp_read_sock(s, 0); - } -#endif - return WORK_FINISHED_CONTINUE; } return WORK_FINISHED_CONTINUE; } @@ -3144,25 +3126,6 @@ WORK_STATE tls_post_process_client_key_exchange(SSL *s, WORK_STATE wst) BIO_ctrl(SSL_get_wbio(s), BIO_CTRL_DGRAM_SCTP_ADD_AUTH_KEY, sizeof(sctpauthkey), sctpauthkey); } - wst = WORK_MORE_B; - } - - if ((wst == WORK_MORE_B) - /* Is this SCTP? */ - && BIO_dgram_is_sctp(SSL_get_wbio(s)) - /* Are we renegotiating? */ - && s->renegotiate - /* Are we going to skip the CertificateVerify? */ - && (s->session->peer == NULL || s->statem.no_cert_verify) - && BIO_dgram_sctp_msg_waiting(SSL_get_rbio(s))) { - s->s3->in_read_app_data = 2; - s->rwstate = SSL_READING; - BIO_clear_retry_flags(SSL_get_rbio(s)); - BIO_set_retry_read(SSL_get_rbio(s)); - ossl_statem_set_sctp_read_sock(s, 1); - return WORK_MORE_B; - } else { - ossl_statem_set_sctp_read_sock(s, 0); } #endif diff --git a/test/handshake_helper.c b/test/handshake_helper.c index 94fa5c5..8ad35ce 100644 --- a/test/handshake_helper.c +++ b/test/handshake_helper.c @@ -16,6 +16,11 @@ #include #endif +#ifndef OPENSSL_NO_SOCK +# define USE_SOCKETS +# include "e_os.h" +#endif + #include "handshake_helper.h" #include "testutil.h" @@ -631,7 +636,8 @@ static void configure_handshake_ssl(SSL *server, SSL *client, typedef enum { PEER_SUCCESS, PEER_RETRY, - PEER_ERROR + PEER_ERROR, + PEER_WAITING } peer_status_t; /* An SSL object and associated read-write buffers. */ @@ -898,8 +904,8 @@ static void do_shutdown_step(PEER *peer) peer->status = PEER_SUCCESS; } else if (ret < 0) { /* On 0, we retry. */ int error = SSL_get_error(peer->ssl, ret); - /* Memory bios should never block with SSL_ERROR_WANT_WRITE. */ - if (error != SSL_ERROR_WANT_READ) + + if (error != SSL_ERROR_WANT_READ && error != SSL_ERROR_WANT_WRITE) peer->status = PEER_ERROR; } } @@ -1000,11 +1006,16 @@ static handshake_status_t handshake_status(peer_status_t last_status, int client_spoke_last) { switch (last_status) { + case PEER_WAITING: + /* Shouldn't ever happen */ + return INTERNAL_ERROR; + case PEER_SUCCESS: switch (previous_status) { case PEER_SUCCESS: /* Both succeeded. */ return HANDSHAKE_SUCCESS; + case PEER_WAITING: case PEER_RETRY: /* Let the first peer finish. */ return HANDSHAKE_RETRY; @@ -1017,18 +1028,13 @@ static handshake_status_t handshake_status(peer_status_t last_status, } case PEER_RETRY: - if (previous_status == PEER_RETRY) { - /* Neither peer is done. */ - return HANDSHAKE_RETRY; - } else { - /* - * Deadlock: second peer is waiting for more input while first - * peer thinks they're done (no more input is coming). - */ - return INTERNAL_ERROR; - } + return HANDSHAKE_RETRY; + case PEER_ERROR: switch (previous_status) { + case PEER_WAITING: + /* The client failed immediately before sending the ClientHello */ + return client_spoke_last ? CLIENT_ERROR : INTERNAL_ERROR; case PEER_SUCCESS: /* * First peer succeeded but second peer errored. @@ -1091,6 +1097,107 @@ static int peer_pkey_type(SSL *s) return NID_undef; } +#if !defined(OPENSSL_NO_SCTP) && !defined(OPENSSL_NO_SOCK) +static int set_sock_as_sctp(int sock) +{ + /* + * For SCTP we have to set various options on the socket prior to + * connecting. This is done automatically by BIO_new_dgram_sctp(). + * We don't actually need the created BIO though so we free it again + * immediately. + */ + BIO *tmpbio = BIO_new_dgram_sctp(sock, BIO_NOCLOSE); + + if (tmpbio == NULL) + return 0; + BIO_free(tmpbio); + + return 1; +} + +static int create_sctp_socks(int *ssock, int *csock) +{ + BIO_ADDRINFO *res = NULL; + const BIO_ADDRINFO *ai = NULL; + int lsock = INVALID_SOCKET, asock = INVALID_SOCKET; + int consock = INVALID_SOCKET; + int ret = 0; + int family = 0; + + if (!BIO_sock_init()) + return 0; + + /* + * Port is 4463. It could be anything. It will fail if it's already being + * used for some other SCTP service. It seems unlikely though so we don't + * worry about it here. + */ + if (!BIO_lookup_ex(NULL, "4463", BIO_LOOKUP_SERVER, family, SOCK_STREAM, + IPPROTO_SCTP, &res)) + return 0; + + for (ai = res; ai != NULL; ai = BIO_ADDRINFO_next(ai)) { + family = BIO_ADDRINFO_family(ai); + lsock = BIO_socket(family, SOCK_STREAM, IPPROTO_SCTP, 0); + if (lsock == INVALID_SOCKET) { + /* Maybe the kernel doesn't support the socket family, even if + * BIO_lookup() added it in the returned result... + */ + continue; + } + + if (!set_sock_as_sctp(lsock) + || !BIO_listen(lsock, BIO_ADDRINFO_address(ai), + BIO_SOCK_REUSEADDR)) { + BIO_closesocket(lsock); + lsock = INVALID_SOCKET; + continue; + } + + /* Success, don't try any more addresses */ + break; + } + + if (lsock == INVALID_SOCKET) + goto err; + + BIO_ADDRINFO_free(res); + res = NULL; + + if (!BIO_lookup_ex(NULL, "4463", BIO_LOOKUP_CLIENT, family, SOCK_STREAM, + IPPROTO_SCTP, &res)) + goto err; + + consock = BIO_socket(family, SOCK_STREAM, IPPROTO_SCTP, 0); + if (consock == INVALID_SOCKET) + goto err; + + if (!set_sock_as_sctp(consock) + || !BIO_connect(consock, BIO_ADDRINFO_address(res), 0) + || !BIO_socket_nbio(consock, 1)) + goto err; + + asock = BIO_accept_ex(lsock, NULL, BIO_SOCK_NONBLOCK); + if (asock == INVALID_SOCKET) + goto err; + + *csock = consock; + *ssock = asock; + consock = asock = INVALID_SOCKET; + ret = 1; + + err: + BIO_ADDRINFO_free(res); + if (consock != INVALID_SOCKET) + BIO_closesocket(consock); + if (lsock != INVALID_SOCKET) + BIO_closesocket(lsock); + if (asock != INVALID_SOCKET) + BIO_closesocket(asock); + return ret; +} +#endif + /* * Note that |extra| points to the correct client/server configuration * within |test_ctx|. When configuring the handshake, general mode settings @@ -1110,7 +1217,7 @@ static HANDSHAKE_RESULT *do_handshake_internal( SSL_SESSION *session_in, SSL_SESSION **session_out) { PEER server, client; - BIO *client_to_server, *server_to_client; + BIO *client_to_server = NULL, *server_to_client = NULL; HANDSHAKE_EX_DATA server_ex_data, client_ex_data; CTX_DATA client_ctx_data, server_ctx_data, server2_ctx_data; HANDSHAKE_RESULT *ret = HANDSHAKE_RESULT_new(); @@ -1125,6 +1232,7 @@ static HANDSHAKE_RESULT *do_handshake_internal( unsigned int proto_len = 0; EVP_PKEY *tmp_key; const STACK_OF(X509_NAME) *names; + time_t start; memset(&server_ctx_data, 0, sizeof(server_ctx_data)); memset(&server2_ctx_data, 0, sizeof(server2_ctx_data)); @@ -1154,8 +1262,19 @@ static HANDSHAKE_RESULT *do_handshake_internal( ret->result = SSL_TEST_INTERNAL_ERROR; - client_to_server = BIO_new(BIO_s_mem()); - server_to_client = BIO_new(BIO_s_mem()); + if (test_ctx->use_sctp) { +#if !defined(OPENSSL_NO_SCTP) && !defined(OPENSSL_NO_SOCK) + int csock, ssock; + + if (create_sctp_socks(&ssock, &csock)) { + client_to_server = BIO_new_dgram_sctp(csock, BIO_CLOSE); + server_to_client = BIO_new_dgram_sctp(ssock, BIO_CLOSE); + } +#endif + } else { + client_to_server = BIO_new(BIO_s_mem()); + server_to_client = BIO_new(BIO_s_mem()); + } TEST_check(client_to_server != NULL); TEST_check(server_to_client != NULL); @@ -1168,10 +1287,15 @@ static HANDSHAKE_RESULT *do_handshake_internal( SSL_set_accept_state(server.ssl); /* The bios are now owned by the SSL object. */ - SSL_set_bio(client.ssl, server_to_client, client_to_server); - TEST_check(BIO_up_ref(server_to_client) > 0); - TEST_check(BIO_up_ref(client_to_server) > 0); - SSL_set_bio(server.ssl, client_to_server, server_to_client); + if (test_ctx->use_sctp) { + SSL_set_bio(client.ssl, client_to_server, client_to_server); + SSL_set_bio(server.ssl, server_to_client, server_to_client); + } else { + SSL_set_bio(client.ssl, server_to_client, client_to_server); + TEST_check(BIO_up_ref(server_to_client) > 0); + TEST_check(BIO_up_ref(client_to_server) > 0); + SSL_set_bio(server.ssl, client_to_server, server_to_client); + } ex_data_idx = SSL_get_ex_new_index(0, "ex data", NULL, NULL, NULL); TEST_check(ex_data_idx >= 0); @@ -1182,7 +1306,10 @@ static HANDSHAKE_RESULT *do_handshake_internal( SSL_set_info_callback(server.ssl, &info_cb); SSL_set_info_callback(client.ssl, &info_cb); - client.status = server.status = PEER_RETRY; + client.status = PEER_RETRY; + server.status = PEER_WAITING; + + start = time(NULL); /* * Half-duplex handshake loop. @@ -1197,6 +1324,8 @@ static HANDSHAKE_RESULT *do_handshake_internal( do_connect_step(test_ctx, &client, phase); status = handshake_status(client.status, server.status, 1 /* client went last */); + if (server.status == PEER_WAITING) + server.status = PEER_RETRY; } else { do_connect_step(test_ctx, &server, phase); status = handshake_status(server.status, client.status, @@ -1231,18 +1360,36 @@ static HANDSHAKE_RESULT *do_handshake_internal( ret->result = SSL_TEST_INTERNAL_ERROR; goto err; case HANDSHAKE_RETRY: - if (client_turn_count++ >= 2000) { + if (test_ctx->use_sctp) { + if (time(NULL) - start > 3) { + /* + * We've waited for too long. Give up. + */ + ret->result = SSL_TEST_INTERNAL_ERROR; + goto err; + } /* - * At this point, there's been so many PEER_RETRY in a row - * that it's likely both sides are stuck waiting for a read. - * It's time to give up. + * With "real" sockets we only swap to processing the peer + * if they are expecting to retry. Otherwise we just retry the + * same endpoint again. */ - ret->result = SSL_TEST_INTERNAL_ERROR; - goto err; - } + if ((client_turn && server.status == PEER_RETRY) + || (!client_turn && client.status == PEER_RETRY)) + client_turn ^= 1; + } else { + if (client_turn_count++ >= 2000) { + /* + * At this point, there's been so many PEER_RETRY in a row + * that it's likely both sides are stuck waiting for a read. + * It's time to give up. + */ + ret->result = SSL_TEST_INTERNAL_ERROR; + goto err; + } - /* Continue. */ - client_turn ^= 1; + /* Continue. */ + client_turn ^= 1; + } break; } } diff --git a/test/recipes/80-test_ssl_new.t b/test/recipes/80-test_ssl_new.t index 5005794..fbcb46a 100644 --- a/test/recipes/80-test_ssl_new.t +++ b/test/recipes/80-test_ssl_new.t @@ -55,13 +55,15 @@ my $no_ocsp = disabled("ocsp"); # expectations dynamically based on the OpenSSL compile-time config. my %conf_dependent_tests = ( "02-protocol-version.conf" => !$is_default_tls, - "04-client_auth.conf" => !$is_default_tls || !$is_default_dtls, + "04-client_auth.conf" => !$is_default_tls || !$is_default_dtls + || !disabled("sctp"), "05-sni.conf" => disabled("tls1_1"), - "07-dtls-protocol-version.conf" => !$is_default_dtls, + "07-dtls-protocol-version.conf" => !$is_default_dtls || !disabled("sctp"), "10-resumption.conf" => !$is_default_tls, - "11-dtls_resumption.conf" => !$is_default_dtls, + "11-dtls_resumption.conf" => !$is_default_dtls || !disabled("sctp"), + "16-dtls-certstatus.conf" => !$is_default_dtls || !disabled("sctp"), "17-renegotiate.conf" => disabled("tls1_2"), - "18-dtls-renegotiate.conf" => disabled("dtls1_2"), + "18-dtls-renegotiate.conf" => disabled("dtls1_2") || !disabled("sctp"), "19-mac-then-encrypt.conf" => !$is_default_tls, "20-cert-select.conf" => !$is_default_tls || $no_dh || $no_dsa, "22-compression.conf" => !$is_default_tls, diff --git a/test/ssl-tests/02-protocol-version.conf b/test/ssl-tests/02-protocol-version.conf index d5e0779..f18d6a3 100644 --- a/test/ssl-tests/02-protocol-version.conf +++ b/test/ssl-tests/02-protocol-version.conf @@ -700,7 +700,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-0] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -725,7 +725,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-1] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -750,7 +750,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-2] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -775,7 +775,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-3] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -800,7 +800,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-4] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -824,7 +824,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-5] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -850,7 +850,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-6] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -876,7 +876,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-7] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -902,7 +902,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-8] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -928,7 +928,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-9] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -954,7 +954,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-10] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -979,7 +979,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-11] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -1005,7 +1005,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-12] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -1031,7 +1031,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-13] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -1057,7 +1057,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-14] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -1083,7 +1083,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-15] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -1108,7 +1108,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-16] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -1134,7 +1134,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-17] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -1160,7 +1160,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-18] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -1186,7 +1186,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-19] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -1211,7 +1211,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-20] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -1237,7 +1237,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-21] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -1263,7 +1263,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-22] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -1288,7 +1288,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-23] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -1314,7 +1314,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-24] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -1339,7 +1339,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-25] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -4759,7 +4759,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-156] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -4785,7 +4785,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-157] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -4811,7 +4811,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-158] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -4837,7 +4837,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-159] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -4863,7 +4863,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-160] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -4888,7 +4888,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-161] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -4915,7 +4915,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-162] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -4942,7 +4942,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-163] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -4969,7 +4969,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-164] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -4996,7 +4996,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-165] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -5023,7 +5023,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-166] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -5049,7 +5049,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-167] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -5076,7 +5076,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-168] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -5103,7 +5103,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-169] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -5130,7 +5130,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-170] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -5157,7 +5157,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-171] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -5183,7 +5183,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-172] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -5210,7 +5210,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-173] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -5237,7 +5237,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-174] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -5264,7 +5264,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-175] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -5290,7 +5290,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-176] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -5317,7 +5317,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-177] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -5344,7 +5344,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-178] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -5370,7 +5370,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-179] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -5397,7 +5397,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-180] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -5423,7 +5423,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-181] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -17393,7 +17393,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-624] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -17419,7 +17419,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-625] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -17445,7 +17445,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-626] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -17471,7 +17471,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-627] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -17497,7 +17497,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-628] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -17522,7 +17522,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-629] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -17549,7 +17549,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-630] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -17576,7 +17576,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-631] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -17603,7 +17603,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-632] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -17630,7 +17630,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-633] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -17657,7 +17657,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-634] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -17683,7 +17683,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-635] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -17710,7 +17710,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-636] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -17737,7 +17737,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-637] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -17764,7 +17764,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-638] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -17791,7 +17791,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-639] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -17817,7 +17817,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-640] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -17844,7 +17844,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-641] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -17871,7 +17871,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-642] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -17898,7 +17898,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-643] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -17924,7 +17924,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-644] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -17951,7 +17951,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-645] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -17978,7 +17978,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-646] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18004,7 +18004,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-647] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18031,7 +18031,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-648] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18057,7 +18057,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-649] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18082,7 +18082,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-650] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18107,7 +18107,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-651] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18132,7 +18132,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-652] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18157,7 +18157,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-653] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18182,7 +18182,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-654] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18206,7 +18206,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-655] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18232,7 +18232,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-656] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18258,7 +18258,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-657] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18284,7 +18284,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-658] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18310,7 +18310,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-659] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18336,7 +18336,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-660] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18361,7 +18361,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-661] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18387,7 +18387,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-662] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18413,7 +18413,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-663] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18439,7 +18439,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-664] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18465,7 +18465,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-665] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18490,7 +18490,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-666] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18516,7 +18516,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-667] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18542,7 +18542,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-668] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18568,7 +18568,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-669] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18593,7 +18593,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-670] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18619,7 +18619,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-671] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18645,7 +18645,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-672] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18670,7 +18670,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-673] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18696,7 +18696,7 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-674] -ExpectedResult = InternalError +ExpectedResult = ClientFail # =========================================================== @@ -18721,6 +18721,6 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-675] -ExpectedResult = InternalError +ExpectedResult = ClientFail diff --git a/test/ssl-tests/04-client_auth.conf.in b/test/ssl-tests/04-client_auth.conf.in index 3da76a3..a780e00 100644 --- a/test/ssl-tests/04-client_auth.conf.in +++ b/test/ssl-tests/04-client_auth.conf.in @@ -8,7 +8,7 @@ use strict; use warnings; use OpenSSL::Test; -use OpenSSL::Test::Utils qw(anydisabled); +use OpenSSL::Test::Utils qw(anydisabled disabled); setup("no_test_here"); # We test version-flexible negotiation (undef) and each protocol version. @@ -25,6 +25,7 @@ sub generate_tests() { my $protocol_name = $protocol || "flex"; my $caalert; my $method; + my $sctpenabled = 0; if (!$is_disabled[$_]) { if ($protocol_name eq "SSLv3") { $caalert = "BadCertificate"; @@ -33,6 +34,7 @@ sub generate_tests() { } if ($protocol_name =~ m/^DTLS/) { $method = "DTLS"; + $sctpenabled = 1 if !disabled("sctp"); } my $clihash; my $clisigtype; @@ -43,134 +45,148 @@ sub generate_tests() { $clisigtype = "RSA"; $clisigalgs = "SHA256+RSA"; } - # Sanity-check simple handshake. - push @tests, { - name => "server-auth-${protocol_name}", - server => { - "MinProtocol" => $protocol, - "MaxProtocol" => $protocol - }, - client => { - "MinProtocol" => $protocol, - "MaxProtocol" => $protocol - }, - test => { - "ExpectedResult" => "Success", - "Method" => $method, - }, - }; + for (my $sctp = 0; $sctp <= $sctpenabled; $sctp++) { + # Sanity-check simple handshake. + push @tests, { + name => "server-auth-${protocol_name}" + .($sctp ? "-sctp" : ""), + server => { + "MinProtocol" => $protocol, + "MaxProtocol" => $protocol + }, + client => { + "MinProtocol" => $protocol, + "MaxProtocol" => $protocol + }, + test => { + "ExpectedResult" => "Success", + "Method" => $method, + }, + }; + $tests[-1]{"test"}{"UseSCTP"} = "Yes" if $sctp; - # Handshake with client cert requested but not required or received. - push @tests, { - name => "client-auth-${protocol_name}-request", - server => { - "MinProtocol" => $protocol, - "MaxProtocol" => $protocol, - "VerifyMode" => "Request" - }, - client => { - "MinProtocol" => $protocol, - "MaxProtocol" => $protocol - }, - test => { - "ExpectedResult" => "Success", - "Method" => $method, - }, - }; + # Handshake with client cert requested but not required or received. + push @tests, { + name => "client-auth-${protocol_name}-request" + .($sctp ? "-sctp" : ""), + server => { + "MinProtocol" => $protocol, + "MaxProtocol" => $protocol, + "VerifyMode" => "Request" + }, + client => { + "MinProtocol" => $protocol, + "MaxProtocol" => $protocol + }, + test => { + "ExpectedResult" => "Success", + "Method" => $method, + }, + }; + $tests[-1]{"test"}{"UseSCTP"} = "Yes" if $sctp; - # Handshake with client cert required but not present. - push @tests, { - name => "client-auth-${protocol_name}-require-fail", - server => { - "MinProtocol" => $protocol, - "MaxProtocol" => $protocol, - "VerifyCAFile" => test_pem("root-cert.pem"), - "VerifyMode" => "Require", - }, - client => { - "MinProtocol" => $protocol, - "MaxProtocol" => $protocol - }, - test => { - "ExpectedResult" => "ServerFail", - "ExpectedServerAlert" => "HandshakeFailure", - "Method" => $method, - }, - }; + # Handshake with client cert required but not present. + push @tests, { + name => "client-auth-${protocol_name}-require-fail" + .($sctp ? "-sctp" : ""), + server => { + "MinProtocol" => $protocol, + "MaxProtocol" => $protocol, + "VerifyCAFile" => test_pem("root-cert.pem"), + "VerifyMode" => "Require", + }, + client => { + "MinProtocol" => $protocol, + "MaxProtocol" => $protocol + }, + test => { + "ExpectedResult" => "ServerFail", + "ExpectedServerAlert" => "HandshakeFailure", + "Method" => $method, + }, + }; + $tests[-1]{"test"}{"UseSCTP"} = "Yes" if $sctp; - # Successful handshake with client authentication. - push @tests, { - name => "client-auth-${protocol_name}-require", - server => { - "MinProtocol" => $protocol, - "MaxProtocol" => $protocol, - "ClientSignatureAlgorithms" => $clisigalgs, - "VerifyCAFile" => test_pem("root-cert.pem"), - "VerifyMode" => "Request", - }, - client => { - "MinProtocol" => $protocol, - "MaxProtocol" => $protocol, - "Certificate" => test_pem("ee-client-chain.pem"), - "PrivateKey" => test_pem("ee-key.pem"), - }, - test => { - "ExpectedResult" => "Success", - "ExpectedClientCertType" => "RSA", - "ExpectedClientSignType" => $clisigtype, - "ExpectedClientSignHash" => $clihash, - "ExpectedClientCANames" => "empty", - "Method" => $method, - }, - }; + # Successful handshake with client authentication. + push @tests, { + name => "client-auth-${protocol_name}-require" + .($sctp ? "-sctp" : ""), + server => { + "MinProtocol" => $protocol, + "MaxProtocol" => $protocol, + "ClientSignatureAlgorithms" => $clisigalgs, + "VerifyCAFile" => test_pem("root-cert.pem"), + "VerifyMode" => "Request", + }, + client => { + "MinProtocol" => $protocol, + "MaxProtocol" => $protocol, + "Certificate" => test_pem("ee-client-chain.pem"), + "PrivateKey" => test_pem("ee-key.pem"), + }, + test => { + "ExpectedResult" => "Success", + "ExpectedClientCertType" => "RSA", + "ExpectedClientSignType" => $clisigtype, + "ExpectedClientSignHash" => $clihash, + "ExpectedClientCANames" => "empty", + "Method" => $method, + }, + }; + $tests[-1]{"test"}{"UseSCTP"} = "Yes" if $sctp; - # Successful handshake with client authentication non-empty names - push @tests, { - name => "client-auth-${protocol_name}-require-non-empty-names", - server => { - "MinProtocol" => $protocol, - "MaxProtocol" => $protocol, - "ClientSignatureAlgorithms" => $clisigalgs, - "ClientCAFile" => test_pem("root-cert.pem"), - "VerifyCAFile" => test_pem("root-cert.pem"), - "VerifyMode" => "Request", - }, - client => { - "MinProtocol" => $protocol, - "MaxProtocol" => $protocol, - "Certificate" => test_pem("ee-client-chain.pem"), - "PrivateKey" => test_pem("ee-key.pem"), - }, - test => { - "ExpectedResult" => "Success", - "ExpectedClientCertType" => "RSA", - "ExpectedClientSignType" => $clisigtype, - "ExpectedClientSignHash" => $clihash, - "ExpectedClientCANames" => test_pem("root-cert.pem"), - "Method" => $method, - }, - }; + # Successful handshake with client authentication non-empty names + push @tests, { + name => "client-auth-${protocol_name}-require-non-empty-names" + .($sctp ? "-sctp" : ""), + server => { + "MinProtocol" => $protocol, + "MaxProtocol" => $protocol, + "ClientSignatureAlgorithms" => $clisigalgs, + "ClientCAFile" => test_pem("root-cert.pem"), + "VerifyCAFile" => test_pem("root-cert.pem"), + "VerifyMode" => "Request", + }, + client => { + "MinProtocol" => $protocol, + "MaxProtocol" => $protocol, + "Certificate" => test_pem("ee-client-chain.pem"), + "PrivateKey" => test_pem("ee-key.pem"), + }, + test => { + "ExpectedResult" => "Success", + "ExpectedClientCertType" => "RSA", + "ExpectedClientSignType" => $clisigtype, + "ExpectedClientSignHash" => $clihash, + "ExpectedClientCANames" => test_pem("root-cert.pem"), + "Method" => $method, + }, + }; + $tests[-1]{"test"}{"UseSCTP"} = "Yes" if $sctp; - # Handshake with client authentication but without the root certificate. - push @tests, { - name => "client-auth-${protocol_name}-noroot", - server => { - "MinProtocol" => $protocol, - "MaxProtocol" => $protocol, - "VerifyMode" => "Require", - }, - client => { - "MinProtocol" => $protocol, - "MaxProtocol" => $protocol, - "Certificate" => test_pem("ee-client-chain.pem"), - "PrivateKey" => test_pem("ee-key.pem"), - }, - test => { - "ExpectedResult" => "ServerFail", - "ExpectedServerAlert" => $caalert, - "Method" => $method, - }, - }; + # Handshake with client authentication but without the root certificate. + push @tests, { + name => "client-auth-${protocol_name}-noroot" + .($sctp ? "-sctp" : ""), + server => { + "MinProtocol" => $protocol, + "MaxProtocol" => $protocol, + "VerifyMode" => "Require", + }, + client => { + "MinProtocol" => $protocol, + "MaxProtocol" => $protocol, + "Certificate" => test_pem("ee-client-chain.pem"), + "PrivateKey" => test_pem("ee-key.pem"), + }, + test => { + "ExpectedResult" => "ServerFail", + "ExpectedServerAlert" => $caalert, + "Method" => $method, + }, + }; + $tests[-1]{"test"}{"UseSCTP"} = "Yes" if $sctp; + } } } } diff --git a/test/ssl-tests/16-dtls-certstatus.conf.in b/test/ssl-tests/16-dtls-certstatus.conf.in index 7280029..2d1766d 100644 --- a/test/ssl-tests/16-dtls-certstatus.conf.in +++ b/test/ssl-tests/16-dtls-certstatus.conf.in @@ -13,7 +13,7 @@ use strict; use warnings; package ssltests; - +use OpenSSL::Test::Utils; our @tests = ( { @@ -41,5 +41,38 @@ our @tests = ( "Method" => "DTLS", "ExpectedResult" => "ClientFail" } + } +); + +our @tests_sctp = ( + { + name => "certstatus-good", + server => { + extra => { + "CertStatus" => "GoodResponse", + }, + }, + client => {}, + test => { + "Method" => "DTLS", + "UseSCTP" => "Yes", + "ExpectedResult" => "Success" + } + }, + { + name => "certstatus-bad", + server => { + extra => { + "CertStatus" => "BadResponse", + }, + }, + client => {}, + test => { + "Method" => "DTLS", + "UseSCTP" => "Yes", + "ExpectedResult" => "ClientFail" + } }, ); + +push @tests, @tests_sctp unless disabled("sctp") || disabled("sock"); diff --git a/test/ssl-tests/18-dtls-renegotiate.conf b/test/ssl-tests/18-dtls-renegotiate.conf index 3d8ebd7..9204dd2 100644 --- a/test/ssl-tests/18-dtls-renegotiate.conf +++ b/test/ssl-tests/18-dtls-renegotiate.conf @@ -36,6 +36,7 @@ ExpectedResult = Success HandshakeMode = RenegotiateClient Method = DTLS ResumptionExpected = No +UseSCTP = No # =========================================================== @@ -62,6 +63,7 @@ ExpectedResult = Success HandshakeMode = RenegotiateClient Method = DTLS ResumptionExpected = Yes +UseSCTP = No # =========================================================== @@ -88,6 +90,7 @@ ExpectedResult = Success HandshakeMode = RenegotiateServer Method = DTLS ResumptionExpected = No +UseSCTP = No # =========================================================== @@ -118,6 +121,7 @@ ExpectedResult = Success HandshakeMode = RenegotiateServer Method = DTLS ResumptionExpected = No +UseSCTP = No # =========================================================== @@ -148,6 +152,7 @@ ExpectedResult = Success HandshakeMode = RenegotiateServer Method = DTLS ResumptionExpected = No +UseSCTP = No # =========================================================== @@ -175,6 +180,7 @@ ExpectedResult = Success HandshakeMode = RenegotiateClient Method = DTLS ResumptionExpected = No +UseSCTP = No client = 5-renegotiate-aead-to-non-aead-client-extra [5-renegotiate-aead-to-non-aead-client-extra] @@ -206,6 +212,7 @@ ExpectedResult = Success HandshakeMode = RenegotiateClient Method = DTLS ResumptionExpected = No +UseSCTP = No client = 6-renegotiate-non-aead-to-aead-client-extra [6-renegotiate-non-aead-to-aead-client-extra] @@ -237,6 +244,7 @@ ExpectedResult = Success HandshakeMode = RenegotiateClient Method = DTLS ResumptionExpected = No +UseSCTP = No client = 7-renegotiate-non-aead-to-non-aead-client-extra [7-renegotiate-non-aead-to-non-aead-client-extra] @@ -268,6 +276,7 @@ ExpectedResult = Success HandshakeMode = RenegotiateClient Method = DTLS ResumptionExpected = No +UseSCTP = No client = 8-renegotiate-aead-to-aead-client-extra [8-renegotiate-aead-to-aead-client-extra] diff --git a/test/ssl-tests/18-dtls-renegotiate.conf.in b/test/ssl-tests/18-dtls-renegotiate.conf.in index 7a65a85..467d6f2 100644 --- a/test/ssl-tests/18-dtls-renegotiate.conf.in +++ b/test/ssl-tests/18-dtls-renegotiate.conf.in @@ -15,160 +15,178 @@ use warnings; package ssltests; use OpenSSL::Test::Utils; -our @tests = ( - { - name => "renegotiate-client-no-resume", - server => { - "Options" => "NoResumptionOnRenegotiation" - }, - client => {}, - test => { - "Method" => "DTLS", - "HandshakeMode" => "RenegotiateClient", - "ResumptionExpected" => "No", - "ExpectedResult" => "Success" - } - }, - { - name => "renegotiate-client-resume", - server => {}, - client => {}, - test => { - "Method" => "DTLS", - "HandshakeMode" => "RenegotiateClient", - "ResumptionExpected" => "Yes", - "ExpectedResult" => "Success" - } - }, -# Note: Unlike the TLS tests, we will never do resumption with server -# initiated reneg. This is because an OpenSSL DTLS client will always do a full -# handshake (i.e. it doesn't supply a session id) when it receives a -# HelloRequest. This is different to the OpenSSL TLS implementation where an -# OpenSSL client will always try an abbreviated handshake (i.e. it will supply -# the session id). This goes all the way to commit 48ae85b6f when abbreviated -# handshake support was first added. Neither behaviour is wrong, but the -# discrepancy is strange. TODO: Should we harmonise the TLS and DTLS behaviour, -# and if so, what to? - { - name => "renegotiate-server-resume", - server => {}, - client => {}, - test => { - "Method" => "DTLS", - "HandshakeMode" => "RenegotiateServer", - "ResumptionExpected" => "No", - "ExpectedResult" => "Success" - } - }, - { - name => "renegotiate-client-auth-require", - server => { - "VerifyCAFile" => test_pem("root-cert.pem"), - "VerifyMode" => "Require", - }, - client => { - "Certificate" => test_pem("ee-client-chain.pem"), - "PrivateKey" => test_pem("ee-key.pem"), - }, - test => { - "Method" => "DTLS", - "HandshakeMode" => "RenegotiateServer", - "ResumptionExpected" => "No", - "ExpectedResult" => "Success" - } - }, - { - name => "renegotiate-client-auth-once", - server => { - "VerifyCAFile" => test_pem("root-cert.pem"), - "VerifyMode" => "Once", - }, - client => { - "Certificate" => test_pem("ee-client-chain.pem"), - "PrivateKey" => test_pem("ee-key.pem"), - }, - test => { - "Method" => "DTLS", - "HandshakeMode" => "RenegotiateServer", - "ResumptionExpected" => "No", - "ExpectedResult" => "Success" - } - } -); -our @tests_dtls1_2 = ( - { - name => "renegotiate-aead-to-non-aead", - server => { - "Options" => "NoResumptionOnRenegotiation" +our @tests = (); + +foreach my $sctp ("No", "Yes") +{ + next if disabled("sctp") && $sctp eq "Yes"; + + my $suffix = ($sctp eq "No") ? "" : "-sctp"; + our @tests_basic = ( + { + name => "renegotiate-client-no-resume".$suffix, + server => { + "Options" => "NoResumptionOnRenegotiation" + }, + client => {}, + test => { + "Method" => "DTLS", + "UseSCTP" => $sctp, + "HandshakeMode" => "RenegotiateClient", + "ResumptionExpected" => "No", + "ExpectedResult" => "Success" + } }, - client => { - "CipherString" => "AES128-GCM-SHA256", - extra => { - "RenegotiateCiphers" => "AES128-SHA" + { + name => "renegotiate-client-resume".$suffix, + server => {}, + client => {}, + test => { + "Method" => "DTLS", + "UseSCTP" => $sctp, + "HandshakeMode" => "RenegotiateClient", + "ResumptionExpected" => "Yes", + "ExpectedResult" => "Success" } }, - test => { - "Method" => "DTLS", - "HandshakeMode" => "RenegotiateClient", - "ResumptionExpected" => "No", - "ExpectedResult" => "Success" - } - }, - { - name => "renegotiate-non-aead-to-aead", - server => { - "Options" => "NoResumptionOnRenegotiation" + # Note: Unlike the TLS tests, we will never do resumption with server + # initiated reneg. This is because an OpenSSL DTLS client will always do a full + # handshake (i.e. it doesn't supply a session id) when it receives a + # HelloRequest. This is different to the OpenSSL TLS implementation where an + # OpenSSL client will always try an abbreviated handshake (i.e. it will supply + # the session id). This goes all the way to commit 48ae85b6f when abbreviated + # handshake support was first added. Neither behaviour is wrong, but the + # discrepancy is strange. TODO: Should we harmonise the TLS and DTLS behaviour, + # and if so, what to? + { + name => "renegotiate-server-resume".$suffix, + server => {}, + client => {}, + test => { + "Method" => "DTLS", + "UseSCTP" => $sctp, + "HandshakeMode" => "RenegotiateServer", + "ResumptionExpected" => "No", + "ExpectedResult" => "Success" + } }, - client => { - "CipherString" => "AES128-SHA", - extra => { - "RenegotiateCiphers" => "AES128-GCM-SHA256" + { + name => "renegotiate-client-auth-require".$suffix, + server => { + "VerifyCAFile" => test_pem("root-cert.pem"), + "VerifyMode" => "Require", + }, + client => { + "Certificate" => test_pem("ee-client-chain.pem"), + "PrivateKey" => test_pem("ee-key.pem"), + }, + test => { + "Method" => "DTLS", + "UseSCTP" => $sctp, + "HandshakeMode" => "RenegotiateServer", + "ResumptionExpected" => "No", + "ExpectedResult" => "Success" } }, - test => { - "Method" => "DTLS", - "HandshakeMode" => "RenegotiateClient", - "ResumptionExpected" => "No", - "ExpectedResult" => "Success" + { + name => "renegotiate-client-auth-once".$suffix, + server => { + "VerifyCAFile" => test_pem("root-cert.pem"), + "VerifyMode" => "Once", + }, + client => { + "Certificate" => test_pem("ee-client-chain.pem"), + "PrivateKey" => test_pem("ee-key.pem"), + }, + test => { + "Method" => "DTLS", + "UseSCTP" => $sctp, + "HandshakeMode" => "RenegotiateServer", + "ResumptionExpected" => "No", + "ExpectedResult" => "Success" + } } - }, - { - name => "renegotiate-non-aead-to-non-aead", - server => { - "Options" => "NoResumptionOnRenegotiation" + ); + push @tests, @tests_basic; + + next if disabled("dtls1_2"); + our @tests_dtls1_2 = ( + { + name => "renegotiate-aead-to-non-aead".$suffix, + server => { + "Options" => "NoResumptionOnRenegotiation" + }, + client => { + "CipherString" => "AES128-GCM-SHA256", + extra => { + "RenegotiateCiphers" => "AES128-SHA" + } + }, + test => { + "Method" => "DTLS", + "UseSCTP" => $sctp, + "HandshakeMode" => "RenegotiateClient", + "ResumptionExpected" => "No", + "ExpectedResult" => "Success" + } }, - client => { - "CipherString" => "AES128-SHA", - extra => { - "RenegotiateCiphers" => "AES256-SHA" + { + name => "renegotiate-non-aead-to-aead".$suffix, + server => { + "Options" => "NoResumptionOnRenegotiation" + }, + client => { + "CipherString" => "AES128-SHA", + extra => { + "RenegotiateCiphers" => "AES128-GCM-SHA256" + } + }, + test => { + "Method" => "DTLS", + "UseSCTP" => $sctp, + "HandshakeMode" => "RenegotiateClient", + "ResumptionExpected" => "No", + "ExpectedResult" => "Success" } }, - test => { - "Method" => "DTLS", - "HandshakeMode" => "RenegotiateClient", - "ResumptionExpected" => "No", - "ExpectedResult" => "Success" - } - }, - { - name => "renegotiate-aead-to-aead", - server => { - "Options" => "NoResumptionOnRenegotiation" + { + name => "renegotiate-non-aead-to-non-aead".$suffix, + server => { + "Options" => "NoResumptionOnRenegotiation" + }, + client => { + "CipherString" => "AES128-SHA", + extra => { + "RenegotiateCiphers" => "AES256-SHA" + } + }, + test => { + "Method" => "DTLS", + "UseSCTP" => $sctp, + "HandshakeMode" => "RenegotiateClient", + "ResumptionExpected" => "No", + "ExpectedResult" => "Success" + } }, - client => { - "CipherString" => "AES128-GCM-SHA256", - extra => { - "RenegotiateCiphers" => "AES256-GCM-SHA384" + { + name => "renegotiate-aead-to-aead".$suffix, + server => { + "Options" => "NoResumptionOnRenegotiation" + }, + client => { + "CipherString" => "AES128-GCM-SHA256", + extra => { + "RenegotiateCiphers" => "AES256-GCM-SHA384" + } + }, + test => { + "Method" => "DTLS", + "UseSCTP" => $sctp, + "HandshakeMode" => "RenegotiateClient", + "ResumptionExpected" => "No", + "ExpectedResult" => "Success" } }, - test => { - "Method" => "DTLS", - "HandshakeMode" => "RenegotiateClient", - "ResumptionExpected" => "No", - "ExpectedResult" => "Success" - } - }, -); - - -push @tests, @tests_dtls1_2 unless disabled("dtls1_2"); + ); + push @tests, @tests_dtls1_2; +} diff --git a/test/ssl-tests/protocol_version.pm b/test/ssl-tests/protocol_version.pm index 7c28bcf..f0b3030 100644 --- a/test/ssl-tests/protocol_version.pm +++ b/test/ssl-tests/protocol_version.pm @@ -96,31 +96,35 @@ sub generate_version_tests { my @tests = (); - foreach my $c_min (0..$#min_protocols) { - my $c_max_min = $c_min == 0 ? 0 : $c_min - 1; - foreach my $c_max ($c_max_min..$#max_protocols) { - foreach my $s_min (0..$#min_protocols) { - my $s_max_min = $s_min == 0 ? 0 : $s_min - 1; - foreach my $s_max ($s_max_min..$#max_protocols) { - my ($result, $protocol) = - expected_result($c_min, $c_max, $s_min, $s_max, - $min_enabled, $max_enabled, \@protocols); - push @tests, { - "name" => "version-negotiation", - "client" => { - "MinProtocol" => $min_protocols[$c_min], - "MaxProtocol" => $max_protocols[$c_max], - }, - "server" => { - "MinProtocol" => $min_protocols[$s_min], - "MaxProtocol" => $max_protocols[$s_max], - }, - "test" => { - "ExpectedResult" => $result, - "ExpectedProtocol" => $protocol, - "Method" => $method, - } - }; + for (my $sctp = 0; $sctp < ($dtls && !disabled("sctp") ? 2 : 1); $sctp++) { + foreach my $c_min (0..$#min_protocols) { + my $c_max_min = $c_min == 0 ? 0 : $c_min - 1; + foreach my $c_max ($c_max_min..$#max_protocols) { + foreach my $s_min (0..$#min_protocols) { + my $s_max_min = $s_min == 0 ? 0 : $s_min - 1; + foreach my $s_max ($s_max_min..$#max_protocols) { + my ($result, $protocol) = + expected_result($c_min, $c_max, $s_min, $s_max, + $min_enabled, $max_enabled, + \@protocols); + push @tests, { + "name" => "version-negotiation", + "client" => { + "MinProtocol" => $min_protocols[$c_min], + "MaxProtocol" => $max_protocols[$c_max], + }, + "server" => { + "MinProtocol" => $min_protocols[$s_min], + "MaxProtocol" => $max_protocols[$s_max], + }, + "test" => { + "ExpectedResult" => $result, + "ExpectedProtocol" => $protocol, + "Method" => $method, + } + }; + $tests[-1]{"test"}{"UseSCTP"} = "Yes" if $sctp; + } } } } @@ -159,46 +163,51 @@ sub generate_resumption_tests { $resumption_expected = "No"; } - foreach my $ticket ("SessionTicket", "-SessionTicket") { - # Client is flexible, server upgrades/downgrades. - push @server_tests, { - "name" => "resumption", - "client" => { }, - "server" => { - "MinProtocol" => $protocols[$original_protocol], - "MaxProtocol" => $protocols[$original_protocol], - "Options" => $ticket, - }, - "resume_server" => { - "MaxProtocol" => $protocols[$resume_protocol], - }, - "test" => { - "ExpectedProtocol" => $protocols[$resume_protocol], - "Method" => $method, - "HandshakeMode" => "Resume", - "ResumptionExpected" => $resumption_expected, - } - }; - # Server is flexible, client upgrades/downgrades. - push @client_tests, { - "name" => "resumption", - "client" => { - "MinProtocol" => $protocols[$original_protocol], - "MaxProtocol" => $protocols[$original_protocol], - }, - "server" => { - "Options" => $ticket, - }, - "resume_client" => { - "MaxProtocol" => $protocols[$resume_protocol], - }, - "test" => { - "ExpectedProtocol" => $protocols[$resume_protocol], - "Method" => $method, - "HandshakeMode" => "Resume", - "ResumptionExpected" => $resumption_expected, - } - }; + for (my $sctp = 0; $sctp < ($dtls && !disabled("sctp") ? 2 : 1); + $sctp++) { + foreach my $ticket ("SessionTicket", "-SessionTicket") { + # Client is flexible, server upgrades/downgrades. + push @server_tests, { + "name" => "resumption", + "client" => { }, + "server" => { + "MinProtocol" => $protocols[$original_protocol], + "MaxProtocol" => $protocols[$original_protocol], + "Options" => $ticket, + }, + "resume_server" => { + "MaxProtocol" => $protocols[$resume_protocol], + }, + "test" => { + "ExpectedProtocol" => $protocols[$resume_protocol], + "Method" => $method, + "HandshakeMode" => "Resume", + "ResumptionExpected" => $resumption_expected, + } + }; + $server_tests[-1]{"test"}{"UseSCTP"} = "Yes" if $sctp; + # Server is flexible, client upgrades/downgrades. + push @client_tests, { + "name" => "resumption", + "client" => { + "MinProtocol" => $protocols[$original_protocol], + "MaxProtocol" => $protocols[$original_protocol], + }, + "server" => { + "Options" => $ticket, + }, + "resume_client" => { + "MaxProtocol" => $protocols[$resume_protocol], + }, + "test" => { + "ExpectedProtocol" => $protocols[$resume_protocol], + "Method" => $method, + "HandshakeMode" => "Resume", + "ResumptionExpected" => $resumption_expected, + } + }; + $client_tests[-1]{"test"}{"UseSCTP"} = "Yes" if $sctp; + } } } } @@ -244,9 +253,7 @@ sub expected_result { if ($c_min > $c_max) { # Client should fail to even send a hello. - # This results in an internal error since the server will be - # waiting for input that never arrives. - return ("InternalError", undef); + return ("ClientFail", undef); } elsif ($s_min > $s_max) { # Server has no protocols, should always fail. return ("ServerFail", undef); diff --git a/test/ssl_test_ctx.c b/test/ssl_test_ctx.c index 6a3b9d1..424eae8 100644 --- a/test/ssl_test_ctx.c +++ b/test/ssl_test_ctx.c @@ -406,6 +406,7 @@ const char *ssl_ct_validation_name(ssl_ct_validation_t mode) IMPLEMENT_SSL_TEST_BOOL_OPTION(SSL_TEST_CTX, test, resumption_expected) IMPLEMENT_SSL_TEST_BOOL_OPTION(SSL_TEST_SERVER_CONF, server, broken_session_ticket) +IMPLEMENT_SSL_TEST_BOOL_OPTION(SSL_TEST_CTX, test, use_sctp) /* CertStatus */ @@ -590,6 +591,7 @@ static const ssl_test_ctx_option ssl_test_ctx_options[] = { { "ExpectedClientSignHash", &parse_expected_client_sign_hash }, { "ExpectedClientSignType", &parse_expected_client_sign_type }, { "ExpectedClientCANames", &parse_expected_client_ca_names }, + { "UseSCTP", &parse_test_use_sctp }, }; /* Nested client options. */ diff --git a/test/ssl_test_ctx.h b/test/ssl_test_ctx.h index 54cefb6..ebeddde 100644 --- a/test/ssl_test_ctx.h +++ b/test/ssl_test_ctx.h @@ -198,6 +198,8 @@ typedef struct { int expected_client_sign_type; /* Expected CA names for client auth */ STACK_OF(X509_NAME) *expected_client_ca_names; + /* Whether to use SCTP for the transport */ + int use_sctp; } SSL_TEST_CTX; const char *ssl_test_result_name(ssl_test_result_t result); diff --git a/util/libcrypto.num b/util/libcrypto.num index 725e075..14c4c6a 100644 --- a/util/libcrypto.num +++ b/util/libcrypto.num @@ -4271,3 +4271,4 @@ UINT32_it 4214 1_1_0f EXIST:EXPORT_VAR_AS_FUNCTION ZINT64_it 4215 1_1_0f EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: ZINT64_it 4215 1_1_0f EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: CRYPTO_mem_leaks_cb 4216 1_1_1 EXIST::FUNCTION:CRYPTO_MDEBUG +BIO_lookup_ex 4217 1_1_1 EXIST::FUNCTION:SOCK From levitte at openssl.org Tue Apr 25 13:03:21 2017 From: levitte at openssl.org (Richard Levitte) Date: Tue, 25 Apr 2017 13:03:21 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493125401.818084.25536.nullmailer@dev.openssl.org> The branch master has been updated via 65d62488b8c808350f440d2276034f5223b391ad (commit) from f7b3cb2ad0fac9d5ea0025c4d84ff4603a78b64e (commit) - Log ----------------------------------------------------------------- commit 65d62488b8c808350f440d2276034f5223b391ad Author: Bernard Spil Date: Mon Apr 24 18:43:49 2017 +0200 openssl enc: Don't unbuffer stdin - unbuffer causes single-byte reads from stdin and poor performance Fixes #3281 CLA: trivial Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3299) ----------------------------------------------------------------------- Summary of changes: apps/enc.c | 1 - 1 file changed, 1 deletion(-) diff --git a/apps/enc.c b/apps/enc.c index a1b2b3c..157cb94 100644 --- a/apps/enc.c +++ b/apps/enc.c @@ -291,7 +291,6 @@ int enc_main(int argc, char **argv) buff = app_malloc(EVP_ENCODE_LENGTH(bsize), "evp buffer"); if (infile == NULL) { - unbuffer(stdin); in = dup_bio_in(informat); } else in = bio_open_default(infile, 'r', informat); From levitte at openssl.org Tue Apr 25 13:03:53 2017 From: levitte at openssl.org (Richard Levitte) Date: Tue, 25 Apr 2017 13:03:53 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1493125433.522110.26828.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via d746e49bcd9cc84cce13b1cd2d3ea35b909880a7 (commit) from 1e0b1ae58393bc25b5ece816b2df0525a862bdd1 (commit) - Log ----------------------------------------------------------------- commit d746e49bcd9cc84cce13b1cd2d3ea35b909880a7 Author: Bernard Spil Date: Mon Apr 24 18:43:49 2017 +0200 openssl enc: Don't unbuffer stdin - unbuffer causes single-byte reads from stdin and poor performance Fixes #3281 CLA: trivial Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3299) (cherry picked from commit 65d62488b8c808350f440d2276034f5223b391ad) ----------------------------------------------------------------------- Summary of changes: apps/enc.c | 1 - 1 file changed, 1 deletion(-) diff --git a/apps/enc.c b/apps/enc.c index b11d553..c906563 100644 --- a/apps/enc.c +++ b/apps/enc.c @@ -291,7 +291,6 @@ int enc_main(int argc, char **argv) buff = app_malloc(EVP_ENCODE_LENGTH(bsize), "evp buffer"); if (infile == NULL) { - unbuffer(stdin); in = dup_bio_in(informat); } else in = bio_open_default(infile, 'r', informat); From matt at openssl.org Tue Apr 25 13:07:08 2017 From: matt at openssl.org (Matt Caswell) Date: Tue, 25 Apr 2017 13:07:08 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1493125628.912599.30444.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via bb22c4057f31346b3d8f43929c759f692a7e7ef9 (commit) via b651a05d261530923c4d1f8f464a91c50602d3ea (commit) via 22ae579bea93c0a426bacb764783e0e2cf35c14c (commit) via c9a6b9f7ed482025d684ef3a04505004f85a97a1 (commit) from d746e49bcd9cc84cce13b1cd2d3ea35b909880a7 (commit) - Log ----------------------------------------------------------------- commit bb22c4057f31346b3d8f43929c759f692a7e7ef9 Author: Matt Caswell Date: Mon Apr 24 11:45:42 2017 +0100 Fix some variable references in init_client We were incorrectly using "res" when we meant "ai" Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3287) commit b651a05d261530923c4d1f8f464a91c50602d3ea Author: Matt Caswell Date: Fri Apr 21 16:56:06 2017 +0100 Fix problem with SCTP close_notify alerts In SCTP the code was only allowing a send of a close_notify alert if the socket is dry. If the socket isn't dry then it was attempting to save away the close_notify alert to resend later when it is dry and then it returned success. However because the application then thinks that the close_notify alert has been successfully sent it never re-enters the DTLS code to actually resend the alert. A much simpler solution is to just fail with a retryable error in the event that the socket isn't dry. That way the application knows to retry sending the close_notify alert. Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3287) commit 22ae579bea93c0a426bacb764783e0e2cf35c14c Author: Matt Caswell Date: Fri Apr 21 14:00:20 2017 +0100 Don't attempt to send fragments > max_send_fragment in DTLS We were allocating the write buffer based on the size of max_send_fragment, but ignoring it when writing data. We should fragment handshake messages if they exceed max_send_fragment and reject application data writes that are too large. Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3287) commit c9a6b9f7ed482025d684ef3a04505004f85a97a1 Author: Matt Caswell Date: Thu Apr 20 15:13:28 2017 +0100 Remove special case code for SCTP reneg handling There was code existing which attempted to handle the case where application data is received after a reneg handshake has started in SCTP. In normal DTLS we just fail the connection if this occurs, so there doesn't seem any reason to try and work around it for SCTP. In practice it didn't work properly anyway and is probably a bad idea to start with. Fixes #3251 Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3287) ----------------------------------------------------------------------- Summary of changes: apps/s_socket.c | 7 ++++--- crypto/bio/bss_dgram.c | 43 ++++++------------------------------------- include/openssl/ssl.h | 1 + ssl/d1_msg.c | 13 +------------ ssl/record/rec_layer_d1.c | 28 +++++----------------------- ssl/ssl_err.c | 2 ++ ssl/statem/statem.c | 23 ----------------------- ssl/statem/statem.h | 7 ------- ssl/statem/statem_clnt.c | 24 +----------------------- ssl/statem/statem_dtls.c | 5 ++--- ssl/statem/statem_srvr.c | 39 +-------------------------------------- 11 files changed, 23 insertions(+), 169 deletions(-) diff --git a/apps/s_socket.c b/apps/s_socket.c index d16f5ad..0cbe885 100644 --- a/apps/s_socket.c +++ b/apps/s_socket.c @@ -75,11 +75,12 @@ int init_client(int *sock, const char *host, const char *port, /* Admittedly, these checks are quite paranoid, we should not get * anything in the BIO_ADDRINFO chain that we haven't * asked for. */ - OPENSSL_assert((family == AF_UNSPEC || family == BIO_ADDRINFO_family(res)) - && (type == 0 || type == BIO_ADDRINFO_socktype(res))); + OPENSSL_assert((family == AF_UNSPEC + || family == BIO_ADDRINFO_family(ai)) + && (type == 0 || type == BIO_ADDRINFO_socktype(ai))); *sock = BIO_socket(BIO_ADDRINFO_family(ai), BIO_ADDRINFO_socktype(ai), - BIO_ADDRINFO_protocol(res), 0); + BIO_ADDRINFO_protocol(ai), 0); if (*sock == INVALID_SOCKET) { /* Maybe the kernel doesn't support the socket family, even if * BIO_lookup() added it in the returned result... diff --git a/crypto/bio/bss_dgram.c b/crypto/bio/bss_dgram.c index 6dfcc9b..81730ab 100644 --- a/crypto/bio/bss_dgram.c +++ b/crypto/bio/bss_dgram.c @@ -130,7 +130,6 @@ typedef struct bio_dgram_sctp_data_st { int ccs_sent; int save_shutdown; int peer_auth_tested; - bio_dgram_sctp_save_message saved_message; } bio_dgram_sctp_data; # endif @@ -962,10 +961,8 @@ static int dgram_sctp_free(BIO *a) return 0; data = (bio_dgram_sctp_data *) a->ptr; - if (data != NULL) { - OPENSSL_free(data->saved_message.data); + if (data != NULL) OPENSSL_free(data); - } return (1); } @@ -1067,22 +1064,6 @@ static int dgram_sctp_read(BIO *b, char *out, int outl) struct sctp_event_subscribe event; socklen_t eventsize; # endif - /* - * If a message has been delayed until the socket is dry, - * it can be sent now. - */ - if (data->saved_message.length > 0) { - i = dgram_sctp_write(data->saved_message.bio, - data->saved_message.data, - data->saved_message.length); - if (i < 0) { - ret = i; - break; - } - OPENSSL_free(data->saved_message.data); - data->saved_message.data = NULL; - data->saved_message.length = 0; - } /* disable sender dry event */ # ifdef SCTP_EVENT @@ -1265,27 +1246,15 @@ static int dgram_sctp_write(BIO *b, const char *in, int inl) sinfo = &handshake_sinfo; } - /* - * If we have to send a shutdown alert message and the socket is not dry - * yet, we have to save it and send it as soon as the socket gets dry. - */ + /* We can only send a shutdown alert if the socket is dry */ if (data->save_shutdown) { ret = BIO_dgram_sctp_wait_for_dry(b); - if (ret < 0) { + if (ret < 0) return -1; - } if (ret == 0) { - char *tmp; - data->saved_message.bio = b; - if ((tmp = OPENSSL_malloc(inl)) == NULL) { - BIOerr(BIO_F_DGRAM_SCTP_WRITE, ERR_R_MALLOC_FAILURE); - return -1; - } - OPENSSL_free(data->saved_message.data); - data->saved_message.data = tmp; - memcpy(data->saved_message.data, in, inl); - data->saved_message.length = inl; - return inl; + BIO_clear_retry_flags(b); + BIO_set_retry_write(b); + return -1; } } diff --git a/include/openssl/ssl.h b/include/openssl/ssl.h index 8d75d53..f7ea736 100644 --- a/include/openssl/ssl.h +++ b/include/openssl/ssl.h @@ -2346,6 +2346,7 @@ int ERR_load_SSL_strings(void); # define SSL_R_ENCRYPTED_LENGTH_TOO_LONG 150 # define SSL_R_ERROR_IN_RECEIVED_CIPHER_LIST 151 # define SSL_R_ERROR_SETTING_TLSA_BASE_DOMAIN 204 +# define SSL_R_EXCEEDS_MAX_FRAGMENT_SIZE 194 # define SSL_R_EXCESSIVE_MESSAGE_SIZE 152 # define SSL_R_EXTRA_DATA_IN_MESSAGE 153 # define SSL_R_FAILED_TO_INIT_ASYNC 405 diff --git a/ssl/d1_msg.c b/ssl/d1_msg.c index ae7aff6..7471fd3 100644 --- a/ssl/d1_msg.c +++ b/ssl/d1_msg.c @@ -14,18 +14,7 @@ int dtls1_write_app_data_bytes(SSL *s, int type, const void *buf_, int len) { int i; -#ifndef OPENSSL_NO_SCTP - /* - * Check if we have to continue an interrupted handshake for reading - * belated app data with SCTP. - */ - if ((SSL_in_init(s) && !ossl_statem_get_in_handshake(s)) || - (BIO_dgram_is_sctp(SSL_get_wbio(s)) && - ossl_statem_in_sctp_read_sock(s))) -#else - if (SSL_in_init(s) && !ossl_statem_get_in_handshake(s)) -#endif - { + if (SSL_in_init(s) && !ossl_statem_get_in_handshake(s)) { i = s->handshake_func(s); if (i < 0) return (i); diff --git a/ssl/record/rec_layer_d1.c b/ssl/record/rec_layer_d1.c index 1d16319..1686edd 100644 --- a/ssl/record/rec_layer_d1.c +++ b/ssl/record/rec_layer_d1.c @@ -369,18 +369,7 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, * type == SSL3_RT_HANDSHAKE. */ -#ifndef OPENSSL_NO_SCTP - /* - * Continue handshake if it had to be interrupted to read app data with - * SCTP. - */ - if ((!ossl_statem_get_in_handshake(s) && SSL_in_init(s)) || - (BIO_dgram_is_sctp(SSL_get_rbio(s)) - && ossl_statem_in_sctp_read_sock(s) - && s->s3->in_read_app_data != 2)) -#else if (!ossl_statem_get_in_handshake(s) && SSL_in_init(s)) -#endif { /* type == SSL3_RT_APPLICATION_DATA */ i = s->handshake_func(s); @@ -523,18 +512,6 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, } #ifndef OPENSSL_NO_SCTP /* - * We were about to renegotiate but had to read belated application - * data first, so retry. - */ - if (BIO_dgram_is_sctp(SSL_get_rbio(s)) && - SSL3_RECORD_get_type(rr) == SSL3_RT_APPLICATION_DATA && - ossl_statem_in_sctp_read_sock(s)) { - s->rwstate = SSL_READING; - BIO_clear_retry_flags(SSL_get_rbio(s)); - BIO_set_retry_read(SSL_get_rbio(s)); - } - - /* * We might had to delay a close_notify alert because of reordered * app data. If there was an alert and there is no message to read * anymore, finally set shutdown. @@ -1011,6 +988,11 @@ int do_dtls1_write(SSL *s, int type, const unsigned char *buf, if (len == 0 && !create_empty_fragment) return 0; + if (len > s->max_send_fragment) { + SSLerr(SSL_F_DO_DTLS1_WRITE, SSL_R_EXCEEDS_MAX_FRAGMENT_SIZE); + return 0; + } + sess = s->session; if ((sess == NULL) || diff --git a/ssl/ssl_err.c b/ssl/ssl_err.c index 73e0ae1..be4c0c0 100644 --- a/ssl/ssl_err.c +++ b/ssl/ssl_err.c @@ -415,6 +415,8 @@ static ERR_STRING_DATA SSL_str_reasons[] = { "error in received cipher list"}, {ERR_REASON(SSL_R_ERROR_SETTING_TLSA_BASE_DOMAIN), "error setting tlsa base domain"}, + {ERR_REASON(SSL_R_EXCEEDS_MAX_FRAGMENT_SIZE), + "exceeds max fragment size"}, {ERR_REASON(SSL_R_EXCESSIVE_MESSAGE_SIZE), "excessive message size"}, {ERR_REASON(SSL_R_EXTRA_DATA_IN_MESSAGE), "extra data in message"}, {ERR_REASON(SSL_R_FAILED_TO_INIT_ASYNC), "failed to init async"}, diff --git a/ssl/statem/statem.c b/ssl/statem/statem.c index 512f1e0..691bfbb 100644 --- a/ssl/statem/statem.c +++ b/ssl/statem/statem.c @@ -850,26 +850,3 @@ int ossl_statem_app_data_allowed(SSL *s) return 0; } - -#ifndef OPENSSL_NO_SCTP -/* - * Set flag used by SCTP to determine whether we are in the read sock state - */ -void ossl_statem_set_sctp_read_sock(SSL *s, int read_sock) -{ - s->statem.in_sctp_read_sock = read_sock; -} - -/* - * Called by the record layer to determine whether we are in the read sock - * state or not. - * - * Return values are: - * 1: Yes (we are in the read sock state) - * 0: No (we are not in the read sock state) - */ -int ossl_statem_in_sctp_read_sock(SSL *s) -{ - return s->statem.in_sctp_read_sock; -} -#endif diff --git a/ssl/statem/statem.h b/ssl/statem/statem.h index 2fca39b..c669ee9 100644 --- a/ssl/statem/statem.h +++ b/ssl/statem/statem.h @@ -93,9 +93,6 @@ struct ossl_statem_st { /* Should we skip the CertificateVerify message? */ unsigned int no_cert_verify; int use_timer; -#ifndef OPENSSL_NO_SCTP - int in_sctp_read_sock; -#endif }; typedef struct ossl_statem_st OSSL_STATEM; @@ -117,7 +114,3 @@ int ossl_statem_get_in_handshake(SSL *s); void ossl_statem_set_in_handshake(SSL *s, int inhand); void ossl_statem_set_hello_verify_done(SSL *s); __owur int ossl_statem_app_data_allowed(SSL *s); -#ifndef OPENSSL_NO_SCTP -void ossl_statem_set_sctp_read_sock(SSL *s, int read_sock); -__owur int ossl_statem_in_sctp_read_sock(SSL *s); -#endif diff --git a/ssl/statem/statem_clnt.c b/ssl/statem/statem_clnt.c index 6eb6e42..a2a6684 100644 --- a/ssl/statem/statem_clnt.c +++ b/ssl/statem/statem_clnt.c @@ -664,21 +664,6 @@ WORK_STATE ossl_statem_client_post_process_message(SSL *s, WORK_STATE wst) case TLS_ST_CR_CERT_REQ: return tls_prepare_client_certificate(s, wst); -#ifndef OPENSSL_NO_SCTP - case TLS_ST_CR_SRVR_DONE: - /* We only get here if we are using SCTP and we are renegotiating */ - if (BIO_dgram_sctp_msg_waiting(SSL_get_rbio(s))) { - s->s3->in_read_app_data = 2; - s->rwstate = SSL_READING; - BIO_clear_retry_flags(SSL_get_rbio(s)); - BIO_set_retry_read(SSL_get_rbio(s)); - ossl_statem_set_sctp_read_sock(s, 1); - return WORK_MORE_A; - } - ossl_statem_set_sctp_read_sock(s, 0); - return WORK_FINISHED_STOP; -#endif - default: break; } @@ -2078,14 +2063,7 @@ MSG_PROCESS_RETURN tls_process_server_done(SSL *s, PACKET *pkt) } #endif -#ifndef OPENSSL_NO_SCTP - /* Only applies to renegotiation */ - if (SSL_IS_DTLS(s) && BIO_dgram_is_sctp(SSL_get_wbio(s)) - && s->renegotiate != 0) - return MSG_PROCESS_CONTINUE_PROCESSING; - else -#endif - return MSG_PROCESS_FINISHED_READING; + return MSG_PROCESS_FINISHED_READING; } static int tls_construct_cke_psk_preamble(SSL *s, unsigned char **p, diff --git a/ssl/statem/statem_dtls.c b/ssl/statem/statem_dtls.c index 043f41b..37e7fea 100644 --- a/ssl/statem/statem_dtls.c +++ b/ssl/statem/statem_dtls.c @@ -214,9 +214,8 @@ int dtls1_do_write(SSL *s, int type) else len = s->init_num; - /* Shouldn't ever happen */ - if (len > INT_MAX) - len = INT_MAX; + if (len > s->max_send_fragment) + len = s->max_send_fragment; /* * XDTLS: this function is too long. split out the CCS part diff --git a/ssl/statem/statem_srvr.c b/ssl/statem/statem_srvr.c index 2bd1b8e..ce7bb33 100644 --- a/ssl/statem/statem_srvr.c +++ b/ssl/statem/statem_srvr.c @@ -786,24 +786,6 @@ WORK_STATE ossl_statem_server_post_process_message(SSL *s, WORK_STATE wst) case TLS_ST_SR_KEY_EXCH: return tls_post_process_client_key_exchange(s, wst); - case TLS_ST_SR_CERT_VRFY: -#ifndef OPENSSL_NO_SCTP - if ( /* Is this SCTP? */ - BIO_dgram_is_sctp(SSL_get_wbio(s)) - /* Are we renegotiating? */ - && s->renegotiate && BIO_dgram_sctp_msg_waiting(SSL_get_rbio(s))) { - s->s3->in_read_app_data = 2; - s->rwstate = SSL_READING; - BIO_clear_retry_flags(SSL_get_rbio(s)); - BIO_set_retry_read(SSL_get_rbio(s)); - ossl_statem_set_sctp_read_sock(s, 1); - return WORK_MORE_A; - } else { - ossl_statem_set_sctp_read_sock(s, 0); - } -#endif - return WORK_FINISHED_CONTINUE; - default: break; } @@ -2638,25 +2620,6 @@ WORK_STATE tls_post_process_client_key_exchange(SSL *s, WORK_STATE wst) BIO_ctrl(SSL_get_wbio(s), BIO_CTRL_DGRAM_SCTP_ADD_AUTH_KEY, sizeof(sctpauthkey), sctpauthkey); } - wst = WORK_MORE_B; - } - - if ((wst == WORK_MORE_B) - /* Is this SCTP? */ - && BIO_dgram_is_sctp(SSL_get_wbio(s)) - /* Are we renegotiating? */ - && s->renegotiate - /* Are we going to skip the CertificateVerify? */ - && (s->session->peer == NULL || s->statem.no_cert_verify) - && BIO_dgram_sctp_msg_waiting(SSL_get_rbio(s))) { - s->s3->in_read_app_data = 2; - s->rwstate = SSL_READING; - BIO_clear_retry_flags(SSL_get_rbio(s)); - BIO_set_retry_read(SSL_get_rbio(s)); - ossl_statem_set_sctp_read_sock(s, 1); - return WORK_MORE_B; - } else { - ossl_statem_set_sctp_read_sock(s, 0); } #endif @@ -2836,7 +2799,7 @@ MSG_PROCESS_RETURN tls_process_cert_verify(SSL *s, PACKET *pkt) goto f_err; } - ret = MSG_PROCESS_CONTINUE_PROCESSING; + ret = MSG_PROCESS_CONTINUE_READING; if (0) { f_err: ssl3_send_alert(s, SSL3_AL_FATAL, al); From builds at travis-ci.org Tue Apr 25 13:22:53 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 25 Apr 2017 13:22:53 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10544 (master - f7b3cb2) In-Reply-To: Message-ID: <58ff4dad8ed9b_43febae2bf2084018bb@0adc31dc-0ade-4aa8-9013-f57e5035dd60.mail> Build Update for openssl/openssl ------------------------------------- Build: #10544 Status: Still Failing Duration: 20 minutes and 4 seconds Commit: f7b3cb2 (master) Author: Matt Caswell Message: Fix doc-nits issue BIO_lookup_ex() should be in the NAME section Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3286) View the changeset: https://github.com/openssl/openssl/compare/b3c42fc2503a...f7b3cb2ad0fa View the full build log and details: https://travis-ci.org/openssl/openssl/builds/225595986 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From rsalz at openssl.org Tue Apr 25 13:25:21 2017 From: rsalz at openssl.org (Rich Salz) Date: Tue, 25 Apr 2017 13:25:21 +0000 Subject: [openssl-commits] [web] master update Message-ID: <1493126721.260643.14953.nullmailer@dev.openssl.org> The branch master has been updated via 9423b5155c05652034b72222b2577b495db1e087 (commit) from 72795fc7d7ca13604d6aeff4161d247cfa9fa09e (commit) - Log ----------------------------------------------------------------- commit 9423b5155c05652034b72222b2577b495db1e087 Author: Rich Salz Date: Tue Apr 25 09:25:15 2017 -0400 Merge into one list, update intro text ----------------------------------------------------------------------- Summary of changes: docs/standards.html | 146 +++++++++++++++++++++++++--------------------------- 1 file changed, 69 insertions(+), 77 deletions(-) diff --git a/docs/standards.html b/docs/standards.html index fca0e39..3b92a6a 100644 --- a/docs/standards.html +++ b/docs/standards.html @@ -9,88 +9,25 @@

Standards

-

This page is an incomplete list of the things that - are implemented — in whole, or at least mostly — in - OpenSSL.

+

This page is a partial list of the specifications + that are relevant to OpenSSL. Sometimes a document is useful + because OpenSSL provides an implementation; and sometimes it is + useful just for background knowledge. This list is maintained + on a casual basis. If you have updates, please let us know.

+ +

Note that we do not claim to have completely implemented every + part of any specification. And also that some algorithms are + disabled by default.

Implemented

-

Note that some of the following are disabled by default.

-
    -
  • RFC 1319: +
  • RFC 1319: The MD2 Message-Digest Algorithm
  • RFC 1320: The MD4 Message-Digest Algorithm
  • RFC 1321: The MD5 Message-Digest Algorithm
  • -
  • RFC 2246: - The TLS Protocol Version 1
  • -
  • RFC 2268: - A Description of the RC2(r) Encryption - Algorithm
  • -
  • RFC 2315: - PKCS 7: Cryptographic Message Syntax Version 1.5
  • -
  • RFC 2560: - X.509 Internet Public Key Infrastructure Online - Certificate Status Protocol - OCSP
  • -
  • RFC 2898: - PKCS #5: Password-Based Cryptography Specification - Version 2.0
  • -
  • RFC 2986: - PKCS #10: Certification Request Syntax Specification - Version 1.7
  • -
  • RFC 3161: - Internet X.509 Public Key Infrastructure, Time-Stamp - Protocol (TSP)
  • -
  • RFC 3174: - US Secure Hash Algorithm 1 (SHA1)
  • -
  • RFC 3268: - Advanced Encryption Standard (AES) Ciphersuites for - Transport Layer Security (TLS)
  • -
  • RFC 3279: - Algorithms and Identifiers for the Internet X.509 - Public Key Infrastructure Certificate and Certificate Revocation - List (CRL) Profile
  • -
  • RFC 3280: - Internet X.509 Public Key Infrastructure Certificate - and Certificate Revocation List (CRL) Profile
  • -
  • RFC 3447: - Public-Key Cryptography Standards (PKCS) #1: RSA - Cryptography Specifications Version 2.1
  • -
  • RFC 3713: - A Description of the Camellia Encryption Algorithm
  • -
  • RFC 3820: - Internet X.509 Public Key Infrastructure (PKI) Proxy - Certificate Profile
  • -
  • RFC 4132: - Addition of Camellia Cipher Suites to Transport - Layer Security (TLS)
  • -
  • RFC 4162: - Addition of SEED Cipher Suites to Transport Layer - Security (TLS)
  • -
  • RFC 4269: - The SEED Encryption Algorithm
  • -
  • PKCS#11: - Standards for Cryptographic Tokens
  • -
  • RFC 4346: - The Transport Layer Security (TLS) Protocol Version 1.1
  • -
  • RFC 5208: - PKCS#8: Private-Key Information Syntax Specification Version 1.2
  • -
  • RFC 5246: - The Transport Layer Security (TLS) Protocol Version 1.2
  • -
  • RFC 6962: - Certificate Transparency
  • -
  • RFC 7292: - PKCS #12: Personal Information Exchange Syntax v1.1
  • -
- -

Related

-

These are documents that are close to OpenSSL, for example the - STARTTLS documents.

- -
  • RFC 1421: Privacy Enhancement for Internet Electronic Mail: Part I: Message Encryption and Authentication Procedures
  • @@ -103,8 +40,13 @@
  • RFC 1424: Privacy Enhancement for Internet Electronic Mail: Part IV: Key Certification and Related Services
  • -
  • RFC 2025: - The Simple Public-Key GSS-API Mechanism (SPKM)
  • +
  • RFC 2246: + The TLS Protocol Version 1
  • +
  • RFC 2268: + A Description of the RC2(r) Encryption + Algorithm
  • +
  • RFC 2315: + PKCS 7: Cryptographic Message Syntax Version 1.5
  • RFC 2510: Internet X.509 Public Key Infrastructure Certificate Management Protocols
  • @@ -122,18 +64,21 @@
  • RFC 2559: Internet X.509 Public Key Infrastructure Operational Protocols - LDAPv2
  • +
  • RFC 2560: + X.509 Internet Public Key Infrastructure Online + Certificate Status Protocol - OCSP
  • RFC 2585: Internet X.509 Public Key Infrastructure Operational Protocols: FTP and HTTP
  • RFC 2587: Internet X.509 Public Key Infrastructure LDAPv2 - Schema
  • RFC 2595: Using TLS with IMAP, POP3 and ACAP
  • RFC 2631: Diffie-Hellman Key Agreement Method
  • RFC 2632: S/MIME Version 3 Certificate Handling
  • + Schema
  • RFC 2716: PPP EAP TLS Authentication Protocol
  • RFC 2797: @@ -142,11 +87,17 @@ Upgrading to TLS Within HTTP/1.1
  • RFC 2818: HTTP Over TLS
  • +
  • RFC 2898: + PKCS #5: Password-Based Cryptography Specification + Version 2.0
  • RFC 2984: Use of the CAST-128 Encryption Algorithm in CMS
  • RFC 2985: PKCS #9: Selected Object Classes and Attribute Types Version 2.0
  • +
  • RFC 2986: + PKCS #10: Certification Request Syntax Specification + Version 1.7
  • RFC 3029: Internet X.509 Public Key Infrastructure Data Validation and Certification Server Protocols
  • @@ -156,8 +107,10 @@
  • RFC 3058: Use of the IDEA Encryption Algorithm in CMS
  • RFC 3161: - Internet X.509 Public Key Infrastructure Time-Stamp + Internet X.509 Public Key Infrastructure, Time-Stamp Protocol (TSP)
  • +
  • RFC 3174: + US Secure Hash Algorithm 1 (SHA1)
  • RFC 3185: Reuse of CMS Content Encryption Keys
  • RFC 3207: @@ -165,12 +118,22 @@ Layer Security
  • RFC 3217: Triple-DES and RC2 Key Wrapping
  • +
  • RFC 3268: + Advanced Encryption Standard (AES) Ciphersuites for + Transport Layer Security (TLS)
  • RFC 3274: Compressed Data Content Type for Cryptographic Message Syntax (CMS)
  • RFC 3278: Use of Elliptic Curve Cryptography (ECC) Algorithms in Cryptographic Message Syntax (CMS)
  • +
  • RFC 3279: + Algorithms and Identifiers for the Internet X.509 + Public Key Infrastructure Certificate and Certificate Revocation + List (CRL) Profile
  • +
  • RFC 3280: + Internet X.509 Public Key Infrastructure Certificate + and Certificate Revocation List (CRL) Profile
  • RFC 3281: An Internet Attribute Certificate Profile for Authorization
  • @@ -184,9 +147,38 @@
  • RFC 3436: Transport Layer Security over Stream Control Transmission Protocol
  • +
  • RFC 3447: + Public-Key Cryptography Standards (PKCS) #1: RSA + Cryptography Specifications Version 2.1
  • RFC 3657: Use of the Camellia Encryption Algorithm in Cryptographic Message Syntax (CMS)
  • +
  • RFC 3713: + A Description of the Camellia Encryption Algorithm
  • +
  • RFC 3820: + Internet X.509 Public Key Infrastructure (PKI) Proxy + Certificate Profile
  • +
  • RFC 4132: + Addition of Camellia Cipher Suites to Transport + Layer Security (TLS)
  • +
  • RFC 4162: + Addition of SEED Cipher Suites to Transport Layer + Security (TLS)
  • +
  • RFC 4269: + The SEED Encryption Algorithm
  • +
  • PKCS#11: + Standards for Cryptographic Tokens
  • +
  • RFC 4346: + The Transport Layer Security (TLS) Protocol Version 1.1
  • +
  • RFC 5208: + PKCS#8: Private-Key Information Syntax Specification Version 1.2
  • +
  • RFC 5246: + The Transport Layer Security (TLS) Protocol Version 1.2
  • +
  • RFC 6962: + Certificate Transparency
  • +
  • RFC 7292: + PKCS #12: Personal Information Exchange Syntax v1.1
  • RFC 7693: The BLAKE2 Cryptographic Hash and Message Authentication Code (MAC)
  • From builds at travis-ci.org Tue Apr 25 13:35:58 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 25 Apr 2017 13:35:58 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10545 (master - 65d6248) In-Reply-To: Message-ID: <58ff50daae9a6_43feb5e9ce2107174ce@2e58c0f0-eb9e-49c0-b82b-17b7682ef2d1.mail> Build Update for openssl/openssl ------------------------------------- Build: #10545 Status: Still Failing Duration: 26 minutes and 49 seconds Commit: 65d6248 (master) Author: Bernard Spil Message: openssl enc: Don't unbuffer stdin - unbuffer causes single-byte reads from stdin and poor performance Fixes #3281 CLA: trivial Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3299) View the changeset: https://github.com/openssl/openssl/compare/f7b3cb2ad0fa...65d62488b8c8 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/225596577 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From levitte at openssl.org Tue Apr 25 13:43:43 2017 From: levitte at openssl.org (Richard Levitte) Date: Tue, 25 Apr 2017 13:43:43 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493127823.314942.28596.nullmailer@dev.openssl.org> The branch master has been updated via 208d721a004026b128dc66300e32e65a9dc7df1d (commit) from 65d62488b8c808350f440d2276034f5223b391ad (commit) - Log ----------------------------------------------------------------- commit 208d721a004026b128dc66300e32e65a9dc7df1d Author: Richard Levitte Date: Wed Apr 19 10:34:54 2017 +0200 TAPify testutil With the perl test framework comes the output format TAP (Test Anything Protocol, see http://testanything.org/) with extra extension for subtests. This change extends that same output format to any test program using testutil. In this implementation, each test program is seen as a full test that can be used as a subtest. The perl framework passes on the subtest level to the test programs with the environment variable HARNESS_OSSL_LEVEL. Furthermore, and series of tests added with ADD_ALL_TESTS is regarded as another subtest level. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3296) ----------------------------------------------------------------------- Summary of changes: test/gmdifftest.c | 2 +- test/testlib/OpenSSL/Test.pm | 14 +++++++- test/testutil.h | 12 +++++-- test/testutil/driver.c | 78 ++++++++++++++++++++++++++++++++------------ test/testutil/tests.c | 2 ++ 5 files changed, 83 insertions(+), 25 deletions(-) diff --git a/test/gmdifftest.c b/test/gmdifftest.c index 1d508c0..6869300 100644 --- a/test/gmdifftest.c +++ b/test/gmdifftest.c @@ -60,5 +60,5 @@ void register_tests(void) if (sizeof(time_t) < 8) TEST_info("Skipping; time_t is less than 64-bits"); else - ADD_ALL_TESTS(test_gmtime, 1000000); + ADD_ALL_TESTS_NOSUBTEST(test_gmtime, 1000000); } diff --git a/test/testlib/OpenSSL/Test.pm b/test/testlib/OpenSSL/Test.pm index c4799e8..f8fcbe9 100644 --- a/test/testlib/OpenSSL/Test.pm +++ b/test/testlib/OpenSSL/Test.pm @@ -17,7 +17,7 @@ use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS); $VERSION = "0.8"; @ISA = qw(Exporter); @EXPORT = (@Test::More::EXPORT, qw(setup run indir cmd app fuzz test - perlapp perltest)); + perlapp perltest subtest)); @EXPORT_OK = (@Test::More::EXPORT_OK, qw(bldtop_dir bldtop_file srctop_dir srctop_file data_file @@ -65,6 +65,7 @@ use File::Spec::Functions qw/file_name_is_absolute curdir canonpath splitdir use File::Path 2.00 qw/rmtree mkpath/; use File::Basename; +my $level = 0; # The name of the test. This is set by setup() and is used in the other # functions to verify that setup() has been used. @@ -454,6 +455,8 @@ sub run { open STDERR, ">", devnull(); } + $ENV{HARNESS_OSSL_LEVEL} = $level + 1; + # The dance we do with $? is the same dance the Unix shells appear to # do. For example, a program that gets aborted (and therefore signals # SIGABRT = 6) will appear to exit with the code 134. We mimic this @@ -1153,4 +1156,13 @@ inspiration from Andy Polyakov Eappro at openssl.org. =cut +no warnings 'redefine'; +sub subtest { + $level++; + + Test::More::subtest @_; + + $level--; +}; + 1; diff --git a/test/testutil.h b/test/testutil.h index 5d96ddd..ecf9934 100644 --- a/test/testutil.h +++ b/test/testutil.h @@ -53,7 +53,12 @@ * Simple parameterized tests. Calls test_function(idx) for each 0 <= idx < num. */ # define ADD_ALL_TESTS(test_function, num) \ - add_all_tests(#test_function, test_function, num) + add_all_tests(#test_function, test_function, num, 1) +/* + * A variant of the same without TAP output. + */ +# define ADD_ALL_TESTS_NOSUBTEST(test_function, num) \ + add_all_tests(#test_function, test_function, num, 0) /*- * Test cases that share common setup should use the helper @@ -131,7 +136,8 @@ void setup_test(void); __owur int finish_test(int ret); void add_test(const char *test_case_name, int (*test_fn) ()); -void add_all_tests(const char *test_case_name, int (*test_fn)(int idx), int num); +void add_all_tests(const char *test_case_name, int (*test_fn)(int idx), int num, + int subtest); __owur int run_tests(const char *test_prog_name); /* @@ -369,3 +375,5 @@ int test_flush_stderr(void); extern BIO *bio_out; extern BIO *bio_err; + +int subtest_level(void); diff --git a/test/testutil/driver.c b/test/testutil/driver.c index e70fd21..4f6b511 100644 --- a/test/testutil/driver.c +++ b/test/testutil/driver.c @@ -23,6 +23,9 @@ typedef struct test_info { int (*test_fn) (); int (*param_test_fn)(int idx); int num; + + /* flags */ + int subtest:1; } TEST_INFO; static TEST_INFO all_tests[1024]; @@ -45,16 +48,24 @@ void add_test(const char *test_case_name, int (*test_fn) ()) } void add_all_tests(const char *test_case_name, int(*test_fn)(int idx), - int num) + int num, int subtest) { assert(num_tests != OSSL_NELEM(all_tests)); all_tests[num_tests].test_case_name = test_case_name; all_tests[num_tests].param_test_fn = test_fn; all_tests[num_tests].num = num; + all_tests[num_tests].subtest = subtest; ++num_tests; num_test_cases += num; } +static int level = 0; + +int subtest_level(void) +{ + return level; +} + #ifndef OPENSSL_NO_CRYPTO_MDEBUG static int should_report_leaks() { @@ -71,7 +82,6 @@ static int should_report_leaks() } #endif - static int err_cb(const char *str, size_t len, void *u) { return test_puts_stderr(str); @@ -79,8 +89,12 @@ static int err_cb(const char *str, size_t len, void *u) void setup_test() { + char *TAP_levels = getenv("HARNESS_OSSL_LEVEL"); + test_open_streams(); + level = TAP_levels != NULL ? 4 * atoi(TAP_levels) : 0; + #ifndef OPENSSL_NO_CRYPTO_MDEBUG if (should_report_leaks()) { CRYPTO_set_mem_debug(1); @@ -121,47 +135,69 @@ static void helper_printf_stdout(const char *fmt, ...) int run_tests(const char *test_prog_name) { int num_failed = 0; + char *verdict = NULL; int i, j; - helper_printf_stdout("%s: %d test case%s\n", test_prog_name, num_test_cases, - num_test_cases == 1 ? "" : "s"); + helper_printf_stdout("%*s%d..%d\n", level, "", 1, num_tests); test_flush_stdout(); for (i = 0; i != num_tests; ++i) { if (all_tests[i].num == -1) { int ret = all_tests[i].test_fn(); + verdict = "ok"; if (!ret) { - helper_printf_stdout("** %s failed **\n--------\n", - all_tests[i].test_case_name); - test_flush_stdout(); + verdict = "not ok"; ++num_failed; } + helper_printf_stdout("%*s%s %d - %s\n", level, "", verdict, i + 1, + all_tests[i].test_case_name); + test_flush_stdout(); finalize(ret); } else { + int num_failed_inner = 0; + + level += 4; + if (all_tests[i].subtest) { + helper_printf_stdout("%*s# Subtest: %s\n", level, "", + all_tests[i].test_case_name); + helper_printf_stdout("%*s%d..%d\n", level, "", 1, + all_tests[i].num); + test_flush_stdout(); + } + for (j = 0; j < all_tests[i].num; j++) { int ret = all_tests[i].param_test_fn(j); - if (!ret) { - helper_printf_stdout("** %s failed test %d\n--------\n", - all_tests[i].test_case_name, j); + if (!ret) + ++num_failed_inner; + + finalize(ret); + + if (all_tests[i].subtest) { + verdict = "ok"; + if (!ret) { + verdict = "not ok"; + ++num_failed_inner; + } + helper_printf_stdout("%*s%s %d\n", level, "", verdict, j + 1); test_flush_stdout(); - ++num_failed; } - finalize(ret); } + + level -= 4; + verdict = "ok"; + if (num_failed_inner) { + verdict = "not ok"; + ++num_failed; + } + helper_printf_stdout("%*s%s %d - %s\n", level, "", verdict, i + 1, + all_tests[i].test_case_name); + test_flush_stdout(); } } - - if (num_failed != 0) { - helper_printf_stdout("%s: %d test%s failed (out of %d)\n", - test_prog_name, num_failed, - num_failed != 1 ? "s" : "", num_test_cases); - test_flush_stdout(); + if (num_failed != 0) return EXIT_FAILURE; - } - helper_printf_stdout(" All tests passed.\n"); - test_flush_stdout(); return EXIT_SUCCESS; } diff --git a/test/testutil/tests.c b/test/testutil/tests.c index f00ec6c..67b20a5 100644 --- a/test/testutil/tests.c +++ b/test/testutil/tests.c @@ -43,6 +43,7 @@ static void test_fail_message(const char *prefix, const char *file, int line, const char *type, const char *fmt, ...) PRINTF_FORMAT(5, 6); +int subtest_level(void); static void helper_printf_stderr(const char *fmt, ...) { @@ -56,6 +57,7 @@ static void helper_printf_stderr(const char *fmt, ...) static void test_fail_message_va(const char *prefix, const char *file, int line, const char *type, const char *fmt, va_list ap) { + helper_printf_stderr("%*s# ", subtest_level(), ""); test_puts_stderr(prefix != NULL ? prefix : "ERROR"); test_puts_stderr(":"); if (type) From levitte at openssl.org Tue Apr 25 13:45:32 2017 From: levitte at openssl.org (Richard Levitte) Date: Tue, 25 Apr 2017 13:45:32 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493127932.158197.30715.nullmailer@dev.openssl.org> The branch master has been updated via d88ab353d3f94031d56d2d6451695eac305c9738 (commit) via a5eef31e257bc6267e0973edda18ee2f180ed081 (commit) from 208d721a004026b128dc66300e32e65a9dc7df1d (commit) - Log ----------------------------------------------------------------- commit d88ab353d3f94031d56d2d6451695eac305c9738 Author: Richard Levitte Date: Tue Apr 25 15:35:41 2017 +0200 Correct some badly formated preprocessor lines Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3304) commit a5eef31e257bc6267e0973edda18ee2f180ed081 Author: Richard Levitte Date: Tue Apr 25 15:35:09 2017 +0200 Add guards around one of use of IPPROTO_SCTP where it was missing Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3304) ----------------------------------------------------------------------- Summary of changes: apps/s_server.c | 12 +++++++----- crypto/srp/srp_vfy.c | 4 ++-- test/dtlsv1listentest.c | 2 +- 3 files changed, 10 insertions(+), 8 deletions(-) diff --git a/apps/s_server.c b/apps/s_server.c index 7fb7772..d842fb8 100644 --- a/apps/s_server.c +++ b/apps/s_server.c @@ -2125,11 +2125,11 @@ static int sv_body(int s, int stype, int prot, unsigned char *context) struct timeval *timeoutp; #endif #ifndef OPENSSL_NO_DTLS - #ifndef OPENSSL_NO_SCTP +# ifndef OPENSSL_NO_SCTP int isdtls = (stype == SOCK_DGRAM || prot == IPPROTO_SCTP); - #else +# else int isdtls = (stype == SOCK_DGRAM); - #endif +# endif #endif buf = app_malloc(bufsize, "server buffer"); @@ -2163,11 +2163,11 @@ static int sv_body(int s, int stype, int prot, unsigned char *context) } #ifndef OPENSSL_NO_DTLS if (isdtls) { -#ifndef OPENSSL_NO_SCTP +# ifndef OPENSSL_NO_SCTP if (prot == IPPROTO_SCTP) sbio = BIO_new_dgram_sctp(s, BIO_NOCLOSE); else -#endif +# endif sbio = BIO_new_dgram(s, BIO_NOCLOSE); if (enable_timeouts) { @@ -2199,10 +2199,12 @@ static int sv_body(int s, int stype, int prot, unsigned char *context) /* want to do MTU discovery */ BIO_ctrl(sbio, BIO_CTRL_DGRAM_MTU_DISCOVER, 0, NULL); +# ifndef OPENSSL_NO_SCTP if (prot != IPPROTO_SCTP) { /* Turn on cookie exchange. Not necessary for SCTP */ SSL_set_options(con, SSL_OP_COOKIE_EXCHANGE); } +# endif } else #endif sbio = BIO_new_socket(s, BIO_NOCLOSE); diff --git a/crypto/srp/srp_vfy.c b/crypto/srp/srp_vfy.c index 29b7afc..20e4258 100644 --- a/crypto/srp/srp_vfy.c +++ b/crypto/srp/srp_vfy.c @@ -474,7 +474,7 @@ static SRP_user_pwd *find_user(SRP_VBASE *vb, char *username) return NULL; } - #if OPENSSL_API_COMPAT < 0x10100000L +# if OPENSSL_API_COMPAT < 0x10100000L /* * DEPRECATED: use SRP_VBASE_get1_by_user instead. * This method ignores the configured seed and fails for an unknown user. @@ -485,7 +485,7 @@ SRP_user_pwd *SRP_VBASE_get_by_user(SRP_VBASE *vb, char *username) { return find_user(vb, username); } -#endif +# endif /* * Ownership of the returned pointer is released to the caller. diff --git a/test/dtlsv1listentest.c b/test/dtlsv1listentest.c index 91d78e1..dfbc7ae 100644 --- a/test/dtlsv1listentest.c +++ b/test/dtlsv1listentest.c @@ -13,7 +13,7 @@ #include #include #ifndef OPENSSL_NO_ENGINE - #include +# include #endif #include "e_os.h" From matt at openssl.org Tue Apr 25 13:48:14 2017 From: matt at openssl.org (Matt Caswell) Date: Tue, 25 Apr 2017 13:48:14 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493128094.647200.898.nullmailer@dev.openssl.org> The branch master has been updated via 19044d3c22ffcb711e62db11634476917a0a58d9 (commit) from d88ab353d3f94031d56d2d6451695eac305c9738 (commit) - Log ----------------------------------------------------------------- commit 19044d3c22ffcb711e62db11634476917a0a58d9 Author: Matt Caswell Date: Tue Apr 25 14:37:25 2017 +0100 Add documentation for the -sctp option in command line apps Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3305) ----------------------------------------------------------------------- Summary of changes: doc/man1/s_client.pod | 7 +++++++ doc/man1/s_server.pod | 7 +++++++ 2 files changed, 14 insertions(+) diff --git a/doc/man1/s_client.pod b/doc/man1/s_client.pod index 272d997..cc2ad4f 100644 --- a/doc/man1/s_client.pod +++ b/doc/man1/s_client.pod @@ -82,6 +82,7 @@ B B [B<-dtls>] [B<-dtls1>] [B<-dtls1_2>] +[B<-sctp>] [B<-fallback_scsv>] [B<-async>] [B<-split_send_frag>] @@ -387,6 +388,12 @@ With B<-dtls>, B will negotiate any supported DTLS protocol version, whilst B<-dtls1> and B<-dtls1_2> will only support DTLS1.0 and DTLS1.2 respectively. +=item B<-sctp> + +Use SCTP for the transport protocol instead of UDP in DTLS. Must be used in +conjunction with B<-dtls>, B<-dtls1> or B<-dtls1_2>. This option is only +available where OpenSSL has support for SCTP enabled. + =item B<-fallback_scsv> Send TLS_FALLBACK_SCSV in the ClientHello. diff --git a/doc/man1/s_server.pod b/doc/man1/s_server.pod index 838ce2d..d2fbb84 100644 --- a/doc/man1/s_server.pod +++ b/doc/man1/s_server.pod @@ -83,6 +83,7 @@ B B [B<-dtls>] [B<-dtls1>] [B<-dtls1_2>] +[B<-sctp>] [B<-listen>] [B<-async>] [B<-split_send_frag>] @@ -362,6 +363,12 @@ Any without a cookie will be responded to with a HelloVerifyRequest. If a ClientHello with a cookie is received then B will connect to that peer and complete the handshake. +=item B<-sctp> + +Use SCTP for the transport protocol instead of UDP in DTLS. Must be used in +conjunction with B<-dtls>, B<-dtls1> or B<-dtls1_2>. This option is only +available where OpenSSL has support for SCTP enabled. + =item B<-async> Switch on asynchronous mode. Cryptographic operations will be performed From no-reply at appveyor.com Tue Apr 25 14:15:29 2017 From: no-reply at appveyor.com (AppVeyor) Date: Tue, 25 Apr 2017 14:15:29 +0000 Subject: [openssl-commits] Build completed: openssl 1.0.25 Message-ID: <20170425141529.92160.31054.B6B573ED@appveyor.com> An HTML attachment was scrubbed... URL: From rsalz at openssl.org Tue Apr 25 14:20:00 2017 From: rsalz at openssl.org (Rich Salz) Date: Tue, 25 Apr 2017 14:20:00 +0000 Subject: [openssl-commits] [web] master update Message-ID: <1493130000.310485.24678.nullmailer@dev.openssl.org> The branch master has been updated via 4279cd7840111ce79ba0ad5379e49821d8e89fa7 (commit) from 9423b5155c05652034b72222b2577b495db1e087 (commit) - Log ----------------------------------------------------------------- commit 4279cd7840111ce79ba0ad5379e49821d8e89fa7 Author: Rich Salz Date: Tue Apr 25 10:19:57 2017 -0400 Wording tewaks ----------------------------------------------------------------------- Summary of changes: docs/index.html | 2 +- docs/sidebar.shtml | 2 +- docs/standards.html | 2 -- 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/docs/index.html b/docs/index.html index f3f1b66..7fcbc9a 100644 --- a/docs/index.html +++ b/docs/index.html @@ -14,7 +14,7 @@

    The frequently-asked questions (FAQ) is available. So is an incomplete list of - what standards (RFC's) are implemented. + what standards (RFC's) are relevant.

    Information about the first-ever open source diff --git a/docs/sidebar.shtml b/docs/sidebar.shtml index ebf08d7..e017bad 100644 --- a/docs/sidebar.shtml +++ b/docs/sidebar.shtml @@ -7,7 +7,7 @@ FAQ

  • - Implemented standards + Relevant standards
  • Manpages diff --git a/docs/standards.html b/docs/standards.html index 3b92a6a..c9e612e 100644 --- a/docs/standards.html +++ b/docs/standards.html @@ -19,8 +19,6 @@ part of any specification. And also that some algorithms are disabled by default.

    -

    Implemented

    -
    • RFC 1319: The MD2 Message-Digest Algorithm
    • From no-reply at appveyor.com Tue Apr 25 14:46:27 2017 From: no-reply at appveyor.com (AppVeyor) Date: Tue, 25 Apr 2017 14:46:27 +0000 Subject: [openssl-commits] Build failed: openssl master.9860 Message-ID: <20170425144624.64344.76850.FC29331C@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Tue Apr 25 15:01:03 2017 From: no-reply at appveyor.com (AppVeyor) Date: Tue, 25 Apr 2017 15:01:03 +0000 Subject: [openssl-commits] Build completed: openssl master.9861 Message-ID: <20170425150059.129634.7555.7BBA4882@appveyor.com> An HTML attachment was scrubbed... URL: From builds at travis-ci.org Tue Apr 25 15:03:03 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 25 Apr 2017 15:03:03 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10557 (master - 208d721) In-Reply-To: Message-ID: <58ff65279fa4f_43feeab3ddd10591911@05888ba7-3e72-4d5c-8ec2-6487351eaafa.mail> Build Update for openssl/openssl ------------------------------------- Build: #10557 Status: Still Failing Duration: 23 minutes and 15 seconds Commit: 208d721 (master) Author: Richard Levitte Message: TAPify testutil With the perl test framework comes the output format TAP (Test Anything Protocol, see http://testanything.org/) with extra extension for subtests. This change extends that same output format to any test program using testutil. In this implementation, each test program is seen as a full test that can be used as a subtest. The perl framework passes on the subtest level to the test programs with the environment variable HARNESS_OSSL_LEVEL. Furthermore, and series of tests added with ADD_ALL_TESTS is regarded as another subtest level. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3296) View the changeset: https://github.com/openssl/openssl/compare/65d62488b8c8...208d721a0040 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/225611458 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Tue Apr 25 15:11:29 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 25 Apr 2017 15:11:29 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10558 (master - d88ab35) In-Reply-To: Message-ID: <58ff672185cd8_43febae2bf9ec5338cd@0adc31dc-0ade-4aa8-9013-f57e5035dd60.mail> Build Update for openssl/openssl ------------------------------------- Build: #10558 Status: Still Failing Duration: 25 minutes and 7 seconds Commit: d88ab35 (master) Author: Richard Levitte Message: Correct some badly formated preprocessor lines Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3304) View the changeset: https://github.com/openssl/openssl/compare/208d721a0040...d88ab353d3f9 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/225612114 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Tue Apr 25 15:13:22 2017 From: no-reply at appveyor.com (AppVeyor) Date: Tue, 25 Apr 2017 15:13:22 +0000 Subject: [openssl-commits] Build failed: openssl master.9863 Message-ID: <20170425151254.128697.46658.4E26C6F3@appveyor.com> An HTML attachment was scrubbed... URL: From builds at travis-ci.org Tue Apr 25 15:23:18 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 25 Apr 2017 15:23:18 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10559 (master - 19044d3) In-Reply-To: Message-ID: <58ff6a0edbe93_43feb5e9c95bc9260a@2e58c0f0-eb9e-49c0-b82b-17b7682ef2d1.mail> Build Update for openssl/openssl ------------------------------------- Build: #10559 Status: Still Failing Duration: 25 minutes and 6 seconds Commit: 19044d3 (master) Author: Matt Caswell Message: Add documentation for the -sctp option in command line apps Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3305) View the changeset: https://github.com/openssl/openssl/compare/d88ab353d3f9...19044d3c22ff View the full build log and details: https://travis-ci.org/openssl/openssl/builds/225613309 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Tue Apr 25 15:27:45 2017 From: no-reply at appveyor.com (AppVeyor) Date: Tue, 25 Apr 2017 15:27:45 +0000 Subject: [openssl-commits] Build completed: openssl master.9864 Message-ID: <20170425152726.127735.9283F0EC7068909E@appveyor.com> An HTML attachment was scrubbed... URL: From levitte at openssl.org Tue Apr 25 16:29:55 2017 From: levitte at openssl.org (Richard Levitte) Date: Tue, 25 Apr 2017 16:29:55 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493137795.614676.21737.nullmailer@dev.openssl.org> The branch master has been updated via 645c694d85c8f48c74e7db8730ead874656c781e (commit) from 19044d3c22ffcb711e62db11634476917a0a58d9 (commit) - Log ----------------------------------------------------------------- commit 645c694d85c8f48c74e7db8730ead874656c781e Author: Richard Levitte Date: Tue Apr 25 18:29:04 2017 +0200 Ignore all .a files, not just the top ones Reviewed-by: Rich Salz ----------------------------------------------------------------------- Summary of changes: .gitignore | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index bf4a9de..e613e4d 100644 --- a/.gitignore +++ b/.gitignore @@ -5,7 +5,6 @@ /Makefile.orig /MINFO /TABLE -/*.a /*.pc /rehash.time /inc.* @@ -148,7 +147,8 @@ Makefile # Certificate symbolic links *.0 -# All kinds of executables +# All kinds of libraries and executables +*.a *.so *.so.* *.dylib From rsalz at openssl.org Tue Apr 25 16:45:22 2017 From: rsalz at openssl.org (Rich Salz) Date: Tue, 25 Apr 2017 16:45:22 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493138722.641596.1025.nullmailer@dev.openssl.org> The branch master has been updated via b5c4209be9162d4ceafb9aef833ca94ffa1cc5c9 (commit) from 645c694d85c8f48c74e7db8730ead874656c781e (commit) - Log ----------------------------------------------------------------- commit b5c4209be9162d4ceafb9aef833ca94ffa1cc5c9 Author: Dmitry Belyavskiy Date: Tue Apr 25 12:25:42 2017 -0400 Switch command-line utils to new nameopt API. The CA names should be printed according to user's decision print_name instead of set of BIO_printf dump_cert_text instead of set of BIO_printf Testing cyrillic output of X509_CRL_print_ex Write and use X509_CRL_print_ex Reduce usage of X509_NAME_online Using X509_REQ_print_ex instead of X509_REQ_print Fix nameopt processing. Make dump_cert_text nameopt-friendly Move nameopt getter/setter to apps/apps.c Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3262) ----------------------------------------------------------------------- Summary of changes: apps/apps.c | 30 ++++++++++++++++++++---------- apps/apps.h | 2 ++ apps/ca.c | 17 +++++++---------- apps/crl.c | 12 +++--------- apps/pkcs7.c | 2 +- apps/req.c | 21 ++++++++------------- apps/s_apps.h | 2 -- apps/s_cb.c | 16 +++++----------- apps/s_client.c | 18 +++++++----------- apps/s_server.c | 5 +---- apps/verify.c | 12 +++--------- apps/x509.c | 32 ++++++++++++-------------------- crypto/x509/t_crl.c | 12 ++++++++---- include/openssl/x509.h | 1 + test/certs/cyrillic_crl.pem | 13 +++++++++++++ test/certs/cyrillic_crl.utf8 | 39 +++++++++++++++++++++++++++++++++++++++ test/recipes/25-test_crl.t | 12 +++++++++++- util/libcrypto.num | 1 + 18 files changed, 142 insertions(+), 105 deletions(-) create mode 100644 test/certs/cyrillic_crl.pem create mode 100644 test/certs/cyrillic_crl.utf8 diff --git a/apps/apps.c b/apps/apps.c index 216bc79..c66b89c 100644 --- a/apps/apps.c +++ b/apps/apps.c @@ -149,20 +149,30 @@ int ctx_set_ctlog_list_file(SSL_CTX *ctx, const char *path) #endif -int dump_cert_text(BIO *out, X509 *x) +static unsigned long nmflag = 0; +static char nmflag_set = 0; + +int set_nameopt(const char *arg) { - char *p; + int ret = set_name_ex(&nmflag, arg); + + if (ret) + nmflag_set = 1; + + return ret; +} - p = X509_NAME_oneline(X509_get_subject_name(x), NULL, 0); - BIO_puts(out, "subject="); - BIO_puts(out, p); - OPENSSL_free(p); +unsigned long get_nameopt(void) +{ + return (nmflag_set) ? nmflag : XN_FLAG_ONELINE; +} - p = X509_NAME_oneline(X509_get_issuer_name(x), NULL, 0); - BIO_puts(out, "\nissuer="); - BIO_puts(out, p); +int dump_cert_text(BIO *out, X509 *x) +{ + print_name(out, "subject=", X509_get_subject_name(x), get_nameopt()); + BIO_puts(out, "\n"); + print_name(out, "issuer=", X509_get_issuer_name(x), get_nameopt()); BIO_puts(out, "\n"); - OPENSSL_free(p); return 0; } diff --git a/apps/apps.h b/apps/apps.h index e7c860f..a8de2dc 100644 --- a/apps/apps.h +++ b/apps/apps.h @@ -400,6 +400,8 @@ void print_name(BIO *out, const char *title, X509_NAME *nm, void print_bignum_var(BIO *, const BIGNUM *, const char*, int, unsigned char *); void print_array(BIO *, const char *, int, const unsigned char *); +int set_nameopt(const char *arg); +unsigned long get_nameopt(void); int set_cert_ex(unsigned long *flags, const char *arg); int set_name_ex(unsigned long *flags, const char *arg); int set_ext_copy(int *copy_type, const char *arg); diff --git a/apps/ca.c b/apps/ca.c index 6a615ed..102ff87 100644 --- a/apps/ca.c +++ b/apps/ca.c @@ -258,7 +258,7 @@ int ca_main(int argc, char **argv) int ret = 1, email_dn = 1, req = 0, verbose = 0, gencrl = 0, dorevoke = 0; int i, j, selfsign = 0; long crldays = 0, crlhours = 0, crlsec = 0, days = 0; - unsigned long chtype = MBSTRING_ASC, nameopt = 0, certopt = 0; + unsigned long chtype = MBSTRING_ASC, certopt = 0; X509 *x509 = NULL, *x509p = NULL, *x = NULL; REVINFO_TYPE rev_type = REV_NONE; X509_REVOKED *r = NULL; @@ -569,14 +569,11 @@ end_of_options: f = NCONF_get_string(conf, section, ENV_NAMEOPT); if (f) { - if (!set_name_ex(&nameopt, f)) { + if (!set_nameopt(f)) { BIO_printf(bio_err, "Invalid name options: \"%s\"\n", f); goto end; } default_op = 0; - } else { - nameopt = XN_FLAG_ONELINE; - ERR_clear_error(); } f = NCONF_get_string(conf, section, ENV_CERTOPT); @@ -866,7 +863,7 @@ end_of_options: j = certify_spkac(&x, spkac_file, pkey, x509, dgst, sigopts, attribs, db, serial, subj, chtype, multirdn, email_dn, startdate, enddate, days, extensions, - conf, verbose, certopt, nameopt, default_op, + conf, verbose, certopt, get_nameopt(), default_op, ext_copy); if (j < 0) goto end; @@ -891,7 +888,7 @@ end_of_options: attribs, db, serial, subj, chtype, multirdn, email_dn, startdate, enddate, days, batch, extensions, - conf, verbose, certopt, nameopt, default_op, + conf, verbose, certopt, get_nameopt(), default_op, ext_copy); if (j < 0) goto end; @@ -911,7 +908,7 @@ end_of_options: j = certify(&x, infile, pkey, x509p, dgst, sigopts, attribs, db, serial, subj, chtype, multirdn, email_dn, startdate, enddate, days, batch, extensions, conf, verbose, - certopt, nameopt, default_op, ext_copy, selfsign); + certopt, get_nameopt(), default_op, ext_copy, selfsign); if (j < 0) goto end; if (j > 0) { @@ -930,7 +927,7 @@ end_of_options: j = certify(&x, argv[i], pkey, x509p, dgst, sigopts, attribs, db, serial, subj, chtype, multirdn, email_dn, startdate, enddate, days, batch, extensions, conf, verbose, - certopt, nameopt, default_op, ext_copy, selfsign); + certopt, get_nameopt(), default_op, ext_copy, selfsign); if (j < 0) goto end; if (j > 0) { @@ -1272,7 +1269,7 @@ static int certify(X509 **xret, const char *infile, EVP_PKEY *pkey, X509 *x509, goto end; } if (verbose) - X509_REQ_print(bio_err, req); + X509_REQ_print_ex(bio_err, req, nameopt, X509_FLAG_COMPAT); BIO_printf(bio_err, "Check that the request matches the signature\n"); diff --git a/apps/crl.c b/apps/crl.c index 3847faa..ce589bb 100644 --- a/apps/crl.c +++ b/apps/crl.c @@ -69,8 +69,6 @@ int crl_main(int argc, char **argv) X509_OBJECT *xobj = NULL; EVP_PKEY *pkey; const EVP_MD *digest = EVP_sha1(); - unsigned long nmflag = 0; - char nmflag_set = 0; char *infile = NULL, *outfile = NULL, *crldiff = NULL, *keyfile = NULL; const char *CAfile = NULL, *CApath = NULL, *prog; OPTION_CHOICE o; @@ -169,8 +167,7 @@ int crl_main(int argc, char **argv) badsig = 1; break; case OPT_NAMEOPT: - nmflag_set = 1; - if (!set_name_ex(&nmflag, opt_arg())) + if (!set_nameopt(opt_arg())) goto opthelp; break; case OPT_MD: @@ -182,9 +179,6 @@ int crl_main(int argc, char **argv) if (argc != 0) goto opthelp; - if (!nmflag_set) - nmflag = XN_FLAG_ONELINE; - x = load_crl(infile, informat); if (x == NULL) goto end; @@ -260,7 +254,7 @@ int crl_main(int argc, char **argv) for (i = 1; i <= num; i++) { if (issuer == i) { print_name(bio_out, "issuer=", X509_CRL_get_issuer(x), - nmflag); + get_nameopt()); } if (crlnumber == i) { ASN1_INTEGER *crlnum; @@ -319,7 +313,7 @@ int crl_main(int argc, char **argv) goto end; if (text) - X509_CRL_print(out, x); + X509_CRL_print_ex(out, x, get_nameopt()); if (noout) { ret = 0; diff --git a/apps/pkcs7.c b/apps/pkcs7.c index 2268108..45e9c7d 100644 --- a/apps/pkcs7.c +++ b/apps/pkcs7.c @@ -163,7 +163,7 @@ int pkcs7_main(int argc, char **argv) for (i = 0; i < sk_X509_CRL_num(crls); i++) { crl = sk_X509_CRL_value(crls, i); - X509_CRL_print(out, crl); + X509_CRL_print_ex(out, crl, get_nameopt()); if (!noout) PEM_write_bio_X509_CRL(out, crl); diff --git a/apps/req.c b/apps/req.c index ddb0fdc..f1dba66 100644 --- a/apps/req.c +++ b/apps/req.c @@ -163,8 +163,7 @@ int req_main(int argc, char **argv) int modulus = 0, multirdn = 0, verify = 0, noout = 0, text = 0; int nodes = 0, newhdr = 0, subject = 0, pubkey = 0, precert = 0; long newkey = -1; - unsigned long chtype = MBSTRING_ASC, nmflag = 0, reqflag = 0; - char nmflag_set = 0; + unsigned long chtype = MBSTRING_ASC, reqflag = 0; #ifndef OPENSSL_NO_DES cipher = EVP_des_ede3_cbc(); @@ -277,8 +276,7 @@ int req_main(int argc, char **argv) chtype = MBSTRING_UTF8; break; case OPT_NAMEOPT: - nmflag_set = 1; - if (!set_name_ex(&nmflag, opt_arg())) + if (!set_nameopt(opt_arg())) goto opthelp; break; case OPT_REQOPT: @@ -333,9 +331,6 @@ int req_main(int argc, char **argv) if (argc != 0) goto opthelp; - if (!nmflag_set) - nmflag = XN_FLAG_ONELINE; - /* TODO: simplify this as pkey is still always NULL here */ private = newreq && (pkey == NULL) ? 1 : 0; @@ -695,7 +690,7 @@ int req_main(int argc, char **argv) if (verbose) { BIO_printf(bio_err, "Modifying Request's Subject\n"); print_name(bio_err, "old subject=", - X509_REQ_get_subject_name(req), nmflag); + X509_REQ_get_subject_name(req), get_nameopt()); } if (build_subject(req, subj, chtype, multirdn) == 0) { @@ -706,7 +701,7 @@ int req_main(int argc, char **argv) if (verbose) { print_name(bio_err, "new subject=", - X509_REQ_get_subject_name(req), nmflag); + X509_REQ_get_subject_name(req), get_nameopt()); } } @@ -755,18 +750,18 @@ int req_main(int argc, char **argv) if (text) { if (x509) - X509_print_ex(out, x509ss, nmflag, reqflag); + X509_print_ex(out, x509ss, get_nameopt(), reqflag); else - X509_REQ_print_ex(out, req, nmflag, reqflag); + X509_REQ_print_ex(out, req, get_nameopt(), reqflag); } if (subject) { if (x509) print_name(out, "subject=", X509_get_subject_name(x509ss), - nmflag); + get_nameopt()); else print_name(out, "subject=", X509_REQ_get_subject_name(req), - nmflag); + get_nameopt()); } if (modulus) { diff --git a/apps/s_apps.h b/apps/s_apps.h index 38c6b67..07b5a7a 100644 --- a/apps/s_apps.h +++ b/apps/s_apps.h @@ -44,8 +44,6 @@ int should_retry(int i); long bio_dump_callback(BIO *bio, int cmd, const char *argp, int argi, long argl, long ret); -int set_nameopt(const char *arg); - #ifdef HEADER_SSL_H void apps_ssl_info_callback(const SSL *s, int where, int ret); void msg_cb(int write_p, int version, int content_type, const void *buf, diff --git a/apps/s_cb.c b/apps/s_cb.c index 1b68164..edbc2b8 100644 --- a/apps/s_cb.c +++ b/apps/s_cb.c @@ -33,12 +33,6 @@ static unsigned char cookie_secret[COOKIE_SECRET_LENGTH]; static int cookie_initialized = 0; #endif static BIO *bio_keylog = NULL; -static unsigned long nmflag = XN_FLAG_ONELINE; - -int set_nameopt(const char *arg) -{ - return set_name_ex(&nmflag, arg); -} static const char *lookup(int val, const STRINT_PAIR* list, const char* def) { @@ -62,7 +56,7 @@ int verify_callback(int ok, X509_STORE_CTX *ctx) if (err_cert) { X509_NAME_print_ex(bio_err, X509_get_subject_name(err_cert), - 0, nmflag); + 0, get_nameopt()); BIO_puts(bio_err, "\n"); } else BIO_puts(bio_err, "\n"); @@ -83,7 +77,7 @@ int verify_callback(int ok, X509_STORE_CTX *ctx) case X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT: BIO_puts(bio_err, "issuer= "); X509_NAME_print_ex(bio_err, X509_get_issuer_name(err_cert), - 0, nmflag); + 0, get_nameopt()); BIO_puts(bio_err, "\n"); break; case X509_V_ERR_CERT_NOT_YET_VALID: @@ -836,7 +830,7 @@ static int set_cert_cb(SSL *ssl, void *arg) rv = SSL_check_chain(ssl, exc->cert, exc->key, exc->chain); BIO_printf(bio_err, "Checking cert chain %d:\nSubject: ", i); X509_NAME_print_ex(bio_err, X509_get_subject_name(exc->cert), 0, - nmflag); + get_nameopt()); BIO_puts(bio_err, "\n"); print_chain_flags(ssl, rv); if (rv & CERT_PKEY_VALID) { @@ -1125,7 +1119,7 @@ void print_ssl_summary(SSL *s) BIO_puts(bio_err, "Peer certificate: "); X509_NAME_print_ex(bio_err, X509_get_subject_name(peer), - 0, nmflag); + 0, get_nameopt()); BIO_puts(bio_err, "\n"); if (SSL_get_peer_signature_nid(s, &nid)) BIO_printf(bio_err, "Hash used: %s\n", OBJ_nid2sn(nid)); @@ -1440,7 +1434,7 @@ void print_ca_names(BIO *bio, SSL *s) BIO_printf(bio, "---\nAcceptable %s certificate CA names\n",cs); for (i = 0; i < sk_X509_NAME_num(sk); i++) { - X509_NAME_print_ex(bio, sk_X509_NAME_value(sk, i), 0, XN_FLAG_ONELINE); + X509_NAME_print_ex(bio, sk_X509_NAME_value(sk, i), 0, get_nameopt()); BIO_write(bio, "\n", 1); } } diff --git a/apps/s_client.c b/apps/s_client.c index 52b99ce..efdc8e3 100644 --- a/apps/s_client.c +++ b/apps/s_client.c @@ -2849,7 +2849,6 @@ int s_client_main(int argc, char **argv) static void print_stuff(BIO *bio, SSL *s, int full) { X509 *peer = NULL; - char buf[BUFSIZ]; STACK_OF(X509) *sk; const SSL_CIPHER *c; int i; @@ -2870,12 +2869,12 @@ static void print_stuff(BIO *bio, SSL *s, int full) BIO_printf(bio, "---\nCertificate chain\n"); for (i = 0; i < sk_X509_num(sk); i++) { - X509_NAME_oneline(X509_get_subject_name(sk_X509_value(sk, i)), - buf, sizeof buf); - BIO_printf(bio, "%2d s:%s\n", i, buf); - X509_NAME_oneline(X509_get_issuer_name(sk_X509_value(sk, i)), - buf, sizeof buf); - BIO_printf(bio, " i:%s\n", buf); + BIO_printf(bio, "%2d s:", i); + X509_NAME_print_ex(bio, X509_get_subject_name(sk_X509_value(sk, i)), 0, get_nameopt()); + BIO_puts(bio, "\n"); + BIO_printf(bio, " i:"); + X509_NAME_print_ex(bio, X509_get_issuer_name(sk_X509_value(sk, i)), 0, get_nameopt()); + BIO_puts(bio, "\n"); if (c_showcerts) PEM_write_bio_X509(bio, sk_X509_value(sk, i)); } @@ -2889,10 +2888,7 @@ static void print_stuff(BIO *bio, SSL *s, int full) /* Redundant if we showed the whole chain */ if (!(c_showcerts && got_a_chain)) PEM_write_bio_X509(bio, peer); - X509_NAME_oneline(X509_get_subject_name(peer), buf, sizeof buf); - BIO_printf(bio, "subject=%s\n", buf); - X509_NAME_oneline(X509_get_issuer_name(peer), buf, sizeof buf); - BIO_printf(bio, "issuer=%s\n", buf); + dump_cert_text(bio, peer); } else { BIO_printf(bio, "no peer certificate available\n"); } diff --git a/apps/s_server.c b/apps/s_server.c index d842fb8..4631663 100644 --- a/apps/s_server.c +++ b/apps/s_server.c @@ -2728,10 +2728,7 @@ static void print_connection_info(SSL *con) if (peer != NULL) { BIO_printf(bio_s_out, "Client certificate\n"); PEM_write_bio_X509(bio_s_out, peer); - X509_NAME_oneline(X509_get_subject_name(peer), buf, sizeof buf); - BIO_printf(bio_s_out, "subject=%s\n", buf); - X509_NAME_oneline(X509_get_issuer_name(peer), buf, sizeof buf); - BIO_printf(bio_s_out, "issuer=%s\n", buf); + dump_cert_text(bio_s_out, peer); X509_free(peer); peer = NULL; } diff --git a/apps/verify.c b/apps/verify.c index a4eb465..c31695c 100644 --- a/apps/verify.c +++ b/apps/verify.c @@ -22,7 +22,6 @@ static int check(X509_STORE *ctx, const char *file, STACK_OF(X509) *uchain, STACK_OF(X509) *tchain, STACK_OF(X509_CRL) *crls, int show_chain); static int v_verbose = 0, vflags = 0; -static unsigned long nmflag = 0; typedef enum OPTION_choice { OPT_ERR = -1, OPT_EOF = 0, OPT_HELP, @@ -70,7 +69,6 @@ int verify_main(int argc, char **argv) const char *prog, *CApath = NULL, *CAfile = NULL; int noCApath = 0, noCAfile = 0; int vpmtouched = 0, crl_download = 0, show_chain = 0, i = 0, ret = 1; - char nmflag_set = 0; OPTION_CHOICE o; if ((vpm = X509_VERIFY_PARAM_new()) == NULL) @@ -153,8 +151,7 @@ int verify_main(int argc, char **argv) show_chain = 1; break; case OPT_NAMEOPT: - nmflag_set = 1; - if (!set_name_ex(&nmflag, opt_arg())) + if (!set_nameopt(opt_arg())) goto end; break; case OPT_VERBOSE: @@ -171,9 +168,6 @@ int verify_main(int argc, char **argv) goto end; } - if (!nmflag_set) - nmflag = XN_FLAG_ONELINE; - if ((store = setup_verify(CAfile, CApath, noCAfile, noCApath)) == NULL) goto end; X509_STORE_set_verify_cb(store, cb); @@ -253,7 +247,7 @@ static int check(X509_STORE *ctx, const char *file, printf("depth=%d: ", j); X509_NAME_print_ex_fp(stdout, X509_get_subject_name(cert), - 0, nmflag); + 0, get_nameopt()); if (j < num_untrusted) printf(" (untrusted)"); printf("\n"); @@ -282,7 +276,7 @@ static int cb(int ok, X509_STORE_CTX *ctx) if (current_cert) { X509_NAME_print_ex(bio_err, X509_get_subject_name(current_cert), - 0, nmflag); + 0, get_nameopt()); BIO_printf(bio_err, "\n"); } BIO_printf(bio_err, "%serror %d at %d depth lookup: %s\n", diff --git a/apps/x509.c b/apps/x509.c index 182cfb0..41d6e4a 100644 --- a/apps/x509.c +++ b/apps/x509.c @@ -160,7 +160,7 @@ int x509_main(int argc, char **argv) char *checkhost = NULL, *checkemail = NULL, *checkip = NULL; char *extsect = NULL, *extfile = NULL, *passin = NULL, *passinarg = NULL; char *infile = NULL, *outfile = NULL, *keyfile = NULL, *CAfile = NULL; - char buf[256], *prog; + char *prog; int x509req = 0, days = DEF_DAYS, modulus = 0, pubkey = 0, pprint = 0; int C = 0, CAformat = FORMAT_PEM, CAkeyformat = FORMAT_PEM; int fingerprint = 0, reqfile = 0, need_rand = 0, checkend = 0; @@ -172,8 +172,7 @@ int x509_main(int argc, char **argv) int text = 0, serial = 0, subject = 0, issuer = 0, startdate = 0; int enddate = 0; time_t checkoffset = 0; - unsigned long nmflag = 0, certflag = 0; - char nmflag_set = 0; + unsigned long certflag = 0; OPTION_CHOICE o; ENGINE *e = NULL; #ifndef OPENSSL_NO_MD5 @@ -308,8 +307,7 @@ int x509_main(int argc, char **argv) goto opthelp; break; case OPT_NAMEOPT: - nmflag_set = 1; - if (!set_name_ex(&nmflag, opt_arg())) + if (!set_nameopt(opt_arg())) goto opthelp; break; case OPT_ENGINE: @@ -447,9 +445,6 @@ int x509_main(int argc, char **argv) goto opthelp; } - if (!nmflag_set) - nmflag = XN_FLAG_ONELINE; - out = bio_open_default(outfile, 'w', outformat); if (out == NULL) goto end; @@ -539,7 +534,7 @@ int x509_main(int argc, char **argv) BIO_printf(bio_err, "Signature ok\n"); print_name(bio_err, "subject=", X509_REQ_get_subject_name(req), - nmflag); + get_nameopt()); if ((x = X509_new()) == NULL) goto end; @@ -618,10 +613,10 @@ int x509_main(int argc, char **argv) if (num) { for (i = 1; i <= num; i++) { if (issuer == i) { - print_name(out, "issuer=", X509_get_issuer_name(x), nmflag); + print_name(out, "issuer=", X509_get_issuer_name(x), get_nameopt()); } else if (subject == i) { print_name(out, "subject=", - X509_get_subject_name(x), nmflag); + X509_get_subject_name(x), get_nameopt()); } else if (serial == i) { BIO_printf(out, "serial="); i2a_ASN1_INTEGER(out, X509_get_serialNumber(x)); @@ -726,13 +721,10 @@ int x509_main(int argc, char **argv) char *m; int len; - X509_NAME_oneline(X509_get_subject_name(x), buf, sizeof buf); - BIO_printf(out, "/*\n" - " * Subject: %s\n", buf); - - X509_NAME_oneline(X509_get_issuer_name(x), buf, sizeof buf); - BIO_printf(out, " * Issuer: %s\n" - " */\n", buf); + print_name(out, "/*\n" + " * Subject: ", X509_get_subject_name(x), get_nameopt()); + print_name(out, " * Issuer: ", X509_get_issuer_name(x), get_nameopt()); + BIO_puts(out, " */\n"); len = i2d_X509(x, NULL); m = app_malloc(len, "x509 name buffer"); @@ -747,7 +739,7 @@ int x509_main(int argc, char **argv) print_array(out, "the_certificate", len, (unsigned char *)m); OPENSSL_free(m); } else if (text == i) { - X509_print_ex(out, x, nmflag, certflag); + X509_print_ex(out, x, get_nameopt(), certflag); } else if (startdate == i) { BIO_puts(out, "notBefore="); ASN1_TIME_print(out, X509_get0_notBefore(x)); @@ -828,7 +820,7 @@ int x509_main(int argc, char **argv) goto end; } if (!noout) { - X509_REQ_print(out, rq); + X509_REQ_print_ex(out, rq, get_nameopt(), X509_FLAG_COMPAT); PEM_write_bio_X509_REQ(out, rq); } noout = 1; diff --git a/crypto/x509/t_crl.c b/crypto/x509/t_crl.c index f3ca6db..3c073ff 100644 --- a/crypto/x509/t_crl.c +++ b/crypto/x509/t_crl.c @@ -34,13 +34,17 @@ int X509_CRL_print_fp(FILE *fp, X509_CRL *x) int X509_CRL_print(BIO *out, X509_CRL *x) { + return X509_CRL_print_ex(out, x, XN_FLAG_COMPAT); +} + +int X509_CRL_print_ex(BIO *out, X509_CRL *x, unsigned long nmflag) +{ STACK_OF(X509_REVOKED) *rev; X509_REVOKED *r; const X509_ALGOR *sig_alg; const ASN1_BIT_STRING *sig; long l; int i; - char *p; BIO_printf(out, "Certificate Revocation List (CRL):\n"); l = X509_CRL_get_version(x); @@ -50,9 +54,9 @@ int X509_CRL_print(BIO *out, X509_CRL *x) BIO_printf(out, "%8sVersion unknown (%ld)\n", "", l); X509_CRL_get0_signature(x, &sig, &sig_alg); X509_signature_print(out, sig_alg, NULL); - p = X509_NAME_oneline(X509_CRL_get_issuer(x), NULL, 0); - BIO_printf(out, "%8sIssuer: %s\n", "", p); - OPENSSL_free(p); + BIO_printf(out, "%8sIssuer: ", ""); + X509_NAME_print_ex(out, X509_CRL_get_issuer(x), 0, nmflag); + BIO_puts(out, "\n"); BIO_printf(out, "%8sLast Update: ", ""); ASN1_TIME_print(out, X509_CRL_get0_lastUpdate(x)); BIO_printf(out, "\n%8sNext Update: ", ""); diff --git a/include/openssl/x509.h b/include/openssl/x509.h index 49ad143..a6aabeb 100644 --- a/include/openssl/x509.h +++ b/include/openssl/x509.h @@ -773,6 +773,7 @@ int X509_print_ex(BIO *bp, X509 *x, unsigned long nmflag, unsigned long cflag); int X509_print(BIO *bp, X509 *x); int X509_ocspid_print(BIO *bp, X509 *x); +int X509_CRL_print_ex(BIO *out, X509_CRL *x, unsigned long nmflag); int X509_CRL_print(BIO *bp, X509_CRL *x); int X509_REQ_print_ex(BIO *bp, X509_REQ *x, unsigned long nmflag, unsigned long cflag); diff --git a/test/certs/cyrillic_crl.pem b/test/certs/cyrillic_crl.pem new file mode 100644 index 0000000..5ba2b2c --- /dev/null +++ b/test/certs/cyrillic_crl.pem @@ -0,0 +1,13 @@ +-----BEGIN X509 CRL----- +MIIB6DCB0QIBATANBgkqhkiG9w0BAQsFADCBjjELMAkGA1UEBhMCUlUxFTATBgNV +BAgMDNCc0L7RgdC60LLQsDELMAkGA1UECgwC0K8xCzAJBgNVBAsMAtCvMSowKAYD +VQQDDCHQlNC80LjRgtGA0LjQuSDQkdC10LvRj9Cy0YHQutC40LkxIjAgBgkqhkiG +9w0BCQEWE2JlbGRtaXRAZXhhbXBsZS5jb20XDTE3MDQyNDEzMjUzMVoXDTE3MDUy +NDEzMjUzMVqgDjAMMAoGA1UdFAQDAgEBMA0GCSqGSIb3DQEBCwUAA4IBAQCF5eX+ +1BM/BxoHU2/3pQHJgPSKevN0/K/daiFHiJl7Kb9GCwKY14B1RvbN2rUP/58Mt+aq +jvauf1yBzlaJQeJKZcsCmG9p6Tr1y0BJXhrq5kC0SLyNDsfGUTfuxnwmo+clHXRU ++gKuk+h0WkJL022ZYbJ38w588k4NT3CWVHeE23EDC264p942mlDE7en6MyL152Pe +Ld9YrWiq5iOIOrIbQLErq0EjwxvHG9sMiYFUa6VrwmRf26nyZ7u9RKJDP+o2dltw +diBaSXC3Qt3pZ8BIfv/l81lwp8Dr63SwCII2pIRplyICdQqmX/a+1q8kThXIP2Kx ++X48g7VE2o2X4cfy +-----END X509 CRL----- diff --git a/test/certs/cyrillic_crl.utf8 b/test/certs/cyrillic_crl.utf8 new file mode 100644 index 0000000..07dcf75 --- /dev/null +++ b/test/certs/cyrillic_crl.utf8 @@ -0,0 +1,39 @@ +Certificate Revocation List (CRL): + Version 2 (0x1) + Signature Algorithm: sha256WithRSAEncryption + Issuer: C=RU, ST=??????, O=?, OU=?, CN=??????? ?????????, emailAddress=beldmit at example.com + Last Update: Apr 24 13:25:31 2017 GMT + Next Update: May 24 13:25:31 2017 GMT + CRL extensions: + X509v3 CRL Number: + 1 +No Revoked Certificates. + Signature Algorithm: sha256WithRSAEncryption + 85:e5:e5:fe:d4:13:3f:07:1a:07:53:6f:f7:a5:01:c9:80:f4: + 8a:7a:f3:74:fc:af:dd:6a:21:47:88:99:7b:29:bf:46:0b:02: + 98:d7:80:75:46:f6:cd:da:b5:0f:ff:9f:0c:b7:e6:aa:8e:f6: + ae:7f:5c:81:ce:56:89:41:e2:4a:65:cb:02:98:6f:69:e9:3a: + f5:cb:40:49:5e:1a:ea:e6:40:b4:48:bc:8d:0e:c7:c6:51:37: + ee:c6:7c:26:a3:e7:25:1d:74:54:fa:02:ae:93:e8:74:5a:42: + 4b:d3:6d:99:61:b2:77:f3:0e:7c:f2:4e:0d:4f:70:96:54:77: + 84:db:71:03:0b:6e:b8:a7:de:36:9a:50:c4:ed:e9:fa:33:22: + f5:e7:63:de:2d:df:58:ad:68:aa:e6:23:88:3a:b2:1b:40:b1: + 2b:ab:41:23:c3:1b:c7:1b:db:0c:89:81:54:6b:a5:6b:c2:64: + 5f:db:a9:f2:67:bb:bd:44:a2:43:3f:ea:36:76:5b:70:76:20: + 5a:49:70:b7:42:dd:e9:67:c0:48:7e:ff:e5:f3:59:70:a7:c0: + eb:eb:74:b0:08:82:36:a4:84:69:97:22:02:75:0a:a6:5f:f6: + be:d6:af:24:4e:15:c8:3f:62:b1:f9:7e:3c:83:b5:44:da:8d: + 97:e1:c7:f2 +-----BEGIN X509 CRL----- +MIIB6DCB0QIBATANBgkqhkiG9w0BAQsFADCBjjELMAkGA1UEBhMCUlUxFTATBgNV +BAgMDNCc0L7RgdC60LLQsDELMAkGA1UECgwC0K8xCzAJBgNVBAsMAtCvMSowKAYD +VQQDDCHQlNC80LjRgtGA0LjQuSDQkdC10LvRj9Cy0YHQutC40LkxIjAgBgkqhkiG +9w0BCQEWE2JlbGRtaXRAZXhhbXBsZS5jb20XDTE3MDQyNDEzMjUzMVoXDTE3MDUy +NDEzMjUzMVqgDjAMMAoGA1UdFAQDAgEBMA0GCSqGSIb3DQEBCwUAA4IBAQCF5eX+ +1BM/BxoHU2/3pQHJgPSKevN0/K/daiFHiJl7Kb9GCwKY14B1RvbN2rUP/58Mt+aq +jvauf1yBzlaJQeJKZcsCmG9p6Tr1y0BJXhrq5kC0SLyNDsfGUTfuxnwmo+clHXRU ++gKuk+h0WkJL022ZYbJ38w588k4NT3CWVHeE23EDC264p942mlDE7en6MyL152Pe +Ld9YrWiq5iOIOrIbQLErq0EjwxvHG9sMiYFUa6VrwmRf26nyZ7u9RKJDP+o2dltw +diBaSXC3Qt3pZ8BIfv/l81lwp8Dr63SwCII2pIRplyICdQqmX/a+1q8kThXIP2Kx ++X48g7VE2o2X4cfy +-----END X509 CRL----- diff --git a/test/recipes/25-test_crl.t b/test/recipes/25-test_crl.t index e8ce5f8..456accb 100644 --- a/test/recipes/25-test_crl.t +++ b/test/recipes/25-test_crl.t @@ -15,10 +15,14 @@ use OpenSSL::Test qw/:DEFAULT srctop_file/; setup("test_crl"); -plan tests => 5; +plan tests => 7; require_ok(srctop_file('test','recipes','tconversion.pl')); +my $pem = srctop_file("test/certs", "cyrillic_crl.pem"); +my $out = "cyrillic_crl.out"; +my $utf = srctop_file("test/certs", "cyrillic_crl.utf8"); + subtest 'crl conversions' => sub { tconversion("crl", srctop_file("test","testcrl.pem")); }; @@ -32,6 +36,12 @@ ok(compare1stline([qw{openssl crl -noout -fingerprint -sha256 -in}, srctop_file('test', 'testcrl.pem')], 'SHA256 Fingerprint=B3:A9:FD:A7:2E:8C:3D:DF:D0:F1:C3:1A:96:60:B5:FD:B0:99:7C:7F:0E:E4:34:F5:DB:87:62:36:BC:F1:BC:1B')); +ok(run(app(["openssl", "crl", "-text", "-in", $pem, "-out", $out, + "-nameopt", "utf8"]))); +is(cmp_text($out, srctop_file("test/certs", "cyrillic_crl.utf8")), + 0, 'Comparing utf8 output'); +unlink $out; + sub compare1stline { my ($cmdarray, $str) = @_; my @lines = run(app($cmdarray), capture => 1); diff --git a/util/libcrypto.num b/util/libcrypto.num index 14c4c6a..9540d6f 100644 --- a/util/libcrypto.num +++ b/util/libcrypto.num @@ -4272,3 +4272,4 @@ ZINT64_it 4215 1_1_0f EXIST:!EXPORT_VAR_AS_FUNCTIO ZINT64_it 4215 1_1_0f EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: CRYPTO_mem_leaks_cb 4216 1_1_1 EXIST::FUNCTION:CRYPTO_MDEBUG BIO_lookup_ex 4217 1_1_1 EXIST::FUNCTION:SOCK +X509_CRL_print_ex 4218 1_1_1 EXIST::FUNCTION: From builds at travis-ci.org Tue Apr 25 16:50:51 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 25 Apr 2017 16:50:51 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10561 (master - 645c694) In-Reply-To: Message-ID: <58ff7e6b862a4_43feb5e9ce12010992af@2e58c0f0-eb9e-49c0-b82b-17b7682ef2d1.mail> Build Update for openssl/openssl ------------------------------------- Build: #10561 Status: Still Failing Duration: 19 minutes and 34 seconds Commit: 645c694 (master) Author: Richard Levitte Message: Ignore all .a files, not just the top ones Reviewed-by: Rich Salz View the changeset: https://github.com/openssl/openssl/compare/19044d3c22ff...645c694d85c8 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/225673179 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From levitte at openssl.org Tue Apr 25 16:59:54 2017 From: levitte at openssl.org (Richard Levitte) Date: Tue, 25 Apr 2017 16:59:54 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493139594.179925.12033.nullmailer@dev.openssl.org> The branch master has been updated via 4114f8f0b686958aeb678feea37e058d0c9f3d72 (commit) from b5c4209be9162d4ceafb9aef833ca94ffa1cc5c9 (commit) - Log ----------------------------------------------------------------- commit 4114f8f0b686958aeb678feea37e058d0c9f3d72 Author: Richard Levitte Date: Tue Apr 25 14:55:50 2017 +0200 Add include path '..' for libtestutil Since it uses some of the apps/ stuff and some of them include e_os.h... Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3307) ----------------------------------------------------------------------- Summary of changes: test/build.info | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/build.info b/test/build.info index 83a83c4..934cb46 100644 --- a/test/build.info +++ b/test/build.info @@ -12,7 +12,7 @@ IF[{- !$disabled{tests} -}] SOURCE[libtestutil.a]=testutil/basic_output.c testutil/driver.c \ testutil/tests.c testutil/test_main.c testutil/main.c \ {- rebase_files("../apps", $target{apps_aux_src}) -} - INCLUDE[libtestutil.a]=../include + INCLUDE[libtestutil.a]=.. ../include DEPEND[libtestutil.a]=../libcrypto # Special hack for descrip.mms to include the MAIN object module From builds at travis-ci.org Tue Apr 25 17:21:42 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 25 Apr 2017 17:21:42 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10565 (master - b5c4209) In-Reply-To: Message-ID: <58ff85a6b3115_43feb5e9c96fc11554f7@2e58c0f0-eb9e-49c0-b82b-17b7682ef2d1.mail> Build Update for openssl/openssl ------------------------------------- Build: #10565 Status: Still Failing Duration: 22 minutes and 6 seconds Commit: b5c4209 (master) Author: Dmitry Belyavskiy Message: Switch command-line utils to new nameopt API. The CA names should be printed according to user's decision print_name instead of set of BIO_printf dump_cert_text instead of set of BIO_printf Testing cyrillic output of X509_CRL_print_ex Write and use X509_CRL_print_ex Reduce usage of X509_NAME_online Using X509_REQ_print_ex instead of X509_REQ_print Fix nameopt processing. Make dump_cert_text nameopt-friendly Move nameopt getter/setter to apps/apps.c Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3262) View the changeset: https://github.com/openssl/openssl/compare/645c694d85c8...b5c4209be916 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/225679368 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Tue Apr 25 17:34:36 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 25 Apr 2017 17:34:36 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10566 (master - 4114f8f) In-Reply-To: Message-ID: <58ff88aa1ea1f_43febae0a5440704493@0adc31dc-0ade-4aa8-9013-f57e5035dd60.mail> Build Update for openssl/openssl ------------------------------------- Build: #10566 Status: Still Failing Duration: 26 minutes and 50 seconds Commit: 4114f8f (master) Author: Richard Levitte Message: Add include path '..' for libtestutil Since it uses some of the apps/ stuff and some of them include e_os.h... Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3307) View the changeset: https://github.com/openssl/openssl/compare/b5c4209be916...4114f8f0b686 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/225684602 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From levitte at openssl.org Tue Apr 25 19:28:27 2017 From: levitte at openssl.org (Richard Levitte) Date: Tue, 25 Apr 2017 19:28:27 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493148507.865112.21023.nullmailer@dev.openssl.org> The branch master has been updated via 7531b3a6cd4b42bece94c0aab5b963fe03d1b139 (commit) from 4114f8f0b686958aeb678feea37e058d0c9f3d72 (commit) - Log ----------------------------------------------------------------- commit 7531b3a6cd4b42bece94c0aab5b963fe03d1b139 Author: Richard Levitte Date: Tue Apr 25 21:13:26 2017 +0200 Tapify libtestutil a bit better This includes better signals of skips and subtests according to TAP 12, and flushing stdout and stderr at the end of every test function to make sure we get the output in good order. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3309) ----------------------------------------------------------------------- Summary of changes: test/testutil/driver.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/test/testutil/driver.c b/test/testutil/driver.c index 4f6b511..29c97a9 100644 --- a/test/testutil/driver.c +++ b/test/testutil/driver.c @@ -138,13 +138,23 @@ int run_tests(const char *test_prog_name) char *verdict = NULL; int i, j; - helper_printf_stdout("%*s%d..%d\n", level, "", 1, num_tests); + if (num_tests < 1) + helper_printf_stdout("%*s1..0 # Skipped: %s\n", level, "", + test_prog_name); + else if (level > 0) + helper_printf_stdout("%*s1..%d # Subtest: %s\n", level, "", num_tests, + test_prog_name); + else + helper_printf_stdout("%*s1..%d\n", level, "", num_tests); test_flush_stdout(); for (i = 0; i != num_tests; ++i) { if (all_tests[i].num == -1) { int ret = all_tests[i].test_fn(); + test_flush_stdout(); + test_flush_stderr(); + verdict = "ok"; if (!ret) { verdict = "not ok"; @@ -169,6 +179,9 @@ int run_tests(const char *test_prog_name) for (j = 0; j < all_tests[i].num; j++) { int ret = all_tests[i].param_test_fn(j); + test_flush_stdout(); + test_flush_stderr(); + if (!ret) ++num_failed_inner; From builds at travis-ci.org Tue Apr 25 19:49:49 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 25 Apr 2017 19:49:49 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10569 (master - 7531b3a) In-Reply-To: Message-ID: <58ffa85d7ede8_43feeab1e36b81029978@05888ba7-3e72-4d5c-8ec2-6487351eaafa.mail> Build Update for openssl/openssl ------------------------------------- Build: #10569 Status: Still Failing Duration: 19 minutes and 47 seconds Commit: 7531b3a (master) Author: Richard Levitte Message: Tapify libtestutil a bit better This includes better signals of skips and subtests according to TAP 12, and flushing stdout and stderr at the end of every test function to make sure we get the output in good order. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3309) View the changeset: https://github.com/openssl/openssl/compare/4114f8f0b686...7531b3a6cd4b View the full build log and details: https://travis-ci.org/openssl/openssl/builds/225737179 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From steve at openssl.org Tue Apr 25 21:13:19 2017 From: steve at openssl.org (Dr. Stephen Henson) Date: Tue, 25 Apr 2017 21:13:19 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493154799.425520.21742.nullmailer@dev.openssl.org> The branch master has been updated via b69ae442a3b3e168d73c53dcd04bacf33eee8569 (commit) via 2f7a252057a7f6ea161151583a6b4bf9d538ebae (commit) via 451a0c3dc8bd1c2372f893e252b741937f303e21 (commit) via 9bf45ba4ca0b98d9030bff8b1677804160d88d47 (commit) via 629e369c5b163a6c7797d468a8d0ce0e37d43a3e (commit) via c3c8823c879d90b93108b9e76db5ed5690724c9c (commit) via 786dd2c22c71081492e209d93beee3ff4fe66357 (commit) from 7531b3a6cd4b42bece94c0aab5b963fe03d1b139 (commit) - Log ----------------------------------------------------------------- commit b69ae442a3b3e168d73c53dcd04bacf33eee8569 Author: Dr. Stephen Henson Date: Tue Apr 25 20:16:29 2017 +0100 make update Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3301) commit 2f7a252057a7f6ea161151583a6b4bf9d538ebae Author: Dr. Stephen Henson Date: Tue Apr 25 17:28:08 2017 +0100 Update documentation Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3301) commit 451a0c3dc8bd1c2372f893e252b741937f303e21 Author: Dr. Stephen Henson Date: Tue Apr 25 00:10:33 2017 +0100 Add PSS certificate signature tests Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3301) commit 9bf45ba4ca0b98d9030bff8b1677804160d88d47 Author: Dr. Stephen Henson Date: Mon Apr 24 22:17:45 2017 +0100 Add certificates with PSS signatures Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3301) commit 629e369c5b163a6c7797d468a8d0ce0e37d43a3e Author: Dr. Stephen Henson Date: Tue Apr 25 00:09:55 2017 +0100 Add custom sig_info setting for RSA-PSS Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3301) commit c3c8823c879d90b93108b9e76db5ed5690724c9c Author: Dr. Stephen Henson Date: Mon Apr 24 19:16:16 2017 +0100 Use X509_get_signature_info() when checking security levels. Make signature security level checking more flexible by using X509_get_signaure_info(): some signature methods (e.g. PSS, ED25519) do not indicate the signing digest (if any) in the signature OID. Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3301) commit 786dd2c22c71081492e209d93beee3ff4fe66357 Author: Dr. Stephen Henson Date: Fri Apr 21 15:56:34 2017 +0100 Add support for custom signature parameters Many signature types define the digest and public key type by a single OID such as ecdsa_with_sha256. Some types (RSA-PSS for example) use a single OID to indicate the signature scheme and additional parameters are encoded in the AlgorithmIdentifier. Add an X509_SIG_INFO structure to contain details about the signature type: specifically the digest algorithm, public key algorithm, security bits and various flags. This supports both existing algorithms and more complex types. Add accessors for the structure and a special case that retrieves signature information from a certificate. Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3301) ----------------------------------------------------------------------- Summary of changes: crypto/include/internal/asn1_int.h | 2 + crypto/include/internal/x509_int.h | 16 ++++++++ crypto/rsa/rsa_ameth.c | 39 ++++++++++++++++++- crypto/x509/x509_lcl.h | 3 ++ crypto/x509/x509_set.c | 77 ++++++++++++++++++++++++++++++++++++++ crypto/x509/x509_vfy.c | 12 +----- crypto/x509v3/v3_purp.c | 1 + doc/man3/X509_get0_signature.pod | 33 +++++++++++++++- include/openssl/ossl_typ.h | 2 + include/openssl/x509.h | 15 ++++++++ test/certs/ee-pss-sha1-cert.pem | 19 ++++++++++ test/certs/ee-pss-sha256-cert.pem | 21 +++++++++++ test/certs/setup.sh | 8 ++++ test/recipes/25-test_verify.t | 14 ++++++- util/libcrypto.num | 3 ++ 15 files changed, 252 insertions(+), 13 deletions(-) create mode 100644 test/certs/ee-pss-sha1-cert.pem create mode 100644 test/certs/ee-pss-sha256-cert.pem diff --git a/crypto/include/internal/asn1_int.h b/crypto/include/internal/asn1_int.h index f78ced6..6e6e028 100644 --- a/crypto/include/internal/asn1_int.h +++ b/crypto/include/internal/asn1_int.h @@ -52,6 +52,8 @@ struct evp_pkey_asn1_method_st { int (*item_sign) (EVP_MD_CTX *ctx, const ASN1_ITEM *it, void *asn, X509_ALGOR *alg1, X509_ALGOR *alg2, ASN1_BIT_STRING *sig); + int (*siginf_set) (X509_SIG_INFO *siginf, const X509_ALGOR *alg, + const ASN1_STRING *sig); } /* EVP_PKEY_ASN1_METHOD */ ; DEFINE_STACK_OF_CONST(EVP_PKEY_ASN1_METHOD) diff --git a/crypto/include/internal/x509_int.h b/crypto/include/internal/x509_int.h index 10b605f..124cc53 100644 --- a/crypto/include/internal/x509_int.h +++ b/crypto/include/internal/x509_int.h @@ -37,6 +37,19 @@ struct X509_name_st { int canon_enclen; } /* X509_NAME */ ; +/* Signature info structure */ + +struct x509_sig_info_st { + /* NID of message digest */ + int mdnid; + /* NID of public key algorithm */ + int pknid; + /* Security bits */ + int secbits; + /* Various flags */ + uint32_t flags; +}; + /* PKCS#10 certificate request */ struct X509_req_info_st { @@ -146,6 +159,7 @@ struct x509_st { X509_CINF cert_info; X509_ALGOR sig_alg; ASN1_BIT_STRING signature; + X509_SIG_INFO siginf; CRYPTO_REF_COUNT references; CRYPTO_EX_DATA ex_data; /* These contain copies of various extension values */ @@ -267,3 +281,5 @@ struct x509_object_st { int a2i_ipadd(unsigned char *ipout, const char *ipasc); int x509_set1_time(ASN1_TIME **ptm, const ASN1_TIME *tm); + +void x509_init_sig_info(X509 *x); diff --git a/crypto/rsa/rsa_ameth.c b/crypto/rsa/rsa_ameth.c index 20a27be..69b45fd 100644 --- a/crypto/rsa/rsa_ameth.c +++ b/crypto/rsa/rsa_ameth.c @@ -785,6 +785,41 @@ static int rsa_item_sign(EVP_MD_CTX *ctx, const ASN1_ITEM *it, void *asn, return 2; } +static int rsa_sig_info_set(X509_SIG_INFO *siginf, const X509_ALGOR *sigalg, + const ASN1_STRING *sig) +{ + int rv = 0; + int mdnid, saltlen; + uint32_t flags; + const EVP_MD *mgf1md = NULL, *md = NULL; + RSA_PSS_PARAMS *pss; + + /* Sanity check: make sure it is PSS */ + if (OBJ_obj2nid(sigalg->algorithm) != EVP_PKEY_RSA_PSS) + return 0; + /* Decode PSS parameters */ + pss = rsa_pss_decode(sigalg); + if (!rsa_pss_get_param(pss, &md, &mgf1md, &saltlen)) + goto err; + mdnid = EVP_MD_type(md); + /* + * For TLS need SHA256, SHA384 or SHA512, digest and MGF1 digest must + * match and salt length must equal digest size + */ + if ((mdnid == NID_sha256 || mdnid == NID_sha384 || mdnid == NID_sha512) + && mdnid == EVP_MD_type(mgf1md) && saltlen == EVP_MD_size(md)) + flags = X509_SIG_INFO_TLS; + else + flags = 0; + /* Note: security bits half number of digest bits */ + X509_SIG_INFO_set(siginf, mdnid, EVP_PKEY_RSA_PSS, EVP_MD_size(md) * 4, + flags); + rv = 1; + err: + RSA_PSS_PARAMS_free(pss); + return rv; +} + #ifndef OPENSSL_NO_CMS static RSA_OAEP_PARAMS *rsa_oaep_decode(const X509_ALGOR *alg) { @@ -972,7 +1007,9 @@ const EVP_PKEY_ASN1_METHOD rsa_asn1_meths[2] = { old_rsa_priv_decode, old_rsa_priv_encode, rsa_item_verify, - rsa_item_sign}, + rsa_item_sign, + rsa_sig_info_set + }, { EVP_PKEY_RSA2, diff --git a/crypto/x509/x509_lcl.h b/crypto/x509/x509_lcl.h index 34e4135..401f2e9 100644 --- a/crypto/x509/x509_lcl.h +++ b/crypto/x509/x509_lcl.h @@ -142,3 +142,6 @@ DEFINE_STACK_OF(BY_DIR_HASH) DEFINE_STACK_OF(BY_DIR_ENTRY) typedef STACK_OF(X509_NAME_ENTRY) STACK_OF_X509_NAME_ENTRY; DEFINE_STACK_OF(STACK_OF_X509_NAME_ENTRY) + +void x509_set_signature_info(X509_SIG_INFO *siginf, const X509_ALGOR *alg, + const ASN1_STRING *sig); diff --git a/crypto/x509/x509_set.c b/crypto/x509/x509_set.c index e46174a..08b71ff 100644 --- a/crypto/x509/x509_set.c +++ b/crypto/x509/x509_set.c @@ -13,7 +13,10 @@ #include #include #include +#include +#include "internal/asn1_int.h" #include "internal/x509_int.h" +#include "x509_lcl.h" int X509_set_version(X509 *x, long version) { @@ -157,3 +160,77 @@ const X509_ALGOR *X509_get0_tbs_sigalg(const X509 *x) { return &x->cert_info.signature; } + +int X509_SIG_INFO_get(const X509_SIG_INFO *siginf, int *mdnid, int *pknid, + int *secbits, uint32_t *flags) +{ + if (mdnid != NULL) + *mdnid = siginf->mdnid; + if (pknid != NULL) + *pknid = siginf->pknid; + if (secbits != NULL) + *secbits = siginf->secbits; + if (flags != NULL) + *flags = siginf->flags; + return (siginf->flags & X509_SIG_INFO_VALID) != 0; +} + +void X509_SIG_INFO_set(X509_SIG_INFO *siginf, int mdnid, int pknid, + int secbits, uint32_t flags) +{ + siginf->mdnid = mdnid; + siginf->pknid = pknid; + siginf->secbits = secbits; + siginf->flags = flags; +} + +int X509_get_signature_info(X509 *x, int *mdnid, int *pknid, int *secbits, + uint32_t *flags) +{ + X509_check_purpose(x, -1, -1); + return X509_SIG_INFO_get(&x->siginf, mdnid, pknid, secbits, flags); +} + +static void x509_sig_info_init(X509_SIG_INFO *siginf, const X509_ALGOR *alg, + const ASN1_STRING *sig) +{ + int pknid, mdnid; + const EVP_MD *md; + + siginf->mdnid = NID_undef; + siginf->pknid = NID_undef; + siginf->secbits = -1; + siginf->flags = 0; + if (!OBJ_find_sigid_algs(OBJ_obj2nid(alg->algorithm), &mdnid, &pknid) + || pknid == NID_undef) + return; + siginf->pknid = pknid; + if (mdnid == NID_undef) { + /* If we have one, use a custom handler for this algorithm */ + const EVP_PKEY_ASN1_METHOD *ameth = EVP_PKEY_asn1_find(NULL, pknid); + if (ameth == NULL || ameth->siginf_set == NULL + || ameth->siginf_set(siginf, alg, sig) == 0) + return; + siginf->flags |= X509_SIG_INFO_VALID; + return; + } + siginf->flags |= X509_SIG_INFO_VALID; + siginf->mdnid = mdnid; + md = EVP_get_digestbynid(mdnid); + if (md == NULL) + return; + /* Security bits: half number of bits in digest */ + siginf->secbits = EVP_MD_size(md) * 4; + switch (mdnid) { + case NID_sha1: + case NID_sha256: + case NID_sha384: + case NID_sha512: + siginf->flags |= X509_SIG_INFO_TLS; + } +} + +void x509_init_sig_info(X509 *x) +{ + x509_sig_info_init(&x->siginf, &x->sig_alg, &x->signature); +} diff --git a/crypto/x509/x509_vfy.c b/crypto/x509/x509_vfy.c index 2f1cd1a..70ce606 100644 --- a/crypto/x509/x509_vfy.c +++ b/crypto/x509/x509_vfy.c @@ -3201,8 +3201,6 @@ static int check_key_level(X509_STORE_CTX *ctx, X509 *cert) */ static int check_sig_level(X509_STORE_CTX *ctx, X509 *cert) { - int nid = X509_get_signature_nid(cert); - int mdnid = NID_undef; int secbits = -1; int level = ctx->param->auth_level; @@ -3211,14 +3209,8 @@ static int check_sig_level(X509_STORE_CTX *ctx, X509 *cert) if (level > NUM_AUTH_LEVELS) level = NUM_AUTH_LEVELS; - /* Lookup signature algorithm digest */ - if (nid && OBJ_find_sigid_algs(nid, &mdnid, NULL)) { - const EVP_MD *md; - - /* Assume 4 bits of collision resistance for each hash octet */ - if (mdnid != NID_undef && (md = EVP_get_digestbynid(mdnid)) != NULL) - secbits = EVP_MD_size(md) * 4; - } + if (!X509_get_signature_info(cert, NULL, NULL, &secbits, NULL)) + return 0; return secbits >= minbits_table[level - 1]; } diff --git a/crypto/x509v3/v3_purp.c b/crypto/x509v3/v3_purp.c index fa5c425..2ff8854 100644 --- a/crypto/x509v3/v3_purp.c +++ b/crypto/x509v3/v3_purp.c @@ -488,6 +488,7 @@ static void x509v3_cache_extensions(X509 *x) break; } } + x509_init_sig_info(x); x->ex_flags |= EXFLAG_SET; } diff --git a/doc/man3/X509_get0_signature.pod b/doc/man3/X509_get0_signature.pod index 61a2dda..f63c5a5 100644 --- a/doc/man3/X509_get0_signature.pod +++ b/doc/man3/X509_get0_signature.pod @@ -4,7 +4,8 @@ X509_get0_signature, X509_get_signature_nid, X509_get0_tbs_sigalg, X509_REQ_get0_signature, X509_REQ_get_signature_nid, X509_CRL_get0_signature, -X509_CRL_get_signature_nid - signature information +X509_CRL_get_signature_nid, X509_get_signature_info, X509_SIG_INFO_get, +X509_SIG_INFO_set - signature information =head1 SYNOPSIS @@ -26,6 +27,14 @@ X509_CRL_get_signature_nid - signature information const X509_ALGOR **palg); int X509_CRL_get_signature_nid(const X509_CRL *crl); + int X509_get_signature_info(X509 *x, int *mdnid, int *pknid, int *secbits, + uint32_t *flags); + + int X509_SIG_INFO_get(const X509_SIG_INFO *siginf, int *mdnid, int *pknid, + int *secbits, uint32_t *flags); + void X509_SIG_INFO_set(X509_SIG_INFO *siginf, int mdnid, int pknid, + int secbits, uint32_t flags); + =head1 DESCRIPTION X509_get0_signature() sets B<*psig> to the signature of B and B<*palg> @@ -42,6 +51,18 @@ X509_REQ_get0_signature(), X509_REQ_get_signature_nid() X509_CRL_get0_signature() and X509_CRL_get_signature_nid() perform the same function for certificate requests and CRLs. +X509_get_signature_info() retrieves information about the signature of +certificate B. The NID of the signing digest is written to B<*mdnid>, +the public key algorithm to B<*pknid>, the effective security bits to +B<*secbits> and flag details to B<*flags>. Any of the parameters can +be set to B if the information is not required. + +X509_SIG_INFO_get() and X509_SIG_INFO_set() get and set information +about a signature in an B structure. They are only +used by implementations of algorithms which need to set custom +signature information: most applications will never need to call +them. + =head1 NOTES These functions provide lower level access to signatures in certificates @@ -49,6 +70,12 @@ where an application wishes to analyse or generate a signature in a form where X509_sign() et al is not appropriate (for example a non standard or unsupported format). +The security bits returned by X509_get_signature_info() refers to information +available from the certificate signature (such as the signing digest). In some +cases the actual security of the signature is less because the signing +key is less secure: for example a certificate signed using SHA-512 and a +1024 bit RSA key. + =head1 RETURN VALUES X509_get_signature_nid(), X509_REQ_get_signature_nid() and @@ -57,6 +84,10 @@ X509_CRL_get_signature_nid() return a NID. X509_get0_signature(), X509_REQ_get0_signature() and X509_CRL_get0_signature() do not return values. +X509_get_signature_info() returns 1 if the signature information +returned is valid or 0 if the information is not available (e.g. +unknown algorithms or malformed parameters). + =head1 SEE ALSO L, diff --git a/include/openssl/ossl_typ.h b/include/openssl/ossl_typ.h index 129a67f..deea038 100644 --- a/include/openssl/ossl_typ.h +++ b/include/openssl/ossl_typ.h @@ -131,6 +131,8 @@ typedef struct x509_lookup_st X509_LOOKUP; typedef struct x509_lookup_method_st X509_LOOKUP_METHOD; typedef struct X509_VERIFY_PARAM_st X509_VERIFY_PARAM; +typedef struct x509_sig_info_st X509_SIG_INFO; + typedef struct pkcs8_priv_key_info_st PKCS8_PRIV_KEY_INFO; typedef struct v3_ext_ctx X509V3_CTX; diff --git a/include/openssl/x509.h b/include/openssl/x509.h index a6aabeb..0a692f8 100644 --- a/include/openssl/x509.h +++ b/include/openssl/x509.h @@ -39,6 +39,13 @@ extern "C" { #endif + +/* Flags for X509_get_signature_info() */ +/* Signature info is valid */ +# define X509_SIG_INFO_VALID 0x1 +/* Signature is suitable for TLS use */ +# define X509_SIG_INFO_TLS 0x2 + # define X509_FILETYPE_PEM 1 # define X509_FILETYPE_ASN1 2 # define X509_FILETYPE_DEFAULT 3 @@ -549,6 +556,14 @@ X509 *d2i_X509_AUX(X509 **a, const unsigned char **pp, long length); int i2d_re_X509_tbs(X509 *x, unsigned char **pp); +int X509_SIG_INFO_get(const X509_SIG_INFO *siginf, int *mdnid, int *pknid, + int *secbits, uint32_t *flags); +void X509_SIG_INFO_set(X509_SIG_INFO *siginf, int mdnid, int pknid, + int secbits, uint32_t flags); + +int X509_get_signature_info(X509 *x, int *mdnid, int *pknid, int *secbits, + uint32_t *flags); + void X509_get0_signature(const ASN1_BIT_STRING **psig, const X509_ALGOR **palg, const X509 *x); int X509_get_signature_nid(const X509 *x); diff --git a/test/certs/ee-pss-sha1-cert.pem b/test/certs/ee-pss-sha1-cert.pem new file mode 100644 index 0000000..b504aea --- /dev/null +++ b/test/certs/ee-pss-sha1-cert.pem @@ -0,0 +1,19 @@ +-----BEGIN CERTIFICATE----- +MIIDFDCCAfygAwIBAgIBAjANBgkqhkiG9w0BAQowADANMQswCQYDVQQDDAJDQTAg +Fw0xNzA0MjQyMTE5NDlaGA8yMTE3MDQyNTIxMTk0OVowEzERMA8GA1UEAwwIUFNT +LVNIQTEwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCo/4lYYYWu3tss +D9Vz++K3qBt6dWAr1H08c3a1rt6TL38kkG3JHPSKOM2fooAWVsu0LLuT5Rcf/w3G +Q/4xNPgo2HXpo7uIgu+jcuJTYgVFTeAxl++qnRDSWA2eBp4yuxsIVl1lDz9mjsI2 +oBH/wFk1/Ukc3RxCMwZ4rgQ4I+XndWfTlK1aqUAfrFkQ9QzBZK1KxMY1U7OWaoIb +FYvRmavknm+UqtKW5Vf7jJFkijwkFsbSGb6CYBM7YrDtPh2zyvlr3zG5ep5LR2in +Kcc/SuIiJ7TvkGPX79ByST5brbkb1Ctvhmjd1XMSuEPJ3EEPoqNGT4tniIQPYf55 +NB9KiR+3AgMBAAGjdzB1MB0GA1UdDgQWBBTnm+IqrYpsOst2UeWOB5gil+FzojAf +BgNVHSMEGDAWgBS0ETPx1+Je91OeICIQT4YGvx/JXjAJBgNVHRMEAjAAMBMGA1Ud +JQQMMAoGCCsGAQUFBwMBMBMGA1UdEQQMMAqCCFBTUy1TSEExMA0GCSqGSIb3DQEB +CjAAA4IBAQCC4qIOu7FVYMvRx13IrvzviF+RFRRfAD5NZSPFw5+riLMeRlA4Pdw/ +vCctNIpqjDaSFu8BRTUuyHPXSIvPo0Rl64TsfQNHP1Ut1/8XCecYCEBx/ROJHbM5 +YjoHMCAy+mR3f4BK1827Mp5U/wRJ6ljvE5EbALQ06ZEuIO6zqEAO6AROUCjWSyFd +z9fkEHS0XmploIywH4QXR7X+ueWOE3n76x+vziM4qoGsYxy0sxePfTWM1DscT1Kt +l5skZdZEKo6J8m8ImxfmtLutky2/tw5cdeWbovX3xfipabjPqpzO9Tf9aa4iblJa +AEQwRss+D6ixFO1rNKs1fjFva7A+9lrO +-----END CERTIFICATE----- diff --git a/test/certs/ee-pss-sha256-cert.pem b/test/certs/ee-pss-sha256-cert.pem new file mode 100644 index 0000000..cde5089 --- /dev/null +++ b/test/certs/ee-pss-sha256-cert.pem @@ -0,0 +1,21 @@ +-----BEGIN CERTIFICATE----- +MIIDeDCCAjCgAwIBAgIBAjA9BgkqhkiG9w0BAQowMKANMAsGCWCGSAFlAwQCAaEa +MBgGCSqGSIb3DQEBCDALBglghkgBZQMEAgGiAwIBIDANMQswCQYDVQQDDAJDQTAg +Fw0xNzA0MjQyMTE5NDlaGA8yMTE3MDQyNTIxMTk0OVowFTETMBEGA1UEAwwKUFNT +LVNIQTI1NjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKj/iVhhha7e +2ywP1XP74reoG3p1YCvUfTxzdrWu3pMvfySQbckc9Io4zZ+igBZWy7Qsu5PlFx// +DcZD/jE0+CjYdemju4iC76Ny4lNiBUVN4DGX76qdENJYDZ4GnjK7GwhWXWUPP2aO +wjagEf/AWTX9SRzdHEIzBniuBDgj5ed1Z9OUrVqpQB+sWRD1DMFkrUrExjVTs5Zq +ghsVi9GZq+Seb5Sq0pblV/uMkWSKPCQWxtIZvoJgEztisO0+HbPK+WvfMbl6nktH +aKcpxz9K4iIntO+QY9fv0HJJPlutuRvUK2+GaN3VcxK4Q8ncQQ+io0ZPi2eIhA9h +/nk0H0qJH7cCAwEAAaN5MHcwHQYDVR0OBBYEFOeb4iqtimw6y3ZR5Y4HmCKX4XOi +MB8GA1UdIwQYMBaAFLQRM/HX4l73U54gIhBPhga/H8leMAkGA1UdEwQCMAAwEwYD +VR0lBAwwCgYIKwYBBQUHAwEwFQYDVR0RBA4wDIIKUFNTLVNIQTI1NjA9BgkqhkiG +9w0BAQowMKANMAsGCWCGSAFlAwQCAaEaMBgGCSqGSIb3DQEBCDALBglghkgBZQME +AgGiAwIBIAOCAQEAfKQyXj7HSdUQJA599+SBjalw3dsaxYg6wgLH1IW3GHXPR+c0 +4cugrsPFNRTZL2u/xwHfdxcR3N2vzsdqa+Ep3iyC6egiwxmhIkw0OI+uk/WO9P8Z +42bznkeDjOQ3Y04IIt7a5VbMY7AuWdQfnuVRFiJFAZi7s4+b6QL7+iwydZESVNRL +K+Y6rjMEOrGK7codcRKxrwIt7kxkcT7MI/O7Jt5aa1XDvdSzrieo/CpNVCLCm/zq +Hn1MZ7SAxjTlvwZIj1FhDrFJJppPc5fS7rQDcEaEV6qkBMowtccQR61Iim4834gV +ZTesKQBRtAgW/h4OD5Za98hSEesP6YNhE3GK7A== +-----END CERTIFICATE----- diff --git a/test/certs/setup.sh b/test/certs/setup.sh index 7e1086a..98bac02 100755 --- a/test/certs/setup.sh +++ b/test/certs/setup.sh @@ -344,3 +344,11 @@ REQMASK=MASK:0x800 ./mkcert.sh req badalt7-key "O = Bad NC Test Certificate 7" \ "DNS.1 = www.ok.good.com" "DNS.2 = bad.ok.good.com" \ "email.1 = good at good.org" "email.2 = any at good.com" \ "IP = 127.0.0.1" "IP = 192.168.0.1" + +# RSA-PSS signatures +# SHA1 +./mkcert.sh genee PSS-SHA1 ee-key ee-pss-sha1-cert ca-key ca-cert \ + -sha1 -sigopt rsa_padding_mode:pss -sigopt rsa_pss_saltlen:digest +# SHA256 +./mkcert.sh genee PSS-SHA256 ee-key ee-pss-sha256-cert ca-key ca-cert \ + -sha256 -sigopt rsa_padding_mode:pss -sigopt rsa_pss_saltlen:digest diff --git a/test/recipes/25-test_verify.t b/test/recipes/25-test_verify.t index 23f8f32..9c425c0 100644 --- a/test/recipes/25-test_verify.t +++ b/test/recipes/25-test_verify.t @@ -26,7 +26,7 @@ sub verify { run(app([@args])); } -plan tests => 121; +plan tests => 125; # Canonical success ok(verify("ee-cert", "sslserver", ["root-cert"], ["ca-cert"]), @@ -328,3 +328,15 @@ ok(!verify("badalt9-cert", "sslserver", ["root-cert"], ["ncca1-cert", "ncca3-cer ok(!verify("badalt10-cert", "sslserver", ["root-cert"], ["ncca1-cert", "ncca3-cert"], ), "Name constaints nested DNS name excluded"); + +ok(verify("ee-pss-sha1-cert", "sslserver", ["root-cert"], ["ca-cert"], ), + "Certificate PSS signature using SHA1"); + +ok(verify("ee-pss-sha256-cert", "sslserver", ["root-cert"], ["ca-cert"], ), + "CA with PSS signature using SHA256"); + +ok(!verify("ee-pss-sha1-cert", "sslserver", ["root-cert"], ["ca-cert"], "-auth_level", "2"), + "Reject PSS signature using SHA1 and auth level 2"); + +ok(verify("ee-pss-sha256-cert", "sslserver", ["root-cert"], ["ca-cert"], "-auth_level", "2"), + "PSS signature using SHA256 and auth level 2"); diff --git a/util/libcrypto.num b/util/libcrypto.num index 9540d6f..b136a73 100644 --- a/util/libcrypto.num +++ b/util/libcrypto.num @@ -4273,3 +4273,6 @@ ZINT64_it 4215 1_1_0f EXIST:EXPORT_VAR_AS_FUNCTION CRYPTO_mem_leaks_cb 4216 1_1_1 EXIST::FUNCTION:CRYPTO_MDEBUG BIO_lookup_ex 4217 1_1_1 EXIST::FUNCTION:SOCK X509_CRL_print_ex 4218 1_1_1 EXIST::FUNCTION: +X509_SIG_INFO_get 4219 1_1_1 EXIST::FUNCTION: +X509_get_signature_info 4220 1_1_1 EXIST::FUNCTION: +X509_SIG_INFO_set 4221 1_1_1 EXIST::FUNCTION: From appro at openssl.org Tue Apr 25 21:27:18 2017 From: appro at openssl.org (Andy Polyakov) Date: Tue, 25 Apr 2017 21:27:18 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493155638.859689.32239.nullmailer@dev.openssl.org> The branch master has been updated via dd05be5d7809cb831718820eedd86269b2504180 (commit) from b69ae442a3b3e168d73c53dcd04bacf33eee8569 (commit) - Log ----------------------------------------------------------------- commit dd05be5d7809cb831718820eedd86269b2504180 Author: Andy Polyakov Date: Tue Apr 25 00:21:28 2017 +0200 test: don't make it more complicated than necessary. Original rationale behind using write in testutil was to accommodate no-stdio builds. But is there evidence that no-stdio users would have write or pre-defined meaning for file descriptors 1 and 2? Correct answer is to provide way for no-stdio users who want to exercise tests to plug in own BIO, not to make assumption that they have write. And since we don't have to make such assumption, we can as well go for simplest that works with standard library as specified by C language standard. Reviewed-by: Richard Levitte ----------------------------------------------------------------------- Summary of changes: test/bioprinttest.c | 19 +++++++++---------- test/testutil/basic_output.c | 23 ++--------------------- 2 files changed, 11 insertions(+), 31 deletions(-) diff --git a/test/bioprinttest.c b/test/bioprinttest.c index 56aa0b0..2c2dc8c 100644 --- a/test/bioprinttest.c +++ b/test/bioprinttest.c @@ -11,12 +11,6 @@ #include #include -#include -#ifdef OPENSSL_SYS_WINDOWS -# include -#else -# include OPENSSL_UNISTD -#endif #include #include "internal/numbers.h" #include "testutil.h" @@ -268,16 +262,21 @@ void test_close_streams(void) int test_puts_stdout(const char *str) { - return write(1, str, strlen(str)); + return fputs(str, stdout); } int test_puts_stderr(const char *str) { - return write(2, str, strlen(str)); + return fputs(str, stderr); } static char vprint_buf[10240]; +/* + * This works out as long as caller doesn't use any "fancy" formats. + * But we are caller's caller, and test_str_eq is the only one called, + * and it uses only "%s", which is not "fancy"... + */ int test_vprintf_stdout(const char *fmt, va_list ap) { size_t len = vsnprintf(vprint_buf, sizeof(vprint_buf), fmt, ap); @@ -298,10 +297,10 @@ int test_vprintf_stderr(const char *fmt, va_list ap) int test_flush_stdout(void) { - return 0; + return fflush(stdout); } int test_flush_stderr(void) { - return 0; + return fflush(stderr); } diff --git a/test/testutil/basic_output.c b/test/testutil/basic_output.c index ac413a6..9080aae 100644 --- a/test/testutil/basic_output.c +++ b/test/testutil/basic_output.c @@ -15,29 +15,10 @@ BIO *bio_out = NULL; BIO *bio_err = NULL; -#ifdef OPENSSL_USE_APPLINK -/* - * Using BIO_new_fd() obligates the use of applinks on platforms where it's - * relevant. Because it becomes a module of the libtestutil library and would - * be disregarded if not actively referred to, we have this dummy that does - * exactly this. For any module that uses the rest of the routines here, - * OPENSSL_Applink should tag along for sure. - */ -void Applink_dummy(void); -void Applink_dummy(void) -{ - OPENSSL_EXTERN void OPENSSL_Applink(void); - - OPENSSL_Applink(); -} -/* Generate an error for anyone who tries to actually use this dummy */ -# define Applink_dummy "DON'T USE THIS" -#endif - void test_open_streams(void) { - bio_out = BIO_new_fd(1, 0); - bio_err = BIO_new_fd(2, 0); + bio_out = BIO_new_fp(stdout, BIO_NOCLOSE | BIO_FP_TEXT); + bio_err = BIO_new_fp(stderr, BIO_NOCLOSE | BIO_FP_TEXT); OPENSSL_assert(bio_out != NULL); OPENSSL_assert(bio_err != NULL); From builds at travis-ci.org Tue Apr 25 21:34:54 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 25 Apr 2017 21:34:54 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10573 (master - b69ae44) In-Reply-To: Message-ID: <58ffc0fe440e5_43feb5e9c96fc1548473@2e58c0f0-eb9e-49c0-b82b-17b7682ef2d1.mail> Build Update for openssl/openssl ------------------------------------- Build: #10573 Status: Still Failing Duration: 20 minutes and 7 seconds Commit: b69ae44 (master) Author: Dr. Stephen Henson Message: make update Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3301) View the changeset: https://github.com/openssl/openssl/compare/7531b3a6cd4b...b69ae442a3b3 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/225773761 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Tue Apr 25 21:52:28 2017 From: builds at travis-ci.org (Travis CI) Date: Tue, 25 Apr 2017 21:52:28 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10574 (master - dd05be5) In-Reply-To: Message-ID: <58ffc51cd007c_43febae0a533c99823e@0adc31dc-0ade-4aa8-9013-f57e5035dd60.mail> Build Update for openssl/openssl ------------------------------------- Build: #10574 Status: Still Failing Duration: 23 minutes and 56 seconds Commit: dd05be5 (master) Author: Andy Polyakov Message: test: don't make it more complicated than necessary. Original rationale behind using write in testutil was to accommodate no-stdio builds. But is there evidence that no-stdio users would have write or pre-defined meaning for file descriptors 1 and 2? Correct answer is to provide way for no-stdio users who want to exercise tests to plug in own BIO, not to make assumption that they have write. And since we don't have to make such assumption, we can as well go for simplest that works with standard library as specified by C language standard. Reviewed-by: Richard Levitte View the changeset: https://github.com/openssl/openssl/compare/b69ae442a3b3...dd05be5d7809 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/225778322 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From appro at openssl.org Tue Apr 25 21:54:57 2017 From: appro at openssl.org (Andy Polyakov) Date: Tue, 25 Apr 2017 21:54:57 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1493157297.933629.19394.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 6fc37bee4a5f81d8f00e6ad45865b6b697163f06 (commit) via a84627454ba887bee7b6563a5101c2ce065ae386 (commit) via c2e8be7543952675059c12a828d438646562f94d (commit) via d2cbb39524e0c970b9808dc1ea372cfaa6fef685 (commit) from bb22c4057f31346b3d8f43929c759f692a7e7ef9 (commit) - Log ----------------------------------------------------------------- commit 6fc37bee4a5f81d8f00e6ad45865b6b697163f06 Author: Andy Polyakov Date: Sat Apr 15 15:53:50 2017 +0200 asn1/a_int.c: clean up asn1_get_int64. Trouble was that integer negation wasn't producing *formally* correct result in platform-neutral sense. Formally correct thing to do is -(int64_t)u, but this triggers undefined behaviour for one value that would still be representable in ASN.1. The trigger was masked with (int64_t)(0-u), but this is formally inappropriate for values other than the problematic one. [Also reorder branches to favour most-likely paths and harmonize asn1_string_set_int64 with asn1_get_int64].] Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3231) (cherry picked from commit 786b6a45fbecc068d0fb8b05252a9228e0661c63) commit a84627454ba887bee7b6563a5101c2ce065ae386 Author: Andy Polyakov Date: Wed Apr 12 00:05:26 2017 +0200 asn1/a_int.c: don't write result if returning error. Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3192) (cherry picked from commit b997adb3a518b065240e70acf38ec5f77a937f53) commit c2e8be7543952675059c12a828d438646562f94d Author: Andy Polyakov Date: Wed Apr 12 00:03:35 2017 +0200 asn1/a_int.c: simplify asn1_put_uint64. Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3192) (cherry picked from commit 6d4321fc242829490e1e7a36358eb12874c9b9e0) commit d2cbb39524e0c970b9808dc1ea372cfaa6fef685 Author: Andy Polyakov Date: Tue Apr 11 23:15:55 2017 +0200 asn1/a_int.c: remove code duplicate and optimize branches, i.e. reduce amount of branches and favour likely ones. Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3192) (cherry picked from commit a3ea6bf0ef703b38a656245931979c7e53c410b7) ----------------------------------------------------------------------- Summary of changes: crypto/asn1/a_int.c | 234 ++++++++++++++++++++++------------------------------ 1 file changed, 100 insertions(+), 134 deletions(-) diff --git a/crypto/asn1/a_int.c b/crypto/asn1/a_int.c index 4981ddb..e154343 100644 --- a/crypto/asn1/a_int.c +++ b/crypto/asn1/a_int.c @@ -66,71 +66,74 @@ int ASN1_INTEGER_cmp(const ASN1_INTEGER *x, const ASN1_INTEGER *y) * followed by optional zeros isn't padded. */ +/* + * If |pad| is zero, the operation is effectively reduced to memcpy, + * and if |pad| is 0xff, then it performs two's complement, ~dst + 1. + * Note that in latter case sequence of zeros yields itself, and so + * does 0x80 followed by any number of zeros. These properties are + * used elsewhere below... + */ +static void twos_complement(unsigned char *dst, const unsigned char *src, + size_t len, unsigned char pad) +{ + unsigned int carry = pad & 1; + + /* Begin at the end of the encoding */ + dst += len; + src += len; + /* two's complement value: ~value + 1 */ + while (len-- != 0) { + *(--dst) = (unsigned char)(carry += *(--src) ^ pad); + carry >>= 8; + } +} + static size_t i2c_ibuf(const unsigned char *b, size_t blen, int neg, unsigned char **pp) { - int pad = 0; + unsigned int pad = 0; size_t ret, i; unsigned char *p, pb = 0; - const unsigned char *n; - if (b == NULL || blen == 0) - ret = 1; - else { + if (b != NULL && blen) { ret = blen; i = b[0]; - if (ret == 1 && i == 0) - neg = 0; if (!neg && (i > 127)) { pad = 1; pb = 0; } else if (neg) { + pb = 0xFF; if (i > 128) { pad = 1; - pb = 0xFF; } else if (i == 128) { /* - * Special case: if any other bytes non zero we pad: - * otherwise we don't. + * Special case [of minimal negative for given length]: + * if any other bytes non zero we pad, otherwise we don't. */ - for (i = 1; i < blen; i++) - if (b[i]) { - pad = 1; - pb = 0xFF; - break; - } + for (pad = 0, i = 1; i < blen; i++) + pad |= b[i]; + pb = pad != 0 ? 0xffU : 0; + pad = pb & 1; } } ret += pad; + } else { + ret = 1; + blen = 0; /* reduce '(b == NULL || blen == 0)' to '(blen == 0)' */ } - if (pp == NULL) + + if (pp == NULL || (p = *pp) == NULL) return ret; - p = *pp; - if (pad) - *(p++) = pb; - if (b == NULL || blen == 0) - *p = 0; - else if (!neg) - memcpy(p, b, blen); - else { - /* Begin at the end of the encoding */ - n = b + blen; - p += blen; - i = blen; - /* Copy zeros to destination as long as source is zero */ - while (!n[-1] && i > 1) { - *(--p) = 0; - n--; - i--; - } - /* Complement and increment next octet */ - *(--p) = ((*(--n)) ^ 0xff) + 1; - i--; - /* Complement any octets left */ - for (; i > 0; i--) - *(--p) = *(--n) ^ 0xff; - } + /* + * This magically handles all corner cases, such as '(b == NULL || + * blen == 0)', non-negative value, "negative" zero, 0x80 followed + * by any number of zeros... + */ + *p = pb; + p += pad; /* yes, p[0] can be written twice, but it's little + * price to pay for eliminated branches */ + twos_complement(p, b, blen, pb); *pp += ret; return ret; @@ -145,7 +148,6 @@ static size_t i2c_ibuf(const unsigned char *b, size_t blen, int neg, static size_t c2i_ibuf(unsigned char *b, int *pneg, const unsigned char *p, size_t plen) { - size_t i; int neg, pad; /* Zero content length is illegal */ if (plen == 0) { @@ -157,7 +159,7 @@ static size_t c2i_ibuf(unsigned char *b, int *pneg, *pneg = neg; /* Handle common case where length is 1 octet separately */ if (plen == 1) { - if (b) { + if (b != NULL) { if (neg) b[0] = (p[0] ^ 0xFF) + 1; else @@ -174,46 +176,14 @@ static size_t c2i_ibuf(unsigned char *b, int *pneg, ASN1err(ASN1_F_C2I_IBUF, ASN1_R_ILLEGAL_PADDING); return 0; } - /* If positive just copy across */ - if (neg == 0) { - if (b) - memcpy(b, p + pad, plen - pad); - return plen - pad; - } - - if (neg && pad) { - /* check is any following octets are non zero */ - for (i = 1; i < plen; i++) { - if (p[i] != 0) - break; - } - /* if all bytes are zero handle as special case */ - if (i == plen) { - if (b) { - b[0] = 1; - memset(b + 1, 0, plen - 1); - } - return plen; - } - } + /* skip over pad */ + p += pad; plen -= pad; - /* Must be negative: calculate twos complement */ - if (b) { - const unsigned char *from = p + plen - 1 + pad; - unsigned char *to = b + plen; - i = plen; - while (*from == 0 && i) { - *--to = 0; - i--; - from--; - } - *--to = (*from-- ^ 0xff) + 1; - OPENSSL_assert(i != 0); - i--; - for (; i > 0; i--) - *--to = *from-- ^ 0xff; - } + + if (b != NULL) + twos_complement(b, p, plen, neg ? 0xffU : 0); + return plen; } @@ -226,56 +196,43 @@ int i2c_ASN1_INTEGER(ASN1_INTEGER *a, unsigned char **pp) static int asn1_get_uint64(uint64_t *pr, const unsigned char *b, size_t blen) { size_t i; + uint64_t r; + if (blen > sizeof(*pr)) { ASN1err(ASN1_F_ASN1_GET_UINT64, ASN1_R_TOO_LARGE); return 0; } - *pr = 0; if (b == NULL) return 0; - for (i = 0; i < blen; i++) { - *pr <<= 8; - *pr |= b[i]; + for (r = 0, i = 0; i < blen; i++) { + r <<= 8; + r |= b[i]; } + *pr = r; return 1; } -static size_t asn1_put_uint64(unsigned char *b, uint64_t r) +/* + * Write uint64_t to big endian buffer and return offset to first + * written octet. In other words it returns offset in range from 0 + * to 7, with 0 denoting 8 written octets and 7 - one. + */ +static size_t asn1_put_uint64(unsigned char b[sizeof(uint64_t)], uint64_t r) { - if (r >= 0x100) { - unsigned char *p; - uint64_t rtmp = r; - size_t i = 0; - - /* Work out how many bytes we need */ - while (rtmp) { - rtmp >>= 8; - i++; - } - - /* Copy from end to beginning */ - p = b + i - 1; + size_t off = sizeof(uint64_t); - do { - *p-- = r & 0xFF; - r >>= 8; - } while (p >= b); - - return i; - } - - b[0] = (unsigned char)r; - return 1; + do { + b[--off] = (unsigned char)r; + } while (r >>= 8); + return off; } /* - * Absolute value of INT64_MIN: we can't just use -INT64_MIN as it produces + * Absolute value of INT64_MIN: we can't just use -INT64_MIN as gcc produces * overflow warnings. */ - -#define ABS_INT64_MIN \ - ((uint64_t)INT64_MAX + (uint64_t)(-(INT64_MIN + INT64_MAX))) +#define ABS_INT64_MIN ((uint64_t)INT64_MAX + (-(INT64_MIN + INT64_MAX))) /* signed version of asn1_get_uint64 */ static int asn1_get_int64(int64_t *pr, const unsigned char *b, size_t blen, @@ -285,17 +242,25 @@ static int asn1_get_int64(int64_t *pr, const unsigned char *b, size_t blen, if (asn1_get_uint64(&r, b, blen) == 0) return 0; if (neg) { - if (r > ABS_INT64_MIN) { + if (r <= INT64_MAX) { + /* Most significant bit is guaranteed to be clear, negation + * is guaranteed to be meaningful in platform-neutral sense. */ + *pr = -(int64_t)r; + } else if (r == ABS_INT64_MIN) { + /* This never happens if INT64_MAX == ABS_INT64_MIN, e.g. + * on ones'-complement system. */ + *pr = (int64_t)(0 - r); + } else { ASN1err(ASN1_F_ASN1_GET_INT64, ASN1_R_TOO_SMALL); return 0; } - *pr = 0 - (uint64_t)r; } else { - if (r > INT64_MAX) { + if (r <= INT64_MAX) { + *pr = (int64_t)r; + } else { ASN1err(ASN1_F_ASN1_GET_INT64, ASN1_R_TOO_LARGE); return 0; } - *pr = (int64_t)r; } return 1; } @@ -356,18 +321,22 @@ static int asn1_string_get_int64(int64_t *pr, const ASN1_STRING *a, int itype) static int asn1_string_set_int64(ASN1_STRING *a, int64_t r, int itype) { unsigned char tbuf[sizeof(r)]; - size_t l; + size_t off; + a->type = itype; if (r < 0) { - l = asn1_put_uint64(tbuf, -r); + /* Most obvious '-r' triggers undefined behaviour for most + * common INT64_MIN. Even though below '0 - (uint64_t)r' can + * appear two's-complement centric, it does produce correct/ + * expected result even on one's-complement. This is because + * cast to unsigned has to change bit pattern... */ + off = asn1_put_uint64(tbuf, 0 - (uint64_t)r); a->type |= V_ASN1_NEG; } else { - l = asn1_put_uint64(tbuf, r); + off = asn1_put_uint64(tbuf, r); a->type &= ~V_ASN1_NEG; } - if (l == 0) - return 0; - return ASN1_STRING_set(a, tbuf, l); + return ASN1_STRING_set(a, tbuf + off, sizeof(tbuf) - off); } static int asn1_string_get_uint64(uint64_t *pr, const ASN1_STRING *a, @@ -391,12 +360,11 @@ static int asn1_string_get_uint64(uint64_t *pr, const ASN1_STRING *a, static int asn1_string_set_uint64(ASN1_STRING *a, uint64_t r, int itype) { unsigned char tbuf[sizeof(r)]; - size_t l; + size_t off; + a->type = itype; - l = asn1_put_uint64(tbuf, r); - if (l == 0) - return 0; - return ASN1_STRING_set(a, tbuf, l); + off = asn1_put_uint64(tbuf, r); + return ASN1_STRING_set(a, tbuf + off, sizeof(tbuf) - off); } /* @@ -643,11 +611,9 @@ int c2i_uint64_int(uint64_t *ret, int *neg, const unsigned char **pp, long len) int i2c_uint64_int(unsigned char *p, uint64_t r, int neg) { unsigned char buf[sizeof(uint64_t)]; - size_t buflen; + size_t off; - buflen = asn1_put_uint64(buf, r); - if (p == NULL) - return i2c_ibuf(buf, buflen, neg, NULL); - return i2c_ibuf(buf, buflen, neg, &p); + off = asn1_put_uint64(buf, r); + return i2c_ibuf(buf + off, sizeof(buf) - off, neg, &p); } From rsalz at openssl.org Wed Apr 26 01:00:51 2017 From: rsalz at openssl.org (Rich Salz) Date: Wed, 26 Apr 2017 01:00:51 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493168451.304949.21677.nullmailer@dev.openssl.org> The branch master has been updated via d91b7423af79447df90cc0245b6944fce93302d1 (commit) from dd05be5d7809cb831718820eedd86269b2504180 (commit) - Log ----------------------------------------------------------------- commit d91b7423af79447df90cc0245b6944fce93302d1 Author: Rich Salz Date: Tue Apr 25 20:50:59 2017 -0400 evp_test.c: Add PrivPubKeyPair tests Reviewed-by: Stephen Henson Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3245) ----------------------------------------------------------------------- Summary of changes: test/evp_test.c | 130 ++++ test/evptests.txt | 1791 ++++++++++++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 1920 insertions(+), 1 deletion(-) diff --git a/test/evp_test.c b/test/evp_test.c index f99269d..e7396f7 100644 --- a/test/evp_test.c +++ b/test/evp_test.c @@ -273,6 +273,7 @@ static const struct evp_test_method pderive_test_method; static const struct evp_test_method pbe_test_method; static const struct evp_test_method encode_test_method; static const struct evp_test_method kdf_test_method; +static const struct evp_test_method keypair_test_method; static const struct evp_test_method *evp_test_list[] = { &digest_test_method, @@ -286,6 +287,7 @@ static const struct evp_test_method *evp_test_list[] = { &pbe_test_method, &encode_test_method, &kdf_test_method, + &keypair_test_method, NULL }; @@ -2050,3 +2052,131 @@ static const struct evp_test_method kdf_test_method = { kdf_test_parse, kdf_test_run }; + +struct keypair_test_data { + EVP_PKEY *privk; + EVP_PKEY *pubk; +}; + +static int keypair_test_init(struct evp_test *t, const char *pair) +{ + int rv = 0; + EVP_PKEY *pk = NULL, *pubk = NULL; + char *pub, *priv = NULL; + const char *err = "INTERNAL_ERROR"; + struct keypair_test_data *data; + + priv = OPENSSL_strdup(pair); + if (priv == NULL) + return 0; + pub = strchr(priv, ':'); + if ( pub == NULL ) { + fprintf(stderr, "Wrong syntax \"%s\"\n", pair); + goto end; + } + *pub++ = 0; /* split priv and pub strings */ + + if (find_key(&pk, priv, t->private) == 0) { + fprintf(stderr, "Cannot find private key: %s\n", priv); + err = "MISSING_PRIVATE_KEY"; + goto end; + } + if (find_key(&pubk, pub, t->public) == 0) { + fprintf(stderr, "Cannot find public key: %s\n", pub); + err = "MISSING_PUBLIC_KEY"; + goto end; + } + + if (pk == NULL && pubk == NULL) { + /* Both keys are listed but unsupported: skip this test */ + t->skip = 1; + rv = 1; + goto end; + } + + data = OPENSSL_malloc(sizeof(*data)); + if (data == NULL ) + goto end; + + data->privk = pk; + data->pubk = pubk; + t->data = data; + + rv = 1; + err = NULL; + +end: + if (priv) + OPENSSL_free(priv); + t->err = err; + return rv; +} + +static void keypair_test_cleanup(struct evp_test *t) +{ + struct keypair_test_data *data = t->data; + t->data = NULL; + if (data) + test_free(data); + return; +} + +/* For test that do not accept any custom keyword: + * return 0 if called + */ +static int void_test_parse(struct evp_test *t, const char *keyword, const char *value) +{ + return 0; +} + +static int keypair_test_run(struct evp_test *t) +{ + int rv = 0; + const struct keypair_test_data *pair = t->data; + const char *err = "INTERNAL_ERROR"; + + if (pair == NULL) + goto end; + + if (pair->privk == NULL || pair->pubk == NULL) { + /* this can only happen if only one of the keys is not set + * which means that one of them was unsupported while the + * other isn't: hence a key type mismatch. + */ + err = "KEYPAIR_TYPE_MISMATCH"; + rv = 1; + goto end; + } + + if ((rv = EVP_PKEY_cmp(pair->privk, pair->pubk)) != 1 ) { + if ( 0 == rv ) { + err = "KEYPAIR_MISMATCH"; + } else if ( -1 == rv ) { + err = "KEYPAIR_TYPE_MISMATCH"; + } else if ( -2 == rv ) { + err = "UNSUPPORTED_KEY_COMPARISON"; + } else { + fprintf(stderr, "Unexpected error in key comparison\n"); + rv = 0; + goto end; + } + rv = 1; + goto end; + } + + rv = 1; + err = NULL; + +end: + t->err = err; + return rv; +} + +static const struct evp_test_method keypair_test_method = { + "PrivPubKeyPair", + keypair_test_init, + keypair_test_cleanup, + void_test_parse, + keypair_test_run +}; + diff --git a/test/evptests.txt b/test/evptests.txt index cad828f..adc35e4 100644 --- a/test/evptests.txt +++ b/test/evptests.txt @@ -2666,6 +2666,9 @@ uYV3hp2g6nGDU/ByJ1SIaRNkh2DRIr5nbg/Eg90g/8Mb2pajGWbJqi51rQPeR+HE TwIDAQAB -----END PUBLIC KEY----- +PrivPubKeyPair = RSA-2048:RSA-2048-PUBLIC + + # EC P-256 key PrivateKey=P-256 @@ -2683,6 +2686,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAELBUPQpznDyFsJSz14GLOH2Oc1dFl x/iUJAcsJxl9eLM7kg6VzbZk6ZDc8M/qDZTiqOavnQ5YBW5lMQSSW5/myQ== -----END PUBLIC KEY----- +PrivPubKeyPair = P-256:P-256-PUBLIC + + # Additional EC key for ECDH PrivateKey=P-256-Peer -----BEGIN PRIVATE KEY----- @@ -2697,6 +2703,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIAbl4UoHiqc/uKYl5WElS78tDU/s CrmVlCNy6lFAldO8IPkSyzGPMjSvZI6nIGQ7P3Afm3reuJ0KvnTZ77acRg== -----END PUBLIC KEY----- +PrivPubKeyPair = P-256-Peer:P-256-Peer-PUBLIC + + # DSA key PrivateKey=DSA-1024 -----BEGIN PRIVATE KEY----- @@ -2723,6 +2732,9 @@ SeKFo+Rg0GrBI+Wg2Tj+Yn6V8Xs+Xyjim1wsd2P6/BlJzCEr4nHjP9JcBICqM3vI SzJw2oHciIOt+UU= -----END PUBLIC KEY----- +PrivPubKeyPair = DSA-1024:DSA-1024-PUBLIC + + # RSA tests Sign = RSA-2048 @@ -3191,6 +3203,9 @@ gCwL7Ksyj4posAc721Rv7qmAnShJkSs5DBUyvH4px2WPgXX65G80My/4e8qz5AZJ uYV3hp2g6nGDU/ByJ1SIaRNkh2DRIr5nbg/Eg90g/8Mb2pajGWbJqi51rQPeR+HE TwIDAQAB -----END PUBLIC KEY----- + +PrivPubKeyPair = RSA-PSS:RSA-PSS-DEFAULT + # Key with invalid negative minimum salt length PublicKey = RSA-PSS-BAD -----BEGIN PUBLIC KEY----- @@ -3203,6 +3218,9 @@ yrPkBkm5hXeGnaDqcYNT8HInVIhpE2SHYNEivmduD8SD3SD/wxvalqMZZsmqLnWt A95H4cRPAgMBAAE= -----END PUBLIC KEY----- +PrivPubKeyPair = RSA-PSS:RSA-PSS-BAD + + # Key with minimum salt length exceeding maximum permitted value PublicKey = RSA-PSS-BAD2 -----BEGIN PUBLIC KEY----- @@ -3215,6 +3233,9 @@ e8qz5AZJuYV3hp2g6nGDU/ByJ1SIaRNkh2DRIr5nbg/Eg90g/8Mb2pajGWbJqi51 rQPeR+HETwIDAQAB -----END PUBLIC KEY----- +PrivPubKeyPair = RSA-PSS:RSA-PSS-BAD2 + + # Verify using default parameters Verify = RSA-PSS-DEFAULT Input="0123456789ABCDEF0123" @@ -4096,6 +4117,9 @@ PublicKey=Alice-25519-PUBLIC -----BEGIN PUBLIC KEY----- MCowBQYDK2VuAyEAhSDwCYkwp1R0i33ctD73Wg2/Og0mOBr066SpjqqbTmo= -----END PUBLIC KEY----- + +PrivPubKeyPair = Alice-25519:Alice-25519-PUBLIC + PrivateKey=Bob-25519 -----BEGIN PRIVATE KEY----- MC4CAQAwBQYDK2VuBCIEIF2rCH5iSopLeeF/i4OADuZvO7EpJhi2/Rwviyf/iODr @@ -4105,6 +4129,8 @@ PublicKey=Bob-25519-PUBLIC MCowBQYDK2VuAyEA3p7bfXt9wbTTW2HC7OQ1Nz+DQ8hbeGdNrfx+FG+IK08= -----END PUBLIC KEY----- +PrivPubKeyPair = Bob-25519:Bob-25519-PUBLIC + Derive=Alice-25519 PeerKey=Bob-25519-PUBLIC SharedSecret=4A5D9D5BA4CE2DE1728E3BF480350F25E07E21C947D19E3376F09B3C1E161742 @@ -5263,6 +5289,9 @@ MDIwEAYHKoZIzj0CAQYFK4EEAAYDHgAEng1OA5HXFACvczp4zjpapdbbMDoWexQw oUXBzA== -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_secp112r1:ALICE_secp112r1_PUB + + PrivateKey=BOB_secp112r1 -----BEGIN PRIVATE KEY----- ME4CAQAwEAYHKoZIzj0CAQYFK4EEAAYENzA1AgEBBA5pIbX+hEq49mFPjUl4/6Eg @@ -5275,6 +5304,9 @@ MDIwEAYHKoZIzj0CAQYFK4EEAAYDHgAEGw81kebWlx3DXTiJvAjJwJ76vm+h5F9B RlFndw== -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_secp112r1:BOB_secp112r1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_secp112r1 PeerKey=BOB_secp112r1_PUB @@ -5299,6 +5331,9 @@ MDIwEAYHKoZIzj0CAQYFK4EEAAcDHgAEkngvtWjnQ1nlUZnic2TEU1yMlDAMhBvX /0iQsQ== -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_secp112r2:ALICE_secp112r2_PUB + + PrivateKey=BOB_secp112r2 -----BEGIN PRIVATE KEY----- ME4CAQAwEAYHKoZIzj0CAQYFK4EEAAcENzA1AgEBBA4D9oGGj+O8vjZz3OZNaqEg @@ -5311,6 +5346,9 @@ MDIwEAYHKoZIzj0CAQYFK4EEAAcDHgAE1k6/mBTO9VuAAelOC7eFSFNC0HwtqZMQ h9pFYQ== -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_secp112r2:BOB_secp112r2_PUB + + # ECDH Alice with Bob peer Derive=ALICE_secp112r2 PeerKey=BOB_secp112r2_PUB @@ -5335,6 +5373,9 @@ MDYwEAYHKoZIzj0CAQYFK4EEABwDIgAEH2n0icp87inv7kUYrEFjpZuHJ4DqArhH S+Zfp2XXO1A= -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_secp128r1:ALICE_secp128r1_PUB + + PrivateKey=BOB_secp128r1 -----BEGIN PRIVATE KEY----- MFQCAQAwEAYHKoZIzj0CAQYFK4EEABwEPTA7AgEBBBCGbEd3Hhwr76XbQekhIrDT @@ -5347,6 +5388,9 @@ MDYwEAYHKoZIzj0CAQYFK4EEABwDIgAENKjS0HNx/gEKYQNNab9v8zlW/D4zSjv3 Ny3Ep0GVYms= -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_secp128r1:BOB_secp128r1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_secp128r1 PeerKey=BOB_secp128r1_PUB @@ -5371,6 +5415,9 @@ MDYwEAYHKoZIzj0CAQYFK4EEAB0DIgAEBVdjcUpR+b6LRPm6R8fAD/6kBxV0Kl39 39Wn0+nUpf8= -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_secp128r2:ALICE_secp128r2_PUB + + PrivateKey=BOB_secp128r2 -----BEGIN PRIVATE KEY----- MFQCAQAwEAYHKoZIzj0CAQYFK4EEAB0EPTA7AgEBBBACp00jw5D7obvDmJp7wDuA @@ -5383,6 +5430,9 @@ MDYwEAYHKoZIzj0CAQYFK4EEAB0DIgAEBO3BbVrc5SvhvN+fmWShu2tWIFQap5ys 5RHMCLLl098= -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_secp128r2:BOB_secp128r2_PUB + + # ECDH Alice with Bob peer Derive=ALICE_secp128r2 PeerKey=BOB_secp128r2_PUB @@ -5408,6 +5458,9 @@ MD4wEAYHKoZIzj0CAQYFK4EEAAkDKgAEdw7tHStvLUslsWEs/xLNlqq+AvmzXydb oiuCdwRUuVHXOPJ7McX44w== -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_secp160k1:ALICE_secp160k1_PUB + + PrivateKey=BOB_secp160k1 -----BEGIN PRIVATE KEY----- MGECAQAwEAYHKoZIzj0CAQYFK4EEAAkESjBIAgEBBBUA5fNiCFVGPM1aHuwXUvuh @@ -5421,6 +5474,9 @@ MD4wEAYHKoZIzj0CAQYFK4EEAAkDKgAEB5TOqLZmqbdP9LHPuW3D6GE+nH8gEb+F VDjqOiNngRlyyJvNdta4nA== -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_secp160k1:BOB_secp160k1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_secp160k1 PeerKey=BOB_secp160k1_PUB @@ -5446,6 +5502,9 @@ MD4wEAYHKoZIzj0CAQYFK4EEAAgDKgAEh0DdQxgV7Xchd/gY3yH21oONN3VKl2yF 82aHLQ8jj00GhlW5ZksFwg== -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_secp160r1:ALICE_secp160r1_PUB + + PrivateKey=BOB_secp160r1 -----BEGIN PRIVATE KEY----- MGECAQAwEAYHKoZIzj0CAQYFK4EEAAgESjBIAgEBBBUAsBIwvx6ZABinhsi+bGai @@ -5459,6 +5518,9 @@ MD4wEAYHKoZIzj0CAQYFK4EEAAgDKgAECdvkYaRnnZFGF1Ij2f6ZR1xQcukd18zF BiColxRkgacBfIRkTalA8g== -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_secp160r1:BOB_secp160r1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_secp160r1 PeerKey=BOB_secp160r1_PUB @@ -5484,6 +5546,9 @@ MD4wEAYHKoZIzj0CAQYFK4EEAB4DKgAED0jb4SUKITBH4o16viZau2vZc6LEHz77 iMjoOrIcs1FUuN0fuy4K+Q== -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_secp160r2:ALICE_secp160r2_PUB + + PrivateKey=BOB_secp160r2 -----BEGIN PRIVATE KEY----- MGECAQAwEAYHKoZIzj0CAQYFK4EEAB4ESjBIAgEBBBUA10mjzR2Dy0CLmm/MTAHT @@ -5497,6 +5562,9 @@ MD4wEAYHKoZIzj0CAQYFK4EEAB4DKgAEas2AHEoo8wKNr85jLivLWvLJf24LrgqU cBQ/dwAj+uE84CN63hYbFw== -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_secp160r2:BOB_secp160r2_PUB + + # ECDH Alice with Bob peer Derive=ALICE_secp160r2 PeerKey=BOB_secp160r2_PUB @@ -5522,6 +5590,9 @@ MEYwEAYHKoZIzj0CAQYFK4EEAB8DMgAEz/i/UhpdyusJnr5C8CZ5DDR6dCOUX17p Unx7h2T6eAhq4YunijUC5KWdjkGjyBMQ -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_secp192k1:ALICE_secp192k1_PUB + + PrivateKey=BOB_secp192k1 -----BEGIN PRIVATE KEY----- MGwCAQAwEAYHKoZIzj0CAQYFK4EEAB8EVTBTAgEBBBh8BXPVGQKYCw0v7DY3wZVa @@ -5535,6 +5606,9 @@ MEYwEAYHKoZIzj0CAQYFK4EEAB8DMgAE4CO4cNi0o+rjd8i+Z7xzjpDIj7WpSq/g RrBWnN/UWJqeuJq/sOumwyFjd1ZZTui2 -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_secp192k1:BOB_secp192k1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_secp192k1 PeerKey=BOB_secp192k1_PUB @@ -5560,6 +5634,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACADOgAE9U3/VvpUdurtTqlZo6tR6onm9KBYvj27 +64PjwPgVF/ugV2LE31VYivGvQ9EHJ4RiaUfDgw4RAo= -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_secp224k1:ALICE_secp224k1_PUB + + PrivateKey=BOB_secp224k1 -----BEGIN PRIVATE KEY----- MHkCAQAwEAYHKoZIzj0CAQYFK4EEACAEYjBgAgEBBB0AOjEXYoz8YcWokSf4U5gX @@ -5573,6 +5650,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACADOgAEZcBD4Ce1fs6fhwrA/5/grNkZolnCMGre MKPKayv0DdzxUKhFdcGD5U+gqDt8OQwiAjyo+asL3lA= -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_secp224k1:BOB_secp224k1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_secp224k1 PeerKey=BOB_secp224k1_PUB @@ -5598,6 +5678,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEUcEh0Ggy/rD+Nj9JQozzI+qzPtiU7b2D 2HtdCa4hfbVPXngcRH2B2xN8W+dcHoIxrxO2UFXy4xo= -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_secp224r1:ALICE_secp224r1_PUB + + PrivateKey=BOB_secp224r1 -----BEGIN PRIVATE KEY----- MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBzOHGGUR3fZYg3GSaUN6pxo @@ -5611,6 +5694,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEdwFklK/YoDRU6bM7X2ulNLwqx9TUETMF UM6VV9DB4YcvAzv6pQgVwYEU7IahmSKpX19chbPt2I0= -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_secp224r1:BOB_secp224r1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_secp224r1 PeerKey=BOB_secp224r1_PUB @@ -5636,6 +5722,9 @@ MFYwEAYHKoZIzj0CAQYFK4EEAAoDQgAEgwZsCpJV+DnG2UiSV/ZsZtVq+0z0y6W8 qcSnCkZtFyjcVZa2VPFkApeuhrV9gw8l/tPl4gt4W2kVnGLYOz+ljg== -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_secp256k1:ALICE_secp256k1_PUB + + PrivateKey=BOB_secp256k1 -----BEGIN PRIVATE KEY----- MIGEAgEAMBAGByqGSM49AgEGBSuBBAAKBG0wawIBAQQgChCkFvWtOcrXLmXVGqkR @@ -5649,6 +5738,9 @@ MFYwEAYHKoZIzj0CAQYFK4EEAAoDQgAEBUKCHJHsvlcod0MCVlFHylzW241nveMm RAFhryNgX6rVqooGReVUm+WiF7Uz0ZsIjdHKd9HHe+2BOWfnuWyR1A== -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_secp256k1:BOB_secp256k1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_secp256k1 PeerKey=BOB_secp256k1_PUB @@ -5676,6 +5768,9 @@ RlPe7N6reKM3KIGeM/nyM12eGF6nxqBGue/rkA4Kq/ozTk44uxsaKbegKmfRL8Ll Wgrrp1ItKXMenHPCLlH68DMEhaL1f+7D -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_secp384r1:ALICE_secp384r1_PUB + + PrivateKey=BOB_secp384r1 -----BEGIN PRIVATE KEY----- MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDBRiGXRsb5sUq0b3/dg @@ -5691,6 +5786,9 @@ BmFTuTAu7ua1fYaaGLG3IJsMQC7JDzdfKLNsoCtT53/4flgCyLBtkZJ0k24srwWJ KCISVfXH5bxA6THmlkixe6ieWIxCH/Tz -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_secp384r1:BOB_secp384r1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_secp384r1 PeerKey=BOB_secp384r1_PUB @@ -5721,6 +5819,9 @@ waWsSu2zC5FRTjmr7znXHckR2h7L8cNqURJnUvxsLX4E/KHUKxtOijCMFXi/h9PH xiUmz19GaHJNAzjwqWs= -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_secp521r1:ALICE_secp521r1_PUB + + PrivateKey=BOB_secp521r1 -----BEGIN PRIVATE KEY----- MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIA9C/sMWveRlHPr9P5 @@ -5739,6 +5840,9 @@ KqmxFZ6Om8kZnFEMG5rxvPXkvBixJpOV/ztmrR1OMiBk7k0UFp/wUyVAkvjoCc+B WXWnbHHOWeuNBGakg4s= -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_secp521r1:BOB_secp521r1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_secp521r1 PeerKey=BOB_secp521r1_PUB @@ -5764,6 +5868,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE4m6RrmMwo5E9bVi2BKIKSs++Fqob 20LWT5AmEAop9XJmbjVvgWdI8lRKRpaZ2TzI -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_prime192v1:ALICE_prime192v1_PUB + + PrivateKey=BOB_prime192v1 -----BEGIN PRIVATE KEY----- MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBhewaqXNZlYyqnmuEEE @@ -5777,6 +5884,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEpKcDSRD/9Rbrliggw1Jtuosqq7Ps ysGsmZ2he+2AuqgrYImu8jXEpfbZVh4d4EIM -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_prime192v1:BOB_prime192v1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_prime192v1 PeerKey=BOB_prime192v1_PUB @@ -5802,6 +5912,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQIDMgAEzEh8CT6u+tVWsKUWyiwd7rg0p4OF nhT44b7my+oPFfFKhWikRA+T1CENJWErVQmq -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_prime192v2:ALICE_prime192v2_PUB + + PrivateKey=BOB_prime192v2 -----BEGIN PRIVATE KEY----- MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQIEVTBTAgEBBBggTjqWC1/iHrvKR9/u @@ -5815,6 +5928,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQIDMgAEmuJxvsCz0x8X5KokyCOTwSwCl5l1 H+XTLaZgKXI641458CSCREK/NDCvfoNa2qjf -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_prime192v2:BOB_prime192v2_PUB + + # ECDH Alice with Bob peer Derive=ALICE_prime192v2 PeerKey=BOB_prime192v2_PUB @@ -5840,6 +5956,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQMDMgAEOv4tKUjR5PNuFzujL9Iq0H0r9ssx kMvg8FqP5JWXKJDw3FyhHVPGZpwAAR+4+lFf -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_prime192v3:ALICE_prime192v3_PUB + + PrivateKey=BOB_prime192v3 -----BEGIN PRIVATE KEY----- MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQMEVTBTAgEBBBieW1huqwVU3ev7qgpT @@ -5853,6 +5972,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQMDMgAEl2k4wSEF+vOgWSQInV/oRbrw8sWz dbwUL6eNDlZdCwhuIaGfuTHC7TwEy/qLCr1/ -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_prime192v3:BOB_prime192v3_PUB + + # ECDH Alice with Bob peer Derive=ALICE_prime192v3 PeerKey=BOB_prime192v3_PUB @@ -5878,6 +6000,9 @@ MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQQDPgAEfIJpVggCXUROHgX4h5h66/0Pgr/a MtMqExHQP7zxWYzf3cYAP4V/t9OCT582WjMLnCmdlFnYUPD50dyU -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_prime239v1:ALICE_prime239v1_PUB + + PrivateKey=BOB_prime239v1 -----BEGIN PRIVATE KEY----- MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwEEBGcwZQIBAQQeAbGRRoBgqHVUBFot @@ -5891,6 +6016,9 @@ MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQQDPgAEdRgPsL/Mi3ucJcYibvFJQxDDyLqg UH3iMk266RAHFqoioiGT72TOidBhi+VrUn6NOIyna8foww2M45vR -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_prime239v1:BOB_prime239v1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_prime239v1 PeerKey=BOB_prime239v1_PUB @@ -5916,6 +6044,9 @@ MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQUDPgAELukUodCQsmwzGVR3lLEGKQ6quGd6 kDXNDjjcMrDabBtWKDuuUrgjBGsI7NRbCQ0a5NWTo+EnWe0LXbYN -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_prime239v2:ALICE_prime239v2_PUB + + PrivateKey=BOB_prime239v2 -----BEGIN PRIVATE KEY----- MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwEFBGcwZQIBAQQeAEaCw7ulF8GZcmbj @@ -5929,6 +6060,9 @@ MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQUDPgAEKh0EmYUpj6XbuEGxMBaPmECT8L++ ihUWms4xau0RUYij4HgS1gjSMDfyvvCBUy10RIkw+goxVdUhfW2u -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_prime239v2:BOB_prime239v2_PUB + + # ECDH Alice with Bob peer Derive=ALICE_prime239v2 PeerKey=BOB_prime239v2_PUB @@ -5954,6 +6088,9 @@ MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQYDPgAEFlIB4Yl+5J2u4JLYv8z+itwf+XnO L/BDqNK3uRoYPKHYdYWJkgXxkQ1QDZwNppAQRcxSgTKnJ6V8crbp -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_prime239v3:ALICE_prime239v3_PUB + + PrivateKey=BOB_prime239v3 -----BEGIN PRIVATE KEY----- MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwEGBGcwZQIBAQQeU1KIfJBGvItr8//g @@ -5967,6 +6104,9 @@ MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQYDPgAEepc03AEEgOnI+ivpjGV4ypvn8sRQ aVAb3QAeIEYDQLUBFOdb3kF2MvlnLKV3OCdB3GQgNfZtEHbdn0bq -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_prime239v3:BOB_prime239v3_PUB + + # ECDH Alice with Bob peer Derive=ALICE_prime239v3 PeerKey=BOB_prime239v3_PUB @@ -5992,6 +6132,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEavO8PitKvW9ZsyRod9PZIzb2E0tN pmJBysQHsImcJrf+cPubssM//tNd9EnQFm17RAo2h1CveGBB86dBvzwpeQ== -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_prime256v1:ALICE_prime256v1_PUB + + PrivateKey=BOB_prime256v1 -----BEGIN PRIVATE KEY----- MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgNsLfn/sRZfm9ZcM7 @@ -6005,6 +6148,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEkZsijYFGwAxsZCDgFYfU+yF79mQ0 +iOWDFusDrNu1TDgA9AIjS67+7FtU3asZFLRde/xhaS7xTrmXG3V+Kd4vw== -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_prime256v1:BOB_prime256v1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_prime256v1 PeerKey=BOB_prime256v1_PUB @@ -6029,6 +6175,9 @@ MDQwEAYHKoZIzj0CAQYFK4EEAAQDIAAEAb4k3+tvtVeHrSW9g/S5AWnQBZnZkUvq 1SN7KU2L -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_sect113r1:ALICE_sect113r1_PUB + + PrivateKey=BOB_sect113r1 -----BEGIN PRIVATE KEY----- MFECAQAwEAYHKoZIzj0CAQYFK4EEAAQEOjA4AgEBBA8AmhEq3A9KdbKQUz1F/Myh @@ -6041,6 +6190,9 @@ MDQwEAYHKoZIzj0CAQYFK4EEAAQDIAAEALkkQTcV4yI3s8KxhfFZAcVkevYNFCWg SCAK6XTa -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_sect113r1:BOB_sect113r1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_sect113r1 PeerKey=BOB_sect113r1_PUB @@ -6065,6 +6217,9 @@ MDQwEAYHKoZIzj0CAQYFK4EEAAUDIAAEAU0ExwPbksXGfJL7ElVFAXC0OJuOVNdF cFQkPqBk -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_sect113r2:ALICE_sect113r2_PUB + + PrivateKey=BOB_sect113r2 -----BEGIN PRIVATE KEY----- MFECAQAwEAYHKoZIzj0CAQYFK4EEAAUEOjA4AgEBBA8ABPHhZ0kCp0TocQJIuiuh @@ -6077,6 +6232,9 @@ MDQwEAYHKoZIzj0CAQYFK4EEAAUDIAAEAUou7vlK+++ohsoNCI+lADe9CMz1WcRi ucz8aesK -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_sect113r2:BOB_sect113r2_PUB + + # ECDH Alice with Bob peer Derive=ALICE_sect113r2 PeerKey=BOB_sect113r2_PUB @@ -6101,6 +6259,9 @@ MDgwEAYHKoZIzj0CAQYFK4EEABYDJAAEABT7LAX2I+/osOV0o4uEuBcFEjsSlmdt c9eFSaRBY+EcBA== -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_sect131r1:ALICE_sect131r1_PUB + + PrivateKey=BOB_sect131r1 -----BEGIN PRIVATE KEY----- MFcCAQAwEAYHKoZIzj0CAQYFK4EEABYEQDA+AgEBBBEDxxMzxjxJmYfSZvWJKq+V @@ -6113,6 +6274,9 @@ MDgwEAYHKoZIzj0CAQYFK4EEABYDJAAEAUdDZr6H5ifk3gu3QiglxVUGt/3GRk1L THFuWH7TCd2r2w== -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_sect131r1:BOB_sect131r1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_sect131r1 PeerKey=BOB_sect131r1_PUB @@ -6137,6 +6301,9 @@ MDgwEAYHKoZIzj0CAQYFK4EEABcDJAAEBxaXZn/WQhziZYJtEfj5z/YHjtELfUnK J8q+TGQe3TnHeA== -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_sect131r2:ALICE_sect131r2_PUB + + PrivateKey=BOB_sect131r2 -----BEGIN PRIVATE KEY----- MFcCAQAwEAYHKoZIzj0CAQYFK4EEABcEQDA+AgEBBBEDR9ez/YtS29S7/R5+rUiX @@ -6149,6 +6316,9 @@ MDgwEAYHKoZIzj0CAQYFK4EEABcDJAAEAtkc0EhMOiKCk7BPNzOVo30CxGTknMxQ ldiS8ESqP5ggtA== -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_sect131r2:BOB_sect131r2_PUB + + # ECDH Alice with Bob peer Derive=ALICE_sect131r2 PeerKey=BOB_sect131r2_PUB @@ -6174,6 +6344,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEA9YawwidjEhSmekNdXE5ZV/5eR2NB4OV 2QsTBQvOAGnM8D7TSWDQsXwp -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_sect163k1:ALICE_sect163k1_PUB + + PrivateKey=BOB_sect163k1 -----BEGIN PRIVATE KEY----- MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAEETDBKAgEBBBUCUJ5kItSfXidHXsgokcS7 @@ -6187,6 +6360,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBq2DSdaoHW9wPSEjpk7o30vlmBSsAV16 yRJbgJHjYd415w6vF/lwQdJP -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_sect163k1:BOB_sect163k1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_sect163k1 PeerKey=BOB_sect163k1_PUB @@ -6212,6 +6388,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAIDLAAEBN4/CZ+fAgrRA8LzmeQ8IGBgWLyBAs9c zfFMD30xUnV401kHK/YFsTTA -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_sect163r1:ALICE_sect163r1_PUB + + PrivateKey=BOB_sect163r1 -----BEGIN PRIVATE KEY----- MGMCAQAwEAYHKoZIzj0CAQYFK4EEAAIETDBKAgEBBBUA/nzN5yCavvZlXyDGEihW @@ -6225,6 +6404,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAIDLAAEA7el2R381wAUk5xoc36D7X3S2YGqBoQX Xls/t9fLzZgugDCT/j57R87A -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_sect163r1:BOB_sect163r1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_sect163r1 PeerKey=BOB_sect163r1_PUB @@ -6250,6 +6432,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBx6lsSVkdiqxwj6fz0o2SHSvPBE9AN9t /1Dk8YWB8LC6Ue66d2oatZUP -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_sect163r2:ALICE_sect163r2_PUB + + PrivateKey=BOB_sect163r2 -----BEGIN PRIVATE KEY----- MGMCAQAwEAYHKoZIzj0CAQYFK4EEAA8ETDBKAgEBBBUBXOM9Tm6sKXUlRLlW0HgC @@ -6263,6 +6448,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBsWvMUXAvkyHA4BrXoQ1RFdT6AaJAcLS C49ejT2AtGgWSPP5xReI4YJn -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_sect163r2:BOB_sect163r2_PUB + + # ECDH Alice with Bob peer Derive=ALICE_sect163r2 PeerKey=BOB_sect163r2_PUB @@ -6288,6 +6476,9 @@ MEgwEAYHKoZIzj0CAQYFK4EEABgDNAAEAKBcyRBxQDZTvpPM39ZVXYQS5aJwZfUn NwBn5T26m15RM4MLnYGdklcAM8oMOML999w= -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_sect193r1:ALICE_sect193r1_PUB + + PrivateKey=BOB_sect193r1 -----BEGIN PRIVATE KEY----- MG8CAQAwEAYHKoZIzj0CAQYFK4EEABgEWDBWAgEBBBkAnxvYLKZaw4Rj24WTRBfg @@ -6301,6 +6492,9 @@ MEgwEAYHKoZIzj0CAQYFK4EEABgDNAAEAXw0PWt3PtZT5v9aH0o6WnFtFGOBNEUp YQE/jBjzUHICqMNZTHy9gT2R9yc0GBZ/Dic= -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_sect193r1:BOB_sect193r1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_sect193r1 PeerKey=BOB_sect193r1_PUB @@ -6326,6 +6520,9 @@ MEgwEAYHKoZIzj0CAQYFK4EEABkDNAAEAHhW6xjH4TNPs/e12tsZcsGD+a92kAWk wQFc4m1ISx4omtNyCVI7FXV5zNnaGWVACT4= -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_sect193r2:ALICE_sect193r2_PUB + + PrivateKey=BOB_sect193r2 -----BEGIN PRIVATE KEY----- MG8CAQAwEAYHKoZIzj0CAQYFK4EEABkEWDBWAgEBBBkAvMiVR0abk6pHoeOIBESL @@ -6339,6 +6536,9 @@ MEgwEAYHKoZIzj0CAQYFK4EEABkDNAAEADtKDcwL660+Mm11Vl254GI3TnD+frag dwF+wY5qlMu5VtrUDMHuAP0q3eGQUsrzNo0= -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_sect193r2:BOB_sect193r2_PUB + + # ECDH Alice with Bob peer Derive=ALICE_sect193r2 PeerKey=BOB_sect193r2_PUB @@ -6364,6 +6564,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEANwOK/5tO89VWKpgs3PTpU7nCh2vL6wa Lp+ckitBAJN9n13nCGIixtjlOGVybsjQD9wgahKED/ou6Y5U -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_sect233k1:ALICE_sect233k1_PUB + + PrivateKey=BOB_sect233k1 -----BEGIN PRIVATE KEY----- MH0CAQAwEAYHKoZIzj0CAQYFK4EEABoEZjBkAgEBBB0oa5BrzYxm6mn51Xyphn6X @@ -6377,6 +6580,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAYqIW4UlVB7KYdhFWe3Ys0XYxJpMxwv0 kZI+fbM7AGKzkxLiSAQVqRZCXsqkaLLe9Lz3CaluW8csn/4h -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_sect233k1:BOB_sect233k1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_sect233k1 PeerKey=BOB_sect233k1_PUB @@ -6402,6 +6608,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAdJBMLtn8EFqNb9Y+10PLiU94jMEQvMP nMYMcRkOAfxco64SFKRA1mjKn1dtzHGelnWyFHtzGeyuaRt/ -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_sect233r1:ALICE_sect233r1_PUB + + PrivateKey=BOB_sect233r1 -----BEGIN PRIVATE KEY----- MH4CAQAwEAYHKoZIzj0CAQYFK4EEABsEZzBlAgEBBB4AXHWOeS6fG0XCH3FnHDuS @@ -6415,6 +6624,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAGEUWB9Ne7sXGjDxdxjrC+G76HVtcmSx LS96ZgpHAH6iSP+J4gq/LhyodIAWtiQYwVjFdbvDKX+tLr6J -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_sect233r1:BOB_sect233r1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_sect233r1 PeerKey=BOB_sect233r1_PUB @@ -6440,6 +6652,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEAAMDPgAEGn0Q+l9y/+3PxTevSrgNOGuG4cR2Xs5s 9RteZrZbcJfM5VrEefhjU6MVdDgS20rQEG18agWthoPNwdKH -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_sect239k1:ALICE_sect239k1_PUB + + PrivateKey=BOB_sect239k1 -----BEGIN PRIVATE KEY----- MH4CAQAwEAYHKoZIzj0CAQYFK4EEAAMEZzBlAgEBBB4FBG477KvylisppUFwbDl/ @@ -6453,6 +6668,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEAAMDPgAEBYotPeFF+heZvA5NHiPw4Rd/iA1Lu4fN YU3cmccRE9CKJMRZE1H/63vVjwOy8TzgroiD2VDVQkcUVkrl -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_sect239k1:BOB_sect239k1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_sect239k1 PeerKey=BOB_sect239k1_PUB @@ -6479,6 +6697,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBSgpOw5TMTc4O8HHhw5atJl5mrnWuC6o WVYRYpD1IMvPNTRsAYo4SYRmPIfgzVv/ESVcHVaD1lPNo+eq0HN1qhvRX+4rmGO7 -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_sect283k1:ALICE_sect283k1_PUB + + PrivateKey=BOB_sect283k1 -----BEGIN PRIVATE KEY----- MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAAJXIwfWjYbiM5jEcNw8 @@ -6493,6 +6714,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEA5Ause5pdH6ks7PdyPeoPbYAkz6VD5v8 KTV1b97PiYmZNDeoBY78FQyHRSvdSo+oRew2RacpaCAntRoiWHyN1nAdDSzjCN/m -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_sect283k1:BOB_sect283k1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_sect283k1 PeerKey=BOB_sect283k1_PUB @@ -6519,6 +6743,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAHx6cwnWw+9l3oZHpx+R8nu7SLqUS40T U2uL0W6VTNANIvcJB1b++3okH0FJgFAahbaotafYTyfqCoY11VaxnVqU5/aE7jsD -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_sect283r1:ALICE_sect283r1_PUB + + PrivateKey=BOB_sect283r1 -----BEGIN PRIVATE KEY----- MIGQAgEAMBAGByqGSM49AgEGBSuBBAARBHkwdwIBAQQkACD04gJaVfVxK/Dpbxjq @@ -6533,6 +6760,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEA13mIYMvik12DBp8JkdETMB1ewOw22C/ xhnzLEHmgrG0ewxeANVAoIZy2uv5t0VUJIp4PYdLNaqIguN+9v6U78O4lassIq5I -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_sect283r1:BOB_sect283r1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_sect283r1 PeerKey=BOB_sect283r1_PUB @@ -6561,6 +6791,9 @@ ph7jScTPSwFtTri7yRou9gLBmFDhqV9FhpiuggGGqmW9kHnnav8lCJYwx2Iuuift uqMGJe5TjKUc2fVNkAya2e02LsXjFLouq3tAfibmXWM= -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_sect409k1:ALICE_sect409k1_PUB + + PrivateKey=BOB_sect409k1 -----BEGIN PRIVATE KEY----- MIHBAgEAMBAGByqGSM49AgEGBSuBBAAkBIGpMIGmAgEBBDMIYBGZZcZz4qCdhAV9 @@ -6577,6 +6810,9 @@ i5bSeHmmZ+JPQLTf5RUwqulYKntrA64wN2+OagHVo39b0Wj9MGsCdd0owKSZsl4O YUJLOndGas9jh2IRhBojNefVbU5UrStOu3VXtXxlQ3o= -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_sect409k1:BOB_sect409k1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_sect409k1 PeerKey=BOB_sect409k1_PUB @@ -6605,6 +6841,9 @@ a4YehGPxKcbmgpqW4Wev1tEDVI3JIowICYGUowHXXzgDXoJeR79wgb7ySAlXJXgQ 8Ficr7i0CaqyAuIpFw9FWJT3jheFwnbpDTvIeIozlf4= -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_sect409r1:ALICE_sect409r1_PUB + + PrivateKey=BOB_sect409r1 -----BEGIN PRIVATE KEY----- MIHCAgEAMBAGByqGSM49AgEGBSuBBAAlBIGqMIGnAgEBBDQAsCs1nRgwW97TdKIH @@ -6621,6 +6860,9 @@ NgMp3dJ+ZU7r6Bp+ZH3dL9Uvv8kUiB89UlDlLwBm/W6TlzGuh1FnzXYKVnhnXpzS lRZQsPCceKukbV46Asl8O23b2+DPJgQBGbMfWsgK+KA= -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_sect409r1:BOB_sect409r1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_sect409r1 PeerKey=BOB_sect409r1_PUB @@ -6651,6 +6893,9 @@ PU0Cct0SqVbANAJzwL1umwuKNPblJ6ZEwcBdgw7hWFL6sh+0ayAQ3a8zOizhViJP CnaKR/OoAtaUpCWLSTHDF1gK4/kmlwEx+8o= -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_sect571k1:ALICE_sect571k1_PUB + + PrivateKey=BOB_sect571k1 -----BEGIN PRIVATE KEY----- MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJgSB6DCB5QIBAQRIAVZT4tnX9dMWS6Vd @@ -6669,6 +6914,9 @@ YRDHmopOIijLQmTATV9pYO7CrFBPBjaKNRjPpw/cVOs89X9Jdzx/bolkGqVAsjLN aqcYzbXCQ/Aiij13H06qKhuFM4iiB/0D164= -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_sect571k1:BOB_sect571k1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_sect571k1 PeerKey=BOB_sect571k1_PUB @@ -6699,6 +6947,9 @@ d8YF32SFHMIcWew5g56oF961qv3IvICZnRAOmWyGHeHdYwHxMBSBPNgua42QGoJz 6J6dYAUevE+F3N29p/tRBGNzMFIqoDdW+NA= -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_sect571r1:ALICE_sect571r1_PUB + + PrivateKey=BOB_sect571r1 -----BEGIN PRIVATE KEY----- MIIBAAIBADAQBgcqhkjOPQIBBgUrgQQAJwSB6DCB5QIBAQRIAYj65N5XJTQusn+h @@ -6717,6 +6968,9 @@ I70H8aHvLgrCoMoqOno+h6J4TgvlDq7FIGZ8fvDaM7YJ8dHPX5FC8Vyphu82TcNd nNATBqom6WDWc7RTFZ4sijL5ywVhovwJ1gA= -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_sect571r1:BOB_sect571r1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_sect571r1 PeerKey=BOB_sect571r1_PUB @@ -6742,6 +6996,9 @@ MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAEDLAAEAv02jItmBmOEpmFQqyFVaJpg5zsj ByWdVWePn0/oRP6kaVhzDFuYDmTu -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_c2pnb163v1:ALICE_c2pnb163v1_PUB + + PrivateKey=BOB_c2pnb163v1 -----BEGIN PRIVATE KEY----- MGYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAEETDBKAgEBBBUC3uEAfGc3+a0FOrFh @@ -6755,6 +7012,9 @@ MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAEDLAAEBqIypIZznblEGOl09BsEGw3tWDNc BZI972RpITuTs7KhtUKkC5BXjMCq -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_c2pnb163v1:BOB_c2pnb163v1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_c2pnb163v1 PeerKey=BOB_c2pnb163v1_PUB @@ -6780,6 +7040,9 @@ MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAIDLAAEAWgEzoj1enPInAWFnMy1zOpPrfFO BSDee4ogvEbJiEt/lcjP6zd1AWWs -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_c2pnb163v2:ALICE_c2pnb163v2_PUB + + PrivateKey=BOB_c2pnb163v2 -----BEGIN PRIVATE KEY----- MGYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAIETDBKAgEBBBUBvd/DvKharywckSaW @@ -6793,6 +7056,9 @@ MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAIDLAAEB9PhVnuJm9d0KxGQj8HyEvoAoRF6 BocgVbm7evkkoEuZ0ngxoI1v9+kM -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_c2pnb163v2:BOB_c2pnb163v2_PUB + + # ECDH Alice with Bob peer Derive=ALICE_c2pnb163v2 PeerKey=BOB_c2pnb163v2_PUB @@ -6818,6 +7084,9 @@ MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAMDLAAEBNumA+4RvgmNNvpwQxSiAZzLx1lE Bn5IiHxvcsVfi6bTjAnVOMvUYTPs -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_c2pnb163v3:ALICE_c2pnb163v3_PUB + + PrivateKey=BOB_c2pnb163v3 -----BEGIN PRIVATE KEY----- MGYCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAMETDBKAgEBBBUB9MnYR9NXM8OoCraO @@ -6831,6 +7100,9 @@ MEMwEwYHKoZIzj0CAQYIKoZIzj0DAAMDLAAEB9eUf8QBsq7ZoPoa3QGhp/a1RH1k AO8lAp+LykdniMv6jWH23h0yGkwW -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_c2pnb163v3:BOB_c2pnb163v3_PUB + + # ECDH Alice with Bob peer Derive=ALICE_c2pnb163v3 PeerKey=BOB_c2pnb163v3_PUB @@ -6856,6 +7128,9 @@ MEUwEwYHKoZIzj0CAQYIKoZIzj0DAAQDLgAEQ9alSR2y+QOwYRCnh0rg3k+l3mdz gxZ/Xn+u6nRfrUu6d84FxireKSjKGHI= -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_c2pnb176v1:ALICE_c2pnb176v1_PUB + + PrivateKey=BOB_c2pnb176v1 -----BEGIN PRIVATE KEY----- MGgCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAQETjBMAgEBBBUAJvHHFW0v+/cjaLd7 @@ -6869,6 +7144,9 @@ MEUwEwYHKoZIzj0CAQYIKoZIzj0DAAQDLgAElLO61AJb9aoaaSPNopC72fGNAwKQ t+ep4bO0skGHS7R0TPqlBwQdyM6yynU= -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_c2pnb176v1:BOB_c2pnb176v1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_c2pnb176v1 PeerKey=BOB_c2pnb176v1_PUB @@ -6894,6 +7172,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAUDMgAENmnvubQ0Ngg2leVz3QvkbS4HB0uZ UznJUwpa/1kqT05TLdkxofykaw/OfaF4OimG -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_c2tnb191v1:ALICE_c2tnb191v1_PUB + + PrivateKey=BOB_c2tnb191v1 -----BEGIN PRIVATE KEY----- MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAUEVTBTAgEBBBguzm5uFNRy/lX3OKuJ @@ -6907,6 +7188,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAUDMgAEZGua4XU5rW6kFUTFmUI1KrB1DF+N 7IkbeX9lkEmX4PiENpf/L3mssl/Xq1Erd4Cu -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_c2tnb191v1:BOB_c2tnb191v1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_c2tnb191v1 PeerKey=BOB_c2tnb191v1_PUB @@ -6932,6 +7216,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAYDMgAEAB4ry4UsFtkiWbVD4bldafX0En8+ 8PUiWPHSTqVX/PQ3rz1JSTD3Gkhso1/t5yWX -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_c2tnb191v2:ALICE_c2tnb191v2_PUB + + PrivateKey=BOB_c2tnb191v2 -----BEGIN PRIVATE KEY----- MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAYEVTBTAgEBBBgK9QaS2SDU6yz7uXqO @@ -6945,6 +7232,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAYDMgAEIkdLfaZZu+3s317ycwzXZcmAtKVl /kJifBGr4BBJZJMvzPmF2+bn5BcxVyBH1PaT -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_c2tnb191v2:BOB_c2tnb191v2_PUB + + # ECDH Alice with Bob peer Derive=ALICE_c2tnb191v2 PeerKey=BOB_c2tnb191v2_PUB @@ -6970,6 +7260,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAcDMgAES/hbqfIzp4sUGD8fKVP29Oujx64U 134jXqxRGAP+TlwighJHUQqbgyZ8qqZmgtr8 -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_c2tnb191v3:ALICE_c2tnb191v3_PUB + + PrivateKey=BOB_c2tnb191v3 -----BEGIN PRIVATE KEY----- MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAcEVTBTAgEBBBgEE8Ls7pc1/q3/0ruR @@ -6983,6 +7276,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAAcDMgAEBwGbI5AF2p8Bm10d0ipKCpYuq0n0 ortJVNlxw4mXbS2jzfhIoc+CnhtmDP6d5tXa -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_c2tnb191v3:BOB_c2tnb191v3_PUB + + # ECDH Alice with Bob peer Derive=ALICE_c2tnb191v3 PeerKey=BOB_c2tnb191v3_PUB @@ -7008,6 +7304,9 @@ ME0wEwYHKoZIzj0CAQYIKoZIzj0DAAoDNgAEFLHciAu4excYB0mty8rF442ULXZf qL90IkgP5G2zwzY1mAlEBFMg83izeRaCJ/vRihZDJw== -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_c2pnb208w1:ALICE_c2pnb208w1_PUB + + PrivateKey=BOB_c2pnb208w1 -----BEGIN PRIVATE KEY----- MHQCAQAwEwYHKoZIzj0CAQYIKoZIzj0DAAoEWjBYAgEBBBkAwjGFJOPkZqQPZ+mI @@ -7021,6 +7320,9 @@ ME0wEwYHKoZIzj0CAQYIKoZIzj0DAAoDNgAEDxaP6u0phDLfM4RsZhgIfZy8CurR 4/IPtqMGxbfzpPKPMZXV12F6MrWrorSFDZ8KFd58Ww== -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_c2pnb208w1:BOB_c2pnb208w1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_c2pnb208w1 PeerKey=BOB_c2pnb208w1_PUB @@ -7046,6 +7348,9 @@ MFUwEwYHKoZIzj0CAQYIKoZIzj0DAAsDPgAEM6oQIsXJs+ANKQpF3DzBdG4FdS5D S+qpc5fVTsZiI4FAWCXUvzzPTRAex3wwvF/4JrYK6cKVh8i1EOrN -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_c2tnb239v1:ALICE_c2tnb239v1_PUB + + PrivateKey=BOB_c2tnb239v1 -----BEGIN PRIVATE KEY----- MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwALBGcwZQIBAQQeAGDYCGAXqD03x510 @@ -7059,6 +7364,9 @@ MFUwEwYHKoZIzj0CAQYIKoZIzj0DAAsDPgAECk6Uyh8ULkOVOxZSNZYGwtko/oy7 ZLDPF8dbsEZTeYIBpQ6hWqZ/4Nz3RyzfoukyfCb3b8OMtpq+Qgio -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_c2tnb239v1:BOB_c2tnb239v1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_c2tnb239v1 PeerKey=BOB_c2tnb239v1_PUB @@ -7084,6 +7392,9 @@ MFUwEwYHKoZIzj0CAQYIKoZIzj0DAAwDPgAEQ+ubIYhh82VohwKSVz70PkHsjmYW DvDU/SBRk8AiP71CM9D7XEKK5tnU94MtK2Kscx5nWZFc+oIh1+sY -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_c2tnb239v2:ALICE_c2tnb239v2_PUB + + PrivateKey=BOB_c2tnb239v2 -----BEGIN PRIVATE KEY----- MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwAMBGcwZQIBAQQeE7bhzKZZUm780c0e @@ -7097,6 +7408,9 @@ MFUwEwYHKoZIzj0CAQYIKoZIzj0DAAwDPgAEYgV7bokY6iLMzZTG10c6NDaW11pl Am0TNKVVwzPqe3ylhsQmmm02LHKX0gN4E1dUS0uClBbMGNq2mhln -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_c2tnb239v2:BOB_c2tnb239v2_PUB + + # ECDH Alice with Bob peer Derive=ALICE_c2tnb239v2 PeerKey=BOB_c2tnb239v2_PUB @@ -7122,6 +7436,9 @@ MFUwEwYHKoZIzj0CAQYIKoZIzj0DAA0DPgAEdHMz+tsuO7VcO9IFgsSWTweLoB1a h5WIg6cWrtcUfmO7EGfPwNni4Bf8No7rGGMwbisW0v6Jv2pkTSM8 -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_c2tnb239v3:ALICE_c2tnb239v3_PUB + + PrivateKey=BOB_c2tnb239v3 -----BEGIN PRIVATE KEY----- MIGBAgEAMBMGByqGSM49AgEGCCqGSM49AwANBGcwZQIBAQQeBBPxdeU3MohZc5Jx @@ -7135,6 +7452,9 @@ MFUwEwYHKoZIzj0CAQYIKoZIzj0DAA0DPgAEaHwiwQmoqbPij8+l6hLHVQz0AZLB T5uXhAh8fhTABKqI7qYShICAAX0tvu3EvQ8BQLP14grxUsSoEqAF -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_c2tnb239v3:BOB_c2tnb239v3_PUB + + # ECDH Alice with Bob peer Derive=ALICE_c2tnb239v3 PeerKey=BOB_c2tnb239v3_PUB @@ -7160,6 +7480,9 @@ MF0wEwYHKoZIzj0CAQYIKoZIzj0DABADRgAEfGvSzQo+00VXIDXV7iiGXpI16kzs 6C8rkchA5sVBBY56nSCp0n4FpIXRzafiFQklJD9OrJzA6PXc7tp2n2XhIwvuOmI= -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_c2pnb272w1:ALICE_c2pnb272w1_PUB + + PrivateKey=BOB_c2pnb272w1 -----BEGIN PRIVATE KEY----- MIGMAgEAMBMGByqGSM49AgEGCCqGSM49AwAQBHIwcAIBAQQhAFAKPByX1wlYUpU4 @@ -7173,6 +7496,9 @@ MF0wEwYHKoZIzj0CAQYIKoZIzj0DABADRgAEL8+863IU4uxbEY8jVBjhsrG4W6AF MF6t+aGvoiKHtEMLQa6U158TRapDWp4eRurm6Idvv7hepCPqOMEGySDUwMECiQM= -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_c2pnb272w1:BOB_c2pnb272w1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_c2pnb272w1 PeerKey=BOB_c2pnb272w1_PUB @@ -7200,6 +7526,9 @@ MGUwEwYHKoZIzj0CAQYIKoZIzj0DABEDTgAENzjNA0Vpm6SP2LPeJdNh3Nq0I5hm m8Z5MhYsPg== -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_c2pnb304w1:ALICE_c2pnb304w1_PUB + + PrivateKey=BOB_c2pnb304w1 -----BEGIN PRIVATE KEY----- MIGYAgEAMBMGByqGSM49AgEGCCqGSM49AwARBH4wfAIBAQQlAPP4hz6sa+KdTJ4h @@ -7215,6 +7544,9 @@ MGUwEwYHKoZIzj0CAQYIKoZIzj0DABEDTgAEwdFTMuJRjs7icQF2Z7HfVTiXpM79 ZtbSdBvnaA== -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_c2pnb304w1:BOB_c2pnb304w1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_c2pnb304w1 PeerKey=BOB_c2pnb304w1_PUB @@ -7242,6 +7574,9 @@ TMxVe6MeNbm4ZeSI/oByKHbtW0OnKndGAG9v99D8cF/vjTaRb6vLvON+c4T2F7Lr ercTjzVOWcwnmoMtsbCmnF0mXOw9 -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_c2tnb359v1:ALICE_c2tnb359v1_PUB + + PrivateKey=BOB_c2tnb359v1 -----BEGIN PRIVATE KEY----- MIGwAgEAMBMGByqGSM49AgEGCCqGSM49AwASBIGVMIGSAgEBBC0BRZ3IIh3mrLIX @@ -7257,6 +7592,9 @@ MHMwEwYHKoZIzj0CAQYIKoZIzj0DABIDXAAEO54200NsWGGbZCrMGK/BOj/0dw4P 3rMIczyYv7i5ggBzJtxk+klDt2k2 -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_c2tnb359v1:BOB_c2tnb359v1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_c2tnb359v1 PeerKey=BOB_c2tnb359v1_PUB @@ -7284,6 +7622,9 @@ d6FcgrZ2kbSlJnYVHV5tCIEjOE+EmBDrMfmkGSxiI54RyQmm3Gij0NLGot3Yq1K9 mLDVzQyYlPd0+27lK/g50TxrHwcv5xI= -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_c2pnb368w1:ALICE_c2pnb368w1_PUB + + PrivateKey=BOB_c2pnb368w1 -----BEGIN PRIVATE KEY----- MIGyAgEAMBMGByqGSM49AgEGCCqGSM49AwATBIGXMIGUAgEBBC0AA/woMzOFy8k2 @@ -7299,6 +7640,9 @@ cEzf1PuvCuFsRzu/qDx74lIdTlRe2cWI7FUncp6PN4hxN97KthI+o9un/rlbP37l pNfbfDaQEOvrFRE2bM7jA5uWnarVWUU= -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_c2pnb368w1:BOB_c2pnb368w1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_c2pnb368w1 PeerKey=BOB_c2pnb368w1_PUB @@ -7327,6 +7671,9 @@ MIGFMBMGByqGSM49AgEGCCqGSM49AwAUA24ABDrG8SG4lckR1rrvLRpXYf7Wspmh 3d5le8V1gtxWFFm0NggUyF6glmUqHQL0LuhXWS468O6w05KS0AL6vQ== -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_c2tnb431r1:ALICE_c2tnb431r1_PUB + + PrivateKey=BOB_c2tnb431r1 -----BEGIN PRIVATE KEY----- MIHKAgEAMBMGByqGSM49AgEGCCqGSM49AwAUBIGvMIGsAgEBBDUApanyPgvpfrAu @@ -7343,6 +7690,9 @@ MIGFMBMGByqGSM49AgEGCCqGSM49AwAUA24ABGh3JXuYmh6dGGEmbRhoR2T5pVD/ 6B/Yo/iMN8wLI257Tjm9/C5G+JPCLopCcLILgTwAJM2ZhtPnc08LyQ== -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_c2tnb431r1:BOB_c2tnb431r1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_c2tnb431r1 PeerKey=BOB_c2tnb431r1_PUB @@ -7367,6 +7717,9 @@ MDQwEAYHKoZIzj0CAQYFZysBBAEDIAAEAVBJnQb5p9rXHgrBTMGNARYU11mgXpQ1 gaQJEg3K -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_wap-wsg-idm-ecid-wtls1:ALICE_wap-wsg-idm-ecid-wtls1_PUB + + PrivateKey=BOB_wap-wsg-idm-ecid-wtls1 -----BEGIN PRIVATE KEY----- MFACAQAwEAYHKoZIzj0CAQYFZysBBAEEOTA3AgEBBA5aU6CQ474Z1fH3xAtn/6Ei @@ -7379,6 +7732,9 @@ MDQwEAYHKoZIzj0CAQYFZysBBAEDIAAEAWlvgZNz7m9/meS3jMvHAZlDqpJtiUfy lRum/Byo -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_wap-wsg-idm-ecid-wtls1:BOB_wap-wsg-idm-ecid-wtls1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_wap-wsg-idm-ecid-wtls1 PeerKey=BOB_wap-wsg-idm-ecid-wtls1_PUB @@ -7404,6 +7760,9 @@ MEAwEAYHKoZIzj0CAQYFZysBBAMDLAAEAVdtU8d7/PtcBSquz4paEdQsc5pVA758 l67OJjZnOTbN/Jsz3jbnkDaN -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_wap-wsg-idm-ecid-wtls3:ALICE_wap-wsg-idm-ecid-wtls3_PUB + + PrivateKey=BOB_wap-wsg-idm-ecid-wtls3 -----BEGIN PRIVATE KEY----- MGMCAQAwEAYHKoZIzj0CAQYFZysBBAMETDBKAgEBBBUA/0Ust7IoJ526zn2wiWBu @@ -7417,6 +7776,9 @@ MEAwEAYHKoZIzj0CAQYFZysBBAMDLAAEAe3fv8zDLYuHY4ZVZ2hqmqqJ25qOAr/o ik9XBd5811fylx0iSKfYmXmr -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_wap-wsg-idm-ecid-wtls3:BOB_wap-wsg-idm-ecid-wtls3_PUB + + # ECDH Alice with Bob peer Derive=ALICE_wap-wsg-idm-ecid-wtls3 PeerKey=BOB_wap-wsg-idm-ecid-wtls3_PUB @@ -7441,6 +7803,9 @@ MDQwEAYHKoZIzj0CAQYFZysBBAQDIAAEAHLz0WwK7JHgbOltqDnrABzEKPC5PxR3 GClHzDim -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_wap-wsg-idm-ecid-wtls4:ALICE_wap-wsg-idm-ecid-wtls4_PUB + + PrivateKey=BOB_wap-wsg-idm-ecid-wtls4 -----BEGIN PRIVATE KEY----- MFECAQAwEAYHKoZIzj0CAQYFZysBBAQEOjA4AgEBBA8AFJwmUkKbWdmzvqv+AbWh @@ -7453,6 +7818,9 @@ MDQwEAYHKoZIzj0CAQYFZysBBAQDIAAEAa4jiUskS+K6OeQmwsHpAZbhCsCHz+uD nyQhH1k1 -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_wap-wsg-idm-ecid-wtls4:BOB_wap-wsg-idm-ecid-wtls4_PUB + + # ECDH Alice with Bob peer Derive=ALICE_wap-wsg-idm-ecid-wtls4 PeerKey=BOB_wap-wsg-idm-ecid-wtls4_PUB @@ -7478,6 +7846,9 @@ MEAwEAYHKoZIzj0CAQYFZysBBAUDLAAEANe/dond4SyLts9ChApAQlG00j/VBS7t hUyZC2vKj+GSKwbeRVyiaNg8 -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_wap-wsg-idm-ecid-wtls5:ALICE_wap-wsg-idm-ecid-wtls5_PUB + + PrivateKey=BOB_wap-wsg-idm-ecid-wtls5 -----BEGIN PRIVATE KEY----- MGMCAQAwEAYHKoZIzj0CAQYFZysBBAUETDBKAgEBBBUBraa4aeYxHd9HJ0vLIoCw @@ -7491,6 +7862,9 @@ MEAwEAYHKoZIzj0CAQYFZysBBAUDLAAEB83NhYHyRmrDZTHCTQw6zUBJYQNXBw+I s6hHnZgt7njLu9v0qVRdj6Yo -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_wap-wsg-idm-ecid-wtls5:BOB_wap-wsg-idm-ecid-wtls5_PUB + + # ECDH Alice with Bob peer Derive=ALICE_wap-wsg-idm-ecid-wtls5 PeerKey=BOB_wap-wsg-idm-ecid-wtls5_PUB @@ -7515,6 +7889,9 @@ MDIwEAYHKoZIzj0CAQYFZysBBAYDHgAExnEWLvXVaXmvu1vVcn18ncfVbUwq9Wti 9+Y0Wg== -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_wap-wsg-idm-ecid-wtls6:ALICE_wap-wsg-idm-ecid-wtls6_PUB + + PrivateKey=BOB_wap-wsg-idm-ecid-wtls6 -----BEGIN PRIVATE KEY----- ME4CAQAwEAYHKoZIzj0CAQYFZysBBAYENzA1AgEBBA63i1z4Kl8BEE1I3CYU9KEg @@ -7527,6 +7904,9 @@ MDIwEAYHKoZIzj0CAQYFZysBBAYDHgAEbcW3kXzC+caKZQCYZCt+oCVUkp3OE1Jr e/jspw== -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_wap-wsg-idm-ecid-wtls6:BOB_wap-wsg-idm-ecid-wtls6_PUB + + # ECDH Alice with Bob peer Derive=ALICE_wap-wsg-idm-ecid-wtls6 PeerKey=BOB_wap-wsg-idm-ecid-wtls6_PUB @@ -7552,6 +7932,9 @@ MD4wEAYHKoZIzj0CAQYFZysBBAcDKgAEPxVrBsQ/L7rxBVl31kXjqrwc6lqxfZnT Hk3jhNcva/TzjiFFSTzbSw== -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_wap-wsg-idm-ecid-wtls7:ALICE_wap-wsg-idm-ecid-wtls7_PUB + + PrivateKey=BOB_wap-wsg-idm-ecid-wtls7 -----BEGIN PRIVATE KEY----- MGECAQAwEAYHKoZIzj0CAQYFZysBBAcESjBIAgEBBBUAr42vKjbUXFak2mVzFYpu @@ -7565,7 +7948,10 @@ MD4wEAYHKoZIzj0CAQYFZysBBAcDKgAEiWabhYPp/L7HLqvqanxRT2Hpp3y3YXQA eCaHX0dyeQc7uu4RJmyCkA== -----END PUBLIC KEY----- -# ECDH Alice with Bob peer +PrivPubKeyPair = BOB_wap-wsg-idm-ecid-wtls7:BOB_wap-wsg-idm-ecid-wtls7_PUB + + +# ECDH Alice with Bob peer Derive=ALICE_wap-wsg-idm-ecid-wtls7 PeerKey=BOB_wap-wsg-idm-ecid-wtls7_PUB SharedSecret=990eda6a0406caef965018b97c94d0faa200f6e4 @@ -7589,6 +7975,9 @@ MDIwEAYHKoZIzj0CAQYFZysBBAgDHgAE+JqmAKHuzRLSnxDELNqHyJ4WUWQhaxVO XIxFog== -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_wap-wsg-idm-ecid-wtls8:ALICE_wap-wsg-idm-ecid-wtls8_PUB + + PrivateKey=BOB_wap-wsg-idm-ecid-wtls8 -----BEGIN PRIVATE KEY----- ME8CAQAwEAYHKoZIzj0CAQYFZysBBAgEODA2AgEBBA8AegTrLoMRyPl4U4xOdg6h @@ -7601,6 +7990,9 @@ MDIwEAYHKoZIzj0CAQYFZysBBAgDHgAE0CpMkN4y9hJLugvr0kGs2440pMzXuuzn HKo9jw== -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_wap-wsg-idm-ecid-wtls8:BOB_wap-wsg-idm-ecid-wtls8_PUB + + # ECDH Alice with Bob peer Derive=ALICE_wap-wsg-idm-ecid-wtls8 PeerKey=BOB_wap-wsg-idm-ecid-wtls8_PUB @@ -7626,6 +8018,9 @@ MD4wEAYHKoZIzj0CAQYFZysBBAkDKgAEWwtcsPX9bgTlZTH+WRUHsE4MnPNQKodk xTEkX7owiIXbxk2IEbbuhQ== -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_wap-wsg-idm-ecid-wtls9:ALICE_wap-wsg-idm-ecid-wtls9_PUB + + PrivateKey=BOB_wap-wsg-idm-ecid-wtls9 -----BEGIN PRIVATE KEY----- MGECAQAwEAYHKoZIzj0CAQYFZysBBAkESjBIAgEBBBUAd2kfMclaJU2bg8ayTrjZ @@ -7639,6 +8034,9 @@ MD4wEAYHKoZIzj0CAQYFZysBBAkDKgAENDXlvUyoUHha608jEfRm+efgZ3gkEgcg EoTPA591dRRWM+59Mm7wVw== -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_wap-wsg-idm-ecid-wtls9:BOB_wap-wsg-idm-ecid-wtls9_PUB + + # ECDH Alice with Bob peer Derive=ALICE_wap-wsg-idm-ecid-wtls9 PeerKey=BOB_wap-wsg-idm-ecid-wtls9_PUB @@ -7664,6 +8062,9 @@ MFIwEAYHKoZIzj0CAQYFZysBBAoDPgAEAdWzmBilsnOrI7wuTeeRPCG7gG5dvjC2 uAZxjYtPAbGQLhmrhqoujCx7EaNVrQiMYp1bPn9N/AvAak3g -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_wap-wsg-idm-ecid-wtls10:ALICE_wap-wsg-idm-ecid-wtls10_PUB + + PrivateKey=BOB_wap-wsg-idm-ecid-wtls10 -----BEGIN PRIVATE KEY----- MH0CAQAwEAYHKoZIzj0CAQYFZysBBAoEZjBkAgEBBB0mTqwYwByRuu4zcU1QLKcG @@ -7677,6 +8078,9 @@ MFIwEAYHKoZIzj0CAQYFZysBBAoDPgAEAQXjFOtYAgXURpw0ypMbeTDHBqu0AoUW rI6V77AHAOLqCtrtwVV50PWnlHAPiBlThDOAItLBrvFlsHOC -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_wap-wsg-idm-ecid-wtls10:BOB_wap-wsg-idm-ecid-wtls10_PUB + + # ECDH Alice with Bob peer Derive=ALICE_wap-wsg-idm-ecid-wtls10 PeerKey=BOB_wap-wsg-idm-ecid-wtls10_PUB @@ -7702,6 +8106,9 @@ MFIwEAYHKoZIzj0CAQYFZysBBAsDPgAEAZe91dkxGfATuEAvmIgZSdBplvFi3N0b Ut4iK/6FAGg0EABlSRQ9xoIYwT3yPSlQXGdj/LVF1L+Yn61n -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_wap-wsg-idm-ecid-wtls11:ALICE_wap-wsg-idm-ecid-wtls11_PUB + + PrivateKey=BOB_wap-wsg-idm-ecid-wtls11 -----BEGIN PRIVATE KEY----- MH4CAQAwEAYHKoZIzj0CAQYFZysBBAsEZzBlAgEBBB4AGJuGtQI1FvHfp2AsdKb3 @@ -7715,6 +8122,9 @@ MFIwEAYHKoZIzj0CAQYFZysBBAsDPgAEAHU1t8VOiI3/2PN+WdoUuHzp+l5qdzuo m5Vx65yqATkbsR1UX15H3S+U6nxabg4IcwsgEumTEloYxlea -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_wap-wsg-idm-ecid-wtls11:BOB_wap-wsg-idm-ecid-wtls11_PUB + + # ECDH Alice with Bob peer Derive=ALICE_wap-wsg-idm-ecid-wtls11 PeerKey=BOB_wap-wsg-idm-ecid-wtls11_PUB @@ -7740,6 +8150,9 @@ ME4wEAYHKoZIzj0CAQYFZysBBAwDOgAE3G8wIl9SJ0mAmuIMWbJpFjf9wO8gKNu6 nApye39YhpXeYRL/nm7G6HmiiA5O1iudWC3hDbBH0cc= -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_wap-wsg-idm-ecid-wtls12:ALICE_wap-wsg-idm-ecid-wtls12_PUB + + PrivateKey=BOB_wap-wsg-idm-ecid-wtls12 -----BEGIN PRIVATE KEY----- MHgCAQAwEAYHKoZIzj0CAQYFZysBBAwEYTBfAgEBBBzZ7nt4CrPrk2m5iR64vpkj @@ -7753,6 +8166,9 @@ ME4wEAYHKoZIzj0CAQYFZysBBAwDOgAEukz40I4gWpUmXCM+PLmWGd0IO0XIPQa9 KXzXvhbLdJH0yFkJ+ClSboOC26gtMTICiPhEgYjeKEQ= -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_wap-wsg-idm-ecid-wtls12:BOB_wap-wsg-idm-ecid-wtls12_PUB + + # ECDH Alice with Bob peer Derive=ALICE_wap-wsg-idm-ecid-wtls12 PeerKey=BOB_wap-wsg-idm-ecid-wtls12_PUB @@ -7778,6 +8194,9 @@ MEIwFAYHKoZIzj0CAQYJKyQDAwIIAQEBAyoABCQx/ve3cKi/Zx17M9JS31afTJ2G mT37YfBnXdi59TJ9y8+KN0n/MU4= -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_brainpoolP160r1:ALICE_brainpoolP160r1_PUB + + PrivateKey=BOB_brainpoolP160r1 -----BEGIN PRIVATE KEY----- MGQCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEBBEkwRwIBAQQUb/ulIRG4yoOOihWD @@ -7791,6 +8210,9 @@ MEIwFAYHKoZIzj0CAQYJKyQDAwIIAQEBAyoABE+MQx609ZLgWWAUIe9V8rWdMr9M uxhJwet6B5kBmqfyBoW+CrhsTy8= -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_brainpoolP160r1:BOB_brainpoolP160r1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_brainpoolP160r1 PeerKey=BOB_brainpoolP160r1_PUB @@ -7816,6 +8238,9 @@ MEIwFAYHKoZIzj0CAQYJKyQDAwIIAQECAyoABD+HVVI8q+fZxM+Z8yrQVnebHKmM Iha0Ixq/sYf0VvL6QKtYoDSUVXA= -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_brainpoolP160t1:ALICE_brainpoolP160t1_PUB + + PrivateKey=BOB_brainpoolP160t1 -----BEGIN PRIVATE KEY----- MGQCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQECBEkwRwIBAQQUDFpUx8SZ718X0cwv @@ -7829,6 +8254,9 @@ MEIwFAYHKoZIzj0CAQYJKyQDAwIIAQECAyoABAiANiG7L1yPTggUTQt+iuAk+32u ByO47zVXpZH4Tcs0RMmtizLVf2Q= -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_brainpoolP160t1:BOB_brainpoolP160t1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_brainpoolP160t1 PeerKey=BOB_brainpoolP160t1_PUB @@ -7854,6 +8282,9 @@ MEowFAYHKoZIzj0CAQYJKyQDAwIIAQEDAzIABBwKL1WSX5udilqia/SCs+8O02vu x1DeQY8vqkfO5DqN5z/uN/UyzrOIg4SL8z/I9Q== -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_brainpoolP192r1:ALICE_brainpoolP192r1_PUB + + PrivateKey=BOB_brainpoolP192r1 -----BEGIN PRIVATE KEY----- MHACAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEDBFUwUwIBAQQYkut8HljwyzxOArKA @@ -7867,6 +8298,9 @@ MEowFAYHKoZIzj0CAQYJKyQDAwIIAQEDAzIABL/9zYa3VRAPjzBQpvprl4awtMMV +VB7wlHfzgMnWnNiZe11cNoEuIX15E3k+zEDLg== -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_brainpoolP192r1:BOB_brainpoolP192r1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_brainpoolP192r1 PeerKey=BOB_brainpoolP192r1_PUB @@ -7892,6 +8326,9 @@ MEowFAYHKoZIzj0CAQYJKyQDAwIIAQEEAzIABJgZidttP2SVXcX0oBxU89xTgtjx 6pdiLWxtC17P7+5/6pFhls/Qe0dhQahWiwZNCw== -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_brainpoolP192t1:ALICE_brainpoolP192t1_PUB + + PrivateKey=BOB_brainpoolP192t1 -----BEGIN PRIVATE KEY----- MHACAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEEBFUwUwIBAQQYmZP2vmYpfJvSnqEl @@ -7905,6 +8342,9 @@ MEowFAYHKoZIzj0CAQYJKyQDAwIIAQEEAzIABHEri0hA9rOEiLhHaJmW3QzEpja6 Z3syUb/1vmwkKeG3J0AG9tLaeOyEsP8l6EEgNA== -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_brainpoolP192t1:BOB_brainpoolP192t1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_brainpoolP192t1 PeerKey=BOB_brainpoolP192t1_PUB @@ -7930,6 +8370,9 @@ MFIwFAYHKoZIzj0CAQYJKyQDAwIIAQEFAzoABIq0T5AJJzdDl9wbYqyxExMfTbND t6W/oundZTS6qXYvMegJ+nBcXeCi+FBI0pu6lHv8tF1ZjWLS -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_brainpoolP224r1:ALICE_brainpoolP224r1_PUB + + PrivateKey=BOB_brainpoolP224r1 -----BEGIN PRIVATE KEY----- MHwCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEFBGEwXwIBAQQcvabkJWnrR4LuGUxf @@ -7943,6 +8386,9 @@ MFIwFAYHKoZIzj0CAQYJKyQDAwIIAQEFAzoABM6qgBI9bmZwyYE0QFBJf5NpXe2p hgcObKrG4URjdsORl4UJwlq7eLwINJLP9dPl0Qlb0Fv/gNVo -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_brainpoolP224r1:BOB_brainpoolP224r1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_brainpoolP224r1 PeerKey=BOB_brainpoolP224r1_PUB @@ -7968,6 +8414,9 @@ MFIwFAYHKoZIzj0CAQYJKyQDAwIIAQEGAzoABJiVhwIZAqy+OKj8RewjsdXPPCOD fm+4RGV82bYLW8SqiDeEDB+RvJirYwz/a5Ri+EL5Xk9QVkQF -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_brainpoolP224t1:ALICE_brainpoolP224t1_PUB + + PrivateKey=BOB_brainpoolP224t1 -----BEGIN PRIVATE KEY----- MHwCAQAwFAYHKoZIzj0CAQYJKyQDAwIIAQEGBGEwXwIBAQQcLK5R+idvzqC1a28G @@ -7981,6 +8430,9 @@ MFIwFAYHKoZIzj0CAQYJKyQDAwIIAQEGAzoABBg6ar3lkYSv0AcOM542SbPhAqxn y/anS+DoELViM0rofxlcvkywZiBY0T40xUvXBILDsY/0he22 -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_brainpoolP224t1:BOB_brainpoolP224t1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_brainpoolP224t1 PeerKey=BOB_brainpoolP224t1_PUB @@ -8006,6 +8458,9 @@ MFowFAYHKoZIzj0CAQYJKyQDAwIIAQEHA0IABHiGHSaSKZMZ3imy/aj/70idv3e3 BwrNmV4IHEYn+yijeeSKIre0NbFRHhsxAxW8aUViugPioLvLBZBPix6+QRk= -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_brainpoolP256r1:ALICE_brainpoolP256r1_PUB + + PrivateKey=BOB_brainpoolP256r1 -----BEGIN PRIVATE KEY----- MIGIAgEAMBQGByqGSM49AgEGCSskAwMCCAEBBwRtMGsCAQEEIKXsf2pxFfTQiwbW @@ -8019,6 +8474,9 @@ MFowFAYHKoZIzj0CAQYJKyQDAwIIAQEHA0IABAvxQjYcsWeFXB2PMwXoRW4NzOeA FMOosSevYCNvsaMgFwZ+XfqX/LQBtA9E1KrcUbcAYD1pLeqWOGGAUDGPjTg= -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_brainpoolP256r1:BOB_brainpoolP256r1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_brainpoolP256r1 PeerKey=BOB_brainpoolP256r1_PUB @@ -8044,6 +8502,9 @@ MFowFAYHKoZIzj0CAQYJKyQDAwIIAQEIA0IABIhsZfBNMo94BOIjshQ1XtLVGEvX zXDc5MRMdgomcJtPY20jUBdqSgKApi2UGvFQc/lGanXl2cvUnPFKSVNxYIY= -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_brainpoolP256t1:ALICE_brainpoolP256t1_PUB + + PrivateKey=BOB_brainpoolP256t1 -----BEGIN PRIVATE KEY----- MIGIAgEAMBQGByqGSM49AgEGCSskAwMCCAEBCARtMGsCAQEEIIfXus/y+3RdwUZ0 @@ -8057,6 +8518,9 @@ MFowFAYHKoZIzj0CAQYJKyQDAwIIAQEIA0IABHZWdsjogbJkRD2sPE7KxjZkyy+q tZVc/PjkO/NF8X6PVSBXkdEG5PAoKl9JVreYWxG28xGxeiNp2QiZ3UPVSKA= -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_brainpoolP256t1:BOB_brainpoolP256t1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_brainpoolP256t1 PeerKey=BOB_brainpoolP256t1_PUB @@ -8084,6 +8548,9 @@ caLjX13W0X704bqNvSU7q747RCCbd46miRYsiqYejnsX0A/A5bOiI1LJixCGcAgm 1pnGajKeok/ecsl+ -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_brainpoolP320r1:ALICE_brainpoolP320r1_PUB + + PrivateKey=BOB_brainpoolP320r1 -----BEGIN PRIVATE KEY----- MIGiAgEAMBQGByqGSM49AgEGCSskAwMCCAEBCQSBhjCBgwIBAQQoi9ghqMQp8Zdx @@ -8099,6 +8566,9 @@ kq6yfpE+BMokI+7GXx4dJz9+sKOi8h++T4SnocW03M7I5zOQVfK+82Kkq/vXCzEd kVRUPU4HVls7nil0 -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_brainpoolP320r1:BOB_brainpoolP320r1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_brainpoolP320r1 PeerKey=BOB_brainpoolP320r1_PUB @@ -8126,6 +8596,9 @@ ectX7JwhB/X/bbuNUK1YW9tZJZSZ/bBUfVfEgUhC+0qrvomc3xhyYBJIQeGWODwC 1rHjO2H7GGvx1HmF -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_brainpoolP320t1:ALICE_brainpoolP320t1_PUB + + PrivateKey=BOB_brainpoolP320t1 -----BEGIN PRIVATE KEY----- MIGiAgEAMBQGByqGSM49AgEGCSskAwMCCAEBCgSBhjCBgwIBAQQoMlTiH2CM3XGa @@ -8141,6 +8614,9 @@ Trav1/NGb+i9BQUAsbIMQkdY0zWWbhksoMn56F2DBTSFwBlb1hBtp9fNIGUbgKqO lvtBpQHIoKXYEq3l -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_brainpoolP320t1:BOB_brainpoolP320t1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_brainpoolP320t1 PeerKey=BOB_brainpoolP320t1_PUB @@ -8168,6 +8644,9 @@ TFLQSF0BiPAC0txWjKC+JoyJYQFPrzXSHCPTRgce0BUVMxSMtyAMhflT6vHzO2Mo 5NMeD/FAdTfndqHSryhahQUAUJnekuYftIo4rA== -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_brainpoolP384r1:ALICE_brainpoolP384r1_PUB + + PrivateKey=BOB_brainpoolP384r1 -----BEGIN PRIVATE KEY----- MIG6AgEAMBQGByqGSM49AgEGCSskAwMCCAEBCwSBnjCBmwIBAQQwF6ERsBKPIs2v @@ -8183,6 +8662,9 @@ N2196yhHGPuvOr+fHQL8eFVjgu7x7IsHpPWWG2UpJisuh+/J3ZAa5lNwQUe4RRsl OwlkgxaB+Tsm5NPic5DWtKgJvPjKQCHBam/iGA== -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_brainpoolP384r1:BOB_brainpoolP384r1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_brainpoolP384r1 PeerKey=BOB_brainpoolP384r1_PUB @@ -8210,6 +8692,9 @@ Z+CLsG9P1VZqKZhQC9CEgwdKpPR59i7fa5hPDWrYapCipVR3f2ORUan9Oj2Y/I2m BwMb8+RNSfMpK20+61KW4/Q39rfnqKfWAW0sXA== -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_brainpoolP384t1:ALICE_brainpoolP384t1_PUB + + PrivateKey=BOB_brainpoolP384t1 -----BEGIN PRIVATE KEY----- MIG6AgEAMBQGByqGSM49AgEGCSskAwMCCAEBDASBnjCBmwIBAQQwbFHOFMHlMXRY @@ -8225,6 +8710,9 @@ FsxajHj+mBNzDrHsn0RXCiFc/6JlgVcKVG3d3Gujq3fzIfIU4SFeLWWz1MJcs8xF tjTCbXdreSSnY2tGk+326ezUvSCczSEQ5e6/Mw== -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_brainpoolP384t1:BOB_brainpoolP384t1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_brainpoolP384t1 PeerKey=BOB_brainpoolP384t1_PUB @@ -8254,6 +8742,9 @@ YHJQ9MvMtPd6G+Fj5D0YN1nnyqP3IJ8PyXmOdXBMoMHu+H50QbYZpcUFOqJhKp1T 0+58xTXJdP8axl1IjtI= -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_brainpoolP512r1:ALICE_brainpoolP512r1_PUB + + PrivateKey=BOB_brainpoolP512r1 -----BEGIN PRIVATE KEY----- MIHsAgEAMBQGByqGSM49AgEGCSskAwMCCAEBDQSB0DCBzQIBAQRAZA10+k4+Esme @@ -8271,6 +8762,9 @@ FHGdaRQ3GFODGvkE6z2d2kwv3Fmsq9+gu4By2OhSCfP+hpFhobXAYwWXzgaBFH+T qlF31Dyr2fuPnkL7tK4= -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_brainpoolP512r1:BOB_brainpoolP512r1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_brainpoolP512r1 PeerKey=BOB_brainpoolP512r1_PUB @@ -8300,6 +8794,9 @@ ctAoWkQ21E0HjPjwqZbxmvBD0S9opVycFR8XUSaK0EHyHO7hfuVsdyYzIIjpKViP 7uOOtrggsTepWzBQt9I= -----END PUBLIC KEY----- +PrivPubKeyPair = ALICE_brainpoolP512t1:ALICE_brainpoolP512t1_PUB + + PrivateKey=BOB_brainpoolP512t1 -----BEGIN PRIVATE KEY----- MIHsAgEAMBQGByqGSM49AgEGCSskAwMCCAEBDgSB0DCBzQIBAQRAFStrWBwOtTlY @@ -8317,6 +8814,9 @@ cnT+P41yi/XBVK7xgaL1R2U+vCxWsje6JLixWEdJkJ+6TqPKICdriNge1zbjvfhb 01zP58E/Xsgh5/deJco= -----END PUBLIC KEY----- +PrivPubKeyPair = BOB_brainpoolP512t1:BOB_brainpoolP512t1_PUB + + # ECDH Alice with Bob peer Derive=ALICE_brainpoolP512t1 PeerKey=BOB_brainpoolP512t1_PUB @@ -8345,6 +8845,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEzUZIns/WwQXns9MlZuKxIuJJq6rd hwYSaIh7SHffUd1Nw9b9EfCib4/ThEMXkW6a -----END PUBLIC KEY----- +PrivPubKeyPair = PRIME192V1_RFC5114:PRIME192V1_RFC5114-PUBLIC + + PrivateKey=PRIME192V1_RFC5114-Peer -----BEGIN PRIVATE KEY----- MG8CAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQEEVTBTAgEBBBhjH5W7SmdjLJxHbu6a @@ -8358,6 +8861,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEUZoSFoDgBFRmuiHfLu5H9Zc7UAV3 7xPV/2E6tNZM7jogh1vbEPlT9rMMoHLGCqV/ -----END PUBLIC KEY----- +PrivPubKeyPair = PRIME192V1_RFC5114-Peer:PRIME192V1_RFC5114-Peer-PUBLIC + + Derive=PRIME192V1_RFC5114 PeerKey=PRIME192V1_RFC5114-Peer-PUBLIC @@ -8380,6 +8886,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAESd/vMJ+BSIwwTP9as+5aIVQ2fceDMVDg pR8+608rXuRXYsT2VMGgxn9Uz4iwFrUbzj18Io1XrbQ= -----END PUBLIC KEY----- +PrivPubKeyPair = SECP224R1_RFC5114:SECP224R1_RFC5114-PUBLIC + + PrivateKey=SECP224R1_RFC5114-Peer -----BEGIN PRIVATE KEY----- MHgCAQAwEAYHKoZIzj0CAQYFK4EEACEEYTBfAgEBBBysOxrdPZdw5vanCO6fO44K @@ -8393,6 +8902,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEazrJao0M3mpVmb6AMu3xDBYtCorSGVBt zUKiB9SRvpnCE6fRyjcG3r/jBfNhr8uzPiYJyLFhitU= -----END PUBLIC KEY----- +PrivPubKeyPair = SECP224R1_RFC5114-Peer:SECP224R1_RFC5114-Peer-PUBLIC + + Derive=SECP224R1_RFC5114 PeerKey=SECP224R1_RFC5114-Peer-PUBLIC @@ -8415,6 +8927,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEKvUC876JUvLJtajUFg0J6XFlvlC8 Qq5KXo07S6g66xXrD69MqYbE04aBoPmHLXnVZ5W9S/9ubePA9QFezl79hQ== -----END PUBLIC KEY----- +PrivPubKeyPair = PRIME256V1_RFC5114:PRIME256V1_RFC5114-PUBLIC + + PrivateKey=PRIME256V1_RFC5114-Peer -----BEGIN PRIVATE KEY----- MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgLOF4jsGX4JbblaIA @@ -8428,6 +8943,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEsSDeSqNkknlTRujebCyGRq4Gquon n6d1s6sHFfbOUbCfG37s4g17XtjsaF+j8HHYNycCcJKoQROFw03eVwiytg== -----END PUBLIC KEY----- +PrivPubKeyPair = PRIME256V1_RFC5114-Peer:PRIME256V1_RFC5114-Peer-PUBLIC + + Derive=PRIME256V1_RFC5114 PeerKey=PRIME256V1_RFC5114-Peer-PUBLIC @@ -8452,6 +8970,9 @@ DuawQD1ieVR+ao6p0f13Qn0Bb+J6i4xmxsQSlDMdI+b0gPT7TNQFBMlHOS6U9MPw a485i7KeQjaPemhZI947Z7rO0hShodEo -----END PUBLIC KEY----- +PrivPubKeyPair = SECP384R1_RFC5114:SECP384R1_RFC5114-PUBLIC + + PrivateKey=SECP384R1_RFC5114-Peer -----BEGIN PRIVATE KEY----- MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDBS0Xkf20tw+JwPANRW @@ -8467,6 +8988,9 @@ SrwXZHtrmZl4nXKoSGWuLyI/ErWhq8Eg4XFFj+qpOaqjqL+sRrQEvY9tWzSMD6TY DOyhY1bKkzJAvehyNBWo7OA1sO3zZ1Xe -----END PUBLIC KEY----- +PrivPubKeyPair = SECP384R1_RFC5114-Peer:SECP384R1_RFC5114-Peer-PUBLIC + + Derive=SECP384R1_RFC5114 PeerKey=SECP384R1_RFC5114-Peer-PUBLIC @@ -8494,6 +9018,9 @@ YPLO8Ae7Dysm4UiB/URC5onWHLLdBG7jDj/9IPmkW732QT1YOi2/WZJP01wA9rYy SDBYe7LuNImztCpahqQ= -----END PUBLIC KEY----- +PrivPubKeyPair = SECP521R1_RFC5114:SECP521R1_RFC5114-PUBLIC + + PrivateKey=SECP521R1_RFC5114-Peer -----BEGIN PRIVATE KEY----- MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAzuNIDYZFoX0knyd2 @@ -8512,6 +9039,9 @@ MA354lewNyteer/vCTQ2cZp3iH67CxjPgJm59CErbjChQZwY4CnTaGPMnUSPTbpN Kg5gcRvlcpFfvU/vJpU= -----END PUBLIC KEY----- +PrivPubKeyPair = SECP521R1_RFC5114-Peer:SECP521R1_RFC5114-Peer-PUBLIC + + Derive=SECP521R1_RFC5114 PeerKey=SECP521R1_RFC5114-Peer-PUBLIC @@ -8535,6 +9065,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE2tC2U5QiHPmwUeH+yleH0Jjf5jf8 kLnvlF0MN3JYEYBScaBGHNuCUtYfHEVvo+WasfRbM6zPX1g4ngV3uJkLsw== -----END PUBLIC KEY----- +PrivPubKeyPair = PRIME256V1_RFC5903:PRIME256V1_RFC5903-PUBLIC + + PrivateKey=PRIME256V1_RFC5903-Peer -----BEGIN PRIVATE KEY----- MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgxu+cXXiuASoBEWSs @@ -8548,6 +9081,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE0S37UonI1PgSCLcCcDmMNCKWlwoL zLdMc2/HVUSUv2NW+/PKNmzCPoFXhUwTxY1qrCPwRq2jD4NT508zA5hyqw== -----END PUBLIC KEY----- +PrivPubKeyPair = PRIME256V1_RFC5903-Peer:PRIME256V1_RFC5903-Peer-PUBLIC + + Derive=PRIME256V1_RFC5903 PeerKey=PRIME256V1_RFC5903-Peer-PUBLIC @@ -8572,6 +9108,9 @@ FjT+crTFXubeOsgIrLS9tMiHMq7pX0GqlILtH8Duucr8SYRiXM/CP2UDIUng4USt oCQYFTWg847rn8/zwslH2uabTGNFc6gc -----END PUBLIC KEY----- +PrivPubKeyPair = SECP384R1_RFC5903:SECP384R1_RFC5903-PUBLIC + + PrivateKey=SECP384R1_RFC5903-Peer -----BEGIN PRIVATE KEY----- MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDBBywd5tL24XUeEZyX7 @@ -8587,6 +9126,9 @@ g8+kFzK8UJ0NGsQ6Azbe+W/aQdB3SjVx3PvseqzzGWRyFp6DhDA2f2buvjxucMQW 3V8MaHWd0f/4P6QBQiCd/16q2W255jhs -----END PUBLIC KEY----- +PrivPubKeyPair = SECP384R1_RFC5903-Peer:SECP384R1_RFC5903-Peer-PUBLIC + + Derive=SECP384R1_RFC5903 PeerKey=SECP384R1_RFC5903-Peer-PUBLIC @@ -8614,6 +9156,9 @@ tmQdLutpV4bYyUYUYjnQmeGOHVpRTHOdfLShCtiniAFaxAXXeZ3HXnt9W2zyJhpq fxUHQ4vwG+tso5JvlYI= -----END PUBLIC KEY----- +PrivPubKeyPair = SECP521R1_RFC5903:SECP521R1_RFC5903-PUBLIC + + PrivateKey=SECP521R1_RFC5903-Peer -----BEGIN PRIVATE KEY----- MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIBRbqZqEevQ3k/3Q6H @@ -8632,6 +9177,9 @@ Y4OVbjvQZueXtiPCfODqwvVRoQwsck2YUgd7hyILZTbFxAih0q67jobWeK5Jy1cJ H0cyKWV5q0T80X8PxWo= -----END PUBLIC KEY----- +PrivPubKeyPair = SECP521R1_RFC5903-Peer:SECP521R1_RFC5903-Peer-PUBLIC + + Derive=SECP521R1_RFC5903 PeerKey=SECP521R1_RFC5903-Peer-PUBLIC @@ -8655,6 +9203,9 @@ MFowFAYHKoZIzj0CAQYJKyQDAwIIAQEHA0IABEQQbpE/krwCoXBdmVOoQU25Xhqq SegdnoX5KajjEAvlirSEbxHKzLc85Jy90SD1qQCmn9MsJyIj94nvEOsIm9w= -----END PUBLIC KEY----- +PrivPubKeyPair = BRAINPOOLP256R1_RFC7027:BRAINPOOLP256R1_RFC7027-PUBLIC + + PrivateKey=BRAINPOOLP256R1_RFC7027-Peer -----BEGIN PRIVATE KEY----- MIGIAgEAMBQGByqGSM49AgEGCSskAwMCCAEBBwRtMGsCAQEEIFXkC8QeN+PirSXD @@ -8668,6 +9219,9 @@ MFowFAYHKoZIzj0CAQYJKyQDAwIIAQEHA0IABI0taIxs+T4RYK0EzEQpEX3CxBgl 4en8oK3dNObxs597mQxXUggSvlEmQeRwNIMhBrx9Po3Q5MfxE21wBlR87Go= -----END PUBLIC KEY----- +PrivPubKeyPair = BRAINPOOLP256R1_RFC7027-Peer:BRAINPOOLP256R1_RFC7027-Peer-PUBLIC + + Derive=BRAINPOOLP256R1_RFC7027 PeerKey=BRAINPOOLP256R1_RFC7027-Peer-PUBLIC @@ -8692,6 +9246,9 @@ Rme3Z7G0dnk1iPiFq2mMhS1KbneiUtY4D8rwaFW8kaOcnsAd7jYBe31nOpMSNtLx 9cg5QtBJ4/ogYHST4NA4/y/TDCq2fRXIX3+qWQ== -----END PUBLIC KEY----- +PrivPubKeyPair = BRAINPOOLP384R1_RFC7027:BRAINPOOLP384R1_RFC7027-PUBLIC + + PrivateKey=BRAINPOOLP384R1_RFC7027-Peer -----BEGIN PRIVATE KEY----- MIG6AgEAMBQGByqGSM49AgEGCSskAwMCCAEBCwSBnjCBmwIBAQQwAyZAvGADxZJg @@ -8707,6 +9264,9 @@ qet2wl9G22nRncjOatGOQEsVc4sght835x0etGLWkhNt5Wy+k79foxiO9YvIo6Ds bB4VGiEDikLpGFMptbJ1kD0ZL41OHzL+nMeMSA== -----END PUBLIC KEY----- +PrivPubKeyPair = BRAINPOOLP384R1_RFC7027-Peer:BRAINPOOLP384R1_RFC7027-Peer-PUBLIC + + Derive=BRAINPOOLP384R1_RFC7027 PeerKey=BRAINPOOLP384R1_RFC7027-Peer-PUBLIC @@ -8733,6 +9293,9 @@ iC6NsoqtNiN80l1YDbI3g5YcjcUt+i7BOK1HKg/O84h89itiOyqH3lxYgwHqPl/C abNztgck9egqatFH/ec= -----END PUBLIC KEY----- +PrivPubKeyPair = BRAINPOOLP512R1_RFC7027:BRAINPOOLP512R1_RFC7027-PUBLIC + + PrivateKey=BRAINPOOLP512R1_RFC7027-Peer -----BEGIN PRIVATE KEY----- MIHsAgEAMBQGByqGSM49AgEGCSskAwMCCAEBDQSB0DCBzQIBAQRAIw4Y4bzIijYv @@ -8750,6 +9313,9 @@ MTCVvN1fs6kWNvB6lZyOhrVjah6TDoOWBJy0gZYdNlzBFFOgbHGYNUdbEstS/Dw4 O8414n7xlFErcYdihfo= -----END PUBLIC KEY----- +PrivPubKeyPair = BRAINPOOLP512R1_RFC7027-Peer:BRAINPOOLP512R1_RFC7027-Peer-PUBLIC + + Derive=BRAINPOOLP512R1_RFC7027 PeerKey=BRAINPOOLP512R1_RFC7027-Peer-PUBLIC @@ -8786,6 +9352,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEsVBTQB9XKFY37DJMHNITnjpn3jc5 I0s38mnBWGN0gqrWRM1pLdHT7yyKfEnjiff2 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-192_C0:KAS-ECC-CDH_P-192_C0-PUBLIC + + PublicKey=KAS-ECC-CDH_P-192_C0-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEQupt2Zad0qYf6hqsf46Y7cyJbG5V @@ -8811,6 +9380,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEwA1DVxb/6lP9jBYnkkFMN2ZRh+WC cWU5q3EcYqpxpaGOijxI+J3G+lL6wBCOUqig -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-192_C1:KAS-ECC-CDH_P-192_C1-PUBLIC + + PublicKey=KAS-ECC-CDH_P-192_C1-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE3rVxL6AnrI0vIsRVzLc6keF7ZRK1 @@ -8836,6 +9408,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE4YS8GCSC80A8h4e4OEJHdGf80BHb D2xk+dHBQUL0Dehjnbl9UaY9LM4QB8z3c83L -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-192_C2:KAS-ECC-CDH_P-192_C2-PUBLIC + + PublicKey=KAS-ECC-CDH_P-192_C2-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAETtqo78Wg9A+ENmPsWBXndi3dwAjm @@ -8861,6 +9436,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEK4ONvnNzXzejmnjTGVeD0mmR6G/0 2S0aYNNElCJ0SJ+YkDsuf5P40Zf8muYKDtU6 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-192_C3:KAS-ECC-CDH_P-192_C3-PUBLIC + + PublicKey=KAS-ECC-CDH_P-192_C3-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEiIfCdu3u0+noZrRtWNiVxz+9gLY+ @@ -8886,6 +9464,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEH2XPbol44cG8ELthp9sxHeMQCIyM +XaL99Q4Fo5/QqsUsWr1OnovZG/0C1PXTLzH -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-192_C4:KAS-ECC-CDH_P-192_C4-PUBLIC + + PublicKey=KAS-ECC-CDH_P-192_C4-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEDQRfMCVK3B/O+opbHzG/TnOd0yfN @@ -8911,6 +9492,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEX0hE/8zmEAXST3N9uYZ16S97ZUOu thBsVCT1mBOSFdOJtrErhtWAFIV/LdrbVA9R -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-192_C5:KAS-ECC-CDH_P-192_C5-PUBLIC + + PublicKey=KAS-ECC-CDH_P-192_C5-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE+zXKINLpZmXFG5jo9us9eRE1CNi8 @@ -8936,6 +9520,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE5jad95sge4uGeffIac/CZIWdGrVa pAHoH5nHH4AaMLUvdNpuXm27Yu5MXaEJDMAg -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-192_C6:KAS-ECC-CDH_P-192_C6-PUBLIC + + PublicKey=KAS-ECC-CDH_P-192_C6-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEgkdSlgwTB+XxOoPaIceZjKi1sAuV @@ -8961,6 +9548,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE7wsor8QWN9c39C5Miqzq3IS6LguE nKGMV3l5QuVSFzu6F/cyeOAp9CM1BovXcN3y -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-192_C7:KAS-ECC-CDH_P-192_C7-PUBLIC + + PublicKey=KAS-ECC-CDH_P-192_C7-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEELtXAgKRFBmB+DO0dJ5WEQNLMI6E @@ -8986,6 +9576,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE1wESxfDwhEOGSUrBrZnc4iFBNBdu v7mv08GHoDhRCrMdRZ4revGjgN11dq8GJnVI -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-192_C8:KAS-ECC-CDH_P-192_C8-PUBLIC + + PublicKey=KAS-ECC-CDH_P-192_C8-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEUZL85Bhad1jqG8VuDk9Oiy3OMjSN @@ -9011,6 +9604,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEWLPGPla+ydaWv5qI3yhzc4OR92No qitJV3Z3OyYfr3ui/cT+Q7ksCxx6L9BUpDZQ -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-192_C9:KAS-ECC-CDH_P-192_C9-PUBLIC + + PublicKey=KAS-ECC-CDH_P-192_C9-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEJtAZ2+J56tAe7RQ6kWAa2ibi9CIl @@ -9036,6 +9632,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEt/zA9Sx6QR7b7TnhC/ArauDyZhTG syWiR0g7Jutnd23iuTq3EZ1UR1c3OePVXnL7 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-192_C10:KAS-ECC-CDH_P-192_C10-PUBLIC + + PublicKey=KAS-ECC-CDH_P-192_C10-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEU5vED+IKD7JniItkewPqr27CDAKh @@ -9061,6 +9660,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEbOatssMICPWQBIwz3/rUUk6/el/T m3R7SWa9Lz0AVptNTAQJ+9ei23UvbQm8qMJf -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-192_C11:KAS-ECC-CDH_P-192_C11-PUBLIC + + PublicKey=KAS-ECC-CDH_P-192_C11-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEXTQ925Yxj7R5TRD2xXP5n+5dDVe5 @@ -9086,6 +9688,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE0b06Pvq/R2f+Y4C98Nv0nVLUzwy7 iUBMwVDCtMizqjX3ZfhH5Pf4/YcE0kGhge6Z -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-192_C12:KAS-ECC-CDH_P-192_C12-PUBLIC + + PublicKey=KAS-ECC-CDH_P-192_C12-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEjT25vc4Tf/v7iROIw332wMvJCqXl @@ -9111,6 +9716,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEwbhhDIxj+NSr2gk7mhGlZgRL9lxv qomZpbxLPKCVOC6XOK7pX+lHmxeHmzrVKVVZ -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-192_C13:KAS-ECC-CDH_P-192_C13-PUBLIC + + PublicKey=KAS-ECC-CDH_P-192_C13-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEngppSVGcf1vmjAQzxf3xMGSqE/sp @@ -9136,6 +9744,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEH+d29zVntqwLDWdkFk3mxb51G6jR /0VeTBYL84r7K3H2hCYWZBFc6HRVPosFlDLS -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-192_C14:KAS-ECC-CDH_P-192_C14-PUBLIC + + PublicKey=KAS-ECC-CDH_P-192_C14-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEvgiCOJAumTmz0FTu64SS2vS9zwmi @@ -9161,6 +9772,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEYyu3ZR2/Sd3p3RJdE/sjTgZhdyO+ 7T0b9K1SCWOEiDl8X0T5lN10eYB+efSIfS5x -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-192_C15:KAS-ECC-CDH_P-192_C15-PUBLIC + + PublicKey=KAS-ECC-CDH_P-192_C15-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEv1rgUCXhvmF+Zm2HpBaDY4c9V2Gz @@ -9186,6 +9800,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE2cCY1CHXQfb6qxFvPkcx0oxVWOGf 4RKhONTcSMzbHT7Y0x/QZ4Sk+HporsHL1bCP -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-192_C16:KAS-ECC-CDH_P-192_C16-PUBLIC + + PublicKey=KAS-ECC-CDH_P-192_C16-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEbMT+7YTHqw0JAF1mDtNN5pValGHE @@ -9211,6 +9828,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE/aHV0o1v4OeQnWqLr6eCTbVXKrkv /n3mE0opfB2ci7qySaus2VHtEeWpn5LnmRVy -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-192_C17:KAS-ECC-CDH_P-192_C17-PUBLIC + + PublicKey=KAS-ECC-CDH_P-192_C17-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAENhVzFb7nr+3e1YxOi6FNNCHEAeUR @@ -9236,6 +9856,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEwwILcJFGPXiPHx1298/uyC7Ns7fZ nDRcmncQ1ReVkdjz3wqhIjAXaK59t+7i1/WD -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-192_C18:KAS-ECC-CDH_P-192_C18-PUBLIC + + PublicKey=KAS-ECC-CDH_P-192_C18-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEmEZNR/Alb4KS4CfoySWC6nfPkFH1 @@ -9261,6 +9884,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEsYVUoudD7wqi8ECYfExFEATglt89 gN2ubj4sYY+Jbja6YgB3aEtwoF/7eb9ebHZA -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-192_C19:KAS-ECC-CDH_P-192_C19-PUBLIC + + PublicKey=KAS-ECC-CDH_P-192_C19-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEVj62bDNM9vEjvwTHgDtIoxECFCN+ @@ -9286,6 +9912,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEp7o4vhvGad0jzPzuBkWx8NuM+ULe r662uC23nYDNDjfyjUFjrcOJ3uj8d5e1yYMb -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-192_C20:KAS-ECC-CDH_P-192_C20-PUBLIC + + PublicKey=KAS-ECC-CDH_P-192_C20-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEhoKMSskrVQdhiux4c6HU/GVDxb4z @@ -9311,6 +9940,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE52nbvNXOLYNRS3aNPS1aoLzY9mrx X1UAL8bQsDng8o90++/+nog9TdciluTpXK5x -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-192_C21:KAS-ECC-CDH_P-192_C21-PUBLIC + + PublicKey=KAS-ECC-CDH_P-192_C21-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEZwChAkN3galYHaK8Jc7Vq/QZ2pHT @@ -9336,6 +9968,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE2xsk90ZrwVTp19LDylLc/gv8lWPF /bbzHHT7v1vZmSHxqadE+OHPdwvWp2p3KzAD -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-192_C22:KAS-ECC-CDH_P-192_C22-PUBLIC + + PublicKey=KAS-ECC-CDH_P-192_C22-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEqC81TPl77l0i3GwHnykC6tRNlqj2 @@ -9361,6 +9996,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEdUMUiQbO+bN6cafAg2PN07ulAULW UkGqizppc96NwnHifB6tHpYv2q43EMck2qw4 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-192_C23:KAS-ECC-CDH_P-192_C23-PUBLIC + + PublicKey=KAS-ECC-CDH_P-192_C23-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEPOwhsoZooSos944ajlXQ7+BlFS// @@ -9386,6 +10024,9 @@ MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE/NNFqXbHIMqql95mlyJoJWFeEoep 7/Z+WOpC7b7q/Kn/RM/X8pq9LL3nYm155CLJ -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-192_C24:KAS-ECC-CDH_P-192_C24-PUBLIC + + PublicKey=KAS-ECC-CDH_P-192_C24-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEcIJkRxW4tzH4IotRGOcnDTTRgfNh @@ -9411,6 +10052,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEjeLiat9yxYLWVo72OMT9WbGNoXG99QHx 2SngSEpoocKw+yKTDRIFVcHs5Q6pjeqEB/cb4276wN4= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-224_C0:KAS-ECC-CDH_P-224_C0-PUBLIC + + PublicKey=KAS-ECC-CDH_P-224_C0-Peer-PUBLIC -----BEGIN PUBLIC KEY----- ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAErzPNBim8fpljIKP0A2j3TehwT6N7j6tp @@ -9436,6 +10080,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEL5D1yOrJx97Nu5e2wvcVq3JeT+QP5tdG 779OG2aJc1FFT5J6MJsmnFptMTOL5MGaWs/DLPZW9Fw= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-224_C1:KAS-ECC-CDH_P-224_C1-PUBLIC + + PublicKey=KAS-ECC-CDH_P-224_C1-Peer-PUBLIC -----BEGIN PUBLIC KEY----- ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEE7/NT46UQjk8q4+0a58FZsImsis3B2l2 @@ -9461,6 +10108,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEAFvKRdeT5/6ZqENwTtg4MVqxSl9id1B+ m8N1MUPp1CHhSGrliTv9I8IQ5cFA18axraWdhCyamN4= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-224_C2:KAS-ECC-CDH_P-224_C2-PUBLIC + + PublicKey=KAS-ECC-CDH_P-224_C2-Peer-PUBLIC -----BEGIN PUBLIC KEY----- ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEdW3YBrnZw02JlpHstFt3GvRo7ABEhqD9 @@ -9486,6 +10136,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEL5Z1QTHgloGYqnj76MIB3F81gceS3khz QNMkSGHopc15YVIDttielJb54jb+O2vocx50PWFVGcY= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-224_C3:KAS-ECC-CDH_P-224_C3-PUBLIC + + PublicKey=KAS-ECC-CDH_P-224_C3-Peer-PUBLIC -----BEGIN PUBLIC KEY----- ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAED1N78cESLFVlbSXoqoQX4LRLFSauBSMU @@ -9511,6 +10164,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAENV6WKSC94ENpX2v/tLNVxj2m9d5mXtRv LsgX4nSOCVNo9i4dNk7dRhcZeTtAStvarLyt2Iki/zc= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-224_C4:KAS-ECC-CDH_P-224_C4-PUBLIC + + PublicKey=KAS-ECC-CDH_P-224_C4-Peer-PUBLIC -----BEGIN PUBLIC KEY----- ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEKzYx0rBhebMXShAPf1cTHu6olHvgeGw9 @@ -9536,6 +10192,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAE1Q5K2r/Zidfbx89AUlRsx8RHqXYwQ2mX rUuVNlvqUDRzxervlVLULECx8vfKKSczslW5u+GxIzc= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-224_C5:KAS-ECC-CDH_P-224_C5-PUBLIC + + PublicKey=KAS-ECC-CDH_P-224_C5-Peer-PUBLIC -----BEGIN PUBLIC KEY----- ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAERRFAPeKQWfaaR1xaal9sq+1dnwFENqjL @@ -9561,6 +10220,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEsajcrImsonmTILRR3xx/9Nl1Z6u2gUHA 2V/CqjUklQkCsVEL3Jh9hgr8J62HHOrqZpNavTwKmag= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-224_C6:KAS-ECC-CDH_P-224_C6-PUBLIC + + PublicKey=KAS-ECC-CDH_P-224_C6-Peer-PUBLIC -----BEGIN PUBLIC KEY----- ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEMUoLJt0xwkiEXXzBe2HK1GCCWb7YWljR @@ -9586,6 +10248,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEq7bx43c/+PxzrqKgsQeAnOcK3O/tbkH8 XLQwRaljiXrpBsEKBV7q25f/3W90jT5WIeX/8wTki6c= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-224_C7:KAS-ECC-CDH_P-224_C7-PUBLIC + + PublicKey=KAS-ECC-CDH_P-224_C7-Peer-PUBLIC -----BEGIN PUBLIC KEY----- ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEq+aEO+7C/Z5ftkcw0L5NFlQ4zpIu113Y @@ -9611,6 +10276,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEiFN3NemyPj4OB28TWoLTP5v/tGXzq86D IqYqYrTIwSNnMZeHXAvRTtCXYG0zD7orkgDvZaRHZNM= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-224_C8:KAS-ECC-CDH_P-224_C8-PUBLIC + + PublicKey=KAS-ECC-CDH_P-224_C8-Peer-PUBLIC -----BEGIN PUBLIC KEY----- ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEE8+dbSyaroJ0wn1Eav0MiI/91SrimaNZ @@ -9636,6 +10304,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEN2gpJqVPcKTBdI9U1Q1bABOKBV+STyxl 5bC75Flq/vzdZA0pY1AVuJvd3R+MJyNobTMuegbKh5k= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-224_C9:KAS-ECC-CDH_P-224_C9-PUBLIC + + PublicKey=KAS-ECC-CDH_P-224_C9-Peer-PUBLIC -----BEGIN PUBLIC KEY----- ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAElltjfA37wM+VQDVobXD37DCSnmZOUh26 @@ -9661,6 +10332,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEOZgBJDv+DC2psKU8jKV/Lu6HqqlKjk1e Ap9CyqpJ5tS0fO56XEq3HVpn2oTgubQlzj5w2mjIiec= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-224_C10:KAS-ECC-CDH_P-224_C10-PUBLIC + + PublicKey=KAS-ECC-CDH_P-224_C10-Peer-PUBLIC -----BEGIN PUBLIC KEY----- ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEc8xkU3LKLnFjfNqUPYFI8zgqtt0PLhpJ @@ -9686,6 +10360,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAE35weDvFeU7n2JuK+HL6JNjnAbz4EOe6V 19Sx43pSpzhq3aJD79+JQQhchOMSOcq5K4AXM2dIll4= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-224_C11:KAS-ECC-CDH_P-224_C11-PUBLIC + + PublicKey=KAS-ECC-CDH_P-224_C11-Peer-PUBLIC -----BEGIN PUBLIC KEY----- ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEVGV4IWJQNU5EniFUbdEc0cUXQjZzmsrZ @@ -9711,6 +10388,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEtKAZjciBDohEJbdQkosMlgwx96mWY0AL AaF534ErYBv8BzgkLG+G+DDyes1jLKYYoLUoDJ1Xafc= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-224_C12:KAS-ECC-CDH_P-224_C12-PUBLIC + + PublicKey=KAS-ECC-CDH_P-224_C12-Peer-PUBLIC -----BEGIN PUBLIC KEY----- ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEHUax3DooEjy1E0bme67FZASGhnj699Do @@ -9736,6 +10416,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEAN/H7BN2kM1tEv2y/QuMUxRYIQh2nCty L/s5WF7vPaS6RYEnNGu2QCOGi923VYouz8gTZF9M6f4= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-224_C13:KAS-ECC-CDH_P-224_C13-PUBLIC + + PublicKey=KAS-ECC-CDH_P-224_C13-Peer-PUBLIC -----BEGIN PUBLIC KEY----- ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEJm0DjMek/iH2yXYxjoJ7grtbj3RDpVKY @@ -9761,6 +10444,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEfmA+aXbbg8NgEVCPppXRtRUkni5UtI/L z7kCRwF5pgDOhq38qbG5MfpRc9YY2gnoQYA9GbAmQoY= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-224_C14:KAS-ECC-CDH_P-224_C14-PUBLIC + + PublicKey=KAS-ECC-CDH_P-224_C14-Peer-PUBLIC -----BEGIN PUBLIC KEY----- ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAE6woJ96HCNqYfWVgJ7FZw79kuRZjV5hPg @@ -9786,6 +10472,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAE/CDpBuYJwRLPwuD+pjA4gsXblOh+AiNz qywIKq7N8dqnF4K8Wia7vY1+inZJDiarwX3/x3S9c0E= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-224_C15:KAS-ECC-CDH_P-224_C15-PUBLIC + + PublicKey=KAS-ECC-CDH_P-224_C15-Peer-PUBLIC -----BEGIN PUBLIC KEY----- ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEay9rGKWH9WL/xhvZsARzIihphqePH9E5 @@ -9811,6 +10500,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAExoN9UG6XbafbOtEmfDWd/y6m+wt/f453 AkxZ6WfrSR0vyKUwxGUl0qiy18HfX7oa50CkZJxoPuY= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-224_C16:KAS-ECC-CDH_P-224_C16-PUBLIC + + PublicKey=KAS-ECC-CDH_P-224_C16-Peer-PUBLIC -----BEGIN PUBLIC KEY----- ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEMoEBuoJqzXX/nzTVV0zg28kvcJutjXoz @@ -9836,6 +10528,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAE6RUPdwB1YmAZ4Y+VRztx5oKAQXkdPwjT +u6qK0dfcHNequUjCKO3Y9yI7+GKtZDrr6A19uCLABw= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-224_C17:KAS-ECC-CDH_P-224_C17-PUBLIC + + PublicKey=KAS-ECC-CDH_P-224_C17-Peer-PUBLIC -----BEGIN PUBLIC KEY----- ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEAIHjQnCHHi672UGD9he0rhXwQW3WNP5u @@ -9861,6 +10556,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEe+bEyReCmrZX3XnoY31679L4Hw3nZU2V fpdljUMNItnoQ4MQ9h4NQ/Jfo+NFhfQyuq0n2zAhvw0= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-224_C18:KAS-ECC-CDH_P-224_C18-PUBLIC + + PublicKey=KAS-ECC-CDH_P-224_C18-Peer-PUBLIC -----BEGIN PUBLIC KEY----- ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEJiNjL98L2FaAWmmqGG1BM+9ZBOH2Valy @@ -9886,6 +10584,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAELqSWbn+S7X9cxh/eeSBF9jtzHW59DeJX fy2OzhxKex7eb4ORYikt9CS+eOgXb7b5QqPAI5FwDzE= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-224_C19:KAS-ECC-CDH_P-224_C19-PUBLIC + + PublicKey=KAS-ECC-CDH_P-224_C19-Peer-PUBLIC -----BEGIN PUBLIC KEY----- ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEjuTR3MMd7kv2/iHKilh3IdkQrPsSLBbC @@ -9911,6 +10612,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEQ4u7mAUXr7IL4dZ046wrMc7wepsj+49u OODWwAvl8cR9WNIbbtKEI7MvWpR1DaR+3O8z6nmUKv0= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-224_C20:KAS-ECC-CDH_P-224_C20-PUBLIC + + PublicKey=KAS-ECC-CDH_P-224_C20-Peer-PUBLIC -----BEGIN PUBLIC KEY----- ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEl9y+bSgzWIKm0ZPMVKEGPdB3XcMoVlMA @@ -9936,6 +10640,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAE/3URIVxx15a9ZG6EdL5EFrkWhM4NJp72 9CIBO7e/Xnm1qTk7uepCwL2y08LcgG4acwaqWOT9vqU= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-224_C21:KAS-ECC-CDH_P-224_C21-PUBLIC + + PublicKey=KAS-ECC-CDH_P-224_C21-Peer-PUBLIC -----BEGIN PUBLIC KEY----- ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEzpEm3VOXLeod4dEe/vkA3jS2YYWcRkjF @@ -9961,6 +10668,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEBL9NlI9EMNGLTtbJbbr5gfoRpAPtFoh/ BnVJgXwTJqnO9R951OeDA9YGS0WfYSWErC/fWT19XYQ= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-224_C22:KAS-ECC-CDH_P-224_C22-PUBLIC + + PublicKey=KAS-ECC-CDH_P-224_C22-Peer-PUBLIC -----BEGIN PUBLIC KEY----- ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEhEGZZ9bPrUHnWgK22mBal5SaGDqXwwbE @@ -9986,6 +10696,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAElwpKfgHUGISXzrRpVesbhC2QhYGam5Jc hFKdPd+iUmSA+DPqDtvSBOTjZf7zRyiI/n2WkcPrwJ8= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-224_C23:KAS-ECC-CDH_P-224_C23-PUBLIC + + PublicKey=KAS-ECC-CDH_P-224_C23-Peer-PUBLIC -----BEGIN PUBLIC KEY----- ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEfJysNXaAY8KCf2Cn9ROI8qj0t/jNc2vW @@ -10011,6 +10724,9 @@ ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEprKWMtuU2iEl3Bz4DgNwJoeyrMESICL6 IXR2WmFyPt1z4Q2u1zd1J48ZWLpW8fydCF68K2TIT+U= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-224_C24:KAS-ECC-CDH_P-224_C24-PUBLIC + + PublicKey=KAS-ECC-CDH_P-224_C24-Peer-PUBLIC -----BEGIN PUBLIC KEY----- ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAECFp2Qq2OWbGj6HJqdUevvs/9rB2rflcj @@ -10036,6 +10752,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE6tIYWQEZ6IdrKRRv+JymF3DE7bv5 fTjOOF7SgdimsjAor2EoH9NeL6cAJSOsyFpCnLBu5mSDJTifWe384UBRQQ== -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-256_C0:KAS-ECC-CDH_P-256_C0-PUBLIC + + PublicKey=KAS-ECC-CDH_P-256_C0-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEcAxI939WWExcxjLKZWQNuRtrrM46 @@ -10061,6 +10780,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEEZ8vBHkCeCqwyeJ6VK/165uWSCnK mcBrAt26lbCj9tCPUrcmZkysNm/JisegErJoLL2WLlrLVEZx1BuURXBNHQ== -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-256_C1:KAS-ECC-CDH_P-256_C1-PUBLIC + + PublicKey=KAS-ECC-CDH_P-256_C1-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEgJ8EKJxkNIwBUV6wPVznrBqMuUmP @@ -10086,6 +10808,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE2fK3nBcoRb/bVgu7AUR8pezARwoJ UTthJpAsa0+NEFH4Fe9ewyEo00h4NHZGeHAuZOFk/3MVGF4jr/X6zZbXvA== -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-256_C2:KAS-ECC-CDH_P-256_C2-PUBLIC + + PublicKey=KAS-ECC-CDH_P-256_C2-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEojOcEtSgPDNUbeUzJotK1mfev0WL @@ -10111,6 +10836,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEJCd8M/RQRi3LPUgB1Xuc7QUYjxbC jtqHMlgEjNFgfg3EeJdT4rH2OzL/AU7ELNamn6yB3+bQ1v1K83KuJ8RviA== -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-256_C3:KAS-ECC-CDH_P-256_C3-PUBLIC + + PublicKey=KAS-ECC-CDH_P-256_C3-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE3zmJufpVSVcZs89G3M0otRU/eAgZ @@ -10136,6 +10864,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEqMX9zotixa2lmPFBrbOybPJUwoCy hXpj0q14OnMRX2uAbhqv7Er4Cg14az3kU3W1F6fltR/7LDVlN8nm7yJ9Sg== -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-256_C4:KAS-ECC-CDH_P-256_C4-PUBLIC + + PublicKey=KAS-ECC-CDH_P-256_C4-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEQRktKBPnlWHmodb1PIvBpDOhmcg1 @@ -10161,6 +10892,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEe4YdzShEpag2P2uO+NSTZA9Vh5IX GJ2AMmqtlIDfwUnEZ1tF7rMGQF9sM8OLxp6yveybda1a9HBqq4RUO5zGOg== -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-256_C5:KAS-ECC-CDH_P-256_C5-PUBLIC + + PublicKey=KAS-ECC-CDH_P-256_C5-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEM+ggkqDx+zj1ZJ1YZ/uii1AxcrcD @@ -10186,6 +10920,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEn7OOLVjqG692IulnIBAcrjzeS6bB 6fom2bHeCJkQKGPVVhuQBAbt9QgC3X1z6JOV+K7XL7oOHRth/h0iMCJg8A== -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-256_C6:KAS-ECC-CDH_P-256_C6-PUBLIC + + PublicKey=KAS-ECC-CDH_P-256_C6-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEap4MP5FuTjFckRR75XFobZBGTov5 @@ -10211,6 +10948,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIPB2MeSmUSqJrUh8Tp1jA55XnLDX pVbLnmYc1Zwef6Rt6RhGs+7opewJwqsfQeIb2DYgzN0b3OOrfqbgLdJ09Q== -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-256_C7:KAS-ECC-CDH_P-256_C7-PUBLIC + + PublicKey=KAS-ECC-CDH_P-256_C7-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEqcCsreVcKnPq0ahvsKlxMiPIJHV5 @@ -10236,6 +10976,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEq7YbQjvl1sJuIcYFgyyRQtwd/lpf /yhyZzeTbm+/UW1zPSUT71i+qyAgkFhvrJG/D+4x6AqzNHOrI6LYnlj61g== -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-256_C8:KAS-ECC-CDH_P-256_C8-PUBLIC + + PublicKey=KAS-ECC-CDH_P-256_C8-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAElOlPFqmCVf/yuawMlZiqw1SHsyMt @@ -10261,6 +11004,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEPWPkKctfqJWpJHEpv05I6J8117Ed 6BWO/rPhBqKoc5UMrp5HfvQefIwQZDebt7VU3cvK55+YFCgfHlDwQDxh8w== -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-256_C9:KAS-ECC-CDH_P-256_C9-PUBLIC + + PublicKey=KAS-ECC-CDH_P-256_C9-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE4Jm/Kk1VdGC1VEQwu/baEQBNEny1 @@ -10286,6 +11032,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAErV0Tw9tQjdzThFflmRQ0olG+1Jz1 3ctZze5zhl8TjJ9izsHnBYiqT9/HuaCdqmeAgcBOEgi51mK4oiFL+OgaIQ== -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-256_C10:KAS-ECC-CDH_P-256_C10-PUBLIC + + PublicKey=KAS-ECC-CDH_P-256_C10-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE91pf5WvaNPPBOWKWYm7wEtwH5IJY @@ -10311,6 +11060,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEq0jKph6jXxP47Qf/pqE+jbIk3+z6 4affixu2668MuX0SdFMMosOFoyGL3fvL8LQCTJut1SQ7/4NOv/JKhhjcyw== -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-256_C11:KAS-ECC-CDH_P-256_C11-PUBLIC + + PublicKey=KAS-ECC-CDH_P-256_C11-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAELbRUDVAjB1YVir9h2YNXErZIbHQx @@ -10336,6 +11088,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEmozZvXLnF1LfkUQPd8VHUJqE35gR Tn3k8mzbOSNKYl3QfPyEyOFE+rKDn1GJux18iGMdV5u8WAEu2aIyfaUvYg== -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-256_C12:KAS-ECC-CDH_P-256_C12-PUBLIC + + PublicKey=KAS-ECC-CDH_P-256_C12-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEzZT8lJfomQdQMJ6ahTT9EUsKblTa @@ -10361,6 +11116,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE+YnPjulWqC5+vZiBzb+y/ZRhibCN tTVZvIz91IBx6xRe/yjxoYphawS30zeGhnn23YT5p7PXtvivJ2wZYRpUHQ== -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-256_C13:KAS-ECC-CDH_P-256_C13-PUBLIC + + PublicKey=KAS-ECC-CDH_P-256_C13-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEFbnkZ69NKQxBdALgQEJv5M8ja65y @@ -10386,6 +11144,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEacYnYls2pCnDmLRcOGd8s12L6xz3 ilceQOmf5OrBzU6BaQESsKiPIPcTayjX1H5fvCraPI7dh1ibwZ7JWQY3vQ== -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-256_C14:KAS-ECC-CDH_P-256_C14-PUBLIC + + PublicKey=KAS-ECC-CDH_P-256_C14-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEScUDumxPpgUYLhhrXoERPwdbwR3P @@ -10411,6 +11172,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEX+lkZxMVoYqmiipuPdH95+I7jOcY FHHPrEPJnhroAmLVgnviguYshN5TG5Y4hLqDLbXWssOiVvDmBP5+a4p/cg== -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-256_C15:KAS-ECC-CDH_P-256_C15-PUBLIC + + PublicKey=KAS-ECC-CDH_P-256_C15-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEGbON45/dL3D3CRYxpPddGZN0C6lC @@ -10436,6 +11200,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEybK4SW8UQL1KLR5SdS/TcoNbNkiF 4VSn2sSSlfKB7Hz75rkmqKTeJszIO4ArEhJAB1S+Jdnz7q8AiwmHCudjIQ== -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-256_C16:KAS-ECC-CDH_P-256_C16-PUBLIC + + PublicKey=KAS-ECC-CDH_P-256_C16-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAELJHGHzOt/pMRyUL9v/a6RwIP7/QW @@ -10461,6 +11228,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWeHhAVIQRq2c8dCC6dLsfdIlMMzg ZJkfHlXFvPX8tZFIL09nMXbI/aoLtuWbFaPkdFTjoEKX04Y8kzjZit0fNw== -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-256_C17:KAS-ECC-CDH_P-256_C17-PUBLIC + + PublicKey=KAS-ECC-CDH_P-256_C17-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEooou31gCVmj3JKr4OlCVa3rBz7v/ @@ -10486,6 +11256,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEMLnbLi6Xe83JjLh91zbL2OeFUhIZ Jc8W4ZM2V8L7IxRqRQKIALgSkbzlwuH+197WUGIOu+YFDG86fw37RnOrXA== -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-256_C18:KAS-ECC-CDH_P-256_C18-PUBLIC + + PublicKey=KAS-ECC-CDH_P-256_C18-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEou+FeggfnW6yBqgcTPeKgCvfWYrj @@ -10511,6 +11284,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAERsnr0aSjyMC21XK13PuhJGdgMgip y10qz7tzPEDPY5FGyROifQRBhdOLRnrOAR4E1Nm7u4y5riX6kqrxWllehg== -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-256_C19:KAS-ECC-CDH_P-256_C19-PUBLIC + + PublicKey=KAS-ECC-CDH_P-256_C19-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEzNii2GvJLy4BvOTWkiz3/hYmrtBE @@ -10536,6 +11312,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEfJ6VCEHSbI3eiZQ5i49dR1oCK8Y9 53c/z41VLgHxugrMQrmIXJs77g+NjFfTqPY1UBbAGcQGL6Is/y8gm1zC4Q== -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-256_C20:KAS-ECC-CDH_P-256_C20-PUBLIC + + PublicKey=KAS-ECC-CDH_P-256_C20-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEwYj/yJR/cwH7e1PjZ0YJfCE0v5zJ @@ -10561,6 +11340,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEOLVNuFUAyyDGEFbt09iLap3CZ4Cg R/ITpuG5APdllutjh+TleBVx5OuK5imRoztdwzMBxbx+El1TeUo5Fg2P0A== -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-256_C21:KAS-ECC-CDH_P-256_C21-PUBLIC + + PublicKey=KAS-ECC-CDH_P-256_C21-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEMX4QIP9T/M7xi/R7t/Lddwf7e3p1 @@ -10586,6 +11368,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEPyvxWJq/MEe/PlSsmpU3m/+V+PVU BfZOyjan7r6P/KdSEqlOZsWumomRhy9mpycj2A7FsukldFxFb1NxlDs6Bg== -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-256_C22:KAS-ECC-CDH_P-256_C22-PUBLIC + + PublicKey=KAS-ECC-CDH_P-256_C22-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAERfsCss6518ednC+pPpx5Z8L6TfV4 @@ -10611,6 +11396,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEKcCAfxDLxC+0XJmJ2lBoHurXFtqn uekf0y4GL165LKD/HW0ZVdc3ay2iT+EWOicWWRNjQbwusRlfxwbcYufzTQ== -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-256_C23:KAS-ECC-CDH_P-256_C23-PUBLIC + + PublicKey=KAS-ECC-CDH_P-256_C23-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEoZ73v/mK2ngYQvv8UaR6/zm1k1oc @@ -10636,6 +11424,9 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEnPS5hYHKF3lFPMgW/yi0EAr1bPG/ LlvDEtg7axsh0zN6VQT8rFIxoNEtZYIYKEhoIpyESgSjRQ1sc4Gr4IC/Ow== -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-256_C24:KAS-ECC-CDH_P-256_C24-PUBLIC + + PublicKey=KAS-ECC-CDH_P-256_C24-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAENWxaREwEmlL+4K3rfl2CrlqoMDC/ @@ -10663,6 +11454,9 @@ feEwLfhvJdNP5Kl772DP9Ug1XAFduz5fuibKaewvW12drSDMnacRODqdvjTqP6Wi r3W0ZQJimtVN2LfXOoq7BqOjvkfWUMyZ -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-384_C0:KAS-ECC-CDH_P-384_C0-PUBLIC + + PublicKey=KAS-ECC-CDH_P-384_C0-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEp8drlww7X+iwXSg4rgSrR2l7nq9S52RZ @@ -10691,6 +11485,9 @@ MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE6kAY9aMHw3kYC/amL9LOzuvut9TfBjpm Pmc1obz7NyA9ENNAqDKKe2h3DKdYeKGm -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-384_C1:KAS-ECC-CDH_P-384_C1-PUBLIC + + PublicKey=KAS-ECC-CDH_P-384_C1-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEMPQ/zytrAN5T9iTxVDCQaBg5cX1Tx8lV @@ -10719,6 +11516,9 @@ sLWdasgbqtMWokK6Mr3oXLJIEZuFL6tmly48aMerQCxYNvKhbtRRozEgp3UKYDnz /xU4juYitwZfcSK/bVGu+8KbN7A0BFgb -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-384_C2:KAS-ECC-CDH_P-384_C2-PUBLIC + + PublicKey=KAS-ECC-CDH_P-384_C2-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEGu+/osbIyFWhohZ3RVC3miTNo3YHux98 @@ -10747,6 +11547,9 @@ BDmUlMhP9e+jiUrbLGy+jDyRPvLuxb08n6hAJKECh5bfhAIfe2ydAvD0vRphKgPL 91oL7qQ/74roS0jGAXKq3wnBrQFtC/PO -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-384_C3:KAS-ECC-CDH_P-384_C3-PUBLIC + + PublicKey=KAS-ECC-CDH_P-384_C3-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEi8CJMm7FW5z1mzTw63VNk1lsopD8s0RM @@ -10775,6 +11578,9 @@ MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEMiIGOimXswLuYO4ZYRCP9Mes8cDvHV+w ytgZZtF+6vVXBor6fHhGa7WyIDLREA+m -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-384_C4:KAS-ECC-CDH_P-384_C4-PUBLIC + + PublicKey=KAS-ECC-CDH_P-384_C4-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE65UuLZrAwgxsxI+yJcKtFU9TyHULAD/T @@ -10803,6 +11609,9 @@ Uj8J/omnbAyVxJ8t+8+CnB45cJ1V77s7kZXrGDZ1tA/ZL1HzdxMxfkqbT3FcirIu B3OxvHHTohnwW4EWB0ZY7oa1LjbziXEW -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-384_C5:KAS-ECC-CDH_P-384_C5-PUBLIC + + PublicKey=KAS-ECC-CDH_P-384_C5-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAERB0CniROtxaNZH1N9Q219OSXSrP9rwIq @@ -10831,6 +11640,9 @@ H/k3wh4EcPcPOjHVxrKRIZXxCSaUK0iuBH1rTXZRI1Y/gRFrxmW3uMxiB4MNgF/Y TafLgFpluqfBL9WS0bW14+ZdlnKp73Zi -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-384_C6:KAS-ECC-CDH_P-384_C6-PUBLIC + + PublicKey=KAS-ECC-CDH_P-384_C6-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEPU5r8IpzQErMwWKYc0aOQmnoLZDYMuWK @@ -10859,6 +11671,9 @@ lJQ6sVGW1A26pVuCEKd6XQCRXyxOpp6rVTEGW9zxe/s8tVoC5BpXx/aUw4OtKJ+Q D71lbCIzqTyS6TPnom9Uy7VvCth1xRuw -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-384_C7:KAS-ECC-CDH_P-384_C7-PUBLIC + + PublicKey=KAS-ECC-CDH_P-384_C7-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE9fa+8dEQ2gO+ABfqx2DMNLJNCS9zbyN7 @@ -10887,6 +11702,9 @@ ztxfOptCqIGhr8obtriAWE+iewHBk82S2PsB2/fNCjhowmuVHzk8PFbChYzukB93 k/9dJxkl0TpB+OUkCfTroZkPM6ywusZp -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-384_C8:KAS-ECC-CDH_P-384_C8-PUBLIC + + PublicKey=KAS-ECC-CDH_P-384_C8-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEfN7Hfgc36jfGe4m3E3/jiBgBD0RkQ47k @@ -10915,6 +11733,9 @@ Rr+p8JOGCMtGZ6mPTsisFGIoXCUI90hi+kHLTbaK5x8fij6JOdxSwt7GGoPJg76y oCuvKexJJ4CIiC7Qz1bHS1wXO1Usz2PP -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-384_C9:KAS-ECC-CDH_P-384_C9-PUBLIC + + PublicKey=KAS-ECC-CDH_P-384_C9-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEju6joxnI35n7wpy1XyQ6cg2VUJUV7lzF @@ -10943,6 +11764,9 @@ HCsWlmcnwvLrckVyuPPrIo0TDbT/hixjfsXIgTtoVVjYPpJPFLxxn263rgy7LEdC J8W9qIY3pPJsZIF5Ka+ZlZLab3h0kDMv -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-384_C10:KAS-ECC-CDH_P-384_C10-PUBLIC + + PublicKey=KAS-ECC-CDH_P-384_C10-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEpyH2otRSdBGDSxPU06M8Kb64OrdoJGXG @@ -10971,6 +11795,9 @@ e2pUWC9VbPpTnYkAXKLtrAitm3LdH2C62blO6C2pzGAfNGBEmYujh67lZATcbsyK srWQRDMZ0LK2F2+dDqwtRGeO1WFgfQmp -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-384_C11:KAS-ECC-CDH_P-384_C11-PUBLIC + + PublicKey=KAS-ECC-CDH_P-384_C11-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE2IKoUFwtXLm4hR/Gdmd7sAh2ga1T+s66 @@ -10999,6 +11826,9 @@ x187I2gevmFNBZfdYU+uWGd8g1qfCyc7gro2KQ0vlNtBR560WrTq9nkoojFRONWe 7Mm1KF393WcU93VXIW6kTMb8EZ2CQ++v -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-384_C12:KAS-ECC-CDH_P-384_C12-PUBLIC + + PublicKey=KAS-ECC-CDH_P-384_C12-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEgVyddz2/X7ahuGeZlmJH9ABqI8kuaMVe @@ -11027,6 +11857,9 @@ cfhKqcX94wdK5UDGv4InXKgi0P64Yrx0Yy9c0vkAwnEcMviTByjrZH0x7djWUPll Tn0z5e0bR1SJ0I2qMNjLy6a/w7YNm1o3 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-384_C13:KAS-ECC-CDH_P-384_C13-PUBLIC + + PublicKey=KAS-ECC-CDH_P-384_C13-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEHA7tp6K+AAxb3NoEeK7U23M9Kp40EiQ3 @@ -11055,6 +11888,9 @@ MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE50oaK4Xxy/jbvfBQzxr/issC/aL7ZZH5 Zu/4SBvQdhTqoEoWw9t2kFkT6XKltrWd -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-384_C14:KAS-ECC-CDH_P-384_C14-PUBLIC + + PublicKey=KAS-ECC-CDH_P-384_C14-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEyVwYXiVr+ZfzCzEVSK5/doo43uQ+7u9D @@ -11083,6 +11919,9 @@ mF/e5Yqk7/oeKL6AoXsSCxOfljAPibSbHd8i4H4D8VYNj0WkgAlFYNup+uf5UxEw wbV+u5WYJJZSTzHTeXeTOW+oI/Ir20Mo -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-384_C15:KAS-ECC-CDH_P-384_C15-PUBLIC + + PublicKey=KAS-ECC-CDH_P-384_C15-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAENJcjin5q0WbfLawDmqTayNF6qSXnx2Me @@ -11111,6 +11950,9 @@ r3Xb/n6YvXi94Q/i6QPCtjeeHe7hdaGwpsWOzqWkd7sBvVQ7M58cxJ8TcaLNpNRu tOU+JQWXlCNRqZZloSL/6pveBjbDddry -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-384_C16:KAS-ECC-CDH_P-384_C16-PUBLIC + + PublicKey=KAS-ECC-CDH_P-384_C16-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEkKNHN9RbGqZfdOC9Blm8EY+OS3dLdhlE @@ -11139,6 +11981,9 @@ S6Fkzj/kFfpfPrgjwI3Cm4w0EhnHe2s9K6rUR8jCkM/tJe3ZAxxB0LdpIUVzJ/Qt sxEiuB8ze78LEDnsgwzpBho3YZU8deSo -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-384_C17:KAS-ECC-CDH_P-384_C17-PUBLIC + + PublicKey=KAS-ECC-CDH_P-384_C17-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE3aVGrPyPkD0R4uOSBmljbUSyBorrZv8H @@ -11167,6 +12012,9 @@ ONIj8io6kJWo1WRlOvUo4Ex+GCS+SmUSF8LOaWLL0qLgZil7OdV92btGgPAZHTkP cLTkYUGbKXLOaK1GEn/dpsORlXdOqG3z -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-384_C18:KAS-ECC-CDH_P-384_C18-PUBLIC + + PublicKey=KAS-ECC-CDH_P-384_C18-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEeIviM2xS9EVNY+6USx5Jv7YZoINxBI5t @@ -11195,6 +12043,9 @@ TyAcuPS3DvOw2gbTUsgPwmuvj0K3hEWev5mFlgF22m0jx0UqKVT/y7yyQkm0MBmi oCPgs9q9Rh8ZrT53XDZPPxGtSfMJlADT -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-384_C19:KAS-ECC-CDH_P-384_C19-PUBLIC + + PublicKey=KAS-ECC-CDH_P-384_C19-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE0Ju4IuuZ44BglUdHyCuzJ4z5a782/s40 @@ -11223,6 +12074,9 @@ URy/3UnM43fDnjTAMbUkDcmYBQPtLyYsgIbL4zgZEIDwt6FsevxMewMm+axm9YVS 70u50k3jQp7V0yd+1Y/PSPK19hMmvsbG -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-384_C20:KAS-ECC-CDH_P-384_C20-PUBLIC + + PublicKey=KAS-ECC-CDH_P-384_C20-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEE3QSYu3lhh2tcQY9/SBLkeodO3xjHfaO @@ -11251,6 +12105,9 @@ HfyRssQOPN91lYNL+ezreYSfFjb8hGL8nUvejodexJaX0ljR1ZRl+EMcb1Ux4cWe n56+PPFkqNnOEKEvGXkoOpWbrSRN2Dhj -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-384_C21:KAS-ECC-CDH_P-384_C21-PUBLIC + + PublicKey=KAS-ECC-CDH_P-384_C21-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEniLLwYZX9RaoZLN7eDNItm8aqWJs1jH0 @@ -11279,6 +12136,9 @@ e8Ww+f6veyLoTwMjFimySGa9tLjPkIkUZvheK/yrooQyhbDhTrwH732v/4tCRBb+ 5ke1mJe2GfIO7ZWmMuakIGv32kKcBMVg -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-384_C22:KAS-ECC-CDH_P-384_C22-PUBLIC + + PublicKey=KAS-ECC-CDH_P-384_C22-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAELbXaX5QOqohPTbXsITmwRp845Ob7vMUt @@ -11307,6 +12167,9 @@ M9IP7Hkfhvi8c/NYCYslaimLtIjeJXv0rCiUT9J/F7gpRsBMZsQfAFPTaS8nXaVc 2HOalb2M068vluTelZ6oNE2JRTdZBYWL -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-384_C23:KAS-ECC-CDH_P-384_C23-PUBLIC + + PublicKey=KAS-ECC-CDH_P-384_C23-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEMpZHuqNUIk60QUgpxTaMgteJOzmATgjL @@ -11335,6 +12198,9 @@ qzAyoZ4KCp9nc0bjfwigs+2NpuXdaRBjjWDkSqXg/TDJGEVnlq838OQZV5AWReXF lsbZifWFmwOgvX0fTneTb/88dNIE5TiO -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-384_C24:KAS-ECC-CDH_P-384_C24-PUBLIC + + PublicKey=KAS-ECC-CDH_P-384_C24-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEKdijbSIgCnW3rqG7R838sbf9Zt6WcEFD @@ -11366,6 +12232,9 @@ JvXUstc1XPawIRdlmUN2K20dtatPHbxEznspRutsfeNCliiT/Th9G3PXqGctHyNp YRcLfrNXmVPuXNyIzS0= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-521_C0:KAS-ECC-CDH_P-521_C0-PUBLIC + + PublicKey=KAS-ECC-CDH_P-521_C0-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAaFpI6Gx58PCHX3vBjSXrX8jAsH5d @@ -11398,6 +12267,9 @@ hE5ZK0QMACeXKtFSZDHAZzLfGc1GokIXLU3WfCyMmd/CLkmUmlbPkMZHNjXOgvJb M2gvsZvDO9kQ7Yzjp/o= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-521_C1:KAS-ECC-CDH_P-521_C1-PUBLIC + + PublicKey=KAS-ECC-CDH_P-521_C1-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQB3yd8FSEINJvDTVOe4M8Gsk9dNQBn @@ -11430,6 +12302,9 @@ hjcDaZOrXSRFAP/50nchEoJvZDZgPT6yNKRNXE5cV3I0Z5xPnfcl7luRGPI9iljQ zAEJba9w6N/sASi9wug= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-521_C2:KAS-ECC-CDH_P-521_C2-PUBLIC + + PublicKey=KAS-ECC-CDH_P-521_C2-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAktsxQlZNJ6XwAG+BmQj7obhQOKW8 @@ -11462,6 +12337,9 @@ tFsSRpIykY4h1aNR+aS5y/nvsq/MQC+psxZQvsLWQaBcRA01MxwIk9EfsTFRM1mI swM0EwGnPcX2HVdOZ9k= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-521_C3:KAS-ECC-CDH_P-521_C3-PUBLIC + + PublicKey=KAS-ECC-CDH_P-521_C3-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQA/dQNnp2XQCfLO65oIWLqwTKK1hvE @@ -11494,6 +12372,9 @@ OUHgsoSxqoEhXQ07l3j84jyM0eTtb6Cr9iFWyR1LPrVZmcNHG+0nXp5g5aqdaQ0x C/sVycW71vXp6zloK3Q= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-521_C4:KAS-ECC-CDH_P-521_C4-PUBLIC + + PublicKey=KAS-ECC-CDH_P-521_C4-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAmNmd7ggWVQ6E2/ztfogTf93PWBpy @@ -11526,6 +12407,9 @@ uNjxczI94LtgJ0siiHFgk3O7IqFyh+nex0lYc6vAmokVtUyEVcjgL2VPYC4jorvX qeu3TzAJvWXsxlCBTMA= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-521_C5:KAS-ECC-CDH_P-521_C5-PUBLIC + + PublicKey=KAS-ECC-CDH_P-521_C5-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAeuEVrarwQWkatrf7jJIfmdjtMtKD @@ -11558,6 +12442,9 @@ ZAaYJe4dCCjan0qXcTAF6b0a28OzjFuUaQByGpYP6WrSwbOkT+PekVYTbUTLF8vC QVcpu3guFr/i3rMGnkM= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-521_C6:KAS-ECC-CDH_P-521_C6-PUBLIC + + PublicKey=KAS-ECC-CDH_P-521_C6-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBJYgRXm9/e9z99X8DsWm0eXWLqv2v @@ -11590,6 +12477,9 @@ GubYxJtMX01gFhQ/sb10kVc+PtDmxIuC6CFkT4f4Lw5fCP0W8fmPoXWGIAqwLtjG J7NcPydhfsX9kvRWID8= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-521_C7:KAS-ECC-CDH_P-521_C7-PUBLIC + + PublicKey=KAS-ECC-CDH_P-521_C7-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBaUkdVb0JBJ/fTCpTpmBID+5MA6BT @@ -11622,6 +12512,9 @@ MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBz9wQx5n1x5y2kwpl+6NRdI4HVnmT u0pXh9Bu+ygCEPuL4Dc= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-521_C8:KAS-ECC-CDH_P-521_C8-PUBLIC + + PublicKey=KAS-ECC-CDH_P-521_C8-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAhBX1u9Du44fWwJ0O+KyvKcZttF1r @@ -11654,6 +12547,9 @@ MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBa9FciljTZvfysvKYzIe3SF6e5w0R oud8PtbJXsxEuJ4mN/w= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-521_C9:KAS-ECC-CDH_P-521_C9-PUBLIC + + PublicKey=KAS-ECC-CDH_P-521_C9-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBxyHuqAWly6KfNLpXWHdb4M9hYObA @@ -11686,6 +12582,9 @@ GcKZayy9H/ZHMOfKkO3KGYT5spUTM1NeV0i6o0qZ9h/01fgSB54PAeh3ifNO/a2A mAFe50pPhG3RkNFtxuE= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-521_C10:KAS-ECC-CDH_P-521_C10-PUBLIC + + PublicKey=KAS-ECC-CDH_P-521_C10-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBw1gj5ECpNjq5jZ/Hp7wMBTLceXen @@ -11718,6 +12617,9 @@ WwmxwAXP+6jXYomjdZYoyHS+6kYvUfML1YHjgDE0MH3tu3cbMzTuFb4uJCzXnDQH 0vWJNUVsaUHdm20VWkY= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-521_C11:KAS-ECC-CDH_P-521_C11-PUBLIC + + PublicKey=KAS-ECC-CDH_P-521_C11-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQACTBX+4YvKtLoLlgbrrMyTnsylG8r @@ -11750,6 +12652,9 @@ jNCV7C5amyR+s+1B2L72rqzhlKegW2WqXSifvJsXcOyEu2vgwsZMw3wdVKf11xN3 qa2+IPJvbytUSoIeqDE= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-521_C12:KAS-ECC-CDH_P-521_C12-PUBLIC + + PublicKey=KAS-ECC-CDH_P-521_C12-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAgxku0LHLMfdYF3lJN/Zq2Rz3RVLN @@ -11782,6 +12687,9 @@ ZjGVO24pRelDAdbLsJj+SwT37psJQR3xBNyC19eexGoB7Q8tPn2262gGlL3rEHwQ eK7Gyr2evuPTQv5+VN8= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-521_C13:KAS-ECC-CDH_P-521_C13-PUBLIC + + PublicKey=KAS-ECC-CDH_P-521_C13-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBqJtjapPl0rpsIpK/IwM6hPBqOsEi @@ -11814,6 +12722,9 @@ MFhXP6bAVkoCoaAQFgwxO8fHNRDcmD5UYWgrW+ANvOfixoKtc/KcqCLNwRH2j6vj Ons4SmSDQsPNufBQvNs= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-521_C14:KAS-ECC-CDH_P-521_C14-PUBLIC + + PublicKey=KAS-ECC-CDH_P-521_C14-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBcgCz8Wpoy67Sv3i6jN37bP+sJiu6 @@ -11846,6 +12757,9 @@ uK22pD9PX1/cFCHJ/gT8i6Rsm2YzTjr5J8i++0MHEE8pms7E4w+BLZNFyXINGYad v//Uyj59JxPrX8P0JhU= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-521_C15:KAS-ECC-CDH_P-521_C15-PUBLIC + + PublicKey=KAS-ECC-CDH_P-521_C15-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQATv1dvS+Xnjgxzpj4I1XWyhSldXhC @@ -11878,6 +12792,9 @@ IpAGFR+jK1H2eciBb3wXUGtAOAncd81Yoq7EMNlNE7bJFt6Z81WqRfz7xoU9aGxx vklqBn0kv66kgY/FH3U= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-521_C16:KAS-ECC-CDH_P-521_C16-PUBLIC + + PublicKey=KAS-ECC-CDH_P-521_C16-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBKYkd4M88+C6MLPG/kLspb+AKsIyk @@ -11910,6 +12827,9 @@ vzQm9XtceTJpEwq7mjj2GFMiEZMRVNtO65rt6I5XKQ+ELqDy6ppfdMYgOjkg/k4w X2EY9naxVOHXW5y164g= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-521_C17:KAS-ECC-CDH_P-521_C17-PUBLIC + + PublicKey=KAS-ECC-CDH_P-521_C17-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBo8ICQOWfW3o+F8J10jFLoXQSEK1Y @@ -11942,6 +12862,9 @@ XeLm59634JD0oR8sRgwLHz1elO6NdRAU3HIHhP07VFAMhuuu8YQp8J6Oh21dFTiW igMNdxXd6Z8NjwbinVk= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-521_C18:KAS-ECC-CDH_P-521_C18-PUBLIC + + PublicKey=KAS-ECC-CDH_P-521_C18-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAfi0Tjygy40Wuj/ZZV+QOXscWPwFr @@ -11974,6 +12897,9 @@ rjJQJmuWQ8DHZaYNwQFVvCUxz4YnKW9JeLZkCp5gDhnQA31YUD+oB5lUaoFNdHil UKqQ5evrBSUn+q6uXQg= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-521_C19:KAS-ECC-CDH_P-521_C19-PUBLIC + + PublicKey=KAS-ECC-CDH_P-521_C19-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAEYw2AiIJsa+OutGhK1ZvxIdEV24R @@ -12006,6 +12932,9 @@ CntNRZnX4/p3PdueslLJs0IocuVEvfdce/YPUWbdwR6wj6fDCCLauu43OrRo6y2S LkhOKlJ//y67gEt9mjc= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-521_C20:KAS-ECC-CDH_P-521_C20-PUBLIC + + PublicKey=KAS-ECC-CDH_P-521_C20-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBeA7f8cocA8++WT7cbASbyyhgKUqS @@ -12038,6 +12967,9 @@ j+GeTcnuehlbA8n3/mZ2+fUgticFV1BOcspDlKLGkYYl4VrAxRuPlc1WASNlP7jo 7m25YeLExizFTpLioqk= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-521_C21:KAS-ECC-CDH_P-521_C21-PUBLIC + + PublicKey=KAS-ECC-CDH_P-521_C21-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBbaz/oYPlMDCDozT3Zd5yTsXslAIC @@ -12070,6 +13002,9 @@ Cef0mByVKqgYorn29cQf7M23p6Rbm0tnKTd3GwCMrl+TTf4/7RDTg6sfOHacks6I 2b5UFIF+ywc6Mas2jMs= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-521_C22:KAS-ECC-CDH_P-521_C22-PUBLIC + + PublicKey=KAS-ECC-CDH_P-521_C22-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAoJFCHTcD47NB6fHn1Y+M9729F5jQ @@ -12102,6 +13037,9 @@ QNXmVJOIi8M3JJ5nwKaHdPPo2B47RXSgElFl8L1YuK+d50s1gyU5+Vw82fG3WUCF YKpoUa46x1VTR7DTsTs= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-521_C23:KAS-ECC-CDH_P-521_C23-PUBLIC + + PublicKey=KAS-ECC-CDH_P-521_C23-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQATziBZoF3EonODLg6Ximhqwb8kfeG @@ -12134,6 +13072,9 @@ PFYCKWZDKbqlE4w7scNkKKvU4j0X/Leiz8wiSy5zTIlB9vEhci17a5QVRXYBzwh0 9Q0oj9Oc6wysY1sXXsA= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_P-521_C24:KAS-ECC-CDH_P-521_C24-PUBLIC + + PublicKey=KAS-ECC-CDH_P-521_C24-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBoyCZsCwL2FNx9gsN0giQ5sevBIyB @@ -12161,6 +13102,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBx+LKHfWAn2cGt5CRPLeoSaS7yPVBcFe 53YiHHK4SzR844PzgGe4nD6a -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-163_C0:KAS-ECC-CDH_K-163_C0-PUBLIC + + PublicKey=KAS-ECC-CDH_K-163_C0-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBXQjbxQoxDITCUZ4Ols6q7bCfqXWB5CM @@ -12186,6 +13130,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAbAQjHhr9NNA8FBb38fUW1FGEa2UAiyc OdX7lFa4oiIc6k8Fj2qNLNhK -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-163_C1:KAS-ECC-CDH_K-163_C1-PUBLIC + + PublicKey=KAS-ECC-CDH_K-163_C1-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAWmXRAkv4rX+fsv2mHt66goG/SywA13k @@ -12211,6 +13158,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEA6J+yuwrZv6sIED2iQEovQBY0xkkAUAH 4yCbbXEnsPOT5eWLFZC59Avi -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-163_C2:KAS-ECC-CDH_K-163_C2-PUBLIC + + PublicKey=KAS-ECC-CDH_K-163_C2-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEApZdsVkXH1y356G8xhYRrqyoxSybBocd @@ -12236,6 +13186,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBpeNrKpH2PO8kLQex/T4rHmobd0HB/iw 70JwdgN2vC1frtg9p4cmMdCf -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-163_C3:KAS-ECC-CDH_K-163_C3-PUBLIC + + PublicKey=KAS-ECC-CDH_K-163_C3-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBVtowMLCRv4PLNVIS1iBTGUhPqVBBTnB @@ -12261,6 +13214,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBUnhqC7ChL931ShiflLYMuI2ySrTAZiD qptFizW9VE1ogoEhUMFJfTHU -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-163_C4:KAS-ECC-CDH_K-163_C4-PUBLIC + + PublicKey=KAS-ECC-CDH_K-163_C4-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBrjvWmLTtjalp2v+se+P9Niz2eL8BnWn @@ -12286,6 +13242,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBsKKQNxOVQPSxLirC2twRujiWsCfASGR FlSlg2AF2ANtl2WF/x2DHlh7 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-163_C5:KAS-ECC-CDH_K-163_C5-PUBLIC + + PublicKey=KAS-ECC-CDH_K-163_C5-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBWxKNYassDCZ1Sss1KxZJpz1G4cwAkJl @@ -12311,6 +13270,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBgqkKmLiHuo342K0096DfwxJ06wTBpsg 1v0W0TsYg98FYprH0bgjhrNE -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-163_C6:KAS-ECC-CDH_K-163_C6-PUBLIC + + PublicKey=KAS-ECC-CDH_K-163_C6-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEB0HGmk7bOGyU+BnRtd3QKB5P8pdlANMv @@ -12336,6 +13298,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEB6mE6tRAMQzvLhM4ly/y3dtlysPSAzPB qTQn/mrFAnYLd3iJiou2pArZ -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-163_C7:KAS-ECC-CDH_K-163_C7-PUBLIC + + PublicKey=KAS-ECC-CDH_K-163_C7-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAe9HeV+w44BAWrXoje/DztmpJRSmAL5h @@ -12361,6 +13326,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEB2fDHukwOxss0wWfgVB+8wTr0xAsAlHg 1DDcP2Pzo3urHnqVdlLPZ+Is -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-163_C8:KAS-ECC-CDH_K-163_C8-PUBLIC + + PublicKey=KAS-ECC-CDH_K-163_C8-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEA3TX+bqM2opo3nJ50/+GdAMv1HwCA+3p @@ -12386,6 +13354,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAJNUkHVwTXna53IxfdZSRPp3JWnrAqii gh3TnX52U8pxz8Gp7YV4AaOb -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-163_C9:KAS-ECC-CDH_K-163_C9-PUBLIC + + PublicKey=KAS-ECC-CDH_K-163_C9-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBld99U4Rx+diAvlPVk5hN7I85uRBBok2 @@ -12411,6 +13382,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAnGDYJt1k7GEU2XAgdRf9myateNwBpuY Ejb+kwlHtrd/N0KCoY5L6ZPL -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-163_C10:KAS-ECC-CDH_K-163_C10-PUBLIC + + PublicKey=KAS-ECC-CDH_K-163_C10-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAmHRU0XOtJIimo10WX59/RmutoSKARSh @@ -12436,6 +13410,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEA9qGnQnE5FRawWifxyMWASYy0KvZAsgg 9AMQ5f/S+L9Dn7qHm7LvYhsq -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-163_C11:KAS-ECC-CDH_K-163_C11-PUBLIC + + PublicKey=KAS-ECC-CDH_K-163_C11-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBw44D0k3CgAnlUpOqIC8GSmyjFMpBG/j @@ -12461,6 +13438,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBasgdMBN9XFgFnc19/wtj2KdNP8YAS6d ptBbs+Ksvlukr7Sg3XLbB9as -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-163_C12:KAS-ECC-CDH_K-163_C12-PUBLIC + + PublicKey=KAS-ECC-CDH_K-163_C12-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBuYK93QZuf4PxcecoaIqEBFAJAW2BpvK @@ -12486,6 +13466,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBdOYnMpK5zLek2crJckmCGG0wNzjBDaj MerSTygHtVJg+dw95mjPv+u3 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-163_C13:KAS-ECC-CDH_K-163_C13-PUBLIC + + PublicKey=KAS-ECC-CDH_K-163_C13-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBPdQ4nUA4Q8KF2uD8UvCbWvXHr10A55Q @@ -12511,6 +13494,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBa4xyymzHST1+Uww6cAvB/OL/wrIBNjY 45v4fwWFQ9yJkKkSFNpBbMVY -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-163_C14:KAS-ECC-CDH_K-163_C14-PUBLIC + + PublicKey=KAS-ECC-CDH_K-163_C14-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAqufW6lBAtIacGdh6sAJIZDxza0EBK3d @@ -12536,6 +13522,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBi9iIUmCPyVbT4aQZmbzo1Vq8IDqAnTK MsEPmt1hoCbSCtOtVrF/sGpG -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-163_C15:KAS-ECC-CDH_K-163_C15-PUBLIC + + PublicKey=KAS-ECC-CDH_K-163_C15-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBD0l0t6Sk7hNNRozyxpS9ZMKTIt2A9JZ @@ -12561,6 +13550,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBYrqbkC4yyXmYip75P8Bt5yS3nKlBD9n drbe/z0ptMcDiZ1wXH/s9SXE -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-163_C16:KAS-ECC-CDH_K-163_C16-PUBLIC + + PublicKey=KAS-ECC-CDH_K-163_C16-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAFYOGkIYZRGL6hbNrWtnq6OE7zh7BYsh @@ -12586,6 +13578,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEA2uEp3M3qd5cHdeuPImTgTgvD/+kBW1K w5/ogf245g1FWWWKqt5FZj7l -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-163_C17:KAS-ECC-CDH_K-163_C17-PUBLIC + + PublicKey=KAS-ECC-CDH_K-163_C17-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEA45IXekuQfHKymwOudgRpayom/NFAzGh @@ -12611,6 +13606,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBLKS0foJ38Xmo62Z/QL+t01IDjTyBuGI gAmgoEkcC+ar+slD03fwtIY7 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-163_C18:KAS-ECC-CDH_K-163_C18-PUBLIC + + PublicKey=KAS-ECC-CDH_K-163_C18-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBkJZ5QBHbdo+l+JeSR1GbCt5WL1JA8Ll @@ -12636,6 +13634,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAzRA5GDEdfIFinZ+xGbKGLzkH4MOA3Ku 4yPQY/qJrL/79VAkriTkkp8Z -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-163_C19:KAS-ECC-CDH_K-163_C19-PUBLIC + + PublicKey=KAS-ECC-CDH_K-163_C19-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEA3FCdpl7RHji2LWa9fLmPiK8TDHkBnPy @@ -12661,6 +13662,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBMv7KGaR5BUIGheF7GsKrNsdIx0dBd1q z+kdaKjsI2hkeMDujIkneu8U -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-163_C20:KAS-ECC-CDH_K-163_C20-PUBLIC + + PublicKey=KAS-ECC-CDH_K-163_C20-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAnXsFfJ90tpuRN/mI1Ry1b06JQL4BY/Q @@ -12686,6 +13690,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBF7+2ci9Kk5ClYjzRPSdHmPmaL0BAl0a +FrCHVmCLX348OS+ut87XUQB -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-163_C21:KAS-ECC-CDH_K-163_C21-PUBLIC + + PublicKey=KAS-ECC-CDH_K-163_C21-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAjOvNhAwOSJvQW3SLhomtz+Qk9OKBzQl @@ -12711,6 +13718,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEB3nPs+F8kColhO0zgqi+2CYtuYQkAEry c4dfiiq5qUrA0eSiM5Cyu1Bc -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-163_C22:KAS-ECC-CDH_K-163_C22-PUBLIC + + PublicKey=KAS-ECC-CDH_K-163_C22-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBtAyFSJA8ovn90349tKkUMEimlqVB6ra @@ -12736,6 +13746,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBf/g8WAYvUve5fc7/a0E1xPyIW9QBCNh yIHwCBywVE76sMOzT1nqre7E -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-163_C23:KAS-ECC-CDH_K-163_C23-PUBLIC + + PublicKey=KAS-ECC-CDH_K-163_C23-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAfhYHsYd8UCSJ6q3oBXyxx0p43FsAcH1 @@ -12761,6 +13774,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEB3bkD+cUmYUzfvG2ybgwyzYIdSqmBY5u y7J7Cy080OOnulON41dv1bn2 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-163_C24:KAS-ECC-CDH_K-163_C24-PUBLIC + + PublicKey=KAS-ECC-CDH_K-163_C24-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEAroi+9qqqAbIVw8UrUyIKmEMy42EBtRD @@ -12786,6 +13802,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAaU+XBOLPYOQXVY6odsBJ0YzyYa1L3gi WpLjPnlSAOyr0+LiZympZWBOVg7USYoisxw5ZC4c+Zsd3j7H -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-233_C0:KAS-ECC-CDH_K-233_C0-PUBLIC + + PublicKey=KAS-ECC-CDH_K-233_C0-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAfQONLPtShstQMBW+3XyrVQ8iXz9gvVC @@ -12811,6 +13830,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAcWh5dPuUW4+3nI/otXNNFaxFjJjA8Xu SSc6VgTEAFaND+cTApVUG/omUHQUdUbpczc2ugB1WdcW2OCU -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-233_C1:KAS-ECC-CDH_K-233_C1-PUBLIC + + PublicKey=KAS-ECC-CDH_K-233_C1-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAMhkwqRiqTY6SsPYGCEbygNpRy0YYoii @@ -12836,6 +13858,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAFpI+sR2wxytDGjmTmXmh65EGPtdO0uy q7mQ3Q3kAC2a3XBmJvKFns4RDfLd6J+vPoqsQz4lleI8J0CC -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-233_C2:KAS-ECC-CDH_K-233_C2-PUBLIC + + PublicKey=KAS-ECC-CDH_K-233_C2-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAXgtgvzSEcAkfIfmV+/MXS/2sF65NTMK @@ -12861,6 +13886,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAUqviA6B22mrorQDu9p/Nh4zObSDziaZ 8wv1KB6tAbcVWb19k4TlF7h/ETimlvvOs1ENjEHCFY1Ko+Wy -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-233_C3:KAS-ECC-CDH_K-233_C3-PUBLIC + + PublicKey=KAS-ECC-CDH_K-233_C3-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAI2ADTdnq/VzFpV1TuiCm4WP9OtgSkSK @@ -12886,6 +13914,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAYBFzJ5l9uJ14yKmLBjv4tAM+TmV/rU1 YSc6PxMGAWTgBzwNSz4S4i+De9P+xCHjuwngwN2ZdCKDD2QD -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-233_C4:KAS-ECC-CDH_K-233_C4-PUBLIC + + PublicKey=KAS-ECC-CDH_K-233_C4-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAUo+EhrdelJn9crSBLP0khUIR4ayP42U @@ -12911,6 +13942,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEACAibdc+MY5PyNSd1D5Z4mAZPRuySMvk wGtNa4OJAO0SpPOJaWqzHJPqPsTY6vGL4Jf8kVLixCtz/0Uo -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-233_C5:KAS-ECC-CDH_K-233_C5-PUBLIC + + PublicKey=KAS-ECC-CDH_K-233_C5-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAIlmeIj4QlxaYjE0Yi8eqdmvNt+XcsQQ @@ -12936,6 +13970,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAH1teF+jIxdOuc3ltwVCjkAZJEg1vJRw LygMJf/lAZqg70MwdMSE0U5hE3LwPviRLxqCRs6x6QyBfbPb -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-233_C6:KAS-ECC-CDH_K-233_C6-PUBLIC + + PublicKey=KAS-ECC-CDH_K-233_C6-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAWTaCZIl6zxkH8g8dyBKOW6rlJWxKiL2 @@ -12961,6 +13998,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAfZilpfaYg1Zf8H1HIM3QhPzfpUvwRfu ZannZq77ACs23tx4eslR0oedckFNoudXWmzXxC4Pogsy1GH3 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-233_C7:KAS-ECC-CDH_K-233_C7-PUBLIC + + PublicKey=KAS-ECC-CDH_K-233_C7-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEADOosIo8M8NDAyztHA9egm+TLe6HnsFg @@ -12986,6 +14026,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAUh9H9q8zX2J2iVoWwQpgKsXCu48EfMR gOO3xQpKAX44PdZaHsikCQB/dQNeWxYTNdnHdW7ZcEkPvRca -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-233_C8:KAS-ECC-CDH_K-233_C8-PUBLIC + + PublicKey=KAS-ECC-CDH_K-233_C8-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAM/hX4YaoBU0hfOKwDPfnI2BKv3hZ7iR @@ -13011,6 +14054,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEACNS/pNB5ixgn8FTjgJwQF5wAddHuHUA 5kShEsXZAEHzsVtxSm9+9kfiNmXqUw78vhmwdAQ2zagS6Dk5 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-233_C9:KAS-ECC-CDH_K-233_C9-PUBLIC + + PublicKey=KAS-ECC-CDH_K-233_C9-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAHY+KGvlB0C3+L14+nC8rIgN89c3HrM/ @@ -13036,6 +14082,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAV5n6uvlK6N/W3OhmdlQgSzsEBL9QQWB REu/I+DIACIFXvgh3zMEL7gxbdrXZIXb0lkOL1SYqRTk8K05 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-233_C10:KAS-ECC-CDH_K-233_C10-PUBLIC + + PublicKey=KAS-ECC-CDH_K-233_C10-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEALyKca1METTe8Cbkcj4xAiP7LFhZvHWU @@ -13061,6 +14110,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAY3k3E9qTeXDY467ok3HBkmDsVn1WxOc doChy5DRATVTLYFIrz4ifUqJYOdoxWX3LBrAocmnvRhc+ZTQ -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-233_C11:KAS-ECC-CDH_K-233_C11-PUBLIC + + PublicKey=KAS-ECC-CDH_K-233_C11-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAWzBrhP7NIJSSTAhzWFG1THwtyKEKkTH @@ -13086,6 +14138,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAUeYCUaAy9Mvse6dyqa4c5pVYwUjWTP7 JxV9MZ5XAchV8NRTwf+19mizKos+MJ4OgQG8Obbb594hQBXj -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-233_C12:KAS-ECC-CDH_K-233_C12-PUBLIC + + PublicKey=KAS-ECC-CDH_K-233_C12-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAOSeGCrF2TK+iwX+NA6Mty3zVkfezWea @@ -13111,6 +14166,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEACzW1MHSzF40IF6tuU9M/TW7Vp2nIsTZ sZuNXMLeAOowBOWwkw33+L2jFMi8EUVGPrYAIs0tz2wMgk5Q -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-233_C13:KAS-ECC-CDH_K-233_C13-PUBLIC + + PublicKey=KAS-ECC-CDH_K-233_C13-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAVmLL9tb8aOVH7nsAW7LTSj2bC6dE1ln @@ -13136,6 +14194,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAP4bUkCKcShBvWLw7lEwfyYzHUArzDpa sEBdHF6AAQpzGn1qak9bQLLqqBDBkC2yeyjSl7wF83FMrK/A -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-233_C14:KAS-ECC-CDH_K-233_C14-PUBLIC + + PublicKey=KAS-ECC-CDH_K-233_C14-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAbbP87f6IV43hgXJP4b1zThF9F+96L4H @@ -13161,6 +14222,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAE0AqPCCDakJf+UOjn3v2sKWB91Msd2I HU5h8eeLAIpKjpyBG0RDZ5UnUquMKlGY77KPvtvz+9cBqFep -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-233_C15:KAS-ECC-CDH_K-233_C15-PUBLIC + + PublicKey=KAS-ECC-CDH_K-233_C15-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAM9AKuvD5CR6mrQ9qXVRdqgQ4BH5/Zd9 @@ -13186,6 +14250,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEALbLb/pOLqvPe5h+u1IBZajsmiKm+f+x APOBcqD7ANOYFOGFJHblbonOjN1kNyhAwBVwqGlArOJLuc9q -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-233_C16:KAS-ECC-CDH_K-233_C16-PUBLIC + + PublicKey=KAS-ECC-CDH_K-233_C16-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAPOMzM8I5b3/O7NffnW9ztaNN5Hc94Q8 @@ -13211,6 +14278,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAcFyzuK3ZQPrTZCzndrOglsjwyN1y2jq 7Nc0hJCjAMJG75xuL62sd8c+6d1a3ugot5GEFzlbWZe+GgJ4 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-233_C17:KAS-ECC-CDH_K-233_C17-PUBLIC + + PublicKey=KAS-ECC-CDH_K-233_C17-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAeMoVx35M6z9TJbzxL3nHpF1y81iruzX @@ -13236,6 +14306,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAJeUhhAXs96+/zAuQlMn/iadeHU7c7wb +zp39xbcAAJYGknBJp9eyGjcbX9cLY50ljLUerbZ5o262YXw -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-233_C18:KAS-ECC-CDH_K-233_C18-PUBLIC + + PublicKey=KAS-ECC-CDH_K-233_C18-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAPSqf5NAqdpGxPBnKHU6Stxa9TpNy0Z/ @@ -13261,6 +14334,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAfslijHRZr75zWZM17Zs2MGG5wJcd/C6 5zFYfp72AGDf1OR16SgF0ZNdA4LcF2cGeRXMAO07JPZTgtIa -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-233_C19:KAS-ECC-CDH_K-233_C19-PUBLIC + + PublicKey=KAS-ECC-CDH_K-233_C19-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAGjZ5V56EFt7tEsh1mm7DvZXqRQ3rYS/ @@ -13286,6 +14362,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAaUpQKRSqvQgs3tfMsLDNzBolKiC/up6 3a3AGSfuAHcbn2KipvqJJQMiUnVJA4i4v8Lfd98+gGvtun2I -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-233_C20:KAS-ECC-CDH_K-233_C20-PUBLIC + + PublicKey=KAS-ECC-CDH_K-233_C20-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAJnrkc2phiAQPDIF1kieaK1+V9ClHcUC @@ -13311,6 +14390,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAINTD6PfMVqHQKxS9NOUuAxKXyELq6C2 3CIF4SSTADe50C7UPp1B0Nu4QDuQIbTSwb02DuU8McJ7SSAF -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-233_C21:KAS-ECC-CDH_K-233_C21-PUBLIC + + PublicKey=KAS-ECC-CDH_K-233_C21-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEANzKoitDOR3AUll6470HxuXwIfOemHdW @@ -13336,6 +14418,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAUY8eOSYq/NAM+w+HZc9wSUJ4tI0+5FA NxXkL2H3AK3nq7mKAwiIZpY1Oq0zwFurXPPA1Olpy/TEzuyT -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-233_C22:KAS-ECC-CDH_K-233_C22-PUBLIC + + PublicKey=KAS-ECC-CDH_K-233_C22-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAXCRezOze46v8kYeX5648Hl7E6q9kVpg @@ -13361,6 +14446,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAVBJOMFnaAr7i21YWM+qGRxAGW/E5QDG YsU0bsyQATfRupQiKNrmjEULGgM6LIEKmVlx8BwkCJ5Kb9zF -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-233_C23:KAS-ECC-CDH_K-233_C23-PUBLIC + + PublicKey=KAS-ECC-CDH_K-233_C23-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEANjtMYOCuFwlJaAsIsZ/W/NmM12Udn61 @@ -13386,6 +14474,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEATG41huc+wU2xYghTkWIjr5IOR7uy01/ tb6O/0rPAWXaSVV6CqnUXdN41fiZJyzGl2gidq6R0sC2dcRp -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-233_C24:KAS-ECC-CDH_K-233_C24-PUBLIC + + PublicKey=KAS-ECC-CDH_K-233_C24-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAX+H8T9t/uYIG7XMpTL+JownHSdWsxvf @@ -13412,6 +14503,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBhHtwEXb5D7MTvazJM1R9w/j1934d+xo t5iQnDxFYXVqow5fAIM7JVEXBK8Jti2ffLrFmBTnW7ucc19VU4SR2/pgweARXv5C -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-283_C0:KAS-ECC-CDH_K-283_C0-PUBLIC + + PublicKey=KAS-ECC-CDH_K-283_C0-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEA/B1wkw1qdyZUr5v0yt2Hc5j9HIKIkCO @@ -13438,6 +14532,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEB40uzU2QIzK2s8e9S6fSAPw0xF7aMJmL YCXtR7H0+OaPMoYkBNXlNkfd3y/MyIFtrIvHDCmAdiLMlVOacqo6myMModJe57UW -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-283_C1:KAS-ECC-CDH_K-283_C1-PUBLIC + + PublicKey=KAS-ECC-CDH_K-283_C1-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEB5m0MOkjIP/qvy1syHOZ4wwKqEQg/466 @@ -13464,6 +14561,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEA4FatkgOStJKZignXvLuDOfVhpkjnbzi MziEK8WMQsypTSQSAt6DPMZkyskNMPvqxgPvu86SdtTxarHEbn4RyBqaqeJcgpaa -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-283_C2:KAS-ECC-CDH_K-283_C2-PUBLIC + + PublicKey=KAS-ECC-CDH_K-283_C2-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAM5Hp0PUi4b+/WtcAvKpeydiov5X4L34 @@ -13490,6 +14590,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAdnDM32pXsblpL/xzJJ4OYm2bJIwEHhw 1KV4aZM4446y2S7/AM2q19DrD0Rap2Ol37jzj1U1V3fOJPdTta09PLqxJfSRaY1W -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-283_C3:KAS-ECC-CDH_K-283_C3-PUBLIC + + PublicKey=KAS-ECC-CDH_K-283_C3-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEByiXWDm0LGIDanr/+t3vwwJLclhAe+1W @@ -13516,6 +14619,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBuSH+R5zvdNE+4vI9MH0ducn+yZx6dbI +9d18aqiTK8umjb1BmPhz/gJl1e7n/G4eJAoOqSc/w97Ev4YTtKkKDddJ5bNgd6R -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-283_C4:KAS-ECC-CDH_K-283_C4-PUBLIC + + PublicKey=KAS-ECC-CDH_K-283_C4-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBVZy1zmYRRCJ4rfHEEtCJH3d0TLUCtCH @@ -13542,6 +14648,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAmiWsDnXBo2YoyZxDrt6l4vUdmEVRkWu MM2D1gU1Bn4FFRzLANg6Jjvb2Mir8DEL+/yDkXqGsNjEvgsVWre54scFYFYou83Z -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-283_C5:KAS-ECC-CDH_K-283_C5-PUBLIC + + PublicKey=KAS-ECC-CDH_K-283_C5-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAswopMt20UfZjfpnfcoU4XcTR7loHGXN @@ -13568,6 +14677,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEA6chkGrRPcFcMR/U5VLzvIe32Szu7bsM MWqVJ4W6Ron8C6JwApUU84c7vDueIXBh96YmH9xiaGhfllbx1e6kcswttajBYubp -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-283_C6:KAS-ECC-CDH_K-283_C6-PUBLIC + + PublicKey=KAS-ECC-CDH_K-283_C6-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBjiA61OMcnXsuk21PZtowof7N3i+9RSX @@ -13594,6 +14706,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAI9ldtYq/8cYNtGa27w9UEIQ8S77YcQg V4JFFSkMUC8uCbbYACFkO+h65uVJsNX7tVjBMD0UsczXdwPsdPlgLzXKjXpRObzn -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-283_C7:KAS-ECC-CDH_K-283_C7-PUBLIC + + PublicKey=KAS-ECC-CDH_K-283_C7-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBb/SiVouZjZtt6g3iMcrzkj3m1yVJKCK @@ -13620,6 +14735,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBraIFbuDaR0WdJxL4WEl4qbW2ulCUnOb p78NsNUBmOov5D3fA54NkwGKRhJWIPb/rKWgZoNDxXAlpgwxqdblEZHKsziZO0a1 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-283_C8:KAS-ECC-CDH_K-283_C8-PUBLIC + + PublicKey=KAS-ECC-CDH_K-283_C8-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBjVH91cL1pWXM8A9LmxMiJcfMUrc8ovI @@ -13646,6 +14764,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEA+Q54+vfp6I6nesJ3hQZBcZTxPIC7fLP Xwn674i6MRNwHknwBx0HG4btD0aPxgGd4j/kuiyztQAyvjXpLS5a9A3nBqtSToKr -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-283_C9:KAS-ECC-CDH_K-283_C9-PUBLIC + + PublicKey=KAS-ECC-CDH_K-283_C9-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAJBH99dzl9tw45/p5Lqdl6mVp+4Gbs9T @@ -13672,6 +14793,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAi925atxT994Vx6EwrbqOhfxKZm+SDvG fhuEPSCb3+wDR6Q+Au7B/A6F8zDFPa17/0hi2K//iqFPlHVulbjwH9fuuPxUUneH -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-283_C10:KAS-ECC-CDH_K-283_C10-PUBLIC + + PublicKey=KAS-ECC-CDH_K-283_C10-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBL3sGTAMiv3u2GSZ0nA5It9Xsv/sN+Rc @@ -13698,6 +14822,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBXHwyH+IiI7Ac4lhg0AhdlzE9cjbKx+e qbj+mEf4lkNJ/cRPBO98gESmCWlHRsyq/of8f58aeNAPg1T12n7i9dpyNawa1LV8 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-283_C11:KAS-ECC-CDH_K-283_C11-PUBLIC + + PublicKey=KAS-ECC-CDH_K-283_C11-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBhH1OvS0iJkOelLlxzhWoedCebsPNtOr @@ -13724,6 +14851,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBI1h4Lm4BkvMqM5A1PnmiyNoQTdyakTq dcjy+IUPAzP76YXmBfyro41R4hEra5805necEMDFWcPs0VYCKWbPkqjH9lAgp569 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-283_C12:KAS-ECC-CDH_K-283_C12-PUBLIC + + PublicKey=KAS-ECC-CDH_K-283_C12-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAScG7AoOdkJdirTg1VkwpEFuTdChr22X @@ -13750,6 +14880,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAeK4jeN3KwnGPQNuDbukNSRph0l7YoPa uMzxACSG3gcwJ3tDA84YK38M6iGgah1N6HIsv8WbnZ15vHYLnRfYVnFWGuqt1UlB -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-283_C13:KAS-ECC-CDH_K-283_C13-PUBLIC + + PublicKey=KAS-ECC-CDH_K-283_C13-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBbsgvqT9hdAWJonFUAVAAUCbbHEtNWpS @@ -13776,6 +14909,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBNxndP5Gqw7Sdo03nnVko3xrsd0b/FVX J62Uwg9HMsq/KiyCBsbPD0IfkfyiK0hxIWqfH+OHjweRTpaulKx3C2di+dzgj/ot -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-283_C14:KAS-ECC-CDH_K-283_C14-PUBLIC + + PublicKey=KAS-ECC-CDH_K-283_C14-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAQo8okNbE1/+oIeSt/GbTuGBIHwpvhzh @@ -13802,6 +14938,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBm3fBIMf0ccrxItwkGHBrqqtGcnaPYwV Bvp3XU9aVBLu4ChtA6odExRv8ZJ5K3SlxkrTFQ+uNE+oMOD0RzPYZ/TgrgU1JsYr -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-283_C15:KAS-ECC-CDH_K-283_C15-PUBLIC + + PublicKey=KAS-ECC-CDH_K-283_C15-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBToN1hNeQ6EU5QAK7EC6JwmzphNzDxzC @@ -13828,6 +14967,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAKBK16WDZmpAQ3+WiwLKx5RnRbTKlJAh xUQ963AYP4jhd4/gArtZHDLw2zQwNC8ON8RUScKTxU9rffb3l8CZLCgphYtoDyvc -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-283_C16:KAS-ECC-CDH_K-283_C16-PUBLIC + + PublicKey=KAS-ECC-CDH_K-283_C16-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBtSm8+h7bYxJy+UXqXXSq4xjORNVltaz @@ -13854,6 +14996,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEArdmyZOzmNJCanoKSenQAQedD8Mhlxgc VurBgF5Ph8nfBV3qA257vTvpE51NQ6hlXvfVGgYtmUfRpIAQ7x6hDu3rJ/DR/+dl -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-283_C17:KAS-ECC-CDH_K-283_C17-PUBLIC + + PublicKey=KAS-ECC-CDH_K-283_C17-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEB2RS4Z16ELiFEj1QP10EM+Fj3xNP/7hV @@ -13880,6 +15025,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBCHGLcq1S6gA6vrCMvxzDOcPbVzFP/U9 NxJpzwRtrq9FGzPnA9Y19VIz2jxJCpWcbmOpT82+Rx+/yhnSxaP9ErBNs4DDyJXM -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-283_C18:KAS-ECC-CDH_K-283_C18-PUBLIC + + PublicKey=KAS-ECC-CDH_K-283_C18-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAY4Lt1FtLELp3ZbKr/XyC/3fPoYj/JR9 @@ -13906,6 +15054,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBAyIkk1aJKhT+uQIrqWzvIJ9cxX7tY5u ofamVnfdTE0wS9dfBUuChpraRDP3II+FcPJPBstkBG6KwIasV9Nwf8iCxjUnM9/2 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-283_C19:KAS-ECC-CDH_K-283_C19-PUBLIC + + PublicKey=KAS-ECC-CDH_K-283_C19-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAkq7FV5JEkKC6jLltURiGum1E6oEdto7 @@ -13932,6 +15083,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAVdOF84mMRxAq/MkP0iJournSoNBqng4 VRBW9DlbjwK9wye+AIbln5hTSPP415U4ALHXXhQVISScQ/4GFpE9tdHUvVQAq85V -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-283_C20:KAS-ECC-CDH_K-283_C20-PUBLIC + + PublicKey=KAS-ECC-CDH_K-283_C20-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEB1J1EryTSTjMUkDOcO9lIi24XBPJYcHz @@ -13958,6 +15112,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAxswJhBDiDdM+3x7TvZCEaR+ILlWGju8 pTUWBAt72ig3MJRUAk+K6yOjXhwiIllnx5EYaMhO/dhz27zLx2Pq1n5yojJKpMby -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-283_C21:KAS-ECC-CDH_K-283_C21-PUBLIC + + PublicKey=KAS-ECC-CDH_K-283_C21-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEB+wp2i8wTOuo1eJJ62BUpOT1lTTuWdJc @@ -13984,6 +15141,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBvWZ8MFJRXoy8aL/q9Tf+RYlk4KRK2QC tQzfXCNf3Rt5Dl6vBMzx2KS/63f/MpDmWsYB7luX/BsYaaLrnwt2J36AZsCGd2xA -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-283_C22:KAS-ECC-CDH_K-283_C22-PUBLIC + + PublicKey=KAS-ECC-CDH_K-283_C22-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBh71k4nt+PgnOmYqQZVBHpRIuxt3+wgA @@ -14010,6 +15170,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEBC7Mmf9ItT9mGbSEr4+lmyNKmBycPpEH u9HNqszoGIXQbgKpAYPaDX/ufz5w4Rfw6KSnQsrRCu/NxKq5uzFFgjdoavtPrPOp -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-283_C23:KAS-ECC-CDH_K-283_C23-PUBLIC + + PublicKey=KAS-ECC-CDH_K-283_C23-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEB51XYO5u+XhRi7zlNrAxxlWorPVgRJe6 @@ -14036,6 +15199,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEApIzI/FwB0Ii06aih62v09H+EnFdV7kb H/R2orT8w4XeJh7MBMxJjWfGJnzHxMLUClbNwqbnFe3YsqlhTusz0Lb9Fiy7hacU -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-283_C24:KAS-ECC-CDH_K-283_C24-PUBLIC + + PublicKey=KAS-ECC-CDH_K-283_C24-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAkeE09PV6AIf/tiicJqfVNU5XZj6RCpl @@ -14064,6 +15230,9 @@ cocHiZOPGu/4E+BeUJ6pWH0rfkqhQ0S6w+xG8ADRzrQMfV8yl+KVXw8+sUIrPmu7 +/frUYucF66NQP64Sq829eW9lgdbK02+U4rAEZYqxwU= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-409_C0:KAS-ECC-CDH_K-409_C0-PUBLIC + + PublicKey=KAS-ECC-CDH_K-409_C0-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAXf3NvYRYyDK+7W03sIC1AUIGC/gERib @@ -14093,6 +15262,9 @@ lu57jCHO7QBB6UcM7Dvty3mekL27MRkgg/8DRAD5xhIpJ/uCQkbR3Bzg/ecaaEmo LUEGXaHYUlapsZeb9/KGNm/IsySJPr405ZwEYAc5lBQ= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-409_C1:KAS-ECC-CDH_K-409_C1-PUBLIC + + PublicKey=KAS-ECC-CDH_K-409_C1-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAQxMaKnxpioyZVa22XennNnER2wFsa3U @@ -14122,6 +15294,9 @@ hgxhPuBeEdo/L3mccKaP5y/V2sJGnaoYEHAp3gE1aQSxl7+eBlf0NJ0lK7s3XGYg b8DYMSWZvb7+6GCOyUjc5IaAe6pTXtBq2snHl2NHEas= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-409_C2:KAS-ECC-CDH_K-409_C2-PUBLIC + + PublicKey=KAS-ECC-CDH_K-409_C2-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAeTVgNXprYFnHGzWYtVWm6/k11qk9Emu @@ -14151,6 +15326,9 @@ KIgDNC/GHrOW9WCvdDQuELuU0iTCTY5ZAOW5cgHcytl+zvQ4ehz1ErFt1bx6thX7 xQh6wZ1fwnYvYVtJBOo5NDu7GF22Shn39w7PDVV7Feg= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-409_C3:KAS-ECC-CDH_K-409_C3-PUBLIC + + PublicKey=KAS-ECC-CDH_K-409_C3-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEALfRk1TK3MlHCCZ67Ysj5ITjKgOBSwJq @@ -14180,6 +15358,9 @@ Kue+LQJzYAmibYOqqpAXqMi/YO+hX86tB3Z9SAHQL9ZqeAbEyERfphUlT/MrucHY WjkE+TnBBh4lDT62QTEwoqVXCZR5UxDpbcOv87ghitM= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-409_C4:KAS-ECC-CDH_K-409_C4-PUBLIC + + PublicKey=KAS-ECC-CDH_K-409_C4-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAPKhHM06U8leqY8xRPt31KaE+aH0I+uB @@ -14209,6 +15390,9 @@ vXPGvmv3t2OiyagHhGMS2jq4IcBJrAhh+CM38AAqZDbvihJhrsw4yCHad0o5H9zH dQyUN9nf5kyCM1CBOZnw/U8H8dbZgHQJhhK8UgRCSdQ= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-409_C5:KAS-ECC-CDH_K-409_C5-PUBLIC + + PublicKey=KAS-ECC-CDH_K-409_C5-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEARdEn76mstX06OTTmnIoQkzwb0Vr8645 @@ -14238,6 +15422,9 @@ X3suEz3m825KP4+i+Xfv6SD4RdF2yKVwI8xVwgFJOX+8QrrPhcWeBFNd8dUnFXYe 6pl9T/hyBIZs3D1KVMJCWtIUp6DdWS9KmRq3aMj0BL4= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-409_C6:KAS-ECC-CDH_K-409_C6-PUBLIC + + PublicKey=KAS-ECC-CDH_K-409_C6-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEARmYDxEUne5eLC0AVh08JqQqWkTodHZd @@ -14267,6 +15454,9 @@ jVwtk5CLDvXnK3SIFNG4hAZC11t6mlUwGx58ggEIX1dpHgSvrG6ITi/b2N+AL01D W85hEjGrMnR2Hq1eLmo0SlPzPA+hVuMTIGL3K82j/Aw= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-409_C7:KAS-ECC-CDH_K-409_C7-PUBLIC + + PublicKey=KAS-ECC-CDH_K-409_C7-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAfo5tdM3XUMkeslQAGHr/3oMFbjF3+nH @@ -14296,6 +15486,9 @@ Lhv2kxU0fOgtvXhdRZImYNTQ0n+isKxi5wf87ACY8Hc9Pv6cKQqZLsoFh100Y/Bz ay3+9K/9n/APlq3lM5mRfeoHTHmPxTVzjwxWiaJEf4Y= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-409_C8:KAS-ECC-CDH_K-409_C8-PUBLIC + + PublicKey=KAS-ECC-CDH_K-409_C8-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAbJV1bt10llwMB3p4OOVmhIgXVEfjmTw @@ -14325,6 +15518,9 @@ NZYwVFwxODkid007JOIFkdi0HpVOFmVP6Fy6ygAx4Osd0c5Geot40Q0lud6Sz9wn c4MebiihUtAq4qWlEJlMwBBGIlREHqQRIcBnf7QXi9o= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-409_C9:KAS-ECC-CDH_K-409_C9-PUBLIC + + PublicKey=KAS-ECC-CDH_K-409_C9-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAOz3Bk9Sj62uOAyzgphIEQR6DX3ZqN6O @@ -14354,6 +15550,9 @@ M/DKvei7xNJFjjzTyCpK+AdF9ZWzuhL4tcDOkAD8Q/GTtVia7mKYVzXjYoN03UWo amG6r3jCH6bnh4Vupri4gxZUBXGCWGXOa4V4rdX6pp8= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-409_C10:KAS-ECC-CDH_K-409_C10-PUBLIC + + PublicKey=KAS-ECC-CDH_K-409_C10-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAE4Fw02sRObhsIzfrmNXwg23pUTcJT3/ @@ -14383,6 +15582,9 @@ Pnp+PXU/sLbT+AzRN2/Zi+Jg9JR1fNwGMlbVsgFe1wA7fSvV4DWTA2YK3QkASQOc 9985aYnqGMcC9wTEXPb9560HLTElPR1SlenF0dXGLDs= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-409_C11:KAS-ECC-CDH_K-409_C11-PUBLIC + + PublicKey=KAS-ECC-CDH_K-409_C11-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAW9pYP0jV9L3C193i+XgqnFVa50vTM6x @@ -14412,6 +15614,9 @@ MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAApWd6xsANJkYFTb6/xTbbCps1GiQIpz GUFKe1Zm4lo6togZdTljJad/VBobomgBKoLFEQ0qSeI= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-409_C12:KAS-ECC-CDH_K-409_C12-PUBLIC + + PublicKey=KAS-ECC-CDH_K-409_C12-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAPVJxH3I6S/s04tXUIlYgORJ8eMavgux @@ -14441,6 +15646,9 @@ WFYrLij0DNZPauK3BFd3P5Z1z/xAwCHkcCsI1gATxZpy8Mg/W7kKC/7nmJUvuR7j KcmMS1kU9EWufISDdnBStfUpl0YhVF3c1jd/Xjh9Vzw= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-409_C13:KAS-ECC-CDH_K-409_C13-PUBLIC + + PublicKey=KAS-ECC-CDH_K-409_C13-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAEEeXUyW413ptUHaX6xpEzZGLIgtjozk @@ -14470,6 +15678,9 @@ gNO0GA1fcu/JDz8rA2rNgX9A/UkGSqJeo4PILgHyLaa1CsViiUPwWxQUk8rMDwK8 3zv/20NYI0O2hhV2GhgL19GrHdwV9TdKj2ZdE7S5EnI= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-409_C14:KAS-ECC-CDH_K-409_C14-PUBLIC + + PublicKey=KAS-ECC-CDH_K-409_C14-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAA+oJD8ACjOYgIofiP/Fo0KWj+5ceyap @@ -14499,6 +15710,9 @@ MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAFakUvsdVYB5w+kb8i+GiEyol4iAb+fW YOYqfE9tyYv8lbT1MfGXw5SGcFQyWUIDwlFHFW39W1w= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-409_C15:KAS-ECC-CDH_K-409_C15-PUBLIC + + PublicKey=KAS-ECC-CDH_K-409_C15-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAL59WAQyY6svQiUtQbWC2GLCskPOGFdg @@ -14528,6 +15742,9 @@ QrWD2yhaS8TDOXmRfZEpqRywp1wa7nzU+6tzzgBGjvq89Ej8zoIfPegemU15p9me qYmsgfoTX3rIixVMdnkJxoH35IwAsuZruuuPhoj0RnI= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-409_C16:KAS-ECC-CDH_K-409_C16-PUBLIC + + PublicKey=KAS-ECC-CDH_K-409_C16-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAR/qWNnjbPjtTvO0L3fM6pO/VCrJIUHc @@ -14557,6 +15774,9 @@ hjBJRdkTH5BFfZuTjfCYsDW+2q+A7W2XlAT8cAGBo1Ftvqnal9bs7NsQ+W1URp0n OrNm6JpA/c7c8b2oN9XBS9EMC2oqnIpHgQElx2TdNe8= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-409_C17:KAS-ECC-CDH_K-409_C17-PUBLIC + + PublicKey=KAS-ECC-CDH_K-409_C17-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAMqAk0C9EzVLYHHQc+Zbmw0rrILiKr/K @@ -14586,6 +15806,9 @@ zYLzr34yp6fsrNVuJVJliTE4edSn/UOC1BFOSgBaNO90A1mcL4Pz6DKZUkiT8kGP +V1sL9wKPblw5i/dz0zaGCqni1T9jC6Bj7HuLdJ3Z2M= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-409_C18:KAS-ECC-CDH_K-409_C18-PUBLIC + + PublicKey=KAS-ECC-CDH_K-409_C18-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAHR5WwqcoHBJH7VKO8JJmB3vvsA35AQP @@ -14615,6 +15838,9 @@ bN7b+DlyjgKIE112nksokyyHWCP+JW6JGZfEdgCdFrpyalqeCRA7yUoJ2AeayO3y NBDIRp959V8zVc+zrXA2JOxtdezq44gdogkDxx3h9aw= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-409_C19:KAS-ECC-CDH_K-409_C19-PUBLIC + + PublicKey=KAS-ECC-CDH_K-409_C19-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAR62TtQknhGVstEwejWlFNZtKbpvkET5 @@ -14644,6 +15870,9 @@ GNlLVtuz08C9yWySyh7Kn0T7iljPNtz8wFiMvgD3AR/DIe9iWNz8H9wsCk5UyG7J Obyc7KbCkXUMH/VAs0pBh5OEKixcq2Bh276bW+P6YRU= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-409_C20:KAS-ECC-CDH_K-409_C20-PUBLIC + + PublicKey=KAS-ECC-CDH_K-409_C20-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAKFelqd26tuPigthNgM1y1AX19lxFkiT @@ -14673,6 +15902,9 @@ bTLLG8UGxbyiKH06zTP+GWU9bIigbso3Es6cqgBxa+sU8CIzYw80YD4wm/biVy8L eR36TFgq9qN6vN1k6NeFqV3f9Zu8b74bf8c1cl788Lo= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-409_C21:KAS-ECC-CDH_K-409_C21-PUBLIC + + PublicKey=KAS-ECC-CDH_K-409_C21-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAWQn5yvFfSapEKZyLqwsePuoq//MvBGp @@ -14702,6 +15934,9 @@ jlupTKsfjmHlowCYa6NJs63z78BeZWcK+IzT1gC68NpK7bly+IohXfv/ZOQpD63C XaPw2D815lvEF30wJdcdjuucQUcPPHGeAO8ft1Uuaok= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-409_C22:KAS-ECC-CDH_K-409_C22-PUBLIC + + PublicKey=KAS-ECC-CDH_K-409_C22-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAS6J3M35dYUazPApTPS94SWckHptOs72 @@ -14731,6 +15966,9 @@ zF7w0P7DAex370uRWBj+3Np/P9czx/nlKQectgACaJDVMDthnH+B9g+4KyawuY2P JMRcq0GkTus6OjEpROiJtANeBDYLMFBD4w0MuQQaid4= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-409_C23:KAS-ECC-CDH_K-409_C23-PUBLIC + + PublicKey=KAS-ECC-CDH_K-409_C23-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAKupOuHRVSiAsx9QP8S+n5HRAkfxTIFg @@ -14760,6 +15998,9 @@ yI2A+8rsFz4koF2u+YQB1eR/O3Zb7buCRjEoVgE9mcFxCAXV/H23JZrJ4TS0EdAN c/sHYuPSEc3Fa/f3FFEtBKYwyHMlUe5zQodHbPUR6DY= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-409_C24:KAS-ECC-CDH_K-409_C24-PUBLIC + + PublicKey=KAS-ECC-CDH_K-409_C24-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACQDagAEAKpOuJhEPM4+0sBy2Fh3WsIhwk4z7Kbz @@ -14791,6 +16032,9 @@ ItgHHBbfceG3G0vT2ZOIJ9OVkJO52x/4a+1zlEpC3LZ8wzEC4owdDpgEpkUGVvS/ M61y7Pe7g70oLN5LwV1OSAZKqK0vApefXz8= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-571_C0:KAS-ECC-CDH_K-571_C0-PUBLIC + + PublicKey=KAS-ECC-CDH_K-571_C0-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQDEGpcHZI6CZDqjGAIw2w2a1PlYiuY @@ -14823,6 +16067,9 @@ XLgECfdzuY1e3Cc02DWVMoG4KsDhXZAtiHp8a6dWKaN2cbEB0Y3f3EGT2YsYVRQU xJFzAEUw95dtJ8Jzpz3buJj8tfrenAu3iD8= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-571_C1:KAS-ECC-CDH_K-571_C1-PUBLIC + + PublicKey=KAS-ECC-CDH_K-571_C1-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQCESI8S3KbIGvgH4CFqZfh3eXNsnwE @@ -14855,6 +16102,9 @@ PtUF2Wvmt+K6dMgDKvGcovKznS/U6MibFWtrJcLqT3H3SgLKfaKkY6zXYF1TUP0W qckFJTTn6B1kjkBgorAcRZwmDLZWfaH8UxQ= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-571_C2:KAS-ECC-CDH_K-571_C2-PUBLIC + + PublicKey=KAS-ECC-CDH_K-571_C2-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQATUi+WZ67HtYCRy16h/TNIID0TsKI @@ -14887,6 +16137,9 @@ Cy0HYMijiOLuon72g4x9RQUuOMvuIJbL6J93R3QTQHZljfkMYsfcDj/emV16mQkJ kwCatsU1Z329s3bxg+tQktLLaog3tr6jXc0= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-571_C3:KAS-ECC-CDH_K-571_C3-PUBLIC + + PublicKey=KAS-ECC-CDH_K-571_C3-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQGvyUuYsmWkXGpcXZx2g9wMulSCkl+ @@ -14919,6 +16172,9 @@ GLsAmPx2VtneOlGSPbopDsvkE++NlR8k6SSMtVIwn5cSf7lCns9t0Htt6JTharYO M7TucwJMy+hm3l4X8bR43HcnobtCNxggsS0= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-571_C4:KAS-ECC-CDH_K-571_C4-PUBLIC + + PublicKey=KAS-ECC-CDH_K-571_C4-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQFcB5jsBwWxOsZk4JluhNMrHMWJ44v @@ -14951,6 +16207,9 @@ hUcCL5lPmXRpLbtuWMx65fkGUu4jHgo5YVadxkbRFFIqN3dBDBs1LWaAefgAELtU DkwoQIZlgQ/mH9YOcNMMaI6rj94ENk3uXJs= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-571_C5:KAS-ECC-CDH_K-571_C5-PUBLIC + + PublicKey=KAS-ECC-CDH_K-571_C5-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQDL6GBb9IxfBa1sZol1G+l5FqxXuny @@ -14983,6 +16242,9 @@ opEFQKdjgjWZ4MhgJ7rMjLsw46JGcnb8T35f1O04XfxviD/te8pp3yGgZotV69KS 2o/WNWo+xc0cdiwBRzqgZwBMrO2tVk/gaRA= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-571_C6:KAS-ECC-CDH_K-571_C6-PUBLIC + + PublicKey=KAS-ECC-CDH_K-571_C6-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQD5j3UyYwVE2HJkCt2OuMvLW3nWVP6 @@ -15015,6 +16277,9 @@ XhUGaAu9woFQX10/vil0SpmeB/9hJXaZP2+L4xE9se5s8jeZhnu8gKFAN2qbYydF H5i/j9HbRvnZzAXohwTVcS1FZ+HfQNOeme8= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-571_C7:KAS-ECC-CDH_K-571_C7-PUBLIC + + PublicKey=KAS-ECC-CDH_K-571_C7-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQG+Rp84Rupvy3h/gcPnchDu3F8MG2c @@ -15047,6 +16312,9 @@ nO8GjSUV9CWg4wN1RzQvG2/5MXY/UFLlNupPeDd7XJQUWcjCIBSCr8882nOQ6eXT GUUYZMoDaDVBqyzXep2I/XphDKhF7lzT1Jg= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-571_C8:KAS-ECC-CDH_K-571_C8-PUBLIC + + PublicKey=KAS-ECC-CDH_K-571_C8-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQFqyp/EKyJ+YxAlYCrwRrZDJM2Dmqy @@ -15079,6 +16347,9 @@ hJ8Dfjo15Iqma9hRxZ+FHUof8zTg5YnawwmGrNBtbrjOI28qlojyeKFNz+BmC1+g 6X7Pzrv1tA09P1FQpVRay6YjnABBmsctwsw= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-571_C9:KAS-ECC-CDH_K-571_C9-PUBLIC + + PublicKey=KAS-ECC-CDH_K-571_C9-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQANAkcOsb8UpnfGPFi6veiB/wVQ6pJ @@ -15111,6 +16382,9 @@ Z2Aj/hZWht+9pk/IWZXdwYycWwKb/71N/6j2KYnGOaaGI+yngAnLCI7hy0LEhVt5 Kw70h0NCPLxvQTVpLDCa4mMMxKU5C+k/J0s= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-571_C10:KAS-ECC-CDH_K-571_C10-PUBLIC + + PublicKey=KAS-ECC-CDH_K-571_C10-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQFe3xlvFHoe9rTfCtNrmf7AIznH9MH @@ -15143,6 +16417,9 @@ lRAHDt5Yd2Zf1jatz9ByINdF7XrAqbAgIVn0UMn2wbg3GSpp7mrZVTJ+uc0yagWI tZcj206P0lixHbiIpT6xTyvghRJogykFmJI= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-571_C11:KAS-ECC-CDH_K-571_C11-PUBLIC + + PublicKey=KAS-ECC-CDH_K-571_C11-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQG+nR37exfHnQogfjXsq9WN1ET6ZK3 @@ -15175,6 +16452,9 @@ R8uOosNFQSCm05PtmJ0TIxxmGWajeLln76ZNPAk46cC4sWyZ1zSb3Vni1EgE+P7h 9epWV6KZGbiKbWP9CpQ7Vt3kyEeEgbV3I+Q= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-571_C12:KAS-ECC-CDH_K-571_C12-PUBLIC + + PublicKey=KAS-ECC-CDH_K-571_C12-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQBi7bL/L+67UaFZLNo8LCrw/vKR9zB @@ -15207,6 +16487,9 @@ KeQDenxZASqC1ZzB4vD9T9dR5XN6y3fyoHmeCvOJlqteEQkKY5bMSA5vKqvY+tRG EWkeWCIRX9SdKgAMm0nR9JZOJNQ/u4H6h58= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-571_C13:KAS-ECC-CDH_K-571_C13-PUBLIC + + PublicKey=KAS-ECC-CDH_K-571_C13-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQDIYS2hj4stbxxuv9ba1ehBZSDHMEa @@ -15239,6 +16522,9 @@ lD4FjhulFqgYyumzcIYofgiAg+K0If7wtZuoFqsDE3XQnXr31XhmdEaHvju0HOIn bTo4+Xu7n7WfJKkvAIWwTuXtGsDvpnE5T3M= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-571_C14:KAS-ECC-CDH_K-571_C14-PUBLIC + + PublicKey=KAS-ECC-CDH_K-571_C14-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQHHhZ+WeKnCev0vj2D+53GntdJ46uK @@ -15271,6 +16557,9 @@ CGQHD0UIrjkc4kFUs4hzrwCC2ViVrJL9GqMhupO+70BKY/exr6H+7Jl4hVI6Zoit qU3UXrMsp/G7h+Y8Tel0kxlsO1PPg9IY3Dc= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-571_C15:KAS-ECC-CDH_K-571_C15-PUBLIC + + PublicKey=KAS-ECC-CDH_K-571_C15-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQHTxp7XPsO7vHhXmNRLHMYja++iOjp @@ -15303,6 +16592,9 @@ Ui8GDP21RnZ1p4mSO+lzxmRdvibQCjnU6BJVIXKRo4gs+o+R9KqCFNNSTJXvaiTk ezudDvVfZwdWrkpNnGXwdfQXCy0YqvvKAmU= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-571_C16:KAS-ECC-CDH_K-571_C16-PUBLIC + + PublicKey=KAS-ECC-CDH_K-571_C16-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQAS1Szzv1BX16qykrk5drPvOIMuhky @@ -15335,6 +16627,9 @@ iZIDP5Op3DnYdAO2qU3AYy3sZ1eELQqvitjEHrtjcFi/wRwZo6mr3fIEIB70+W/p YpIzpQcKCHlNFEcAkeMM3Ydqr2VAdicjMjQ= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-571_C17:KAS-ECC-CDH_K-571_C17-PUBLIC + + PublicKey=KAS-ECC-CDH_K-571_C17-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQH7HG+oIEZCpxM3/gJ7Stlp3gAzRs7 @@ -15367,6 +16662,9 @@ X6cDJ/5lTvaFY8yIiKzKhRY8KxVPtwsPSitYw2OIoMJfgKTIh5d9RgANxNhulc/Y +QZcAOsoZTyPtHe7tcY91HuDyl4Phx6e7T0= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-571_C18:KAS-ECC-CDH_K-571_C18-PUBLIC + + PublicKey=KAS-ECC-CDH_K-571_C18-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQGcIaGtPWtL+xFeq1axKPcSGekd+tU @@ -15399,6 +16697,9 @@ FIoAsVZv5hnyzACroF4kpszLyRM4su71U9oNR31sjArExlbhNNvPMf+xXGfVib0p GPEXSQnlQoxxyQ44xOEbViNqv6HeaoV5600= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-571_C19:KAS-ECC-CDH_K-571_C19-PUBLIC + + PublicKey=KAS-ECC-CDH_K-571_C19-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQHznZ0QD38YoldceKrWHznNfJ58S99 @@ -15431,6 +16732,9 @@ bjEDOv6Hsp7e9Ef/WgLmP2SQW19TrIVs/XdVrVQoEuzdVo6K4fnTL+oPAgGNz9Dh bWpqJ5e349yFW/22sNCyUl4UNnjVOb+MBnI= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-571_C20:KAS-ECC-CDH_K-571_C20-PUBLIC + + PublicKey=KAS-ECC-CDH_K-571_C20-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQEg61zguNIr8fycdUNjTm4FLfW3AxW @@ -15463,6 +16767,9 @@ MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQEeQ+dtgC5oKV+A9J0o9I6VaoNhrLW e+vnZpEvq6mYf8xfyKeN0hZDqmUOakp+IGE= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-571_C21:KAS-ECC-CDH_K-571_C21-PUBLIC + + PublicKey=KAS-ECC-CDH_K-571_C21-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQHpejrSWhJehG5DGDhPV88YcaGhXOm @@ -15495,6 +16802,9 @@ XqcHuNcGliyxkvDtFMTacQ0bGwc/2MpJepQ3mnRUycPUzm5f0uY4aFKnfFQ1q7I1 NtzIOYbO3UUSdS8pXKUA8FX0YnY8KftnjKo= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-571_C22:KAS-ECC-CDH_K-571_C22-PUBLIC + + PublicKey=KAS-ECC-CDH_K-571_C22-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQBPKr4zi4jIc8lbytkqomt1paMKYYk @@ -15527,6 +16837,9 @@ NNYH7tjNeoo1SbDZ74eGh579ycD0zpCzmRozy7sdNwTbk1ExOLGaUOysiA5XjeIQ RvA6IABIGAiEvELPmq/ljMHq9TbW0l8VQdg= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-571_C23:KAS-ECC-CDH_K-571_C23-PUBLIC + + PublicKey=KAS-ECC-CDH_K-571_C23-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQHQ7PJZag+6fa9uZAaHcwfeBllRKiL @@ -15559,6 +16872,9 @@ R6sD1I7GM7naFlDqdiZWs+MfJq7Afnymqvwe18tGbqrzmT4EZwSMlnux6bSuBzoj DB4vdOLmGGZs9WoG8rZew5Vbb/uwapCM9hY= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_K-571_C24:KAS-ECC-CDH_K-571_C24-PUBLIC + + PublicKey=KAS-ECC-CDH_K-571_C24-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAmA4GSAAQHIvHnoGB3UNri1ixdPUcPAGwyVFWO @@ -15586,6 +16902,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEA1RmcB0LADDQmLbtI0PTVcJMkHJxANi8 AvNB0mGGDftl8Mt/C0iNgpbM -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-163_C0:KAS-ECC-CDH_B-163_C0-PUBLIC + + PublicKey=KAS-ECC-CDH_B-163_C0-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEA6ZHujLaxx7GeAsGOKcM0k/DvUyOAuae @@ -15611,6 +16930,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAR5JQwzdBvLnZbjyzAZ81CTi51SFAIOv FbIs19/R3/c5a/PzA49QUkmR -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-163_C1:KAS-ECC-CDH_B-163_C1-PUBLIC + + PublicKey=KAS-ECC-CDH_B-163_C1-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEASgomJNkhtwuPNFYXzLVVEJk4ZHkBenp @@ -15636,6 +16958,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEATeGC6NFivE8Iq+CJfVh4BMxzYeoB3ID VuFdxz+f7nocAh/sqXzUEgTj -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-163_C2:KAS-ECC-CDH_B-163_C2-PUBLIC + + PublicKey=KAS-ECC-CDH_B-163_C2-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBYdPzIxITAFBcxAty3DGJO5hCNMdAElp @@ -15661,6 +16986,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAlrngxGw/PNpVmoxn4mElUaursMFBkDr D99SBICvvrnyZ0/rHW30gtf1 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-163_C3:KAS-ECC-CDH_B-163_C3-PUBLIC + + PublicKey=KAS-ECC-CDH_B-163_C3-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEADdI15jxQCaPHnGLOyOqKswDM8B0AMQq @@ -15686,6 +17014,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBubFJJSrY8icl4hVb3Fmd/O0gEKgBOmC WLnFbwLT7bTKWwruqp2qpv4P -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-163_C4:KAS-ECC-CDH_B-163_C4-PUBLIC + + PublicKey=KAS-ECC-CDH_B-163_C4-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEA4DbPfKxwBVKjoyzBK7NWB018xXNBxU0 @@ -15711,6 +17042,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEB5ANrCUd6KlEzwob8usu/u4UZ26bAJHn 32f3diJynVm340uUcSfn+i5d -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-163_C5:KAS-ECC-CDH_B-163_C5-PUBLIC + + PublicKey=KAS-ECC-CDH_B-163_C5-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEATbg0FtPOYuCfhmARhSLL0FXP8B8BzmT @@ -15736,6 +17070,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAs3LT5HtfRd2jbgL4rOsnglWsdlxAyQz 9FWmzSU+kVgtL29acSZV2h1p -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-163_C6:KAS-ECC-CDH_B-163_C6-PUBLIC + + PublicKey=KAS-ECC-CDH_B-163_C6-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEB2w65KeBZzYn0Om8thX2JqFgpV3aBYwO @@ -15761,6 +17098,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBvb1sfOxj0XbT7N3fmhA+1pbYakUBzfO FK6yTgWRWFp0F7iSVnSfRh3m -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-163_C7:KAS-ECC-CDH_B-163_C7-PUBLIC + + PublicKey=KAS-ECC-CDH_B-163_C7-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEANZfBRbBs+7ZIg5Zs9BJ3RFTF5rFAgv+ @@ -15786,6 +17126,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBvLN0dYw3XMe13+QHHsOc1UV4m1OAQYv L3FcTSr5e7G+i2z6Lj7jFCU+ -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-163_C8:KAS-ECC-CDH_B-163_C8-PUBLIC + + PublicKey=KAS-ECC-CDH_B-163_C8-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBA2QPOKzD3CmoDhJsOF1j++Ih70xBKvY @@ -15811,6 +17154,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAZF1VzEX3YUebuv9n7HlqITr/v7lA63z fk3tUlc/pXyMsr/KbGXDZ0Ri -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-163_C9:KAS-ECC-CDH_B-163_C9-PUBLIC + + PublicKey=KAS-ECC-CDH_B-163_C9-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAi7SRkPwzsaMjkrRqixDadiqA/WUBczK @@ -15836,6 +17182,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBCg+sOUIXRmLN4/JX2+0wxmLTTx4AQeh Fo8vR7lj5LOpAk4MNXpevfks -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-163_C10:KAS-ECC-CDH_B-163_C10-PUBLIC + + PublicKey=KAS-ECC-CDH_B-163_C10-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEB5P0sxFy7uZvJ2nrMF0DtcP3z/+LAfPs @@ -15861,6 +17210,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBc7elqcPcUzWiWPy1sojYmmpOPMRBs2t 1UtvczyAk0eH4owsz1ixInvA -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-163_C11:KAS-ECC-CDH_B-163_C11-PUBLIC + + PublicKey=KAS-ECC-CDH_B-163_C11-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAup6UINGAvES9t0ObSXwZPnQXv8mAb8/ @@ -15886,6 +17238,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBRMTG0vLcu9oqwQ+6E/IywO22PGHASC3 1XcruxfsscnoDDb4CP1UqTqu -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-163_C12:KAS-ECC-CDH_B-163_C12-PUBLIC + + PublicKey=KAS-ECC-CDH_B-163_C12-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBt0TBTSeiqCAIAc6DeWvxdwbamLTA0l+ @@ -15911,6 +17266,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAbk2PPSHNWdoeNgM4UgbhYhoP3REB2j6 cyfNclLI9pbtSUeGiRWtoftd -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-163_C13:KAS-ECC-CDH_B-163_C13-PUBLIC + + PublicKey=KAS-ECC-CDH_B-163_C13-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBaDjQRGOaYJ9an+CgvvwuUQA8IJABCO5 @@ -15936,6 +17294,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBcRG6YlspEzKcz6fTltkr93AU3IRBrrR slImkvlws4vmk13H0cCdzSBv -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-163_C14:KAS-ECC-CDH_B-163_C14-PUBLIC + + PublicKey=KAS-ECC-CDH_B-163_C14-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEABqSPWGRY0MGEkweJnMJsH26Mt7LBaNR @@ -15961,6 +17322,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAOnY/DoCaSXIrdUI+SD6Ll/1KCaIBbe/ YxJZrH02k2wTD/IG2CCxO96B -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-163_C15:KAS-ECC-CDH_B-163_C15-PUBLIC + + PublicKey=KAS-ECC-CDH_B-163_C15-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAvqLrw1hKK3ZuQKqGByB4kKYRR4uArk9 @@ -15986,6 +17350,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBbo302mXxPKr5gPf4EIjJzjoKws6BzyM 2VAESXKgBcbxr45DBuDM77lG -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-163_C16:KAS-ECC-CDH_B-163_C16-PUBLIC + + PublicKey=KAS-ECC-CDH_B-163_C16-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEA1Pi2kWrfEkwKAw+20upABLVbfYvAmkx @@ -16011,6 +17378,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBuBsx8MPXtfmhsOnWh1EJXdwYByyAw3E FMSvs5DtRnr0caqb0rdfMt/Y -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-163_C17:KAS-ECC-CDH_B-163_C17-PUBLIC + + PublicKey=KAS-ECC-CDH_B-163_C17-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEByFnCITaqM1idjjskPNEjvsPJIm6BPhK @@ -16036,6 +17406,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBz+d3dxGUJM97MyVRtOSo127xmp2BN51 WN3mSfcjIrOeMcjinOb1mUhe -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-163_C18:KAS-ECC-CDH_B-163_C18-PUBLIC + + PublicKey=KAS-ECC-CDH_B-163_C18-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAdYxnsLcXAjwJhrtAjFBjW3D0M2nA45k @@ -16061,6 +17434,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEACancNhuHIm6eoau9km6fqhvx9WyAdsQ IOD3ZN9UpTwjyTjOyY2ad60d -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-163_C19:KAS-ECC-CDH_B-163_C19-PUBLIC + + PublicKey=KAS-ECC-CDH_B-163_C19-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBPFnkHv0uY6Gltgdp9LBBW76DcFMBsua @@ -16086,6 +17462,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEABOgLiX8knh1r6VXvWc/ZYcEWeZxBAON uuXF5UCEcIokvD/QcudpwSN3 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-163_C20:KAS-ECC-CDH_B-163_C20-PUBLIC + + PublicKey=KAS-ECC-CDH_B-163_C20-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEB5ttFMdDJxQC0TI2AyFf6zxosURVBOOQ @@ -16111,6 +17490,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBUnjB4DZP3lv3PaRkFV12FxmRTvbAhYq iFvqMTRFQ/XQYZE2nexucOln -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-163_C21:KAS-ECC-CDH_B-163_C21-PUBLIC + + PublicKey=KAS-ECC-CDH_B-163_C21-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEB3L0LScqBX3g/5Jsn5RgXGZ10hUmBgLn @@ -16136,6 +17518,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAPZdmE1x3MGL8XKr5NOZPOD3zzJMABtJ 5qLPEXOq2sOvbAnpZvMRQavZ -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-163_C22:KAS-ECC-CDH_B-163_C22-PUBLIC + + PublicKey=KAS-ECC-CDH_B-163_C22-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBQskKUYJcXOanW1WcLxtdZ5WVnaLBJK8 @@ -16161,6 +17546,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEB3ai4a+TLXRRkHC/qUHqqT6f9el6Bavp 7UYkX9AUYlDSpWPEbr96zSNC -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-163_C23:KAS-ECC-CDH_B-163_C23-PUBLIC + + PublicKey=KAS-ECC-CDH_B-163_C23-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEAX1SEW8MlVh/G3sGx26Y2ZyC3PIMAk6i @@ -16186,6 +17574,9 @@ MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBFlSwLUX5oXKsJRwMn+dSyEnUbBJBEpC mm77BLzqAkCrWAXedAqmH5lO -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-163_C24:KAS-ECC-CDH_B-163_C24-PUBLIC + + PublicKey=KAS-ECC-CDH_B-163_C24-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEA6fqELodaqVFcAtAtzeVGp5zbfoMBPk1 @@ -16211,6 +17602,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAGHoqbUX/QWgJuw3ZhYin9hjmh+nbe/l OYAi+dnIAHBrXLCHOKlFUv7lhLE3L+rUr3kECQn89vUAhLv6 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-233_C0:KAS-ECC-CDH_B-233_C0-PUBLIC + + PublicKey=KAS-ECC-CDH_B-233_C0-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAEdWut3vw9wzerJ7VFLrEK/9njH1tVwz @@ -16236,6 +17630,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAC2RQCRGVXBoxA/Add7pORaw8ak5Lkfl a3RxJa4fATqwkV5Kz3eVFoJvodwYhaBqvF0ICckiQMz5w9ik -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-233_C1:KAS-ECC-CDH_B-233_C1-PUBLIC + + PublicKey=KAS-ECC-CDH_B-233_C1-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEARhqAo+aGNuSf2MlPCA+smqjq6DUCxo6 @@ -16261,6 +17658,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAELLMR3P8kgqLOzmlsHrZMaawqpZkgml wYdjoxUKAbAynzbBNdAC8Ivj4/+p2hjF1qcMNg9Phx8Svz+V -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-233_C2:KAS-ECC-CDH_B-233_C2-PUBLIC + + PublicKey=KAS-ECC-CDH_B-233_C2-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAJO/hWIWAiOOmNCcmIKNUaSUYDYsI8UU @@ -16286,6 +17686,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEABJBINhAmFDnHjPJ4tnEDqMr7RHXeAR4 bpsHaJKrAG2uG6SBcpb/Ywc7rJzgZdQzG6GlyJnMHAdAXa4+ -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-233_C3:KAS-ECC-CDH_B-233_C3-PUBLIC + + PublicKey=KAS-ECC-CDH_B-233_C3-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAEVJZIaSr5XYjk4dSRTYyXaaraxaD3V4 @@ -16311,6 +17714,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAMV9Yfyx/ukNXYyXy/GIyO+CWbCuJYfs 8f+M0uL6ALithsaAWkq0RRPbui9QmLnpweBbZ59Sk3rs4rGC -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-233_C4:KAS-ECC-CDH_B-233_C4-PUBLIC + + PublicKey=KAS-ECC-CDH_B-233_C4-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAHPFz0oB0J47QbXnd4xrm6Utr4j8QE+O @@ -16336,6 +17742,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAXz5/KBdSlXkto/uejvUPwRzA/KiZtgb teHsfiVYADsK9D3gUAM5feHUsngnrS/NZ1y/YaRFoexApWm2 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-233_C5:KAS-ECC-CDH_B-233_C5-PUBLIC + + PublicKey=KAS-ECC-CDH_B-233_C5-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEASOmsIGnYehsBC4ZFK9H8JOyZVVD5WRY @@ -16361,6 +17770,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEADR4n7xg8QhgNMjyzob9SqM1GUyRRokD V9xHVpnkAdN/eWMn9x7DFRBGhGPQspBUiKSmAmeHDf7lZ8JQ -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-233_C6:KAS-ECC-CDH_B-233_C6-PUBLIC + + PublicKey=KAS-ECC-CDH_B-233_C6-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAUH7vys2HCyM5e2r+iKqR1VYHlsaZmAD @@ -16386,6 +17798,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAeHFcKzGU8cG/XdAGUpVTefzeZoSuCDW qUEZf3YdAeIiXo0NQcgI9urXrzIPsl/tKamQmKDw4RzYaeU8 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-233_C7:KAS-ECC-CDH_B-233_C7-PUBLIC + + PublicKey=KAS-ECC-CDH_B-233_C7-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAJag0/Nuj3U3kQdM6ml7JHFifgyeeilK @@ -16411,6 +17826,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAYNY2pQHmnAKELIKIyXTPYDpXrT8SpgQ HDEmNZOcAAxPRC0Acce9HSF88jX9Ax3sMJ6F6iAU5otQ/Cug -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-233_C8:KAS-ECC-CDH_B-233_C8-PUBLIC + + PublicKey=KAS-ECC-CDH_B-233_C8-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAWa+JCazv45tBaJNfR8sDjKeQSDPyOb/ @@ -16436,6 +17854,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEACryX4EOGKgbadolSmW4psergN3CfIVi LiNIrdEyASi3U+SyGow6z4WquSqapqezPyy2nXAkuvjosHFC -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-233_C9:KAS-ECC-CDH_B-233_C9-PUBLIC + + PublicKey=KAS-ECC-CDH_B-233_C9-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAYHzuwsJdxMnfF87Rs7wKqnL4pq5XHbp @@ -16461,6 +17882,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAAZjj2vNhQQzldAddn/3fp1nfzfvQA8u Fv7obbryAGwSSWJm3rsdg0O5aE4nxfcSnBcCSo5nBGcqXz1j -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-233_C10:KAS-ECC-CDH_B-233_C10-PUBLIC + + PublicKey=KAS-ECC-CDH_B-233_C10-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAGWqQRXlnmBFqvme4b7KH6uSO73JGSBu @@ -16486,6 +17910,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAMoEA9ldhfDLCuTSrq4Y4Ye3nCAe1owU rSTtADkiAM9rClArKQ0K7uggZhrM9upZdofEXH+Tp3PSX2Km -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-233_C11:KAS-ECC-CDH_B-233_C11-PUBLIC + + PublicKey=KAS-ECC-CDH_B-233_C11-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEATV25wDzY2f7dBhC8jGInzaCKqspM8JF @@ -16511,6 +17938,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAUXsDbX+YrklR3kgEiaK8hupKKj9mNCh 3uPY+yVZAQoDHOpWsYPpMJMAircFzJCZ5bZcXLRAcyS5b+6Q -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-233_C12:KAS-ECC-CDH_B-233_C12-PUBLIC + + PublicKey=KAS-ECC-CDH_B-233_C12-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAOn7pxpkq7F3+kNsuXOcn2jAFVrciXE5 @@ -16536,6 +17966,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAHQmv6iHj+WbFqm4xjkQoeL7xrB7qZW6 BMMUAhEuAJROlhZnbLL8f6D54bh6NYdIJD6A+2ImQoRkWmpN -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-233_C13:KAS-ECC-CDH_B-233_C13-PUBLIC + + PublicKey=KAS-ECC-CDH_B-233_C13-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAR+ZSkFswZkLjGF2ej1o++pzr3tItlXk @@ -16561,6 +17994,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAbRKgYldIQX6FqbglSbAmuf2y9vOIQhw 9OM9uLb0ALHgcsYqJkKXXwbGh8ZGfaKV75PwTRxUlKYkaDyA -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-233_C14:KAS-ECC-CDH_B-233_C14-PUBLIC + + PublicKey=KAS-ECC-CDH_B-233_C14-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAQUTYgruDQR4hyQ46Zsj6kkAFT+TZusX @@ -16586,6 +18022,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAVPNutkuuNINoMHHqtRtCDNsvJdujW+D lH5PTWYWAcl3uXpeEgXKZlRd86UmtuMl4IfA4HCDn+fsHueI -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-233_C15:KAS-ECC-CDH_B-233_C15-PUBLIC + + PublicKey=KAS-ECC-CDH_B-233_C15-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEADXf/skRftcWdieiSj693Umj9F2RrRhA @@ -16611,6 +18050,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAdn4wB6cIPYVDsdiCnXjnpb5JHvs4Tew NlvsVCVMAGAINzueCHgFKU2trgCJRmf9ufa4pNFileW50hpt -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-233_C16:KAS-ECC-CDH_B-233_C16-PUBLIC + + PublicKey=KAS-ECC-CDH_B-233_C16-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAEhFzmYbHq40wWmfG/443IfvKLiwp3cf @@ -16636,6 +18078,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAU0nb0KBy1CiaynsgfztltDpCZlLIoVD OFUlbVjbAKxHkq9ioNxP1O7DhPvz+7gsg0dIa8HrEzi8fzqw -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-233_C17:KAS-ECC-CDH_B-233_C17-PUBLIC + + PublicKey=KAS-ECC-CDH_B-233_C17-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAUc0GSFlyW+9t5TKseLR7xEeGiCnIF2w @@ -16661,6 +18106,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAJplqFOUBw/g5aEIFk6yicw9d+0ISP1X 84TmLKogAOf1bywnvk+usg4nTCYExtwtiFlwMK0hZPrQPLkE -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-233_C18:KAS-ECC-CDH_B-233_C18-PUBLIC + + PublicKey=KAS-ECC-CDH_B-233_C18-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAH4fMlHioKpt4fjfhrhe2dEdpetxNq3U @@ -16686,6 +18134,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAT+xyp7XCbs4b7oCzHhi/Wxk4Qh75fYe pzOUbBY0ActAl+RKcwcA3r/oFD+/m8o6PWxGmFonzVBDsspa -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-233_C19:KAS-ECC-CDH_B-233_C19-PUBLIC + + PublicKey=KAS-ECC-CDH_B-233_C19-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAL4e51DycSsqyyDEXpc1fFDbO+iVsz+D @@ -16711,6 +18162,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAVChcyeEXnvHnY7OEpMNwrd2VMqhCCtX sM+OBbGsABUcdoItjfXv/YxpQzlbao1ThDHULoRun/jefq7m -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-233_C20:KAS-ECC-CDH_B-233_C20-PUBLIC + + PublicKey=KAS-ECC-CDH_B-233_C20-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAVwuLOC8cizqTLx8M1LL4NKLWwAuRNk3 @@ -16736,6 +18190,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAJOzJSJR/Z1tnIHXjPHxNM3VVNY8Kh4v GvoU4tTkAIrrCoqz/15PsCP34ZF/AQiJCvEavKfaAn+trMO0 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-233_C21:KAS-ECC-CDH_B-233_C21-PUBLIC + + PublicKey=KAS-ECC-CDH_B-233_C21-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEALr6m7qScl7vDEoK/L1CY+VfUVVkW1xY @@ -16761,6 +18218,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAXEKBfArVQVylRaxrHPUXzzwjxxRNNL3 PRJXAkPJAYYRsQ2rUHWD8r4Q/UKW9TfUrwlXb5aXnx6t/ikc -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-233_C22:KAS-ECC-CDH_B-233_C22-PUBLIC + + PublicKey=KAS-ECC-CDH_B-233_C22-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAHmL9at2G7as/tDO8c1xs+9G8lBDI8r8 @@ -16786,6 +18246,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAaTjWowycX8qqj7u8XeEjlgOD+1sgJaG j2rMThwJATcnYE6B06nZPSQ/554tuKRCM0qOoYUrn4PK4bw+ -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-233_C23:KAS-ECC-CDH_B-233_C23-PUBLIC + + PublicKey=KAS-ECC-CDH_B-233_C23-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAV9yPamjjC2lBiwX0Lg3Ui98aceT95wX @@ -16811,6 +18274,9 @@ MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAQatv5u/2zCDWYp/bbLpHS58F09wX8IW Yxt9Be3yAZDYTKb0aV/bykDSanSZigXD12Hb8ImBtkXA6iOe -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-233_C24:KAS-ECC-CDH_B-233_C24-PUBLIC + + PublicKey=KAS-ECC-CDH_B-233_C24-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MFIwEAYHKoZIzj0CAQYFK4EEABsDPgAEAFG3C7i44jQbhoIdVLl0tpa9pEOst+pl @@ -16837,6 +18303,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBWHklVYwGBaYBNTI4kNbSv2F2jdtkUtp 05JG+OBhE6oy5kLSB4Gn9Z3n9C9fnWw0gfM/xd6zV8bs9MdY43DSQ13j2O5zdwP0 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-283_C0:KAS-ECC-CDH_B-283_C0-PUBLIC + + PublicKey=KAS-ECC-CDH_B-283_C0-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAlBOGheBnTnwEKSmmgVoKZQCtY+USjhM @@ -16863,6 +18332,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEB7kK8Ra3N9kAjkwY9q1TnSnuF5AAih2v LoVvpnLspKr8lspjBqr3jQ8gZXt3uXzKMOq3m2eaOqqQsQkH+XnN6YjOcYSRAQwq -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-283_C1:KAS-ECC-CDH_B-283_C1-PUBLIC + + PublicKey=KAS-ECC-CDH_B-283_C1-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAWI6lnXoxANm4mEx5Hsa8GyLM6z16S9U @@ -16889,6 +18361,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAKA0kHZfyQwjVTwOK3nfojK1GnPyFVTl 6xjaTJlNkl+O0rvvAwT/1BxbCrKnC4IYjo8VeNarfTzjzjT6RdzDIgfxY+kcXWgU -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-283_C2:KAS-ECC-CDH_B-283_C2-PUBLIC + + PublicKey=KAS-ECC-CDH_B-283_C2-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEB7g2lyhDL3Uo0+7IpniOac0uuIFixHUS @@ -16915,6 +18390,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBPLCRUiZYjrxO2WCCroUVzhAf3cYarr6 UtJLNb/fWAj/6uB2ARH0SEYK0kMKrseI3ikVSEdaHlg22sUg2OSTyfYBJ15w6inS -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-283_C3:KAS-ECC-CDH_B-283_C3-PUBLIC + + PublicKey=KAS-ECC-CDH_B-283_C3-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBzsJKipNfJoXu4jnW0Cp5OQ7mYE89haC @@ -16941,6 +18419,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBxWchrnGrbIWDCjYYRj4RWSpDBSe3igy lGNnekyHcp+JfC+YAIp4Fn4WkGJZkrDvwuDvb21h6Bg3yOzf2rUdFTQON+fY0FEg -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-283_C4:KAS-ECC-CDH_B-283_C4-PUBLIC + + PublicKey=KAS-ECC-CDH_B-283_C4-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBFXoe8Iwzn/FhjEt0gfFKeR+PHTMDOXQ @@ -16967,6 +18448,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEANflvPrFePzXKBgGRRdtfgiLaNMwognx i5aGYv7RY0KzkhogBvdQs7XpjgCZtpWWWqHRZHXRB0+SMRJ+1wPiaW1LVq/eu86q -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-283_C5:KAS-ECC-CDH_B-283_C5-PUBLIC + + PublicKey=KAS-ECC-CDH_B-283_C5-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBlLMyJIfQ5r0KiMBI2tYQ6QvH9mez+G0 @@ -16993,6 +18477,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAMfJ/3fgGLiAG934hnAlVrEmptmhgxof YPNYcuUkwTTVU+SkADXXZ7WLSZ2ftUViw4MEEa9Z5wiKSjMz1dx/5bD38eHF46wr -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-283_C6:KAS-ECC-CDH_B-283_C6-PUBLIC + + PublicKey=KAS-ECC-CDH_B-283_C6-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBiMxuTOvtDhPo6TSJFUa6BILxV/H6nPy @@ -17019,6 +18506,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBocHGAXCWn0LFzn3z2gbLylcT52JNzUd IdHUP2NOmlcQW/EnBjO6IYcuN5xQ5Eg3KxwOZehdB+3XEtfcBvppopn2A33s5mDc -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-283_C7:KAS-ECC-CDH_B-283_C7-PUBLIC + + PublicKey=KAS-ECC-CDH_B-283_C7-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAh6C1q9tMhGYF2/4mGwrx4agCBMmzIXw @@ -17045,6 +18535,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAtJuRqbtn88dL4nGPYDgFy3ttPWu3f8J KDaqyFmQlIhVV+rZB9ZxOXRwHBYK7eyPlOZEa/fTx5DL/4cCzHhAp4GOW2Jicfcj -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-283_C8:KAS-ECC-CDH_B-283_C8-PUBLIC + + PublicKey=KAS-ECC-CDH_B-283_C8-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBF1i0B217xc9DP8xWpKpoQXRrXhP+bCO @@ -17071,6 +18564,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBhurvv7lIRxJF1Bs5fn549HlKyUG84yg luG2U8qftp9GEFcCABS/0u8ii1oD4mIwweiXrQgacEATzuVRZspG3jlfxS9dISA6 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-283_C9:KAS-ECC-CDH_B-283_C9-PUBLIC + + PublicKey=KAS-ECC-CDH_B-283_C9-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBKVhtRhK3tnHvZho8wQ7Xi3lGQj5wD1e @@ -17097,6 +18593,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBo7jJFdU1R33eABGrzmstAfEmYxiC/+U +zdPr0tJgAbuoM+IA2akSfCez7rsxJ2IAwf1ckbBHFvqAK9CcYZ3qN7xXlkm2hgi -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-283_C10:KAS-ECC-CDH_B-283_C10-PUBLIC + + PublicKey=KAS-ECC-CDH_B-283_C10-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAdfXU2zYOD4cCxuKrgK6qf0sTmiyGAjB @@ -17123,6 +18622,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBQ6gc1ItvlFAj4Xwpghr1Mjv5XL4Cq2t 1+cOu0tyi/2/1PG8B9pSABfHrSkWonGbhViVj3fHEtNSz/nArZn7yYoOBl63rH/r -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-283_C11:KAS-ECC-CDH_B-283_C11-PUBLIC + + PublicKey=KAS-ECC-CDH_B-283_C11-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAgQvWj/l49MzW7e8253L2HFu0Y1/wv9C @@ -17149,6 +18651,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEB6/isitU/olcJCwgwFSYn6gE5ZGXDdqK fOEJ1r0xttqo8vx0BgczvVpOqbXqcJCs/ukYEGt/JScvP3yzbto4us0hN1YQzeko -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-283_C12:KAS-ECC-CDH_B-283_C12-PUBLIC + + PublicKey=KAS-ECC-CDH_B-283_C12-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBnr994j49IMcPH12BNB6W9xZ2kLZMnMf @@ -17175,6 +18680,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEA4a/3+YDc74RS0F8Tc60QyI/3mfA/vKe 0PhntaFfXqDMtNzKAvrDjshJTPdXYjPsgoLeOEtn8MqASAhCAQOdGUyL2k9uCv8+ -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-283_C13:KAS-ECC-CDH_B-283_C13-PUBLIC + + PublicKey=KAS-ECC-CDH_B-283_C13-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAYhmpPovfCU05WOikd6HGoswUqZ09dvC @@ -17201,6 +18709,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBwVSZMPeOmItJv561wC96gRdSzznGPTm rkTPN2w6lqJlCzIhAPRcwROGaK3IFQ03wHK7QkVmDBh4VoPHsXqh+4WRumzaI2V6 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-283_C14:KAS-ECC-CDH_B-283_C14-PUBLIC + + PublicKey=KAS-ECC-CDH_B-283_C14-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAAVx177wVgiRcvE0I6WFq5efS49351LA @@ -17227,6 +18738,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEB3lPoZxrENOZ4PUtNvSDx4UYSOYrrPlb WvUeygmtRF7hnvNNBhQNLuFs0KbLGWBQmnzMZkvpdkSpWuFvShc9moZwFfCDfwVg -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-283_C15:KAS-ECC-CDH_B-283_C15-PUBLIC + + PublicKey=KAS-ECC-CDH_B-283_C15-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAW60u7PDhuD0L7A3vuR4xMDb++Vcxo4z @@ -17253,6 +18767,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAHr//PoxwRCqs7s5RTCkHEFq9Wa/uo8V n5hEN+eZ3dqvjN/SBl+zxoRGp0BourfjargOmEcH45pKFD9aRtZGNC+fEvJqMikb -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-283_C16:KAS-ECC-CDH_B-283_C16-PUBLIC + + PublicKey=KAS-ECC-CDH_B-283_C16-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAkF8ZWlNhQx8hm9+EWOaX4cYypqrs5L6 @@ -17279,6 +18796,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBrTCw2FbJmVD3hiciWz/d7VVfHgsIVlh rHMkGF/JqBCY8uvqBH/vGWBzmuCu45o//bguiQ1CNvwi2tOV1JC8Ol7qWOjNA+27 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-283_C17:KAS-ECC-CDH_B-283_C17-PUBLIC + + PublicKey=KAS-ECC-CDH_B-283_C17-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAMXWFJ+HF0ujf0wcb2f2kFq7MZ9Sa3qh @@ -17305,6 +18825,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBZBsxFKbIgIo77sFRb9V7APIb4fi9OOj y/QE4HtzpbGl9SjNAWWI5IDEhWzS7pqvHjAoEvvAsz9SfCm3fOD0h46gidAlpEDA -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-283_C18:KAS-ECC-CDH_B-283_C18-PUBLIC + + PublicKey=KAS-ECC-CDH_B-283_C18-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAXMETlvmOZfXkl5DG78ATPDwuoWqKVo0 @@ -17331,6 +18854,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBubjGMDEwLZh39PnIgkOzTL9yco9Fo2c cXTB1Arbss5nLZJSBAvcHbx7Fj98lVH0faqClKwtxP4NRyxOLyz+/JXVI/9Z4OiA -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-283_C19:KAS-ECC-CDH_B-283_C19-PUBLIC + + PublicKey=KAS-ECC-CDH_B-283_C19-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBoWH5p3t30tVrFHyoX3Yv9b5TnIQAyFC @@ -17357,6 +18883,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBvb/6gqHvZ7rU5xIo/y/OIFZhiJZx/eE DmSAn77bAag4EsDGB8eVuPKEf8OfpWwt4ebLv0lFCHyy47kZ3HdrTMHIPkscebi6 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-283_C20:KAS-ECC-CDH_B-283_C20-PUBLIC + + PublicKey=KAS-ECC-CDH_B-283_C20-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEA/EibYAsV1+HGiE7gVD3gYu9YlZjtz5y @@ -17383,6 +18912,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAt0Ak6jUGYMfNLrGxgpXDFHQjmmbGByW S2Z9DRftcqSRGazZAakZdr5dXgN/IjUNZ6t7+rUbvE+mAm00fSj7RAe8zEDdEKAO -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-283_C21:KAS-ECC-CDH_B-283_C21-PUBLIC + + PublicKey=KAS-ECC-CDH_B-283_C21-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAqkR5+bS/HcNHqvH33AbsRkISmhZANIt @@ -17409,6 +18941,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEA/UH2ZzCSY4sf1T7PJwDLzglSOLjFo+h QBJaUmBIVo87s+WhBScN9378fWxV+SWbyCJzyba982duE8NgGxswIrli3hEpyzsU -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-283_C22:KAS-ECC-CDH_B-283_C22-PUBLIC + + PublicKey=KAS-ECC-CDH_B-283_C22-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEB1QapR1zAuK7VXwn7BXX+cOuO3bsL4bL @@ -17435,6 +18970,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBeP8VuwWKIXBKR5K6cGcjrK7VZ637NWB dUm1ouo6ZtlRiAqmBMAE8q5NtPdItDe8EV4G6iAXqHeYKY3WAEYW/P/cx+wt/W25 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-283_C23:KAS-ECC-CDH_B-283_C23-PUBLIC + + PublicKey=KAS-ECC-CDH_B-283_C23-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEAh+xTlLNQkOlIPYwIpsd1pYcSb2W9D+p @@ -17461,6 +18999,9 @@ MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEBh6IWONo2ckX8SnZMt3EzKUh/0GfHXQj DoqlsbPpzmf0HEtMArDX+9xjajvDS73SqJKRtWew+yrzI4OGi9QNS6TKyYgMJUC4 -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-283_C24:KAS-ECC-CDH_B-283_C24-PUBLIC + + PublicKey=KAS-ECC-CDH_B-283_C24-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MF4wEAYHKoZIzj0CAQYFK4EEABEDSgAEANCO04VqvvfUpiJDyS1uZwzrOvMjV/25 @@ -17489,6 +19030,9 @@ NnsS6zpigLhAA44iaBY3p9FkNuAU9pYWq/cuRQCeJBCVQcgCQhfpqyyWP6njc2QA labCWibu+sWOQ0LAyFRIsnCVkqEkAv4raKeTxVjOjNY= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-409_C0:KAS-ECC-CDH_B-409_C0-PUBLIC + + PublicKey=KAS-ECC-CDH_B-409_C0-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAUaYmlApe+Nz3WZcRUVaKuTCIdpc1CQA @@ -17518,6 +19062,9 @@ MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAdXJJg5z6jbk3qqkuPRUH2eAZraQdxqG UY39aGg3BHbay0HjuUdGV2nr6BtiBzFnNXb3dFHQ/hQ= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-409_C1:KAS-ECC-CDH_B-409_C1-PUBLIC + + PublicKey=KAS-ECC-CDH_B-409_C1-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAX6fAbHW5XAjKDMNIyod0/LFksxAn2yu @@ -17547,6 +19094,9 @@ MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAZxH15kUyL2udU7F7B6ByP8ympOOaXHu VfqZtWgFwV6sBDJRVdzL+kFF4WHEDxib26o90+DD1sk= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-409_C2:KAS-ECC-CDH_B-409_C2-PUBLIC + + PublicKey=KAS-ECC-CDH_B-409_C2-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAYPuNVqTzROv8XVqCOWOIZWoJimNQ/bQ @@ -17576,6 +19126,9 @@ tCPcBu9r5PYWzReTIc56Vy2kvKLom3aO3IRZswDfdDhJogvDAmBitCDTlC8Y4tbF MH5uGVXjOwnVlR3FmzGisdWMIz4siW4tnMqo7rjo8RM= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-409_C3:KAS-ECC-CDH_B-409_C3-PUBLIC + + PublicKey=KAS-ECC-CDH_B-409_C3-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAOhd6dY+NOXHu6b/mxb0yE2V8R3+khB7 @@ -17605,6 +19158,9 @@ kwXC5rDASpX3e69T4jwyau52IRSVwwssFQuSdQFUBYji/VaI0bNXY5CMH4I+7sqJ QvYhbOBM72btaZHfaiL7dEEbE9BlE6ZbZOYoFe4CBpc= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-409_C4:KAS-ECC-CDH_B-409_C4-PUBLIC + + PublicKey=KAS-ECC-CDH_B-409_C4-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAMqHCsvk6zrmXt2V1pROsJDg5VBxK+Ox @@ -17634,6 +19190,9 @@ KLj7iriuBomEZ6lae1nAiYpBSr/ycDzLzcCSCQENc8Q7YwFwOVEErK1sGlY9MpZj IzKhSB3cLDGDa9Gj7hpzZNf1uClduVo3RbS7vrgJW8I= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-409_C5:KAS-ECC-CDH_B-409_C5-PUBLIC + + PublicKey=KAS-ECC-CDH_B-409_C5-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAH62Hf3fw8DQg/4iE5Z5hjgdnjDmhK/f @@ -17663,6 +19222,9 @@ MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAWCFHP+UfOcqEYqrTa1M4sPOm8Mwzh0G 1Lnjo27MgROixjlM7SGr3I7Flp5Y4AnqE9vpKalnCco= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-409_C6:KAS-ECC-CDH_B-409_C6-PUBLIC + + PublicKey=KAS-ECC-CDH_B-409_C6-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAILxSOw00dCLJueeN3LhLWWVmLc7b/8L @@ -17692,6 +19254,9 @@ MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAC054PifuHUVHuOzVPjqFZ5/um8j+Kdk sDrZurqiNhBhMlH+DlQEbgT5IQQ23TdgA9GPmN/a4Yk= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-409_C7:KAS-ECC-CDH_B-409_C7-PUBLIC + + PublicKey=KAS-ECC-CDH_B-409_C7-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAIPKBN+EWOXmzm4TuTfatJhSHYJvuVQS @@ -17721,6 +19286,9 @@ rwR+mzwmR0bJtdkZ2iFTVdjCiygIo30MxfL2oQAKv+bxUQoYLv943YAum6IeZorq VzLHMt38XfkwH1iZ8CuugPgoJgHvPu/kFO8scm/gAlg= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-409_C8:KAS-ECC-CDH_B-409_C8-PUBLIC + + PublicKey=KAS-ECC-CDH_B-409_C8-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEATEVNql0W3R15sL9ckwj2epmgDoTm0fj @@ -17750,6 +19318,9 @@ JLpGgk3OeFAQZ9fgRn0wueH9uwp+rOFfsMIIzwGdYr4rEqF6ePbJ9+cDZpdl92PG I1/nr3jyUETpnEsbkGU2QLPwrkgaVdR9HrF7hsW62hs= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-409_C9:KAS-ECC-CDH_B-409_C9-PUBLIC + + PublicKey=KAS-ECC-CDH_B-409_C9-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAQwnNTD1T+F0u71cJ3GlWkLmQFDDvyUj @@ -17779,6 +19350,9 @@ wnbY8/dlDzATXh9sADAME0Ti8DBuoOJwsJqArwC4/D+mHcIsVVAfKmspRJRtmfe7 /vvses9PsgDBAC4yLDkXLsCits4IB/Hj67HqNAA1MUM= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-409_C10:KAS-ECC-CDH_B-409_C10-PUBLIC + + PublicKey=KAS-ECC-CDH_B-409_C10-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEATvrjTbR5/U9gL7qM+/D4AmN6uqheXfa @@ -17808,6 +19382,9 @@ i8r+ORSrGpeGD+wTNMqroHJDWRYD5neRrqS8twEBB0xERidjCtClJY4kQ41x8mq5 TQW7R9Grl4WMS5LG/xy5vma5hP6OFuRPOT5j+dZCgcg= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-409_C11:KAS-ECC-CDH_B-409_C11-PUBLIC + + PublicKey=KAS-ECC-CDH_B-409_C11-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAWkMdGSekuHBAE9D/W5GkL5ZWQTFbSrN @@ -17837,6 +19414,9 @@ ViaDXV3SIkFEDDemNpDNEYZ1gf9htyUtB6+4/wBhg/7m9NbvW3I8U8lsXB7N2EZS 43nJN4eNdm+DNwUAQSNZwi1HeL34B7PITluDNQkQoak= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-409_C12:KAS-ECC-CDH_B-409_C12-PUBLIC + + PublicKey=KAS-ECC-CDH_B-409_C12-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAFwk9K2b3LFGBoWiLaVNvd0VB+9t5Gna @@ -17866,6 +19446,9 @@ eVYVdIOWFpb0xgR2pCtFK4nB7LNhVHXsnJbchwB1XF71WIm0Fc76DogaPvyb6G82 xnYVQjtFLqtM1WEa70GY3bMa7LQ07u7BLt0FkTrxn8Q= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-409_C13:KAS-ECC-CDH_B-409_C13-PUBLIC + + PublicKey=KAS-ECC-CDH_B-409_C13-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAKq/aquz6Q+VbXAE/8iTxw+OkM3DH8DH @@ -17895,6 +19478,9 @@ yrjGImeEKTitXZM8mA7vnUZEeRu/01u6xknSEwEdpjISYxYF/qDpP1gmsZKbK9Hb lQYV/LBetHvZy2nq4DscM9ep5HszWkBJgjj+24mZsE0= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-409_C14:KAS-ECC-CDH_B-409_C14-PUBLIC + + PublicKey=KAS-ECC-CDH_B-409_C14-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAB9P+/IvZ8FZGwp3DlY8Crpm/gFWHF4i @@ -17924,6 +19510,9 @@ t2F9kroQYDzcyoNlVNAkLds31eFXawvmnw7s5wGzNVIa7DBfMU1/I+0ozAxNI/M6 Z4X8bG3pPl+rzicTAvlVf20q53xScg7aWi4VQ2RD39I= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-409_C15:KAS-ECC-CDH_B-409_C15-PUBLIC + + PublicKey=KAS-ECC-CDH_B-409_C15-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAbCDPrNEBFDj+lFIwlwt8uACBibyQHQi @@ -17953,6 +19542,9 @@ LbIE+SlnTDLkfYXkdwuQPTKQptYsJ0yyV7doNwCMb2FxF4a/XFTrDBsxJtZBskpm YrZ7JXMCqaYaqM1QOEa8uxsU+lyXRUNotsJ90t4q6As= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-409_C16:KAS-ECC-CDH_B-409_C16-PUBLIC + + PublicKey=KAS-ECC-CDH_B-409_C16-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAXS9Iz+GHHuFPMqPWjg1dISe8s127yK8 @@ -17982,6 +19574,9 @@ btbDPOG8lwFUfpPXyQQvhJBlS3OizX1z9zPAvwGAsgM4dGNR+sz7mjcRpOE4RXVQ u/WDFgNMbyFqU3SSY9/+I1m93NyJ7GRGqaSp9O+QyG0= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-409_C17:KAS-ECC-CDH_B-409_C17-PUBLIC + + PublicKey=KAS-ECC-CDH_B-409_C17-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAMHctzfSUwNbuR0qSoXzfQAUK+gfySeM @@ -18011,6 +19606,9 @@ EpTPi1nOaQv+ANqbwduNHarJv/jADnvfBx/g0wE2w+p30JPZc5++aJExixSVl3hZ m9Hn1al7/IL/6F/VqaAbgvcuEfrZbS9ctXmPWe/qFe0= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-409_C18:KAS-ECC-CDH_B-409_C18-PUBLIC + + PublicKey=KAS-ECC-CDH_B-409_C18-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAT2WomfRoqnqg66xsB2KziLiUcgvX1/D @@ -18040,6 +19638,9 @@ IWPdVfCNyakbi7m2Jw+KAmEj+Z65NyzL3SfKOwCt1G9+pwkvSN2qL+uWyyS/ktJi j7bk983fUj5fhAEc+Kq6vWAJoT8ppjtrfuZkxm84KfM= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-409_C19:KAS-ECC-CDH_B-409_C19-PUBLIC + + PublicKey=KAS-ECC-CDH_B-409_C19-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAXh7MLOyBOKYaQudcR/+7xZ63FeSBotc @@ -18069,6 +19670,9 @@ aFG/dVRwUBQKTpwcG1AOHSrTZMMGuaRK9QOmIQCZsmxkNn8ZA9qV31FWLSUELAGh rdp1u6WL2w2KqzULUuz76YSIwmGd4BzXD14AiVO8pUc= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-409_C20:KAS-ECC-CDH_B-409_C20-PUBLIC + + PublicKey=KAS-ECC-CDH_B-409_C20-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAenaCtGhWsPEMfIglU7S5QKve3RsP9V7 @@ -18098,6 +19702,9 @@ jSwMOql824qTP8DT8F9GRs6EHr3PGphgS/+j3wHy4E6hagEtSGTPLKdWSEbec6M/ JFeNxNIhNZxPL4bKgjywWWv+R2Dp6ty0rVCKsaFx7L0= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-409_C21:KAS-ECC-CDH_B-409_C21-PUBLIC + + PublicKey=KAS-ECC-CDH_B-409_C21-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAMSSlPtxKUIiGiUAMkr3vYx+wc0bgJTe @@ -18127,6 +19734,9 @@ FtL4EX2iDAaZqwoI92+6pHbwqcQkv0yVK0dU/QEf7cPo+Ogo4P+/Av2F0pwCAf0P U78mFMEK5RzLWMvEkAw4zEyaUthtifm4wt5OIn9OIo4= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-409_C22:KAS-ECC-CDH_B-409_C22-PUBLIC + + PublicKey=KAS-ECC-CDH_B-409_C22-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEATSt0sSZFy33ktlKmziV4kW4QHPDJSY6 @@ -18156,6 +19766,9 @@ MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEANHKgjk7jVC9GJipCb85Mz7KO96YsLDc 9GwbCCPkATx3R16imz8ySBlm8bFlvtumwXoUlPttTz0= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-409_C23:KAS-ECC-CDH_B-409_C23-PUBLIC + + PublicKey=KAS-ECC-CDH_B-409_C23-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAPDsly3J/f0IzY38unKYtN8tvYDCCyiJ @@ -18185,6 +19798,9 @@ MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEAKBFtea7t5UElfbV1kWit9cgBnJdAiPH i9L//ygMkJL/wHNyiamXSStunr+TGUdjTvf0O0Kc82o= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-409_C24:KAS-ECC-CDH_B-409_C24-PUBLIC + + PublicKey=KAS-ECC-CDH_B-409_C24-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MH4wEAYHKoZIzj0CAQYFK4EEACUDagAEATeERODe7P867Fq2506BI7qY2LkaUHz8 @@ -18216,6 +19832,9 @@ uVEBlYQXexicZkH/tni214M9jUuyXe5QGN2k5MDSGQSMAc0Nqer/40bVPPGgezOz 291Lw6yr5IMvmYHv8mYJkarIUhR5he6jpR4= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-571_C0:KAS-ECC-CDH_B-571_C0-PUBLIC + + PublicKey=KAS-ECC-CDH_B-571_C0-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQDtj9foRKua18RPHZRRP5MvWAg4m1A @@ -18248,6 +19867,9 @@ MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQG6nEYJ62O1Ym3Ce819qnNRiV5i9iH gSJe7JAVq72SclwAJxLtMZLYB7Nq/qhT9yI= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-571_C1:KAS-ECC-CDH_B-571_C1-PUBLIC + + PublicKey=KAS-ECC-CDH_B-571_C1-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQFdcuwWfQjMJ+ZO2wGrHHXvMXR5qGa @@ -18280,6 +19902,9 @@ JUIB/0nOCmLp7a5qpjqYSORPGFQS0P60a4f5FCS9r/7VFoMh7XbyNfddM2Z/bX1q nIV7tPhUQvxA+aIMBK4GNipG7O6hXEXWm+s= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-571_C2:KAS-ECC-CDH_B-571_C2-PUBLIC + + PublicKey=KAS-ECC-CDH_B-571_C2-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQGSqZoMP9EMkpnroqQeJaJe1B1Zs9S @@ -18312,6 +19937,9 @@ S/UC4y7CQEGKmk+QF+Yy+Kd4l6IjPW8fRbj3qoGPhH3bPOq1paEsdU/OjVewMgoH a1NEHc+fZe8yBOCJGR7xVv92IpSJenL8qTI= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-571_C3:KAS-ECC-CDH_B-571_C3-PUBLIC + + PublicKey=KAS-ECC-CDH_B-571_C3-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQFBnGvZcvvkvMF5frLQojMBKTGl4o7 @@ -18344,6 +19972,9 @@ SQ0FBCQ8eSuQMYTqclqUfKiSGMqcj6Hgmn3WjeiOrpD5vSqN9BTdaaiysaLe0sbX 9RTIkHmXYk6wvJ6pM6LUdO+Pg7rqMkODTeI= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-571_C4:KAS-ECC-CDH_B-571_C4-PUBLIC + + PublicKey=KAS-ECC-CDH_B-571_C4-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQDmsnpGvWUB03NM42k9SQFdPAeQTpJ @@ -18376,6 +20007,9 @@ WtME9qH05f4A/pol2EWbiIA5iO8r8v71oj8T56fn80Wav8PVwAMDq8xQgPq4GwnV vgMg75kFGaBq8TwpVi7pVXFagswNrvLF4Os= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-571_C5:KAS-ECC-CDH_B-571_C5-PUBLIC + + PublicKey=KAS-ECC-CDH_B-571_C5-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQG9liEkQYKHogUjkve44vGdHE/44TX @@ -18408,6 +20042,9 @@ C1cBjjIm42tLM2eZxGhLulBemE3IgZFm8XzrhA42ElsoOoyGNd3353BAbZhW2Cs3 z/H7zF0/XPS1XspB7hMfIep7yxnOBfZWQkU= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-571_C6:KAS-ECC-CDH_B-571_C6-PUBLIC + + PublicKey=KAS-ECC-CDH_B-571_C6-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQFpSzr9oEDyrAmbPLGicSPCAVJ//xw @@ -18440,6 +20077,9 @@ wNV3vgb1irClX9fbd5/nN3edoz0An1e1utSXAurPV1rLryffgzBwzYk6eSR3DJLv EUMYxuimIGs97u8BTw5EsNxmhOEA5Kw2FlA= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-571_C7:KAS-ECC-CDH_B-571_C7-PUBLIC + + PublicKey=KAS-ECC-CDH_B-571_C7-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQCbi8e5k55WOkCVHp9sKHhSGbz0sAS @@ -18472,6 +20112,9 @@ wteEZVL+SH7wHMoEMRVbtUUzsGeinoNnNzr5XWp/C/mNhptwj0j5XxuIoVMP4iVH RSLTPWamZbO2UBVw8HYyKvCtK7qqBOoumV0= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-571_C8:KAS-ECC-CDH_B-571_C8-PUBLIC + + PublicKey=KAS-ECC-CDH_B-571_C8-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQCPuT57CTe4gOs+2WGMTE8etQ5TEfx @@ -18504,6 +20147,9 @@ SeoE5jmfHO0madOlUG016ivr/M8M7IS8lzg6rcO0g0f2KWJuYJb4kENeWTNnUEj9 zvze3j7WFuZWDULp4XxUkuMLwt5GicBZLss= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-571_C9:KAS-ECC-CDH_B-571_C9-PUBLIC + + PublicKey=KAS-ECC-CDH_B-571_C9-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQA1KCxHBc5vtCU5y16aSODaDbZIVdG @@ -18536,6 +20182,9 @@ YZQHs4JLf3smb6Qv5Tatwqx5udHltAjnIXs6md3rmS8xI/8tFod00wCoGKMmkuJl r8b29XjZvTEhEytZeYQfei0GDolIkB1lfBw= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-571_C10:KAS-ECC-CDH_B-571_C10-PUBLIC + + PublicKey=KAS-ECC-CDH_B-571_C10-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQDu4QDK3//zieszzVLid3fZGzctWY0 @@ -18568,6 +20217,9 @@ lIUFuSFHottIo4MMz6KJUaK36OuEMTuZsKmQMceDTGM/hlovmESVJSiuXe4CQoqC TN+34gko/8U0IN846tC0JA0GWdWtsf8uLcs= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-571_C11:KAS-ECC-CDH_B-571_C11-PUBLIC + + PublicKey=KAS-ECC-CDH_B-571_C11-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQGVWpMyYRmeUqT0DOIU2d296SzNEw9 @@ -18600,6 +20252,9 @@ EFYFCgZxycDOV6SU5pEfE3bPH8M5OIW6jCb23cu1Nhh2hgo1r8H0Vg8pcMMNs/HI F9vIrysCXa7TqdoS0vrp1xTOrYBEXmoKCBM= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-571_C12:KAS-ECC-CDH_B-571_C12-PUBLIC + + PublicKey=KAS-ECC-CDH_B-571_C12-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQBAFGCsCmkhSju9f/QIhrYcIWrrGpy @@ -18632,6 +20287,9 @@ hTMBJTYz0CJRRk7cxT7Z6KntkykyDvXurzXWTFm5c1yW4H8aYuwXvO5PBM2ahaPr UEqvN7s4jGx9CNkKoLaFVrXAaOy/ClmERg0= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-571_C13:KAS-ECC-CDH_B-571_C13-PUBLIC + + PublicKey=KAS-ECC-CDH_B-571_C13-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQH+rTlkyjHAPdGSb2Qp9Uf8olY/nIN @@ -18664,6 +20322,9 @@ bm4B0VG0btAEJjzZpcDUaoQNAyImMfkv+SgOlaNXRs28r9n+1oEcdhS51Qqigo3H onWznT1BijSd0eK3MhH03po0tC/KEbl2Dso= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-571_C14:KAS-ECC-CDH_B-571_C14-PUBLIC + + PublicKey=KAS-ECC-CDH_B-571_C14-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQHJnYwKtGHMbdiArxRQp6/fsz2Ml9O @@ -18696,6 +20357,9 @@ UVoBSZ25WAjHGdJOsFxjPbiwXPlpygv2VkNbH98bCSgpD2pr+ICtuf1TyG7Hbg9i zonL60wmb2Sodtd4IxoAMMOKoA1mxr1oB4U= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-571_C15:KAS-ECC-CDH_B-571_C15-PUBLIC + + PublicKey=KAS-ECC-CDH_B-571_C15-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQGzXkx/PGTX4HzAUee2a0Mb5oFvs9O @@ -18728,6 +20392,9 @@ ayIDKRBUTLE24sKaozVyqmw0caUuvKayKL7nSfqf/ikpakpbaqDG3J8JUhbnsVE9 gcugB5Sj9Vj3ShtUHHOyMI9PjnQCi1wrzfM= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-571_C16:KAS-ECC-CDH_B-571_C16-PUBLIC + + PublicKey=KAS-ECC-CDH_B-571_C16-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQCmEtlMHTDaiWa2VbVVWUSwscx+lDy @@ -18760,6 +20427,9 @@ LBgEdu09vZNtHDaYekNRLI8FYuMWEi0Fp+3U5CSJhMEfbrhSFdWqoCYqlfIGZsnb 9FJIrhd9Lf/6OmqVBTMpi1w/Shti2h6vzVE= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-571_C17:KAS-ECC-CDH_B-571_C17-PUBLIC + + PublicKey=KAS-ECC-CDH_B-571_C17-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQBqGguCezNGGjaICkWpWHuhRPA1zRw @@ -18792,6 +20462,9 @@ l4UGqp/7/WXFCTcIRnB2dKxyPawkpvM6Hgu834skujLPe97I/ckjO3V7wHPWTe30 hMb6Ae8o6HT7DTT1iw4ysYZFwwvctRbuOEE= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-571_C18:KAS-ECC-CDH_B-571_C18-PUBLIC + + PublicKey=KAS-ECC-CDH_B-571_C18-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQCza8TmgzaKADWESj/5NcyOzSg/PSM @@ -18824,6 +20497,9 @@ xqkBwb2K+uapQQj8LHVdXeP6Kks0cfwqXN9K3aaFKb8YD/KNsVSrQxEkezkuk6M1 u+h5Zgi71gE/Q83MhG7CImdCPDz9os6KPZY= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-571_C19:KAS-ECC-CDH_B-571_C19-PUBLIC + + PublicKey=KAS-ECC-CDH_B-571_C19-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQABRUS5KDbxTXJe+EP+nQldYOCiDBA @@ -18856,6 +20532,9 @@ I4sHtDMhthGLh8Rse1IojfXdHPfaYYPs5WM7TBfK42LYIRkffVeSOSgzmq332F9/ Gd6UhnCeTS3e9CxVu012o8tQytKgmOrVlSo= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-571_C20:KAS-ECC-CDH_B-571_C20-PUBLIC + + PublicKey=KAS-ECC-CDH_B-571_C20-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQATC3lZCQxvMbrgu/UNVVAqLXSOxKw @@ -18888,6 +20567,9 @@ Z0mW6zk6Pj+RWVu/qHJTpW66wrEO1Aavnb/1OyImX761p2nKzitgtF2/l87tKwoE LsvgivaHVd5OEHcXNHWCbqq+0mp1w2nNew8= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-571_C21:KAS-ECC-CDH_B-571_C21-PUBLIC + + PublicKey=KAS-ECC-CDH_B-571_C21-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQCUDig5yrowW424+O1BO1zQe9wm5/s @@ -18920,6 +20602,9 @@ exAByR0nwq5xE+sDvpjpTTrW3seR+sL+DSyMmLcTcbBYpkn6nD+jzNu6kyOVwnr/ og2VrAQbyZeOP1MIKaLGTImxvM6sBoVPuQM= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-571_C22:KAS-ECC-CDH_B-571_C22-PUBLIC + + PublicKey=KAS-ECC-CDH_B-571_C22-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQBvf/9acLgj7A8hT7y69CI5o0jP9uV @@ -18952,6 +20637,9 @@ BYYHFvGJjiqMJzGd56JpjyHV3likuLjdArXkMxENOXf+6OxcCJ0XCvAqStPB+rRL DR4qO+up4HGc2L+DZEeNaGxONfdFfSTQIdY= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-571_C23:KAS-ECC-CDH_B-571_C23-PUBLIC + + PublicKey=KAS-ECC-CDH_B-571_C23-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQAj8O0FPNBK0A/AcJTvSImFQIl3aqz @@ -18984,6 +20672,9 @@ sj0uVQMCxCqt1X0d9vwY5GW9mEQkle7SLz/WcAKEyfp4M7UWUUm44akeDgmaClcy vxn5Isjbw4Ob9r4AU/hFMccYQ6nmoQKrWNY= -----END PUBLIC KEY----- +PrivPubKeyPair = KAS-ECC-CDH_B-571_C24:KAS-ECC-CDH_B-571_C24-PUBLIC + + PublicKey=KAS-ECC-CDH_B-571_C24-Peer-PUBLIC -----BEGIN PUBLIC KEY----- MIGnMBAGByqGSM49AgEGBSuBBAAnA4GSAAQFZagplNfm9T7ra/Z1I+5oD/t3ARhn @@ -18998,3 +20689,101 @@ PeerKey=KAS-ECC-CDH_B-571_C24-Peer-PUBLIC Ctrl=ecdh_cofactor_mode:1 SharedSecret=02da266a269bdc8d8b2a0c6bb5762f102fc801c8d5394a9271539136bd81d4b69cfbb7525cd0a983fb7f7e9deec583b8f8e574c6184b2d79831ec770649e484dc006fa35b0bffd0b + +# Test mismatches +PrivPubKeyPair = Alice-25519:Bob-25519-PUBLIC +Result = KEYPAIR_MISMATCH + +PrivPubKeyPair = Bob-25519:Alice-25519-PUBLIC +Result = KEYPAIR_MISMATCH + +PrivPubKeyPair = Alice-25519:P-256-PUBLIC +Result = KEYPAIR_TYPE_MISMATCH + +PrivPubKeyPair = RSA-2048:P-256-PUBLIC +Result = KEYPAIR_TYPE_MISMATCH + +PrivPubKeyPair = RSA-2048:KAS-ECC-CDH_K-163_C0-PUBLIC +Result = KEYPAIR_TYPE_MISMATCH + +PrivPubKeyPair = Alice-25519:KAS-ECC-CDH_K-163_C0-PUBLIC +Result = KEYPAIR_TYPE_MISMATCH + +PrivateKey = RSA-2048-BIS +-----BEGIN PRIVATE KEY----- +MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCytEHg4qzeBrqu +1haSf0xOttQeyburRKC4N4KJIbtQbooYS6M7C9mvXdz4vA7PtgXS6L4gDTH2Bpa5 +qvbAYQ7CbmssmkciN/bqxMqecsuN49uMRF2Yy40UYCKv+wv6fGbCsrczDc5kfRu2 +XzKHewAKF9EZYkKLNfLjT+jQAogdfmnShDQPWus7t+9RbuZPrg/iz/urQGfTEarW +8yFl6jJd88cjASrGCCxTCL2BLuimLrSauF/Na9K1Jmxst+lqXKhf4YYtf5ARgDBn +oOfZl24ts9twBXD6hjfhVh3wOPJL3+EKOORBclHixQ47Kx9ermb6hQDv0AyRoXyp +6Jy7gkLxAgMBAAECggEAeDWjXxh7+nqCV5ux4Wf6N7Tqqa9AK6xlhKXqjD6Bl1BU +WpV+vvhwvXOhcjxmpjimYEKpqjvWEM5L06d6htyDJi1KsN0y3oTQ9wnb1owX+2F8 +TTWr1F2QkFU+4Cw62YuXQH8hlxlBbf1uh9Yv0kzeMOvmf3HGm4h104zsaghZ8aP4 +Tmmeqnc+ty3iQkjDLIXEaHYIZ1AZ7fzc/rc6kbkWGkVAgCP1CDIm3q586OZDQz0E +hgLhWHgJQ5Z2m9Qw/hROJeesKHtq19GFafIBANDelB/yG8p+dCqPQsg6nm24jAHO +pT1EipOWwLnsTBsa9BlcCYeBpqNIPV4ST+X4Que59QKBgQDjublne/+/i7dQLpCT +01fzbkDEIV2s7jVpEz0imzT6HXIeHBpOmS7GHlurN7WLUcbB5QUEgzNxA08x80o1 +oU9b/jUpFBJRudyIKX8aSBVSInOXw1eQNjkqBZdUVN1ADeS/HYRYnPhIB4w31XgJ +ujc9udPtn2GqWfKXrG5abfXfdwKBgQDI5GJ/8kh4nxtC7SvcJNfbRtC/03f0vJQj +600vCU8X+wkk1EMtnHU/A/oOhZey/zdc03h3UuwznOER8KWLB8/XidRZnT9NgMGb +sO7sNPyTfMep+jLcolv1SAThjQxAVxCkvl87GFGvGnBCTtLWMEWpazl8XH+aHgyn +1NU/VJqa1wKBgD5Nb6YaTKwRA4QSWUe4SJW3Ek0We9R2D3LB6rXvFJ1hNPl74s6i +JiPZ5mZ/hVGqe+BMUgUcCBThPOeDkkf97AJVGCI29ZQab3VpNPbxxbOE7W8V6Hzx ++M3AXdiapzWBF5YZ8z1zJJJATmJwKrkukzJ2Br86HbRHi5FngYGIF/6dAoGAE/32 +d3krESX0VpK3vK7F9IJ1n8FxvJ9Ptsth4P5yKpbG8C1XiiB54o2Iww00bZHMdqZs +5KMR8oj4NQrXzqA2ZOLIiSqG9DWODupqvIMBZ8QRMq89hIt7z0sdgTzCLVz8wQhY +/c6LwntFFLQ3cy1WoWeUTvX9lN7Mr58UobrPr/0CgYEA31WYhr/TH7sBG5tlUvuK +1KYMRwh1HR3lMnuCzAFOEtIJhSG/GtWyPtlYzYWvYGEukBO5+QSoB9K+jNEm6tNw +mRsMet399ylSQMkmPIfXldQvDF/9AvXBCR+EttZDr2Dw0Haeu4PGwT3WgqGHDWz5 +vOpxAsEe+k0AI8MnJvlO8uw= +-----END PRIVATE KEY----- + +PublicKey = RSA-2048-BIS-PUBLIC +-----BEGIN PUBLIC KEY----- +MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsrRB4OKs3ga6rtYWkn9M +TrbUHsm7q0SguDeCiSG7UG6KGEujOwvZr13c+LwOz7YF0ui+IA0x9gaWuar2wGEO +wm5rLJpHIjf26sTKnnLLjePbjERdmMuNFGAir/sL+nxmwrK3Mw3OZH0btl8yh3sA +ChfRGWJCizXy40/o0AKIHX5p0oQ0D1rrO7fvUW7mT64P4s/7q0Bn0xGq1vMhZeoy +XfPHIwEqxggsUwi9gS7opi60mrhfzWvStSZsbLfpalyoX+GGLX+QEYAwZ6Dn2Zdu +LbPbcAVw+oY34VYd8DjyS9/hCjjkQXJR4sUOOysfXq5m+oUA79AMkaF8qeicu4JC +8QIDAQAB +-----END PUBLIC KEY----- + +PrivPubKeyPair = RSA-2048-BIS:RSA-2048-BIS-PUBLIC + +PrivPubKeyPair = RSA-2048-BIS:RSA-2048-PUBLIC +Result = KEYPAIR_MISMATCH + +PrivateKey = DSA-1024-BIS +-----BEGIN PRIVATE KEY----- +MIIBSwIBADCCASwGByqGSM44BAEwggEfAoGBAO0SwRpkAeM21qSM5ch4CLEHpFk419R5ve1UUr42 +1y3HEUURsrVpxYKvyx8aOBQC/akz95cYxNN3y1JnJJMxPklhdJrJf/WDYPxjMk8BqNJmeZtLuCVL +KGwQomuo7ZkG955WRyLHYEdQ6uC7K2QTPKpW6psFYFaDYjAjSEKk2MFxAhUAykDkKLZdhPWzwM8/ +qYaE31VmWz0CgYEApNVF8oFK41ezQci9XbSZJHyPB+3jML1YQkHxiiInaIz6GEFtjUbIUEYA/ovY ++6ECNI1aIDHTd7CHwoS0mp33oQYs43nt29B6UwbtMmbzCOQ9vGGwWVho+JtHyyPWrDuLmkvLtoQP +axYt6PVa3gncr2v3njcVuH+EQ6DuFR93zksEFgIUFQFshP0hj7i6ClXkSPYoFW6KrIY= +-----END PRIVATE KEY----- + +PublicKey = DSA-1024-BIS-PUBLIC +-----BEGIN PUBLIC KEY----- +MIIBtzCCASwGByqGSM44BAEwggEfAoGBAO0SwRpkAeM21qSM5ch4CLEHpFk419R5 +ve1UUr421y3HEUURsrVpxYKvyx8aOBQC/akz95cYxNN3y1JnJJMxPklhdJrJf/WD +YPxjMk8BqNJmeZtLuCVLKGwQomuo7ZkG955WRyLHYEdQ6uC7K2QTPKpW6psFYFaD +YjAjSEKk2MFxAhUAykDkKLZdhPWzwM8/qYaE31VmWz0CgYEApNVF8oFK41ezQci9 +XbSZJHyPB+3jML1YQkHxiiInaIz6GEFtjUbIUEYA/ovY+6ECNI1aIDHTd7CHwoS0 +mp33oQYs43nt29B6UwbtMmbzCOQ9vGGwWVho+JtHyyPWrDuLmkvLtoQPaxYt6PVa +3gncr2v3njcVuH+EQ6DuFR93zksDgYQAAoGAdZCPYZ9WvtKW7dFvbEjl0HHBxLNX +8kV1/FAxsDrQd+c8mWdruNzcmwsZJklJuTK9czKnXgLmkRHR20I4oNrJ/bptV8lV +iDvJBJlmZ1aGh6yLIHzYBbgbgia3lBrFlO5qUxNmbNeiC+HIqUvlVBmQOLN6+Xjn +Q4A0wDK8dmF2dFI= +-----END PUBLIC KEY----- + +PrivPubKeyPair = DSA-1024-BIS:DSA-1024-BIS-PUBLIC + +PrivPubKeyPair = DSA-1024:DSA-1024-BIS-PUBLIC +Result = KEYPAIR_MISMATCH + +PrivPubKeyPair = DSA-1024-BIS:DSA-1024-PUBLIC +Result = KEYPAIR_MISMATCH + From builds at travis-ci.org Wed Apr 26 01:20:29 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 26 Apr 2017 01:20:29 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10578 (master - d91b742) In-Reply-To: Message-ID: <58fff6075b236_43feb5e9ce41818444f7@2e58c0f0-eb9e-49c0-b82b-17b7682ef2d1.mail> Build Update for openssl/openssl ------------------------------------- Build: #10578 Status: Still Failing Duration: 18 minutes and 58 seconds Commit: d91b742 (master) Author: Rich Salz Message: evp_test.c: Add PrivPubKeyPair tests Reviewed-by: Stephen Henson Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3245) View the changeset: https://github.com/openssl/openssl/compare/dd05be5d7809...d91b7423af79 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/225830546 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From matt at openssl.org Wed Apr 26 13:17:24 2017 From: matt at openssl.org (Matt Caswell) Date: Wed, 26 Apr 2017 13:17:24 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493212644.270338.5192.nullmailer@dev.openssl.org> The branch master has been updated via bf846a6d47a0f94b9771ead5ce52786045e58f49 (commit) from d91b7423af79447df90cc0245b6944fce93302d1 (commit) - Log ----------------------------------------------------------------- commit bf846a6d47a0f94b9771ead5ce52786045e58f49 Author: Matt Caswell Date: Wed Apr 26 09:08:00 2017 +0100 Don't overwrite the alert value if there is no alert to send The function tls_early_post_process_client_hello() was overwriting the passed "al" parameter even if it was successful. The caller of that function, tls_post_process_client_hello(), sets "al" to a sensible default (HANDSHAKE_FAILURE), but this was being overwritten to be INTERNAL_ERROR. The result is a "no shared cipher" error (and probably other similar errors) were being reported back to the client with an incorrect INTERNAL_ERROR alert. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3314) ----------------------------------------------------------------------- Summary of changes: ssl/statem/statem_srvr.c | 42 +++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/ssl/statem/statem_srvr.c b/ssl/statem/statem_srvr.c index 919469f..d751502 100644 --- a/ssl/statem/statem_srvr.c +++ b/ssl/statem/statem_srvr.c @@ -1444,10 +1444,10 @@ MSG_PROCESS_RETURN tls_process_client_hello(SSL *s, PACKET *pkt) return MSG_PROCESS_ERROR; } -static int tls_early_post_process_client_hello(SSL *s, int *al) +static int tls_early_post_process_client_hello(SSL *s, int *pal) { unsigned int j; - int i; + int i, al = SSL_AD_INTERNAL_ERROR; int protverr; size_t loop; unsigned long id; @@ -1460,13 +1460,12 @@ static int tls_early_post_process_client_hello(SSL *s, int *al) CLIENTHELLO_MSG *clienthello = s->clienthello; DOWNGRADE dgrd = DOWNGRADE_NONE; - *al = SSL_AD_INTERNAL_ERROR; /* Finished parsing the ClientHello, now we can start processing it */ /* Give the early callback a crack at things */ if (s->ctx->early_cb != NULL) { int code; /* A failure in the early callback terminates the connection. */ - code = s->ctx->early_cb(s, al, s->ctx->early_cb_arg); + code = s->ctx->early_cb(s, &al, s->ctx->early_cb_arg); if (code == 0) goto err; if (code < 0) { @@ -1513,13 +1512,13 @@ static int tls_early_post_process_client_hello(SSL *s, int *al) /* like ssl3_get_record, send alert using remote version number */ s->version = s->client_version = clienthello->legacy_version; } - *al = SSL_AD_PROTOCOL_VERSION; + al = SSL_AD_PROTOCOL_VERSION; goto err; } /* TLSv1.3 specifies that a ClientHello must end on a record boundary */ if (SSL_IS_TLS13(s) && RECORD_LAYER_processed_read_pending(&s->rlayer)) { - *al = SSL_AD_UNEXPECTED_MESSAGE; + al = SSL_AD_UNEXPECTED_MESSAGE; SSLerr(SSL_F_TLS_EARLY_POST_PROCESS_CLIENT_HELLO, SSL_R_NOT_ON_RECORD_BOUNDARY); goto err; @@ -1531,7 +1530,7 @@ static int tls_early_post_process_client_hello(SSL *s, int *al) if (s->ctx->app_verify_cookie_cb != NULL) { if (s->ctx->app_verify_cookie_cb(s, clienthello->dtls_cookie, clienthello->dtls_cookie_len) == 0) { - *al = SSL_AD_HANDSHAKE_FAILURE; + al = SSL_AD_HANDSHAKE_FAILURE; SSLerr(SSL_F_TLS_EARLY_POST_PROCESS_CLIENT_HELLO, SSL_R_COOKIE_MISMATCH); goto err; @@ -1541,7 +1540,7 @@ static int tls_early_post_process_client_hello(SSL *s, int *al) } else if (s->d1->cookie_len != clienthello->dtls_cookie_len || memcmp(clienthello->dtls_cookie, s->d1->cookie, s->d1->cookie_len) != 0) { - *al = SSL_AD_HANDSHAKE_FAILURE; + al = SSL_AD_HANDSHAKE_FAILURE; SSLerr(SSL_F_TLS_EARLY_POST_PROCESS_CLIENT_HELLO, SSL_R_COOKIE_MISMATCH); goto err; } @@ -1552,7 +1551,7 @@ static int tls_early_post_process_client_hello(SSL *s, int *al) if (protverr != 0) { SSLerr(SSL_F_TLS_EARLY_POST_PROCESS_CLIENT_HELLO, protverr); s->version = s->client_version; - *al = SSL_AD_PROTOCOL_VERSION; + al = SSL_AD_PROTOCOL_VERSION; goto err; } } @@ -1563,7 +1562,7 @@ static int tls_early_post_process_client_hello(SSL *s, int *al) /* We need to do this before getting the session */ if (!tls_parse_extension(s, TLSEXT_IDX_extended_master_secret, SSL_EXT_CLIENT_HELLO, - clienthello->pre_proc_exts, NULL, 0, al)) { + clienthello->pre_proc_exts, NULL, 0, &al)) { SSLerr(SSL_F_TLS_EARLY_POST_PROCESS_CLIENT_HELLO, SSL_R_CLIENTHELLO_TLSEXT); goto err; } @@ -1590,7 +1589,7 @@ static int tls_early_post_process_client_hello(SSL *s, int *al) if (!ssl_get_new_session(s, 1)) goto err; } else { - i = ssl_get_prev_session(s, clienthello, al); + i = ssl_get_prev_session(s, clienthello, &al); if (i == 1) { /* previous session */ s->hit = 1; @@ -1604,9 +1603,9 @@ static int tls_early_post_process_client_hello(SSL *s, int *al) } if (!ssl_cache_cipherlist(s, &clienthello->ciphersuites, - clienthello->isv2, al) || + clienthello->isv2, &al) || !bytes_to_cipher_list(s, &clienthello->ciphersuites, &ciphers, &scsvs, - clienthello->isv2, al)) { + clienthello->isv2, &al)) { goto err; } @@ -1620,7 +1619,7 @@ static int tls_early_post_process_client_hello(SSL *s, int *al) /* SCSV is fatal if renegotiating */ SSLerr(SSL_F_TLS_EARLY_POST_PROCESS_CLIENT_HELLO, SSL_R_SCSV_RECEIVED_WHEN_RENEGOTIATING); - *al = SSL_AD_HANDSHAKE_FAILURE; + al = SSL_AD_HANDSHAKE_FAILURE; goto err; } s->s3->send_connection_binding = 1; @@ -1635,7 +1634,7 @@ static int tls_early_post_process_client_hello(SSL *s, int *al) */ SSLerr(SSL_F_TLS_EARLY_POST_PROCESS_CLIENT_HELLO, SSL_R_INAPPROPRIATE_FALLBACK); - *al = SSL_AD_INAPPROPRIATE_FALLBACK; + al = SSL_AD_INAPPROPRIATE_FALLBACK; goto err; } } @@ -1665,7 +1664,7 @@ static int tls_early_post_process_client_hello(SSL *s, int *al) * we need to have the cipher in the cipher list if we are asked * to reuse it */ - *al = SSL_AD_ILLEGAL_PARAMETER; + al = SSL_AD_ILLEGAL_PARAMETER; SSLerr(SSL_F_TLS_EARLY_POST_PROCESS_CLIENT_HELLO, SSL_R_REQUIRED_CIPHER_MISSING); goto err; @@ -1679,7 +1678,7 @@ static int tls_early_post_process_client_hello(SSL *s, int *al) if (loop >= clienthello->compressions_len) { /* no compress */ - *al = SSL_AD_DECODE_ERROR; + al = SSL_AD_DECODE_ERROR; SSLerr(SSL_F_TLS_EARLY_POST_PROCESS_CLIENT_HELLO, SSL_R_NO_COMPRESSION_SPECIFIED); goto err; } @@ -1691,7 +1690,7 @@ static int tls_early_post_process_client_hello(SSL *s, int *al) /* TLS extensions */ if (!tls_parse_all_extensions(s, SSL_EXT_CLIENT_HELLO, - clienthello->pre_proc_exts, NULL, 0, al)) { + clienthello->pre_proc_exts, NULL, 0, &al)) { SSLerr(SSL_F_TLS_EARLY_POST_PROCESS_CLIENT_HELLO, SSL_R_PARSE_TLSEXT); goto err; } @@ -1736,7 +1735,7 @@ static int tls_early_post_process_client_hello(SSL *s, int *al) pref_cipher = ssl3_choose_cipher(s, s->session->ciphers, SSL_get_ciphers(s)); if (pref_cipher == NULL) { - *al = SSL_AD_HANDSHAKE_FAILURE; + al = SSL_AD_HANDSHAKE_FAILURE; SSLerr(SSL_F_TLS_EARLY_POST_PROCESS_CLIENT_HELLO, SSL_R_NO_SHARED_CIPHER); goto err; } @@ -1786,7 +1785,7 @@ static int tls_early_post_process_client_hello(SSL *s, int *al) break; } if (k >= clienthello->compressions_len) { - *al = SSL_AD_ILLEGAL_PARAMETER; + al = SSL_AD_ILLEGAL_PARAMETER; SSLerr(SSL_F_TLS_EARLY_POST_PROCESS_CLIENT_HELLO, SSL_R_REQUIRED_COMPRESSION_ALGORITHM_MISSING); goto err; @@ -1836,7 +1835,7 @@ static int tls_early_post_process_client_hello(SSL *s, int *al) sk_SSL_CIPHER_free(s->session->ciphers); s->session->ciphers = ciphers; if (ciphers == NULL) { - *al = SSL_AD_INTERNAL_ERROR; + al = SSL_AD_INTERNAL_ERROR; SSLerr(SSL_F_TLS_EARLY_POST_PROCESS_CLIENT_HELLO, ERR_R_INTERNAL_ERROR); goto err; } @@ -1863,6 +1862,7 @@ static int tls_early_post_process_client_hello(SSL *s, int *al) return 1; err: ossl_statem_set_error(s); + *pal = al; sk_SSL_CIPHER_free(ciphers); sk_SSL_CIPHER_free(scsvs); From matt at openssl.org Wed Apr 26 13:35:24 2017 From: matt at openssl.org (Matt Caswell) Date: Wed, 26 Apr 2017 13:35:24 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493213724.124361.18225.nullmailer@dev.openssl.org> The branch master has been updated via 975922fd0c6a3089a49b9bcdcd77c672d97e36b2 (commit) via 38a7315060ec4ca49799b2a7ea83e8678e3acd20 (commit) via aafec89c63efeade20f1bdc8023d2bb611e419b8 (commit) from bf846a6d47a0f94b9771ead5ce52786045e58f49 (commit) - Log ----------------------------------------------------------------- commit 975922fd0c6a3089a49b9bcdcd77c672d97e36b2 Author: Matt Caswell Date: Wed Apr 26 11:43:05 2017 +0100 Add tests for version/ciphersuite sanity checks The previous commits added sanity checks for where the max enabled protocol version does not have any configured ciphersuites. We should check that we fail in those circumstances. Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3316) commit 38a7315060ec4ca49799b2a7ea83e8678e3acd20 Author: Matt Caswell Date: Wed Apr 26 11:28:20 2017 +0100 Add a ciphersuite config sanity check for servers Ensure that there are ciphersuites enabled for the maximum supported version we will accept in a ClientHello. Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3316) commit aafec89c63efeade20f1bdc8023d2bb611e419b8 Author: Matt Caswell Date: Wed Apr 26 10:38:32 2017 +0100 Add a ciphersuite config sanity check for clients Ensure that there are ciphersuites enabled for the maximum supported version we are claiming in the ClientHello. Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3316) ----------------------------------------------------------------------- Summary of changes: ssl/ssl_locl.h | 3 +- ssl/statem/extensions.c | 2 +- ssl/statem/extensions_clnt.c | 2 +- ssl/statem/statem_clnt.c | 22 ++++- ssl/statem/statem_lib.c | 40 +++++++- ssl/t1_lib.c | 2 +- test/recipes/70-test_sslmessages.t | 1 + test/ssl-tests/14-curves.conf | 29 ++++++ test/ssl-tests/14-curves.conf.in | 5 +- test/ssl-tests/17-renegotiate.conf | 8 +- test/ssl-tests/17-renegotiate.conf.in | 8 +- test/ssl-tests/19-mac-then-encrypt.conf | 2 +- test/ssl-tests/19-mac-then-encrypt.conf.in | 2 +- test/ssl-tests/20-cert-select.conf | 3 + test/ssl-tests/20-cert-select.conf.in | 5 +- test/ssl-tests/23-srp.conf | 4 + test/ssl-tests/23-srp.conf.in | 154 +++++++++++++++-------------- test/ssl-tests/protocol_version.pm | 31 ++++++ 18 files changed, 224 insertions(+), 99 deletions(-) diff --git a/ssl/ssl_locl.h b/ssl/ssl_locl.h index 8eb6ff5..15065c7 100644 --- a/ssl/ssl_locl.h +++ b/ssl/ssl_locl.h @@ -2194,8 +2194,7 @@ __owur int ssl_choose_server_version(SSL *s, CLIENTHELLO_MSG *hello, DOWNGRADE *dgrd); __owur int ssl_choose_client_version(SSL *s, int version, int checkdgrd, int *al); -int ssl_get_client_min_max_version(const SSL *s, int *min_version, - int *max_version); +int ssl_get_min_max_version(const SSL *s, int *min_version, int *max_version); __owur long tls1_default_timeout(void); __owur int dtls1_do_write(SSL *s, int type); diff --git a/ssl/statem/extensions.c b/ssl/statem/extensions.c index 7ec7128..c8ed722 100644 --- a/ssl/statem/extensions.c +++ b/ssl/statem/extensions.c @@ -674,7 +674,7 @@ int tls_construct_extensions(SSL *s, WPACKET *pkt, unsigned int context, } if ((context & SSL_EXT_CLIENT_HELLO) != 0) { - reason = ssl_get_client_min_max_version(s, &min_version, &max_version); + reason = ssl_get_min_max_version(s, &min_version, &max_version); if (reason != 0) { SSLerr(SSL_F_TLS_CONSTRUCT_EXTENSIONS, reason); goto err; diff --git a/ssl/statem/extensions_clnt.c b/ssl/statem/extensions_clnt.c index 7d2a4b0..898992d 100644 --- a/ssl/statem/extensions_clnt.c +++ b/ssl/statem/extensions_clnt.c @@ -464,7 +464,7 @@ int tls_construct_ctos_supported_versions(SSL *s, WPACKET *pkt, return 0; } - reason = ssl_get_client_min_max_version(s, &min_version, &max_version); + reason = ssl_get_min_max_version(s, &min_version, &max_version); if (reason != 0) { SSLerr(SSL_F_TLS_CONSTRUCT_CTOS_SUPPORTED_VERSIONS, reason); return 0; diff --git a/ssl/statem/statem_clnt.c b/ssl/statem/statem_clnt.c index 7bcd3ac..8c4c839 100644 --- a/ssl/statem/statem_clnt.c +++ b/ssl/statem/statem_clnt.c @@ -3496,7 +3496,7 @@ int ssl_do_client_cert_cb(SSL *s, X509 **px509, EVP_PKEY **ppkey) int ssl_cipher_list_to_bytes(SSL *s, STACK_OF(SSL_CIPHER) *sk, WPACKET *pkt) { int i; - size_t totlen = 0, len, maxlen; + size_t totlen = 0, len, maxlen, maxverok = 0; int empty_reneg_info_scsv = !s->renegotiate; /* Set disabled masks for this session */ ssl_set_client_disabled(s); @@ -3538,11 +3538,29 @@ int ssl_cipher_list_to_bytes(SSL *s, STACK_OF(SSL_CIPHER) *sk, WPACKET *pkt) return 0; } + /* Sanity check that the maximum version we offer has ciphers enabled */ + if (!maxverok) { + if (SSL_IS_DTLS(s)) { + if (DTLS_VERSION_GE(c->max_dtls, s->s3->tmp.max_ver) + && DTLS_VERSION_LE(c->min_dtls, s->s3->tmp.max_ver)) + maxverok = 1; + } else { + if (c->max_tls >= s->s3->tmp.max_ver + && c->min_tls <= s->s3->tmp.max_ver) + maxverok = 1; + } + } + totlen += len; } - if (totlen == 0) { + if (totlen == 0 || !maxverok) { SSLerr(SSL_F_SSL_CIPHER_LIST_TO_BYTES, SSL_R_NO_CIPHERS_AVAILABLE); + + if (!maxverok) + ERR_add_error_data(1, "No ciphers enabled for max supported " + "SSL/TLS version"); + return 0; } diff --git a/ssl/statem/statem_lib.c b/ssl/statem/statem_lib.c index 0180445..36d5534 100644 --- a/ssl/statem/statem_lib.c +++ b/ssl/statem/statem_lib.c @@ -78,6 +78,39 @@ int tls_setup_handshake(SSL *s) return 0; if (s->server) { + STACK_OF(SSL_CIPHER) *ciphers = SSL_get_ciphers(s); + int i, ver_min, ver_max, ok = 0; + + /* + * Sanity check that the maximum version we accept has ciphers + * enabled. For clients we do this check during construction of the + * ClientHello. + */ + if (ssl_get_min_max_version(s, &ver_min, &ver_max) != 0) { + SSLerr(SSL_F_TLS_SETUP_HANDSHAKE, ERR_R_INTERNAL_ERROR); + ssl3_send_alert(s, SSL3_AL_FATAL, SSL_AD_INTERNAL_ERROR); + return 0; + } + for (i = 0; i < sk_SSL_CIPHER_num(ciphers); i++) { + const SSL_CIPHER *c = sk_SSL_CIPHER_value(ciphers, i); + + if (SSL_IS_DTLS(s)) { + if (DTLS_VERSION_GE(ver_max, c->min_dtls) && + DTLS_VERSION_LE(ver_max, c->max_dtls)) + ok = 1; + } else if (ver_max >= c->min_tls && ver_max <= c->max_tls) { + ok = 1; + } + if (ok) + break; + } + if (!ok) { + SSLerr(SSL_F_TLS_SETUP_HANDSHAKE, SSL_R_NO_CIPHERS_AVAILABLE); + ERR_add_error_data(1, "No ciphers enabled for max supported " + "SSL/TLS version"); + ssl3_send_alert(s, SSL3_AL_FATAL, SSL_AD_HANDSHAKE_FAILURE); + return 0; + } if (SSL_IS_FIRST_HANDSHAKE(s)) { s->ctx->stats.sess_accept++; } else if (!s->s3->send_connection_binding && @@ -1781,7 +1814,7 @@ int ssl_choose_client_version(SSL *s, int version, int checkdgrd, int *al) } /* - * ssl_get_client_min_max_version - get minimum and maximum client version + * ssl_get_min_max_version - get minimum and maximum protocol version * @s: The SSL connection * @min_version: The minimum supported version * @max_version: The maximum supported version @@ -1799,8 +1832,7 @@ int ssl_choose_client_version(SSL *s, int version, int checkdgrd, int *al) * Returns 0 on success or an SSL error reason number on failure. On failure * min_version and max_version will also be set to 0. */ -int ssl_get_client_min_max_version(const SSL *s, int *min_version, - int *max_version) +int ssl_get_min_max_version(const SSL *s, int *min_version, int *max_version) { int version; int hole; @@ -1894,7 +1926,7 @@ int ssl_set_client_hello_version(SSL *s) { int ver_min, ver_max, ret; - ret = ssl_get_client_min_max_version(s, &ver_min, &ver_max); + ret = ssl_get_min_max_version(s, &ver_min, &ver_max); if (ret != 0) return ret; diff --git a/ssl/t1_lib.c b/ssl/t1_lib.c index 5007f7e..0e1a97e 100644 --- a/ssl/t1_lib.c +++ b/ssl/t1_lib.c @@ -1013,7 +1013,7 @@ void ssl_set_client_disabled(SSL *s) s->s3->tmp.mask_a = 0; s->s3->tmp.mask_k = 0; ssl_set_sig_mask(&s->s3->tmp.mask_a, s, SSL_SECOP_SIGALG_MASK); - ssl_get_client_min_max_version(s, &s->s3->tmp.min_ver, &s->s3->tmp.max_ver); + ssl_get_min_max_version(s, &s->s3->tmp.min_ver, &s->s3->tmp.max_ver); #ifndef OPENSSL_NO_PSK /* with PSK there must be client callback set */ if (!s->psk_client_callback) { diff --git a/test/recipes/70-test_sslmessages.t b/test/recipes/70-test_sslmessages.t index 790b3ae..a6278dc 100644 --- a/test/recipes/70-test_sslmessages.t +++ b/test/recipes/70-test_sslmessages.t @@ -396,6 +396,7 @@ SKIP: { skip "No EC support in this OpenSSL build", 1 if disabled("ec"); $proxy->clear(); $proxy->clientflags("-no_tls1_3"); + $proxy->serverflags("-no_tls1_3"); $proxy->ciphers("ECDHE-RSA-AES128-SHA"); $proxy->start(); checkhandshake($proxy, checkhandshake::EC_HANDSHAKE, diff --git a/test/ssl-tests/14-curves.conf b/test/ssl-tests/14-curves.conf index 83911b0..ab04c2e 100644 --- a/test/ssl-tests/14-curves.conf +++ b/test/ssl-tests/14-curves.conf @@ -50,6 +50,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [0-curve-sect163k1-client] CipherString = ECDHE Curves = sect163k1 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -77,6 +78,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [1-curve-sect163r1-client] CipherString = ECDHE Curves = sect163r1 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -104,6 +106,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [2-curve-sect163r2-client] CipherString = ECDHE Curves = sect163r2 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -131,6 +134,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [3-curve-sect193r1-client] CipherString = ECDHE Curves = sect193r1 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -158,6 +162,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [4-curve-sect193r2-client] CipherString = ECDHE Curves = sect193r2 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -185,6 +190,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [5-curve-sect233k1-client] CipherString = ECDHE Curves = sect233k1 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -212,6 +218,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [6-curve-sect233r1-client] CipherString = ECDHE Curves = sect233r1 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -239,6 +246,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [7-curve-sect239k1-client] CipherString = ECDHE Curves = sect239k1 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -266,6 +274,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [8-curve-sect283k1-client] CipherString = ECDHE Curves = sect283k1 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -293,6 +302,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [9-curve-sect283r1-client] CipherString = ECDHE Curves = sect283r1 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -320,6 +330,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [10-curve-sect409k1-client] CipherString = ECDHE Curves = sect409k1 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -347,6 +358,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [11-curve-sect409r1-client] CipherString = ECDHE Curves = sect409r1 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -374,6 +386,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [12-curve-sect571k1-client] CipherString = ECDHE Curves = sect571k1 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -401,6 +414,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [13-curve-sect571r1-client] CipherString = ECDHE Curves = sect571r1 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -428,6 +442,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [14-curve-secp160k1-client] CipherString = ECDHE Curves = secp160k1 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -455,6 +470,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [15-curve-secp160r1-client] CipherString = ECDHE Curves = secp160r1 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -482,6 +498,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [16-curve-secp160r2-client] CipherString = ECDHE Curves = secp160r2 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -509,6 +526,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [17-curve-secp192k1-client] CipherString = ECDHE Curves = secp192k1 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -536,6 +554,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [18-curve-prime192v1-client] CipherString = ECDHE Curves = prime192v1 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -563,6 +582,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [19-curve-secp224k1-client] CipherString = ECDHE Curves = secp224k1 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -590,6 +610,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [20-curve-secp224r1-client] CipherString = ECDHE Curves = secp224r1 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -617,6 +638,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [21-curve-secp256k1-client] CipherString = ECDHE Curves = secp256k1 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -644,6 +666,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [22-curve-prime256v1-client] CipherString = ECDHE Curves = prime256v1 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -671,6 +694,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [23-curve-secp384r1-client] CipherString = ECDHE Curves = secp384r1 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -698,6 +722,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [24-curve-secp521r1-client] CipherString = ECDHE Curves = secp521r1 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -725,6 +750,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [25-curve-brainpoolP256r1-client] CipherString = ECDHE Curves = brainpoolP256r1 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -752,6 +778,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [26-curve-brainpoolP384r1-client] CipherString = ECDHE Curves = brainpoolP384r1 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -779,6 +806,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [27-curve-brainpoolP512r1-client] CipherString = ECDHE Curves = brainpoolP512r1 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -806,6 +834,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [28-curve-X25519-client] CipherString = ECDHE Curves = X25519 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer diff --git a/test/ssl-tests/14-curves.conf.in b/test/ssl-tests/14-curves.conf.in index 6e98b5a..9f6e433 100644 --- a/test/ssl-tests/14-curves.conf.in +++ b/test/ssl-tests/14-curves.conf.in @@ -25,14 +25,15 @@ sub generate_tests() { foreach (0..$#curves) { my $curve = $curves[$_]; push @tests, { - name => "curve-${curve}", + name => "curve-${curve}", server => { "Curves" => $curve, # TODO(TLS1.3): Can we get this to work for TLSv1.3? "MaxProtocol" => "TLSv1.2" }, client => { - "CipherString" => "ECDHE", + "CipherString" => "ECDHE", + "MaxProtocol" => "TLSv1.2", "Curves" => $curve }, test => { diff --git a/test/ssl-tests/17-renegotiate.conf b/test/ssl-tests/17-renegotiate.conf index 8376eea..3f3769f 100644 --- a/test/ssl-tests/17-renegotiate.conf +++ b/test/ssl-tests/17-renegotiate.conf @@ -198,12 +198,12 @@ client = 6-renegotiate-aead-to-non-aead-client [6-renegotiate-aead-to-non-aead-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT -MaxProtocol = TLSv1.2 Options = NoResumptionOnRenegotiation PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [6-renegotiate-aead-to-non-aead-client] CipherString = AES128-GCM-SHA256 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -230,12 +230,12 @@ client = 7-renegotiate-non-aead-to-aead-client [7-renegotiate-non-aead-to-aead-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT -MaxProtocol = TLSv1.2 Options = NoResumptionOnRenegotiation PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [7-renegotiate-non-aead-to-aead-client] CipherString = AES128-SHA +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -262,12 +262,12 @@ client = 8-renegotiate-non-aead-to-non-aead-client [8-renegotiate-non-aead-to-non-aead-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT -MaxProtocol = TLSv1.2 Options = NoResumptionOnRenegotiation PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [8-renegotiate-non-aead-to-non-aead-client] CipherString = AES128-SHA +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -294,12 +294,12 @@ client = 9-renegotiate-aead-to-aead-client [9-renegotiate-aead-to-aead-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT -MaxProtocol = TLSv1.2 Options = NoResumptionOnRenegotiation PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [9-renegotiate-aead-to-aead-client] CipherString = AES128-GCM-SHA256 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer diff --git a/test/ssl-tests/17-renegotiate.conf.in b/test/ssl-tests/17-renegotiate.conf.in index 867a4f2..b5d07b0 100644 --- a/test/ssl-tests/17-renegotiate.conf.in +++ b/test/ssl-tests/17-renegotiate.conf.in @@ -114,10 +114,10 @@ our @tests_tls1_2 = ( name => "renegotiate-aead-to-non-aead", server => { "Options" => "NoResumptionOnRenegotiation", - "MaxProtocol" => "TLSv1.2" }, client => { "CipherString" => "AES128-GCM-SHA256", + "MaxProtocol" => "TLSv1.2", extra => { "RenegotiateCiphers" => "AES128-SHA" } @@ -133,10 +133,10 @@ our @tests_tls1_2 = ( name => "renegotiate-non-aead-to-aead", server => { "Options" => "NoResumptionOnRenegotiation", - "MaxProtocol" => "TLSv1.2" }, client => { "CipherString" => "AES128-SHA", + "MaxProtocol" => "TLSv1.2", extra => { "RenegotiateCiphers" => "AES128-GCM-SHA256" } @@ -152,10 +152,10 @@ our @tests_tls1_2 = ( name => "renegotiate-non-aead-to-non-aead", server => { "Options" => "NoResumptionOnRenegotiation", - "MaxProtocol" => "TLSv1.2" }, client => { "CipherString" => "AES128-SHA", + "MaxProtocol" => "TLSv1.2", extra => { "RenegotiateCiphers" => "AES256-SHA" } @@ -171,10 +171,10 @@ our @tests_tls1_2 = ( name => "renegotiate-aead-to-aead", server => { "Options" => "NoResumptionOnRenegotiation", - "MaxProtocol" => "TLSv1.2" }, client => { "CipherString" => "AES128-GCM-SHA256", + "MaxProtocol" => "TLSv1.2", extra => { "RenegotiateCiphers" => "AES256-GCM-SHA384" } diff --git a/test/ssl-tests/19-mac-then-encrypt.conf b/test/ssl-tests/19-mac-then-encrypt.conf index bba44d1..0dd384e 100644 --- a/test/ssl-tests/19-mac-then-encrypt.conf +++ b/test/ssl-tests/19-mac-then-encrypt.conf @@ -96,12 +96,12 @@ client = 3-disable-encrypt-then-mac-server-sha2-client [3-disable-encrypt-then-mac-server-sha2-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT -MaxProtocol = TLSv1.2 Options = -EncryptThenMac PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [3-disable-encrypt-then-mac-server-sha2-client] CipherString = AES128-SHA256 +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer diff --git a/test/ssl-tests/19-mac-then-encrypt.conf.in b/test/ssl-tests/19-mac-then-encrypt.conf.in index d51cfa3..dfe529c 100644 --- a/test/ssl-tests/19-mac-then-encrypt.conf.in +++ b/test/ssl-tests/19-mac-then-encrypt.conf.in @@ -61,10 +61,10 @@ my @tests_tls1_2 = ( name => "disable-encrypt-then-mac-server-sha2", server => { "Options" => "-EncryptThenMac", - "MaxProtocol" => "TLSv1.2" }, client => { "CipherString" => "AES128-SHA256", + "MaxProtocol" => "TLSv1.2" }, test => { "ExpectedResult" => "Success", diff --git a/test/ssl-tests/20-cert-select.conf b/test/ssl-tests/20-cert-select.conf index 20154bb..f84d9b1 100644 --- a/test/ssl-tests/20-cert-select.conf +++ b/test/ssl-tests/20-cert-select.conf @@ -34,6 +34,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [0-ECDSA CipherString Selection-client] CipherString = aECDSA +MaxProtocol = TLSv1.2 RequestCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -64,6 +65,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [1-RSA CipherString Selection-client] CipherString = aRSA +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -90,6 +92,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [2-ECDSA CipherString Selection, no ECDSA certificate-client] CipherString = aECDSA +MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer diff --git a/test/ssl-tests/20-cert-select.conf.in b/test/ssl-tests/20-cert-select.conf.in index aadae27..5937f9a 100644 --- a/test/ssl-tests/20-cert-select.conf.in +++ b/test/ssl-tests/20-cert-select.conf.in @@ -21,6 +21,7 @@ our @tests = ( server => $server, client => { "CipherString" => "aECDSA", + "MaxProtocol" => "TLSv1.2", "RequestCAFile" => test_pem("root-cert.pem"), }, test => { @@ -36,6 +37,7 @@ our @tests = ( server => $server, client => { "CipherString" => "aRSA", + "MaxProtocol" => "TLSv1.2", }, test => { "ExpectedServerCertType" =>, "RSA", @@ -49,7 +51,8 @@ our @tests = ( "MaxProtocol" => "TLSv1.2" }, client => { - "CipherString" => "aECDSA" + "CipherString" => "aECDSA", + "MaxProtocol" => "TLSv1.2" }, test => { "ExpectedResult" => "ServerFail" diff --git a/test/ssl-tests/23-srp.conf b/test/ssl-tests/23-srp.conf index 6ae49e6..610a0bb 100644 --- a/test/ssl-tests/23-srp.conf +++ b/test/ssl-tests/23-srp.conf @@ -18,6 +18,7 @@ client = 0-srp-client [0-srp-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = SRP +MaxProtocol = TLSv1.2 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [0-srp-client] @@ -52,6 +53,7 @@ client = 1-srp-bad-password-client [1-srp-bad-password-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = SRP +MaxProtocol = TLSv1.2 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [1-srp-bad-password-client] @@ -86,6 +88,7 @@ client = 2-srp-auth-client [2-srp-auth-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = aSRP +MaxProtocol = TLSv1.2 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [2-srp-auth-client] @@ -120,6 +123,7 @@ client = 3-srp-auth-bad-password-client [3-srp-auth-bad-password-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = aSRP +MaxProtocol = TLSv1.2 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [3-srp-auth-bad-password-client] diff --git a/test/ssl-tests/23-srp.conf.in b/test/ssl-tests/23-srp.conf.in index b7601fc..dcbd9f4 100644 --- a/test/ssl-tests/23-srp.conf.in +++ b/test/ssl-tests/23-srp.conf.in @@ -15,89 +15,93 @@ package ssltests; our @tests = ( { - name => "srp", - server => { - "CipherString" => "SRP", - extra => { - "SRPUser" => "user", - "SRPPassword" => "password", - }, + name => "srp", + server => { + "CipherString" => "SRP", + "MaxProtocol" => "TLSv1.2", + extra => { + "SRPUser" => "user", + "SRPPassword" => "password", + }, + }, + client => { + "CipherString" => "SRP", + "MaxProtocol" => "TLSv1.2", + extra => { + "SRPUser" => "user", + "SRPPassword" => "password", + }, + }, + test => { + "ExpectedResult" => "Success" }, - client => { - "CipherString" => "SRP", - "MaxProtocol" => "TLSv1.2", - extra => { - "SRPUser" => "user", - "SRPPassword" => "password", - }, - }, - test => { - "ExpectedResult" => "Success" - }, }, { - name => "srp-bad-password", - server => { - "CipherString" => "SRP", - extra => { - "SRPUser" => "user", - "SRPPassword" => "password", - }, + name => "srp-bad-password", + server => { + "CipherString" => "SRP", + "MaxProtocol" => "TLSv1.2", + extra => { + "SRPUser" => "user", + "SRPPassword" => "password", + }, + }, + client => { + "CipherString" => "SRP", + "MaxProtocol" => "TLSv1.2", + extra => { + "SRPUser" => "user", + "SRPPassword" => "passw0rd", + }, + }, + test => { + # Server fails first with bad client Finished. + "ExpectedResult" => "ServerFail" }, - client => { - "CipherString" => "SRP", - "MaxProtocol" => "TLSv1.2", - extra => { - "SRPUser" => "user", - "SRPPassword" => "passw0rd", - }, - }, - test => { - # Server fails first with bad client Finished. - "ExpectedResult" => "ServerFail" - }, }, { - name => "srp-auth", - server => { - "CipherString" => "aSRP", - extra => { - "SRPUser" => "user", - "SRPPassword" => "password", - }, + name => "srp-auth", + server => { + "CipherString" => "aSRP", + "MaxProtocol" => "TLSv1.2", + extra => { + "SRPUser" => "user", + "SRPPassword" => "password", + }, + }, + client => { + "CipherString" => "aSRP", + "MaxProtocol" => "TLSv1.2", + extra => { + "SRPUser" => "user", + "SRPPassword" => "password", + }, + }, + test => { + "ExpectedResult" => "Success" }, - client => { - "CipherString" => "aSRP", - "MaxProtocol" => "TLSv1.2", - extra => { - "SRPUser" => "user", - "SRPPassword" => "password", - }, - }, - test => { - "ExpectedResult" => "Success" - }, }, { - name => "srp-auth-bad-password", - server => { - "CipherString" => "aSRP", - extra => { - "SRPUser" => "user", - "SRPPassword" => "password", - }, + name => "srp-auth-bad-password", + server => { + "CipherString" => "aSRP", + "MaxProtocol" => "TLSv1.2", + extra => { + "SRPUser" => "user", + "SRPPassword" => "password", + }, + }, + client => { + "CipherString" => "aSRP", + "MaxProtocol" => "TLSv1.2", + extra => { + "SRPUser" => "user", + "SRPPassword" => "passw0rd", + }, + }, + test => { + # Server fails first with bad client Finished. + "ExpectedResult" => "ServerFail" }, - client => { - "CipherString" => "aSRP", - "MaxProtocol" => "TLSv1.2", - extra => { - "SRPUser" => "user", - "SRPPassword" => "passw0rd", - }, - }, - test => { - # Server fails first with bad client Finished. - "ExpectedResult" => "ServerFail" - }, }, -); \ No newline at end of file +); diff --git a/test/ssl-tests/protocol_version.pm b/test/ssl-tests/protocol_version.pm index f0b3030..edc0dd2 100644 --- a/test/ssl-tests/protocol_version.pm +++ b/test/ssl-tests/protocol_version.pm @@ -129,6 +129,37 @@ sub generate_version_tests { } } } + return @tests if disabled("tls1_3") || disabled("tls1_2") || $dtls; + + #Add some version/ciphersuite sanity check tests + push @tests, { + "name" => "ciphersuite-sanity-check-client", + "client" => { + #Offering only <=TLSv1.2 ciphersuites with TLSv1.3 should fail + "CipherString" => "AES128-SHA", + }, + "server" => { + "MaxProtocol" => "TLSv1.2" + }, + "test" => { + "ExpectedResult" => "ClientFail", + } + }; + push @tests, { + "name" => "ciphersuite-sanity-check-server", + "client" => { + "CipherString" => "AES128-SHA", + "MaxProtocol" => "TLSv1.2" + }, + "server" => { + #Allowing only <=TLSv1.2 ciphersuites with TLSv1.3 should fail + "CipherString" => "AES128-SHA", + }, + "test" => { + "ExpectedResult" => "ServerFail", + } + }; + return @tests; } From builds at travis-ci.org Wed Apr 26 13:38:34 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 26 Apr 2017 13:38:34 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10584 (master - bf846a6) In-Reply-To: Message-ID: <5900a2da5b7_43ff13d3c3084564476@9940f7d2-5722-4259-bcd5-06cb0c52b042.mail> Build Update for openssl/openssl ------------------------------------- Build: #10584 Status: Still Failing Duration: 19 minutes and 55 seconds Commit: bf846a6 (master) Author: Matt Caswell Message: Don't overwrite the alert value if there is no alert to send The function tls_early_post_process_client_hello() was overwriting the passed "al" parameter even if it was successful. The caller of that function, tls_post_process_client_hello(), sets "al" to a sensible default (HANDSHAKE_FAILURE), but this was being overwritten to be INTERNAL_ERROR. The result is a "no shared cipher" error (and probably other similar errors) were being reported back to the client with an incorrect INTERNAL_ERROR alert. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3314) View the changeset: https://github.com/openssl/openssl/compare/d91b7423af79...bf846a6d47a0 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/226003159 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Wed Apr 26 13:57:50 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 26 Apr 2017 13:57:50 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10586 (master - 975922f) In-Reply-To: Message-ID: <5900a75dda94a_43fcc34edfe00665159@0660b054-be05-46f5-b57d-7594111f33c9.mail> Build Update for openssl/openssl ------------------------------------- Build: #10586 Status: Still Failing Duration: 21 minutes and 3 seconds Commit: 975922f (master) Author: Matt Caswell Message: Add tests for version/ciphersuite sanity checks The previous commits added sanity checks for where the max enabled protocol version does not have any configured ciphersuites. We should check that we fail in those circumstances. Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3316) View the changeset: https://github.com/openssl/openssl/compare/bf846a6d47a0...975922fd0c6a View the full build log and details: https://travis-ci.org/openssl/openssl/builds/226010315 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From rsalz at openssl.org Wed Apr 26 15:10:36 2017 From: rsalz at openssl.org (Rich Salz) Date: Wed, 26 Apr 2017 15:10:36 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493219436.872487.19380.nullmailer@dev.openssl.org> The branch master has been updated via 58e754fcb8f0456a50a0cac71a77be073e7c45b8 (commit) from 975922fd0c6a3089a49b9bcdcd77c672d97e36b2 (commit) - Log ----------------------------------------------------------------- commit 58e754fcb8f0456a50a0cac71a77be073e7c45b8 Author: Rich Salz Date: Wed Apr 26 09:11:50 2017 -0400 Convert modular exponentiation tests to new framework Updated due to test framework changes Updates after code review Missed some checks Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3269) ----------------------------------------------------------------------- Summary of changes: test/build.info | 2 +- test/exptest.c | 269 +++++++++++++++++++++++--------------------------------- 2 files changed, 110 insertions(+), 161 deletions(-) diff --git a/test/build.info b/test/build.info index 934cb46..9f4a434 100644 --- a/test/build.info +++ b/test/build.info @@ -153,7 +153,7 @@ INCLUDE_MAIN___test_libtestutil_OLB = /INCLUDE=MAIN SOURCE[exptest]=exptest.c INCLUDE[exptest]=../include - DEPEND[exptest]=../libcrypto + DEPEND[exptest]=../libcrypto libtestutil.a SOURCE[rsa_test]=rsa_test.c INCLUDE[rsa_test]=.. ../include diff --git a/test/exptest.c b/test/exptest.c index e58e0c2..fa4dfe3 100644 --- a/test/exptest.c +++ b/test/exptest.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -18,34 +18,40 @@ #include #include +#include "testutil.h" + #define NUM_BITS (BN_BITS2 * 4) -static const char rnd_seed[] = - "string to make the random number generator think it has entropy"; +#define BN_print_var(v) bn_print_var(#v, v) + +static void bn_print_var(const char *var, const BIGNUM *bn) +{ + fprintf(stderr, "%s (%3d) = ", var, BN_num_bits(bn)); + BN_print_fp(stderr, bn); + fprintf(stderr, "\n"); +} /* * Test that r == 0 in test_exp_mod_zero(). Returns one on success, * returns zero and prints debug output otherwise. */ static int a_is_zero_mod_one(const char *method, const BIGNUM *r, - const BIGNUM *a) { + const BIGNUM *a) +{ if (!BN_is_zero(r)) { fprintf(stderr, "%s failed:\n", method); fprintf(stderr, "a ** 0 mod 1 = r (should be 0)\n"); - fprintf(stderr, "a = "); - BN_print_fp(stderr, a); - fprintf(stderr, "\nr = "); - BN_print_fp(stderr, r); - fprintf(stderr, "\n"); + BN_print_var(a); + BN_print_var(r); return 0; } return 1; } /* - * test_exp_mod_zero tests that x**0 mod 1 == 0. It returns zero on success. + * test_mod_exp_zero tests that x**0 mod 1 == 0. It returns zero on success. */ -static int test_exp_mod_zero() +static int test_mod_exp_zero() { BIGNUM *a = NULL, *p = NULL, *m = NULL; BIGNUM *r = NULL; @@ -53,77 +59,64 @@ static int test_exp_mod_zero() BN_CTX *ctx = BN_CTX_new(); int ret = 1, failed = 0; - m = BN_new(); - if (!m) + if (!TEST_ptr(m = BN_new()) + || !TEST_ptr(a = BN_new()) + || !TEST_ptr(p = BN_new()) + || !TEST_ptr(r = BN_new())) goto err; - BN_one(m); - a = BN_new(); - if (!a) - goto err; + BN_one(m); BN_one(a); - - p = BN_new(); - if (!p) - goto err; BN_zero(p); - r = BN_new(); - if (!r) - goto err; - - if (!BN_rand(a, 1024, BN_RAND_TOP_ONE, BN_RAND_BOTTOM_ANY)) + if (!TEST_true(BN_rand(a, 1024, BN_RAND_TOP_ONE, BN_RAND_BOTTOM_ANY))) goto err; - if (!BN_mod_exp(r, a, p, m, ctx)) + if (!TEST_true(BN_mod_exp(r, a, p, m, ctx))) goto err; - if (!a_is_zero_mod_one("BN_mod_exp", r, a)) + if (!TEST_true(a_is_zero_mod_one("BN_mod_exp", r, a))) failed = 1; - if (!BN_mod_exp_recp(r, a, p, m, ctx)) + if (!TEST_true(BN_mod_exp_recp(r, a, p, m, ctx))) goto err; - if (!a_is_zero_mod_one("BN_mod_exp_recp", r, a)) + if (!TEST_true(a_is_zero_mod_one("BN_mod_exp_recp", r, a))) failed = 1; - if (!BN_mod_exp_simple(r, a, p, m, ctx)) + if (!TEST_true(BN_mod_exp_simple(r, a, p, m, ctx))) goto err; - if (!a_is_zero_mod_one("BN_mod_exp_simple", r, a)) + if (!TEST_true(a_is_zero_mod_one("BN_mod_exp_simple", r, a))) failed = 1; - if (!BN_mod_exp_mont(r, a, p, m, ctx, NULL)) + if (!TEST_true(BN_mod_exp_mont(r, a, p, m, ctx, NULL))) goto err; - if (!a_is_zero_mod_one("BN_mod_exp_mont", r, a)) + if (!TEST_true(a_is_zero_mod_one("BN_mod_exp_mont", r, a))) failed = 1; - if (!BN_mod_exp_mont_consttime(r, a, p, m, ctx, NULL)) { + if (!TEST_true(BN_mod_exp_mont_consttime(r, a, p, m, ctx, NULL))) goto err; - } - if (!a_is_zero_mod_one("BN_mod_exp_mont_consttime", r, a)) + if (!TEST_true(a_is_zero_mod_one("BN_mod_exp_mont_consttime", r, a))) failed = 1; /* * A different codepath exists for single word multiplication * in non-constant-time only. */ - if (!BN_mod_exp_mont_word(r, one_word, p, m, ctx, NULL)) + if (!TEST_true(BN_mod_exp_mont_word(r, one_word, p, m, ctx, NULL))) goto err; - if (!BN_is_zero(r)) { + if (!TEST_true(BN_is_zero(r))) { fprintf(stderr, "BN_mod_exp_mont_word failed:\n"); fprintf(stderr, "1 ** 0 mod 1 = r (should be 0)\n"); - fprintf(stderr, "r = "); - BN_print_fp(stderr, r); - fprintf(stderr, "\n"); - return 0; + BN_print_var(r); + goto err; } - ret = failed; - + ret = !failed; err: BN_free(r); BN_free(a); @@ -134,112 +127,77 @@ static int test_exp_mod_zero() return ret; } -int main(int argc, char *argv[]) +static int test_mod_exp(int round) { BN_CTX *ctx; - BIO *out = NULL; - int i, ret; unsigned char c; - BIGNUM *r_mont, *r_mont_const, *r_recp, *r_simple, *a, *b, *m; - - RAND_seed(rnd_seed, sizeof rnd_seed); /* or BN_rand may fail, and we - * don't even check its return - * value (which we should) */ - - ctx = BN_CTX_new(); - if (ctx == NULL) - EXIT(1); - r_mont = BN_new(); - r_mont_const = BN_new(); - r_recp = BN_new(); - r_simple = BN_new(); - a = BN_new(); - b = BN_new(); - m = BN_new(); - if ((r_mont == NULL) || (r_recp == NULL) || (a == NULL) || (b == NULL)) + int ret = 0; + BIGNUM *r_mont = NULL; + BIGNUM *r_mont_const = NULL; + BIGNUM *r_recp = NULL; + BIGNUM *r_simple = NULL; + BIGNUM *a = NULL; + BIGNUM *b = NULL; + BIGNUM *m = NULL; + + if (!TEST_ptr(ctx = BN_CTX_new())) + goto err; + + if (!TEST_ptr(r_mont = BN_new()) + || !TEST_ptr(r_mont_const = BN_new()) + || !TEST_ptr(r_recp = BN_new()) + || !TEST_ptr(r_simple = BN_new()) + || !TEST_ptr(a = BN_new()) + || !TEST_ptr(b = BN_new()) + || !TEST_ptr(m = BN_new())) goto err; - out = BIO_new(BIO_s_file()); - - if (out == NULL) - EXIT(1); - BIO_set_fp(out, stdout, BIO_NOCLOSE | BIO_FP_TEXT); - - for (i = 0; i < 200; i++) { - RAND_bytes(&c, 1); - c = (c % BN_BITS) - BN_BITS2; - BN_rand(a, NUM_BITS + c, BN_RAND_TOP_ONE, BN_RAND_BOTTOM_ANY); - - RAND_bytes(&c, 1); - c = (c % BN_BITS) - BN_BITS2; - BN_rand(b, NUM_BITS + c, BN_RAND_TOP_ONE, BN_RAND_BOTTOM_ANY); - - RAND_bytes(&c, 1); - c = (c % BN_BITS) - BN_BITS2; - BN_rand(m, NUM_BITS + c, BN_RAND_TOP_ONE, BN_RAND_BOTTOM_ODD); - - BN_mod(a, a, m, ctx); - BN_mod(b, b, m, ctx); - - ret = BN_mod_exp_mont(r_mont, a, b, m, ctx, NULL); - if (ret <= 0) { - printf("BN_mod_exp_mont() problems\n"); - ERR_print_errors(out); - EXIT(1); - } - - ret = BN_mod_exp_recp(r_recp, a, b, m, ctx); - if (ret <= 0) { - printf("BN_mod_exp_recp() problems\n"); - ERR_print_errors(out); - EXIT(1); - } - - ret = BN_mod_exp_simple(r_simple, a, b, m, ctx); - if (ret <= 0) { - printf("BN_mod_exp_simple() problems\n"); - ERR_print_errors(out); - EXIT(1); - } - - ret = BN_mod_exp_mont_consttime(r_mont_const, a, b, m, ctx, NULL); - if (ret <= 0) { - printf("BN_mod_exp_mont_consttime() problems\n"); - ERR_print_errors(out); - EXIT(1); - } - - if (BN_cmp(r_simple, r_mont) == 0 - && BN_cmp(r_simple, r_recp) == 0 - && BN_cmp(r_simple, r_mont_const) == 0) { - printf("."); - fflush(stdout); - } else { - if (BN_cmp(r_simple, r_mont) != 0) - printf("\nsimple and mont results differ\n"); - if (BN_cmp(r_simple, r_mont_const) != 0) - printf("\nsimple and mont const time results differ\n"); - if (BN_cmp(r_simple, r_recp) != 0) - printf("\nsimple and recp results differ\n"); - - printf("a (%3d) = ", BN_num_bits(a)); - BN_print(out, a); - printf("\nb (%3d) = ", BN_num_bits(b)); - BN_print(out, b); - printf("\nm (%3d) = ", BN_num_bits(m)); - BN_print(out, m); - printf("\nsimple ="); - BN_print(out, r_simple); - printf("\nrecp ="); - BN_print(out, r_recp); - printf("\nmont ="); - BN_print(out, r_mont); - printf("\nmont_ct ="); - BN_print(out, r_mont_const); - printf("\n"); - EXIT(1); - } + RAND_bytes(&c, 1); + c = (c % BN_BITS) - BN_BITS2; + BN_rand(a, NUM_BITS + c, BN_RAND_TOP_ONE, BN_RAND_BOTTOM_ANY); + + RAND_bytes(&c, 1); + c = (c % BN_BITS) - BN_BITS2; + BN_rand(b, NUM_BITS + c, BN_RAND_TOP_ONE, BN_RAND_BOTTOM_ANY); + + RAND_bytes(&c, 1); + c = (c % BN_BITS) - BN_BITS2; + BN_rand(m, NUM_BITS + c, BN_RAND_TOP_ONE, BN_RAND_BOTTOM_ODD); + + BN_mod(a, a, m, ctx); + BN_mod(b, b, m, ctx); + + if (!TEST_true(BN_mod_exp_mont(r_mont, a, b, m, ctx, NULL)) + || !TEST_true(BN_mod_exp_recp(r_recp, a, b, m, ctx)) + || !TEST_true(BN_mod_exp_simple(r_simple, a, b, m, ctx)) + || !TEST_true(BN_mod_exp_mont_consttime(r_mont_const, a, b, m, ctx, NULL))) + goto err; + + if (TEST_int_eq(BN_cmp(r_simple, r_mont), 0) + && TEST_int_eq(BN_cmp(r_simple, r_recp), 0) + && TEST_int_eq(BN_cmp(r_simple, r_mont_const), 0)) { + printf("."); + fflush(stdout); + } else { + if (BN_cmp(r_simple, r_mont) != 0) + fprintf(stderr, "simple and mont results differ\n"); + if (BN_cmp(r_simple, r_mont_const) != 0) + fprintf(stderr, "simple and mont const time results differ\n"); + if (BN_cmp(r_simple, r_recp) != 0) + fprintf(stderr, "simple and recp results differ\n"); + + BN_print_var(a); + BN_print_var(b); + BN_print_var(m); + BN_print_var(r_simple); + BN_print_var(r_recp); + BN_print_var(r_mont); + BN_print_var(r_mont_const); + goto err; } + + ret = 1; + err: BN_free(r_mont); BN_free(r_mont_const); BN_free(r_recp); @@ -249,20 +207,11 @@ int main(int argc, char *argv[]) BN_free(m); BN_CTX_free(ctx); - if (test_exp_mod_zero() != 0) - goto err; - -#ifndef OPENSSL_NO_CRYPTO_MDEBUG - if (CRYPTO_mem_leaks(out) <= 0) - goto err; -#endif - BIO_free(out); - printf("\n"); - - printf("done\n"); + return ret; +} - EXIT(0); - err: - ERR_print_errors(out); - EXIT(1); +void register_tests(void) +{ + ADD_TEST(test_mod_exp_zero); + ADD_ALL_TESTS(test_mod_exp, 200); } From rsalz at openssl.org Wed Apr 26 15:33:27 2017 From: rsalz at openssl.org (Rich Salz) Date: Wed, 26 Apr 2017 15:33:27 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493220807.555313.3092.nullmailer@dev.openssl.org> The branch master has been updated via b6e3250671654e0344127be9dd49b3fb4a82f94b (commit) from 58e754fcb8f0456a50a0cac71a77be073e7c45b8 (commit) - Log ----------------------------------------------------------------- commit b6e3250671654e0344127be9dd49b3fb4a82f94b Author: Rich Salz Date: Wed Apr 26 11:21:29 2017 -0400 Fix unit-tests when no-srp configured Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3274) ----------------------------------------------------------------------- Summary of changes: test/srptest.c | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/test/srptest.c b/test/srptest.c index c908c39..d28c3bc 100644 --- a/test/srptest.c +++ b/test/srptest.c @@ -8,22 +8,15 @@ */ #include -#ifdef OPENSSL_NO_SRP +# include "testutil.h" +#ifdef OPENSSL_NO_SRP # include - -int main(int argc, char *argv[]) -{ - printf("No SRP support\n"); - return (0); -} - #else # include # include # include -# include "testutil.h" static void showbn(const char *name, const BIGNUM *bn) { @@ -276,10 +269,14 @@ static int run_srp_tests(void) return 1; } +#endif void register_tests(void) { +#ifdef OPENSSL_NO_SRP + printf("No SRP support\n"); +#else ADD_TEST(run_srp_tests); ADD_TEST(run_srp_kat); -} #endif +} From builds at travis-ci.org Wed Apr 26 15:34:34 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 26 Apr 2017 15:34:34 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10593 (master - 58e754f) In-Reply-To: Message-ID: <5900be3315de6_43fcc34f54cb4820324@0660b054-be05-46f5-b57d-7594111f33c9.mail> Build Update for openssl/openssl ------------------------------------- Build: #10593 Status: Still Failing Duration: 20 minutes and 45 seconds Commit: 58e754f (master) Author: Rich Salz Message: Convert modular exponentiation tests to new framework Updated due to test framework changes Updates after code review Missed some checks Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3269) View the changeset: https://github.com/openssl/openssl/compare/975922fd0c6a...58e754fcb8f0 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/226047898 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From matt at openssl.org Wed Apr 26 15:37:56 2017 From: matt at openssl.org (Matt Caswell) Date: Wed, 26 Apr 2017 15:37:56 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1493221076.281788.6857.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 56e5d5498d557fe1ab0a360ddcda2931d976ec62 (commit) via e23a4e98a90c448a196aede3edeb7802ed0da121 (commit) via 3626ed03a6d13fa757d3327db2d5523072063132 (commit) from 6fc37bee4a5f81d8f00e6ad45865b6b697163f06 (commit) - Log ----------------------------------------------------------------- commit 56e5d5498d557fe1ab0a360ddcda2931d976ec62 Author: Rob Percival Date: Tue Apr 4 23:24:28 2017 +0100 CT_POLICY_EVAL_CTX_set_time expects milliseconds, but given seconds This resulted in the SCT timestamp check always failing, because the timestamp appeared to be in the future. Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3260) commit e23a4e98a90c448a196aede3edeb7802ed0da121 Author: Rob Percival Date: Thu Apr 6 13:21:27 2017 +0100 Add SSL tests for certificates with embedded SCTs The only SSL tests prior to this tested using certificates with no embedded Signed Certificate Timestamps (SCTs), which meant they couldn't confirm whether Certificate Transparency checks in "strict" mode were working. These tests reveal a bug in the validation of SCT timestamps, which is fixed by the next commit. Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3260) commit 3626ed03a6d13fa757d3327db2d5523072063132 Author: Dr. Stephen Henson Date: Thu Feb 16 15:27:49 2017 +0000 Add and use function test_pem to work out test filenames. Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3260) ----------------------------------------------------------------------- Summary of changes: ssl/ssl_lib.c | 3 +- test/certs/embeddedSCTs1-key.pem | 15 +++ test/ssl-tests/04-client_auth.conf.in | 14 +-- test/ssl-tests/12-ct.conf | 176 +++++++++++++++++++---------- test/ssl-tests/12-ct.conf.in | 149 +++++++++++++++--------- test/ssl-tests/17-renegotiate.conf.in | 14 +-- test/ssl-tests/18-dtls-renegotiate.conf.in | 14 +-- test/ssl-tests/ssltests_base.pm | 13 ++- 8 files changed, 254 insertions(+), 144 deletions(-) create mode 100644 test/certs/embeddedSCTs1-key.pem diff --git a/ssl/ssl_lib.c b/ssl/ssl_lib.c index 9cfebea..fc651bb 100644 --- a/ssl/ssl_lib.c +++ b/ssl/ssl_lib.c @@ -4183,7 +4183,8 @@ int ssl_validate_ct(SSL *s) CT_POLICY_EVAL_CTX_set1_cert(ctx, cert); CT_POLICY_EVAL_CTX_set1_issuer(ctx, issuer); CT_POLICY_EVAL_CTX_set_shared_CTLOG_STORE(ctx, s->ctx->ctlog_store); - CT_POLICY_EVAL_CTX_set_time(ctx, SSL_SESSION_get_time(SSL_get0_session(s))); + CT_POLICY_EVAL_CTX_set_time( + ctx, (uint64_t)SSL_SESSION_get_time(SSL_get0_session(s)) * 1000); scts = SSL_get0_peer_scts(s); diff --git a/test/certs/embeddedSCTs1-key.pem b/test/certs/embeddedSCTs1-key.pem new file mode 100644 index 0000000..e3e66d5 --- /dev/null +++ b/test/certs/embeddedSCTs1-key.pem @@ -0,0 +1,15 @@ +-----BEGIN RSA PRIVATE KEY----- +MIICWwIBAAKBgQC+75jnwmh3rjhfdTJaDB0ym+3xj6r015a/BH634c4VyVui+A7k +WL19uG+KSyUhkaeb1wDDjpwDibRc1NyaEgqyHgy0HNDnKAWkEM2cW9tdSSdyba8X +EPYBhzd+olsaHjnu0LiBGdwVTcaPfajjDK8VijPmyVCfSgWwFAn/Xdh+tQIDAQAB +AoGAK/daG0vt6Fkqy/hdrtSJSKUVRoGRmS2nnba4Qzlwzh1+x2kdbMFuaOu2a37g +PvmeQclheKZ3EG1+Jb4yShwLcBCV6pkRJhOKuhvqGnjngr6uBH4gMCjpZVj7GDMf +flYHhdJCs3Cz/TY0wKN3o1Fldil2DHR/AEOc1nImeSp5/EUCQQDjKS3W957kYtTU +X5BeRjvg03Ug8tJq6IFuhTFvUJ+XQ5bAc0DmxAbQVKqRS7Wje59zTknVvS+MFdeQ +pz4dGuV7AkEA1y0X2yarIls+0A/S1uwkvwRTIkfS+QwFJ1zVya8sApRdKAcidIzA +b70hkKLilU9+LrXg5iZdFp8l752qJiw9jwJAXjItN/7mfH4fExGto+or2kbVQxxt +9LcFNPc2UJp2ExuL37HrL8YJrUnukOF8KJaSwBWuuFsC5GwKP4maUCdfEQJAUwBR +83c3DEmmMRvpeH4erpA8gTyzZN3+HvDwhpvLnjMcvBQEdnDUykVqbSBnxrCjO+Fs +n1qtDczWFVf8Cj2GgQJAQ14Awx32Cn9sF+3M+sEVtlAf6CqiEbkYeYdSCbsplMmZ +1UoaxiwXY3z+B7epsRnnPR3KaceAlAxw2/zQJMFNOQ== +-----END RSA PRIVATE KEY----- diff --git a/test/ssl-tests/04-client_auth.conf.in b/test/ssl-tests/04-client_auth.conf.in index cd3d42f..8738aaa 100644 --- a/test/ssl-tests/04-client_auth.conf.in +++ b/test/ssl-tests/04-client_auth.conf.in @@ -19,8 +19,6 @@ push @is_disabled, anydisabled("ssl3", "tls1", "tls1_1", "tls1_2"); our @tests = (); -my $dir_sep = $^O ne "VMS" ? "/" : ""; - sub generate_tests() { foreach (0..$#protocols) { @@ -68,7 +66,7 @@ sub generate_tests() { server => { "MinProtocol" => $protocol, "MaxProtocol" => $protocol, - "VerifyCAFile" => "\${ENV::TEST_CERTS_DIR}${dir_sep}root-cert.pem", + "VerifyCAFile" => test_pem("root-cert.pem"), "VerifyMode" => "Require", }, client => { @@ -87,14 +85,14 @@ sub generate_tests() { server => { "MinProtocol" => $protocol, "MaxProtocol" => $protocol, - "VerifyCAFile" => "\${ENV::TEST_CERTS_DIR}${dir_sep}root-cert.pem", + "VerifyCAFile" => test_pem("root-cert.pem"), "VerifyMode" => "Request", }, client => { "MinProtocol" => $protocol, "MaxProtocol" => $protocol, - "Certificate" => "\${ENV::TEST_CERTS_DIR}${dir_sep}ee-client-chain.pem", - "PrivateKey" => "\${ENV::TEST_CERTS_DIR}${dir_sep}ee-key.pem", + "Certificate" => test_pem("ee-client-chain.pem"), + "PrivateKey" => test_pem("ee-key.pem"), }, test => { "ExpectedResult" => "Success" }, }; @@ -110,8 +108,8 @@ sub generate_tests() { client => { "MinProtocol" => $protocol, "MaxProtocol" => $protocol, - "Certificate" => "\${ENV::TEST_CERTS_DIR}${dir_sep}ee-client-chain.pem", - "PrivateKey" => "\${ENV::TEST_CERTS_DIR}${dir_sep}ee-key.pem", + "Certificate" => test_pem("ee-client-chain.pem"), + "PrivateKey" => test_pem("ee-key.pem"), }, test => { "ExpectedResult" => "ServerFail", diff --git a/test/ssl-tests/12-ct.conf b/test/ssl-tests/12-ct.conf index 22fa18d..2e6e9de 100644 --- a/test/ssl-tests/12-ct.conf +++ b/test/ssl-tests/12-ct.conf @@ -1,135 +1,191 @@ # Generated with generate_ssl_tests.pl -num_tests = 4 - -test-0 = 0-ct-permissive -test-1 = 1-ct-strict -test-2 = 2-ct-permissive-resumption -test-3 = 3-ct-strict-resumption +num_tests = 6 + +test-0 = 0-ct-permissive-without-scts +test-1 = 1-ct-permissive-with-scts +test-2 = 2-ct-strict-without-scts +test-3 = 3-ct-strict-with-scts +test-4 = 4-ct-permissive-resumption +test-5 = 5-ct-strict-resumption # =========================================================== -[0-ct-permissive] -ssl_conf = 0-ct-permissive-ssl +[0-ct-permissive-without-scts] +ssl_conf = 0-ct-permissive-without-scts-ssl -[0-ct-permissive-ssl] -server = 0-ct-permissive-server -client = 0-ct-permissive-client +[0-ct-permissive-without-scts-ssl] +server = 0-ct-permissive-without-scts-server +client = 0-ct-permissive-without-scts-client -[0-ct-permissive-server] +[0-ct-permissive-without-scts-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[0-ct-permissive-client] +[0-ct-permissive-without-scts-client] CipherString = DEFAULT VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-0] ExpectedResult = Success -client = 0-ct-permissive-client-extra +client = 0-ct-permissive-without-scts-client-extra + +[0-ct-permissive-without-scts-client-extra] +CTValidation = Permissive + + +# =========================================================== + +[1-ct-permissive-with-scts] +ssl_conf = 1-ct-permissive-with-scts-ssl + +[1-ct-permissive-with-scts-ssl] +server = 1-ct-permissive-with-scts-server +client = 1-ct-permissive-with-scts-client + +[1-ct-permissive-with-scts-server] +Certificate = ${ENV::TEST_CERTS_DIR}/embeddedSCTs1.pem +CipherString = DEFAULT +PrivateKey = ${ENV::TEST_CERTS_DIR}/embeddedSCTs1-key.pem + +[1-ct-permissive-with-scts-client] +CipherString = DEFAULT +VerifyCAFile = ${ENV::TEST_CERTS_DIR}/embeddedSCTs1_issuer.pem +VerifyMode = Peer + +[test-1] +ExpectedResult = Success +client = 1-ct-permissive-with-scts-client-extra -[0-ct-permissive-client-extra] +[1-ct-permissive-with-scts-client-extra] CTValidation = Permissive # =========================================================== -[1-ct-strict] -ssl_conf = 1-ct-strict-ssl +[2-ct-strict-without-scts] +ssl_conf = 2-ct-strict-without-scts-ssl -[1-ct-strict-ssl] -server = 1-ct-strict-server -client = 1-ct-strict-client +[2-ct-strict-without-scts-ssl] +server = 2-ct-strict-without-scts-server +client = 2-ct-strict-without-scts-client -[1-ct-strict-server] +[2-ct-strict-without-scts-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[1-ct-strict-client] +[2-ct-strict-without-scts-client] CipherString = DEFAULT VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-1] +[test-2] ExpectedClientAlert = HandshakeFailure ExpectedResult = ClientFail -client = 1-ct-strict-client-extra +client = 2-ct-strict-without-scts-client-extra -[1-ct-strict-client-extra] +[2-ct-strict-without-scts-client-extra] CTValidation = Strict # =========================================================== -[2-ct-permissive-resumption] -ssl_conf = 2-ct-permissive-resumption-ssl +[3-ct-strict-with-scts] +ssl_conf = 3-ct-strict-with-scts-ssl -[2-ct-permissive-resumption-ssl] -server = 2-ct-permissive-resumption-server -client = 2-ct-permissive-resumption-client -resume-server = 2-ct-permissive-resumption-server -resume-client = 2-ct-permissive-resumption-client +[3-ct-strict-with-scts-ssl] +server = 3-ct-strict-with-scts-server +client = 3-ct-strict-with-scts-client -[2-ct-permissive-resumption-server] -Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem +[3-ct-strict-with-scts-server] +Certificate = ${ENV::TEST_CERTS_DIR}/embeddedSCTs1.pem CipherString = DEFAULT -PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem +PrivateKey = ${ENV::TEST_CERTS_DIR}/embeddedSCTs1-key.pem -[2-ct-permissive-resumption-client] +[3-ct-strict-with-scts-client] CipherString = DEFAULT -VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem +VerifyCAFile = ${ENV::TEST_CERTS_DIR}/embeddedSCTs1_issuer.pem VerifyMode = Peer -[test-2] +[test-3] +ExpectedResult = Success +client = 3-ct-strict-with-scts-client-extra + +[3-ct-strict-with-scts-client-extra] +CTValidation = Strict + + +# =========================================================== + +[4-ct-permissive-resumption] +ssl_conf = 4-ct-permissive-resumption-ssl + +[4-ct-permissive-resumption-ssl] +server = 4-ct-permissive-resumption-server +client = 4-ct-permissive-resumption-client +resume-server = 4-ct-permissive-resumption-server +resume-client = 4-ct-permissive-resumption-client + +[4-ct-permissive-resumption-server] +Certificate = ${ENV::TEST_CERTS_DIR}/embeddedSCTs1.pem +CipherString = DEFAULT +PrivateKey = ${ENV::TEST_CERTS_DIR}/embeddedSCTs1-key.pem + +[4-ct-permissive-resumption-client] +CipherString = DEFAULT +VerifyCAFile = ${ENV::TEST_CERTS_DIR}/embeddedSCTs1_issuer.pem +VerifyMode = Peer + +[test-4] ExpectedResult = Success HandshakeMode = Resume ResumptionExpected = Yes -client = 2-ct-permissive-resumption-client-extra -resume-client = 2-ct-permissive-resumption-client-extra +client = 4-ct-permissive-resumption-client-extra +resume-client = 4-ct-permissive-resumption-client-extra -[2-ct-permissive-resumption-client-extra] +[4-ct-permissive-resumption-client-extra] CTValidation = Permissive # =========================================================== -[3-ct-strict-resumption] -ssl_conf = 3-ct-strict-resumption-ssl +[5-ct-strict-resumption] +ssl_conf = 5-ct-strict-resumption-ssl -[3-ct-strict-resumption-ssl] -server = 3-ct-strict-resumption-server -client = 3-ct-strict-resumption-client -resume-server = 3-ct-strict-resumption-server -resume-client = 3-ct-strict-resumption-resume-client +[5-ct-strict-resumption-ssl] +server = 5-ct-strict-resumption-server +client = 5-ct-strict-resumption-client +resume-server = 5-ct-strict-resumption-server +resume-client = 5-ct-strict-resumption-resume-client -[3-ct-strict-resumption-server] -Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem +[5-ct-strict-resumption-server] +Certificate = ${ENV::TEST_CERTS_DIR}/embeddedSCTs1.pem CipherString = DEFAULT -PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem +PrivateKey = ${ENV::TEST_CERTS_DIR}/embeddedSCTs1-key.pem -[3-ct-strict-resumption-client] +[5-ct-strict-resumption-client] CipherString = DEFAULT -VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem +VerifyCAFile = ${ENV::TEST_CERTS_DIR}/embeddedSCTs1_issuer.pem VerifyMode = Peer -[3-ct-strict-resumption-resume-client] +[5-ct-strict-resumption-resume-client] CipherString = DEFAULT VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-3] +[test-5] ExpectedResult = Success HandshakeMode = Resume ResumptionExpected = Yes -client = 3-ct-strict-resumption-client-extra -resume-client = 3-ct-strict-resumption-resume-client-extra +client = 5-ct-strict-resumption-client-extra +resume-client = 5-ct-strict-resumption-resume-client-extra -[3-ct-strict-resumption-client-extra] -CTValidation = Permissive +[5-ct-strict-resumption-client-extra] +CTValidation = Strict -[3-ct-strict-resumption-resume-client-extra] +[5-ct-strict-resumption-resume-client-extra] CTValidation = Strict diff --git a/test/ssl-tests/12-ct.conf.in b/test/ssl-tests/12-ct.conf.in index 9964d01..7c03049 100644 --- a/test/ssl-tests/12-ct.conf.in +++ b/test/ssl-tests/12-ct.conf.in @@ -16,65 +16,104 @@ package ssltests; our @tests = ( - # Currently only have tests for certs without SCTs. { - name => "ct-permissive", - server => { }, - client => { - extra => { - "CTValidation" => "Permissive", - }, - }, - test => { - "ExpectedResult" => "Success", - }, - }, + name => "ct-permissive-without-scts", + server => { }, + client => { + extra => { + "CTValidation" => "Permissive", + }, + }, + test => { + "ExpectedResult" => "Success", + }, + }, + { + name => "ct-permissive-with-scts", + server => { + "Certificate" => test_pem("embeddedSCTs1.pem"), + "PrivateKey" => test_pem("embeddedSCTs1-key.pem"), + }, + client => { + "VerifyCAFile" => test_pem("embeddedSCTs1_issuer.pem"), + extra => { + "CTValidation" => "Permissive", + }, + }, + test => { + "ExpectedResult" => "Success", + }, + }, { - name => "ct-strict", - server => { }, - client => { - extra => { - "CTValidation" => "Strict", - }, - }, - test => { - "ExpectedResult" => "ClientFail", - "ExpectedClientAlert" => "HandshakeFailure", - }, + name => "ct-strict-without-scts", + server => { }, + client => { + extra => { + "CTValidation" => "Strict", + }, + }, + test => { + "ExpectedResult" => "ClientFail", + "ExpectedClientAlert" => "HandshakeFailure", + }, }, { - name => "ct-permissive-resumption", - server => { }, - client => { - extra => { - "CTValidation" => "Permissive", - }, - }, - test => { - "HandshakeMode" => "Resume", - "ResumptionExpected" => "Yes", - "ExpectedResult" => "Success", - }, - }, + name => "ct-strict-with-scts", + server => { + "Certificate" => test_pem("embeddedSCTs1.pem"), + "PrivateKey" => test_pem("embeddedSCTs1-key.pem"), + }, + client => { + "VerifyCAFile" => test_pem("embeddedSCTs1_issuer.pem"), + extra => { + "CTValidation" => "Strict", + }, + }, + test => { + "ExpectedResult" => "Success", + }, + }, + { + name => "ct-permissive-resumption", + server => { + "Certificate" => test_pem("embeddedSCTs1.pem"), + "PrivateKey" => test_pem("embeddedSCTs1-key.pem"), + }, + client => { + "VerifyCAFile" => test_pem("embeddedSCTs1_issuer.pem"), + extra => { + "CTValidation" => "Permissive", + }, + }, + test => { + "HandshakeMode" => "Resume", + "ResumptionExpected" => "Yes", + "ExpectedResult" => "Success", + }, + }, { - name => "ct-strict-resumption", - server => { }, - client => { - extra => { - "CTValidation" => "Permissive", - }, - }, - # SCTs are not present during resumption, so the resumption - # should succeed. - resume_client => { - extra => { - "CTValidation" => "Strict", - }, - }, - test => { - "HandshakeMode" => "Resume", - "ResumptionExpected" => "Yes", - "ExpectedResult" => "Success", - }, + name => "ct-strict-resumption", + server => { + "Certificate" => test_pem("embeddedSCTs1.pem"), + "PrivateKey" => test_pem("embeddedSCTs1-key.pem"), + }, + client => { + "VerifyCAFile" => test_pem("embeddedSCTs1_issuer.pem"), + extra => { + "CTValidation" => "Strict", + }, + }, + # SCTs are not present during resumption, so the resumption + # should succeed. + resume_client => { + extra => { + "CTValidation" => "Strict", + }, + }, + test => { + "HandshakeMode" => "Resume", + "ResumptionExpected" => "Yes", + "ExpectedResult" => "Success", + }, }, ); diff --git a/test/ssl-tests/17-renegotiate.conf.in b/test/ssl-tests/17-renegotiate.conf.in index c919a16..d0a4074 100644 --- a/test/ssl-tests/17-renegotiate.conf.in +++ b/test/ssl-tests/17-renegotiate.conf.in @@ -15,8 +15,6 @@ use warnings; package ssltests; use OpenSSL::Test::Utils; -my $dir_sep = $^O ne "VMS" ? "/" : ""; - our @tests = ( { name => "renegotiate-client-no-resume", @@ -71,12 +69,12 @@ our @tests = ( server => { "Options" => "NoResumptionOnRenegotiation", "MaxProtocol" => "TLSv1.2", - "VerifyCAFile" => "\${ENV::TEST_CERTS_DIR}${dir_sep}root-cert.pem", + "VerifyCAFile" => test_pem("root-cert.pem"), "VerifyMode" => "Require", }, client => { - "Certificate" => "\${ENV::TEST_CERTS_DIR}${dir_sep}ee-client-chain.pem", - "PrivateKey" => "\${ENV::TEST_CERTS_DIR}${dir_sep}ee-key.pem" + "Certificate" => test_pem("ee-client-chain.pem"), + "PrivateKey" => test_pem("ee-key.pem"), }, test => { "Method" => "TLS", @@ -90,12 +88,12 @@ our @tests = ( server => { "Options" => "NoResumptionOnRenegotiation", "MaxProtocol" => "TLSv1.2", - "VerifyCAFile" => "\${ENV::TEST_CERTS_DIR}${dir_sep}root-cert.pem", + "VerifyCAFile" => test_pem("root-cert.pem"), "VerifyMode" => "Once", }, client => { - "Certificate" => "\${ENV::TEST_CERTS_DIR}${dir_sep}ee-client-chain.pem", - "PrivateKey" => "\${ENV::TEST_CERTS_DIR}${dir_sep}ee-key.pem" + "Certificate" => test_pem("ee-client-chain.pem"), + "PrivateKey" => test_pem("ee-key.pem"), }, test => { "Method" => "TLS", diff --git a/test/ssl-tests/18-dtls-renegotiate.conf.in b/test/ssl-tests/18-dtls-renegotiate.conf.in index f32ab37..7a65a85 100644 --- a/test/ssl-tests/18-dtls-renegotiate.conf.in +++ b/test/ssl-tests/18-dtls-renegotiate.conf.in @@ -15,8 +15,6 @@ use warnings; package ssltests; use OpenSSL::Test::Utils; -my $dir_sep = $^O ne "VMS" ? "/" : ""; - our @tests = ( { name => "renegotiate-client-no-resume", @@ -65,12 +63,12 @@ our @tests = ( { name => "renegotiate-client-auth-require", server => { - "VerifyCAFile" => "\${ENV::TEST_CERTS_DIR}${dir_sep}root-cert.pem", + "VerifyCAFile" => test_pem("root-cert.pem"), "VerifyMode" => "Require", }, client => { - "Certificate" => "\${ENV::TEST_CERTS_DIR}${dir_sep}ee-client-chain.pem", - "PrivateKey" => "\${ENV::TEST_CERTS_DIR}${dir_sep}ee-key.pem" + "Certificate" => test_pem("ee-client-chain.pem"), + "PrivateKey" => test_pem("ee-key.pem"), }, test => { "Method" => "DTLS", @@ -82,12 +80,12 @@ our @tests = ( { name => "renegotiate-client-auth-once", server => { - "VerifyCAFile" => "\${ENV::TEST_CERTS_DIR}${dir_sep}root-cert.pem", + "VerifyCAFile" => test_pem("root-cert.pem"), "VerifyMode" => "Once", }, client => { - "Certificate" => "\${ENV::TEST_CERTS_DIR}${dir_sep}ee-client-chain.pem", - "PrivateKey" => "\${ENV::TEST_CERTS_DIR}${dir_sep}ee-key.pem" + "Certificate" => test_pem("ee-client-chain.pem"), + "PrivateKey" => test_pem("ee-key.pem"), }, test => { "Method" => "DTLS", diff --git a/test/ssl-tests/ssltests_base.pm b/test/ssl-tests/ssltests_base.pm index 303224a..dc81642 100644 --- a/test/ssl-tests/ssltests_base.pm +++ b/test/ssl-tests/ssltests_base.pm @@ -10,16 +10,21 @@ package ssltests; -my $dir_sep = $^O ne "VMS" ? "/" : ""; +sub test_pem +{ + my ($file) = @_; + my $dir_sep = $^O ne "VMS" ? "/" : ""; + return "\${ENV::TEST_CERTS_DIR}" . $dir_sep . $file, +} our %base_server = ( - "Certificate" => "\${ENV::TEST_CERTS_DIR}${dir_sep}servercert.pem", - "PrivateKey" => "\${ENV::TEST_CERTS_DIR}${dir_sep}serverkey.pem", + "Certificate" => test_pem("servercert.pem"), + "PrivateKey" => test_pem("serverkey.pem"), "CipherString" => "DEFAULT", ); our %base_client = ( - "VerifyCAFile" => "\${ENV::TEST_CERTS_DIR}${dir_sep}rootcert.pem", + "VerifyCAFile" => test_pem("rootcert.pem"), "VerifyMode" => "Peer", "CipherString" => "DEFAULT", ); From matt at openssl.org Wed Apr 26 15:51:37 2017 From: matt at openssl.org (Matt Caswell) Date: Wed, 26 Apr 2017 15:51:37 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493221897.066966.17038.nullmailer@dev.openssl.org> The branch master has been updated via b89646684d920d3014979f8a73b96aecb61c7b1f (commit) via 5b3e5f00a63446a5de633277a33dc013c22e7231 (commit) via 35ea9edfb255aa3faab69afd4f2bd2fd64dafd4b (commit) via 150840b9443d371bfa26e2a33051aa137b5606fc (commit) via 6ff71494687cf9ed83ef20ea7d5f75b754c06525 (commit) via e586eac8858c3ea1f6094f5a3ea489e8e7f1973a (commit) via 3348fc7e8940b66ab4545a618ba87a63fb677a79 (commit) from b6e3250671654e0344127be9dd49b3fb4a82f94b (commit) - Log ----------------------------------------------------------------- commit b89646684d920d3014979f8a73b96aecb61c7b1f Author: Matt Caswell Date: Wed Apr 26 15:16:18 2017 +0100 Clarify that SSL_CTX_remove_session() marks a session as non-resumable Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3008) commit 5b3e5f00a63446a5de633277a33dc013c22e7231 Author: Matt Caswell Date: Wed Apr 26 15:14:03 2017 +0100 More SSL_SESSION documentation tweaks based on feedback Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3008) commit 35ea9edfb255aa3faab69afd4f2bd2fd64dafd4b Author: Matt Caswell Date: Thu Mar 23 11:56:46 2017 +0000 Tweak SSL_get_session.pod wording Based on feedback received. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3008) commit 150840b9443d371bfa26e2a33051aa137b5606fc Author: Matt Caswell Date: Thu Mar 23 11:22:26 2017 +0000 Always duplicate the session on NewSessionTicket in TLSv1.3 Because NST messages arrive post-handshake, the session may have already gone into the cache. Once in the cache a session must be immutable - otherwise you could get multi-thread issues. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3008) commit 6ff71494687cf9ed83ef20ea7d5f75b754c06525 Author: Matt Caswell Date: Tue Mar 21 13:51:03 2017 +0000 Documentation updates for TLSv1.3 sessions Add documentation for SSL_SESSION_is_resumable(). Also describe the interaction of the various session functions and TLSv1.3 post-handshake sessions. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3008) commit e586eac8858c3ea1f6094f5a3ea489e8e7f1973a Author: Matt Caswell Date: Tue Mar 21 13:50:31 2017 +0000 Add support for SSL_SESSION_is_resumable() Provide a way to test whether the SSL_SESSION object can be used to resume a sesion or not. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3008) commit 3348fc7e8940b66ab4545a618ba87a63fb677a79 Author: Matt Caswell Date: Tue Mar 21 13:48:52 2017 +0000 Remove TLS1.3 TODO around testing for session id length TLSv1.3 will do the same thing as TLSv1.2 with tickets with regards to session ids, i.e. it will create a synthetic session id when the session is established, so it is reasonable to check the session id length, even in TLSv1.3. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3008) ----------------------------------------------------------------------- Summary of changes: doc/man3/SSL_CTX_add_session.pod | 4 ++-- doc/man3/SSL_CTX_sess_set_get_cb.pod | 13 +++++++++++- doc/man3/SSL_SESSION_is_resumable.pod | 40 +++++++++++++++++++++++++++++++++++ doc/man3/SSL_get_session.pod | 25 +++++++++++++++++++++- include/openssl/ssl.h | 1 + ssl/ssl_sess.c | 22 +++++++++++++------ ssl/statem/statem_clnt.c | 21 ++++++++++-------- util/libssl.num | 1 + 8 files changed, 108 insertions(+), 19 deletions(-) create mode 100644 doc/man3/SSL_SESSION_is_resumable.pod diff --git a/doc/man3/SSL_CTX_add_session.pod b/doc/man3/SSL_CTX_add_session.pod index dd92c3a..02d93b8 100644 --- a/doc/man3/SSL_CTX_add_session.pod +++ b/doc/man3/SSL_CTX_add_session.pod @@ -21,8 +21,8 @@ reference count for session B is incremented by 1. If a session with the same session id already exists, the old session is removed by calling L. -SSL_CTX_remove_session() removes the session B from the context B. -L is called once for B. +SSL_CTX_remove_session() removes the session B from the context B and +marks it as non-resumable. L is called once for B. SSL_add_session() and SSL_remove_session() are synonyms for their SSL_CTX_*() counterparts. diff --git a/doc/man3/SSL_CTX_sess_set_get_cb.pod b/doc/man3/SSL_CTX_sess_set_get_cb.pod index ebea4c5..65f1e4e 100644 --- a/doc/man3/SSL_CTX_sess_set_get_cb.pod +++ b/doc/man3/SSL_CTX_sess_set_get_cb.pod @@ -57,7 +57,18 @@ and session caching is enabled (see L). The new_session_cb() is passed the B connection and the ssl session B. If the callback returns B<0>, the session will be immediately -removed again. +removed again. Note that in TLSv1.3, sessions are established after the main +handshake has completed. The server decides when to send the client the session +information and this may occur some time after the end of the handshake (or not +at all). This means that applications should expect the new_session_cb() +function to be invoked during the handshake (for <= TLSv1.2) or after the +handshake (for TLSv1.3). It is also possible in TLSv1.3 for multiple sessions to +be established with a single connection. In these case the new_session_cb() +function will be invoked multiple times. + +In TLSv1.3 it is recommended that each SSL_SESSION object is only used for +resumption once. One way of enforcing that is for applications to call +L after a session has been used. The remove_session_cb() is called, whenever the SSL engine removes a session from the internal cache. This happens when the session is removed because diff --git a/doc/man3/SSL_SESSION_is_resumable.pod b/doc/man3/SSL_SESSION_is_resumable.pod new file mode 100644 index 0000000..f0c8bab --- /dev/null +++ b/doc/man3/SSL_SESSION_is_resumable.pod @@ -0,0 +1,40 @@ +=pod + +=head1 NAME + +SSL_SESSION_is_resumable +- determine whether an SSL_SESSION object can be used for resumption + +=head1 SYNOPSIS + + #include + + const SSL_CIPHER *SSL_SESSION_is_resumable(const SSL_SESSSION *s); + +=head1 DESCRIPTION + +SSL_SESSION_is_resumable() determines whether an SSL_SESSION object can be used +to resume a session or not. Returns 1 if it can or 0 if not. Note that +attempting to resume with a non-resumable session will result in a full +handshake. + +=head1 SEE ALSO + +L, +L, +L + +=head1 HISTORY + +SSL_SESSION_is_resumable() was first added to OpenSSL 1.1.1 + +=head1 COPYRIGHT + +Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +L. + +=cut diff --git a/doc/man3/SSL_get_session.pod b/doc/man3/SSL_get_session.pod index d753b27..b2e92af 100644 --- a/doc/man3/SSL_get_session.pod +++ b/doc/man3/SSL_get_session.pod @@ -26,7 +26,30 @@ count of the B is incremented by one. =head1 NOTES The ssl session contains all information required to re-establish the -connection without a new handshake. +connection without a full handshake for SSL versions up to and including +TLSv1.2. In TLSv1.3 the same is true, but sessions are established after the +main handshake has occurred. The server will send the session information to the +client at a time of its choosing, which may be some while after the initial +connection is established (or never). Calling these functions on the client side +in TLSv1.3 before the session has been established will still return an +SSL_SESSION object but that object cannot be used for resuming the session. See +L for information on how to determine whether an +SSL_SESSION object can be used for resumption or not. + +Additionally, in TLSv1.3, a server can send multiple messages that establish a +session for a single connection. In that case the above functions will only +return information on the last session that was received. + +The preferred way for applications to obtain a resumable SSL_SESSION object is +to use a new session callback as described in L. +The new session callback is only invoked when a session is actually established, +so this avoids the problem described above where an application obtains an +SSL_SESSION object that cannot be used for resumption in TLSv1.3. It also +enables applications to obtain information about all sessions sent by the +server. + +In TLSv1.3 it is recommended that each SSL_SESSION object is only used for +resumption once. SSL_get0_session() returns a pointer to the actual session. As the reference counter is not incremented, the pointer is only valid while diff --git a/include/openssl/ssl.h b/include/openssl/ssl.h index c14859f..317451e 100644 --- a/include/openssl/ssl.h +++ b/include/openssl/ssl.h @@ -1502,6 +1502,7 @@ __owur int SSL_SESSION_set1_id_context(SSL_SESSION *s, const unsigned char *sid_ unsigned int sid_ctx_len); __owur int SSL_SESSION_set1_id(SSL_SESSION *s, const unsigned char *sid, unsigned int sid_len); +__owur int SSL_SESSION_is_resumable(const SSL_SESSION *s); __owur SSL_SESSION *SSL_SESSION_new(void); const unsigned char *SSL_SESSION_get_id(const SSL_SESSION *s, diff --git a/ssl/ssl_sess.c b/ssl/ssl_sess.c index d1a4014..7a3d858 100644 --- a/ssl/ssl_sess.c +++ b/ssl/ssl_sess.c @@ -46,12 +46,12 @@ static void SSL_SESSION_list_add(SSL_CTX *ctx, SSL_SESSION *s); static int remove_session_lock(SSL_CTX *ctx, SSL_SESSION *c, int lck); /* - * TODO(TLS1.3): SSL_get_session() and SSL_get1_session() are problematic in - * TLS1.3 because, unlike in earlier protocol versions, the session ticket - * may not have been sent yet even though a handshake has finished. The session - * ticket data could come in sometime later...or even change if multiple session - * ticket messages are sent from the server. We need to work out how to deal - * with this. + * SSL_get_session() and SSL_get1_session() are problematic in TLS1.3 because, + * unlike in earlier protocol versions, the session ticket may not have been + * sent yet even though a handshake has finished. The session ticket data could + * come in sometime later...or even change if multiple session ticket messages + * are sent from the server. The preferred way for applications to obtain + * a resumable session is to use SSL_CTX_sess_set_new_cb(). */ SSL_SESSION *SSL_get_session(const SSL *ssl) @@ -929,6 +929,16 @@ int SSL_SESSION_set1_id_context(SSL_SESSION *s, const unsigned char *sid_ctx, return 1; } +int SSL_SESSION_is_resumable(const SSL_SESSION *s) +{ + /* + * In the case of EAP-FAST, we can have a pre-shared "ticket" without a + * session ID. + */ + return !s->not_resumable + && (s->session_id_length > 0 || s->ext.ticklen > 0); +} + long SSL_CTX_set_timeout(SSL_CTX *s, long t) { long l; diff --git a/ssl/statem/statem_clnt.c b/ssl/statem/statem_clnt.c index 8c4c839..ab77ba0 100644 --- a/ssl/statem/statem_clnt.c +++ b/ssl/statem/statem_clnt.c @@ -1049,13 +1049,9 @@ int tls_construct_client_hello(SSL *s, WPACKET *pkt) return 0; } - if ((sess == NULL) || !ssl_version_supported(s, sess->ssl_version) || - /* - * In the case of EAP-FAST, we can have a pre-shared - * "ticket" without a session ID. - */ - (!sess->session_id_length && !sess->ext.tick) || - (sess->not_resumable)) { + if (sess == NULL + || !ssl_version_supported(s, sess->ssl_version) + || !SSL_SESSION_is_resumable(sess)) { if (!ssl_get_new_session(s, 0)) return 0; } @@ -2442,8 +2438,15 @@ MSG_PROCESS_RETURN tls_process_new_session_ticket(SSL *s, PACKET *pkt) if (ticklen == 0) return MSG_PROCESS_CONTINUE_READING; - /* TODO(TLS1.3): Is this a suitable test for TLS1.3? */ - if (s->session->session_id_length > 0) { + /* + * Sessions must be immutable once they go into the session cache. Otherwise + * we can get multi-thread problems. Therefore we don't "update" sessions, + * we replace them with a duplicate. In TLSv1.3 we need to do this every + * time a NewSessionTicket arrives because those messages arrive + * post-handshake and the session may have already gone into the session + * cache. + */ + if (SSL_IS_TLS13(s) || s->session->session_id_length > 0) { int i = s->session_ctx->session_cache_mode; SSL_SESSION *new_sess; /* diff --git a/util/libssl.num b/util/libssl.num index 49974c9..ccaf4bc 100644 --- a/util/libssl.num +++ b/util/libssl.num @@ -440,3 +440,4 @@ SSL_get0_peer_CA_list 440 1_1_1 EXIST::FUNCTION: SSL_CTX_add1_CA_list 441 1_1_1 EXIST::FUNCTION: SSL_CTX_get0_CA_list 442 1_1_1 EXIST::FUNCTION: SSL_CTX_add_custom_ext 443 1_1_1 EXIST::FUNCTION: +SSL_SESSION_is_resumable 444 1_1_1 EXIST::FUNCTION: From builds at travis-ci.org Wed Apr 26 15:56:47 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 26 Apr 2017 15:56:47 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10594 (master - b6e3250) In-Reply-To: Message-ID: <5900c33f7da15_43ff13d3c35ac768297@9940f7d2-5722-4259-bcd5-06cb0c52b042.mail> Build Update for openssl/openssl ------------------------------------- Build: #10594 Status: Still Failing Duration: 21 minutes and 34 seconds Commit: b6e3250 (master) Author: Rich Salz Message: Fix unit-tests when no-srp configured Reviewed-by: Richard Levitte Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3274) View the changeset: https://github.com/openssl/openssl/compare/58e754fcb8f0...b6e325067165 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/226057117 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From matt at openssl.org Wed Apr 26 16:02:09 2017 From: matt at openssl.org (Matt Caswell) Date: Wed, 26 Apr 2017 16:02:09 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493222529.837810.25795.nullmailer@dev.openssl.org> The branch master has been updated via 8e1634ec36c9a125f3aa1c48b743ff864c6fcbd3 (commit) via bf5c84f5d17ed68076ba1faa4a9eaaf4f51e4bf1 (commit) via 735d5b59df341236a6c9bb51ebdfebf9119ebeab (commit) from b89646684d920d3014979f8a73b96aecb61c7b1f (commit) - Log ----------------------------------------------------------------- commit 8e1634ec36c9a125f3aa1c48b743ff864c6fcbd3 Author: Tatsuhiro Tsujikawa Date: Fri Apr 21 22:10:32 2017 +0900 Don't treat PACKET_remaining() as boolean Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3244) commit bf5c84f5d17ed68076ba1faa4a9eaaf4f51e4bf1 Author: Tatsuhiro Tsujikawa Date: Wed Apr 19 21:12:34 2017 +0900 Break before && operator Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3244) commit 735d5b59df341236a6c9bb51ebdfebf9119ebeab Author: Tatsuhiro Tsujikawa Date: Tue Apr 18 23:59:39 2017 +0900 Call init and finalization functions per extension message Previously, init and finalization function for extensions are called per extension block, rather than per message. This commit changes that behaviour, and now they are called per message. The parse function is still called per extension block. Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3244) ----------------------------------------------------------------------- Summary of changes: ssl/statem/extensions.c | 57 +++++++++++++++++++++++++++--------------------- ssl/statem/statem_clnt.c | 27 ++++++++++++----------- ssl/statem/statem_locl.h | 5 +++-- ssl/statem/statem_srvr.c | 11 +++++----- 4 files changed, 55 insertions(+), 45 deletions(-) diff --git a/ssl/statem/extensions.c b/ssl/statem/extensions.c index c8ed722..f892675 100644 --- a/ssl/statem/extensions.c +++ b/ssl/statem/extensions.c @@ -421,8 +421,9 @@ int extension_is_relevant(SSL *s, unsigned int extctx, unsigned int thisctx) * stored in |*res| on success. In the event of an error the alert type to use * is stored in |*al|. We don't actually process the content of the extensions * yet, except to check their types. This function also runs the initialiser - * functions for all known extensions (whether we have collected them or not). - * If successful the caller is responsible for freeing the contents of |*res|. + * functions for all known extensions if |init| is nonzero (whether we have + * collected them or not). If successful the caller is responsible for freeing + * the contents of |*res|. * * Per http://tools.ietf.org/html/rfc5246#section-7.4.1.4, there may not be * more than one extension of the same type in a ClientHello or ServerHello. @@ -432,7 +433,8 @@ int extension_is_relevant(SSL *s, unsigned int extctx, unsigned int thisctx) * extensions that we know about. We ignore others. */ int tls_collect_extensions(SSL *s, PACKET *packet, unsigned int context, - RAW_EXTENSION **res, int *al, size_t *len) + RAW_EXTENSION **res, int *al, size_t *len, + int init) { PACKET extensions = *packet; size_t i = 0; @@ -490,16 +492,19 @@ int tls_collect_extensions(SSL *s, PACKET *packet, unsigned int context, } } - /* - * Initialise all known extensions relevant to this context, whether we have - * found them or not - */ - for (thisexd = ext_defs, i = 0; i < OSSL_NELEM(ext_defs); i++, thisexd++) { - if(thisexd->init != NULL && (thisexd->context & context) != 0 + if (init) { + /* + * Initialise all known extensions relevant to this context, + * whether we have found them or not + */ + for (thisexd = ext_defs, i = 0; i < OSSL_NELEM(ext_defs); + i++, thisexd++) { + if (thisexd->init != NULL && (thisexd->context & context) != 0 && extension_is_relevant(s, thisexd->context, context) && !thisexd->init(s, context)) { - *al = SSL_AD_INTERNAL_ERROR; - goto err; + *al = SSL_AD_INTERNAL_ERROR; + goto err; + } } } @@ -578,14 +583,14 @@ int tls_parse_extension(SSL *s, TLSEXT_INDEX idx, int context, /* * Parse all remaining extensions that have not yet been parsed. Also calls the - * finalisation for all extensions at the end, whether we collected them or not. - * Returns 1 for success or 0 for failure. If we are working on a Certificate - * message then we also pass the Certificate |x| and its position in the - * |chainidx|, with 0 being the first certificate. On failure, |*al| is - * populated with a suitable alert code. + * finalisation for all extensions at the end if |fin| is nonzero, whether we + * collected them or not. Returns 1 for success or 0 for failure. If we are + * working on a Certificate message then we also pass the Certificate |x| and + * its position in the |chainidx|, with 0 being the first certificate. On + * failure, |*al| is populated with a suitable alert code. */ int tls_parse_all_extensions(SSL *s, int context, RAW_EXTENSION *exts, X509 *x, - size_t chainidx, int *al) + size_t chainidx, int *al, int fin) { size_t i, numexts = OSSL_NELEM(ext_defs); const EXTENSION_DEFINITION *thisexd; @@ -599,15 +604,17 @@ int tls_parse_all_extensions(SSL *s, int context, RAW_EXTENSION *exts, X509 *x, return 0; } - /* - * Finalise all known extensions relevant to this context, whether we have - * found them or not - */ - for (i = 0, thisexd = ext_defs; i < OSSL_NELEM(ext_defs); i++, thisexd++) { - if(thisexd->final != NULL - && (thisexd->context & context) != 0 + if (fin) { + /* + * Finalise all known extensions relevant to this context, + * whether we have found them or not + */ + for (i = 0, thisexd = ext_defs; i < OSSL_NELEM(ext_defs); + i++, thisexd++) { + if (thisexd->final != NULL && (thisexd->context & context) != 0 && !thisexd->final(s, context, exts[i].present, al)) - return 0; + return 0; + } } return 1; diff --git a/ssl/statem/statem_clnt.c b/ssl/statem/statem_clnt.c index ab77ba0..a66dd40 100644 --- a/ssl/statem/statem_clnt.c +++ b/ssl/statem/statem_clnt.c @@ -1373,7 +1373,7 @@ MSG_PROCESS_RETURN tls_process_server_hello(SSL *s, PACKET *pkt) context = SSL_IS_TLS13(s) ? SSL_EXT_TLS1_3_SERVER_HELLO : SSL_EXT_TLS1_2_SERVER_HELLO; - if (!tls_collect_extensions(s, &extpkt, context, &extensions, &al, NULL)) + if (!tls_collect_extensions(s, &extpkt, context, &extensions, &al, NULL, 1)) goto f_err; s->hit = 0; @@ -1525,7 +1525,7 @@ MSG_PROCESS_RETURN tls_process_server_hello(SSL *s, PACKET *pkt) } #endif - if (!tls_parse_all_extensions(s, context, extensions, NULL, 0, &al)) + if (!tls_parse_all_extensions(s, context, extensions, NULL, 0, &al, 1)) goto f_err; #ifndef OPENSSL_NO_SCTP @@ -1616,9 +1616,9 @@ static MSG_PROCESS_RETURN tls_process_hello_retry_request(SSL *s, PACKET *pkt) } if (!tls_collect_extensions(s, &extpkt, SSL_EXT_TLS1_3_HELLO_RETRY_REQUEST, - &extensions, &al, NULL) + &extensions, &al, NULL, 1) || !tls_parse_all_extensions(s, SSL_EXT_TLS1_3_HELLO_RETRY_REQUEST, - extensions, NULL, 0, &al)) + extensions, NULL, 0, &al, 1)) goto f_err; OPENSSL_free(extensions); @@ -1711,9 +1711,10 @@ MSG_PROCESS_RETURN tls_process_server_certificate(SSL *s, PACKET *pkt) } if (!tls_collect_extensions(s, &extensions, SSL_EXT_TLS1_3_CERTIFICATE, &rawexts, - &al, NULL) - || !tls_parse_all_extensions(s, SSL_EXT_TLS1_3_CERTIFICATE, - rawexts, x, chainidx, &al)) { + &al, NULL, chainidx == 0) + || !tls_parse_all_extensions(s, SSL_EXT_TLS1_3_CERTIFICATE, + rawexts, x, chainidx, &al, + PACKET_remaining(pkt) == 0)) { OPENSSL_free(rawexts); goto f_err; } @@ -2340,9 +2341,9 @@ MSG_PROCESS_RETURN tls_process_certificate_request(SSL *s, PACKET *pkt) } if (!tls_collect_extensions(s, &extensions, SSL_EXT_TLS1_3_CERTIFICATE_REQUEST, - &rawexts, &al, NULL) + &rawexts, &al, NULL, 1) || !tls_parse_all_extensions(s, SSL_EXT_TLS1_3_CERTIFICATE_REQUEST, - rawexts, NULL, 0, &al)) { + rawexts, NULL, 0, &al, 1)) { OPENSSL_free(rawexts); goto err; } @@ -2501,10 +2502,10 @@ MSG_PROCESS_RETURN tls_process_new_session_ticket(SSL *s, PACKET *pkt) if (!PACKET_as_length_prefixed_2(pkt, &extpkt) || !tls_collect_extensions(s, &extpkt, SSL_EXT_TLS1_3_NEW_SESSION_TICKET, - &exts, &al, NULL) + &exts, &al, NULL, 1) || !tls_parse_all_extensions(s, SSL_EXT_TLS1_3_NEW_SESSION_TICKET, - exts, NULL, 0, &al)) { + exts, NULL, 0, &al, 1)) { SSLerr(SSL_F_TLS_PROCESS_NEW_SESSION_TICKET, SSL_R_BAD_EXTENSION); goto f_err; } @@ -3464,9 +3465,9 @@ static MSG_PROCESS_RETURN tls_process_encrypted_extensions(SSL *s, PACKET *pkt) if (!tls_collect_extensions(s, &extensions, SSL_EXT_TLS1_3_ENCRYPTED_EXTENSIONS, &rawexts, - &al, NULL) + &al, NULL, 1) || !tls_parse_all_extensions(s, SSL_EXT_TLS1_3_ENCRYPTED_EXTENSIONS, - rawexts, NULL, 0, &al)) + rawexts, NULL, 0, &al, 1)) goto err; OPENSSL_free(rawexts); diff --git a/ssl/statem/statem_locl.h b/ssl/statem/statem_locl.h index 2352c6a..3b9311e 100644 --- a/ssl/statem/statem_locl.h +++ b/ssl/statem/statem_locl.h @@ -156,12 +156,13 @@ MSG_PROCESS_RETURN tls_process_end_of_early_data(SSL *s, PACKET *pkt); __owur int extension_is_relevant(SSL *s, unsigned int extctx, unsigned int thisctx); __owur int tls_collect_extensions(SSL *s, PACKET *packet, unsigned int context, - RAW_EXTENSION **res, int *al, size_t *len); + RAW_EXTENSION **res, int *al, size_t *len, + int init); __owur int tls_parse_extension(SSL *s, TLSEXT_INDEX idx, int context, RAW_EXTENSION *exts, X509 *x, size_t chainidx, int *al); __owur int tls_parse_all_extensions(SSL *s, int context, RAW_EXTENSION *exts, - X509 *x, size_t chainidx, int *al); + X509 *x, size_t chainidx, int *al, int fin); __owur int should_add_extension(SSL *s, unsigned int extctx, unsigned int thisctx, int max_version); __owur int tls_construct_extensions(SSL *s, WPACKET *pkt, unsigned int context, diff --git a/ssl/statem/statem_srvr.c b/ssl/statem/statem_srvr.c index d751502..9dfdbe5 100644 --- a/ssl/statem/statem_srvr.c +++ b/ssl/statem/statem_srvr.c @@ -1426,7 +1426,7 @@ MSG_PROCESS_RETURN tls_process_client_hello(SSL *s, PACKET *pkt) extensions = clienthello->extensions; if (!tls_collect_extensions(s, &extensions, SSL_EXT_CLIENT_HELLO, &clienthello->pre_proc_exts, &al, - &clienthello->pre_proc_exts_len)) { + &clienthello->pre_proc_exts_len, 1)) { /* SSLerr already been called */ goto f_err; } @@ -1690,7 +1690,7 @@ static int tls_early_post_process_client_hello(SSL *s, int *pal) /* TLS extensions */ if (!tls_parse_all_extensions(s, SSL_EXT_CLIENT_HELLO, - clienthello->pre_proc_exts, NULL, 0, &al)) { + clienthello->pre_proc_exts, NULL, 0, &al, 1)) { SSLerr(SSL_F_TLS_EARLY_POST_PROCESS_CLIENT_HELLO, SSL_R_PARSE_TLSEXT); goto err; } @@ -3217,9 +3217,10 @@ MSG_PROCESS_RETURN tls_process_client_certificate(SSL *s, PACKET *pkt) } if (!tls_collect_extensions(s, &extensions, SSL_EXT_TLS1_3_CERTIFICATE, &rawexts, - &al, NULL) - || !tls_parse_all_extensions(s, SSL_EXT_TLS1_3_CERTIFICATE, - rawexts, x, chainidx, &al)) { + &al, NULL, chainidx == 0) + || !tls_parse_all_extensions(s, SSL_EXT_TLS1_3_CERTIFICATE, + rawexts, x, chainidx, &al, + PACKET_remaining(&spkt) == 0)) { OPENSSL_free(rawexts); goto f_err; } From steve at openssl.org Wed Apr 26 16:13:24 2017 From: steve at openssl.org (Dr. Stephen Henson) Date: Wed, 26 Apr 2017 16:13:24 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493223204.597552.2049.nullmailer@dev.openssl.org> The branch master has been updated via aa24cd1bfbf4fb51bc51d8b3b5c68563616a28ab (commit) from 8e1634ec36c9a125f3aa1c48b743ff864c6fcbd3 (commit) - Log ----------------------------------------------------------------- commit aa24cd1bfbf4fb51bc51d8b3b5c68563616a28ab Author: Dr. Stephen Henson Date: Wed Apr 26 17:08:22 2017 +0100 Fix no-ec Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3321) ----------------------------------------------------------------------- Summary of changes: test/evp_extra_test.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/test/evp_extra_test.c b/test/evp_extra_test.c index 80737f9..d780161 100644 --- a/test/evp_extra_test.c +++ b/test/evp_extra_test.c @@ -196,7 +196,9 @@ typedef struct APK_DATA_st { static APK_DATA keydata[] = { {kExampleRSAKeyDER, sizeof(kExampleRSAKeyDER), EVP_PKEY_RSA}, {kExampleRSAKeyPKCS8, sizeof(kExampleRSAKeyPKCS8), EVP_PKEY_RSA}, +#ifndef OPENSSL_NO_EC {kExampleECKeyDER, sizeof(kExampleECKeyDER), EVP_PKEY_EC} +#endif }; static EVP_PKEY *load_example_rsa_key(void) From rsalz at openssl.org Wed Apr 26 16:31:28 2017 From: rsalz at openssl.org (Rich Salz) Date: Wed, 26 Apr 2017 16:31:28 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493224288.880736.14889.nullmailer@dev.openssl.org> The branch master has been updated via 8ed9a26616a7101ea698c189fbbb663186676075 (commit) from aa24cd1bfbf4fb51bc51d8b3b5c68563616a28ab (commit) - Log ----------------------------------------------------------------- commit 8ed9a26616a7101ea698c189fbbb663186676075 Author: Rich Salz Date: Wed Apr 26 12:20:44 2017 -0400 Convert dtls_mtu_test, dtlsv1listentest Also converted most of ssltestlib but left the packet_dump output as-is (for now). Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3257) ----------------------------------------------------------------------- Summary of changes: test/build.info | 4 +- test/dtls_mtu_test.c | 133 ++++++++++++++++++----------------- test/dtlsv1listentest.c | 180 +++++++++++++++--------------------------------- test/libtestutil.a | Bin 0 -> 82398 bytes test/ssltestlib.c | 154 +++++++++++++++-------------------------- 5 files changed, 182 insertions(+), 289 deletions(-) create mode 100644 test/libtestutil.a diff --git a/test/build.info b/test/build.info index 9f4a434..c8d86f7 100644 --- a/test/build.info +++ b/test/build.info @@ -233,7 +233,7 @@ INCLUDE_MAIN___test_libtestutil_OLB = /INCLUDE=MAIN SOURCE[dtlsv1listentest]=dtlsv1listentest.c INCLUDE[dtlsv1listentest]=.. ../include - DEPEND[dtlsv1listentest]=../libssl + DEPEND[dtlsv1listentest]=../libssl libtestutil.a SOURCE[ct_test]=ct_test.c INCLUDE[ct_test]=../crypto/include ../include @@ -316,7 +316,7 @@ INCLUDE_MAIN___test_libtestutil_OLB = /INCLUDE=MAIN PROGRAMS_NO_INST=dtls_mtu_test SOURCE[dtls_mtu_test]=dtls_mtu_test.c ssltestlib.c INCLUDE[dtls_mtu_test]=.. ../include - DEPEND[dtls_mtu_test]=../libcrypto ../libssl + DEPEND[dtls_mtu_test]=../libcrypto ../libssl libtestutil.a ENDIF IF[{- !$disabled{shared} -}] diff --git a/test/dtls_mtu_test.c b/test/dtls_mtu_test.c index 24d4ccc..50f952b 100644 --- a/test/dtls_mtu_test.c +++ b/test/dtls_mtu_test.c @@ -15,6 +15,7 @@ #include #include "ssltestlib.h" +#include "testutil.h" /* for SSL_READ_ETM() */ #include "../ssl/ssl_locl.h" @@ -57,21 +58,19 @@ static int mtu_test(SSL_CTX *ctx, const char *cs, int no_etm) memset(buf, 0x5a, sizeof(buf)); - if (create_ssl_objects(ctx, ctx, &srvr_ssl, &clnt_ssl, NULL, NULL) != 1) - goto out; + if (!TEST_true(create_ssl_objects(ctx, ctx, &srvr_ssl, &clnt_ssl, + NULL, NULL))) + goto end; if (no_etm) SSL_set_options(srvr_ssl, SSL_OP_NO_ENCRYPT_THEN_MAC); - if (SSL_set_cipher_list(srvr_ssl, cs) != 1 || - SSL_set_cipher_list(clnt_ssl, cs) != 1) { - ERR_print_errors_fp(stdout); - goto out; - } - sc_bio = SSL_get_rbio(srvr_ssl); - - if (create_ssl_connection(clnt_ssl, srvr_ssl, SSL_ERROR_NONE) != 1) - goto out; + if (!TEST_true(SSL_set_cipher_list(srvr_ssl, cs)) + || !TEST_true(SSL_set_cipher_list(clnt_ssl, cs)) + || !TEST_ptr(sc_bio = SSL_get_rbio(srvr_ssl)) + || !TEST_true(create_ssl_connection(clnt_ssl, srvr_ssl, + SSL_ERROR_NONE))) + goto end; if (debug) printf("Channel established\n"); @@ -82,28 +81,27 @@ static int mtu_test(SSL_CTX *ctx, const char *cs, int no_etm) SSL_set_mtu(clnt_ssl, 500 + i); mtus[i] = DTLS_get_data_mtu(clnt_ssl); if (debug) - printf("%s%s payload MTU for record mtu %d = %"OSSLzu"\n", - cs, no_etm ? "-noEtM":"", 500 + i, mtus[i]); - if (mtus[i] == 0) { - fprintf(stderr, - "payload MTU failed with record MTU %d for %s\n", - 500 + i, cs); - goto out; + TEST_info("%s%s MTU for record mtu %d = %lu", + cs, no_etm ? "-noEtM" : "", + 500 + i, (unsigned long)mtus[i]); + if (!TEST_size_t_ne(mtus[i], 0)) { + TEST_info("Cipher %s MTU %d", cs, 500 + i); + goto end; } } /* Now get out of the way */ SSL_set_mtu(clnt_ssl, 1000); - /* Now for all values in the range of payload MTUs, send - * a payload of that size and see what actual record size - * we end up with. */ + /* + * Now for all values in the range of payload MTUs, send a payload of + * that size and see what actual record size we end up with. + */ for (s = mtus[0]; s <= mtus[29]; s++) { size_t reclen; - if (SSL_write(clnt_ssl, buf, s) != (int)s) { - ERR_print_errors_fp(stdout); - goto out; - } + + if (!TEST_int_eq(SSL_write(clnt_ssl, buf, s), (int)s)) + goto end; reclen = BIO_read(sc_bio, buf, sizeof(buf)); if (debug) printf("record %"OSSLzu" for payload %"OSSLzu"\n", reclen, s); @@ -111,53 +109,58 @@ static int mtu_test(SSL_CTX *ctx, const char *cs, int no_etm) for (i = 0; i < 30; i++) { /* DTLS_get_data_mtu() with record MTU 500+i returned mtus[i] ... */ - if (s <= mtus[i] && reclen > (size_t)(500 + i)) { - /* We sent a packet smaller than or equal to mtus[j] and - * that made a record *larger* than the record MTU 500+j! */ - fprintf(stderr, - "%s: Payload MTU %"OSSLzu" reported for record MTU %d\n" - "but sending a payload of %"OSSLzu" made a record of %"OSSLzu"(too large)\n", - cs, mtus[i], 500 + i, s, reclen); - goto out; + if (!TEST_false(s <= mtus[i] && reclen > (size_t)(500 + i))) { + /* + * We sent a packet smaller than or equal to mtus[j] and + * that made a record *larger* than the record MTU 500+j! + */ + TEST_error("%s: s=%lu, mtus[i]=%lu, reclen=%lu, i=%d", + cs, (unsigned long)s, (unsigned long)mtus[i], + (unsigned long)reclen, 500 + i); + goto end; } - if (s > mtus[i] && reclen <= (size_t)(500 + i)) { - /* We sent a *larger* packet than mtus[i] and that *still* + if (!TEST_false(s > mtus[i] && reclen <= (size_t)(500 + i))) { + /* + * We sent a *larger* packet than mtus[i] and that *still* * fits within the record MTU 500+i, so DTLS_get_data_mtu() - * was overly pessimistic. */ - fprintf(stderr, - "%s: Payload MTU %"OSSLzu" reported for record MTU %d\n" - "but sending a payload of %"OSSLzu" made a record of %"OSSLzu" (too small)\n", - cs, mtus[i], 500 + i, s, reclen); - goto out; + * was overly pessimistic. + */ + TEST_error("%s: s=%lu, mtus[i]=%lu, reclen=%lu, i=%d", + cs, (unsigned long)s, (unsigned long)mtus[i], + (unsigned long)reclen, 500 + i); + goto end; } } } rv = 1; if (SSL_READ_ETM(clnt_ssl)) rv = 2; - out: + end: SSL_free(clnt_ssl); SSL_free(srvr_ssl); return rv; } -int main(void) +static int run_mtu_tests(void) { - SSL_CTX *ctx = SSL_CTX_new(DTLS_method()); + SSL_CTX *ctx = NULL; STACK_OF(SSL_CIPHER) *ciphers; - int i, rv = 0; + int i, ret = 0; + + if (!TEST_ptr(ctx = SSL_CTX_new(DTLS_method()))) + goto end; SSL_CTX_set_psk_server_callback(ctx, srvr_psk_callback); SSL_CTX_set_psk_client_callback(ctx, clnt_psk_callback); SSL_CTX_set_security_level(ctx, 0); - /* We only care about iterating over each enc/mac; we don't - * want to repeat the test for each auth/kx variant. - * So keep life simple and only do (non-DH) PSK. */ - if (!SSL_CTX_set_cipher_list(ctx, "PSK")) { - fprintf(stderr, "Failed to set PSK cipher list\n"); - goto out; - } + /* + * We only care about iterating over each enc/mac; we don't want to + * repeat the test for each auth/kx variant. So keep life simple and + * only do (non-DH) PSK. + */ + if (!TEST_true(SSL_CTX_set_cipher_list(ctx, "PSK"))) + goto end; ciphers = SSL_CTX_get_ciphers(ctx); for (i = 0; i < sk_SSL_CIPHER_num(ciphers); i++) { @@ -165,26 +168,28 @@ int main(void) const char *cipher_name = SSL_CIPHER_get_name(cipher); /* As noted above, only one test for each enc/mac variant. */ - if (strncmp(cipher_name, "PSK-", 4)) + if (strncmp(cipher_name, "PSK-", 4) != 0) continue; - rv = mtu_test(ctx, cipher_name, 0); - if (!rv) + if (!TEST_int_gt(ret = mtu_test(ctx, cipher_name, 0), 0)) break; - - printf("DTLS MTU test OK for %s\n", cipher_name); - if (rv == 1) + TEST_info("%s OK", cipher_name); + if (ret == 1) continue; /* mtu_test() returns 2 if it used Encrypt-then-MAC */ - rv = mtu_test(ctx, cipher_name, 1); - if (!rv) + if (!TEST_int_gt(ret = mtu_test(ctx, cipher_name, 1), 0)) break; - - printf("DTLS MTU test OK for %s without Encrypt-then-MAC\n", cipher_name); + TEST_info("%s without EtM OK", cipher_name); } - out: + + end: SSL_CTX_free(ctx); + bio_s_mempacket_test_free(); + return ret; +} - return !rv; +void register_tests() +{ + ADD_TEST(run_mtu_tests); } diff --git a/test/dtlsv1listentest.c b/test/dtlsv1listentest.c index dfbc7ae..b70c60e 100644 --- a/test/dtlsv1listentest.c +++ b/test/dtlsv1listentest.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -12,10 +12,8 @@ #include #include #include -#ifndef OPENSSL_NO_ENGINE -# include -#endif #include "e_os.h" +#include "testutil.h" #ifndef OPENSSL_NO_SOCK @@ -236,7 +234,7 @@ static const unsigned char verify[] = { 0x0D, 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13 /* Cookie */ }; -static struct { +typedef struct { const unsigned char *in; unsigned int inlen; /* @@ -245,52 +243,18 @@ static struct { * DROP == 0 return value, no output */ enum {GOOD, VERIFY, DROP} outtype; -} testpackets[9] = { - { - clienthello_nocookie, - sizeof(clienthello_nocookie), - VERIFY - }, - { - clienthello_nocookie_frag, - sizeof(clienthello_nocookie_frag), - VERIFY - }, - { - clienthello_nocookie_short, - sizeof(clienthello_nocookie_short), - DROP - }, - { - clienthello_2ndfrag, - sizeof(clienthello_2ndfrag), - DROP - }, - { - clienthello_cookie, - sizeof(clienthello_cookie), - GOOD - }, - { - clienthello_cookie_frag, - sizeof(clienthello_cookie_frag), - GOOD - }, - { - clienthello_badcookie, - sizeof(clienthello_badcookie), - VERIFY - }, - { - clienthello_cookie_short, - sizeof(clienthello_cookie_short), - DROP - }, - { - record_short, - sizeof(record_short), - DROP - } +} tests; + +static tests testpackets[9] = { + { clienthello_nocookie, sizeof(clienthello_nocookie), VERIFY }, + { clienthello_nocookie_frag, sizeof(clienthello_nocookie_frag), VERIFY }, + { clienthello_nocookie_short, sizeof(clienthello_nocookie_short), DROP }, + { clienthello_2ndfrag, sizeof(clienthello_2ndfrag), DROP }, + { clienthello_cookie, sizeof(clienthello_cookie), GOOD }, + { clienthello_cookie_frag, sizeof(clienthello_cookie_frag), GOOD }, + { clienthello_badcookie, sizeof(clienthello_badcookie), VERIFY }, + { clienthello_cookie_short, sizeof(clienthello_cookie_short), DROP }, + { record_short, sizeof(record_short), DROP } }; # define COOKIE_LEN 20 @@ -299,9 +263,8 @@ static int cookie_gen(SSL *ssl, unsigned char *cookie, unsigned int *cookie_len) { unsigned int i; - for (i = 0; i < COOKIE_LEN; i++, cookie++) { + for (i = 0; i < COOKIE_LEN; i++, cookie++) *cookie = i; - } *cookie_len = COOKIE_LEN; return 1; @@ -322,105 +285,72 @@ static int cookie_verify(SSL *ssl, const unsigned char *cookie, return 1; } -#endif -int main(void) +static int dtls_listen_test(int i) { -#ifndef OPENSSL_NO_SOCK SSL_CTX *ctx = NULL; SSL *ssl = NULL; BIO *outbio = NULL; BIO *inbio = NULL; - BIO_ADDR *peer = BIO_ADDR_new(); + BIO_ADDR *peer = NULL; + tests *tp = &testpackets[i]; char *data; long datalen; int ret, success = 0; - long i; - ctx = SSL_CTX_new(DTLS_server_method()); - if (ctx == NULL || peer == NULL) + if (!TEST_ptr(ctx = SSL_CTX_new(DTLS_server_method())) + || !TEST_ptr(peer = BIO_ADDR_new())) goto err; - SSL_CTX_set_cookie_generate_cb(ctx, cookie_gen); SSL_CTX_set_cookie_verify_cb(ctx, cookie_verify); - /* Create an SSL object for the connection */ - ssl = SSL_new(ctx); - if (ssl == NULL) - goto err; - - outbio = BIO_new(BIO_s_mem()); - if (outbio == NULL) + /* Create an SSL object and set the BIO */ + if (!TEST_ptr(ssl = SSL_new(ctx)) + || !TEST_ptr(outbio = BIO_new(BIO_s_mem()))) goto err; SSL_set0_wbio(ssl, outbio); - success = 1; - for (i = 0; i < (long)OSSL_NELEM(testpackets) && success; i++) { - inbio = BIO_new_mem_buf((char *)testpackets[i].in, - testpackets[i].inlen); - if (inbio == NULL) { - success = 0; - goto err; - } - /* Set Non-blocking IO behaviour */ - BIO_set_mem_eof_return(inbio, -1); + /* Set Non-blocking IO behaviour */ + if (!TEST_ptr(inbio = BIO_new_mem_buf((char *)tp->in, tp->inlen))) + goto err; + BIO_set_mem_eof_return(inbio, -1); + SSL_set0_rbio(ssl, inbio); - SSL_set0_rbio(ssl, inbio); + /* Process the incoming packet */ + if (!TEST_int_ge(ret = DTLSv1_listen(ssl, peer), 0)) + goto err; + datalen = BIO_get_mem_data(outbio, &data); - /* Process the incoming packet */ - ret = DTLSv1_listen(ssl, peer); - if (ret < 0) { - success = 0; + if (tp->outtype == VERIFY) { + if (!TEST_int_eq(ret, 0) + || !TEST_mem_eq(data, datalen, verify, sizeof(verify))) goto err; - } - - datalen = BIO_get_mem_data(outbio, &data); - - if (testpackets[i].outtype == VERIFY) { - if (ret == 0) { - if (datalen != sizeof(verify) - || (memcmp(data, verify, sizeof(verify)) != 0)) { - printf("Test %ld failure: incorrect HelloVerifyRequest\n", i); - success = 0; - } else { - printf("Test %ld success\n", i); - } - } else { - printf ("Test %ld failure: should not have succeeded\n", i); - success = 0; - } - } else if (datalen == 0) { - if ((ret == 0 && testpackets[i].outtype == DROP) - || (ret == 1 && testpackets[i].outtype == GOOD)) { - printf("Test %ld success\n", i); - } else { - printf("Test %ld failure: wrong return value\n", i); - success = 0; - } - } else { - printf("Test %ld failure: Unexpected data output\n", i); - success = 0; - } - (void)BIO_reset(outbio); - inbio = NULL; - /* Frees up inbio */ - SSL_set0_rbio(ssl, NULL); + } else if (datalen == 0) { + if (!TEST_true((ret == 0 && tp->outtype == DROP) + || (ret == 1 && tp->outtype == GOOD))) + goto err; + } else { + TEST_info("Test %d: unexpected data output", i); + goto err; } + (void)BIO_reset(outbio); + inbio = NULL; + SSL_set0_rbio(ssl, NULL); + success = 1; err: - if (!success) - ERR_print_errors_fp(stderr); /* Also frees up outbio */ SSL_free(ssl); SSL_CTX_free(ctx); BIO_free(inbio); OPENSSL_free(peer); -# ifndef OPENSSL_NO_CRYPTO_MDEBUG - CRYPTO_mem_leaks_fp(stderr); -# endif - return success ? 0 : 1; -#else - printf("DTLSv1_listen() is not supported by this build - skipping\n"); - return 0; + return success; +} +#endif + +void register_tests() +{ +#ifndef OPENSSL_NO_SOCK + ADD_ALL_TESTS(dtls_listen_test, (int)OSSL_NELEM(testpackets)); #endif } diff --git a/test/libtestutil.a b/test/libtestutil.a new file mode 100644 index 0000000..9734195 Binary files /dev/null and b/test/libtestutil.a differ diff --git a/test/ssltestlib.c b/test/ssltestlib.c index 6fce12e..9bce0d3 100644 --- a/test/ssltestlib.c +++ b/test/ssltestlib.c @@ -11,6 +11,7 @@ #include "e_os.h" #include "ssltestlib.h" +#include "testutil.h" static int tls_dump_new(BIO *bi); static int tls_dump_free(BIO *a); @@ -21,12 +22,11 @@ static int tls_dump_gets(BIO *bp, char *buf, int size); static int tls_dump_puts(BIO *bp, const char *str); /* Choose a sufficiently large type likely to be unused for this custom BIO */ -# define BIO_TYPE_TLS_DUMP_FILTER (0x80 | BIO_TYPE_FILTER) - -# define BIO_TYPE_MEMPACKET_TEST 0x81 +#define BIO_TYPE_TLS_DUMP_FILTER (0x80 | BIO_TYPE_FILTER) +#define BIO_TYPE_MEMPACKET_TEST 0x81 static BIO_METHOD *method_tls_dump = NULL; -static BIO_METHOD *method_mempacket_test = NULL; +static BIO_METHOD *meth_mem = NULL; /* Note: Not thread safe! */ const BIO_METHOD *bio_f_tls_dump_filter(void) @@ -265,34 +265,33 @@ static int mempacket_test_puts(BIO *bp, const char *str); const BIO_METHOD *bio_s_mempacket_test(void) { - if (method_mempacket_test == NULL) { - method_mempacket_test = BIO_meth_new(BIO_TYPE_MEMPACKET_TEST, - "Mem Packet Test"); - if ( method_mempacket_test == NULL - || !BIO_meth_set_write(method_mempacket_test, mempacket_test_write) - || !BIO_meth_set_read(method_mempacket_test, mempacket_test_read) - || !BIO_meth_set_puts(method_mempacket_test, mempacket_test_puts) - || !BIO_meth_set_gets(method_mempacket_test, mempacket_test_gets) - || !BIO_meth_set_ctrl(method_mempacket_test, mempacket_test_ctrl) - || !BIO_meth_set_create(method_mempacket_test, mempacket_test_new) - || !BIO_meth_set_destroy(method_mempacket_test, mempacket_test_free)) + if (meth_mem == NULL) { + if (!TEST_ptr(meth_mem = BIO_meth_new(BIO_TYPE_MEMPACKET_TEST, + "Mem Packet Test")) + || !TEST_true(BIO_meth_set_write(meth_mem, mempacket_test_write)) + || !TEST_true(BIO_meth_set_read(meth_mem, mempacket_test_read)) + || !TEST_true(BIO_meth_set_puts(meth_mem, mempacket_test_puts)) + || !TEST_true(BIO_meth_set_gets(meth_mem, mempacket_test_gets)) + || !TEST_true(BIO_meth_set_ctrl(meth_mem, mempacket_test_ctrl)) + || !TEST_true(BIO_meth_set_create(meth_mem, mempacket_test_new)) + || !TEST_true(BIO_meth_set_destroy(meth_mem, mempacket_test_free))) return NULL; } - return method_mempacket_test; + return meth_mem; } void bio_s_mempacket_test_free(void) { - BIO_meth_free(method_mempacket_test); + BIO_meth_free(meth_mem); } static int mempacket_test_new(BIO *bio) { - MEMPACKET_TEST_CTX *ctx = OPENSSL_zalloc(sizeof(*ctx)); - if (ctx == NULL) + MEMPACKET_TEST_CTX *ctx; + + if (!TEST_ptr(ctx = OPENSSL_zalloc(sizeof(*ctx)))) return 0; - ctx->pkts = sk_MEMPACKET_new_null(); - if (ctx->pkts == NULL) { + if (!TEST_ptr(ctx->pkts = sk_MEMPACKET_new_null())) { OPENSSL_free(ctx); return 0; } @@ -309,7 +308,6 @@ static int mempacket_test_free(BIO *bio) OPENSSL_free(ctx); BIO_set_data(bio, NULL); BIO_set_init(bio, 0); - return 1; } @@ -331,7 +329,6 @@ static int mempacket_test_read(BIO *bio, char *out, int outl) unsigned int seq, offset, len, epoch; BIO_clear_retry_flags(bio); - thispkt = sk_MEMPACKET_value(ctx->pkts, 0); if (thispkt == NULL || thispkt->num != ctx->currpkt) { /* Probably run out of data */ @@ -351,12 +348,10 @@ static int mempacket_test_read(BIO *bio, char *out, int outl) * we know that there won't be any re-ordering. We overwrite to deal * with any packets that have been injected */ - rem = thispkt->len; - rec = thispkt->data; - while (rem > 0) { - if (rem < DTLS1_RT_HEADER_LENGTH) { + for (rem = thispkt->len, rec = thispkt->data + ; rem > 0; rec += len, rem -= len) { + if (rem < DTLS1_RT_HEADER_LENGTH) return -1; - } epoch = (rec[EPOCH_HI] << 8) | rec[EPOCH_LO]; if (epoch != ctx->epoch) { ctx->epoch = epoch; @@ -373,16 +368,11 @@ static int mempacket_test_read(BIO *bio, char *out, int outl) len = ((rec[RECORD_LEN_HI] << 8) | rec[RECORD_LEN_LO]) + DTLS1_RT_HEADER_LENGTH; - - rec += len; - rem -= len; } } memcpy(out, thispkt->data, outl); - mempacket_free(thispkt); - return outl; } @@ -404,12 +394,9 @@ int mempacket_test_inject(BIO *bio, const char *in, int inl, int pktnum, ctx->noinject = 1; } - thispkt = OPENSSL_malloc(sizeof(MEMPACKET)); - if (thispkt == NULL) + if (!TEST_ptr(thispkt = OPENSSL_malloc(sizeof(*thispkt)))) return -1; - - thispkt->data = OPENSSL_malloc(inl); - if (thispkt->data == NULL) { + if (!TEST_ptr(thispkt->data = OPENSSL_malloc(inl))) { mempacket_free(thispkt); return -1; } @@ -530,26 +517,16 @@ int create_ssl_ctx_pair(const SSL_METHOD *sm, const SSL_METHOD *cm, SSL_CTX *serverctx = NULL; SSL_CTX *clientctx = NULL; - serverctx = SSL_CTX_new(sm); - clientctx = SSL_CTX_new(cm); - if (serverctx == NULL || clientctx == NULL) { - printf("Failed to create SSL_CTX\n"); + if (!TEST_ptr(serverctx = SSL_CTX_new(sm)) + || !TEST_ptr(clientctx = SSL_CTX_new(cm))) goto err; - } - if (SSL_CTX_use_certificate_file(serverctx, certfile, - SSL_FILETYPE_PEM) <= 0) { - printf("Failed to load server certificate\n"); + if (!TEST_int_eq(SSL_CTX_use_certificate_file(serverctx, certfile, + SSL_FILETYPE_PEM), 1) + || !TEST_int_eq(SSL_CTX_use_PrivateKey_file(serverctx, privkeyfile, + SSL_FILETYPE_PEM), 1) + || !TEST_int_eq(SSL_CTX_check_private_key(serverctx), 1)) goto err; - } - if (SSL_CTX_use_PrivateKey_file(serverctx, privkeyfile, - SSL_FILETYPE_PEM) <= 0) { - printf("Failed to load server private key\n"); - } - if (SSL_CTX_check_private_key(serverctx) <= 0) { - printf("Failed to check private key\n"); - goto err; - } #ifndef OPENSSL_NO_DH SSL_CTX_set_dh_auto(serverctx, 1); @@ -557,8 +534,8 @@ int create_ssl_ctx_pair(const SSL_METHOD *sm, const SSL_METHOD *cm, *sctx = serverctx; *cctx = clientctx; - return 1; + err: SSL_CTX_free(serverctx); SSL_CTX_free(clientctx); @@ -573,62 +550,46 @@ int create_ssl_ctx_pair(const SSL_METHOD *sm, const SSL_METHOD *cm, int create_ssl_objects(SSL_CTX *serverctx, SSL_CTX *clientctx, SSL **sssl, SSL **cssl, BIO *s_to_c_fbio, BIO *c_to_s_fbio) { - SSL *serverssl, *clientssl; + SSL *serverssl = NULL, *clientssl = NULL; BIO *s_to_c_bio = NULL, *c_to_s_bio = NULL; - if (*sssl == NULL) - serverssl = SSL_new(serverctx); - else + if (*sssl != NULL) serverssl = *sssl; - if (*cssl == NULL) - clientssl = SSL_new(clientctx); - else + else if (!TEST_ptr(serverssl = SSL_new(serverctx))) + goto error; + if (*cssl != NULL) clientssl = *cssl; - - if (serverssl == NULL || clientssl == NULL) { - printf("Failed to create SSL object\n"); + else if (!TEST_ptr(clientssl = SSL_new(clientctx))) goto error; - } if (SSL_is_dtls(clientssl)) { - s_to_c_bio = BIO_new(bio_s_mempacket_test()); - c_to_s_bio = BIO_new(bio_s_mempacket_test()); + if (!TEST_ptr(s_to_c_bio = BIO_new(bio_s_mempacket_test())) + || !TEST_ptr(c_to_s_bio = BIO_new(bio_s_mempacket_test()))) + goto error; } else { - s_to_c_bio = BIO_new(BIO_s_mem()); - c_to_s_bio = BIO_new(BIO_s_mem()); - } - if (s_to_c_bio == NULL || c_to_s_bio == NULL) { - printf("Failed to create mem BIOs\n"); - goto error; + if (!TEST_ptr(s_to_c_bio = BIO_new(BIO_s_mem())) + || !TEST_ptr(c_to_s_bio = BIO_new(BIO_s_mem()))) + goto error; } - if (s_to_c_fbio != NULL) - s_to_c_bio = BIO_push(s_to_c_fbio, s_to_c_bio); - if (c_to_s_fbio != NULL) - c_to_s_bio = BIO_push(c_to_s_fbio, c_to_s_bio); - if (s_to_c_bio == NULL || c_to_s_bio == NULL) { - printf("Failed to create chained BIOs\n"); + if (s_to_c_fbio != NULL + && !TEST_ptr(s_to_c_bio = BIO_push(s_to_c_fbio, s_to_c_bio))) + goto error; + if (c_to_s_fbio != NULL + && !TEST_ptr(c_to_s_bio = BIO_push(c_to_s_fbio, c_to_s_bio))) goto error; - } /* Set Non-blocking IO behaviour */ BIO_set_mem_eof_return(s_to_c_bio, -1); BIO_set_mem_eof_return(c_to_s_bio, -1); /* Up ref these as we are passing them to two SSL objects */ + SSL_set_bio(serverssl, c_to_s_bio, s_to_c_bio); BIO_up_ref(s_to_c_bio); BIO_up_ref(c_to_s_bio); - - SSL_set_bio(serverssl, c_to_s_bio, s_to_c_bio); SSL_set_bio(clientssl, s_to_c_bio, c_to_s_bio); - - /* BIOs will now be freed when SSL objects are freed */ - s_to_c_bio = c_to_s_bio = NULL; - s_to_c_fbio = c_to_s_fbio = NULL; - *sssl = serverssl; *cssl = clientssl; - return 1; error: @@ -658,7 +619,7 @@ int create_ssl_connection(SSL *serverssl, SSL *clientssl, int want) } if (!clienterr && retc <= 0 && err != SSL_ERROR_WANT_READ) { - printf("SSL_connect() failed %d, %d\n", retc, err); + TEST_info("SSL_connect() failed %d, %d", retc, err); clienterr = 1; } if (want != SSL_ERROR_NONE && err == want) @@ -672,7 +633,7 @@ int create_ssl_connection(SSL *serverssl, SSL *clientssl, int want) } if (!servererr && rets <= 0 && err != SSL_ERROR_WANT_READ) { - printf("SSL_accept() failed %d, %d\n", rets, err); + TEST_info("SSL_accept() failed %d, %d", rets, err); servererr = 1; } if (want != SSL_ERROR_NONE && err == want) @@ -680,7 +641,7 @@ int create_ssl_connection(SSL *serverssl, SSL *clientssl, int want) if (clienterr && servererr) return 0; if (++abortctr == MAXLOOPS) { - printf("No progress made\n"); + TEST_info("No progress made"); return 0; } } while (retc <=0 || rets <= 0); @@ -691,12 +652,9 @@ int create_ssl_connection(SSL *serverssl, SSL *clientssl, int want) * appropriate. */ if (SSL_read_ex(clientssl, &buf, sizeof(buf), &readbytes) > 0) { - if (readbytes != 0) { - printf("Unexpected success reading data %"OSSLzu"\n", readbytes); + if (!TEST_ulong_eq(readbytes, 0)) return 0; - } - } else if (SSL_get_error(clientssl, 0) != SSL_ERROR_WANT_READ) { - printf("SSL_read_ex() failed\n"); + } else if (!TEST_int_eq(SSL_get_error(clientssl, 0), SSL_ERROR_WANT_READ)) { return 0; } From builds at travis-ci.org Wed Apr 26 16:18:33 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 26 Apr 2017 16:18:33 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10596 (master - b896466) In-Reply-To: Message-ID: <5900c89d7255_43ff13d1e19b480548e@9940f7d2-5722-4259-bcd5-06cb0c52b042.mail> Build Update for openssl/openssl ------------------------------------- Build: #10596 Status: Still Failing Duration: 23 minutes and 46 seconds Commit: b896466 (master) Author: Matt Caswell Message: Clarify that SSL_CTX_remove_session() marks a session as non-resumable Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3008) View the changeset: https://github.com/openssl/openssl/compare/b6e325067165...b89646684d92 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/226063990 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From matt at openssl.org Wed Apr 26 16:41:45 2017 From: matt at openssl.org (Matt Caswell) Date: Wed, 26 Apr 2017 16:41:45 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493224905.868682.22770.nullmailer@dev.openssl.org> The branch master has been updated via e596c68c315dc896458cd2a97ab62ec88e144e0b (commit) from 8ed9a26616a7101ea698c189fbbb663186676075 (commit) - Log ----------------------------------------------------------------- commit e596c68c315dc896458cd2a97ab62ec88e144e0b Author: Graham Edgecombe Date: Tue Apr 25 19:36:10 2017 +0100 Return success in custom_ext_parse_old_cb_wrap if parse_cb is NULL This fixes a segfault if a NULL parse_cb is passed to SSL_CTX_add_{client,server}_custom_ext, which was supported in the pre-1.1.1 implementation. This behaviour is consistent with the other custom_ext_*_old_cb_wrap functions, and with the new SSL_CTX_add_custom_ext function. CLA: trivial Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3310) ----------------------------------------------------------------------- Summary of changes: ssl/statem/extensions_cust.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ssl/statem/extensions_cust.c b/ssl/statem/extensions_cust.c index 3188ade..6de59e2 100644 --- a/ssl/statem/extensions_cust.c +++ b/ssl/statem/extensions_cust.c @@ -64,6 +64,9 @@ static int custom_ext_parse_old_cb_wrap(SSL *s, unsigned int ext_type, custom_ext_parse_cb_wrap *parse_cb_wrap = (custom_ext_parse_cb_wrap *)parse_arg; + if (parse_cb_wrap->parse_cb == NULL) + return 1; + return parse_cb_wrap->parse_cb(s, ext_type, in, inlen, al, parse_cb_wrap->parse_arg); } From rsalz at openssl.org Wed Apr 26 16:48:27 2017 From: rsalz at openssl.org (Rich Salz) Date: Wed, 26 Apr 2017 16:48:27 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493225307.395916.28174.nullmailer@dev.openssl.org> The branch master has been updated via 30bea14be6bbf77ed60acb9bd1befeb51d4c4b10 (commit) from e596c68c315dc896458cd2a97ab62ec88e144e0b (commit) - Log ----------------------------------------------------------------- commit 30bea14be6bbf77ed60acb9bd1befeb51d4c4b10 Author: Rich Salz Date: Wed Apr 26 12:39:46 2017 -0400 Convert bntest to TEST_ framework Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3265) ----------------------------------------------------------------------- Summary of changes: test/bntest.c | 1328 +++++++++++++++++++++++----------------------------- test/libtestutil.a | Bin 82398 -> 0 bytes 2 files changed, 582 insertions(+), 746 deletions(-) delete mode 100644 test/libtestutil.a diff --git a/test/bntest.c b/test/bntest.c index 0410e07..97ad97a 100644 --- a/test/bntest.c +++ b/test/bntest.c @@ -70,6 +70,12 @@ static const int NUM1 = 50; /* additional tests for some functions */ static FILE *fp; static BN_CTX *ctx; +/* + * Polynomial coefficients used in GFM tests. + */ +static int p0[] = { 163, 7, 6, 3, 0, -1 }; +static int p1[] = { 193, 15, 0, -1 }; + /* * Look for |key| in the stanza and return it or NULL if not found. @@ -106,13 +112,12 @@ static BIGNUM *getBN(STANZA *s, const char *attribute) BIGNUM *ret = NULL; if ((hex = findattr(s, attribute)) == NULL) { - fprintf(stderr, "Can't find %s in test at line %d\n", - attribute, s->start); + TEST_error("Can't find %s in test at line %d", attribute, s->start); return NULL; } if (parseBN(&ret, hex) != (int)strlen(hex)) { - fprintf(stderr, "Could not decode '%s'.\n", hex); + TEST_error("Could not decode '%s'", hex); return NULL; } return ret; @@ -120,14 +125,12 @@ static BIGNUM *getBN(STANZA *s, const char *attribute) static int getint(STANZA *s, int *out, const char *attribute) { - BIGNUM *ret = getBN(s, attribute); + BIGNUM *ret; BN_ULONG word; int st = 0; - if (ret == NULL) - goto err; - - if ((word = BN_get_word(ret)) > INT_MAX) + if (!TEST_ptr(ret = getBN(s, attribute)) + || !TEST_ulong_le(word = BN_get_word(ret), INT_MAX)) goto err; *out = (int)word; @@ -153,13 +156,10 @@ static int equalBN(const char *op, const BIGNUM *expected, const BIGNUM *actual) actstr = OPENSSL_strdup("-0"); else actstr = BN_bn2hex(actual); - if (exstr == NULL || actstr == NULL) + if (!TEST_ptr(exstr) || !TEST_ptr(actstr)) goto err; - fprintf(stderr, "Got %s =\n", op); - fprintf(stderr, "\t%s\n", actstr); - fprintf(stderr, "wanted:\n"); - fprintf(stderr, "\t%s\n", exstr); + TEST_error("Got %s =\n\t%s\nwanted:\n\t%s", op, actstr, exstr); err: OPENSSL_free(exstr); @@ -182,19 +182,20 @@ static int rand_neg(void) static int test_sub() { - BIGNUM *a, *b, *c; - int i; + BIGNUM *a = NULL, *b = NULL, *c = NULL; + int i, st = 0; - a = BN_new(); - b = BN_new(); - c = BN_new(); + if (!TEST_ptr(a = BN_new()) + || !TEST_ptr(b = BN_new()) + || !TEST_ptr(c = BN_new())) + goto err; for (i = 0; i < NUM0 + NUM1; i++) { if (i < NUM1) { BN_bntest_rand(a, 512, 0, 0); BN_copy(b, a); - if (BN_set_bit(a, i) == 0) - return 0; + if (!TEST_int_ne(BN_set_bit(a, i), 0)) + goto err; BN_add_word(b, i); } else { BN_bntest_rand(b, 400 + i - NUM1, 0, 0); @@ -204,30 +205,31 @@ static int test_sub() BN_sub(c, a, b); BN_add(c, c, b); BN_sub(c, c, a); - if (!BN_is_zero(c)) { - printf("Subtract test failed!\n"); - return 0; - } + if (!TEST_true(BN_is_zero(c))) + goto err; } + st = 1; +err: BN_free(a); BN_free(b); BN_free(c); - return 1; + return st; } static int test_div_recip() { - BIGNUM *a, *b, *c, *d, *e; - BN_RECP_CTX *recp; - int i; + BIGNUM *a = NULL, *b = NULL, *c = NULL, *d = NULL, *e = NULL; + BN_RECP_CTX *recp = NULL; + int st = 0, i; - recp = BN_RECP_CTX_new(); - a = BN_new(); - b = BN_new(); - c = BN_new(); - d = BN_new(); - e = BN_new(); + if (!TEST_ptr(a = BN_new()) + || !TEST_ptr(b = BN_new()) + || !TEST_ptr(c = BN_new()) + || !TEST_ptr(d = BN_new()) + || !TEST_ptr(e = BN_new()) + || !TEST_ptr(recp = BN_RECP_CTX_new())) + goto err; for (i = 0; i < NUM0 + NUM1; i++) { if (i < NUM1) { @@ -244,36 +246,32 @@ static int test_div_recip() BN_mul(e, d, b, ctx); BN_add(d, e, c); BN_sub(d, d, a); - if (!BN_is_zero(d)) { - printf("Reciprocal division test failed!\n"); - printf("a="); - BN_print_fp(stdout, a); - printf("\nb="); - BN_print_fp(stdout, b); - printf("\n"); - return 0; - } + if (!TEST_true(BN_is_zero(d))) + goto err; } + st = 1; +err: BN_free(a); BN_free(b); BN_free(c); BN_free(d); BN_free(e); BN_RECP_CTX_free(recp); - return 1; + return st; } static int test_mod() { - BIGNUM *a, *b, *c, *d, *e; - int i; + BIGNUM *a = NULL, *b = NULL, *c = NULL, *d = NULL, *e = NULL; + int st = 0, i; - a = BN_new(); - b = BN_new(); - c = BN_new(); - d = BN_new(); - e = BN_new(); + if (!TEST_ptr(a = BN_new()) + || !TEST_ptr(b = BN_new()) + || !TEST_ptr(c = BN_new()) + || !TEST_ptr(d = BN_new()) + || !TEST_ptr(e = BN_new())) + goto err; BN_bntest_rand(a, 1024, 0, 0); for (i = 0; i < NUM0; i++) { @@ -283,17 +281,17 @@ static int test_mod() BN_mod(c, a, b, ctx); BN_div(d, e, a, b, ctx); BN_sub(e, e, c); - if (!BN_is_zero(e)) { - printf("Modulo test failed!\n"); - return 0; - } + if (!TEST_true(BN_is_zero(e))) + goto err; } + st = 1; +err: BN_free(a); BN_free(b); BN_free(c); BN_free(d); BN_free(e); - return 1; + return st; } static const char *bn1strings[] = { @@ -344,11 +342,10 @@ static char *glue(const char *list[]) for (i = 0; list[i] != NULL; i++) len += strlen(list[i]); - p = save = OPENSSL_malloc(len + 1); - if (p != NULL) { - for (i = 0; list[i] != NULL; i++) - p += strlen(strcpy(p, list[i])); - } + if (!TEST_ptr(p = save = OPENSSL_malloc(len + 1))) + return NULL; + for (i = 0; list[i] != NULL; i++) + p += strlen(strcpy(p, list[i])); return save; } @@ -358,30 +355,31 @@ static char *glue(const char *list[]) */ static int test_modexp_mont5() { - BIGNUM *a, *p, *m, *d, *e, *b, *n, *c; - BN_MONT_CTX *mont; + BIGNUM *a = NULL, *p = NULL, *m = NULL, *d = NULL, *e = NULL; + BIGNUM *b = NULL, *n = NULL, *c = NULL; + BN_MONT_CTX *mont = NULL; char *bigstring; + int st = 0; - a = BN_new(); - p = BN_new(); - m = BN_new(); - d = BN_new(); - e = BN_new(); - b = BN_new(); - n = BN_new(); - c = BN_new(); - mont = BN_MONT_CTX_new(); + if (!TEST_ptr(a = BN_new()) + || !TEST_ptr(p = BN_new()) + || !TEST_ptr(m = BN_new()) + || !TEST_ptr(d = BN_new()) + || !TEST_ptr(e = BN_new()) + || !TEST_ptr(b = BN_new()) + || !TEST_ptr(n = BN_new()) + || !TEST_ptr(c = BN_new()) + || !TEST_ptr(mont = BN_MONT_CTX_new())) + goto err; BN_bntest_rand(m, 1024, 0, 1); /* must be odd for montgomery */ /* Zero exponent */ BN_bntest_rand(a, 1024, 0, 0); BN_zero(p); - if (!BN_mod_exp_mont_consttime(d, a, p, m, ctx, NULL)) - return 0; - if (!BN_is_one(d)) { - printf("Modular exponentiation test failed!\n"); - return 0; - } + if (!TEST_true(BN_mod_exp_mont_consttime(d, a, p, m, ctx, NULL))) + goto err; + if (!TEST_true(BN_is_one(d))) + goto err; /* Regression test for carry bug in mulx4x_mont */ BN_hex2bn(&a, @@ -402,11 +400,8 @@ static int test_modexp_mont5() BN_MONT_CTX_set(mont, n, ctx); BN_mod_mul_montgomery(c, a, b, mont, ctx); BN_mod_mul_montgomery(d, b, a, mont, ctx); - if (BN_cmp(c, d)) { - fprintf(stderr, "Montgomery multiplication test failed:" - " a*b != b*a.\n"); - return 0; - } + if (!TEST_int_eq(BN_cmp(c, d), 0)) + goto err; /* Regression test for carry bug in sqr[x]8x_mont */ bigstring = glue(bn1strings); @@ -420,21 +415,16 @@ static int test_modexp_mont5() BN_MONT_CTX_set(mont, n, ctx); BN_mod_mul_montgomery(c, a, a, mont, ctx); BN_mod_mul_montgomery(d, a, b, mont, ctx); - if (BN_cmp(c, d)) { - fprintf(stderr, "Montgomery multiplication test failed:" - " a**2 != a*a.\n"); - return 0; - } + if (!TEST_int_eq(BN_cmp(c, d), 0)) + goto err; /* Zero input */ BN_bntest_rand(p, 1024, 0, 0); BN_zero(a); - if (!BN_mod_exp_mont_consttime(d, a, p, m, ctx, NULL)) - return 0; - if (!BN_is_zero(d)) { - fprintf(stderr, "Modular exponentiation test failed!\n"); - return 0; - } + if (!TEST_true(BN_mod_exp_mont_consttime(d, a, p, m, ctx, NULL)) + || !TEST_true(BN_is_zero(d))) + goto err; + /* * Craft an input whose Montgomery representation is 1, i.e., shorter * than the modulus m, in order to test the const time precomputation @@ -442,26 +432,22 @@ static int test_modexp_mont5() */ BN_one(a); BN_MONT_CTX_set(mont, m, ctx); - if (!BN_from_montgomery(e, a, mont, ctx)) - return 0; - if (!BN_mod_exp_mont_consttime(d, e, p, m, ctx, NULL)) - return 0; - if (!BN_mod_exp_simple(a, e, p, m, ctx)) - return 0; - if (BN_cmp(a, d) != 0) { - printf("Modular exponentiation test failed!\n"); - return 0; - } + if (!TEST_true(BN_from_montgomery(e, a, mont, ctx)) + || !TEST_true(BN_mod_exp_mont_consttime(d, e, p, m, ctx, NULL)) + || !TEST_true(BN_mod_exp_simple(a, e, p, m, ctx)) + || !TEST_int_eq(BN_cmp(a, d), 0)) + goto err; + /* Finally, some regular test vectors. */ BN_bntest_rand(e, 1024, 0, 0); - if (!BN_mod_exp_mont_consttime(d, e, p, m, ctx, NULL)) - return 0; - if (!BN_mod_exp_simple(a, e, p, m, ctx)) - return 0; - if (BN_cmp(a, d) != 0) { - printf("Modular exponentiation test failed!\n"); - return 0; - } + if (!TEST_true(BN_mod_exp_mont_consttime(d, e, p, m, ctx, NULL)) + || !TEST_true(BN_mod_exp_simple(a, e, p, m, ctx)) + || !TEST_int_eq(BN_cmp(a, d), 0)) + goto err; + + st = 1; + +err: BN_MONT_CTX_free(mont); BN_free(a); BN_free(p); @@ -471,18 +457,19 @@ static int test_modexp_mont5() BN_free(b); BN_free(n); BN_free(c); - return 1; + return st; } #ifndef OPENSSL_NO_EC2M static int test_gf2m_add() { - BIGNUM *a, *b, *c; + BIGNUM *a = NULL, *b = NULL, *c = NULL; int i, st = 0; - a = BN_new(); - b = BN_new(); - c = BN_new(); + if (!TEST_ptr(a = BN_new()) + || !TEST_ptr(b = BN_new()) + || !TEST_ptr(c = BN_new())) + goto err; for (i = 0; i < NUM0; i++) { BN_rand(a, 512, 0, 0); @@ -491,17 +478,13 @@ static int test_gf2m_add() b->neg = rand_neg(); BN_GF2m_add(c, a, b); /* Test that two added values have the correct parity. */ - if ((BN_is_odd(a) && BN_is_odd(c)) - || (!BN_is_odd(a) && !BN_is_odd(c))) { - printf("GF(2^m) addition test (a) failed!\n"); + if (!TEST_false((BN_is_odd(a) && BN_is_odd(c)) + || (!BN_is_odd(a) && !BN_is_odd(c)))) goto err; - } BN_GF2m_add(c, c, c); /* Test that c + c = 0. */ - if (!BN_is_zero(c)) { - printf("GF(2^m) addition test (b) failed!\n"); + if (!TEST_true(BN_is_zero(c))) goto err; - } } st = 1; err: @@ -513,17 +496,16 @@ static int test_gf2m_add() static int test_gf2m_mod() { - static int p0[] = { 163, 7, 6, 3, 0, -1 }; - static int p1[] = { 193, 15, 0, -1 }; - BIGNUM *a, *b[2], *c, *d, *e; + BIGNUM *a = NULL, *b[2] = {NULL,NULL}, *c = NULL, *d = NULL, *e = NULL; int i, j, st = 0; - a = BN_new(); - b[0] = BN_new(); - b[1] = BN_new(); - c = BN_new(); - d = BN_new(); - e = BN_new(); + if (!TEST_ptr(a = BN_new()) + || !TEST_ptr(b[0] = BN_new()) + || !TEST_ptr(b[1] = BN_new()) + || !TEST_ptr(c = BN_new()) + || !TEST_ptr(d = BN_new()) + || !TEST_ptr(e = BN_new())) + goto err; BN_GF2m_arr2poly(p0, b[0]); BN_GF2m_arr2poly(p1, b[1]); @@ -535,10 +517,8 @@ static int test_gf2m_mod() BN_GF2m_add(d, a, c); BN_GF2m_mod(e, d, b[j]); /* Test that a + (a mod p) mod p == 0. */ - if (!BN_is_zero(e)) { - printf("GF(2^m) modulo test failed!\n"); + if (!TEST_true(BN_is_zero(e))) goto err; - } } } st = 1; @@ -554,20 +534,20 @@ static int test_gf2m_mod() static int test_gf2m_mul() { - BIGNUM *a, *b[2], *c, *d, *e, *f, *g, *h; + BIGNUM *a, *b[2] = {NULL, NULL}, *c = NULL, *d = NULL; + BIGNUM *e = NULL, *f = NULL, *g = NULL, *h = NULL; int i, j, st = 0; - int p0[] = { 163, 7, 6, 3, 0, -1 }; - int p1[] = { 193, 15, 0, -1 }; - - a = BN_new(); - b[0] = BN_new(); - b[1] = BN_new(); - c = BN_new(); - d = BN_new(); - e = BN_new(); - f = BN_new(); - g = BN_new(); - h = BN_new(); + + if (!TEST_ptr(a = BN_new()) + || !TEST_ptr(b[0] = BN_new()) + || !TEST_ptr(b[1] = BN_new()) + || !TEST_ptr(c = BN_new()) + || !TEST_ptr(d = BN_new()) + || !TEST_ptr(e = BN_new()) + || !TEST_ptr(f = BN_new()) + || !TEST_ptr(g = BN_new()) + || !TEST_ptr(h = BN_new())) + goto err; BN_GF2m_arr2poly(p0, b[0]); BN_GF2m_arr2poly(p1, b[1]); @@ -584,13 +564,12 @@ static int test_gf2m_mul() BN_GF2m_add(f, e, g); BN_GF2m_add(f, f, h); /* Test that (a+d)*c = a*c + d*c. */ - if (!BN_is_zero(f)) { - printf("GF(2^m) modular multiplication test failed!\n"); + if (!TEST_true(BN_is_zero(f))) goto err; - } } } st = 1; + err: BN_free(a); BN_free(b[0]); @@ -606,16 +585,15 @@ static int test_gf2m_mul() static int test_gf2m_sqr() { - BIGNUM *a, *b[2], *c, *d; + BIGNUM *a = NULL, *b[2] = {NULL,NULL}, *c = NULL, *d = NULL; int i, j, st = 0; - int p0[] = { 163, 7, 6, 3, 0, -1 }; - int p1[] = { 193, 15, 0, -1 }; - a = BN_new(); - b[0] = BN_new(); - b[1] = BN_new(); - c = BN_new(); - d = BN_new(); + if (!TEST_ptr(a = BN_new()) + || !TEST_ptr(b[0] = BN_new()) + || !TEST_ptr(b[1] = BN_new()) + || !TEST_ptr(c = BN_new()) + || !TEST_ptr(d = BN_new())) + goto err; BN_GF2m_arr2poly(p0, b[0]); BN_GF2m_arr2poly(p1, b[1]); @@ -628,10 +606,8 @@ static int test_gf2m_sqr() BN_GF2m_mod_mul(d, a, d, b[j], ctx); BN_GF2m_add(d, c, d); /* Test that a*a = a^2. */ - if (!BN_is_zero(d)) { - printf("GF(2^m) modular squaring test failed!\n"); + if (!TEST_true(BN_is_zero(d))) goto err; - } } } st = 1; @@ -646,16 +622,15 @@ static int test_gf2m_sqr() static int test_gf2m_modinv() { - BIGNUM *a, *b[2], *c, *d; + BIGNUM *a = NULL, *b[2] = {NULL,NULL}, *c = NULL, *d = NULL; int i, j, st = 0; - int p0[] = { 163, 7, 6, 3, 0, -1 }; - int p1[] = { 193, 15, 0, -1 }; - a = BN_new(); - b[0] = BN_new(); - b[1] = BN_new(); - c = BN_new(); - d = BN_new(); + if (!TEST_ptr(a = BN_new()) + || !TEST_ptr(b[0] = BN_new()) + || !TEST_ptr(b[1] = BN_new()) + || !TEST_ptr(c = BN_new()) + || !TEST_ptr(d = BN_new())) + goto err; BN_GF2m_arr2poly(p0, b[0]); BN_GF2m_arr2poly(p1, b[1]); @@ -666,10 +641,8 @@ static int test_gf2m_modinv() BN_GF2m_mod_inv(c, a, b[j], ctx); BN_GF2m_mod_mul(d, a, c, b[j], ctx); /* Test that ((1/a)*a) = 1. */ - if (!BN_is_one(d)) { - printf("GF(2^m) modular inversion test failed!\n"); + if (!TEST_true(BN_is_one(d))) goto err; - } } } st = 1; @@ -684,18 +657,18 @@ static int test_gf2m_modinv() static int test_gf2m_moddiv() { - BIGNUM *a, *b[2], *c, *d, *e, *f; + BIGNUM *a = NULL, *b[2] = {NULL,NULL}, *c = NULL, *d = NULL; + BIGNUM *e = NULL, *f = NULL; int i, j, st = 0; - int p0[] = { 163, 7, 6, 3, 0, -1 }; - int p1[] = { 193, 15, 0, -1 }; - a = BN_new(); - b[0] = BN_new(); - b[1] = BN_new(); - c = BN_new(); - d = BN_new(); - e = BN_new(); - f = BN_new(); + if (!TEST_ptr(a = BN_new()) + || !TEST_ptr(b[0] = BN_new()) + || !TEST_ptr(b[1] = BN_new()) + || !TEST_ptr(c = BN_new()) + || !TEST_ptr(d = BN_new()) + || !TEST_ptr(e = BN_new()) + || !TEST_ptr(f = BN_new())) + goto err; BN_GF2m_arr2poly(p0, b[0]); BN_GF2m_arr2poly(p1, b[1]); @@ -708,10 +681,8 @@ static int test_gf2m_moddiv() BN_GF2m_mod_mul(e, d, c, b[j], ctx); BN_GF2m_mod_div(f, a, e, b[j], ctx); /* Test that ((a/c)*c)/a = 1. */ - if (!BN_is_one(f)) { - printf("GF(2^m) modular division test failed!\n"); + if (!TEST_true(BN_is_one(f))) goto err; - } } } st = 1; @@ -728,18 +699,18 @@ static int test_gf2m_moddiv() static int test_gf2m_modexp() { - BIGNUM *a, *b[2], *c, *d, *e, *f; + BIGNUM *a = NULL, *b[2] = {NULL,NULL}, *c = NULL, *d = NULL; + BIGNUM *e = NULL, *f = NULL; int i, j, st = 0; - int p0[] = { 163, 7, 6, 3, 0, -1 }; - int p1[] = { 193, 15, 0, -1 }; - a = BN_new(); - b[0] = BN_new(); - b[1] = BN_new(); - c = BN_new(); - d = BN_new(); - e = BN_new(); - f = BN_new(); + if (!TEST_ptr(a = BN_new()) + || !TEST_ptr(b[0] = BN_new()) + || !TEST_ptr(b[1] = BN_new()) + || !TEST_ptr(c = BN_new()) + || !TEST_ptr(d = BN_new()) + || !TEST_ptr(e = BN_new()) + || !TEST_ptr(f = BN_new())) + goto err; BN_GF2m_arr2poly(p0, b[0]); BN_GF2m_arr2poly(p1, b[1]); @@ -756,10 +727,8 @@ static int test_gf2m_modexp() BN_GF2m_mod_exp(f, a, f, b[j], ctx); BN_GF2m_add(f, e, f); /* Test that a^(c+d)=a^c*a^d. */ - if (!BN_is_zero(f)) { - printf("GF(2^m) modular exponentiation test failed!\n"); + if (!TEST_true(BN_is_zero(f))) goto err; - } } } st = 1; @@ -776,18 +745,18 @@ static int test_gf2m_modexp() static int test_gf2m_modsqrt() { - BIGNUM *a, *b[2], *c, *d, *e, *f; + BIGNUM *a = NULL, *b[2] = {NULL,NULL}, *c = NULL, *d = NULL; + BIGNUM *e = NULL, *f = NULL; int i, j, st = 0; - int p0[] = { 163, 7, 6, 3, 0, -1 }; - int p1[] = { 193, 15, 0, -1 }; - a = BN_new(); - b[0] = BN_new(); - b[1] = BN_new(); - c = BN_new(); - d = BN_new(); - e = BN_new(); - f = BN_new(); + if (!TEST_ptr(a = BN_new()) + || !TEST_ptr(b[0] = BN_new()) + || !TEST_ptr(b[1] = BN_new()) + || !TEST_ptr(c = BN_new()) + || !TEST_ptr(d = BN_new()) + || !TEST_ptr(e = BN_new()) + || !TEST_ptr(f = BN_new())) + goto err; BN_GF2m_arr2poly(p0, b[0]); BN_GF2m_arr2poly(p1, b[1]); @@ -800,10 +769,8 @@ static int test_gf2m_modsqrt() BN_GF2m_mod_sqr(e, d, b[j], ctx); BN_GF2m_add(f, c, e); /* Test that d^2 = a, where d = sqrt(a). */ - if (!BN_is_zero(f)) { - printf("GF(2^m) modular square root test failed!\n"); + if (!TEST_true(BN_is_zero(f))) goto err; - } } } st = 1; @@ -820,17 +787,17 @@ static int test_gf2m_modsqrt() static int test_gf2m_modsolvequad() { - BIGNUM *a, *b[2], *c, *d, *e; + BIGNUM *a = NULL, *b[2] = {NULL,NULL}, *c = NULL, *d = NULL; + BIGNUM *e = NULL; int i, j, s = 0, t, st = 0; - int p0[] = { 163, 7, 6, 3, 0, -1 }; - int p1[] = { 193, 15, 0, -1 }; - a = BN_new(); - b[0] = BN_new(); - b[1] = BN_new(); - c = BN_new(); - d = BN_new(); - e = BN_new(); + if (!TEST_ptr(a = BN_new()) + || !TEST_ptr(b[0] = BN_new()) + || !TEST_ptr(b[1] = BN_new()) + || !TEST_ptr(c = BN_new()) + || !TEST_ptr(d = BN_new()) + || !TEST_ptr(e = BN_new())) + goto err; BN_GF2m_arr2poly(p0, b[0]); BN_GF2m_arr2poly(p1, b[1]); @@ -848,18 +815,13 @@ static int test_gf2m_modsolvequad() /* * Test that solution of quadratic c satisfies c^2 + c = a. */ - if (!BN_is_zero(e)) { - printf("GF(2^m) modular solve quadratic test failed!\n"); + if (!TEST_true(BN_is_zero(e))) goto err; - } - } } } - if (s == 0) { - printf("All %i tests of GF(2^m) modular solve quadratic resulted in no roots;\n", - NUM0); - printf("this is very unlikely and probably indicates an error.\n"); + if (!TEST_int_ge(s, 0)) { + TEST_info("%d tests found no roots; probably an error", NUM0); goto err; } st = 1; @@ -876,16 +838,13 @@ static int test_gf2m_modsolvequad() static int test_kronecker() { - BIGNUM *a, *b, *r, *t; - int i; - int legendre, kronecker; - int st = 0; + BIGNUM *a = NULL, *b = NULL, *r = NULL, *t = NULL; + int i, legendre, kronecker, st = 0; - a = BN_new(); - b = BN_new(); - r = BN_new(); - t = BN_new(); - if (a == NULL || b == NULL || r == NULL || t == NULL) + if (!TEST_ptr(a = BN_new()) + || !TEST_ptr(b = BN_new()) + || !TEST_ptr(r = BN_new()) + || !TEST_ptr(t = BN_new())) goto err; /* @@ -898,27 +857,27 @@ static int test_kronecker() * is prime but whether BN_kronecker works.) */ - if (!BN_generate_prime_ex(b, 512, 0, NULL, NULL, NULL)) + if (!TEST_true(BN_generate_prime_ex(b, 512, 0, NULL, NULL, NULL))) goto err; b->neg = rand_neg(); for (i = 0; i < NUM0; i++) { - if (!BN_bntest_rand(a, 512, 0, 0)) + if (!TEST_true(BN_bntest_rand(a, 512, 0, 0))) goto err; a->neg = rand_neg(); /* t := (|b|-1)/2 (note that b is odd) */ - if (!BN_copy(t, b)) + if (!TEST_true(BN_copy(t, b))) goto err; t->neg = 0; - if (!BN_sub_word(t, 1)) + if (!TEST_true(BN_sub_word(t, 1))) goto err; - if (!BN_rshift1(t, t)) + if (!TEST_true(BN_rshift1(t, t))) goto err; /* r := a^t mod b */ b->neg = 0; - if (!BN_mod_exp_recp(r, a, t, b, ctx)) + if (!TEST_true(BN_mod_exp_recp(r, a, t, b, ctx))) goto err; b->neg = 1; @@ -927,30 +886,23 @@ static int test_kronecker() else if (BN_is_zero(r)) legendre = 0; else { - if (!BN_add_word(r, 1)) + if (!TEST_true(BN_add_word(r, 1))) goto err; - if (0 != BN_ucmp(r, b)) { - printf("Legendre symbol computation failed\n"); + if (!TEST_int_eq(BN_ucmp(r, b), 0)) { + TEST_info("Legendre symbol computation failed"); goto err; } legendre = -1; } - kronecker = BN_kronecker(a, b, ctx); - if (kronecker < -1) + if (!TEST_int_ge(kronecker = BN_kronecker(a, b, ctx), -1)) goto err; /* we actually need BN_kronecker(a, |b|) */ if (a->neg && b->neg) kronecker = -kronecker; - if (legendre != kronecker) { - printf("legendre != kronecker; a = "); - BN_print_fp(stdout, a); - printf(", b = "); - BN_print_fp(stdout, b); - printf("\n"); + if (!TEST_int_eq(legendre, kronecker)) goto err; - } } st = 1; @@ -964,21 +916,21 @@ static int test_kronecker() static int file_sum(STANZA *s) { - BIGNUM *a = getBN(s, "A"); - BIGNUM *b = getBN(s, "B"); - BIGNUM *sum = getBN(s, "Sum"); - BIGNUM *ret = BN_new(); + BIGNUM *a = NULL, *b = NULL, *sum = NULL, *ret = NULL; BN_ULONG b_word; int st = 0; - if (a == NULL || b == NULL || sum == NULL || ret == NULL) + if (!TEST_ptr(a = getBN(s, "A")) + || !TEST_ptr(b = getBN(s, "B")) + || !TEST_ptr(sum = getBN(s, "Sum")) + || !TEST_ptr(ret = BN_new())) goto err; - if (!BN_add(ret, a, b) + if (!TEST_true(BN_add(ret, a, b)) || !equalBN("A + B", sum, ret) - || !BN_sub(ret, sum, a) + || !TEST_true(BN_sub(ret, sum, a)) || !equalBN("Sum - A", b, ret) - || !BN_sub(ret, sum, b) + || !TEST_true(BN_sub(ret, sum, b)) || !equalBN("Sum - B", a, ret)) goto err; @@ -987,23 +939,23 @@ static int file_sum(STANZA *s) * or when |r| and |b| point to the same BIGNUM. * TODO: Test where all of |r|, |a|, and |b| point to the same BIGNUM. */ - if (!BN_copy(ret, a) - || !BN_add(ret, ret, b) + if (!TEST_true(BN_copy(ret, a)) + || !TEST_true(BN_add(ret, ret, b)) || !equalBN("A + B (r is a)", sum, ret) - || !BN_copy(ret, b) - || !BN_add(ret, a, ret) + || !TEST_true(BN_copy(ret, b)) + || !TEST_true(BN_add(ret, a, ret)) || !equalBN("A + B (r is b)", sum, ret) - || !BN_copy(ret, sum) - || !BN_sub(ret, ret, a) + || !TEST_true(BN_copy(ret, sum)) + || !TEST_true(BN_sub(ret, ret, a)) || !equalBN("Sum - A (r is a)", b, ret) - || !BN_copy(ret, a) - || !BN_sub(ret, sum, ret) + || !TEST_true(BN_copy(ret, a)) + || !TEST_true(BN_sub(ret, sum, ret)) || !equalBN("Sum - A (r is b)", b, ret) - || !BN_copy(ret, sum) - || !BN_sub(ret, ret, b) + || !TEST_true(BN_copy(ret, sum)) + || !TEST_true(BN_sub(ret, ret, b)) || !equalBN("Sum - B (r is a)", a, ret) - || !BN_copy(ret, b) - || !BN_sub(ret, sum, ret) + || !TEST_true(BN_copy(ret, b)) + || !TEST_true(BN_sub(ret, sum, ret)) || !equalBN("Sum - B (r is b)", a, ret)) goto err; @@ -1015,11 +967,11 @@ static int file_sum(STANZA *s) * TODO: test that. */ if (!BN_is_negative(a) && !BN_is_negative(b) && BN_cmp(a, b) >= 0) { - if (!BN_uadd(ret, a, b) + if (!TEST_true(BN_uadd(ret, a, b)) || !equalBN("A +u B", sum, ret) - || !BN_usub(ret, sum, a) + || !TEST_true(BN_usub(ret, sum, a)) || !equalBN("Sum -u A", b, ret) - || !BN_usub(ret, sum, b) + || !TEST_true(BN_usub(ret, sum, b)) || !equalBN("Sum -u B", a, ret)) goto err; /* @@ -1027,23 +979,23 @@ static int file_sum(STANZA *s) * BIGNUM, or when |r| and |b| point to the same BIGNUM. * TODO: Test where all of |r|, |a|, and |b| point to the same BIGNUM. */ - if (!BN_copy(ret, a) - || !BN_uadd(ret, ret, b) + if (!TEST_true(BN_copy(ret, a)) + || !TEST_true(BN_uadd(ret, ret, b)) || !equalBN("A +u B (r is a)", sum, ret) - || !BN_copy(ret, b) - || !BN_uadd(ret, a, ret) + || !TEST_true(BN_copy(ret, b)) + || !TEST_true(BN_uadd(ret, a, ret)) || !equalBN("A +u B (r is b)", sum, ret) - || !BN_copy(ret, sum) - || !BN_usub(ret, ret, a) + || !TEST_true(BN_copy(ret, sum)) + || !TEST_true(BN_usub(ret, ret, a)) || !equalBN("Sum -u A (r is a)", b, ret) - || !BN_copy(ret, a) - || !BN_usub(ret, sum, ret) + || !TEST_true(BN_copy(ret, a)) + || !TEST_true(BN_usub(ret, sum, ret)) || !equalBN("Sum -u A (r is b)", b, ret) - || !BN_copy(ret, sum) - || !BN_usub(ret, ret, b) + || !TEST_true(BN_copy(ret, sum)) + || !TEST_true(BN_usub(ret, ret, b)) || !equalBN("Sum -u B (r is a)", a, ret) - || !BN_copy(ret, b) - || !BN_usub(ret, sum, ret) + || !TEST_true(BN_copy(ret, b)) + || !TEST_true(BN_usub(ret, sum, ret)) || !equalBN("Sum -u B (r is b)", a, ret)) goto err; } @@ -1053,11 +1005,11 @@ static int file_sum(STANZA *s) */ b_word = BN_get_word(b); if (!BN_is_negative(b) && b_word != (BN_ULONG)-1) { - if (!BN_copy(ret, a) - || !BN_add_word(ret, b_word) + if (!TEST_true(BN_copy(ret, a)) + || !TEST_true(BN_add_word(ret, b_word)) || !equalBN("A + B (word)", sum, ret) - || !BN_copy(ret, sum) - || !BN_sub_word(ret, b_word) + || !TEST_true(BN_copy(ret, sum)) + || !TEST_true(BN_sub_word(ret, b_word)) || !equalBN("Sum - B (word)", a, ret)) goto err; } @@ -1073,41 +1025,41 @@ err: static int file_lshift1(STANZA *s) { - BIGNUM *a = getBN(s, "A"); - BIGNUM *lshift1 = getBN(s, "LShift1"); - BIGNUM *zero = BN_new(); - BIGNUM *ret = BN_new(); - BIGNUM *two = BN_new(); - BIGNUM *remainder = BN_new(); + BIGNUM *a = NULL, *lshift1 = NULL, *zero = NULL, *ret = NULL; + BIGNUM *two = NULL, *remainder = NULL; int st = 0; - if (a == NULL || lshift1 == NULL || zero == NULL - || ret == NULL || two == NULL || remainder == NULL) + if (!TEST_ptr(a = getBN(s, "A")) + || !TEST_ptr(lshift1 = getBN(s, "LShift1")) + || !TEST_ptr(zero = BN_new()) + || !TEST_ptr(ret = BN_new()) + || !TEST_ptr(two = BN_new()) + || !TEST_ptr(remainder = BN_new())) goto err; BN_zero(zero); - if (!BN_set_word(two, 2) - || !BN_add(ret, a, a) + if (!TEST_true(BN_set_word(two, 2)) + || !TEST_true(BN_add(ret, a, a)) || !equalBN("A + A", lshift1, ret) - || !BN_mul(ret, a, two, ctx) + || !TEST_true(BN_mul(ret, a, two, ctx)) || !equalBN("A * 2", lshift1, ret) - || !BN_div(ret, remainder, lshift1, two, ctx) + || !TEST_true(BN_div(ret, remainder, lshift1, two, ctx)) || !equalBN("LShift1 / 2", a, ret) || !equalBN("LShift1 % 2", zero, remainder) - || !BN_lshift1(ret, a) + || !TEST_true(BN_lshift1(ret, a)) || !equalBN("A << 1", lshift1, ret) - || !BN_rshift1(ret, lshift1) + || !TEST_true(BN_rshift1(ret, lshift1)) || !equalBN("LShift >> 1", a, ret) - || !BN_rshift1(ret, lshift1) + || !TEST_true(BN_rshift1(ret, lshift1)) || !equalBN("LShift >> 1", a, ret)) goto err; /* Set the LSB to 1 and test rshift1 again. */ - if (!BN_set_bit(lshift1, 0) - || !BN_div(ret, NULL /* rem */ , lshift1, two, ctx) + if (!TEST_true(BN_set_bit(lshift1, 0)) + || !TEST_true(BN_div(ret, NULL /* rem */ , lshift1, two, ctx)) || !equalBN("(LShift1 | 1) / 2", a, ret) - || !BN_rshift1(ret, lshift1) + || !TEST_true(BN_rshift1(ret, lshift1)) || !equalBN("(LShift | 1) >> 1", a, ret)) goto err; @@ -1125,18 +1077,16 @@ err: static int file_lshift(STANZA *s) { - BIGNUM *a = getBN(s, "A"); - BIGNUM *lshift = getBN(s, "LShift"); - BIGNUM *ret = BN_new(); - int n = 0; - int st = 0; + BIGNUM *a = NULL, *lshift = NULL, *ret = NULL; + int n = 0, st = 0; - if (a == NULL || lshift == NULL || ret == NULL || !getint(s, &n, "N")) - goto err; + if (!TEST_ptr(a = getBN(s, "A")) + || !TEST_ptr(lshift = getBN(s, "LShift")) + || !TEST_ptr(ret = BN_new())) - if (!BN_lshift(ret, a, n) + if (!TEST_true(BN_lshift(ret, a, n)) || !equalBN("A << N", lshift, ret) - || !BN_rshift(ret, lshift, n) + || !TEST_true(BN_rshift(ret, lshift, n)) || !equalBN("A >> N", a, ret)) goto err; @@ -1150,85 +1100,78 @@ err: static int file_rshift(STANZA *s) { - BIGNUM *a = getBN(s, "A"); - BIGNUM *rshift = getBN(s, "RShift"); - BIGNUM *ret = BN_new(); - int n = 0; - int errcnt = 1; + BIGNUM *a = NULL, *rshift = NULL, *ret = NULL; + int n = 0, st = 0; - if (a == NULL || rshift == NULL || ret == NULL || !getint(s, &n, "N")) + if (!TEST_ptr(a = getBN(s, "A")) + || !TEST_ptr(rshift = getBN(s, "RShift")) + || !TEST_ptr(ret = BN_new()) + || !getint(s, &n, "N")) goto err; - errcnt = 0; - if (!BN_rshift(ret, a, n) + if (!TEST_true(BN_rshift(ret, a, n)) || !equalBN("A >> N", rshift, ret)) - errcnt++; + goto err; /* If N == 1, try with rshift1 as well */ if (n == 1) { - if (!BN_rshift1(ret, a) + if (!TEST_true(BN_rshift1(ret, a)) || !equalBN("A >> 1 (rshift1)", rshift, ret)) - errcnt++; + goto err; } + st = 1; err: BN_free(a); BN_free(rshift); BN_free(ret); - return errcnt == 0; + return st; } static int file_square(STANZA *s) { - BIGNUM *a = getBN(s, "A"); - BIGNUM *square = getBN(s, "Square"); - BIGNUM *zero = BN_new(); - BIGNUM *ret = BN_new(); - BIGNUM *remainder = BN_new(); - BIGNUM *tmp = NULL; + BIGNUM *a = NULL, *square = NULL, *zero = NULL, *ret = NULL; + BIGNUM *remainder = NULL, *tmp = NULL; int st = 0; - if (a == NULL || square == NULL || zero == NULL || ret == NULL - || remainder == NULL) + if (!TEST_ptr(a = getBN(s, "A")) + || !TEST_ptr(square = getBN(s, "Square")) + || !TEST_ptr(zero = BN_new()) + || !TEST_ptr(ret = BN_new()) + || !TEST_ptr(remainder = BN_new())) goto err; BN_zero(zero); - - if (!BN_sqr(ret, a, ctx) + if (!TEST_true(BN_sqr(ret, a, ctx)) || !equalBN("A^2", square, ret) - || !BN_mul(ret, a, a, ctx) + || !TEST_true(BN_mul(ret, a, a, ctx)) || !equalBN("A * A", square, ret) - || !BN_div(ret, remainder, square, a, ctx) + || !TEST_true(BN_div(ret, remainder, square, a, ctx)) || !equalBN("Square / A", a, ret) || !equalBN("Square % A", zero, remainder)) goto err; #if HAVE_BN_SQRT BN_set_negative(a, 0); - if (!BN_sqrt(ret, square, ctx) + if (!TEST_true(BN_sqrt(ret, square, ctx)) || !equalBN("sqrt(Square)", a, ret)) goto err; /* BN_sqrt should fail on non-squares and negative numbers. */ - if (!BN_is_zero(square)) { - tmp = BN_new(); - if (tmp == NULL || !BN_copy(tmp, square)) + if (!TEST_true(BN_is_zero(square))) { + if (!TEST_ptr(tmp = BN_new()) || !TEST_true(BN_copy(tmp, square))) goto err; BN_set_negative(tmp, 1); - if (BN_sqrt(ret, tmp, ctx)) { - fprintf(stderr, "BN_sqrt succeeded on a negative number"); + if (!TEST_int_eq(BN_sqrt(ret, tmp, ctx), 0)) goto err; - } ERR_clear_error(); BN_set_negative(tmp, 0); if (BN_add(tmp, tmp, BN_value_one())) goto err; - if (BN_sqrt(ret, tmp, ctx)) { - fprintf(stderr, "BN_sqrt succeeded on a non-square"); + if (!TEST_int_eq(BN_sqrt(ret, tmp, ctx))) goto err; - } ERR_clear_error(); } #endif @@ -1246,26 +1189,26 @@ err: static int file_product(STANZA *s) { - BIGNUM *a = getBN(s, "A"); - BIGNUM *b = getBN(s, "B"); - BIGNUM *product = getBN(s, "Product"); - BIGNUM *ret = BN_new(); - BIGNUM *remainder = BN_new(); - BIGNUM *zero = BN_new(); + BIGNUM *a = NULL, *b = NULL, *product = NULL, *ret = NULL; + BIGNUM *remainder = NULL, *zero = NULL; int st = 0; - if (a == NULL || b == NULL || product == NULL || ret == NULL - || remainder == NULL || zero == NULL) + if (!TEST_ptr(a = getBN(s, "A")) + || !TEST_ptr(b = getBN(s, "B")) + || !TEST_ptr(product = getBN(s, "Product")) + || !TEST_ptr(ret = BN_new()) + || !TEST_ptr(remainder = BN_new()) + || !TEST_ptr(zero = BN_new())) goto err; BN_zero(zero); - if (!BN_mul(ret, a, b, ctx) + if (!TEST_true(BN_mul(ret, a, b, ctx)) || !equalBN("A * B", product, ret) - || !BN_div(ret, remainder, product, a, ctx) + || !TEST_true(BN_div(ret, remainder, product, a, ctx)) || !equalBN("Product / A", b, ret) || !equalBN("Product % A", zero, remainder) - || !BN_div(ret, remainder, product, b, ctx) + || !TEST_true(BN_div(ret, remainder, product, b, ctx)) || !equalBN("Product / B", a, ret) || !equalBN("Product % B", zero, remainder)) goto err; @@ -1283,25 +1226,25 @@ err: static int file_quotient(STANZA *s) { - BIGNUM *a = getBN(s, "A"); - BIGNUM *b = getBN(s, "B"); - BIGNUM *quotient = getBN(s, "Quotient"); - BIGNUM *remainder = getBN(s, "Remainder"); - BIGNUM *ret = BN_new(); - BIGNUM *ret2 = BN_new(); - BIGNUM *nnmod = BN_new(); + BIGNUM *a = NULL, *b = NULL, *quotient = NULL, *remainder = NULL; + BIGNUM *ret = NULL, *ret2 = NULL, *nnmod = NULL; BN_ULONG b_word, ret_word; int st = 0; - if (a == NULL || b == NULL || quotient == NULL || remainder == NULL - || ret == NULL || ret2 == NULL || nnmod == NULL) + if (!TEST_ptr(a = getBN(s, "A")) + || !TEST_ptr(b = getBN(s, "B")) + || !TEST_ptr(quotient = getBN(s, "Quotient")) + || !TEST_ptr(remainder = getBN(s, "Remainder")) + || !TEST_ptr(ret = BN_new()) + || !TEST_ptr(ret2 = BN_new()) + || !TEST_ptr(nnmod = BN_new())) goto err; - if (!BN_div(ret, ret2, a, b, ctx) + if (!TEST_true(BN_div(ret, ret2, a, b, ctx)) || !equalBN("A / B", quotient, ret) || !equalBN("A % B", remainder, ret2) - || !BN_mul(ret, quotient, b, ctx) - || !BN_add(ret, ret, remainder) + || !TEST_true(BN_mul(ret, quotient, b, ctx)) + || !TEST_true(BN_add(ret, ret, remainder)) || !equalBN("Quotient * B + Remainder", a, ret)) goto err; @@ -1314,16 +1257,16 @@ static int file_quotient(STANZA *s) BN_ULONG remainder_word = BN_get_word(remainder); assert(remainder_word != (BN_ULONG)-1); - if (!BN_copy(ret, a)) + if (!TEST_ptr(BN_copy(ret, a))) goto err; ret_word = BN_div_word(ret, b_word); if (ret_word != remainder_word) { #ifdef BN_DEC_FMT1 - fprintf(stderr, - "Got A %% B (word) = " BN_DEC_FMT1 ", wanted " BN_DEC_FMT1 "\n", + TEST_error( + "Got A %% B (word) = " BN_DEC_FMT1 ", wanted " BN_DEC_FMT1, ret_word, remainder_word); #else - fprintf(stderr, "Got A %% B (word) mismatch\n"); + TEST_error("Got A %% B (word) mismatch"); #endif goto err; } @@ -1333,11 +1276,11 @@ static int file_quotient(STANZA *s) ret_word = BN_mod_word(a, b_word); if (ret_word != remainder_word) { #ifdef BN_DEC_FMT1 - fprintf(stderr, - "Got A %% B (word) = " BN_DEC_FMT1 ", wanted " BN_DEC_FMT1 "\n", + TEST_error( + "Got A %% B (word) = " BN_DEC_FMT1 ", wanted " BN_DEC_FMT1 "", ret_word, remainder_word); #else - fprintf(stderr, "Got A %% B (word) mismatch\n"); + TEST_error("Got A %% B (word) mismatch"); #endif goto err; } @@ -1345,9 +1288,10 @@ static int file_quotient(STANZA *s) /* Test BN_nnmod. */ if (!BN_is_negative(b)) { - if (!BN_copy(nnmod, remainder) - || (BN_is_negative(nnmod) && !BN_add(nnmod, nnmod, b)) - || !BN_nnmod(ret, a, b, ctx) + if (!TEST_true(BN_copy(nnmod, remainder)) + || (BN_is_negative(nnmod) + && !TEST_true(BN_add(nnmod, nnmod, b))) + || !TEST_true(BN_nnmod(ret, a, b, ctx)) || !equalBN("A % B (non-negative)", nnmod, ret)) goto err; } @@ -1366,17 +1310,17 @@ err: static int file_modmul(STANZA *s) { - BIGNUM *a = getBN(s, "A"); - BIGNUM *b = getBN(s, "B"); - BIGNUM *m = getBN(s, "M"); - BIGNUM *mod_mul = getBN(s, "ModMul"); - BIGNUM *ret = BN_new(); + BIGNUM *a = NULL, *b = NULL, *m = NULL, *mod_mul = NULL, *ret = NULL; int st = 0; - if (a == NULL || b == NULL || m == NULL || mod_mul == NULL || ret == NULL) + if (!TEST_ptr(a = getBN(s, "A")) + || !TEST_ptr(b = getBN(s, "B")) + || !TEST_ptr(m = getBN(s, "M")) + || !TEST_ptr(mod_mul = getBN(s, "ModMul")) + || !TEST_ptr(ret = BN_new())) goto err; - if (!BN_mod_mul(ret, a, b, m, ctx) + if (!TEST_true(BN_mod_mul(ret, a, b, m, ctx)) || !equalBN("A * B (mod M)", mod_mul, ret)) goto err; @@ -1385,19 +1329,20 @@ static int file_modmul(STANZA *s) BN_MONT_CTX *mont = BN_MONT_CTX_new(); BIGNUM *a_tmp = BN_new(); BIGNUM *b_tmp = BN_new(); + if (mont == NULL || a_tmp == NULL || b_tmp == NULL - || !BN_MONT_CTX_set(mont, m, ctx) - || !BN_nnmod(a_tmp, a, m, ctx) - || !BN_nnmod(b_tmp, b, m, ctx) - || !BN_to_montgomery(a_tmp, a_tmp, mont, ctx) - || !BN_to_montgomery(b_tmp, b_tmp, mont, ctx) - || !BN_mod_mul_montgomery(ret, a_tmp, b_tmp, mont, ctx) - || !BN_from_montgomery(ret, ret, mont, ctx) - || !equalBN("A * B (mod M) (mont)", mod_mul, ret)) { + || !TEST_true(BN_MONT_CTX_set(mont, m, ctx)) + || !TEST_true(BN_nnmod(a_tmp, a, m, ctx)) + || !TEST_true(BN_nnmod(b_tmp, b, m, ctx)) + || !TEST_true(BN_to_montgomery(a_tmp, a_tmp, mont, ctx)) + || !TEST_true(BN_to_montgomery(b_tmp, b_tmp, mont, ctx)) + || !TEST_true(BN_mod_mul_montgomery(ret, a_tmp, b_tmp, + mont, ctx)) + || !TEST_true(BN_from_montgomery(ret, ret, mont, ctx)) + || !equalBN("A * B (mod M) (mont)", mod_mul, ret)) st = 0; - } else { + else st = 1; - } BN_MONT_CTX_free(mont); BN_free(a_tmp); BN_free(b_tmp); @@ -1417,25 +1362,27 @@ err: static int file_modexp(STANZA *s) { - BIGNUM *a = getBN(s, "A"); - BIGNUM *e = getBN(s, "E"); - BIGNUM *m = getBN(s, "M"); - BIGNUM *mod_exp = getBN(s, "ModExp"); - BIGNUM *ret = BN_new(); - BIGNUM *b = NULL, *c = NULL, *d = BN_new(); + BIGNUM *a = NULL, *e = NULL, *m = NULL, *mod_exp = NULL, *ret = NULL; + BIGNUM *b = NULL, *c = NULL, *d = NULL; int st = 0; - if (a == NULL || e == NULL || m == NULL || mod_exp == NULL || ret == NULL) + if (!TEST_ptr(a = getBN(s, "A")) + || !TEST_ptr(e = getBN(s, "E")) + || !TEST_ptr(m = getBN(s, "M")) + || !TEST_ptr(mod_exp = getBN(s, "ModExp")) + || !TEST_ptr(ret = BN_new()) + || !TEST_ptr(d = BN_new())) goto err; - if (!BN_mod_exp(ret, a, e, m, ctx) + if (!TEST_true(BN_mod_exp(ret, a, e, m, ctx)) || !equalBN("A ^ E (mod M)", mod_exp, ret)) goto err; if (BN_is_odd(m)) { - if (!BN_mod_exp_mont(ret, a, e, m, ctx, NULL) + if (!TEST_true(BN_mod_exp_mont(ret, a, e, m, ctx, NULL)) || !equalBN("A ^ E (mod M) (mont)", mod_exp, ret) - || !BN_mod_exp_mont_consttime(ret, a, e, m, ctx, NULL) + || !TEST_true(BN_mod_exp_mont_consttime(ret, a, e, m, + ctx, NULL)) || !equalBN("A ^ E (mod M) (mont const", mod_exp, ret)) goto err; } @@ -1452,10 +1399,8 @@ static int file_modexp(STANZA *s) "0000000000000000000000000000000000000000000000000000000001"); BN_mod_exp(d, a, b, c, ctx); BN_mul(e, a, a, ctx); - if (BN_cmp(d, e)) { - fprintf(stderr, "BN_mod_exp and BN_mul produce different results!\n"); + if (!TEST_int_eq(BN_cmp(d, e), 0)) goto err; - } st = 1; err: @@ -1472,16 +1417,16 @@ err: static int file_exp(STANZA *s) { - BIGNUM *a = getBN(s, "A"); - BIGNUM *e = getBN(s, "E"); - BIGNUM *exp = getBN(s, "Exp"); - BIGNUM *ret = BN_new(); + BIGNUM *a = NULL, *e = NULL, *exp = NULL, *ret = NULL; int st = 0; - if (a == NULL || e == NULL || exp == NULL || ret == NULL) + if (!TEST_ptr(a = getBN(s, "A")) + || !TEST_ptr(e = getBN(s, "E")) + || !TEST_ptr(exp = getBN(s, "Exp")) + || !TEST_ptr(ret = BN_new())) goto err; - if (!BN_exp(ret, a, e, ctx) + if (!TEST_true(BN_exp(ret, a, e, ctx)) || !equalBN("A ^ E", exp, ret)) goto err; @@ -1496,21 +1441,22 @@ err: static int file_modsqrt(STANZA *s) { - BIGNUM *a = getBN(s, "A"); - BIGNUM *p = getBN(s, "P"); - BIGNUM *mod_sqrt = getBN(s, "ModSqrt"); - BIGNUM *ret = BN_new(); - BIGNUM *ret2 = BN_new(); + BIGNUM *a = NULL, *p = NULL, *mod_sqrt = NULL, *ret = NULL, *ret2 = NULL; int st = 0; - if (a == NULL || p == NULL || mod_sqrt == NULL - || ret == NULL || ret2 == NULL) + if (!TEST_ptr(a = getBN(s, "A")) + || !TEST_ptr(p = getBN(s, "P")) + || !TEST_ptr(mod_sqrt = getBN(s, "ModSqrt")) + || !TEST_ptr(ret = BN_new()) + || !TEST_ptr(ret2 = BN_new())) goto err; /* There are two possible answers. */ - if (!BN_mod_sqrt(ret, a, p, ctx) || !BN_sub(ret2, p, ret)) + if (!TEST_true(BN_mod_sqrt(ret, a, p, ctx)) + || !TEST_true(BN_sub(ret2, p, ret))) goto err; + /* The first condition should NOT be a test. */ if (BN_cmp(ret2, mod_sqrt) != 0 && !equalBN("sqrt(A) (mod P)", mod_sqrt, ret)) goto err; @@ -1535,71 +1481,46 @@ static int test_bn2padded() /* Test edge case at 0. */ if (n == NULL) goto err; - if (!BN_bn2bin_padded(NULL, 0, n)) { - fprintf(stderr, - "BN_bn2bin_padded failed to encode 0 in an empty buffer.\n"); + if (!TEST_true(BN_bn2bin_padded(NULL, 0, n))) goto err; - } memset(out, -1, sizeof(out)); - if (!BN_bn2bin_padded(out, sizeof(out), n)) { - fprintf(stderr, - "BN_bn2bin_padded failed to encode 0 in a non-empty buffer.\n"); + if (!TEST_true(BN_bn2bin_padded(out, sizeof(out)), n)) goto err; - } memset(zeros, 0, sizeof(zeros)); - if (memcmp(zeros, out, sizeof(out))) { - fprintf(stderr, "BN_bn2bin_padded did not zero buffer.\n"); + if (!TEST_mem_eq(zeros, sizeof(zeros), out, sizeof(out))) goto err; - } /* Test a random numbers at various byte lengths. */ for (size_t bytes = 128 - 7; bytes <= 128; bytes++) { #define TOP_BIT_ON 0 #define BOTTOM_BIT_NOTOUCH 0 - if (!BN_rand(n, bytes * 8, TOP_BIT_ON, BOTTOM_BIT_NOTOUCH)) { - ERR_print_errors_fp(stderr); + if (!TEST_true(BN_rand(n, bytes * 8, TOP_BIT_ON, BOTTOM_BIT_NOTOUCH))) goto err; - } - if (BN_num_bytes(n) != bytes - || BN_bn2bin(n, reference) != bytes) { - fprintf(stderr, "Bad result from BN_rand; bytes.\n"); + if (!TEST_int_eq(BN_num_bytes(n),A) bytes + || TEST_int_eq(BN_bn2bin(n, reference), bytes)) goto err; - } /* Empty buffer should fail. */ - if (BN_bn2bin_padded(NULL, 0, n)) { - fprintf(stderr, - "BN_bn2bin_padded incorrectly succeeded on empty buffer.\n"); + if (!TEST_int_eq(BN_bn2bin_padded(NULL, 0, n)), 0) goto err; - } /* One byte short should fail. */ - if (BN_bn2bin_padded(out, bytes - 1, n)) { - fprintf(stderr, - "BN_bn2bin_padded incorrectly succeeded on short.\n"); + if (BN_bn2bin_padded(out, bytes - 1, n)) goto err; - } /* Exactly right size should encode. */ - if (!BN_bn2bin_padded(out, bytes, n) - || memcmp(out, reference, bytes) != 0) { - fprintf(stderr, - "BN_bn2bin_padded gave a bad result.\n"); + if (!TEST_true(BN_bn2bin_padded(out, bytes, n)) + || TEST_mem_eq(out, bytes, reference, bytes)) goto err; - } /* Pad up one byte extra. */ - if (!BN_bn2bin_padded(out, bytes + 1, n) - || memcmp(out + 1, reference, bytes) - || memcmp(out, zeros, 1)) { - fprintf(stderr, - "BN_bn2bin_padded gave a bad result.\n"); + if (!TEST_true(BN_bn2bin_padded(out, bytes + 1, n)) + || !TEST_mem_eq(out + 1, bytes, reference, bytes) + || !TEST_mem_eq(out, 1, zeros, 1)) goto err; - } /* Pad up to 256. */ - if (!BN_bn2bin_padded(out, sizeof(out), n) - || memcmp(out + sizeof(out) - bytes, reference, bytes) - || memcmp(out, zeros, sizeof(out) - bytes)) { - fprintf(stderr, - "BN_bn2bin_padded gave a bad result.\n"); + if (!TEST_true(BN_bn2bin_padded(out, sizeof(out)), n) + || !TEST_mem_eq(out + sizeof(out) - bytes, bytes, + reference, bytes) + || !TEST_mem_eq(out, sizseof(out) - bytes, + zeros, sizeof(out) - bytes)) goto err; - } } st = 1; @@ -1616,40 +1537,34 @@ static int test_dec2bn() BIGNUM *bn = NULL; int st = 0; - int ret = parsedecBN(&bn, "0"); - if (ret != 1 || !BN_is_zero(bn) || BN_is_negative(bn)) { - fprintf(stderr, "BN_dec2bn(0) gave a bad result.\n"); + if (!TEST_int_eq(parsedecBN(&bn, "0"), 1) + || !TEST_true(BN_is_zero(bn)) + || !TEST_false(BN_is_negative(bn))) goto err; - } BN_free(bn); - ret = parsedecBN(&bn, "256"); - if (ret != 3 || !BN_is_word(bn, 256) || BN_is_negative(bn)) { - fprintf(stderr, "BN_dec2bn(256) gave a bad result.\n"); + if (!TEST_int_eq(parsedecBN(&bn, "256"), 3) + || !TEST_true(BN_is_word(bn, 256)) + || !TEST_false(BN_is_negative(bn))) goto err; - } BN_free(bn); - ret = parsedecBN(&bn, "-42"); - if (ret != 3 || !BN_abs_is_word(bn, 42) || !BN_is_negative(bn)) { - fprintf(stderr, "BN_dec2bn(42) gave a bad result.\n"); + if (!TEST_int_eq(parsedecBN(&bn, "-42"), 3) + || !TEST_true(BN_abs_is_word(bn, 42)) + || !TEST_true(BN_is_negative(bn))) goto err; - } BN_free(bn); - ret = parsedecBN(&bn, "-0"); - if (ret != 2 || !BN_is_zero(bn) || BN_is_negative(bn)) { - fprintf(stderr, "BN_dec2bn(-0) gave a bad result.\n"); + if (!TEST_int_eq(parsedecBN(&bn, "-0"), 2) + || !TEST_true(BN_is_zero(bn)) + || !TEST_false(BN_is_negative(bn))) goto err; - } BN_free(bn); - ret = parsedecBN(&bn, "42trailing garbage is ignored"); - if (ret != 2 || !BN_abs_is_word(bn, 42) - || BN_is_negative(bn)) { - fprintf(stderr, "BN_dec2bn(42trailing...) gave a bad result.\n"); + if (!TEST_int_eq(parsedecBN(&bn, "42trailing garbage is ignored"), 2) + || !TEST_true(BN_abs_is_word(bn, 42)) + || !TEST_false(BN_is_negative(bn))) goto err; - } st = 1; err: @@ -1660,41 +1575,36 @@ err: static int test_hex2bn() { BIGNUM *bn = NULL; - int ret, st = 0; + int st = 0; - ret = parseBN(&bn, "0"); - if (ret != 1 || !BN_is_zero(bn) || BN_is_negative(bn)) { - fprintf(stderr, "BN_hex2bn(0) gave a bad result.\n"); + if (!TEST_int_eq(parseBN(&bn, "0"), 1) + || !TEST_true(BN_is_zero(bn)) + || !TEST_false(BN_is_negative(bn))) goto err; - } BN_free(bn); - ret = parseBN(&bn, "256"); - if (ret != 3 || !BN_is_word(bn, 0x256) || BN_is_negative(bn)) { - fprintf(stderr, "BN_hex2bn(256) gave a bad result.\n"); + if (!TEST_int_eq(parseBN(&bn, "256"), 3) + || !TEST_true(BN_is_word(bn, 0x256)) + || !TEST_false(BN_is_negative(bn))) goto err; - } BN_free(bn); - ret = parseBN(&bn, "-42"); - if (ret != 3 || !BN_abs_is_word(bn, 0x42) || !BN_is_negative(bn)) { - fprintf(stderr, "BN_hex2bn(-42) gave a bad result.\n"); + if (!TEST_int_eq(parseBN(&bn, "-42"), 3) + || !TEST_true(BN_abs_is_word(bn, 0x42)) + || !TEST_true(BN_is_negative(bn))) goto err; - } BN_free(bn); - ret = parseBN(&bn, "-0"); - if (ret != 2 || !BN_is_zero(bn) || BN_is_negative(bn)) { - fprintf(stderr, "BN_hex2bn(-0) gave a bad result.\n"); + if (!TEST_int_eq(parseBN(&bn, "-0"), 2) + || !TEST_true(BN_is_zero(bn)) + || !TEST_false(BN_is_negative(bn))) goto err; - } BN_free(bn); - ret = parseBN(&bn, "abctrailing garbage is ignored"); - if (ret != 3 || !BN_is_word(bn, 0xabc) || BN_is_negative(bn)) { - fprintf(stderr, "BN_hex2bn(abctrail...) gave a bad result.\n"); + if (!TEST_int_eq(parseBN(&bn, "abctrailing garbage is ignored"), 3) + || !TEST_true(BN_is_word(bn, 0xabc)) + || !TEST_false(BN_is_negative(bn))) goto err; - } st = 1; err: @@ -1704,53 +1614,51 @@ err: static int test_asc2bn() { - BIGNUM *bn = BN_new(); + BIGNUM *bn = NULL; int st = 0; - if (!BN_asc2bn(&bn, "0") || !BN_is_zero(bn) || BN_is_negative(bn)) { - fprintf(stderr, "BN_asc2bn(0) gave a bad result.\n"); + if (!TEST_ptr(bn = BN_new())) goto err; - } - if (!BN_asc2bn(&bn, "256") || !BN_is_word(bn, 256) || BN_is_negative(bn)) { - fprintf(stderr, "BN_asc2bn(256) gave a bad result.\n"); + if (!TEST_true(BN_asc2bn(&bn, "0")) + || !TEST_true(BN_is_zero(bn)) + || !TEST_false(BN_is_negative(bn))) goto err; - } - if (!BN_asc2bn(&bn, "-42") - || !BN_abs_is_word(bn, 42) || !BN_is_negative(bn)) { - fprintf(stderr, "BN_asc2bn(-42) gave a bad result.\n"); + if (!TEST_true(BN_asc2bn(&bn, "256")) + || !TEST_true(BN_is_word(bn, 256)) + || !TEST_false(BN_is_negative(bn))) goto err; - } - if (!BN_asc2bn(&bn, "0x1234") - || !BN_is_word(bn, 0x1234) || BN_is_negative(bn)) { - fprintf(stderr, "BN_asc2bn(0x1234) gave a bad result.\n"); + if (!TEST_true(BN_asc2bn(&bn, "-42")) + || !TEST_true(BN_abs_is_word(bn, 42)) + || !TEST_true(BN_is_negative(bn))) goto err; - } - if (!BN_asc2bn(&bn, "0X1234") - || !BN_is_word(bn, 0x1234) || BN_is_negative(bn)) { - fprintf(stderr, "BN_asc2bn(0X1234) gave a bad result.\n"); + if (!TEST_true(BN_asc2bn(&bn, "0x1234")) + || !TEST_true(BN_is_word(bn, 0x1234)) + || !TEST_false(BN_is_negative(bn))) goto err; - } - if (!BN_asc2bn(&bn, "-0xabcd") - || !BN_abs_is_word(bn, 0xabcd) || !BN_is_negative(bn)) { - fprintf(stderr, "BN_asc2bn(-0xabcd) gave a bad result.\n"); + if (!TEST_true(BN_asc2bn(&bn, "0X1234")) + || !TEST_true(BN_is_word(bn, 0x1234)) + || !TEST_false(BN_is_negative(bn))) goto err; - } - if (!BN_asc2bn(&bn, "-0") || !BN_is_zero(bn) || BN_is_negative(bn)) { - fprintf(stderr, "BN_asc2bn(-0) gave a bad result.\n"); + if (!TEST_true(BN_asc2bn(&bn, "-0xabcd")) + || !TEST_true(BN_abs_is_word(bn, 0xabcd)) + || !TEST_true(BN_is_negative(bn))) goto err; - } - if (!BN_asc2bn(&bn, "123trailing garbage is ignored") - || !BN_is_word(bn, 123) || BN_is_negative(bn)) { - fprintf(stderr, "BN_asc2bn(123trail...) gave a bad result.\n"); + if (!TEST_true(BN_asc2bn(&bn, "-0")) + || !TEST_true(BN_is_zero(bn)) + || !TEST_false(BN_is_negative(bn))) + goto err; + + if (!TEST_true(BN_asc2bn(&bn, "123trailing garbage is ignored")) + || !TEST_true(BN_is_word(bn, 123)) + || !TEST_false(BN_is_negative(bn))) goto err; - } st = 1; err: @@ -1767,57 +1675,34 @@ static const MPITEST kMPITests[] = { {"-256", "\x00\x00\x00\x02\x81\x00", 6}, }; -static int test_mpi() +static int test_mpi(int i) { uint8_t scratch[8]; - int i = (int)sizeof(kMPITests) / sizeof(kMPITests[0]); - const MPITEST *test = kMPITests; + const MPITEST *test = &kMPITests[i]; size_t mpi_len, mpi_len2; - BIGNUM *bn = BN_new(); + BIGNUM *bn = NULL; BIGNUM *bn2 = NULL; int st = 0; - for ( ; --i >= 0; test++) { - if (!BN_asc2bn(&bn, test->base10)) { - fprintf(stderr, "Can't convert %s\n", test->base10); - goto err; - } - mpi_len = BN_bn2mpi(bn, NULL); - if (mpi_len > sizeof (scratch)) { - fprintf(stderr, - "MPI test #%u: MPI size is too large to test.\n", - (unsigned)i); - goto err; - } - - mpi_len2 = BN_bn2mpi(bn, scratch); - if (mpi_len != mpi_len2) { - fprintf(stderr, "MPI test #%u: length changes.\n", - (unsigned)i); - goto err; - } + if (!TEST_ptr(bn = BN_new()) + || !TEST_true(BN_asc2bn(&bn, test->base10))) + goto err; + mpi_len = BN_bn2mpi(bn, NULL); + if (!TEST_size_t_le(mpi_len, sizeof(scratch))) + goto err; - if (mpi_len != test->mpi_len - || memcmp(test->mpi, scratch, mpi_len) != 0) { - fprintf(stderr, "MPI test #%u failed:\n", (unsigned)i); - goto err; - } + if (!TEST_size_t_eq(mpi_len2 = BN_bn2mpi(bn, scratch), mpi_len) + || !TEST_mem_eq(test->mpi, test->mpi_len, scratch, mpi_len)) + goto err; - bn2 = BN_mpi2bn(scratch, mpi_len, NULL); - if (bn2 == NULL) { - fprintf(stderr, "MPI test #%u: failed to parse\n", - (unsigned)i); - goto err; - } + if (!TEST_ptr(bn2 = BN_mpi2bn(scratch, mpi_len, NULL))) + goto err; - if (BN_cmp(bn, bn2) != 0) { - fprintf(stderr, "MPI test #%u: wrong result\n", - (unsigned)i); - BN_free(bn2); - goto err; - } + if (!TEST_int_eq(BN_cmp(bn, bn2), 0)) { BN_free(bn2); + goto err; } + BN_free(bn2); st = 1; err: @@ -1827,41 +1712,23 @@ err: static int test_rand() { - BIGNUM *bn = BN_new(); + BIGNUM *bn = NULL; int st = 0; - if (bn == NULL) + if (!TEST_ptr(bn = BN_new())) return 0; - /* - * Test BN_rand for degenerate cases with |top| and |bottom| parameters. - */ - if (BN_rand(bn, 0, 0 /* top */ , 0 /* bottom */ )) { - fprintf(stderr, "BN_rand1 gave a bad result.\n"); - goto err; - } - if (BN_rand(bn, 0, 1 /* top */ , 1 /* bottom */ )) { - fprintf(stderr, "BN_rand2 gave a bad result.\n"); - goto err; - } - - if (!BN_rand(bn, 1, 0 /* top */ , 0 /* bottom */ ) || !BN_is_word(bn, 1)) { - fprintf(stderr, "BN_rand3 gave a bad result.\n"); - goto err; - } - if (BN_rand(bn, 1, 1 /* top */ , 0 /* bottom */ )) { - fprintf(stderr, "BN_rand4 gave a bad result.\n"); - goto err; - } - if (!BN_rand(bn, 1, -1 /* top */ , 1 /* bottom */ ) || !BN_is_word(bn, 1)) { - fprintf(stderr, "BN_rand5 gave a bad result.\n"); - goto err; - } - - if (!BN_rand(bn, 2, 1 /* top */ , 0 /* bottom */ ) || !BN_is_word(bn, 3)) { - fprintf(stderr, "BN_rand6 gave a bad result.\n"); + /* Test BN_rand for degenerate cases with |top| and |bottom| parameters. */ + if (!TEST_false(BN_rand(bn, 0, 0 /* top */ , 0 /* bottom */ )) + || !TEST_false(BN_rand(bn, 0, 1 /* top */ , 1 /* bottom */ )) + || !TEST_true(BN_rand(bn, 1, 0 /* top */ , 0 /* bottom */ )) + || !TEST_true(BN_is_word(bn, 1)) + || !TEST_false(BN_rand(bn, 1, 1 /* top */ , 0 /* bottom */ )) + || !TEST_true(BN_rand(bn, 1, -1 /* top */ , 1 /* bottom */ )) + || !TEST_true(BN_is_word(bn, 1)) + || !TEST_true(BN_rand(bn, 2, 1 /* top */ , 0 /* bottom */ )) + || !TEST_true(BN_is_word(bn, 3))) goto err; - } st = 1; err: @@ -1871,59 +1738,51 @@ err: static int test_negzero() { - BIGNUM *a = BN_new(); - BIGNUM *b = BN_new(); - BIGNUM *c = BN_new(); - BIGNUM *d = BN_new(); + BIGNUM *a = NULL, *b = NULL, *c = NULL, *d = NULL; BIGNUM *numerator = NULL, *denominator = NULL; int consttime, st = 0; - if (a == NULL || b == NULL || c == NULL || d == NULL) + if (!TEST_ptr(a = BN_new()) + || !TEST_ptr(b = BN_new()) + || !TEST_ptr(c = BN_new()) + || !TEST_ptr(d = BN_new())) goto err; /* Test that BN_mul never gives negative zero. */ - if (!BN_set_word(a, 1)) + if (!TEST_true(BN_set_word(a, 1))) goto err; BN_set_negative(a, 1); BN_zero(b); - if (!BN_mul(c, a, b, ctx)) + if (!TEST_true(BN_mul(c, a, b, ctx))) goto err; - if (!BN_is_zero(c) || BN_is_negative(c)) { - fprintf(stderr, "Multiplication test failed!\n"); + if (!TEST_true(BN_is_zero(c)) + || !TEST_false(BN_is_negative(c))) goto err; - } for (consttime = 0; consttime < 2; consttime++) { - numerator = BN_new(); - denominator = BN_new(); - if (numerator == NULL || denominator == NULL) + if (!TEST_ptr(numerator = BN_new()) + || !TEST_ptr(denominator = BN_new())) goto err; if (consttime) { BN_set_flags(numerator, BN_FLG_CONSTTIME); BN_set_flags(denominator, BN_FLG_CONSTTIME); } /* Test that BN_div never gives negative zero in the quotient. */ - if (!BN_set_word(numerator, 1) || !BN_set_word(denominator, 2)) + if (!TEST_true(BN_set_word(numerator, 1)) + || !TEST_true(BN_set_word(denominator, 2))) goto err; BN_set_negative(numerator, 1); - if (!BN_div(a, b, numerator, denominator, ctx)) - goto err; - if (!BN_is_zero(a) || BN_is_negative(a)) { - fprintf(stderr, "Incorrect quotient (consttime = %d).\n", - consttime); + if (!TEST_true(BN_div(a, b, numerator, denominator, ctx)) + || !TEST_true(BN_is_zero(a)) + || !TEST_false(BN_is_negative(a))) goto err; - } /* Test that BN_div never gives negative zero in the remainder. */ - if (!BN_set_word(denominator, 1)) + if (!TEST_true(BN_set_word(denominator, 1)) + || !TEST_true(BN_div(a, b, numerator, denominator, ctx)) + || !TEST_true(BN_is_zero(b)) + || !TEST_false(BN_is_negative(b))) goto err; - if (!BN_div(a, b, numerator, denominator, ctx)) - goto err; - if (!BN_is_zero(b) || BN_is_negative(b)) { - fprintf(stderr, "Incorrect remainder (consttime = %d).\n", - consttime); - goto err; - } BN_free(numerator); BN_free(denominator); numerator = denominator = NULL; @@ -1932,12 +1791,10 @@ static int test_negzero() /* Test that BN_set_negative will not produce a negative zero. */ BN_zero(a); BN_set_negative(a, 1); - if (BN_is_negative(a)) { - fprintf(stderr, "BN_set_negative produced a negative zero.\n"); + if (BN_is_negative(a)) goto err; - } - st = 1; + err: BN_free(a); BN_free(b); @@ -1950,78 +1807,59 @@ err: static int test_badmod() { - BIGNUM *a = BN_new(); - BIGNUM *b = BN_new(); - BIGNUM *zero = BN_new(); - BN_MONT_CTX *mont = BN_MONT_CTX_new(); + BIGNUM *a = NULL, *b = NULL, *zero = NULL; + BN_MONT_CTX *mont = NULL; int st = 0; - if (a == NULL || b == NULL || zero == NULL || mont == NULL) + if (!TEST_ptr(a = BN_new()) + || !TEST_ptr(b = BN_new()) + || !TEST_ptr(zero = BN_new()) + || !TEST_ptr(mont = BN_MONT_CTX_new())) goto err; BN_zero(zero); - if (BN_div(a, b, BN_value_one(), zero, ctx)) { - fprintf(stderr, "Division by zero succeeded!\n"); + if (!TEST_false(BN_div(a, b, BN_value_one(), zero, ctx))) goto err; - } ERR_clear_error(); - if (BN_mod_mul(a, BN_value_one(), BN_value_one(), zero, ctx)) { - fprintf(stderr, "BN_mod_mul with zero modulus succeeded!\n"); + if (!TEST_false(BN_mod_mul(a, BN_value_one(), BN_value_one(), zero, ctx))) goto err; - } ERR_clear_error(); - if (BN_mod_exp(a, BN_value_one(), BN_value_one(), zero, ctx)) { - fprintf(stderr, "BN_mod_exp with zero modulus succeeded!\n"); + if (!TEST_false(BN_mod_exp(a, BN_value_one(), BN_value_one(), zero, ctx))) goto err; - } ERR_clear_error(); - if (BN_mod_exp_mont(a, BN_value_one(), BN_value_one(), zero, ctx, NULL)) { - fprintf(stderr, "BN_mod_exp_mont with zero modulus succeeded!\n"); + if (!TEST_false(BN_mod_exp_mont(a, BN_value_one(), BN_value_one(), + zero, ctx, NULL))) goto err; - } ERR_clear_error(); - if (BN_mod_exp_mont_consttime(a, BN_value_one(), BN_value_one(), - zero, ctx, NULL)) { - fprintf(stderr, - "BN_mod_exp_mont_consttime with zero modulus succeeded!\n"); + if (!TEST_false(BN_mod_exp_mont_consttime(a, BN_value_one(), BN_value_one(), + zero, ctx, NULL))) goto err; - } ERR_clear_error(); - if (BN_MONT_CTX_set(mont, zero, ctx)) { - fprintf(stderr, "BN_MONT_CTX_set succeeded for zero modulus!\n"); + if (!TEST_false(BN_MONT_CTX_set(mont, zero, ctx))) goto err; - } ERR_clear_error(); /* Some operations also may not be used with an even modulus. */ - if (!BN_set_word(b, 16)) + if (!TEST_true(BN_set_word(b, 16))) goto err; - if (BN_MONT_CTX_set(mont, b, ctx)) { - fprintf(stderr, - "BN_MONT_CTX_set succeeded for even modulus!\n"); + if (!TEST_false(BN_MONT_CTX_set(mont, b, ctx))) goto err; - } ERR_clear_error(); - if (BN_mod_exp_mont(a, BN_value_one(), BN_value_one(), b, ctx, NULL)) { - fprintf(stderr, - "BN_mod_exp_mont with even modulus succeeded!\n"); + if (!TEST_false(BN_mod_exp_mont(a, BN_value_one(), BN_value_one(), + b, ctx, NULL))) goto err; - } ERR_clear_error(); - if (BN_mod_exp_mont_consttime(a, BN_value_one(), BN_value_one(), - b, ctx, NULL)) { - fprintf(stderr, - "BN_mod_exp_mont_consttime with even modulus succeeded!\n"); + if (!TEST_false(BN_mod_exp_mont_consttime(a, BN_value_one(), BN_value_one(), + b, ctx, NULL))) goto err; - } ERR_clear_error(); st = 1; @@ -2035,23 +1873,27 @@ err: static int test_expmodzero() { - BIGNUM *zero = BN_new(); - BIGNUM *a = BN_new(); - BIGNUM *r = BN_new(); + BIGNUM *a = NULL, *r = NULL, *zero = NULL; int st = 0; - if (zero == NULL || a == NULL || r == NULL || !BN_rand(a, 1024, 0, 0)) + if (!TEST_ptr(zero = BN_new()) + || !TEST_ptr(a = BN_new()) + || !TEST_ptr(r = BN_new())) goto err; BN_zero(zero); - if (!BN_mod_exp(r, a, zero, BN_value_one(), NULL) - || !BN_is_zero(r) - || !BN_mod_exp_mont(r, a, zero, BN_value_one(), NULL, NULL) - || !BN_is_zero(r) - || !BN_mod_exp_mont_consttime(r, a, zero, BN_value_one(), NULL, NULL) - || !BN_is_zero(r) - || !BN_mod_exp_mont_word(r, 42, zero, BN_value_one(), NULL, NULL) - || !BN_is_zero(r)) + if (!TEST_true(BN_mod_exp(r, a, zero, BN_value_one(), NULL)) + || !TEST_true(BN_is_zero(r)) + || !TEST_true(BN_mod_exp_mont(r, a, zero, BN_value_one(), + NULL, NULL)) + || !TEST_true(BN_is_zero(r)) + || !TEST_true(BN_mod_exp_mont_consttime(r, a, zero, + BN_value_one(), + NULL, NULL)) + || !TEST_true(BN_is_zero(r)) + || !TEST_true(BN_mod_exp_mont_word(r, 42, zero, + BN_value_one(), NULL, NULL)) + || !TEST_true(BN_is_zero(r))) goto err; st = 1; @@ -2065,17 +1907,14 @@ err: static int test_smallprime() { static const int kBits = 10; - BIGNUM *r = BN_new(); + BIGNUM *r; int st = 0; - if (r == NULL - || !BN_generate_prime_ex(r, (int)kBits, 0, NULL, NULL, NULL)) - goto err; - if (BN_num_bits(r) != kBits) { - fprintf(stderr, "Expected %u bit prime, got %u bit number\n", - kBits, BN_num_bits(r)); + if (!TEST_ptr(r = BN_new()) + || !TEST_true(BN_generate_prime_ex(r, (int)kBits, 0, + NULL, NULL, NULL)) + || !TEST_int_eq(BN_num_bits(r), kBits)) goto err; - } st = 1; err: @@ -2086,18 +1925,19 @@ err: static int test_3_is_prime() { int ret = 0; - BIGNUM *r = BN_new(); + BIGNUM *r = NULL; - /* For a long time, small primes were not considered prime when - * do_trial_division was set. */ - if (r == NULL || - !BN_set_word(r, 3) || - BN_is_prime_fasttest_ex(r, 3 /* nchecks */, ctx, - 0 /* do_trial_division */, NULL) != 1 || - BN_is_prime_fasttest_ex(r, 3 /* nchecks */, ctx, - 1 /* do_trial_division */, NULL) != 1) { + /* + * For a long time, small primes were not considered prime when + * do_trial_division was set. + */ + if (!TEST_ptr(r = BN_new()) + || !TEST_true(BN_set_word(r, 3)) + || !TEST_int_eq(BN_is_prime_fasttest_ex(r, 3 /* nchecks */, ctx, + 0 /* do_trial_division */, NULL), 1) + || !TEST_int_eq(BN_is_prime_fasttest_ex(r, 3 /* nchecks */, ctx, + 1 /* do_trial_division */, NULL), 1)) goto err; - } ret = 1; @@ -2134,8 +1974,8 @@ static int readstanza(STANZA *s, int *linesread) while (fgets(buff, sizeof(buff), fp) != NULL) { (*linesread)++; - if ((p = strchr(buff, '\n')) == NULL) { - fprintf(stderr, "Line %d too long.\n", s->start); + if (!TEST_ptr(p = strchr(buff, '\n'))) { + TEST_info("Line %d too long", s->start); return 0; } *p = '\0'; @@ -2148,25 +1988,16 @@ static int readstanza(STANZA *s, int *linesread) if (buff[0] == '#') continue; - if ((equals = strchr(buff, '=')) == NULL) { - fprintf(stderr, "Line %d missing equals.\n", s->start); + if (!TEST_ptr(equals = strchr(buff, '='))) return 0; - } *equals++ = '\0'; - key = strip_spaces(buff); - value = strip_spaces(equals); - if (key == NULL || value == NULL) { - fprintf(stderr, "Line %d missing field.\n", s->start); - return 0; - } - s->numpairs++; - if (s->numpairs >= MAXPAIRS) { - fprintf(stderr, "Line %d too many lines\n", s->start); + if (!TEST_ptr(key = strip_spaces(buff)) + || !TEST_ptr(value = strip_spaces(equals)) + || !TEST_int_lt(s->numpairs++, MAXPAIRS) + || !TEST_ptr(pp->key = OPENSSL_strdup(key)) + || !TEST_ptr(pp->value = OPENSSL_strdup(value))) return 0; - } - pp->key = OPENSSL_strdup(key); - pp->value = OPENSSL_strdup(value); pp++; } @@ -2207,10 +2038,15 @@ static int file_test_run(STANZA *s) const FILETEST *tp = filetests; for ( ; --numtests >= 0; tp++) { - if (findattr(s, tp->name) != NULL) - return tp->func(s); + if (findattr(s, tp->name) != NULL) { + if (!tp->func(s)) { + TEST_info("Failed %s test at %d", tp->name, s->start); + return 0; + } + return 1; + } } - fprintf(stderr, "Unknown test at %d\n", s->start); + TEST_info("Unknown test at %d", s->start); return 0; } @@ -2225,7 +2061,6 @@ static int file_tests() if (s.numpairs == 0) continue; if (!file_test_run(&s)) { - fprintf(stderr, "Test at %d failed\n", s.start); errcnt++; } clearstanza(&s); @@ -2242,8 +2077,8 @@ int test_main(int argc, char *argv[]) int result = 0; if (argc != 2) { - fprintf(stderr, "%s TEST_FILE\n", argv[0]); - return 1; + TEST_error("%s TEST_FILE", argv[0]); + return 0; } ADD_TEST(test_sub); @@ -2256,7 +2091,7 @@ int test_main(int argc, char *argv[]) ADD_TEST(test_dec2bn); ADD_TEST(test_hex2bn); ADD_TEST(test_asc2bn); - ADD_TEST(test_mpi); + ADD_ALL_TESTS(test_mpi, (int)OSSL_NELEM(kMPITests)); ADD_TEST(test_negzero); ADD_TEST(test_badmod); ADD_TEST(test_expmodzero); @@ -2279,11 +2114,12 @@ int test_main(int argc, char *argv[]) ctx = BN_CTX_new(); TEST_check(ctx != NULL); - fp = fopen(argv[1], "r"); - TEST_check(fp != NULL); + if (!TEST_ptr(fp = fopen(argv[1], "r"))) + goto end; result = run_tests(argv[0]); fclose(fp); +end: BN_CTX_free(ctx); return result; } diff --git a/test/libtestutil.a b/test/libtestutil.a deleted file mode 100644 index 9734195..0000000 Binary files a/test/libtestutil.a and /dev/null differ From builds at travis-ci.org Wed Apr 26 16:36:46 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 26 Apr 2017 16:36:46 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10598 (master - 8e1634e) In-Reply-To: Message-ID: <5900cc9e19db7_43fcc350c8e88913716@0660b054-be05-46f5-b57d-7594111f33c9.mail> Build Update for openssl/openssl ------------------------------------- Build: #10598 Status: Still Failing Duration: 21 minutes and 31 seconds Commit: 8e1634e (master) Author: Tatsuhiro Tsujikawa Message: Don't treat PACKET_remaining() as boolean Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3244) View the changeset: https://github.com/openssl/openssl/compare/b89646684d92...8e1634ec36c9 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/226068150 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Wed Apr 26 17:04:02 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 26 Apr 2017 17:04:02 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10601 (master - aa24cd1) In-Reply-To: Message-ID: <5900d302733c8_43ff13d3c60048634bb@9940f7d2-5722-4259-bcd5-06cb0c52b042.mail> Build Update for openssl/openssl ------------------------------------- Build: #10601 Status: Still Failing Duration: 21 minutes and 4 seconds Commit: aa24cd1 (master) Author: Dr. Stephen Henson Message: Fix no-ec Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3321) View the changeset: https://github.com/openssl/openssl/compare/8e1634ec36c9...aa24cd1bfbf4 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/226072259 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Wed Apr 26 17:20:07 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 26 Apr 2017 17:20:07 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10602 (master - 8ed9a26) In-Reply-To: Message-ID: <5900d6c6bc2f_43fcc350c4e28995122@0660b054-be05-46f5-b57d-7594111f33c9.mail> Build Update for openssl/openssl ------------------------------------- Build: #10602 Status: Still Failing Duration: 29 minutes and 29 seconds Commit: 8ed9a26 (master) Author: Rich Salz Message: Convert dtls_mtu_test, dtlsv1listentest Also converted most of ssltestlib but left the packet_dump output as-is (for now). Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3257) View the changeset: https://github.com/openssl/openssl/compare/aa24cd1bfbf4...8ed9a26616a7 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/226078887 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From rsalz at openssl.org Wed Apr 26 17:43:03 2017 From: rsalz at openssl.org (Rich Salz) Date: Wed, 26 Apr 2017 17:43:03 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493228583.133031.564.nullmailer@dev.openssl.org> The branch master has been updated via 710756a9b384c9e9eaaf42acaf429aebc2a822a1 (commit) from 30bea14be6bbf77ed60acb9bd1befeb51d4c4b10 (commit) - Log ----------------------------------------------------------------- commit 710756a9b384c9e9eaaf42acaf429aebc2a822a1 Author: Rich Salz Date: Wed Apr 26 13:24:37 2017 -0400 Convert sslapitest to test framework Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3252) ----------------------------------------------------------------------- Summary of changes: test/sslapitest.c | 1629 ++++++++++++++++++----------------------------------- 1 file changed, 558 insertions(+), 1071 deletions(-) diff --git a/test/sslapitest.c b/test/sslapitest.c index 436fbbb..7c0171b 100644 --- a/test/sslapitest.c +++ b/test/sslapitest.c @@ -24,9 +24,9 @@ static char *privkey = NULL; #define LOG_BUFFER_SIZE 1024 static char server_log_buffer[LOG_BUFFER_SIZE + 1] = {0}; -static int server_log_buffer_index = 0; +static size_t server_log_buffer_index = 0; static char client_log_buffer[LOG_BUFFER_SIZE + 1] = {0}; -static int client_log_buffer_index = 0; +static size_t client_log_buffer_index = 0; static int error_writing_log = 0; #ifndef OPENSSL_NO_OCSP @@ -53,64 +53,54 @@ struct sslapitest_log_counts { unsigned int server_application_secret_count; }; -static void client_keylog_callback(const SSL *ssl, const char *line) { +static void client_keylog_callback(const SSL *ssl, const char *line) +{ int line_length = strlen(line); /* If the log doesn't fit, error out. */ - if ((client_log_buffer_index + line_length) > LOG_BUFFER_SIZE) { - printf("No room in client log\n"); + if (client_log_buffer_index + line_length > sizeof(client_log_buffer) - 1) { + TEST_info("Client log too full"); error_writing_log = 1; return; } strcat(client_log_buffer, line); client_log_buffer_index += line_length; - client_log_buffer[client_log_buffer_index] = '\n'; - client_log_buffer_index += 1; - - return; + client_log_buffer[client_log_buffer_index++] = '\n'; } -static void server_keylog_callback(const SSL *ssl, const char *line) { +static void server_keylog_callback(const SSL *ssl, const char *line) +{ int line_length = strlen(line); /* If the log doesn't fit, error out. */ - if ((server_log_buffer_index + line_length) > LOG_BUFFER_SIZE) { - printf("No room in server log\n"); + if (server_log_buffer_index + line_length > sizeof(server_log_buffer) - 1) { + TEST_info("Server og too full"); error_writing_log = 1; return; } strcat(server_log_buffer, line); server_log_buffer_index += line_length; - server_log_buffer[server_log_buffer_index] = '\n'; - server_log_buffer_index += 1; - - return; + server_log_buffer[server_log_buffer_index++] = '\n'; } static int compare_hex_encoded_buffer(const char *hex_encoded, size_t hex_length, const uint8_t *raw, - size_t raw_length) { - size_t i; - size_t j; - - /* One byte too big, just to be safe. */ - char hexed[3] = {0}; + size_t raw_length) +{ + size_t i, j; + char hexed[3]; - if ((raw_length * 2) != hex_length) { - printf("Inconsistent hex encoded lengths.\n"); + if (!TEST_size_t_eq(raw_length * 2, hex_length)) return 1; - } - for (i = j = 0; (i < raw_length) && ((j + 1) < hex_length); i++) { + for (i = j = 0; i < raw_length && j + 1 < hex_length; i++, j += 2) { sprintf(hexed, "%02x", raw[i]); - if ((hexed[0] != hex_encoded[j]) || (hexed[1] != hex_encoded[j + 1])) { - printf("Hex output does not match.\n"); + if (!TEST_int_eq(hexed[0], hex_encoded[j]) + || !TEST_int_eq(hexed[1], hex_encoded[j + 1])) return 1; - } - j += 2; } return 0; @@ -118,7 +108,8 @@ static int compare_hex_encoded_buffer(const char *hex_encoded, static int test_keylog_output(char *buffer, const SSL *ssl, const SSL_SESSION *session, - struct sslapitest_log_counts *expected) { + struct sslapitest_log_counts *expected) +{ char *token = NULL; unsigned char actual_client_random[SSL3_RANDOM_SIZE] = {0}; size_t client_random_size = SSL3_RANDOM_SIZE; @@ -131,28 +122,20 @@ static int test_keylog_output(char *buffer, const SSL *ssl, unsigned int client_application_secret_count = 0; unsigned int server_application_secret_count = 0; - token = strtok(buffer, " \n"); - while (token) { + for (token = strtok(buffer, " \n"); token != NULL; + token = strtok(NULL, " \n")) { if (strcmp(token, "RSA") == 0) { /* * Premaster secret. Tokens should be: 16 ASCII bytes of * hex-encoded encrypted secret, then the hex-encoded pre-master * secret. */ - token = strtok(NULL, " \n"); - if (!token) { - printf("Unexpectedly short premaster secret log.\n"); + if (!TEST_ptr(token = strtok(NULL, " \n"))) return 0; - } - if (strlen(token) != 16) { - printf("Bad value for encrypted secret: %s\n", token); + if (!TEST_size_t_eq(strlen(token), 16)) return 0; - } - token = strtok(NULL, " \n"); - if (!token) { - printf("Unexpectedly short premaster secret log.\n"); + if (!TEST_ptr(token = strtok(NULL, " \n"))) return 0; - } /* * We can't sensibly check the log because the premaster secret is * transient, and OpenSSL doesn't keep hold of it once the master @@ -167,51 +150,34 @@ static int test_keylog_output(char *buffer, const SSL *ssl, client_random_size = SSL_get_client_random(ssl, actual_client_random, SSL3_RANDOM_SIZE); - if (client_random_size != SSL3_RANDOM_SIZE) { - printf("Unexpected short client random.\n"); + if (!TEST_size_t_eq(client_random_size, SSL3_RANDOM_SIZE)) return 0; - } - token = strtok(NULL, " \n"); - if (!token) { - printf("Unexpected short master secret log.\n"); + if (!TEST_ptr(token = strtok(NULL, " \n"))) return 0; - } - if (strlen(token) != 64) { - printf("Bad value for client random: %s\n", token); + if (!TEST_size_t_eq(strlen(token), 64)) return 0; - } - if (compare_hex_encoded_buffer(token, 64, actual_client_random, - client_random_size)) { - printf("Bad value for client random: %s\n", token); + if (!TEST_false(compare_hex_encoded_buffer(token, 64, + actual_client_random, + client_random_size))) return 0; - } - token = strtok(NULL, " \n"); - if (!token) { - printf("Unexpectedly short master secret log.\n"); + if (!TEST_ptr(token = strtok(NULL, " \n"))) return 0; - } - master_key_size = SSL_SESSION_get_master_key(session, actual_master_key, master_key_size); - if (!master_key_size) { - printf("Error getting master key to compare.\n"); + if (!TEST_size_t_ne(master_key_size, 0)) return 0; - } - if (compare_hex_encoded_buffer(token, strlen(token), - actual_master_key, - master_key_size)) { - printf("Bad value for master key: %s\n", token); + if (!TEST_false(compare_hex_encoded_buffer(token, strlen(token), + actual_master_key, + master_key_size))) return 0; - } - master_secret_count++; - } else if ((strcmp(token, "CLIENT_HANDSHAKE_TRAFFIC_SECRET") == 0) || - (strcmp(token, "SERVER_HANDSHAKE_TRAFFIC_SECRET") == 0) || - (strcmp(token, "CLIENT_TRAFFIC_SECRET_0") == 0) || - (strcmp(token, "SERVER_TRAFFIC_SECRET_0") == 0)) { + } else if (strcmp(token, "CLIENT_HANDSHAKE_TRAFFIC_SECRET") == 0 + || strcmp(token, "SERVER_HANDSHAKE_TRAFFIC_SECRET") == 0 + || strcmp(token, "CLIENT_TRAFFIC_SECRET_0") == 0 + || strcmp(token, "SERVER_TRAFFIC_SECRET_0") == 0) { /* * TLSv1.3 secret. Tokens should be: 64 ASCII bytes of hex-encoded * client random, and then the hex-encoded secret. In this case, @@ -230,127 +196,95 @@ static int test_keylog_output(char *buffer, const SSL *ssl, client_random_size = SSL_get_client_random(ssl, actual_client_random, SSL3_RANDOM_SIZE); - if (client_random_size != SSL3_RANDOM_SIZE) { - printf("Unexpected short client random.\n"); + if (!TEST_size_t_eq(client_random_size, SSL3_RANDOM_SIZE)) return 0; - } - token = strtok(NULL, " \n"); - if (!token) { - printf("Unexpected short client handshake secret log.\n"); + if (!TEST_ptr(token = strtok(NULL, " \n"))) return 0; - } - if (strlen(token) != 64) { - printf("Bad value for client random: %s\n", token); + if (!TEST_size_t_eq(strlen(token), 64)) return 0; - } - if (compare_hex_encoded_buffer(token, 64, actual_client_random, - client_random_size)) { - printf("Bad value for client random: %s\n", token); + if (!TEST_false(compare_hex_encoded_buffer(token, 64, + actual_client_random, + client_random_size))) return 0; - } - token = strtok(NULL, " \n"); - if (!token) { - printf("Unexpectedly short master secret log.\n"); + if (!TEST_ptr(token = strtok(NULL, " \n"))) return 0; - } /* * TODO(TLS1.3): test that application traffic secrets are what * we expect */ } else { - printf("Unexpected token in buffer: %s\n", token); + TEST_info("Unexpected token %s\n", token); return 0; } - - token = strtok(NULL, " \n"); } - /* Return whether we got what we expected. */ - return ((rsa_key_exchange_count == expected->rsa_key_exchange_count) && - (master_secret_count == expected->master_secret_count) && - (client_handshake_secret_count == expected->client_handshake_secret_count) && - (server_handshake_secret_count == expected->server_handshake_secret_count) && - (client_application_secret_count == expected->client_application_secret_count) && - (server_application_secret_count == expected->server_application_secret_count)); + /* Got what we expected? */ + if (!TEST_size_t_eq(rsa_key_exchange_count, + expected->rsa_key_exchange_count) + || !TEST_size_t_eq(master_secret_count, + expected->master_secret_count) + || !TEST_size_t_eq(client_handshake_secret_count, + expected->client_handshake_secret_count) + || !TEST_size_t_eq(server_handshake_secret_count, + expected->server_handshake_secret_count) + || !TEST_size_t_eq(client_application_secret_count, + expected->client_application_secret_count) + || !TEST_size_t_eq(server_application_secret_count, + expected->server_application_secret_count)) + return 0; + return 1; } -static int test_keylog(void) { +static int test_keylog(void) +{ SSL_CTX *cctx = NULL, *sctx = NULL; SSL *clientssl = NULL, *serverssl = NULL; int testresult = 0; - int rc; struct sslapitest_log_counts expected = {0}; /* Clean up logging space */ - memset(client_log_buffer, 0, LOG_BUFFER_SIZE + 1); - memset(server_log_buffer, 0, LOG_BUFFER_SIZE + 1); + memset(client_log_buffer, 0, sizeof(client_log_buffer)); + memset(server_log_buffer, 0, sizeof(server_log_buffer)); client_log_buffer_index = 0; server_log_buffer_index = 0; error_writing_log = 0; - if (!create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), &sctx, - &cctx, cert, privkey)) { - printf("Unable to create SSL_CTX pair\n"); + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), + TLS_client_method(), + &sctx, &cctx, cert, privkey))) return 0; - } /* We cannot log the master secret for TLSv1.3, so we should forbid it. */ SSL_CTX_set_options(cctx, SSL_OP_NO_TLSv1_3); SSL_CTX_set_options(sctx, SSL_OP_NO_TLSv1_3); /* We also want to ensure that we use RSA-based key exchange. */ - rc = SSL_CTX_set_cipher_list(cctx, "RSA"); - if (rc == 0) { - printf("Unable to restrict to RSA key exchange.\n"); + if (!TEST_true(SSL_CTX_set_cipher_list(cctx, "RSA"))) goto end; - } - if (SSL_CTX_get_keylog_callback(cctx)) { - printf("Unexpected initial value for client " - "SSL_CTX_get_keylog_callback()\n"); - goto end; - } - if (SSL_CTX_get_keylog_callback(sctx)) { - printf("Unexpected initial value for server " - "SSL_CTX_get_keylog_callback()\n"); + if (!TEST_ptr_null((void *)SSL_CTX_get_keylog_callback(cctx)) + || !TEST_ptr_null((void *)SSL_CTX_get_keylog_callback(sctx))) goto end; - } - SSL_CTX_set_keylog_callback(cctx, client_keylog_callback); - SSL_CTX_set_keylog_callback(sctx, server_keylog_callback); - - if (SSL_CTX_get_keylog_callback(cctx) != client_keylog_callback) { - printf("Unexpected set value for client " - "SSL_CTX_get_keylog_callback()\n"); - } - - if (SSL_CTX_get_keylog_callback(sctx) != server_keylog_callback) { - printf("Unexpected set value for server " - "SSL_CTX_get_keylog_callback()\n"); - } - - /* Now do a handshake and check that the logs have been written to. */ - if (!create_ssl_objects(sctx, cctx, &serverssl, &clientssl, NULL, NULL)) { - printf("Unable to create SSL objects\n"); + if (!TEST_ptr_eq((void *)SSL_CTX_get_keylog_callback(cctx), + (void *)client_keylog_callback)) goto end; - } - - if (!create_ssl_connection(serverssl, clientssl, SSL_ERROR_NONE)) { - printf("Unable to create SSL connection\n"); - goto end; - } - - if (error_writing_log) { - printf("Error encountered while logging\n"); + SSL_CTX_set_keylog_callback(sctx, server_keylog_callback); + if (!TEST_ptr_eq((void *)SSL_CTX_get_keylog_callback(sctx), + (void *)server_keylog_callback)) goto end; - } - if ((client_log_buffer_index == 0) || (server_log_buffer_index == 0)) { - printf("No logs written\n"); + /* Now do a handshake and check that the logs have been written to. */ + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, + &clientssl, NULL, NULL)) + || !TEST_true(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE)) + || !TEST_false(error_writing_log) + || !TEST_int_gt(client_log_buffer_index, 0) + || !TEST_int_gt(server_log_buffer_index, 0)) goto end; - } /* * Now we want to test that our output data was vaguely sensible. We @@ -360,18 +294,14 @@ static int test_keylog(void) { */ expected.rsa_key_exchange_count = 1; expected.master_secret_count = 1; - if (!test_keylog_output(client_log_buffer, clientssl, - SSL_get_session(clientssl), &expected)) { - printf("Error encountered in client log buffer\n"); + if (!TEST_true(test_keylog_output(client_log_buffer, clientssl, + SSL_get_session(clientssl), &expected))) goto end; - } expected.rsa_key_exchange_count = 0; - if (!test_keylog_output(server_log_buffer, serverssl, - SSL_get_session(serverssl), &expected)) { - printf("Error encountered in server log buffer\n"); + if (!TEST_true(test_keylog_output(server_log_buffer, serverssl, + SSL_get_session(serverssl), &expected))) goto end; - } testresult = 1; @@ -385,64 +315,46 @@ end: } #ifndef OPENSSL_NO_TLS1_3 -static int test_keylog_no_master_key(void) { +static int test_keylog_no_master_key(void) +{ SSL_CTX *cctx = NULL, *sctx = NULL; SSL *clientssl = NULL, *serverssl = NULL; int testresult = 0; struct sslapitest_log_counts expected = {0}; /* Clean up logging space */ - memset(client_log_buffer, 0, LOG_BUFFER_SIZE + 1); - memset(server_log_buffer, 0, LOG_BUFFER_SIZE + 1); + memset(client_log_buffer, 0, sizeof(client_log_buffer)); + memset(server_log_buffer, 0, sizeof(server_log_buffer)); client_log_buffer_index = 0; server_log_buffer_index = 0; error_writing_log = 0; - if (!create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), &sctx, - &cctx, cert, privkey)) { - printf("Unable to create SSL_CTX pair\n"); + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), + TLS_client_method(), &sctx, + &cctx, cert, privkey))) return 0; - } - if (SSL_CTX_get_keylog_callback(cctx)) { - printf("Unexpected initial value for client " - "SSL_CTX_get_keylog_callback()\n"); - goto end; - } - if (SSL_CTX_get_keylog_callback(sctx)) { - printf("Unexpected initial value for server " - "SSL_CTX_get_keylog_callback()\n"); + if (!TEST_ptr_null((void *)SSL_CTX_get_keylog_callback(cctx)) + || !TEST_ptr_null((void *)SSL_CTX_get_keylog_callback(sctx))) goto end; - } SSL_CTX_set_keylog_callback(cctx, client_keylog_callback); - SSL_CTX_set_keylog_callback(sctx, server_keylog_callback); - - if (SSL_CTX_get_keylog_callback(cctx) != client_keylog_callback) { - printf("Unexpected set value for client " - "SSL_CTX_get_keylog_callback()\n"); - } - - if (SSL_CTX_get_keylog_callback(sctx) != server_keylog_callback) { - printf("Unexpected set value for server " - "SSL_CTX_get_keylog_callback()\n"); - } - - /* Now do a handshake and check that the logs have been written to. */ - if (!create_ssl_objects(sctx, cctx, &serverssl, &clientssl, NULL, NULL)) { - printf("Unable to create SSL objects\n"); + if (!TEST_ptr_eq((void *)SSL_CTX_get_keylog_callback(cctx), + (void *)client_keylog_callback)) goto end; - } - if (!create_ssl_connection(serverssl, clientssl, SSL_ERROR_NONE)) { - printf("Unable to create SSL connection\n"); + SSL_CTX_set_keylog_callback(sctx, server_keylog_callback); + if (!TEST_ptr_eq((void *)SSL_CTX_get_keylog_callback(sctx), + (void *)server_keylog_callback)) goto end; - } - if (error_writing_log) { - printf("Error encountered while logging\n"); + /* Now do a handshake and check that the logs have been written to. */ + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, + &clientssl, NULL, NULL)) + || !TEST_true(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE)) + || !TEST_false(error_writing_log)) goto end; - } /* * Now we want to test that our output data was vaguely sensible. For this @@ -453,16 +365,12 @@ static int test_keylog_no_master_key(void) { expected.server_handshake_secret_count = 1; expected.client_application_secret_count = 1; expected.server_application_secret_count = 1; - if (!test_keylog_output(client_log_buffer, clientssl, - SSL_get_session(clientssl), &expected)) { - printf("Error encountered in client log buffer\n"); - goto end; - } - if (!test_keylog_output(server_log_buffer, serverssl, - SSL_get_session(serverssl), &expected)) { - printf("Error encountered in server log buffer\n"); + if (!TEST_true(test_keylog_output(client_log_buffer, clientssl, + SSL_get_session(clientssl), &expected)) + || !TEST_true(test_keylog_output(server_log_buffer, serverssl, + SSL_get_session(serverssl), + &expected))) goto end; - } testresult = 1; @@ -495,59 +403,42 @@ static int full_early_callback(SSL *s, int *al, void *arg) return -1; len = SSL_early_get0_ciphers(s, &p); - if (len != sizeof(expected_ciphers) || - memcmp(p, expected_ciphers, len) != 0) { - printf("Early callback expected ciphers mismatch\n"); - return 0; - } - len = SSL_early_get0_compression_methods(s, &p); - if (len != 1 || *p != 0) { - printf("Early callback expected compression methods mismatch\n"); + if (!TEST_mem_eq(p, len, expected_ciphers, sizeof(expected_ciphers)) + || !TEST_size_t_eq(SSL_early_get0_compression_methods(s, &p), 1) + || !TEST_int_eq(*p, 0)) return 0; - } return 1; } -static int test_early_cb(void) { +static int test_early_cb(void) +{ SSL_CTX *cctx = NULL, *sctx = NULL; SSL *clientssl = NULL, *serverssl = NULL; int testctr = 0, testresult = 0; - if (!create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), &sctx, - &cctx, cert, privkey)) { - printf("Unable to create SSL_CTX pair\n"); + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), + TLS_client_method(), &sctx, + &cctx, cert, privkey))) goto end; - } - SSL_CTX_set_early_cb(sctx, full_early_callback, &testctr); + /* The gimpy cipher list we configure can't do TLS 1.3. */ SSL_CTX_set_max_proto_version(cctx, TLS1_2_VERSION); - if (!SSL_CTX_set_cipher_list(cctx, - "AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384")) { - printf("Failed to set cipher list\n"); - goto end; - } - - if (!create_ssl_objects(sctx, cctx, &serverssl, &clientssl, NULL, NULL)) { - printf("Unable to create SSL objects\n"); - goto end; - } - - if (create_ssl_connection(serverssl, clientssl, SSL_ERROR_WANT_EARLY)) { - printf("Creating SSL connection succeeded with async early return\n"); - goto end; - } - /* Passing a -1 literal is a hack since the real value was lost. */ - if (SSL_get_error(serverssl, -1) != SSL_ERROR_WANT_EARLY) { - printf("Early callback failed to make state SSL_ERROR_WANT_EARLY\n"); + if (!TEST_true(SSL_CTX_set_cipher_list(cctx, + "AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384")) + || !TEST_true(create_ssl_objects(sctx, cctx, &serverssl, + &clientssl, NULL, NULL)) + || !TEST_false(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_WANT_EARLY)) + /* + * Passing a -1 literal is a hack since + * the real value was lost. + * */ + || !TEST_int_eq(SSL_get_error(serverssl, -1), SSL_ERROR_WANT_EARLY) + || !TEST_true(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE))) goto end; - } - - if (!create_ssl_connection(serverssl, clientssl, SSL_ERROR_NONE)) { - printf("Restarting SSL connection failed\n"); - goto end; - } testresult = 1; @@ -568,29 +459,23 @@ static int execute_test_large_message(const SSL_METHOD *smeth, SSL *clientssl = NULL, *serverssl = NULL; int testresult = 0; int i; - BIO *certbio = BIO_new_file(cert, "r"); + BIO *certbio = NULL; X509 *chaincert = NULL; int certlen; - if (certbio == NULL) { - printf("Can't load the certificate file\n"); + if (!TEST_ptr(certbio = BIO_new_file(cert, "r"))) goto end; - } chaincert = PEM_read_bio_X509(certbio, NULL, NULL, NULL); BIO_free(certbio); certbio = NULL; - if (chaincert == NULL) { - printf("Unable to load certificate for chain\n"); + if (!TEST_ptr(chaincert)) goto end; - } - if (!create_ssl_ctx_pair(smeth, cmeth, &sctx, - &cctx, cert, privkey)) { - printf("Unable to create SSL_CTX pair\n"); + if (!TEST_true(create_ssl_ctx_pair(smeth, cmeth, &sctx, + &cctx, cert, privkey))) goto end; - } - if(read_ahead) { + if (read_ahead) { /* * Test that read_ahead works correctly when dealing with large * records @@ -602,42 +487,33 @@ static int execute_test_large_message(const SSL_METHOD *smeth, * We assume the supplied certificate is big enough so that if we add * NUM_EXTRA_CERTS it will make the overall message large enough. The * default buffer size is requested to be 16k, but due to the way BUF_MEM - * works, it ends up allocating a little over 21k (16 * 4/3). So, in this test - * we need to have a message larger than that. + * works, it ends up allocating a little over 21k (16 * 4/3). So, in this + * test we need to have a message larger than that. */ certlen = i2d_X509(chaincert, NULL); - OPENSSL_assert((certlen * NUM_EXTRA_CERTS) - > ((SSL3_RT_MAX_PLAIN_LENGTH * 4) / 3)); + OPENSSL_assert(certlen * NUM_EXTRA_CERTS > + (SSL3_RT_MAX_PLAIN_LENGTH * 4) / 3); for (i = 0; i < NUM_EXTRA_CERTS; i++) { - if (!X509_up_ref(chaincert)) { - printf("Unable to up ref cert\n"); + if (!X509_up_ref(chaincert)) goto end; - } if (!SSL_CTX_add_extra_chain_cert(sctx, chaincert)) { - printf("Unable to add extra chain cert %d\n", i); X509_free(chaincert); goto end; } } - if (!create_ssl_objects(sctx, cctx, &serverssl, &clientssl, NULL, NULL)) { - printf("Unable to create SSL objects\n"); + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl, + NULL, NULL)) + || !TEST_true(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE))) goto end; - } - - if (!create_ssl_connection(serverssl, clientssl, SSL_ERROR_NONE)) { - printf("Unable to create SSL connection\n"); - goto end; - } /* * Calling SSL_clear() first is not required but this tests that SSL_clear() * doesn't leak (when using enable-crypto-mdebug). */ - if (!SSL_clear(serverssl)) { - printf("Unexpected failure from SSL_clear()\n"); + if (!TEST_true(SSL_clear(serverssl))) goto end; - } testresult = 1; end: @@ -678,7 +554,7 @@ static int test_large_message_dtls(void) static int ocsp_server_cb(SSL *s, void *arg) { int *argi = (int *)arg; - unsigned char *orespdercopy = NULL; + unsigned char *copy = NULL; STACK_OF(OCSP_RESPID) *ids = NULL; OCSP_RESPID *id = NULL; @@ -695,15 +571,11 @@ static int ocsp_server_cb(SSL *s, void *arg) return SSL_TLSEXT_ERR_ALERT_FATAL; } - - orespdercopy = OPENSSL_memdup(orespder, sizeof(orespder)); - if (orespdercopy == NULL) + if (!TEST_ptr(copy = OPENSSL_memdup(orespder, sizeof(orespder)))) return SSL_TLSEXT_ERR_ALERT_FATAL; - SSL_set_tlsext_status_ocsp_resp(s, orespdercopy, sizeof(orespder)); - + SSL_set_tlsext_status_ocsp_resp(s, copy, sizeof(orespder)); ocsp_server_called = 1; - return SSL_TLSEXT_ERR_OK; } @@ -717,12 +589,10 @@ static int ocsp_client_cb(SSL *s, void *arg) return 0; len = SSL_get_tlsext_status_ocsp_resp(s, &respderin); - - if (memcmp(orespder, respderin, len) != 0) + if (!TEST_mem_eq(orespder, len, respderin, len)) return 0; ocsp_client_called = 1; - return 1; } @@ -736,55 +606,32 @@ static int test_tlsext_status_type(void) BIO *certbio = NULL; if (!create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), &sctx, - &cctx, cert, privkey)) { - printf("Unable to create SSL_CTX pair\n"); + &cctx, cert, privkey)) return 0; - } - if (SSL_CTX_get_tlsext_status_type(cctx) != -1) { - printf("Unexpected initial value for " - "SSL_CTX_get_tlsext_status_type()\n"); + if (SSL_CTX_get_tlsext_status_type(cctx) != -1) goto end; - } /* First just do various checks getting and setting tlsext_status_type */ clientssl = SSL_new(cctx); - if (SSL_get_tlsext_status_type(clientssl) != -1) { - printf("Unexpected initial value for SSL_get_tlsext_status_type()\n"); + if (!TEST_int_eq(SSL_get_tlsext_status_type(clientssl), -1) + || !TEST_true(SSL_set_tlsext_status_type(clientssl, + TLSEXT_STATUSTYPE_ocsp)) + || !TEST_int_eq(SSL_get_tlsext_status_type(clientssl), + TLSEXT_STATUSTYPE_ocsp)) goto end; - } - - if (!SSL_set_tlsext_status_type(clientssl, TLSEXT_STATUSTYPE_ocsp)) { - printf("Unexpected fail for SSL_set_tlsext_status_type()\n"); - goto end; - } - - if (SSL_get_tlsext_status_type(clientssl) != TLSEXT_STATUSTYPE_ocsp) { - printf("Unexpected result for SSL_get_tlsext_status_type()\n"); - goto end; - } SSL_free(clientssl); clientssl = NULL; - if (!SSL_CTX_set_tlsext_status_type(cctx, TLSEXT_STATUSTYPE_ocsp)) { - printf("Unexpected fail for SSL_CTX_set_tlsext_status_type()\n"); + if (!SSL_CTX_set_tlsext_status_type(cctx, TLSEXT_STATUSTYPE_ocsp) + || SSL_CTX_get_tlsext_status_type(cctx) != TLSEXT_STATUSTYPE_ocsp) goto end; - } - - if (SSL_CTX_get_tlsext_status_type(cctx) != TLSEXT_STATUSTYPE_ocsp) { - printf("Unexpected result for SSL_CTX_get_tlsext_status_type()\n"); - goto end; - } clientssl = SSL_new(cctx); - - if (SSL_get_tlsext_status_type(clientssl) != TLSEXT_STATUSTYPE_ocsp) { - printf("Unexpected result for SSL_get_tlsext_status_type() (test 2)\n"); + if (SSL_get_tlsext_status_type(clientssl) != TLSEXT_STATUSTYPE_ocsp) goto end; - } - SSL_free(clientssl); clientssl = NULL; @@ -792,27 +639,17 @@ static int test_tlsext_status_type(void) * Now actually do a handshake and check OCSP information is exchanged and * the callbacks get called */ - SSL_CTX_set_tlsext_status_cb(cctx, ocsp_client_cb); SSL_CTX_set_tlsext_status_arg(cctx, &cdummyarg); SSL_CTX_set_tlsext_status_cb(sctx, ocsp_server_cb); SSL_CTX_set_tlsext_status_arg(sctx, &cdummyarg); - - if (!create_ssl_objects(sctx, cctx, &serverssl, &clientssl, NULL, NULL)) { - printf("Unable to create SSL objects\n"); - goto end; - } - - if (!create_ssl_connection(serverssl, clientssl, SSL_ERROR_NONE)) { - printf("Unable to create SSL connection\n"); - goto end; - } - - if (!ocsp_client_called || !ocsp_server_called) { - printf("OCSP callbacks not called\n"); + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, + &clientssl, NULL, NULL)) + || !TEST_true(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE)) + || !TEST_true(ocsp_client_called) + || !TEST_true(ocsp_server_called)) goto end; - } - SSL_free(serverssl); SSL_free(clientssl); serverssl = NULL; @@ -822,23 +659,14 @@ static int test_tlsext_status_type(void) ocsp_client_called = 0; ocsp_server_called = 0; cdummyarg = 0; - - if (!create_ssl_objects(sctx, cctx, &serverssl, &clientssl, NULL, NULL)) { - printf("Unable to create SSL objects\n"); + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, + &clientssl, NULL, NULL)) + /* This should fail because the callback will fail */ + || !TEST_false(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE)) + || !TEST_false(ocsp_client_called) + || !TEST_false(ocsp_server_called)) goto end; - } - - /* This should fail because the callback will fail */ - if (create_ssl_connection(serverssl, clientssl, SSL_ERROR_NONE)) { - printf("Unexpected success creating the connection\n"); - goto end; - } - - if (ocsp_client_called || ocsp_server_called) { - printf("OCSP callbacks successfully called unexpectedly\n"); - goto end; - } - SSL_free(serverssl); SSL_free(clientssl); serverssl = NULL; @@ -851,30 +679,22 @@ static int test_tlsext_status_type(void) ocsp_client_called = 0; ocsp_server_called = 0; cdummyarg = 2; - - if (!create_ssl_objects(sctx, cctx, &serverssl, &clientssl, NULL, NULL)) { - printf("Unable to create SSL objects\n"); + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, + &clientssl, NULL, NULL))) goto end; - } /* * We'll just use any old cert for this test - it doesn't have to be an OCSP * specific one. We'll use the server cert. */ - certbio = BIO_new_file(cert, "r"); - if (certbio == NULL) { - printf("Can't load the certificate file\n"); - goto end; - } - id = OCSP_RESPID_new(); - ids = sk_OCSP_RESPID_new_null(); - ocspcert = PEM_read_bio_X509(certbio, NULL, NULL, NULL); - if (id == NULL || ids == NULL || ocspcert == NULL - || !OCSP_RESPID_set_by_key(id, ocspcert) - || !sk_OCSP_RESPID_push(ids, id)) { - printf("Unable to set OCSP_RESPIDs\n"); + if (!TEST_ptr(certbio = BIO_new_file(cert, "r")) + || !TEST_ptr(id = OCSP_RESPID_new()) + || !TEST_ptr(ids = sk_OCSP_RESPID_new_null()) + || !TEST_ptr(ocspcert = PEM_read_bio_X509(certbio, + NULL, NULL, NULL)) + || !TEST_true(OCSP_RESPID_set_by_key(id, ocspcert)) + || !TEST_true(sk_OCSP_RESPID_push(ids, id))) goto end; - } id = NULL; SSL_set_tlsext_status_ids(clientssl, ids); /* Control has been transferred */ @@ -883,15 +703,11 @@ static int test_tlsext_status_type(void) BIO_free(certbio); certbio = NULL; - if (!create_ssl_connection(serverssl, clientssl, SSL_ERROR_NONE)) { - printf("Unable to create SSL connection\n"); + if (!TEST_true(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE)) + || !TEST_true(ocsp_client_called) + || !TEST_true(ocsp_server_called)) goto end; - } - - if (!ocsp_client_called || !ocsp_server_called) { - printf("OCSP callbacks not called\n"); - goto end; - } testresult = 1; @@ -939,7 +755,6 @@ static void ssl_session_tear_down(SSL_SESSION_TEST_FIXTURE fixture) static int new_session_cb(SSL *ssl, SSL_SESSION *sess) { new_called++; - return 1; } @@ -959,11 +774,10 @@ static int execute_test_session(SSL_SESSION_TEST_FIXTURE fix) SSL_SESSION *sess1 = NULL, *sess2 = NULL; int testresult = 0; - if (!create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), &sctx, - &cctx, cert, privkey)) { - printf("Unable to create SSL_CTX pair\n"); + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), + TLS_client_method(), &sctx, + &cctx, cert, privkey))) return 0; - } #ifndef OPENSSL_NO_TLS1_2 /* Only allow TLS1.2 so we can force a connection failure later */ @@ -984,89 +798,50 @@ static int execute_test_session(SSL_SESSION_TEST_FIXTURE fix) | SSL_SESS_CACHE_NO_INTERNAL_STORE); } - if (!create_ssl_objects(sctx, cctx, &serverssl1, &clientssl1, NULL, - NULL)) { - printf("Unable to create SSL objects\n"); - goto end; - } - - if (!create_ssl_connection(serverssl1, clientssl1, SSL_ERROR_NONE)) { - printf("Unable to create SSL connection\n"); - goto end; - } - sess1 = SSL_get1_session(clientssl1); - if (sess1 == NULL) { - printf("Unexpected NULL session\n"); - goto end; - } - - if (fix.use_int_cache && SSL_CTX_add_session(cctx, sess1)) { - /* Should have failed because it should already be in the cache */ - printf("Unexpected success adding session to cache\n"); + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl1, &clientssl1, + NULL, NULL)) + || !TEST_true(create_ssl_connection(serverssl1, clientssl1, + SSL_ERROR_NONE)) + || !TEST_ptr(sess1 = SSL_get1_session(clientssl1))) goto end; - } - if (fix.use_ext_cache && (new_called != 1 || remove_called != 0)) { - printf("Session not added to cache\n"); + /* Should fail because it should already be in the cache */ + if (fix.use_int_cache && !TEST_false(SSL_CTX_add_session(cctx, sess1))) goto end; - } - - if (!create_ssl_objects(sctx, cctx, &serverssl2, &clientssl2, NULL, NULL)) { - printf("Unable to create second SSL objects\n"); + if (fix.use_ext_cache && (new_called != 1 || remove_called != 0)) goto end; - } - if (!create_ssl_connection(serverssl2, clientssl2, SSL_ERROR_NONE)) { - printf("Unable to create second SSL connection\n"); + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl2, + &clientssl2, NULL, NULL)) + || !TEST_true(create_ssl_connection(serverssl2, clientssl2, + SSL_ERROR_NONE))) goto end; - } - sess2 = SSL_get1_session(clientssl2); - if (sess2 == NULL) { - printf("Unexpected NULL session from clientssl2\n"); + if (!TEST_ptr(sess2 = SSL_get1_session(clientssl2))) goto end; - } - if (fix.use_ext_cache && (new_called != 2 || remove_called != 0)) { - printf("Remove session callback unexpectedly called\n"); + if (fix.use_ext_cache && (new_called != 2 || remove_called != 0)) goto end; - } /* - * This should clear sess2 from the cache because it is a "bad" session. See - * SSL_set_session() documentation. + * This should clear sess2 from the cache because it is a "bad" session. + * See SSL_set_session() documentation. */ - if (!SSL_set_session(clientssl2, sess1)) { - printf("Unexpected failure setting session\n"); + if (!TEST_true(SSL_set_session(clientssl2, sess1))) goto end; - } - - if (fix.use_ext_cache && (new_called != 2 || remove_called != 1)) { - printf("Failed to call callback to remove session\n"); + if (fix.use_ext_cache && (new_called != 2 || remove_called != 1)) goto end; - } - - - if (SSL_get_session(clientssl2) != sess1) { - printf("Unexpected session found\n"); + if (!TEST_ptr_eq(SSL_get_session(clientssl2), sess1)) goto end; - } if (fix.use_int_cache) { - if (!SSL_CTX_add_session(cctx, sess2)) { - /* - * Should have succeeded because it should not already be in the cache - */ - printf("Unexpected failure adding session to cache\n"); - goto end; - } - - if (!SSL_CTX_remove_session(cctx, sess2)) { - printf("Unexpected failure removing session from cache\n"); + /* Should succeeded because it should not already be in the cache */ + if (!TEST_true(SSL_CTX_add_session(cctx, sess2)) + || !TEST_true(SSL_CTX_remove_session(cctx, sess2))) goto end; - } - /* This is for the purposes of internal cache testing...ignore the + /* + * This is for the purposes of internal cache testing...ignore the * counter for external cache */ if (fix.use_ext_cache) @@ -1074,50 +849,30 @@ static int execute_test_session(SSL_SESSION_TEST_FIXTURE fix) } /* This shouldn't be in the cache so should fail */ - if (SSL_CTX_remove_session(cctx, sess2)) { - printf("Unexpected success removing session from cache\n"); + if (!TEST_false(SSL_CTX_remove_session(cctx, sess2))) goto end; - } - if (fix.use_ext_cache && (new_called != 2 || remove_called != 2)) { - printf("Failed to call callback to remove session #2\n"); + if (fix.use_ext_cache && (new_called != 2 || remove_called != 2)) goto end; - } #if !defined(OPENSSL_NO_TLS1_1) && !defined(OPENSSL_NO_TLS1_2) /* Force a connection failure */ SSL_CTX_set_max_proto_version(sctx, TLS1_1_VERSION); - - if (!create_ssl_objects(sctx, cctx, &serverssl3, &clientssl3, NULL, NULL)) { - printf("Unable to create third SSL objects\n"); + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl3, + &clientssl3, NULL, NULL)) + || !TEST_true(SSL_set_session(clientssl3, sess1)) + /* This should fail because of the mismatched protocol versions */ + || !TEST_false(create_ssl_connection(serverssl3, clientssl3, + SSL_ERROR_NONE))) goto end; - } - - if (!SSL_set_session(clientssl3, sess1)) { - printf("Unable to set session for third connection\n"); - goto end; - } - - /* This should fail because of the mismatched protocol versions */ - if (create_ssl_connection(serverssl3, clientssl3, SSL_ERROR_NONE)) { - printf("Unable to create third SSL connection\n"); - goto end; - } - /* We should have automatically removed the session from the cache */ - if (fix.use_ext_cache && (new_called != 2 || remove_called != 3)) { - printf("Failed to call callback to remove session #2\n"); + if (fix.use_ext_cache && (new_called != 2 || remove_called != 3)) goto end; - } - if (fix.use_int_cache && !SSL_CTX_add_session(cctx, sess2)) { - /* - * Should have succeeded because it should not already be in the cache - */ - printf("Unexpected failure adding session to cache #2\n"); + /* Should succeed because it should not already be in the cache */ + if (fix.use_int_cache && !SSL_CTX_add_session(cctx, sess2)) goto end; - } #endif testresult = 1; @@ -1133,6 +888,7 @@ static int execute_test_session(SSL_SESSION_TEST_FIXTURE fix) #endif SSL_SESSION_free(sess1); SSL_SESSION_free(sess2); + /* * Check if we need to remove any sessions up-refed for the external cache */ @@ -1149,25 +905,20 @@ static int execute_test_session(SSL_SESSION_TEST_FIXTURE fix) static int test_session_with_only_int_cache(void) { SETUP_TEST_FIXTURE(SSL_SESSION_TEST_FIXTURE, ssl_session_set_up); - fixture.use_ext_cache = 0; - EXECUTE_TEST(execute_test_session, ssl_session_tear_down); } static int test_session_with_only_ext_cache(void) { SETUP_TEST_FIXTURE(SSL_SESSION_TEST_FIXTURE, ssl_session_set_up); - fixture.use_int_cache = 0; - EXECUTE_TEST(execute_test_session, ssl_session_tear_down); } static int test_session_with_both_cache(void) { SETUP_TEST_FIXTURE(SSL_SESSION_TEST_FIXTURE, ssl_session_set_up); - EXECUTE_TEST(execute_test_session, ssl_session_tear_down); } @@ -1194,7 +945,7 @@ static void setupbio(BIO **res, BIO *bio1, BIO *bio2, int type) static int test_ssl_set_bio(int idx) { - SSL_CTX *ctx = SSL_CTX_new(TLS_method()); + SSL_CTX *ctx; BIO *bio1 = NULL; BIO *bio2 = NULL; BIO *irbio = NULL, *iwbio = NULL, *nrbio = NULL, *nwbio = NULL; @@ -1202,17 +953,6 @@ static int test_ssl_set_bio(int idx) int initrbio, initwbio, newrbio, newwbio; int testresult = 0; - if (ctx == NULL) { - printf("Failed to allocate SSL_CTX\n"); - goto end; - } - - ssl = SSL_new(ctx); - if (ssl == NULL) { - printf("Failed to allocate SSL object\n"); - goto end; - } - initrbio = idx % 3; idx /= 3; initwbio = idx % 3; @@ -1220,24 +960,27 @@ static int test_ssl_set_bio(int idx) newrbio = idx % 3; idx /= 3; newwbio = idx; - OPENSSL_assert(newwbio <= 2); + if (!TEST_int_le(newwbio, 2)) + return 0; + + if (!TEST_ptr(ctx = SSL_CTX_new(TLS_method())) + || !TEST_ptr(ssl = SSL_new(ctx))) + goto end; - if (initrbio == USE_BIO_1 || initwbio == USE_BIO_1 || newrbio == USE_BIO_1 + if (initrbio == USE_BIO_1 + || initwbio == USE_BIO_1 + || newrbio == USE_BIO_1 || newwbio == USE_BIO_1) { - bio1 = BIO_new(BIO_s_mem()); - if (bio1 == NULL) { - printf("Failed to allocate bio1\n"); + if (!TEST_ptr(bio1 = BIO_new(BIO_s_mem()))) goto end; - } } - if (initrbio == USE_BIO_2 || initwbio == USE_BIO_2 || newrbio == USE_BIO_2 + if (initrbio == USE_BIO_2 + || initwbio == USE_BIO_2 + || newrbio == USE_BIO_2 || newwbio == USE_BIO_2) { - bio2 = BIO_new(BIO_s_mem()); - if (bio2 == NULL) { - printf("Failed to allocate bio2\n"); + if (!TEST_ptr(bio2 = BIO_new(BIO_s_mem()))) goto end; - } } setupbio(&irbio, bio1, bio2, initrbio); @@ -1262,9 +1005,13 @@ static int test_ssl_set_bio(int idx) * SSL_set_bio() has some really complicated ownership rules where BIOs have * already been set! */ - if (nrbio != NULL && nrbio != irbio && (nwbio != iwbio || nrbio != nwbio)) + if (nrbio != NULL + && nrbio != irbio + && (nwbio != iwbio || nrbio != nwbio)) BIO_up_ref(nrbio); - if (nwbio != NULL && nwbio != nrbio && (nwbio != iwbio || (nwbio == iwbio && irbio == iwbio))) + if (nwbio != NULL + && nwbio != nrbio + && (nwbio != iwbio || (nwbio == iwbio && irbio == iwbio))) BIO_up_ref(nwbio); SSL_set_bio(ssl, nrbio, nwbio); @@ -1275,6 +1022,7 @@ static int test_ssl_set_bio(int idx) SSL_free(ssl); BIO_free(bio1); BIO_free(bio2); + /* * This test is checking that the ref counting for SSL_set_bio is correct. * If we get here and we did too many frees then we will fail in the above @@ -1282,7 +1030,6 @@ static int test_ssl_set_bio(int idx) * a crypto-mdebug build */ SSL_CTX_free(ctx); - return testresult; } @@ -1299,7 +1046,6 @@ static SSL_BIO_TEST_FIXTURE ssl_bio_set_up(const char *const test_case_name) fixture.test_case_name = test_case_name; fixture.pop_ssl = 0; fixture.change_bio = NO_BIO_CHANGE; - return fixture; } @@ -1310,28 +1056,15 @@ static void ssl_bio_tear_down(SSL_BIO_TEST_FIXTURE fixture) static int execute_test_ssl_bio(SSL_BIO_TEST_FIXTURE fix) { BIO *sslbio = NULL, *membio1 = NULL, *membio2 = NULL; - SSL_CTX *ctx = SSL_CTX_new(TLS_method()); + SSL_CTX *ctx; SSL *ssl = NULL; int testresult = 0; - if (ctx == NULL) { - printf("Failed to allocate SSL_CTX\n"); - return 0; - } - - ssl = SSL_new(ctx); - if (ssl == NULL) { - printf("Failed to allocate SSL object\n"); - goto end; - } - - sslbio = BIO_new(BIO_f_ssl()); - membio1 = BIO_new(BIO_s_mem()); - - if (sslbio == NULL || membio1 == NULL) { - printf("Malloc failure creating BIOs\n"); + if (!TEST_ptr(ctx = SSL_CTX_new(TLS_method())) + || !TEST_ptr(ssl = SSL_new(ctx)) + || !TEST_ptr(sslbio = BIO_new(BIO_f_ssl())) + || !TEST_ptr(membio1 = BIO_new(BIO_s_mem()))) goto end; - } BIO_set_ssl(sslbio, ssl, BIO_CLOSE); @@ -1343,11 +1076,8 @@ static int execute_test_ssl_bio(SSL_BIO_TEST_FIXTURE fix) /* Verify changing the rbio/wbio directly does not cause leaks */ if (fix.change_bio != NO_BIO_CHANGE) { - membio2 = BIO_new(BIO_s_mem()); - if (membio2 == NULL) { - printf("Malloc failure creating membio2\n"); + if (!TEST_ptr(membio2 = BIO_new(BIO_s_mem()))) goto end; - } if (fix.change_bio == CHANGE_RBIO) SSL_set0_rbio(ssl, membio2); else @@ -1373,34 +1103,27 @@ static int execute_test_ssl_bio(SSL_BIO_TEST_FIXTURE fix) static int test_ssl_bio_pop_next_bio(void) { SETUP_TEST_FIXTURE(SSL_BIO_TEST_FIXTURE, ssl_bio_set_up); - EXECUTE_TEST(execute_test_ssl_bio, ssl_bio_tear_down); } static int test_ssl_bio_pop_ssl_bio(void) { SETUP_TEST_FIXTURE(SSL_BIO_TEST_FIXTURE, ssl_bio_set_up); - fixture.pop_ssl = 1; - EXECUTE_TEST(execute_test_ssl_bio, ssl_bio_tear_down); } static int test_ssl_bio_change_rbio(void) { SETUP_TEST_FIXTURE(SSL_BIO_TEST_FIXTURE, ssl_bio_set_up); - fixture.change_bio = CHANGE_RBIO; - EXECUTE_TEST(execute_test_ssl_bio, ssl_bio_tear_down); } static int test_ssl_bio_change_wbio(void) { SETUP_TEST_FIXTURE(SSL_BIO_TEST_FIXTURE, ssl_bio_set_up); - fixture.change_bio = CHANGE_WBIO; - EXECUTE_TEST(execute_test_ssl_bio, ssl_bio_tear_down); } @@ -1444,7 +1167,8 @@ static const sigalgs_list testsigalgs[] = { {NULL, 0, "RSA", 0, 0}, {NULL, 0, "SHA256", 0, 0}, {NULL, 0, "RSA+SHA256:SHA256", 0, 0}, - {NULL, 0, "Invalid", 0, 0}}; + {NULL, 0, "Invalid", 0, 0} +}; static int test_set_sigalgs(int idx) { @@ -1455,18 +1179,17 @@ static int test_set_sigalgs(int idx) int testctx; /* Should never happen */ - if ((size_t)idx >= OSSL_NELEM(testsigalgs) * 2) + if (!TEST_size_t_le((size_t)idx, OSSL_NELEM(testsigalgs) * 2)) return 0; testctx = ((size_t)idx < OSSL_NELEM(testsigalgs)); curr = testctx ? &testsigalgs[idx] : &testsigalgs[idx - OSSL_NELEM(testsigalgs)]; - if (!create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), &sctx, - &cctx, cert, privkey)) { - printf("Unable to create SSL_CTX pair\n"); + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), + TLS_client_method(), &sctx, + &cctx, cert, privkey))) return 0; - } /* * TODO(TLS1.3): These APIs cannot set TLSv1.3 sig algs so we just test it @@ -1476,6 +1199,7 @@ static int test_set_sigalgs(int idx) if (testctx) { int ret; + if (curr->list != NULL) ret = SSL_CTX_set1_sigalgs(cctx, curr->list, curr->listlen); else @@ -1483,22 +1207,20 @@ static int test_set_sigalgs(int idx) if (!ret) { if (curr->valid) - printf("Unexpected failure setting sigalgs in SSL_CTX (%d)\n", - idx); + TEST_info("Failure setting sigalgs in SSL_CTX (%d)\n", idx); else testresult = 1; goto end; } if (!curr->valid) { - printf("Unexpected success setting sigalgs in SSL_CTX (%d)\n", idx); + TEST_info("Not-failed setting sigalgs in SSL_CTX (%d)\n", idx); goto end; } } - if (!create_ssl_objects(sctx, cctx, &serverssl, &clientssl, NULL, NULL)) { - printf("Unable to create SSL objects\n"); + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, + &clientssl, NULL, NULL))) goto end; - } if (!testctx) { int ret; @@ -1509,21 +1231,19 @@ static int test_set_sigalgs(int idx) ret = SSL_set1_sigalgs_list(clientssl, curr->liststr); if (!ret) { if (curr->valid) - printf("Unexpected failure setting sigalgs in SSL (%d)\n", idx); + TEST_info("Failure setting sigalgs in SSL (%d)\n", idx); else testresult = 1; goto end; } - if (!curr->valid) { - printf("Unexpected success setting sigalgs in SSL (%d)\n", idx); + if (!curr->valid) goto end; - } } - if (curr->connsuccess != create_ssl_connection(serverssl, clientssl, SSL_ERROR_NONE)) { - printf("Unexpected return value creating SSL connection (%d)\n", idx); + if (!TEST_int_eq(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE), + curr->connsuccess)) goto end; - } testresult = 1; @@ -1553,11 +1273,10 @@ static int test_set_sigalgs(int idx) static int setupearly_data_test(SSL_CTX **cctx, SSL_CTX **sctx, SSL **clientssl, SSL **serverssl, SSL_SESSION **sess, int idx) { - if (!create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), sctx, - cctx, cert, privkey)) { - printf("Unable to create SSL_CTX pair\n"); + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), + TLS_client_method(), sctx, + cctx, cert, privkey))) return 0; - } /* When idx == 1 we repeat the tests with read_ahead set */ if (idx > 0) { @@ -1565,34 +1284,23 @@ static int setupearly_data_test(SSL_CTX **cctx, SSL_CTX **sctx, SSL **clientssl, SSL_CTX_set_read_ahead(*sctx, 1); } - if (!create_ssl_objects(*sctx, *cctx, serverssl, clientssl, NULL, NULL)) { - printf("Unable to create SSL objects\n"); + if (!TEST_true(create_ssl_objects(*sctx, *cctx, serverssl, clientssl, + NULL, NULL)) + || !TEST_true(create_ssl_connection(*serverssl, *clientssl, + SSL_ERROR_NONE))) return 0; - } - - if (!create_ssl_connection(*serverssl, *clientssl, SSL_ERROR_NONE)) { - printf("Unable to create SSL connection\n"); - return 0; - } *sess = SSL_get1_session(*clientssl); - SSL_shutdown(*clientssl); SSL_shutdown(*serverssl); - SSL_free(*serverssl); SSL_free(*clientssl); *serverssl = *clientssl = NULL; - if (!create_ssl_objects(*sctx, *cctx, serverssl, clientssl, NULL, NULL)) { - printf("Unable to create SSL objects (2)\n"); + if (!TEST_true(create_ssl_objects(*sctx, *cctx, serverssl, + clientssl, NULL, NULL)) + || !TEST_true(SSL_set_session(*clientssl, *sess))) return 0; - } - - if (!SSL_set_session(*clientssl, *sess)) { - printf("Failed setting session\n"); - return 0; - } return 1; } @@ -1607,90 +1315,63 @@ static int test_early_data_read_write(int idx) size_t readbytes, written, eoedlen, rawread, rawwritten; BIO *rbio; - if (!setupearly_data_test(&cctx, &sctx, &clientssl, &serverssl, &sess, idx)) + if (!TEST_true(setupearly_data_test(&cctx, &sctx, &clientssl, + &serverssl, &sess, idx))) goto end; /* Write and read some early data */ - if (!SSL_write_early_data(clientssl, MSG1, strlen(MSG1), &written) - || written != strlen(MSG1)) { - printf("Failed writing early data message 1\n"); + if (!TEST_true(SSL_write_early_data(clientssl, MSG1, strlen(MSG1), + &written)) + || !TEST_size_t_eq(written, strlen(MSG1)) + || !TEST_int_eq(SSL_read_early_data(serverssl, buf, + sizeof(buf), &readbytes), + SSL_READ_EARLY_DATA_SUCCESS) + || !TEST_mem_eq(MSG1, readbytes, buf, strlen(MSG1)) + || !TEST_int_eq(SSL_get_early_data_status(serverssl), + SSL_EARLY_DATA_ACCEPTED)) goto end; - } - - if (SSL_read_early_data(serverssl, buf, sizeof(buf), &readbytes) - != SSL_READ_EARLY_DATA_SUCCESS - || readbytes != strlen(MSG1) - || memcmp(MSG1, buf, strlen(MSG1))) { - printf("Failed reading early data message 1\n"); - goto end; - } - - if (SSL_get_early_data_status(serverssl) != SSL_EARLY_DATA_ACCEPTED) { - printf("Unexpected early data status\n"); - goto end; - } /* * Server should be able to write data, and client should be able to * read it. */ - if (!SSL_write_early_data(serverssl, MSG2, strlen(MSG2), &written) - || written != strlen(MSG2)) { - printf("Failed writing message 2\n"); + if (!TEST_true(SSL_write_early_data(serverssl, MSG2, strlen(MSG2), + &written)) + || !TEST_size_t_eq(written, strlen(MSG2)) + || !TEST_true(SSL_read_ex(clientssl, buf, sizeof(buf), &readbytes)) + || !TEST_mem_eq(buf, readbytes, MSG2, strlen(MSG2))) goto end; - } - - if (!SSL_read_ex(clientssl, buf, sizeof(buf), &readbytes) - || readbytes != strlen(MSG2) - || memcmp(MSG2, buf, strlen(MSG2))) { - printf("Failed reading message 2\n"); - goto end; - } /* Even after reading normal data, client should be able write early data */ - if (!SSL_write_early_data(clientssl, MSG3, strlen(MSG3), &written) - || written != strlen(MSG3)) { - printf("Failed writing early data message 3\n"); + if (!TEST_true(SSL_write_early_data(clientssl, MSG3, strlen(MSG3), + &written)) + || !TEST_size_t_eq(written, strlen(MSG3))) goto end; - } /* Server should still be able read early data after writing data */ - if (SSL_read_early_data(serverssl, buf, sizeof(buf), &readbytes) - != SSL_READ_EARLY_DATA_SUCCESS - || readbytes != strlen(MSG3) - || memcmp(MSG3, buf, strlen(MSG3))) { - printf("Failed reading early data message 3\n"); + if (!TEST_int_eq(SSL_read_early_data(serverssl, buf, sizeof(buf), + &readbytes), + SSL_READ_EARLY_DATA_SUCCESS) + || !TEST_mem_eq(buf, readbytes, MSG3, strlen(MSG3))) goto end; - } /* Write more data from server and read it from client */ - if (!SSL_write_early_data(serverssl, MSG4, strlen(MSG4), &written) - || written != strlen(MSG4)) { - printf("Failed writing message 4\n"); + if (!TEST_true(SSL_write_early_data(serverssl, MSG4, strlen(MSG4), + &written)) + || !TEST_size_t_eq(written, strlen(MSG4)) + || !TEST_true(SSL_read_ex(clientssl, buf, sizeof(buf), &readbytes)) + || !TEST_mem_eq(buf, readbytes, MSG4, strlen(MSG4))) goto end; - } - - if (!SSL_read_ex(clientssl, buf, sizeof(buf), &readbytes) - || readbytes != strlen(MSG4) - || memcmp(MSG4, buf, strlen(MSG4))) { - printf("Failed reading message 4\n"); - goto end; - } /* * If client writes normal data it should mean writing early data is no * longer possible. */ - if (!SSL_write_ex(clientssl, MSG5, strlen(MSG5), &written) - || written != strlen(MSG5)) { - printf("Failed writing message 5\n"); + if (!TEST_true(SSL_write_ex(clientssl, MSG5, strlen(MSG5), &written)) + || !TEST_size_t_eq(written, strlen(MSG5)) + || !TEST_int_eq(SSL_get_early_data_status(clientssl), + SSL_EARLY_DATA_ACCEPTED)) goto end; - } - - if (SSL_get_early_data_status(clientssl) != SSL_EARLY_DATA_ACCEPTED) { - printf("Unexpected early data status(2)\n"); - goto end; - } /* * At this point the client has written EndOfEarlyData, ClientFinished and @@ -1699,181 +1380,134 @@ static int test_early_data_read_write(int idx) * in the read BIO, and then just put back the EndOfEarlyData message. */ rbio = SSL_get_rbio(serverssl); - if (!BIO_read_ex(rbio, data, sizeof(data), &rawread) - || rawread >= sizeof(data) - || rawread < SSL3_RT_HEADER_LENGTH) { - printf("Failed reading data from rbio\n"); + if (!TEST_true(BIO_read_ex(rbio, data, sizeof(data), &rawread)) + || !TEST_size_t_lt(rawread, sizeof(data)) + || !TEST_size_t_gt(rawread, SSL3_RT_HEADER_LENGTH)) goto end; - } + /* Record length is in the 4th and 5th bytes of the record header */ eoedlen = SSL3_RT_HEADER_LENGTH + (data[3] << 8 | data[4]); - if (!BIO_write_ex(rbio, data, eoedlen, &rawwritten) - || rawwritten != eoedlen) { - printf("Failed to write the EndOfEarlyData message to server rbio\n"); + if (!TEST_true(BIO_write_ex(rbio, data, eoedlen, &rawwritten)) + || !TEST_size_t_eq(rawwritten, eoedlen)) goto end; - } /* Server should be told that there is no more early data */ - if (SSL_read_early_data(serverssl, buf, sizeof(buf), &readbytes) - != SSL_READ_EARLY_DATA_FINISH - || readbytes != 0) { - printf("Failed finishing read of early data\n"); + if (!TEST_int_eq(SSL_read_early_data(serverssl, buf, sizeof(buf), + &readbytes), + SSL_READ_EARLY_DATA_FINISH) + || !TEST_size_t_eq(readbytes, 0)) goto end; - } /* * Server has not finished init yet, so should still be able to write early * data. */ - if (!SSL_write_early_data(serverssl, MSG6, strlen(MSG6), &written) - || written != strlen(MSG6)) { - printf("Failed writing early data message 6\n"); + if (!TEST_true(SSL_write_early_data(serverssl, MSG6, strlen(MSG6), + &written)) + || !TEST_size_t_eq(written, strlen(MSG6))) goto end; - } /* Push the ClientFinished and the normal data back into the server rbio */ - if (!BIO_write_ex(rbio, data + eoedlen, rawread - eoedlen, &rawwritten) - || rawwritten != rawread - eoedlen) { - printf("Failed to write the ClientFinished and data to server rbio\n"); + if (!TEST_true(BIO_write_ex(rbio, data + eoedlen, rawread - eoedlen, + &rawwritten)) + || !TEST_size_t_eq(rawwritten, rawread - eoedlen)) goto end; - } /* Server should be able to read normal data */ - if (!SSL_read_ex(serverssl, buf, sizeof(buf), &readbytes) - || readbytes != strlen(MSG5)) { - printf("Failed reading message 5\n"); + if (!TEST_true(SSL_read_ex(serverssl, buf, sizeof(buf), &readbytes)) + || !TEST_size_t_eq(readbytes, strlen(MSG5))) goto end; - } /* Client and server should not be able to write/read early data now */ - if (SSL_write_early_data(clientssl, MSG6, strlen(MSG6), &written)) { - printf("Unexpected success writing early data\n"); + if (!TEST_false(SSL_write_early_data(clientssl, MSG6, strlen(MSG6), + &written))) goto end; - } ERR_clear_error(); - - if (SSL_read_early_data(serverssl, buf, sizeof(buf), &readbytes) - != SSL_READ_EARLY_DATA_ERROR) { - printf("Unexpected success reading early data\n"); + if (!TEST_int_eq(SSL_read_early_data(serverssl, buf, sizeof(buf), + &readbytes), + SSL_READ_EARLY_DATA_ERROR)) goto end; - } ERR_clear_error(); /* Client should be able to read the data sent by the server */ - if (!SSL_read_ex(clientssl, buf, sizeof(buf), &readbytes) - || readbytes != strlen(MSG6) - || memcmp(MSG6, buf, strlen(MSG6))) { - printf("Failed reading message 6\n"); + if (!TEST_true(SSL_read_ex(clientssl, buf, sizeof(buf), &readbytes)) + || !TEST_mem_eq(buf, readbytes, MSG6, strlen(MSG6))) goto end; - } + /* * Make sure we process the NewSessionTicket. This arrives post-handshake. * We attempt a read which we do not expect to return any data. */ - if (SSL_read_ex(clientssl, buf, sizeof(buf), &readbytes)) { - printf("Unexpected success doing final client read\n"); + if (!TEST_false(SSL_read_ex(clientssl, buf, sizeof(buf), &readbytes))) goto end; - } /* Server should be able to write normal data */ - if (!SSL_write_ex(serverssl, MSG7, strlen(MSG7), &written) - || written != strlen(MSG7)) { - printf("Failed writing normal data message 7\n"); - goto end; - } - if (!SSL_read_ex(clientssl, buf, sizeof(buf), &readbytes) - || readbytes != strlen(MSG7) - || memcmp(MSG7, buf, strlen(MSG7))) { - printf("Failed reading message 7\n"); + if (!TEST_true(SSL_write_ex(serverssl, MSG7, strlen(MSG7), &written)) + || !TEST_size_t_eq(written, strlen(MSG7)) + || !TEST_true(SSL_read_ex(clientssl, buf, sizeof(buf), &readbytes)) + || !TEST_mem_eq(buf, readbytes, MSG7, strlen(MSG7))) goto end; - } SSL_SESSION_free(sess); sess = SSL_get1_session(clientssl); SSL_shutdown(clientssl); SSL_shutdown(serverssl); - SSL_free(serverssl); SSL_free(clientssl); serverssl = clientssl = NULL; - - if (!create_ssl_objects(sctx, cctx, &serverssl, &clientssl, NULL, NULL)) { - printf("Unable to create SSL objects (3)\n"); - goto end; - } - - if (!SSL_set_session(clientssl, sess)) { - printf("Failed setting session (2)\n"); + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, + &clientssl, NULL, NULL)) + || !TEST_true(SSL_set_session(clientssl, sess))) goto end; - } /* Write and read some early data */ - if (!SSL_write_early_data(clientssl, MSG1, strlen(MSG1), &written) - || written != strlen(MSG1)) { - printf("Failed writing early data message 1\n"); - goto end; - } - - if (SSL_read_early_data(serverssl, buf, sizeof(buf), &readbytes) - != SSL_READ_EARLY_DATA_SUCCESS - || readbytes != strlen(MSG1) - || memcmp(MSG1, buf, strlen(MSG1))) { - printf("Failed reading early data message 1\n"); + if (!TEST_true(SSL_write_early_data(clientssl, MSG1, strlen(MSG1), + &written)) + || !TEST_size_t_eq(written, strlen(MSG1)) + || !TEST_int_eq(SSL_read_early_data(serverssl, buf, sizeof(buf), + &readbytes), + SSL_READ_EARLY_DATA_SUCCESS) + || !TEST_mem_eq(buf, readbytes, MSG1, strlen(MSG1))) goto end; - } - if (SSL_connect(clientssl) <= 0) { - printf("Unable to complete client handshake\n"); + if (!TEST_int_gt(SSL_connect(clientssl), 0) + || !TEST_int_gt(SSL_accept(serverssl), 0)) goto end; - } - - if (SSL_accept(serverssl) <= 0) { - printf("Unable to complete server handshake\n"); - goto end; - } /* Client and server should not be able to write/read early data now */ - if (SSL_write_early_data(clientssl, MSG6, strlen(MSG6), &written)) { - printf("Unexpected success writing early data (2)\n"); + if (!TEST_false(SSL_write_early_data(clientssl, MSG6, strlen(MSG6), + &written))) goto end; - } ERR_clear_error(); - - if (SSL_read_early_data(serverssl, buf, sizeof(buf), &readbytes) - != SSL_READ_EARLY_DATA_ERROR) { - printf("Unexpected success reading early data (2)\n"); + if (!TEST_int_eq(SSL_read_early_data(serverssl, buf, sizeof(buf), + &readbytes), + SSL_READ_EARLY_DATA_ERROR)) goto end; - } ERR_clear_error(); /* Client and server should be able to write/read normal data */ - if (!SSL_write_ex(clientssl, MSG5, strlen(MSG5), &written) - || written != strlen(MSG5)) { - printf("Failed writing message 5 (2)\n"); + if (!TEST_true(SSL_write_ex(clientssl, MSG5, strlen(MSG5), &written)) + || !TEST_size_t_eq(written, strlen(MSG5)) + || !TEST_true(SSL_read_ex(serverssl, buf, sizeof(buf), &readbytes)) + || !TEST_size_t_eq(readbytes, strlen(MSG5))) goto end; - } - - if (!SSL_read_ex(serverssl, buf, sizeof(buf), &readbytes) - || readbytes != strlen(MSG5)) { - printf("Failed reading message 5 (2)\n"); - goto end; - } testresult = 1; end: - if(!testresult) - ERR_print_errors_fp(stdout); SSL_SESSION_free(sess); SSL_free(serverssl); SSL_free(clientssl); SSL_CTX_free(sctx); SSL_CTX_free(cctx); - return testresult; } +/* + * Test that a server attempting to read early data can handle a connection + * from a client where the early data is not acceptable. + */ static int test_early_data_skip(int idx) { SSL_CTX *cctx = NULL, *sctx = NULL; @@ -1883,12 +1517,8 @@ static int test_early_data_skip(int idx) unsigned char buf[20]; size_t readbytes, written; - /* - * Test that a server attempting to read early data can handle a connection - * from a client where the early data is not acceptable. - */ - - if (!setupearly_data_test(&cctx, &sctx, &clientssl, &serverssl, &sess, idx)) + if (!TEST_true(setupearly_data_test(&cctx, &sctx, &clientssl, + &serverssl, &sess, idx))) goto end; /* @@ -1896,66 +1526,48 @@ static int test_early_data_skip(int idx) * It could be any value as long as it is not within tolerance. This should * mean the ticket is rejected. */ - if (!SSL_SESSION_set_time(sess, time(NULL) - 20)) { - printf("Unexpected failure setting session creation time\n"); + if (!TEST_true(SSL_SESSION_set_time(sess, time(NULL) - 20))) goto end; - } /* Write some early data */ - if (!SSL_write_early_data(clientssl, MSG1, strlen(MSG1), &written) - || written != strlen(MSG1)) { - printf("Failed writing early data message 1\n"); + if (!TEST_true(SSL_write_early_data(clientssl, MSG1, strlen(MSG1), + &written)) + || !TEST_size_t_eq(written, strlen(MSG1))) goto end; - } /* Server should reject the early data and skip over it */ - if (SSL_read_early_data(serverssl, buf, sizeof(buf), &readbytes) - != SSL_READ_EARLY_DATA_FINISH - || readbytes != 0) { - printf("Failed reading early data\n"); + if (!TEST_int_eq(SSL_read_early_data(serverssl, buf, sizeof(buf), + &readbytes), + SSL_READ_EARLY_DATA_FINISH) + || !TEST_size_t_eq(readbytes, 0) + || !TEST_int_eq(SSL_get_early_data_status(serverssl), + SSL_EARLY_DATA_REJECTED)) goto end; - } - if (SSL_get_early_data_status(serverssl) != SSL_EARLY_DATA_REJECTED) { - printf("Unexpected early data status\n"); + /* Should be able to send normal data despite rejection of early data */ + if (!TEST_true(SSL_write_ex(clientssl, MSG2, strlen(MSG2), &written)) + || !TEST_size_t_eq(written, strlen(MSG2)) + || !TEST_int_eq(SSL_get_early_data_status(clientssl), + SSL_EARLY_DATA_REJECTED) + || !TEST_true(SSL_read_ex(serverssl, buf, sizeof(buf), &readbytes)) + || !TEST_mem_eq(buf, readbytes, MSG2, strlen(MSG2))) goto end; - } - - /* - * We should be able to send normal data despite rejection of early data - */ - if (!SSL_write_ex(clientssl, MSG2, strlen(MSG2), &written) - || written != strlen(MSG2)) { - printf("Failed writing message 2\n"); - goto end; - } - - if (SSL_get_early_data_status(clientssl) != SSL_EARLY_DATA_REJECTED) { - printf("Unexpected early data status (2)\n"); - goto end; - } - - if (!SSL_read_ex(serverssl, buf, sizeof(buf), &readbytes) - || readbytes != strlen(MSG2) - || memcmp(MSG2, buf, strlen(MSG2))) { - printf("Failed reading message 2\n"); - goto end; - } testresult = 1; end: - if(!testresult) - ERR_print_errors_fp(stdout); SSL_SESSION_free(sess); SSL_free(serverssl); SSL_free(clientssl); SSL_CTX_free(sctx); SSL_CTX_free(cctx); - return testresult; } +/* + * Test that a server attempting to read early data can handle a connection + * from a client that doesn't send any. + */ static int test_early_data_not_sent(int idx) { SSL_CTX *cctx = NULL, *sctx = NULL; @@ -1965,91 +1577,63 @@ static int test_early_data_not_sent(int idx) unsigned char buf[20]; size_t readbytes, written; - /* - * Test that a server attempting to read early data can handle a connection - * from a client that doesn't send any. - */ - - if (!setupearly_data_test(&cctx, &sctx, &clientssl, &serverssl, &sess, idx)) + if (!TEST_true(setupearly_data_test(&cctx, &sctx, &clientssl, + &serverssl, &sess, idx))) goto end; /* Write some data - should block due to handshake with server */ SSL_set_connect_state(clientssl); - if (SSL_write_ex(clientssl, MSG1, strlen(MSG1), &written)) { - printf("Unexpected success writing message 1\n"); + if (!TEST_false(SSL_write_ex(clientssl, MSG1, strlen(MSG1), &written))) goto end; - } /* Server should detect that early data has not been sent */ - if (SSL_read_early_data(serverssl, buf, sizeof(buf), &readbytes) - != SSL_READ_EARLY_DATA_FINISH - || readbytes != 0) { - printf("Failed reading early data\n"); - goto end; - } - - if (SSL_get_early_data_status(serverssl) != SSL_EARLY_DATA_NOT_SENT) { - printf("Unexpected early data status\n"); - goto end; - } - - if (SSL_get_early_data_status(clientssl) != SSL_EARLY_DATA_NOT_SENT) { - printf("Unexpected early data status (2)\n"); + if (!TEST_int_eq(SSL_read_early_data(serverssl, buf, sizeof(buf), + &readbytes), + SSL_READ_EARLY_DATA_FINISH) + || !TEST_size_t_eq(readbytes, 0) + || !TEST_int_eq(SSL_get_early_data_status(serverssl), + SSL_EARLY_DATA_NOT_SENT) + || !TEST_int_eq(SSL_get_early_data_status(clientssl), + SSL_EARLY_DATA_NOT_SENT)) goto end; - } /* Continue writing the message we started earlier */ - if (!SSL_write_ex(clientssl, MSG1, strlen(MSG1), &written) - || written != strlen(MSG1)) { - printf("Failed writing message 1\n"); + if (!TEST_true(SSL_write_ex(clientssl, MSG1, strlen(MSG1), &written)) + || !TEST_size_t_eq(written, strlen(MSG1)) + || !TEST_true(SSL_read_ex(serverssl, buf, sizeof(buf), &readbytes)) + || !TEST_mem_eq(buf, readbytes, MSG1, strlen(MSG1)) + || !SSL_write_ex(serverssl, MSG2, strlen(MSG2), &written) + || !TEST_size_t_eq(written, strlen(MSG2))) goto end; - } - - if (!SSL_read_ex(serverssl, buf, sizeof(buf), &readbytes) - || readbytes != strlen(MSG1) - || memcmp(MSG1, buf, strlen(MSG1))) { - printf("Failed reading message 1\n"); - goto end; - } - - if (!SSL_write_ex(serverssl, MSG2, strlen(MSG2), &written) - || written != strlen(MSG2)) { - printf("Failed writing message 2\n"); - goto end; - } /* * Should block due to the NewSessionTicket arrival unless we're using * read_ahead */ if (idx == 0) { - if (SSL_read_ex(clientssl, buf, sizeof(buf), &readbytes)) { - printf("Unexpected success reading message 2\n"); + if (!TEST_false(SSL_read_ex(clientssl, buf, sizeof(buf), &readbytes))) goto end; - } } - if (!SSL_read_ex(clientssl, buf, sizeof(buf), &readbytes) - || readbytes != strlen(MSG2) - || memcmp(MSG2, buf, strlen(MSG2))) { - printf("Failed reading message 2\n"); + if (!TEST_true(SSL_read_ex(clientssl, buf, sizeof(buf), &readbytes)) + || !TEST_mem_eq(buf, readbytes, MSG2, strlen(MSG2))) goto end; - } testresult = 1; end: - if(!testresult) - ERR_print_errors_fp(stdout); SSL_SESSION_free(sess); SSL_free(serverssl); SSL_free(clientssl); SSL_CTX_free(sctx); SSL_CTX_free(cctx); - return testresult; } +/* + * Test that a server that doesn't try to read early data can handle a + * client sending some. + */ static int test_early_data_not_expected(int idx) { SSL_CTX *cctx = NULL, *sctx = NULL; @@ -2059,79 +1643,55 @@ static int test_early_data_not_expected(int idx) unsigned char buf[20]; size_t readbytes, written; - /* - * Test that a server that doesn't try to read early data can handle a - * client sending some. - */ - if (!setupearly_data_test(&cctx, &sctx, &clientssl, &serverssl, &sess, idx)) + if (!TEST_true(setupearly_data_test(&cctx, &sctx, &clientssl, + &serverssl, &sess, idx))) goto end; /* Write some early data */ - if (!SSL_write_early_data(clientssl, MSG1, strlen(MSG1), &written)) { - printf("Unexpected failure writing message 1\n"); + if (!TEST_true(SSL_write_early_data(clientssl, MSG1, strlen(MSG1), + &written))) goto end; - } /* * Server should skip over early data and then block waiting for client to * continue handshake */ - if (SSL_accept(serverssl) > 0) { - printf("Unexpected success setting up server connection\n"); + if (!TEST_int_le(SSL_accept(serverssl), 0) + || !TEST_int_gt(SSL_connect(clientssl), 0) + || !TEST_int_eq(SSL_get_early_data_status(serverssl), + SSL_EARLY_DATA_REJECTED) + || !TEST_int_gt(SSL_accept(serverssl), 0) + || !TEST_int_eq(SSL_get_early_data_status(clientssl), + SSL_EARLY_DATA_REJECTED)) goto end; - } - - if (SSL_connect(clientssl) <= 0) { - printf("Failed setting up client connection\n"); - goto end; - } - - if (SSL_get_early_data_status(serverssl) != SSL_EARLY_DATA_REJECTED) { - printf("Unexpected early data status\n"); - goto end; - } - - if (SSL_accept(serverssl) <= 0) { - printf("Failed setting up server connection\n"); - goto end; - } - - if (SSL_get_early_data_status(clientssl) != SSL_EARLY_DATA_REJECTED) { - printf("Unexpected early data status (2)\n"); - goto end; - } /* Send some normal data from client to server */ - if (!SSL_write_ex(clientssl, MSG2, strlen(MSG2), &written) - || written != strlen(MSG2)) { - printf("Failed writing message 2\n"); + if (!TEST_true(SSL_write_ex(clientssl, MSG2, strlen(MSG2), &written)) + || !TEST_size_t_eq(written, strlen(MSG2))) goto end; - } - if (!SSL_read_ex(serverssl, buf, sizeof(buf), &readbytes) - || readbytes != strlen(MSG2) - || memcmp(MSG2, buf, strlen(MSG2))) { - printf("Failed reading message 2\n"); + if (!TEST_true(SSL_read_ex(serverssl, buf, sizeof(buf), &readbytes)) + || !TEST_mem_eq(buf, readbytes, MSG2, strlen(MSG2))) goto end; - } testresult = 1; end: - if(!testresult) - ERR_print_errors_fp(stdout); SSL_SESSION_free(sess); SSL_free(serverssl); SSL_free(clientssl); SSL_CTX_free(sctx); SSL_CTX_free(cctx); - return testresult; } # ifndef OPENSSL_NO_TLS1_2 +/* + * Test that a server attempting to read early data can handle a connection + * from a TLSv1.2 client. + */ static int test_early_data_tls1_2(int idx) { SSL_CTX *cctx = NULL, *sctx = NULL; @@ -2140,16 +1700,10 @@ static int test_early_data_tls1_2(int idx) unsigned char buf[20]; size_t readbytes, written; - /* - * Test that a server attempting to read early data can handle a connection - * from a TLSv1.2 client. - */ - - if (!create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), &sctx, - &cctx, cert, privkey)) { - printf("Unable to create SSL_CTX pair\n"); + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), + TLS_client_method(), &sctx, + &cctx, cert, privkey))) goto end; - } /* When idx == 1 we repeat the tests with read_ahead set */ if (idx > 0) { @@ -2157,88 +1711,55 @@ static int test_early_data_tls1_2(int idx) SSL_CTX_set_read_ahead(sctx, 1); } - if (!create_ssl_objects(sctx, cctx, &serverssl, &clientssl, NULL, NULL)) { - printf("Unable to create SSL objects\n"); + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, + &clientssl, NULL, NULL))) goto end; - } /* Write some data - should block due to handshake with server */ SSL_set_max_proto_version(clientssl, TLS1_2_VERSION); SSL_set_connect_state(clientssl); - if (SSL_write_ex(clientssl, MSG1, strlen(MSG1), &written)) { - printf("Unexpected success writing message 1\n"); + if (!TEST_false(SSL_write_ex(clientssl, MSG1, strlen(MSG1), &written))) goto end; - } /* * Server should do TLSv1.2 handshake. First it will block waiting for more * messages from client after ServerDone. Then SSL_read_early_data should * finish and detect that early data has not been sent */ - if (SSL_read_early_data(serverssl, buf, sizeof(buf), &readbytes) - != SSL_READ_EARLY_DATA_ERROR) { - printf("Unexpected success reading early data\n"); + if (!TEST_int_eq(SSL_read_early_data(serverssl, buf, sizeof(buf), + &readbytes), + SSL_READ_EARLY_DATA_ERROR)) goto end; - } /* * Continue writing the message we started earlier. Will still block waiting * for the CCS/Finished from server */ - if (SSL_write_ex(clientssl, MSG1, strlen(MSG1), &written)) { - printf("Unexpected success writing message 1\n"); - goto end; - } - - if (SSL_read_early_data(serverssl, buf, sizeof(buf), &readbytes) - != SSL_READ_EARLY_DATA_FINISH - || readbytes != 0) { - printf("Failed reading early data\n"); + if (!TEST_false(SSL_write_ex(clientssl, MSG1, strlen(MSG1), &written)) + || !TEST_int_eq(SSL_read_early_data(serverssl, buf, sizeof(buf), + &readbytes), + SSL_READ_EARLY_DATA_FINISH) + || !TEST_size_t_eq(readbytes, 0) + || !TEST_int_eq(SSL_get_early_data_status(serverssl), + SSL_EARLY_DATA_NOT_SENT)) goto end; - } - - if (SSL_get_early_data_status(serverssl) != SSL_EARLY_DATA_NOT_SENT) { - printf("Unexpected early data status\n"); - goto end; - } /* Continue writing the message we started earlier */ - if (!SSL_write_ex(clientssl, MSG1, strlen(MSG1), &written) - || written != strlen(MSG1)) { - printf("Failed writing message 1\n"); - goto end; - } - - if (SSL_get_early_data_status(clientssl) != SSL_EARLY_DATA_NOT_SENT) { - printf("Unexpected early data status (2)\n"); - goto end; - } - - if (!SSL_read_ex(serverssl, buf, sizeof(buf), &readbytes) - || readbytes != strlen(MSG1) - || memcmp(MSG1, buf, strlen(MSG1))) { - printf("Failed reading message 1\n"); - goto end; - } - - if (!SSL_write_ex(serverssl, MSG2, strlen(MSG2), &written) - || written != strlen(MSG2)) { - printf("Failed writing message 2\n"); + if (!TEST_true(SSL_write_ex(clientssl, MSG1, strlen(MSG1), &written)) + || !TEST_size_t_eq(written, strlen(MSG1)) + || !TEST_int_eq(SSL_get_early_data_status(clientssl), + SSL_EARLY_DATA_NOT_SENT) + || !TEST_true(SSL_read_ex(serverssl, buf, sizeof(buf), &readbytes)) + || !TEST_mem_eq(buf, readbytes, MSG1, strlen(MSG1)) + || !TEST_true(SSL_write_ex(serverssl, MSG2, strlen(MSG2), &written)) + || !TEST_size_t_eq(written, strlen(MSG2)) + || !SSL_read_ex(clientssl, buf, sizeof(buf), &readbytes) + || !TEST_mem_eq(buf, readbytes, MSG2, strlen(MSG2))) goto end; - } - - if (!SSL_read_ex(clientssl, buf, sizeof(buf), &readbytes) - || readbytes != strlen(MSG2) - || memcmp(MSG2, buf, strlen(MSG2))) { - printf("Failed reading message 2\n"); - goto end; - } testresult = 1; end: - if(!testresult) - ERR_print_errors_fp(stdout); SSL_free(serverssl); SSL_free(clientssl); SSL_CTX_free(sctx); @@ -2271,17 +1792,13 @@ static int old_add_cb(SSL *s, unsigned int ext_type, const unsigned char **out, else clntaddoldcb++; - if (*server != SSL_is_server(s)) - return -1; - - data = OPENSSL_malloc(sizeof(char)); - if (data == NULL) + if (*server != SSL_is_server(s) + || (data = OPENSSL_malloc(sizeof(*data))) == NULL) return -1; *data = 1; *out = data; *outlen = sizeof(char); - return 1; } @@ -2301,10 +1818,9 @@ static int old_parse_cb(SSL *s, unsigned int ext_type, const unsigned char *in, else clntparseoldcb++; - if (*server != SSL_is_server(s)) - return -1; - - if (inlen != sizeof(char) || *in != 1) + if (*server != SSL_is_server(s) + || inlen != sizeof(char) + || *in != 1) return -1; return 1; @@ -2322,17 +1838,13 @@ static int new_add_cb(SSL *s, unsigned int ext_type, unsigned int context, else clntaddnewcb++; - if (*server != SSL_is_server(s)) - return -1; - - data = OPENSSL_malloc(sizeof(char)); - if (data == NULL) + if (*server != SSL_is_server(s) + || (data = OPENSSL_malloc(sizeof(*data))) == NULL) return -1; *data = 1; *out = data; - *outlen = sizeof(char); - + *outlen = sizeof(*data); return 1; } @@ -2353,10 +1865,8 @@ static int new_parse_cb(SSL *s, unsigned int ext_type, unsigned int context, else clntparsenewcb++; - if (*server != SSL_is_server(s)) - return -1; - - if (inlen != sizeof(char) || *in != 1) + if (*server != SSL_is_server(s) + || inlen != sizeof(char) || *in != 1) return -1; return 1; @@ -2368,7 +1878,8 @@ static int new_parse_cb(SSL *s, unsigned int ext_type, unsigned int context, * Test 2: New style callbacks in TLSv1.3. Extensions in CH and EE * Test 3: New style callbacks in TLSv1.3. Extensions in CH, SH, EE, Cert + NST */ -static int test_custom_exts(int tst) { +static int test_custom_exts(int tst) +{ SSL_CTX *cctx = NULL, *sctx = NULL; SSL *clientssl = NULL, *serverssl = NULL; int testresult = 0; @@ -2381,11 +1892,10 @@ static int test_custom_exts(int tst) { clntaddoldcb = clntparseoldcb = srvaddoldcb = srvparseoldcb = 0; clntaddnewcb = clntparsenewcb = srvaddnewcb = srvparsenewcb = 0; - if (!create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), &sctx, - &cctx, cert, privkey)) { - printf("Unable to create SSL_CTX pair\n"); - return 0; - } + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), + TLS_client_method(), &sctx, + &cctx, cert, privkey))) + goto end; if (tst < 2) { SSL_CTX_set_options(cctx, SSL_OP_NO_TLSv1_3); @@ -2393,129 +1903,107 @@ static int test_custom_exts(int tst) { } if (tst == 3) { - context = SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_2_SERVER_HELLO + context = SSL_EXT_CLIENT_HELLO + | SSL_EXT_TLS1_2_SERVER_HELLO | SSL_EXT_TLS1_3_SERVER_HELLO | SSL_EXT_TLS1_3_ENCRYPTED_EXTENSIONS | SSL_EXT_TLS1_3_CERTIFICATE | SSL_EXT_TLS1_3_NEW_SESSION_TICKET; } else { - context = SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_2_SERVER_HELLO + context = SSL_EXT_CLIENT_HELLO + | SSL_EXT_TLS1_2_SERVER_HELLO | SSL_EXT_TLS1_3_ENCRYPTED_EXTENSIONS; } /* Create a client side custom extension */ if (tst == 0) { - if (!SSL_CTX_add_client_custom_ext(cctx, TEST_EXT_TYPE1, old_add_cb, - old_free_cb, &client, old_parse_cb, - &client)) { - printf("Unable to create old style client side custom extension\n"); - return 0; - } + if (!TEST_true(SSL_CTX_add_client_custom_ext(cctx, TEST_EXT_TYPE1, + old_add_cb, old_free_cb, + &client, old_parse_cb, + &client))) + goto end; } else { - if (!SSL_CTX_add_custom_ext(cctx, TEST_EXT_TYPE1, context, new_add_cb, - new_free_cb, &client, new_parse_cb, - &client)) { - printf("Unable to create new style client side custom extension\n"); - return 0; - } + if (!TEST_true(SSL_CTX_add_custom_ext(cctx, TEST_EXT_TYPE1, context, + new_add_cb, new_free_cb, + &client, new_parse_cb, &client))) + goto end; } /* Should not be able to add duplicates */ - if (SSL_CTX_add_client_custom_ext(cctx, TEST_EXT_TYPE1, old_add_cb, - old_free_cb, &client, old_parse_cb, - &client)) { - printf("Unexpected success adding duplicate client custom extension\n"); - return 0; - } - if (SSL_CTX_add_custom_ext(cctx, TEST_EXT_TYPE1, context, new_add_cb, - new_free_cb, &client, new_parse_cb, &client)) { - printf("Unexpected success adding duplicate client custom extension\n"); - return 0; - } + if (!TEST_false(SSL_CTX_add_client_custom_ext(cctx, TEST_EXT_TYPE1, + old_add_cb, old_free_cb, + &client, old_parse_cb, + &client)) + || !TEST_false(SSL_CTX_add_custom_ext(cctx, TEST_EXT_TYPE1, + context, new_add_cb, + new_free_cb, &client, + new_parse_cb, &client))) + goto end; /* Create a server side custom extension */ if (tst == 0) { - if (!SSL_CTX_add_server_custom_ext(sctx, TEST_EXT_TYPE1, old_add_cb, - old_free_cb, &server, old_parse_cb, - &server)) { - printf("Unable to create old style server side custom extension\n"); - return 0; - } + if (!TEST_true(SSL_CTX_add_server_custom_ext(sctx, TEST_EXT_TYPE1, + old_add_cb, old_free_cb, + &server, old_parse_cb, + &server))) + goto end; } else { - if (!SSL_CTX_add_custom_ext(sctx, TEST_EXT_TYPE1, context, new_add_cb, - new_free_cb, &server, new_parse_cb, - &server)) { - printf("Unable to create new style server side custom extension\n"); - return 0; - } + if (!TEST_true(SSL_CTX_add_custom_ext(sctx, TEST_EXT_TYPE1, context, + new_add_cb, new_free_cb, + &server, new_parse_cb, &server))) + goto end; } /* Should not be able to add duplicates */ - if (SSL_CTX_add_server_custom_ext(sctx, TEST_EXT_TYPE1, old_add_cb, - old_free_cb, &server, old_parse_cb, - &server)) { - printf("Unexpected success adding duplicate server custom extension\n"); - return 0; - } - if (SSL_CTX_add_custom_ext(sctx, TEST_EXT_TYPE1, context, new_add_cb, - new_free_cb, &server, new_parse_cb, &server)) { - printf("Unexpected success adding duplicate server custom extension\n"); - return 0; - } - - if (!create_ssl_objects(sctx, cctx, &serverssl, &clientssl, NULL, NULL)) { - printf("Unable to create SSL objects\n"); + if (!TEST_false(SSL_CTX_add_server_custom_ext(sctx, TEST_EXT_TYPE1, + old_add_cb, old_free_cb, + &server, old_parse_cb, + &server)) + || !TEST_false(SSL_CTX_add_custom_ext(sctx, TEST_EXT_TYPE1, + context, new_add_cb, + new_free_cb, &server, + new_parse_cb, &server))) goto end; - } - if (!create_ssl_connection(serverssl, clientssl, SSL_ERROR_NONE)) { - printf("Unable to create SSL connection\n"); + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, + &clientssl, NULL, NULL)) + || !TEST_true(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE))) goto end; - } if (tst == 0) { - if (clntaddoldcb != 1 || clntparseoldcb != 1 || srvaddoldcb != 1 - || srvparseoldcb != 1) { - printf("Custom extension callbacks not called\n"); + if (clntaddoldcb != 1 + || clntparseoldcb != 1 + || srvaddoldcb != 1 + || srvparseoldcb != 1) goto end; - } } else if (tst == 1 || tst == 2) { - if (clntaddnewcb != 1 || clntparsenewcb != 1 || srvaddnewcb != 1 - || srvparsenewcb != 1) { - printf("Custom extension callbacks not called\n"); + if (clntaddnewcb != 1 + || clntparsenewcb != 1 + || srvaddnewcb != 1 + || srvparsenewcb != 1) goto end; - } } else { - if (clntaddnewcb != 1 || clntparsenewcb != 4 || srvaddnewcb != 4 - || srvparsenewcb != 1) { - printf("Custom extension callbacks not called\n"); + if (clntaddnewcb != 1 + || clntparsenewcb != 4 + || srvaddnewcb != 4 + || srvparsenewcb != 1) goto end; - } } sess = SSL_get1_session(clientssl); - SSL_shutdown(clientssl); SSL_shutdown(serverssl); - SSL_free(serverssl); SSL_free(clientssl); serverssl = clientssl = NULL; - if (!create_ssl_objects(sctx, cctx, &serverssl, &clientssl, NULL, NULL)) { - printf("Unable to create SSL objects (2)\n"); - goto end; - } - - if (!SSL_set_session(clientssl, sess)) { - printf("Failed setting session\n"); - goto end; - } - - if (!create_ssl_connection(serverssl, clientssl, SSL_ERROR_NONE)) { - printf("Unable to create SSL connection (2)\n"); + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl, + NULL, NULL)) + || !TEST_true(SSL_set_session(clientssl, sess)) + || !TEST_true(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE))) goto end; - } /* * For a resumed session we expect to add the ClientHello extension. For the @@ -2524,24 +2012,24 @@ static int test_custom_exts(int tst) { * them. */ if (tst == 0) { - if (clntaddoldcb != 2 || clntparseoldcb != 1 || srvaddoldcb != 1 - || srvparseoldcb != 1) { - printf("Unexpected custom extension callback calls\n"); + if (clntaddoldcb != 2 + || clntparseoldcb != 1 + || srvaddoldcb != 1 + || srvparseoldcb != 1) goto end; - } } else if (tst == 1 || tst == 2) { - if (clntaddnewcb != 2 || clntparsenewcb != 2 || srvaddnewcb != 2 - || srvparsenewcb != 2) { - printf("Unexpected custom extension callback calls\n"); + if (clntaddnewcb != 2 + || clntparsenewcb != 2 + || srvaddnewcb != 2 + || srvparsenewcb != 2) goto end; - } } else { /* No Certificate message extensions in the resumption handshake */ - if (clntaddnewcb != 2 || clntparsenewcb != 7 || srvaddnewcb != 7 - || srvparsenewcb != 2) { - printf("Unexpected custom extension callback calls\n"); + if (clntaddnewcb != 2 + || clntparsenewcb != 7 + || srvaddnewcb != 7 + || srvparsenewcb != 2) goto end; - } } testresult = 1; @@ -2552,7 +2040,6 @@ end: SSL_free(clientssl); SSL_CTX_free(sctx); SSL_CTX_free(cctx); - return testresult; } @@ -2561,8 +2048,8 @@ int test_main(int argc, char *argv[]) int testresult = 1; if (argc != 3) { - printf("Invalid argument count\n"); - return 1; + TEST_error("Wrong argument count"); + return 0; } cert = argv[1]; From builds at travis-ci.org Wed Apr 26 17:57:24 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 26 Apr 2017 17:57:24 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10607 (master - 30bea14) In-Reply-To: Message-ID: <5900df8258682_43ff13d3c2f8092763a@9940f7d2-5722-4259-bcd5-06cb0c52b042.mail> Build Update for openssl/openssl ------------------------------------- Build: #10607 Status: Still Failing Duration: 26 minutes and 46 seconds Commit: 30bea14 (master) Author: Rich Salz Message: Convert bntest to TEST_ framework Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3265) View the changeset: https://github.com/openssl/openssl/compare/e596c68c315d...30bea14be6bb View the full build log and details: https://travis-ci.org/openssl/openssl/builds/226085117 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Wed Apr 26 17:45:17 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 26 Apr 2017 17:45:17 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10606 (master - e596c68) In-Reply-To: Message-ID: <5900dcd8cadd_43f8e71bd1c3c326a4@3628299f-36b1-4dc4-a958-b2eafe4cae5f.mail> Build Update for openssl/openssl ------------------------------------- Build: #10606 Status: Still Failing Duration: 20 minutes and 23 seconds Commit: e596c68 (master) Author: Graham Edgecombe Message: Return success in custom_ext_parse_old_cb_wrap if parse_cb is NULL This fixes a segfault if a NULL parse_cb is passed to SSL_CTX_add_{client,server}_custom_ext, which was supported in the pre-1.1.1 implementation. This behaviour is consistent with the other custom_ext_*_old_cb_wrap functions, and with the new SSL_CTX_add_custom_ext function. CLA: trivial Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3310) View the changeset: https://github.com/openssl/openssl/compare/8ed9a26616a7...e596c68c315d View the full build log and details: https://travis-ci.org/openssl/openssl/builds/226082297 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Wed Apr 26 18:27:56 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 26 Apr 2017 18:27:56 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10611 (master - 710756a) In-Reply-To: Message-ID: <5900e6ac538c9_43fcc350c475c10853a6@0660b054-be05-46f5-b57d-7594111f33c9.mail> Build Update for openssl/openssl ------------------------------------- Build: #10611 Status: Still Failing Duration: 24 minutes and 28 seconds Commit: 710756a (master) Author: Rich Salz Message: Convert sslapitest to test framework Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3252) View the changeset: https://github.com/openssl/openssl/compare/30bea14be6bb...710756a9b384 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/226104008 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From rsalz at openssl.org Wed Apr 26 21:00:18 2017 From: rsalz at openssl.org (Rich Salz) Date: Wed, 26 Apr 2017 21:00:18 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493240418.968086.23388.nullmailer@dev.openssl.org> The branch master has been updated via cf10df81e11eaba257368d1996a24fc3fc6d37f4 (commit) from 710756a9b384c9e9eaaf42acaf429aebc2a822a1 (commit) - Log ----------------------------------------------------------------- commit cf10df81e11eaba257368d1996a24fc3fc6d37f4 Author: Rich Salz Date: Wed Apr 26 16:43:54 2017 -0400 Fix ISO C function/object pointer issue Showed up on GCC with strict warnings. Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3325) ----------------------------------------------------------------------- Summary of changes: test/sslapitest.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/test/sslapitest.c b/test/sslapitest.c index 7c0171b..c43adba 100644 --- a/test/sslapitest.c +++ b/test/sslapitest.c @@ -264,16 +264,16 @@ static int test_keylog(void) if (!TEST_true(SSL_CTX_set_cipher_list(cctx, "RSA"))) goto end; - if (!TEST_ptr_null((void *)SSL_CTX_get_keylog_callback(cctx)) - || !TEST_ptr_null((void *)SSL_CTX_get_keylog_callback(sctx))) + if (!TEST_true(SSL_CTX_get_keylog_callback(cctx) == NULL) + || !TEST_true(SSL_CTX_get_keylog_callback(sctx) == NULL)) goto end; SSL_CTX_set_keylog_callback(cctx, client_keylog_callback); - if (!TEST_ptr_eq((void *)SSL_CTX_get_keylog_callback(cctx), - (void *)client_keylog_callback)) + if (!TEST_true(SSL_CTX_get_keylog_callback(cctx) + == client_keylog_callback)) goto end; SSL_CTX_set_keylog_callback(sctx, server_keylog_callback); - if (!TEST_ptr_eq((void *)SSL_CTX_get_keylog_callback(sctx), - (void *)server_keylog_callback)) + if (!TEST_true(SSL_CTX_get_keylog_callback(sctx) + == server_keylog_callback)) goto end; /* Now do a handshake and check that the logs have been written to. */ @@ -334,18 +334,18 @@ static int test_keylog_no_master_key(void) &cctx, cert, privkey))) return 0; - if (!TEST_ptr_null((void *)SSL_CTX_get_keylog_callback(cctx)) - || !TEST_ptr_null((void *)SSL_CTX_get_keylog_callback(sctx))) + if (!TEST_true(SSL_CTX_get_keylog_callback(cctx) == NULL) + || !TEST_true(SSL_CTX_get_keylog_callback(sctx) == NULL)) goto end; SSL_CTX_set_keylog_callback(cctx, client_keylog_callback); - if (!TEST_ptr_eq((void *)SSL_CTX_get_keylog_callback(cctx), - (void *)client_keylog_callback)) + if (!TEST_true(SSL_CTX_get_keylog_callback(cctx) + == client_keylog_callback)) goto end; SSL_CTX_set_keylog_callback(sctx, server_keylog_callback); - if (!TEST_ptr_eq((void *)SSL_CTX_get_keylog_callback(sctx), - (void *)server_keylog_callback)) + if (!TEST_true(SSL_CTX_get_keylog_callback(sctx) + == server_keylog_callback)) goto end; /* Now do a handshake and check that the logs have been written to. */ From builds at travis-ci.org Wed Apr 26 21:21:13 2017 From: builds at travis-ci.org (Travis CI) Date: Wed, 26 Apr 2017 21:21:13 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10619 (master - cf10df8) In-Reply-To: Message-ID: <59010f6714846_43ff13d1e18c412016da@9940f7d2-5722-4259-bcd5-06cb0c52b042.mail> Build Update for openssl/openssl ------------------------------------- Build: #10619 Status: Still Failing Duration: 19 minutes and 43 seconds Commit: cf10df8 (master) Author: Rich Salz Message: Fix ISO C function/object pointer issue Showed up on GCC with strict warnings. Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3325) View the changeset: https://github.com/openssl/openssl/compare/710756a9b384...cf10df81e11e View the full build log and details: https://travis-ci.org/openssl/openssl/builds/226171907 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Wed Apr 26 21:59:42 2017 From: no-reply at appveyor.com (AppVeyor) Date: Wed, 26 Apr 2017 21:59:42 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.1962 Message-ID: <20170426215941.11675.94030.A9239FF6@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Wed Apr 26 22:35:06 2017 From: no-reply at appveyor.com (AppVeyor) Date: Wed, 26 Apr 2017 22:35:06 +0000 Subject: [openssl-commits] Build completed: openssl 1.0.1963 Message-ID: <20170426223505.58075.10050.D6F35D34@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Wed Apr 26 23:24:20 2017 From: no-reply at appveyor.com (AppVeyor) Date: Wed, 26 Apr 2017 23:24:20 +0000 Subject: [openssl-commits] Build failed: openssl master.9938 Message-ID: <20170426232420.126205.63562.C6A4D243@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Wed Apr 26 23:48:46 2017 From: no-reply at appveyor.com (AppVeyor) Date: Wed, 26 Apr 2017 23:48:46 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.1966 Message-ID: <20170426234846.120733.47698.990F07EC@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Wed Apr 26 23:51:14 2017 From: no-reply at appveyor.com (AppVeyor) Date: Wed, 26 Apr 2017 23:51:14 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.1967 Message-ID: <20170426235113.67608.64346.71F09129@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Wed Apr 26 23:54:30 2017 From: no-reply at appveyor.com (AppVeyor) Date: Wed, 26 Apr 2017 23:54:30 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.1968 Message-ID: <20170426235429.4479.46725.49484F9A@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 27 00:28:42 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 27 Apr 2017 00:28:42 +0000 Subject: [openssl-commits] Build completed: openssl 1.0.1969 Message-ID: <20170427002842.39651.73008.A282B743@appveyor.com> An HTML attachment was scrubbed... URL: From rsalz at openssl.org Thu Apr 27 00:57:32 2017 From: rsalz at openssl.org (Rich Salz) Date: Thu, 27 Apr 2017 00:57:32 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493254652.473184.6311.nullmailer@dev.openssl.org> The branch master has been updated via 237bc6c997e42295eeb32c8c1c709e6e6042b839 (commit) from cf10df81e11eaba257368d1996a24fc3fc6d37f4 (commit) - Log ----------------------------------------------------------------- commit 237bc6c997e42295eeb32c8c1c709e6e6042b839 Author: Bernd Edlinger Date: Wed Apr 26 09:59:18 2017 +0200 Remove unnecessary loop in pkey_rsa_decrypt. It is not necessary to remove leading zeros here because RSA_padding_check_PKCS1_OAEP_mgf1 appends them again. As this was not done in constant time, this might have leaked timing information. Reviewed-by: Rich Salz Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3313) ----------------------------------------------------------------------- Summary of changes: crypto/rsa/rsa_pmeth.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/crypto/rsa/rsa_pmeth.c b/crypto/rsa/rsa_pmeth.c index 0292b26..4ba7139 100644 --- a/crypto/rsa/rsa_pmeth.c +++ b/crypto/rsa/rsa_pmeth.c @@ -316,19 +316,14 @@ static int pkey_rsa_decrypt(EVP_PKEY_CTX *ctx, RSA_PKEY_CTX *rctx = ctx->data; if (rctx->pad_mode == RSA_PKCS1_OAEP_PADDING) { - int i; if (!setup_tbuf(rctx, ctx)) return -1; ret = RSA_private_decrypt(inlen, in, rctx->tbuf, ctx->pkey->pkey.rsa, RSA_NO_PADDING); if (ret <= 0) return ret; - for (i = 0; i < ret; i++) { - if (rctx->tbuf[i]) - break; - } - ret = RSA_padding_check_PKCS1_OAEP_mgf1(out, ret, rctx->tbuf + i, - ret - i, ret, + ret = RSA_padding_check_PKCS1_OAEP_mgf1(out, ret, rctx->tbuf, + ret, ret, rctx->oaep_label, rctx->oaep_labellen, rctx->md, rctx->mgf1md); From rsalz at openssl.org Thu Apr 27 00:57:47 2017 From: rsalz at openssl.org (Rich Salz) Date: Thu, 27 Apr 2017 00:57:47 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1493254667.299899.7162.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 7ae8106af87f1d9f94bbc9ac65b819f0473cf57e (commit) from 56e5d5498d557fe1ab0a360ddcda2931d976ec62 (commit) - Log ----------------------------------------------------------------- commit 7ae8106af87f1d9f94bbc9ac65b819f0473cf57e Author: Bernd Edlinger Date: Wed Apr 26 09:59:18 2017 +0200 Remove unnecessary loop in pkey_rsa_decrypt. It is not necessary to remove leading zeros here because RSA_padding_check_PKCS1_OAEP_mgf1 appends them again. As this was not done in constant time, this might have leaked timing information. Reviewed-by: Rich Salz Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3313) (cherry picked from commit 237bc6c997e42295eeb32c8c1c709e6e6042b839) ----------------------------------------------------------------------- Summary of changes: crypto/rsa/rsa_pmeth.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/crypto/rsa/rsa_pmeth.c b/crypto/rsa/rsa_pmeth.c index db4fb0f..2d1dffb 100644 --- a/crypto/rsa/rsa_pmeth.c +++ b/crypto/rsa/rsa_pmeth.c @@ -302,19 +302,14 @@ static int pkey_rsa_decrypt(EVP_PKEY_CTX *ctx, int ret; RSA_PKEY_CTX *rctx = ctx->data; if (rctx->pad_mode == RSA_PKCS1_OAEP_PADDING) { - int i; if (!setup_tbuf(rctx, ctx)) return -1; ret = RSA_private_decrypt(inlen, in, rctx->tbuf, ctx->pkey->pkey.rsa, RSA_NO_PADDING); if (ret <= 0) return ret; - for (i = 0; i < ret; i++) { - if (rctx->tbuf[i]) - break; - } - ret = RSA_padding_check_PKCS1_OAEP_mgf1(out, ret, rctx->tbuf + i, - ret - i, ret, + ret = RSA_padding_check_PKCS1_OAEP_mgf1(out, ret, rctx->tbuf, + ret, ret, rctx->oaep_label, rctx->oaep_labellen, rctx->md, rctx->mgf1md); From rsalz at openssl.org Thu Apr 27 01:00:56 2017 From: rsalz at openssl.org (Rich Salz) Date: Thu, 27 Apr 2017 01:00:56 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_0_2-stable update Message-ID: <1493254856.959599.10270.nullmailer@dev.openssl.org> The branch OpenSSL_1_0_2-stable has been updated via de46e8246bf30f9d8a6b8a66b37f8bf63115aeb6 (commit) from b99f1023f8ac357ffb8d009cf78fba586de26b5a (commit) - Log ----------------------------------------------------------------- commit de46e8246bf30f9d8a6b8a66b37f8bf63115aeb6 Author: Bernd Edlinger Date: Wed Apr 26 09:59:18 2017 +0200 Remove unnecessary loop in pkey_rsa_decrypt. It is not necessary to remove leading zeros here because RSA_padding_check_PKCS1_OAEP_mgf1 appends them again. As this was not done in constant time, this might have leaked timing information. Reviewed-by: Rich Salz Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3313) (cherry picked from commit 237bc6c997e42295eeb32c8c1c709e6e6042b839) ----------------------------------------------------------------------- Summary of changes: crypto/rsa/rsa_pmeth.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/crypto/rsa/rsa_pmeth.c b/crypto/rsa/rsa_pmeth.c index ac583bf..8896e2e 100644 --- a/crypto/rsa/rsa_pmeth.c +++ b/crypto/rsa/rsa_pmeth.c @@ -446,19 +446,14 @@ static int pkey_rsa_decrypt(EVP_PKEY_CTX *ctx, int ret; RSA_PKEY_CTX *rctx = ctx->data; if (rctx->pad_mode == RSA_PKCS1_OAEP_PADDING) { - int i; if (!setup_tbuf(rctx, ctx)) return -1; ret = RSA_private_decrypt(inlen, in, rctx->tbuf, ctx->pkey->pkey.rsa, RSA_NO_PADDING); if (ret <= 0) return ret; - for (i = 0; i < ret; i++) { - if (rctx->tbuf[i]) - break; - } - ret = RSA_padding_check_PKCS1_OAEP_mgf1(out, ret, rctx->tbuf + i, - ret - i, ret, + ret = RSA_padding_check_PKCS1_OAEP_mgf1(out, ret, rctx->tbuf, + ret, ret, rctx->oaep_label, rctx->oaep_labellen, rctx->md, rctx->mgf1md); From builds at travis-ci.org Thu Apr 27 01:18:10 2017 From: builds at travis-ci.org (Travis CI) Date: Thu, 27 Apr 2017 01:18:10 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10635 (master - 237bc6c) In-Reply-To: Message-ID: <590146d29f4ac_43fcc351c528c1639739@0660b054-be05-46f5-b57d-7594111f33c9.mail> Build Update for openssl/openssl ------------------------------------- Build: #10635 Status: Still Failing Duration: 19 minutes and 14 seconds Commit: 237bc6c (master) Author: Bernd Edlinger Message: Remove unnecessary loop in pkey_rsa_decrypt. It is not necessary to remove leading zeros here because RSA_padding_check_PKCS1_OAEP_mgf1 appends them again. As this was not done in constant time, this might have leaked timing information. Reviewed-by: Rich Salz Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3313) View the changeset: https://github.com/openssl/openssl/compare/cf10df81e11e...237bc6c997e4 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/226231960 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 27 08:51:29 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 27 Apr 2017 08:51:29 +0000 Subject: [openssl-commits] Build failed: openssl master.9953 Message-ID: <20170427085128.4152.56914.99C686A4@appveyor.com> An HTML attachment was scrubbed... URL: From matt at openssl.org Thu Apr 27 10:36:24 2017 From: matt at openssl.org (Matt Caswell) Date: Thu, 27 Apr 2017 10:36:24 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493289384.274260.13034.nullmailer@dev.openssl.org> The branch master has been updated via 37659ea43053f5db951962bd1100b490bd4f7e5e (commit) from 237bc6c997e42295eeb32c8c1c709e6e6042b839 (commit) - Log ----------------------------------------------------------------- commit 37659ea43053f5db951962bd1100b490bd4f7e5e Author: Bernd Edlinger Date: Fri Mar 31 23:00:35 2017 +0200 Add parentheses on public macros where appropriate. Fixes #3063. Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3100) ----------------------------------------------------------------------- Summary of changes: include/openssl/asn1t.h | 10 +++--- include/openssl/bio.h | 47 ++++++++++++++----------- include/openssl/dh.h | 14 ++++---- include/openssl/ec.h | 11 +++--- include/openssl/evp.h | 25 ++++++++------ include/openssl/kdf.h | 14 ++++---- include/openssl/ocsp.h | 26 +++++++------- include/openssl/rsa.h | 38 ++++++++++----------- include/openssl/ssl.h | 89 +++++++++++++++++++++++++----------------------- include/openssl/tls1.h | 36 +++++++++++--------- include/openssl/x509v3.h | 5 +-- 11 files changed, 168 insertions(+), 147 deletions(-) diff --git a/include/openssl/asn1t.h b/include/openssl/asn1t.h index 537ee2e..a450ba0 100644 --- a/include/openssl/asn1t.h +++ b/include/openssl/asn1t.h @@ -44,7 +44,7 @@ extern "C" { # else /* Macro to obtain ASN1_ADB pointer from a type (only used internally) */ -# define ASN1_ADB_ptr(iptr) ((const ASN1_ADB *)(iptr())) +# define ASN1_ADB_ptr(iptr) ((const ASN1_ADB *)((iptr)())) /* Macros for start and end of ASN1_ITEM definition */ @@ -325,10 +325,10 @@ extern "C" { /* implicit and explicit helper macros */ # define ASN1_IMP_EX(stname, field, type, tag, ex) \ - ASN1_EX_TYPE(ASN1_TFLG_IMPLICIT | ex, tag, stname, field, type) + ASN1_EX_TYPE(ASN1_TFLG_IMPLICIT | (ex), tag, stname, field, type) # define ASN1_EXP_EX(stname, field, type, tag, ex) \ - ASN1_EX_TYPE(ASN1_TFLG_EXPLICIT | ex, tag, stname, field, type) + ASN1_EX_TYPE(ASN1_TFLG_EXPLICIT | (ex), tag, stname, field, type) /* Any defined by macros: the field used is in the table itself */ @@ -531,10 +531,10 @@ struct ASN1_ADB_TABLE_st { # define ASN1_TFLG_TAG_MASK (0x3 << 3) /* context specific IMPLICIT */ -# define ASN1_TFLG_IMPLICIT ASN1_TFLG_IMPTAG|ASN1_TFLG_CONTEXT +# define ASN1_TFLG_IMPLICIT (ASN1_TFLG_IMPTAG|ASN1_TFLG_CONTEXT) /* context specific EXPLICIT */ -# define ASN1_TFLG_EXPLICIT ASN1_TFLG_EXPTAG|ASN1_TFLG_CONTEXT +# define ASN1_TFLG_EXPLICIT (ASN1_TFLG_EXPTAG|ASN1_TFLG_CONTEXT) /* * If tagging is in force these determine the type of tag to use. Otherwise diff --git a/include/openssl/bio.h b/include/openssl/bio.h index b1276a5..de71475 100644 --- a/include/openssl/bio.h +++ b/include/openssl/bio.h @@ -368,9 +368,12 @@ struct bio_dgram_sctp_prinfo { # define BIO_FAMILY_IPANY 256 /* BIO_s_connect() */ -# define BIO_set_conn_hostname(b,name) BIO_ctrl(b,BIO_C_SET_CONNECT,0,(char *)name) -# define BIO_set_conn_port(b,port) BIO_ctrl(b,BIO_C_SET_CONNECT,1,(char *)port) -# define BIO_set_conn_address(b,addr) BIO_ctrl(b,BIO_C_SET_CONNECT,2,(char *)addr) +# define BIO_set_conn_hostname(b,name) BIO_ctrl(b,BIO_C_SET_CONNECT,0, \ + (char *)(name)) +# define BIO_set_conn_port(b,port) BIO_ctrl(b,BIO_C_SET_CONNECT,1, \ + (char *)(port)) +# define BIO_set_conn_address(b,addr) BIO_ctrl(b,BIO_C_SET_CONNECT,2, \ + (char *)(addr)) # define BIO_set_conn_ip_family(b,f) BIO_int_ctrl(b,BIO_C_SET_CONNECT,3,f) # define BIO_get_conn_hostname(b) ((const char *)BIO_ptr_ctrl(b,BIO_C_GET_CONNECT,0)) # define BIO_get_conn_port(b) ((const char *)BIO_ptr_ctrl(b,BIO_C_GET_CONNECT,1)) @@ -379,15 +382,18 @@ struct bio_dgram_sctp_prinfo { # define BIO_set_conn_mode(b,n) BIO_ctrl(b,BIO_C_SET_CONNECT_MODE,(n),NULL) /* BIO_s_accept() */ -# define BIO_set_accept_name(b,name) BIO_ctrl(b,BIO_C_SET_ACCEPT,0,(char *)name) -# define BIO_set_accept_port(b,port) BIO_ctrl(b,BIO_C_SET_ACCEPT,1,(char *)port) +# define BIO_set_accept_name(b,name) BIO_ctrl(b,BIO_C_SET_ACCEPT,0, \ + (char *)(name)) +# define BIO_set_accept_port(b,port) BIO_ctrl(b,BIO_C_SET_ACCEPT,1, \ + (char *)(port)) # define BIO_get_accept_name(b) ((const char *)BIO_ptr_ctrl(b,BIO_C_GET_ACCEPT,0)) # define BIO_get_accept_port(b) ((const char *)BIO_ptr_ctrl(b,BIO_C_GET_ACCEPT,1)) # define BIO_get_peer_name(b) ((const char *)BIO_ptr_ctrl(b,BIO_C_GET_ACCEPT,2)) # define BIO_get_peer_port(b) ((const char *)BIO_ptr_ctrl(b,BIO_C_GET_ACCEPT,3)) /* #define BIO_set_nbio(b,n) BIO_ctrl(b,BIO_C_SET_NBIO,(n),NULL) */ # define BIO_set_nbio_accept(b,n) BIO_ctrl(b,BIO_C_SET_ACCEPT,2,(n)?(void *)"a":NULL) -# define BIO_set_accept_bios(b,bio) BIO_ctrl(b,BIO_C_SET_ACCEPT,3,(char *)bio) +# define BIO_set_accept_bios(b,bio) BIO_ctrl(b,BIO_C_SET_ACCEPT,3, \ + (char *)(bio)) # define BIO_set_accept_ip_family(b,f) BIO_int_ctrl(b,BIO_C_SET_ACCEPT,4,f) # define BIO_get_accept_ip_family(b) BIO_ctrl(b,BIO_C_GET_ACCEPT,4,NULL) @@ -407,11 +413,11 @@ struct bio_dgram_sctp_prinfo { /* BIO_s_datagram(), BIO_s_fd(), BIO_s_socket(), BIO_s_accept() and BIO_s_connect() */ # define BIO_set_fd(b,fd,c) BIO_int_ctrl(b,BIO_C_SET_FD,c,fd) -# define BIO_get_fd(b,c) BIO_ctrl(b,BIO_C_GET_FD,0,(char *)c) +# define BIO_get_fd(b,c) BIO_ctrl(b,BIO_C_GET_FD,0,(char *)(c)) /* BIO_s_file() */ -# define BIO_set_fp(b,fp,c) BIO_ctrl(b,BIO_C_SET_FILE_PTR,c,(char *)fp) -# define BIO_get_fp(b,fpp) BIO_ctrl(b,BIO_C_GET_FILE_PTR,0,(char *)fpp) +# define BIO_set_fp(b,fp,c) BIO_ctrl(b,BIO_C_SET_FILE_PTR,c,(char *)(fp)) +# define BIO_get_fp(b,fpp) BIO_ctrl(b,BIO_C_GET_FILE_PTR,0,(char *)(fpp)) /* BIO_s_fd() and BIO_s_file() */ # define BIO_seek(b,ofs) (int)BIO_ctrl(b,BIO_C_FILE_SEEK,ofs,NULL) @@ -429,7 +435,7 @@ struct bio_dgram_sctp_prinfo { int BIO_read_filename(BIO *b, const char *name); # else # define BIO_read_filename(b,name) (int)BIO_ctrl(b,BIO_C_SET_FILENAME, \ - BIO_CLOSE|BIO_FP_READ,(char *)name) + BIO_CLOSE|BIO_FP_READ,(char *)(name)) # endif # define BIO_write_filename(b,name) (int)BIO_ctrl(b,BIO_C_SET_FILENAME, \ BIO_CLOSE|BIO_FP_WRITE,name) @@ -444,8 +450,8 @@ int BIO_read_filename(BIO *b, const char *name); * next_bio field in the bio. So when you free the BIO, make sure you are * doing a BIO_free_all() to catch the underlying BIO. */ -# define BIO_set_ssl(b,ssl,c) BIO_ctrl(b,BIO_C_SET_SSL,c,(char *)ssl) -# define BIO_get_ssl(b,sslp) BIO_ctrl(b,BIO_C_GET_SSL,0,(char *)sslp) +# define BIO_set_ssl(b,ssl,c) BIO_ctrl(b,BIO_C_SET_SSL,c,(char *)(ssl)) +# define BIO_get_ssl(b,sslp) BIO_ctrl(b,BIO_C_GET_SSL,0,(char *)(sslp)) # define BIO_set_ssl_mode(b,client) BIO_ctrl(b,BIO_C_SSL_MODE,client,NULL) # define BIO_set_ssl_renegotiate_bytes(b,num) \ BIO_ctrl(b,BIO_C_SET_SSL_RENEGOTIATE_BYTES,num,NULL) @@ -455,11 +461,12 @@ int BIO_read_filename(BIO *b, const char *name); BIO_ctrl(b,BIO_C_SET_SSL_RENEGOTIATE_TIMEOUT,seconds,NULL) /* defined in evp.h */ -/* #define BIO_set_md(b,md) BIO_ctrl(b,BIO_C_SET_MD,1,(char *)md) */ +/* #define BIO_set_md(b,md) BIO_ctrl(b,BIO_C_SET_MD,1,(char *)(md)) */ -# define BIO_get_mem_data(b,pp) BIO_ctrl(b,BIO_CTRL_INFO,0,(char *)pp) -# define BIO_set_mem_buf(b,bm,c) BIO_ctrl(b,BIO_C_SET_BUF_MEM,c,(char *)bm) -# define BIO_get_mem_ptr(b,pp) BIO_ctrl(b,BIO_C_GET_BUF_MEM_PTR,0,(char *)pp) +# define BIO_get_mem_data(b,pp) BIO_ctrl(b,BIO_CTRL_INFO,0,(char *)(pp)) +# define BIO_set_mem_buf(b,bm,c) BIO_ctrl(b,BIO_C_SET_BUF_MEM,c,(char *)(bm)) +# define BIO_get_mem_ptr(b,pp) BIO_ctrl(b,BIO_C_GET_BUF_MEM_PTR,0, \ + (char *)(pp)) # define BIO_set_mem_eof_return(b,v) \ BIO_ctrl(b,BIO_C_SET_BUF_MEM_EOF_RETURN,v,NULL) @@ -505,17 +512,17 @@ int BIO_ctrl_reset_read_request(BIO *b); /* ctrl macros for dgram */ # define BIO_ctrl_dgram_connect(b,peer) \ - (int)BIO_ctrl(b,BIO_CTRL_DGRAM_CONNECT,0, (char *)peer) + (int)BIO_ctrl(b,BIO_CTRL_DGRAM_CONNECT,0, (char *)(peer)) # define BIO_ctrl_set_connected(b,peer) \ - (int)BIO_ctrl(b, BIO_CTRL_DGRAM_SET_CONNECTED, 0, (char *)peer) + (int)BIO_ctrl(b, BIO_CTRL_DGRAM_SET_CONNECTED, 0, (char *)(peer)) # define BIO_dgram_recv_timedout(b) \ (int)BIO_ctrl(b, BIO_CTRL_DGRAM_GET_RECV_TIMER_EXP, 0, NULL) # define BIO_dgram_send_timedout(b) \ (int)BIO_ctrl(b, BIO_CTRL_DGRAM_GET_SEND_TIMER_EXP, 0, NULL) # define BIO_dgram_get_peer(b,peer) \ - (int)BIO_ctrl(b, BIO_CTRL_DGRAM_GET_PEER, 0, (char *)peer) + (int)BIO_ctrl(b, BIO_CTRL_DGRAM_GET_PEER, 0, (char *)(peer)) # define BIO_dgram_set_peer(b,peer) \ - (int)BIO_ctrl(b, BIO_CTRL_DGRAM_SET_PEER, 0, (char *)peer) + (int)BIO_ctrl(b, BIO_CTRL_DGRAM_SET_PEER, 0, (char *)(peer)) # define BIO_dgram_get_mtu_overhead(b) \ (unsigned int)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_MTU_OVERHEAD, 0, NULL) diff --git a/include/openssl/dh.h b/include/openssl/dh.h index fbd4790..2dd641d 100644 --- a/include/openssl/dh.h +++ b/include/openssl/dh.h @@ -250,22 +250,22 @@ int DH_meth_set_generate_params(DH_METHOD *dhm, # define EVP_PKEY_CTX_set0_dh_kdf_oid(ctx, oid) \ EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_DHX, \ EVP_PKEY_OP_DERIVE, \ - EVP_PKEY_CTRL_DH_KDF_OID, 0, (void *)oid) + EVP_PKEY_CTRL_DH_KDF_OID, 0, (void *)(oid)) # define EVP_PKEY_CTX_get0_dh_kdf_oid(ctx, poid) \ EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_DHX, \ EVP_PKEY_OP_DERIVE, \ - EVP_PKEY_CTRL_GET_DH_KDF_OID, 0, (void *)poid) + EVP_PKEY_CTRL_GET_DH_KDF_OID, 0, (void *)(poid)) # define EVP_PKEY_CTX_set_dh_kdf_md(ctx, md) \ EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_DHX, \ EVP_PKEY_OP_DERIVE, \ - EVP_PKEY_CTRL_DH_KDF_MD, 0, (void *)md) + EVP_PKEY_CTRL_DH_KDF_MD, 0, (void *)(md)) # define EVP_PKEY_CTX_get_dh_kdf_md(ctx, pmd) \ EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_DHX, \ EVP_PKEY_OP_DERIVE, \ - EVP_PKEY_CTRL_GET_DH_KDF_MD, 0, (void *)pmd) + EVP_PKEY_CTRL_GET_DH_KDF_MD, 0, (void *)(pmd)) # define EVP_PKEY_CTX_set_dh_kdf_outlen(ctx, len) \ EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_DHX, \ @@ -275,17 +275,17 @@ int DH_meth_set_generate_params(DH_METHOD *dhm, # define EVP_PKEY_CTX_get_dh_kdf_outlen(ctx, plen) \ EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_DHX, \ EVP_PKEY_OP_DERIVE, \ - EVP_PKEY_CTRL_GET_DH_KDF_OUTLEN, 0, (void *)plen) + EVP_PKEY_CTRL_GET_DH_KDF_OUTLEN, 0, (void *)(plen)) # define EVP_PKEY_CTX_set0_dh_kdf_ukm(ctx, p, plen) \ EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_DHX, \ EVP_PKEY_OP_DERIVE, \ - EVP_PKEY_CTRL_DH_KDF_UKM, plen, (void *)p) + EVP_PKEY_CTRL_DH_KDF_UKM, plen, (void *)(p)) # define EVP_PKEY_CTX_get0_dh_kdf_ukm(ctx, p) \ EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_DHX, \ EVP_PKEY_OP_DERIVE, \ - EVP_PKEY_CTRL_GET_DH_KDF_UKM, 0, (void *)p) + EVP_PKEY_CTRL_GET_DH_KDF_UKM, 0, (void *)(p)) # define EVP_PKEY_CTRL_DH_PARAMGEN_PRIME_LEN (EVP_PKEY_ALG_CTRL + 1) # define EVP_PKEY_CTRL_DH_PARAMGEN_GENERATOR (EVP_PKEY_ALG_CTRL + 2) diff --git a/include/openssl/ec.h b/include/openssl/ec.h index 7f6392e..0562dd3 100644 --- a/include/openssl/ec.h +++ b/include/openssl/ec.h @@ -1316,12 +1316,12 @@ void EC_KEY_METHOD_get_verify(EC_KEY_METHOD *meth, # define EVP_PKEY_CTX_set_ecdh_kdf_md(ctx, md) \ EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_EC, \ EVP_PKEY_OP_DERIVE, \ - EVP_PKEY_CTRL_EC_KDF_MD, 0, (void *)md) + EVP_PKEY_CTRL_EC_KDF_MD, 0, (void *)(md)) # define EVP_PKEY_CTX_get_ecdh_kdf_md(ctx, pmd) \ EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_EC, \ EVP_PKEY_OP_DERIVE, \ - EVP_PKEY_CTRL_GET_EC_KDF_MD, 0, (void *)pmd) + EVP_PKEY_CTRL_GET_EC_KDF_MD, 0, (void *)(pmd)) # define EVP_PKEY_CTX_set_ecdh_kdf_outlen(ctx, len) \ EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_EC, \ @@ -1331,17 +1331,18 @@ void EC_KEY_METHOD_get_verify(EC_KEY_METHOD *meth, # define EVP_PKEY_CTX_get_ecdh_kdf_outlen(ctx, plen) \ EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_EC, \ EVP_PKEY_OP_DERIVE, \ - EVP_PKEY_CTRL_GET_EC_KDF_OUTLEN, 0, (void *)plen) + EVP_PKEY_CTRL_GET_EC_KDF_OUTLEN, 0, \ + (void *)(plen)) # define EVP_PKEY_CTX_set0_ecdh_kdf_ukm(ctx, p, plen) \ EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_EC, \ EVP_PKEY_OP_DERIVE, \ - EVP_PKEY_CTRL_EC_KDF_UKM, plen, (void *)p) + EVP_PKEY_CTRL_EC_KDF_UKM, plen, (void *)(p)) # define EVP_PKEY_CTX_get0_ecdh_kdf_ukm(ctx, p) \ EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_EC, \ EVP_PKEY_OP_DERIVE, \ - EVP_PKEY_CTRL_GET_EC_KDF_UKM, 0, (void *)p) + EVP_PKEY_CTRL_GET_EC_KDF_UKM, 0, (void *)(p)) # define EVP_PKEY_CTRL_EC_PARAMGEN_CURVE_NID (EVP_PKEY_ALG_CTRL + 1) # define EVP_PKEY_CTRL_EC_PARAM_ENC (EVP_PKEY_ALG_CTRL + 2) diff --git a/include/openssl/evp.h b/include/openssl/evp.h index a8284e3..fec4c5b 100644 --- a/include/openssl/evp.h +++ b/include/openssl/evp.h @@ -476,8 +476,8 @@ void *EVP_CIPHER_CTX_set_cipher_data(EVP_CIPHER_CTX *ctx, void *cipher_data); # endif # define EVP_CIPHER_CTX_mode(c) EVP_CIPHER_mode(EVP_CIPHER_CTX_cipher(c)) -# define EVP_ENCODE_LENGTH(l) (((l+2)/3*4)+(l/48+1)*2+80) -# define EVP_DECODE_LENGTH(l) ((l+3)/4*3+80) +# define EVP_ENCODE_LENGTH(l) ((((l)+2)/3*4)+((l)/48+1)*2+80) +# define EVP_DECODE_LENGTH(l) (((l)+3)/4*3+80) # define EVP_SignInit_ex(a,b,c) EVP_DigestInit_ex(a,b,c) # define EVP_SignInit(a,b) EVP_DigestInit(a,b) @@ -493,13 +493,16 @@ void *EVP_CIPHER_CTX_set_cipher_data(EVP_CIPHER_CTX *ctx, void *cipher_data); # ifdef CONST_STRICT void BIO_set_md(BIO *, const EVP_MD *md); # else -# define BIO_set_md(b,md) BIO_ctrl(b,BIO_C_SET_MD,0,(char *)md) +# define BIO_set_md(b,md) BIO_ctrl(b,BIO_C_SET_MD,0,(char *)(md)) # endif -# define BIO_get_md(b,mdp) BIO_ctrl(b,BIO_C_GET_MD,0,(char *)mdp) -# define BIO_get_md_ctx(b,mdcp) BIO_ctrl(b,BIO_C_GET_MD_CTX,0,(char *)mdcp) -# define BIO_set_md_ctx(b,mdcp) BIO_ctrl(b,BIO_C_SET_MD_CTX,0,(char *)mdcp) -# define BIO_get_cipher_status(b) BIO_ctrl(b,BIO_C_GET_CIPHER_STATUS,0,NULL) -# define BIO_get_cipher_ctx(b,c_pp) BIO_ctrl(b,BIO_C_GET_CIPHER_CTX,0,(char *)c_pp) +# define BIO_get_md(b,mdp) BIO_ctrl(b,BIO_C_GET_MD,0,(char *)(mdp)) +# define BIO_get_md_ctx(b,mdcp) BIO_ctrl(b,BIO_C_GET_MD_CTX,0, \ + (char *)(mdcp)) +# define BIO_set_md_ctx(b,mdcp) BIO_ctrl(b,BIO_C_SET_MD_CTX,0, \ + (char *)(mdcp)) +# define BIO_get_cipher_status(b) BIO_ctrl(b,BIO_C_GET_CIPHER_STATUS,0,NULL) +# define BIO_get_cipher_ctx(b,c_pp) BIO_ctrl(b,BIO_C_GET_CIPHER_CTX,0, \ + (char *)(c_pp)) /*__owur*/ int EVP_Cipher(EVP_CIPHER_CTX *c, unsigned char *out, @@ -1195,15 +1198,15 @@ void EVP_PKEY_asn1_set_security_bits(EVP_PKEY_ASN1_METHOD *ameth, # define EVP_PKEY_CTX_set_signature_md(ctx, md) \ EVP_PKEY_CTX_ctrl(ctx, -1, EVP_PKEY_OP_TYPE_SIG, \ - EVP_PKEY_CTRL_MD, 0, (void *)md) + EVP_PKEY_CTRL_MD, 0, (void *)(md)) # define EVP_PKEY_CTX_get_signature_md(ctx, pmd) \ EVP_PKEY_CTX_ctrl(ctx, -1, EVP_PKEY_OP_TYPE_SIG, \ - EVP_PKEY_CTRL_GET_MD, 0, (void *)pmd) + EVP_PKEY_CTRL_GET_MD, 0, (void *)(pmd)) # define EVP_PKEY_CTX_set_mac_key(ctx, key, len) \ EVP_PKEY_CTX_ctrl(ctx, -1, EVP_PKEY_OP_KEYGEN, \ - EVP_PKEY_CTRL_SET_MAC_KEY, len, (void *)key) + EVP_PKEY_CTRL_SET_MAC_KEY, len, (void *)(key)) # define EVP_PKEY_CTRL_MD 1 # define EVP_PKEY_CTRL_PEER_KEY 2 diff --git a/include/openssl/kdf.h b/include/openssl/kdf.h index 0df4532..17d5ca3 100644 --- a/include/openssl/kdf.h +++ b/include/openssl/kdf.h @@ -29,31 +29,31 @@ extern "C" { # define EVP_PKEY_CTX_set_tls1_prf_md(pctx, md) \ EVP_PKEY_CTX_ctrl(pctx, -1, EVP_PKEY_OP_DERIVE, \ - EVP_PKEY_CTRL_TLS_MD, 0, (void *)md) + EVP_PKEY_CTRL_TLS_MD, 0, (void *)(md)) # define EVP_PKEY_CTX_set1_tls1_prf_secret(pctx, sec, seclen) \ EVP_PKEY_CTX_ctrl(pctx, -1, EVP_PKEY_OP_DERIVE, \ - EVP_PKEY_CTRL_TLS_SECRET, seclen, (void *)sec) + EVP_PKEY_CTRL_TLS_SECRET, seclen, (void *)(sec)) # define EVP_PKEY_CTX_add1_tls1_prf_seed(pctx, seed, seedlen) \ EVP_PKEY_CTX_ctrl(pctx, -1, EVP_PKEY_OP_DERIVE, \ - EVP_PKEY_CTRL_TLS_SEED, seedlen, (void *)seed) + EVP_PKEY_CTRL_TLS_SEED, seedlen, (void *)(seed)) # define EVP_PKEY_CTX_set_hkdf_md(pctx, md) \ EVP_PKEY_CTX_ctrl(pctx, -1, EVP_PKEY_OP_DERIVE, \ - EVP_PKEY_CTRL_HKDF_MD, 0, (void *)md) + EVP_PKEY_CTRL_HKDF_MD, 0, (void *)(md)) # define EVP_PKEY_CTX_set1_hkdf_salt(pctx, salt, saltlen) \ EVP_PKEY_CTX_ctrl(pctx, -1, EVP_PKEY_OP_DERIVE, \ - EVP_PKEY_CTRL_HKDF_SALT, saltlen, (void *)salt) + EVP_PKEY_CTRL_HKDF_SALT, saltlen, (void *)(salt)) # define EVP_PKEY_CTX_set1_hkdf_key(pctx, key, keylen) \ EVP_PKEY_CTX_ctrl(pctx, -1, EVP_PKEY_OP_DERIVE, \ - EVP_PKEY_CTRL_HKDF_KEY, keylen, (void *)key) + EVP_PKEY_CTRL_HKDF_KEY, keylen, (void *)(key)) # define EVP_PKEY_CTX_add1_hkdf_info(pctx, info, infolen) \ EVP_PKEY_CTX_ctrl(pctx, -1, EVP_PKEY_OP_DERIVE, \ - EVP_PKEY_CTRL_HKDF_INFO, infolen, (void *)info) + EVP_PKEY_CTRL_HKDF_INFO, infolen, (void *)(info)) # define EVP_PKEY_CTX_hkdf_mode(pctx, mode) \ EVP_PKEY_CTX_ctrl(pctx, -1, EVP_PKEY_OP_DERIVE, \ diff --git a/include/openssl/ocsp.h b/include/openssl/ocsp.h index 08debc5..fb384b6 100644 --- a/include/openssl/ocsp.h +++ b/include/openssl/ocsp.h @@ -120,18 +120,20 @@ typedef struct ocsp_service_locator_st OCSP_SERVICELOC; # define d2i_OCSP_RESPONSE_bio(bp,p) ASN1_d2i_bio_of(OCSP_RESPONSE,OCSP_RESPONSE_new,d2i_OCSP_RESPONSE,bp,p) # define PEM_read_bio_OCSP_REQUEST(bp,x,cb) (OCSP_REQUEST *)PEM_ASN1_read_bio( \ - (char *(*)())d2i_OCSP_REQUEST,PEM_STRING_OCSP_REQUEST,bp,(char **)x,cb,NULL) + (char *(*)())d2i_OCSP_REQUEST,PEM_STRING_OCSP_REQUEST, \ + bp,(char **)(x),cb,NULL) -# define PEM_read_bio_OCSP_RESPONSE(bp,x,cb)(OCSP_RESPONSE *)PEM_ASN1_read_bio(\ - (char *(*)())d2i_OCSP_RESPONSE,PEM_STRING_OCSP_RESPONSE,bp,(char **)x,cb,NULL) +# define PEM_read_bio_OCSP_RESPONSE(bp,x,cb)(OCSP_RESPONSE *)PEM_ASN1_read_bio(\ + (char *(*)())d2i_OCSP_RESPONSE,PEM_STRING_OCSP_RESPONSE, \ + bp,(char **)(x),cb,NULL) # define PEM_write_bio_OCSP_REQUEST(bp,o) \ PEM_ASN1_write_bio((int (*)())i2d_OCSP_REQUEST,PEM_STRING_OCSP_REQUEST,\ - bp,(char *)o, NULL,NULL,0,NULL,NULL) + bp,(char *)(o), NULL,NULL,0,NULL,NULL) # define PEM_write_bio_OCSP_RESPONSE(bp,o) \ PEM_ASN1_write_bio((int (*)())i2d_OCSP_RESPONSE,PEM_STRING_OCSP_RESPONSE,\ - bp,(char *)o, NULL,NULL,0,NULL,NULL) + bp,(char *)(o), NULL,NULL,0,NULL,NULL) # define i2d_OCSP_RESPONSE_bio(bp,o) ASN1_i2d_bio_of(OCSP_RESPONSE,i2d_OCSP_RESPONSE,bp,o) @@ -139,19 +141,19 @@ typedef struct ocsp_service_locator_st OCSP_SERVICELOC; # define OCSP_REQUEST_sign(o,pkey,md) \ ASN1_item_sign(ASN1_ITEM_rptr(OCSP_REQINFO),\ - &o->optionalSignature->signatureAlgorithm,NULL,\ - o->optionalSignature->signature,&o->tbsRequest,pkey,md) + &(o)->optionalSignature->signatureAlgorithm,NULL,\ + (o)->optionalSignature->signature,&(o)->tbsRequest,pkey,md) # define OCSP_BASICRESP_sign(o,pkey,md,d) \ - ASN1_item_sign(ASN1_ITEM_rptr(OCSP_RESPDATA),&o->signatureAlgorithm,NULL,\ - o->signature,&o->tbsResponseData,pkey,md) + ASN1_item_sign(ASN1_ITEM_rptr(OCSP_RESPDATA),&(o)->signatureAlgorithm,\ + NULL,(o)->signature,&(o)->tbsResponseData,pkey,md) # define OCSP_REQUEST_verify(a,r) ASN1_item_verify(ASN1_ITEM_rptr(OCSP_REQINFO),\ - &a->optionalSignature->signatureAlgorithm,\ - a->optionalSignature->signature,&a->tbsRequest,r) + &(a)->optionalSignature->signatureAlgorithm,\ + (a)->optionalSignature->signature,&(a)->tbsRequest,r) # define OCSP_BASICRESP_verify(a,r,d) ASN1_item_verify(ASN1_ITEM_rptr(OCSP_RESPDATA),\ - &a->signatureAlgorithm,a->signature,&a->tbsResponseData,r) + &(a)->signatureAlgorithm,(a)->signature,&(a)->tbsResponseData,r) # define ASN1_BIT_STRING_digest(data,type,md,len) \ ASN1_item_digest(ASN1_ITEM_rptr(ASN1_BIT_STRING),type,data,md,len) diff --git a/include/openssl/rsa.h b/include/openssl/rsa.h index 024a240..558b89a 100644 --- a/include/openssl/rsa.h +++ b/include/openssl/rsa.h @@ -119,38 +119,38 @@ extern "C" { RSA_pkey_ctx_ctrl(ctx, EVP_PKEY_OP_KEYGEN, \ EVP_PKEY_CTRL_RSA_KEYGEN_PUBEXP, 0, pubexp) -# define EVP_PKEY_CTX_set_rsa_mgf1_md(ctx, md) \ +# define EVP_PKEY_CTX_set_rsa_mgf1_md(ctx, md) \ RSA_pkey_ctx_ctrl(ctx, EVP_PKEY_OP_TYPE_SIG | EVP_PKEY_OP_TYPE_CRYPT, \ - EVP_PKEY_CTRL_RSA_MGF1_MD, 0, (void *)md) + EVP_PKEY_CTRL_RSA_MGF1_MD, 0, (void *)(md)) -# define EVP_PKEY_CTX_set_rsa_pss_keygen_mgf1_md(ctx, md) \ +# define EVP_PKEY_CTX_set_rsa_pss_keygen_mgf1_md(ctx, md) \ EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA_PSS, EVP_PKEY_OP_KEYGEN, \ - EVP_PKEY_CTRL_RSA_MGF1_MD, 0, (void *)md) + EVP_PKEY_CTRL_RSA_MGF1_MD, 0, (void *)(md)) -# define EVP_PKEY_CTX_set_rsa_oaep_md(ctx, md) \ - EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA, EVP_PKEY_OP_TYPE_CRYPT, \ - EVP_PKEY_CTRL_RSA_OAEP_MD, 0, (void *)md) +# define EVP_PKEY_CTX_set_rsa_oaep_md(ctx, md) \ + EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA, EVP_PKEY_OP_TYPE_CRYPT, \ + EVP_PKEY_CTRL_RSA_OAEP_MD, 0, (void *)(md)) # define EVP_PKEY_CTX_get_rsa_mgf1_md(ctx, pmd) \ RSA_pkey_ctx_ctrl(ctx, EVP_PKEY_OP_TYPE_SIG | EVP_PKEY_OP_TYPE_CRYPT, \ - EVP_PKEY_CTRL_GET_RSA_MGF1_MD, 0, (void *)pmd) + EVP_PKEY_CTRL_GET_RSA_MGF1_MD, 0, (void *)(pmd)) # define EVP_PKEY_CTX_get_rsa_oaep_md(ctx, pmd) \ - EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA, EVP_PKEY_OP_TYPE_CRYPT, \ - EVP_PKEY_CTRL_GET_RSA_OAEP_MD, 0, (void *)pmd) + EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA, EVP_PKEY_OP_TYPE_CRYPT, \ + EVP_PKEY_CTRL_GET_RSA_OAEP_MD, 0, (void *)(pmd)) # define EVP_PKEY_CTX_set0_rsa_oaep_label(ctx, l, llen) \ - EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA, EVP_PKEY_OP_TYPE_CRYPT, \ - EVP_PKEY_CTRL_RSA_OAEP_LABEL, llen, (void *)l) + EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA, EVP_PKEY_OP_TYPE_CRYPT, \ + EVP_PKEY_CTRL_RSA_OAEP_LABEL, llen, (void *)(l)) -# define EVP_PKEY_CTX_get0_rsa_oaep_label(ctx, l) \ - EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA, EVP_PKEY_OP_TYPE_CRYPT, \ - EVP_PKEY_CTRL_GET_RSA_OAEP_LABEL, 0, (void *)l) +# define EVP_PKEY_CTX_get0_rsa_oaep_label(ctx, l) \ + EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA, EVP_PKEY_OP_TYPE_CRYPT, \ + EVP_PKEY_CTRL_GET_RSA_OAEP_LABEL, 0, (void *)(l)) -# define EVP_PKEY_CTX_rsa_pss_keygen_md(ctx, md) \ - EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA_PSS, \ - EVP_PKEY_OP_TYPE_KEYGEN, EVP_PKEY_CTRL_MD, \ - 0, (void *)md) +# define EVP_PKEY_CTX_rsa_pss_keygen_md(ctx, md) \ + EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA_PSS, \ + EVP_PKEY_OP_TYPE_KEYGEN, EVP_PKEY_CTRL_MD, \ + 0, (void *)(md)) # define EVP_PKEY_CTRL_RSA_PADDING (EVP_PKEY_ALG_CTRL + 1) # define EVP_PKEY_CTRL_RSA_PSS_SALTLEN (EVP_PKEY_ALG_CTRL + 2) diff --git a/include/openssl/ssl.h b/include/openssl/ssl.h index 317451e..d533a0c 100644 --- a/include/openssl/ssl.h +++ b/include/openssl/ssl.h @@ -877,12 +877,14 @@ DEFINE_STACK_OF_CONST(SSL_CIPHER) DEFINE_STACK_OF(SSL_COMP) /* compatibility */ -# define SSL_set_app_data(s,arg) (SSL_set_ex_data(s,0,(char *)arg)) +# define SSL_set_app_data(s,arg) (SSL_set_ex_data(s,0,(char *)(arg))) # define SSL_get_app_data(s) (SSL_get_ex_data(s,0)) -# define SSL_SESSION_set_app_data(s,a) (SSL_SESSION_set_ex_data(s,0,(char *)a)) +# define SSL_SESSION_set_app_data(s,a) (SSL_SESSION_set_ex_data(s,0, \ + (char *)(a))) # define SSL_SESSION_get_app_data(s) (SSL_SESSION_get_ex_data(s,0)) # define SSL_CTX_get_app_data(ctx) (SSL_CTX_get_ex_data(ctx,0)) -# define SSL_CTX_set_app_data(ctx,arg) (SSL_CTX_set_ex_data(ctx,0,(char *)arg)) +# define SSL_CTX_set_app_data(ctx,arg) (SSL_CTX_set_ex_data(ctx,0, \ + (char *)(arg))) DEPRECATEDIN_1_1_0(void SSL_set_debug(SSL *s, int debug)) /* TLSv1.3 KeyUpdate message types */ @@ -1222,7 +1224,7 @@ DECLARE_PEM_rw(SSL_SESSION, SSL_SESSION) # define SSL_CERT_SET_NEXT 2 # define SSL_CERT_SET_SERVER 3 # define DTLSv1_get_timeout(ssl, arg) \ - SSL_ctrl(ssl,DTLS_CTRL_GET_TIMEOUT,0, (void *)arg) + SSL_ctrl(ssl,DTLS_CTRL_GET_TIMEOUT,0, (void *)(arg)) # define DTLSv1_handle_timeout(ssl) \ SSL_ctrl(ssl,DTLS_CTRL_HANDLE_TIMEOUT,0, NULL) # define SSL_num_renegotiations(ssl) \ @@ -1232,19 +1234,19 @@ DECLARE_PEM_rw(SSL_SESSION, SSL_SESSION) # define SSL_total_renegotiations(ssl) \ SSL_ctrl((ssl),SSL_CTRL_GET_TOTAL_RENEGOTIATIONS,0,NULL) # define SSL_CTX_set_tmp_dh(ctx,dh) \ - SSL_CTX_ctrl(ctx,SSL_CTRL_SET_TMP_DH,0,(char *)dh) + SSL_CTX_ctrl(ctx,SSL_CTRL_SET_TMP_DH,0,(char *)(dh)) # define SSL_CTX_set_tmp_ecdh(ctx,ecdh) \ - SSL_CTX_ctrl(ctx,SSL_CTRL_SET_TMP_ECDH,0,(char *)ecdh) + SSL_CTX_ctrl(ctx,SSL_CTRL_SET_TMP_ECDH,0,(char *)(ecdh)) # define SSL_CTX_set_dh_auto(ctx, onoff) \ SSL_CTX_ctrl(ctx,SSL_CTRL_SET_DH_AUTO,onoff,NULL) # define SSL_set_dh_auto(s, onoff) \ SSL_ctrl(s,SSL_CTRL_SET_DH_AUTO,onoff,NULL) # define SSL_set_tmp_dh(ssl,dh) \ - SSL_ctrl(ssl,SSL_CTRL_SET_TMP_DH,0,(char *)dh) + SSL_ctrl(ssl,SSL_CTRL_SET_TMP_DH,0,(char *)(dh)) # define SSL_set_tmp_ecdh(ssl,ecdh) \ - SSL_ctrl(ssl,SSL_CTRL_SET_TMP_ECDH,0,(char *)ecdh) + SSL_ctrl(ssl,SSL_CTRL_SET_TMP_ECDH,0,(char *)(ecdh)) # define SSL_CTX_add_extra_chain_cert(ctx,x509) \ - SSL_CTX_ctrl(ctx,SSL_CTRL_EXTRA_CHAIN_CERT,0,(char *)x509) + SSL_CTX_ctrl(ctx,SSL_CTRL_EXTRA_CHAIN_CERT,0,(char *)(x509)) # define SSL_CTX_get_extra_chain_certs(ctx,px509) \ SSL_CTX_ctrl(ctx,SSL_CTRL_GET_EXTRA_CHAIN_CERTS,0,px509) # define SSL_CTX_get_extra_chain_certs_only(ctx,px509) \ @@ -1252,13 +1254,13 @@ DECLARE_PEM_rw(SSL_SESSION, SSL_SESSION) # define SSL_CTX_clear_extra_chain_certs(ctx) \ SSL_CTX_ctrl(ctx,SSL_CTRL_CLEAR_EXTRA_CHAIN_CERTS,0,NULL) # define SSL_CTX_set0_chain(ctx,sk) \ - SSL_CTX_ctrl(ctx,SSL_CTRL_CHAIN,0,(char *)sk) + SSL_CTX_ctrl(ctx,SSL_CTRL_CHAIN,0,(char *)(sk)) # define SSL_CTX_set1_chain(ctx,sk) \ - SSL_CTX_ctrl(ctx,SSL_CTRL_CHAIN,1,(char *)sk) + SSL_CTX_ctrl(ctx,SSL_CTRL_CHAIN,1,(char *)(sk)) # define SSL_CTX_add0_chain_cert(ctx,x509) \ - SSL_CTX_ctrl(ctx,SSL_CTRL_CHAIN_CERT,0,(char *)x509) + SSL_CTX_ctrl(ctx,SSL_CTRL_CHAIN_CERT,0,(char *)(x509)) # define SSL_CTX_add1_chain_cert(ctx,x509) \ - SSL_CTX_ctrl(ctx,SSL_CTRL_CHAIN_CERT,1,(char *)x509) + SSL_CTX_ctrl(ctx,SSL_CTRL_CHAIN_CERT,1,(char *)(x509)) # define SSL_CTX_get0_chain_certs(ctx,px509) \ SSL_CTX_ctrl(ctx,SSL_CTRL_GET_CHAIN_CERTS,0,px509) # define SSL_CTX_clear_chain_certs(ctx) \ @@ -1266,25 +1268,25 @@ DECLARE_PEM_rw(SSL_SESSION, SSL_SESSION) # define SSL_CTX_build_cert_chain(ctx, flags) \ SSL_CTX_ctrl(ctx,SSL_CTRL_BUILD_CERT_CHAIN, flags, NULL) # define SSL_CTX_select_current_cert(ctx,x509) \ - SSL_CTX_ctrl(ctx,SSL_CTRL_SELECT_CURRENT_CERT,0,(char *)x509) + SSL_CTX_ctrl(ctx,SSL_CTRL_SELECT_CURRENT_CERT,0,(char *)(x509)) # define SSL_CTX_set_current_cert(ctx, op) \ SSL_CTX_ctrl(ctx,SSL_CTRL_SET_CURRENT_CERT, op, NULL) # define SSL_CTX_set0_verify_cert_store(ctx,st) \ - SSL_CTX_ctrl(ctx,SSL_CTRL_SET_VERIFY_CERT_STORE,0,(char *)st) + SSL_CTX_ctrl(ctx,SSL_CTRL_SET_VERIFY_CERT_STORE,0,(char *)(st)) # define SSL_CTX_set1_verify_cert_store(ctx,st) \ - SSL_CTX_ctrl(ctx,SSL_CTRL_SET_VERIFY_CERT_STORE,1,(char *)st) + SSL_CTX_ctrl(ctx,SSL_CTRL_SET_VERIFY_CERT_STORE,1,(char *)(st)) # define SSL_CTX_set0_chain_cert_store(ctx,st) \ - SSL_CTX_ctrl(ctx,SSL_CTRL_SET_CHAIN_CERT_STORE,0,(char *)st) + SSL_CTX_ctrl(ctx,SSL_CTRL_SET_CHAIN_CERT_STORE,0,(char *)(st)) # define SSL_CTX_set1_chain_cert_store(ctx,st) \ - SSL_CTX_ctrl(ctx,SSL_CTRL_SET_CHAIN_CERT_STORE,1,(char *)st) + SSL_CTX_ctrl(ctx,SSL_CTRL_SET_CHAIN_CERT_STORE,1,(char *)(st)) # define SSL_set0_chain(ctx,sk) \ - SSL_ctrl(ctx,SSL_CTRL_CHAIN,0,(char *)sk) + SSL_ctrl(ctx,SSL_CTRL_CHAIN,0,(char *)(sk)) # define SSL_set1_chain(ctx,sk) \ - SSL_ctrl(ctx,SSL_CTRL_CHAIN,1,(char *)sk) + SSL_ctrl(ctx,SSL_CTRL_CHAIN,1,(char *)(sk)) # define SSL_add0_chain_cert(ctx,x509) \ - SSL_ctrl(ctx,SSL_CTRL_CHAIN_CERT,0,(char *)x509) + SSL_ctrl(ctx,SSL_CTRL_CHAIN_CERT,0,(char *)(x509)) # define SSL_add1_chain_cert(ctx,x509) \ - SSL_ctrl(ctx,SSL_CTRL_CHAIN_CERT,1,(char *)x509) + SSL_ctrl(ctx,SSL_CTRL_CHAIN_CERT,1,(char *)(x509)) # define SSL_get0_chain_certs(ctx,px509) \ SSL_ctrl(ctx,SSL_CTRL_GET_CHAIN_CERTS,0,px509) # define SSL_clear_chain_certs(ctx) \ @@ -1292,33 +1294,33 @@ DECLARE_PEM_rw(SSL_SESSION, SSL_SESSION) # define SSL_build_cert_chain(s, flags) \ SSL_ctrl(s,SSL_CTRL_BUILD_CERT_CHAIN, flags, NULL) # define SSL_select_current_cert(ctx,x509) \ - SSL_ctrl(ctx,SSL_CTRL_SELECT_CURRENT_CERT,0,(char *)x509) + SSL_ctrl(ctx,SSL_CTRL_SELECT_CURRENT_CERT,0,(char *)(x509)) # define SSL_set_current_cert(ctx,op) \ SSL_ctrl(ctx,SSL_CTRL_SET_CURRENT_CERT, op, NULL) # define SSL_set0_verify_cert_store(s,st) \ - SSL_ctrl(s,SSL_CTRL_SET_VERIFY_CERT_STORE,0,(char *)st) + SSL_ctrl(s,SSL_CTRL_SET_VERIFY_CERT_STORE,0,(char *)(st)) # define SSL_set1_verify_cert_store(s,st) \ - SSL_ctrl(s,SSL_CTRL_SET_VERIFY_CERT_STORE,1,(char *)st) + SSL_ctrl(s,SSL_CTRL_SET_VERIFY_CERT_STORE,1,(char *)(st)) # define SSL_set0_chain_cert_store(s,st) \ - SSL_ctrl(s,SSL_CTRL_SET_CHAIN_CERT_STORE,0,(char *)st) + SSL_ctrl(s,SSL_CTRL_SET_CHAIN_CERT_STORE,0,(char *)(st)) # define SSL_set1_chain_cert_store(s,st) \ - SSL_ctrl(s,SSL_CTRL_SET_CHAIN_CERT_STORE,1,(char *)st) + SSL_ctrl(s,SSL_CTRL_SET_CHAIN_CERT_STORE,1,(char *)(st)) # define SSL_get1_groups(ctx, s) \ - SSL_ctrl(ctx,SSL_CTRL_GET_GROUPS,0,(char *)s) + SSL_ctrl(ctx,SSL_CTRL_GET_GROUPS,0,(char *)(s)) # define SSL_get1_curves(ctx, s) \ SSL_get1_groups((ctx), (s)) # define SSL_CTX_set1_groups(ctx, glist, glistlen) \ - SSL_CTX_ctrl(ctx,SSL_CTRL_SET_GROUPS,glistlen,(char *)glist) + SSL_CTX_ctrl(ctx,SSL_CTRL_SET_GROUPS,glistlen,(char *)(glist)) # define SSL_CTX_set1_groups_list(ctx, s) \ - SSL_CTX_ctrl(ctx,SSL_CTRL_SET_GROUPS_LIST,0,(char *)s) + SSL_CTX_ctrl(ctx,SSL_CTRL_SET_GROUPS_LIST,0,(char *)(s)) # define SSL_CTX_set1_curves(ctx, clist, clistlen) \ SSL_CTX_set1_groups((ctx), (clist), (clistlen)) # define SSL_CTX_set1_curves_list(ctx, s) \ SSL_CTX_set1_groups_list((ctx), (s)) # define SSL_set1_groups(ctx, glist, glistlen) \ - SSL_ctrl(ctx,SSL_CTRL_SET_GROUPS,glistlen,(char *)glist) + SSL_ctrl(ctx,SSL_CTRL_SET_GROUPS,glistlen,(char *)(glist)) # define SSL_set1_groups_list(ctx, s) \ - SSL_ctrl(ctx,SSL_CTRL_SET_GROUPS_LIST,0,(char *)s) + SSL_ctrl(ctx,SSL_CTRL_SET_GROUPS_LIST,0,(char *)(s)) # define SSL_set1_curves(ctx, clist, clistlen) \ SSL_set1_groups((ctx), (clist), (clistlen)) # define SSL_set1_curves_list(ctx, s) \ @@ -1328,27 +1330,28 @@ DECLARE_PEM_rw(SSL_SESSION, SSL_SESSION) # define SSL_get_shared_curve(s, n) \ SSL_get_shared_group((s), (n)) # define SSL_CTX_set1_sigalgs(ctx, slist, slistlen) \ - SSL_CTX_ctrl(ctx,SSL_CTRL_SET_SIGALGS,slistlen,(int *)slist) + SSL_CTX_ctrl(ctx,SSL_CTRL_SET_SIGALGS,slistlen,(int *)(slist)) # define SSL_CTX_set1_sigalgs_list(ctx, s) \ - SSL_CTX_ctrl(ctx,SSL_CTRL_SET_SIGALGS_LIST,0,(char *)s) + SSL_CTX_ctrl(ctx,SSL_CTRL_SET_SIGALGS_LIST,0,(char *)(s)) # define SSL_set1_sigalgs(ctx, slist, slistlen) \ - SSL_ctrl(ctx,SSL_CTRL_SET_SIGALGS,slistlen,(int *)slist) + SSL_ctrl(ctx,SSL_CTRL_SET_SIGALGS,slistlen,(int *)(slist)) # define SSL_set1_sigalgs_list(ctx, s) \ - SSL_ctrl(ctx,SSL_CTRL_SET_SIGALGS_LIST,0,(char *)s) + SSL_ctrl(ctx,SSL_CTRL_SET_SIGALGS_LIST,0,(char *)(s)) # define SSL_CTX_set1_client_sigalgs(ctx, slist, slistlen) \ - SSL_CTX_ctrl(ctx,SSL_CTRL_SET_CLIENT_SIGALGS,slistlen,(int *)slist) + SSL_CTX_ctrl(ctx,SSL_CTRL_SET_CLIENT_SIGALGS,slistlen,(int *)(slist)) # define SSL_CTX_set1_client_sigalgs_list(ctx, s) \ - SSL_CTX_ctrl(ctx,SSL_CTRL_SET_CLIENT_SIGALGS_LIST,0,(char *)s) + SSL_CTX_ctrl(ctx,SSL_CTRL_SET_CLIENT_SIGALGS_LIST,0,(char *)(s)) # define SSL_set1_client_sigalgs(ctx, slist, slistlen) \ - SSL_ctrl(ctx,SSL_CTRL_SET_CLIENT_SIGALGS,clistlen,(int *)slist) + SSL_ctrl(ctx,SSL_CTRL_SET_CLIENT_SIGALGS,clistlen,(int *)(slist)) # define SSL_set1_client_sigalgs_list(ctx, s) \ - SSL_ctrl(ctx,SSL_CTRL_SET_CLIENT_SIGALGS_LIST,0,(char *)s) + SSL_ctrl(ctx,SSL_CTRL_SET_CLIENT_SIGALGS_LIST,0,(char *)(s)) # define SSL_get0_certificate_types(s, clist) \ - SSL_ctrl(s, SSL_CTRL_GET_CLIENT_CERT_TYPES, 0, (char *)clist) + SSL_ctrl(s, SSL_CTRL_GET_CLIENT_CERT_TYPES, 0, (char *)(clist)) # define SSL_CTX_set1_client_certificate_types(ctx, clist, clistlen) \ - SSL_CTX_ctrl(ctx,SSL_CTRL_SET_CLIENT_CERT_TYPES,clistlen,(char *)clist) + SSL_CTX_ctrl(ctx,SSL_CTRL_SET_CLIENT_CERT_TYPES,clistlen, \ + (char *)(clist)) # define SSL_set1_client_certificate_types(s, clist, clistlen) \ - SSL_ctrl(s,SSL_CTRL_SET_CLIENT_CERT_TYPES,clistlen,(char *)clist) + SSL_ctrl(s,SSL_CTRL_SET_CLIENT_CERT_TYPES,clistlen,(char *)(clist)) # define SSL_get_peer_signature_nid(s, pn) \ SSL_ctrl(s,SSL_CTRL_GET_PEER_SIGNATURE_NID,0,pn) # define SSL_get_server_tmp_key(s, pk) \ diff --git a/include/openssl/tls1.h b/include/openssl/tls1.h index 38ad74c..07e735c 100644 --- a/include/openssl/tls1.h +++ b/include/openssl/tls1.h @@ -270,13 +270,14 @@ int SSL_get_shared_sigalgs(SSL *s, int idx, __owur int SSL_check_chain(SSL *s, X509 *x, EVP_PKEY *pk, STACK_OF(X509) *chain); # define SSL_set_tlsext_host_name(s,name) \ -SSL_ctrl(s,SSL_CTRL_SET_TLSEXT_HOSTNAME,TLSEXT_NAMETYPE_host_name,(char *)name) +SSL_ctrl(s,SSL_CTRL_SET_TLSEXT_HOSTNAME,TLSEXT_NAMETYPE_host_name, \ + (char *)(name)) # define SSL_set_tlsext_debug_callback(ssl, cb) \ -SSL_callback_ctrl(ssl,SSL_CTRL_SET_TLSEXT_DEBUG_CB,(void (*)(void))cb) +SSL_callback_ctrl(ssl,SSL_CTRL_SET_TLSEXT_DEBUG_CB,(void (*)(void))(cb)) # define SSL_set_tlsext_debug_arg(ssl, arg) \ -SSL_ctrl(ssl,SSL_CTRL_SET_TLSEXT_DEBUG_ARG,0, (void *)arg) +SSL_ctrl(ssl,SSL_CTRL_SET_TLSEXT_DEBUG_ARG,0, (void *)(arg)) # define SSL_get_tlsext_status_type(ssl) \ SSL_ctrl(ssl,SSL_CTRL_GET_TLSEXT_STATUS_REQ_TYPE,0, NULL) @@ -285,25 +286,26 @@ SSL_ctrl(ssl,SSL_CTRL_GET_TLSEXT_STATUS_REQ_TYPE,0, NULL) SSL_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_TYPE,type, NULL) # define SSL_get_tlsext_status_exts(ssl, arg) \ -SSL_ctrl(ssl,SSL_CTRL_GET_TLSEXT_STATUS_REQ_EXTS,0, (void *)arg) +SSL_ctrl(ssl,SSL_CTRL_GET_TLSEXT_STATUS_REQ_EXTS,0, (void *)(arg)) # define SSL_set_tlsext_status_exts(ssl, arg) \ -SSL_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_EXTS,0, (void *)arg) +SSL_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_EXTS,0, (void *)(arg)) # define SSL_get_tlsext_status_ids(ssl, arg) \ -SSL_ctrl(ssl,SSL_CTRL_GET_TLSEXT_STATUS_REQ_IDS,0, (void *)arg) +SSL_ctrl(ssl,SSL_CTRL_GET_TLSEXT_STATUS_REQ_IDS,0, (void *)(arg)) # define SSL_set_tlsext_status_ids(ssl, arg) \ -SSL_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_IDS,0, (void *)arg) +SSL_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_IDS,0, (void *)(arg)) # define SSL_get_tlsext_status_ocsp_resp(ssl, arg) \ -SSL_ctrl(ssl,SSL_CTRL_GET_TLSEXT_STATUS_REQ_OCSP_RESP,0, (void *)arg) +SSL_ctrl(ssl,SSL_CTRL_GET_TLSEXT_STATUS_REQ_OCSP_RESP,0, (void *)(arg)) # define SSL_set_tlsext_status_ocsp_resp(ssl, arg, arglen) \ -SSL_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_OCSP_RESP,arglen, (void *)arg) +SSL_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_OCSP_RESP,arglen, (void *)(arg)) # define SSL_CTX_set_tlsext_servername_callback(ctx, cb) \ -SSL_CTX_callback_ctrl(ctx,SSL_CTRL_SET_TLSEXT_SERVERNAME_CB,(void (*)(void))cb) +SSL_CTX_callback_ctrl(ctx,SSL_CTRL_SET_TLSEXT_SERVERNAME_CB, \ + (void (*)(void))(cb)) # define SSL_TLSEXT_ERR_OK 0 # define SSL_TLSEXT_ERR_ALERT_WARNING 1 @@ -311,7 +313,7 @@ SSL_CTX_callback_ctrl(ctx,SSL_CTRL_SET_TLSEXT_SERVERNAME_CB,(void (*)(void))cb) # define SSL_TLSEXT_ERR_NOACK 3 # define SSL_CTX_set_tlsext_servername_arg(ctx, arg) \ -SSL_CTX_ctrl(ctx,SSL_CTRL_SET_TLSEXT_SERVERNAME_ARG,0, (void *)arg) +SSL_CTX_ctrl(ctx,SSL_CTRL_SET_TLSEXT_SERVERNAME_ARG,0, (void *)(arg)) # define SSL_CTX_get_tlsext_ticket_keys(ctx, keys, keylen) \ SSL_CTX_ctrl((ctx),SSL_CTRL_GET_TLSEXT_TICKET_KEYS,(keylen),(keys)) @@ -319,14 +321,15 @@ SSL_CTX_ctrl(ctx,SSL_CTRL_SET_TLSEXT_SERVERNAME_ARG,0, (void *)arg) SSL_CTX_ctrl((ctx),SSL_CTRL_SET_TLSEXT_TICKET_KEYS,(keylen),(keys)) # define SSL_CTX_get_tlsext_status_cb(ssl, cb) \ -SSL_CTX_ctrl(ssl,SSL_CTRL_GET_TLSEXT_STATUS_REQ_CB,0, (void (**)(void))cb) +SSL_CTX_ctrl(ssl,SSL_CTRL_GET_TLSEXT_STATUS_REQ_CB,0, (void (**)(void))(cb)) # define SSL_CTX_set_tlsext_status_cb(ssl, cb) \ -SSL_CTX_callback_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_CB,(void (*)(void))cb) +SSL_CTX_callback_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_CB, \ + (void (*)(void))(cb)) # define SSL_CTX_get_tlsext_status_arg(ssl, arg) \ -SSL_CTX_ctrl(ssl,SSL_CTRL_GET_TLSEXT_STATUS_REQ_CB_ARG,0, (void *)arg +SSL_CTX_ctrl(ssl,SSL_CTRL_GET_TLSEXT_STATUS_REQ_CB_ARG,0, (void *)(arg)) # define SSL_CTX_set_tlsext_status_arg(ssl, arg) \ -SSL_CTX_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_CB_ARG,0, (void *)arg) +SSL_CTX_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_CB_ARG,0, (void *)(arg)) #define SSL_CTX_set_tlsext_status_type(ssl, type) \ SSL_CTX_ctrl(ssl, SSL_CTRL_SET_TLSEXT_STATUS_REQ_TYPE, type, NULL) @@ -335,7 +338,8 @@ SSL_CTX_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_CB_ARG,0, (void *)arg) SSL_CTX_ctrl(ssl, SSL_CTRL_GET_TLSEXT_STATUS_REQ_TYPE, 0, NULL) # define SSL_CTX_set_tlsext_ticket_key_cb(ssl, cb) \ -SSL_CTX_callback_ctrl(ssl,SSL_CTRL_SET_TLSEXT_TICKET_KEY_CB,(void (*)(void))cb) +SSL_CTX_callback_ctrl(ssl,SSL_CTRL_SET_TLSEXT_TICKET_KEY_CB, \ + (void (*)(void))(cb)) # ifndef OPENSSL_NO_HEARTBEATS # define SSL_DTLSEXT_HB_ENABLED 0x01 diff --git a/include/openssl/x509v3.h b/include/openssl/x509v3.h index 1d8ef87..7a99b63 100644 --- a/include/openssl/x509v3.h +++ b/include/openssl/x509v3.h @@ -319,8 +319,9 @@ struct ISSUING_DIST_POINT_st { /* onlysomereasons present */ # define IDP_REASONS 0x40 -# define X509V3_conf_err(val) ERR_add_error_data(6, "section:", val->section, \ -",name:", val->name, ",value:", val->value); +# define X509V3_conf_err(val) ERR_add_error_data(6, \ + "section:", (val)->section, \ + ",name:", (val)->name, ",value:", (val)->value) # define X509V3_set_ctx_test(ctx) \ X509V3_set_ctx(ctx, NULL, NULL, NULL, NULL, CTX_TEST) From matt at openssl.org Thu Apr 27 10:50:07 2017 From: matt at openssl.org (Matt Caswell) Date: Thu, 27 Apr 2017 10:50:07 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493290207.627730.22911.nullmailer@dev.openssl.org> The branch master has been updated via 11ba87f2ff8e2455c6627a83aa458384fe7de70a (commit) from 37659ea43053f5db951962bd1100b490bd4f7e5e (commit) - Log ----------------------------------------------------------------- commit 11ba87f2ff8e2455c6627a83aa458384fe7de70a Author: Matt Caswell Date: Mon Feb 13 13:26:37 2017 +0000 Ensure s_client sends an SNI extension by default Enforcement of an SNI extension in the initial ClientHello is becoming increasingly common (e.g. see GitHub issue #2580). This commit changes s_client so that it adds SNI be default, unless explicitly told not to via the new "-noservername" option. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/2614) ----------------------------------------------------------------------- Summary of changes: CHANGES | 6 ++++++ apps/s_client.c | 30 ++++++++++++++++++++++++++---- doc/man1/s_client.pod | 13 ++++++++++++- test/recipes/70-test_sslmessages.t | 12 ++++++------ test/recipes/70-test_tls13messages.t | 11 ++++++----- test/testlib/checkhandshake.pm | 4 ++-- 6 files changed, 58 insertions(+), 18 deletions(-) diff --git a/CHANGES b/CHANGES index b1476d8..7bd0f92 100644 --- a/CHANGES +++ b/CHANGES @@ -49,6 +49,12 @@ *) Add support for ARIA [Paul Dale] + *) s_client will now send the Server Name Indication (SNI) extension by + default unless the new "-noservername" option is used. The server name is + based on the host provided to the "-connect" option unless overridden by + using "-servername". + [Matt Caswell] + *) Add support for SipHash [Todd Short] diff --git a/apps/s_client.c b/apps/s_client.c index efdc8e3..c544d49 100644 --- a/apps/s_client.c +++ b/apps/s_client.c @@ -544,7 +544,7 @@ typedef enum OPTION_choice { OPT_VERIFYCAPATH, OPT_KEY, OPT_RECONNECT, OPT_BUILD_CHAIN, OPT_CAFILE, OPT_NOCAFILE, OPT_CHAINCAFILE, OPT_VERIFYCAFILE, OPT_NEXTPROTONEG, OPT_ALPN, - OPT_SERVERINFO, OPT_STARTTLS, OPT_SERVERNAME, + OPT_SERVERINFO, OPT_STARTTLS, OPT_SERVERNAME, OPT_NOSERVERNAME, OPT_USE_SRTP, OPT_KEYMATEXPORT, OPT_KEYMATEXPORTLEN, OPT_SMTPHOST, OPT_ASYNC, OPT_SPLIT_SEND_FRAG, OPT_MAX_PIPELINES, OPT_READ_BUF, OPT_KEYLOG_FILE, OPT_EARLY_DATA, OPT_REQCAFILE, @@ -652,6 +652,8 @@ const OPTIONS s_client_options[] = { {"nocommands", OPT_NOCMDS, '-', "Do not use interactive command letters"}, {"servername", OPT_SERVERNAME, 's', "Set TLS extension servername in ClientHello"}, + {"noservername", OPT_NOSERVERNAME, '-', + "Do not send the server name (SNI) extension in the ClientHello"}, {"tlsextdebug", OPT_TLSEXTDEBUG, '-', "Hex dump of all TLS extensions received"}, #ifndef OPENSSL_NO_OCSP @@ -872,6 +874,7 @@ int s_client_main(int argc, char **argv) struct timeval tv; #endif char *servername = NULL; + int noservername = 0; const char *alpn_in = NULL; tlsextctx tlsextcbp = { NULL, 0 }; const char *ssl_config = NULL; @@ -1359,6 +1362,9 @@ int s_client_main(int argc, char **argv) case OPT_SERVERNAME: servername = opt_arg(); break; + case OPT_NOSERVERNAME: + noservername = 1; + break; case OPT_USE_SRTP: srtp_profiles = opt_arg(); break; @@ -1399,6 +1405,20 @@ int s_client_main(int argc, char **argv) BIO_printf(bio_err, "%s: Can't use both -4 and -6\n", prog); goto opthelp; } + if (noservername) { + if (servername != NULL) { + BIO_printf(bio_err, + "%s: Can't use -servername and -noservername together\n", + prog); + goto opthelp; + } + if (dane_tlsa_domain != NULL) { + BIO_printf(bio_err, + "%s: Can't use -dane_tlsa_domain and -noservername together\n", + prog); + goto opthelp; + } + } argc = opt_num_rest(); if (argc != 0) goto opthelp; @@ -1720,7 +1740,7 @@ int s_client_main(int argc, char **argv) if (!set_cert_key_stuff(ctx, cert, key, chain, build_chain)) goto end; - if (servername != NULL) { + if (!noservername) { tlsextcbp.biodebug = bio_err; SSL_CTX_set_tlsext_servername_callback(ctx, ssl_servername_cb); SSL_CTX_set_tlsext_servername_arg(ctx, &tlsextcbp); @@ -1793,7 +1813,9 @@ int s_client_main(int argc, char **argv) if (fallback_scsv) SSL_set_mode(con, SSL_MODE_SEND_FALLBACK_SCSV); - if (servername != NULL) { + if (!noservername && (servername != NULL || dane_tlsa_domain == NULL)) { + if (servername == NULL) + servername = (host == NULL) ? "localhost" : host; if (!SSL_set_tlsext_host_name(con, servername)) { BIO_printf(bio_err, "Unable to set TLS servername extension.\n"); ERR_print_errors(bio_err); @@ -2459,7 +2481,7 @@ int s_client_main(int argc, char **argv) if (in_init) { in_init = 0; - if (servername != NULL && !SSL_session_reused(con)) { + if (!noservername && !SSL_session_reused(con)) { BIO_printf(bio_c_out, "Server did %sacknowledge servername extension.\n", tlsextcbp.ack ? "" : "not "); diff --git a/doc/man1/s_client.pod b/doc/man1/s_client.pod index cc2ad4f..1653856 100644 --- a/doc/man1/s_client.pod +++ b/doc/man1/s_client.pod @@ -14,6 +14,7 @@ B B [B<-4>] [B<-6>] [B<-servername name>] +[B<-noservername>] [B<-verify depth>] [B<-verify_return_error>] [B<-cert filename>] @@ -156,7 +157,17 @@ Use IPv6 only. =item B<-servername name> -Set the TLS SNI (Server Name Indication) extension in the ClientHello message. +Set the TLS SNI (Server Name Indication) extension in the ClientHello message to +the given value. + +=item B<-noservername> + +Suppresses sending of the SNI (Server Name Indication) extension in the +ClientHello message. Cannot be used in conjunction with the B<-servername> or +<-dane_tlsa_domain> options. If this option is not given then the hostname +provided to the B<-connect> option is used in the SNI extension, or "localhost" +if B<-connect> has not been supplied. Note that an SNI name should normally be a +DNS name and not an IP address. =item B<-cert certname> diff --git a/test/recipes/70-test_sslmessages.t b/test/recipes/70-test_sslmessages.t index a6278dc..a763486 100644 --- a/test/recipes/70-test_sslmessages.t +++ b/test/recipes/70-test_sslmessages.t @@ -222,22 +222,23 @@ checkhandshake($proxy, checkhandshake::RENEG_HANDSHAKE, checkhandshake::DEFAULT_EXTENSIONS, "Rengotiation handshake test"); -#Test 8: Server name handshake (client request only) +#Test 8: Server name handshake (no client request) $proxy->clear(); -$proxy->clientflags("-no_tls1_3 -servername testhost"); +$proxy->clientflags("-no_tls1_3 -noservername"); $proxy->start(); checkhandshake($proxy, checkhandshake::DEFAULT_HANDSHAKE, checkhandshake::DEFAULT_EXTENSIONS - | checkhandshake::SERVER_NAME_CLI_EXTENSION, + & ~checkhandshake::SERVER_NAME_CLI_EXTENSION, "Server name handshake test (client)"); #Test 9: Server name handshake (server support only) $proxy->clear(); -$proxy->clientflags("-no_tls1_3"); +$proxy->clientflags("-no_tls1_3 -noservername"); $proxy->serverflags("-servername testhost"); $proxy->start(); checkhandshake($proxy, checkhandshake::DEFAULT_HANDSHAKE, - checkhandshake::DEFAULT_EXTENSIONS, + checkhandshake::DEFAULT_EXTENSIONS + & ~checkhandshake::SERVER_NAME_CLI_EXTENSION, "Server name handshake test (server)"); #Test 10: Server name handshake (client and server) @@ -247,7 +248,6 @@ $proxy->serverflags("-servername testhost"); $proxy->start(); checkhandshake($proxy, checkhandshake::DEFAULT_HANDSHAKE, checkhandshake::DEFAULT_EXTENSIONS - | checkhandshake::SERVER_NAME_CLI_EXTENSION | checkhandshake::SERVER_NAME_SRV_EXTENSION, "Server name handshake test"); diff --git a/test/recipes/70-test_tls13messages.t b/test/recipes/70-test_tls13messages.t index 0d25bef..c4e20b7 100644 --- a/test/recipes/70-test_tls13messages.t +++ b/test/recipes/70-test_tls13messages.t @@ -200,21 +200,23 @@ checkhandshake($proxy, checkhandshake::CLIENT_AUTH_HANDSHAKE, checkhandshake::DEFAULT_EXTENSIONS, "Client auth handshake test"); -#Test 7: Server name handshake (client request only) +#Test 7: Server name handshake (no client request) $proxy->clear(); -$proxy->clientflags("-servername testhost"); +$proxy->clientflags("-noservername"); $proxy->start(); checkhandshake($proxy, checkhandshake::DEFAULT_HANDSHAKE, checkhandshake::DEFAULT_EXTENSIONS - | checkhandshake::SERVER_NAME_CLI_EXTENSION, + & ~checkhandshake::SERVER_NAME_CLI_EXTENSION, "Server name handshake test (client)"); #Test 8: Server name handshake (server support only) $proxy->clear(); +$proxy->clientflags("-noservername"); $proxy->serverflags("-servername testhost"); $proxy->start(); checkhandshake($proxy, checkhandshake::DEFAULT_HANDSHAKE, - checkhandshake::DEFAULT_EXTENSIONS, + checkhandshake::DEFAULT_EXTENSIONS + & ~checkhandshake::SERVER_NAME_CLI_EXTENSION, "Server name handshake test (server)"); #Test 9: Server name handshake (client and server) @@ -224,7 +226,6 @@ $proxy->serverflags("-servername testhost"); $proxy->start(); checkhandshake($proxy, checkhandshake::DEFAULT_HANDSHAKE, checkhandshake::DEFAULT_EXTENSIONS - | checkhandshake::SERVER_NAME_CLI_EXTENSION | checkhandshake::SERVER_NAME_SRV_EXTENSION, "Server name handshake test"); diff --git a/test/testlib/checkhandshake.pm b/test/testlib/checkhandshake.pm index 43efe81..d5d0e29 100644 --- a/test/testlib/checkhandshake.pm +++ b/test/testlib/checkhandshake.pm @@ -31,8 +31,8 @@ use constant { }; use constant { - #DEFAULT ALSO INCLUDES SESSION_TICKET_SRV_EXTENSION - DEFAULT_EXTENSIONS => 0x00000003, + #DEFAULT also includes SESSION_TICKET_SRV_EXTENSION and SERVER_NAME_CLI + DEFAULT_EXTENSIONS => 0x00000007, SESSION_TICKET_SRV_EXTENSION => 0x00000002, SERVER_NAME_CLI_EXTENSION => 0x00000004, SERVER_NAME_SRV_EXTENSION => 0x00000008, From appro at openssl.org Thu Apr 27 11:01:51 2017 From: appro at openssl.org (Andy Polyakov) Date: Thu, 27 Apr 2017 11:01:51 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493290911.039833.31448.nullmailer@dev.openssl.org> The branch master has been updated via b12ae4a912a19cbab8d993e61114e65fce0d1834 (commit) from 11ba87f2ff8e2455c6627a83aa458384fe7de70a (commit) - Log ----------------------------------------------------------------- commit b12ae4a912a19cbab8d993e61114e65fce0d1834 Author: Andy Polyakov Date: Wed Apr 26 15:52:57 2017 +0200 fuzz/{client,server}.c: omit _time64 "overload method". Approach was opportunistic in Windows context from its inception and on top of that it was proven to be error-prone at link stage. Correct answer is to introduce library-specific time function that we can control in platform-neutral manner. Meanwhile we just let be attempts to override time on Windows. Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3320) ----------------------------------------------------------------------- Summary of changes: fuzz/client.c | 14 ++++++-------- fuzz/server.c | 14 ++++++-------- 2 files changed, 12 insertions(+), 16 deletions(-) diff --git a/fuzz/client.c b/fuzz/client.c index 92ec6c0..104938f 100644 --- a/fuzz/client.c +++ b/fuzz/client.c @@ -31,15 +31,13 @@ static int idx; #define TIME_IMPL(t) { if (t != NULL) *t = FUZZTIME; return FUZZTIME; } /* - * This might not in all cases and still get the current time - * instead of the fixed time. This will just result in things - * not being fully reproducible and have a slightly different - * coverage. + * This might not work in all cases (and definitely not on Windows + * because of the way linkers are) and callees can still get the + * current time instead of the fixed time. This will just result + * in things not being fully reproducible and have a slightly + * different coverage. */ -#if defined(_WIN32) && defined(_TIME64_T_DEFINED) -__time64_t _time64(__time64_t *t) TIME_IMPL(t) -#endif -#if !defined(_WIN32) || !defined(_MSC_VER) +#if !defined(_WIN32) time_t time(time_t *t) TIME_IMPL(t) #endif diff --git a/fuzz/server.c b/fuzz/server.c index 93cdc68..397867f 100644 --- a/fuzz/server.c +++ b/fuzz/server.c @@ -478,15 +478,13 @@ static int idx; #define TIME_IMPL(t) { if (t != NULL) *t = FUZZTIME; return FUZZTIME; } /* - * This might not in all cases and still get the current time - * instead of the fixed time. This will just result in things - * not being fully reproducible and have a slightly different - * coverage. + * This might not work in all cases (and definitely not on Windows + * because of the way linkers are) and callees can still get the + * current time instead of the fixed time. This will just result + * in things not being fully reproducible and have a slightly + * different coverage. */ -#if defined(_WIN32) && defined(_TIME64_T_DEFINED) -__time64_t _time64(__time64_t *t) TIME_IMPL(t) -#endif -#if !defined(_WIN32) || !defined(_MSC_VER) +#if !defined(_WIN32) time_t time(time_t *t) TIME_IMPL(t) #endif From builds at travis-ci.org Thu Apr 27 10:58:04 2017 From: builds at travis-ci.org (Travis CI) Date: Thu, 27 Apr 2017 10:58:04 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10644 (master - 37659ea) In-Reply-To: Message-ID: <5901cf0186fdb_43feba64cbdb03050b6@1372405c-8f6e-456d-9edc-adbaf75d3b43.mail> Build Update for openssl/openssl ------------------------------------- Build: #10644 Status: Still Failing Duration: 21 minutes and 39 seconds Commit: 37659ea (master) Author: Bernd Edlinger Message: Add parentheses on public macros where appropriate. Fixes #3063. Reviewed-by: Rich Salz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3100) View the changeset: https://github.com/openssl/openssl/compare/237bc6c997e4...37659ea43053 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/226345327 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Thu Apr 27 11:25:27 2017 From: builds at travis-ci.org (Travis CI) Date: Thu, 27 Apr 2017 11:25:27 +0000 Subject: [openssl-commits] Fixed: openssl/openssl#10646 (master - b12ae4a) In-Reply-To: Message-ID: <5901d5277b7fd_43fe3d46dc4a844158f@75bb5340-df72-4460-8804-cebb022ea2da.mail> Build Update for openssl/openssl ------------------------------------- Build: #10646 Status: Fixed Duration: 22 minutes and 39 seconds Commit: b12ae4a (master) Author: Andy Polyakov Message: fuzz/{client,server}.c: omit _time64 "overload method". Approach was opportunistic in Windows context from its inception and on top of that it was proven to be error-prone at link stage. Correct answer is to introduce library-specific time function that we can control in platform-neutral manner. Meanwhile we just let be attempts to override time on Windows. Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3320) View the changeset: https://github.com/openssl/openssl/compare/11ba87f2ff8e...b12ae4a912a1 View the full build log and details: https://travis-ci.org/openssl/openssl/builds/226352149 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From builds at travis-ci.org Thu Apr 27 11:14:18 2017 From: builds at travis-ci.org (Travis CI) Date: Thu, 27 Apr 2017 11:14:18 +0000 Subject: [openssl-commits] Still Failing: openssl/openssl#10645 (master - 11ba87f) In-Reply-To: Message-ID: <5901d28ad3d7_43fe3d454ec0842714a@75bb5340-df72-4460-8804-cebb022ea2da.mail> Build Update for openssl/openssl ------------------------------------- Build: #10645 Status: Still Failing Duration: 23 minutes and 12 seconds Commit: 11ba87f (master) Author: Matt Caswell Message: Ensure s_client sends an SNI extension by default Enforcement of an SNI extension in the initial ClientHello is becoming increasingly common (e.g. see GitHub issue #2580). This commit changes s_client so that it adds SNI be default, unless explicitly told not to via the new "-noservername" option. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/2614) View the changeset: https://github.com/openssl/openssl/compare/37659ea43053...11ba87f2ff8e View the full build log and details: https://travis-ci.org/openssl/openssl/builds/226348700 -- You can configure recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications -------------- next part -------------- An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 27 12:57:30 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 27 Apr 2017 12:57:30 +0000 Subject: [openssl-commits] Build failed: openssl master.9957 Message-ID: <20170427125729.125844.82163.490C63CB@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 27 13:15:36 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 27 Apr 2017 13:15:36 +0000 Subject: [openssl-commits] Build failed: openssl master.9958 Message-ID: <20170427131534.108438.57276.661CFD5E@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 27 13:29:03 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 27 Apr 2017 13:29:03 +0000 Subject: [openssl-commits] Build completed: openssl master.9959 Message-ID: <20170427132901.67536.41783.94B8A212@appveyor.com> An HTML attachment was scrubbed... URL: From rsalz at openssl.org Thu Apr 27 15:48:22 2017 From: rsalz at openssl.org (Rich Salz) Date: Thu, 27 Apr 2017 15:48:22 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493308102.888044.32405.nullmailer@dev.openssl.org> The branch master has been updated via f2150cd74f45d49545d0787725f99723642b7c2c (commit) from b12ae4a912a19cbab8d993e61114e65fce0d1834 (commit) - Log ----------------------------------------------------------------- commit f2150cd74f45d49545d0787725f99723642b7c2c Author: Rich Salz Date: Thu Apr 27 11:38:17 2017 -0400 Remove (broken) diagnostic print Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3336) ----------------------------------------------------------------------- Summary of changes: apps/s_client.c | 6 ------ 1 file changed, 6 deletions(-) diff --git a/apps/s_client.c b/apps/s_client.c index c544d49..443822b 100644 --- a/apps/s_client.c +++ b/apps/s_client.c @@ -2481,12 +2481,6 @@ int s_client_main(int argc, char **argv) if (in_init) { in_init = 0; - if (!noservername && !SSL_session_reused(con)) { - BIO_printf(bio_c_out, - "Server did %sacknowledge servername extension.\n", - tlsextcbp.ack ? "" : "not "); - } - if (c_brief) { BIO_puts(bio_err, "CONNECTION ESTABLISHED\n"); print_ssl_summary(con); From rsalz at openssl.org Thu Apr 27 15:49:40 2017 From: rsalz at openssl.org (Rich Salz) Date: Thu, 27 Apr 2017 15:49:40 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1493308180.575727.1587.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 4fc3523f9e00c9ffc1a7c674487ac2efd5e6af43 (commit) from 7ae8106af87f1d9f94bbc9ac65b819f0473cf57e (commit) - Log ----------------------------------------------------------------- commit 4fc3523f9e00c9ffc1a7c674487ac2efd5e6af43 Author: Rich Salz Date: Thu Apr 27 11:38:17 2017 -0400 Remove (broken) diagnostic print Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3336) (cherry picked from commit f2150cd74f45d49545d0787725f99723642b7c2c) ----------------------------------------------------------------------- Summary of changes: apps/s_client.c | 6 ------ 1 file changed, 6 deletions(-) diff --git a/apps/s_client.c b/apps/s_client.c index 2992595..ce1a408 100644 --- a/apps/s_client.c +++ b/apps/s_client.c @@ -2124,12 +2124,6 @@ int s_client_main(int argc, char **argv) if (in_init) { in_init = 0; - if (servername != NULL && !SSL_session_reused(con)) { - BIO_printf(bio_c_out, - "Server did %sacknowledge servername extension.\n", - tlsextcbp.ack ? "" : "not "); - } - if (sess_out) { BIO *stmp = BIO_new_file(sess_out, "w"); if (stmp) { From no-reply at appveyor.com Thu Apr 27 19:53:40 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 27 Apr 2017 19:53:40 +0000 Subject: [openssl-commits] Build failed: openssl master.9975 Message-ID: <20170427195339.67103.57304.8263E335@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 27 19:54:23 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 27 Apr 2017 19:54:23 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.1970 Message-ID: <20170427195422.27839.96048.3C6498DF@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 27 20:07:15 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 27 Apr 2017 20:07:15 +0000 Subject: [openssl-commits] Build failed: openssl master.9976 Message-ID: <20170427200714.35625.74606.3372A4DB@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 27 20:08:07 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 27 Apr 2017 20:08:07 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.1971 Message-ID: <20170427200759.11858.37887.54926B67@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 27 20:34:46 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 27 Apr 2017 20:34:46 +0000 Subject: [openssl-commits] Build completed: openssl master.9977 Message-ID: <20170427203436.125723.20925.F53914FB@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 27 21:01:15 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 27 Apr 2017 21:01:15 +0000 Subject: [openssl-commits] Build completed: openssl 1.0.1972 Message-ID: <20170427210114.4383.33193.FB070AAA@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 27 21:15:28 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 27 Apr 2017 21:15:28 +0000 Subject: [openssl-commits] Build failed: openssl master.9979 Message-ID: <20170427211526.68151.44236.93ABC461@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 27 21:20:57 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 27 Apr 2017 21:20:57 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.1973 Message-ID: <20170427212057.5085.90133.64C57FD1@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 27 21:28:24 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 27 Apr 2017 21:28:24 +0000 Subject: [openssl-commits] Build completed: openssl master.9980 Message-ID: <20170427212823.125876.68935.84FA8B04@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Thu Apr 27 21:58:03 2017 From: no-reply at appveyor.com (AppVeyor) Date: Thu, 27 Apr 2017 21:58:03 +0000 Subject: [openssl-commits] Build completed: openssl 1.0.1974 Message-ID: <20170427215801.120220.33125.2F7965BB@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Fri Apr 28 04:48:57 2017 From: no-reply at appveyor.com (AppVeyor) Date: Fri, 28 Apr 2017 04:48:57 +0000 Subject: [openssl-commits] Build failed: openssl master.9987 Message-ID: <20170428044857.57637.82119.8690AD3D@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Fri Apr 28 12:52:10 2017 From: no-reply at appveyor.com (AppVeyor) Date: Fri, 28 Apr 2017 12:52:10 +0000 Subject: [openssl-commits] Build failed: openssl master.9997 Message-ID: <20170428125209.4250.94850.65303D0C@appveyor.com> An HTML attachment was scrubbed... URL: From levitte at openssl.org Fri Apr 28 12:58:56 2017 From: levitte at openssl.org (Richard Levitte) Date: Fri, 28 Apr 2017 12:58:56 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493384336.682810.25600.nullmailer@dev.openssl.org> The branch master has been updated via 46d5e2b42e00ec392bf3326743519bc25136db09 (commit) from f2150cd74f45d49545d0787725f99723642b7c2c (commit) - Log ----------------------------------------------------------------- commit 46d5e2b42e00ec392bf3326743519bc25136db09 Author: Richard Levitte Date: Fri Apr 28 09:20:05 2017 +0200 TLSProxy: When in debug mode, show the exact subprocess commands When you want to debug a test that goes wrong, it's useful to know exactly what subprocess commands are run. Reviewed-by: Andy Polyakov Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3342) ----------------------------------------------------------------------- Summary of changes: util/TLSProxy/Proxy.pm | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/util/TLSProxy/Proxy.pm b/util/TLSProxy/Proxy.pm index aaef753..a826cb5 100644 --- a/util/TLSProxy/Proxy.pm +++ b/util/TLSProxy/Proxy.pm @@ -171,6 +171,9 @@ sub start if ($self->serverflags ne "") { $execcmd .= " ".$self->serverflags; } + if ($self->debug) { + print STDERR "Server command: $execcmd\n"; + } exec($execcmd); } $self->serverpid($pid); @@ -232,6 +235,9 @@ sub clientstart if (defined $self->sessionfile) { $execcmd .= " -ign_eof"; } + if ($self->debug) { + print STDERR "Client command: $execcmd\n"; + } exec($execcmd); } } From levitte at openssl.org Fri Apr 28 13:00:51 2017 From: levitte at openssl.org (Richard Levitte) Date: Fri, 28 Apr 2017 13:00:51 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1493384451.253832.27848.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via af50d454f9914a7c5864832087ea73caff1b4aae (commit) from 4fc3523f9e00c9ffc1a7c674487ac2efd5e6af43 (commit) - Log ----------------------------------------------------------------- commit af50d454f9914a7c5864832087ea73caff1b4aae Author: Richard Levitte Date: Fri Apr 28 09:20:05 2017 +0200 TLSProxy: When in debug mode, show the exact subprocess commands When you want to debug a test that goes wrong, it's useful to know exactly what subprocess commands are run. Reviewed-by: Andy Polyakov Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3342) (cherry picked from commit 46d5e2b42e00ec392bf3326743519bc25136db09) ----------------------------------------------------------------------- Summary of changes: util/TLSProxy/Proxy.pm | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/util/TLSProxy/Proxy.pm b/util/TLSProxy/Proxy.pm index d025075..bdb2cd8 100644 --- a/util/TLSProxy/Proxy.pm +++ b/util/TLSProxy/Proxy.pm @@ -159,6 +159,9 @@ sub start if ($self->serverflags ne "") { $execcmd .= " ".$self->serverflags; } + if ($self->debug) { + print STDERR "Server command: $execcmd\n"; + } exec($execcmd); } $self->serverpid($pid); @@ -217,6 +220,9 @@ sub clientstart if ($self->clientflags ne "") { $execcmd .= " ".$self->clientflags; } + if ($self->debug) { + print STDERR "Client command: $execcmd\n"; + } exec($execcmd); } } From no-reply at appveyor.com Fri Apr 28 13:01:55 2017 From: no-reply at appveyor.com (AppVeyor) Date: Fri, 28 Apr 2017 13:01:55 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.33 Message-ID: <20170428130154.11164.36391.9A07AB5E@appveyor.com> An HTML attachment was scrubbed... URL: From levitte at openssl.org Fri Apr 28 13:04:35 2017 From: levitte at openssl.org (Richard Levitte) Date: Fri, 28 Apr 2017 13:04:35 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493384675.626956.31666.nullmailer@dev.openssl.org> The branch master has been updated via 8f3f9623a46fb4e294a7e4c3db3168002e3f781b (commit) from 46d5e2b42e00ec392bf3326743519bc25136db09 (commit) - Log ----------------------------------------------------------------- commit 8f3f9623a46fb4e294a7e4c3db3168002e3f781b Author: Bernd Edlinger Date: Thu Apr 27 01:00:08 2017 +0200 Fix a pedantic gcc-7 warning. Reviewed-by: Andy Polyakov Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3328) ----------------------------------------------------------------------- Summary of changes: test/clienthellotest.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/clienthellotest.c b/test/clienthellotest.c index 2de8512..dc58694 100644 --- a/test/clienthellotest.c +++ b/test/clienthellotest.c @@ -57,7 +57,7 @@ static int test_client_hello(int currtest) BIO *wbio; long len; unsigned char *data; - PACKET pkt, pkt2, pkt3; + PACKET pkt = {0}, pkt2 = {0}, pkt3 = {0}; char *dummytick = "Hello World!"; unsigned int type = 0; int testresult = 0; From no-reply at appveyor.com Fri Apr 28 13:06:11 2017 From: no-reply at appveyor.com (AppVeyor) Date: Fri, 28 Apr 2017 13:06:11 +0000 Subject: [openssl-commits] Build completed: openssl master.9998 Message-ID: <20170428130610.108570.58596.11C129E5@appveyor.com> An HTML attachment was scrubbed... URL: From levitte at openssl.org Fri Apr 28 13:43:26 2017 From: levitte at openssl.org (Richard Levitte) Date: Fri, 28 Apr 2017 13:43:26 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493387006.904755.31414.nullmailer@dev.openssl.org> The branch master has been updated via 9ff2cebf29d30397b3b67603000f67ee429c700b (commit) from 8f3f9623a46fb4e294a7e4c3db3168002e3f781b (commit) - Log ----------------------------------------------------------------- commit 9ff2cebf29d30397b3b67603000f67ee429c700b Author: Todd Short Date: Wed Apr 26 14:42:14 2017 -0400 Fix s_client when no-dtls Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3344) ----------------------------------------------------------------------- Summary of changes: apps/s_client.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/apps/s_client.c b/apps/s_client.c index 443822b..d018268 100644 --- a/apps/s_client.c +++ b/apps/s_client.c @@ -906,7 +906,9 @@ int s_client_main(int argc, char **argv) #endif BIO *bio_c_msg = NULL; const char *keylog_file = NULL, *early_data_file = NULL; +#ifndef OPENSSL_NO_DTLS int isdtls = 0; +#endif FD_ZERO(&readfds); FD_ZERO(&writefds); From no-reply at appveyor.com Fri Apr 28 13:44:41 2017 From: no-reply at appveyor.com (AppVeyor) Date: Fri, 28 Apr 2017 13:44:41 +0000 Subject: [openssl-commits] Build completed: openssl 1.0.34 Message-ID: <20170428134441.120257.41201.0B16AF5D@appveyor.com> An HTML attachment was scrubbed... URL: From levitte at openssl.org Fri Apr 28 13:50:46 2017 From: levitte at openssl.org (Richard Levitte) Date: Fri, 28 Apr 2017 13:50:46 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493387446.200908.6755.nullmailer@dev.openssl.org> The branch master has been updated via 36b2cfb191f4a3f3a49b7c4d865308b7021daa42 (commit) via 67887855af3bfbf3f44b246aa83db6faeddae886 (commit) via 28e5ea88a8fe93aa6dd023a5abd54f01c1ad6450 (commit) from 9ff2cebf29d30397b3b67603000f67ee429c700b (commit) - Log ----------------------------------------------------------------- commit 36b2cfb191f4a3f3a49b7c4d865308b7021daa42 Author: FdaSilvaYY Date: Fri Apr 7 19:15:38 2017 +0200 Add checks on return code when applying some settings. Remove hardcoded bound checkings. Reviewed-by: Andy Polyakov Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3141) commit 67887855af3bfbf3f44b246aa83db6faeddae886 Author: FdaSilvaYY Date: Fri Apr 7 09:02:06 2017 +0200 Output prog name within error message Reviewed-by: Andy Polyakov Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3141) commit 28e5ea88a8fe93aa6dd023a5abd54f01c1ad6450 Author: FdaSilvaYY Date: Thu Apr 6 23:47:18 2017 +0200 Add a 'max_send_frag' option to configure maximum size of send fragments Reviewed-by: Andy Polyakov Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3141) ----------------------------------------------------------------------- Summary of changes: apps/s_client.c | 61 ++++++++++++++++++++++++++------------------------- apps/s_server.c | 53 +++++++++++++++++++++++--------------------- doc/man1/s_client.pod | 11 ++++++++-- doc/man1/s_server.pod | 11 ++++++++-- 4 files changed, 77 insertions(+), 59 deletions(-) diff --git a/apps/s_client.c b/apps/s_client.c index d018268..6cb2e73 100644 --- a/apps/s_client.c +++ b/apps/s_client.c @@ -540,13 +540,12 @@ typedef enum OPTION_choice { OPT_SSL3, OPT_SSL_CONFIG, OPT_TLS1_3, OPT_TLS1_2, OPT_TLS1_1, OPT_TLS1, OPT_DTLS, OPT_DTLS1, OPT_DTLS1_2, OPT_SCTP, OPT_TIMEOUT, OPT_MTU, OPT_KEYFORM, OPT_PASS, - OPT_CERT_CHAIN, OPT_CAPATH, OPT_NOCAPATH, OPT_CHAINCAPATH, - OPT_VERIFYCAPATH, + OPT_CERT_CHAIN, OPT_CAPATH, OPT_NOCAPATH, OPT_CHAINCAPATH, OPT_VERIFYCAPATH, OPT_KEY, OPT_RECONNECT, OPT_BUILD_CHAIN, OPT_CAFILE, OPT_NOCAFILE, OPT_CHAINCAFILE, OPT_VERIFYCAFILE, OPT_NEXTPROTONEG, OPT_ALPN, - OPT_SERVERINFO, OPT_STARTTLS, OPT_SERVERNAME, OPT_NOSERVERNAME, + OPT_SERVERINFO, OPT_STARTTLS, OPT_SERVERNAME, OPT_NOSERVERNAME, OPT_ASYNC, OPT_USE_SRTP, OPT_KEYMATEXPORT, OPT_KEYMATEXPORTLEN, OPT_SMTPHOST, - OPT_ASYNC, OPT_SPLIT_SEND_FRAG, OPT_MAX_PIPELINES, OPT_READ_BUF, + OPT_MAX_SEND_FRAG, OPT_SPLIT_SEND_FRAG, OPT_MAX_PIPELINES, OPT_READ_BUF, OPT_KEYLOG_FILE, OPT_EARLY_DATA, OPT_REQCAFILE, OPT_V_ENUM, OPT_X_ENUM, @@ -665,11 +664,12 @@ const OPTIONS s_client_options[] = { "Enable ALPN extension, considering named protocols supported (comma-separated list)"}, {"async", OPT_ASYNC, '-', "Support asynchronous operation"}, {"ssl_config", OPT_SSL_CONFIG, 's', "Use specified configuration file"}, - {"split_send_frag", OPT_SPLIT_SEND_FRAG, 'n', + {"max_send_frag", OPT_MAX_SEND_FRAG, 'p', "Maximum Size of send frames "}, + {"split_send_frag", OPT_SPLIT_SEND_FRAG, 'p', "Size used to split data for encrypt pipelines"}, - {"max_pipelines", OPT_MAX_PIPELINES, 'n', + {"max_pipelines", OPT_MAX_PIPELINES, 'p', "Maximum number of encrypt/decrypt pipelines to be used"}, - {"read_buf", OPT_READ_BUF, 'n', + {"read_buf", OPT_READ_BUF, 'p', "Default read buffer size to be used for connections"}, OPT_S_OPTIONS, OPT_V_OPTIONS, @@ -895,8 +895,8 @@ int s_client_main(int argc, char **argv) #endif int min_version = 0, max_version = 0, prot_opt = 0, no_prot_opt = 0; int async = 0; - unsigned int split_send_fragment = 0; - unsigned int max_pipelines = 0; + unsigned int max_send_fragment = 0; + unsigned int split_send_fragment = 0, max_pipelines = 0; enum { use_inet, use_unix, use_unknown } connect_type = use_unknown; int count4or6 = 0; int c_nbio = 0, c_msg = 0, c_ign_eof = 0, c_brief = 0; @@ -1379,15 +1379,11 @@ int s_client_main(int argc, char **argv) case OPT_ASYNC: async = 1; break; + case OPT_MAX_SEND_FRAG: + max_send_fragment = atoi(opt_arg()); + break; case OPT_SPLIT_SEND_FRAG: split_send_fragment = atoi(opt_arg()); - if (split_send_fragment == 0) { - /* - * Not allowed - set to a deliberately bad value so we get an - * error message below - */ - split_send_fragment = SSL3_RT_MAX_PLAIN_LENGTH + 1; - } break; case OPT_MAX_PIPELINES: max_pipelines = atoi(opt_arg()); @@ -1477,16 +1473,6 @@ int s_client_main(int argc, char **argv) } #endif - if (split_send_fragment > SSL3_RT_MAX_PLAIN_LENGTH) { - BIO_printf(bio_err, "Bad split send fragment size\n"); - goto end; - } - - if (max_pipelines > SSL_MAX_PIPELINES) { - BIO_printf(bio_err, "Bad max pipelines value\n"); - goto end; - } - #if !defined(OPENSSL_NO_NEXTPROTONEG) next_proto.status = -1; if (next_proto_neg_in) { @@ -1608,11 +1594,26 @@ int s_client_main(int argc, char **argv) if (async) { SSL_CTX_set_mode(ctx, SSL_MODE_ASYNC); } - if (split_send_fragment > 0) { - SSL_CTX_set_split_send_fragment(ctx, split_send_fragment); + + if (max_send_fragment > 0 + && !SSL_CTX_set_max_send_fragment(ctx, max_send_fragment)) { + BIO_printf(bio_err, "%s: Max send fragment size %u is out of permitted range\n", + prog, max_send_fragment); + goto end; + } + + if (split_send_fragment > 0 + && !SSL_CTX_set_split_send_fragment(ctx, split_send_fragment)) { + BIO_printf(bio_err, "%s: Split send fragment size %u is out of permitted range\n", + prog, split_send_fragment); + goto end; } - if (max_pipelines > 0) { - SSL_CTX_set_max_pipelines(ctx, max_pipelines); + + if (max_pipelines > 0 + && !SSL_CTX_set_max_pipelines(ctx, max_pipelines)) { + BIO_printf(bio_err, "%s: Max pipelines %u is out of permitted range\n", + prog, max_pipelines); + goto end; } if (read_buf_len > 0) { diff --git a/apps/s_server.c b/apps/s_server.c index 4631663..e597ecb 100644 --- a/apps/s_server.c +++ b/apps/s_server.c @@ -717,7 +717,8 @@ typedef enum OPTION_choice { OPT_CRLF, OPT_QUIET, OPT_BRIEF, OPT_NO_DHE, OPT_NO_RESUME_EPHEMERAL, OPT_PSK_HINT, OPT_PSK, OPT_SRPVFILE, OPT_SRPUSERSEED, OPT_REV, OPT_WWW, OPT_UPPER_WWW, OPT_HTTP, OPT_ASYNC, - OPT_SSL_CONFIG, OPT_SPLIT_SEND_FRAG, OPT_MAX_PIPELINES, OPT_READ_BUF, + OPT_SSL_CONFIG, + OPT_MAX_SEND_FRAG, OPT_SPLIT_SEND_FRAG, OPT_MAX_PIPELINES, OPT_READ_BUF, OPT_SSL3, OPT_TLS1_3, OPT_TLS1_2, OPT_TLS1_1, OPT_TLS1, OPT_DTLS, OPT_DTLS1, OPT_DTLS1_2, OPT_SCTP, OPT_TIMEOUT, OPT_MTU, OPT_LISTEN, OPT_ID_PREFIX, OPT_RAND, OPT_SERVERNAME, OPT_SERVERNAME_FATAL, @@ -856,11 +857,12 @@ const OPTIONS s_server_options[] = { {"async", OPT_ASYNC, '-', "Operate in asynchronous mode"}, {"ssl_config", OPT_SSL_CONFIG, 's', "Configure SSL_CTX using the configuration 'val'"}, - {"split_send_frag", OPT_SPLIT_SEND_FRAG, 'n', + {"max_send_frag", OPT_MAX_SEND_FRAG, 'p', "Maximum Size of send frames "}, + {"split_send_frag", OPT_SPLIT_SEND_FRAG, 'p', "Size used to split data for encrypt pipelines"}, - {"max_pipelines", OPT_MAX_PIPELINES, 'n', + {"max_pipelines", OPT_MAX_PIPELINES, 'p', "Maximum number of encrypt/decrypt pipelines to be used"}, - {"read_buf", OPT_READ_BUF, 'n', + {"read_buf", OPT_READ_BUF, 'p', "Default read buffer size to be used for connections"}, OPT_S_OPTIONS, OPT_V_OPTIONS, @@ -999,6 +1001,7 @@ int s_server_main(int argc, char *argv[]) int s_tlsextstatus = 0; #endif int no_resume_ephemeral = 0; + unsigned int max_send_fragment = 0; unsigned int split_send_fragment = 0, max_pipelines = 0; const char *s_serverinfo_file = NULL; const char *keylog_file = NULL; @@ -1497,15 +1500,11 @@ int s_server_main(int argc, char *argv[]) case OPT_ASYNC: async = 1; break; + case OPT_MAX_SEND_FRAG: + max_send_fragment = atoi(opt_arg()); + break; case OPT_SPLIT_SEND_FRAG: split_send_fragment = atoi(opt_arg()); - if (split_send_fragment == 0) { - /* - * Not allowed - set to a deliberately bad value so we get an - * error message below - */ - split_send_fragment = SSL3_RT_MAX_PLAIN_LENGTH + 1; - } break; case OPT_MAX_PIPELINES: max_pipelines = atoi(opt_arg()); @@ -1562,16 +1561,6 @@ int s_server_main(int argc, char *argv[]) } #endif - if (split_send_fragment > SSL3_RT_MAX_PLAIN_LENGTH) { - BIO_printf(bio_err, "Bad split send fragment size\n"); - goto end; - } - - if (max_pipelines > SSL_MAX_PIPELINES) { - BIO_printf(bio_err, "Bad max pipelines value\n"); - goto end; - } - if (!app_passwd(passarg, dpassarg, &pass, &dpass)) { BIO_printf(bio_err, "Error getting password\n"); goto end; @@ -1760,11 +1749,25 @@ int s_server_main(int argc, char *argv[]) if (async) { SSL_CTX_set_mode(ctx, SSL_MODE_ASYNC); } - if (split_send_fragment > 0) { - SSL_CTX_set_split_send_fragment(ctx, split_send_fragment); + + if (max_send_fragment > 0 + && !SSL_CTX_set_max_send_fragment(ctx, max_send_fragment)) { + BIO_printf(bio_err, "%s: Max send fragment size %u is out of permitted range\n", + prog, max_send_fragment); + goto end; + } + + if (split_send_fragment > 0 + && !SSL_CTX_set_split_send_fragment(ctx, split_send_fragment)) { + BIO_printf(bio_err, "%s: Split send fragment size %u is out of permitted range\n", + prog, split_send_fragment); + goto end; } - if (max_pipelines > 0) { - SSL_CTX_set_max_pipelines(ctx, max_pipelines); + if (max_pipelines > 0 + && !SSL_CTX_set_max_pipelines(ctx, max_pipelines)) { + BIO_printf(bio_err, "%s: Max pipelines %u is out of permitted range\n", + prog, max_pipelines); + goto end; } if (read_buf_len > 0) { diff --git a/doc/man1/s_client.pod b/doc/man1/s_client.pod index 1653856..96df8a4 100644 --- a/doc/man1/s_client.pod +++ b/doc/man1/s_client.pod @@ -86,6 +86,7 @@ B B [B<-sctp>] [B<-fallback_scsv>] [B<-async>] +[B<-max_send_frag>] [B<-split_send_frag>] [B<-max_pipelines>] [B<-read_buf>] @@ -416,6 +417,11 @@ asynchronously. This will only have an effect if an asynchronous capable engine is also used via the B<-engine> option. For test purposes the dummy async engine (dasync) can be used (if available). +=item B<-max_send_frag int> + +The maximum size of data fragment to send. +See L for further information. + =item B<-split_send_frag int> The size used to split data for encrypt pipelines. If more data is written in @@ -643,8 +649,9 @@ information whenever a session is renegotiated. =head1 SEE ALSO -L, -L, L, L +L, L, L, L, +L, L +L =head1 HISTORY diff --git a/doc/man1/s_server.pod b/doc/man1/s_server.pod index d2fbb84..c3e763f 100644 --- a/doc/man1/s_server.pod +++ b/doc/man1/s_server.pod @@ -86,6 +86,7 @@ B B [B<-sctp>] [B<-listen>] [B<-async>] +[B<-max_send_frag>] [B<-split_send_frag>] [B<-max_pipelines>] [B<-read_buf>] @@ -376,6 +377,11 @@ asynchronously. This will only have an effect if an asynchronous capable engine is also used via the B<-engine> option. For test purposes the dummy async engine (dasync) can be used (if available). +=item B<-max_send_frag int> + +The maximum size of data fragment to send. +See L for further information. + =item B<-split_send_frag int> The size used to split data for encrypt pipelines. If more data is written in @@ -638,8 +644,9 @@ unknown cipher suites a client says it supports. =head1 SEE ALSO -L, -L, L, L +L, L, L, L +L, L +L =head1 HISTORY From levitte at openssl.org Fri Apr 28 14:00:22 2017 From: levitte at openssl.org (Richard Levitte) Date: Fri, 28 Apr 2017 14:00:22 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493388022.738034.16962.nullmailer@dev.openssl.org> The branch master has been updated via 0918b94c9c01307a1cc4cfc347d458827e30ffea (commit) via 68e49bf22384c33494886eb95d78f1f69f433781 (commit) via 603ddbdb7527710c293a762aa5eed51ad05646b3 (commit) via c5657cb71011eb2471f6d70e558919d3da561f39 (commit) via 579d0fabcddb4a0ec4307be420f0bc7c2eea6b7c (commit) from 36b2cfb191f4a3f3a49b7c4d865308b7021daa42 (commit) - Log ----------------------------------------------------------------- commit 0918b94c9c01307a1cc4cfc347d458827e30ffea Author: Richard Levitte Date: Fri Apr 28 15:40:55 2017 +0200 testutil: Remove test_puts_std{out,err}, they are superfluous Reviewed-by: Andy Polyakov Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3345) commit 68e49bf22384c33494886eb95d78f1f69f433781 Author: Richard Levitte Date: Fri Apr 28 14:48:13 2017 +0200 testutil: Add OpenSSL error stack printing wrapper TEST_openssl_errors Also added a internal error printing callback to be used both with ERR_print_errors_cb() and with CRYPTO_mem_leaks_cb Reviewed-by: Andy Polyakov Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3345) commit 603ddbdb7527710c293a762aa5eed51ad05646b3 Author: Richard Levitte Date: Fri Apr 28 14:46:18 2017 +0200 testutil: Add commodity printing functions test_printf_std{out,err} Reviewed-by: Andy Polyakov Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3345) commit c5657cb71011eb2471f6d70e558919d3da561f39 Author: Richard Levitte Date: Fri Apr 28 14:42:46 2017 +0200 testutil: make subtest_level() internal Reviewed-by: Andy Polyakov Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3345) commit 579d0fabcddb4a0ec4307be420f0bc7c2eea6b7c Author: Richard Levitte Date: Fri Apr 28 14:37:19 2017 +0200 testutil: Move printing function declarations to "internal" header These functions aren't meant to be used directly by the test programs, reflect that by making the declarations a little harder to reach, but still available enough if there's a need to override them. Reviewed-by: Andy Polyakov Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3345) ----------------------------------------------------------------------- Summary of changes: test/bioprinttest.c | 25 ++--------- test/build.info | 7 ++-- test/testutil.h | 23 ++-------- test/testutil/basic_output.c | 11 +---- crypto/o_init.c => test/testutil/cb.c | 15 +++---- test/testutil/driver.c | 49 +++++++++------------- test/testutil/output.h | 32 ++++++++++++++ test/testutil/output_helpers.c | 34 +++++++++++++++ test/testutil/test_main.c | 3 +- test/testutil/tests.c | 29 ++++++------- .../internal/async.h => test/testutil/tu_local.h | 9 ++-- 11 files changed, 120 insertions(+), 117 deletions(-) copy crypto/o_init.c => test/testutil/cb.c (53%) create mode 100644 test/testutil/output.h create mode 100644 test/testutil/output_helpers.c copy crypto/include/internal/async.h => test/testutil/tu_local.h (57%) diff --git a/test/bioprinttest.c b/test/bioprinttest.c index 2c2dc8c..3034cda 100644 --- a/test/bioprinttest.c +++ b/test/bioprinttest.c @@ -14,6 +14,7 @@ #include #include "internal/numbers.h" #include "testutil.h" +#include "testutil/output.h" #define nelem(x) (int)(sizeof(x) / sizeof((x)[0])) @@ -260,18 +261,6 @@ void test_close_streams(void) { } -int test_puts_stdout(const char *str) -{ - return fputs(str, stdout); -} - -int test_puts_stderr(const char *str) -{ - return fputs(str, stderr); -} - -static char vprint_buf[10240]; - /* * This works out as long as caller doesn't use any "fancy" formats. * But we are caller's caller, and test_str_eq is the only one called, @@ -279,20 +268,12 @@ static char vprint_buf[10240]; */ int test_vprintf_stdout(const char *fmt, va_list ap) { - size_t len = vsnprintf(vprint_buf, sizeof(vprint_buf), fmt, ap); - - if (len >= sizeof(vprint_buf)) - return -1; - return test_puts_stdout(vprint_buf); + return vfprintf(stdout, fmt, ap); } int test_vprintf_stderr(const char *fmt, va_list ap) { - size_t len = vsnprintf(vprint_buf, sizeof(vprint_buf), fmt, ap); - - if (len >= sizeof(vprint_buf)) - return -1; - return test_puts_stderr(vprint_buf); + return vfprintf(stderr, fmt, ap); } int test_flush_stdout(void) diff --git a/test/build.info b/test/build.info index c8d86f7..2b1ced8 100644 --- a/test/build.info +++ b/test/build.info @@ -9,9 +9,10 @@ -} IF[{- !$disabled{tests} -}] LIBS_NO_INST=libtestutil.a - SOURCE[libtestutil.a]=testutil/basic_output.c testutil/driver.c \ - testutil/tests.c testutil/test_main.c testutil/main.c \ - {- rebase_files("../apps", $target{apps_aux_src}) -} + SOURCE[libtestutil.a]=testutil/basic_output.c testutil/output_helpers.c \ + testutil/driver.c testutil/tests.c testutil/cb.c \ + {- rebase_files("../apps", $target{apps_aux_src}) -} \ + testutil/test_main.c testutil/main.c INCLUDE[libtestutil.a]=.. ../include DEPEND[libtestutil.a]=../libcrypto diff --git a/test/testutil.h b/test/testutil.h index ecf9934..f1c1bba 100644 --- a/test/testutil.h +++ b/test/testutil.h @@ -248,6 +248,7 @@ void test_error_c90(const char *desc, ...) PRINTF_FORMAT(1, 2); void test_info(const char *file, int line, const char *desc, ...) PRINTF_FORMAT(3, 4); void test_info_c90(const char *desc, ...) PRINTF_FORMAT(1, 2); +void test_openssl_errors(void); /* * The following macros provide wrapper calls to the test functions with @@ -342,6 +343,7 @@ void test_info_c90(const char *desc, ...) PRINTF_FORMAT(1, 2); # define TEST_error(...) test_error(__FILE__, __LINE__, __VA_ARGS__) # define TEST_info(...) test_info(__FILE__, __LINE__, __VA_ARGS__) # endif +# define TEST_openssl_errors test_openssl_errors /* * For "impossible" conditions such as malloc failures or bugs in test code, @@ -351,29 +353,12 @@ void test_info_c90(const char *desc, ...) PRINTF_FORMAT(1, 2); # define TEST_check(condition) \ do { \ if (!(condition)) { \ - ERR_print_errors_fp(stderr); \ + TEST_openssl_errors(); \ OPENSSL_assert(!#condition); \ } \ } while (0) -#endif /* HEADER_TESTUTIL_H */ - - -/* - * The basic I/O functions used by the test framework. These can be - * overriden when needed. Note that if one is, then all must be. - */ -void test_open_streams(void); -void test_close_streams(void); -/* The following ALL return the number of characters written */ -int test_puts_stdout(const char *str); -int test_puts_stderr(const char *str); -int test_vprintf_stdout(const char *fmt, va_list ap); -int test_vprintf_stderr(const char *fmt, va_list ap); -/* These return failure or success */ -int test_flush_stdout(void); -int test_flush_stderr(void); extern BIO *bio_out; extern BIO *bio_err; -int subtest_level(void); +#endif /* HEADER_TESTUTIL_H */ diff --git a/test/testutil/basic_output.c b/test/testutil/basic_output.c index 9080aae..6e1f99a 100644 --- a/test/testutil/basic_output.c +++ b/test/testutil/basic_output.c @@ -8,6 +8,7 @@ */ #include "../testutil.h" +#include "output.h" #include #include @@ -30,16 +31,6 @@ void test_close_streams(void) BIO_free(bio_err); } -int test_puts_stdout(const char *str) -{ - return BIO_puts(bio_out, str); -} - -int test_puts_stderr(const char *str) -{ - return BIO_puts(bio_err, str); -} - int test_vprintf_stdout(const char *fmt, va_list ap) { return BIO_vprintf(bio_out, fmt, ap); diff --git a/crypto/o_init.c b/test/testutil/cb.c similarity index 53% copy from crypto/o_init.c copy to test/testutil/cb.c index 5eb7654..a291eaa 100644 --- a/crypto/o_init.c +++ b/test/testutil/cb.c @@ -1,5 +1,5 @@ /* - * Copyright 2011-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,15 +7,10 @@ * https://www.openssl.org/source/license.html */ -#include -#include +#include "output.h" +#include "tu_local.h" -/* - * Perform any essential OpenSSL initialization operations. Currently does - * nothing. - */ - -void OPENSSL_init(void) +int openssl_error_cb(const char *str, size_t len, void *u) { - return; + return test_printf_stderr("%*s# %s", subtest_level(), "", str); } diff --git a/test/testutil/driver.c b/test/testutil/driver.c index 29c97a9..786bc38 100644 --- a/test/testutil/driver.c +++ b/test/testutil/driver.c @@ -8,6 +8,8 @@ */ #include "../testutil.h" +#include "output.h" +#include "tu_local.h" #include #include @@ -82,11 +84,6 @@ static int should_report_leaks() } #endif -static int err_cb(const char *str, size_t len, void *u) -{ - return test_puts_stderr(str); -} - void setup_test() { char *TAP_levels = getenv("HARNESS_OSSL_LEVEL"); @@ -106,7 +103,8 @@ void setup_test() int finish_test(int ret) { #ifndef OPENSSL_NO_CRYPTO_MDEBUG - if (should_report_leaks() && CRYPTO_mem_leaks_cb(err_cb, NULL) <= 0) + if (should_report_leaks() + && CRYPTO_mem_leaks_cb(openssl_error_cb, NULL) <= 0) return EXIT_FAILURE; #endif @@ -120,16 +118,7 @@ static void finalize(int success) if (success) ERR_clear_error(); else - ERR_print_errors_cb(err_cb, NULL); -} - -static void helper_printf_stdout(const char *fmt, ...) -{ - va_list ap; - - va_start(ap, fmt); - test_vprintf_stdout(fmt, ap); - va_end(ap); + ERR_print_errors_cb(openssl_error_cb, NULL); } int run_tests(const char *test_prog_name) @@ -139,13 +128,13 @@ int run_tests(const char *test_prog_name) int i, j; if (num_tests < 1) - helper_printf_stdout("%*s1..0 # Skipped: %s\n", level, "", - test_prog_name); + test_printf_stdout("%*s1..0 # Skipped: %s\n", level, "", + test_prog_name); else if (level > 0) - helper_printf_stdout("%*s1..%d # Subtest: %s\n", level, "", num_tests, - test_prog_name); + test_printf_stdout("%*s1..%d # Subtest: %s\n", level, "", num_tests, + test_prog_name); else - helper_printf_stdout("%*s1..%d\n", level, "", num_tests); + test_printf_stdout("%*s1..%d\n", level, "", num_tests); test_flush_stdout(); for (i = 0; i != num_tests; ++i) { @@ -160,8 +149,8 @@ int run_tests(const char *test_prog_name) verdict = "not ok"; ++num_failed; } - helper_printf_stdout("%*s%s %d - %s\n", level, "", verdict, i + 1, - all_tests[i].test_case_name); + test_printf_stdout("%*s%s %d - %s\n", level, "", verdict, i + 1, + all_tests[i].test_case_name); test_flush_stdout(); finalize(ret); } else { @@ -169,10 +158,10 @@ int run_tests(const char *test_prog_name) level += 4; if (all_tests[i].subtest) { - helper_printf_stdout("%*s# Subtest: %s\n", level, "", - all_tests[i].test_case_name); - helper_printf_stdout("%*s%d..%d\n", level, "", 1, - all_tests[i].num); + test_printf_stdout("%*s# Subtest: %s\n", level, "", + all_tests[i].test_case_name); + test_printf_stdout("%*s%d..%d\n", level, "", 1, + all_tests[i].num); test_flush_stdout(); } @@ -193,7 +182,7 @@ int run_tests(const char *test_prog_name) verdict = "not ok"; ++num_failed_inner; } - helper_printf_stdout("%*s%s %d\n", level, "", verdict, j + 1); + test_printf_stdout("%*s%s %d\n", level, "", verdict, j + 1); test_flush_stdout(); } } @@ -204,8 +193,8 @@ int run_tests(const char *test_prog_name) verdict = "not ok"; ++num_failed; } - helper_printf_stdout("%*s%s %d - %s\n", level, "", verdict, i + 1, - all_tests[i].test_case_name); + test_printf_stdout("%*s%s %d - %s\n", level, "", verdict, i + 1, + all_tests[i].test_case_name); test_flush_stdout(); } } diff --git a/test/testutil/output.h b/test/testutil/output.h new file mode 100644 index 0000000..7c03aff --- /dev/null +++ b/test/testutil/output.h @@ -0,0 +1,32 @@ +/* + * Copyright 2014-2016 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +#ifndef HEADER_TU_OUTPUT_H +# define HEADER_TU_OUTPUT_H + +#include + +/* + * The basic I/O functions used internally by the test framework. These + * can be overriden when needed. Note that if one is, then all must be. + */ +void test_open_streams(void); +void test_close_streams(void); +/* The following ALL return the number of characters written */ +int test_vprintf_stdout(const char *fmt, va_list ap); +int test_vprintf_stderr(const char *fmt, va_list ap); +/* These return failure or success */ +int test_flush_stdout(void); +int test_flush_stderr(void); + +/* Commodity functions. There's no need to override these */ +int test_printf_stdout(const char *fmt, ...); +int test_printf_stderr(const char *fmt, ...); + +#endif /* HEADER_TU_OUTPUT_H */ diff --git a/test/testutil/output_helpers.c b/test/testutil/output_helpers.c new file mode 100644 index 0000000..9351474 --- /dev/null +++ b/test/testutil/output_helpers.c @@ -0,0 +1,34 @@ +/* + * Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +#include "output.h" + +int test_printf_stdout(const char *fmt, ...) +{ + va_list ap; + int ret; + + va_start(ap, fmt); + ret = test_vprintf_stdout(fmt, ap); + va_end(ap); + + return ret; +} + +int test_printf_stderr(const char *fmt, ...) +{ + va_list ap; + int ret; + + va_start(ap, fmt); + ret = test_vprintf_stderr(fmt, ap); + va_end(ap); + + return ret; +} diff --git a/test/testutil/test_main.c b/test/testutil/test_main.c index 0152421..3fa08b6 100644 --- a/test/testutil/test_main.c +++ b/test/testutil/test_main.c @@ -8,13 +8,14 @@ */ #include "../testutil.h" +#include "output.h" #include int test_main(int argc, char *argv[]) { if (argc > 1) - test_puts_stderr("Warning: ignoring extra command-line arguments.\n"); + test_printf_stderr("Warning: ignoring extra command-line arguments.\n"); register_tests(); return run_tests(argv[0]); diff --git a/test/testutil/tests.c b/test/testutil/tests.c index 67b20a5..19a366f 100644 --- a/test/testutil/tests.c +++ b/test/testutil/tests.c @@ -8,6 +8,8 @@ */ #include "../testutil.h" +#include "output.h" +#include "tu_local.h" #include #include "../../e_os.h" @@ -43,33 +45,21 @@ static void test_fail_message(const char *prefix, const char *file, int line, const char *type, const char *fmt, ...) PRINTF_FORMAT(5, 6); -int subtest_level(void); - -static void helper_printf_stderr(const char *fmt, ...) -{ - va_list ap; - - va_start(ap, fmt); - test_vprintf_stderr(fmt, ap); - va_end(ap); -} static void test_fail_message_va(const char *prefix, const char *file, int line, const char *type, const char *fmt, va_list ap) { - helper_printf_stderr("%*s# ", subtest_level(), ""); - test_puts_stderr(prefix != NULL ? prefix : "ERROR"); - test_puts_stderr(":"); + test_printf_stderr("%*s# %s: ", subtest_level(), "", + prefix != NULL ? prefix : "ERROR"); if (type) - helper_printf_stderr(" (%s)", type); + test_printf_stderr("(%s)", type); if (fmt != NULL) { - test_puts_stderr(" "); test_vprintf_stderr(fmt, ap); } if (file != NULL) { - helper_printf_stderr(" @ %s:%d", file, line); + test_printf_stderr(" @ %s:%d", file, line); } - test_puts_stderr("\n"); + test_printf_stderr("\n"); test_flush_stderr(); } @@ -119,6 +109,11 @@ void test_error(const char *file, int line, const char *desc, ...) va_end(ap); } +void test_openssl_errors(void) +{ + ERR_print_errors_cb(openssl_error_cb, NULL); +} + /* * Define some comparisons between pairs of various types. * These functions return 1 if the test is true. diff --git a/crypto/include/internal/async.h b/test/testutil/tu_local.h similarity index 57% copy from crypto/include/internal/async.h copy to test/testutil/tu_local.h index db56258..ad50fca 100644 --- a/crypto/include/internal/async.h +++ b/test/testutil/tu_local.h @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,8 +7,7 @@ * https://www.openssl.org/source/license.html */ -#include - -int async_init(void); -void async_deinit(void); +#include /* size_t */ +int subtest_level(void); +int openssl_error_cb(const char *str, size_t len, void *u); From levitte at openssl.org Fri Apr 28 14:04:33 2017 From: levitte at openssl.org (Richard Levitte) Date: Fri, 28 Apr 2017 14:04:33 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493388273.258424.22534.nullmailer@dev.openssl.org> The branch master has been updated via f5a140f7e9d836ee8a75dbaac2f8ab3971c4db86 (commit) from 0918b94c9c01307a1cc4cfc347d458827e30ffea (commit) - Log ----------------------------------------------------------------- commit f5a140f7e9d836ee8a75dbaac2f8ab3971c4db86 Author: Pauli Date: Thu Apr 27 14:08:31 2017 +1000 Refactor crltest.c to separate the test cases into individual functions. Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3327) ----------------------------------------------------------------------- Summary of changes: test/crltest.c | 174 ++++++++++++++++++++++++++++----------------------------- 1 file changed, 84 insertions(+), 90 deletions(-) diff --git a/test/crltest.c b/test/crltest.c index 790fc5f..048f67f 100644 --- a/test/crltest.c +++ b/test/crltest.c @@ -1,5 +1,5 @@ /* - * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2015-2017 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,7 +7,6 @@ * https://www.openssl.org/source/license.html */ -#include #include "../e_os.h" #include #include @@ -177,6 +176,12 @@ static const char *kUnknownCriticalCRL2[] = { NULL }; +static const char **unknown_critical_crls[] = { + kUnknownCriticalCRL, kUnknownCriticalCRL2 +}; + +static X509 *test_root = NULL; +static X509 *test_leaf = NULL; /* * Glue an array of strings together. Return a BIO and put the string @@ -242,29 +247,22 @@ static int verify(X509 *leaf, X509 *root, STACK_OF(X509_CRL) *crls, STACK_OF(X509) *roots = sk_X509_new_null(); int status = X509_V_ERR_UNSPECIFIED; - if (!TEST_ptr(ctx)) - goto err; - if (!TEST_ptr(store)) - goto err; - if (!TEST_ptr(param)) - goto err; - if (!TEST_ptr(roots)) + if (!TEST_ptr(ctx) + || !TEST_ptr(store) + || !TEST_ptr(param) + || !TEST_ptr(roots)) goto err; /* Create a stack; upref the cert because we free it below. */ X509_up_ref(root); - if (!TEST_true(sk_X509_push(roots, root))) - goto err; - - if (!TEST_true(X509_STORE_CTX_init(ctx, store, leaf, NULL))) + if (!TEST_true(sk_X509_push(roots, root)) + || !TEST_true(X509_STORE_CTX_init(ctx, store, leaf, NULL))) goto err; X509_STORE_CTX_set0_trusted_stack(ctx, roots); X509_STORE_CTX_set0_crls(ctx, crls); X509_VERIFY_PARAM_set_time(param, PARAM_TIME); - if (!TEST_long_eq(X509_VERIFY_PARAM_get_time(param), PARAM_TIME)) { - TEST_info("set_time/get_time mismatch."); + if (!TEST_long_eq(X509_VERIFY_PARAM_get_time(param), PARAM_TIME)) goto err; - } X509_VERIFY_PARAM_set_depth(param, 16); if (flags) X509_VERIFY_PARAM_set_flags(param, flags); @@ -299,94 +297,90 @@ static STACK_OF(X509_CRL) *make_CRL_stack(X509_CRL *x1, X509_CRL *x2) return sk; } -static int test_crl() +static int test_basic_crl(void) { - X509 *root = X509_from_strings(kCRLTestRoot); - X509 *leaf = X509_from_strings(kCRLTestLeaf); X509_CRL *basic_crl = CRL_from_strings(kBasicCRL); X509_CRL *revoked_crl = CRL_from_strings(kRevokedCRL); - X509_CRL *bad_issuer_crl = CRL_from_strings(kBadIssuerCRL); - X509_CRL *known_critical_crl = CRL_from_strings(kKnownCriticalCRL); - X509_CRL *unknown_critical_crl = CRL_from_strings(kUnknownCriticalCRL); - X509_CRL *unknown_critical_crl2 = CRL_from_strings(kUnknownCriticalCRL2); - int status = 0; + int r; + + r = TEST_ptr(basic_crl) + && TEST_ptr(revoked_crl) + && TEST_int_eq(verify(test_leaf, test_root, + make_CRL_stack(basic_crl, NULL), + X509_V_FLAG_CRL_CHECK), X509_V_OK) + && TEST_int_eq(verify(test_leaf, test_root, + make_CRL_stack(basic_crl, revoked_crl), + X509_V_FLAG_CRL_CHECK), X509_V_ERR_CERT_REVOKED); + X509_CRL_free(basic_crl); + X509_CRL_free(revoked_crl); + return r; +} - if (!TEST_ptr(root)) - goto err; - if (!TEST_ptr(leaf)) - goto err; - if (!TEST_ptr(basic_crl)) - goto err; - if (!TEST_ptr(revoked_crl)) - goto err; - if (!TEST_ptr(bad_issuer_crl)) - goto err; - if (!TEST_ptr(known_critical_crl)) - goto err; - if (!TEST_ptr(unknown_critical_crl)) - goto err; - if (!TEST_ptr(unknown_critical_crl2)) - goto err; +static int test_no_crl(void) +{ + return TEST_int_eq(verify(test_leaf, test_root, NULL, + X509_V_FLAG_CRL_CHECK), + X509_V_ERR_UNABLE_TO_GET_CRL); +} - if (verify(leaf, root, make_CRL_stack(basic_crl, NULL), - X509_V_FLAG_CRL_CHECK) != X509_V_OK) { - TEST_info("Cert with CRL didn't verify."); - goto err; - } +static int test_bad_issuer_crl(void) +{ + X509_CRL *bad_issuer_crl = CRL_from_strings(kBadIssuerCRL); + int r; - if (verify(leaf, root, make_CRL_stack(basic_crl, revoked_crl), - X509_V_FLAG_CRL_CHECK) != X509_V_ERR_CERT_REVOKED) { - TEST_info("Revoked CRL wasn't checked."); - goto err; - } + r = TEST_ptr(bad_issuer_crl) + && TEST_int_eq(verify(test_leaf, test_root, + make_CRL_stack(bad_issuer_crl, NULL), + X509_V_FLAG_CRL_CHECK), + X509_V_ERR_UNABLE_TO_GET_CRL); + X509_CRL_free(bad_issuer_crl); + return r; +} - if (verify(leaf, root, NULL, - X509_V_FLAG_CRL_CHECK) != X509_V_ERR_UNABLE_TO_GET_CRL) { - TEST_info("CRLs were not required."); - goto err; - } +static int test_known_critical_crl(void) +{ + X509_CRL *known_critical_crl = CRL_from_strings(kKnownCriticalCRL); + int r; - if (verify(leaf, root, make_CRL_stack(bad_issuer_crl, NULL), - X509_V_FLAG_CRL_CHECK) != X509_V_ERR_UNABLE_TO_GET_CRL) { - TEST_info("Bad CRL issuer was unnoticed."); - goto err; - } + r = TEST_ptr(known_critical_crl) + && TEST_int_eq(verify(test_leaf, test_root, + make_CRL_stack(known_critical_crl, NULL), + X509_V_FLAG_CRL_CHECK), X509_V_OK); + X509_CRL_free(known_critical_crl); + return r; +} - if (verify(leaf, root, make_CRL_stack(known_critical_crl, NULL), - X509_V_FLAG_CRL_CHECK) != X509_V_OK) { - TEST_info("CRL with known critical extension was rejected."); - goto err; - } +static int test_unknown_critical_crl(int n) +{ + X509_CRL *unknown_critical_crl = CRL_from_strings(unknown_critical_crls[n]); + int r; + + r = TEST_ptr(unknown_critical_crl) + && TEST_int_eq(verify(test_leaf, test_root, + make_CRL_stack(unknown_critical_crl, NULL), + X509_V_FLAG_CRL_CHECK), + X509_V_ERR_UNHANDLED_CRITICAL_CRL_EXTENSION); + X509_CRL_free(unknown_critical_crl); + return r; +} - if (verify(leaf, root, make_CRL_stack(unknown_critical_crl, NULL), - X509_V_FLAG_CRL_CHECK) != - X509_V_ERR_UNHANDLED_CRITICAL_CRL_EXTENSION) { - TEST_info("CRL with unknown critical extension was accepted."); - goto err; - } +int test_main(int argc, char *argv[]) +{ + int status = EXIT_FAILURE; - if (verify(leaf, root, make_CRL_stack(unknown_critical_crl2, NULL), - X509_V_FLAG_CRL_CHECK) != - X509_V_ERR_UNHANDLED_CRITICAL_CRL_EXTENSION) { - TEST_info("CRL with unknown critical extension (2) was accepted."); + if (!TEST_ptr(test_root = X509_from_strings(kCRLTestRoot)) + || !TEST_ptr(test_leaf = X509_from_strings(kCRLTestLeaf))) goto err; - } - status = 1; + ADD_TEST(test_no_crl); + ADD_TEST(test_basic_crl); + ADD_TEST(test_bad_issuer_crl); + ADD_TEST(test_known_critical_crl); + ADD_ALL_TESTS(test_unknown_critical_crl, OSSL_NELEM(unknown_critical_crls)); + status = run_tests(argv[0]); err: - X509_free(root); - X509_free(leaf); - X509_CRL_free(basic_crl); - X509_CRL_free(revoked_crl); - X509_CRL_free(bad_issuer_crl); - X509_CRL_free(known_critical_crl); - X509_CRL_free(unknown_critical_crl); - X509_CRL_free(unknown_critical_crl2); + X509_free(test_root); + X509_free(test_leaf); return status; } - -void register_tests(void) -{ - ADD_TEST(test_crl); -} From rsalz at openssl.org Fri Apr 28 14:09:41 2017 From: rsalz at openssl.org (Rich Salz) Date: Fri, 28 Apr 2017 14:09:41 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493388581.982546.28104.nullmailer@dev.openssl.org> The branch master has been updated via 9a837f220ad1320c51ad2b57b2466fbe28670a45 (commit) from f5a140f7e9d836ee8a75dbaac2f8ab3971c4db86 (commit) - Log ----------------------------------------------------------------- commit 9a837f220ad1320c51ad2b57b2466fbe28670a45 Author: Rich Salz Date: Fri Apr 28 10:00:09 2017 -0400 Ensure blank lines between tests. Also add a comment describing the file format. Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3337) ----------------------------------------------------------------------- Summary of changes: test/evptests.txt | 173 ++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 161 insertions(+), 12 deletions(-) diff --git a/test/evptests.txt b/test/evptests.txt index adc35e4..c5c364a 100644 --- a/test/evptests.txt +++ b/test/evptests.txt @@ -6,6 +6,12 @@ # in the file LICENSE in the source distribution or at # https://www.openssl.org/source/license.html +# Tests start with one of these keywords +# Cipher Decrypt Derive Digest Encoding KDF MAC PBE +# PrivPubKeyPair Sign Verify VerifyRecover +# and continue until a blank line. Lines starting with a pound sign, +# like this prolog, are ignored. + # SIPHASH tests - default values: 2,4 rounds, 16-byte mac # There are no official test vectors, they are simple vectors 1, 2, 3, etc @@ -145,7 +151,6 @@ Digest = SHA1 Input = 616263 Output = a9993e364706816aba3e25717850c26c9cd0d89d - # MD5 tests Digest = MD5 Input = @@ -179,21 +184,27 @@ Output = 57edf4a22be3c955ac49da2e2107b67a Digest = MD4 Input = "" Output = 31d6cfe0d16ae931b73c59d7e0c089c0 + Digest = MD4 Input = "a" Output = bde52cb31de33e46245e05fbdbd6fb24 + Digest = MD4 Input = "abc" Output = a448017aaf21d8525fc10ae87aa6729d + Digest = MD4 Input = "message digest" Output = d9130a8164549fe818874806e1c7014b + Digest = MD4 Input = "abcdefghijklmnopqrstuvwxyz" Output = d79e1c308aa5bbcdeea8ed63df412da9 + Digest = MD4 Input = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789" Output = 043f8582f241db351ce627e153e7f0e4 + Digest = MD4 Input = "12345678901234567890123456789012345678901234567890123456789012345678901234567890" Output = e33b4ddc9c38f2199c3e7b164fcc0536 @@ -202,24 +213,31 @@ Output = e33b4ddc9c38f2199c3e7b164fcc0536 Digest = RIPEMD160 Input = "" Output = 9c1185a5c5e9fc54612808977ee8f548b2258d31 + Digest = RIPEMD160 Input = "a" Output = 0bdc9d2d256b3ee9daae347be6f4dc835a467ffe + Digest = RIPEMD160 Input = "abc" Output = 8eb208f7e05d987a9b044a8e98c6b087f15a0bfc + Digest = RIPEMD160 Input = "message digest" Output = 5d0689ef49d2fae572b881b123a85ffa21595f36 + Digest = RIPEMD160 Input = "abcdefghijklmnopqrstuvwxyz" Output = f71c27109c692c1b56bbdceb5b9d2865b3708dbc + Digest = RIPEMD160 Input = "abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq" Output = 12a053384a9c0c88e405a06c27dcf49ada62eb2b + Digest = RIPEMD160 Input = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789" Output = b0e20b6e3116640286ed3a87a5713079b21f5189 + Digest = RIPEMD160 Input = "12345678901234567890123456789012345678901234567890123456789012345678901234567890" Output = 9b752e45573d4b39f4dbd3323cab82bf63326bfb @@ -228,27 +246,35 @@ Output = 9b752e45573d4b39f4dbd3323cab82bf63326bfb Digest = whirlpool Input = "" Output = 19FA61D75522A4669B44E39C1D2E1726C530232130D407F89AFEE0964997F7A73E83BE698B288FEBCF88E3E03C4F0757EA8964E59B63D93708B138CC42A66EB3 + Digest = whirlpool Input = "a" Output = 8ACA2602792AEC6F11A67206531FB7D7F0DFF59413145E6973C45001D0087B42D11BC645413AEFF63A42391A39145A591A92200D560195E53B478584FDAE231A + Digest = whirlpool Input = "abc" Output = 4E2448A4C6F486BB16B6562C73B4020BF3043E3A731BCE721AE1B303D97E6D4C7181EEBDB6C57E277D0E34957114CBD6C797FC9D95D8B582D225292076D4EEF5 + Digest = whirlpool Input = "message digest" Output = 378C84A4126E2DC6E56DCC7458377AAC838D00032230F53CE1F5700C0FFB4D3B8421557659EF55C106B4B52AC5A4AAA692ED920052838F3362E86DBD37A8903E + Digest = whirlpool Input = "abcdefghijklmnopqrstuvwxyz" Output = F1D754662636FFE92C82EBB9212A484A8D38631EAD4238F5442EE13B8054E41B08BF2A9251C30B6A0B8AAE86177AB4A6F68F673E7207865D5D9819A3DBA4EB3B + Digest = whirlpool Input = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789" Output = DC37E008CF9EE69BF11F00ED9ABA26901DD7C28CDEC066CC6AF42E40F82F3A1E08EBA26629129D8FB7CB57211B9281A65517CC879D7B962142C65F5A7AF01467 + Digest = whirlpool Input = "12345678901234567890123456789012345678901234567890123456789012345678901234567890" Output = 466EF18BABB0154D25B9D38A6414F5C08784372BCCB204D6549C4AFADB6014294D5BD8DF2A6C44E538CD047B2681A51A2C60481E88C5A20B2C2A80CF3A9A083B + Digest = whirlpool Input = "abcdbcdecdefdefgefghfghighijhijk" Output = 2A987EA40F917061F5D6F0A0E4644F488A7A5A52DEEE656207C562F988E95C6916BDC8031BC5BE1B7B947639FE050B56939BAAA0ADFF9AE6745B7B181C3BE3FD + Digest = whirlpool Input = "aaaaaaaaaa" Count = 100000 @@ -850,7 +876,6 @@ Operation = ENCRYPT Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F20212223 Ciphertext = C1CF48A89F2FFDD9CF4652E9EFDB72D74540A42BDE6D7836D59A5CEAAEF3105325B2072F - Cipher = aes-192-ctr Key = 16AF5B145FC9F579C175F93E3BFB0EED863D06CCFDB78515 IV = 0000004836733C147D6D93CB00000001 @@ -872,7 +897,6 @@ Operation = ENCRYPT Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F20212223 Ciphertext = 96893FC55E5C722F540B7DD1DDF7E758D288BC95C69165884536C811662F2188ABEE0935 - Cipher = aes-256-ctr Key = 776BEFF2851DB06F4C8A0542C8696F6C6A81AF1EEC96B4D37FC1D689E6C1C104 IV = 00000060DB5672C97AA8F0B200000001 @@ -894,7 +918,6 @@ Operation = ENCRYPT Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F20212223 Ciphertext = EB6C52821D0BBBF7CE7594462ACA4FAAB407DF866569FD07F48CC0B583D6071F1EC0E6B8 - # Self-generated vector to trigger false carry on big-endian platforms Cipher = aes-128-ctr Key = 7E24067817FAE0D743D6CE1F32539163 @@ -940,7 +963,6 @@ Key = FEDCBA9876543210 Plaintext = 0123456789ABCDEF Ciphertext = ED39D950FA74BCC4 - # DESX-CBC tests (from destest) Cipher = DESX-CBC Key = 0123456789abcdeff1e0d3c2b5a49786fedcba9876543210 @@ -948,7 +970,6 @@ IV = fedcba9876543210 Plaintext = 37363534333231204E6F77206973207468652074696D6520666F722000000000 Ciphertext = 846B2914851E9A2954732F8AA0A611C115CDC2D7951B1053A63C5E03B21AA3C4 - # DES EDE3 CBC tests (from destest) Cipher = DES-EDE3-CBC Key = 0123456789abcdeff1e0d3c2b5a49786fedcba9876543210 @@ -956,7 +977,6 @@ IV = fedcba9876543210 Plaintext = 37363534333231204E6F77206973207468652074696D6520666F722000000000 Ciphertext = 3FE301C962AC01D02213763C1CBD4CDC799657C064ECF5D41C673812CFDE9675 - # RC4 tests (from rc4test) Cipher = RC4 Key = 0123456789abcdef0123456789abcdef @@ -988,8 +1008,6 @@ Key = ef012345ef012345ef012345ef012345 Plaintext = 00000000000000000000 Ciphertext = d6a141a7ec3c38dfbd61 - - # Camellia tests from RFC3713 # For all ECB encrypts and decrypts, the transformed sequence is # CAMELLIA-bits-ECB:key::plaintext:ciphertext:encdec @@ -1008,7 +1026,6 @@ Key = 0123456789abcdeffedcba987654321000112233445566778899aabbccddeeff Plaintext = 0123456789abcdeffedcba9876543210 Ciphertext = 9acc237dff16d76c20ef7c919e3a7509 - # ECB-CAMELLIA128.Encrypt Cipher = CAMELLIA-128-ECB Key = 000102030405060708090A0B0C0D0E0F @@ -2520,71 +2537,85 @@ Algorithm = SHA1 Input = "Sample message for keylen=blocklen" Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F Output = 5FD596EE78D5553C8FF4E72D266DFD192366DA29 + MAC = HMAC Algorithm = SHA1 Input = "Sample message for keylen The branch master has been updated via 5cc977619181d5dd68fba7ec6e185550f824a6db (commit) from 9a837f220ad1320c51ad2b57b2466fbe28670a45 (commit) - Log ----------------------------------------------------------------- commit 5cc977619181d5dd68fba7ec6e185550f824a6db Author: Richard Levitte Date: Fri Apr 28 17:52:45 2017 +0200 Update the pyca-cryptography submodule to version 1.8.1 It was released a couple of days after our latest update [extended tests] Reviewed-by: Tim Hudson (Merged from https://github.com/openssl/openssl/pull/3346) ----------------------------------------------------------------------- Summary of changes: pyca-cryptography | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyca-cryptography b/pyca-cryptography index 722235c..6c5a519 160000 --- a/pyca-cryptography +++ b/pyca-cryptography @@ -1 +1 @@ -Subproject commit 722235c46721acfe8b601e7846730c3c1fa588c5 +Subproject commit 6c5a519f9b382a1746c1bda5f01aaeb2809250ef From no-reply at appveyor.com Fri Apr 28 16:15:06 2017 From: no-reply at appveyor.com (AppVeyor) Date: Fri, 28 Apr 2017 16:15:06 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.36 Message-ID: <20170428161458.109043.2224.47C679B0@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Fri Apr 28 16:52:13 2017 From: no-reply at appveyor.com (AppVeyor) Date: Fri, 28 Apr 2017 16:52:13 +0000 Subject: [openssl-commits] Build completed: openssl 1.0.37 Message-ID: <20170428165213.108224.80937.540F0306@appveyor.com> An HTML attachment was scrubbed... URL: From rsalz at openssl.org Fri Apr 28 17:45:58 2017 From: rsalz at openssl.org (Rich Salz) Date: Fri, 28 Apr 2017 17:45:58 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1493401558.107881.13716.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via c4a53021b953e8c279e50b39b561dfda83fa597d (commit) from af50d454f9914a7c5864832087ea73caff1b4aae (commit) - Log ----------------------------------------------------------------- commit c4a53021b953e8c279e50b39b561dfda83fa597d Author: Rich Salz Date: Fri Apr 28 10:00:09 2017 -0400 Ensure blank lines between tests. Also add a comment describing the file format. Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3337) (cherry picked from commit 9a837f220ad1320c51ad2b57b2466fbe28670a45) ----------------------------------------------------------------------- Summary of changes: test/evptests.txt | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/test/evptests.txt b/test/evptests.txt index ff518d6..1131573 100644 --- a/test/evptests.txt +++ b/test/evptests.txt @@ -125,21 +125,27 @@ Output = 57edf4a22be3c955ac49da2e2107b67a Digest = MD4 Input = "" Output = 31d6cfe0d16ae931b73c59d7e0c089c0 + Digest = MD4 Input = "a" Output = bde52cb31de33e46245e05fbdbd6fb24 + Digest = MD4 Input = "abc" Output = a448017aaf21d8525fc10ae87aa6729d + Digest = MD4 Input = "message digest" Output = d9130a8164549fe818874806e1c7014b + Digest = MD4 Input = "abcdefghijklmnopqrstuvwxyz" Output = d79e1c308aa5bbcdeea8ed63df412da9 + Digest = MD4 Input = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789" Output = 043f8582f241db351ce627e153e7f0e4 + Digest = MD4 Input = "12345678901234567890123456789012345678901234567890123456789012345678901234567890" Output = e33b4ddc9c38f2199c3e7b164fcc0536 @@ -148,24 +154,31 @@ Output = e33b4ddc9c38f2199c3e7b164fcc0536 Digest = RIPEMD160 Input = "" Output = 9c1185a5c5e9fc54612808977ee8f548b2258d31 + Digest = RIPEMD160 Input = "a" Output = 0bdc9d2d256b3ee9daae347be6f4dc835a467ffe + Digest = RIPEMD160 Input = "abc" Output = 8eb208f7e05d987a9b044a8e98c6b087f15a0bfc + Digest = RIPEMD160 Input = "message digest" Output = 5d0689ef49d2fae572b881b123a85ffa21595f36 + Digest = RIPEMD160 Input = "abcdefghijklmnopqrstuvwxyz" Output = f71c27109c692c1b56bbdceb5b9d2865b3708dbc + Digest = RIPEMD160 Input = "abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq" Output = 12a053384a9c0c88e405a06c27dcf49ada62eb2b + Digest = RIPEMD160 Input = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789" Output = b0e20b6e3116640286ed3a87a5713079b21f5189 + Digest = RIPEMD160 Input = "12345678901234567890123456789012345678901234567890123456789012345678901234567890" Output = 9b752e45573d4b39f4dbd3323cab82bf63326bfb @@ -174,27 +187,35 @@ Output = 9b752e45573d4b39f4dbd3323cab82bf63326bfb Digest = whirlpool Input = "" Output = 19FA61D75522A4669B44E39C1D2E1726C530232130D407F89AFEE0964997F7A73E83BE698B288FEBCF88E3E03C4F0757EA8964E59B63D93708B138CC42A66EB3 + Digest = whirlpool Input = "a" Output = 8ACA2602792AEC6F11A67206531FB7D7F0DFF59413145E6973C45001D0087B42D11BC645413AEFF63A42391A39145A591A92200D560195E53B478584FDAE231A + Digest = whirlpool Input = "abc" Output = 4E2448A4C6F486BB16B6562C73B4020BF3043E3A731BCE721AE1B303D97E6D4C7181EEBDB6C57E277D0E34957114CBD6C797FC9D95D8B582D225292076D4EEF5 + Digest = whirlpool Input = "message digest" Output = 378C84A4126E2DC6E56DCC7458377AAC838D00032230F53CE1F5700C0FFB4D3B8421557659EF55C106B4B52AC5A4AAA692ED920052838F3362E86DBD37A8903E + Digest = whirlpool Input = "abcdefghijklmnopqrstuvwxyz" Output = F1D754662636FFE92C82EBB9212A484A8D38631EAD4238F5442EE13B8054E41B08BF2A9251C30B6A0B8AAE86177AB4A6F68F673E7207865D5D9819A3DBA4EB3B + Digest = whirlpool Input = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789" Output = DC37E008CF9EE69BF11F00ED9ABA26901DD7C28CDEC066CC6AF42E40F82F3A1E08EBA26629129D8FB7CB57211B9281A65517CC879D7B962142C65F5A7AF01467 + Digest = whirlpool Input = "12345678901234567890123456789012345678901234567890123456789012345678901234567890" Output = 466EF18BABB0154D25B9D38A6414F5C08784372BCCB204D6549C4AFADB6014294D5BD8DF2A6C44E538CD047B2681A51A2C60481E88C5A20B2C2A80CF3A9A083B + Digest = whirlpool Input = "abcdbcdecdefdefgefghfghighijhijk" Output = 2A987EA40F917061F5D6F0A0E4644F488A7A5A52DEEE656207C562F988E95C6916BDC8031BC5BE1B7B947639FE050B56939BAAA0ADFF9AE6745B7B181C3BE3FD + Digest = whirlpool Input = "aaaaaaaaaa" Count = 100000 @@ -2342,71 +2363,85 @@ Algorithm = SHA1 Input = "Sample message for keylen=blocklen" Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F Output = 5FD596EE78D5553C8FF4E72D266DFD192366DA29 + MAC = HMAC Algorithm = SHA1 Input = "Sample message for keylen An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Fri Apr 28 18:50:50 2017 From: no-reply at appveyor.com (AppVeyor) Date: Fri, 28 Apr 2017 18:50:50 +0000 Subject: [openssl-commits] Build completed: openssl OpenSSL_1_1_0-stable.10017 Message-ID: <20170428185049.12026.17193.99A92A42@appveyor.com> An HTML attachment was scrubbed... URL: From rsalz at openssl.org Fri Apr 28 18:52:58 2017 From: rsalz at openssl.org (Rich Salz) Date: Fri, 28 Apr 2017 18:52:58 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493405578.336820.12585.nullmailer@dev.openssl.org> The branch master has been updated via 595b2a42375427a254ad5a8c85870efea839a9b9 (commit) from 5cc977619181d5dd68fba7ec6e185550f824a6db (commit) - Log ----------------------------------------------------------------- commit 595b2a42375427a254ad5a8c85870efea839a9b9 Author: Rich Salz Date: Fri Apr 28 14:14:59 2017 -0400 Check fflush on BIO_ctrl call Bug found and fix suggested by Julian R?th. Push error if fflush fails Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3266) ----------------------------------------------------------------------- Summary of changes: crypto/bio/bss_file.c | 13 +++++++++---- crypto/err/err.c | 1 + include/openssl/err.h | 1 + 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/crypto/bio/bss_file.c b/crypto/bio/bss_file.c index adf935f..ae9867e 100644 --- a/crypto/bio/bss_file.c +++ b/crypto/bio/bss_file.c @@ -190,6 +190,7 @@ static long file_ctrl(BIO *b, int cmd, long num, void *ptr) FILE *fp = (FILE *)b->ptr; FILE **fpp; char p[4]; + int st; switch (cmd) { case BIO_C_FILE_SEEK: @@ -317,10 +318,14 @@ static long file_ctrl(BIO *b, int cmd, long num, void *ptr) b->shutdown = (int)num; break; case BIO_CTRL_FLUSH: - if (b->flags & BIO_FLAGS_UPLINK) - UP_fflush(b->ptr); - else - fflush((FILE *)b->ptr); + st = b->flags & BIO_FLAGS_UPLINK + ? UP_fflush(b->ptr) : fflush((FILE *)b->ptr); + if (st == EOF) { + SYSerr(SYS_F_FFLUSH, get_last_sys_error()); + ERR_add_error_data(1, "fflush()"); + BIOerr(BIO_F_FILE_CTRL, ERR_R_SYS_LIB); + ret = 0; + } break; case BIO_CTRL_DUP: ret = 1; diff --git a/crypto/err/err.c b/crypto/err/err.c index d5cad05..f866f2f 100644 --- a/crypto/err/err.c +++ b/crypto/err/err.c @@ -82,6 +82,7 @@ static ERR_STRING_DATA ERR_str_functs[] = { {ERR_PACK(0, SYS_F_GETSOCKOPT, 0), "getsockopt"}, {ERR_PACK(0, SYS_F_GETSOCKNAME, 0), "getsockname"}, {ERR_PACK(0, SYS_F_GETHOSTBYNAME, 0), "gethostbyname"}, + {ERR_PACK(0, SYS_F_FFLUSH, 0), "fflush"}, {0, NULL}, }; diff --git a/include/openssl/err.h b/include/openssl/err.h index 9bbe9e1..29a261c 100644 --- a/include/openssl/err.h +++ b/include/openssl/err.h @@ -159,6 +159,7 @@ typedef struct err_state_st { # define SYS_F_GETSOCKOPT 15 # define SYS_F_GETSOCKNAME 16 # define SYS_F_GETHOSTBYNAME 17 +# define SYS_F_FFLUSH 18 /* reasons */ # define ERR_R_SYS_LIB ERR_LIB_SYS/* 2 */ From rsalz at openssl.org Fri Apr 28 18:53:41 2017 From: rsalz at openssl.org (Rich Salz) Date: Fri, 28 Apr 2017 18:53:41 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1493405621.084832.13953.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via 913d3a644edafee2a20c620e8625e9f3be49f643 (commit) from c4a53021b953e8c279e50b39b561dfda83fa597d (commit) - Log ----------------------------------------------------------------- commit 913d3a644edafee2a20c620e8625e9f3be49f643 Author: Rich Salz Date: Fri Apr 28 14:14:59 2017 -0400 Check fflush on BIO_ctrl call Bug found and fix suggested by Julian R?th. Push error if fflush fails Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3266) (cherry picked from commit 595b2a42375427a254ad5a8c85870efea839a9b9) ----------------------------------------------------------------------- Summary of changes: crypto/bio/bss_file.c | 13 +++++++++---- crypto/err/err.c | 1 + include/openssl/err.h | 1 + 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/crypto/bio/bss_file.c b/crypto/bio/bss_file.c index 6af2d9c..e3d8c0e 100644 --- a/crypto/bio/bss_file.c +++ b/crypto/bio/bss_file.c @@ -186,6 +186,7 @@ static long file_ctrl(BIO *b, int cmd, long num, void *ptr) FILE *fp = (FILE *)b->ptr; FILE **fpp; char p[4]; + int st; switch (cmd) { case BIO_C_FILE_SEEK: @@ -313,10 +314,14 @@ static long file_ctrl(BIO *b, int cmd, long num, void *ptr) b->shutdown = (int)num; break; case BIO_CTRL_FLUSH: - if (b->flags & BIO_FLAGS_UPLINK) - UP_fflush(b->ptr); - else - fflush((FILE *)b->ptr); + st = b->flags & BIO_FLAGS_UPLINK + ? UP_fflush(b->ptr) : fflush((FILE *)b->ptr); + if (st == EOF) { + SYSerr(SYS_F_FFLUSH, get_last_sys_error()); + ERR_add_error_data(1, "fflush()"); + BIOerr(BIO_F_FILE_CTRL, ERR_R_SYS_LIB); + ret = 0; + } break; case BIO_CTRL_DUP: ret = 1; diff --git a/crypto/err/err.c b/crypto/err/err.c index d5cad05..f866f2f 100644 --- a/crypto/err/err.c +++ b/crypto/err/err.c @@ -82,6 +82,7 @@ static ERR_STRING_DATA ERR_str_functs[] = { {ERR_PACK(0, SYS_F_GETSOCKOPT, 0), "getsockopt"}, {ERR_PACK(0, SYS_F_GETSOCKNAME, 0), "getsockname"}, {ERR_PACK(0, SYS_F_GETHOSTBYNAME, 0), "gethostbyname"}, + {ERR_PACK(0, SYS_F_FFLUSH, 0), "fflush"}, {0, NULL}, }; diff --git a/include/openssl/err.h b/include/openssl/err.h index 9bbe9e1..29a261c 100644 --- a/include/openssl/err.h +++ b/include/openssl/err.h @@ -159,6 +159,7 @@ typedef struct err_state_st { # define SYS_F_GETSOCKOPT 15 # define SYS_F_GETSOCKNAME 16 # define SYS_F_GETHOSTBYNAME 17 +# define SYS_F_FFLUSH 18 /* reasons */ # define ERR_R_SYS_LIB ERR_LIB_SYS/* 2 */ From appro at openssl.org Sun Apr 30 13:18:58 2017 From: appro at openssl.org (Andy Polyakov) Date: Sun, 30 Apr 2017 13:18:58 +0000 Subject: [openssl-commits] [openssl] master update Message-ID: <1493558338.830975.24224.nullmailer@dev.openssl.org> The branch master has been updated via 1ff86c5efa946427e20b3504c460e83edbe53905 (commit) via 1e93d619b78832834ae32f5c0c1b0e466267f72d (commit) from 595b2a42375427a254ad5a8c85870efea839a9b9 (commit) - Log ----------------------------------------------------------------- commit 1ff86c5efa946427e20b3504c460e83edbe53905 Author: Andy Polyakov Date: Fri Apr 28 21:14:36 2017 +0200 test/asn1_encode_test.c: test "next negative minimum" corner case. Reviewed-by: Richard Levitte commit 1e93d619b78832834ae32f5c0c1b0e466267f72d Author: Andy Polyakov Date: Fri Apr 28 10:06:35 2017 +0200 asn1/a_int.c: fix "next negative minimum" corner case in c2i_ibuf. "Next" refers to negative minimum "next" to one presentable by given number of bytes. For example, -128 is negative minimum presentable by one byte, and -256 is "next" one. Thanks to Kazuki Yamaguchi for report, GH#3339 Reviewed-by: Rich Salz Reviewed-by: Richard Levitte ----------------------------------------------------------------------- Summary of changes: crypto/asn1/a_int.c | 17 ++++++++++++++--- test/asn1_encode_test.c | 10 ++++++++++ 2 files changed, 24 insertions(+), 3 deletions(-) diff --git a/crypto/asn1/a_int.c b/crypto/asn1/a_int.c index e154343..217650a 100644 --- a/crypto/asn1/a_int.c +++ b/crypto/asn1/a_int.c @@ -167,10 +167,21 @@ static size_t c2i_ibuf(unsigned char *b, int *pneg, } return 1; } - if (p[0] == 0 || p[0] == 0xFF) + + pad = 0; + if (p[0] == 0) { pad = 1; - else - pad = 0; + } else if (p[0] == 0xFF) { + size_t i; + + /* + * Special case [of "one less minimal negative" for given length]: + * if any other bytes non zero it was padded, otherwise not. + */ + for (pad = 0, i = 1; i < plen; i++) + pad |= p[i]; + pad = pad != 0 ? 1 : 0; + } /* reject illegal padding: first two octets MSB can't match */ if (pad && (neg == (p[1] & 0x80))) { ASN1err(ASN1_F_C2I_IBUF, ASN1_R_ILLEGAL_PADDING); diff --git a/test/asn1_encode_test.c b/test/asn1_encode_test.c index 7d762ae..0c3a196 100644 --- a/test/asn1_encode_test.c +++ b/test/asn1_encode_test.c @@ -41,6 +41,9 @@ static unsigned char t_one[] = { static unsigned char t_one_neg[] = { 0xff }; +static unsigned char t_minus_256[] = { + 0xff, 0x00 +}; static unsigned char t_longundef[] = { 0x7f, 0xff, 0xff, 0xff }; @@ -99,6 +102,7 @@ static TEST_CUSTOM_DATA test_custom_data[] = { CUSTOM_DATA(t_longundef), CUSTOM_DATA(t_one), CUSTOM_DATA(t_one_neg), + CUSTOM_DATA(t_minus_256), CUSTOM_DATA(t_9bytes_1), CUSTOM_DATA(t_8bytes_1), CUSTOM_DATA(t_8bytes_2), @@ -200,6 +204,7 @@ static ASN1_LONG_DATA long_expected_32bit[] = { { 0, 0, 0 }, { 0xff, 1, 0x7fffffff }, /* t_longundef */ CUSTOM_EXPECTED_SUCCESS(1, 1), /* t_one */ CUSTOM_EXPECTED_SUCCESS(-1, -1), /* t_one_neg */ + CUSTOM_EXPECTED_SUCCESS(-256, -256), /* t_minus_256 */ CUSTOM_EXPECTED_FAILURE, /* t_9bytes_1 */ CUSTOM_EXPECTED_FAILURE, /* t_8bytes_1 */ CUSTOM_EXPECTED_FAILURE, /* t_8bytes_2 */ @@ -235,6 +240,7 @@ static ASN1_LONG_DATA long_expected_64bit[] = { { 0, 0, 0 }, { 0xff, 1, 0x7fffffff }, /* t_longundef */ CUSTOM_EXPECTED_SUCCESS(1, 1), /* t_one */ CUSTOM_EXPECTED_SUCCESS(-1, -1), /* t_one_neg */ + CUSTOM_EXPECTED_SUCCESS(-256, -256), /* t_minus_256 */ CUSTOM_EXPECTED_FAILURE, /* t_9bytes_1 */ CUSTOM_EXPECTED_FAILURE, /* t_8bytes_1 */ CUSTOM_EXPECTED_SUCCESS(LONG_MAX, LONG_MAX), /* t_8bytes_2 */ @@ -287,6 +293,7 @@ static ASN1_INT32_DATA int32_expected[] = { CUSTOM_EXPECTED_SUCCESS(ASN1_LONG_UNDEF, ASN1_LONG_UNDEF), /* t_zero */ CUSTOM_EXPECTED_SUCCESS(1, 1), /* t_one */ CUSTOM_EXPECTED_SUCCESS(-1, -1), /* t_one_neg */ + CUSTOM_EXPECTED_SUCCESS(-256, -256), /* t_minus_256 */ CUSTOM_EXPECTED_FAILURE, /* t_9bytes_1 */ CUSTOM_EXPECTED_FAILURE, /* t_8bytes_1 */ CUSTOM_EXPECTED_FAILURE, /* t_8bytes_2 */ @@ -334,6 +341,7 @@ static ASN1_UINT32_DATA uint32_expected[] = { CUSTOM_EXPECTED_SUCCESS(ASN1_LONG_UNDEF, ASN1_LONG_UNDEF), /* t_zero */ CUSTOM_EXPECTED_SUCCESS(1, 1), /* t_one */ CUSTOM_EXPECTED_FAILURE, /* t_one_neg (illegal negative value) */ + CUSTOM_EXPECTED_FAILURE, /* t_minus_256 (illegal negative value) */ CUSTOM_EXPECTED_FAILURE, /* t_9bytes_1 */ CUSTOM_EXPECTED_FAILURE, /* t_8bytes_1 */ CUSTOM_EXPECTED_FAILURE, /* t_8bytes_2 */ @@ -381,6 +389,7 @@ static ASN1_INT64_DATA int64_expected[] = { CUSTOM_EXPECTED_SUCCESS(ASN1_LONG_UNDEF, ASN1_LONG_UNDEF), /* t_zero */ CUSTOM_EXPECTED_SUCCESS(1, 1), /* t_one */ CUSTOM_EXPECTED_SUCCESS(-1, -1), /* t_one_neg */ + CUSTOM_EXPECTED_SUCCESS(-256, -256), /* t_minus_256 */ CUSTOM_EXPECTED_FAILURE, /* t_9bytes_1 */ CUSTOM_EXPECTED_FAILURE, /* t_8bytes_1 (too large positive) */ CUSTOM_EXPECTED_SUCCESS(INT64_MAX, INT64_MAX), /* t_8bytes_2 */ @@ -429,6 +438,7 @@ static ASN1_UINT64_DATA uint64_expected[] = { CUSTOM_EXPECTED_SUCCESS(ASN1_LONG_UNDEF, ASN1_LONG_UNDEF), /* t_zero */ CUSTOM_EXPECTED_SUCCESS(1, 1), /* t_one */ CUSTOM_EXPECTED_FAILURE, /* t_one_neg (illegal negative value) */ + CUSTOM_EXPECTED_FAILURE, /* t_minus_256 (illegal negative value) */ CUSTOM_EXPECTED_FAILURE, /* t_9bytes_1 */ CUSTOM_EXPECTED_SUCCESS((uint64_t)INT64_MAX+1, (uint64_t)INT64_MAX+1), /* t_8bytes_1 */ From appro at openssl.org Sun Apr 30 13:22:49 2017 From: appro at openssl.org (Andy Polyakov) Date: Sun, 30 Apr 2017 13:22:49 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_1_0-stable update Message-ID: <1493558569.539055.28294.nullmailer@dev.openssl.org> The branch OpenSSL_1_1_0-stable has been updated via d3d51adc87137fec7472a7e741490622ce725671 (commit) from 913d3a644edafee2a20c620e8625e9f3be49f643 (commit) - Log ----------------------------------------------------------------- commit d3d51adc87137fec7472a7e741490622ce725671 Author: Andy Polyakov Date: Fri Apr 28 10:06:35 2017 +0200 asn1/a_int.c: fix "next negative minimum" corner case in c2i_ibuf. "Next" refers to negative minimum "next" to one presentable by given number of bytes. For example, -128 is negative minimum presentable by one byte, and -256 is "next" one. Thanks to Kazuki Yamaguchi for report, GH#3339 Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (cherry picked from commit 1e93d619b78832834ae32f5c0c1b0e466267f72d) ----------------------------------------------------------------------- Summary of changes: crypto/asn1/a_int.c | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/crypto/asn1/a_int.c b/crypto/asn1/a_int.c index e154343..217650a 100644 --- a/crypto/asn1/a_int.c +++ b/crypto/asn1/a_int.c @@ -167,10 +167,21 @@ static size_t c2i_ibuf(unsigned char *b, int *pneg, } return 1; } - if (p[0] == 0 || p[0] == 0xFF) + + pad = 0; + if (p[0] == 0) { pad = 1; - else - pad = 0; + } else if (p[0] == 0xFF) { + size_t i; + + /* + * Special case [of "one less minimal negative" for given length]: + * if any other bytes non zero it was padded, otherwise not. + */ + for (pad = 0, i = 1; i < plen; i++) + pad |= p[i]; + pad = pad != 0 ? 1 : 0; + } /* reject illegal padding: first two octets MSB can't match */ if (pad && (neg == (p[1] & 0x80))) { ASN1err(ASN1_F_C2I_IBUF, ASN1_R_ILLEGAL_PADDING); From rsalz at openssl.org Sun Apr 30 14:11:30 2017 From: rsalz at openssl.org (Rich Salz) Date: Sun, 30 Apr 2017 14:11:30 +0000 Subject: [openssl-commits] [openssl] OpenSSL_1_0_2-stable update Message-ID: <1493561490.886430.4140.nullmailer@dev.openssl.org> The branch OpenSSL_1_0_2-stable has been updated via 13f70ae2a9734b8eedea337aa947a75d27ed8320 (commit) from de46e8246bf30f9d8a6b8a66b37f8bf63115aeb6 (commit) - Log ----------------------------------------------------------------- commit 13f70ae2a9734b8eedea337aa947a75d27ed8320 Author: Rich Salz Date: Sun Apr 30 10:11:07 2017 -0400 Check fflush on BIO_ctrl call Bug found and fix suggested by Julian R?th. Push error if fflush fails Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/3266) (cherry picked from commit 595b2a42375427a254ad5a8c85870efea839a9b9) Reviewed-by: Andy Polyakov (Merged from https://github.com/openssl/openssl/pull/3348) ----------------------------------------------------------------------- Summary of changes: crypto/bio/bss_file.c | 13 +++++++++---- crypto/err/err.c | 1 + crypto/err/err.h | 1 + 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/crypto/bio/bss_file.c b/crypto/bio/bss_file.c index abdcf4e..0cf67e5 100644 --- a/crypto/bio/bss_file.c +++ b/crypto/bio/bss_file.c @@ -287,6 +287,7 @@ static long MS_CALLBACK file_ctrl(BIO *b, int cmd, long num, void *ptr) FILE *fp = (FILE *)b->ptr; FILE **fpp; char p[4]; + int st; switch (cmd) { case BIO_C_FILE_SEEK: @@ -427,10 +428,14 @@ static long MS_CALLBACK file_ctrl(BIO *b, int cmd, long num, void *ptr) b->shutdown = (int)num; break; case BIO_CTRL_FLUSH: - if (b->flags & BIO_FLAGS_UPLINK) - UP_fflush(b->ptr); - else - fflush((FILE *)b->ptr); + st = b->flags & BIO_FLAGS_UPLINK + ? UP_fflush(b->ptr) : fflush((FILE *)b->ptr); + if (st == EOF) { + SYSerr(SYS_F_FFLUSH, get_last_sys_error()); + ERR_add_error_data(1, "fflush()"); + BIOerr(BIO_F_FILE_CTRL, ERR_R_SYS_LIB); + ret = 0; + } break; case BIO_CTRL_DUP: ret = 1; diff --git a/crypto/err/err.c b/crypto/err/err.c index 52dc9a5..0b1fcfc 100644 --- a/crypto/err/err.c +++ b/crypto/err/err.c @@ -172,6 +172,7 @@ static ERR_STRING_DATA ERR_str_functs[] = { # endif {ERR_PACK(0, SYS_F_OPENDIR, 0), "opendir"}, {ERR_PACK(0, SYS_F_FREAD, 0), "fread"}, + {ERR_PACK(0, SYS_F_FFLUSH, 0), "fflush"}, {0, NULL}, }; diff --git a/crypto/err/err.h b/crypto/err/err.h index 585aa8b..f423656 100644 --- a/crypto/err/err.h +++ b/crypto/err/err.h @@ -258,6 +258,7 @@ typedef struct err_state_st { # define SYS_F_WSASTARTUP 9/* Winsock stuff */ # define SYS_F_OPENDIR 10 # define SYS_F_FREAD 11 +# define SYS_F_FFLUSH 18 /* reasons */ # define ERR_R_SYS_LIB ERR_LIB_SYS/* 2 */ From no-reply at appveyor.com Sun Apr 30 17:05:21 2017 From: no-reply at appveyor.com (AppVeyor) Date: Sun, 30 Apr 2017 17:05:21 +0000 Subject: [openssl-commits] Build failed: openssl 1.0.1977 Message-ID: <20170430170512.27839.43834.41FD86C1@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Sun Apr 30 17:06:05 2017 From: no-reply at appveyor.com (AppVeyor) Date: Sun, 30 Apr 2017 17:06:05 +0000 Subject: [openssl-commits] Build failed: openssl master.10027 Message-ID: <20170430170550.125723.38699.9D5265EB@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Sun Apr 30 17:49:04 2017 From: no-reply at appveyor.com (AppVeyor) Date: Sun, 30 Apr 2017 17:49:04 +0000 Subject: [openssl-commits] Build completed: openssl 1.0.1978 Message-ID: <20170430174904.35410.90527.9EBA9CB8@appveyor.com> An HTML attachment was scrubbed... URL: From no-reply at appveyor.com Sun Apr 30 17:49:10 2017 From: no-reply at appveyor.com (AppVeyor) Date: Sun, 30 Apr 2017 17:49:10 +0000 Subject: [openssl-commits] Build completed: openssl master.10028 Message-ID: <20170430174910.4583.73114.206DBD24@appveyor.com> An HTML attachment was scrubbed... URL: