US 7,602,908 B2
System and method for using a streaming protocol
David F Pare, San Francisco, Calif. (US); David L. Biderman, San Francisco, Calif. (US); Stephen Loomis, Leesburg, Va. (US); Scott K. Brown, Ashburn, Va. (US); Michael Wise, Washington, D.C. (US); David Wexelblat, Vienna, Va. (US); Conor P. Cahill, Waterford, Va. (US); and David S. Bill, San Francisco, Calif. (US)
Assigned to AOL LLC, Dulles, Va. (US)
Filed on Dec. 22, 2004, as Appl. No. 11/19,124.
Claims priority of provisional application 60/617087, filed on Oct. 12, 2004.
Claims priority of provisional application 60/553559, filed on Mar. 17, 2004.
Claims priority of provisional application 60/530977, filed on Dec. 22, 2003.
Prior Publication US 2005/0190911 A1, Sep. 01, 2005
Int. Cl. H04K 1/04 (2006.01); H04N 7/00 (2006.01); H04N 5/913 (2006.01); H04N 7/167 (2006.01); H04L 9/18 (2006.01)
U.S. Cl. 380—37  [380/36; 380/200; 380/210; 380/239; 386/20; 386/94; 713/150] 17 Claims
OG exemplary drawing
 
1. A method of enabling access to encrypted content representing streaming audio or video content, the method comprising:
using a key and a series of initialization vectors to encrypt an unencrypted stream of content into an encrypted stream of content that is structured with constituent blocks that each are associated with one of the initialization vectors used to encrypt the unencrypted stream;
enabling a secure listener to obtain the key;
enabling the secure listener to request a particular portion of content within a content selection in a library of content selections;
relating the particular portion of content requested to a corresponding initialization vector used for encryption of the particular portion of content requested;
configuring a distribution point to provide the secure listener with access to the particular portion of content requested and the corresponding initialization vector, the distribution point providing the secure listener with access to less than all of the initialization vectors used to encrypt unencrypted stream of content for the content selection in the library of content selections;
providing the secure listener with a timeshifting interface that enables the secure listener to navigate to a second portion within the content selection that is different from the particular portion of content within the content selection in non-real time;
receiving, from the secure listener and through the timeshifting interface, a timeshifting instruction to access the second portion within the content selection that is different from the particular portion of content within the content selection in non-real time;
determining that the timeshifting instruction requires a second initialization vector that is different than the corresponding initialization vector for the particular portion of content;
providing, based on the determination that the timeshifting instruction requires a second initialization vector indicating first encryption settings for a decryption module that is different than the corresponding initialization vector indicating second encryption settings for the decryption module for the particular portion of content, the second initialization vector for the second portion of content within content selection;
providing, based on the determination that the timeshifting instruction requires a second initialization vector that is different than the corresponding initialization vector for the particular portion of content, the second initialization vector for the second portion of content within content selection; and
providing the second portion of content within the content selection.