# US 12,182,234 B2 · Side-channel communication reconciliation of biometric timing data for user authentication during remote desktop sessions

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

- Number: US 12,182,234 B2
- Document ID: US12182234B2
- Status: Granted
- Kind: B2
- Application number: 18/402,052
- Filed: 2024-01-02
- Published: 2024-06-27
- Granted: 2024-12-31
- Earliest claimed: 2020-11-25
- Assignees: Plurilock Security Solutions Inc.
- Applicants: Plurilock Security Solutions Inc.
- Inventors: Youssef Nakkabi; Paulo Quinan; Ian Paterson; Jord Tanner
- Web page: https://patentgrep.com/patent/US12182234B2

## CPC

- G06F 21/305: {by remotely controlling device operation}
- G06F 21/31: User authentication
- G06F 21/45: Structures or tools for the administration of authentication
- G06F 21/50: Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F 21/83: input devices, e.g. keyboards, mice or controllers thereof
- G06F 2221/2139: Recurrent verification
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Various implementations disclosed herein include devices, systems, and methods that authenticate user identities based on input/sensor data received from remote workstations and/or during remote communication sessions. The input/sensor data may correspond to timing and patterns from which user identities may be authenticated. Some implementations disclosed herein communicate input/sensor data in a way that preserves the timing and pattern information of the data and/or in a way that allows such information to be used for authentication in real-time. Some implementations enable continuous provision of input/sensor data and/or enable continuous authentication of user identities during remote communication sessions.

## Claims

### Claim 1

A method comprising:
at a processor,
receiving time-based user data from a user device displaying a remote desktop environment, the user device using user input or sensor data associated with a user action to generate the time-based user data and remote desktop environment data, wherein the user device sends, via the first communication channel, the remote desktop environment data to a remote system providing the remote desktop environment and a first data stream comprising data associating the user action with content, and the user device sends a second data stream comprising the time-based user data via a second communication channel for authentication, the second communication channel different than the first communication channel;
authenticating an identity of the user based on the time-based user data, wherein the authenticating comprises comparing a time-based characteristic exhibited by the time-based user data with the time-based characteristic in prior data associated with the user, and wherein the identity of the user is authenticated based on the time-based user data and the data associating the user action with the content; and
enabling use of the user device based on the authenticating of the identity of the user.

### Claim 2 (depends on 1)

The method of claim 1, wherein the second data stream comprises the time-based user data and excludes the data associating the user action with content.

### Claim 3 (depends on 1)

The method of claim 1, wherein the identity of the user is authenticated based on reconciling the first data stream with the second data stream.

### Claim 4 (depends on 1)

The method of claim 1, wherein the identity of the user is authenticated based on adjusting timing data of the first data stream based on the time-based data of the second data stream.

### Claim 5 (depends on 1)

The method of claim 1, wherein the user action is:
depressing one or more keyboard keys;
moving a mouse in one or more movements; or
performing one or more gestures on a touchscreen or in space.

### Claim 6 (depends on 1)

The method of claim 1, wherein authenticating the identity of the user comprises comparing timing of sequences of keystrokes.

### Claim 7 (depends on 1)

The method of claim 1, wherein authenticating the identity of the user comprises comparing timing of mouse position events.

### Claim 8 (depends on 1)

The method of claim 1, wherein authenticating the identity of the user comprises comparing timing of touchscreen events.

### Claim 9 (depends on 1)

The method of claim 1, wherein the identity of the user is authenticated by accessing an external authentication server.

### Claim 10 (depends on 1)

The method of claim 1 further comprising repeatedly authenticating the identity of the user over time.

### Claim 11

A system comprising:
a non-transitory computer-readable storage medium; and
one or more processors coupled to the non-transitory computer-readable storage medium,
wherein the non-transitory computer-readable storage medium comprises program instructions that, when executed on the one or more processors, cause the system to perform operations comprising:
receiving time-based user data from a user device displaying a remote desktop environment, the user device using user input or sensor data associated with a user action to generate the time-based user data and remote desktop environment data, wherein the user device sends, via the first communication channel, the remote desktop environment data to a remote system providing the remote desktop environment and a first data stream comprising data associating the user action with content, and the user device sends a second data stream comprising the time-based user data via a second communication channel for authentication, the second communication channel different than the first communication channel;
authenticating an identity of the user based on the time-based user data, wherein the authenticating comprises comparing a time-based characteristic exhibited by the time-based user data with the time-based characteristic in prior data associated with the user, and wherein the identity of the user is authenticated based on the time-based user data and the data associating the user action with the content; and
enabling use of the user device based on the authenticating of the identity of the user.

### Claim 12 (depends on 11)

The system of claim 11, wherein the second data stream comprises the time-based data and excludes the data associating the user action with content.

### Claim 13 (depends on 12)

The system of claim 12, wherein the identity of the user is authenticated based on reconciling the first data stream with the second data stream.

### Claim 14 (depends on 12)

The system of claim 12, wherein the identity of the user is authenticated based on adjusting timing data of the first data stream based on the time-based data of the second data stream.

### Claim 15 (depends on 12)

The system of claim 12, wherein the user action is:
depressing one or more keyboard keys;
moving a mouse in one or more movements; or
performing one or more gestures on a touchscreen or in space.

### Claim 16 (depends on 11)

The system of claim 11, wherein authenticating the identity of the user comprises comparing timing of sequences of keystrokes, comparing timing of mouse position events, or comparing timing of touchscreen events.

### Claim 17

A non-transitory computer-readable storage medium, storing instructions which when executed by one or more processors, cause the one or more processors to perform operations comprising:
receiving time-based user data from a user device displaying a remote desktop environment, the user device using user input or sensor data associated with a user action to generate the time-based user data and remote desktop environment data, wherein the user device sends, via the first communication channel, the remote desktop environment data to a remote system providing the remote desktop environment and a first data stream comprising data associating the user action with content, and the user device sends a second data stream comprising the time-based user data via a second communication channel for authentication, the second communication channel different than the first communication channel;
authenticating an identity of the user based on the time-based user data, wherein the authenticating comprises comparing a time-based characteristic exhibited by the time-based user data with the time-based characteristic in prior data associated with the user, and wherein the identity of the user is authenticated based on the time-based user data and the data associating the user action with the content; and
enabling use of the user device based on the authenticating of the identity of the user.
