Hash Algorithm Using PRNG Seed Randomization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing hash algorithms exhibit 'bit bias' and high collision rates when processing character strings due to clustering and grouping of printable characters, leading to inefficient hash value distribution.

Innovation Solution

The method uses a pseudorandom number generator (PRNG) to adjust the seed value for each character in the input string, generating random hash values by exclusive ORing the PRNG output with the initial hash value, thereby minimizing the effects of character clustering and sequence dependencies.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If additive and rotative operations are used against individual characters, then the hash algorithm can process character strings, but bit bias in generated values cannot be eliminated

Engineering Contradiction:
Improvehash processing capabilityVSAvoidhash value distribution uniformity
Core Design Contradiction:
Ease of operationVSManufacturing precision

Solution Approach 1:

The patent introduces an intermediary transformation step where character values are converted through a deterministic function before being used to adjust the PRNG seed. This intermediary layer breaks the direct relationship between clustered character values and hash output, allowing the hash algorithm to process character strings effectively while eliminating bit bias in the generated values.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If traditional hashing techniques are used, then character strings can be hashed, but collision rate increases due to character clustering and sequence variations

Engineering Contradiction:
Improvehashing speedVSAvoidhash value uniqueness
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent changes the fundamental parameter of how character values are utilized. Instead of directly applying operations to character values, the system transforms character values through a deterministic function and uses them to control a PRNG. This parameter change maintains high hashing speed while dramatically improving hash value uniqueness by leveraging the randomizing effect of the PRNG.

Inventive Principle:
Principle #35Parameter changes

3Device complexity

If deterministic operations are applied to characters, then the hashing process is efficient, but the same characters in different sequences generate the same hash value

Engineering Contradiction:
Improvealgorithm simplicityVSAvoidhash value differentiation
Core Design Contradiction:
Device complexityVSManufacturing precision

Solution Approach 1:

The patent introduces dynamic behavior into the hashing process by using a PRNG that generates different pseudo-random sequences based on the evolving seed state. As characters are processed in sequence, the seed continuously changes, causing the PRNG to produce different random values at each step. This dynamic approach maintains algorithmic simplicity while ensuring that different character sequences generate different hash values.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS8595273B2Hash algorithm using randomization function
Publication Date: 2013.11.26 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US8595273B2 patent drawing
  • US8595273B2 patent drawing
  • US8595273B2 patent drawing

AI summary

A pseudo-random number generator is employed to provide the same results normally produced by hash functions. In particular, input character string data is employed to sequentially adjust the seed of a pseudo-random number generator to produce hash values.