# US 12,225,009 B2 · Content authorization and delivery

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,225,009 B2
- Document ID: US12225009B2
- Status: Granted
- Kind: B2
- Application number: 16/146,817
- Filed: 2018-09-28
- Published: 2020-04-02
- Granted: 2025-02-11
- Earliest claimed: 2018-09-28
- Assignees: Comcast Cable Communications, LLC
- Applicants: Comcast Cable Communications, LLC
- Inventors: Kyong Park; Jason Burgess; Garey Hassler; Greg Rutz
- Web page: https://patentgrep.com/patent/US12225009B2

## CPC

- H04L 63/10: {for controlling access to devices or network resources}
- H04L 63/08: {for authentication of entities (cryptographic mechanisms or cryptographic arrangements for entity authentication H04L9/32)}
- H04L 63/108: {when the policy decisions are valid for a limited amount of time}
- H04L 65/1063: Application servers providing network services (systems providing special services to telephonic subscribers H04M3/42)
- H04L 65/612: for unicast
- H04L 63/0807: {using tickets, e.g. Kerberos (cryptographic mechanisms or cryptographic arrangements for entity authentication using tickets or tokens H04L9/3213)}
- H04L 67/02: based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L 67/306: User profiles
- H04L 67/535: {Tracking the activity of the user (network monitoring arrangements H04L43/00; recording of computer activity G06F11/34)}
- H04L 67/563: Data redirection of data network streams
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Authorization and delivery of content may employ uniform resource signing packages. A uniform resource signing package may comprise access parameters for a content item, user, and/or device, and may be sent to the client as a uniform resource query parameter. The client may include the uniform resource signing package in future requests associated with the content item.

## Claims

### Claim 1

A method comprising:
receiving, by a computing device and from a user device, a manifest file request comprising a uniform resource signing package as a query parameter to allow it to remain unaltered as the manifest file request is routed to the computing device, wherein the uniform resource signing package comprises information indicating a requested content item;
verifying, based on the uniform resource signing package and the manifest file request, that the user device is to be permitted access to the requested content item;
sending, by the computing device, based on the verifying, and to the user device, a response comprising a manifest file for the requested content item, wherein the manifest file comprises the uniform resource signing package and a listing of fragments of the requested content item; and
receiving, from the user device, a plurality of fragment requests for the fragments of the requested content item, wherein each of the fragment requests comprises a copy of the uniform resource signing package as a query parameter.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
sending a plurality of responses, wherein each of the plurality of responses comprises an instruction to store a same copy of the uniform resource signing package as a cookie.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
receiving a subsequent request from the user device and for the requested content item; and
sending, to the user device, a response to the subsequent request that:
denies the subsequent request; and
redirects the user device to an access server that provided the user device with the uniform resource signing package.

### Claim 4 (depends on 1)

The method of claim 1, wherein the query parameter is a uniform resource locator (URL) query string.

### Claim 5 (depends on 1)

The method of claim 1, further comprising:
receiving a message from an access server that generated the uniform resource signing package, wherein the message comprises a modification to an access permission comprised in the uniform resource signing package; and
denying, based on the message, a subsequent request from the user device and for the requested content item.

### Claim 6 (depends on 1)

The method of claim 1, wherein the manifest file comprises a uniform resource locator (URL) for the requested content item, and the uniform resource signing package is included in the URL as a query parameter.

### Claim 7 (depends on 1)

The method of claim 1, wherein the sending the response comprising the manifest file comprises sending the manifest file in response to the manifest file request without using the uniform resource signing package to determine whether to grant the manifest file request.

### Claim 8

A method comprising:
receiving, by a computing device and from a user device, a request for a manifest file for a requested content item, wherein the request comprises path information for the requested content item, and wherein, appended to the path information, is a query string comprising: signed information indicating access parameters for the user device and the requested content item;
verifying, based on the request, that the user device has access to the requested content item;
sending, by the computing device and to the user device, the manifest file, wherein the manifest file comprises a copy of the signed information indicating the access parameters for the user device and the requested content item; and
receiving a plurality of fragment requests for fragments of the requested content item, wherein each of the fragment requests comprises a copy of the signed information.

### Claim 9 (depends on 8)

The method of claim 8, wherein the manifest file indicates that a uniform resource signing package, comprising the signed information, is part of a uniform resource locator (URL) address in the manifest file.

### Claim 10 (depends on 8)

The method of claim 8, further comprising:
monitoring a video stream of the requested content item;
determining, based on the monitored video stream, that a change to the access parameters is needed; and
sending a message indicating that a change to the access parameters is needed.

