liboqs
Loading...
Searching...
No Matches
sha3_ops.h
Go to the documentation of this file.
1
10#ifndef OQS_SHA3_OPS_H
11#define OQS_SHA3_OPS_H
12
13#include <stddef.h>
14#include <stdint.h>
15
16#include <oqs/common.h>
17
18#if defined(__cplusplus)
19extern "C" {
20#endif
21
23typedef struct {
25 void *ctx;
27
29typedef struct {
31 void *ctx;
33
35typedef struct {
37 void *ctx;
39
41typedef struct {
43 void *ctx;
45
47typedef struct {
49 void *ctx;
51
58 void (*SHA3_sha3_256)(uint8_t *output, const uint8_t *input, size_t inplen);
59
64
68 void (*SHA3_sha3_256_inc_absorb)(OQS_SHA3_sha3_256_inc_ctx *state, const uint8_t *input, size_t inlen);
69
73 void (*SHA3_sha3_256_inc_finalize)(uint8_t *output, OQS_SHA3_sha3_256_inc_ctx *state);
74
79
84
89
93 void (*SHA3_sha3_384)(uint8_t *output, const uint8_t *input, size_t inplen);
94
99
103 void (*SHA3_sha3_384_inc_absorb)(OQS_SHA3_sha3_384_inc_ctx *state, const uint8_t *input, size_t inlen);
104
109
114
119
124
128 void (*SHA3_sha3_512)(uint8_t *output, const uint8_t *input, size_t inplen);
129
134
138 void (*SHA3_sha3_512_inc_absorb)(OQS_SHA3_sha3_512_inc_ctx *state, const uint8_t *input, size_t inlen);
139
144
149
154
159
163 void (*SHA3_shake128)(uint8_t *output, size_t outlen, const uint8_t *input, size_t inplen);
164
169
173 void (*SHA3_shake128_inc_absorb)(OQS_SHA3_shake128_inc_ctx *state, const uint8_t *input, size_t inlen);
174
179
183 void (*SHA3_shake128_inc_squeeze)(uint8_t *output, size_t outlen, OQS_SHA3_shake128_inc_ctx *state);
184
189
194
199
203 void (*SHA3_shake256)(uint8_t *output, size_t outlen, const uint8_t *input, size_t inplen);
204
209
213 void (*SHA3_shake256_inc_absorb)(OQS_SHA3_shake256_inc_ctx *state, const uint8_t *input, size_t inlen);
214
219
223 void (*SHA3_shake256_inc_squeeze)(uint8_t *output, size_t outlen, OQS_SHA3_shake256_inc_ctx *state);
224
229
234
239};
240
251
252#if defined(__cplusplus)
253} // extern "C"
254#endif
255
256#endif // OQS_SHA3_OPS_H
#define OQS_API
Definition common.h:92
OQS_API void OQS_SHA3_set_callbacks(struct OQS_SHA3_callbacks *new_callbacks)
Definition sha3_ops.h:54
void(* SHA3_sha3_384)(uint8_t *output, const uint8_t *input, size_t inplen)
Definition sha3_ops.h:93
void(* SHA3_sha3_512_inc_ctx_clone)(OQS_SHA3_sha3_512_inc_ctx *dest, const OQS_SHA3_sha3_512_inc_ctx *src)
Definition sha3_ops.h:158
void(* SHA3_shake256_inc_init)(OQS_SHA3_shake256_inc_ctx *state)
Definition sha3_ops.h:208
void(* SHA3_sha3_256_inc_ctx_clone)(OQS_SHA3_sha3_256_inc_ctx *dest, const OQS_SHA3_sha3_256_inc_ctx *src)
Definition sha3_ops.h:88
void(* SHA3_shake128_inc_init)(OQS_SHA3_shake128_inc_ctx *state)
Definition sha3_ops.h:168
void(* SHA3_sha3_256_inc_ctx_reset)(OQS_SHA3_sha3_256_inc_ctx *state)
Definition sha3_ops.h:83
void(* SHA3_sha3_384_inc_ctx_clone)(OQS_SHA3_sha3_384_inc_ctx *dest, const OQS_SHA3_sha3_384_inc_ctx *src)
Definition sha3_ops.h:123
void(* SHA3_shake256_inc_ctx_clone)(OQS_SHA3_shake256_inc_ctx *dest, const OQS_SHA3_shake256_inc_ctx *src)
Definition sha3_ops.h:233
void(* SHA3_sha3_512_inc_init)(OQS_SHA3_sha3_512_inc_ctx *state)
Definition sha3_ops.h:133
void(* SHA3_sha3_512)(uint8_t *output, const uint8_t *input, size_t inplen)
Definition sha3_ops.h:128
void(* SHA3_sha3_512_inc_absorb)(OQS_SHA3_sha3_512_inc_ctx *state, const uint8_t *input, size_t inlen)
Definition sha3_ops.h:138
void(* SHA3_shake128_inc_finalize)(OQS_SHA3_shake128_inc_ctx *state)
Definition sha3_ops.h:178
void(* SHA3_sha3_384_inc_ctx_release)(OQS_SHA3_sha3_384_inc_ctx *state)
Definition sha3_ops.h:113
void(* SHA3_shake256_inc_absorb)(OQS_SHA3_shake256_inc_ctx *state, const uint8_t *input, size_t inlen)
Definition sha3_ops.h:213
void(* SHA3_shake128_inc_absorb)(OQS_SHA3_shake128_inc_ctx *state, const uint8_t *input, size_t inlen)
Definition sha3_ops.h:173
void(* SHA3_shake256)(uint8_t *output, size_t outlen, const uint8_t *input, size_t inplen)
Definition sha3_ops.h:203
void(* SHA3_shake128)(uint8_t *output, size_t outlen, const uint8_t *input, size_t inplen)
Definition sha3_ops.h:163
void(* SHA3_shake256_inc_squeeze)(uint8_t *output, size_t outlen, OQS_SHA3_shake256_inc_ctx *state)
Definition sha3_ops.h:223
void(* SHA3_shake256_inc_ctx_reset)(OQS_SHA3_shake256_inc_ctx *state)
Definition sha3_ops.h:238
void(* SHA3_shake256_inc_finalize)(OQS_SHA3_shake256_inc_ctx *state)
Definition sha3_ops.h:218
void(* SHA3_sha3_256_inc_init)(OQS_SHA3_sha3_256_inc_ctx *state)
Definition sha3_ops.h:63
void(* SHA3_shake128_inc_squeeze)(uint8_t *output, size_t outlen, OQS_SHA3_shake128_inc_ctx *state)
Definition sha3_ops.h:183
void(* SHA3_shake128_inc_ctx_clone)(OQS_SHA3_shake128_inc_ctx *dest, const OQS_SHA3_shake128_inc_ctx *src)
Definition sha3_ops.h:193
void(* SHA3_sha3_384_inc_ctx_reset)(OQS_SHA3_sha3_384_inc_ctx *state)
Definition sha3_ops.h:118
void(* SHA3_sha3_512_inc_ctx_reset)(OQS_SHA3_sha3_512_inc_ctx *state)
Definition sha3_ops.h:153
void(* SHA3_sha3_384_inc_init)(OQS_SHA3_sha3_384_inc_ctx *state)
Definition sha3_ops.h:98
void(* SHA3_shake256_inc_ctx_release)(OQS_SHA3_shake256_inc_ctx *state)
Definition sha3_ops.h:228
void(* SHA3_sha3_256_inc_ctx_release)(OQS_SHA3_sha3_256_inc_ctx *state)
Definition sha3_ops.h:78
void(* SHA3_sha3_384_inc_absorb)(OQS_SHA3_sha3_384_inc_ctx *state, const uint8_t *input, size_t inlen)
Definition sha3_ops.h:103
void(* SHA3_sha3_512_inc_finalize)(uint8_t *output, OQS_SHA3_sha3_512_inc_ctx *state)
Definition sha3_ops.h:143
void(* SHA3_shake128_inc_ctx_release)(OQS_SHA3_shake128_inc_ctx *state)
Definition sha3_ops.h:188
void(* SHA3_sha3_384_inc_finalize)(uint8_t *output, OQS_SHA3_sha3_384_inc_ctx *state)
Definition sha3_ops.h:108
void(* SHA3_sha3_256_inc_absorb)(OQS_SHA3_sha3_256_inc_ctx *state, const uint8_t *input, size_t inlen)
Definition sha3_ops.h:68
void(* SHA3_sha3_256_inc_finalize)(uint8_t *output, OQS_SHA3_sha3_256_inc_ctx *state)
Definition sha3_ops.h:73
void(* SHA3_shake128_inc_ctx_reset)(OQS_SHA3_shake128_inc_ctx *state)
Definition sha3_ops.h:198
void(* SHA3_sha3_512_inc_ctx_release)(OQS_SHA3_sha3_512_inc_ctx *state)
Definition sha3_ops.h:148
void(* SHA3_sha3_256)(uint8_t *output, const uint8_t *input, size_t inplen)
Definition sha3_ops.h:58
Definition sha3_ops.h:23
void * ctx
Definition sha3_ops.h:25
Definition sha3_ops.h:29
void * ctx
Definition sha3_ops.h:31
Definition sha3_ops.h:35
void * ctx
Definition sha3_ops.h:37
Definition sha3_ops.h:41
void * ctx
Definition sha3_ops.h:43
Definition sha3_ops.h:47
void * ctx
Definition sha3_ops.h:49