Crypto - Thread Stack#

This module includes cryptographic functions.

Typedefs#

Represents a SHA-256 hash.

Functions#

void
otCryptoHmacSha256(const otCryptoKey *aKey, const uint8_t *aBuf, uint16_t aBufLength, otCryptoSha256Hash *aHash)

Performs HMAC computation.

void
otCryptoAesCcm(const otCryptoKey *aKey, uint8_t aTagLength, const void *aNonce, uint8_t aNonceLength, const void *aHeader, uint32_t aHeaderLength, void *aPlainText, void *aCipherText, uint32_t aLength, bool aEncrypt, void *aTag)

Performs AES CCM computation.

Typedef Documentation#

otCryptoSha256Hash#

typedef otPlatCryptoSha256Hash otCryptoSha256Hash

Represents a SHA-256 hash.


Definition at line 60 of file include/openthread/crypto.h

Function Documentation#

otCryptoHmacSha256#

void otCryptoHmacSha256 (const otCryptoKey * aKey, const uint8_t * aBuf, uint16_t aBufLength, otCryptoSha256Hash * aHash)

Performs HMAC computation.

Parameters
[in]aKey

A pointer to the key.

[in]aBuf

A pointer to the input buffer.

[in]aBufLength

The length of aBuf in bytes.

[out]aHash

A pointer to a otCryptoSha256Hash structure to output the hash value.


Definition at line 70 of file include/openthread/crypto.h

otCryptoAesCcm#

void otCryptoAesCcm (const otCryptoKey * aKey, uint8_t aTagLength, const void * aNonce, uint8_t aNonceLength, const void * aHeader, uint32_t aHeaderLength, void * aPlainText, void * aCipherText, uint32_t aLength, bool aEncrypt, void * aTag)

Performs AES CCM computation.

Parameters
[in]aKey

A pointer to the key.

[in]aTagLength

Length of tag in bytes.

[in]aNonce

A pointer to the nonce.

[in]aNonceLength

Length of nonce in bytes.

[in]aHeader

A pointer to the header.

[in]aHeaderLength

Length of header in bytes.

[inout]aPlainText

A pointer to the plaintext.

[inout]aCipherText

A pointer to the ciphertext.

[in]aLength

Plaintext length in bytes.

[in]aEncrypt

true on encrypt and false on decrypt.

[out]aTag

A pointer to the tag.


Definition at line 90 of file include/openthread/crypto.h