pub fn g1_msm(input: &[u8], gas_limit: u64) -> PrecompileResult
Expand description
Implements EIP-2537 G1MSM precompile.
G1 multi-scalar-multiplication call expects 160*k
bytes as an input that is interpreted
as byte concatenation of k
slices each of them being a byte concatenation
of encoding of G1 point (128
bytes) and encoding of a scalar value (32
bytes).
Output is an encoding of multi-scalar-multiplication operation result - single G1
point (128
bytes).
See also: https://eips.ethereum.org/EIPS/eip-2537#abi-for-g1-multiexponentiation