Beispiel #1
0
        internal Signature(BigInteger r, BigInteger s)
        {
            R = r;
            S = s;

            CurveOrder = CustomNamedCurves.GetByOid(SecObjectIdentifiers.SecP256k1).N;
            HalfOrder  = new BigInteger(CurveOrder.ToByteArray()).ShiftRight(1);
        }
Beispiel #2
0
 public static void WriteCurveOrder(CurveOrder curveOrder)
 {
     Console.WriteLine("---");
     Console.WriteLine($"OrderId: {curveOrder.OrderId}");
     Console.WriteLine($"Area: {curveOrder.AreaCode}");
     Console.WriteLine($"State: {curveOrder.State}");
     Console.WriteLine($"Portfolio: {curveOrder.Portfolio}");
     WriteCurves(curveOrder);
     Console.WriteLine("---");
 }
Beispiel #3
0
 public Signature MakeCanonical()
 {
     if (!IsLowS)
     {
         return(new Signature(this.R, CurveOrder.Subtract(this.S)));
     }
     else
     {
         return(this);
     }
 }
Beispiel #4
0
 private static void WriteCurves(CurveOrder curveOrder)
 {
     Console.WriteLine("Curves:");
     foreach (var curve in curveOrder.Curves)
     {
         Console.WriteLine($"Curve contract: {curve.ContractId}");
         Console.WriteLine($"Prices:\t\t{string.Join("\t", curve.CurvePoints.Select(x => x.Price))}");
         Console.WriteLine($"Volumes:\t{string.Join("\t", curve.CurvePoints.Select(x => x.Volume))}");
         Console.WriteLine("");
     }
 }