MD5 Already broken 10 places See details
HTTP Digest authentication
An HTTP Digest authentication implementation. RFC 7616 Digest is built on MD5 in its widely deployed form. This is not a quantum question: it is weak today and depends entirely on the TLS underneath it. HTTP Basic is deliberately not matched - it is base64 and contains no cryptography to inventory.
This is already unsafe today, with no quantum computer involved. Practical chosen-prefix collisions exist; MD5 has no remaining security as a digest.
What to do. Move to a token-based scheme. Where Digest must remain, use the SHA-256 variant.
-
httpclient5/src/main/java/org/apache/hc/client5/http/impl/async/H2AsyncClientBuilder.java:62
import org.apache.hc.client5.http.impl.auth.DigestSchemeFactory; -
httpclient5/src/main/java/org/apache/hc/client5/http/impl/async/HttpAsyncClientBuilder.java:69
import org.apache.hc.client5.http.impl.auth.DigestSchemeFactory; -
httpclient5/src/main/java/org/apache/hc/client5/http/impl/auth/DigestScheme.java:88
public class DigestScheme implements AuthScheme, Serializable { -
httpclient5/src/main/java/org/apache/hc/client5/http/impl/auth/DigestSchemeFactory.java:46
public class DigestSchemeFactory implements AuthSchemeFactory { -
httpclient5/src/main/java/org/apache/hc/client5/http/impl/classic/HttpClientBuilder.java:72
import org.apache.hc.client5.http.impl.auth.DigestSchemeFactory; -
httpclient5/src/main/java/org/apache/hc/client5/http/impl/classic/ProxyClient.java:48
import org.apache.hc.client5.http.impl.auth.DigestSchemeFactory; -
httpclient5/src/test/java/org/apache/hc/client5/http/examples/ClientPreemptiveDigestAuthentication.java:35
test path
import org.apache.hc.client5.http.impl.auth.DigestScheme; -
httpclient5/src/test/java/org/apache/hc/client5/http/impl/TestAuthenticationStrategy.java:45
test path
import org.apache.hc.client5.http.impl.auth.DigestScheme; -
httpclient5/src/test/java/org/apache/hc/client5/http/impl/auth/TestDigestScheme.java:81
test path
final AuthScheme authscheme = new DigestScheme(); -
httpclient5/src/test/java/org/apache/hc/client5/http/impl/auth/TestHttpAuthenticator.java:95
test path
.register(StandardAuthScheme.DIGEST, DigestSchemeFactory.INSTANCE)