15 #ifndef OPENSSL_HEADER_NEWHOPE_H 16 #define OPENSSL_HEADER_NEWHOPE_H 21 #if defined(__cplusplus) 43 #define NEWHOPE_POLY_LENGTH ((1024 * 14) / 8) 48 #define NEWHOPE_RECONCILIATION_LENGTH ((1024 * 2) / 8) 52 #define NEWHOPE_OFFERMSG_LENGTH (NEWHOPE_POLY_LENGTH + 32) 56 #define NEWHOPE_ACCEPTMSG_LENGTH \ 57 (NEWHOPE_POLY_LENGTH + NEWHOPE_RECONCILIATION_LENGTH) 62 #define NEWHOPE_KEY_LENGTH 32 143 #if defined(__cplusplus) OPENSSL_EXPORT void NEWHOPE_POLY_free(NEWHOPE_POLY *p)
Definition: newhope.c:27
DOMString p
Definition: WebCryptoAPI.idl:116
OPENSSL_EXPORT int NEWHOPE_finish(uint8_t out_key[SHA256_DIGEST_LENGTH], const NEWHOPE_POLY *sk, const uint8_t msg[NEWHOPE_ACCEPTMSG_LENGTH], size_t msg_len)
Definition: newhope.c:109
OPENSSL_EXPORT NEWHOPE_POLY * NEWHOPE_POLY_new(void)
Definition: newhope.c:23
OPENSSL_EXPORT void NEWHOPE_offer_frommsg(NEWHOPE_POLY *out_pk, NEWHOPE_POLY *out_a, const uint8_t msg[NEWHOPE_OFFERMSG_LENGTH])
Definition: newhope.c:169
OPENSSL_EXPORT void NEWHOPE_POLY_tobytes(uint8_t r[NEWHOPE_POLY_LENGTH], const NEWHOPE_POLY *p)
#define NEWHOPE_OFFERMSG_LENGTH
Definition: newhope.h:52
OPENSSL_EXPORT void NEWHOPE_POLY_frombytes(NEWHOPE_POLY *r, const uint8_t a[NEWHOPE_POLY_LENGTH])
Definition: internal.h:34
OPENSSL_EXPORT void NEWHOPE_offer_computation(NEWHOPE_POLY *out_pk, const NEWHOPE_POLY *s, const NEWHOPE_POLY *e, const NEWHOPE_POLY *a)
Definition: newhope.c:133
#define NEWHOPE_KEY_LENGTH
Definition: newhope.h:62
#define OPENSSL_EXPORT
Definition: base.h:160
unsigned char uint8_t
Definition: ptypes.h:89
#define SHA256_DIGEST_LENGTH
Definition: sha.h:155
#define NEWHOPE_ACCEPTMSG_LENGTH
Definition: newhope.h:56
OPENSSL_EXPORT void NEWHOPE_POLY_noise(NEWHOPE_POLY *r)
Definition: poly.c:127
GLboolean GLboolean GLboolean GLboolean a
Definition: gl2ext.h:306
OPENSSL_EXPORT void NEWHOPE_accept_computation(uint8_t out_key[NEWHOPE_KEY_LENGTH], NEWHOPE_POLY *out_bp, NEWHOPE_POLY *out_reconciliation, const NEWHOPE_POLY *sp, const NEWHOPE_POLY *ep, const NEWHOPE_POLY *epp, const uint8_t rand[32], const NEWHOPE_POLY *pk, const NEWHOPE_POLY *a)
Definition: newhope.c:141
#define NEWHOPE_POLY_LENGTH
Definition: newhope.h:43
OPENSSL_EXPORT void NEWHOPE_finish_computation(uint8_t out_key[NEWHOPE_KEY_LENGTH], const NEWHOPE_POLY *noise, const NEWHOPE_POLY *bp, const NEWHOPE_POLY *reconciliation)
Definition: newhope.c:160
OPENSSL_EXPORT void NEWHOPE_POLY_noise_ntt(NEWHOPE_POLY *r)
Definition: poly.c:168
Definition: bytestring_test.cc:31
DOMString e
Definition: WebCryptoAPI.idl:115
OPENSSL_EXPORT void NEWHOPE_offer(uint8_t out_msg[NEWHOPE_OFFERMSG_LENGTH], NEWHOPE_POLY *out_sk)
OPENSSL_EXPORT int NEWHOPE_accept(uint8_t out_key[SHA256_DIGEST_LENGTH], uint8_t out_msg[NEWHOPE_ACCEPTMSG_LENGTH], const uint8_t msg[NEWHOPE_OFFERMSG_LENGTH], size_t msg_len)
Definition: newhope.c:68
GLboolean r
Definition: gl2ext.h:306