OpenSSL  1.0.1c
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros
Classes | Macros | Typedefs | Functions
ec_lcl.h File Reference
#include <stdlib.h>
#include <openssl/obj_mac.h>
#include <openssl/ec.h>
#include <openssl/bn.h>

Go to the source code of this file.

Classes

struct  ec_method_st
 
struct  ec_extra_data_st
 
struct  ec_group_st
 
struct  ec_key_st
 
struct  ec_point_st
 

Macros

#define EC_FLAGS_DEFAULT_OCT   0x1
 

Typedefs

typedef struct ec_extra_data_st EC_EXTRA_DATA
 

Functions

int EC_EX_DATA_set_data (EC_EXTRA_DATA **, void *data, void *(*dup_func)(void *), void(*free_func)(void *), void(*clear_free_func)(void *))
 
voidEC_EX_DATA_get_data (const EC_EXTRA_DATA *, void *(*dup_func)(void *), void(*free_func)(void *), void(*clear_free_func)(void *))
 
void EC_EX_DATA_free_data (EC_EXTRA_DATA **, void *(*dup_func)(void *), void(*free_func)(void *), void(*clear_free_func)(void *))
 
void EC_EX_DATA_clear_free_data (EC_EXTRA_DATA **, void *(*dup_func)(void *), void(*free_func)(void *), void(*clear_free_func)(void *))
 
void EC_EX_DATA_free_all_data (EC_EXTRA_DATA **)
 
void EC_EX_DATA_clear_free_all_data (EC_EXTRA_DATA **)
 
int ec_wNAF_mul (const EC_GROUP *group, EC_POINT *r, const BIGNUM *scalar, size_t num, const EC_POINT *points[], const BIGNUM *scalars[], BN_CTX *)
 
int ec_wNAF_precompute_mult (EC_GROUP *group, BN_CTX *)
 
int ec_wNAF_have_precompute_mult (const EC_GROUP *group)
 
int ec_GFp_simple_group_init (EC_GROUP *)
 
void ec_GFp_simple_group_finish (EC_GROUP *)
 
void ec_GFp_simple_group_clear_finish (EC_GROUP *)
 
int ec_GFp_simple_group_copy (EC_GROUP *, const EC_GROUP *)
 
int ec_GFp_simple_group_set_curve (EC_GROUP *, const BIGNUM *p, const BIGNUM *a, const BIGNUM *b, BN_CTX *)
 
int ec_GFp_simple_group_get_curve (const EC_GROUP *, BIGNUM *p, BIGNUM *a, BIGNUM *b, BN_CTX *)
 
int ec_GFp_simple_group_get_degree (const EC_GROUP *)
 
int ec_GFp_simple_group_check_discriminant (const EC_GROUP *, BN_CTX *)
 
int ec_GFp_simple_point_init (EC_POINT *)
 
void ec_GFp_simple_point_finish (EC_POINT *)
 
void ec_GFp_simple_point_clear_finish (EC_POINT *)
 
int ec_GFp_simple_point_copy (EC_POINT *, const EC_POINT *)
 
int ec_GFp_simple_point_set_to_infinity (const EC_GROUP *, EC_POINT *)
 
int ec_GFp_simple_set_Jprojective_coordinates_GFp (const EC_GROUP *, EC_POINT *, const BIGNUM *x, const BIGNUM *y, const BIGNUM *z, BN_CTX *)
 
int ec_GFp_simple_get_Jprojective_coordinates_GFp (const EC_GROUP *, const EC_POINT *, BIGNUM *x, BIGNUM *y, BIGNUM *z, BN_CTX *)
 
int ec_GFp_simple_point_set_affine_coordinates (const EC_GROUP *, EC_POINT *, const BIGNUM *x, const BIGNUM *y, BN_CTX *)
 
int ec_GFp_simple_point_get_affine_coordinates (const EC_GROUP *, const EC_POINT *, BIGNUM *x, BIGNUM *y, BN_CTX *)
 
int ec_GFp_simple_set_compressed_coordinates (const EC_GROUP *, EC_POINT *, const BIGNUM *x, int y_bit, BN_CTX *)
 
size_t ec_GFp_simple_point2oct (const EC_GROUP *, const EC_POINT *, point_conversion_form_t form, unsigned char *buf, size_t len, BN_CTX *)
 
int ec_GFp_simple_oct2point (const EC_GROUP *, EC_POINT *, const unsigned char *buf, size_t len, BN_CTX *)
 
int ec_GFp_simple_add (const EC_GROUP *, EC_POINT *r, const EC_POINT *a, const EC_POINT *b, BN_CTX *)
 
