...
1
2
3
4
5 package bn256
6
7 import (
8 "crypto/rand"
9 )
10
11 func ExamplePair() {
12
13
14
15
16
17 a, _ := rand.Int(rand.Reader, Order)
18 b, _ := rand.Int(rand.Reader, Order)
19 c, _ := rand.Int(rand.Reader, Order)
20
21
22 pa := new(G1).ScalarBaseMult(a)
23 qa := new(G2).ScalarBaseMult(a)
24
25 pb := new(G1).ScalarBaseMult(b)
26 qb := new(G2).ScalarBaseMult(b)
27
28 pc := new(G1).ScalarBaseMult(c)
29 qc := new(G2).ScalarBaseMult(c)
30
31
32
33 k1 := Pair(pb, qc)
34 k1.ScalarMult(k1, a)
35
36 k2 := Pair(pc, qa)
37 k2.ScalarMult(k2, b)
38
39 k3 := Pair(pa, qb)
40 k3.ScalarMult(k3, c)
41
42
43 }
44
View as plain text