public static Byte[] Encrypt(Byte[] bytesToBeEncrypted) { Byte[] array = AESCryptography.GetPassword(); Byte[] result = null; Byte[] salt = AESCryptography.GetSalt(); using (MemoryStream memoryStream = new MemoryStream()) { using (RijndaelManaged rijndaelManaged = new RijndaelManaged()) { rijndaelManaged.KeySize = 256; rijndaelManaged.BlockSize = 128; Rfc2898DeriveBytes rfc2898DeriveBytes = new Rfc2898DeriveBytes(array, salt, 1000); rijndaelManaged.Key = rfc2898DeriveBytes.GetBytes(rijndaelManaged.KeySize / 8); rijndaelManaged.IV = rfc2898DeriveBytes.GetBytes(rijndaelManaged.BlockSize / 8); rijndaelManaged.Mode = CipherMode.CBC; using (CryptoStream cryptoStream = new CryptoStream(memoryStream, rijndaelManaged.CreateEncryptor(), CryptoStreamMode.Write)) { cryptoStream.Write(bytesToBeEncrypted, 0, (Int32)bytesToBeEncrypted.Length); cryptoStream.Close(); } result = memoryStream.ToArray(); } } return(result); }