Org.BouncyCastle.Math.BinPoly.ItohTsujiiInv
Itoh–Tsujii multiplicative inversion in GF(2^n): computes
a^{-1} = a^(2^n - 2) = (a^(2^(n-1) - 1))^2 using a generic binary addition chain on
the exponent e = n - 1, driving the supplied IBinPolyMul's
Multiply / Square / SquareN (so it is backend-independent — one
implementation serves every ISA).
namespace Org.BouncyCastle.Math.BinPoly
{
internal sealed class ItohTsujiiInv : IBinPolyInv
{
public int N { get; }
public int Size { get; }
public void Invert(ulong[] x, int xOff, ulong[] z, int zOff);
}
}