rte_crypto_asym.h
- Provided by: dpdk-doc (Version: 25.11-2)
- Source: dpdk
- Report a bug
#include <string.h>
#include <stdint.h>
#include <rte_memory.h>
#include <rte_mempool.h>
#include <rte_common.h>
#include 'rte_crypto_sym.h'
struct rte_crypto_param_t
struct rte_crypto_ec_point
struct rte_crypto_rsa_priv_key_qt
struct rte_crypto_rsa_padding
struct rte_crypto_rsa_xform
struct rte_crypto_modex_xform
struct rte_crypto_modinv_xform
struct rte_crypto_dh_xform
struct rte_crypto_dsa_xform
struct rte_crypto_ec_xform
struct rte_crypto_mod_op_param
struct rte_crypto_rsa_op_param
struct rte_crypto_dh_op_param
struct rte_crypto_ecdh_op_param
struct rte_crypto_dsa_op_param
struct rte_crypto_ecdsa_op_param
struct rte_crypto_eddsa_op_param
struct rte_crypto_ecpm_op_param
struct rte_crypto_sm2_op_param
struct rte_crypto_ml_kem_xform
struct rte_crypto_ml_kem_keygen_op
struct rte_crypto_ml_kem_keyver_op
struct rte_crypto_ml_kem_encap_op
struct rte_crypto_ml_kem_decap_op
struct rte_crypto_ml_kem_op
struct rte_crypto_ml_dsa_xform
struct rte_crypto_ml_dsa_keygen_op
struct rte_crypto_ml_dsa_siggen_op
struct rte_crypto_ml_dsa_sigver_op
struct rte_crypto_ml_dsa_op
struct rte_crypto_asym_xform
struct rte_crypto_asym_op
#define RTE_CRYPTO_ASYM_FLAG_PUB_KEY_NO_PADDING
RTE_BIT32(0)
#define RTE_CRYPTO_ASYM_FLAG_SHARED_KEY_NO_PADDING RTE_BIT32(1)
#define RTE_CRYPTO_ASYM_FLAG_PUB_KEY_COMPRESSED RTE_BIT32(2)
typedef struct rte_crypto_param_t
rte_crypto_param
typedef rte_crypto_param rte_crypto_uint
enum rte_crypto_curve_id
enum rte_crypto_edward_instance
enum rte_crypto_asym_xform_type {
RTE_CRYPTO_ASYM_XFORM_UNSPECIFIED = 0,
RTE_CRYPTO_ASYM_XFORM_NONE, RTE_CRYPTO_ASYM_XFORM_RSA,
RTE_CRYPTO_ASYM_XFORM_DH, RTE_CRYPTO_ASYM_XFORM_DSA,
RTE_CRYPTO_ASYM_XFORM_MODINV, RTE_CRYPTO_ASYM_XFORM_MODEX,
RTE_CRYPTO_ASYM_XFORM_ECDSA, RTE_CRYPTO_ASYM_XFORM_ECDH,
RTE_CRYPTO_ASYM_XFORM_ECPM, RTE_CRYPTO_ASYM_XFORM_ECFPM,
RTE_CRYPTO_ASYM_XFORM_SM2, RTE_CRYPTO_ASYM_XFORM_EDDSA,
RTE_CRYPTO_ASYM_XFORM_ML_KEM, RTE_CRYPTO_ASYM_XFORM_ML_DSA }
enum rte_crypto_asym_op_type { RTE_CRYPTO_ASYM_OP_ENCRYPT,
RTE_CRYPTO_ASYM_OP_DECRYPT, RTE_CRYPTO_ASYM_OP_SIGN,
RTE_CRYPTO_ASYM_OP_VERIFY, RTE_CRYPTO_ASYM_OP_LIST_END }
enum rte_crypto_asym_ke_type {
RTE_CRYPTO_ASYM_KE_PRIV_KEY_GENERATE,
RTE_CRYPTO_ASYM_KE_PUB_KEY_GENERATE,
RTE_CRYPTO_ASYM_KE_SHARED_SECRET_COMPUTE,
RTE_CRYPTO_ASYM_KE_PUB_KEY_VERIFY }
enum rte_crypto_rsa_padding_type { RTE_CRYPTO_RSA_PADDING_NONE =
0, RTE_CRYPTO_RSA_PADDING_PKCS1_5,
RTE_CRYPTO_RSA_PADDING_OAEP, RTE_CRYPTO_RSA_PADDING_PSS }
enum rte_crypto_rsa_priv_key_type { RTE_RSA_KEY_TYPE_EXP,
RTE_RSA_KEY_TYPE_QT }
enum rte_crypto_sm2_op_capa { RTE_CRYPTO_SM2_RNG,
RTE_CRYPTO_SM2_PH, RTE_CRYPTO_SM2_PARTIAL }
enum rte_crypto_ml_kem_type
enum rte_crypto_ml_kem_op_type
enum rte_crypto_ml_dsa_type
enum rte_crypto_ml_dsa_op_type
const char * rte_crypto_asym_ke_strings []
const char * rte_crypto_asym_op_strings []
const uint16_t rte_crypto_ml_kem_pubkey_size []
RTE Definitions for Asymmetric Cryptography
Defines asymmetric algorithms and modes, as well as supported asymmetric crypto operations.
Definition in file rte_crypto_asym.h.
Flag to denote public key will be returned without leading zero bytes and if the flag is not set, public key will be padded to the left with zeros to the size of the underlying algorithm (default)
Definition at line 58 of file rte_crypto_asym.h.
Flag to denote shared secret will be returned without leading zero bytes and if the flag is not set, shared secret will be padded to the left with zeros to the size of the underlying algorithm (default)
Definition at line 64 of file rte_crypto_asym.h.
Flag to denote public key will be returned in compressed form
Definition at line 70 of file rte_crypto_asym.h.
Buffer to hold crypto params required for asym operations.
These buffers can be used for both input to PMD and output from PMD. When used for output from PMD, application has to ensure the buffer is large enough to hold the target data.
If an operation requires the PMD to generate a random number, and the device supports CSRNG, 'data' should be set to NULL. The crypto parameter in question will not be used by the PMD, as it is internally generated.
Unsigned big-integer in big-endian format
Definition at line 255 of file rte_crypto_asym.h.
List of elliptic curves. This enum aligns with TLS "Supported Groups" registry (previously known as NamedCurve registry). FFDH groups are not, and will not be included in this list. Deprecation for selected curve in TLS does not deprecate the selected curve in Cryptodev. https://www.iana.org/assignments/tls-parameters/tls-parameters.xhtml
Definition at line 84 of file rte_crypto_asym.h.
List of Edwards curve instances as per RFC 8032 (Section 5).
Definition at line 98 of file rte_crypto_asym.h.
Asymmetric crypto transformation types. Each xform type maps to one asymmetric algorithm performing specific operation
Enumerator
Definition at line 111 of file rte_crypto_asym.h.
Asymmetric crypto operation type variants
Enumerator
Definition at line 174 of file rte_crypto_asym.h.
Asymmetric crypto key exchange operation type
Enumerator
Definition at line 189 of file rte_crypto_asym.h.
Padding types for RSA signature.
Enumerator
Definition at line 205 of file rte_crypto_asym.h.
RSA private key type enumeration
enumerates private key format required to perform RSA crypto transform.
Enumerator
Definition at line 224 of file rte_crypto_asym.h.
SM2 operation capabilities
Enumerator
Definition at line 674 of file rte_crypto_asym.h.
PQC ML-KEM parameter type
List of ML-KEM parameter types used in PQC
Definition at line 778 of file rte_crypto_asym.h.
PQC ML-KEM op type
List of ML-KEM op types in PQC
Definition at line 790 of file rte_crypto_asym.h.
PQC ML-DSA parameter type
List of ML-DSA parameter types used in PQC
Definition at line 921 of file rte_crypto_asym.h.
PQC ML-DSA op type
List of ML-DSA op types in PQC
Definition at line 933 of file rte_crypto_asym.h.
asym key exchange operation type name strings
asym operations type name strings
PQC ML crypto op parameters size
Generated automatically by Doxygen for DPDK from the source code.