# US 9,438,571 B2 · Securely connecting control device to target device

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

- Number: US 9,438,571 B2
- Document ID: US9438571B2
- Status: Granted
- Kind: B2
- Application number: 14/792,191
- Filed: 2015-07-06
- Published: 2015-10-29
- Granted: 2016-09-06
- Earliest claimed: 2013-09-23
- Assignees: Netflix, Inc.
- Applicants: Netflix, Inc.
- Inventors: Jean-Marie White; Baskar Odayarkoil; Lee Adams
- Web page: https://patentgrep.com/patent/US9438571B2

## CPC

- H04L 63/083: {using passwords (cryptographic mechanisms or cryptographic arrangements for entity authentication using a predetermined code H04L9/3226)}
- H04L 9/0819: {Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) (network architectures or network communication protocols for key distribution in a packet data network H04L63/062)}
- H04L 9/0822: {using key encryption key}
- H04L 9/0827: {involving distinctive intermediate devices or communication paths (network architectures or network communication protocols using different networks H04L63/18)}
- H04L 9/14: using a plurality of keys or algorithms
- H04L 9/302: {involving the integer factorization problem, e.g. RSA or quadratic sieve [QS] schemes}
- H04L 9/3242: {involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC}
- H04L 9/3249: {using RSA or related signature schemes, e.g. Rabin scheme}
- H04L 9/3297: {involving time stamps, e.g. generation of time stamps}
- H04L 63/0428: {wherein the data content is protected, e.g. by encrypting or encapsulating the payload}
- H04L 63/0471: {applying encryption by an intermediary, e.g. receiving clear information at the intermediary and encrypting the received information at the intermediary before forwarding}
- H04L 63/06: {for supporting key management in a packet data network (cryptographic mechanisms or cryptographic arrangements for key management H04L9/08)}
- H04L 63/061: {for key exchange, e.g. in peer-to-peer networks (cryptographic mechanisms or cryptographic arrangements for key agreement H04L9/0838)}
- H04N 21/2347: involving video stream encryption
- H04N 21/25816: {involving client authentication (restricting access to computer systems by authenticating users using a predetermined code G06F21/33; cryptographic authentication protocols H04L9/32; networks authentication protocols H04L63/08; authentication in wireless network security H04W12/06)}
- H04N 21/26613: {for generating or managing keys in general (key distribution for secret or secure communication involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] H04L9/083; network support of key management H04L63/06; key management for network security in communication control or processing H04W12/04)}
- H04N 21/43615: {Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals (home Audio Video Interoperability [HAVI] data switching networks H04L12/2805)}
- H04N 21/4367: Establishing a secure communication between the client and a peripheral device or smart card
- H04N 21/4405: involving video stream decryption
- H04N 21/47202: {for requesting content on demand, e.g. video on demand}
- H04W 12/04: Key management, e.g. using generic bootstrapping architecture [GBA]
- H04W 12/06: Authentication
- H04W 12/50: Secure pairing of devices
- H04L 2463/062: applying encryption of the keys
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)

## Abstract

In an approach, a target computing device receives a pairing request from a controller computing device, the pairing request including controller credentials that were previously received by the controller computing device from an authentication server computer and encrypted under a service key. The target computing device forwards the pairing request to the authentication server, the authentication server computer being configured to return a pairing response based at least in part on the controller credentials. The target computing device receives the pairing which includes a shared secret encrypted under a target device key and the same shared secret encrypted under a controller key. The target computing device decrypts the shared secret encrypted under the target device key and forwards the shared secret encrypted under the controller key to the controller device. Using the decrypted shared secret, the target computing device establishes a secure connection to the controller computing device.

## Claims

### Claim 1

A method comprising:
using a target computing device, receiving a pairing request from a controller computing device, the pairing request including controller credentials that were previously received by the controller computing device from an authentication server computer and encrypted under a service key that is not available to the controller computing device and the target computing device;
using the target computing device, sending at least a portion of the pairing request to a target application executing on the target computing device that is configured determine whether to accept or reject the pairing request based on one or more criteria;
using the target computing device, in response to receiving a communication from the target application indicating that the target application has accepted the pairing request, forwarding the pairing request to the authentication server computer, the authentication server computer being configured to return a pairing response based at least in part on the controller credentials;
using the target computing device, receiving the pairing response from the authentication server computer, wherein the pairing response includes a shared secret encrypted under a target device key and the same shared secret encrypted under a controller key, the controller key being unavailable to the target computing device and the target device key being unavailable to the controller computing device;
using the target computing device, decrypting the shared secret encrypted under the target device key;
using the target computing device, forwarding the shared secret encrypted under the controller key to the controller computing device;
using the target computing device, establishing a secure connection to the controller computing device using the decrypted shared secret;
using the target computing device, receiving, over the secure connection, one or more control messages from the controller computing device that are configured to control one or more functions of the target computing device.

