Exemple #1
0
        public void CanVerifySignature()
        {
            var signatureProvider = new SignatureProvider(PrivateCertificate, PublicCertificate);
            var messageDigest     = "2012-05-19T17:31:18.000Z0000000000078330Success108429563";
            var signature         = "BXgUCWykw5I+4aDMC0gcJIY4crVfsPMt9NtTpLD9hzANEZB+gZIUOB6iIX2aS8AyxlDEikhM5eCA6UirtIbqcW94W4z0ekvtgBm0dUROACsZxHxqTuSRYDy22a+Qg92ei1eQ6GH0245BCAo3B4H48A91oFCOc963rJ43DrHd0x8=";

            Assert.IsTrue(signatureProvider.VerifySignature(signature, messageDigest));
        }
Exemple #2
0
        public void Sign_And_Verify()
        {
            const string expected = "Some text";
            var          key      = KeyGenerator.GenerateKeys().PrivateKey;

            var signature = SignatureProvider.CreateSignatureAsString(key, expected);
            var isValid   = SignatureProvider.VerifySignature(key, expected, signature);

            Assert.True(isValid);
        }
Exemple #3
0
            public void ShouldReturnValidKey()
            {
                var algorithmMapper   = new SignatureAlgorithmIdentifierMapper();
                var secureRandom      = new SecureRandomGenerator();
                var signatureProvider = new SignatureProvider(algorithmMapper, secureRandom, new SignerUtilitiesWrapper());

                byte[] data = secureRandom.NextBytes(100);

                IAsymmetricKey result    = keyProvider.GetPrivateKey(rsaKeyPair.PrivateKey.Content);
                Signature      signature = signatureProvider.CreateSignature(result, data);

                Assert.IsTrue(signatureProvider.VerifySignature(rsaKeyPair.PublicKey, signature));
            }
Exemple #4
0
            public void ShouldReturnFalseWhenDataLengthExceptionIsThrown(CipherType cipherType)
            {
                var keyPair   = keys[cipherType];
                var signature = signatureProvider.CreateSignature(keyPair.PrivateKey, content);

                var signer = new Mock <ISigner>();

                signer.Setup(s => s.VerifySignature(It.IsAny <byte[]>()))
                .Throws <DataLengthException>();

                var signerUtilities = new Mock <SignerUtilitiesWrapper>();

                signerUtilities.Setup(w => w.GetSigner(It.IsAny <string>()))
                .Returns(signer.Object);

                signatureProvider = new SignatureProvider(algorithmIdentifierMapper, secureRandomGenerator, signerUtilities.Object);
                Assert.IsFalse(signatureProvider.VerifySignature(keyPair.PublicKey, signature));
            }