public static bool Verify(Cryptography.ECC.ECPoint P1, Cryptography.ECC.ECPoint P2, SchnorrSignatureType sig)
        {
            byte[] c2 = Crypto.Default.Hash256(sig.L1.EncodePoint(true));

            Cryptography.ECC.ECPoint L2 = Cryptography.ECC.ECCurve.Secp256r1.G * sig.s2 + P2 * c2;

            byte[] c1 = Crypto.Default.Hash256(L2.EncodePoint(true));

            Cryptography.ECC.ECPoint L1P = Cryptography.ECC.ECCurve.Secp256r1.G * sig.s1 + P1 * c1;

            return(sig.L1.ToString() == L1P.ToString());
        }
Beispiel #2
0
 public override string ToString()
 {
     TR.Enter();
     return(TR.Exit(PublicKey.ToString()));
 }
Beispiel #3
0
 public override string ToString()
 {
     return(PublicKey.ToString());
 }