package ecdh
Import Path
crypto/internal/fips140/ecdh (on go.dev)
Dependency Relation
imports 10 packages, and imported by one package
Package-Level Type Names (total 5, in which 4 are exported)
/* sort exporteds by: | */
Type Parameters:
P: Point[P]
N []byte
curve curveID
newPoint func() P
func P224() *Curve[*nistec.P224Point]
func P256() *Curve[*nistec.P256Point]
func P384() *Curve[*nistec.P384Point]
func P521() *Curve[*nistec.P521Point]
func ECDH[P](c *Curve[P], k *PrivateKey, peer *PublicKey) ([]byte, error)
func GenerateKey[P](c *Curve[P], rand io.Reader) (*PrivateKey, error)
func NewPrivateKey[P](c *Curve[P], key []byte) (*PrivateKey, error)
func NewPublicKey[P](c *Curve[P], key []byte) (*PublicKey, error)
func ecdh[P](c *Curve[P], k *PrivateKey, peer *PublicKey) ([]byte, error)
// bigmod.(*Nat).Bytes output (fixed length)
pub PublicKey
(*PrivateKey) Bytes() []byte
(*PrivateKey) PublicKey() *PublicKey
func GenerateKey[P](c *Curve[P], rand io.Reader) (*PrivateKey, error)
func NewPrivateKey[P](c *Curve[P], key []byte) (*PrivateKey, error)
func ECDH[P](c *Curve[P], k *PrivateKey, peer *PublicKey) ([]byte, error)
func ecdh[P](c *Curve[P], k *PrivateKey, peer *PublicKey) ([]byte, error)
curve curveID
// uncompressed nistec Point.Bytes output
(*PublicKey) Bytes() []byte
func NewPublicKey[P](c *Curve[P], key []byte) (*PublicKey, error)
func (*PrivateKey).PublicKey() *PublicKey
func ECDH[P](c *Curve[P], k *PrivateKey, peer *PublicKey) ([]byte, error)
func ecdh[P](c *Curve[P], k *PrivateKey, peer *PublicKey) ([]byte, error)