SHA-3 Hash Generation via Sheet Structure Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing SHA-3 hash value generation methods using a lane structure as a unit face challenges in parallel operation between pipelines, leading to reduced speed due to the impossibility of starting subsequent round processes until all preceding results are written in memory, hindering the increase in hash value generation speed.

Innovation Solution

A hash value generation apparatus comprising θ, ρ, π, χ, and ι operation units, where each unit processes data for specific structures, allowing for parallel execution and improved throughput by starting operations based on available data structures, such as sheet structures, enabling efficient processing and reducing the time required for one round process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If a hash value is generated using a lane structure as a unit, then the data processing is simplified, but it is impossible to perform parallel operation of the two pipelines (θ&ρ and χ&ι), thereby making it difficult to increase the speed

Engineering Contradiction:
Improvedata processing simplicityVSAvoidhash value generation speed
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The invention segments the 1600-bit state data into five 320-bit sheet structures (S0-S4) along the x-axis, enabling independent parallel processing of multiple sheets through the θ and χ operations. This segmentation allows the pipeline to process multiple data units simultaneously, resolving the contradiction between simplified processing and processing speed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The invention transitions from processing data in a single lane dimension to processing data across multiple sheet dimensions (x-axis segmentation). By organizing data into a multi-dimensional sheet structure and enabling operations across different sheet indices, the system achieves parallelism in a new dimension, allowing both simplified lane-based operations and high-speed parallel processing.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Device complexity

If a hash value is generated using a lane structure as a unit, then the processing unit is simplified, but it is impossible to start a subsequent round process until all the results of a preceding round process are temporarily written in a memory

Engineering Contradiction:
Improveprocessing unit complexityVSAvoidtime for completing round process
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The invention performs preliminary actions by preparing multiple sheet structures (S0-S4) in advance within the same round process. The θ operation on sheet S0 can begin as soon as its required input sheets are ready, without waiting for the entire round to complete. This preliminary preparation of data in multiple sheets enables overlapping execution of operations across different sheets, reducing idle time and memory access delays.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The invention ensures continuity of useful action by enabling the θ operation to process sheet S0 continuously as data becomes available, rather than waiting for all preceding operations to complete. The pipeline maintains continuous operation by processing different sheets at different stages simultaneously, eliminating idle periods and reducing the overall time for completing round processes.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS9875362B2Hash value generation apparatus
Publication Date: 2018.01.23 CANON KK
  • US9875362B2 patent drawing
  • US9875362B2 patent drawing
  • US9875362B2 patent drawing

AI summary

For enabling improvement in throughput for generating a hash value, a hash value generation apparatus comprises: a θ operation unit configured to execute a θ operation included in a round process of a SHA-3 algorithm; a ρ operation unit configured to execute a ρ operation included in the round process; a π operation unit configured to execute a π operation included in the round process; a χ operation unit configured to execute a χ operation included in the round process; and an ι operation unit configured to execute an ι operation included in the round process, wherein the θ operation unit receives data for each sheet structure, and starts to execute the θ operation upon receiving data of three sheet structures.