int ec_GFp_simple_dbl (const EC_GROUP *, EC_POINT *r, const EC_POINT *a, BN_CTX *)
 
int ec_GFp_simple_invert (const EC_GROUP *, EC_POINT *, BN_CTX *)
 
int ec_GFp_simple_is_at_infinity (const EC_GROUP *, const EC_POINT *)
 
int ec_GFp_simple_is_on_curve (const EC_GROUP *, const EC_POINT *, BN_CTX *)
 
int ec_GFp_simple_cmp (const EC_GROUP *, const EC_POINT *a, const EC_POINT *b, BN_CTX *)
 
int ec_GFp_simple_make_affine (const EC_GROUP *, EC_POINT *, BN_CTX *)
 
int ec_GFp_simple_points_make_affine (const EC_GROUP *, size_t num, EC_POINT *[], BN_CTX *)
 
int ec_GFp_simple_field_mul (const EC_GROUP *, BIGNUM *r, const BIGNUM *a, const BIGNUM *b, BN_CTX *)
 
int ec_GFp_simple_field_sqr (const EC_GROUP *, BIGNUM *r, const BIGNUM *a, BN_CTX *)
 
int ec_GFp_mont_group_init (EC_GROUP *)
 
int ec_GFp_mont_group_set_curve (EC_GROUP *, const BIGNUM *p, const BIGNUM *a, const BIGNUM *b, BN_CTX *)
 
void ec_GFp_mont_group_finish (EC_GROUP *)
 
void ec_GFp_mont_group_clear_finish (EC_GROUP *)
 
int ec_GFp_mont_group_copy (EC_GROUP *, const EC_GROUP *)
 
int ec_GFp_mont_field_mul (const EC_GROUP *, BIGNUM *r, const BIGNUM *a, const BIGNUM *b, BN_CTX *)
 
int ec_GFp_mont_field_sqr (const EC_GROUP *, BIGNUM *r, const BIGNUM *a, BN_CTX *)
 
int ec_GFp_mont_field_encode (const EC_GROUP *, BIGNUM *r, const BIGNUM *a, BN_CTX *)
 
int ec_GFp_mont_field_decode (const EC_GROUP *, BIGNUM *r, const BIGNUM *a, BN_CTX *)
 
int ec_GFp_mont_field_set_to_one (const EC_GROUP *, BIGNUM *r, BN_CTX *)
 
int ec_GFp_nist_group_copy (EC_GROUP *dest, const EC_GROUP *src)
 
int ec_GFp_nist_group_set_curve (EC_GROUP *, const BIGNUM *p, const BIGNUM *a, const BIGNUM *b, BN_CTX *)
 
int ec_GFp_nist_field_mul (const EC_GROUP *, BIGNUM *r, const BIGNUM *a, const BIGNUM *b, BN_CTX *)
 
int ec_GFp_nist_field_sqr (const EC_GROUP *, BIGNUM *r, const BIGNUM *a, BN_CTX *)
 
int ec_GF2m_simple_group_init (EC_GROUP *)
 
void ec_GF2m_simple_group_finish (EC_GROUP *)
 
void ec_GF2m_simple_group_clear_finish (EC_GROUP *)
 
int ec_GF2m_simple_group_copy (EC_GROUP *, const EC_GROUP *)
 
int ec_GF2m_simple_group_set_curve (EC_GROUP *, const BIGNUM *p, const BIGNUM *a, const BIGNUM *b, BN_CTX *)
 
int ec_GF2m_simple_group_get_curve (const EC_GROUP *, BIGNUM *p, BIGNUM *a, BIGNUM *b, BN_CTX *)
 
int ec_GF2m_simple_group_get_degree (const EC_GROUP *)
 
int ec_GF2m_simple_group_check_discriminant (const EC_GROUP *, BN_CTX *)
 
int ec_GF2m_simple_point_init (EC_POINT *)
 
void ec_GF2m_simple_point_finish (EC_POINT *)
 
void ec_GF2m_simple_point_clear_finish (EC_POINT *)
 
int ec_GF2m_simple_point_copy (EC_POINT *, const EC_POINT *)
 
int ec_GF2m_simple_point_set_to_infinity (const EC_GROUP *, EC_POINT *)
 
int ec_GF2m_simple_point_set_affine_coordinates (const EC_GROUP *, EC_POINT *, const BIGNUM *x, const BIGNUM *y, BN_CTX *)
 
int ec_GF2m_simple_point_get_affine_coordinates (const EC_GROUP *, const EC_POINT *, BIGNUM *x, BIGNUM *y, BN_CTX *)
 
