func (ePriv *ECDSAPrivateKey) Sign(data []byte) ([]byte, error) {
	hash := sha256.Sum256(data)
	r, s, err := ecdsa.Sign(rand.Reader, ePriv.priv, hash[:])
	if err != nil {
		return nil, err
	}

	return asn1.Marshal(ECDSASig{
		R: r,
		S: s,
	})
}
func (ePriv *ECDSAPrivateKey) Sign(data []byte) ([]byte, error) {
	hash := sha256.Sum256(data)
	r, s, err := ecdsa.Sign(rand.Reader, ePriv.priv, hash[:])
	if err != nil {
		return nil, err
	}

	return asn1.Marshal(ECDSASig{
		R: r,
		S: s,
	})
}
func ( ePriv * ECDSAPrivateKey ) Sign ( data [ ] byte ) ( [ ] byte , error ) { hash := sha256 . Sum256 ( data ) r , s , err := ecdsa . Sign ( rand . Reader , ePriv . priv , hash [ : ] ) if err != nil { return nil , err } return asn1 . Marshal ( ECDSASig { R : r , S : s , } ) }
// Sign returns the signature of the input data
Sign returns the signature of the input data