Bitcoin Core
31.1.0
P2P Digital Currency
Toggle main menu visibility
Loading...
Searching...
No Matches
src
secp256k1
src
eckey.h
Go to the documentation of this file.
1
/***********************************************************************
2
* Copyright (c) 2013, 2014 Pieter Wuille *
3
* Distributed under the MIT software license, see the accompanying *
4
* file COPYING or https://www.opensource.org/licenses/mit-license.php.*
5
***********************************************************************/
6
7
#ifndef SECP256K1_ECKEY_H
8
#define SECP256K1_ECKEY_H
9
10
#include <stddef.h>
11
12
#include "
group.h
"
13
#include "
scalar.h
"
14
#include "
ecmult.h
"
15
#include "
ecmult_gen.h
"
16
17
static
int
secp256k1_eckey_pubkey_parse
(
secp256k1_ge
*elem,
const
unsigned
char
*pub,
size_t
size);
19
static
void
secp256k1_eckey_pubkey_serialize33
(
secp256k1_ge
*elem,
unsigned
char
*pub33);
21
static
void
secp256k1_eckey_pubkey_serialize65
(
secp256k1_ge
*elem,
unsigned
char
*pub65);
22
23
static
int
secp256k1_eckey_privkey_tweak_add
(
secp256k1_scalar
*key,
const
secp256k1_scalar
*
tweak
);
24
static
int
secp256k1_eckey_pubkey_tweak_add
(
secp256k1_ge
*key,
const
secp256k1_scalar
*
tweak
);
25
static
int
secp256k1_eckey_privkey_tweak_mul
(
secp256k1_scalar
*key,
const
secp256k1_scalar
*
tweak
);
26
static
int
secp256k1_eckey_pubkey_tweak_mul
(
secp256k1_ge
*key,
const
secp256k1_scalar
*
tweak
);
27
28
#endif
/* SECP256K1_ECKEY_H */
secp256k1_eckey_pubkey_serialize65
static void secp256k1_eckey_pubkey_serialize65(secp256k1_ge *elem, unsigned char *pub65)
Serialize a group element (that is not allowed to be infinity) to an uncompressed public key (65 byte...
secp256k1_eckey_privkey_tweak_add
static int secp256k1_eckey_privkey_tweak_add(secp256k1_scalar *key, const secp256k1_scalar *tweak)
secp256k1_eckey_pubkey_tweak_mul
static int secp256k1_eckey_pubkey_tweak_mul(secp256k1_ge *key, const secp256k1_scalar *tweak)
secp256k1_eckey_pubkey_tweak_add
static int secp256k1_eckey_pubkey_tweak_add(secp256k1_ge *key, const secp256k1_scalar *tweak)
secp256k1_eckey_privkey_tweak_mul
static int secp256k1_eckey_privkey_tweak_mul(secp256k1_scalar *key, const secp256k1_scalar *tweak)
secp256k1_eckey_pubkey_serialize33
static void secp256k1_eckey_pubkey_serialize33(secp256k1_ge *elem, unsigned char *pub33)
Serialize a group element (that is not allowed to be infinity) to a compressed public key (33 bytes).
secp256k1_eckey_pubkey_parse
static int secp256k1_eckey_pubkey_parse(secp256k1_ge *elem, const unsigned char *pub, size_t size)
ecmult.h
ecmult_gen.h
group.h
tweak
static int tweak(const secp256k1_context *ctx, secp256k1_xonly_pubkey *agg_pk, secp256k1_musig_keyagg_cache *cache)
Definition
musig.c:64
scalar.h
secp256k1_ge
A group element in affine coordinates on the secp256k1 curve, or occasionally on an isomorphic curve ...
Definition
group.h:16
secp256k1_scalar
A scalar modulo the group order of the secp256k1 curve.
Definition
scalar_4x64.h:13
Generated on
for Bitcoin Core by
1.17.0