### Claim 11 (depends on 10)

The method of claim 10, wherein the change to the access parameters comprises a change to a validity period that is indicated in the query string.

### Claim 12 (depends on 8)

The method of claim 8, further comprising communicating, by the computing device and with one or more parameter enforcement computing devices, to determine whether the request should be granted.

### Claim 13 (depends on 8)

The method of claim 8, further comprising:
determining that an access parameter for the requested content item is to be changed;
denying a subsequent request from the user device; and
redirecting the user device to obtain a new signing package that is based on a changed access parameter.

### Claim 14

A computing device comprising:
one or more processors; and
memory storing instructions that, when executed by the one or more processors, configure the computing device to:
receive, from a user device, a manifest file request comprising a uniform resource signing package as a query parameter to allow it to remain unaltered as the manifest file request is routed to the computing device, wherein the uniform resource signing package comprises information indicating a requested content item;
verify, based on the uniform resource signing package and the manifest file request, that the user device is to be permitted access to the requested content item;
send, based on the verifying and to the user device, a response comprising a manifest file for the requested content item, wherein the manifest file comprises the uniform resource signing package and a listing of fragments of the requested content item; and
receive, from the user device, a plurality of fragment requests for the fragments of the requested content item, wherein each of the fragment requests comprises a copy of the uniform resource signing package as a query parameter.

### Claim 15 (depends on 14)

The computing device of claim 14, wherein the instructions, when executed by the one or more processors, further configure the computing device to:
send a plurality of responses, wherein each of the plurality of responses comprises an instruction to store a same copy of the uniform resource signing package as a cookie.

### Claim 16 (depends on 14)

The computing device of claim 14, wherein the instructions, when executed by the one or more processors, further configure the computing device to:
receive a subsequent request from the user device and for the requested content item; and
send, to the user device, a response to the subsequent request that:
denies the subsequent request; and
redirects the user device to an access server that provided the user device with the uniform resource signing package.

### Claim 17 (depends on 14)

The computing device of claim 14, wherein the query parameter is a uniform resource locator (URL) query string.

### Claim 18 (depends on 14)

The computing device of claim 14, wherein the instructions, when executed by the one or more processors, further configure the computing device to:
receive a message from an access server that generated the uniform resource signing package, wherein the message comprises a modification to an access permission comprised in the uniform resource signing package; and
deny, based on the message, a subsequent request from the user device and for the requested content item.

### Claim 19 (depends on 14)

The computing device of claim 14, wherein the manifest file comprises a uniform resource locator (URL) for the requested content item, and the uniform resource signing package is included in the URL as a query parameter.

### Claim 20 (depends on 14)

The computing device of claim 14, wherein the instructions, when executed by the one or more processors, further configure the computing device to send the response comprising the manifest file by sending the manifest file in response to the manifest file request without using the uniform resource signing package to determine whether to grant the manifest file request.

### Claim 21

A system comprising:
a computing device and a user device,
wherein the computing device comprises: one or more processors; and
memory storing instructions that, when executed by the one or more processors of the computing device, configure the computing device to:
receive, from the user device, a manifest file request comprising a uniform resource signing package as a query parameter to allow it to remain unaltered as the manifest file request is routed to the computing device, wherein the uniform resource signing package comprises information indicating a requested content item;
verify, based on the uniform resource signing package and the manifest file request, that the user device is to be permitted access to the requested content item;
send, based on the verifying and to the user device, a response comprising a manifest file for the requested content item, wherein the manifest file comprises the uniform resource signing package and a listing of fragments of the requested content item; and
receive, from the user device, a plurality of fragment requests for the fragments of the requested content item, wherein each of the fragment requests comprises a copy of the uniform resource signing package as a query parameter, and
wherein the user device comprises:
one or more processors; and
memory storing instructions that, when executed by the one or more processors of the user device, configure the user device to send the manifest file request.

### Claim 22 (depends on 21)

The system of claim 21, wherein the instructions in the memory of the computing device, when executed by the one or more processors of the computing device, configure the computing device to:
send a plurality of responses, wherein each of the plurality of responses comprises an instruction to store a same copy of the uniform resource signing package as a cookie.

### Claim 23 (depends on 21)

The system of claim 21, wherein the instructions in the memory of the computing device, when executed by the one or more processors of the computing device, configure the computing device to:
receive a subsequent request from the user device and for the requested content item; and
send, to the user device, a response to the subsequent request that:
denies the subsequent request; and
redirects the user device to an access server that provided the user device with the uniform resource signing package.

