![]() |
MCUXpresso SDK API Reference Manual
Rev. 0
NXP Semiconductors
|
This section describes the programming interface of the LTC DES driver.
Macros | |
| #define | LTC_DES_KEY_SIZE 8 |
| LTC DES key size - 64 bits. More... | |
| #define | LTC_DES_IV_SIZE 8 |
| LTC DES IV size - 8 bytes. | |
Functions | |
| status_t | LTC_DES_EncryptEcb (LTC_Type *base, 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_DecryptEcb (LTC_Type *base, 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_EncryptCbc (LTC_Type *base, 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_DecryptCbc (LTC_Type *base, 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_EncryptCfb (LTC_Type *base, 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_DecryptCfb (LTC_Type *base, 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_EncryptOfb (LTC_Type *base, 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_DecryptOfb (LTC_Type *base, 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_EncryptEcb (LTC_Type *base, 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_DecryptEcb (LTC_Type *base, 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_EncryptCbc (LTC_Type *base, 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_DecryptCbc (LTC_Type *base, 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_EncryptCfb (LTC_Type *base, 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_DecryptCfb (LTC_Type *base, 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_EncryptOfb (LTC_Type *base, 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_DecryptOfb (LTC_Type *base, 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_EncryptEcb (LTC_Type *base, 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_DecryptEcb (LTC_Type *base, 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_EncryptCbc (LTC_Type *base, 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_DecryptCbc (LTC_Type *base, 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_EncryptCfb (LTC_Type *base, 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_DecryptCfb (LTC_Type *base, 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_EncryptOfb (LTC_Type *base, 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_DecryptOfb (LTC_Type *base, 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... | |
| #define LTC_DES_KEY_SIZE 8 |
| status_t LTC_DES_EncryptEcb | ( | LTC_Type * | base, |
| 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 | |
| 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_DecryptEcb | ( | LTC_Type * | base, |
| 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 | |
| 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_EncryptCbc | ( | LTC_Type * | base, |
| 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 | |
| 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_DecryptCbc | ( | LTC_Type * | base, |
| 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 | |
| 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_EncryptCfb | ( | LTC_Type * | base, |
| 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 | |
| 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_DecryptCfb | ( | LTC_Type * | base, |
| 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 | |
| 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_EncryptOfb | ( | LTC_Type * | base, |
| 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 | |
| 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_DecryptOfb | ( | LTC_Type * | base, |
| 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 | |
| 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_EncryptEcb | ( | LTC_Type * | base, |
| 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 | |
| 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_DecryptEcb | ( | LTC_Type * | base, |
| 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 | |
| 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_EncryptCbc | ( | LTC_Type * | base, |
| 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 | |
| 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_DecryptCbc | ( | LTC_Type * | base, |
| 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 | |
| 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_EncryptCfb | ( | LTC_Type * | base, |
| 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 | |
| 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_DecryptCfb | ( | LTC_Type * | base, |
| 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 | |
| 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_EncryptOfb | ( | LTC_Type * | base, |
| 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 | |
| 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_DecryptOfb | ( | LTC_Type * | base, |
| 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 | |
| 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_EncryptEcb | ( | LTC_Type * | base, |
| 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 | |
| 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_DecryptEcb | ( | LTC_Type * | base, |
| 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 | |
| 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_EncryptCbc | ( | LTC_Type * | base, |
| 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 | |
| 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_DecryptCbc | ( | LTC_Type * | base, |
| 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 | |
| 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_EncryptCfb | ( | LTC_Type * | base, |
| 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 | |
| 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_DecryptCfb | ( | LTC_Type * | base, |
| 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 | |
| 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_EncryptOfb | ( | LTC_Type * | base, |
| 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 | |
| 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_DecryptOfb | ( | LTC_Type * | base, |
| 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 | |
| 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 |