Exemplo n.º 1
0
        public void TestKeyStoreAddRemove()
        {
            string keyname = this.GetType().FullName + ".TestKeyCreateAndDelete";

            using (RSAPrivateKey key = new RSAPrivateKey())
            {
                Assert.IsFalse(key.DeleteFromStore());

                key.WriteToStore(keyname);

                CspParameters cp = new CspParameters();
                cp.KeyContainerName = keyname;
                cp.Flags            = CspProviderFlags.UseExistingKey;

                using (RSAPrivateKey key2 = RSAPrivateKey.FromStore(cp))
                    Assert.AreEqual(key.ToXml(), key2.ToXml());

                using (RSAPrivateKey key2 = RSAPrivateKey.FromStore(keyname))
                {
                    Assert.AreEqual(key.ToXml(), key2.ToXml());
                    Assert.IsTrue(key2.DeleteFromStore());
                    key2.Dispose();
                }
            }
        }
Exemplo n.º 2
0
 public void Dispose()
 {
     if (_publicKey != null)
     {
         _publicKey.Dispose();
     }
     if (_privateKey != null)
     {
         _privateKey.Dispose();
     }
     if (_privateBits != null)
     {
         Array.Clear(_privateBits, 0, _privateBits.Length);
     }
 }