|
Data Accelerator Offload
|
#include <dao_liquid_crypto.h>
Data Fields | ||
| struct { | ||
| bool is_sym_enabled | ||
| uint16_t cipher_auth_payload_len | ||
| uint16_t iv_len | ||
| uint16_t aad_len | ||
| uint16_t digest_len | ||
| uint16_t hmac_auth_key_len | ||
| uint16_t key_wrap_len | ||
| enum dao_lc_fc_aes_key_len aes_kek_type | ||
| } | sym | |
| struct { | ||
| uint16_t mod_len | ||
| uint16_t exp_len | ||
| } | rsa | |
| struct { | ||
| uint32_t rand_len | ||
| } | rng | |
| struct { | ||
| bool is_ecc_enabled | ||
| enum dao_liquid_crypto_ec_curve_type curve_id | ||
| uint16_t digest_len | ||
| } | ecc | |
| struct { | ||
| uint8_t is_rsa_oaep_enabled | ||
| uint16_t mod_len | ||
| uint16_t exp_len | ||
| uint16_t label_len | ||
| enum dao_lc_hash_type hash_type | ||
| } | rsa_oaep | |
| bool | cmd_qp | |
Liquid Crypto Feature Parameters.
This structure is used to store the feature parameters of the liquid crypto device. The feature parameters are used to calculate the size of the maximum segment size.
Definition at line 751 of file dao_liquid_crypto.h.
| bool is_sym_enabled |
Specifies whether symmetric enabled or not
Definition at line 761 of file dao_liquid_crypto.h.
| uint16_t cipher_auth_payload_len |
Cipher and auth payload length.
Definition at line 770 of file dao_liquid_crypto.h.
| uint16_t iv_len |
IV length
Definition at line 772 of file dao_liquid_crypto.h.
| uint16_t aad_len |
AAD length
Definition at line 774 of file dao_liquid_crypto.h.
| uint16_t digest_len |
Digest length
Definition at line 776 of file dao_liquid_crypto.h.
| uint16_t hmac_auth_key_len |
HMAC authentication key length
Definition at line 778 of file dao_liquid_crypto.h.
| uint16_t key_wrap_len |
Key wrap length
Definition at line 780 of file dao_liquid_crypto.h.
| enum dao_lc_fc_aes_key_len aes_kek_type |
KEK type
Definition at line 782 of file dao_liquid_crypto.h.
| struct { ... } sym |
Symmetric parameters. The parameters are used to calculate the size of the maximum segment size for symmetric operations.
For using following opcodes the corresponding parameters must be set:
DAO_LC_SYM_OPCODE_FC: Flexi Crypto | uint16_t mod_len |
| uint16_t exp_len |
| struct { ... } rsa |
RSA asymmetric parameters. The parameters are used to calculate the size of the maximum segment size for asymmetric operations.
The segment size calculation reserves space based on mod_len to accommodate RSA operations. Message length constraints are enforced at the API level based on mod_len.
For using following APIs the corresponding parameters must be set:
| uint32_t rand_len |
Random data length
Definition at line 810 of file dao_liquid_crypto.h.
| struct { ... } rng |
Random number generation parameters. The parameters are used to calculate the size of the maximum segment size for random number generation operations.
| bool is_ecc_enabled |
Specifies whether ECC enabled or not
Definition at line 823 of file dao_liquid_crypto.h.
| enum dao_liquid_crypto_ec_curve_type curve_id |
Curve ID
Definition at line 825 of file dao_liquid_crypto.h.
| struct { ... } ecc |
ECDSA asymmetric parameters. The parameters are used to calculate the size of the maximum segment size for ECDSA operations.
For using following APIs the corresponding parameters must be set:
| uint8_t is_rsa_oaep_enabled |
Specifies whether RSA OAEP enabled or not
Definition at line 845 of file dao_liquid_crypto.h.
| uint16_t label_len |
Label length
Definition at line 851 of file dao_liquid_crypto.h.
| enum dao_lc_hash_type hash_type |
Hash type used in OAEP (must be a supported hash algorithm for OAEP)
Definition at line 853 of file dao_liquid_crypto.h.
| struct { ... } rsa_oaep |
RSA OAEP asymmetric parameters. The parameters are used to calculate the size of the maximum segment size for RSA OAEP operations.
The segment size calculation reserves space based on mod_len and hash_type to accommodate RSA OAEP operations. Message length constraints are enforced at the API level based on mod_len.
For using following APIs the corresponding parameters must be set:
dao_liquid_crypto_enq_op_rsa_oaep_enc()dao_liquid_crypto_enq_op_rsa_oaep_exp_dec()| bool cmd_qp |
Specifies whether the size calculation is for the command queue pair. If true, the size is calculated specifically for the command queue pair, ignoring the symmetric and RSA asymmetric parameters. If false, the size is calculated for the data queue pair using the symmetric and RSA asymmetric parameters provided above.
Definition at line 868 of file dao_liquid_crypto.h.