Encoding Unit for Data Words with Controlled Hamming Distance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data processing devices are vulnerable to side channel attacks, particularly differential power analysis (DPA) attacks, which exploit information leakage through Hamming distance and weight.

Innovation Solution

Incorporating an encoding unit that transforms input data to encoded data words with a specified Hamming distance and/or weight, ensuring at least 50% of encoded data words share these properties, thereby reducing information leakage during processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data words are processed directly without encoding, then processing speed and simplicity are improved, but security against side channel attacks deteriorates

Engineering Contradiction:
Improveprocessing speedVSAvoidsecurity against DPA attacks
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The encoding unit performs preliminary encoding of input data words before they enter the processing module. This encoding is done in advance to transform the data into a form with constant Hamming weight or controlled Hamming distance, preventing information leakage during subsequent processing operations without affecting the processing speed of the main computational logic.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The encoding unit acts as an intermediary component between the input interface and the processing module. It transforms the original data words into encoded representations that maintain the necessary computational properties while eliminating side channel vulnerabilities, serving as a protective layer that mediates between raw data and processing operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If encoding is applied to all data words to ensure constant Hamming weight/distance, then security is improved, but device complexity increases

Engineering Contradiction:
Improvesecurity against DPA attacksVSAvoidencoding unit complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The encoding unit changes the Hamming weight or Hamming distance parameters of the input data words to constant or controlled values. By transforming the data representation while maintaining computational functionality, the system achieves security without requiring fundamental changes to the processing architecture, thus limiting the increase in device complexity.

Inventive Principle:
Principle #35Parameter changes

3Loss of information

If encoding transforms all input data to have uniform Hamming properties, then information leakage is reduced, but data processing flexibility deteriorates

Engineering Contradiction:
Improveinformation leakageVSAvoiddata processing flexibility
Core Design Contradiction:
Loss of informationVSAdaptability or versatility

Solution Approach 1:

The encoding is applied selectively to specific parts of the data processing pipeline where side channel attacks are most vulnerable, while maintaining different processing paths or modes for different operational requirements. This allows the system to achieve security where needed without uniformly constraining all data processing operations, preserving necessary flexibility for different computational tasks.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS9369486B2Device and method for encoding input data based on hamming distance and/or weight
Publication Date: 2016.06.14 ROBERT BOSCH GMBH
  • US9369486B2 patent drawing
  • US9369486B2 patent drawing
  • US9369486B2 patent drawing

AI summary

An electronic device for processing data includes: an input interface for receiving input data; a processing module for processing data; and an encoding unit configured to encode data words received at the input interface as input data, in order to obtain encoded data words. The encoding unit is configured to encode the data words in such a manner that a specified proportion of all encoded data words have a specified Hamming distance and/or a specified Hamming weight. The processing module is configured to process the encoded data words.