Loading...
Searching...
No Matches
riot_hashes.h
1/*
2 * Copyright (C) 2022 HAW Hamburg
3 *
4 * This file is subject to the terms and conditions of the GNU Lesser
5 * General Public License v2.1. See the file LICENSE in the top level
6 * directory for more details.
7 */
8
9#pragma once
10
20
21#ifdef __cplusplus
22extern "C" {
23#endif
24
25#include "kernel_defines.h"
26
27#if (IS_USED(MODULE_PSA_RIOT_HASHES_MD5))
28#include "hashes/md5.h"
29
30typedef md5_ctx_t psa_hashes_md5_ctx_t;
31#endif
32
33#if (IS_USED(MODULE_PSA_RIOT_HASHES_SHA_1))
34#include "hashes/sha1.h"
35
37#endif
38
39#if (IS_USED(MODULE_PSA_RIOT_HASHES_SHA_224))
40#include "hashes/sha224.h"
41
43#endif
44
45#if (IS_USED(MODULE_PSA_RIOT_HASHES_SHA_256))
46#include "hashes/sha256.h"
47
49#endif
50
51#if (IS_USED(MODULE_PSA_RIOT_HASHES_SHA_384))
52#include "hashes/sha384.h"
53
54typedef sha384_context_t psa_hashes_sha384_ctx_t;
55#endif
56
57#if (IS_USED(MODULE_PSA_RIOT_HASHES_SHA_512))
58#include "hashes/sha512.h"
59
61#endif
62
63#if (IS_USED(MODULE_PSA_RIOT_HASHES_SHA_512_224))
64#include "hashes/sha512_224.h"
65
66typedef sha512_224_context_t psa_hashes_sha512_224_ctx_t;
67#endif
68
69#if (IS_USED(MODULE_PSA_RIOT_HASHES_SHA_512_256))
70#include "hashes/sha512_256.h"
71
72typedef sha512_256_context_t psa_hashes_sha512_256_ctx_t;
73#endif
74
75#if (IS_USED(MODULE_PSA_RIOT_HASHES_HMAC_SHA256))
76#include "hashes/sha256.h"
77#endif
78
79#if (IS_USED(MODULE_PSA_RIOT_HASHES_SHA3_256) \
80|| IS_USED(MODULE_PSA_RIOT_HASHES_SHA3_384) \
81|| IS_USED(MODULE_PSA_RIOT_HASHES_SHA3_512))
82#include "hashes/sha3.h"
83
84typedef keccak_state_t psa_hashes_sha3_ctx_t;
85#endif
86
87#ifdef __cplusplus
88}
89#endif
90
sha2xx_context_t sha224_context_t
Context for cipher operations based on sha224.
Definition sha224.h:73
sha2xx_context_t sha256_context_t
Context for cipher operations based on sha256.
Definition sha256.h:71
sha512_common_context_t sha384_context_t
Context for cipher operations based on sha384.
Definition sha384.h:45
sha512_common_context_t sha512_224_context_t
Context for cipher operations based on sha512_224.
Definition sha512_224.h:45
sha512_common_context_t sha512_256_context_t
Context for cipher operations based on sha512_256.
Definition sha512_256.h:45
sha512_common_context_t sha512_context_t
Context for cipher operations based on sha512.
Definition sha512.h:45
Common macros and compiler attributes/pragmas configuration.
MD5 interface definition.
CRYS_HASHUserContext_t psa_hashes_sha224_ctx_t
Map driver specific SHA224 context to PSA context.
CRYS_HASHUserContext_t psa_hashes_sha256_ctx_t
Map driver specific SHA256 context to PSA context.
CRYS_HASHUserContext_t psa_hashes_sha512_ctx_t
Map driver specific SHA512 context to PSA context.
CRYS_HASHUserContext_t psa_hashes_sha1_ctx_t
Map driver specific SHA1 context to PSA context.
SHA-1 interface definition.
Header definitions for the SHA224 hash function.
Header definitions for the SHA256 hash function.
Header definitions for the SHA384 hash function.
Header definitions for the SHA-3 hash function.
Header definitions for the SHA512 hash function.
Header definitions for the SHA512/224 hash function.
Header definitions for the SHA512/256 hash function.
Context for operations on a sponge with keccak permutation.
Definition sha3.h:54
MD5 calculation context.
Definition md5.h:71
SHA-1 algorithm context.
Definition sha1.h:48