Exemplo n.º 1
0
 public void Dispose()
 {
     DhPrime.Dispose();
     DhGenerator.Dispose();
     DhPublic.Dispose();
     DhPrivate.Dispose();
 }
Exemplo n.º 2
0
 protected virtual void Dispose(bool disposing)
 {
     if (!IsDisposed)
     {
         if (disposing)
         {
             Rsa?.Dispose();
             DhPrime?.Dispose();
             DhGenerator?.Dispose();
             DhPublic?.Dispose();
             DhPrivate?.Dispose();
         }
         IsDisposed = true;
     }
 }
Exemplo n.º 3
0
        public string GetPublicKey()
        {
            if (!string.IsNullOrEmpty(_publicKey))
            {
                return(_publicKey);
            }

            byte[] publicKeyAsBytes = Encoding.Default.GetBytes(DhPublic.ToString(10));
            if (IsInitiator)
            {
                Rsa.Sign(ref publicKeyAsBytes);
            }
            else
            {
                Rsa.Encrypt(ref publicKeyAsBytes);
            }

            return(_publicKey = BytesToHex(publicKeyAsBytes).ToLower());
        }