SHA-1 Already broken Renamed import 3 places See details
Broken hash function
`hashlib.md5()` or `hashlib.sha1()`. Both have practical collisions. Where the call is annotated `usedforsecurity=False` the finding is recorded as inventory instead.
This is already unsafe today, with no quantum computer involved. SHAttered and subsequent work produced practical collisions; NIST withdrew SHA-1 in 2030 guidance and it is already unacceptable for signatures.
What to do. SHA-256, or SHA-384 for long-lived signatures.
-
paramiko/config.py:449
"%C": sha1(tohash.encode()).hexdigest(), -
paramiko/hostkeys.py:294
salt = os.urandom(sha1().digest_size) -
paramiko/hostkeys.py:299
assert len(salt) == sha1().digest_size