Cryptographic Accelerator Obfuscation Against Side-Channel Attacks
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Cryptographic systems are vulnerable to side-channel attacks, particularly during initial phases of operations before secret keys are masked or obfuscated, as they leak information through timing and power consumption data from hardware devices like CPUs and memory components.
Innovation Solution
Implementing comprehensive obfuscation techniques by splitting secret information into multiple shares and randomly distributing them across multiple clock cycles and processing stages, using random selectors to determine data storage and processing sequences, thereby increasing noise and making it difficult for attackers to correlate meaningful statistical data.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If secret keys are processed in traditional cryptographic operations, then cryptographic functionality is achieved, but side-channel attacks can extract secret information through timing and power consumption analysis
Solution Approach 1:
The patent divides secret information into multiple shares and processes them separately through different processing stages. Instead of handling a single secret key, the system processes multiple shares (e.g., share1, share2, share3) that individually reveal no information about the original secret, thereby preventing side-channel attacks from extracting meaningful data through timing or power analysis.
Solution Approach 2:
The patent introduces random shares as intermediary elements that mask the actual secret information. These random shares are combined with the secret shares during processing, creating intermediate results that appear random and provide no useful information to attackers. The random shares act as mediators that protect the secret while allowing cryptographic operations to proceed.
2Reliability
If secret information is masked using blinding and randomization techniques, then protection against side-channel attacks is improved, but computational complexity and processing time increase
Solution Approach 1:
The patent segments the cryptographic operation into distinct processing stages, each handling specific shares. This segmentation allows the system to process multiple shares in an organized manner, managing computational complexity by breaking down the overall operation into smaller, more manageable tasks that can be executed systematically.
Solution Approach 2:
The patent employs dynamic processing where the handling of different shares varies across multiple clock cycles. The system dynamically selects which shares to process in each stage and uses random selectors to determine processing sequences, creating a flexible and adaptive computational approach that manages complexity while maintaining security.
3Reliability
If comprehensive obfuscation is implemented by processing multiple shares through multiple stages, then security against statistical attacks is enhanced, but the number of operations and processing time increase
Solution Approach 1:
The patent divides the cryptographic operation into multiple processing stages (first processing stage, second processing stage, third processing stage), each handling specific combinations of shares. This segmentation enables systematic processing that enhances security while organizing the increased number of operations into a structured framework that can be efficiently managed.
Solution Approach 2:
The patent processes shares periodically across multiple clock cycles, with each cycle handling specific processing stages. This periodic action allows the system to distribute computations over time, managing processing load while ensuring that security requirements are met through repeated application of obfuscation techniques across different cycles.
Data Source
AI summary
Apparatuses, systems, and techniques to perform a cryptographic operation using multiple iterations, wherein each iteration includes two or more stages operating in parallel on inputs derived from a common value, one of the stages computing real data and other stages computing dummy data.


