private static byte[] DoCryptoOperation(byte[] inputData, byte[] key, byte[] iv, bool encrypt)
{
byte[] output;
using (var aes = new AesCryptoServiceProvider())
using (var ms = new MemoryStream())
{
var cryptoTransform = encrypt ? aes.CreateEncryptor(key, iv) : aes.CreateDecryptor(key, iv);
try
{
using (var cs = new CryptoStream(ms, cryptoTransform, CryptoStreamMode.Write))
{
cs.Write(inputData, 0, inputData.Length);
}
output = ms.ToArray();
}
catch
{
output = new byte[0];
}
}
return output;
}