Exemple #1
0
        public void Base58EncodeDecodeTest()
        {
            var address = "3N1JMgUfzYUZinPrzPWeRa6yqN67oo57XR7";
            var crypto  = new WavesCrypto();

            Assert.AreEqual(address, crypto.Base58Encode(crypto.Base58Decode(address)));
        }
Exemple #2
0
        public void Base16EncodeDecodeTest()
        {
            var hex    = "b8cdf75a74091da77a952eee061edc7a6caa54e3b6bfdb7412f90fc7d62dd690";
            var crypto = new WavesCrypto();

            Assert.AreEqual(hex, crypto.Base16Encode(crypto.Base16Decode(hex)));
        }
Exemple #3
0
        public void Base64EncodeDecodeTest()
        {
            var base64 = "0LHRg9C70YzQtNC+0LfQtdGA0L/QtdGA0LXQtdC30LbQsNC10YLQvNC+0Y7Qs9C+0LvQvtCy0YM=";
            var crypto = new WavesCrypto();

            Assert.AreEqual(base64, crypto.Base64Encode(crypto.Base64Decode(base64)));
        }
Exemple #4
0
        public void TestSeedGeneration()
        {
            var    crypto = new WavesCrypto();
            string seed   = crypto.RandomSeed();

            Assert.AreEqual(15, seed.Split(' ').Length);
        }
Exemple #5
0
        public void TestSharedKey()
        {
            var crypto = new WavesCrypto();
            var a      = new KeyPair("1f98af466da54014bdc08bfbaaaf3c67");
            var b      = new KeyPair("1f98af466da54014bdc08bfbaaaf3c671f98af466da54014bdc08bfbaaaf3c67");

            var sharedKey1 = crypto.SharedKey(crypto.Base58Decode(a.PrivateKey), crypto.Base58Decode(b.PublicKey), "waves");
            var sharedKey2 = crypto.SharedKey(crypto.Base58Decode(b.PrivateKey), crypto.Base58Decode(a.PublicKey), "waves");

            CollectionAssert.AreEqual(sharedKey1, sharedKey2);
        }
Exemple #6
0
        public void TestBytes()
        {
            var crypto = new WavesCrypto();
            var size   = 5;
            var bytes  = crypto.RandomBytes(size);

            Assert.AreEqual(bytes.Length, size);

            var bytes2          = new byte[] { 6, 7, 8, 4 };
            var stringFromBytes = crypto.BytesToString(bytes2);
            var bytesFromString = crypto.StringToBytes(stringFromBytes);

            CollectionAssert.AreEqual(bytesFromString, bytes2);
        }
Exemple #7
0
        public void TestPublicAndPrivateKey()
        {
            var crypto         = new WavesCrypto();
            var seed           = "seed seed seed seed seed seed";
            var publicKeyInit  = "22e8aRY89tDZhcaVmPvxxorj7e5mtbiUtG6MYN5agt8z";
            var privateKeyInit = "8bg5KM2n5kKQE6bVZssvwMEivc6ctyKahfGLkQfszZfY";

            var bytes = new byte[] { 1, 2, 3, 4 };

            var sign  = crypto.SignBytes(bytes, seed);
            var sign2 = crypto.SignBytesWithPrivateKey(bytes, privateKeyInit);

            Assert.IsTrue(crypto.VerifySignature(publicKeyInit, bytes, sign));
            Assert.IsTrue(crypto.VerifySignature(publicKeyInit, bytes, sign2));
        }
Exemple #8
0
        public void TestPublicAndPrivateKey()
        {
            var crypto         = new WavesCrypto();
            var seed           = "seed seed seed seed seed seed";
            var publicKeyInit  = "22e8aRY89tDZhcaVmPvxxorj7e5mtbiUtG6MYN5agt8z";
            var privateKeyInit = "8bg5KM2n5kKQE6bVZssvwMEivc6ctyKahfGLkQfszZfY";
            var addressInit    = "3P6zgpT1vmqfPRwQkx2HTULBheD8T3RRkKg";

            var address    = crypto.Address(seed, WavesChainId.MAIN_NET_CHAIN_ID);
            var publicKey  = crypto.PublicKey(seed);
            var privateKey = crypto.PrivateKey(seed);

            Assert.AreEqual(privateKey, privateKeyInit);
            Assert.AreEqual(publicKey, publicKeyInit);
            Assert.AreEqual(address, addressInit);
            Assert.IsTrue(crypto.VerifyAddress(address, WavesChainId.MAIN_NET_CHAIN_ID, publicKey));
            Assert.IsTrue(crypto.VerifyPublicKey(publicKeyInit));
        }