mirror of
https://github.com/trezor/trezor-firmware.git
synced 2024-11-23 07:58:09 +00:00
21 lines
658 B
C
21 lines
658 B
C
|
#ifndef POLY1305_DONNA_H
|
||
|
#define POLY1305_DONNA_H
|
||
|
|
||
|
#include <stddef.h>
|
||
|
|
||
|
typedef struct poly1305_context {
|
||
|
size_t aligner;
|
||
|
unsigned char opaque[136];
|
||
|
} poly1305_context;
|
||
|
|
||
|
void poly1305_init(poly1305_context *ctx, const unsigned char key[32]);
|
||
|
void poly1305_update(poly1305_context *ctx, const unsigned char *m, size_t bytes);
|
||
|
void poly1305_finish(poly1305_context *ctx, unsigned char mac[16]);
|
||
|
void poly1305_auth(unsigned char mac[16], const unsigned char *m, size_t bytes, const unsigned char key[32]);
|
||
|
|
||
|
int poly1305_verify(const unsigned char mac1[16], const unsigned char mac2[16]);
|
||
|
int poly1305_power_on_self_test(void);
|
||
|
|
||
|
#endif /* POLY1305_DONNA_H */
|
||
|
|