int ec_GF2m_simple_set_compressed_coordinates (const EC_GROUP *, EC_POINT *, const BIGNUM *x, int y_bit, BN_CTX *)
 
size_t ec_GF2m_simple_point2oct (const EC_GROUP *, const EC_POINT *, point_conversion_form_t form, unsigned char *buf, size_t len, BN_CTX *)
 
int ec_GF2m_simple_oct2point (const EC_GROUP *, EC_POINT *, const unsigned char *buf, size_t len, BN_CTX *)
 
int ec_GF2m_simple_add (const EC_GROUP *, EC_POINT *r, const EC_POINT *a, const EC_POINT *b, BN_CTX *)
 
int ec_GF2m_simple_dbl (const EC_GROUP *, EC_POINT *r, const EC_POINT *a, BN_CTX *)
 
int ec_GF2m_simple_invert (const EC_GROUP *, EC_POINT *, BN_CTX *)
 
int ec_GF2m_simple_is_at_infinity (const EC_GROUP *, const EC_POINT *)
 
int ec_GF2m_simple_is_on_curve (const EC_GROUP *, const EC_POINT *, BN_CTX *)
 
int ec_GF2m_simple_cmp (const EC_GROUP *, const EC_POINT *a, const EC_POINT *b, BN_CTX *)
 
int ec_GF2m_simple_make_affine (const EC_GROUP *, EC_POINT *, BN_CTX *)
 
int ec_GF2m_simple_points_make_affine (const EC_GROUP *, size_t num, EC_POINT *[], BN_CTX *)
 
int ec_GF2m_simple_field_mul (const EC_GROUP *, BIGNUM *r, const BIGNUM *a, const BIGNUM *b, BN_CTX *)
 
int ec_GF2m_simple_field_sqr (const EC_GROUP *, BIGNUM *r, const BIGNUM *a, BN_CTX *)
 
int ec_GF2m_simple_field_div (const EC_GROUP *, BIGNUM *r, const BIGNUM *a, const BIGNUM *b, BN_CTX *)
 
int ec_GF2m_simple_mul (const EC_GROUP *group, EC_POINT *r, const BIGNUM *scalar, size_t num, const EC_POINT *points[], const BIGNUM *scalars[], BN_CTX *)
 
int ec_GF2m_precompute_mult (EC_GROUP *group, BN_CTX *ctx)
 
int ec_GF2m_have_precompute_mult (const EC_GROUP *group)
 
int ec_GFp_nistp224_group_init (EC_GROUP *group)
 
int ec_GFp_nistp224_group_set_curve (EC_GROUP *group, const BIGNUM *p, const BIGNUM *a, const BIGNUM *n, BN_CTX *)
 
int ec_GFp_nistp224_point_get_affine_coordinates (const EC_GROUP *group, const EC_POINT *point, BIGNUM *x, BIGNUM *y, BN_CTX *ctx)
 
int ec_GFp_nistp224_mul (const EC_GROUP *group, EC_POINT *r, const BIGNUM *scalar, size_t num, const EC_POINT *points[], const BIGNUM *scalars[], BN_CTX *)
 
int ec_GFp_nistp224_points_mul (const EC_GROUP *group, EC_POINT *r, const BIGNUM *scalar, size_t num, const EC_POINT *points[], const BIGNUM *scalars[], BN_CTX *ctx)
 
int ec_GFp_nistp224_precompute_mult (EC_GROUP *group, BN_CTX *ctx)
 
int ec_GFp_nistp224_have_precompute_mult (const EC_GROUP *group)
 
int ec_GFp_nistp256_group_init (EC_GROUP *group)
 
int ec_GFp_nistp256_group_set_curve (EC_GROUP *group, const BIGNUM *p, const BIGNUM *a, const BIGNUM *n, BN_CTX *)
 
int ec_GFp_nistp256_point_get_affine_coordinates (const EC_GROUP *group, const EC_POINT *point, BIGNUM *x, BIGNUM *y, BN_CTX *ctx)
 
int ec_GFp_nistp256_mul (const EC_GROUP *group, EC_POINT *r, const BIGNUM *scalar, size_t num, const EC_POINT *points[], const BIGNUM *scalars[], BN_CTX *)
 
int ec_GFp_nistp256_points_mul (const EC_GROUP *group, EC_POINT *r, const BIGNUM *scalar, size_t num, const EC_POINT *points[], const BIGNUM *scalars[], BN_CTX *ctx)
 
