Bitcoin Core  27.99.0
P2P Digital Currency
Functions
ecmult_const.h File Reference
#include "scalar.h"
#include "group.h"
Include dependency graph for ecmult_const.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

static void secp256k1_ecmult_const (secp256k1_gej *r, const secp256k1_ge *a, const secp256k1_scalar *q)
 Multiply: R = q*A (in constant-time for q) More...
 
static int secp256k1_ecmult_const_xonly (secp256k1_fe *r, const secp256k1_fe *n, const secp256k1_fe *d, const secp256k1_scalar *q, int known_on_curve)
 Same as secp256k1_ecmult_const, but takes in an x coordinate of the base point only, specified as fraction n/d (numerator/denominator). More...
 

Function Documentation

◆ secp256k1_ecmult_const()

static void secp256k1_ecmult_const ( secp256k1_gej r,
const secp256k1_ge a,
const secp256k1_scalar q 
)
static

Multiply: R = q*A (in constant-time for q)

Here is the caller graph for this function:

◆ secp256k1_ecmult_const_xonly()

static int secp256k1_ecmult_const_xonly ( secp256k1_fe r,
const secp256k1_fe n,
const secp256k1_fe d,
const secp256k1_scalar q,
int  known_on_curve 
)
static

Same as secp256k1_ecmult_const, but takes in an x coordinate of the base point only, specified as fraction n/d (numerator/denominator).

Only the x coordinate of the result is returned.

If known_on_curve is 0, a verification is performed that n/d is a valid X coordinate, and 0 is returned if not. Otherwise, 1 is returned.

d being NULL is interpreted as d=1. If non-NULL, d must not be zero. q must not be zero.

Constant time in the value of q, but not any other inputs.

Here is the caller graph for this function: