# US 2021/0334352 A1 · Multifactor authentication service

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

- Number: US 2021/0334352 A1
- Document ID: US20210334352A1
- Status: Published application
- Kind: A1
- Application number: 16/861,445
- Filed: 2020-04-29
- Published: 2021-10-28
- Earliest claimed: 2020-04-22
- Assignees: Citrix Systems, Inc.
- Applicants: Citrix Systems, Inc.
- Inventors: Hao Wu; Tianze Jiang; Taodong Lu; Yihong Wu
- Web page: https://patentgrep.com/patent/US20210334352A1

## CPC

- G06F 21/43: wireless channels
- H04L 63/08: {for authentication of entities (cryptographic mechanisms or cryptographic arrangements for entity authentication H04L9/32)}
- H04L 63/0846: {using time-dependent-passwords, e.g. periodically changing passwords}
- H04L 63/0876: {based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint}
- H04L 63/18: {using different networks or channels, e.g. using out of band channels (cryptographic mechanisms or cryptographic arrangements for key distribution involving distinctive intermediate devices or communication paths H04L9/0827; cryptographic mechanisms or cryptographic arrangements for authentication using a plurality of channels H04L9/3215)}
- H04W 12/06: Authentication
- H04W 12/72: Subscriber identity
- H04L 2463/082: applying multi-factor authentication
- H04L 2463/121: Timestamp
- 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)
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)

## Abstract

A system and method for providing multifactor authentication. A disclosed method includes receiving a request at a server to launch a new session for an application on a client device, generating a plurality of codes, each of the plurality of codes associated with a respective identifier, and forwarding the plurality of codes via a short messaging service (SMS) message to a user associated with the client device. The method further includes sending the respective identifier associated with a given code of the plurality of codes to the application and receiving a submitted code entered into the application from the client device. Once received, the method compares the submitted code with the given code associated with the respective identifier and authenticates the user in response to the submitted code matching the given code.

## Claims

### Claim 1

A computerized method for providing multifactor authentication, comprising:
receiving a request at a server to launch a new session for an application on a client device;
generating a plurality of codes, each of the plurality of codes associated with a respective identifier;
forwarding the plurality of codes via a short messaging service (SMS) message to a user associated with the client device;
sending the respective identifier associated with a given code of the plurality of codes to the application;
receiving a submitted code entered into the application from the client device;
comparing the submitted code with the given code associated with the respective identifier; and
authenticating the user in response to the submitted code matching the given code.

### Claim 2 (depends on 1)

The method of claim 1, wherein the plurality of codes are forwarded to the user via an SMS provider.

### Claim 3 (depends on 1)

The method of claim 1, wherein the plurality of codes are generated as a numbered set and each respective identifier specifies a number from the numbered set.

### Claim 4 (depends on 1)

The method of claim 1,
wherein the sending further includes sending a set of identifiers to the application that specify a subset of the plurality of codes;
wherein the receiving further includes receiving a requested set of submitted codes entered into the application from the client device;
wherein the comparing further includes comparing the requested set of submitted codes with the subset of the plurality of codes specified by the set of identifiers; and
wherein the authenticating further includes authenticating the user in response to the requested set of submitted codes matching the subset of the plurality of codes.

### Claim 5 (depends on 1)

The method of claim 1, further comprising:
recording a timestamp when the plurality of codes were generated; and
utilizing the timestamp to determine which of the plurality of codes are required when authenticating the user.

### Claim 6 (depends on 5)

The method of claim 5, wherein the timestamp further incorporates an International Mobile Equipment Identity (IMEI) value associated with the client device.

### Claim 7 (depends on 1)

The method of claim 1, wherein the client device includes a phone for receiving the SMS message.

### Claim 8

A server, comprising:
a memory; and
a processor configured to implement a multifactor authentication service according to a process that includes:
receiving a request at the server to launch a new session for an application on a client device;
generating a plurality of codes, each of the plurality of codes associated with a respective identifier;
forwarding the plurality of codes via a short messaging service (SMS) message to a user associated with the client device;
sending the respective identifier associated with a given code of the plurality of codes to the application;
receiving a submitted code entered into the application from the client device;
comparing the submitted code with the given code associated with the respective identifier; and
authenticating the user in response to the submitted code matching the given code.

### Claim 9 (depends on 8)

The server of claim 8, wherein the plurality of codes are forwarded to the user via an SMS provider.

### Claim 10 (depends on 8)

The server of claim 8, wherein the plurality of codes are generated as a numbered set and each respective identifier specifies a number from the numbered set.

### Claim 11 (depends on 8)

The server of claim 8,
wherein the sending further includes sending a set of identifiers to the application that specify a subset of the plurality of codes;
wherein the receiving further includes receiving a requested set of submitted codes entered into the application from the client device;
wherein the comparing further includes comparing the requested set of submitted codes with the subset of the plurality of codes specified by the set of identifiers; and
wherein the authenticating further includes authenticating the user in response to the requested set of submitted code matching the subset of the plurality of codes.

### Claim 12 (depends on 8)

The server of claim 8, further comprising:
recording a timestamp when the plurality of codes were generated; and
utilizing the timestamp to determine which of the plurality of codes are required when authenticating the user.

### Claim 13 (depends on 12)

The server of claim 12, wherein the timestamp further incorporates an International Mobile Equipment Identity (IMEI) value associated with the client device.

### Claim 14 (depends on 8)

The server of claim 8, wherein the client device includes a phone for receiving the SMS message.

### Claim 15

A method implemented by an application stored in memory and executable by a processor on a client device that provides multifactor authentication, comprising:
submitting a request to a server to launch a new session for the application running on the client device;
receiving a plurality of codes via a short messaging service (SMS) application associated with the client device;
receiving an identifier that specifies one of the plurality of codes;
rendering a request screen requesting a code associated with the identifier;
receiving a submitted code from a user; and
forwarding the submitted code to the server for authentication.

### Claim 16 (depends on 15)

The method of claim 15, further comprising:
launching the session in response to the submitted code being a match to the code associated with the identifier.

### Claim 17 (depends on 15)

The method of claim 15, wherein:
receiving the identifier further includes receiving a plurality of identifiers that specifies a subset of the plurality of codes;
rendering the request screen further includes rendering the request screen to request the subset of the plurality of codes associated with the plurality of identifiers;
receiving the entered code from the user further includes receiving a plurality of submitted codes; and
forwarding the submitted code further includes forwarding the plurality of submitted codes to the server for authentication.

### Claim 18 (depends on 15)

The method of claim 15, wherein the client device includes a smartphone configured to receive SMS messages.

### Claim 19 (depends on 16)

The method of claim 16, wherein plurality of codes are received via an SMS provider.

### Claim 20 (depends on 15)

The method of claim 15, wherein the plurality of codes are presented as a numbered set and the identifier specifies a number from the numbered set.
