Message ID | 20220520055445.40063-1-arkadiuszx.kusztal@intel.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 28674A0503; Fri, 20 May 2022 09:02:31 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id BFCDF40156; Fri, 20 May 2022 09:02:30 +0200 (CEST) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id BB6A740151 for <dev@dpdk.org>; Fri, 20 May 2022 09:02:29 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1653030149; x=1684566149; h=from:to:cc:subject:date:message-id; bh=bqd7TbBTqv/XG2p0VwZLWF4IoMcRw1FU4PrGJSrEIRE=; b=ZyIxasyACK6zuMo5N2m1CRWM6ccMrm1SZc80We9mIABRJM1unH2DOWZB YzhUUyFmhOg5hC8cmVOSMJnUhLhPfbnzm7z7whb/gvgRmYnyaeMjbDkzZ mt4nZaGfisjgEcH1Qkp/lJow3CbOPfPENT0EA5zYxc5PpBpRENoiw0MP4 Zq3hsImErpGoTc9Gzf1lIWRFCsNDUL5lhTN6vzPST9ot26nld5HU3Dhh3 IzL2VmZtC4nxupvLVvfxCTnKmndJalfdd+4eYjnw5Y18tb2HskZSjwzQ7 VVjQD7Ip+MniICTrm9F+nIEWLQWFRMZidy2cgAIKCPXmbkqbXnDTi/6vJ g==; X-IronPort-AV: E=McAfee;i="6400,9594,10352"; a="272219621" X-IronPort-AV: E=Sophos;i="5.91,238,1647327600"; d="scan'208";a="272219621" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 20 May 2022 00:02:28 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.91,238,1647327600"; d="scan'208";a="599057987" Received: from silpixa00399302.ir.intel.com ([10.237.214.136]) by orsmga008.jf.intel.com with ESMTP; 20 May 2022 00:02:26 -0700 From: Arek Kusztal <arkadiuszx.kusztal@intel.com> To: dev@dpdk.org Cc: gakhil@marvell.com, anoobj@marvell.com, roy.fan.zhang@intel.com, Arek Kusztal <arkadiuszx.kusztal@intel.com> Subject: [PATCH 00/40] cryptodev: rsa, dh, ecdh changes Date: Fri, 20 May 2022 06:54:05 +0100 Message-Id: <20220520055445.40063-1-arkadiuszx.kusztal@intel.com> X-Mailer: git-send-email 2.13.6 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org |
Series |
cryptodev: rsa, dh, ecdh changes
|
|
Message
Arkadiusz Kusztal
May 20, 2022, 5:54 a.m. UTC
This patchset introduces some of changes discussed on mailing list for 22.07 release in cryptodev asym. Key changes: - It fixes API for RSA (expescially signature paddings) - Adds Elliptic-Curve Diffie-Hellman - Removes LIST_END enumerators (ABI issue - supressed asym_xform) - Adds Eliiptic-Curve point verification (DH verification - but will be used only for EC) - Adds RSA missing padding fields. - Adds asym op flags - Fixes many API comments (like EC curves) Commits are grouped by functionality, and mostly independent. Arek Kusztal (40): cryptodev: redefine ec group enum cryptodev: remove list end enumerators test/crypto: remove list end enumerators cryptodev: reduce number of comments in asym xform test/crypto: removed asym xform none cryptodev: separate key exchange operation enum crypto/openssl: separate key exchange operation enum test/crypto: separate key exchange operation enum cryptodev: remove unnecessary zero assignement cryptodev: remove comment about using ephemeral key in dsa cryptodev: remove asym crypto next xform crypto/openssl: remove asym crypto next xform test/crypto: remove asym crypto next xform app/test-crypto-perf: remove asym crypto next xform app/test-eventdev: remove asym crypto next xform cryptodev: move dh type from xform to dh op crypto/openssl: move dh type from xform to dh op test/crypto: move dh type from xform to dh op cryptodev: changed order of dh fields cryptodev: add elliptic curve diffie hellman cryptodev: add public key verify option cryptodev: move RSA padding into separate struct crypto/qat: move RSA padding into separate struct crypto/openssl: move RSA padding into separate struct crypto/octeontx: move RSA padding into separate struct crypto/cnxk: move RSA padding into separate struct common/cpt: move RSA padding into separate struct test/crypto: move RSA padding into separate struct cryptodev: add salt length and optional label cryptodev: reduce rsa struct to only necessary fields crypto/qat: reduce rsa struct to only necessary fields crypto/openssl: reduce rsa struct to only necessary fields crypto/octeontx: reduce rsa struct to only necessary fields crypto/cnxk: reduce rsa struct to only necessary fields common/cpt: reduce rsa struct to only necessary fields test/crypto: reduce rsa struct to only necessary fields cryptodev: add asym op flags cryptodev: clarify usage of private key in dh crypto/openssl: generate dh private key test/crypto: added test for dh priv key generation app/test-crypto-perf/cperf_ops.c | 1 - app/test-eventdev/test_perf_common.c | 1 - app/test/test_cryptodev_asym.c | 117 +++++---- app/test/test_cryptodev_dh_test_vectors.h | 1 - app/test/test_cryptodev_dsa_test_vectors.h | 1 - app/test/test_cryptodev_mod_test_vectors.h | 2 - app/test/test_cryptodev_rsa_test_vectors.h | 2 - app/test/test_event_crypto_adapter.c | 4 - devtools/libabigail.abignore | 2 + drivers/common/cpt/cpt_ucode_asym.h | 12 +- drivers/crypto/cnxk/cnxk_ae.h | 44 ++-- drivers/crypto/octeontx/otx_cryptodev_ops.c | 26 +- drivers/crypto/openssl/rte_openssl_pmd.c | 47 ++-- drivers/crypto/openssl/rte_openssl_pmd_ops.c | 33 +-- drivers/crypto/qat/qat_asym.c | 28 +-- lib/cryptodev/rte_crypto_asym.h | 342 ++++++++++++++++----------- lib/cryptodev/rte_cryptodev.c | 15 +- 17 files changed, 358 insertions(+), 320 deletions(-)
Comments
> This patchset introduces some of changes discussed on mailing list > for 22.07 release in cryptodev asym. > > Key changes: > > - It fixes API for RSA (expescially signature paddings) > - Adds Elliptic-Curve Diffie-Hellman > - Removes LIST_END enumerators (ABI issue - supressed asym_xform) > - Adds Eliiptic-Curve point verification (DH verification - but will be used only for > EC) > - Adds RSA missing padding fields. > - Adds asym op flags > - Fixes many API comments (like EC curves) > > Commits are grouped by functionality, and mostly independent. Please ensure all commits compile individually. Also mark previous versions in patchworks as superseded. > > Arek Kusztal (40): > cryptodev: redefine ec group enum > cryptodev: remove list end enumerators > test/crypto: remove list end enumerators > cryptodev: reduce number of comments in asym xform > test/crypto: removed asym xform none > cryptodev: separate key exchange operation enum > crypto/openssl: separate key exchange operation enum > test/crypto: separate key exchange operation enum > cryptodev: remove unnecessary zero assignement > cryptodev: remove comment about using ephemeral key in dsa > cryptodev: remove asym crypto next xform > crypto/openssl: remove asym crypto next xform > test/crypto: remove asym crypto next xform > app/test-crypto-perf: remove asym crypto next xform > app/test-eventdev: remove asym crypto next xform > cryptodev: move dh type from xform to dh op > crypto/openssl: move dh type from xform to dh op > test/crypto: move dh type from xform to dh op > cryptodev: changed order of dh fields > cryptodev: add elliptic curve diffie hellman > cryptodev: add public key verify option > cryptodev: move RSA padding into separate struct > crypto/qat: move RSA padding into separate struct > crypto/openssl: move RSA padding into separate struct > crypto/octeontx: move RSA padding into separate struct > crypto/cnxk: move RSA padding into separate struct > common/cpt: move RSA padding into separate struct > test/crypto: move RSA padding into separate struct > cryptodev: add salt length and optional label > cryptodev: reduce rsa struct to only necessary fields > crypto/qat: reduce rsa struct to only necessary fields > crypto/openssl: reduce rsa struct to only necessary fields > crypto/octeontx: reduce rsa struct to only necessary fields > crypto/cnxk: reduce rsa struct to only necessary fields > common/cpt: reduce rsa struct to only necessary fields > test/crypto: reduce rsa struct to only necessary fields > cryptodev: add asym op flags > cryptodev: clarify usage of private key in dh > crypto/openssl: generate dh private key > test/crypto: added test for dh priv key generation > > app/test-crypto-perf/cperf_ops.c | 1 - > app/test-eventdev/test_perf_common.c | 1 - > app/test/test_cryptodev_asym.c | 117 +++++---- > app/test/test_cryptodev_dh_test_vectors.h | 1 - > app/test/test_cryptodev_dsa_test_vectors.h | 1 - > app/test/test_cryptodev_mod_test_vectors.h | 2 - > app/test/test_cryptodev_rsa_test_vectors.h | 2 - > app/test/test_event_crypto_adapter.c | 4 - > devtools/libabigail.abignore | 2 + > drivers/common/cpt/cpt_ucode_asym.h | 12 +- > drivers/crypto/cnxk/cnxk_ae.h | 44 ++-- > drivers/crypto/octeontx/otx_cryptodev_ops.c | 26 +- > drivers/crypto/openssl/rte_openssl_pmd.c | 47 ++-- > drivers/crypto/openssl/rte_openssl_pmd_ops.c | 33 +-- > drivers/crypto/qat/qat_asym.c | 28 +-- > lib/cryptodev/rte_crypto_asym.h | 342 ++++++++++++++++----------- > lib/cryptodev/rte_cryptodev.c | 15 +- > 17 files changed, 358 insertions(+), 320 deletions(-) > > -- > 2.13.6
> -----Original Message----- > From: Akhil Goyal <gakhil@marvell.com> > Sent: Friday, May 20, 2022 9:30 AM > To: Kusztal, ArkadiuszX <arkadiuszx.kusztal@intel.com>; dev@dpdk.org > Cc: Anoob Joseph <anoobj@marvell.com>; Zhang, Roy Fan > <roy.fan.zhang@intel.com> > Subject: RE: [EXT] [PATCH 00/40] cryptodev: rsa, dh, ecdh changes > > > This patchset introduces some of changes discussed on mailing list for > > 22.07 release in cryptodev asym. > > > > Key changes: > > > > - It fixes API for RSA (expescially signature paddings) > > - Adds Elliptic-Curve Diffie-Hellman > > - Removes LIST_END enumerators (ABI issue - supressed asym_xform) > > - Adds Eliiptic-Curve point verification (DH verification - but will > > be used only for > > EC) > > - Adds RSA missing padding fields. > > - Adds asym op flags > > - Fixes many API comments (like EC curves) > > > > Commits are grouped by functionality, and mostly independent. > > Please ensure all commits compile individually. > Also mark previous versions in patchworks as superseded. [Arek] - I will send v2 then, and I will fix all technical issues. Please verify if you are fine with changes proposed,. Most of these changes were already proposed in previous patches and in RFCs with no or minor problems found. Second patchset I would like to send contains capability changes and montgormery/Edwards curvers (would be good to have this in this release). > > > > > Arek Kusztal (40): > > cryptodev: redefine ec group enum > > cryptodev: remove list end enumerators > > test/crypto: remove list end enumerators > > cryptodev: reduce number of comments in asym xform > > test/crypto: removed asym xform none > > cryptodev: separate key exchange operation enum > > crypto/openssl: separate key exchange operation enum > > test/crypto: separate key exchange operation enum > > cryptodev: remove unnecessary zero assignement > > cryptodev: remove comment about using ephemeral key in dsa > > cryptodev: remove asym crypto next xform > > crypto/openssl: remove asym crypto next xform > > test/crypto: remove asym crypto next xform > > app/test-crypto-perf: remove asym crypto next xform > > app/test-eventdev: remove asym crypto next xform > > cryptodev: move dh type from xform to dh op > > crypto/openssl: move dh type from xform to dh op > > test/crypto: move dh type from xform to dh op > > cryptodev: changed order of dh fields > > cryptodev: add elliptic curve diffie hellman > > cryptodev: add public key verify option > > cryptodev: move RSA padding into separate struct > > crypto/qat: move RSA padding into separate struct > > crypto/openssl: move RSA padding into separate struct > > crypto/octeontx: move RSA padding into separate struct > > crypto/cnxk: move RSA padding into separate struct > > common/cpt: move RSA padding into separate struct > > test/crypto: move RSA padding into separate struct > > cryptodev: add salt length and optional label > > cryptodev: reduce rsa struct to only necessary fields > > crypto/qat: reduce rsa struct to only necessary fields > > crypto/openssl: reduce rsa struct to only necessary fields > > crypto/octeontx: reduce rsa struct to only necessary fields > > crypto/cnxk: reduce rsa struct to only necessary fields > > common/cpt: reduce rsa struct to only necessary fields > > test/crypto: reduce rsa struct to only necessary fields > > cryptodev: add asym op flags > > cryptodev: clarify usage of private key in dh > > crypto/openssl: generate dh private key > > test/crypto: added test for dh priv key generation > > > > app/test-crypto-perf/cperf_ops.c | 1 - > > app/test-eventdev/test_perf_common.c | 1 - > > app/test/test_cryptodev_asym.c | 117 +++++---- > > app/test/test_cryptodev_dh_test_vectors.h | 1 - > > app/test/test_cryptodev_dsa_test_vectors.h | 1 - > > app/test/test_cryptodev_mod_test_vectors.h | 2 - > > app/test/test_cryptodev_rsa_test_vectors.h | 2 - > > app/test/test_event_crypto_adapter.c | 4 - > > devtools/libabigail.abignore | 2 + > > drivers/common/cpt/cpt_ucode_asym.h | 12 +- > > drivers/crypto/cnxk/cnxk_ae.h | 44 ++-- > > drivers/crypto/octeontx/otx_cryptodev_ops.c | 26 +- > > drivers/crypto/openssl/rte_openssl_pmd.c | 47 ++-- > > drivers/crypto/openssl/rte_openssl_pmd_ops.c | 33 +-- > > drivers/crypto/qat/qat_asym.c | 28 +-- > > lib/cryptodev/rte_crypto_asym.h | 342 ++++++++++++++++----------- > > lib/cryptodev/rte_cryptodev.c | 15 +- > > 17 files changed, 358 insertions(+), 320 deletions(-) > > > > -- > > 2.13.6