SHA-2 Hash Computation With Parallel Message Scheduling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing cryptographic hash computations, such as SHA-256, are resource-intensive bottlenecks in applications like Filecoin, hindering parallelization across SIMD operations and multi-core CPUs due to sequential data dependencies.

Innovation Solution

Separate message schedule calculations from hash rounds and utilize SIMD instructions and SHA extensions to perform up to 8 rounds of message schedule in parallel, reducing computational overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If SHA-256 hash computations are performed using conventional sequential methods, then cryptographic security and correctness are maintained, but computational efficiency and resource usage deteriorate due to sequential data dependencies preventing parallelization

Engineering Contradiction:
Improvecomputational efficiencyVSAvoiddata dependencies
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent divides the hash computation into separate message schedule calculations and hash rounds. The message schedule is computed once and segmented into multiple independent sets, each usable by different hash round computations. This segmentation eliminates sequential data dependencies between rounds while maintaining cryptographic correctness, enabling parallel execution across multiple CPU cores and SIMD lanes.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs message schedule calculations as a preliminary action before executing the hash rounds. By pre-computing the message schedule and storing it in memory, the patent eliminates the need for repeated message schedule computations during each hash round, significantly reducing computational overhead and enabling parallel hash round executions without re-computing dependent values.

Inventive Principle:
Principle #10Preliminary action

2Loss of energy

If message schedule calculations are performed separately from hash rounds, then computational overhead is reduced and parallelization is enabled, but implementation complexity increases

Engineering Contradiction:
Improvecomputational overheadVSAvoidimplementation complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The patent segments the cryptographic computation into distinct message schedule generation and hash round execution phases. The message schedule is generated once and stored, then reused across multiple hash rounds. This segmentation reduces redundant computations and enables parallel hash round executions, with the trade-off of requiring separate memory storage for message schedules, which is managed through structured data layouts.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces message schedule arrays as intermediary data structures that bridge the input message and the hash round computations. These intermediary arrays store pre-computed values that are reused across multiple rounds, acting as a mediator that decouples the computational dependency chain and enables parallel execution while maintaining data integrity.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Use of energy by moving object

If redundant calculations in hash operations are minimized, then resource usage is optimized, but calculation precision may be affected

Engineering Contradiction:
Improveresource usageVSAvoidcalculation precision
Core Design Contradiction:
Use of energy by moving objectVSMeasurement precision

Solution Approach 1:

The patent performs message schedule calculations as a preliminary action with full precision, storing the results in dedicated memory arrays. This pre-computation with complete precision eliminates redundant high-precision calculations during each hash round, as the pre-computed values are directly reused. The precision is preserved because the message schedule values are stored without approximation, and the trade-off is acceptable memory usage for significant computational savings.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates copies of the message schedule values in dedicated memory arrays that can be efficiently accessed and reused across multiple hash rounds. Instead of re-computing values, the patent copies and reuses the pre-computed message schedule data, significantly reducing computational resource usage while maintaining exact precision through faithful data replication without approximation.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS12413388B2Methods and apparatus to hash data
Publication Date: 2025.09.09 INTEL CORP
  • US12413388B2 patent drawing
  • US12413388B2 patent drawing
  • US12413388B2 patent drawing

AI summary

Methods, apparatus, and software for hashing data. The methods and apparatus employ novel improvements to hash algorithms, such as a SHA-2 hash algorithm to reduce computations and increase performance. In one aspect, calculation of SHA-2 message scheduling and SHA compression operations are separated under which an SHA-2 message schedule is applied to multiple rounds of SHA compression operations over multiple chunks of data for the data item being hashed. In another aspect, the SHA-2 message schedule is implemented such that message schedules for multiple message words or data blocks are performed in parallel. The approaches may be employed to reduce hash calculations for various purposes, including generating Filecoin nodes.