White-Box Cryptography Authorization via State Machine

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In the context of digital content distribution, existing technologies face challenges in securely managing access and authorization across user devices, particularly in hostile networks where not all devices can be trusted, and white-box cryptography is needed to prevent unauthorized access and tampering.

Innovation Solution

A method and system for implementing separate authorization for different input message groups using a single cryptographic key, where the cryptographic system produces correct outputs for authorized groups and incorrect or terminated operations for unauthorized groups, leveraging a network of lookup tables and finite state machines within a white-box implementation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If multiple cryptographic keys are used to manage authorization for different input message groups, then authorization control precision is improved, but device complexity increases

Engineering Contradiction:
Improveauthorization control precisionVSAvoidkey management complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The patent implements a single cryptographic key that serves multiple authorization functions by integrating it with a state machine and lookup tables. The key is used across different authorization levels and message groups without requiring separate keys, achieving multi-functionality that reduces key management complexity while maintaining precise authorization control through the state machine's transition logic.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent segments the authorization control function into distinct states within a state machine (e.g., STATE_A, STATE_B, STATE_C) rather than using multiple keys. Each state represents a different authorization level, and transitions between states are controlled by lookup tables that map input messages to appropriate states. This segmentation allows precise authorization control through state transitions while keeping key management simple.

Inventive Principle:
Principle #1Segmentation

2Reliability

If white-box cryptography is implemented to prevent unauthorized access in hostile networks, then security is improved, but ease of operation deteriorates due to complete attacker control

Engineering Contradiction:
ImprovesecurityVSAvoidattacker control capability
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent converts the harmful effect of complete attacker control in white-box environments into a benefit by designing the cryptographic implementation to be inherently resistant to such control. The state machine and lookup tables are constructed so that even with full visibility into the software, attackers cannot extract secret information or bypass authorization checks. The system's security model accepts and works within the hostile environment rather than trying to prevent it.

Inventive Principle:
Principle #22Blessing in disguise (Convert harm into benefit)

Solution Approach 2:

The patent introduces intermediate structures (state machine, lookup tables, state transitions) that mediate between the cryptographic key and the authorization decisions. These intermediaries obscure the direct relationship between the key and authorization outcomes, making it difficult for attackers to reverse-engineer the system even with complete control. The lookup tables act as intermediaries that map inputs to states without revealing the underlying key material.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If cryptographic functions are obfuscated using lookup tables to prevent reverse engineering, then security is improved, but manufacturing precision deteriorates due to difficulty in modifying algorithms

Engineering Contradiction:
ImprovesecurityVSAvoidalgorithm modification capability
Core Design Contradiction:
ReliabilityVSManufacturing precision

Solution Approach 1:

The patent uses a dynamic state machine where the authorization behavior can be modified by changing state transition definitions in lookup tables without altering the core cryptographic algorithm. The system transitions between different states based on input messages, and these transitions can be configured to implement different authorization policies. This dynamic approach allows flexible modification of authorization logic while maintaining the security of the underlying cryptographic functions.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent pre-computes and stores authorization logic in lookup tables that map input messages to state transitions. This preliminary action allows the system to make authorization decisions based on pre-defined rules without requiring complex real-time computations or modifications to the cryptographic algorithm. The lookup tables are prepared in advance, enabling easy modification of authorization policies by simply updating the table contents rather than changing the algorithm itself.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP2940919B1Realizing authorization via incorrect functional behavior of a white-box implementation
Publication Date: 2019.02.20 NXP BV
  • EP2940919B1 patent drawingFigure 1~2
  • EP2940919B1 patent drawingFigure 3~4
  • EP2940919B1 patent drawingFigure 5

AI summary

A method of authorization in a cryptographic system that provides separate authorization for a plurality of different input message groups using a single cryptographic key, including: receiving, by the cryptographic system, a first input message from a first input message group; performing, by the cryptographic system, a keyed cryptographic operation mapping the first input message into a first output message, wherein the keyed cryptographic operation produces a correct output message when the cryptographic system is authorized for the first input message group, wherein the keyed cryptographic operation does not produce a correct output when the cryptographic system is not authorized for the first input message group, and wherein each of the plurality of input message groups has an associated set of input messages wherein the sets of input messages do not overlap.