public static void Add(uint[] x, uint[] y, uint[] z)
 {
     if (Nat192.Add(x, y, z) != 0 || (z[5] == uint.MaxValue && Nat192.Gte(z, P)))
     {
         AddPInvTo(z);
     }
 }
 public static void Add(uint[] x, uint[] y, uint[] z)
 {
     if (Nat192.Add(x, y, z) != 0 || (z[5] == uint.MaxValue && Nat192.Gte(z, P)))
     {
         Nat.Add33To(6, 4553u, z);
     }
 }
Example #3
0
        public static void Add(uint[] x, uint[] y, uint[] z)
        {
            uint c = Nat192.Add(x, y, z);

            if (c != 0 || (z[5] == P5 && Nat192.Gte(z, P)))
            {
                Nat.Add33To(6, PInv33, z);
            }
        }
Example #4
0
        public static void Add(uint[] x, uint[] y, uint[] z)
        {
            uint c = Nat192.Add(x, y, z);

            if (c != 0 || (z[5] == P5 && Nat192.Gte(z, P)))
            {
                AddPInvTo(z);
            }
        }
    public static void Half(uint[] x, uint[] z)
    {
        if ((x[0] & 1) == 0)
        {
            Nat.ShiftDownBit(6, x, 0u, z);
            return;
        }
        uint c = Nat192.Add(x, P, z);

        Nat.ShiftDownBit(6, z, c);
    }