linux-crypto.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Van Leeuwen, Pascal" <pvanleeuwen@rambus.com>
To: Ard Biesheuvel <ardb@kernel.org>,
	"dm-devel@redhat.com" <dm-devel@redhat.com>,
	Milan Broz <gmazyland@gmail.com>
Cc: "linux-crypto@vger.kernel.org" <linux-crypto@vger.kernel.org>,
	"herbert@gondor.apana.org.au" <herbert@gondor.apana.org.au>,
	"ebiggers@kernel.org" <ebiggers@kernel.org>
Subject: RE: [PATCH] crypto: mark unused ciphers as obsolete
Date: Fri, 11 Sep 2020 16:46:18 +0000	[thread overview]
Message-ID: <CY4PR0401MB36522379F8C5AB02D848AAADC3240@CY4PR0401MB3652.namprd04.prod.outlook.com> (raw)
In-Reply-To: <CAMj1kXHOrGoGv6Tse9Vju9mTV_+ks8cUMqx_iSQHPfc+2DVkmw@mail.gmail.com>

> -----Original Message-----
> From: Ard Biesheuvel <ardb@kernel.org>
> Sent: Friday, September 11, 2020 6:30 PM
> To: Van Leeuwen, Pascal <pvanleeuwen@rambus.com>; dm-devel@redhat.com; Milan Broz <gmazyland@gmail.com>
> Cc: linux-crypto@vger.kernel.org; herbert@gondor.apana.org.au; ebiggers@kernel.org
> Subject: Re: [PATCH] crypto: mark unused ciphers as obsolete
>
> <<< External Email >>>
> (cc Milan and dm-devel)
>
> On Fri, 11 Sep 2020 at 19:24, Van Leeuwen, Pascal
> <pvanleeuwen@rambus.com> wrote:
> >
> > > -----Original Message-----
> > > From: linux-crypto-owner@vger.kernel.org <linux-crypto-owner@vger.kernel.org> On Behalf Of Ard Biesheuvel
> > > Sent: Friday, September 11, 2020 4:11 PM
> > > To: linux-crypto@vger.kernel.org
> > > Cc: herbert@gondor.apana.org.au; ebiggers@kernel.org; Ard Biesheuvel <ardb@kernel.org>
> > > Subject: [PATCH] crypto: mark unused ciphers as obsolete
> > >
> > > <<< External Email >>>
> > > We have a few interesting pieces in our cipher museum, which are never
> > > used internally, and were only ever provided as generic C implementations.
> > >
> > > Unfortunately, we cannot simply remove this code, as we cannot be sure
> > > that it is not being used via the AF_ALG socket API, however unlikely.
> > > So let's mark the Anubis, Khazad, SEED and TEA algorithms as obsolete,
> > >
> > Wouldn't the IKE deamon be able to utilize these algorithms through the XFRM API?
> > I'm by no means an expert on the subject, but it looks like the cipher template is
> > provided there directly via XFRM, so it does not need to live in the kernel source.
> > And I know for a fact that SEED is being used for IPsec (and TLS) in Korea.
> >
>
> I have been staring at net/xfrm/xfrm_algo.c, and as far as I can tell,
> algorithms have to be mentioned there in order to be usable. None of
> the ciphers that this patch touches are listed there or anywhere else
> in the kernel.
>
Hmmm ... good point. Wasn't aware XFRM was actively allowing only a subset.
Actually found this commented out code in my Pluto source (kernel_netlink.c):

/*
 * Not yet implemented in Linux kernel xfrm_algo.c
{ SADB_X_EALG_SEEDCBC, "cbc(seed)" },
 */

Go figure.

