我在维护阶段继承了一个 Java (Spring) 项目,该项目刚刚第一次通过 Veracode,High
我们剩下的唯一缺陷是报告“弱或损坏”的加密算法。我更愿意花时间学习更多关于密码学的知识,但是这个项目是在野外进行的,所以我需要从一个更直接的解决方案开始,以确保这个应用程序的安全。
这是 Veracode 专门报告的行:
Cipher cipher = Cipher.getInstance("PBEWITHSHA1ANDDESEDE");
Veracode 不提供以下信息:
- 为什么这个算法被破坏/弱
- 哪些算法可能会产生足够的替代品
- 选择适当算法时需要注意的任何其他问题
我可以用什么代替"PBEWITHSHA1ANDDESEDE"
?这是否需要其他重构,还是像字符串文字交换一样简单?我很乐意提供更多规范来帮助我们缩小最佳加密算法的范围,但由于 Veracode 没有提供任何规范,唯一的规范是“满足 Veracode 的加密算法”。