add libsecp256k1 wrapper for sign/verify.

This commit is contained in:
fiatjaf
2024-05-29 15:32:49 -03:00
parent 0e93b1173f
commit 427bfc7a4b
4 changed files with 132 additions and 0 deletions
+38
View File
@@ -0,0 +1,38 @@
package libsecp256k1
import (
"encoding/json"
"testing"
"github.com/nbd-wtf/go-nostr"
"github.com/nbd-wtf/go-nostr/test_common"
)
func BenchmarkSignatureVerification(b *testing.B) {
events := make([]*nostr.Event, len(test_common.NormalEvents))
for i, jevt := range test_common.NormalEvents {
evt := &nostr.Event{}
json.Unmarshal([]byte(jevt), evt)
events[i] = evt
}
b.Run("btcec", func(b *testing.B) {
for i := 0; i < b.N; i++ {
for _, evt := range events {
evt.CheckSignature()
}
}
})
b.Run("libsecp256k1", func(b *testing.B) {
c, err := NewContext()
if err != nil {
panic(err)
}
for i := 0; i < b.N; i++ {
for _, evt := range events {
c.CheckSignature(evt)
}
}
})
}