[openssl-commits] Still FAILED build of OpenSSL branch master with options -d --strict-warnings no-md5
Platform and configuration command: $ uname -a Linux run 4.4.0-119-generic #143-Ubuntu SMP Mon Apr 2 16:08:24 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux $ CC=clang ../openssl/config -d --strict-warnings no-md5 Commit log since last time: a75be9f Improve backwards compat for SSL_get_servername() 45a2353 Fix ossl_shim SNI handling 9d91530 EC GFp ladder 793f19e 00-base-templates.conf: engage x25519-ppc64 module. 8e83072 Add ec/asm/x25519-ppc64.pl module. 70a579a bn/bn_mod.c: harmonize BN_mod_add_quick with original implementation. 06deb93 apps/apps.c: harmonize print_bignum_var output with coding style. b9e54e9 Fix inconsisten use of bit vs bits 9e4c977 Fix a trivial coding style nit in sm2_sign.c feac7a1 Make number of Miller-Rabin tests for a prime tests depend on the security level of the prime 74ee379 Change the number of Miller-Rabin test for DSA generation to 64 Build log ended with (last 100 lines): $ CC=clang ../openssl/config -d --strict-warnings no-md5 Operating system: x86_64-whatever-linux2 Failure! build file wasn't produced. Please read INSTALL and associated NOTES files. You may also have to look over your available compiler tool chain or change your configuration. * Unsupported options: no-md5 $ make clean make: *** No rule to make target 'clean'. Stop. _ openssl-commits mailing list To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-commits
[openssl-commits] Build completed: openssl master.19141
Build openssl master.19141 completed Commit a75be9fd34 by Benjamin Kaduk on 7/26/2018 8:06 PM: Improve backwards compat for SSL_get_servername() Configure your notification preferences _ openssl-commits mailing list To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-commits
[openssl-commits] [openssl] master update
The branch master has been updated via a75be9fd34b5d66f349186f21cd8d063d2fa87a4 (commit) via 45a2353056da3f357a924131578ad0a4a2e5fbb7 (commit) from 9d91530d2d7da1447b7be8631b269599023430e7 (commit) - Log - commit a75be9fd34b5d66f349186f21cd8d063d2fa87a4 Author: Benjamin Kaduk Date: Wed Jul 25 21:00:45 2018 -0500 Improve backwards compat for SSL_get_servername() Commit 1c4aa31d79821dee9be98e915159d52cc30d8403 changed how we process and store SNI information during the handshake, so that a hostname is only saved in the SSL_SESSION structure if that SNI value has actually been negotiated. SSL_get_servername() was adjusted to match, with a new conditional being added to handle the case when the handshake processing is ongoing, and a different location should be consulted for the offered SNI value. This was done in an attempt to preserve the historical behavior of SSL_get_servername(), a function whose behavior only mostly matches its documentation, and whose documentation is both lacking and does not necessarily reflect the actual desired behavior for such an API. Unfortunately, sweeping changes that would bring more sanity to this space are not possible until OpenSSL 1.2.0, for ABI compatibility reasons, so we must attempt to maintain the existing behavior to the extent possible. The above-mentioned commit did not take into account the behavior of SSL_get_servername() during resumption handshakes for TLS 1.2 and prior, where no SNI negotiation is performed. In that case we would not properly parse the incoming SNI and erroneously return NULL as the servername, when instead the logical session is associated with the SNI value cached in the SSL_SESSION. (Note that in some cases an SNI callback may not need to do anything in a TLS 1.2 or prior resumption flow, but we are calling the callbacks and did not provide any guidance that they should no-op if the connection is being resumed, so we must handle this case in a usable fashion.) Update our behavior accordingly to return the session's cached value during the handshake, when resuming. This fixes the boringssl tests. [extended tests] Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/6792) commit 45a2353056da3f357a924131578ad0a4a2e5fbb7 Author: Benjamin Kaduk Date: Wed Jul 25 14:48:30 2018 -0500 Fix ossl_shim SNI handling To start with, actually set an SNI callback (copied from bssl_shim); we weren't actually testing much otherwise (and just happened to have been passing due to buggy libssl behavior prior to commit 1c4aa31d79821dee9be98e915159d52cc30d8403). Also use proper C++ code for handling C strings -- when a C API (SSL_get_servername()) returns NULL instead of a string, special-case that instead of blindly trying to compare NULL against a std::string, and perform the comparsion using the std::string operators instead of falling back to pointer comparison. Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/6792) --- Summary of changes: ssl/ssl_lib.c | 5 - test/ossl_shim/ossl_shim.cc | 21 - 2 files changed, 24 insertions(+), 2 deletions(-) diff --git a/ssl/ssl_lib.c b/ssl/ssl_lib.c index 10a7694..15380e1 100644 --- a/ssl/ssl_lib.c +++ b/ssl/ssl_lib.c @@ -2618,8 +2618,11 @@ const char *SSL_get_servername(const SSL *s, const int type) * peer send" and "what was actually negotiated"; we should have * a clear distinction amongst those three. */ -if (SSL_in_init(s)) +if (SSL_in_init(s)) { +if (s->hit) +return s->session->ext.hostname; return s->ext.hostname; +} return (s->session != NULL && s->ext.hostname == NULL) ? s->session->ext.hostname : s->ext.hostname; } diff --git a/test/ossl_shim/ossl_shim.cc b/test/ossl_shim/ossl_shim.cc index b1067e8..90d1f1e 100644 --- a/test/ossl_shim/ossl_shim.cc +++ b/test/ossl_shim/ossl_shim.cc @@ -459,6 +459,20 @@ static int CustomExtensionParseCallback(SSL *ssl, unsigned extension_value, return 1; } +static int ServerNameCallback(SSL *ssl, int *out_alert, void *arg) { + // SNI must be accessible from the SNI callback. + const TestConfig *config = GetTestConfig(ssl); + const char *server_name = SSL_get_servername(ssl, TLSEXT_NAMETYPE_host_name); + if (server_name == nullptr || + std::string(server_name) != config->expected_server_name) { +fprintf(stderr, "servername mismatch (got %s; want %s)\n", server_name, +config->expected_server_name.c_str()); +return SSL_TLSEXT_ERR_ALERT_FATAL; + } + + return SSL_TLSEXT_ERR_OK; +} + // Connect returns
[openssl-commits] [web] master update
The branch master has been updated via 45331ed59e3bd3c16808ceed54e35a98a3fea79b (commit) from 3c0d5cabf30bc2367a5574b3b9bfd5639396533f (commit) - Log - commit 45331ed59e3bd3c16808ceed54e35a98a3fea79b Author: Rich Salz Date: Thu Jul 26 15:00:58 2018 -0400 Add GeneralName question Reviewed-by: Viktor Dukhovni (Merged from https://github.com/openssl/openssl/pull/64) --- Summary of changes: docs/faq-3-prog.txt | 19 +++ 1 file changed, 19 insertions(+) diff --git a/docs/faq-3-prog.txt b/docs/faq-3-prog.txt index a471f5e..bb6790a 100644 --- a/docs/faq-3-prog.txt +++ b/docs/faq-3-prog.txt @@ -154,6 +154,25 @@ Rules (DER): these uniquely specify how a given structure is encoded. Therefore, because DER is a special case of BER, DER is an acceptable encoding for BER. +* The encoding for GeneralName is wrong; why is the SEQUENCE tag missing? + +In RFC 5280 GeneralName is defined in the module in Appendix A.2, and that +module specifies the use of IMPLICIT tagging. This means that there is not an +explicit SEQUENCE (30) tag following the A0 tag (you just know from the ASN.1 +that what follows the A1 tag is a SEQUENCE). This is in contrast to the value +field within OtherName (test@kerberose-domain.internal), where the tag for +UTF8String (0C) follows the A0 tag, since EXPLICIT tagging is specified for +that particular field. + +You will notice the same thing if you look at other choices within +GeneralName. If you look at the DNS names encoded in the subjectAltName +extension, the 82 tag (corresponding to [2]) is not followed by a tag for +IA5String (22). It is not needed since the ASN.1 indicates that what follows +the 82 tag is an IA5String. However, if the module specified EXPLICIT +encoding, then there would be a 16 tag after the 82 tag. + +(Thanks to David Cooper for this text.) + * I tried to set a cipher list with a valid cipher, but the call fails, why? OpenSSL 1.1.0 introduced the concept of a security level, allowing _ openssl-commits mailing list To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-commits
[openssl-commits] Build failed: openssl master.19140
Build openssl master.19140 failed Commit 9d91530d2d by Billy Brumley on 7/26/2018 5:41 PM: EC GFp ladder Configure your notification preferences _ openssl-commits mailing list To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-commits
[openssl-commits] [openssl] master update
The branch master has been updated via 9d91530d2d7da1447b7be8631b269599023430e7 (commit) from 793f19e47c69558e39c702da75c27e0509baf379 (commit) - Log - commit 9d91530d2d7da1447b7be8631b269599023430e7 Author: Billy Brumley Date: Thu Jul 19 11:16:07 2018 +0300 EC GFp ladder This commit leverages the Montgomery ladder scaffold introduced in #6690 (alongside a specialized Lopez-Dahab ladder for binary curves) to provide a specialized differential addition-and-double implementation to speedup prime curves, while keeping all the features of `ec_scalar_mul_ladder` against SCA attacks. The arithmetic in ladder_pre, ladder_step and ladder_post is auto generated with tooling, from the following formulae: - `ladder_pre`: Formula 3 for doubling from Izu-Takagi "A fast parallel elliptic curve multiplication resistant against side channel attacks", as described at https://hyperelliptic.org/EFD/g1p/auto-shortw-xz.html#doubling-dbl-2002-it-2 - `ladder_step`: differential addition-and-doubling Eq. (8) and (10) from Izu-Takagi "A fast parallel elliptic curve multiplication resistant against side channel attacks", as described at https://hyperelliptic.org/EFD/g1p/auto-shortw-xz.html#ladder-ladd-2002-it-3 - `ladder_post`: y-coordinate recovery using Eq. (8) from Brier-Joye "Weierstrass Elliptic Curves and Side-Channel Attacks", modified to work in projective coordinates. Co-authored-by: Nicola Tuveri Reviewed-by: Andy Polyakov Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/6772) --- Summary of changes: CHANGES | 11 ++- crypto/ec/ec_lcl.h | 13 ++- crypto/ec/ecp_mont.c | 6 +- crypto/ec/ecp_nist.c | 6 +- crypto/ec/ecp_smpl.c | 228 +-- 5 files changed, 249 insertions(+), 15 deletions(-) diff --git a/CHANGES b/CHANGES index cab58c0..7805912 100644 --- a/CHANGES +++ b/CHANGES @@ -9,6 +9,15 @@ Changes between 1.1.0h and 1.1.1 [xx XXX ] + *) Use the new ec_scalar_mul_ladder scaffold to implement a specialized ladder + step for prime curves. The new implementation is based on formulae from + differential addition-and-doubling in homogeneous projective coordinates + from Izu-Takagi "A fast parallel elliptic curve multiplication resistant + against side channel attacks" and Brier-Joye "Weierstrass Elliptic Curves + and Side-Channel Attacks" Eq. (8) for y-coordinate recovery, modified + to work in projective coordinates. + [Billy Bob Brumley, Nicola Tuveri] + *) Change generating and checking of primes so that the error rate of not being prime depends on the intended use based on the size of the input. For larger primes this will result in more rounds of Miller-Rabin. @@ -30,7 +39,7 @@ [Andy Polyakov] *) Use the new ec_scalar_mul_ladder scaffold to implement a specialized ladder - step for binary curves. The new implementation is based on formulas from + step for binary curves. The new implementation is based on formulae from differential addition-and-doubling in mixed Lopez-Dahab projective coordinates, modified to independently blind the operands. [Billy Bob Brumley, Sohaib ul Hassan, Nicola Tuveri] diff --git a/crypto/ec/ec_lcl.h b/crypto/ec/ec_lcl.h index 217392e..c706a84 100644 --- a/crypto/ec/ec_lcl.h +++ b/crypto/ec/ec_lcl.h @@ -301,7 +301,6 @@ struct ec_point_st { * special case */ }; - static ossl_inline int ec_point_is_compat(const EC_POINT *point, const EC_GROUP *group) { @@ -314,7 +313,6 @@ static ossl_inline int ec_point_is_compat(const EC_POINT *point, return 1; } - NISTP224_PRE_COMP *EC_nistp224_pre_comp_dup(NISTP224_PRE_COMP *); NISTP256_PRE_COMP *EC_nistp256_pre_comp_dup(NISTP256_PRE_COMP *); NISTP521_PRE_COMP *EC_nistp521_pre_comp_dup(NISTP521_PRE_COMP *); @@ -394,7 +392,16 @@ int ec_GFp_simple_field_mul(const EC_GROUP *, BIGNUM *r, const BIGNUM *a, int ec_GFp_simple_field_sqr(const EC_GROUP *, BIGNUM *r, const BIGNUM *a, BN_CTX *); int ec_GFp_simple_blind_coordinates(const EC_GROUP *group, EC_POINT *p, - BN_CTX *ctx); +BN_CTX *ctx); +int ec_GFp_simple_ladder_pre(const EC_GROUP *group, + EC_POINT *r, EC_POINT *s, + EC_POINT *p, BN_CTX *ctx); +int ec_GFp_simple_ladder_step(const EC_GROUP *group, + EC_POINT *r, EC_POINT *s, + EC_POINT *p, BN_CTX *ctx); +int ec_GFp_simple_ladder_post(const EC_GROUP *group, +
[openssl-commits] [openssl] OpenSSL_1_1_0-stable update
The branch OpenSSL_1_1_0-stable has been updated via 2f19065bd35dc84492c4c47ff5b706340300866f (commit) via b7862891fed4cfb5ec36a31d35e14b51bf26d01e (commit) from 616153f2f9c07f51212fb5e85170e89a4ebaadbb (commit) - Log - commit 2f19065bd35dc84492c4c47ff5b706340300866f Author: Andy Polyakov Date: Fri Jul 6 15:13:15 2018 +0200 bn/bn_{mont|exp}.c: switch to zero-padded intermediate vectors. Note that exported functions maintain original behaviour, so that external callers won't observe difference. While internally we can now perform Montogomery multiplication on fixed-length vectors, fixed at modulus size. The new functions, bn_to_mont_fixed_top and bn_mul_mont_fixed_top, are declared in bn_int.h, because one can use them even outside bn, e.g. in RSA, DSA, ECDSA... Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/6707) (cherry picked from commit 71883868ea5b33416ae8283bcc38dd2d97e5006b) Resolved conflicts: crypto/bn/bn_exp.c crypto/bn/bn_mont.c crypto/include/internal/bn_int.h commit b7862891fed4cfb5ec36a31d35e14b51bf26d01e Author: Andy Polyakov Date: Fri Jul 6 15:02:29 2018 +0200 bn/bn_lib.c: add BN_FLG_FIXED_TOP flag. The new flag marks vectors that were not treated with bn_correct_top, in other words such vectors are permitted to be zero padded. For now it's BN_DEBUG-only flag, as initial use case for zero-padded vectors would be controlled Montgomery multiplication/exponentiation, not general purpose. For general purpose use another type might be more appropriate. Advantage of this suggestion is that it's possible to back-port it... bn/bn_div.c: fix memory sanitizer problem. bn/bn_sqr.c: harmonize with BN_mul. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/6707) (cherry picked from commit 305b68f1a2b6d4d0aa07a6ab47ac372f067a40bb) Resolved conflicts: crypto/bn/bn_lcl.h --- Summary of changes: crypto/bn/bn_div.c | 1 + crypto/bn/bn_exp.c | 47 ++-- crypto/bn/bn_lcl.h | 21 ++ crypto/bn/bn_lib.c | 15 + crypto/bn/bn_mont.c | 45 -- crypto/bn/bn_sqr.c | 10 ++--- crypto/include/internal/bn_int.h | 11 ++ 7 files changed, 102 insertions(+), 48 deletions(-) diff --git a/crypto/bn/bn_div.c b/crypto/bn/bn_div.c index 5e620b2..aa13ce6 100644 --- a/crypto/bn/bn_div.c +++ b/crypto/bn/bn_div.c @@ -240,6 +240,7 @@ int BN_div(BIGNUM *dv, BIGNUM *rm, const BIGNUM *num, const BIGNUM *divisor, wnum.neg = 0; wnum.d = &(snum->d[loop]); wnum.top = div_n; +wnum.flags = BN_FLG_STATIC_DATA; /* * only needed when BN_ucmp messes up the values between top and max */ diff --git a/crypto/bn/bn_exp.c b/crypto/bn/bn_exp.c index dac3640..a6ad475 100644 --- a/crypto/bn/bn_exp.c +++ b/crypto/bn/bn_exp.c @@ -371,17 +371,17 @@ int BN_mod_exp_mont(BIGNUM *rr, const BIGNUM *a, const BIGNUM *p, ret = 1; goto err; } -if (!BN_to_montgomery(val[0], aa, mont, ctx)) +if (!bn_to_mont_fixed_top(val[0], aa, mont, ctx)) goto err; /* 1 */ window = BN_window_bits_for_exponent_size(bits); if (window > 1) { -if (!BN_mod_mul_montgomery(d, val[0], val[0], mont, ctx)) +if (!bn_mul_mont_fixed_top(d, val[0], val[0], mont, ctx)) goto err; /* 2 */ j = 1 << (window - 1); for (i = 1; i < j; i++) { if (((val[i] = BN_CTX_get(ctx)) == NULL) || -!BN_mod_mul_montgomery(val[i], val[i - 1], d, mont, ctx)) +!bn_mul_mont_fixed_top(val[i], val[i - 1], d, mont, ctx)) goto err; } } @@ -403,19 +403,15 @@ int BN_mod_exp_mont(BIGNUM *rr, const BIGNUM *a, const BIGNUM *p, for (i = 1; i < j; i++) r->d[i] = (~m->d[i]) & BN_MASK2; r->top = j; -/* - * Upper words will be zero if the corresponding words of 'm' were - * 0xfff[...], so decrement r->top accordingly. - */ -bn_correct_top(r); +r->flags |= BN_FLG_FIXED_TOP; } else #endif -if (!BN_to_montgomery(r, BN_value_one(), mont, ctx)) +if (!bn_to_mont_fixed_top(r, BN_value_one(), mont, ctx)) goto err; for (;;) { if (BN_is_bit_set(p, wstart) == 0) { if (!start) { -if (!BN_mod_mul_montgomery(r, r, r, mont, ctx)) +if (!bn_mul_mont_fixed_top(r, r, r, mont, ctx)) goto err; } if (wstart == 0) @@ -446,12 +442,12 @@
[openssl-commits] [openssl] master update
The branch master has been updated via 793f19e47c69558e39c702da75c27e0509baf379 (commit) via 8e8307231014bded6eb9562262ef09a76d4bfe87 (commit) from 70a579ae2f37437a1e02331eeaa84e1b68ba021e (commit) - Log - commit 793f19e47c69558e39c702da75c27e0509baf379 Author: Andy Polyakov Date: Wed Jul 25 10:24:42 2018 +0200 00-base-templates.conf: engage x25519-ppc64 module. Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/6782) commit 8e8307231014bded6eb9562262ef09a76d4bfe87 Author: Andy Polyakov Date: Wed Jul 25 10:24:09 2018 +0200 Add ec/asm/x25519-ppc64.pl module. Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/6782) --- Summary of changes: Configurations/00-base-templates.conf | 2 +- crypto/ec/asm/x25519-ppc64.pl | 824 ++ crypto/ec/build.info | 1 + 3 files changed, 826 insertions(+), 1 deletion(-) create mode 100755 crypto/ec/asm/x25519-ppc64.pl diff --git a/Configurations/00-base-templates.conf b/Configurations/00-base-templates.conf index 4a1645f..516e3cd 100644 --- a/Configurations/00-base-templates.conf +++ b/Configurations/00-base-templates.conf @@ -344,7 +344,7 @@ my %targets=( ppc64_asm => { inherit_from=> [ "ppc32_asm" ], template=> 1, - ec_asm_src => "ecp_nistz256.c ecp_nistz256-ppc64.s", + ec_asm_src => "ecp_nistz256.c ecp_nistz256-ppc64.s x25519-ppc64.s", keccak1600_asm_src => "keccak1600-ppc64.s", }, ); diff --git a/crypto/ec/asm/x25519-ppc64.pl b/crypto/ec/asm/x25519-ppc64.pl new file mode 100755 index 000..3773cb2 --- /dev/null +++ b/crypto/ec/asm/x25519-ppc64.pl @@ -0,0 +1,824 @@ +#! /usr/bin/env perl +# Copyright 2018 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 +# +# +# Written by Andy Polyakov for the OpenSSL +# project. The module is, however, dual licensed under OpenSSL and +# CRYPTOGAMS licenses depending on where you obtain it. For further +# details see http://www.openssl.org/~appro/cryptogams/. +# +# +# X25519 lower-level primitives for PPC64. +# +# July 2018. +# +# Base 2^64 is faster than base 2^51 on pre-POWER8, most notably ~15% +# faster on PPC970/G5. POWER8 on the other hand seems to trip on own +# shoelaces when handling longer carry chains. As base 2^51 has just +# single-carry pairs, it's 25% faster than base 2^64. Since PPC970 is +# pretty old, base 2^64 implementation is not engaged. Comparison to +# compiler-generated code is complicated by the fact that not all +# compilers support 128-bit integers. When compiler doesn't, like xlc, +# this module delivers more than 2x improvement, and when it does, +# from 12% to 30% improvement was measured... + +$flavour = shift; +while (($output=shift) && ($output!~/\w[\w\-]*\.\w+$/)) {} + +$0 =~ m/(.*[\/\\])[^\/\\]+$/; $dir=$1; +( $xlate="${dir}ppc-xlate.pl" and -f $xlate ) or +( $xlate="${dir}../../perlasm/ppc-xlate.pl" and -f $xlate) or +die "can't locate ppc-xlate.pl"; + +open OUT,"| \"$^X\" $xlate $flavour $output"; +*STDOUT=*OUT; + +my $sp = "r1"; +my ($rp,$ap,$bp) = map("r$_",3..5); + +### base 2^64 +if (0) { +my ($bi,$a0,$a1,$a2,$a3,$t0,$t1, $t2,$t3, +$acc0,$acc1,$acc2,$acc3,$acc4,$acc5,$acc6,$acc7) = +map("r$_",(6..12,22..31)); +my $zero = "r0"; +my $FRAME = 16*8; + +$code.=<<___; +.text + +.globl x25519_fe64_mul +.type x25519_fe64_mul,\@function +.align 5 +x25519_fe64_mul: + stdu$sp,-$FRAME($sp) + std r22,`$FRAME-8*10`($sp) + std r23,`$FRAME-8*9`($sp) + std r24,`$FRAME-8*8`($sp) + std r25,`$FRAME-8*7`($sp) + std r26,`$FRAME-8*6`($sp) + std r27,`$FRAME-8*5`($sp) + std r28,`$FRAME-8*4`($sp) + std r29,`$FRAME-8*3`($sp) + std r30,`$FRAME-8*2`($sp) + std r31,`$FRAME-8*1`($sp) + + ld $bi,0($bp) + ld $a0,0($ap) + xor $zero,$zero,$zero + ld $a1,8($ap) + ld $a2,16($ap) + ld $a3,24($ap) + + mulld $acc0,$a0,$bi # a[0]*b[0] + mulhdu $t0,$a0,$bi + mulld $acc1,$a1,$bi # a[1]*b[0] + mulhdu $t1,$a1,$bi + mulld $acc2,$a2,$bi # a[2]*b[0] + mulhdu $t2,$a2,$bi + mulld $acc3,$a3,$bi
[openssl-commits] [openssl] master update
The branch master has been updated via 70a579ae2f37437a1e02331eeaa84e1b68ba021e (commit) from 06deb93286ac5f125fc81ddc9260b9de2311c7f3 (commit) - Log - commit 70a579ae2f37437a1e02331eeaa84e1b68ba021e Author: Andy Polyakov Date: Wed Jul 25 10:29:51 2018 +0200 bn/bn_mod.c: harmonize BN_mod_add_quick with original implementation. New implementation failed to correctly reset r->neg flag. Spotted by OSSFuzz. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/6783) --- Summary of changes: crypto/bn/bn_mod.c | 1 + 1 file changed, 1 insertion(+) diff --git a/crypto/bn/bn_mod.c b/crypto/bn/bn_mod.c index 463d2d6..d8e2e12 100644 --- a/crypto/bn/bn_mod.c +++ b/crypto/bn/bn_mod.c @@ -83,6 +83,7 @@ int bn_mod_add_fixed_top(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, ((volatile BN_ULONG *)tp)[i] = 0; } r->top = mtop; +r->neg = 0; if (tp != storage) OPENSSL_free(tp); _ openssl-commits mailing list To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-commits
[openssl-commits] [openssl] master update
The branch master has been updated via 06deb93286ac5f125fc81ddc9260b9de2311c7f3 (commit) from b9e54e98066c1ff8adab5d68b6c114b14d2f74e5 (commit) - Log - commit 06deb93286ac5f125fc81ddc9260b9de2311c7f3 Author: Andy Polyakov Date: Wed Jul 25 11:13:58 2018 +0200 apps/apps.c: harmonize print_bignum_var output with coding style. Reviewed-by: Rich Salz --- Summary of changes: apps/apps.c | 7 +++ 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/apps/apps.c b/apps/apps.c index 2740275..4090e60 100644 --- a/apps/apps.c +++ b/apps/apps.c @@ -1188,16 +1188,15 @@ void print_bignum_var(BIO *out, const BIGNUM *in, const char *var, { BIO_printf(out, "static unsigned char %s_%d[] = {", var, len); if (BN_is_zero(in)) { -BIO_printf(out, "\n\t0x00"); +BIO_printf(out, "\n0x00"); } else { int i, l; l = BN_bn2bin(in, buffer); for (i = 0; i < l; i++) { -if ((i % 10) == 0) -BIO_printf(out, "\n\t"); +BIO_printf(out, (i % 10) == 0 ? "\n" : " "); if (i < l - 1) -BIO_printf(out, "0x%02X, ", buffer[i]); +BIO_printf(out, "0x%02X,", buffer[i]); else BIO_printf(out, "0x%02X", buffer[i]); } _ openssl-commits mailing list To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-commits
[openssl-commits] [openssl] OpenSSL_1_0_2-stable update
The branch OpenSSL_1_0_2-stable has been updated via d69f31fcc38878769c8c917f8724c5aef10fd847 (commit) from be4e1f79f631e49c76d02fe4644b52f907c374b2 (commit) - Log - commit d69f31fcc38878769c8c917f8724c5aef10fd847 Author: Kurt Roeckx Date: Thu Jul 26 11:10:24 2018 +0200 Fix inconsistent use of bit vs bits Reviewed-by: Tim Hudson GH: #6794 (cherry picked from commit b9e54e98066c1ff8adab5d68b6c114b14d2f74e5) --- Summary of changes: doc/crypto/BN_generate_prime.pod | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/crypto/BN_generate_prime.pod b/doc/crypto/BN_generate_prime.pod index 0079f17..003d123 100644 --- a/doc/crypto/BN_generate_prime.pod +++ b/doc/crypto/BN_generate_prime.pod @@ -92,8 +92,8 @@ probabilistic primality test with B iterations. If B, a number of iterations is used that yields a false positive rate of at most 2^-64 for random input. The error rate depends on the size of the prime and goes down for bigger primes. -The rate is 2^-80 starting at 308 bits, 2^-112 at 852 bit, 2^-128 at 1080 bits, -2^-192 at 3747 bit and 2^-256 at 6394 bit. +The rate is 2^-80 starting at 308 bits, 2^-112 at 852 bits, 2^-128 at 1080 bits, +2^-192 at 3747 bits and 2^-256 at 6394 bits. When the source of the prime is not random or not trusted, the number of checks needs to be much higher to reach the same level of assurance: _ openssl-commits mailing list To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-commits
[openssl-commits] [openssl] OpenSSL_1_1_0-stable update
The branch OpenSSL_1_1_0-stable has been updated via 616153f2f9c07f51212fb5e85170e89a4ebaadbb (commit) from 707efcd64129c8010e192bd209bace0bc6d18ac9 (commit) - Log - commit 616153f2f9c07f51212fb5e85170e89a4ebaadbb Author: Kurt Roeckx Date: Thu Jul 26 11:10:24 2018 +0200 Fix inconsistent use of bit vs bits Reviewed-by: Tim Hudson GH: #6794 (cherry picked from commit b9e54e98066c1ff8adab5d68b6c114b14d2f74e5) --- Summary of changes: doc/crypto/BN_generate_prime.pod | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/crypto/BN_generate_prime.pod b/doc/crypto/BN_generate_prime.pod index 4adc3c8..849df07 100644 --- a/doc/crypto/BN_generate_prime.pod +++ b/doc/crypto/BN_generate_prime.pod @@ -102,8 +102,8 @@ probabilistic primality test with B iterations. If B, a number of iterations is used that yields a false positive rate of at most 2^-64 for random input. The error rate depends on the size of the prime and goes down for bigger primes. -The rate is 2^-80 starting at 308 bits, 2^-112 at 852 bit, 2^-128 at 1080 bits, -2^-192 at 3747 bit and 2^-256 at 6394 bit. +The rate is 2^-80 starting at 308 bits, 2^-112 at 852 bits, 2^-128 at 1080 bits, +2^-192 at 3747 bits and 2^-256 at 6394 bits. When the source of the prime is not random or not trusted, the number of checks needs to be much higher to reach the same level of assurance: _ openssl-commits mailing list To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-commits
[openssl-commits] [openssl] master update
The branch master has been updated via b9e54e98066c1ff8adab5d68b6c114b14d2f74e5 (commit) from 9e4c97774861949f6f987772c0b579fe8a9c7d5a (commit) - Log - commit b9e54e98066c1ff8adab5d68b6c114b14d2f74e5 Author: Kurt Roeckx Date: Thu Jul 26 11:10:24 2018 +0200 Fix inconsisten use of bit vs bits Reviewed-by: Tim Hudson GH: #6794 --- Summary of changes: doc/man3/BN_generate_prime.pod | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/man3/BN_generate_prime.pod b/doc/man3/BN_generate_prime.pod index 4b085e7..7cfa96e 100644 --- a/doc/man3/BN_generate_prime.pod +++ b/doc/man3/BN_generate_prime.pod @@ -103,8 +103,8 @@ probabilistic primality test with B iterations. If B, a number of iterations is used that yields a false positive rate of at most 2^-64 for random input. The error rate depends on the size of the prime and goes down for bigger primes. -The rate is 2^-80 starting at 308 bits, 2^-112 at 852 bit, 2^-128 at 1080 bits, -2^-192 at 3747 bit and 2^-256 at 6394 bit. +The rate is 2^-80 starting at 308 bits, 2^-112 at 852 bits, 2^-128 at 1080 bits, +2^-192 at 3747 bits and 2^-256 at 6394 bits. When the source of the prime is not random or not trusted, the number of checks needs to be much higher to reach the same level of assurance: _ openssl-commits mailing list To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-commits