> > The point being, there are more users to consider beyond "internal" (meaning hard
> > coded in the kernel source in this context?) and AF_ALG.
> >
>
> That is a good point, actually, since dm-crypt could be affected here
> as well, hence the CCs.
>
> Milan (or others): are you aware of any of these ciphers being used
> for dm-crypt?
>
>
> > I'm not aware of any real use cases for Anubis, Khazad and TEA though.
> >
>
> OK, thanks for confirming. Removing those would be a good start.
>
> > > which means they can only be enabled in the build if the socket API is
> > > enabled in the first place.
> > >
> > > Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
> > > ---
> > > Hopefully, I will be able to convince the distro kernel maintainers to
> > > disable CRYPTO_USER_API_ENABLE_OBSOLETE in their v5.10+ builds once the
> > > iwd changes for arc4 make it downstream (Debian already has an updated
> > > version in its unstable distro). With the joint coverage of their QA,
> > > we should be able to confirm that these algos are never used, and
> > > actually remove them altogether.
> > >
> > >  crypto/Kconfig | 4 ++++
> > >  1 file changed, 4 insertions(+)
> > >
> > > diff --git a/crypto/Kconfig b/crypto/Kconfig
> > > index e85d8a059489..fac10143d23f 100644
> > > --- a/crypto/Kconfig
> > > +++ b/crypto/Kconfig
> > > @@ -1185,6 +1185,7 @@ config CRYPTO_AES_PPC_SPE
> > >
> > >  config CRYPTO_ANUBIS
> > >  tristate "Anubis cipher algorithm"
> > > +depends on CRYPTO_USER_API_ENABLE_OBSOLETE
> > >  select CRYPTO_ALGAPI
> > >  help
> > >    Anubis cipher algorithm.
> > > @@ -1424,6 +1425,7 @@ config CRYPTO_FCRYPT
> > >
> > >  config CRYPTO_KHAZAD
> > >  tristate "Khazad cipher algorithm"
> > > +depends on CRYPTO_USER_API_ENABLE_OBSOLETE
> > >  select CRYPTO_ALGAPI
> > >  help
> > >    Khazad cipher algorithm.
> > > @@ -1487,6 +1489,7 @@ config CRYPTO_CHACHA_MIPS
> > >
> > >  config CRYPTO_SEED
> > >  tristate "SEED cipher algorithm"
> > > +depends on CRYPTO_USER_API_ENABLE_OBSOLETE
> > >  select CRYPTO_ALGAPI
> > >  help
> > >    SEED cipher algorithm (RFC4269).
> > > @@ -1613,6 +1616,7 @@ config CRYPTO_SM4
> > >
> > >  config CRYPTO_TEA
> > >  tristate "TEA, XTEA and XETA cipher algorithms"
> > > +depends on CRYPTO_USER_API_ENABLE_OBSOLETE
> > >  select CRYPTO_ALGAPI
> > >  help
> > >    TEA cipher algorithm.
> > > --
> > > 2.17.1
> >
> > Regards,
> > Pascal van Leeuwen
> > Silicon IP Architect Multi-Protocol Engines, Rambus Security
> > Rambus ROTW Holding BV
> > +31-73 6581953
> >
> > Note: The Inside Secure/Verimatrix Silicon IP team was recently acquired by Rambus.
> > Please be so kind to update your e-mail address book with my new e-mail address.
> >
> >
> > ** This message and any attachments are for the sole use of the intended recipient(s). It may contain information that is
> confidential and privileged. If you are not the intended recipient of this message, you are prohibited from printing, copying,
> forwarding or saving it. Please delete the message and attachments and notify the sender immediately. **
> >
> > Rambus Inc.<http://www.rambus.com>

Regards,
Pascal van Leeuwen
Silicon IP Architect Multi-Protocol Engines, Rambus Security
Rambus ROTW Holding BV
+31-73 6581953

Note: The Inside Secure/Verimatrix Silicon IP team was recently acquired by Rambus.
Please be so kind to update your e-mail address book with my new e-mail address.


** This message and any attachments are for the sole use of the intended recipient(s). It may contain information that is confidential and privileged. If you are not the intended recipient of this message, you are prohibited from printing, copying, forwarding or saving it. Please delete the message and attachments and notify the sender immediately. **

Rambus Inc.<http://www.rambus.com>

  reply	other threads:[~2020-09-11 16:47 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-09-11 14:11 [PATCH] crypto: mark unused ciphers as obsolete Ard Biesheuvel
2020-09-11 16:23 ` Van Leeuwen, Pascal
2020-09-11 16:30   ` Ard Biesheuvel
2020-09-11 16:46     ` Van Leeuwen, Pascal [this message]
2020-09-12 10:05     ` Milan Broz
2020-09-18  7:30 ` Herbert Xu

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=CY4PR0401MB36522379F8C5AB02D848AAADC3240@CY4PR0401MB3652.namprd04.prod.outlook.com \
    --to=pvanleeuwen@rambus.com \
    --cc=ardb@kernel.org \
    --cc=dm-devel@redhat.com \
    --cc=ebiggers@kernel.org \
    --cc=gmazyland@gmail.com \
    --cc=herbert@gondor.apana.org.au \
    --cc=linux-crypto@vger.kernel.org \
    /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;
as well as URLs for NNTP newsgroup(s).