You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
41 lines
793 B
41 lines
793 B
//go:build !cgo |
|
|
|
package btcec |
|
|
|
import ( |
|
"encoders.orly/hex" |
|
"interfaces.orly/signer" |
|
"lol.mleku.dev/chk" |
|
) |
|
|
|
func NewSecFromHex[V []byte | string](skh V) (sign signer.I, err error) { |
|
sk := make([]byte, len(skh)/2) |
|
if _, err = hex.DecBytes(sk, []byte(skh)); chk.E(err) { |
|
return |
|
} |
|
sign = &Signer{} |
|
if err = sign.InitSec(sk); chk.E(err) { |
|
return |
|
} |
|
return |
|
} |
|
|
|
func NewPubFromHex[V []byte | string](pkh V) (sign signer.I, err error) { |
|
pk := make([]byte, len(pkh)/2) |
|
if _, err = hex.DecBytes(pk, []byte(pkh)); chk.E(err) { |
|
return |
|
} |
|
sign = &Signer{} |
|
if err = sign.InitPub(pk); chk.E(err) { |
|
return |
|
} |
|
return |
|
} |
|
|
|
func HexToBin(hexStr string) (b []byte, err error) { |
|
b = make([]byte, len(hexStr)/2) |
|
if _, err = hex.DecBytes(b, []byte(hexStr)); chk.E(err) { |
|
return |
|
} |
|
return |
|
}
|
|
|