# US 10,484,354 B2 · Data owner restricted secure key distribution

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

- Number: US 10,484,354 B2
- Document ID: US10484354B2
- Status: Granted
- Kind: B2
- Application number: 15/433,938
- Filed: 2017-02-15
- Published: 2018-08-16
- Granted: 2019-11-19
- Earliest claimed: 2017-02-15
- Assignees: Telefonaktiebolaget LM Ericsson (publ)
- Applicants: Telefonaktiebolaget Lm Ericsson (Publ)
- Inventors: Dario Casella; Ilhan Gurel
- Web page: https://patentgrep.com/patent/US10484354B2

## CPC

- H04L 9/088: {Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms (network architectures or network communication protocols for using time-dependent keys in a packet data network H04L63/068)}
- H04L 63/062: {for key distribution, e.g. centrally by trusted party (cryptographic mechanisms or cryptographic arrangements for key distribution involving a central third party H04L9/0819)}
- H04L 9/083: {involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]}
- H04L 9/14: using a plurality of keys or algorithms
- H04L 9/3213: {using tickets or tokens, e.g. Kerberos (network architectures or network communication protocols for entities authentication using tickets in a packet data network H04L63/0807)}
- 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/0435: {wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption (cryptographic mechanisms or cryptographic arrangements for symmetric key encryption H04L9/06)}
- H04L 63/061: {for key exchange, e.g. in peer-to-peer networks (cryptographic mechanisms or cryptographic arrangements for key agreement H04L9/0838)}
- H04L 63/0807: {using tickets, e.g. Kerberos (cryptographic mechanisms or cryptographic arrangements for entity authentication using tickets or tokens H04L9/3213)}
- 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)}
- H04L 2209/60: Digital content management, e.g. content distribution
- H04L 2209/603: Digital right managament [DRM]
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A content distribution system is described herein which enables a data owner of content to set one or more restrictions on a data consumer where the one or more restrictions need to be satisfied by a data consumer device before the data consumer has access to the content. In addition, the content distribution system's components are described herein which include a data owner device, a key server, a data consumer device, a data producer device, and a content server.

## Claims

### Claim 1

A content distribution system comprising:
a data owner device;
a data producer device;
a data consumer device;
a content server; and
a key server;
the data owner device, operated by the data owner, is configured to issue an authentication token to the key server, wherein the authentication token includes one or more restrictions for a data consumer;
the data consumer device, operated by the data consumer, is configured to download encrypted content from the content server, wherein the content server received the encrypted content from the data producer device and not the data owner device;
the key server is configured to (1) receive, from the data producer device, encrypted data associated with at least one key and at least one initialization vector (IV) used to encrypt the content, wherein the content is owned by the data owner, (2) receive a request from the data consumer device for access to key data specific to the content, (3) perform an authentication check with the data consumer device to ensure the one or more restrictions are satisfied, and (4) download the key data to the data consumer device once the one or more restrictions are satisfied;
the data consumer device is further configured to use the key data to decrypt the encrypted content: and
wherein the one or more restrictions include an attestation requirement where a trustworthiness of a trusted execution environment (TEE) of the data consumer device is remotely attested between the key server and the data consumer device as follows:
send, by the key server, an attest X with nonce Y message to the data consumer device, wherein the X is attestation that the data consumer device has the TEE and the Y is a random nonce value, wherein a digest value of X is known by the key server;
retrieve, by the data consumer device, a digest value of X by concatenating X and Y;
sign, by the data consumer device, the digest value of X by using a private key which is only available in the TEE; and
send, by the data consumer device, the digest value of X, the nonce Y, a signature of the data consumer device, and an attestation certificate to the key server.

### Claim 2 (depends on 1)

The content distribution system of claim 1, wherein the one or more restrictions include an attestation requirement where the key server is configured to remotely attest a trustworthiness of an execution environment of the data consumer device.

### Claim 3 (depends on 2)

The content distribution system of claim 2, where the execution environment is in a certain geography location.

### Claim 4 (depends on 2)

The content distribution system of claim 2, wherein the execution environment is a trusted execution environment (TEE).

### Claim 5 (depends on 1)

The content distribution system of claim 1, wherein the one or more restrictions include one or more of the following:
a geography location requirement;
a purpose requirement; and
a validity period.

### Claim 6 (depends on 1)

The content distribution system of claim 1, wherein the key server is further configured to notify the data owner device when the one or more restrictions of the data consumer are not satisfied during the authentication check.

### Claim 7 (depends on 1)

The content distribution system of claim 1, wherein the key server is further configured to provide a log access to the data owner device, wherein the log access indicates which data consumers were given access to the key data and when the access to the key data was given to the data consumers.

### Claim 8

A key server comprising:
a processor; and
a memory that stores processor-executable instructions, wherein the processor interfaces with the memory to execute the processor-executable instructions, whereby the key server is operable to:
receive, from a data owner device operated by a data owner, an authentication token which includes one or more restrictions that need to be satisfied before content is able to be decrypted by a data consumer device, wherein the content is owned by the data owner, and wherein the one or more restrictions are imposed by the data owner;
receive, from the data consumer device operated by a data consumer, a request for access to key data specific to the content;
perform an authentication check with the data consumer device to ensure the one or more restrictions are satisfied;
download the key data to the data consumer device once the one or more restrictions are satisfied during the authentication check, wherein the key data enables decryption of the content by the data consumer device, and wherein the data owner device does not distribute the content to the data consumer device but rather a data producer device distributes the content via a content server to the data consumer device; and
wherein the one or more restrictions include an attestation requirement in which the key server is operable to remotely attest a trustworthiness of a trusted execution environment (TEE) in the data consumer device as follows:
send, to the data consumer device, an attest X with nonce Y message, wherein the X is attestation that the data consumer device has the TEE and the Y is a random nonce value, wherein a digest value of X is known by the key server;
receive, from the data consumer device, the digest value of X, the nonce Y, a signature of the data consumer device, and an attestation certificate.