int ec_GFp_nistp256_precompute_mult (EC_GROUP *group, BN_CTX *ctx)
 
int ec_GFp_nistp256_have_precompute_mult (const EC_GROUP *group)
 
int ec_GFp_nistp521_group_init (EC_GROUP *group)
 
int ec_GFp_nistp521_group_set_curve (EC_GROUP *group, const BIGNUM *p, const BIGNUM *a, const BIGNUM *n, BN_CTX *)
 
int ec_GFp_nistp521_point_get_affine_coordinates (const EC_GROUP *group, const EC_POINT *point, BIGNUM *x, BIGNUM *y, BN_CTX *ctx)
 
int ec_GFp_nistp521_mul (const EC_GROUP *group, EC_POINT *r, const BIGNUM *scalar, size_t num, const EC_POINT *points[], const BIGNUM *scalars[], BN_CTX *)
 
int ec_GFp_nistp521_points_mul (const EC_GROUP *group, EC_POINT *r, const BIGNUM *scalar, size_t num, const EC_POINT *points[], const BIGNUM *scalars[], BN_CTX *ctx)
 
int ec_GFp_nistp521_precompute_mult (EC_GROUP *group, BN_CTX *ctx)
 
int ec_GFp_nistp521_have_precompute_mult (const EC_GROUP *group)
 
void ec_GFp_nistp_points_make_affine_internal (size_t num, void *point_array, size_t felem_size, void *tmp_felems, void(*felem_one)(void *out), int(*felem_is_zero)(const void *in), void(*felem_assign)(void *out, const void *in), void(*felem_square)(void *out, const void *in), void(*felem_mul)(void *out, const void *in1, const void *in2), void(*felem_inv)(void *out, const void *in), void(*felem_contract)(void *out, const void *in))
 
void ec_GFp_nistp_recode_scalar_bits (unsigned char *sign, unsigned char *digit, unsigned char in)
 

Macro Definition Documentation

#define EC_FLAGS_DEFAULT_OCT   0x1

Definition at line 86 of file ec_lcl.h.

Typedef Documentation

Function Documentation

void EC_EX_DATA_clear_free_all_data ( EC_EXTRA_DATA **  )

Definition at line 670 of file ec_lib.c.

void EC_EX_DATA_clear_free_data ( EC_EXTRA_DATA **  ,
void *(*)(void *)  dup_func,
void(*)(void *)  free_func,
void(*)(void *)  clear_free_func 
)

Definition at line 625 of file ec_lib.c.

void EC_EX_DATA_free_all_data ( EC_EXTRA_DATA **  )

Definition at line 649 of file ec_lib.c.

void EC_EX_DATA_free_data ( EC_EXTRA_DATA **  ,
void *(*)(void *)  dup_func,
void(*)(void *)  free_func,
void(*)(void *)  clear_free_func 
)

Definition at line 601 of file ec_lib.c.

void* EC_EX_DATA_get_data ( const EC_EXTRA_DATA ,
void *(*)(void *)  dup_func,
void(*)(void *)  free_func,
void(*)(void *)  clear_free_func 
)

Definition at line 586 of file ec_lib.c.

int EC_EX_DATA_set_data ( EC_EXTRA_DATA **  ,
void data,
void *(*)(void *)  dup_func,
void(*)(void *)  free_func,
void(*)(void *)  clear_free_func 
)

Definition at line 549 of file ec_lib.c.

int ec_GF2m_have_precompute_mult ( const EC_GROUP group)

Definition at line 385 of file ec2_mult.c.

int ec_GF2m_precompute_mult ( EC_GROUP group,
BN_CTX ctx 
)

Definition at line 380 of file ec2_mult.c.

int ec_GF2m_simple_add ( const EC_GROUP ,
EC_POINT r,
const EC_POINT a,
const EC_POINT b,
BN_CTX  
)

Definition at line 420 of file ec2_smpl.c.

int ec_GF2m_simple_cmp ( const EC_GROUP ,
const EC_POINT a,
const EC_POINT b,
BN_CTX  
)

Definition at line 605 of file ec2_smpl.c.

int ec_GF2m_simple_dbl ( const EC_GROUP ,
EC_POINT r,
const EC_POINT a,
BN_CTX  
)

Definition at line 522 of file ec2_smpl.c.

int ec_GF2m_simple_field_div ( const EC_GROUP ,
BIGNUM r,
const BIGNUM a,
const BIGNUM b,
BN_CTX  
)

Definition at line 714 of file ec2_smpl.c.

int ec_GF2m_simple_field_mul ( const EC_GROUP ,
BIGNUM r,
const BIGNUM a,
const BIGNUM b,
BN_CTX  
)

