fill in event pubkey when signing.

This commit is contained in:
fiatjaf 2023-04-11 15:33:13 -03:00
parent 32768b1a5b
commit dd692560ff
No known key found for this signature in database
GPG Key ID: BAD43C4BE5C1A3A1

View File

@ -114,14 +114,16 @@ func (evt Event) CheckSignature() (bool, error) {
// Sign signs an event with a given privateKey
func (evt *Event) Sign(privateKey string) error {
h := sha256.Sum256(evt.Serialize())
s, err := hex.DecodeString(privateKey)
if err != nil {
return fmt.Errorf("Sign called with invalid private key '%s': %w", privateKey, err)
}
sk, _ := btcec.PrivKeyFromBytes(s)
sk, pk := btcec.PrivKeyFromBytes(s)
pkBytes := pk.SerializeCompressed()
evt.PubKey = hex.EncodeToString(pkBytes[1:])
h := sha256.Sum256(evt.Serialize())
sig, err := schnorr.Sign(sk, h[:])
if err != nil {
return err