PRNG Post-Processing Circuit for Secure Random Data Generation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for generating random numbers in digital semiconductor technology are limited by the need for linear transformations, which can be insecure and inefficient, particularly in ensuring computational unpredictability and robustness against environmental changes and physical attacks.

Innovation Solution

A method involving a PRNG operated in a non-autonomous mode, where the raw random binary sequence is continuously fed into the PRNG using XOR logic gates, ensuring the output is purely random and computationally unpredictable, even if the raw sequence is known.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If linear transformations are used for post-processing raw random sequences, then device complexity is reduced, but computational security and robustness deteriorate

Engineering Contradiction:
Improvepost-processing circuit complexityVSAvoidcomputational security
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent changes the fundamental parameter of the transformation type from linear to non-linear. The non-linear post-processing circuit uses non-linear Boolean functions to transform the raw random sequence, fundamentally altering the processing mechanism to achieve both security and efficiency. This parameter change resolves the contradiction by providing a solution that is neither purely linear (insecure) nor overly complex.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If non-linear transformations are used for post-processing, then computational security is improved, but device complexity increases

Engineering Contradiction:
Improvecomputational securityVSAvoidpost-processing circuit complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the post-processing function into multiple non-linear stages or components. Rather than using a single complex non-linear transformation, the circuit divides the processing into sequential non-linear steps, each manageable in complexity. This segmentation allows the system to achieve high computational security through cumulative non-linear transformation while keeping individual circuit components relatively simple.

Inventive Principle:
Principle #1Segmentation

3Manufacturing precision

If raw random sequence is processed to eliminate statistical weaknesses, then randomness quality is improved, but generation speed is reduced

Engineering Contradiction:
Improverandomness qualityVSAvoidrandom number generation speed
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The patent replaces traditional mechanical or sequential processing methods with parallel digital logic operations. The non-linear post-processing circuit uses combinatorial logic gates that operate simultaneously on multiple bits of the raw random sequence, eliminating the need for sequential processing. This substitution of processing mechanics maintains high generation speed while achieving complete elimination of statistical weaknesses through parallel non-linear transformation.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS8219602B2Method and apparatus for generating random data
Publication Date: 2012.07.10 TELECOM ITALIA SPA
  • US8219602B2 patent drawing
  • US8219602B2 patent drawing
  • US8219602B2 patent drawing

AI summary

An apparatus for generating random data includes a raw random sequence source adapted to generate a raw random sequence and a digital post processor adapted to process the raw random sequence to generate the random data, wherein the digital post-processor includes a synchronous finite state machine having at least one input adapted to repeatedly receive a current value of the raw random sequence and at least one output to provide a current output value depending on previous values of the raw random sequence.