阅读加密最佳实践,我发现建议将 MAC 添加到 AES 加密中。我使用 AesCryptoServiceProvider 因为我需要符合 FIPS。这意味着,我正在做这样的事情:
private static byte[] Encrypt(byte[] data, byte[] key)
{
using (var algo = new AesCryptoServiceProvider())
{
algo.Key = key;
using (var ct = algo.CreateEncryptor(algo.Key, algo.IV))
return algo.IV.Concat(ct.TransformFinalBlock(data, 0, data.Length)).ToArray();
}
}
但是,我真的找不到任何示例来说明在 MAC 中的最佳实践用法。任何指针?