From: Eric Biggers <ebiggers@kernel.org>
To: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: linux-usb <linux-usb@vger.kernel.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
"open list:HARDWARE RANDOM NUMBER GENERATOR CORE"
<linux-crypto@vger.kernel.org>,
Herbert Xu <herbert@gondor.apana.org.au>
Subject: Re: [PATCH v3] wusb: switch to cbcmac transform
Date: Sun, 16 Jun 2019 00:19:51 -0700 [thread overview]
Message-ID: <20190616071951.GC698@sol.localdomain> (raw)
In-Reply-To: <CAKv+Gu_j_y3oSPy8JbTdNYVjzsSw72gM+UcC6+u_WBtw6opX2Q@mail.gmail.com>
On Sun, Jun 16, 2019 at 08:52:32AM +0200, Ard Biesheuvel wrote:
> On Sun, 16 Jun 2019 at 03:20, Eric Biggers <ebiggers@kernel.org> wrote:
> >
> > On Sat, Jun 15, 2019 at 11:17:45AM +0200, Ard Biesheuvel wrote:
> > > The wusb code takes a very peculiar approach at implementing CBC-MAC,
> > > by using plain CBC into a scratch buffer, and taking the output IV
> > > as the MAC.
> > >
> > > We can clean up this code substantially by switching to the cbcmac
> > > shash, as exposed by the CCM template. To ensure that the module is
> > > loaded on demand, add the cbcmac template name as a module alias.
> > >
> > > Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
> > > ---
> > > v3: - add missing #include to fix build error spotted by kbuild test robot
> > > v2: - use finup()/digest() where possible, and process b0+b1 using a single
> > > call to update()
> > > - make 'stv_hsmic_hs' static const and remove comment regarding GCC 4.1
> > >
> > > NOTE: I don't have any hardware to test this, but the built-in selftest
> > > still passes.
> > >
> > > crypto/ccm.c | 1 +
> > > drivers/usb/wusbcore/crypto.c | 169 +++++---------------
> > > 2 files changed, 45 insertions(+), 125 deletions(-)
> > >
> >
> > drivers/usb/wusbcore/Kconfig also needs to be updated:
> >
> > diff --git a/drivers/usb/wusbcore/Kconfig b/drivers/usb/wusbcore/Kconfig
> > index 12e89189ca7d..2ec17d6af1f8 100644
> > --- a/drivers/usb/wusbcore/Kconfig
> > +++ b/drivers/usb/wusbcore/Kconfig
> > @@ -6,9 +6,7 @@ config USB_WUSB
> > tristate "Enable Wireless USB extensions"
> > depends on UWB
> > select CRYPTO
> > - select CRYPTO_BLKCIPHER
> > - select CRYPTO_CBC
> > - select CRYPTO_MANAGER
>
> We'll need this one, as it isn't implied by any of the other ones, and
> cbcmac(aes) will be composed of the ccm template and the aes cipher on
> all architectures except arm64.
>
> > + select CRYPTO_CCM
Are you talking about CRYPTO_MANAGER? One of my recent patches added
'select CRYPTO_MANAGER' to the templates that didn't already select it,
including CCM. See in cryptodev.git:
commit c8a3315a5f691cc4be16421aeb0608495c9a33ba
Author: Eric Biggers <ebiggers@google.com>
Date: Mon May 20 09:49:46 2019 -0700
crypto: make all templates select CRYPTO_MANAGER
So it shouldn't need to be selected here.
- Eric
next prev parent reply other threads:[~2019-06-16 7:19 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-06-15 9:17 [PATCH v3] wusb: switch to cbcmac transform Ard Biesheuvel
2019-06-16 1:20 ` Eric Biggers
2019-06-16 6:52 ` Ard Biesheuvel
2019-06-16 7:19 ` Eric Biggers [this message]
2019-06-16 18:25 ` Ard Biesheuvel
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=20190616071951.GC698@sol.localdomain \
--to=ebiggers@kernel.org \
--cc=ard.biesheuvel@linaro.org \
--cc=gregkh@linuxfoundation.org \
--cc=herbert@gondor.apana.org.au \
--cc=linux-crypto@vger.kernel.org \
--cc=linux-usb@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