This addition complements point verification in ECDH operation. This will allow to use point verification in other situations than pure ECDH.
Signed-off-by: Arek Kusztal <arkadiuszx.kusz...@intel.com> --- doc/guides/cryptodevs/features/default.ini | 1 + lib/cryptodev/rte_crypto_asym.h | 11 +++++++++++ 2 files changed, 12 insertions(+) diff --git a/doc/guides/cryptodevs/features/default.ini b/doc/guides/cryptodevs/features/default.ini index 7371ca6644..7922160532 100644 --- a/doc/guides/cryptodevs/features/default.ini +++ b/doc/guides/cryptodevs/features/default.ini @@ -119,6 +119,7 @@ Diffie-hellman = ECDSA = ECPM = ECDH = +EC Point Verify = ; ; Supported Operating systems of a default crypto driver. diff --git a/lib/cryptodev/rte_crypto_asym.h b/lib/cryptodev/rte_crypto_asym.h index 62987f860e..7d94ba705e 100644 --- a/lib/cryptodev/rte_crypto_asym.h +++ b/lib/cryptodev/rte_crypto_asym.h @@ -116,6 +116,8 @@ enum rte_crypto_asym_xform_type { /**< Elliptic Curve Diffie Hellman */ RTE_CRYPTO_ASYM_XFORM_ECPM, /**< Elliptic Curve Point Multiplication */ + RTE_CRYPTO_ASYM_XFORM_EC_POINT_VERIFY, + /**< Elliptic Curve Point Verification */ RTE_CRYPTO_ASYM_XFORM_TYPE_LIST_END /**< End of list */ }; @@ -607,6 +609,14 @@ struct rte_crypto_ecpm_op_param { }; /** + * Structure for EC point verification operation + */ +struct rte_crypto_ec_point_verify_op { + struct rte_crypto_ec_point p; + /**< x and y coordinates of point to be verified */ +}; + +/** * Asymmetric crypto transform data * * Structure describing asym xforms. @@ -666,6 +676,7 @@ struct rte_crypto_asym_op { struct rte_crypto_dsa_op_param dsa; struct rte_crypto_ecdsa_op_param ecdsa; struct rte_crypto_ecpm_op_param ecpm; + struct rte_crypto_ec_point_verify_op ecp_verify; }; uint16_t flags; /**< -- 2.13.6