<feed xmlns='http://www.w3.org/2005/Atom'>
<title>wireguard-openbsd/lib/libssl/ssl_ciph.c, branch jd/queueboosts</title>
<subtitle>WireGuard implementation for the OpenBSD kernel</subtitle>
<id>https://git.zx2c4.com/wireguard-openbsd/atom/lib/libssl/ssl_ciph.c?h=jd%2Fqueueboosts</id>
<link rel='self' href='https://git.zx2c4.com/wireguard-openbsd/atom/lib/libssl/ssl_ciph.c?h=jd%2Fqueueboosts'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/'/>
<updated>2020-04-19T14:54:14Z</updated>
<entry>
<title>Provide TLSv1.3 cipher suite aliases to match the names used in RFC 8446.</title>
<updated>2020-04-19T14:54:14Z</updated>
<author>
<name>jsing</name>
<email>jsing@openbsd.org</email>
</author>
<published>2020-04-19T14:54:14Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=37c0027064b5050f1d87dbca47f76dd5d193105b'/>
<id>urn:sha1:37c0027064b5050f1d87dbca47f76dd5d193105b</id>
<content type='text'>
ok beck@ inoguchi@ tb@
</content>
</entry>
<entry>
<title>Fix wrapping/indentation.</title>
<updated>2020-04-18T14:41:05Z</updated>
<author>
<name>jsing</name>
<email>jsing@openbsd.org</email>
</author>
<published>2020-04-18T14:41:05Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=a18ccef7adc8ac8c78f73e4dbb803f93c9a24bc2'/>
<id>urn:sha1:a18ccef7adc8ac8c78f73e4dbb803f93c9a24bc2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Tweak previous active cipher suite code.</title>
<updated>2020-04-18T13:47:58Z</updated>
<author>
<name>jsing</name>
<email>jsing@openbsd.org</email>
</author>
<published>2020-04-18T13:47:58Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=8dad4ecb25bf0e42b29ea4d0f0a8096bd6f8c3eb'/>
<id>urn:sha1:8dad4ecb25bf0e42b29ea4d0f0a8096bd6f8c3eb</id>
<content type='text'>
Use a boolean value rather than using a counter, as suggested by tb@
during the previous review.

ok tb@
</content>
</entry>
<entry>
<title>Only include TLSv1.3 cipher suites if there are active cipher suites.</title>
<updated>2020-04-17T17:26:00Z</updated>
<author>
<name>jsing</name>
<email>jsing@openbsd.org</email>
</author>
<published>2020-04-17T17:26:00Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=b081269e8dd6e93000d2b64d7af26e4809cfc8d2'/>
<id>urn:sha1:b081269e8dd6e93000d2b64d7af26e4809cfc8d2</id>
<content type='text'>
Revise the previous so that we only include TLSv1.3 cipher suites if the
cipher rule string resulted in at least one active cipher suite. This more
closely matches OpenSSL behaviour.

Noted and fix tested by schwarze@

ok beck@ tb@
</content>
</entry>
<entry>
<title>Include TLSv1.3 cipher suites unless cipher string references TLSv1.3.</title>
<updated>2020-04-09T17:54:38Z</updated>
<author>
<name>jsing</name>
<email>jsing@openbsd.org</email>
</author>
<published>2020-04-09T17:54:38Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=99d0ff65c9d18b73e204419b876ce289277dae70'/>
<id>urn:sha1:99d0ff65c9d18b73e204419b876ce289277dae70</id>
<content type='text'>
OpenSSL has always taken the approach of enabling almost everything by
default. As a result, if you wanted to run a secure TLS client/server
you had to specify your own "secure" cipher string, rather than being
able to trust the defaults as being sensible and secure. The problem
is that with the introduction of TLSv1.3, most of these "secure" cipher
strings result in the new TLSv1.3 cipher suites being excluded.

