# US 12,002,041 B2 · Method and system for user authentication using virtual code for authentication

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,002,041 B2
- Document ID: US12002041B2
- Status: Granted
- Kind: B2
- Application number: 17/170,750
- Filed: 2021-02-08
- Published: 2021-06-17
- Granted: 2024-06-04
- Earliest claimed: 2018-08-09
- Assignees: SSenStone Inc.
- Applicants: Ssenstone Inc.
- Inventors: Chang Hun Yoo
- Web page: https://patentgrep.com/patent/US12002041B2

## CPC

- G06Q 20/385: {using an alias or single-use codes}
- G06F 1/14: Time supervision arrangements, e.g. real time clock
- G06F 12/10: Address translation
- G06F 21/60: Protecting data
- G06Q 20/341: {Active cards, i.e. cards including their own processing means, e.g. including an IC or chip}
- G06Q 20/343: {Cards including a counter}
- G06Q 20/351: {Virtual cards}
- G06Q 20/352: {Contactless payments by cards}
- G06Q 20/353: {Payments by cards read by M-devices}
- G06Q 20/38: Payment protocols; Details thereof
- G06Q 20/3821: {Electronic credentials}
- G06Q 20/40: Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q 20/401: {Transaction verification}
- G06Q 20/40145: {Biometric identity checks}
- G06Q 20/409: {Device specific authentication in transaction processing}
- H04L 9/3231: {Biological data, e.g. fingerprint, voice or retina (network architectures or network communication protocols for supporting authentication of entities using biometrical features in a packet data network H04L63/0861)}
- H04L 9/3234: {involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token (network architectures or network communication protocols for supporting authentication of entities using an additional device in a packet data network H04L63/0853)}
- H04L 63/0838: {using one-time-passwords}
- H04L 63/0853: {using an additional device, e.g. smartcard, SIM or a different communication terminal (cryptographic mechanisms or cryptographic arrangements for entity authentication involving additional secure or trusted devices H04L9/3234)}
- G06F 2212/65: Details of virtual memory and virtual address translation
- G06K 19/0701: {at least one of the integrated circuit chips comprising an arrangement for power management}
- G06K 19/0723: {the record carrier comprising an arrangement for non-contact communication, e.g. wireless communication circuits on transponder cards, non-contact smart cards or RFIDs}
- G06Q 20/3274: {using a pictured code, e.g. barcode or QR-code, being displayed on the M-device}
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06K: GRAPHICAL DATA READING (image or video recognition or understanding G06V); PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS

## Abstract

A method and system for user authentication by using an authentication virtual code are provided. A user authentication method using an authentication virtual code includes receiving, by a server, the authentication virtual code, searching, by the server, for an authentication card storage location, at which the authentication card is registered, in a storage location search algorithm based on the authentication virtual code, identifying, by the server, a user by extracting user information stored after being matched with the found authentication card storage location, verifying, by the server, an authentication virtual code based on a time point at which the authentication virtual code is received, and approving, by the server, user authentication.

## Claims

### Claim 1

A user authentication method using an authentication virtual code, the method comprising:
receiving, by a server, a user authentication request and the authentication virtual code, wherein the authentication virtual code is generated by an authentication virtual code generation function included in an authentication virtual code generation program based on authentication card data provided from an authentication card;
searching, by the server, for an authentication card storage location, at which the authentication card is registered, in a storage location search algorithm based on the authentication virtual code, wherein the storage location search algorithm is matched with the authentication virtual code generation function and searches for the authentication card storage location based on at least one detailed code in the authentication virtual code;
identifying, by the server, a user by extracting user information stored after being matched with the authentication card storage location that is searched by the server;
verifying, by the server, the authentication virtual code, by comparing a reception time point, at which the server receives the authentication virtual, with a generation time point, at which the authentication virtual code is generated by using the authentication virtual code generation function; and
approving, by the server, user authentication when the comparison result indicates that the generation time point is within an error range from the reception time point.

### Claim 2 (depends on 1)

The method of claim 1, wherein the authentication virtual code is generated based on time data at which the authentication card data included in the authentication card is provided to the authentication virtual code generation program, or time data at which the user authentication is requested by tagging the authentication card to the authentication virtual code generation program.

### Claim 3 (depends on 2)

The method of claim 2, wherein the authentication virtual code is generated based on a combination serial number obtained by combining an authentication card serial number included in the authentication card data and a serial number included in the authentication virtual code generation program.

### Claim 4 (depends on 1)

The method of claim 1, further comprising:
registering, by the server, the authentication card by using the authentication card data and user information of a user holding the authentication card,
wherein the registering of the authentication card includes:
searching, by the server, for a specific authentication card storage location within the storage location search algorithm based on an authentication card registration time point; and
storing the user information at the authentication card storage location that is searched by the server, to complete registration.

### Claim 5 (depends on 1)