Definition at line 700 of file ec2_smpl.c.

int ec_GF2m_simple_field_sqr ( const EC_GROUP ,
BIGNUM r,
const BIGNUM a,
BN_CTX  
)

Definition at line 707 of file ec2_smpl.c.

int ec_GF2m_simple_group_check_discriminant ( const EC_GROUP ,
BN_CTX  
)

Definition at line 266 of file ec2_smpl.c.

void ec_GF2m_simple_group_clear_finish ( EC_GROUP )

Definition at line 159 of file ec2_smpl.c.

int ec_GF2m_simple_group_copy ( EC_GROUP ,
const EC_GROUP  
)

Definition at line 176 of file ec2_smpl.c.

void ec_GF2m_simple_group_finish ( EC_GROUP )

Definition at line 148 of file ec2_smpl.c.

int ec_GF2m_simple_group_get_curve ( const EC_GROUP ,
BIGNUM p,
BIGNUM a,
BIGNUM b,
BN_CTX  
)

Definition at line 230 of file ec2_smpl.c.

int ec_GF2m_simple_group_get_degree ( const EC_GROUP )

Definition at line 257 of file ec2_smpl.c.

int ec_GF2m_simple_group_init ( EC_GROUP )

Definition at line 136 of file ec2_smpl.c.

int ec_GF2m_simple_group_set_curve ( EC_GROUP ,
const BIGNUM p,
const BIGNUM a,
const BIGNUM b,
BN_CTX  
)

Definition at line 197 of file ec2_smpl.c.

int ec_GF2m_simple_invert ( const EC_GROUP ,
EC_POINT ,
BN_CTX  
)

Definition at line 528 of file ec2_smpl.c.

int ec_GF2m_simple_is_at_infinity ( const EC_GROUP ,
const EC_POINT  
)

Definition at line 540 of file ec2_smpl.c.

int ec_GF2m_simple_is_on_curve ( const EC_GROUP ,
const EC_POINT ,
BN_CTX  
)

Definition at line 550 of file ec2_smpl.c.

int ec_GF2m_simple_make_affine ( const EC_GROUP ,
EC_POINT ,
BN_CTX  
)

Definition at line 650 of file ec2_smpl.c.

int ec_GF2m_simple_mul ( const EC_GROUP group,
EC_POINT r,
const BIGNUM scalar,
size_t  num,
const EC_POINT points[],
const BIGNUM scalars[],
BN_CTX  
)

Definition at line 317 of file ec2_mult.c.

int ec_GF2m_simple_oct2point ( const EC_GROUP ,
EC_POINT ,
const unsigned char *  buf,
size_t  len,
BN_CTX  
)

Definition at line 297 of file ec2_oct.c.

size_t ec_GF2m_simple_point2oct ( const EC_GROUP ,
const EC_POINT ,
point_conversion_form_t  form,
unsigned char *  buf,
size_t  len,
BN_CTX  
)

Definition at line 165 of file ec2_oct.c.

void ec_GF2m_simple_point_clear_finish ( EC_POINT )

Definition at line 323 of file ec2_smpl.c.

int ec_GF2m_simple_point_copy ( EC_POINT ,
const EC_POINT  
)

Definition at line 333 of file ec2_smpl.c.

void ec_GF2m_simple_point_finish ( EC_POINT )

Definition at line 314 of file ec2_smpl.c.

int ec_GF2m_simple_point_get_affine_coordinates ( const EC_GROUP ,
const EC_POINT ,
BIGNUM x,
BIGNUM y,
BN_CTX  
)

Definition at line 385 of file ec2_smpl.c.

int ec_GF2m_simple_point_init ( EC_POINT )

Definition at line 304 of file ec2_smpl.c.

int ec_GF2m_simple_point_set_affine_coordinates ( const EC_GROUP ,
EC_POINT ,
const BIGNUM x,
const BIGNUM y,
BN_CTX  
)

Definition at line 358 of file ec2_smpl.c.

int ec_GF2m_simple_point_set_to_infinity ( const EC_GROUP ,
EC_POINT  
)

Definition at line 347 of file ec2_smpl.c.

int ec_GF2m_simple_points_make_affine ( const EC_GROUP ,
size_t  num,
EC_POINT [],
BN_CTX  
)

Definition at line 686 of file ec2_smpl.c.

int ec_GF2m_simple_set_compressed_coordinates ( const EC_GROUP ,
EC_POINT ,
const BIGNUM x,
int  y_bit,
BN_CTX  
)

Definition at line 91 of file ec2_oct.c.