### Claim 9 (depends on 8)

The key server of claim 8, wherein the key server is further operable to:
send, to the data owner device, a notification message when the one or more restrictions of the data consumer are not satisfied during the authentication check.

### Claim 10 (depends on 8)

The key server of claim 8, wherein the key server is further operable to:
provide a log access to the data owner device, wherein the log access indicates which data consumers were given access to the key data and when the access to the key data was given to the data consumers.

### Claim 11 (depends on 8)

The key server of claim 8, wherein the one or more restrictions include one or more of the following:
a geography location requirement;
a purpose requirement; and
a validity period.

### Claim 12

A method in a key server, the method comprising:
receiving, from a data owner device operated by a data owner, an authentication token which includes one or more restrictions that need to be satisfied before content is able to be decrypted by a data consumer device, wherein the content is owned by the data owner and wherein the one or more restrictions are imposed by the data owner;
receiving, from the data consumer device operated by a data consumer, a request for access to key data specific to the content;
performing an authentication check with the data consumer device to ensure the one or more restrictions are satisfied;
downloading the key data to the data consumer device once the one or more restrictions are satisfied during the authentication check, wherein the key data enables decryption of the content by the data consumer device, and wherein the data owner device does not distribute the content to the data consumer device but rather a data producer device distributes the content via a content server to the data consumer device; and
wherein the one or more restrictions include an attestation requirement in which the key server is operable to remotely attest a trustworthiness of a trusted execution environment (TEE) in the data consumer device as follows:
sending, to the data consumer device, an attest X with nonce Y message, wherein the X is attestation that the data consumer device has the TEE and the Y is a random nonce value, wherein a digest value of X is known by the key server;
receiving, from the data consumer device, the digest value of X, the nonce Y, a signature of the data consumer device, and an attestation certificate.

### Claim 13 (depends on 12)

The method of claim 12, further comprising:
sending, to the data owner device, a notification message when the one or more restrictions of the data consumer are not satisfied during the authentication check.

### Claim 14 (depends on 12)

The method of claim 12, further comprising:
providing a log access to the data owner device, wherein the log access indicates which data consumers were given access to the key data and when the access to the key data was given to the data consumers.

### Claim 15 (depends on 12)

The method of claim 12, wherein the one or more restrictions include one or more of the following:
a geography location requirement;
a purpose requirement; and
a validity period.

### Claim 16

A data consumer device operated by a data consumer and configured to satisfy one or more restrictions imposed by a data owner before being allowed to decrypt encrypted content, the data consumer device comprising:
a processor; and
a memory that stores processor-executable instructions, wherein the processor interfaces with the memory to execute the processor-executable instructions, whereby the data consumer device is operable to:
download, from a content server, encrypted content, wherein the encrypted content is owned by a data owner that operates a data owner device, and wherein the content server received the encrypted content from a data producer device and not the data owner device;
send, to a key server, a request for access to key data specific to the content;
perform, with the key server, an authentication check to ensure the one or more restrictions are satisfied, wherein the one or more restrictions have been set by the data owner;
download, from the key server, the key data once the one or more restrictions are satisfied;
use the key data to decrypt the encrypted content; and
wherein the one or more restrictions include an attestation requirement where the data consumer device is operable to remotely attest a trustworthiness of a trusted execution environment (TEE) in the data consumer device as follows:
receive, from the key server, an attest X with nonce Y message, wherein the X is attestation that the data consumer device has the TEE and the Y is a random nonce value;
retrieve a digest value of X by concatenating X and Y;
sign the digest value of X by using a private key which is only available in the TEE; and
send, to the key server, the digest value of X, the nonce Y, a signature of the data consumer device, and an attestation certificate.

### Claim 17 (depends on 16)

The data consumer device of claim 16, wherein the one or more restrictions include one or more of the following:
a geography location requirement;
a purpose requirement; and
a validity period.

### Claim 18

A method in a data consumer device operated by a data consumer and configured to satisfy one or more restrictions imposed by a data owner before being allowed to decrypt encrypted content, the method comprising:
downloading, from a content server, encrypted content, wherein the encrypted content is owned by a data owner that operates a data owner device, and wherein the content server received the encrypted content from a data producer device and not the data owner device;
sending, to a key server, a request for access to key data specific to the content;
performing, with the key server, an authentication check to ensure the one or more restrictions are satisfied, wherein the one or more restrictions have been set by the data owner;
downloading, from the key server, the key data once the one or more restrictions are satisfied;
using the key data to decrypt the encrypted content; and
wherein the one or more restrictions include an attestation requirement where the data consumer device is operable to remotely attest a trustworthiness of a trusted execution environment (TEE) in the data consumer device as follows:
receiving, from the key server, an attest X with nonce Y message, wherein the X is attestation that the data consumer device has the TEE and the Y is a random nonce value;
retrieving a digest value of X by concatenating X and Y;
signing the digest value of X by using a private key which is only available in the TEE; and
sending, to the key server, the digest value of X, the nonce Y, a signature of the data consumer device, and an attestation certificate.

### Claim 19 (depends on 18)

The method of claim 18, wherein the one or more restrictions include one or more of the following:
a geography location requirement;
a purpose requirement; and
a validity period.
