пт, 26 июл. 2024 г. в 09:14, William Lallemand <wlallem...@irq6.net>:

> On Thu, Jul 25, 2024 at 11:22:25PM +0200, Илья Шипицин wrote:
> > Subject: Re: [ANNOUNCE] haproxy-3.1-dev2
> > чт, 25 июл. 2024 г. в 22:00, Илья Шипицин <chipits...@gmail.com>:
> >
> > >
> > >
> > > чт, 25 июл. 2024 г. в 14:27, William Lallemand <wlallem...@irq6.net>:
> > >
> > >> On Wed, Jul 03, 2024 at 11:51:21PM +0200, William Lallemand wrote:
> > >> > > aws-lc implements chacha20_poly1305 in a different way than
> QuicTLS.
> > >> > > and if that gap is eliminated, it will be a good point to declare
> > >> aws-lc as
> > >> > > a recommended QUIC lib.
> > >> > >
> > >> > > if we compare aws-lc against openssl-1.1 (not quictls), it is
> indeed
> > >> > > matches (maybe except some niche features like async)
> > >> > >
> > >> >
> > >> > BoringSSL, LibreSSL, and AWS-LC uses the EVP_AEAD API, basically we
> > >> would need
> > >> > to use EVP_aead_chacha20_poly1305() instead of
> EVP_chacha20_poly1305(),
> > >> and
> > >> > EVP_aead_chacha20_poly1305() instead of EVP_chacha20() and uses the
> > >> EVP_AEAD
> > >> > functions. IMHO this is not a huge change and this is doable, we
> just
> > >> need to
> > >> > invest some time on it.
> > >> >
> > >> > Regards,
> > >>
> > >> FYI I just push some patches that implements the CHACHA20_POLY1305 for
> > >> QUIC with AWS-LC.
> > >>
> > >
> > > nice, it passes chacha20 test!
> > >
> > >
> > >> We now handle with AWS-LC for QUIC:
> > >> - TLS_AES_128_GCM_SHA256
> > >> - TLS_AES_256_GCM_SHA384
> > >> - TLS_CHACHA20_POLY1305_SHA256
> > >>
> > >> The TLS_AES_128_CCM_SHA256 cipher is not implemented by AWS-LC, and is
> > >> disabled by default in a lot of stack anyway.
> > >>
> > >
> > next point: 0-RTT
> >
> > according to haproxy/include/haproxy/openssl-compat.h at master ·
> > haproxy/haproxy (github.com)
> > <
> https://github.com/haproxy/haproxy/blob/master/include/haproxy/openssl-compat.h#L117-L119
> >
> >
> > 0-RTT support depends on SSL_OP_NO_ANTI_REPLAY (which is not defined for
> > AWS-LC)
> >
> > thus it is not possible to satisfy that condition
> >
> > haproxy/src/quic_ssl.c at master · haproxy/haproxy (github.com)
> > <https://github.com/haproxy/haproxy/blob/master/src/quic_ssl.c#L765-L772
> >
> >
> > AWS-LC (inherited from BoringSSL) supports 0-RTT in its own way not
> > compatible with QuicTLS ((
>
> Yes, I already planned to do it.
>

great!

I ran QUIC Interop on quic-go client:

Run took 0:21:32.237143
+----+------------------------+
|    |        haproxy         |
+----+------------------------+
| go | HDCLRC20MSR3BAL1L2C1C2 |
|    |          EV2           |
|    |          ZU6           |
+----+------------------------+
+----+----------------------+
|    |       haproxy        |
+----+----------------------+
| go | G: 7995 (± 98) kbps  |
|    | C: 4721 (± 182) kbps |
+----+----------------------+



>
> --
> William Lallemand
>

Reply via email to