The "work around" for this issue in OpenSSL was to add a new TLSv1.3
API (SSL_CTX_set_ciphersuites(), SSL_set_ciphersuites()) and have separate
knobs for the pre-TLSv1.3 and TLSv1.3 cipher suites. This of course means
that every application now needs to call two APIs, but it does mean that
applications that only call SSL_CTX_set_cipher_list()/SSL_set_cipher_list()
cannot remove TLSv1.3 cipher suites and prevent TLSv1.3 from working.

We've taken a different approach and have allowed TLSv1.3 cipher suites
to be manipulated via the existing SSL_set_cipher_list() API. However,
in order to avoid problems with hardcoded cipher strings, change this
behaviour so that we always include TLSv1.3 cipher suites unless the
cipher string has a specific reference to the TLSv1.3 protocol or a
TLSv1.3 cipher suite.

This means that:

  $ openssl ciphers -v TLSv1.2:!TLSv1.3

still gives TLSv1.2 only cipher suites and:

  $ openssl ciphers -v AEAD-CHACHA20-POLY1305-SHA256

only lists a single TLSv1.3 cipher, however:

  $ openssl ciphers -v ECDHE-RSA-AES256-GCM-SHA384

now includes both TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 and all TLSv1.3
cipher suites (which also matches OpenSSL's openssl(1) behaviour).

Issue encountered by kn@ with mumble.

ok tb@
</content>
</entry>
<entry>
<title>Tidy line wrapping and remove an extra blank line.</title>
<updated>2020-04-09T17:24:11Z</updated>
<author>
<name>jsing</name>
<email>jsing@openbsd.org</email>
</author>
<published>2020-04-09T17:24:11Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=b0082fd32695cedb4e14925f69e0e10f17214e9a'/>
<id>urn:sha1:b0082fd32695cedb4e14925f69e0e10f17214e9a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>ssl_aes_is_accelerated() returns a boolean - treat it as such, rather than</title>
<updated>2020-04-09T17:22:52Z</updated>
<author>
<name>jsing</name>
<email>jsing@openbsd.org</email>
</author>
<published>2020-04-09T17:22:52Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=4669ad9c70247d5bc2826634cb526808bd9b9e34'/>
<id>urn:sha1:4669ad9c70247d5bc2826634cb526808bd9b9e34</id>
<content type='text'>
explicitly comparing against a value.
</content>
</entry>
<entry>
<title>Fix SSL_CIPHER_description</title>
<updated>2020-01-26T12:39:16Z</updated>
<author>
<name>inoguchi</name>
<email>inoguchi@openbsd.org</email>
</author>
<published>2020-01-26T12:39:16Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=783b23ad643c94c3b2cb100fdf1d6fcde2fd1abe'/>
<id>urn:sha1:783b23ad643c94c3b2cb100fdf1d6fcde2fd1abe</id>
<content type='text'>
ok jsing@
</content>
</entry>
<entry>
<title>Add strings for SSL_aTLS1_3 and SSL_kTLS1_3 to SSL_CIPHER_description().</title>
<updated>2020-01-24T04:38:12Z</updated>
<author>
<name>jsing</name>
<email>jsing@openbsd.org</email>
</author>
<published>2020-01-24T04:38:12Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=b1b5d3f0646e4456ecfa4aed50369baecda7c272'/>
<id>urn:sha1:b1b5d3f0646e4456ecfa4aed50369baecda7c272</id>
<content type='text'>
Mkaes `openssl ciphers -v` print au and kx values for TLSv1.3 cipher
suites.

ok beck@ tb@
</content>
</entry>
<entry>
<title>Clean up the cipher/digest table mess.</title>
<updated>2019-04-04T16:44:24Z</updated>
<author>
<name>jsing</name>
<email>jsing@openbsd.org</email>
</author>
<published>2019-04-04T16:44:24Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=e58f6cbccfc575d5a35c909de132911b190c623a'/>
<id>urn:sha1:e58f6cbccfc575d5a35c909de132911b190c623a</id>
<content type='text'>
The original implementation allows for libcrypto to be compiled without a
given algorithm and libssl then detects that ciphers or digests are
unavailable so that it can disable the associated cipher suites.

This is unnecessary since we do not compile out algorithms.

ok beck@, tb@ (a while back)
</content>
</entry>
</feed>
