func GetECDSAP521Signer(privKey *ecdsa.PrivateKey) *ECDSASigner {
	return newECDSASigner(privKey, &privKey.PublicKey, crypto.SHA512)
}
GetECDSAP521Signer creates a new ECDSA P521 signer with passed ECDSA P521 private key.
package signer
import (
	"crypto"
	"crypto/ecdsa"
	"crypto/elliptic"
	"crypto/rand"
	"errors"
	"github.com/btcsuite/btcd/btcec"
)
func NewECDSAP256Signer() (*ECDSASigner, error) {
	privKey, err := ecdsa.GenerateKey(elliptic.P256(), rand.Reader)
	if err != nil {
		return nil, err
	}
	return newECDSASigner(privKey, &privKey.PublicKey, crypto.SHA256), nil
}
func GetECDSAP256Signer(privKey *ecdsa.PrivateKey) *ECDSASigner {
	return newECDSASigner(privKey, &privKey.PublicKey, crypto.SHA256)
}
func NewECDSAP384Signer() (*ECDSASigner, error) {
	privKey, err := ecdsa.GenerateKey(elliptic.P384(), rand.Reader)
	if err != nil {
		return nil, err
	}
	return newECDSASigner(privKey, &privKey.PublicKey, crypto.SHA384), nil
}
func GetECDSAP384Signer(privKey *ecdsa.PrivateKey) *ECDSASigner {
	return newECDSASigner(privKey, &privKey.PublicKey, crypto.SHA384)
}
func NewECDSAP521Signer() (*ECDSASigner, error) {
	privKey, err := ecdsa.GenerateKey(elliptic.P521(), rand.Reader)
	if err != nil {
		return nil, err
	}
	return newECDSASigner(privKey, &privKey.PublicKey, crypto.SHA512), nil
}