package util import ( "crypto" "crypto/ed25519" "fmt" "git.sigsum.org/sigsum-go/pkg/hex" ) func SignerFromHex(s string) (crypto.Signer, error) { b, err := hex.Deserialize(s) if err != nil { return nil, fmt.Errorf("util: parse key: %v", err) } if len(b) != ed25519.PrivateKeySize { return nil, fmt.Errorf("util: invalid private key size %d", len(b)) } return ed25519.PrivateKey(b), nil }