From dd692560ffca4bb21ad3e43e165faeaed557f633 Mon Sep 17 00:00:00 2001 From: fiatjaf Date: Tue, 11 Apr 2023 15:33:13 -0300 Subject: [PATCH] fill in event pubkey when signing. --- event.go | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/event.go b/event.go index d9f6d44..207bf86 100644 --- a/event.go +++ b/event.go @@ -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