int ec_GFp_mont_field_decode ( const EC_GROUP ,
BIGNUM r,
const BIGNUM a,
BN_CTX  
)

Definition at line 301 of file ecp_mont.c.

int ec_GFp_mont_field_encode ( const EC_GROUP ,
BIGNUM r,
const BIGNUM a,
BN_CTX  
)

Definition at line 289 of file ecp_mont.c.

int ec_GFp_mont_field_mul ( const EC_GROUP ,
BIGNUM r,
const BIGNUM a,
const BIGNUM b,
BN_CTX  
)

Definition at line 265 of file ecp_mont.c.

int ec_GFp_mont_field_set_to_one ( const EC_GROUP ,
BIGNUM r,
BN_CTX  
)

Definition at line 313 of file ecp_mont.c.

int ec_GFp_mont_field_sqr ( const EC_GROUP ,
BIGNUM r,
const BIGNUM a,
BN_CTX  
)

Definition at line 277 of file ecp_mont.c.

void ec_GFp_mont_group_clear_finish ( EC_GROUP )

Definition at line 150 of file ecp_mont.c.

int ec_GFp_mont_group_copy ( EC_GROUP ,
const EC_GROUP  
)

Definition at line 166 of file ecp_mont.c.

void ec_GFp_mont_group_finish ( EC_GROUP )

Definition at line 134 of file ecp_mont.c.

int ec_GFp_mont_group_init ( EC_GROUP )

Definition at line 123 of file ecp_mont.c.

int ec_GFp_mont_group_set_curve ( EC_GROUP ,
const BIGNUM p,
const BIGNUM a,
const BIGNUM b,
BN_CTX  
)

Definition at line 205 of file ecp_mont.c.

int ec_GFp_nist_field_mul ( const EC_GROUP ,
BIGNUM r,
const BIGNUM a,
const BIGNUM b,
BN_CTX  
)

Definition at line 168 of file ecp_nist.c.

int ec_GFp_nist_field_sqr ( const EC_GROUP ,
BIGNUM r,
const BIGNUM a,
BN_CTX  
)

Definition at line 194 of file ecp_nist.c.

int ec_GFp_nist_group_copy ( EC_GROUP dest,
const EC_GROUP src 
)

Definition at line 122 of file ecp_nist.c.

int ec_GFp_nist_group_set_curve ( EC_GROUP ,
const BIGNUM p,
const BIGNUM a,
const BIGNUM b,
BN_CTX  
)

Definition at line 129 of file ecp_nist.c.

int ec_GFp_nistp224_group_init ( EC_GROUP group)

Definition at line 1207 of file ecp_nistp224.c.

int ec_GFp_nistp224_group_set_curve ( EC_GROUP group,
const BIGNUM p,
const BIGNUM a,
const BIGNUM n,
BN_CTX  
)

Definition at line 1215 of file ecp_nistp224.c.

int ec_GFp_nistp224_have_precompute_mult ( const EC_GROUP group)

Definition at line 1646 of file ecp_nistp224.c.

int ec_GFp_nistp224_mul ( const EC_GROUP group,
EC_POINT r,
const BIGNUM scalar,
size_t  num,
const EC_POINT points[],
const BIGNUM scalars[],
BN_CTX  
)
int ec_GFp_nistp224_point_get_affine_coordinates ( const EC_GROUP group,
const EC_POINT point,
BIGNUM x,
BIGNUM y,
BN_CTX ctx 
)

Definition at line 1249 of file ecp_nistp224.c.

int ec_GFp_nistp224_points_mul ( const EC_GROUP group,
EC_POINT r,
const BIGNUM scalar,
size_t  num,
const EC_POINT points[],
const BIGNUM scalars[],
BN_CTX ctx 
)

Definition at line 1309 of file ecp_nistp224.c.

int ec_GFp_nistp224_precompute_mult ( EC_GROUP group,
BN_CTX ctx 
)

Definition at line 1517 of file ecp_nistp224.c.

int ec_GFp_nistp256_group_init ( EC_GROUP group)

Definition at line 1725 of file ecp_nistp256.c.

int ec_GFp_nistp256_group_set_curve ( EC_GROUP group,
const BIGNUM p,
const BIGNUM a,
const BIGNUM n,
BN_CTX  
)

Definition at line 1733 of file ecp_nistp256.c.

int ec_GFp_nistp256_have_precompute_mult ( const EC_GROUP group)

Definition at line 2160 of file ecp_nistp256.c.

