Authentication Provider Functionality for Secure Software Client Application Distribution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software client applications lack efficient and automated methods for authentication, especially in scenarios involving sensitive data, such as IoT devices, where trustworthiness is crucial, and existing solutions like TLS often require user interaction or share secrets among multiple instances, making them vulnerable to impersonation attacks.

Innovation Solution

Implementing an authentication provider functionality on the client computing device that establishes secure communication channels with both the application distribution entity and a third-party server, using asymmetric cryptographic keys and security tokens, ensuring mutual authentication and protecting data transmission without revealing authentication information to the application distribution entity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional authentication methods (e.g., TLS) are used for software client applications, then security can be provided, but user interaction is required and secrets are shared among multiple instances making them vulnerable to impersonation attacks

Engineering Contradiction:
Improveauthentication securityVSAvoiduser interaction requirement
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The authentication provider functionality enables automated authentication without user interaction. The system self-manages the authentication process by automatically establishing secure communication channels and exchanging authentication information between the software client application, authentication provider functionality, and server entity.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The authentication provider functionality acts as an intermediary component on the client device that mediates between the software client application and the server entity. It manages authentication credentials and secure communication channels, preventing direct exposure of secrets while enabling automated authentication.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If traditional authentication methods are used, then security can be provided, but secrets are shared among multiple instances making them vulnerable to impersonation attacks

Engineering Contradiction:
Improveauthentication securityVSAvoidimpersonation attack vulnerability
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The authentication system is segmented into distinct components: the software client application, the authentication provider functionality, and the server entity. Each instance has its own dedicated authentication credentials managed by its local authentication provider functionality, preventing secret sharing and impersonation attacks.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Each software client application instance has its own local authentication provider functionality with unique credentials stored and managed locally on the respective client device. This localization of authentication credentials ensures that secrets are not shared across instances, eliminating impersonation vulnerabilities.

Inventive Principle:
Principle #3Local quality

3Productivity

If automated authentication is implemented, then productivity is improved, but device complexity increases

Engineering Contradiction:
Improveauthentication automationVSAvoidauthentication system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The authentication provider functionality is designed as a universal component that can serve multiple software client applications on the same client device. It provides centralized management of authentication credentials and secure communication channels, reducing overall system complexity while enabling automated authentication.

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

Data Source

PatentEP3512231B1Method for providing an enhanced level of authentication related to distribution of a secure software client application; as well as corresponding system and computer program product.
Publication Date: 2022.03.16 DEUTSCHE TELEKOM AG
  • EP3512231B1 patent drawingFigure 1

AI summary

The invention relates to a method for providing an enhanced level of authentication related to a secure software client application that is provided, by an application distribution entity, in order to be transmitted, using a telecommunications network, to a client computing device in view of software code of the software client application being executed by the client computing device, wherein a first secure communication channel is established - in view of transmitting an instance of the software client application to the client computing device - between the client computing device and the application distribution entity, wherein the client computing device comprises an instance of an authentication provider functionality, wherein a second secure communication channel is established between the authentication provider functionality and an authentication provider server entity, and wherein a third secure communication channel is established between the authentication provider server entity and a third party server entity, wherein the method comprises the following steps: -- in a first step, in view of subsequently allowing for an authenticated transmission of data - provided by the software client application instance upon it being executed by the client computing device - to the third party server entity, the authentication provider functionality is initialized or installed within the client computing device and the second secure communication channel as well as the third secure communication channel is initialized or established, -- in a second step, prior to, during or subsequent to the first step, the software client application instance is transmitted, using the first secure communication channel, to the client computing device, -- in a third step, subsequent to the second step, a fourth secure communication channel is established, between the software client application instance and the third party server entity, by means of exchanging at least parts of cryptographic key information and/or security token information using - besides the second secure communication channel and the third secure communication channel - an internal secure communication channel, the internal secure communication channel being internal to the client computing device, between the software client application instance and the authentication provider functionality.