【发布时间】:2018-01-08 16:35:11
【问题描述】:
The System.Security.Cryptography namespace 至少有 3 种不同的看似可互换的方式来获取执行 AES 加密/解密的对象:
using (var aes = Aes.Create())
或
using (var aes = new AesCryptoServiceProvider())
或
using (var aes = new AesCng())
前两个是在 .NET 框架 3.5 版中引入的。第三个要新得多;它是在 4.6.2 版本中引入的。因此有人可能会怀疑它比其他 2 更好,但 the documentation 并没有在任何地方说建议使用它来代替其他 2。
前两个各有一个代码示例。这两个样本看起来基本相同。
我应该使用哪一个,为什么?
【问题讨论】:
-
你想要
Aes.Create()。
标签: c# .net cryptography aes