IP Library Granted Patent US 7,734,042
Granted Patent B2
US 7,734,042 · App. 11/019,110 · Granted Jun 8, 2010

System and method for using a streaming protocol

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 7,734,042
App. No.
11/019,110
Granted
Jun 8, 2010
Kind
B2
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 (45)

1. A distribution point configured to use a broadcaster component of a streaming protocol that enables a broadcaster to establish a stream on the distribution point, the distribution point comprising:

a protocol interface structured and arranged to establish distribution of the stream on the distribution point using a single establishment message, the single establishment message comprising:

an expectation parameter indicating how the distribution point should respond if the streaming message is accepted,

a user agent parameter enabling software on the broadcaster to self identify,

a protocol identifier,

a broadcaster identifier, and

a content type identifier; and

a stream distribution engine structured and arranged to enable one or more listeners to access the stream.

2. The distribution point of claim 1 wherein the expectation parameter indicates that the distribution point should respond with a 100 continue message upon a successful connection.

3. The distribution point of claim 1 wherein the expectation parameter indicates that the distribution point should respond with a 200 continue message upon a successful connection.

4. The distribution point of claim 1 wherein the user agent parameter includes text indicating ‘ultravox’.

5. The distribution point of claim 1 wherein the protocol identifier includes a protocol version number.

6. The distribution point of claim 1 wherein the broadcaster identifier includes a user name or identifier for the broadcaster.

7. The distribution point of claim 1 wherein the single establishment message further comprises:

an authentication profile for the broadcaster, and

an authentication profile.

8. The distribution point of claim 7 wherein the authentication profile comprises an integer identifying the type of the authentication token.

9. The distribution point of claim 7 wherein the authentication token relates to a shared secret between an application server and the distribution point.

10. The distribution point of claim 1 wherein the content type identifier is configured to indicate that the underlying content includes a stream of Ultravox frames.

11. The distribution point of claim 1 wherein the single establishment message further comprises a bandwidth profile.

12. The distribution point of claim 11 wherein the bandwidth profile is configured to identify one or more bit rates at which the stream is provided.

13. The distribution point of claim 1 wherein the distribution point is configured to:

enable access to an encrypted stream;

receive a request from a listener with a time code requesting access to the encrypted stream beginning with a particular portion;

identify an encrypted block in the encrypted stream associated with the time code;

identify an initialization vector associated with the encrypted block; and

provide the initialization vector and encrypted block to the listener.

14. The distribution point of claim 13 the distribution point is further configured to provide the initialization vector in a metadata message to convey information descriptive of underlying content in the stream.

15. A distribution point configured to use a listener component of a streaming protocol that enables a listener to access a stream being distributed on the distribution point, the distribution point comprising:

a protocol interface structured and arranged to establish distribution of the stream on the distribution point in response to a listener request, the listener request comprising:

a path identifier,

a host identifier,

a user agent identifier,

a protocol identifier,

an accept code, and

a time code; and

a stream distribution engine structured and arranged to:

access the stream in response to receiving a single establishment message, the single establishment message comprising: an expectation parameter indicating how the distribution point should respond if the streaming message is accepted, and a user agent parameter enabling software on the broadcaster to self identify; and

enable one or more listeners to access the stream.

16. The distribution point of claim 15 wherein the path identifier is configured to specify a directory structure where the stream may be accessed.

17. The distribution point of claim 15 wherein the host identifier is configured to specify a host where the stream may be accessed.

18. The distribution point of claim 15 wherein the user-agent identifier is configured to describe the listener.

19. The distribution point of claim 15 wherein the protocol identifier is configured to specify a version of the protocol used to support access to the stream.

20. The distribution point of claim 15 wherein the accept code is configured to specify how the distribution point should respond to the user request.

21. The distribution point of claim 15 wherein the time code is configured to indicate a portion of the stream at which point access should begin.

Assignments (7)
CHANGE OF NAME Recorded Dec 20, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058961/0436 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 3, 2012
From: AOL INC.
To: FACEBOOK, INC.
Reel/Frame 028487/0602 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 16, 2010
From: BANK OF AMERICA, N A
To: AOL INC; AOL ADVERTISING INC; GOING INC; LIGHTNINGCAST LLC; MAPQUEST, INC; NETSCAPE COMMUNICATIONS CORPORATION; QUIGO TECHNOLOGIES LLC; SPHERE SOURCE, INC; TACODA LLC; TRUVEO, INC; YEDDA, INC
Reel/Frame 025323/0416 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 31, 2009
From: AOL LLC
To: AOL INC.
Reel/Frame 023723/0645 →
CHANGE OF NAME Recorded Dec 31, 2009
From: AMERICA ONLINE, INC.
To: AOL LLC
Reel/Frame 023723/0585 →
SECURITY AGREEMENT Recorded Dec 14, 2009
From: AOL INC.; AOL ADVERTISING INC.; BEBO, INC.; ICQ LLC; GOING, INC.; LIGHTNINGCAST LLC; MAPQUEST, INC.; NETSCAPE COMMUNICATIONS CORPORATION; QUIGO TECHNOLOGIES LLC; SPHERE SOURCE, INC.; TACODA LLC; TRUVEO, INC.; YEDDA, INC.
To: BANK OF AMERICAN, N.A. AS COLLATERAL AGENT
Reel/Frame 023649/0061 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 16, 2005
From: PARE, DAVID F.; BIDERMAN, DAVID L.; LOOMIS, STEPHEN E.; BROWN, SCOTT K.; WISE, MICHAEL; WEXELBLAT, DAVID; CAHILL, CONOR P.; BILL, DAVID S.
To: AMERICA ONLINE, INC.
Reel/Frame 017026/0895 →