Server Authentication via Multiple Non-Overlapping Certificate Chains

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods to protect certificate authorities (CAs) from compromise are inadequate, as they often require notification and updating of clients after a compromised CA signing key is detected, which can lead to widespread attacks, and existing solutions like certificate revocation lists and public key pinning are complex or difficult to implement effectively.

Innovation Solution

A client implements a public key acceptance policy that requires multiple certificates from different trusted certificate authorities for a server's public key, ensuring the certificates are valid and non-overlapping, thereby increasing the difficulty for attackers to compromise the trust anchor and establishing a secure channel.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If certificate revocation lists or on-line certificate status are used to address compromised CAs, then security is improved after compromise detection, but implementation complexity and scalability are worsened due to difficulty in notifying and updating clients in short time periods

Engineering Contradiction:
ImprovesecurityVSAvoidimplementation complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system performs preliminary actions by having servers proactively register their public keys with multiple CAs before any compromise occurs. This creates pre-established certificate chains that are ready for immediate use, eliminating the need for complex real-time notification and update mechanisms when a compromise is detected. The client's public key acceptance policy is also established in advance, specifying the required number of valid chains and trust conditions.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If multiple certificates from different CAs are required for server authentication, then security is improved by increasing the number of CAs an attacker must compromise, but device complexity is worsened due to the need to manage and validate multiple certificate chains

Engineering Contradiction:
ImprovesecurityVSAvoidcertificate management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system employs self-service mechanisms where the client automatically manages the complexity of validating multiple certificate chains. The client's public key acceptance policy automatically evaluates multiple chains, checks their validity, verifies non-overlapping intermediate and root CAs, and determines trust satisfaction without requiring manual intervention. This shifts the complexity burden from manual certificate management to automated policy evaluation.

Inventive Principle:
Principle #25Self-service

3Reliability

If public key pinning or DANE solutions are implemented to associate public keys with server names, then security is improved, but ease of operation is worsened due to complex implementation issues and scalability challenges

Engineering Contradiction:
ImprovesecurityVSAvoidease of implementation
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The system segments the authentication mechanism by separating the trust anchor (CA) from the certificate validation process. Instead of pinning specific public keys or implementing complex DANE solutions, the approach divides authentication into independent certificate chains from different CAs. Each chain can be validated independently, and the client policy specifies the number of valid chains required. This segmentation simplifies implementation compared to key pinning while maintaining security.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11095635B2Server authentication using multiple authentication chains
Publication Date: 2021.08.17 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11095635B2 patent drawing
  • US11095635B2 patent drawing
  • US11095635B2 patent drawing

AI summary

A client seeking to establish a cryptographically-secure channel to a server has an associated public key acceptance policy. The policy specifies a required number of certificates that must be associated with the server's public key, as well as one or more conditions associated with those certificates, that must be met before the client “accepts” the server's public key. The one or more conditions typically comprise a trust function that must be satisfied before a threshold level of trust of the client is met. A representative public key acceptance policy would be that certificate chains for the public key are valid and non-overlapping with different root CAs, and that some configurable number of those chains be present. The technique may be implemented within the context of an existing client-server SSL/TLS handshake.