D.P*_*TIT 5 java random entropy veracode
我创建了一个使用org.apache.commons.lang.RandomStringUtils生成随机单词(字母数字)的类.
public String randomWord(int wordLength) {
return RandomStringUtils.random(wordLength, 0, 0, true, true, null, new SecureRandom());
}
Run Code Online (Sandbox Code Playgroud)
这段代码工作正常,但是当我把它提交给Veracode时,我得到一个中等错误"Insufficient Entropy(CWE ID 331)"
我认为使用SecureRandom足以修复此错误,但事实并非如此,我不知道为什么.
为什么使用SecureRandom不够好或不够安全?
有没有办法使用org.apache.commons.lang.RandomStringUtils而不会让Veracode不开心?是否有任何其他安全库可用于生成安全的随机字母数字单词?
小智 2
SecureRandom 足以制作加密安全的伪随机数生成器。它不需要在 veracode 中设置种子。
veracode 会引发此标志,因为它不支持 apache RandomStringUtils。
验证此链接以获取更多信息。对于您的情况,您可以标记此误报。 https://www.veracode.com/blog/research/cryptographyally-secure-pseudo-random-number-generator-csprng