<PackageReference Include="BouncyCastle.Cryptography" Version="2.5.0" />

Nat256

static class Nat256
public static uint Add(uint[] x, uint[] y, uint[] z)

public static uint Add(uint[] x, int xOff, uint[] y, int yOff, uint[] z, int zOff)

public static uint AddBothTo(uint[] x, uint[] y, uint[] z)

public static uint AddBothTo(uint[] x, int xOff, uint[] y, int yOff, uint[] z, int zOff)

public static uint AddTo(uint[] x, uint[] z, uint cIn)

public static uint AddTo(uint[] x, int xOff, uint[] z, int zOff, uint cIn)

public static uint AddTo(ReadOnlySpan<uint> x, Span<uint> z, uint cIn)

public static uint AddToEachOther(uint[] u, int uOff, uint[] v, int vOff)

public static void Copy(uint[] x, uint[] z)

public static void Copy(uint[] x, int xOff, uint[] z, int zOff)

public static void Copy64(ulong[] x, ulong[] z)

public static void Copy64(ulong[] x, int xOff, ulong[] z, int zOff)

public static void Copy64(ReadOnlySpan<ulong> x, Span<ulong> z)

public static uint[] Create()

public static ulong[] Create64()

public static uint[] CreateExt()

public static ulong[] CreateExt64()

public static bool Diff(uint[] x, int xOff, uint[] y, int yOff, uint[] z, int zOff)

public static bool Eq(uint[] x, uint[] y)

public static bool Eq64(ulong[] x, ulong[] y)

public static uint GetBit(uint[] x, int bit)

public static bool Gte(uint[] x, uint[] y)

public static bool Gte(uint[] x, int xOff, uint[] y, int yOff)

public static bool Gte(ReadOnlySpan<uint> x, ReadOnlySpan<uint> y)

public static bool IsOne(uint[] x)

public static bool IsOne64(ulong[] x)

public static bool IsZero(ReadOnlySpan<uint> x)

public static bool IsZero64(ReadOnlySpan<ulong> x)

public static void Mul(uint[] x, uint[] y, uint[] zz)

public static void Mul(uint[] x, int xOff, uint[] y, int yOff, uint[] zz, int zzOff)

public static void Mul(ReadOnlySpan<uint> x, ReadOnlySpan<uint> y, Span<uint> zz)

public static void Mul128(uint[] x, uint[] y128, uint[] zz)

public static void Mul128(ReadOnlySpan<uint> x, ReadOnlySpan<uint> y128, Span<uint> zz)

public static ulong Mul33Add(uint w, uint[] x, int xOff, uint[] y, int yOff, uint[] z, int zOff)

public static uint Mul33DWordAdd(uint x, ulong y, uint[] z, int zOff)

public static uint Mul33WordAdd(uint x, uint y, uint[] z, int zOff)

public static uint MulAddTo(uint[] x, uint[] y, uint[] zz)

public static uint MulAddTo(uint[] x, int xOff, uint[] y, int yOff, uint[] zz, int zzOff)

public static uint MulByWord(uint x, uint[] z)

public static uint MulByWordAddTo(uint x, uint[] y, uint[] z)

public static uint MulWord(uint x, uint[] y, uint[] z, int zOff)

public static uint MulWordAddTo(uint x, uint[] y, int yOff, uint[] z, int zOff)

public static uint MulWordDwordAdd(uint x, ulong y, uint[] z, int zOff)

public static void Square(uint[] x, uint[] zz)

public static void Square(uint[] x, int xOff, uint[] zz, int zzOff)

public static void Square(ReadOnlySpan<uint> x, Span<uint> zz)

public static int Sub(uint[] x, uint[] y, uint[] z)

public static int Sub(uint[] x, int xOff, uint[] y, int yOff, uint[] z, int zOff)

public static int SubBothFrom(uint[] x, uint[] y, uint[] z)

public static int SubFrom(uint[] x, uint[] z, int cIn)

public static int SubFrom(uint[] x, int xOff, uint[] z, int zOff, int cIn)

public static int SubFrom(ReadOnlySpan<uint> x, Span<uint> z, int cIn)

public static BigInteger ToBigInteger(uint[] x)

public static BigInteger ToBigInteger64(ulong[] x)

public static void Xor(uint[] x, int xOff, uint[] y, int yOff, uint[] z, int zOff)

public static void Xor(ReadOnlySpan<uint> x, ReadOnlySpan<uint> y, Span<uint> z)

public static void Zero(uint[] z)