|
iPXE
|
An elliptic curve. More...
#include <crypto.h>
Data Fields | |
| const char * | name |
| Curve name. More... | |
| size_t | pointsize |
| Point (and public key) size. More... | |
| size_t | keysize |
| Scalar (and private key) size. More... | |
| const void * | base |
| Generator base point. More... | |
| const void * | order |
| Order of the generator (if prime) More... | |
| int(* | is_infinity )(const void *point) |
| Check if this is the point at infinity. More... | |
| int(* | multiply )(const void *base, const void *scalar, void *result) |
| Multiply scalar by curve point. More... | |
| int(* | add )(const void *addend, const void *augend, void *result) |
| Add curve points (as a one-off operation) More... | |
| const char* elliptic_curve::name |
Curve name.
Definition at line 179 of file crypto.h.
Referenced by ecdhe_key(), and tls_send_client_key_exchange_ecdhe().
| size_t elliptic_curve::pointsize |
Point (and public key) size.
Definition at line 181 of file crypto.h.
Referenced by ecdsa_alloc(), ecdsa_match(), ecdsa_sign_rs(), ecdsa_verify_rs(), elliptic_add_okx(), elliptic_curve_okx(), elliptic_multiply_okx(), and tls_send_client_key_exchange_ecdhe().
| size_t elliptic_curve::keysize |
Scalar (and private key) size.
Definition at line 183 of file crypto.h.
Referenced by ecdsa_alloc(), ecdsa_init_values(), ecdsa_sign_rs(), ecdsa_verify_rs(), elliptic_curve_okx(), elliptic_multiply_okx(), and tls_send_client_key_exchange_ecdhe().
| const void* elliptic_curve::base |
Generator base point.
Definition at line 185 of file crypto.h.
Referenced by ecdhe_key(), ecdsa_sign_rs(), ecdsa_verify_rs(), elliptic_curve_okx(), and elliptic_multiply_okx().
| const void* elliptic_curve::order |
Order of the generator (if prime)
Definition at line 187 of file crypto.h.
Referenced by ecdsa_init_values(), and elliptic_curve_okx().
| int( * elliptic_curve::is_infinity) (const void *point) |
Check if this is the point at infinity.
| point | Curve point |
| is_infinity | This is the point at infinity |
The point at infinity cannot be represented in affine coordinates. Each curve must choose a representation of the point at infinity (e.g. all zeroes).
Definition at line 197 of file crypto.h.
Referenced by elliptic_is_infinity().
Multiply scalar by curve point.
| base | Base point |
| scalar | Scalar multiple |
| result | Result point to fill in |
| rc | Return status code |
Definition at line 205 of file crypto.h.
Referenced by elliptic_multiply().
| int( * elliptic_curve::add) (const void *addend, const void *augend, void *result) |
Add curve points (as a one-off operation)
| addend | Curve point to add |
| augend | Curve point to add |
| result | Curve point to hold result |
| rc | Return status code |
Definition at line 214 of file crypto.h.
Referenced by elliptic_add().
1.8.15