### Claim 24 (depends on 21)

The system of claim 21, wherein the query parameter is a uniform resource locator (URL) query string.

### Claim 25 (depends on 21)

The system of claim 21, wherein the instructions in the memory of the computing device, when executed by the one or more processors of the computing device, configure the computing device to:
receive a message from an access server that generated the uniform resource signing package, wherein the message comprises a modification to an access permission comprised in the uniform resource signing package; and
deny, based on the message, a subsequent request from the user device and for the requested content item.

### Claim 26 (depends on 21)

The system of claim 21, wherein the manifest file comprises a uniform resource locator (URL) for the requested content item, and the uniform resource signing package is included in the URL as a query parameter.

### Claim 27 (depends on 21)

The system of claim 21, wherein the instructions in the memory of the computing device, when executed by the one or more processors of the computing device, configure the computing device to send the response comprising the manifest file by sending the manifest file in response to the manifest file request without using the uniform resource signing package to determine whether to grant the manifest file request.

### Claim 28

One or more non-transitory, computer-readable media storing instructions that, when executed, cause:
receiving, by a computing device and from a user device, a manifest file request comprising a uniform resource signing package as a query parameter to allow it to remain unaltered as the manifest file request is routed to the computing device, wherein the uniform resource signing package comprises information indicating a requested content item;
verifying, based on the uniform resource signing package and the manifest file request, that the user device is to be permitted access to the requested content item;
sending, by the computing device, based on the verifying, and to the user device, a response comprising a manifest file for the requested content item, wherein the manifest file comprises the uniform resource signing package and a listing of fragments of the requested content item; and
receiving, from the user device, a plurality of fragment requests for the fragments of the requested content item, wherein each of the fragment requests comprises a copy of the uniform resource signing package as a query parameter.

### Claim 29 (depends on 28)

The one or more non-transitory, computer-readable media of claim 28, wherein the instructions, when executed, further cause:
sending a plurality of responses, wherein each of the plurality of responses comprises an instruction to store a same copy of the uniform resource signing package as a cookie.

### Claim 30 (depends on 28)

The one or more non-transitory, computer-readable media of claim 28, wherein the instructions, when executed, further cause:
receiving a subsequent request from the user device and for the requested content item; and
sending, to the user device, a response to the subsequent request that:
denies the subsequent request; and
redirects the user device to an access server that provided the user device with the uniform resource signing package.

### Claim 31 (depends on 28)

The one or more non-transitory, computer-readable media of claim 28, wherein the query parameter is a uniform resource locator (URL) query string.

### Claim 32 (depends on 28)

The one or more non-transitory, computer-readable media of claim 28, wherein the instructions, when executed, further cause:
receiving a message from an access server that generated the uniform resource signing package, wherein the message comprises a modification to an access permission comprised in the uniform resource signing package; and
denying, based on the message, a subsequent request from the user device and for the requested content item.

### Claim 33 (depends on 28)

The one or more non-transitory, computer-readable media of claim 28, wherein the manifest file comprises a uniform resource locator (URL) for the requested content item, and the uniform resource signing package is included in the URL as a query parameter.

### Claim 34 (depends on 28)

The one or more non-transitory, computer-readable media of claim 28, wherein the instructions, when executed, further cause the sending the response comprising the manifest file by causing sending the manifest file in response to the manifest file request without using the uniform resource signing package to determine whether to grant the manifest file request.

### Claim 35

A computing device comprising:
one or more processors; and
memory storing instructions that, when executed by the one or more processors, configure the computing device to:
receive, from a user device, a request for a manifest file for a requested content item, wherein the request comprises path information for the requested content item, and wherein, appended to the path information, is a query string comprising signed information indicating access parameters for the user device and the requested content item;
verify, based on the request, that the user device has access to the requested content item;
send, to the user device, the manifest file, wherein the manifest file comprises a copy of the signed information indicating the access parameters for the user device and the requested content item; and
receive a plurality of fragment requests for fragments of the requested content item, wherein each of the fragment requests comprises a copy of the signed information.

### Claim 36 (depends on 35)

The computing device of claim 35, wherein the manifest file indicates that a uniform resource signing package, comprising the signed information, is part of a uniform resource locator (URL) address in the manifest file.

### Claim 37 (depends on 35)

The computing device of claim 35, wherein the instructions, when executed by the one or more processors, configure the computing device to:
monitor a video stream of the requested content item;
determine, based on the monitored video stream, that a change to the access parameters is needed; and
send a message indicating that a change to the access parameters is needed.

### Claim 38 (depends on 37)

