All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v8 0/9] add ECDH and CURVE25519 algorithms support for Kunpeng 930
@ 2021-02-08  9:38 Meng Yu
  2021-02-08  9:38 ` [PATCH v8 1/9] crypto: hisilicon/hpre - add version adapt to new algorithms Meng Yu
                   ` (8 more replies)
  0 siblings, 9 replies; 21+ messages in thread
From: Meng Yu @ 2021-02-08  9:38 UTC (permalink / raw)
  To: herbert, davem, marcel, johan.hedberg, luiz.dentz, tudor.ambarus
  Cc: linux-crypto, xuzaibo, wangzhou1, yumeng18, linux-kernel

1. Move  curve ID from the key into the algorithm name (like 'ecdh-nist-pxxx'
   so we get its tfm like 'crypto_alloc_kpp("ecdh-nist-p256", 0, 0)'),
   in 'crypto/ecc.c' (has been verified by testmgr) and 'crypto/atmel-ecc.c'
   (only compiled, not do test), and modify 'testmgr.c' and 'net/bluetooth/smp.c'
   (only compiled, not do test) to adapt the modification;

2. Add new elliptic(nist-p224, nist-p384, nist-p521) curve parameters
   definitions, and reorder ECDH 'Curves IDs';

3. Add new file 'include/crypto/ecc_curve.h', and move 'struct ecc_point' and
   'struct ecc_curve' definitions to it, also add new APIs 'ecc_get_curveXXX'
   into it, with these APIs, users in kernel tree can get ECDH and
   curve25519 parameters;

4. Add ECDH and CURVE25519 algorithms support for Kunpeng 930.

v7->v8:
- patch #3 and #5: move the curve ID from the key into the algorithm name instead

v6->v7:
- patch #4: add function interface to expose elliptic curve parameters
- patch #4: eliminate warning by 'kernel test robot'
- patch #5: add function interface to expose curve25519 parameters

v5->v6:
- patch #1: add a new patch (the first patch), which is the "depend on" patch before

v4->v5:
- patch #4: delete P-128 and P-320 curve, as the few using case in the kernel

v3 -> v4:
- patch #3: add new, and move ecc_curve params to "include/crypto"

v2 -> v3:
- patch #5: fix sparse warnings
- patch #5: add 'CRYPTO_LIB_CURVE25519_GENERIC' in 'Kconfig'

v1 -> v2:
- patch #5: delete `curve25519_null_point'



Meng Yu (9):
  crypto: hisilicon/hpre - add version adapt to new algorithms
  crypto: hisilicon/hpre - add algorithm type
  crypto: atmel-ecc - move curve_id of ECDH from the key to algorithm
    name
  net/bluetooth: modify ECDH name in 'crypto_alloc_kpp'
  crypto: move curve_id of ECDH to algorithm name
  crypto: add new ecc curve and expose them
  crypto: hisilicon/hpre - add 'ECDH' algorithm
  crypto: add curve25519 params and expose them
  crypto: hisilicon/hpre - add 'CURVE25519' algorithm

 crypto/ecc.c                                |   17 +-
 crypto/ecc.h                                |   37 +-
 crypto/ecc_curve_defs.h                     |  124 +++
 crypto/ecdh.c                               |   72 +-
 crypto/ecdh_helper.c                        |    4 +-
 crypto/testmgr.c                            |   11 +-
 crypto/testmgr.h                            |   32 +-
 drivers/crypto/atmel-ecc.c                  |   14 +-
 drivers/crypto/hisilicon/Kconfig            |    1 +
 drivers/crypto/hisilicon/hpre/hpre.h        |   17 +-
 drivers/crypto/hisilicon/hpre/hpre_crypto.c | 1097 +++++++++++++++++++++++++--
 drivers/crypto/hisilicon/hpre/hpre_main.c   |   12 +-
 drivers/crypto/hisilicon/qm.c               |    4 +-
 drivers/crypto/hisilicon/qm.h               |    4 +-
 drivers/crypto/hisilicon/sec2/sec.h         |    4 +-
 drivers/crypto/hisilicon/sec2/sec_crypto.c  |    4 +-
 drivers/crypto/hisilicon/sec2/sec_crypto.h  |    4 +-
 drivers/crypto/hisilicon/zip/zip.h          |    4 +-
 drivers/crypto/hisilicon/zip/zip_crypto.c   |    4 +-
 include/crypto/ecc_curve.h                  |   60 ++
 include/crypto/ecdh.h                       |    7 +-
 net/bluetooth/ecdh_helper.c                 |    2 -
 net/bluetooth/selftest.c                    |    2 +-
 net/bluetooth/smp.c                         |    6 +-
 24 files changed, 1370 insertions(+), 173 deletions(-)
 create mode 100644 include/crypto/ecc_curve.h

-- 
2.8.1


^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2021-02-19  4:03 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-08  9:38 [PATCH v8 0/9] add ECDH and CURVE25519 algorithms support for Kunpeng 930 Meng Yu
2021-02-08  9:38 ` [PATCH v8 1/9] crypto: hisilicon/hpre - add version adapt to new algorithms Meng Yu
2021-02-08  9:38 ` [PATCH v8 2/9] crypto: hisilicon/hpre - add algorithm type Meng Yu
2021-02-08  9:38 ` [PATCH v8 3/9] crypto: atmel-ecc - move curve_id of ECDH from the key to algorithm name Meng Yu
2021-02-10  4:56   ` Herbert Xu
2021-02-18  2:14     ` yumeng
2021-02-08  9:38 ` [PATCH v8 4/9] net/bluetooth: modify ECDH name in 'crypto_alloc_kpp' Meng Yu
2021-02-08  9:38 ` [PATCH v8 5/9] crypto: move curve_id of ECDH to algorithm name Meng Yu
2021-02-09  3:48   ` kernel test robot
2021-02-09  3:48     ` kernel test robot
2021-02-09  5:33   ` kernel test robot
2021-02-09  5:33     ` kernel test robot
2021-02-08  9:38 ` [PATCH v8 6/9] crypto: add new ecc curve and expose them Meng Yu
2021-02-08  9:38 ` [PATCH v8 7/9] crypto: hisilicon/hpre - add 'ECDH' algorithm Meng Yu
2021-02-10  4:57   ` Herbert Xu
2021-02-18  2:24     ` yumeng
2021-02-18 20:01       ` Herbert Xu
2021-02-19  1:25         ` yumeng
2021-02-19  4:01           ` Herbert Xu
2021-02-08  9:38 ` [PATCH v8 8/9] crypto: add curve25519 params and expose them Meng Yu
2021-02-08  9:38 ` [PATCH v8 9/9] crypto: hisilicon/hpre - add 'CURVE25519' algorithm Meng Yu

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.