From patchwork Mon May 29 03:03:54 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sunyang Wu X-Patchwork-Id: 127652 X-Patchwork-Delegate: gakhil@marvell.com Return-Path: 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 3805B42BCA; Mon, 29 May 2023 05:04:18 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 0A8D1410DD; Mon, 29 May 2023 05:04:18 +0200 (CEST) Received: from APC01-TYZ-obe.outbound.protection.outlook.com (mail-tyzapc01on2080.outbound.protection.outlook.com [40.107.117.80]) by mails.dpdk.org (Postfix) with ESMTP id 01925410D7 for ; Mon, 29 May 2023 05:04:16 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=lzybdOYumILu6Mc8S4kaPf3Te20iho9of5m12yp8nynDaDQyk/sPtDsNT7RvNfBDYnLrGHWv0EMXoVgy3IJ6K4xohKECiLvslPSxeafja1z66ysAjV2agMjhOiGt2LzvOD4m+ALclUpurYDYJyYveKYJUy6fJQiydgxjMuvz4whuZwKq7xuFsxwapixrHxWgVS3GY83MSCSlZYl0JVg4CLwKvlHMKB3dZKPV0iWMVRSQtKJHFdzPTXanPAttigfTIfZ0BtjJUbx9DMqP3iYEQrUTsaqEW9bsRsjsSUmHPsBxQ4MVO+wccST1iCbQShiPi0IoSrI6ceYjOfyugrg3QQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ZEn/m4S5vTRBFAFzNGTjmsePPbzLA1A4OAK8OHZLTFQ=; b=boZwzVOVm978YUdK4qtLbEEsj7dzaZU5gbM/I6xj+t18ZcyHWxmkIdCIszoyaLuVx6O4Mbr5DJ/T4TLJX9aIftC1jTBI6rMtUFVgIXYy2O9pQB3HpMkCguUrkonjU9Na/cgKSEUMCGK8gdenxc9+PPTOAYwh0/B5JyFzOwwK3iyFC8KdBWJrjHe/TD5iQ8lwulDIKibxFOZFzP6KqYynN1d2RutXyUkvQXsGRind7ZnE3ehWv5j8l4cs3/gWjfHe6luUkxnIqzanBsBwIk66bqPM83smEdJm4176bkWVanlpQG0/l+FSkSrXegRezm+OEyI7L8CeCS0UBi/hYfhyCw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=jaguarmicro.com; dmarc=pass action=none header.from=jaguarmicro.com; dkim=pass header.d=jaguarmicro.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=jaguarmicro.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZEn/m4S5vTRBFAFzNGTjmsePPbzLA1A4OAK8OHZLTFQ=; b=Xz1uIqaTYpckaE794HBJ4GhtPDaQmGdeha1bd/tmH0sA+O0MTDvRgKBBYcDdOzyVmfxcWJ4+qjtJxBS1kyhmHBRtbZZooWitacvqmESNlNa3MQYUNwGNmRnICmLkRfBWncpHE3gzY9T/O1ZtEIZM6ixEDu4ZLNyiEjp3QYUy993ulJlROs+1y3aFK0N0PGSX7mRZjKiFIS+YFgCNymg4mlmkafMpI/KdFQI07m9iM1gGm20AGuZwV5KX05PJb8WLSLUJPh2aCTDvDv3zXzc+x+ECAm0rt11SXYLrUyk7/Jy7LrZKGmszo+CTtUV5ah71zcYIUq1xXSnIPoleHF6bRQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=jaguarmicro.com; Received: from TY0PR06MB5563.apcprd06.prod.outlook.com (2603:1096:400:328::14) by SEYPR06MB5765.apcprd06.prod.outlook.com (2603:1096:101:ba::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.22; Mon, 29 May 2023 03:04:12 +0000 Received: from TY0PR06MB5563.apcprd06.prod.outlook.com ([fe80::d13f:abd4:563b:337c]) by TY0PR06MB5563.apcprd06.prod.outlook.com ([fe80::d13f:abd4:563b:337c%6]) with mapi id 15.20.6433.018; Mon, 29 May 2023 03:04:12 +0000 From: Sunyang Wu To: dev@dpdk.org Cc: kai.ji@intel.com, gakhil@marvell.com Subject: [PATCH v4 1/2] cryptodev: support SM3_HMAC,SM4_CFB and SM4_OFB Date: Mon, 29 May 2023 11:03:54 +0800 Message-Id: <20230529030355.38428-1-sunyang.wu@jaguarmicro.com> X-Mailer: git-send-email 2.19.0.rc0.windows.1 X-ClientProxiedBy: SI1PR02CA0054.apcprd02.prod.outlook.com (2603:1096:4:1f5::13) To TY0PR06MB5563.apcprd06.prod.outlook.com (2603:1096:400:328::14) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: TY0PR06MB5563:EE_|SEYPR06MB5765:EE_ X-MS-Office365-Filtering-Correlation-Id: 0236c5a7-fdc6-45de-1c10-08db5ff160eb X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: plX1AAESQlDymaCekWpUPiw7l5aQZnscaJYWdzlzMoJSkH1rJxdt0XxqmZ4wpAWK2352ArxtElGTRSUAcSiYu4XGm6gmB3Up+ywO/sSuxuVasfWjDuFSDN+oSCKcFtR8yQm0Gh88Vvm8NNHd6GX1TSGXglqVLZUUwcd8UsvKomHB5DCBDP0D0h6Jkz2zDradPmZwn3zUGs0Py66pV/n3TQbuukwcKUWKc76sPMxt+mxWTOExas3ktrdEzpz3NstT9feihTmXArZF5G/tQUVhiOnG9aW9InBDJUf4/2R3omzTSuR0ISdCiZcnwfzSXddBa76SHq/QSYoLO1KdfPBAJ6Dewn060JMeYeuRCNz1TjEUtG6Mkd8s48J3EdInudtqVvyddSRw/NscUjvOWYpQa0V2CONnN2rtEWMJSKdAOZSjWqb0gMch+NQdDcgwng43t1TCvAgfqs6fm2WzrtEMEnQlVo7mmRzSuj/OsRIH7sgHuasHLvF554IsX5fB3GsmILNzhipz82s9slYCt2Eetzt2XTbTV+t4XDva5r0LRrLsqNGRYUE4vY8nyVFvlhU8keV5NhFZ0r1ACHsZzepTaxfLP4XPCPZwbBA2GdNpsy0hxA9uIol/1S4TE90nWwQu X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:TY0PR06MB5563.apcprd06.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(136003)(39830400003)(346002)(376002)(396003)(366004)(451199021)(6486002)(41300700001)(52116002)(86362001)(4326008)(6916009)(6666004)(316002)(66476007)(66556008)(36756003)(66946007)(44832011)(5660300002)(186003)(2906002)(1076003)(6506007)(6512007)(2616005)(26005)(83380400001)(38100700002)(38350700002)(478600001)(8936002)(8676002); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: GNa4PIFuVto1lgf7+pH6Uq0KyP3D3Ow8Fc88wKjj5W3m01QQHiiuO+rK5/yJiLcYbrgh1GUcRcAEAP4rPzhgmwsvJ3N/9Y+V9+QGXaE947IgDLJoSBmHEypN44SSH1AYKpd1CIw+WkCL1MQDRmk+BlaLyIYkdSHW4KyCMjOZiYhWELtvXHZS5lNuBEhTNvqX2XvVsdL4YrHhTRH949KWjSjn66Fd+oxN7rB1ibvmHEKHK7v8x/JVaAuFUL5iELYyLIsA0YYzQVX43UjUp75fZ78eB6/xGhLfTZcNZnH1rZPzJQrDS90eowAueiCo/xZRRzjhUcA89J+9SDAELaxnwVDf5C0gAWGzQKJNrlmviF+xnYIhT2MRj4NVf/zpW3oB89c4t+HSgW641veADFckgofUfKQBa6m2Q5+yznhNDjeFV1InPe3ZamGP8v47weh5J0q0xZz4Ias9nSWDUEI09HznRcsweW3CSu9fJy8+cq08kmufkRwOExunL/bLhP2dgW/CAkNtCMl+8Cq5at49aWuV9dt4GmpkmYBrWXeIVKtZ9XPqq/rwmnyl8hUckn0zIRxVHGEu/1fbISKFdYQzu8bFa7bM29cdlmqWSvAiBeB5FKjLoZlobELZs6IvWpQlvYgX61gQZMEJa8Fijx9Actp8TXgTG7cKMxzXAotQxUg7qdscH6Fa7DMsrLDU3/CwTrgSF3/iyLXfxngcro4Ss+E0SzD6s5/id+FcPS69GKDGvi8g6+ZMwNh7pGRWV56vA5pqHohGClHkCjWEd/e99NBKK62NzyxGjql4jtyC548JKUVdszUNcgU9W5Lmz8v455ActdzAS0aRPhsxm46fCyNG3sCXdXURfWGZHW/tk5fklXSsgOiVAY7uxjb2TXMcb73KKbZ49FsQ4uiI/ZKZwthA5IzV8gnPIzFUDY4nrI8v/yMiPS6u37Mr1clk972rQAHcSpuM0lLdf6qaAXV2Ny4Ubf/yyqpyMFKiDzQyn676gbJ5QtFwlkAj0ag4gE1HgZNK7RkkrJbkl4KnWcpaYiy0Pygolw5E3yJTAJAyhCoUPK9brK7rckFHU9SVhSlsOq2O8JXuCdzYFIU8f/cQK66qK9sJa4nlD+gQQmTa3ih9HeHEHrGJfeEbT5VbU+CpaCeRBfDnSkAy1MNplC4GjZzGlXElle8opjWS9yNI2xZZ/iwHoz/xPCrqQ+1+paR9dNsAYsFhVADnZA0J4m4HOUEsRg7nbM+DsDiyd9nkoUoy+YV5PRj1NdiXWNVExDjjUtSjvFCh4vFepnN1bql6U1MYpkZdakgYATY7YRH9xITzSj/QrX121utEh/Np6Rmo6VjATim/ADh5Vre84HRuLkbCOnrnVOb7GGfy0CbZqt2bklDNmGzNei+r4dEZl4YL8HalKYAN+hhulTNv74HTs9Q4/Ll6lIm3AeS95/ieI3uQzZ5gwtfiPC8uwyxOOEZhDkPemd2A3gIK8QTfH62URrWQl36WsJ5Ec9m45ofw1e5FXbWYD1sA+IX0hFucN7xk9m4nRe8MU5ZgUpf8z9EBV/6bPfFXPdWv3TCzUMP/uYsN94dZlzycBfQr9a3CqzvgjofA+5T4TjaW/Do6Idju6Q== X-OriginatorOrg: jaguarmicro.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0236c5a7-fdc6-45de-1c10-08db5ff160eb X-MS-Exchange-CrossTenant-AuthSource: TY0PR06MB5563.apcprd06.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 May 2023 03:04:12.3456 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 1e45a5c2-d3e1-46b3-a0e6-c5ebf6d8ba7b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 7Dz5tupu15NaWpAJ54cRYlhTtUgBPXSRg410L86qvgdI8AyPXH24krHnbnX9uDTPYdoGsbUHRFR/37eBHS70w9prjbPsSusUPfQCbPPfseM= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SEYPR06MB5765 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Add SM3_HMAC/SM4_CFB/SM4_OFB support in DPDK. Signed-off-by: Sunyang Wu --- doc/guides/cryptodevs/features/default.ini | 3 +++ doc/guides/rel_notes/release_23_07.rst | 5 +++++ lib/cryptodev/rte_crypto_sym.h | 8 +++++++- lib/cryptodev/rte_cryptodev.c | 5 ++++- 4 files changed, 19 insertions(+), 2 deletions(-) diff --git a/doc/guides/cryptodevs/features/default.ini b/doc/guides/cryptodevs/features/default.ini index 523da0cfa8..8f54d4a2a5 100644 --- a/doc/guides/cryptodevs/features/default.ini +++ b/doc/guides/cryptodevs/features/default.ini @@ -64,6 +64,8 @@ ZUC EEA3 = SM4 ECB = SM4 CBC = SM4 CTR = +SM4 CFB = +SM4 OFB = ; ; Supported authentication algorithms of a default crypto driver. @@ -99,6 +101,7 @@ SHA3_384 HMAC = SHA3_512 = SHA3_512 HMAC = SM3 = +SM3 HMAC = SHAKE_128 = SHAKE_256 = diff --git a/doc/guides/rel_notes/release_23_07.rst b/doc/guides/rel_notes/release_23_07.rst index a9b1293689..405b34c6d2 100644 --- a/doc/guides/rel_notes/release_23_07.rst +++ b/doc/guides/rel_notes/release_23_07.rst @@ -55,6 +55,11 @@ New Features Also, make sure to start the actual text at the margin. ======================================================= +* **Added new algorithms to cryptodev.** + + * Added symmetric hash algorithm SM3-HMAC. + * Added symmetric cipher algorithm ShangMi 4 (SM4) in CFB and OFB modes. + Removed Items ------------- diff --git a/lib/cryptodev/rte_crypto_sym.h b/lib/cryptodev/rte_crypto_sym.h index b43174dbec..152d40623f 100644 --- a/lib/cryptodev/rte_crypto_sym.h +++ b/lib/cryptodev/rte_crypto_sym.h @@ -172,8 +172,12 @@ enum rte_crypto_cipher_algorithm { /**< ShangMi 4 (SM4) algorithm in ECB mode */ RTE_CRYPTO_CIPHER_SM4_CBC, /**< ShangMi 4 (SM4) algorithm in CBC mode */ - RTE_CRYPTO_CIPHER_SM4_CTR + RTE_CRYPTO_CIPHER_SM4_CTR, /**< ShangMi 4 (SM4) algorithm in CTR mode */ + RTE_CRYPTO_CIPHER_SM4_OFB, + /**< ShangMi 4 (SM4) algorithm in OFB mode */ + RTE_CRYPTO_CIPHER_SM4_CFB + /**< ShangMi 4 (SM4) algorithm in CFB mode */ }; /** Cipher algorithm name strings */ @@ -381,6 +385,8 @@ enum rte_crypto_auth_algorithm { /**< 128 bit SHAKE algorithm. */ RTE_CRYPTO_AUTH_SHAKE_256, /**< 256 bit SHAKE algorithm. */ + RTE_CRYPTO_AUTH_SM3_HMAC, + /** < HMAC using ShangMi 3 (SM3) algorithm */ }; /** Authentication algorithm name strings */ diff --git a/lib/cryptodev/rte_cryptodev.c b/lib/cryptodev/rte_cryptodev.c index a96114b2da..4ff7046e97 100644 --- a/lib/cryptodev/rte_cryptodev.c +++ b/lib/cryptodev/rte_cryptodev.c @@ -127,7 +127,9 @@ crypto_cipher_algorithm_strings[] = { [RTE_CRYPTO_CIPHER_ZUC_EEA3] = "zuc-eea3", [RTE_CRYPTO_CIPHER_SM4_ECB] = "sm4-ecb", [RTE_CRYPTO_CIPHER_SM4_CBC] = "sm4-cbc", - [RTE_CRYPTO_CIPHER_SM4_CTR] = "sm4-ctr" + [RTE_CRYPTO_CIPHER_SM4_CTR] = "sm4-ctr", + [RTE_CRYPTO_CIPHER_SM4_CFB] = "sm4-cfb", + [RTE_CRYPTO_CIPHER_SM4_OFB] = "sm4-ofb" }; /** @@ -227,6 +229,7 @@ crypto_auth_algorithm_strings[] = { [RTE_CRYPTO_AUTH_SNOW3G_UIA2] = "snow3g-uia2", [RTE_CRYPTO_AUTH_ZUC_EIA3] = "zuc-eia3", [RTE_CRYPTO_AUTH_SM3] = "sm3", + [RTE_CRYPTO_AUTH_SM3_HMAC] = "sm3-hmac", [RTE_CRYPTO_AUTH_SHAKE_128] = "shake-128", [RTE_CRYPTO_AUTH_SHAKE_256] = "shake-256",