Cryptographic White Box Lookup Table Generation via Coding Function

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing cryptographic techniques, such as white box encryption, are vulnerable to reverse engineering attacks, which compromise the protection of multimedia content by allowing identification of algorithms and recovery of cryptographic keys, thereby undermining the security of the encryption process.

Innovation Solution

A method for generating a correspondence table that uses a coding function to obscure the transition variables between input and output data, making it difficult for attackers to deduce the cryptographic function used, and incorporating decoy data to detect and prevent reverse engineering attempts, thereby enhancing the protection of the cryptographic function.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Difficulty of detecting and measuring

If white box encryption is used to protect cryptographic algorithms, then the difficulty of reverse engineering increases, but the security is ultimately compromised because transition variables remain observable

Engineering Contradiction:
Improvedifficulty of reverse engineeringVSAvoidsecurity protection
Core Design Contradiction:
Difficulty of detecting and measuringVSReliability

Solution Approach 1:

The patent introduces a coding function as an intermediary layer between the cryptographic algorithm and observable transition variables. This coding function transforms the transition variables into coded versions that are observable but do not directly reveal the underlying cryptographic operations, thereby maintaining security while allowing the white box model to function.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent changes the parameters of the transition variables by applying a coding function that transforms them into a different representation. This parameter transformation ensures that even though transition variables are observable, their cryptographic meaning is obscured, preventing direct analysis of the cryptographic algorithm.

Inventive Principle:
Principle #35Parameter changes

2Difficulty of detecting and measuring

If transition variables are coded to protect against reverse engineering, then algorithm identification becomes more difficult, but the coding function itself may become a target for analysis

Engineering Contradiction:
Improvealgorithm identification difficultyVSAvoidcoding function complexity
Core Design Contradiction:
Difficulty of detecting and measuringVSDevice complexity

Solution Approach 1:

The coding function is pre-established and integrated into the white box implementation before deployment. This preliminary action ensures that the coding transformation is already in place when the system operates, preventing attackers from analyzing the relationship between plain transition variables and cryptographic operations without first understanding the coding function.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If multiple subsidiary data are used to generate output data, then the protection against reverse engineering is strengthened, but the computational complexity increases

Engineering Contradiction:
Improveprotection strengthVSAvoidcomputational complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent uses a plurality of subsidiary data items to generate output data, applying the coding function to each. This excessive action (using more data items than strictly minimal) strengthens the protection by creating multiple layers of transformation, making reverse engineering more difficult while maintaining manageable computational complexity through efficient implementation.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentEP2520041B1Method for generating a look-up table for a cryptographic white box
Publication Date: 2016.03.30 KONINKLIJKE PHILIPS NV
  • EP2520041B1 patent drawingFigure 1A
  • EP2520041B1 patent drawingFigure 1B~1C
  • EP2520041B1 patent drawingFigure 2A

AI summary

The present invention relates to a method for generating a look-up table that can be used in a cryptographic processing method including storing (113) a plurality of input data (X(i)) and output data (y(ij)), each one of said input data being associated with at least one of said output data in the table. For each one of said input data (X(i)), at least one of the output data (y(ij)) is obtained by applying a coding function (107) to a first subsidiary datum (s(j)) and to an encrypted intermediate datum (Y(i)) depending on the input data (x(i)). The present invention also relates to a corresponding encryption method, to a storage unit suitable for storing a look-up table generated by the above generation method, to a device for physical implementation of such a look-up table, to a decryption device including such a storage unit, as well as to a computer program suitable for implementing the above generation method.