示例#1
0
 public static void Subtract(uint[] x, uint[] y, uint[] z)
 {
     if (Nat160.Sub(x, y, z) != 0)
     {
         Nat.Sub33From(5, 21389u, z);
     }
 }
示例#2
0
 public static void Subtract(uint[] x, uint[] y, uint[] z)
 {
     if (Nat160.Sub(x, y, z) != 0)
     {
         Nat.SubWordFrom(5, 2147483649u, z);
     }
 }
示例#3
0
 public static void Subtract(uint[] x, uint[] y, uint[] z)
 {
     if (Nat160.Sub(x, y, z) != 0)
     {
         Nat.SubWordFrom(5, 0x80000001, z);
     }
 }
示例#4
0
        public static void Subtract(uint[] x, uint[] y, uint[] z)
        {
            int c = Nat160.Sub(x, y, z);

            if (c != 0)
            {
                Nat.SubWordFrom(5, PInv, z);
            }
        }
示例#5
0
 public static void Negate(uint[] x, uint[] z)
 {
     if (Nat160.IsZero(x))
     {
         Nat160.Zero(z);
         return;
     }
     Nat160.Sub(SecP160R2Field.P, x, z);
 }
示例#6
0
 public static void Negate(uint[] x, uint[] z)
 {
     if (Nat160.IsZero(x))
     {
         Nat160.Zero(z);
     }
     else
     {
         Nat160.Sub(P, x, z);
     }
 }