IP Library Granted Patent US 9,922,178
Granted Patent B2
US 9,922,178 · App. 14/907,152 · Granted Mar 20, 2018

Media client device authentication using hardware root of trust

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,922,178
App. No.
14/907,152
Granted
Mar 20, 2018
Kind
B2
Abstract

A client device for media playback includes a user-installable media client application which implements the client-side of a digital rights management (DRM) system. The client device employs secure boot and verifies the user-installed application. The application is hardened against reverse engineering, and it utilizes a special API provided by the client device to tie into the secure boot, bridging the gap between the secure boot and the client-side of the DRM system contained within the application.

Claims (23)

1. A method by which a client device proves its authenticity to a media client to be user-installed on the client device as well as to a rights management server communicatively coupled to the client device, comprising:

engaging in a secure boot process to confirm that an image persistently stored in the client device and including firmware for execution is specifically keyed for use in a rights management scheme employing a private encryption key at the rights management server and a corresponding public encryption key securely stored in the image, the firmware being configured and operative upon execution to respond to a request from the media client by returning a device registration message encrypted using the public encryption key, the secure boot process including (1) verifying a signature of the stored public encryption key using a first verification key securely stored in one-time-programmable (OTP) storage of the client device, (2) decrypting an encrypted symmetric key contained in the image and verifying a signature of the decrypted symmetric key using one or more second verification keys securely stored in the OTP storage, and (3) verifying a signature of the persistently stored image using the decrypted symmetric key;

loading and executing the firmware upon successful completion of the secure boot process; and

by the firmware during subsequent operation and in response to the request from the media client, using the persistently stored public encryption key to create the encrypted device registration message and returning the encrypted device registration message to the media client for forwarding to the rights management server as part of a device authentication process.

2. A method according to claim 1 , wherein the secure boot process includes a processor-level boot and a subsequent firmware-level boot using a firmware boot routine contained in the image, the firmware-level boot performing the decrypting of the encrypted symmetric key and the verifying of the signature of the persistently stored image, and further including, by the processor-level boot, verifying a signature of the firmware boot routine and upon successful verification of the signature then initiating the firmware boot.

3. A method according to claim 1 , wherein the image stores respective stored signatures for the stored public encryption key, the encrypted symmetric key, and firmware components of the image, and wherein verifying a signature for a given key or firmware component includes (1) calculating a signature for the given key or firmware component, and (2) comparing the calculated signature with a respective one of the stored signatures.

4. A method according to claim 1 , wherein the media client implements a client side of a digital rights management (DRM) system and is user-installed on the client device.

5. A method according to claim 4 , wherein the firmware of the client device verifies the user-installed media client on the client device.

6. A method according to claim 4 , wherein the media client utilizes a special application programming interface provided by the client device to tie into the secure boot, bridging the gap between the secure boot and the client-side of the DRM system contained within the application.

7. A client device, comprising:

one or more processors;

a memory;

input/output interface circuitry; and

one or more data buses coupling the one or more processors, the memory and the input/output circuitry together for data transfer therebetween,

the memory storing computer program instructions executed by the one or more processors to cause the client device to prove its authenticity to a media client to be user-installed on the client device as well as to a rights management server communicatively coupled to the client device, the client device is operable to prove its authenticity to the media client and the rights management server by:

engaging in a secure boot process to confirm that an image persistently stored in the client device and including firmware for execution is specifically keyed for use in a rights management scheme employing a private encryption key at the rights management server and a corresponding public encryption key securely stored in the image, the firmware being configured and operative upon execution to respond to a request from the media client by returning a device registration message encrypted using the public encryption key, the secure boot process including (1) verifying a signature of the stored public encryption key using a first verification key securely stored in one-time-programmable (OTP) storage of the client device, (2) decrypting an encrypted symmetric key contained in the image and verifying a signature of the decrypted symmetric key using one or more second verification keys securely stored in the OTP storage, and (3) verifying a signature of the persistently stored image using the decrypted symmetric key;

loading and executing the firmware upon successful completion of the secure boot process; and

by the firmware during subsequent operation and in response to the request from the media client, using the persistently stored public encryption key to create the encrypted device registration message and returning the encrypted device registration message to the media client for forwarding to the rights management server as part of a device authentication process.

8. A client device according to claim 7 , wherein the secure boot process includes a processor-level boot and a subsequent firmware-level boot using a firmware boot routine contained in the image, the firmware-level boot performing the decrypting of the encrypted symmetric key and the verifying of the signature of the persistently stored image, and wherein the method further includes, by the processor-level boot, verifying a signature of the firmware boot routine and upon successful verification of the signature then initiating the firmware boot.

9. A client device according to claim 7 , wherein the image stores respective stored signatures for the stored public encryption key, the encrypted symmetric key, and firmware components of the image, and wherein verifying a signature for a given key or firmware component includes (1) calculating a signature for the given key or firmware component, and (2) comparing the calculated signature with a respective one of the stored signatures.

10. A client device according to claim 7 , wherein the media client implements a client side of a digital rights management (DRM) system and is user-installed on the client device.

11. A client device according to claim 10 , wherein the firmware of the client device verifies the user-installed media client on the client device.

12. A client device according to claim 7 , wherein the media client utilizes a special API provided by the client device to tie into the secure boot, bridging the gap between the secure boot and the client-side of the DRM system contained within the application.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 12, 2017
From: MIKHAILOV, MIKHAIL; NAIR, RAJ
To: AZUKI SYSTEMS, INC.
Reel/Frame 042354/0886 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 12, 2017
From: AZUKI SYSTEMS, INC.
To: ERICSSON AB
Reel/Frame 042355/0054 →