コード例 #1
0
        public static bool Verify(byte[] signature, byte[] publicKey, byte[] message)
        {
            var s = new Signature();

            s.FromBytes(signature);
            var pk             = new PublicKey(publicKey);
            var signingContext = new SigningContext085(Encoding.UTF8.GetBytes("substrate"));
            var st             = new SigningTranscript(signingContext);

            signingContext.ts = signingContext.Bytes(message);

            return(Verify(st, s, pk));
        }
コード例 #2
0
        public static byte[] SignSimple(byte[] publicKey, byte[] secretKey, byte[] message)
        {
            var sk             = SecretKey.FromBytes085(secretKey);
            var pk             = new PublicKey(publicKey);
            var signingContext = new SigningContext085(Encoding.UTF8.GetBytes("substrate"));
            var st             = new SigningTranscript(signingContext);

            signingContext.ts = signingContext.Bytes(message);
            var rng = new Simple();
            var sig = Sign(st, sk, pk, rng);

            return(sig.ToBytes());
        }