Systems and methods for securely providing adaptive bit rate streaming media content on-demand
View Patent ↗A system for securely providing adaptive bit rate streaming media content on-demand may include a security server of a program distributor that selects, based on a received authorized request, which of a differently encrypted stored versions of a “special segment” of the requested program to deliver to the receiving device during the transmission of the requested program. The selection may be based on a pseudo-random selection process per request for the program based on an identifier of the request associated with the remote control device. The selection of which of the differently encrypted stored versions of the “special segment” of the ordered program to deliver may be=based on the current session. The secure remote then sends to the receiving device the correct decryption key for the receiving device to decrypt the particular encrypted version selected of the “special segment” to be sent to the receiving device.
1. A remote control device comprising:
a processor; and
a secure memory area coupled to the processor, wherein the processor:
receives user input indicative of a request for a streaming media content program to be transmitted to a receiving device communicatively coupled to the remote control;
in response to the received user input, transmits a first request for the streaming media content program and transmits information to enable authentication of said first request;
determines which encrypted segment of a first plurality of encrypted segments stored within a content delivery network is for delivery to the receiving device via the content delivery network in response to the first request for the streaming media content program, wherein the first plurality of encrypted segments is generated by encrypting one segment many ways, using a different encryption key for each way such that each encrypted segment of the first plurality of encrypted segments is a differently encrypted version of a special segment of the streaming media content program and is associated with a corresponding decryption key; and
transmits to the receiving device, based on the determination of which encrypted segment of the first plurality of encrypted segments is for delivery, the corresponding decryption key or part of the corresponding decryption key needed to aid in decryption of the encrypted segment of the requested streaming media content program determined to be for delivery to the receiving device.
2. The remote control device of claim 1 , wherein the processor:
receives information regarding which encrypted segment of the first plurality of encrypted segments is for delivery, and wherein the remote control device is configured to make the determination of which encrypted segment of the first plurality of encrypted segments is for delivery based on the received information.
3. The remote control device of claim 2 , wherein the received information is an identifier of which encrypted segment of the first plurality of encrypted segments is for delivery.
4. The remote control device of claim 2 , wherein the received information is an identifier of said first request for the streaming media content program and is received based on one or more of: user input to the remote control device and an identifier sent via a wireless channel from a security server.
5. The remote control device of claim 1 , wherein the processor:
derives, based on the first request for the streaming media content program, an additional decryption key, or part of the additional decryption key, needed to aid in decryption of additional encrypted segments of the requested streaming media content program wherein each are not of a plurality of differently encrypted versions of the additional segment of the requested streaming media content program; and
transmits to the receiving device, based on the first request for the streaming media content program, the additional corresponding decryption key.
6. A computer-implemented method in a content system of a content delivery network, the method comprising:
in response to authentication of a first request for a streaming media content program, beginning, by the content system, to transmit the requested streaming media content program to a first remote receiving device associated with the first request for the streaming media content program;
requesting information, by the content system during the transmission of the requested streaming of the media content to the first remote receiving device, regarding which encrypted segment of a first plurality of stored encrypted segments of the requested streaming media content program is to be delivered by the content system to the first remote receiving device based on the first request for the streaming media content program, wherein the first plurality of encrypted segments is generated by encrypting one segment many ways, using a different encryption key for each way such that each encrypted segment of the first plurality of encrypted segments is a differently encrypted version of a special segment of the requested streaming media content program and has a different corresponding encryption key;
in response to the request for the information, receiving the information regarding which of the differently encrypted versions of the special segment of the requested streaming media content program is to be delivered by the content system to the remote receiving device; and
delivering, by the content system, based on the received information, a selected encrypted version of the special segment of the requested streaming media content program to the first remote receiving device.
7. The method of claim 6 wherein the requesting the information occurs before the beginning to transmit the requested streaming media content program.
8. The method of claim 6 further comprising:
storing, by the content system, the first plurality of encrypted segments of the requested streaming media content program before the beginning to transmit the requested streaming media content program.
9. The method of claim 6 further comprising:
performing the authentication in response to receiving the first request for the streaming media content program, the first request originating from a first secure remote control device communicatively coupled to the first remote receiving device.
10. The method of claim 6 wherein the differently encrypted versions include about one hundred encrypted versions of the special segment at each of the different bit rates.
11. The method of claim 6 wherein each encrypted segment of the first plurality of stored encrypted segments represents about two seconds of content of the streaming media content program.