### Claim 2 (depends on 1)

The method of claim 1, wherein the target computing device is configured to present multimedia content and the method further comprising:
using the target computing device, receiving, over the secure connection, an instruction from a second screen user interface application executing on the controller computing device which causes the target computing device to modify presentation of the multimedia content.

### Claim 3 (depends on 2)

The method of claim 2, further comprising modifying the presentation of the multimedia content by one or more of: changing volume of the target device, enabling or disabling closed captioning on the multimedia content, beginning playback of the multimedia content, pausing the multimedia content, switching presentation to different multimedia content, changing playback of the multimedia content to resume at a different point in time within the multimedia content, ending playback of the multimedia content, or displaying title recommendations.

### Claim 4 (depends on 2)

The method of claim 2, further comprising:
the controller computing device determining that a period of time has elapsed without receiving input from a user and in response entering a power saving mode and locking the controller computing device to prevent user access to one or more functions of the controller computing device;
in response to exiting the power saving mode, the controller computing device displaying a user interface that allows the user to unlock the controller computing device, wherein the user interface includes one or more options that, when selected, cause the target computing device to modify presentation of the multimedia content.

### Claim 5 (depends on 2)

The method of claim 2, further comprising:
using the controller computing device, determining that the target computing device has finished playback of the multimedia content and in response displaying one or more titles;
using the controller computing device, in response to receiving user input specifying selection of a particular title of the one or more titles, sending a message to the target computing device over the secure connection that causes the target computing device to begin presentation of the particular title.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
using the target computing device, sending at least a portion of the pairing response to a target application executing on the target computing device that is configured determine whether to accept or reject the pairing response based on one or more criteria;
forwarding the shared secret encrypted under the controller key to the controller computing device in response to receiving a communication from the target application indicating that the target application has accepted the pairing response.

### Claim 7 (depends on 1)

The method of claim 1, wherein the controller computing device and the target computing device are communicatively coupled by a local area network.

### Claim 8 (depends on 1)

The method of claim 1, wherein the controller computing device is any of a smartphone, a tablet computer, or a wearable computing device.

### Claim 9 (depends on 1)

The method of claim 1, wherein the target computing device is one or more of: a television, a projector, a game console, a set-top-box, or a disc player.

### Claim 10 (depends on 1)

The method of claim 1, wherein the pairing response includes target device credentials for the target computing device that are encrypted under the service key.

### Claim 11

A non-transitory computer-readable medium storing one or more instructions, which when executed by one or more processors, cause the one or more processors to perform steps comprising:
using a target computing device, receiving a pairing request from a controller computing device, the pairing request including controller credentials that were previously received by the controller computing device from an authentication server computer and encrypted under a service key that is not available to the controller computing device and the target computing device;
using the target computing device, sending at least a portion of the pairing request to a target application executing on the target computing device that is configured determine whether to accept or reject the pairing request based on one or more criteria;
using the target computing device, in response to receiving a communication from the target application indicating that the target application has accepted the pairing request, forwarding the pairing request to the authentication server computer, the authentication server computer being configured to return a pairing response based at least in part on the controller credentials;
using the target computing device, receiving the pairing response from the authentication server computer, wherein the pairing response includes a shared secret encrypted under a target device key and the same shared secret encrypted under a controller key, the controller key being unavailable to the target computing device and the target device key being unavailable to the controller computing device;
using the target computing device, decrypting the shared secret encrypted under the target device key;
using the target computing device, forwarding the shared secret encrypted under the controller key to the controller computing device;
using the target computing device, establishing a secure connection to the controller computing device using the decrypted shared secret;
using the target computing device, receiving, over the secure connection, one or more control messages from the controller computing device that are configured to control one or more functions of the target computing device.

