White-Box Function Computation With Secure Element Mediation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing white-box cryptography implementations in insecure environments are vulnerable to cloning attacks, leading to unauthorized access and resource-intensive solutions, such as requiring connections to servers or secure elements for key verification.
Innovation Solution
A method and system utilizing a secure element and a white-box implementation in an insecure environment, where processing data is encrypted with a white-box implementation, sent to a secure element for functional decryption using an intermediate function, and the result data is processed to generate an output message, with the encryption and decryption keys being separate and stored differently to enhance security and efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If a white-box implementation is used in an unsecured environment, then the function can be executed without a secure element connection, but the implementation becomes vulnerable to cloning attacks and insufficiently secure
Solution Approach 1:
The patent introduces a secure element as an intermediary component between the unsecured environment and the cryptographic operations. The secure element stores the secret key securely and performs cryptographic operations in a trusted environment, while the white-box implementation in the unsecured environment can execute functions without direct key access. This mediator architecture allows the system to maintain ease of operation in unsecured environments while ensuring reliability through the secure element's protection against cloning attacks.
2Reliability
If a secure element is used to verify function results, then security is improved, but resource consumption (computing time and memory size) increases
Solution Approach 1:
The patent segments the cryptographic system into two distinct parts: a secure element that handles only essential secure operations (key storage and minimal verification), and a white-box implementation that performs the bulk of cryptographic processing in the unsecured environment. This segmentation allows security verification to be maintained by the secure element while reducing its resource consumption, as it only performs critical verification functions rather than full cryptographic operations.
Solution Approach 2:
The secure element performs only partial verification of cryptographic operations - specifically verifying that the white-box implementation produces correct results for challenged inputs - rather than performing complete independent cryptographic computations. This partial action approach maintains security verification while significantly reducing the computing time and memory resources required by the secure element.
3Productivity
If lookup tables are used in white-box implementation, then cryptographic operations can be performed, but the implementation becomes resource-intensive particularly for the secure element
Solution Approach 1:
The patent extracts the resource-intensive lookup tables from the secure element and places them in the white-box implementation in the unsecured environment. The secure element retains only the essential secret key and minimal verification logic, while the white-box implementation handles all lookup table operations. This extraction significantly reduces the memory size required by the secure element while maintaining full cryptographic operation capability through the white-box implementation.
Data Source
Figure 1
Figure 2~3
AI summary
Method for performing a secure function matching an input message with an output message, the method being implemented by a system comprising a secure element and a white-box implementation, the method comprising: - the calculation (E100) by the white-box implementation, of a processing data item from the input message, - the encryption (E200) by the white-box implementation, of the processing data item, - the sending (E300) of the encrypted processing data item to the secure element, - the obtaining (E400) by the secure element of a result data item from the encrypted processing data item, the result data item being the image of the processing data item by an intermediate function, - the calculation (E500) of the output message from the result data item.