SKEIN256 Instruction Set for 128-bit Processor Security

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current instruction processing apparatuses face inefficiencies in executing SKEIN256, SKEIN512, and SKEIN1024 secure hashing algorithms, particularly in performing multiple rounds of MIX-PERMUTE operations, which are crucial for cryptographic security but require optimized pipeline and register management.

Innovation Solution

The development of specialized instruction sets and execution units within processors that enable efficient execution of SKEIN operations through SIMD instructions, utilizing 128-bit registers and specific instruction formats like AVX, allowing for multiple rounds of SKEIN MIX-PERMUTE operations with reduced cycles and optimized operand management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multiple rounds of MIX-PERMUTE operations are executed for SKEIN algorithms, then cryptographic security is improved, but processing time and computational complexity increase

Engineering Contradiction:
Improvecryptographic securityVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent divides the SKEIN algorithm into distinct functional modules: MIX function, PERMUTE function, and sub-key addition. Each module is implemented as a separate execution unit that can operate independently or in parallel, allowing the multiple rounds of operations to be segmented and executed more efficiently across different pipeline stages.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent combines multiple MIX functions and PERMUTE operations into a unified execution pipeline that processes multiple rounds simultaneously. By merging these operations into a single integrated pipeline with shared registers and memory structures, the system reduces the total cycle count while maintaining the required security rounds.

Inventive Principle:
Principle #5Merging (Combining)

2Adaptability or versatility

If multiple MIX functions are executed per round for SKEIN256/512/1024, then algorithm completeness is improved, but device complexity increases

Engineering Contradiction:
Improvealgorithm completenessVSAvoidexecution unit complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent designs a universal execution unit that can perform multiple MIX functions and PERMUTE operations using the same hardware resources. The execution unit is configured with multiple registers and memory access paths that can be dynamically allocated and reassigned across different rounds, eliminating the need for separate dedicated circuits for each function.

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

Solution Approach 2:

The patent implements dynamic register allocation and memory access patterns that adapt to the current round of operations. The execution unit can dynamically switch between different register pairs and memory addresses based on the PERMUTE table requirements, allowing a single static hardware structure to handle variable algorithm requirements without increasing complexity.

Inventive Principle:
Principle #15Dynamics

3Productivity

If 128-bit registers and SIMD instructions are used for SKEIN operations, then processing efficiency is improved, but instruction set complexity increases

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidinstruction set complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent uses 128-bit register copies and SIMD instruction templates that can be replicated across multiple execution units. By copying the same register structure and instruction format across all execution units, the system achieves parallel processing efficiency while maintaining instruction simplicity through template reuse rather than creating unique complex instructions for each function.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS8953785B2Instruction set for SKEIN256 SHA3 algorithm on a 128-bit processor
Publication Date: 2015.02.10 INTEL CORP
  • US8953785B2 patent drawing
  • US8953785B2 patent drawing
  • US8953785B2 patent drawing

AI summary

According to one embodiment, a processor includes an instruction decoder to receive a first instruction to perform first SKEIN256 MIX-PERMUTE operations, the first instruction having a first operand associated with a first storage location to store a plurality of odd words, a second operand associated with a second storage location to store a plurality of even words, and a third operand. The processor further includes a first execution unit coupled to the instruction decoder, in response to the first instruction, to perform multiple rounds of the first SKEIN256 MIX-PERMUTE operations based on the odd words and even words using a first rotate value obtained from a third storage location indicated by the third operand, and to store new odd words in the first storage location indicated by the first operand.