跳到内容

弱密码密钥 (S505)

源自 flake8-bandit linter。

作用

检查是否使用了具有易受攻击的密钥长度的密码密钥。

为什么这不好?

小密钥很容易被破解。对于 DSA 和 RSA,密钥应至少为 2048 位长。对于 EC,密钥应至少为 224 位长。

示例

from cryptography.hazmat.primitives.asymmetric import dsa, ec

dsa.generate_private_key(key_size=512)
ec.generate_private_key(curve=ec.SECT163K1())

建议改为

from cryptography.hazmat.primitives.asymmetric import dsa, ec

dsa.generate_private_key(key_size=4096)
ec.generate_private_key(curve=ec.SECP384R1())

参考