IP Library Granted Patent US 8,385,543
Granted Patent B1
US 8,385,543 · App. 13/195,701 · Granted Feb 26, 2013

Method and apparatus providing confidentiality, integrity and authenticity for a video file

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 8,385,543
App. No.
13/195,701
Granted
Feb 26, 2013
Kind
B1
Abstract

A method, apparatus and computer program product for providing confidentiality, integrity and authenticity for a video file is presented. An encryption header is produced for the video file, the video file including a plurality of packets that carry content, the encryption header containing information necessary to successfully decrypt the video file. The encryption header is added to the video file. An encryption key is generated from a master key identified in the encryption header and, using the encryption key, individual packets of the video file that carry content are encrypted. The video file comprises one of the group consisting of pre-recorded streaming video, live streaming video and randomly accessed video.

Claims (47)

1. A method comprising:

producing an encryption header for a video file, wherein the encryption header identifies a master key and comprises information for decrypting the video file;

adding the encryption header to the video file;

generating an encryption key from the master key identified in the encryption header; and

sending individual packets providing the video file and allowing random access within the video file, wherein at least some content of the video file is encrypted using the encryption key and at least some additional content of the video file is not encrypted.

2. The method of claim 1 , wherein the additional content of the video file comprises metadata identifying a frame of the video file as a video frame or an audio frame.

3. The method of claim 1 , wherein the additional content of the video file comprises metadata identifying a codec type for the video.

4. A method of viewing an encrypted video file, the method comprising:

receiving at least a first portion of an encrypted video file;

receiving an encryption header contained in the at least a portion of the encrypted video file, wherein the encryption header includes a plurality of master keys;

identifying one of the plurality of master keys for decrypting the encrypted video file;

generating a decryption key from the one of the plurality of master keys; and

decrypting, using the decryption key, randomly accessed encrypted packets of the encrypted video file.

5. A non-transitory computer-readable medium embodying program code executable by a computer system, the non-transitory computer-readable medium comprising:

program code for producing an encryption header for a video file, wherein the encryption header identifies a master key and comprises information for decrypting the video file;

program code for adding the encryption header to the video file;

program code for generating an encryption key from the master key identified in the encryption header; and

program code for sending individual packets providing the video file and allowing random access within the video file, wherein at least some content of the video file is encrypted using the encryption key and at least some additional content of the video file is not encrypted.

6. The non-transitory computer-readable medium of claim 5 , wherein the additional content of the video file comprises metadata identifying a frame of the video file as a video frame or an audio frame.

7. The non-transitory computer-readable medium of claim 5 , wherein the additional content of the video file comprises metadata identifying a codec type for the video.

8. A non-transitory computer-readable medium embodying program code executable by a computer system, the non-transitory computer-readable medium comprising:

program code for receiving at least a first portion of an encrypted video file;

program code for receiving an encryption header contained in the at least a portion of the encrypted video file, wherein the encryption header includes a plurality of master keys;

program code for identifying one of the plurality of master keys for decrypting the encrypted video file;

program code for generating a decryption key from the one of the plurality of master keys; and

program code for decrypting, using the decryption key, randomly accessed encrypted packets of the encrypted video file.

9. A computing system comprising:

a processor for executing instructions stored in a computer-readable medium on one or more devices providing an application; and

wherein the application comprises one or more modules configured to perform operations comprising:

producing an encryption header for a video file, wherein the encryption header identifies a master key and comprises information for decrypting the video file;

adding the encryption header to the video file;

generating an encryption key from the master key identified in the encryption header; and

sending individual packets providing the video file and allowing random access within the video file,

wherein at least some content of the video file is encrypted using the encryption key, and

wherein at least some additional content of the video file is not encrypted.

10. The computing system of claim 9 , wherein the additional content of the video file comprises metadata identifying a frame of the video file as a video frame or an audio frame.

11. The computing system of claim 9 , wherein the additional content of the video file comprises metadata identifying a codec type for the video.

12. A computing system comprising:

a processor for executing instructions stored in a computer-readable medium on one or more devices providing an application; and

wherein the application comprises one or more modules configured to perform operations comprising:

producing an encryption header for a video file, wherein the encryption header identifies a master key and comprises information for decrypting the video file;

adding the encryption header to the video file;

generating an encryption key from the master key identified in the encryption header; and

sending individual packets providing the video file and allowing random access within the video file, wherein at least some content of the video file is encrypted using the encryption key and at least some metadata of the video file is not encrypted.

13. The method of claim 1 , wherein the additional content comprises audiovisual content of the video capable of being executed at a video player application without decrypting the video file.

14. The non-transitory computer-readable medium of claim 5 , wherein the additional content comprises audiovisual content of the video capable of being executed at a video player application without decrypting the video file.

15. The computing system of claim 9 , wherein the additional content comprises audiovisual content of the video capable of being executed at a video player application without decrypting the video file.

Assignments (3)
CHANGE OF NAME Recorded Mar 6, 2019
From: ADOBE SYSTEMS INCORPORATED
To: ADOBE INC.
Reel/Frame 048525/0042 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 26, 2013
From: XU, XUEJUN; VIJAY, SHYAM SUNDER
To: ADOBE SYSTEMS INCORPORATED
Reel/Frame 030090/0988 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 28, 2013
From: AGRAWAL, SUNIL
To: ADOBE SYSTEMS INCORPORATED
Reel/Frame 029705/0814 →