Non-Repeating Random Value Generation for Data Masking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional random number generators fail to produce non-repeating random numbers and character strings efficiently, particularly for large data sets, which is a challenge in applications like data masking where uniqueness and specific formatting are required, such as in masking social security numbers and license plates.

Innovation Solution

The system generates non-repeating random values (NRRVs) in user-specified formats and character sets by using a combination of sequence numbers and random values, stored in a mapping table, allowing for efficient data masking in O(N) time, where NRRVs are produced by manipulating subsets of characters and digits, and using SQL statements to ensure uniqueness.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If conventional random number generators are used to generate large data sets, then the quantity of random values is sufficient, but the values may repeat and require additional checking time

Engineering Contradiction:
Improvequantity of random valuesVSAvoidtime to generate and verify non-repeating values
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent applies preliminary action by pre-generating a complete set of non-repeating random values using a random number generator, storing them in an array, and shuffling them before use. This ensures that when values are needed, they are already prepared and guaranteed to be non-repeating, eliminating the need for runtime generation and verification checks.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates a copy of the shuffled random values array to serve as the source for masking operations. This copied array can be repeatedly used without regeneration, maintaining the non-repeating property while enabling efficient data masking across large data sets.

Inventive Principle:
Principle #26Copying

2Reliability

If data masking is performed with non-repeating values for large data sets, then uniqueness is ensured, but the time required to generate and check values increases

Engineering Contradiction:
Improveuniqueness of mask valuesVSAvoidtime to generate and verify non-repeating values
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs the time-consuming random value generation and uniqueness verification in advance, before the actual data masking operation. By pre-generating and shuffling the random values, the system ensures reliability of uniqueness while making the actual masking operation fast and efficient.

Inventive Principle:
Principle #10Preliminary action

3Ease of manufacture

If conventional random number generators are used, then generation is simple, but the values may repeat and do not meet data masking constraints

Engineering Contradiction:
Improvesimplicity of random value generationVSAvoiduniqueness and formatting constraints
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The patent maintains simplicity by using a standard random number generator but adds a preliminary shuffling step that guarantees uniqueness. The complete set of random values is generated once, shuffled to ensure non-repeating sequence, and then used for masking, combining simplicity with reliability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates a copied and shuffled version of the random values that meets the uniqueness requirement while preserving the simplicity of the original generation method. This copied array can be directly used for masking without complex generation logic during the masking operation.

Inventive Principle:
Principle #26Copying

4Reliability

If checking is performed on large data sets to ensure non-repeating values, then uniqueness is verified, but the period of time increases

Engineering Contradiction:
Improveverification of non-repeating valuesVSAvoidtime to check large data sets
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs the verification of non-repeating values in advance during the shuffling phase, before the actual data masking begins. By using a shuffled array of pre-generated random values, the system guarantees uniqueness without requiring verification checks during the masking operation itself.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7882134B2Non-repeating random values in user specified formats and character sets
Publication Date: 2011.02.01 ORACLE INT CORP
  • US7882134B2 patent drawing
  • US7882134B2 patent drawing
  • US7882134B2 patent drawing

AI summary

Systems, methodologies, media, and other embodiments associated with producing non-repeating random values for use in data masking are described. One example method includes accessing data describing a mask for a value in a database table column to be masked. The example method may also include identifying a number of distinct values in the database table column to be masked and determining a field width for a mask to provide unique random numbers to mask the distinct values. The method may include identifying locations in a mask value to store the unique random value and locations in a mask value to store filler values. The mask value may include different character sets and may comply with user specified formats. The method may include generating a set of statements that when executed produce a mapping table that includes masks for distinct values in the database table column to be masked.