SHA-1 Already broken 3 places See details
Hash algorithm through the JCA
`MessageDigest.getInstance()`. MD5 and SHA-1 are reported as already broken; SHA-256 is reported as a reduced margin rather than a defect.
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 as the floor, SHA-384 where the digest protects something that must remain verifiable for decades.
-
server-spi-private/src/main/java/org/keycloak/protocol/saml/util/ArtifactBindingUtils.java:48
MessageDigest sha1Digester = MessageDigest.getInstance("SHA-1"); -
testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/saml/ArtifactBindingTest.java:195
test path
MessageDigest sha1Digester = MessageDigest.getInstance("SHA-1"); -
testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/saml/ArtifactBindingTest.java:455
test path
MessageDigest sha1Digester = MessageDigest.getInstance("SHA-1");