int ec_GFp_nistp256_mul ( const EC_GROUP group,
EC_POINT r,
const BIGNUM scalar,
size_t  num,
const EC_POINT points[],
const BIGNUM scalars[],
BN_CTX  
)
int ec_GFp_nistp256_point_get_affine_coordinates ( const EC_GROUP group,
const EC_POINT point,
BIGNUM x,
BIGNUM y,
BN_CTX ctx 
)

Definition at line 1767 of file ecp_nistp256.c.

int ec_GFp_nistp256_points_mul ( const EC_GROUP group,
EC_POINT r,
const BIGNUM scalar,
size_t  num,
const EC_POINT points[],
const BIGNUM scalars[],
BN_CTX ctx 
)

Definition at line 1829 of file ecp_nistp256.c.

int ec_GFp_nistp256_precompute_mult ( EC_GROUP group,
BN_CTX ctx 
)

Definition at line 2037 of file ecp_nistp256.c.

int ec_GFp_nistp521_group_init ( EC_GROUP group)

Definition at line 1592 of file ecp_nistp521.c.

int ec_GFp_nistp521_group_set_curve ( EC_GROUP group,
const BIGNUM p,
const BIGNUM a,
const BIGNUM n,
BN_CTX  
)

Definition at line 1600 of file ecp_nistp521.c.

int ec_GFp_nistp521_have_precompute_mult ( const EC_GROUP group)

Definition at line 2013 of file ecp_nistp521.c.

int ec_GFp_nistp521_mul ( const EC_GROUP group,
EC_POINT r,
const BIGNUM scalar,
size_t  num,
const EC_POINT points[],
const BIGNUM scalars[],
BN_CTX  
)
int ec_GFp_nistp521_point_get_affine_coordinates ( const EC_GROUP group,
const EC_POINT point,
BIGNUM x,
BIGNUM y,
BN_CTX ctx 
)

Definition at line 1634 of file ecp_nistp521.c.

int ec_GFp_nistp521_points_mul ( const EC_GROUP group,
EC_POINT r,
const BIGNUM scalar,
size_t  num,
const EC_POINT points[],
const BIGNUM scalars[],
BN_CTX ctx 
)

Definition at line 1694 of file ecp_nistp521.c.

int ec_GFp_nistp521_precompute_mult ( EC_GROUP group,
BN_CTX ctx 
)

Definition at line 1902 of file ecp_nistp521.c.

