api
ecdh.ch
Declarations in ecdh.ch
1 declarationstls
Declarations
Public only
tls#
Publicnamespace
namespace tls
============================================================================
ecp_select_curve#
Publicfunction
func ecp_select_curve(c : int) : void
ecp_curve_id#
Publicfunction
func ecp_curve_id() : int
ECPPoint#
Publicstruct
─── Elliptic Curve Point ───────────────────────────────────────────────
ECDHContext#
Publicstruct
─── ECDH Key Pair ──────────────────────────────────────────────────────
ecdh_init#
Publicfunction
func ecdh_init(ctx : *ECDHContext) : void
ecp_curve_p#
Publicfunction
func ecp_curve_p(p : *Mpi) : void
─── Modular arithmetic helpers for P-256 ────────────────────────────
ecp_mod_p256#
function
func ecp_mod_p256(X : *Mpi) : int
Modulo P-256 prime: a mod p (for values < 2*p)
ecp_double_jac#
function
─── Point Operations on P-256 ──────────────────────────────────────
ecp_add_jac#
Publicfunction
Point addition: R = P + Q (with Q in affine coordinates, Z=1)
ecp_mul#
Publicfunction
─── Scalar Multiplication (Double-and-Add) ──────────────────────────
ecp_normalize_jac#
Publicfunction
func ecp_normalize_jac(P : *ECPPoint) : int
─── Point Normalization (Jacobian to Affine) ────────────────────────
ecdh_generate_keypair#
Publicfunction
func ecdh_generate_keypair(ctx : *ECDHContext, priv : *u8, priv_len : size_t, pub : *u8, pub_len : size_t) : int
─── ECDH Key Generation ─────────────────────────────────────────────