Package ecdsa
Overview ?
Overview ?
Package ecdsa implements the Elliptic Curve Digital Signature Algorithm, as
defined in FIPS 186-3.
Index
- func Sign(rand io.Reader, priv *PrivateKey, hash []byte) (r, s *big.Int, err error)
- func Verify(pub *PublicKey, hash []byte, r, s *big.Int) bool
- type PrivateKey
- func GenerateKey(c elliptic.Curve, rand io.Reader) (priv *PrivateKey, err error)
- type PublicKey
Package files
ecdsa.go
func Sign(rand io.Reader, priv *PrivateKey, hash []byte) (r, s *big.Int, err error)
Sign signs an arbitrary length hash (which should be the result of hashing a
larger message) using the private key, priv. It returns the signature as a
pair of integers. The security of the private key depends on the entropy of
rand.
func Verify(pub *PublicKey, hash []byte, r, s *big.Int) bool
Verify verifies the signature in r, s of hash using the public key, pub. It
returns true iff the signature is valid.
type PrivateKey struct {
PublicKey
D *big.Int
}
PrivateKey represents a ECDSA private key.
func GenerateKey(c elliptic.Curve, rand io.Reader) (priv *PrivateKey, err error)
GenerateKey generates a public&private key pair.
type PublicKey struct {
elliptic.Curve
X, Y *big.Int
}
PublicKey represents an ECDSA public key.