This commit: 1) adds Diffie-Hellman verify operation. 2) splits asym_op_type with dh op_type 3) removes next pointer from asym_xform 4) changes enumeration of elliptic curves
Signed-off-by: Arek Kusztal <arkadiuszx.kusz...@intel.com> --- lib/cryptodev/rte_crypto_asym.h | 36 +++++++++++++++++------------------- 1 file changed, 17 insertions(+), 19 deletions(-) diff --git a/lib/cryptodev/rte_crypto_asym.h b/lib/cryptodev/rte_crypto_asym.h index cd24d4b07b..6fbc7b7708 100644 --- a/lib/cryptodev/rte_crypto_asym.h +++ b/lib/cryptodev/rte_crypto_asym.h @@ -43,11 +43,11 @@ rte_crypto_asym_op_strings[]; */ enum rte_crypto_ec_group { RTE_CRYPTO_EC_GROUP_UNKNOWN = 0, - RTE_CRYPTO_EC_GROUP_SECP192R1 = 19, - RTE_CRYPTO_EC_GROUP_SECP224R1 = 21, - RTE_CRYPTO_EC_GROUP_SECP256R1 = 23, - RTE_CRYPTO_EC_GROUP_SECP384R1 = 24, - RTE_CRYPTO_EC_GROUP_SECP521R1 = 25, + RTE_CRYPTO_EC_GROUP_SECP192R1 = 1, + RTE_CRYPTO_EC_GROUP_SECP224R1 = 2, + RTE_CRYPTO_EC_GROUP_SECP256R1 = 3, + RTE_CRYPTO_EC_GROUP_SECP384R1 = 4, + RTE_CRYPTO_EC_GROUP_SECP521R1 = 5, }; /** @@ -109,13 +109,19 @@ enum rte_crypto_asym_op_type { /**< Signature Generation operation */ RTE_CRYPTO_ASYM_OP_VERIFY, /**< Signature Verification operation */ - RTE_CRYPTO_ASYM_OP_PRIVATE_KEY_GENERATE, + RTE_CRYPTO_ASYM_OP_LIST_END +}; + +enum rte_crypto_dh_op_type { + RTE_CRYPTO_DH_OP_INVALID, + RTE_CRYPTO_DH_OP_PRIVATE_KEY_GENERATE, /**< DH Private Key generation operation */ - RTE_CRYPTO_ASYM_OP_PUBLIC_KEY_GENERATE, + RTE_CRYPTO_DH_OP_PUBLIC_KEY_GENERATE, /**< DH Public Key generation operation */ - RTE_CRYPTO_ASYM_OP_SHARED_SECRET_COMPUTE, + RTE_CRYPTO_DH_OP_SHARED_SECRET_COMPUTE, /**< DH Shared Secret compute operation */ - RTE_CRYPTO_ASYM_OP_LIST_END + RTE_CRYPTO_DH_OP_PUBLIC_KEY_VERIFY, + /**< DH verify correctness of public key */ }; /** @@ -256,7 +262,7 @@ struct rte_crypto_modinv_xform { * */ struct rte_crypto_dh_xform { - enum rte_crypto_asym_op_type type; + enum rte_crypto_dh_op_type type; /**< Setup xform for key generate or shared secret compute */ rte_crypto_uint p; /**< Prime modulus data */ @@ -278,13 +284,7 @@ struct rte_crypto_dsa_xform { rte_crypto_uint g; /**< Generator of the subgroup */ rte_crypto_uint x; - /**< x: Private key of the signer in octet-string network - * byte order format. - * Used when app has pre-defined private key. - * Valid only when xform chain is DSA ONLY. - * if xform chain is DH private key generate + DSA, then DSA sign - * compute will use internally generated key. - */ + /**< x: Private key */ }; /** @@ -504,8 +504,6 @@ struct rte_crypto_ecpm_op_param { * Structure describing asym xforms. */ struct rte_crypto_asym_xform { - struct rte_crypto_asym_xform *next; - /**< Pointer to next xform to set up xform chain.*/ enum rte_crypto_asym_xform_type xform_type; /**< Asymmetric crypto transform */ -- 2.13.6