diff options
Diffstat (limited to 'extra/libkeccak_state_wipe_sponge.c')
-rw-r--r-- | extra/libkeccak_state_wipe_sponge.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/extra/libkeccak_state_wipe_sponge.c b/extra/libkeccak_state_wipe_sponge.c new file mode 100644 index 0000000..91e845a --- /dev/null +++ b/extra/libkeccak_state_wipe_sponge.c @@ -0,0 +1,18 @@ +/* See LICENSE file for copyright and license details. */ +#include "../common.h" + + +/** + * Wipe data in the state's sponge without freeing any data + * + * @param state The state that should be wipe + */ +void +libkeccak_state_wipe_sponge(volatile struct libkeccak_state *state) +{ + volatile int64_t *restrict S = state->S; + size_t i; + + for (i = 0; i < 25; i++) + S[i] = 0; +} |