Files
next.orly.dev/pkg/crypto/p256k/secp256k1_test.go

77 lines
2.0 KiB
Go

//go:build cgo
package p256k_test
// func TestVerify(t *testing.T) {
// evs := make([]*event.E, 0, 10000)
// scanner := bufio.NewScanner(bytes.NewBuffer(examples.Cache))
// buf := make([]byte, 1_000_000)
// scanner.Buffer(buf, len(buf))
// var err error
// for scanner.Scan() {
// var valid bool
// b := scanner.Bytes()
// ev := event.New()
// if _, err = ev.Unmarshal(b); chk.E(err) {
// t.Errorf("failed to marshal\n%s", b)
// } else {
// if valid, err = ev.Verify(); chk.E(err) || !valid {
// t.Errorf("btcec: invalid signature\n%s", b)
// continue
// }
// }
// id := ev.GetIDBytes()
// if len(id) != sha256.Size {
// t.Errorf("id should be 32 bytes, got %d", len(id))
// continue
// }
// if err = p256k.VerifyFromBytes(id, ev.Sig, ev.Pubkey); chk.E(err) {
// t.Error(err)
// continue
// }
// evs = append(evs, ev)
// }
// }
// func TestSign(t *testing.T) {
// evs := make([]*event.E, 0, 10000)
// scanner := bufio.NewScanner(bytes.NewBuffer(examples.Cache))
// buf := make([]byte, 1_000_000)
// scanner.Buffer(buf, len(buf))
// var err error
// var sec1 *p256k.Sec
// var pub1 *p256k.XPublicKey
// var pb []byte
// if _, pb, sec1, pub1, err = p256k.Generate(); chk.E(err) {
// t.Fatal(err)
// }
// for scanner.Scan() {
// b := scanner.Bytes()
// ev := event.New()
// if _, err = ev.Unmarshal(b); chk.E(err) {
// t.Errorf("failed to marshal\n%s", b)
// }
// evs = append(evs, ev)
// }
// sig := make([]byte, schnorr.SignatureSize)
// for _, ev := range evs {
// ev.Pubkey = pb
// var uid *p256k.Uchar
// if uid, err = p256k.Msg(ev.GetIDBytes()); chk.E(err) {
// t.Fatal(err)
// }
// if sig, err = p256k.Sign(uid, sec1.Sec()); chk.E(err) {
// t.Fatal(err)
// }
// ev.Sig = sig
// var usig *p256k.Uchar
// if usig, err = p256k.Sig(sig); chk.E(err) {
// t.Fatal(err)
// }
// if !p256k.Verify(uid, usig, pub1.Key) {
// t.Errorf("invalid signature")
// }
// }
// p256k.Zero(&sec1.Key)
// }