Entropy Pooling for One-Time Pad Key Generation in IoT
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing cryptographic methods, particularly for IoT devices, face challenges in generating high-quality cryptographic keys due to lack of entropy and vulnerability to quantum attacks, as well as the need for secure key distribution and zero-knowledge encryption to protect against physical attacks and service provider access.
Innovation Solution
A method that harvests entropy from user-chosen numerical sequences and external factors, such as images, to generate symmetric keys, using a pseudo-random number generator and pixel harvesting techniques, ensuring secure distribution and zero-knowledge encryption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If asymmetric ciphers are used for key exchange, then secure key distribution is achieved, but computational overhead increases and quantum vulnerability arises
Solution Approach 1:
The patent extracts only the essential security function from asymmetric cryptography by using symmetric ciphers with pre-shared keys, eliminating the computational overhead of key pair generation and asymmetric encryption while maintaining security through alternative key distribution methods suitable for IoT devices
Solution Approach 2:
The patent changes the cryptographic parameters from asymmetric key pairs to symmetric keys, and further modifies the key distribution model by using entropy pooling from multiple sources (device entropy, user entropy, environmental entropy) to generate shared symmetric keys without requiring computationally intensive asymmetric operations
2Productivity
If symmetric ciphers are used for encryption, then computational efficiency improves, but secure key distribution becomes challenging
Solution Approach 1:
The patent merges multiple entropy sources (device-generated entropy, user-provided entropy from images/PINs, and environmental entropy) into a pooled entropy source, allowing symmetric keys to be generated securely without complex distribution protocols by having both parties independently derive the same key from shared entropy
Solution Approach 2:
The patent introduces an entropy pooling mechanism as an intermediary that facilitates secure key agreement by combining contributions from both communication parties, enabling symmetric encryption without requiring pre-established secure channels for key exchange
3Device complexity
If traditional entropy sources are used for key generation, then device complexity is reduced, but key quality and quantum resistance deteriorate
Solution Approach 1:
The patent creates a universal entropy pooling system that can accept multiple types of entropy sources (device hardware entropy, user images, PINs, environmental data) and process them through a unified key derivation function, enabling high-quality quantum-resistant key generation without increasing device complexity through multiple specialized components
4Ease of operation
If service providers manage encryption keys, then key management becomes centralized, but vulnerability to provider access and physical attacks increases
Solution Approach 1:
The patent enables devices to autonomously generate and manage their own encryption keys through local entropy pooling and key derivation, eliminating dependency on service providers for key management while maintaining ease of operation through automated processes that do not require user intervention for key operations
Data Source
AI summary
A method for encoding/decoding a message with One Time Pad (OTP) process, includes receiving a message to be encoded and an ordered dataset. A PRNG is parameterized with an initial seed that is used in a harvesting operation, which selects data from the dataset to create a current entropy plane of the selected data. In an encoding operation a portion of the received message is selected. The current entropy plane is scanned and data from which data is selected. The location of the selected data from the entropy plane is determined and marked as used and then assembled in an encoded message. This operation is repeated until no unmarked data is present in the current entropy plane. A new entropy plane is generated, and the scanning operation repeated until all portions of the received message have been processed. The process is reversed for a decoding operation.


