powVarTime method

Bls12NativeFp2 powVarTime(
  1. List<BigInt> exponent
)

Raise to exponent given as 6-limb BigInt array (u64)

Implementation

Bls12NativeFp2 powVarTime(List<BigInt> exponent) {
  var res = Bls12NativeFp2.one();
  for (var limb in exponent.reversed) {
    for (var i = 63; i >= 0; i--) {
      res = res.square();
      if ((limb >> i) & BigInt.one == BigInt.one) {
        res = res * this;
      }
    }
  }
  return res;
}