Transaction Processing Index Card Number Allocation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing payment systems face challenges with concurrency issues in allocating virtual index card numbers, inflexible encryption key changes, and low efficiency in searching encrypted credit card numbers and their corresponding index card numbers.
Innovation Solution
A method that calculates a hash value for an original credit card number to generate a unique index card number, ensuring one-to-one correspondence even under high concurrency, and allows for flexible updates of cipher texts and secret keys by combining them with a version number.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a virtual index card number is allocated to each real credit card number to ensure security, then security requirements are met, but concurrency issues arise causing duplicate index card numbers to be allocated
Solution Approach 1:
The system pre-generates batches of index card numbers before they are needed. When a real credit card number needs to be masked, the system retrieves a pre-generated index card number from the batch, eliminating the need for real-time generation and avoiding concurrency conflicts. This preliminary preparation ensures both security and accurate one-to-one mapping.
Solution Approach 2:
The system creates a buffer stock of pre-generated index card numbers that can be used to cushion against concurrency issues. When multiple requests arrive simultaneously, the system draws from this pre-prepared buffer rather than generating numbers on-demand, preventing duplicate allocations while maintaining security.
2Reliability
If encryption cipher text and secret keys are changed frequently to maintain security, then security is improved, but the existing encryption method cannot flexibly change keys causing confusion
Solution Approach 1:
The system segments the encryption key management by associating each index card number with its specific encryption cipher text and secret key in a database. This allows different encryption parameters to be maintained for different data records, enabling flexible key rotation and changes without affecting other records. Each segmented unit can be independently updated for security while maintaining overall system flexibility.
Solution Approach 2:
The system enables dynamic parameter changes by storing encryption-related parameters (cipher text, secret keys, algorithm types) in the database alongside index card numbers. This allows the parameters to be changed, updated, or rotated without regenerating the entire encryption system, providing both security through frequent changes and flexibility through easy parameter modification.
3Loss of time
If encrypted credit card numbers and index card numbers are stored for quick retrieval, then search efficiency should be improved, but existing technologies have low search efficiency
Solution Approach 1:
The system pre-computes and stores hash values of index card numbers in the database alongside the encrypted data. When a search is needed, the system performs a hash comparison rather than a full string comparison, dramatically reducing search time. This preliminary preparation of hash values enables quick retrieval without compromising security.
Solution Approach 2:
The system creates a cryptographic copy (hash value) of the index card number that can be used for efficient comparison and searching. Instead of comparing the actual encrypted card numbers directly, the system compares their hash representations, which are faster to process while still providing accurate matching capability for quick retrieval.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Method and apparatus for processing a transaction are disclosed. The method includes receiving an original card number used for a request of processing a transaction; calculating a hash value corresponding to the original card number based on the original card number, and acquiring an index card number corresponding to the original card number based on the hash value corresponding to the original card number; and sending the index card number to an entity that processes the transaction to enable the entity to process the transaction based on the index card number. The present disclosure creates corresponding index card numbers for a number of original card numbers in a system respectively, which ensures a one-to-one correspondence between the index card numbers and the original card numbers in the case of high concurrency and a convenient search for an encrypted credit card number whose password is changed frequently.