我正面临 Veracode 指出的加密安全问题。请检查下面并帮助我解决这个问题。
System.Security.Cryptography.MD5CryptoServiceProvider crypthandler =
new System.Security.Cryptography.MD5CryptoServiceProvider();
MD5 被认为是不安全或“损坏”的散列函数。假设您获得的是 CWE 327(使用损坏或有风险的加密算法),您可以通过更新到 SHA-2 系列哈希函数来解决此问题。
我会推荐 SHA-256、SHA-384 或 SHA-512 用于未来的校对。
例子:
using (SHA512CryptoServiceProvider crypthandler = new SHA512CryptoServiceProvider())
{
...
}
使用损坏或有风险的加密算法 ( CWE ID 327
) 说明 使用损坏或有风险的加密算法是一种不必要的风险,可能会导致敏感信息的泄露。
MD5CryptoServiceProvider hashmd5 = new MD5CryptoServiceProvider();
SHA512CryptoServiceProvider hashmd5 = new SHA512CryptoServiceProvider();
参考以下链接: