27#include "curve25519.h"
35#define HAVE_SNTRUP761 1
49#define SNTRUP761_SECRETKEY_SIZE 1763
50#define SNTRUP761_PUBLICKEY_SIZE 1158
51#define SNTRUP761_CIPHERTEXT_SIZE 1039
52#define SNTRUP761_SIZE 32
54typedef void sntrup761_random_func(
void *ctx,
size_t length, uint8_t *dst);
56void sntrup761_keypair(uint8_t *pk,
59 sntrup761_random_func *random);
60void sntrup761_enc(uint8_t *c,
64 sntrup761_random_func *random);
65void sntrup761_dec(uint8_t *k,
const uint8_t *c,
const uint8_t *sk);
67typedef unsigned char ssh_sntrup761_pubkey[SNTRUP761_PUBLICKEY_SIZE];
68typedef unsigned char ssh_sntrup761_privkey[SNTRUP761_SECRETKEY_SIZE];
69typedef unsigned char ssh_sntrup761_ciphertext[SNTRUP761_CIPHERTEXT_SIZE];
71int ssh_client_sntrup761x25519_init(ssh_session session);
72void ssh_client_sntrup761x25519_remove_callbacks(ssh_session session);
75void ssh_server_sntrup761x25519_init(ssh_session session);