Structure defining WRAP configuration.

The structure defines the WRAP configuration required for the operation, which includes key type, key size, key buffer, and so on.

Public Attributes#

uint32_t

Type of the key as indicated by sl_si91x_crypto_key_type_t.

uint16_t

Type of padding. A value of 1 specifies HMAC padding, whereas a value of 0 specifies PKCS7 padding.

uint16_t

Specifies HMAC SHA mode if HMAC padding is enabled; otherwise reserved.

uint32_t

Size of the key in bytes.

Specifies the wrap IV mode. IV is mandatory for SL_SI91X_WRAP_IV_CBC_MODE.

uint8_t

Buffer to store the initialization vector (IV).

uint8_t

Key or plain text to be wrapped.

Public Attribute Documentation#

key_type#

uint32_t sl_si91x_wrap_config_t::key_type

Type of the key as indicated by sl_si91x_crypto_key_type_t.


padding#

uint16_t sl_si91x_wrap_config_t::padding

Type of padding. A value of 1 specifies HMAC padding, whereas a value of 0 specifies PKCS7 padding.


hmac_sha_mode#

uint16_t sl_si91x_wrap_config_t::hmac_sha_mode

Specifies HMAC SHA mode if HMAC padding is enabled; otherwise reserved.


key_size#

uint32_t sl_si91x_wrap_config_t::key_size

Size of the key in bytes.


wrap_iv_mode#

sl_si91x_crypto_wrap_mode_t sl_si91x_wrap_config_t::wrap_iv_mode

Specifies the wrap IV mode. IV is mandatory for SL_SI91X_WRAP_IV_CBC_MODE.


wrap_iv#

uint8_t sl_si91x_wrap_config_t::wrap_iv[SL_SI91X_IV_SIZE]

Buffer to store the initialization vector (IV).


key_buffer#

uint8_t sl_si91x_wrap_config_t::key_buffer[SL_SI91X_WRAP_KEY_BUFFER_SIZE]

Key or plain text to be wrapped.

Note