func UnmarshalECDSAPublicKey(data []byte) (PubKey, error) {
	pubIfc, err := x509.ParsePKIXPublicKey(data)
	if err != nil {
		return nil, err
	}

	pub, ok := pubIfc.(*ecdsa.PublicKey)
	if !ok {
		return nil, ErrNotECDSAPubKey
	}

	return &ECDSAPublicKey{pub}, nil
}
func UnmarshalECDSAPublicKey(data []byte) (PubKey, error) {
	pubIfc, err := x509.ParsePKIXPublicKey(data)
	if err != nil {
		return nil, err
	}

	pub, ok := pubIfc.(*ecdsa.PublicKey)
	if !ok {
		return nil, ErrNotECDSAPubKey
	}

	return &ECDSAPublicKey{pub}, nil
}
func UnmarshalECDSAPublicKey ( data [ ] byte ) ( PubKey , error ) { pubIfc , err := x509 . ParsePKIXPublicKey ( data ) if err != nil { return nil , err } pub , ok := pubIfc . ( * ecdsa . PublicKey ) if ! ok { return nil , ErrNotECDSAPubKey } return & ECDSAPublicKey { pub } , nil }
// UnmarshalECDSAPublicKey returns the public key from x509 bytes
UnmarshalECDSAPublicKey returns the public key from x509 bytes