# US 10,484,749 B2 · Systems and methods for secure playback of encrypted elementary bitstreams

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

- Number: US 10,484,749 B2
- Document ID: US10484749B2
- Status: Granted
- Kind: B2
- Application number: 16/136,170
- Filed: 2018-09-19
- Published: 2019-01-17
- Granted: 2019-11-19
- Earliest claimed: 2009-12-04
- Assignees: Divx, LLC
- Applicants: Divx, LLC
- Inventors: Francis Yee-Dug Chan; Kourosh Soroushian; Andrew Jeffrey Wood
- Web page: https://patentgrep.com/patent/US10484749B2

## CPC

- H04N 21/63345: {by transmitting keys (key distribution for secret or secure communication H04L9/08; network support of key management H04L63/06)}
- H04L 63/0428: {wherein the data content is protected, e.g. by encrypting or encapsulating the payload}
- H04L 65/70: Media network packetisation
- H04N 7/1675: {Providing digital key or authorisation information for generation or regeneration of the scrambling sequence (pseudo-random number generators in general G06F7/58)}
- H04N 21/2351: {involving encryption of additional data (arrangements using cryptography for the use of broadcast information or broadcast-related information H04H60/23)}
- H04N 21/23614: {Multiplexing of additional data and video streams (arrangements for simultaneous broadcast of plural pieces of information H04H20/28)}
- H04N 21/4302: {Content synchronisation processes, e.g. decoder synchronisation}
- H04N 21/4348: {Demultiplexing of additional data and video streams}
- H04N 21/4405: involving video stream decryption
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Systems and methods for providing multimedia content from one process or component to another process or component over an unsecured connection are provided. One embodiment includes obtaining the cryptographic information, extracting the at least partially encrypted video data from the container file to create an elementary bitstream, enciphering the cryptographic information, inserting the cryptographic information in the elementary bitstream, providing the elementary bitstream to a video decoder, extracting the cryptographic information from the elementary bitstream at the video decoder, deciphering the cryptographic information, decrypting the elementary bitstream with the cryptographic information and decoding the elementary bitstream for rendering on a display device using the video decoder.

## Claims

### Claim 1

A playback device for playing back encrypted video, the playback device comprising:
a set of one or more processors; and
a non-volatile storage containing a playback application for causing the set of one or more processors to perform the steps of:
receiving a container file with video data at a parser;
extracting portions of the container file using the parser, wherein the container file comprises video data with a partially encrypted frame, cryptographic information, and a block reference that identifies a portion of the partially encrypted frame, and wherein the partially encrypted frame contains encrypted portions and unencrypted portions of data;
providing the partially encrypted frame, the cryptographic information, and the block reference from a demultiplexer to a video decoder;
deciphering, at the video decoder, a frame key by which the portion of the partially encrypted frame is encrypted using the cryptographic information and a key table stored on the video decoder;
identifying the encrypted portion of the partially encrypted frame using the block reference;
decrypting the encrypted portion of the partially encrypted frame using the frame key and the video decoder; and
decoding the decrypted portion of the frame for rendering on a display device using the video decoder.

### Claim 2 (depends on 1)

The playback device of claim 1, wherein the partially encrypted frame is provided by the parser to a video decoder over an unsecured channel.

### Claim 3 (depends on 1)

The playback device of claim 1, wherein the playback application is further for causing the set of processors to separately obtain the key table.

### Claim 4 (depends on 1)

The playback device of claim 1, wherein the playback application is further for causing the set of processors to provide a second frame key index and a second block reference from the demultiplexer to the decoder.

### Claim 5 (depends on 4)

The playback device of claim 4, wherein the playback application is further for causing the set of processors to:
identify a second encrypted portion of a second partially encrypted frame using the second block reference;
decrypt the second encrypted portion of the second partially encrypted frame using a second frame key identified by the second key index and the video decoder; and
decode the decrypted second portion of the second frame for rendering on the display device using the video decoder.

### Claim 6 (depends on 1)

The playback device of claim 1, wherein the block reference comprises offset and length information.

### Claim 7 (depends on 1)

The playback device of claim 1, wherein the cryptographic information comprises an encrypted frame key.

### Claim 8 (depends on 7)

The playback device of claim 7, wherein the playback application is further for causing the set of processors to communicate with a digital rights management component to decipher the frame key.

### Claim 9 (depends on 1)

The playback device of claim 1, wherein the key table is encrypted to enable playback by a particular user.

### Claim 10

A method for playing back encrypted video, the method comprising:
receiving a container file with video data at a parser;
extracting portions of the container file using the parser, wherein the container file comprises video data with a partially encrypted frame, cryptographic information, and a block reference that identifies a portion of the partially encrypted frame, and wherein the partially encrypted frame contains encrypted portions and unencrypted portions of data;
providing the partially encrypted frame, the cryptographic information, and the block reference from a demultiplexer to a video decoder;
deciphering, at the video decoder, a frame key by which the portion of the partially encrypted frame is encrypted using the cryptographic information and a key table stored on the video decoder;
identifying the encrypted portion of the partially encrypted frame using the block reference;
decrypting the encrypted portion of the partially encrypted frame using the frame key and the video decoder; and
decoding the decrypted portion of the frame for rendering on a display device using the video decoder.

### Claim 11 (depends on 10)

The method of claim 10, wherein the partially encrypted frame is provided by the parser to a video decoder over an unsecured channel.

### Claim 12 (depends on 10)

The method of claim 10 further comprising obtaining the key table.

### Claim 13 (depends on 10)

The method of claim 10 further comprising providing a second frame key index and a second block reference from the demultiplexer to the decoder.

### Claim 14 (depends on 13)

The method of claim 13 further comprising:
identifying a second encrypted portion of a second partially encrypted frame using the second block reference;
decrypting the second encrypted portion of the second partially encrypted frame using a second frame key identified by the second key index and the video decoder; and
decoding the decrypted second portion of the second frame for rendering on the display device using the video decoder.

### Claim 15 (depends on 10)

The method of claim 10, wherein the block reference comprises offset and length information.

### Claim 16 (depends on 10)

The method of claim 10, wherein the cryptographic information comprises an encrypted frame key.

### Claim 17 (depends on 16)

The method of claim 16 further comprising communicating with a digital rights management component to decipher the frame key.

### Claim 18 (depends on 10)

The method of claim 10, wherein the key table is encrypted to enable playback by a particular user.
