Message ID | 20191211092640.107621-1-Jason@zx2c4.com |
---|---|
State | Not Applicable |
Delegated to: | David Miller |
Headers | show |
Series | [1/2] crypto: arm/curve25519 - add arch-specific key generation function | expand |
On Wed, 11 Dec 2019 at 10:27, Jason A. Donenfeld <Jason@zx2c4.com> wrote: > > Somehow this was forgotten when Zinc was being split into oddly shaped > pieces, resulting in linker errors. Zinc has no historical significance here, so it doesn't make sense to keep referring to it in the commit logs. > The x86_64 glue has a specific key > generation implementation, but the Arm one does not. However, it can > still receive the NEON speedups by calling the ordinary DH function > using the base point. > > Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com> With the first sentence dropped, Acked-by: Ard Biesheuvel <ardb@kernel.org> > --- > arch/arm/crypto/curve25519-glue.c | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/arch/arm/crypto/curve25519-glue.c b/arch/arm/crypto/curve25519-glue.c > index f3f42cf3b893..776ae07e0469 100644 > --- a/arch/arm/crypto/curve25519-glue.c > +++ b/arch/arm/crypto/curve25519-glue.c > @@ -38,6 +38,13 @@ void curve25519_arch(u8 out[CURVE25519_KEY_SIZE], > } > EXPORT_SYMBOL(curve25519_arch); > > +void curve25519_base_arch(u8 pub[CURVE25519_KEY_SIZE], > + const u8 secret[CURVE25519_KEY_SIZE]) > +{ > + return curve25519_arch(pub, secret, curve25519_base_point); > +} > +EXPORT_SYMBOL(curve25519_base_arch); > + > static int curve25519_set_secret(struct crypto_kpp *tfm, const void *buf, > unsigned int len) > { > -- > 2.24.0 >
On Wed, Dec 11, 2019 at 10:38 AM Ard Biesheuvel <ard.biesheuvel@linaro.org> wrote: > > On Wed, 11 Dec 2019 at 10:27, Jason A. Donenfeld <Jason@zx2c4.com> wrote: > > > > Somehow this was forgotten when Zinc was being split into oddly shaped > > pieces, resulting in linker errors. > > Zinc has no historical significance here Wow...
On Wed, Dec 11, 2019 at 10:38 AM Ard Biesheuvel <ard.biesheuvel@linaro.org> wrote: > > The x86_64 glue has a specific key > > generation implementation, but the Arm one does not. However, it can > > still receive the NEON speedups by calling the ordinary DH function > > using the base point. > > > > Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com> > > With the first sentence dropped, > > Acked-by: Ard Biesheuvel <ardb@kernel.org> Herbert - can you pick this up for 5.5-rc2 rather than 5.6?
On Wed, Dec 11, 2019 at 10:26:39AM +0100, Jason A. Donenfeld wrote: > Somehow this was forgotten when Zinc was being split into oddly shaped > pieces, resulting in linker errors. The x86_64 glue has a specific key > generation implementation, but the Arm one does not. However, it can > still receive the NEON speedups by calling the ordinary DH function > using the base point. > > Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com> > --- > arch/arm/crypto/curve25519-glue.c | 7 +++++++ > 1 file changed, 7 insertions(+) Patch applied. Thanks.
On Wed, Dec 11, 2019 at 01:07:43PM +0100, Jason A. Donenfeld wrote: > > Herbert - can you pick this up for 5.5-rc2 rather than 5.6? Yes I'll be pushing this patch for 5.5. Cheers,
diff --git a/arch/arm/crypto/curve25519-glue.c b/arch/arm/crypto/curve25519-glue.c index f3f42cf3b893..776ae07e0469 100644 --- a/arch/arm/crypto/curve25519-glue.c +++ b/arch/arm/crypto/curve25519-glue.c @@ -38,6 +38,13 @@ void curve25519_arch(u8 out[CURVE25519_KEY_SIZE], } EXPORT_SYMBOL(curve25519_arch); +void curve25519_base_arch(u8 pub[CURVE25519_KEY_SIZE], + const u8 secret[CURVE25519_KEY_SIZE]) +{ + return curve25519_arch(pub, secret, curve25519_base_point); +} +EXPORT_SYMBOL(curve25519_base_arch); + static int curve25519_set_secret(struct crypto_kpp *tfm, const void *buf, unsigned int len) {
Somehow this was forgotten when Zinc was being split into oddly shaped pieces, resulting in linker errors. The x86_64 glue has a specific key generation implementation, but the Arm one does not. However, it can still receive the NEON speedups by calling the ordinary DH function using the base point. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com> --- arch/arm/crypto/curve25519-glue.c | 7 +++++++ 1 file changed, 7 insertions(+)