You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -45,7 +45,7 @@ If `block.timestamp >= FORK_TIMESTAMP` we introduce *nine* separate precompiles
45
45
- BLS12_G2ADD - to perform point addition in G2 (curve over quadratic extension of the base prime field) with a gas cost of `800` gas
46
46
- BLS12_G2MUL - to perform point multiplication in G2 (curve over quadratic extension of the base prime field) with a gas cost of `45000` gas
47
47
- BLS12_G2MSM - to perform multi-scalar-multiplication (MSM) in G2 (curve over quadratic extension of the base prime field) with a gas cost formula defined in the corresponding section
48
-
-BLS12_PAIRING - to perform a pairing operations between a set of *pairs* of (G1, G2) points a gas cost formula defined in the corresponding section
48
+
-BLS12_PAIRING_CHECK - to perform a pairing operations between a set of *pairs* of (G1, G2) points a gas cost formula defined in the corresponding section
49
49
- BLS12_MAP_FP_TO_G1 - maps base field element into the G1 point with a gas cost of `5500` gas
50
50
- BLS12_MAP_FP2_TO_G2 - maps extension field element into the G2 point with a gas cost of `75000` gas
51
51
@@ -115,7 +115,7 @@ On inputs that can not be a valid encodings of field elements the precompile *mu
115
115
116
116
#### Encoding of points in G1/G2:
117
117
118
-
Points of G1 and G2 are encoded as byte concatenation of the respective encodings of the `x` and `y` coordinates. Total encoding length for a G1 point is thus `128` bytes and for a G2 point is `256` bytes.
118
+
Points of G1 and G2 are encoded as byte concatenation of the respective encodings of the `x` and `y` coordinates. Total encoding length for a G1 point is thus `128` bytes and for a G2 point is `256` bytes.
119
119
120
120
#### Point of infinity encoding:
121
121
@@ -203,9 +203,9 @@ Error cases:
203
203
- An input is on the G2 elliptic curve but not in the correct subgroup
204
204
- Input has invalid length
205
205
206
-
#### ABI for pairing
206
+
#### ABI for pairing check
207
207
208
-
Pairing call expects `384*k` (`k` being a **positive** integer) bytes as an inputs that is interpreted as byte concatenation of `k` slices. Each slice has the following structure:
208
+
Pairing check call expects `384*k` (`k` being a **positive** integer) bytes as an inputs that is interpreted as byte concatenation of `k` slices. Each slice has the following structure:
209
209
210
210
-`128` bytes of G1 point encoding
211
211
-`256` bytes of G2 point encoding
@@ -285,9 +285,9 @@ Discounts table as a vector of pairs `[k, discount]`:
285
285
286
286
`max_discount = 174`
287
287
288
-
#### Pairing operation
288
+
#### Pairing check operation
289
289
290
-
The cost of the pairing operation is `43000*k + 65000` where `k` is a number of pairs.
290
+
The cost of the pairing check operation is `43000*k + 65000` where `k` is a number of pairs.
0 commit comments