Exemple #1
0
        public void SignHash()
        {
            byte[] data = GetRandomData();

            byte[] signature;
            byte[] hash = Gost2001KeyContainer.ComputeHash(data);

            using (GostCryptFacade keyContainer = Gost2001KeyContainer.Open(Container, ContainerPassword))
            {
                signature = keyContainer.SignHash(hash, KeyNumber.Signature);
            }

            byte[] publicKey = Gost2001KeyContainer.ExportPublicKey(Container);
            bool   result    = Gost2001KeyContainer.VerifySignature(signature, data, publicKey);

            Assert.IsTrue(result);
        }
Exemple #2
0
 /// <summary>
 ///     Экспорт открытого ключа.
 /// </summary>
 /// <returns>Открытый ключ.</returns>
 public string ExportPublicKey()
 {
     log.Debug("ExportPublicKey: keyContainerName: {0}", Container);
     return(Convert.ToBase64String(Gost2001KeyContainer.ExportPublicKey(Container)));
 }