From: Eric Biggers <ebiggers@kernel.org>
To: Hannes Reinecke <hare@suse.de>
Cc: Hannes Reinecke <hare@kernel.org>, Christoph Hellwig <hch@lst.de>,
Keith Busch <kbusch@kernel.org>, Sagi Grimberg <sagi@grimberg.me>,
linux-nvme@lists.infradead.org, linux-crypto@vger.kernel.org
Subject: Re: [PATCH 1/9] crypto,fs: Separate out hkdf_extract() and hkdf_expand()
Date: Wed, 16 Oct 2024 16:27:25 +0000 [thread overview]
Message-ID: <20241016162725.GB3228925@google.com> (raw)
In-Reply-To: <83934544-0e4e-42eb-a15b-8189a46273c7@suse.de>
On Wed, Oct 16, 2024 at 08:40:54AM +0200, Hannes Reinecke wrote:
> On 10/15/24 17:41, Eric Biggers wrote:
> > On Tue, Oct 15, 2024 at 05:05:40PM +0200, Hannes Reinecke wrote:
> > > On 10/14/24 21:38, Eric Biggers wrote:
> > > > On Fri, Oct 11, 2024 at 05:54:22PM +0200, Hannes Reinecke wrote:
> > > > > Separate out the HKDF functions into a separate module to
> > > > > to make them available to other callers.
> > > > > And add a testsuite to the module with test vectors
> > > > > from RFC 5869 to ensure the integrity of the algorithm.
> > > >
> > > > integrity => correctness
> > > >
> > > Okay.
> > >
> > > > > +config CRYPTO_HKDF
> > > > > + tristate
> > > > > + select CRYPTO_SHA1 if !CONFIG_CRYPTO_MANAGER_DISABLE_TESTS
> > > > > + select CRYPTO_SHA256 if !CONFIG_CRYPTO_MANAGER_DISABLE_TESTS
> > > > > + select CRYPTO_HASH2
> > > >
> > > > Any thoughts on including SHA512 tests instead of SHA1, given that SHA1 is
> > > > obsolete and should not be used?
> > > >
> > > Hmm. The original implementation did use SHA1, so I used that.
> > > But sure I can look into changing that.
> >
> > If you're talking about fs/crypto/hkdf.c which is where you're borrowing the
> > code from, that uses SHA512.
> >
> Actually, I was talking about the test vectors themselves. RFC 5869 only
> gives test vectors for SHA1 and SHA256, so that's what I've used.
> I've found additional test vectors for the other functions at
> https://github.com/brycx/Test-Vector-Generation/blob/master/HKDF/hkdf-hmac-sha2-test-vectors.md
> so I'll be using them for adding tests for SHA384 and SHA512 (TLS on
> NVMe-over-TCP is using SHA384, too) and delete the SHA1 ones.
Right, it's an old spec, so that's why it has SHA1. Using SHA512 test vectors
from elsewhere, or generating your own test vectors using a known-good
implementation, would be fine though.
- Eric
next prev parent reply other threads:[~2024-10-16 16:27 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-11 15:54 [PATCHv10 0/9] nvme: implement secure concatenation Hannes Reinecke
2024-10-11 15:54 ` [PATCH 1/9] crypto,fs: Separate out hkdf_extract() and hkdf_expand() Hannes Reinecke
2024-10-14 19:38 ` Eric Biggers
2024-10-15 15:05 ` Hannes Reinecke
2024-10-15 15:41 ` Eric Biggers
2024-10-16 6:40 ` Hannes Reinecke
2024-10-16 16:27 ` Eric Biggers [this message]
2024-10-11 15:54 ` [PATCH 2/9] nvme: add nvme_auth_generate_psk() Hannes Reinecke
2024-10-11 15:54 ` [PATCH 3/9] nvme: add nvme_auth_generate_digest() Hannes Reinecke
2024-10-11 15:54 ` [PATCH 4/9] nvme: add nvme_auth_derive_tls_psk() Hannes Reinecke
2024-10-11 15:54 ` [PATCH 5/9] nvme-keyring: add nvme_tls_psk_refresh() Hannes Reinecke
2024-10-11 15:54 ` [PATCH 6/9] nvme-tcp: request secure channel concatenation Hannes Reinecke
2024-10-11 15:54 ` [PATCH 7/9] nvme-fabrics: reset admin connection for secure concatenation Hannes Reinecke
2024-10-11 15:54 ` [PATCH 8/9] nvmet-tcp: support secure channel concatenation Hannes Reinecke
2024-10-11 15:54 ` [PATCH 9/9] nvmet: add tls_concat and tls_key debugfs entries Hannes Reinecke
-- strict thread matches above, loose matches on Subject: below --
2024-10-18 6:33 [PATCHv11 0/9] nvme: implement secure concatenaion Hannes Reinecke
2024-10-18 6:33 ` [PATCH 1/9] crypto,fs: Separate out hkdf_extract() and hkdf_expand() Hannes Reinecke
2024-08-13 11:15 [PATCHv9 0/9] nvme: implement secure concatenation Hannes Reinecke
2024-08-13 11:15 ` [PATCH 1/9] crypto,fs: Separate out hkdf_extract() and hkdf_expand() Hannes Reinecke
2024-08-27 17:52 ` Eric Biggers
2024-08-29 10:39 ` Hannes Reinecke
2024-08-29 21:54 ` Eric Biggers
2024-08-30 6:13 ` Hannes Reinecke
2024-07-22 14:21 [PATCHv8 0/9] nvme: implement secure concatenation Hannes Reinecke
2024-07-22 14:21 ` [PATCH 1/9] crypto,fs: Separate out hkdf_extract() and hkdf_expand() Hannes Reinecke
2024-07-23 1:36 ` Eric Biggers
2024-07-23 6:24 ` Hannes Reinecke
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=20241016162725.GB3228925@google.com \
--to=ebiggers@kernel.org \
--cc=hare@kernel.org \
--cc=hare@suse.de \
--cc=hch@lst.de \
--cc=kbusch@kernel.org \
--cc=linux-crypto@vger.kernel.org \
--cc=linux-nvme@lists.infradead.org \
--cc=sagi@grimberg.me \
/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).