最近、アプリケーションの 1 つで Veracode を使用して静的セキュリティ スキャンを実行しました。
レポートは問題を示しています
壊れた、または危険な暗号アルゴリズムの使用 (CWE ID 327)
次のコード スニペットに表示されます
byte[] CalculateHash(byte[] publicKey) {
SHA1CryptoServiceProvider hashGenerator = new SHA1CryptoServiceProvider();
Byte[] hashInArray = new Byte[32];
PrivateKey.CopyTo(hashInArray,0); // Combine public key and private key
publicKey.CopyTo(hashInArray,16);
return hashGenerator.ComputeHash(hashInArray); // Calculate hash
}
説明では、SHA1 を弱いアルゴリズムとして説明しています。
コードを変更し、SHA1 の代わりに SHA256 を使用して、ベラコード スキャンを再度実行しましたが、それでも同じ問題が発生します。
これに代わるものは何ですか?助言がありますか?