Module Hacl_star__Hacl.Curve25519_51
Portable C implementation that is optimized for use on 64-bit platforms that support 128-bit arithmetic, will still compile and execute on 32-bit platforms
type bytes= Hacl_star.SharedDefs.CBytes.t
val secret_to_public : sk:bytes -> bytessecret_to_public sktakes a 32-byte secret keyskand returns the corresponding 32-byte ECDH public key.
val ecdh : sk:bytes -> pk:bytes -> bytes optionecdh sk pktakes a 32-byte secret keyskand another party's 32-byte public key and returns the 32-byte ECDH shared key.
val scalarmult : scalar:bytes -> point:bytes -> bytesscalarmult scalar pointperforms scalar multiplication over the curve. Buffers are 32-byte long and must be distinct.
module Noalloc : sig ... endVersions of these functions which write their output in a buffer passed in as an argument