IP Library Granted Patent US 9,706,259
Granted Patent B2
US 9,706,259 · App. 14/839,783 · Granted Jul 11, 2017

Elementary bitstream cryptographic material transport systems and methods

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,706,259
App. No.
14/839,783
Granted
Jul 11, 2017
Kind
B2
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 (39)

1. A method of playing back encrypted video on a playback device, where encrypted video data is contained within a container file and can be extracted and decrypted to create an elementary bitstream, the method comprising:

extracting at least partially encrypted video data from a container file to create an at least partially encrypted elementary bitstream using a demultiplexer, where at least a portion of the at least partially encrypted elementary bitstream is encrypted by a frame key;

selecting a heuristic from a predetermined set of heuristics using the demultiplexer;

generating key material for a wrap key using the selected heuristic using the demultiplexer;

encrypting the frame key with the wrap key using the demultiplexer;

inserting the encrypted frame key into the at least partially encrypted elementary bitstream using the demultiplexer;

encrypting a synchronization payload with the wrap key using the demultiplexer, wherein the synchronization payload includes contents known to the demultiplexer and the decoder;

providing the encrypted synchronization payload, and the combined at least partially encrypted elementary bitstream and encrypted frame key, to a video decoder;

extracting the encrypted frame key from the at least partially encrypted elementary bitstream using the video decoder;

decrypting the contents of the encrypted synchronization payload using a heuristic identified to match the selected heuristic using the video decoder;

generating a copy of the wrap key using the identified correct heuristic using the video decoder;

decrypting the encrypted frame key using the copy of the wrap key and the video decoder;

decrypting at least a portion of the at least partially encrypted elementary bitstream using the decrypted frame key and the video decoder; and

decoding the decrypted portion of the elementary bitstream for rendering on a display device using the video decoder.

2. The method of claim 1 further comprising providing wrap key information from the demultiplexer to the video decoder, where the wrap key information enables the video decoder to generate a copy of the wrap key without communication back to the demultiplexer.

3. The method of claim 1 , where the synchronization payload further comprises information that enables the video decoder to select a heuristic from a predetermined set of heuristics to generate a copy of the wrap key.

4. The method of claim 1 further comprising:

identifying a heuristic that matches the selected heuristic using the video decoder, by attempting decryption of the contents of the encrypted synchronization payload using individual heuristics from the predetermined set of heuristics, until the correct heuristic is identified.

5. A system for playback of encrypted video, where encrypted video data is contained within a container file and can be extracted and decrypted to create an elementary bitstream, comprising:

a demultiplexer configured to:

extract at least partially encrypted video data from a container file to create an at least partially encrypted elementary bitstream, where at least a portion of the at least partially encrypted elementary bitstream is encrypted by a frame key;

select a heuristic from a predetermined set of heuristics;

generate key material for a wrap key using the selected heuristic using the demultiplexer;

encrypt the frame key with the wrap key using the demultiplexer;

insert the encrypted frame key into the at least partially encrypted elementary bitstream;

encrypt a synchronization payload with the wrap key using the demultiplexer, wherein the synchronization payload includes contents known to the demultiplexer and the decoder;

provide the encrypted synchronization payload, and the combined at least partially encrypted elementary bitstream and encrypted frame key, to a video decoder; and

a video decoder configured to:

extract the encrypted frame key from the at least partially encrypted elementary bitstream using the video decoder;

decrypt the contents of the encrypted synchronization payload using a heuristic identified to match the selected heuristic using the video decoder;

generate a copy of the wrap key using the identified correct heuristic using the video decoder;

decrypt the encrypted frame key using the copy of the wrap key;

decrypt at least a portion of the at least partially encrypted elementary bitstream using the decrypted frame key; and

decode the decrypted portion of the elementary bitstream for rendering on a display device.

6. The system of claim 5 wherein the demultiplexer is further configured to provide wrap key information to the video decoder, where the wrap key information enables the video decoder to generate a copy of the wrap key without communication back to the demultiplexer.

7. The system of claim 5 , where the synchronization payload further comprises information that enables the video decoder to select a heuristic from a predetermined set of heuristics to generate a copy of the wrap key.

8. The system of claim 5 ,

wherein the video decoder is further configured to:

identify a heuristic that matches the selected heuristic using the video decoder, by attempting decryption of the contents of the encrypted synchronization payload using individual heuristics from the predetermined set of heuristics, until the correct heuristic is identified.

Assignments (5)
CHANGE OF PRINCIPAL PLACE OF BUSINESS Recorded Mar 5, 2019
From: DIVX, LLC
To: DIVX, LLC
Reel/Frame 050407/0104 →
CHANGE OF NAME Recorded Mar 5, 2018
From: DIVX CF HOLDINGS LLC
To: DIVX, LLC
Reel/Frame 045498/0560 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 13, 2018
From: SONIC IP, INC.; DIVX, LLC
To: DIVX CF HOLDINGS LLC
Reel/Frame 045310/0020 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 6, 2017
From: CHAN, FRANCIS YEE-DUG; SOROUSHIAN, KOUROSH; WOOD, ANDREW JEFFREY
To: DIVX, LLC
Reel/Frame 041890/0371 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 6, 2017
From: DIVX, LLC
To: SONIC IP, INC.
Reel/Frame 041890/0386 →