Dynamic encryption
First Claim
1. A method for providing a plurality of encrypted segments of a media file over a data network, the method comprising:
- receiving, at a server, a request for a first segment of the media file;
retrieving the first segment of the media file, wherein the first segment of the media file comprises one of a plurality of segments of the media file that are each separately-addressable from an application layer using a corresponding URI, the first segment of the media file having media content for playback over a period of time;
determine a first encryption key;
creating an encrypted first segment of the media file by encrypting the first segment of the media file using the first encryption key, wherein the encrypting the first segment of the media file occurs after receiving the request for the first segment of the media file;
providing, with the server, the encrypted first segment of the media file;
receiving, at the server, a request for a second segment of the media file;
retrieving the second segment of the media file, wherein the second segment of the media file comprises one of the plurality of segments of the media file that are each separately-addressable from the application layer using the corresponding URI, the second segment of the media file having media content for playback over a period of time;
determining a second encryption key;
creating an encrypted second segment of the media file by encrypting the second segment of the media file using the second encryption key, wherein the encrypting the second segment of the media file occurs after receiving the request for the second segment of the media file; and
providing, with the server, the encrypted second segment of the media.
3 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for encrypting a media file for streaming and/or downloading over a network are disclosed. These systems and methods may be part of a larger media servicing network that can be used to, among other things, process uploaded media content, provide it for streaming, and collect metric information regarding the streaming. The disclosed systems and methods provide for receiving requests for a media file or a chunk of a media file and responding to these requests by encrypting the requested chunks dynamically and providing the chunks to the requesting entity. These systems and methods, which can be utilized with a dynamic chunk generation and dynamic index file generation, enable a high degree of flexibility in streaming chunked media files and preclude the need to encrypt the chunks prior to streaming. The systems and methods may also be applied to encrypting files for continuous streaming protocols as well as for progressive download.
-
Citations
25 Claims
-
1. A method for providing a plurality of encrypted segments of a media file over a data network, the method comprising:
-
receiving, at a server, a request for a first segment of the media file; retrieving the first segment of the media file, wherein the first segment of the media file comprises one of a plurality of segments of the media file that are each separately-addressable from an application layer using a corresponding URI, the first segment of the media file having media content for playback over a period of time; determine a first encryption key; creating an encrypted first segment of the media file by encrypting the first segment of the media file using the first encryption key, wherein the encrypting the first segment of the media file occurs after receiving the request for the first segment of the media file; providing, with the server, the encrypted first segment of the media file; receiving, at the server, a request for a second segment of the media file; retrieving the second segment of the media file, wherein the second segment of the media file comprises one of the plurality of segments of the media file that are each separately-addressable from the application layer using the corresponding URI, the second segment of the media file having media content for playback over a period of time; determining a second encryption key; creating an encrypted second segment of the media file by encrypting the second segment of the media file using the second encryption key, wherein the encrypting the second segment of the media file occurs after receiving the request for the second segment of the media file; and providing, with the server, the encrypted second segment of the media. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A server for communicating, via a network, a media file having a plurality of segments, the server comprising:
-
a network interface; a memory configured to store one or more of the plurality of segments; and a processor communicatively coupled with the memory and the network interface and configured to cause the server to; receive, using the network interface, a request for a first segment of the media file; retrieve the first segment of the media file from the memory, wherein the first segment of the media file comprises one of a plurality of segments of the media file that are each separately-addressable from an application layer using a corresponding URI, the first segment of the media file having media content for playback over a period of time; determine a first encryption key; create an encrypted first segment of the media file by encrypting the first segment of the media file using the first encryption key, wherein encrypting the first segment of the media file occurs after receiving the request for the first segment of the media file; provide, using the network interface, the encrypted first segment of the media file; receive, using the network interface, a request for a second segment of the media file; retrieve the second segment of the media file from the memory, wherein the second segment of the media file comprises one of the plurality of segments of the media file that are each separately-addressable from the application layer using the corresponding URI, the second segment of the media file having media content for playback over a period of time; determine a second encryption key; create an encrypted second segment of the media file by encrypting the second segment of the media file using the second encryption key, wherein the encrypting the second segment of the media file occurs after receiving the request for the second segment of the media file; and provide, using the network interface, the encrypted second segment of the media file. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A system for securely communicating, with a network, a media file, the system comprising:
-
a data storage configured to store the media file; and a processing server communicatively coupled with the data storage, the processing server configured to; receive a request for a first segment of the media file, the first segment of the media file comprising one of a plurality of segments of the media file that are each separately-addressable from an application layer using a corresponding URI; retrieve at least a portion of the media file from the data storage; generate the first segment of the media file, wherein the first segment of the media file comprises media content for playback over a period of time; determine a first encryption key; create an encrypted first segment of the media file by encrypting the first segment of the media file using the first encryption key, wherein the encrypting the first segment of the media file occurs after the request for the first segment of the media file is received; provide the encrypted first segment of the media file; receive a request for a second segment of the media file, the second segment of the media file comprising one of the plurality of segments of the media file that are each separately-addressable from the application layer using the corresponding URI; generate the second segment of the media file, wherein the second segment of the media file comprises media content for playback over a period of time; determine a second encryption key; create an encrypted second segment of the media file by encrypting the second segment of the media file using the second encryption key, wherein the encrypting the second segment of the media file occurs after receiving the request for the second segment of the media file; and provide the encrypted second segment of the media file. - View Dependent Claims (23, 24, 25)
-
Specification