The computing device of claim 37, wherein the change to the access parameters comprises a change to a validity period that is indicated in the query string.

### Claim 39 (depends on 35)

The computing device of claim 35, wherein the instructions, when executed by the one or more processors, configure the computing device to communicate, with one or more parameter enforcement computing devices, to determine whether the request should be granted.

### Claim 40 (depends on 35)

The computing device of claim 35, wherein the instructions, when executed by the one or more processors, configure the computing device to:
determine that an access parameter for the requested content item is to be changed;
deny a subsequent request from the user device; and
redirect the user device to obtain a new signing package that is based on a changed access parameter.

### Claim 41

A system comprising:
a computing device and a user device,
wherein the computing device comprises:
one or more processors; and
memory storing instructions that, when executed by the one or more processors of the computing device, configure the computing device to:
receive, from the user device, a request for a manifest file for a requested content item, wherein the request comprises path information for the requested content item, and wherein, appended to the path information, is a query string comprising signed information indicating access parameters for the user device and the requested content item;
verify, based on the request, that the user device has access to the requested content item;
send, to the user device, the manifest file, wherein the manifest file comprises a copy of the signed information indicating the access parameters for the user device and the requested content item; and
receive a plurality of fragment requests for fragments of the requested content item, wherein each of the fragment requests comprises a copy of the signed information, and
wherein the user device comprises:
one or more processors; and
memory storing instructions that, when executed by the one or more processors of the user device, configure the user device to send the request for the manifest file.

### Claim 42 (depends on 41)

The system of claim 41, wherein the manifest file indicates that a uniform resource signing package, comprising the signed information, is part of a uniform resource locator (URL) address in the manifest file.

### Claim 43 (depends on 41)

The system of claim 41, wherein the instructions in the memory of the computing device, when executed by the one or more processors of the computing device, configure the computing device to:
monitor a video stream of the requested content item;
determine, based on the monitored video stream, that a change to the access parameters is needed; and
send a message indicating that a change to the access parameters is needed.

### Claim 44 (depends on 43)

The system of claim 43, wherein the change to the access parameters comprises a change to a validity period that is indicated in the query string.

### Claim 45 (depends on 41)

The system of claim 41, wherein the instructions in the memory of the computing device, when executed by the one or more processors of the computing device, configure the computing device to communicate, with one or more parameter enforcement computing devices, to determine whether the request should be granted.

### Claim 46 (depends on 41)

The system of claim 41, wherein the instructions in the memory of the computing device, when executed by the one or more processors of the computing device, configure the computing device to:
determine that an access parameter for the requested content item is to be changed;
deny a subsequent request from the user device; and
redirect the user device to obtain a new signing package that is based on a changed access parameter.

### Claim 47

One or more non-transitory, computer-readable media storing instructions that, when executed, cause:
receiving, by a computing device and from a user device, a request for a manifest file for a requested content item, wherein the request comprises path information for the requested content item, and wherein, appended to the path information, is a query string comprising signed information indicating access parameters for the user device and the requested content item;
verifying, based on the request, that the user device has access to the requested content item;
sending, by the computing device and to the user device, the manifest file, wherein the manifest file comprises a copy of the signed information indicating the access parameters for the user device and the requested content item; and
receiving a plurality of fragment requests for fragments of the requested content item, wherein each of the fragment requests comprises a copy of the signed information.

### Claim 48 (depends on 47)

The one or more non-transitory, computer-readable media of claim 47, wherein the manifest file indicates that a uniform resource signing package, comprising the signed information, is part of a uniform resource locator (URL) address in the manifest file.

### Claim 49 (depends on 47)

The one or more non-transitory, computer-readable media of claim 47, wherein the instructions, when executed, cause:
monitoring a video stream of the requested content item;
determining, based on the monitored video stream, that a change to the access parameters is needed; and
sending a message indicating that a change to the access parameters is needed.

### Claim 50 (depends on 49)

The one or more non-transitory, computer-readable media of claim 49, wherein the change to the access parameters comprises a change to a validity period that is indicated in the query string.

### Claim 51 (depends on 47)

The one or more non-transitory, computer-readable media of claim 47, wherein the instructions, when executed, cause communicating, by the computing device and with one or more parameter enforcement computing devices, to determine whether the request should be granted.

### Claim 52 (depends on 47)

The one or more non-transitory, computer-readable media of claim 47, wherein the instructions, when executed, cause:
determining that an access parameter for the requested content item is to be changed;
denying a subsequent request from the user device; and
redirecting the user device to obtain a new signing package that is based on a changed access parameter.
