<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openbsd/src/lib/libcrypto/ecdsa, branch OPENBSD_7_3_BASE</title>
<subtitle>A mirror of https://github.com/libressl/openbsd.git
</subtitle>
<id>https://git.lua4.win/openbsd/atom?h=OPENBSD_7_3_BASE</id>
<link rel='self' href='https://git.lua4.win/openbsd/atom?h=OPENBSD_7_3_BASE'/>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/'/>
<updated>2023-03-07T09:27:10+00:00</updated>
<entry>
<title>Call BN_free() instead of BN_clear_free().</title>
<updated>2023-03-07T09:27:10+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2023-03-07T09:27:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=19dfe7f484e5739359ee8c102d879d125df916ad'/>
<id>urn:sha1:19dfe7f484e5739359ee8c102d879d125df916ad</id>
<content type='text'>
BN_clear_free() is a wrapper that calls BN_free() - call BN_free() directly
instead.

ok tb@
</content>
</entry>
<entry>
<title>Enforce a lower bound of of EC group order so 80 bits for ECDSA</title>
<updated>2023-03-04T21:39:34+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2023-03-04T21:39:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=7fe659346c2b7c00f6036742f72095b7ba4228d9'/>
<id>urn:sha1:7fe659346c2b7c00f6036742f72095b7ba4228d9</id>
<content type='text'>
This makes sure that the elliptic curve is not completely stupid.
This is conservative enough: the smallest named groups that we support
have an order of 112 bits.

ok beck jsing
</content>
</entry>
<entry>
<title>Cap the number of iterations in ECDSA signing</title>
<updated>2023-03-04T21:37:37+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2023-03-04T21:37:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=baab9c01fb37087a0526edeaef01a30a05bd06a4'/>
<id>urn:sha1:baab9c01fb37087a0526edeaef01a30a05bd06a4</id>
<content type='text'>
ECDSA is essentially the same thing as DSA, except that it is slightly
less stupid. Signing specifies an infinite loop, which is only possible
with arbitrary ECDSA domain parameters. Fortunately, most use of ECDSA
in the wild is based on well-known groups, so it is known a priori that
the loop is not infinite. Still, infinite loops are bad. A retry is
unlikely, 32 retries have a probability of ~2^-8000. So it's pretty
safe to error out.

ok beck jsing
</content>
</entry>
<entry>
<title>spelling fixes; from paul tagliamonte</title>
<updated>2022-12-26T07:18:53+00:00</updated>
<author>
<name>jmc</name>
<email></email>
</author>
<published>2022-12-26T07:18:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=2eb7e5ff6bb69760f9dd4a43e7e3520ebb930120'/>
<id>urn:sha1:2eb7e5ff6bb69760f9dd4a43e7e3520ebb930120</id>
<content type='text'>
i removed the arithmetics -&gt; arithmetic changes, as i felt they
were not clearly correct

ok tb
</content>
</entry>
<entry>
<title>Make header guards of internal headers consistent</title>
<updated>2022-11-26T17:23:18+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2022-11-26T17:23:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=3a1908508efa61f3f77ac8036694af2f920df947'/>
<id>urn:sha1:3a1908508efa61f3f77ac8036694af2f920df947</id>
<content type='text'>
Not all of them, only those that didn't leak into a public header...
Yes.
</content>
</entry>
<entry>
<title>Make internal header file names consistent</title>
<updated>2022-11-26T16:08:57+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2022-11-26T16:08:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=81d98bf600a381a625eb11b39a725b08c0ba547f'/>
<id>urn:sha1:81d98bf600a381a625eb11b39a725b08c0ba547f</id>
<content type='text'>
Libcrypto currently has a mess of *_lcl.h, *_locl.h, and *_local.h names
used for internal headers. Move all these headers we inherited from
OpenSSL to *_local.h, reserving the name *_internal.h for our own code.
Similarly, move dtls_locl.h and ssl_locl.h to dtls_local and ssl_local.h.
constant_time_locl.h is moved to constant_time.h since it's special.

Adjust all .c files in libcrypto, libssl and regress.

The diff is mechanical with the exception of tls13_quic.c, where
#include &lt;ssl_locl.h&gt; was fixed manually.

discussed with jsing,
no objection bcook
</content>
</entry>
<entry>
<title>Stop using CBIGNUM_it internal to libcrypto.</title>
<updated>2022-09-03T16:01:23+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2022-09-03T16:01:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=2b62b98b944c0df9fbd9e41e33ea96b45b98e84b'/>
<id>urn:sha1:2b62b98b944c0df9fbd9e41e33ea96b45b98e84b</id>
<content type='text'>
CBIGNUM_it is supposed to be the "clear bignum" or "secure" bignum - that
is one which zeros its memory after use and ensures that the constant time
flags are set... in LibreSSL we always do both of these things for BIGNUMs,
so just use BIGNUM_it instead.

ok tb@
</content>
</entry>
<entry>
<title>Rework DSA_size() and ECDSA_size()</title>
<updated>2022-08-31T13:01:01+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2022-08-31T13:01:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=5a012dc99251d6861841dbe500e21ff7a4f63ccc'/>
<id>urn:sha1:5a012dc99251d6861841dbe500e21ff7a4f63ccc</id>
<content type='text'>
DSA_size() and ECDSA_size() have a very special hack. They fudge up an
ASN1_INTEGER with a size which is typically &gt; 100 bytes, backed by a
buffer of size 4. This was "fine", however, since they set buf[0] = 0xff,
where the craziness that was i2c_ASN1_INTEGER() only looks at the first
octet (one may then ask why a buffer of size 4 was necessary...).

This changed with the rewrite of i2c_ASN1_INTEGER(), which doesn't
respect this particular hack and rightly assumes that it is fed an
actual ASN1_INTEGER...

Instead, create an appropriate signature and use i2d to determine its
size.

Fixes an out-of-bounds read flagged by ASAN and oss-fuzz.

ok jsing
</content>
</entry>
<entry>
<title>Remove mkerr.pl remnants from LibreSSL</title>
<updated>2022-07-12T14:42:50+00:00</updated>
<author>
<name>kn</name>
<email></email>
</author>
<published>2022-07-12T14:42:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=89e42d5857196a8071fbafb5565388d0e20ec32b'/>
<id>urn:sha1:89e42d5857196a8071fbafb5565388d0e20ec32b</id>
<content type='text'>
This script is not used at all and files are edited by hand instead.
Thus remove misleading comments incl. the obsolete script/config.

Feedback OK jsing tb
</content>
</entry>
<entry>
<title>Replace obj_mac.h with object.h</title>
<updated>2022-06-30T11:14:47+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2022-06-30T11:14:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=b9750dad90805ab9064b083f792c0c680759708a'/>
<id>urn:sha1:b9750dad90805ab9064b083f792c0c680759708a</id>
<content type='text'>
Pointed out by and ok jsing
</content>
</entry>
</feed>
