MCUXpresso SDK API Reference Manual
Rev. 0
NXP Semiconductors
|
This section describes the programming interface of the CAAM DES driver.
Macros | |
#define | CAAM_DES_KEY_SIZE 8 |
CAAM DES key size - 64 bits. More... | |
#define | CAAM_DES_IV_SIZE 8 |
CAAM DES IV size - 8 bytes. | |
Functions | |
status_t | CAAM_DES_EncryptEcb (CAAM_Type *base, caam_handle_t *handle, const uint8_t *plaintext, uint8_t *ciphertext, size_t size, const uint8_t key[CAAM_DES_KEY_SIZE]) |
Encrypts DES using ECB block mode. More... | |
status_t | CAAM_DES_DecryptEcb (CAAM_Type *base, caam_handle_t *handle, const uint8_t *ciphertext, uint8_t *plaintext, size_t size, const uint8_t key[CAAM_DES_KEY_SIZE]) |
Decrypts DES using ECB block mode. More... | |
status_t | CAAM_DES_EncryptCbc (CAAM_Type *base, caam_handle_t *handle, const uint8_t *plaintext, uint8_t *ciphertext, size_t size, const uint8_t iv[CAAM_DES_IV_SIZE], const uint8_t key[CAAM_DES_KEY_SIZE]) |
Encrypts DES using CBC block mode. More... | |
status_t | CAAM_DES_DecryptCbc (CAAM_Type *base, caam_handle_t *handle, const uint8_t *ciphertext, uint8_t *plaintext, size_t size, const uint8_t iv[CAAM_DES_IV_SIZE], const uint8_t key[CAAM_DES_KEY_SIZE]) |
Decrypts DES using CBC block mode. More... | |
status_t | CAAM_DES_EncryptCfb (CAAM_Type *base, caam_handle_t *handle, const uint8_t *plaintext, uint8_t *ciphertext, size_t size, const uint8_t iv[CAAM_DES_IV_SIZE], const uint8_t key[CAAM_DES_KEY_SIZE]) |
Encrypts DES using CFB block mode. More... | |
status_t | CAAM_DES_DecryptCfb (CAAM_Type *base, caam_handle_t *handle, const uint8_t *ciphertext, uint8_t *plaintext, size_t size, const uint8_t iv[CAAM_DES_IV_SIZE], const uint8_t key[CAAM_DES_KEY_SIZE]) |
Decrypts DES using CFB block mode. More... | |
status_t | CAAM_DES_EncryptOfb (CAAM_Type *base, caam_handle_t *handle, const uint8_t *plaintext, uint8_t *ciphertext, size_t size, const uint8_t iv[CAAM_DES_IV_SIZE], const uint8_t key[CAAM_DES_KEY_SIZE]) |
Encrypts DES using OFB block mode. More... | |
status_t | CAAM_DES_DecryptOfb (CAAM_Type *base, caam_handle_t *handle, const uint8_t *ciphertext, uint8_t *plaintext, size_t size, const uint8_t iv[CAAM_DES_IV_SIZE], const uint8_t key[CAAM_DES_KEY_SIZE]) |
Decrypts DES using OFB block mode. More... | |
status_t | CAAM_DES2_EncryptEcb (CAAM_Type *base, caam_handle_t *handle, const uint8_t *plaintext, uint8_t *ciphertext, size_t size, const uint8_t key1[CAAM_DES_KEY_SIZE], const uint8_t key2[CAAM_DES_KEY_SIZE]) |
Encrypts triple DES using ECB block mode with two keys. More... | |
status_t | CAAM_DES2_DecryptEcb (CAAM_Type *base, caam_handle_t *handle, const uint8_t *ciphertext, uint8_t *plaintext, size_t size, const uint8_t key1[CAAM_DES_KEY_SIZE], const uint8_t key2[CAAM_DES_KEY_SIZE]) |
Decrypts triple DES using ECB block mode with two keys. More... | |
status_t | CAAM_DES2_EncryptCbc (CAAM_Type *base, caam_handle_t *handle, const uint8_t *plaintext, uint8_t *ciphertext, size_t size, const uint8_t iv[CAAM_DES_IV_SIZE], const uint8_t key1[CAAM_DES_KEY_SIZE], const uint8_t key2[CAAM_DES_KEY_SIZE]) |
Encrypts triple DES using CBC block mode with two keys. More... | |
status_t | CAAM_DES2_DecryptCbc (CAAM_Type *base, caam_handle_t *handle, const uint8_t *ciphertext, uint8_t *plaintext, size_t size, const uint8_t iv[CAAM_DES_IV_SIZE], const uint8_t key1[CAAM_DES_KEY_SIZE], const uint8_t key2[CAAM_DES_KEY_SIZE]) |
Decrypts triple DES using CBC block mode with two keys. More... | |
status_t | CAAM_DES2_EncryptCfb (CAAM_Type *base, caam_handle_t *handle, const uint8_t *plaintext, uint8_t *ciphertext, size_t size, const uint8_t iv[CAAM_DES_IV_SIZE], const uint8_t key1[CAAM_DES_KEY_SIZE], const uint8_t key2[CAAM_DES_KEY_SIZE]) |
Encrypts triple DES using CFB block mode with two keys. More... | |
status_t | CAAM_DES2_DecryptCfb (CAAM_Type *base, caam_handle_t *handle, const uint8_t *ciphertext, uint8_t *plaintext, size_t size, const uint8_t iv[CAAM_DES_IV_SIZE], const uint8_t key1[CAAM_DES_KEY_SIZE], const uint8_t key2[CAAM_DES_KEY_SIZE]) |
Decrypts triple DES using CFB block mode with two keys. More... | |
status_t | CAAM_DES2_EncryptOfb (CAAM_Type *base, caam_handle_t *handle, const uint8_t *plaintext, uint8_t *ciphertext, size_t size, const uint8_t iv[CAAM_DES_IV_SIZE], const uint8_t key1[CAAM_DES_KEY_SIZE], const uint8_t key2[CAAM_DES_KEY_SIZE]) |
Encrypts triple DES using OFB block mode with two keys. More... | |
status_t | CAAM_DES2_DecryptOfb (CAAM_Type *base, caam_handle_t *handle, const uint8_t *ciphertext, uint8_t *plaintext, size_t size, const uint8_t iv[CAAM_DES_IV_SIZE], const uint8_t key1[CAAM_DES_KEY_SIZE], const uint8_t key2[CAAM_DES_KEY_SIZE]) |
Decrypts triple DES using OFB block mode with two keys. More... | |
status_t | CAAM_DES3_EncryptEcb (CAAM_Type *base, caam_handle_t *handle, const uint8_t *plaintext, uint8_t *ciphertext, size_t size, const uint8_t key1[CAAM_DES_KEY_SIZE], const uint8_t key2[CAAM_DES_KEY_SIZE], const uint8_t key3[CAAM_DES_KEY_SIZE]) |
Encrypts triple DES using ECB block mode with three keys. More... | |
status_t | CAAM_DES3_DecryptEcb (CAAM_Type *base, caam_handle_t *handle, const uint8_t *ciphertext, uint8_t *plaintext, size_t size, const uint8_t key1[CAAM_DES_KEY_SIZE], const uint8_t key2[CAAM_DES_KEY_SIZE], const uint8_t key3[CAAM_DES_KEY_SIZE]) |
Decrypts triple DES using ECB block mode with three keys. More... | |
status_t | CAAM_DES3_EncryptCbc (CAAM_Type *base, caam_handle_t *handle, const uint8_t *plaintext, uint8_t *ciphertext, size_t size, const uint8_t iv[CAAM_DES_IV_SIZE], const uint8_t key1[CAAM_DES_KEY_SIZE], const uint8_t key2[CAAM_DES_KEY_SIZE], const uint8_t key3[CAAM_DES_KEY_SIZE]) |
Encrypts triple DES using CBC block mode with three keys. More... | |
status_t | CAAM_DES3_DecryptCbc (CAAM_Type *base, caam_handle_t *handle, const uint8_t *ciphertext, uint8_t *plaintext, size_t size, const uint8_t iv[CAAM_DES_IV_SIZE], const uint8_t key1[CAAM_DES_KEY_SIZE], const uint8_t key2[CAAM_DES_KEY_SIZE], const uint8_t key3[CAAM_DES_KEY_SIZE]) |
Decrypts triple DES using CBC block mode with three keys. More... | |
status_t | CAAM_DES3_EncryptCfb (CAAM_Type *base, caam_handle_t *handle, const uint8_t *plaintext, uint8_t *ciphertext, size_t size, const uint8_t iv[CAAM_DES_IV_SIZE], const uint8_t key1[CAAM_DES_KEY_SIZE], const uint8_t key2[CAAM_DES_KEY_SIZE], const uint8_t key3[CAAM_DES_KEY_SIZE]) |
Encrypts triple DES using CFB block mode with three keys. More... | |
status_t | CAAM_DES3_DecryptCfb (CAAM_Type *base, caam_handle_t *handle, const uint8_t *ciphertext, uint8_t *plaintext, size_t size, const uint8_t iv[CAAM_DES_IV_SIZE], const uint8_t key1[CAAM_DES_KEY_SIZE], const uint8_t key2[CAAM_DES_KEY_SIZE], const uint8_t key3[CAAM_DES_KEY_SIZE]) |
Decrypts triple DES using CFB block mode with three keys. More... | |
status_t | CAAM_DES3_EncryptOfb (CAAM_Type *base, caam_handle_t *handle, const uint8_t *plaintext, uint8_t *ciphertext, size_t size, const uint8_t iv[CAAM_DES_IV_SIZE], const uint8_t key1[CAAM_DES_KEY_SIZE], const uint8_t key2[CAAM_DES_KEY_SIZE], const uint8_t key3[CAAM_DES_KEY_SIZE]) |
Encrypts triple DES using OFB block mode with three keys. More... | |
status_t | CAAM_DES3_DecryptOfb (CAAM_Type *base, caam_handle_t *handle, const uint8_t *ciphertext, uint8_t *plaintext, size_t size, const uint8_t iv[CAAM_DES_IV_SIZE], const uint8_t key1[CAAM_DES_KEY_SIZE], const uint8_t key2[CAAM_DES_KEY_SIZE], const uint8_t key3[CAAM_DES_KEY_SIZE]) |
Decrypts triple DES using OFB block mode with three keys. More... | |
#define CAAM_DES_KEY_SIZE 8 |
status_t CAAM_DES_EncryptEcb | ( | CAAM_Type * | base, |
caam_handle_t * | handle, | ||
const uint8_t * | plaintext, | ||
uint8_t * | ciphertext, | ||
size_t | size, | ||
const uint8_t | key[CAAM_DES_KEY_SIZE] | ||
) |
Encrypts DES using ECB block mode.
base | CAAM peripheral base address | |
handle | Handle used for this request. Specifies jobRing. | |
plaintext | Input plaintext to encrypt | |
[out] | ciphertext | Output ciphertext |
size | Size of input and output data in bytes. Must be multiple of 8 bytes. | |
key | Input key to use for encryption |
status_t CAAM_DES_DecryptEcb | ( | CAAM_Type * | base, |
caam_handle_t * | handle, | ||
const uint8_t * | ciphertext, | ||
uint8_t * | plaintext, | ||
size_t | size, | ||
const uint8_t | key[CAAM_DES_KEY_SIZE] | ||
) |
Decrypts DES using ECB block mode.
base | CAAM peripheral base address | |
handle | Handle used for this request. Specifies jobRing. | |
ciphertext | Input ciphertext to decrypt | |
[out] | plaintext | Output plaintext |
size | Size of input and output data in bytes. Must be multiple of 8 bytes. | |
key | Input key to use for decryption |
status_t CAAM_DES_EncryptCbc | ( | CAAM_Type * | base, |
caam_handle_t * | handle, | ||
const uint8_t * | plaintext, | ||
uint8_t * | ciphertext, | ||
size_t | size, | ||
const uint8_t | iv[CAAM_DES_IV_SIZE], | ||
const uint8_t | key[CAAM_DES_KEY_SIZE] | ||
) |
Encrypts DES using CBC block mode.
base | CAAM peripheral base address | |
handle | Handle used for this request. Specifies jobRing. | |
plaintext | Input plaintext to encrypt | |
[out] | ciphertext | Ouput ciphertext |
size | Size of input and output data in bytes | |
iv | Input initial vector to combine with the first plaintext block. The iv does not need to be secret, but it must be unpredictable. | |
key | Input key to use for encryption |
status_t CAAM_DES_DecryptCbc | ( | CAAM_Type * | base, |
caam_handle_t * | handle, | ||
const uint8_t * | ciphertext, | ||
uint8_t * | plaintext, | ||
size_t | size, | ||
const uint8_t | iv[CAAM_DES_IV_SIZE], | ||
const uint8_t | key[CAAM_DES_KEY_SIZE] | ||
) |
Decrypts DES using CBC block mode.
base | CAAM peripheral base address | |
handle | Handle used for this request. Specifies jobRing. | |
ciphertext | Input ciphertext to decrypt | |
[out] | plaintext | Output plaintext |
size | Size of input data in bytes | |
iv | Input initial vector to combine with the first plaintext block. The iv does not need to be secret, but it must be unpredictable. | |
key | Input key to use for decryption |
status_t CAAM_DES_EncryptCfb | ( | CAAM_Type * | base, |
caam_handle_t * | handle, | ||
const uint8_t * | plaintext, | ||
uint8_t * | ciphertext, | ||
size_t | size, | ||
const uint8_t | iv[CAAM_DES_IV_SIZE], | ||
const uint8_t | key[CAAM_DES_KEY_SIZE] | ||
) |
Encrypts DES using CFB block mode.
base | CAAM peripheral base address | |
handle | Handle used for this request. Specifies jobRing. | |
plaintext | Input plaintext to encrypt | |
size | Size of input data in bytes | |
iv | Input initial block. | |
key | Input key to use for encryption | |
[out] | ciphertext | Output ciphertext |
status_t CAAM_DES_DecryptCfb | ( | CAAM_Type * | base, |
caam_handle_t * | handle, | ||
const uint8_t * | ciphertext, | ||
uint8_t * | plaintext, | ||
size_t | size, | ||
const uint8_t | iv[CAAM_DES_IV_SIZE], | ||
const uint8_t | key[CAAM_DES_KEY_SIZE] | ||
) |
Decrypts DES using CFB block mode.
base | CAAM peripheral base address | |
handle | Handle used for this request. Specifies jobRing. | |
ciphertext | Input ciphertext to decrypt | |
[out] | plaintext | Output plaintext |
size | Size of input and output data in bytes | |
iv | Input initial block. | |
key | Input key to use for decryption |
status_t CAAM_DES_EncryptOfb | ( | CAAM_Type * | base, |
caam_handle_t * | handle, | ||
const uint8_t * | plaintext, | ||
uint8_t * | ciphertext, | ||
size_t | size, | ||
const uint8_t | iv[CAAM_DES_IV_SIZE], | ||
const uint8_t | key[CAAM_DES_KEY_SIZE] | ||
) |
Encrypts DES using OFB block mode.
base | CAAM peripheral base address | |
handle | Handle used for this request. Specifies jobRing. | |
plaintext | Input plaintext to encrypt | |
[out] | ciphertext | Output ciphertext |
size | Size of input and output data in bytes | |
iv | Input unique input vector. The OFB mode requires that the IV be unique for each execution of the mode under the given key. | |
key | Input key to use for encryption |
status_t CAAM_DES_DecryptOfb | ( | CAAM_Type * | base, |
caam_handle_t * | handle, | ||
const uint8_t * | ciphertext, | ||
uint8_t * | plaintext, | ||
size_t | size, | ||
const uint8_t | iv[CAAM_DES_IV_SIZE], | ||
const uint8_t | key[CAAM_DES_KEY_SIZE] | ||
) |
Decrypts DES using OFB block mode.
base | CAAM peripheral base address | |
handle | Handle used for this request. Specifies jobRing. | |
ciphertext | Input ciphertext to decrypt | |
[out] | plaintext | Output plaintext |
size | Size of input and output data in bytes. Must be multiple of 8 bytes. | |
iv | Input unique input vector. The OFB mode requires that the IV be unique for each execution of the mode under the given key. | |
key | Input key to use for decryption |
status_t CAAM_DES2_EncryptEcb | ( | CAAM_Type * | base, |
caam_handle_t * | handle, | ||
const uint8_t * | plaintext, | ||
uint8_t * | ciphertext, | ||
size_t | size, | ||
const uint8_t | key1[CAAM_DES_KEY_SIZE], | ||
const uint8_t | key2[CAAM_DES_KEY_SIZE] | ||
) |
Encrypts triple DES using ECB block mode with two keys.
base | CAAM peripheral base address | |
handle | Handle used for this request. Specifies jobRing. | |
plaintext | Input plaintext to encrypt | |
[out] | ciphertext | Output ciphertext |
size | Size of input and output data in bytes. Must be multiple of 8 bytes. | |
key1 | First input key for key bundle | |
key2 | Second input key for key bundle |
status_t CAAM_DES2_DecryptEcb | ( | CAAM_Type * | base, |
caam_handle_t * | handle, | ||
const uint8_t * | ciphertext, | ||
uint8_t * | plaintext, | ||
size_t | size, | ||
const uint8_t | key1[CAAM_DES_KEY_SIZE], | ||
const uint8_t | key2[CAAM_DES_KEY_SIZE] | ||
) |
Decrypts triple DES using ECB block mode with two keys.
base | CAAM peripheral base address | |
handle | Handle used for this request. Specifies jobRing. | |
ciphertext | Input ciphertext to decrypt | |
[out] | plaintext | Output plaintext |
size | Size of input and output data in bytes. Must be multiple of 8 bytes. | |
key1 | First input key for key bundle | |
key2 | Second input key for key bundle |
status_t CAAM_DES2_EncryptCbc | ( | CAAM_Type * | base, |
caam_handle_t * | handle, | ||
const uint8_t * | plaintext, | ||
uint8_t * | ciphertext, | ||
size_t | size, | ||
const uint8_t | iv[CAAM_DES_IV_SIZE], | ||
const uint8_t | key1[CAAM_DES_KEY_SIZE], | ||
const uint8_t | key2[CAAM_DES_KEY_SIZE] | ||
) |
Encrypts triple DES using CBC block mode with two keys.
base | CAAM peripheral base address | |
handle | Handle used for this request. Specifies jobRing. | |
plaintext | Input plaintext to encrypt | |
[out] | ciphertext | Output ciphertext |
size | Size of input and output data in bytes | |
iv | Input initial vector to combine with the first plaintext block. The iv does not need to be secret, but it must be unpredictable. | |
key1 | First input key for key bundle | |
key2 | Second input key for key bundle |
status_t CAAM_DES2_DecryptCbc | ( | CAAM_Type * | base, |
caam_handle_t * | handle, | ||
const uint8_t * | ciphertext, | ||
uint8_t * | plaintext, | ||
size_t | size, | ||
const uint8_t | iv[CAAM_DES_IV_SIZE], | ||
const uint8_t | key1[CAAM_DES_KEY_SIZE], | ||
const uint8_t | key2[CAAM_DES_KEY_SIZE] | ||
) |
Decrypts triple DES using CBC block mode with two keys.
base | CAAM peripheral base address | |
handle | Handle used for this request. Specifies jobRing. | |
ciphertext | Input ciphertext to decrypt | |
[out] | plaintext | Output plaintext |
size | Size of input and output data in bytes | |
iv | Input initial vector to combine with the first plaintext block. The iv does not need to be secret, but it must be unpredictable. | |
key1 | First input key for key bundle | |
key2 | Second input key for key bundle |
status_t CAAM_DES2_EncryptCfb | ( | CAAM_Type * | base, |
caam_handle_t * | handle, | ||
const uint8_t * | plaintext, | ||
uint8_t * | ciphertext, | ||
size_t | size, | ||
const uint8_t | iv[CAAM_DES_IV_SIZE], | ||
const uint8_t | key1[CAAM_DES_KEY_SIZE], | ||
const uint8_t | key2[CAAM_DES_KEY_SIZE] | ||
) |
Encrypts triple DES using CFB block mode with two keys.
base | CAAM peripheral base address | |
handle | Handle used for this request. Specifies jobRing. | |
plaintext | Input plaintext to encrypt | |
[out] | ciphertext | Output ciphertext |
size | Size of input and output data in bytes | |
iv | Input initial block. | |
key1 | First input key for key bundle | |
key2 | Second input key for key bundle |
status_t CAAM_DES2_DecryptCfb | ( | CAAM_Type * | base, |
caam_handle_t * | handle, | ||
const uint8_t * | ciphertext, | ||
uint8_t * | plaintext, | ||
size_t | size, | ||
const uint8_t | iv[CAAM_DES_IV_SIZE], | ||
const uint8_t | key1[CAAM_DES_KEY_SIZE], | ||
const uint8_t | key2[CAAM_DES_KEY_SIZE] | ||
) |
Decrypts triple DES using CFB block mode with two keys.
base | CAAM peripheral base address | |
handle | Handle used for this request. Specifies jobRing. | |
ciphertext | Input ciphertext to decrypt | |
[out] | plaintext | Output plaintext |
size | Size of input and output data in bytes | |
iv | Input initial block. | |
key1 | First input key for key bundle | |
key2 | Second input key for key bundle |
status_t CAAM_DES2_EncryptOfb | ( | CAAM_Type * | base, |
caam_handle_t * | handle, | ||
const uint8_t * | plaintext, | ||
uint8_t * | ciphertext, | ||
size_t | size, | ||
const uint8_t | iv[CAAM_DES_IV_SIZE], | ||
const uint8_t | key1[CAAM_DES_KEY_SIZE], | ||
const uint8_t | key2[CAAM_DES_KEY_SIZE] | ||
) |
Encrypts triple DES using OFB block mode with two keys.
base | CAAM peripheral base address | |
handle | Handle used for this request. Specifies jobRing. | |
plaintext | Input plaintext to encrypt | |
[out] | ciphertext | Output ciphertext |
size | Size of input and output data in bytes | |
iv | Input unique input vector. The OFB mode requires that the IV be unique for each execution of the mode under the given key. | |
key1 | First input key for key bundle | |
key2 | Second input key for key bundle |
status_t CAAM_DES2_DecryptOfb | ( | CAAM_Type * | base, |
caam_handle_t * | handle, | ||
const uint8_t * | ciphertext, | ||
uint8_t * | plaintext, | ||
size_t | size, | ||
const uint8_t | iv[CAAM_DES_IV_SIZE], | ||
const uint8_t | key1[CAAM_DES_KEY_SIZE], | ||
const uint8_t | key2[CAAM_DES_KEY_SIZE] | ||
) |
Decrypts triple DES using OFB block mode with two keys.
base | CAAM peripheral base address | |
handle | Handle used for this request. Specifies jobRing. | |
ciphertext | Input ciphertext to decrypt | |
[out] | plaintext | Output plaintext |
size | Size of input and output data in bytes | |
iv | Input unique input vector. The OFB mode requires that the IV be unique for each execution of the mode under the given key. | |
key1 | First input key for key bundle | |
key2 | Second input key for key bundle |
status_t CAAM_DES3_EncryptEcb | ( | CAAM_Type * | base, |
caam_handle_t * | handle, | ||
const uint8_t * | plaintext, | ||
uint8_t * | ciphertext, | ||
size_t | size, | ||
const uint8_t | key1[CAAM_DES_KEY_SIZE], | ||
const uint8_t | key2[CAAM_DES_KEY_SIZE], | ||
const uint8_t | key3[CAAM_DES_KEY_SIZE] | ||
) |
Encrypts triple DES using ECB block mode with three keys.
base | CAAM peripheral base address | |
handle | Handle used for this request. Specifies jobRing. | |
plaintext | Input plaintext to encrypt | |
[out] | ciphertext | Output ciphertext |
size | Size of input and output data in bytes. Must be multiple of 8 bytes. | |
key1 | First input key for key bundle | |
key2 | Second input key for key bundle | |
key3 | Third input key for key bundle |
status_t CAAM_DES3_DecryptEcb | ( | CAAM_Type * | base, |
caam_handle_t * | handle, | ||
const uint8_t * | ciphertext, | ||
uint8_t * | plaintext, | ||
size_t | size, | ||
const uint8_t | key1[CAAM_DES_KEY_SIZE], | ||
const uint8_t | key2[CAAM_DES_KEY_SIZE], | ||
const uint8_t | key3[CAAM_DES_KEY_SIZE] | ||
) |
Decrypts triple DES using ECB block mode with three keys.
base | CAAM peripheral base address | |
handle | Handle used for this request. Specifies jobRing. | |
ciphertext | Input ciphertext to decrypt | |
[out] | plaintext | Output plaintext |
size | Size of input and output data in bytes. Must be multiple of 8 bytes. | |
key1 | First input key for key bundle | |
key2 | Second input key for key bundle | |
key3 | Third input key for key bundle |
status_t CAAM_DES3_EncryptCbc | ( | CAAM_Type * | base, |
caam_handle_t * | handle, | ||
const uint8_t * | plaintext, | ||
uint8_t * | ciphertext, | ||
size_t | size, | ||
const uint8_t | iv[CAAM_DES_IV_SIZE], | ||
const uint8_t | key1[CAAM_DES_KEY_SIZE], | ||
const uint8_t | key2[CAAM_DES_KEY_SIZE], | ||
const uint8_t | key3[CAAM_DES_KEY_SIZE] | ||
) |
Encrypts triple DES using CBC block mode with three keys.
base | CAAM peripheral base address | |
handle | Handle used for this request. Specifies jobRing. | |
plaintext | Input plaintext to encrypt | |
[out] | ciphertext | Output ciphertext |
size | Size of input data in bytes | |
iv | Input initial vector to combine with the first plaintext block. The iv does not need to be secret, but it must be unpredictable. | |
key1 | First input key for key bundle | |
key2 | Second input key for key bundle | |
key3 | Third input key for key bundle |
status_t CAAM_DES3_DecryptCbc | ( | CAAM_Type * | base, |
caam_handle_t * | handle, | ||
const uint8_t * | ciphertext, | ||
uint8_t * | plaintext, | ||
size_t | size, | ||
const uint8_t | iv[CAAM_DES_IV_SIZE], | ||
const uint8_t | key1[CAAM_DES_KEY_SIZE], | ||
const uint8_t | key2[CAAM_DES_KEY_SIZE], | ||
const uint8_t | key3[CAAM_DES_KEY_SIZE] | ||
) |
Decrypts triple DES using CBC block mode with three keys.
base | CAAM peripheral base address | |
handle | Handle used for this request. Specifies jobRing. | |
ciphertext | Input ciphertext to decrypt | |
[out] | plaintext | Output plaintext |
size | Size of input and output data in bytes | |
iv | Input initial vector to combine with the first plaintext block. The iv does not need to be secret, but it must be unpredictable. | |
key1 | First input key for key bundle | |
key2 | Second input key for key bundle | |
key3 | Third input key for key bundle |
status_t CAAM_DES3_EncryptCfb | ( | CAAM_Type * | base, |
caam_handle_t * | handle, | ||
const uint8_t * | plaintext, | ||
uint8_t * | ciphertext, | ||
size_t | size, | ||
const uint8_t | iv[CAAM_DES_IV_SIZE], | ||
const uint8_t | key1[CAAM_DES_KEY_SIZE], | ||
const uint8_t | key2[CAAM_DES_KEY_SIZE], | ||
const uint8_t | key3[CAAM_DES_KEY_SIZE] | ||
) |
Encrypts triple DES using CFB block mode with three keys.
base | CAAM peripheral base address | |
plaintext | Input plaintext to encrypt | |
[out] | ciphertext | Output ciphertext |
size | Size of input and ouput data in bytes | |
iv | Input initial block. | |
key1 | First input key for key bundle | |
key2 | Second input key for key bundle | |
key3 | Third input key for key bundle |
status_t CAAM_DES3_DecryptCfb | ( | CAAM_Type * | base, |
caam_handle_t * | handle, | ||
const uint8_t * | ciphertext, | ||
uint8_t * | plaintext, | ||
size_t | size, | ||
const uint8_t | iv[CAAM_DES_IV_SIZE], | ||
const uint8_t | key1[CAAM_DES_KEY_SIZE], | ||
const uint8_t | key2[CAAM_DES_KEY_SIZE], | ||
const uint8_t | key3[CAAM_DES_KEY_SIZE] | ||
) |
Decrypts triple DES using CFB block mode with three keys.
base | CAAM peripheral base address | |
handle | Handle used for this request. Specifies jobRing. | |
ciphertext | Input ciphertext to decrypt | |
[out] | plaintext | Output plaintext |
size | Size of input data in bytes | |
iv | Input initial block. | |
key1 | First input key for key bundle | |
key2 | Second input key for key bundle | |
key3 | Third input key for key bundle |
status_t CAAM_DES3_EncryptOfb | ( | CAAM_Type * | base, |
caam_handle_t * | handle, | ||
const uint8_t * | plaintext, | ||
uint8_t * | ciphertext, | ||
size_t | size, | ||
const uint8_t | iv[CAAM_DES_IV_SIZE], | ||
const uint8_t | key1[CAAM_DES_KEY_SIZE], | ||
const uint8_t | key2[CAAM_DES_KEY_SIZE], | ||
const uint8_t | key3[CAAM_DES_KEY_SIZE] | ||
) |
Encrypts triple DES using OFB block mode with three keys.
base | CAAM peripheral base address | |
plaintext | Input plaintext to encrypt | |
[out] | ciphertext | Output ciphertext |
size | Size of input and output data in bytes | |
iv | Input unique input vector. The OFB mode requires that the IV be unique for each execution of the mode under the given key. | |
key1 | First input key for key bundle | |
key2 | Second input key for key bundle | |
key3 | Third input key for key bundle |
status_t CAAM_DES3_DecryptOfb | ( | CAAM_Type * | base, |
caam_handle_t * | handle, | ||
const uint8_t * | ciphertext, | ||
uint8_t * | plaintext, | ||
size_t | size, | ||
const uint8_t | iv[CAAM_DES_IV_SIZE], | ||
const uint8_t | key1[CAAM_DES_KEY_SIZE], | ||
const uint8_t | key2[CAAM_DES_KEY_SIZE], | ||
const uint8_t | key3[CAAM_DES_KEY_SIZE] | ||
) |
Decrypts triple DES using OFB block mode with three keys.
base | CAAM peripheral base address | |
handle | Handle used for this request. Specifies jobRing. | |
ciphertext | Input ciphertext to decrypt | |
[out] | plaintext | Output plaintext |
size | Size of input and output data in bytes | |
iv | Input unique input vector. The OFB mode requires that the IV be unique for each execution of the mode under the given key. | |
key1 | First input key for key bundle | |
key2 | Second input key for key bundle | |
key3 | Third input key for key bundle |