From: "Ard Biesheuvel" <ardb@kernel.org>
To: "Dmitry Safonov" <0x7f454c46@gmail.com>,
"Jakub Kicinski" <kuba@kernel.org>
Cc: "Eric Biggers" <ebiggers@kernel.org>,
netdev@vger.kernel.org, linux-crypto@vger.kernel.org,
linux-kernel@vger.kernel.org,
"Eric Dumazet" <edumazet@google.com>,
"Neal Cardwell" <ncardwell@google.com>,
"Kuniyuki Iwashima" <kuniyu@google.com>,
"David S . Miller" <davem@davemloft.net>,
"David Ahern" <dsahern@kernel.org>,
"Paolo Abeni" <pabeni@redhat.com>,
"Simon Horman" <horms@kernel.org>,
"Jason A . Donenfeld" <Jason@zx2c4.com>,
"Herbert Xu" <herbert@gondor.apana.org.au>,
"Dmitry Safonov" <dima@arista.com>
Subject: Re: [PATCH net-next v2 0/5] Reimplement TCP-AO using crypto library
Date: Tue, 28 Apr 2026 07:41:56 +0200 [thread overview]
Message-ID: <c557c50d-95ea-4e72-bff4-587508a0273c@app.fastmail.com> (raw)
In-Reply-To: <CAJwJo6Zh_1V009JSBGwAmR7GWj=2HdG6f=uBxK8krE4B1YrGkA@mail.gmail.com>
On Tue, 28 Apr 2026, at 02:00, Dmitry Safonov wrote:
> On Mon, 27 Apr 2026 at 23:55, Jakub Kicinski <kuba@kernel.org> wrote:
>>
>> On Mon, 27 Apr 2026 20:09:05 +0100 Dmitry Safonov wrote:
>> > I do like these numbers quite much! Yet, as I mentioned in version
>> > 1, removing a fallback for other algorithms' support does not sound
>> > good to me. There are two reasons:
>> > - Ronald P. Bonica (the original RFC5925 author), together with
>> > Tony Li do have an active RFC draft to support the additional
>> > algorithms
>> > [1], potentially in addition to TCP Extended Options [2]
>> > - There is at least one open-source BGP implementation (BIRD) that
>> > allows using the algorithms that you are removing [3]. Without a
>> > deprecation period and communication with at least known open
>> > source users, it implies intentionally breaking them, which I
>> > can't agree with.
>> >
>> > I don't feel like Naking as we don't have any customers using
>> > anything other than the 3 algorithms above (and BGP implementation
>> > is [unfortunately] closed-source, so that would not feel
>> > appropriate even if we had such customers), yet I do feel like it's
>> > worth and appropriate to express my thoughts/concerns.
>>
>> What do you want to happen? You are the maintainer of this code, you
>> don't get so say "i don't want to nack it but also no" :)
>
> Yeah, that's not what I meant. I see value in Eric's contribution, and
> I like getting rid of tcp-sigpool. So, anything but "nack" is not "no"
> :-)
>
>> Like Eric says if there are no real users code can be deleted. Adding
>> deprecation warnings upstream is quite slow, IDK if injecting
>> deprecation warnings to stable has been discussed..
>
> FWIW, I've written to bird's mailing list inviting them to this
> thread; in case if they need other algorithms to be supported,
> hopefully that should avoid any breakages on their side. I'm aware
> that ciena and fortinet use tcp-ao too, but I'm less concerned, as
> they aren't open source.
>
Strongly agree with Eric here.
We've been well aware for some time now that the LEGO brick model
doesn't really work that well with crypto, and being able to combine
arbitrary cryptographic primitives to construct your own algorithms from
user space is not a feature, it's a bug.
Sure, you can use HMAC to construct a MAC algorithm from any hash
algorithm. But hashes are typically much more costly in terms of
performance, due to the fact that they need to protect against
collisions. MAC algorithms do not have this requirement, because they
involve a secret key which is used symmetrically, i.e., both for signing
and for authentication. IOW, forging a message to match a given MAC
would require knowledge of the secret key, at which point an attacker
can just use it to sign the message.
This is the reason why more modern algorithms involving MACs use GHASH
or Poly1305 instead (or KMAC256 as Eric suggested), which perform much
better. Even AES-CMAC is not a great choice in this context. But these
algorithms need to be constructed carefully, not just swapped in.
prev parent reply other threads:[~2026-04-28 5:42 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-04-27 17:27 [PATCH net-next v2 0/5] Reimplement TCP-AO using crypto library Eric Biggers
2026-04-27 17:27 ` [PATCH net-next v2 1/5] net/tcp-ao: Drop support for most non-RFC-specified algorithms Eric Biggers
2026-04-27 17:27 ` [PATCH net-next v2 2/5] net/tcp-ao: Use crypto library API instead of crypto_ahash Eric Biggers
2026-04-28 1:24 ` David Laight
2026-04-28 1:35 ` Eric Biggers
2026-04-28 6:34 ` Ard Biesheuvel
2026-04-28 10:10 ` David Laight
2026-04-28 16:38 ` Ard Biesheuvel
2026-04-27 17:27 ` [PATCH net-next v2 3/5] net/tcp-ao: Use stack-allocated MAC and traffic_key buffers Eric Biggers
2026-04-27 17:27 ` [PATCH net-next v2 4/5] net/tcp-ao: Return void from functions that can no longer fail Eric Biggers
2026-04-27 17:27 ` [PATCH net-next v2 5/5] net/tcp: Remove tcp_sigpool Eric Biggers
2026-04-27 19:09 ` [PATCH net-next v2 0/5] Reimplement TCP-AO using crypto library Dmitry Safonov
2026-04-27 20:01 ` Eric Biggers
2026-04-27 23:20 ` Eric Biggers
2026-04-28 16:26 ` Simo Sorce
2026-04-28 17:30 ` Eric Biggers
2026-04-27 22:55 ` Jakub Kicinski
2026-04-28 0:00 ` Dmitry Safonov
2026-04-28 5:41 ` Ard Biesheuvel [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=c557c50d-95ea-4e72-bff4-587508a0273c@app.fastmail.com \
--to=ardb@kernel.org \
--cc=0x7f454c46@gmail.com \
--cc=Jason@zx2c4.com \
--cc=davem@davemloft.net \
--cc=dima@arista.com \
--cc=dsahern@kernel.org \
--cc=ebiggers@kernel.org \
--cc=edumazet@google.com \
--cc=herbert@gondor.apana.org.au \
--cc=horms@kernel.org \
--cc=kuba@kernel.org \
--cc=kuniyu@google.com \
--cc=linux-crypto@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=ncardwell@google.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox