<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openbsd/src/lib/libssl/ssl_kex.c, branch OPENBSD_7_9</title>
<subtitle>A mirror of https://github.com/libressl/openbsd.git
</subtitle>
<id>https://git.lua4.win/openbsd/atom?h=OPENBSD_7_9</id>
<link rel='self' href='https://git.lua4.win/openbsd/atom?h=OPENBSD_7_9'/>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/'/>
<updated>2023-07-28T16:02:34+00:00</updated>
<entry>
<title>Also remove ecdh.h use from libssl</title>
<updated>2023-07-28T16:02:34+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2023-07-28T16:02:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=09cee29a76e14d0c5f4001461c835de54ccc47e7'/>
<id>urn:sha1:09cee29a76e14d0c5f4001461c835de54ccc47e7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Switch from get_rfc*() to BN_get_rfc*()</title>
<updated>2023-06-27T11:03:41+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2023-06-27T11:03:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=caaa61144748d1299cef0d9d2a10adb27fbcb73a'/>
<id>urn:sha1:caaa61144748d1299cef0d9d2a10adb27fbcb73a</id>
<content type='text'>
The existence of the public get_rfc*() API is a historic curiosity that may
soon be corrected. We inherited its use and it survived in libssl until now.
Switch to the better named BN_get_rfc*() wrappers.

ok jsing
</content>
</entry>
<entry>
<title>Convert ssl_kex.c to opaque DH</title>
<updated>2022-01-14T09:11:22+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2022-01-14T09:11:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=ee9499fcb1fda226353c92a4cc08ca23480156dd'/>
<id>urn:sha1:ee9499fcb1fda226353c92a4cc08ca23480156dd</id>
<content type='text'>
Stop reaching into DH internals and use the new API functions instead.

ok inoguchi jsing
</content>
</entry>
<entry>
<title>Plumb decode errors through key share parsing code.</title>
<updated>2022-01-11T18:28:41+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2022-01-11T18:28:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=b01ac832c71e4a7870ab8197b2e2ca26d38f2b97'/>
<id>urn:sha1:b01ac832c71e4a7870ab8197b2e2ca26d38f2b97</id>
<content type='text'>
Distinguish between decode errors and other errors, so that we can send
a SSL_AD_DECODE_ERROR alert when appropriate.

Fixes a tlsfuzzer failure, due to it expecting a decode error alert and
not receiving one.

Prompted by anton@

ok tb@
</content>
</entry>
<entry>
<title>Clean up and refactor server side DHE key exchange.</title>
<updated>2021-12-04T14:03:22+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2021-12-04T14:03:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=bf25270f211959971f21e6ed6de4e9e6fb8203df'/>
<id>urn:sha1:bf25270f211959971f21e6ed6de4e9e6fb8203df</id>
<content type='text'>
Provide ssl_kex_generate_dhe_params_auto() which handles DHE key generation
based on parameters determined by the specified key bits. Convert the
existing DHE auto parameter selection code into a function that just tells
us how many key bits to use.

Untangle and rework the server side DHE key exchange to use the ssl_kex_*
functions.

ok inoguchi@ tb@
</content>
</entry>
<entry>
<title>Move the minimum DHE key size check into ssl_kex_peer_params_dhe()</title>
<updated>2021-12-04T13:50:35+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2021-12-04T13:50:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=a7be05548462713cbeb4cf681b6418ae0f41516f'/>
<id>urn:sha1:a7be05548462713cbeb4cf681b6418ae0f41516f</id>
<content type='text'>
ok inoguchi@ tb@
</content>
</entry>
<entry>
<title>Check DH public key in ssl_kex_peer_public_dhe().</title>
<updated>2021-12-04T13:15:10+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2021-12-04T13:15:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=7085fbe2b262f41f046f592ab0de0f4ae40c8f81'/>
<id>urn:sha1:7085fbe2b262f41f046f592ab0de0f4ae40c8f81</id>
<content type='text'>
Call DH_check_pub_key() after decoding the peer public key - this will be
needed for the server DHE key exchange, but also benefits the client.

ok inoguchi@ tb@
</content>
</entry>
<entry>
<title>Align ssl_kex_derive_ecdhe_ecp() with ssl_kex_derive_dhe()</title>
<updated>2021-11-30T18:17:03+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2021-11-30T18:17:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=2a250a033a9bdb22218c22c53a67f785bd319525'/>
<id>urn:sha1:2a250a033a9bdb22218c22c53a67f785bd319525</id>
<content type='text'>
sk is commonly used for a STACK_OF(), so call the shared key simply key.

ok jsing
</content>
</entry>
<entry>
<title>First pass of converting ssl_kex.c to opaque DH.</title>
<updated>2021-11-29T18:48:22+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2021-11-29T18:48:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=1f7e0c6ccb5d82a9f816c1149864931217bcd8a0'/>
<id>urn:sha1:1f7e0c6ccb5d82a9f816c1149864931217bcd8a0</id>
<content type='text'>
Assign the result of BN_dup() and BN_bn2bin() to local BIGNUMs, then
set the factors and pubkey on the dh using DH_set0_{pqg,key}().

A second pass will be done during the upcoming bump.

ok jsing
</content>
</entry>
<entry>
<title>Factor out/rewrite DHE key exchange.</title>
<updated>2021-11-29T16:00:32+00:00</updated>
<author>
<name>jsing</name>
<email></email>
</author>
<published>2021-11-29T16:00:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=5aeff58c90b9e6eb9b7a14343422d754ce0657d7'/>
<id>urn:sha1:5aeff58c90b9e6eb9b7a14343422d754ce0657d7</id>
<content type='text'>
This follows what was done previously for ECDHE EC point key exchange and
will allow for deduplication and further code improvement.

Convert the TLSv1.2 client to use the new DHE key exchange functions.

ok inoguchi@ tb@
</content>
</entry>
</feed>
