File tree Expand file tree Collapse file tree 3 files changed +12
-4
lines changed Expand file tree Collapse file tree 3 files changed +12
-4
lines changed Original file line number Diff line number Diff line change 9
9
//
10
10
// This package specifically implements the Optimal Ate pairing over a 256-bit
11
11
// Barreto-Naehrig curve as described in
12
- // http://cryptojedi.org/papers/dclxvi-20100714.pdf. Its output is compatible
13
- // with the implementation described in that paper.
12
+ // http://cryptojedi.org/papers/dclxvi-20100714.pdf. Its output is not
13
+ // compatible with the implementation described in that paper, as different
14
+ // parameters are chosen.
15
+ //
16
+ // (This package previously claimed to operate at a 128-bit security level.
17
+ // However, recent improvements in attacks mean that is no longer true. See
18
+ // https://moderncrypto.org/mail-archive/curves/2016/000740.html.)
14
19
package bn256
15
20
16
21
import (
Original file line number Diff line number Diff line change 12
12
//
13
13
// This package specifically implements the Optimal Ate pairing over a 256-bit
14
14
// Barreto-Naehrig curve as described in
15
- // http://cryptojedi.org/papers/dclxvi-20100714.pdf. Its output is compatible
16
- // with the implementation described in that paper.
15
+ // http://cryptojedi.org/papers/dclxvi-20100714.pdf. Its output is not
16
+ // compatible with the implementation described in that paper, as different
17
+ // parameters are chosen.
17
18
//
18
19
// (This package previously claimed to operate at a 128-bit security level.
19
20
// However, recent improvements in attacks mean that is no longer true. See
Original file line number Diff line number Diff line change @@ -20,7 +20,9 @@ var u = bigFromBase10("4965661367192848881")
20
20
var P = bigFromBase10 ("21888242871839275222246405745257275088696311157297823662689037894645226208583" )
21
21
22
22
// Order is the number of elements in both G₁ and G₂: 36u⁴+36u³+18u²+6u+1.
23
+ // Needs to be highly 2-adic for efficient SNARK key and proof generation.
23
24
// Order - 1 = 2^28 * 3^2 * 13 * 29 * 983 * 11003 * 237073 * 405928799 * 1670836401704629 * 13818364434197438864469338081.
25
+ // Refer to https://eprint.iacr.org/2013/879.pdf and https://eprint.iacr.org/2013/507.pdf for more information on these parameters.
24
26
var Order = bigFromBase10 ("21888242871839275222246405745257275088548364400416034343698204186575808495617" )
25
27
26
28
// xiToPMinus1Over6 is ξ^((p-1)/6) where ξ = i+9.
You can’t perform that action at this time.
0 commit comments