Exemplo n.º 1
0
        public string AddSignatureToThePost(string post, string guess)
        {
            var dec_seed   = ByteEncryptionUtil.WrappedXor(_encryptedSeed, guess + _publicKey.Stringify());
            var privateKey = Ed25519.ExpandedPrivateKeyFromSeed(dec_seed);
            var signature  = Ed25519.Sign(Encoding.UTF8.GetBytes(post), privateKey);

            return(post + "[" + SignatureTag + "=" + signature.Stringify() + "]");
        }
Exemplo n.º 2
0
        public bool CheckGuess(string guess)
        {
            var dec_seed     = ByteEncryptionUtil.WrappedXor(_encryptedSeed, guess + _publicKey.Stringify());
            var privateKey   = Ed25519.ExpandedPrivateKeyFromSeed(dec_seed);
            var dummyMessage = new byte[] { (byte)0 };
            var signature    = Ed25519.Sign(dummyMessage, privateKey);

            return(Ed25519.Verify(signature, dummyMessage, _publicKey));
        }