Masked Data Execution Unit Using Cyclic Code Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing execution units for cryptographic operations face challenges in efficiently processing masked data with minimal hardware outlay, as they require significant computational and storage resources, and existing masking methods are inefficient in terms of storage space and homomorphic properties.

Innovation Solution

An execution unit is designed with a mask generator circuit that multiplies a mask generation vector by blocks of cyclic codes, a masking circuit that masks data using the generated mask, and an arithmetic logic unit that processes the masked data through additions and rotations, allowing for efficient calculation with masked data while minimizing hardware requirements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If masking and processing of masked data is implemented to protect cryptographic keys, then security against attackers is improved, but computational outlay and hardware outlay increase

Engineering Contradiction:
ImprovesecurityVSAvoidhardware outlay
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The masking vector is generated by concatenating codeword blocks from multiple cyclic codes, dividing the masking process into manageable segments that can be processed efficiently by the arithmetic logic unit through sequential additions and rotations

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The invention changes the parameters of the masking approach by using cyclic codes with specific minimum Hamming distances and structured codeword blocks, transforming the masking generation process into a computationally efficient operation that reduces hardware requirements

Inventive Principle:
Principle #35Parameter changes

2Reliability

If masking vector is generated using conventional methods, then data confidentiality is maintained, but storage requirements increase

Engineering Contradiction:
Improvedata confidentialityVSAvoidstorage requirements
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The masking vector is segmented into multiple codeword blocks from different cyclic codes, allowing the system to store only essential code parameters rather than complete masking vectors, significantly reducing storage requirements while maintaining confidentiality

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system discards redundant storage of complete masking vectors and recovers them on-demand through efficient generation from cyclic code parameters, reducing stored data volume while maintaining the ability to regenerate masks when needed

Inventive Principle:
Principle #34Discarding and recovering

3Reliability

If existing masking methods are used for cryptographic operations, then security is maintained, but power consumption increases

Engineering Contradiction:
ImprovesecurityVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The arithmetic logic unit processes masked data through continuous additions and rotations without interrupting the masking structure, maintaining security while optimizing power usage through efficient, uninterrupted computational flow

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

By changing to cyclic code-based masking with specific structural parameters, the system reduces the computational complexity of masking operations, directly lowering power consumption while maintaining cryptographic security

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11190337B2Execution unit for calculations with masked data
Publication Date: 2021.11.30 INFINEON TECHNOLOGIES AG
  • US11190337B2 patent drawing
  • US11190337B2 patent drawing
  • US11190337B2 patent drawing

AI summary

According to one embodiment, an execution unit is described, which includes a mask generation circuit configured to generate a mask by multiplying a mask generation vector by blocks of codewords of a plurality of cyclic codes, a masking circuit configured to mask data to be processed by means of the mask, and an arithmetic logic unit configured to process the masked data by means of additions and rotations.