Java中的AES-256加密,无需更改策略文件

时间:2017-02-22 11:32:33

标签: java encryption aes jce policyfiles

我正在尝试使用AES在Java中加密一些数据 到目前为止,我已成功使用128位密钥加密数据。

对于256位加密,我需要更改我的策略文件,这对我来说不是一个选项 我也提到了this SO Q / A. 试过BouncyCastle,但似乎他们没有任何256位密钥的规定( 第一个问题 here ) 看看JNCryptor。但不知道它是否是一个好的来源。(BouncyCastle是由 FIPS 批准的)

此外, Reflection 不是一个选项,因为它违反了JAVA许可协议。
因此,如果有人可以引导我查看相关问题或分享可能的解决方案,我会很高兴。

1 个答案:

答案 0 :(得分:0)

128位AES密钥没有任何错误或不安全因素,它不是强制性的。 256位不再提供安全性,成功的攻击将在另一个区域。

要确保密钥的质量,使用加密安全随机数生成器(CSPRNG)或使用PBKDF2从非常好的密码派生密钥。

正确验证加密:加密然后MAC。

在CBC模式下使用随机IV,不报告填充错误。