Prime Number Generation for Portable RSA Key Pairs

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The generation of prime numbers for RSA key pairs on portable devices is time-consuming and indeterministic, leading to variable and potentially excessive calculation times, which can exceed acceptable limits in certain applications, and existing solutions like pre-stored seeds or interruptible calculations come with implementation and resource constraints.

Innovation Solution

A method that retrieves or generates prime numbers within a predetermined time frame, stores intermediate results for later use, and pre-calculates a reserve of prime numbers to ensure consistent generation times, allowing for efficient use of device resources and reducing the risk of exceeding critical time limits.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If iterative prime number generation is performed on portable devices, then cryptographic security is improved through hardware protection, but calculation duration becomes excessively long and indeterministic

Engineering Contradiction:
Improvecryptographic securityVSAvoidcalculation duration
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by pre-calculating and storing multiple candidate prime numbers in the device's memory before they are needed for key generation. When a prime number is required for RSA key pair generation, the system retrieves pre-computed candidates and performs minimal verification instead of executing the full iterative generation process, thereby dramatically reducing calculation time while maintaining security requirements

Inventive Principle:
Principle #10Preliminary action

2Loss of time

If pre-stored seeds are used to reduce generation time, then calculation duration is reduced, but implementation complexity and resource constraints increase

Engineering Contradiction:
Improvegeneration timeVSAvoidimplementation complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent uses copying by storing multiple pre-computed candidate prime numbers in the device's memory. These candidates are generated in advance during device manufacturing or initialization and stored for rapid retrieval. This approach avoids the complexity of interruptible calculations or external server communication while providing deterministic fast generation, as the candidates are simply copied from storage to use

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If interruptible calculation with context storage is implemented, then generation can be resumed later, but application constraints and operational complexity increase

Engineering Contradiction:
Improveinterruptible operationVSAvoidoperational simplicity
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The patent applies preliminary action by pre-computing and storing multiple candidate prime numbers before they are needed. This eliminates the need for interruptible calculation mechanisms, context storage, and resumption logic. The system simply retrieves pre-computed candidates when needed, providing both speed and operational simplicity without requiring complex state management

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10447477B2Method for on-board prime number generation
Publication Date: 2019.10.15 THALES DIS FRANCE SA
  • US10447477B2 patent drawing
  • US10447477B2 patent drawing

AI summary

The present invention relates to a method to generate prime numbers on board a portable device, said method comprising the steps of, each time at least one prime number is requested:when available, retrieve results from previously performed derivation calculation or, if not, select a start point for derivation;process derivation calculation to converge towards a prime number;if a prime number is found, store it and restart derivation calculation from a new start point;stop the derivation calculation after a predetermined amount of time;store intermediate results to be used a next time a prime number will be requested;output a stored prime number.