void ec_GFp_nistp_points_make_affine_internal ( size_t  num,
void point_array,
size_t  felem_size,
void tmp_felems,
void(*)(void *out felem_one,
int(*)(const void *in felem_is_zero,
void(*)(void *out, const void *in felem_assign,
void(*)(void *out, const void *in felem_square,
void(*)(void *out, const void *in1, const void *in2)  felem_mul,
void(*)(void *out, const void *in felem_inv,
void(*)(void *out, const void *in felem_contract 
)

Definition at line 44 of file ecp_nistputil.c.

void ec_GFp_nistp_recode_scalar_bits ( unsigned char *  sign,
unsigned char *  digit,
unsigned char  in 
)

Definition at line 183 of file ecp_nistputil.c.

int ec_GFp_simple_add ( const EC_GROUP ,
EC_POINT r,
const EC_POINT a,
const EC_POINT b,
BN_CTX  
)

Definition at line 643 of file ecp_smpl.c.

int ec_GFp_simple_cmp ( const EC_GROUP ,
const EC_POINT a,
const EC_POINT b,
BN_CTX  
)

Definition at line 1031 of file ecp_smpl.c.

int ec_GFp_simple_dbl ( const EC_GROUP ,
EC_POINT r,
const EC_POINT a,
BN_CTX  
)

Definition at line 807 of file ecp_smpl.c.

int ec_GFp_simple_field_mul ( const EC_GROUP ,
BIGNUM r,
const BIGNUM a,
const BIGNUM b,
BN_CTX  
)

Definition at line 1351 of file ecp_smpl.c.

int ec_GFp_simple_field_sqr ( const EC_GROUP ,
BIGNUM r,
const BIGNUM a,
BN_CTX  
)

Definition at line 1357 of file ecp_smpl.c.

int ec_GFp_simple_get_Jprojective_coordinates_GFp ( const EC_GROUP ,
const EC_POINT ,
BIGNUM x,
BIGNUM y,
BIGNUM z,
BN_CTX  
)

Definition at line 461 of file ecp_smpl.c.

int ec_GFp_simple_group_check_discriminant ( const EC_GROUP ,
BN_CTX  
)

Definition at line 287 of file ecp_smpl.c.

void ec_GFp_simple_group_clear_finish ( EC_GROUP )

Definition at line 155 of file ecp_smpl.c.

int ec_GFp_simple_group_copy ( EC_GROUP ,
const EC_GROUP  
)

Definition at line 163 of file ecp_smpl.c.

void ec_GFp_simple_group_finish ( EC_GROUP )

Definition at line 147 of file ecp_smpl.c.

int ec_GFp_simple_group_get_curve ( const EC_GROUP ,
BIGNUM p,
BIGNUM a,
BIGNUM b,
BN_CTX  
)

Definition at line 230 of file ecp_smpl.c.

int ec_GFp_simple_group_get_degree ( const EC_GROUP )

Definition at line 281 of file ecp_smpl.c.

int ec_GFp_simple_group_init ( EC_GROUP )

Definition at line 137 of file ecp_smpl.c.

int ec_GFp_simple_group_set_curve ( EC_GROUP ,
const BIGNUM p,
const BIGNUM a,
const BIGNUM b,
BN_CTX  
)

Definition at line 175 of file ecp_smpl.c.

int ec_GFp_simple_invert ( const EC_GROUP ,
EC_POINT ,
BN_CTX  
)

Definition at line 924 of file ecp_smpl.c.

int ec_GFp_simple_is_at_infinity ( const EC_GROUP ,
const EC_POINT  
)

Definition at line 934 of file ecp_smpl.c.

int ec_GFp_simple_is_on_curve ( const EC_GROUP ,
const EC_POINT ,
BN_CTX  
)

Definition at line 940 of file ecp_smpl.c.

int ec_GFp_simple_make_affine ( const EC_GROUP ,
EC_POINT ,
BN_CTX  
)

Definition at line 1142 of file ecp_smpl.c.

int ec_GFp_simple_oct2point ( const EC_GROUP ,
EC_POINT ,
const unsigned char *  buf,
size_t  len,
BN_CTX  
)

Definition at line 325 of file ecp_oct.c.

size_t ec_GFp_simple_point2oct ( const EC_GROUP ,
const EC_POINT ,
point_conversion_form_t  form,
unsigned char *  buf,
size_t  len,
BN_CTX  
)

Definition at line 199 of file ecp_oct.c.

void ec_GFp_simple_point_clear_finish ( EC_POINT )

Definition at line 373 of file ecp_smpl.c.

int ec_GFp_simple_point_copy ( EC_POINT ,
const EC_POINT  
)

Definition at line 382 of file ecp_smpl.c.

void ec_GFp_simple_point_finish ( EC_POINT )

Definition at line 365 of file ecp_smpl.c.

int ec_GFp_simple_point_get_affine_coordinates ( const EC_GROUP ,
const EC_POINT ,
BIGNUM x,
BIGNUM y,
BN_CTX  
)

Definition at line 528 of file ecp_smpl.c.

int ec_GFp_simple_point_init ( EC_POINT )

Definition at line 354 of file ecp_smpl.c.

int ec_GFp_simple_point_set_affine_coordinates ( const EC_GROUP ,
EC_POINT ,
const BIGNUM x,
const BIGNUM y,
BN_CTX  
)

Definition at line 514 of file ecp_smpl.c.

int ec_GFp_simple_point_set_to_infinity ( const EC_GROUP ,
EC_POINT  
)

Definition at line 393 of file ecp_smpl.c.

int ec_GFp_simple_points_make_affine ( const EC_GROUP ,
size_t  num,
EC_POINT [],
BN_CTX  
)

Definition at line 1181 of file ecp_smpl.c.

int ec_GFp_simple_set_compressed_coordinates ( const EC_GROUP ,
EC_POINT ,
const BIGNUM x,
int  y_bit,
BN_CTX  
)

Definition at line 70 of file ecp_oct.c.

int ec_GFp_simple_set_Jprojective_coordinates_GFp ( const EC_GROUP ,
EC_POINT ,
const BIGNUM x,
const BIGNUM y,
const BIGNUM z,
BN_CTX  
)

Definition at line 401 of file ecp_smpl.c.

int ec_wNAF_have_precompute_mult ( const EC_GROUP group)

Definition at line 934 of file ec_mult.c.

int ec_wNAF_mul ( const EC_GROUP group,
EC_POINT r,
const BIGNUM scalar,
size_t  num,
const EC_POINT points[],
const BIGNUM scalars[],
BN_CTX  
)

Definition at line 346 of file ec_mult.c.

int ec_wNAF_precompute_mult ( EC_GROUP group,
BN_CTX  
)

Definition at line 765 of file ec_mult.c.