Contiki-NG
Loading...
Searching...
No Matches

Platform-independent SHA-256 API. More...

#include "contiki.h"
#include <stddef.h>
#include <stdint.h>

Go to the source code of this file.

Data Structures

struct  sha_256_driver
 Structure of SHA-256 drivers. More...
 

Functions

void sha_256_hash (const uint8_t *data, size_t len, uint8_t digest[static 32])
 Generic implementation of sha_256_driver::hash.
 
void sha_256_hmac_init (const uint8_t *key, size_t key_len)
 Initiates a stepwise HMAC-SHA-256 computation.
 
void sha_256_hmac_update (const uint8_t *data, size_t data_len)
 Proceeds with the computation of an HMAC-SHA-256.
 
void sha_256_hmac_finish (uint8_t hmac[static 32])
 Finishes the computation of an HMAC-SHA-256.
 
void sha_256_hmac (const uint8_t *key, size_t key_len, const uint8_t *data, size_t data_len, uint8_t hmac[static 32])
 Computes HMAC-SHA-256 as per RFC 2104.
 
void sha_256_hkdf_extract (const uint8_t *salt, size_t salt_len, const uint8_t *ikm, size_t ikm_len, uint8_t prk[static 32])
 Extracts a key as per RFC 5869.
 
void sha_256_hkdf_expand (const uint8_t *prk, size_t prk_len, const uint8_t *info, size_t info_len, uint8_t *okm, uint_fast16_t okm_len)
 Expands a key as per RFC 5869.
 
void sha_256_hkdf (const uint8_t *salt, size_t salt_len, const uint8_t *ikm, size_t ikm_len, const uint8_t *info, size_t info_len, uint8_t *okm, uint_fast16_t okm_len)
 Performs both extraction and expansion as per RFC 5869.
 

Detailed Description

Platform-independent SHA-256 API.

Author
Konrad Krentz konra.nosp@m.d.kr.nosp@m.entz@.nosp@m.gmai.nosp@m.l.com

Definition in file sha-256.h.