|
libcoap 4.3.5b
|
Internal API for interfacing with Crypto libraries. More...
Data Structures | |
| struct | coap_crypto_aes_ccm_t |
| The structure that holds the AES Crypto information. More... | |
| struct | coap_crypto_param_t |
| The common structure that holds the Crypto information. More... | |
Macros | |
| #define | COAP_CRYPTO_MAX_KEY_SIZE (32) |
| #define | COAP_OSCORE_DEFAULT_REPLAY_WINDOW 32 |
Typedefs | |
| typedef coap_bin_const_t | coap_crypto_key_t |
| The structure that holds the Crypto Key. | |
| typedef struct coap_crypto_aes_ccm_t | coap_crypto_aes_ccm_t |
| The structure that holds the AES Crypto information. | |
| typedef struct coap_crypto_param_t | coap_crypto_param_t |
| The common structure that holds the Crypto information. | |
Functions | |
| int | coap_crypto_check_cipher_alg (cose_alg_t alg) |
| Check whether the defined cipher algorithm is supported by the underlying crypto library. | |
| int | coap_crypto_check_hkdf_alg (cose_hkdf_alg_t hkdf_alg) |
| Check whether the defined hkdf algorithm is supported by the underlying crypto library. | |
| int | coap_crypto_aead_encrypt (const coap_crypto_param_t *params, coap_bin_const_t *data, coap_bin_const_t *aad, uint8_t *result, size_t *max_result_len) |
| Encrypt the provided plaintext data. | |
| int | coap_crypto_aead_decrypt (const coap_crypto_param_t *params, coap_bin_const_t *data, coap_bin_const_t *aad, uint8_t *result, size_t *max_result_len) |
| Decrypt the provided encrypted data into plaintext. | |
| int | coap_crypto_hmac (cose_hmac_alg_t hmac_alg, coap_bin_const_t *key, coap_bin_const_t *data, coap_bin_const_t **hmac) |
| Create a HMAC hash of the provided data. | |
| int | coap_crypto_hash (cose_alg_t alg, const coap_bin_const_t *data, coap_bin_const_t **hash) |
| Create a hash of the provided data. | |
Internal API for interfacing with Crypto libraries.
| #define COAP_CRYPTO_MAX_KEY_SIZE (32) |
Definition at line 34 of file coap_crypto_internal.h.
| #define COAP_OSCORE_DEFAULT_REPLAY_WINDOW 32 |
Definition at line 38 of file coap_crypto_internal.h.
| typedef struct coap_crypto_aes_ccm_t coap_crypto_aes_ccm_t |
The structure that holds the AES Crypto information.
| typedef coap_bin_const_t coap_crypto_key_t |
The structure that holds the Crypto Key.
Definition at line 44 of file coap_crypto_internal.h.
| typedef struct coap_crypto_param_t coap_crypto_param_t |
The common structure that holds the Crypto information.
| int coap_crypto_aead_decrypt | ( | const coap_crypto_param_t * | params, |
| coap_bin_const_t * | data, | ||
| coap_bin_const_t * | aad, | ||
| uint8_t * | result, | ||
| size_t * | max_result_len ) |
Decrypt the provided encrypted data into plaintext.
| params | The Encrypt/Decrypt/Hash paramaters. |
| data | The data to decrypt. |
| aad | The additional AAD information. |
| result | Where to put the decrypted data. |
| max_result_len | The maximum size for result (updated with actual size). |
1 if the data was successfully decrypted, else 0. | int coap_crypto_aead_encrypt | ( | const coap_crypto_param_t * | params, |
| coap_bin_const_t * | data, | ||
| coap_bin_const_t * | aad, | ||
| uint8_t * | result, | ||
| size_t * | max_result_len ) |
Encrypt the provided plaintext data.
| params | The Encrypt/Decrypt/Hash paramaters. |
| data | The data to encrypt. |
| aad | The additional AAD information. |
| result | Where to put the encrypted data. |
| max_result_len | The maximum size for result (updated with actual size). |
1 if the data was successfully encrypted, else 0. | int coap_crypto_check_cipher_alg | ( | cose_alg_t | alg | ) |
Check whether the defined cipher algorithm is supported by the underlying crypto library.
| alg | The COSE algorithm to check. |
1 if there is support, else 0. | int coap_crypto_check_hkdf_alg | ( | cose_hkdf_alg_t | hkdf_alg | ) |
Check whether the defined hkdf algorithm is supported by the underlying crypto library.
| hkdf_alg | The COSE HKDF algorithm to check. |
1 if there is support, else 0. | int coap_crypto_hash | ( | cose_alg_t | alg, |
| const coap_bin_const_t * | data, | ||
| coap_bin_const_t ** | hash ) |
Create a hash of the provided data.
| alg | The hash algorithm. |
| data | The data to hash. |
| hash | Where to put the hash result if successful. |
1 if the data was successfully hashed, else 0. It is the responsibility of the caller to release the created hash. | int coap_crypto_hmac | ( | cose_hmac_alg_t | hmac_alg, |
| coap_bin_const_t * | key, | ||
| coap_bin_const_t * | data, | ||
| coap_bin_const_t ** | hmac ) |
Create a HMAC hash of the provided data.
| hmac_alg | The COSE HMAC algorithm to use. |
| key | The key to use for the hash. |
| data | The data to hash. |
| hmac | Where to put the created hmac result if successful. |
1 if the hmac of the data was successful, else 0. It is the responsibility of the caller to release the created hmac.