Controller Access Key Generation Using Time-Varying Data
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing memory protection schemes require separate processes to generate pseudo-random seeds for access keys, increasing processing burden and complexity, while periodic key modifications enhance security but add complexity.
Innovation Solution
A controller device generates a pseudo-random access key using sampled time-varying data from a controlled device, eliminating the need for a separate seed generation process, thereby enhancing security and efficiency by utilizing existing data streams.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If periodic modification of access keys is implemented to enhance security, then security of protected memory is improved, but processing burden and implementation complexity increase due to requirement of random number generator
Solution Approach 1:
The system uses existing time-varying data from controlled devices to generate access keys, allowing the system to serve its own key generation needs without external random number generators. The controller device self-generates keys using data it already receives from controlled devices, eliminating the need for separate key generation hardware or software components.
Solution Approach 2:
Time-varying data from controlled devices serves dual purposes: it is used for normal control operations and simultaneously serves as the basis for generating access keys. This multi-functional use of existing data streams eliminates the need for dedicated random number generation resources while maintaining security requirements.
2Reliability
If separate random number generator process is implemented for key generation, then key randomness and security are improved, but processing speed decreases due to additional processing burden
Solution Approach 1:
The key generation process is merged with the existing data reception and processing workflow. Instead of separating key generation as an independent process requiring additional computational resources, the system combines key generation with the existing time-varying data processing pipeline, thereby maintaining processing speed while ensuring key randomness.
Solution Approach 2:
The system continuously receives time-varying data from controlled devices for normal operations. By continuously utilizing this existing data stream for key generation, the system maintains uninterrupted key availability without introducing processing interruptions or delays that would occur with separate batch key generation processes.
3Reliability
If predetermined key is shared between source and target devices for access control, then authenticity and integrity checks are improved, but security vulnerability increases if key is compromised or intercepted
Solution Approach 1:
The system transitions from static predetermined keys to dynamic access keys that are continuously regenerated based on time-varying data from controlled devices. This dynamic key generation ensures that even if a key is compromised, it becomes invalid after the next regeneration cycle, significantly reducing the window of vulnerability and limiting the impact of key interception.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
In one example, a method includes receiving, by a controller device from a master device 16 operably connected to the controller device 12, a memory access request configured to request access to computer-readable memory of the controller device. The method further includes sampling, by the controller device, time-varying data received from a controlled device operably connected to the controller device, and generating, by the controller device in response to receiving the memory access request, an access key using the sampled time-varying data received from the controlled device. The method further includes transmitting, by the controller device, the generated access key to the master device, and enabling, by the controller device, access to the computer-readable memory of the controller device in response to data write commands received from the master device that include an access code based on the access key.