概述
从《软件安全的二十四宗罪编程瑕疵与如何纠正》第21章翻译而来。
1 不能使用DES算法。密钥太短,只有56位。
2 112位的3DES也不推荐使用。它在FIPS(Federal Information Processing Standards)中已经失去地位了。
3 RSA、DH算法中密钥材料长度应该大于1024.
4 不推荐使用流加密算法,尤其是RC4(如果存在两段明文相同,则XOR就会成为两端明文的XOR).一般可以用AES+分组密码转化为流模式的方式模拟。
5 使用Hash时不要使用两个变量字符连接后在哈希。如此,ABCD+EFG和ABC+DEFG的哈希值是一样的。为了防止出现此种情况,可在中间加上一个连字符。另外,考虑到hash length extension attacks。尽量使用HMAC。可参考下面的链接:http://utcc.utoronto.ca/~cks/space/blog/programming/HashLengthExtAttack
6 不要使用ECB加密模式。两个明文加密后的密文是一致的。
7 不要加密已知的明文。
8 采用salt和IV。
9 即使有时为了能随机访问密文中的一段,使用了RC4,也需要提供完整性保护。
最后
以上就是动听棒球为你收集整理的使用加密算法不当的一些原则的全部内容,希望文章能够帮你解决使用加密算法不当的一些原则所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复