AES加密16个字节

时间:2011-04-27 05:24:10

标签: c# encryption aes

我正在尝试使用我在此处找到的实现来加密文件:
http://msdn.microsoft.com/en-us/magazine/cc164055.aspx
这个实现只加密16个字节,所以我的问题是:
我可以一次只在16个字节的整个文件中使用它吗?它会削弱加密吗?

2 个答案:

答案 0 :(得分:2)

使用内置AES功能:AesCryptoServiceProvider

Here's如何使用它来加密文件的示例。

尽可能避免编写自己的加密例程 - 库版本可能比替代版本更好地优化和更安全。

答案 1 :(得分:1)

AES是块密码,块大小为128位;这就是为什么它一次加密16个字节的原因。

分组密码可用于各种modes。如果您分别独立地加密每组16个字节,那么您将使用ECB mode中的密码,这是最弱的模式,因为它不会隐藏明文中的模式。最好以一种模式加密文件,以便为同一明文的多次出现产生不同的密文,例如CBC mode,这样明文中的模式就不会转换为模式中的模式。密文。