### Claim 12 (depends on 11)

The non-transitory computer-readable medium of claim 11, wherein the target computing device is configured to present multimedia content and the steps further comprise:
using the target computing device, receiving, over the secure connection, an instruction from a second screen user interface application executing on the controller computing device which causes the target computing device to modify presentation of the multimedia content.

### Claim 13 (depends on 12)

The non-transitory computer-readable medium of claim 12, wherein the steps further comprise modifying the presentation of the multimedia content by one or more of: changing volume of the target device, enabling or disabling closed captioning on the multimedia content, beginning playback of the multimedia content, pausing the multimedia content, switching presentation to different multimedia content, changing playback of the multimedia content to resume at a different point in time within the multimedia content, ending playback of the multimedia content, or displaying title recommendations.

### Claim 14 (depends on 12)

The non-transitory computer-readable medium of claim 12, wherein the steps further comprise:
the controller computing device determining that a period of time has elapsed without receiving input from a user and in response entering a power saving mode and locking the controller computing device to prevent user access to one or more functions of the controller computing device;
in response to exiting the power saving mode, the controller computing device displaying a user interface that allows the user to unlock the controller computing device, wherein the user interface includes one or more options that, when selected, cause the target computing device to modify presentation of the multimedia content.

### Claim 15 (depends on 12)

The non-transitory computer-readable medium of claim 12, wherein the steps further comprise:
using the controller computing device, determining that the target computing device has finished playback of the multimedia content and in response displaying one or more titles;
using the controller computing device, in response to receiving user input specifying selection of a particular title of the one or more titles, sending a message to the target computing device over the secure connection that causes the target computing device to begin presentation of the particular title.

### Claim 16 (depends on 11)

The non-transitory computer-readable medium of claim 11, wherein the steps further comprise:
using the target computing device, sending at least a portion of the pairing response to a target application executing on the target computing device that is configured determine whether to accept or reject the pairing response based on one or more criteria;
forwarding the shared secret encrypted under the controller key to the controller computing device in response to receiving a communication from the target application indicating that the target application has accepted the pairing response.

### Claim 17 (depends on 11)

The non-transitory computer-readable medium of claim 11, wherein the controller computing device and the target computing device are communicatively coupled by a local area network.

### Claim 18 (depends on 11)

The non-transitory computer-readable medium of claim 11, wherein the controller computing device is any of a smartphone, a tablet computer, or a wearable computing device.

### Claim 19 (depends on 11)

The non-transitory computer-readable medium of claim 11, wherein the target computing device is one or more of: a television, a projector, a game console, a set-top-box, or a disc player.

### Claim 20 (depends on 11)

The non-transitory computer-readable medium of claim 11, wherein the pairing response includes target device credentials for the target computing device that are encrypted under the service key.

### Claim 21

A data processing system comprising:
one or more processors;
a non-transitory computer-readable storage medium communicatively coupled to the one or more processors and storing one or more instructions which, when executed by the one or more processors, cause the one or more processors to perform:
using a target computing device, receiving a pairing request from a controller computing device, the pairing request including controller credentials that were previously received by the controller computing device from an authentication server computer and encrypted under a service key that is not available to the controller computing device and the target computing device;
using the target computing device, sending at least a portion of the pairing request to a target application executing on the target computing device that is configured determine whether to accept or reject the pairing request based on one or more criteria;
using the target computing device, in response to receiving a communication from the target application indicating that the target application has accepted the pairing request, forwarding the pairing request to the authentication server computer, the authentication server computer being configured to return a pairing response based at least in part on the controller credentials;
using the target computing device, forwarding the pairing request to the authentication server computer, the authentication server computer being configured to return a pairing response based at least in part on the controller credentials;
using the target computing device, receiving the pairing response from the authentication server computer, wherein the pairing response includes a shared secret encrypted under a target device key and the same shared secret encrypted under a controller key, the controller key being unavailable to the target computing device and the target device key being unavailable to the controller computing device;
using the target computing device, decrypting the shared secret encrypted under the target device key;
using the target computing device, forwarding the shared secret encrypted under the controller key to the controller computing device;
using the target computing device, establishing a secure connection to the controller computing device using the decrypted shared secret;
using the target computing device, receiving, over the secure connection, one or more control messages from the controller computing device that are configured to control one or more functions of the target computing device.
