Bitcoin Core  0.20.99
P2P Digital Currency
secp256k1_ecdh.h
Go to the documentation of this file.
1 #ifndef SECP256K1_ECDH_H
2 #define SECP256K1_ECDH_H
3 
4 #include "secp256k1.h"
5 
6 #ifdef __cplusplus
7 extern "C" {
8 #endif
9 
19  unsigned char *output,
20  const unsigned char *x,
21  const unsigned char *y,
22  void *data
23 );
24 
27 
30 
43  const secp256k1_context* ctx,
44  unsigned char *output,
45  const secp256k1_pubkey *pubkey,
46  const unsigned char *privkey,
48  void *data
50 
51 #ifdef __cplusplus
52 }
53 #endif
54 
55 #endif /* SECP256K1_ECDH_H */
#define SECP256K1_WARN_UNUSED_RESULT
Warning attributes NONNULL is not used if SECP256K1_BUILD is set to avoid the compiler optimizing out...
Definition: secp256k1.h:149
SECP256K1_API const secp256k1_ecdh_hash_function secp256k1_ecdh_hash_function_sha256
An implementation of SHA256 hash function that applies to compressed public key.
Definition: main_impl.h:26
SECP256K1_API const secp256k1_ecdh_hash_function secp256k1_ecdh_hash_function_default
A default ecdh hash function (currently equal to secp256k1_ecdh_hash_function_sha256).
Definition: main_impl.h:27
static secp256k1_context * ctx
Definition: tests.c:46
#define SECP256K1_ARG_NONNULL(_x)
Definition: secp256k1.h:154
SECP256K1_API SECP256K1_WARN_UNUSED_RESULT int secp256k1_ecdh(const secp256k1_context *ctx, unsigned char *output, const secp256k1_pubkey *pubkey, const unsigned char *privkey, secp256k1_ecdh_hash_function hashfp, void *data) SECP256K1_ARG_NONNULL(1) SECP256K1_ARG_NONNULL(2) SECP256K1_ARG_NONNULL(3) SECP256K1_ARG_NONNULL(4)
Compute an EC Diffie-Hellman secret in constant time Returns: 1: exponentiation was successful 0: sca...
Definition: main_impl.h:29
#define SECP256K1_API
Definition: secp256k1.h:139
int(* secp256k1_ecdh_hash_function)(unsigned char *output, const unsigned char *x, const unsigned char *y, void *data)
A pointer to a function that applies hash function to a point.
Opaque data structure that holds a parsed and valid public key.
Definition: secp256k1.h:66