예제 #1
0
        public void Test_EncryptString_without_append_encryption_data_without_associated_data()
        {
            string associatedData       = null;
            var    appendEncryptionData = false;

            var aesEncryptionResult = _aes256gcm.EncryptString(_testString, _password, associatedData, appendEncryptionData);

            Assert.IsTrue(aesEncryptionResult.Success, aesEncryptionResult.Message);
        }
        /// <summary>
        /// Encrypts an input byte array using AES with a 256 bits key in GCM authenticated mode.
        /// </summary>
        /// <param name="text">The input byte array of the string to encrypt.</param>
        /// <param name="key">The encryption key being used.</param>
        /// <returns>The base64 encoded output string encrypted with AES.</returns>
        public static string Encrypt(byte[] text, byte[] key)
        {
            if (text == null)
            {
                throw new ArgumentNullException(nameof(text));
            }

            if (key == null)
            {
                throw new ArgumentNullException(nameof(key));
            }

            var aes = new AEAD_AES_256_GCM();

            return(Convert.ToBase64String(aes.EncryptString(text, key)));
        }
        /// <summary>
        /// Encrypts an input string using AES with a 256 bits key in GCM authenticated mode.
        /// </summary>
        /// <param name="text">The plain string input to encrypt.</param>
        /// <param name="key">The encryption key being used.</param>
        /// <returns>The base64 encoded output string encrypted with AES.</returns>
        public static string Encrypt(string text, string key)
        {
            if (string.IsNullOrEmpty(text))
            {
                throw new ArgumentNullException(nameof(text));
            }

            if (string.IsNullOrEmpty(key))
            {
                throw new ArgumentNullException(nameof(key));
            }

            var aes = new AEAD_AES_256_GCM();

            return(Convert.ToBase64String(aes.EncryptString(text, key)));
        }