This series implements ECDSA signature verification for FIT images. The ECDSA code itself is taken from the Kernel. Currently only supported way to specify a ECDSA key is to compile it into the binary using CONFIG_CRYPTO_ECDSA_KEY, taking it from a device tree is not ye supported. Changes since v1: - better split up rsatoc patches - keep engine support around in rsatoc as it is still needed in many cases - Add more cleanup to rsatoc Sascha Hauer (19): errno: include string for EOPNOTSUPP rsatoc: disable deprecated function warnings rsatoc: remove unnecessary function call rsatoc: pass EVP_PKEY around rsatoc: rename rsa_err() to openssl_error() rsatoc: move engine initialization to engine_get_pub_key() rsatoc: cleanup error handling rsatoc: remove unnecessary error check rsatoc: use non deprecated openssl functions to retrieve RSA params rsatoc: check error value of gen_key() rsatoc: rename to keytoc keytoc: add ecdsa support keytoc: Let openssl_error() take a format string keytoc: clarify error messages malloc: implement free_sensitive() Add elliptic curve cryptography (ECC) helper functions crypto: add ECDSA support crypto: make RSA a visible option fit: Add ecdsa support common/Kconfig | 1 - common/dlmalloc.c | 15 + common/image-fit.c | 113 +- common/misc.c | 1 + common/tlsf_malloc.c | 11 + crypto/Kconfig | 28 +- crypto/Makefile | 22 +- crypto/ecc.c | 1661 +++++++++++++++++++++++++++++ crypto/ecc_curve_defs.h | 155 +++ crypto/ecdsa.c | 169 +++ include/asm-generic/barebox.lds.h | 7 + include/crypto/ecc_curve.h | 62 ++ include/crypto/ecdh.h | 83 ++ include/crypto/internal/ecc.h | 278 +++++ include/dma.h | 5 + include/ecdsa.h | 21 + include/linux/slab.h | 5 + include/malloc.h | 1 + scripts/.gitignore | 2 +- scripts/Kconfig | 4 +- scripts/Makefile | 6 +- scripts/Makefile.lib | 12 +- scripts/{rsatoc.c => keytoc.c} | 458 +++++--- test/self/Makefile | 2 +- 24 files changed, 2924 insertions(+), 198 deletions(-) create mode 100644 crypto/ecc.c create mode 100644 crypto/ecc_curve_defs.h create mode 100644 crypto/ecdsa.c create mode 100644 include/crypto/ecc_curve.h create mode 100644 include/crypto/ecdh.h create mode 100644 include/crypto/internal/ecc.h create mode 100644 include/ecdsa.h rename scripts/{rsatoc.c => keytoc.c} (61%) -- 2.39.2