Unique Identifier Generation Using Invertible Functions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for generating globally unique, pseudo-random identifiers for integrated circuits and electronic devices face challenges in scalability and efficiency, particularly as the number of generated codes increases, leading to slower uniqueness checks and higher duplication probabilities, which can result in significant delays and potential code predictability.

Innovation Solution

A method utilizing a uniquely invertible function, such as an ARX block cipher, is applied to seeds with a key set to generate unique codes, ensuring each code is unique within a batch, and optionally converting these codes into ASCII-compatible formats, thereby avoiding the need for extensive uniqueness checks and enhancing randomness and security.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If random code generation with database uniqueness checks is used, then code uniqueness is ensured, but generation time increases significantly as the database grows

Engineering Contradiction:
Improvecode uniquenessVSAvoidgeneration time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by pre-generating batches of unique random codes and storing them in databases before they are needed. This allows the system to have codes ready for immediate assignment without performing uniqueness checks at the time of assignment, thus resolving the contradiction between ensuring uniqueness and minimizing generation time.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If faster computer processing hardware is used, then code generation speed improves, but the fundamental scalability problem persists

Engineering Contradiction:
Improvecode generation speedVSAvoidtime delay at extreme scales
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent resolves this contradiction by performing code generation in advance and storing results in databases. This preliminary action eliminates the need for real-time uniqueness checks during code assignment, making the system scalable to extreme levels without relying on increasingly faster hardware.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If mathematical techniques for generating unique codes are used, then generation speed improves, but code uniqueness cannot be guaranteed

Engineering Contradiction:
Improvegeneration speedVSAvoidcode uniqueness guarantee
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent applies the copying principle by generating codes in advance using random number generation and storing them in databases. This creates a pre-validated set of unique codes that can be quickly assigned without re-checking uniqueness, thus achieving both high generation speed and guaranteed uniqueness through the pre-computed database.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS20240411521A1Identifier generation
Publication Date: 2024.12.12 PRAGMATIC SEMICON LTD
  • US20240411521A1 patent drawing
  • US20240411521A1 patent drawing
  • US20240411521A1 patent drawing

AI summary

A method is disclosed for configuring each item, of a batch of items, with a respective unique identifier. A key set is obtained in which each key of the key set is a random, or pseudo-random, number having a key width that is equal to a predefined code width. For each seed of a set of locally unique seeds, a uniquely invertible function is applied to generate a corresponding code. The uniquely invertible function is configured to convert a seed into a corresponding code using the key set. Every code generated for a given seed of the set of seeds is therefore unique for that set of seeds. The unique identifier is formed from the corresponding code and assigned to an electronic device.