Pseudo-random encrypted code generation for pharmaceutical authentication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The distribution and sales of counterfeit pharmaceutical products pose a significant health risk, as existing systems lack effective methods for verifying the authenticity of medicines, especially in regions with weak regulatory systems, and current solutions require excessive storage for unique product codes.

Innovation Solution

A system and method for generating and authenticating unique, pseudo-random encrypted product codes using a format-preserving encryption process, which includes a client portal, code generation server, communication server, and authentication server to manage and verify the authenticity of codes without requiring an exhaustive list of every single code, utilizing a counter table and authentication table for efficient validation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If unique product codes are stored for every item to enable authentication, then product authenticity verification is improved, but storage requirements increase significantly

Engineering Contradiction:
Improveproduct authenticity verificationVSAvoidstorage requirements
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent extracts only the essential authentication information (start and end sequence numbers) from the complete set of product codes, storing merely the boundaries of code ranges rather than every individual code. This allows the system to verify authenticity by checking whether a presented code falls within an authorized range, dramatically reducing storage needs while maintaining verification reliability

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Instead of storing and checking against a comprehensive list of valid codes, the system inverts the approach by storing only the boundaries of valid code ranges and checking whether queried codes fall within these ranges. This inversion transforms a storage-intensive exact-match system into a storage-efficient range-check system

Inventive Principle:
Principle #13The other way round (Inversion)

2Reliability

If format-preserving encryption is applied to generate pseudo-random codes, then code security and uniqueness are improved, but processing complexity increases

Engineering Contradiction:
Improvecode securityVSAvoidprocessing complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies format-preserving encryption to transform sequential counter values into pseudo-random appearing codes while maintaining the same data format. This parameter transformation provides security and uniqueness because each counter value maps to a unique encrypted code, preventing duplication while the format preservation allows existing code validation infrastructure to work without modification, balancing security with processing simplicity

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentEP2856694B1System and method for generating and managing product authentication codes
Publication Date: 2021.12.01 PHARMASECURE INC
  • EP2856694B1 patent drawingFigure 1
  • EP2856694B1 patent drawingFigure 2
  • EP2856694B1 patent drawingFigure 3

AI summary

A method for generating product authentication codes comprises allocating a lot identification value and a total lot size for an order of a plurality of product authentication codes, generating the plurality of product authentication codes based upon the lot identification value and the total lot size, and updating a counter table on an authentication server with the total lot size for the order of the authentication codes. A method for authenticating product codes comprises receiving a product code from a user of a product, decrypting the product code to obtain a sequence counter number unique to the product code and comparing the decrypted sequence counter number to a table of valid sequence counter number values to determine its authenticity. If the decrypted sequence counter number is authentic, it is added to an authentication table for future reference when operating to confirm a previous authentication of the sequence counter number.