<PackageReference Include="BouncyCastle.Cryptography" Version="2.8.0-beta.349" />

Org.BouncyCastle.Math.BinPoly.BinPolyMulBase

abstract class BinPolyMulBase : IBinPolyMul
Abstract base for IBinPolyMul implementations. Holds the shared state (m_n, m_size, m_sizeExt, m_reduce) and the squaring helpers (Square, SquareN). Multiply is abstract and is supplied by per-(size, ISA) concrete subclasses.
namespace Org.BouncyCastle.Math.BinPoly { internal abstract class BinPolyMulBase : IBinPolyMul { protected readonly int m_n; protected readonly int m_size; protected readonly int m_sizeExt; protected readonly IReduce m_reduce; public int N { get; } public int Size { get; } protected BinPolyMulBase(int n, IReduce reduce); public abstract void Multiply(ulong[] x, int xOff, ulong[] y, int yOff, ulong[] z, int zOff); public void Square(ulong[] x, int xOff, ulong[] z, int zOff); public void SquareN(ulong[] x, int xOff, int n, ulong[] z, int zOff); } }