コード例 #1
0
        private static bool VerifySignature(Gost3410AsymmetricAlgorithmBase publicKey, Stream dataStream, byte[] signature)
        {
            byte[] hash;

            using (var hashAlg = new Gost3411HashAlgorithm())
            {
                hash = hashAlg.ComputeHash(dataStream);
            }

            return publicKey.VerifySignature(hash, signature);
        }
コード例 #2
0
        private static byte[] CreateSignature(Gost3410AsymmetricAlgorithmBase privateKey, Stream dataStream)
        {
            byte[] hash;

            using (var hashAlg = new Gost3411HashAlgorithm())
            {
                hash = hashAlg.ComputeHash(dataStream);
            }

            return privateKey.CreateSignature(hash);
        }
コード例 #3
0
        public void ShouldComputeHash()
        {
            // Given
            var dataStream = CreateDataStream();

            // When

            byte[] hashValue;

            using (var hash = new Gost3411HashAlgorithm())
            {
                hashValue = hash.ComputeHash(dataStream);
            }

            // Then
            Assert.IsNotNull(hashValue);
            Assert.AreEqual(32, hashValue.Length);
        }