The method of claim 1, wherein the authentication virtual code includes a first code and a second code that are changed for each unit count set to a specific time interval,
wherein the first code is generated based on a unit count elapsing from a first time point at which the server starts an issuance of the authentication card, and
wherein the second code is generated based on a unit count elapsing from a time point at which the authentication card of a specific user is registered.

### Claim 6 (depends on 1)

A non-transitory computer-readable recording medium storing a computer program, and configured to be coupled to a computer hardware, the program includes instructions to execute the method of claim 1.

### Claim 7

An authentication virtual code verification device for user authentication, the authentication virtual code verification device comprising:
an authentication virtual code reception unit configured to receive an authentication virtual code and to receive a request for the user authentication;
a detailed code extraction unit configured to extract one or more detailed codes included in the authentication virtual code;
a storage location search unit configured to search for an authentication card storage location, at which an authentication card is registered in a storage location search algorithm, based on the extracted one or more detailed codes;
a user information extraction unit configured to identify a user by extracting user information stored after being matched with the authentication card storage location that is searched by the storage location search unit;
an authentication virtual code verification unit configured to compare a time point, at which the authentication virtual code reception unit receives the authentication virtual code, with a time point, at which the authentication virtual code is generated by using an authentication virtual code generation function by an authentication virtual code generation means, and to verify the authentication virtual code; and
a user authentication approval unit configured to approve the user authentication when verification of the authentication virtual code is completed,
wherein, when it is identified by the authentication virtual code verification unit that the generation time point is within an error range from the reception time point, and it is determined that the authentication virtual code is a normal code, the user authentication is approved by the user authentication approval unit, and
wherein the storage location search algorithm is matched with the authentication virtual code generation function.

### Claim 8 (depends on 7)

The device of claim 7, wherein the authentication virtual code is generated based on time data at which an authentication card data included in the authentication card is provided to an authentication virtual code generation program, or time data at which the user authentication is requested by tagging the authentication card to the authentication virtual code generation program.

### Claim 9 (depends on 8)

The device of claim 8, wherein the authentication virtual code is generated based on a combination serial number obtained by combining an authentication card serial number included in the authentication card data and a serial number included in the authentication virtual code generation program.

### Claim 10 (depends on 7)

The device of claim 7, wherein the authentication virtual code verification device is further configured to:
register the authentication card by using an authentication card data and user information of a user holding the authentication card,
search for a specific authentication card storage location within the storage location search algorithm based on an authentication card registration time point; and
store the user information at the authentication card storage location that is searched by a server, to complete registration.

### Claim 11 (depends on 7)

The device of claim 7, wherein the authentication virtual code includes a first code and a second code that are changed for each unit count set to a specific time interval,
wherein the first code is generated based on a unit count elapsing from a first time point at which a server starts an issuance of the authentication card, and
wherein the second code is generated based on a unit count elapsing from a time point at which the authentication card of a specific user is registered.

### Claim 12

An authentication card device for user authentication, the authentication card device comprising:
an integrated circuit (IC) chip including authentication card data; and
a communication unit configured to provide the authentication card data to an authentication virtual code generation means through wireless communication,
wherein the authentication card data is specific data assigned to the authentication card device when the authentication card device is manufactured,
wherein the authentication virtual code generation means generates an authentication virtual code based on the provided authentication card data by using an authentication virtual code generation function and provides the generated authentication virtual code to a server,
wherein the server receives a user authentication request and the authentication virtual code, and searches for an authentication card storage location, at which the authentication card device is registered, in a storage location search algorithm matched with the authentication virtual code generation function based on the provided authentication virtual code, and extracts user information stored after being matched with the authentication card storage location to identify a user, and
wherein the server verifies the authentication virtual code, by comparing a reception time point, at which the server receives the authentication virtual code, with a generation time point, at which the authentication virtual code generation means generates the authentication virtual code, and approves the user authentication when the comparison result indicates that the generation time point is within an error range from the reception time point.

### Claim 13 (depends on 12)

The device of claim 12, further comprising:
a determination unit configured to distinguish between a tag for payments and a tag for the user authentication when the authentication card device includes a card for the payments,
wherein the communication unit provides a payment terminal with card information for the payments included in the IC chip when the tag for the payments is determined by the determination unit, and
wherein the communication unit provides the authentication virtual code generation means with the authentication card data for generating the authentication virtual code when the tag for the user authentication is determined by the determination unit.

### Claim 14 (depends on 12)

The device of claim 12, further comprising:
a determination unit configured to distinguish between a tag for access and a tag for the user authentication when the authentication card device is used as a card for access,
wherein the communication unit provides an access terminal with identification information for the access included in the IC chip when the tag for the access is determined by the determination unit, and
wherein the communication unit provides the authentication virtual code generation means with the authentication card data for generating the authentication virtual code when the tag for the user authentication is determined by the determination unit.
