System and method for using a streaming protocol
Abstract
An initialization vector (IV) is employed to decrypt a block of a stream that has been encrypted with Cypher Block Chaining (CBC) encryption, without requiring decryption of previous blocks within the stream. For example, a listener who accesses a distribution point to retrieve encrypted content authenticates himself to an application server that regulates access to encrypted content on the distribution point, and responsively receives a key. The listener then requests access to a reference point within the encrypted content stream somewhere after its beginning (e.g., using preview clips). The distribution point relates the reference point to a corresponding block of the encrypted stream, and identifies an IV previously used for encryption of that block. The distribution point provides the associated encrypted block of content and the IV to the listener to enable mid-stream rendering of the encrypted content, without requiring the listener to decrypt previous blocks within the encrypted stream.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A method of distributing content using a distribution point, the method comprising:
receiving an instruction to distribute a stream of content on a distribution point; providing the distribution point with the stream of content; receiving a sequence of initialization vectors for the stream of content, with each initialization vector in the sequence of initialization vectors representing a setting for a particular portion of content to which a decryption engine should be set in order to decrypt the content using a key; receiving, from an application server, an indication that a request from a client device should be supported; receiving, from the client device and across a communications network, the request from the client device to access the stream of content; enabling, based on receiving the indication, the client device to access the stream of content in a connection between the client device and the distribution point; accessing, from within the request, a time mark with a temporal description of which portion of the stream of content should be transmitted to the user; relating the time mark to the sequence of initialization vectors; selecting a provided initialization vector from within the sequence of initialization vectors; and transmitting the provided initialization vector to the client device across the connection in a first metadata message.
2 . The method of claim 1 further comprising providing updates of the provided initialization vector in a later metadata message.
3 . The method of claim 1 further comprising receiving time shifting commands across the connection as a metadata command.
4 . The method of claim 1 further comprising providing a key update to a subscriber community that includes the client device using a broadcast metadata message that is transmitted across the connection.
5 . The method of claim 1 wherein receiving the instruction to distribute the stream of content on the distribution point includes receiving the request from the client device to access the stream of content.
6 . The method of claim 1 wherein receiving the instruction to distribute the stream of content on the distribution point includes receiving the request from a stream manager to enable the client device to access the stream of content.
7 . The method of claim 1 wherein receiving the instruction to distribute the stream of content on the distribution point includes receiving a response to a redirect command from the client device to access the stream of content.
8 . The method of claim 1 further comprising associating the sequence of initialization vectors with the stream of content in a table that indicates that a particular initialization vector should be used with a particular block of content.
9 . The method of claim 1 further comprising storing the stream of content with a delimiter indicating where the distribution device should segment the stream of content into different packets.
10 . The method of claim 9 further comprising storing the sequence of initialization vectors in association with the delimiters so that the distribution point is configured to transmit the initialization vector in association with a block of content within the stream of content.
11 . The method of claim 1 further comprising receiving, from a stream manager a path identifier that is configured to specify a directory structure where the stream of content may be accessed, and storing the stream of content in the directory structure as specified by the path identifier.
12 . The method of claim 1 further comprising receiving a host identifier indicating an alternative location where the stream of content is accessible.
13 . The method of claim 1 further comprising transmitting the host identifier in a redirect command.
14 . The method of claim 1 further comprising receiving a user-agent identifier is configured to describe the client device.
15 . The method of claim 14 further comprising using the user-agent identifier to authenticate the client device with the application server.Join the waitlist — get patent alerts
Track US2013173921A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.