Shared Library Authentication Using Homomorphic Encryption Keys

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing computer programs using shared libraries are vulnerable to attacks where attackers can replace or tamper with the shared libraries, compromising security and integrity during execution, as there is no effective authentication or integrity check mechanism.

Innovation Solution

Implement a method using a homomorphic encryption function to authenticate shared libraries by generating an authentication key through encryption operations, ensuring secure communication channels and integrity checks before function execution.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If no authentication mechanism is implemented for shared libraries, then the system maintains simplicity and ease of operation, but security and reliability are compromised allowing library replacement and tampering

Engineering Contradiction:
Improveshared library authenticationVSAvoidauthentication mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by performing authentication of the shared library before establishing the communication channel. The authentication key D is generated and verified in advance through homomorphic encryption operations, ensuring the library is legitimate before any functions are called, thus preventing runtime attacks

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary authentication mechanism using homomorphic encryption. The encryption function acts as a mediator between the computer program and shared library, allowing verification of library integrity through encrypted authentication keys without exposing sensitive information, thus resolving the contradiction between security and complexity

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If homomorphic encryption is used to authenticate the shared library, then security is improved by obfuscating the authentication key, but computational complexity and processing time increase

Engineering Contradiction:
Improveauthentication securityVSAvoidencryption function complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the authentication verification process from the main program execution flow. By separating the authentication key generation and verification steps into a distinct preliminary phase using homomorphic encryption, the system achieves enhanced security without significantly impacting the core program functionality

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent changes the parameter representation by using homomorphic encryption to transform the authentication key into an encrypted form that maintains mathematical properties. This allows verification operations to be performed on encrypted data, improving security while managing computational complexity through parameter transformation

Inventive Principle:
Principle #35Parameter changes

3Reliability

If authentication is performed during runtime, then security against runtime attacks is improved, but execution time is increased due to additional verification steps

Engineering Contradiction:
Improveruntime authenticationVSAvoidauthentication processing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs authentication as a preliminary action before the communication channel is established and before any library functions are executed. This ensures security during runtime while minimizing time loss by completing verification upfront, allowing the program to proceed efficiently once authentication is confirmed

Inventive Principle:
Principle #10Preliminary action

4Reliability

If the authentication key is transmitted in encrypted form, then security is improved by making it harder for attackers to access the predetermined value set, but the complexity of verification processes increases

Engineering Contradiction:
Improveencrypted key transmissionVSAvoidverification complexity
Core Design Contradiction:
ReliabilityVSDifficulty of detecting and measuring

Solution Approach 1:

The patent uses homomorphic encryption as an intermediary that allows verification of the authentication key without decrypting it. The encryption function maintains mathematical properties that enable verification operations on encrypted data, thus improving security while managing verification complexity through the intermediary's special properties

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentEP4650997A1Authentication of a shared library using an encryption function
Publication Date: 2025.11.19 THALES DIS FRANCE SA
  • EP4650997A1 patent drawingFigure 1
  • EP4650997A1 patent drawingFigure 2
  • EP4650997A1 patent drawingFigure 3

AI summary

The invention provides a method of authentication between a computer program comprising code instructions with a link to call for a function of a shared library and the shared library implemented in an entity. The method comprises applying (306), by the entity, an encryption function to a predetermined value set N, wherein the encryption function is homomorphic for at least a first operation, and applying (306; 307), by the entity, the first operation to at least one encrypted element of the encrypted value set and to at least one shared value to obtain an authentication key D. Upon reception of (308) the authentication key D, the compute performs (315-318) authentication of the shared library, by the computer, based on the authentication key D and a communication channel is established (319) between the computer program and the shared library to execute the function called by the link in the computer program, only if the authentication of the shared library is valid.