Exemple #1
0
        public void GetPublicIdentityKeyGivesExpectedZerosKey()
        {
            PrivateIdentityKey priv = new PrivateIdentityKey(zerosSecret);
            PublicIdentityKey  pub  = priv.GetPublicIdentityKey();

            Assert.AreEqual(zerosPublic, pub.ToString());
        }
Exemple #2
0
        public void ToStringGivesSameKeyAsCreatedWith()
        {
            PrivateIdentityKey priv = new PrivateIdentityKey(zerosSecret);
            PublicIdentityKey  pub  = new PublicIdentityKey(zerosPublic);

            Assert.AreEqual(zerosSecret, priv.ToString());
            Assert.AreEqual(zerosPublic, pub.ToString());
        }
Exemple #3
0
        public void SignedMessageCanBeVerified()
        {
            PrivateIdentityKey priv = new PrivateIdentityKey();
            PublicIdentityKey  pub  = priv.GetPublicIdentityKey();

            byte[] message   = new byte[] { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05 };
            byte[] signature = priv.Sign(message);
            Assert.True(pub.Verify(message, signature));
        }
Exemple #4
0
        public void VerifyBadSignatureReturnsFalse()
        {
            PrivateIdentityKey priv = new PrivateIdentityKey();
            PublicIdentityKey  pub  = priv.GetPublicIdentityKey();

            byte[] message   = new byte[] { 0x00, 0x01, 0x02, 0x03, 0x04 };
            byte[] signature = priv.Sign(message);
            Assert.False(pub.Verify(message, new byte[64]));     // Bad signature
            Assert.False(pub.Verify(new byte[5], signature));    // Bad message
            Assert.False(pub.Verify(new byte[5], new byte[64])); // Bad both
        }