![]() |
Kinetis SDK v.2.0 API Reference Manual
Rev. 0
Freescale Semiconductor, Inc.
|
This section describes the programming interface of the LTC EDMA DES driver.
Functions | |
| status_t | LTC_DES_EncryptEcbEDMA (LTC_Type *base, ltc_edma_handle_t *handle, const uint8_t *plaintext, uint8_t *ciphertext, uint32_t size, const uint8_t key[LTC_DES_KEY_SIZE]) |
| Encrypts DES using ECB block mode. More... | |
| status_t | LTC_DES_DecryptEcbEDMA (LTC_Type *base, ltc_edma_handle_t *handle, const uint8_t *ciphertext, uint8_t *plaintext, uint32_t size, const uint8_t key[LTC_DES_KEY_SIZE]) |
| Decrypts DES using ECB block mode. More... | |
| status_t | LTC_DES_EncryptCbcEDMA (LTC_Type *base, ltc_edma_handle_t *handle, const uint8_t *plaintext, uint8_t *ciphertext, uint32_t size, const uint8_t iv[LTC_DES_IV_SIZE], const uint8_t key[LTC_DES_KEY_SIZE]) |
| Encrypts DES using CBC block mode. More... | |
| status_t | LTC_DES_DecryptCbcEDMA (LTC_Type *base, ltc_edma_handle_t *handle, const uint8_t *ciphertext, uint8_t *plaintext, uint32_t size, const uint8_t iv[LTC_DES_IV_SIZE], const uint8_t key[LTC_DES_KEY_SIZE]) |
| Decrypts DES using CBC block mode. More... | |
| status_t | LTC_DES_EncryptCfbEDMA (LTC_Type *base, ltc_edma_handle_t *handle, const uint8_t *plaintext, uint8_t *ciphertext, uint32_t size, const uint8_t iv[LTC_DES_IV_SIZE], const uint8_t key[LTC_DES_KEY_SIZE]) |
| Encrypts DES using CFB block mode. More... | |
| status_t | LTC_DES_DecryptCfbEDMA (LTC_Type *base, ltc_edma_handle_t *handle, const uint8_t *ciphertext, uint8_t *plaintext, uint32_t size, const uint8_t iv[LTC_DES_IV_SIZE], const uint8_t key[LTC_DES_KEY_SIZE]) |
| Decrypts DES using CFB block mode. More... | |
| status_t | LTC_DES_EncryptOfbEDMA (LTC_Type *base, ltc_edma_handle_t *handle, const uint8_t *plaintext, uint8_t *ciphertext, uint32_t size, const uint8_t iv[LTC_DES_IV_SIZE], const uint8_t key[LTC_DES_KEY_SIZE]) |
| Encrypts DES using OFB block mode. More... | |
| status_t | LTC_DES_DecryptOfbEDMA (LTC_Type *base, ltc_edma_handle_t *handle, const uint8_t *ciphertext, uint8_t *plaintext, uint32_t size, const uint8_t iv[LTC_DES_IV_SIZE], const uint8_t key[LTC_DES_KEY_SIZE]) |
| Decrypts DES using OFB block mode. More... | |
| status_t | LTC_DES2_EncryptEcbEDMA (LTC_Type *base, ltc_edma_handle_t *handle, const uint8_t *plaintext, uint8_t *ciphertext, uint32_t size, const uint8_t key1[LTC_DES_KEY_SIZE], const uint8_t key2[LTC_DES_KEY_SIZE]) |
| Encrypts triple DES using ECB block mode with two keys. More... | |
| status_t | LTC_DES2_DecryptEcbEDMA (LTC_Type *base, ltc_edma_handle_t *handle, const uint8_t *ciphertext, uint8_t *plaintext, uint32_t size, const uint8_t key1[LTC_DES_KEY_SIZE], const uint8_t key2[LTC_DES_KEY_SIZE]) |
| Decrypts triple DES using ECB block mode with two keys. More... | |
| status_t | LTC_DES2_EncryptCbcEDMA (LTC_Type *base, ltc_edma_handle_t *handle, const uint8_t *plaintext, uint8_t *ciphertext, uint32_t size, const uint8_t iv[LTC_DES_IV_SIZE], const uint8_t key1[LTC_DES_KEY_SIZE], const uint8_t key2[LTC_DES_KEY_SIZE]) |
| Encrypts triple DES using CBC block mode with two keys. More... | |
| status_t | LTC_DES2_DecryptCbcEDMA (LTC_Type *base, ltc_edma_handle_t *handle, const uint8_t *ciphertext, uint8_t *plaintext, uint32_t size, const uint8_t iv[LTC_DES_IV_SIZE], const uint8_t key1[LTC_DES_KEY_SIZE], const uint8_t key2[LTC_DES_KEY_SIZE]) |
| Decrypts triple DES using CBC block mode with two keys. More... | |
| status_t | LTC_DES2_EncryptCfbEDMA (LTC_Type *base, ltc_edma_handle_t *handle, const uint8_t *plaintext, uint8_t *ciphertext, uint32_t size, const uint8_t iv[LTC_DES_IV_SIZE], const uint8_t key1[LTC_DES_KEY_SIZE], const uint8_t key2[LTC_DES_KEY_SIZE]) |
| Encrypts triple DES using CFB block mode with two keys. More... | |
| status_t | LTC_DES2_DecryptCfbEDMA (LTC_Type *base, ltc_edma_handle_t *handle, const uint8_t *ciphertext, uint8_t *plaintext, uint32_t size, const uint8_t iv[LTC_DES_IV_SIZE], const uint8_t key1[LTC_DES_KEY_SIZE], const uint8_t key2[LTC_DES_KEY_SIZE]) |
| Decrypts triple DES using CFB block mode with two keys. More... | |
| status_t | LTC_DES2_EncryptOfbEDMA (LTC_Type *base, ltc_edma_handle_t *handle, const uint8_t *plaintext, uint8_t *ciphertext, uint32_t size, const uint8_t iv[LTC_DES_IV_SIZE], const uint8_t key1[LTC_DES_KEY_SIZE], const uint8_t key2[LTC_DES_KEY_SIZE]) |
| Encrypts triple DES using OFB block mode with two keys. More... | |
| status_t | LTC_DES2_DecryptOfbEDMA (LTC_Type *base, ltc_edma_handle_t *handle, const uint8_t *ciphertext, uint8_t *plaintext, uint32_t size, const uint8_t iv[LTC_DES_IV_SIZE], const uint8_t key1[LTC_DES_KEY_SIZE], const uint8_t key2[LTC_DES_KEY_SIZE]) |
| Decrypts triple DES using OFB block mode with two keys. More... | |
| status_t | LTC_DES3_EncryptEcbEDMA (LTC_Type *base, ltc_edma_handle_t *handle, const uint8_t *plaintext, uint8_t *ciphertext, uint32_t size, const uint8_t key1[LTC_DES_KEY_SIZE], const uint8_t key2[LTC_DES_KEY_SIZE], const uint8_t key3[LTC_DES_KEY_SIZE]) |
| Encrypts triple DES using ECB block mode with three keys. More... | |
| status_t | LTC_DES3_DecryptEcbEDMA (LTC_Type *base, ltc_edma_handle_t *handle, const uint8_t *ciphertext, uint8_t *plaintext, uint32_t size, const uint8_t key1[LTC_DES_KEY_SIZE], const uint8_t key2[LTC_DES_KEY_SIZE], const uint8_t key3[LTC_DES_KEY_SIZE]) |
| Decrypts triple DES using ECB block mode with three keys. More... | |
| status_t | LTC_DES3_EncryptCbcEDMA (LTC_Type *base, ltc_edma_handle_t *handle, const uint8_t *plaintext, uint8_t *ciphertext, uint32_t size, const uint8_t iv[LTC_DES_IV_SIZE], const uint8_t key1[LTC_DES_KEY_SIZE], const uint8_t key2[LTC_DES_KEY_SIZE], const uint8_t key3[LTC_DES_KEY_SIZE]) |
| Encrypts triple DES using CBC block mode with three keys. More... | |
| status_t | LTC_DES3_DecryptCbcEDMA (LTC_Type *base, ltc_edma_handle_t *handle, const uint8_t *ciphertext, uint8_t *plaintext, uint32_t size, const uint8_t iv[LTC_DES_IV_SIZE], const uint8_t key1[LTC_DES_KEY_SIZE], const uint8_t key2[LTC_DES_KEY_SIZE], const uint8_t key3[LTC_DES_KEY_SIZE]) |
| Decrypts triple DES using CBC block mode with three keys. More... | |
| status_t | LTC_DES3_EncryptCfbEDMA (LTC_Type *base, ltc_edma_handle_t *handle, const uint8_t *plaintext, uint8_t *ciphertext, uint32_t size, const uint8_t iv[LTC_DES_IV_SIZE], const uint8_t key1[LTC_DES_KEY_SIZE], const uint8_t key2[LTC_DES_KEY_SIZE], const uint8_t key3[LTC_DES_KEY_SIZE]) |
| Encrypts triple DES using CFB block mode with three keys. More... | |
| status_t | LTC_DES3_DecryptCfbEDMA (LTC_Type *base, ltc_edma_handle_t *handle, const uint8_t *ciphertext, uint8_t *plaintext, uint32_t size, const uint8_t iv[LTC_DES_IV_SIZE], const uint8_t key1[LTC_DES_KEY_SIZE], const uint8_t key2[LTC_DES_KEY_SIZE], const uint8_t key3[LTC_DES_KEY_SIZE]) |
| Decrypts triple DES using CFB block mode with three keys. More... | |
| status_t | LTC_DES3_EncryptOfbEDMA (LTC_Type *base, ltc_edma_handle_t *handle, const uint8_t *plaintext, uint8_t *ciphertext, uint32_t size, const uint8_t iv[LTC_DES_IV_SIZE], const uint8_t key1[LTC_DES_KEY_SIZE], const uint8_t key2[LTC_DES_KEY_SIZE], const uint8_t key3[LTC_DES_KEY_SIZE]) |
| Encrypts triple DES using OFB block mode with three keys. More... | |
| status_t | LTC_DES3_DecryptOfbEDMA (LTC_Type *base, ltc_edma_handle_t *handle, const uint8_t *ciphertext, uint8_t *plaintext, uint32_t size, const uint8_t iv[LTC_DES_IV_SIZE], const uint8_t key1[LTC_DES_KEY_SIZE], const uint8_t key2[LTC_DES_KEY_SIZE], const uint8_t key3[LTC_DES_KEY_SIZE]) |
| Decrypts triple DES using OFB block mode with three keys. More... | |
| status_t LTC_DES_EncryptEcbEDMA | ( | LTC_Type * | base, |
| ltc_edma_handle_t * | handle, | ||
| const uint8_t * | plaintext, | ||
| uint8_t * | ciphertext, | ||
| uint32_t | size, | ||
| const uint8_t | key[LTC_DES_KEY_SIZE] | ||
| ) |
Encrypts DES using ECB block mode.
| base | LTC peripheral base address | |
| handle | pointer to ltc_edma_handle_t structure which stores the transaction state. | |
| 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 LTC_DES_DecryptEcbEDMA | ( | LTC_Type * | base, |
| ltc_edma_handle_t * | handle, | ||
| const uint8_t * | ciphertext, | ||
| uint8_t * | plaintext, | ||
| uint32_t | size, | ||
| const uint8_t | key[LTC_DES_KEY_SIZE] | ||
| ) |
Decrypts DES using ECB block mode.
| base | LTC peripheral base address | |
| handle | pointer to ltc_edma_handle_t structure which stores the transaction state. | |
| 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 LTC_DES_EncryptCbcEDMA | ( | LTC_Type * | base, |
| ltc_edma_handle_t * | handle, | ||
| const uint8_t * | plaintext, | ||
| uint8_t * | ciphertext, | ||
| uint32_t | size, | ||
| const uint8_t | iv[LTC_DES_IV_SIZE], | ||
| const uint8_t | key[LTC_DES_KEY_SIZE] | ||
| ) |
Encrypts DES using CBC block mode.
| base | LTC peripheral base address | |
| handle | pointer to ltc_edma_handle_t structure which stores the transaction state. | |
| 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 LTC_DES_DecryptCbcEDMA | ( | LTC_Type * | base, |
| ltc_edma_handle_t * | handle, | ||
| const uint8_t * | ciphertext, | ||
| uint8_t * | plaintext, | ||
| uint32_t | size, | ||
| const uint8_t | iv[LTC_DES_IV_SIZE], | ||
| const uint8_t | key[LTC_DES_KEY_SIZE] | ||
| ) |
Decrypts DES using CBC block mode.
| base | LTC peripheral base address | |
| handle | pointer to ltc_edma_handle_t structure which stores the transaction state. | |
| 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 LTC_DES_EncryptCfbEDMA | ( | LTC_Type * | base, |
| ltc_edma_handle_t * | handle, | ||
| const uint8_t * | plaintext, | ||
| uint8_t * | ciphertext, | ||
| uint32_t | size, | ||
| const uint8_t | iv[LTC_DES_IV_SIZE], | ||
| const uint8_t | key[LTC_DES_KEY_SIZE] | ||
| ) |
Encrypts DES using CFB block mode.
| base | LTC peripheral base address | |
| handle | pointer to ltc_edma_handle_t structure which stores the transaction state. | |
| 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 LTC_DES_DecryptCfbEDMA | ( | LTC_Type * | base, |
| ltc_edma_handle_t * | handle, | ||
| const uint8_t * | ciphertext, | ||
| uint8_t * | plaintext, | ||
| uint32_t | size, | ||
| const uint8_t | iv[LTC_DES_IV_SIZE], | ||
| const uint8_t | key[LTC_DES_KEY_SIZE] | ||
| ) |
Decrypts DES using CFB block mode.
| base | LTC peripheral base address | |
| handle | pointer to ltc_edma_handle_t structure which stores the transaction state. | |
| 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 LTC_DES_EncryptOfbEDMA | ( | LTC_Type * | base, |
| ltc_edma_handle_t * | handle, | ||
| const uint8_t * | plaintext, | ||
| uint8_t * | ciphertext, | ||
| uint32_t | size, | ||
| const uint8_t | iv[LTC_DES_IV_SIZE], | ||
| const uint8_t | key[LTC_DES_KEY_SIZE] | ||
| ) |
Encrypts DES using OFB block mode.
| base | LTC peripheral base address | |
| handle | pointer to ltc_edma_handle_t structure which stores the transaction state. | |
| 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 LTC_DES_DecryptOfbEDMA | ( | LTC_Type * | base, |
| ltc_edma_handle_t * | handle, | ||
| const uint8_t * | ciphertext, | ||
| uint8_t * | plaintext, | ||
| uint32_t | size, | ||
| const uint8_t | iv[LTC_DES_IV_SIZE], | ||
| const uint8_t | key[LTC_DES_KEY_SIZE] | ||
| ) |
Decrypts DES using OFB block mode.
| base | LTC peripheral base address | |
| handle | pointer to ltc_edma_handle_t structure which stores the transaction state. | |
| 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 LTC_DES2_EncryptEcbEDMA | ( | LTC_Type * | base, |
| ltc_edma_handle_t * | handle, | ||
| const uint8_t * | plaintext, | ||
| uint8_t * | ciphertext, | ||
| uint32_t | size, | ||
| const uint8_t | key1[LTC_DES_KEY_SIZE], | ||
| const uint8_t | key2[LTC_DES_KEY_SIZE] | ||
| ) |
Encrypts triple DES using ECB block mode with two keys.
| base | LTC peripheral base address | |
| handle | pointer to ltc_edma_handle_t structure which stores the transaction state. | |
| 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 LTC_DES2_DecryptEcbEDMA | ( | LTC_Type * | base, |
| ltc_edma_handle_t * | handle, | ||
| const uint8_t * | ciphertext, | ||
| uint8_t * | plaintext, | ||
| uint32_t | size, | ||
| const uint8_t | key1[LTC_DES_KEY_SIZE], | ||
| const uint8_t | key2[LTC_DES_KEY_SIZE] | ||
| ) |
Decrypts triple DES using ECB block mode with two keys.
| base | LTC peripheral base address | |
| handle | pointer to ltc_edma_handle_t structure which stores the transaction state. | |
| 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 LTC_DES2_EncryptCbcEDMA | ( | LTC_Type * | base, |
| ltc_edma_handle_t * | handle, | ||
| const uint8_t * | plaintext, | ||
| uint8_t * | ciphertext, | ||
| uint32_t | size, | ||
| const uint8_t | iv[LTC_DES_IV_SIZE], | ||
| const uint8_t | key1[LTC_DES_KEY_SIZE], | ||
| const uint8_t | key2[LTC_DES_KEY_SIZE] | ||
| ) |
Encrypts triple DES using CBC block mode with two keys.
| base | LTC peripheral base address | |
| handle | pointer to ltc_edma_handle_t structure which stores the transaction state. | |
| 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 LTC_DES2_DecryptCbcEDMA | ( | LTC_Type * | base, |
| ltc_edma_handle_t * | handle, | ||
| const uint8_t * | ciphertext, | ||
| uint8_t * | plaintext, | ||
| uint32_t | size, | ||
| const uint8_t | iv[LTC_DES_IV_SIZE], | ||
| const uint8_t | key1[LTC_DES_KEY_SIZE], | ||
| const uint8_t | key2[LTC_DES_KEY_SIZE] | ||
| ) |
Decrypts triple DES using CBC block mode with two keys.
| base | LTC peripheral base address | |
| handle | pointer to ltc_edma_handle_t structure which stores the transaction state. | |
| 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 LTC_DES2_EncryptCfbEDMA | ( | LTC_Type * | base, |
| ltc_edma_handle_t * | handle, | ||
| const uint8_t * | plaintext, | ||
| uint8_t * | ciphertext, | ||
| uint32_t | size, | ||
| const uint8_t | iv[LTC_DES_IV_SIZE], | ||
| const uint8_t | key1[LTC_DES_KEY_SIZE], | ||
| const uint8_t | key2[LTC_DES_KEY_SIZE] | ||
| ) |
Encrypts triple DES using CFB block mode with two keys.
| base | LTC peripheral base address | |
| handle | pointer to ltc_edma_handle_t structure which stores the transaction state. | |
| 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 LTC_DES2_DecryptCfbEDMA | ( | LTC_Type * | base, |
| ltc_edma_handle_t * | handle, | ||
| const uint8_t * | ciphertext, | ||
| uint8_t * | plaintext, | ||
| uint32_t | size, | ||
| const uint8_t | iv[LTC_DES_IV_SIZE], | ||
| const uint8_t | key1[LTC_DES_KEY_SIZE], | ||
| const uint8_t | key2[LTC_DES_KEY_SIZE] | ||
| ) |
Decrypts triple DES using CFB block mode with two keys.
| base | LTC peripheral base address | |
| handle | pointer to ltc_edma_handle_t structure which stores the transaction state. | |
| 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 LTC_DES2_EncryptOfbEDMA | ( | LTC_Type * | base, |
| ltc_edma_handle_t * | handle, | ||
| const uint8_t * | plaintext, | ||
| uint8_t * | ciphertext, | ||
| uint32_t | size, | ||
| const uint8_t | iv[LTC_DES_IV_SIZE], | ||
| const uint8_t | key1[LTC_DES_KEY_SIZE], | ||
| const uint8_t | key2[LTC_DES_KEY_SIZE] | ||
| ) |
Encrypts triple DES using OFB block mode with two keys.
| base | LTC peripheral base address | |
| handle | pointer to ltc_edma_handle_t structure which stores the transaction state. | |
| 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 LTC_DES2_DecryptOfbEDMA | ( | LTC_Type * | base, |
| ltc_edma_handle_t * | handle, | ||
| const uint8_t * | ciphertext, | ||
| uint8_t * | plaintext, | ||
| uint32_t | size, | ||
| const uint8_t | iv[LTC_DES_IV_SIZE], | ||
| const uint8_t | key1[LTC_DES_KEY_SIZE], | ||
| const uint8_t | key2[LTC_DES_KEY_SIZE] | ||
| ) |
Decrypts triple DES using OFB block mode with two keys.
| base | LTC peripheral base address | |
| handle | pointer to ltc_edma_handle_t structure which stores the transaction state. | |
| 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 LTC_DES3_EncryptEcbEDMA | ( | LTC_Type * | base, |
| ltc_edma_handle_t * | handle, | ||
| const uint8_t * | plaintext, | ||
| uint8_t * | ciphertext, | ||
| uint32_t | size, | ||
| const uint8_t | key1[LTC_DES_KEY_SIZE], | ||
| const uint8_t | key2[LTC_DES_KEY_SIZE], | ||
| const uint8_t | key3[LTC_DES_KEY_SIZE] | ||
| ) |
Encrypts triple DES using ECB block mode with three keys.
| base | LTC peripheral base address | |
| handle | pointer to ltc_edma_handle_t structure which stores the transaction state. | |
| 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 LTC_DES3_DecryptEcbEDMA | ( | LTC_Type * | base, |
| ltc_edma_handle_t * | handle, | ||
| const uint8_t * | ciphertext, | ||
| uint8_t * | plaintext, | ||
| uint32_t | size, | ||
| const uint8_t | key1[LTC_DES_KEY_SIZE], | ||
| const uint8_t | key2[LTC_DES_KEY_SIZE], | ||
| const uint8_t | key3[LTC_DES_KEY_SIZE] | ||
| ) |
Decrypts triple DES using ECB block mode with three keys.
| base | LTC peripheral base address | |
| handle | pointer to ltc_edma_handle_t structure which stores the transaction state. | |
| 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 LTC_DES3_EncryptCbcEDMA | ( | LTC_Type * | base, |
| ltc_edma_handle_t * | handle, | ||
| const uint8_t * | plaintext, | ||
| uint8_t * | ciphertext, | ||
| uint32_t | size, | ||
| const uint8_t | iv[LTC_DES_IV_SIZE], | ||
| const uint8_t | key1[LTC_DES_KEY_SIZE], | ||
| const uint8_t | key2[LTC_DES_KEY_SIZE], | ||
| const uint8_t | key3[LTC_DES_KEY_SIZE] | ||
| ) |
Encrypts triple DES using CBC block mode with three keys.
| base | LTC peripheral base address | |
| handle | pointer to ltc_edma_handle_t structure which stores the transaction state. | |
| 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 LTC_DES3_DecryptCbcEDMA | ( | LTC_Type * | base, |
| ltc_edma_handle_t * | handle, | ||
| const uint8_t * | ciphertext, | ||
| uint8_t * | plaintext, | ||
| uint32_t | size, | ||
| const uint8_t | iv[LTC_DES_IV_SIZE], | ||
| const uint8_t | key1[LTC_DES_KEY_SIZE], | ||
| const uint8_t | key2[LTC_DES_KEY_SIZE], | ||
| const uint8_t | key3[LTC_DES_KEY_SIZE] | ||
| ) |
Decrypts triple DES using CBC block mode with three keys.
| base | LTC peripheral base address | |
| handle | pointer to ltc_edma_handle_t structure which stores the transaction state. | |
| 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 LTC_DES3_EncryptCfbEDMA | ( | LTC_Type * | base, |
| ltc_edma_handle_t * | handle, | ||
| const uint8_t * | plaintext, | ||
| uint8_t * | ciphertext, | ||
| uint32_t | size, | ||
| const uint8_t | iv[LTC_DES_IV_SIZE], | ||
| const uint8_t | key1[LTC_DES_KEY_SIZE], | ||
| const uint8_t | key2[LTC_DES_KEY_SIZE], | ||
| const uint8_t | key3[LTC_DES_KEY_SIZE] | ||
| ) |
Encrypts triple DES using CFB block mode with three keys.
| base | LTC peripheral base address | |
| handle | pointer to ltc_edma_handle_t structure which stores the transaction state. | |
| 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 LTC_DES3_DecryptCfbEDMA | ( | LTC_Type * | base, |
| ltc_edma_handle_t * | handle, | ||
| const uint8_t * | ciphertext, | ||
| uint8_t * | plaintext, | ||
| uint32_t | size, | ||
| const uint8_t | iv[LTC_DES_IV_SIZE], | ||
| const uint8_t | key1[LTC_DES_KEY_SIZE], | ||
| const uint8_t | key2[LTC_DES_KEY_SIZE], | ||
| const uint8_t | key3[LTC_DES_KEY_SIZE] | ||
| ) |
Decrypts triple DES using CFB block mode with three keys.
| base | LTC peripheral base address | |
| handle | pointer to ltc_edma_handle_t structure which stores the transaction state. | |
| 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 LTC_DES3_EncryptOfbEDMA | ( | LTC_Type * | base, |
| ltc_edma_handle_t * | handle, | ||
| const uint8_t * | plaintext, | ||
| uint8_t * | ciphertext, | ||
| uint32_t | size, | ||
| const uint8_t | iv[LTC_DES_IV_SIZE], | ||
| const uint8_t | key1[LTC_DES_KEY_SIZE], | ||
| const uint8_t | key2[LTC_DES_KEY_SIZE], | ||
| const uint8_t | key3[LTC_DES_KEY_SIZE] | ||
| ) |
Encrypts triple DES using OFB block mode with three keys.
| base | LTC peripheral base address | |
| handle | pointer to ltc_edma_handle_t structure which stores the transaction state. | |
| 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 LTC_DES3_DecryptOfbEDMA | ( | LTC_Type * | base, |
| ltc_edma_handle_t * | handle, | ||
| const uint8_t * | ciphertext, | ||
| uint8_t * | plaintext, | ||
| uint32_t | size, | ||
| const uint8_t | iv[LTC_DES_IV_SIZE], | ||
| const uint8_t | key1[LTC_DES_KEY_SIZE], | ||
| const uint8_t | key2[LTC_DES_KEY_SIZE], | ||
| const uint8_t | key3[LTC_DES_KEY_SIZE] | ||
| ) |
Decrypts triple DES using OFB block mode with three keys.
| base | LTC peripheral base address | |
| handle | pointer to ltc_edma_handle_t structure which stores the transaction state. | |
| 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 |