HTTP Digest Authentication Against Algorithm Downgrade Attacks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing HTTP Digest Access Authentication is vulnerable to attacks where malicious proxies intercept and remove stronger digest algorithm headers, forcing clients to use weaker algorithms, leading to security insecurities in the negotiation process.

Innovation Solution

The proposed solution involves a client device and server device that perform digest access authentication by sending and receiving multiple challenges with different digest algorithms, calculating a response indicative of all algorithms, and verifying the correctness of the response to ensure secure negotiation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the server sends multiple digest algorithm challenges, then the security of authentication is improved, but the complexity of the authentication process increases

Engineering Contradiction:
Improveauthentication securityVSAvoidauthentication process complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The server performs preliminary action by pre-calculating and storing hash values for multiple digest algorithms (MD5, SHA-256, etc.) before the authentication process begins. When a challenge-response authentication is initiated, the server can immediately verify the client's response using any of the supported algorithms without performing additional computational overhead, thus maintaining high security while managing complexity efficiently.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The authentication system is designed with multi-functionality to support multiple digest algorithms (MD5, SHA-256, and others) within a single authentication framework. The server and client can negotiate and use any of the supported algorithms, making the system universal and adaptable to different security requirements without requiring separate authentication mechanisms for each algorithm.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Adaptability or versatility

If the client calculates response using one algorithm while server verifies with multiple algorithms, then authentication flexibility is improved, but verification complexity increases

Engineering Contradiction:
Improvealgorithm negotiation flexibilityVSAvoidverification complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The server performs preliminary action by pre-computing and storing the expected hash values for multiple digest algorithms during the challenge phase. When verifying the client's response, the server simply compares the received hash against the pre-computed values for each algorithm, reducing verification complexity while maintaining the ability to support multiple algorithms flexibly.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The authentication mechanism incorporates feedback by allowing the client to indicate which algorithm was used in the response, and the server uses this feedback to select the appropriate verification method. This feedback loop enables efficient verification by avoiding unnecessary comparisons across all algorithms while maintaining adaptability.

Inventive Principle:
Principle #23Feedback

3Ease of operation

If malicious proxy removes strong algorithm headers, then client uses weaker algorithm, but security is compromised

Engineering Contradiction:
Improvealgorithm negotiation simplicityVSAvoiddigest algorithm security
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The client performs preliminary anti-action by incorporating a integrity check mechanism that verifies the authenticity of the challenge headers received from the server. The client can detect if strong algorithm headers have been removed or modified by a malicious proxy through cryptographic verification, and refuse to proceed with authentication if integrity is compromised, thus preventing downgrade attacks.

Inventive Principle:
Principle #9Preliminary anti-action

Solution Approach 2:

The patent introduces an intermediary verification mechanism that acts as a mediator between the client and server to ensure the integrity of the algorithm negotiation process. This intermediary layer (in the form of cryptographic verification) detects and prevents malicious interference, allowing the system to maintain security even in the presence of potential proxy attacks.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS12621300B2Digest access authentication for a client device
Publication Date: 2026.05.05 TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
  • US12621300B2 patent drawing
  • US12621300B2 patent drawing
  • US12621300B2 patent drawing

AI summary

A method comprising a client device performing digest access authentication with a server device. The digest access authentication comprises sending a first request towards the server device for accessing a resource. The digest access authentication comprises receiving a first response from the server device. The first response comprises at least two challenges and indications of as many different digest algorithms, one digest algorithm is associated with each challenge. The digest access authentication comprises calculating a response to one of the challenges using the digest algorithm associated with said one of the challenges. The response to said one of the challenges is indicative of all of the different digest algorithms. The digest access authentication comprises sending a second request towards the server device for accessing the resource. The second request comprises the response to said one of the challenges. The digest access authentication comprises receiving a second response from the server device. The second response indicates successful digest access authentication with the server device.