【发布时间】:2016-02-25 10:38:14
【问题描述】:
在我的业务场景中(基本上是一个云文件共享应用程序)我有以下案例:
用户上传文件到文件夹
正在检查文件夹是否受 PIN 保护
-
1) 如果它没有 PIN 保护,则使用存储在应用程序中的预定义密钥 + 存储在 数据库。
2) 如果它是PIN 保护,使用预定义的密码 + PIN 值 + 存储在数据库中的 IV 密钥加密文件
问题在于,当超过最大密钥大小(16、24、32 字节)时,具有有限密钥长度的 AES 会获得无效的密钥长度。我的主要问题是如何在保持安全性的同时实现类似的目标。
目前文件夹 PIN 长度不受限制,但似乎我应该将其限制为至少 AES 密钥传递的最大长度。使用 RijndaelManaged 可能会稍有改进,我在密码长度方面有更多的灵活性。
任何建议都将不胜感激。
注意:我认为代码不会为问题增加任何价值,但如果有人不同意,请告诉我,我会添加。
【问题讨论】:
标签: c# encryption aes rijndaelmanaged