IP Library Granted Patent US 10,212,486
Granted Patent B2
US 10,212,486 · App. 15/615,626 · Granted Feb 19, 2019

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 10,212,486
App. No.
15/615,626
Granted
Feb 19, 2019
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 (54)

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 plurality of partially encrypted frames, wherein each partially encrypted frame contains encrypted portions and unencrypted portions of data; and

a set of cryptographic information describing the encrypted portion of each partially encrypted frame, where cryptographic information for a partially encrypted frame comprises:

cryptographic material for the encrypted portion of the partially encrypted frame, and

a block reference that identifies the encrypted portion of the partially encrypted frame,

providing each partially encrypted frame, the cryptographic material for each partially encrypted frame, and the block reference for each partially encrypted frame from the parser to a video decoder;

identifying the encrypted portion of each partially encrypted frame using the block reference for each partially encrypted frame;

deciphering a frame key for each partially encrypted frame using the cryptographic material for each partially encrypted frame to produce a frame key for each partially encrypted frame;

decrypting the encrypted portion of each partially encrypted frame based upon the frame key for each partially encrypted frame using the video decoder; and

decoding each decrypted frame for rendering on a display device using the video decoder.

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

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

4. The playback device of claim 1 , wherein the playback application is further for causing the set of processors to communicate with a digital rights management component to decipher a frame key for each partially encrypted frame from the cryptographic material for each partially encrypted frame.

5. The playback device of claim 1 , wherein the frame key is encrypted to restrict playback to a particular user.

6. The playback device of claim 1 , wherein the frame key is encrypted to restrict playback to a particular user.

7. The playback device of claim 1 , wherein the playback application is further for causing the set of one or more processors to stream the container file.

8. The playback device of claim 1 , wherein:

the playback application is further for causing the set of one or more processors to perform the step of providing each partially encrypted frame, the cryptographic material for each partially encrypted frame, and the block reference for each partially encrypted frame from the parser to a video decoder by building a cryptographic payload comprising:

cryptographic material for a partially encrypted frame, and

a block reference for the partially encrypted frame.

9. The playback device of claim 8 , wherein the cryptographic payload is delimited by an identifier.

10. The playback device of claim 9 , wherein the decoder uses the identifier to extract cryptographic material for the partially encrypted frame and the block reference for the partially encrypted frame from the cryptographic payload.

11. The playback device of claim 1 , wherein the playback application is further for causing the set of one or more processors to perform the step of inserting the cryptographic payload at the front of each partially encrypted frame of video that is demultiplexed by the parser.

12. The playback device of claim 1 , further comprising inserting the cryptographic payload at the front of each partially encrypted frame of video using the parser.

13. The playback device of claim 1 , an encrypted portion of a partially encrypted frame comprises a frame header.

14. The playback device of claim 1 , wherein an unencrypted portion of a partially encrypted frame comprises a frame header.

15. 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 plurality of partially encrypted frames, wherein each partially encrypted frame contains encrypted portions and unencrypted portions of data; and

a set of cryptographic information describing the encrypted portion of each partially encrypted frame, where cryptographic information for a partially encrypted frame comprises:

cryptographic material for the encrypted portion of the partially encrypted frame, and

a block reference that identifies the encrypted portion of the partially encrypted frame,

providing each partially encrypted frame, the cryptographic material for each partially encrypted frame, and the block reference for each partially encrypted frame from the parser to a video decoder;

identifying the encrypted portion of each partially encrypted frame using the block reference for each partially encrypted frame;

deciphering a frame key for each partially encrypted frame using the cryptographic material for each partially encrypted frame to produce a frame key for each partially encrypted frame;

decrypting the encrypted portion of each partially encrypted frame based upon the frame key for each partially encrypted frame using the video decoder; and

decoding each decrypted frame for rendering on a display device using the video decoder.

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

17. The method of claim 15 , wherein each block reference comprises offset and length information.

18. The method of claim 15 further comprising communicating with a digital rights management component to decipher a frame key for each partially encrypted frame from the cryptographic material for each partially encrypted frame.

19. The method of claim 15 , wherein the frame key is encrypted to restrict playback to a particular user.

20. The method of claim 15 , wherein the frame key is encrypted to restrict playback to a particular user.

21. The method of claim 15 , wherein providing each partially encrypted frame, the cryptographic material for each partially encrypted frame, and the block reference for each partially encrypted frame from the parser to a video decoder further comprises building a cryptographic payload comprising:

cryptographic material for a partially encrypted frame, and

a block reference for the partially encrypted frame.

22. The method of claim 21 , wherein the cryptographic payload is delimited by an identifier.

23. The method of claim 22 , further comprising extracting cryptographic material for the partially encrypted frame and the block reference for the partially encrypted frame from the cryptographic payload based upon the identifier using the video decoder.

24. The method of claim 15 , wherein an encrypted portion of a partially encrypted frame comprises a frame header.

25. The method of claim 15 , wherein an unencrypted portion of a partially encrypted frame comprises a frame header.

Assignments (5)
CHANGE OF PRINCIPAL PLACE OF BUSINESS Recorded Feb 28, 2019
From: DIVX, LLC
To: DIVX, LLC
Reel/Frame 050096/0715 →
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 Aug 16, 2017
From: CHAN, FRANCIS YEE-DUG; SOROUSHIAN, KOUROSH; WOOD, ANDREW JEFFREY
To: DIVX, LLC
Reel/Frame 043311/0887 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 16, 2017
From: DIVX, LLC
To: SONIC IP, INC.
Reel/Frame 043311/0931 →
Cited By (6)
US 12,244,878 US 12,250,404 US 12,262,051 US 12,407,906 US 12,470,781 US 12,647,561