19#ifndef OCRYPTO_CSHAKE_H
20#define OCRYPTO_CSHAKE_H
34typedef ocrypto_sha3_ctx ocrypto_cshake_ctx;
56 ocrypto_cshake_ctx *ctx,
57 const uint8_t *n,
size_t n_len,
58 const uint8_t *s,
size_t s_len);
72 ocrypto_cshake_ctx *ctx,
73 const uint8_t *n,
size_t n_len,
74 const uint8_t *s,
size_t s_len);
91 ocrypto_cshake_ctx *ctx,
92 const uint8_t *in,
size_t in_len);
109 ocrypto_cshake_ctx *ctx,
110 const uint8_t *in,
size_t in_len);
130 ocrypto_cshake_ctx *ctx,
131 uint8_t *r,
size_t r_len);
151 ocrypto_cshake_ctx *ctx,
152 uint8_t *r,
size_t r_len);
169 ocrypto_cshake_ctx *ctx,
170 uint8_t *r,
size_t r_len);
187 ocrypto_cshake_ctx *ctx,
188 uint8_t *r,
size_t r_len);
208 uint8_t *r,
size_t r_len,
209 const uint8_t *in,
size_t in_len,
210 const uint8_t *n,
size_t n_len,
211 const uint8_t *s,
size_t s_len);
230 uint8_t *r,
size_t r_len,
231 const uint8_t *in,
size_t in_len,
232 const uint8_t *n,
size_t n_len,
233 const uint8_t *s,
size_t s_len);
void ocrypto_cshake256_final(ocrypto_cshake_ctx *ctx, uint8_t *r, size_t r_len)
void ocrypto_cshake128(uint8_t *r, size_t r_len, const uint8_t *in, size_t in_len, const uint8_t *n, size_t n_len, const uint8_t *s, size_t s_len)
void ocrypto_cshake128_update(ocrypto_cshake_ctx *ctx, const uint8_t *in, size_t in_len)
void ocrypto_cshake256_update(ocrypto_cshake_ctx *ctx, const uint8_t *in, size_t in_len)
void ocrypto_cshake256_init(ocrypto_cshake_ctx *ctx, const uint8_t *n, size_t n_len, const uint8_t *s, size_t s_len)
void ocrypto_cshake256(uint8_t *r, size_t r_len, const uint8_t *in, size_t in_len, const uint8_t *n, size_t n_len, const uint8_t *s, size_t s_len)
void ocrypto_cshake256_ext(ocrypto_cshake_ctx *ctx, uint8_t *r, size_t r_len)
void ocrypto_cshake128_final(ocrypto_cshake_ctx *ctx, uint8_t *r, size_t r_len)
void ocrypto_cshake128_init(ocrypto_cshake_ctx *ctx, const uint8_t *n, size_t n_len, const uint8_t *s, size_t s_len)
void ocrypto_cshake128_ext(ocrypto_cshake_ctx *ctx, uint8_t *r, size_t r_len)