nrfxlib API 3.3.99
Loading...
Searching...
No Matches
ocrypto_curve25519.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2016 - 2025 Nordic Semiconductor ASA
3 * Copyright (c) since 2013 Oberon microsystems AG
4 *
5 * SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
6 */
7
8
28#ifndef OCRYPTO_CURVE25519_H
29#define OCRYPTO_CURVE25519_H
30
31#include "ocrypto_types_25519.h"
32
33
34#ifdef __cplusplus
35extern "C" {
36#endif
37
38
42#define ocrypto_curve25519_SCALAR_BYTES (32)
43
47#define ocrypto_curve25519_BYTES (32)
48
49
62 uint8_t r[ocrypto_curve25519_BYTES],
63 const uint8_t n[ocrypto_curve25519_SCALAR_BYTES]);
64
80 uint8_t r[ocrypto_curve25519_BYTES],
81 const uint8_t n[ocrypto_curve25519_SCALAR_BYTES],
82 const uint8_t p[ocrypto_curve25519_BYTES]);
83
84
99 uint8_t r[ocrypto_curve25519_BYTES],
100 const uint8_t n[ocrypto_curve25519_SCALAR_BYTES]);
101
119 uint8_t r[ocrypto_curve25519_BYTES],
120 const uint8_t n[ocrypto_curve25519_SCALAR_BYTES],
121 const uint8_t p[ocrypto_curve25519_BYTES]);
122
123#ifdef __cplusplus
124}
125#endif
126
127#endif
128
#define ocrypto_curve25519_BYTES
Definition ocrypto_curve25519.h:47
#define ocrypto_curve25519_SCALAR_BYTES
Definition ocrypto_curve25519.h:42
void ocrypto_curve25519_scalarmult(uint8_t r[(32)], const uint8_t n[(32)], const uint8_t p[(32)])
void ocrypto_curve25519_scalarmult_base(uint8_t r[(32)], const uint8_t n[(32)])
void ocrypto_curve25519_scalarmult_ctx(ocrypto_curve25519_ctx *ctx, uint8_t r[(32)], const uint8_t n[(32)], const uint8_t p[(32)])
void ocrypto_curve25519_scalarmult_base_ctx(ocrypto_curve25519_ctx *ctx, uint8_t r[(32)], const uint8_t n[(32)])
Declaration of internal types used in public interfaces.
Definition ocrypto_types_25519.h:101