public static void AddOne(uint[] x, uint[] z) { uint c = Nat.Inc(5, x, z); if (c != 0 || (z[4] == P4 && Nat160.Gte(z, P))) { Nat.Add33To(5, PInv33, z); } }
public static uint[] FromBigInteger(BigInteger x) { uint[] z = Nat160.FromBigInteger(x); if (z[4] == P4 && Nat160.Gte(z, P)) { Nat160.SubFrom(P, z); } return(z); }
public static uint[] FromBigInteger(BigInteger x) { uint[] array = Nat160.FromBigInteger(x); if (array[4] == uint.MaxValue && Nat160.Gte(array, P)) { Nat160.SubFrom(P, array); } return(array); }
public static uint[] FromBigInteger(BigInteger x) { uint[] array = Nat160.FromBigInteger(x); if (array[4] == 4294967295u && Nat160.Gte(array, SecP160R2Field.P)) { Nat160.SubFrom(SecP160R2Field.P, array); } return(array); }
public static uint[] FromBigInteger(BigInteger x) { uint[] numArray = Nat160.FromBigInteger(x); if ((numArray[4] == uint.MaxValue) && Nat160.Gte(numArray, P)) { Nat160.SubFrom(P, numArray); } return(numArray); }
public static void Reduce(uint[] xx, uint[] z) { ulong y = Nat160.Mul33Add(21389u, xx, 5, xx, 0, z, 0); if (Nat160.Mul33DWordAdd(21389u, y, z, 0) != 0 || (z[4] == uint.MaxValue && Nat160.Gte(z, P))) { Nat.Add33To(5, 21389u, z); } }
public static void Twice(uint[] x, uint[] z) { uint c = Nat.ShiftUpBit(5, x, 0, z); if (c != 0 || (z[4] == P4 && Nat160.Gte(z, P))) { Nat.AddWordTo(5, PInv, z); } }
public static void Add(uint[] x, uint[] y, uint[] z) { uint c = Nat160.Add(x, y, z); if (c != 0 || (z[4] == P4 && Nat160.Gte(z, P))) { Nat.AddWordTo(5, PInv, z); } }
public static void Reduce(uint[] xx, uint[] z) { ulong cc = Nat160.Mul33Add(PInv33, xx, 5, xx, 0, z, 0); uint c = Nat160.Mul33DWordAdd(PInv33, cc, z, 0); Debug.Assert(c == 0 || c == 1); if (c != 0 || (z[4] == P4 && Nat160.Gte(z, P))) { Nat.Add33To(5, PInv33, z); } }
public static void Reduce32(uint x, uint[] z) { if ((x != 0 && Nat160.Mul33WordAdd(21389u, x, z, 0) != 0) || (z[4] == uint.MaxValue && Nat160.Gte(z, P))) { Nat.Add33To(5, 21389u, z); } }
public static void Reduce32(uint x, uint[] z) { if (((x != 0) && (Nat160.Mul33WordAdd(0x538d, x, z, 0) != 0)) || ((z[4] == uint.MaxValue) && Nat160.Gte(z, P))) { Nat.Add33To(5, 0x538d, z); } }
public static void Reduce(uint[] xx, uint[] z) { ulong y = Nat160.Mul33Add(21389u, xx, 5, xx, 0, z, 0); if (Nat160.Mul33DWordAdd(21389u, y, z, 0) != 0u || (z[4] == 4294967295u && Nat160.Gte(z, SecP160R2Field.P))) { Nat.Add33To(5, 21389u, z); } }
public static void Reduce32(uint x, uint[] z) { if ((x != 0 && Nat160.MulWordsAdd(2147483649u, x, z, 0) != 0) || (z[4] == uint.MaxValue && Nat160.Gte(z, P))) { Nat.AddWordTo(5, 2147483649u, z); } }
public static void Reduce32(uint x, uint[] z) { if ((x != 0u && Nat160.MulWordsAdd(2147483649u, x, z, 0) != 0u) || (z[4] == 4294967295u && Nat160.Gte(z, SecP160R1Field.P))) { Nat.AddWordTo(5, 2147483649u, z); } }
public static void Reduce32(uint x, uint[] z) { if (((x != 0) && (Nat160.MulWordsAdd(0x80000001, x, z, 0) != 0)) || ((z[4] == uint.MaxValue) && Nat160.Gte(z, P))) { Nat.AddWordTo(5, 0x80000001, z); } }
public static void Reduce32(uint x, uint[] z) { if ((x != 0u && Nat160.Mul33WordAdd(21389u, x, z, 0) != 0u) || (z[4] == 4294967295u && Nat160.Gte(z, SecP160R2Field.P))) { Nat.Add33To(5, 21389u, z); } }
public static void Reduce(uint[] xx, uint[] z) { ulong y = Nat160.Mul33Add(0x538d, xx, 5, xx, 0, z, 0); if ((Nat160.Mul33DWordAdd(0x538d, y, z, 0) != 0) || ((z[4] == uint.MaxValue) && Nat160.Gte(z, P))) { Nat.Add33To(5, 0x538d, z); } }