Block Cipher S-Box Re-Encoding for Side-Channel Resistance
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing hardware implementations of block ciphers like AES are susceptible to side channel attacks, and existing countermeasures often increase circuit complexity and degrade performance.
Innovation Solution
Implement a ciphering circuit that applies dynamic obfuscation through changing functional correspondences in non-linear transformations and Boolean masking in linear transformations, reducing side channel leakage without significant performance or size penalties.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If existing countermeasures are applied to protect against side channel attacks, then security resistance is improved, but circuit complexity and performance degradation occur
Solution Approach 1:
The patent implements dynamic obfuscation by re-encoding the functional correspondence between input and output of non-linear transformations between successive cryptographic computations. This dynamic re-encoding changes the circuit's operational characteristics in between computations, making side channel attacks ineffective while avoiding permanent circuit complexity increases. The ciphering circuit adapts its behavior dynamically rather than requiring complex static protection structures.
2Reliability
If existing countermeasures are applied to protect against side channel attacks, then security resistance is improved, but ciphering performance is degraded
Solution Approach 1:
The dynamic obfuscation technique allows the ciphering circuit to maintain high performance by quickly re-encoding functional correspondences between computations. The re-encoding occurs in between successive cryptographic computations without interfering with the core ciphering operations, thus preserving ciphering performance while providing security protection.
3Object-affected harmful factors
If functional correspondence is re-encoded between computations, then side channel leakage is reduced, but additional processing overhead is introduced
Solution Approach 1:
The patent applies preliminary action by re-encoding the functional correspondence between input and output of non-linear transformations in advance, before the next cryptographic computation begins. This preparation is done during the interval between computations, so it does not add overhead to the critical ciphering path. The S-box layer is re-encoded preliminarily, ensuring that when the next computation starts, the obfuscation is already in place.
Data Source
Figure 1
Figure 2
Figure 3a~3c
AI summary
A method for successively executing first and subsequent block cryptographic computations. These cryptographic computations include transforming a respective input block (38, 64) composed of a plurality of elements (107k), via a plurality of linear transformations (109, 115, 116, SR) and non-linear transformations (112), into a corresponding output block. The method includes: implementing a functional correspondence between input and output of the non-linear transformations (112) applied on the elements of the first input block (38, 64) during the first block cryptographic computation, and applying dynamical obfuscation (124) by re-encoding the functional correspondence into a modified functional correspondence between the input and the output of the non-linear transformations applied on elements of the next input block during the next block cryptographic computation.