<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openbsd/src/lib/libcrypto/bn/bn_exp.c, branch OPENBSD_6_8_BASE</title>
<subtitle>A mirror of https://github.com/libressl/openbsd.git
</subtitle>
<id>https://git.lua4.win/openbsd/atom?h=OPENBSD_6_8_BASE</id>
<link rel='self' href='https://git.lua4.win/openbsd/atom?h=OPENBSD_6_8_BASE'/>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/'/>
<updated>2017-05-02T03:59:45+00:00</updated>
<entry>
<title>use freezero() instead of memset/explicit_bzero + free.  Substantially</title>
<updated>2017-05-02T03:59:45+00:00</updated>
<author>
<name>deraadt</name>
<email></email>
</author>
<published>2017-05-02T03:59:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=5904cc0e04409fde39a97e6580535da34eeb4291'/>
<id>urn:sha1:5904cc0e04409fde39a97e6580535da34eeb4291</id>
<content type='text'>
reduces conditional logic (-218, +82).

MOD_EXP_CTIME_MIN_CACHE_LINE_WIDTH cache alignment calculation bn/bn_exp.c
wasn'tt quite right.  Two other tricky bits with ASN1_STRING_FLAG_NDEF and
BN_FLG_STATIC_DATA where the condition cannot be collapsed completely.

Passes regress.  ok beck
</content>
</entry>
<entry>
<title>Send the function codes from the error functions to the bit bucket,</title>
<updated>2017-01-29T17:49:23+00:00</updated>
<author>
<name>beck</name>
<email></email>
</author>
<published>2017-01-29T17:49:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=d1f47bd292f36094480caa49ada36b99a69c59b0'/>
<id>urn:sha1:d1f47bd292f36094480caa49ada36b99a69c59b0</id>
<content type='text'>
as was done earlier in libssl. Thanks inoguchi@ for noticing
libssl had more reacharounds into this.
ok jsing@ inoguchi@
</content>
</entry>
<entry>
<title>Split out BN_div and BN_mod into ct and nonct versions for Internal use.</title>
<updated>2017-01-21T10:38:29+00:00</updated>
<author>
<name>beck</name>
<email></email>
</author>
<published>2017-01-21T10:38:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=55a172a1ed5b0cd8f7de3628fcc2e56df6716d59'/>
<id>urn:sha1:55a172a1ed5b0cd8f7de3628fcc2e56df6716d59</id>
<content type='text'>
ok jsing@
</content>
</entry>
<entry>
<title>Make explicit _ct and _nonct versions of bn_mod_exp funcitons that</title>
<updated>2017-01-21T09:38:59+00:00</updated>
<author>
<name>beck</name>
<email></email>
</author>
<published>2017-01-21T09:38:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=a0a595cda97de2b217b0582cfa601ee4c746bfce'/>
<id>urn:sha1:a0a595cda97de2b217b0582cfa601ee4c746bfce</id>
<content type='text'>
matter for constant time, and make the public interface only used
external to the library.

This moves us to a model where the important things are constant time
versions unless you ask for them not to be, rather than the opposite.
I'll continue with this method by method.

Add regress tests for same.
ok jsing@
</content>
</entry>
<entry>
<title>/usr/bin/unifdef -D MONT_MUL_MOD -D MONT_EXP_WORD -D RECP_MUL_MOD -m bn_exp.c</title>
<updated>2017-01-21T04:34:16+00:00</updated>
<author>
<name>beck</name>
<email></email>
</author>
<published>2017-01-21T04:34:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=31dfbaab5a16857bb52fb54f901acd28b7fd7906'/>
<id>urn:sha1:31dfbaab5a16857bb52fb54f901acd28b7fd7906</id>
<content type='text'>
with some style cleanup after. no binary change
ok jsing@
</content>
</entry>
<entry>
<title>add constant-time MOD_EXP_CTIME_COPY_FROM_PREBUF.</title>
<updated>2016-09-03T17:26:29+00:00</updated>
<author>
<name>bcook</name>
<email></email>
</author>
<published>2016-09-03T17:26:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=b4ded23bb909c13a8816bec41389b6a343fba9db'/>
<id>urn:sha1:b4ded23bb909c13a8816bec41389b6a343fba9db</id>
<content type='text'>
Patch based on OpenSSL commit d7a854c055ff22fb7da80c3b0e7cb08d248591d0

"Performance penalty varies from platform to platform, and even
key length. For rsa2048 sign it was observed to reach almost 10%."

CVE-2016-0702
ok beck@
</content>
</entry>
<entry>
<title>BN_mod_exp_mont_consttime: check for zero modulus.</title>
<updated>2016-09-03T17:21:38+00:00</updated>
<author>
<name>bcook</name>
<email></email>
</author>
<published>2016-09-03T17:21:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=a1bddd1baaaf2f6eb4754140425b09a3b301210f'/>
<id>urn:sha1:a1bddd1baaaf2f6eb4754140425b09a3b301210f</id>
<content type='text'>
Don't dereference d when top is zero.

Original patch from OpenSSL commit d46e946d2603c64df6e1e4f9db0c70baaf1c4c03
ok jsing@
</content>
</entry>
<entry>
<title>BN_mod_exp_mont_consttime: check for zero modulus.</title>
<updated>2016-09-03T14:37:52+00:00</updated>
<author>
<name>bcook</name>
<email></email>
</author>
<published>2016-09-03T14:37:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=f826e0ef7a6d62b2aaaf3475bc001f300d6cd832'/>
<id>urn:sha1:f826e0ef7a6d62b2aaaf3475bc001f300d6cd832</id>
<content type='text'>
Don't dereference |d| when |top| is zero. Also test that various
BIGNUM methods behave correctly on zero/even inputs.

Original patch from OpenSSL commit d46e946d2603c64df6e1e4f9db0c70baaf1c4c03
</content>
</entry>
<entry>
<title>Correct spelling of OPENSSL_cleanse.</title>
<updated>2015-09-10T15:56:26+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2015-09-10T15:56:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=647569a51c1530d10e75e272f0982682f696caa7'/>
<id>urn:sha1:647569a51c1530d10e75e272f0982682f696caa7</id>
<content type='text'>
ok miod@
</content>
</entry>
<entry>
<title>Fix indentation that incorrectly implies a different control flow.</title>
<updated>2015-03-21T08:05:20+00:00</updated>
<author>
<name>doug</name>
<email></email>
</author>
<published>2015-03-21T08:05:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=49c3a24c899173341c1bbdfe1fe50329dc016723'/>
<id>urn:sha1:49c3a24c899173341c1bbdfe1fe50329dc016723</id>
<content type='text'>
The actual control flow is intentional while the indenting is incorrect.
This is intended to be a cosmetic change.

Verified that each of these was part of a KNF commit that wasn't intending
to change behavior.  Also, double checked against the history of changes in
OpenSSL and BoringSSL.

Addresses Coverity CIDs: 78842, 78859, 78863.

ok tedu@
</content>
</entry>
</feed>
