# US 10,873,579 B2 · Dash-aware network application function (D-NAF)

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

- Number: US 10,873,579 B2
- Document ID: US10873579B2
- Status: Granted
- Kind: B2
- Application number: 15/808,748
- Filed: 2017-11-09
- Published: 2018-03-08
- Granted: 2020-12-22
- Earliest claimed: 2013-01-17
- Assignees: Apple Inc.
- Applicants: Apple Inc.
- Inventors: Ozgur Oyman
- Web page: https://patentgrep.com/patent/US10873579B2

## CPC

- H04L 63/0869: {for achieving mutual authentication (cryptographic mechanisms or cryptographic arrangements for mutual authentication H04L9/3273)}
- H04L 9/321: {involving a third party or a trusted authority}
- H04L 9/3247: {involving digital signatures}
- H04L 63/08: {for authentication of entities (cryptographic mechanisms or cryptographic arrangements for entity authentication H04L9/32)}
- H04L 63/0823: {using certificates (cryptographic mechanisms or cryptographic arrangements for entity authentication involving certificates H04L9/3263)}
- H04L 63/12: {Applying verification of the received information (cryptographic mechanisms or cryptographic arrangements for data integrity or data verification H04L9/32)}
- H04L 63/168: {above the transport layer}
- H04L 65/1045: Proxies, e.g. for session initiation protocol [SIP]
- H04L 65/60: Network streaming of media packets
- H04L 65/611: for multicast or broadcast (systems for broadcast or conference H04L12/18; arrangements for broadcast or distribution combined with broadcast H04H20/00; arrangements for broadcast applications with a direct linkage to broadcast information or to broadcast space-time H04H60/00; selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS], H04W4/06)
- H04L 65/612: for unicast
- H04L 65/765: {intermediate}
- H04L 67/02: based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04N 21/23439: {for generating different versions}
- H04N 21/25816: {involving client authentication (restricting access to computer systems by authenticating users using a predetermined code G06F21/33; cryptographic authentication protocols H04L9/32; networks authentication protocols H04L63/08; authentication in wireless network security H04W12/06)}
- H04N 21/41407: {embedded in a portable device, e.g. video client on a mobile phone, PDA, laptop (constructional details of equipment or arrangements specially adapted for portable computer application G06F1/1626; arrangements specially adapted for mobile receivers in broadcast systems H04H20/57)}
- H04N 21/4621: {Controlling the complexity of the content stream or additional data, e.g. lowering the resolution or bit-rate of the video stream for a mobile client with a small screen (arrangements for using the results of monitoring on user's side in broadcast systems H04H60/65; flow control in packet networks H04L47/10)}
- H04N 21/6175: {involving transmission via Internet (broadcast-related systems characterised by the transmission system being the Internet H04H60/82)}
- H04N 21/6181: {involving transmission via a mobile phone network (arrangements for providing broadcast or conference services to substation in data switching networks in combination with wireless systems H04L12/189; wireless uplink channel access H04W74/004)}
- H04N 21/64322: {IP}
- H04N 21/8456: {by decomposing the content in the time domain, e.g. in time segments}
- Y02D 30/70: in wireless communication networks
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION
- Y02D: CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE

## Abstract

Technology for a network application function (NAF) on a network element is disclosed. The NAF can authenticate a client using a Generic Bootstrapping Architecture (GBA)-based authentication and authorization procedure. The NAF can authorize the client for access to dynamic adaptive streaming over hypertext transfer protocol (HTTP) (DASH) content subject to content-specific policy information using the GBA-based authentication and authorization procedure. The NAF can deliver the DASH content to the client when the client is successfully authenticated and authorized using the GBA-based authentication and authorization procedure.

## Claims

### Claim 1

A server comprising a network application function (NAF), the server comprising one or more processors and memory configured to:
authenticate a client using a Generic Bootstrapping Architecture (GBA)-based authentication and authorization procedure;
authorize the client for access to dynamic adaptive streaming over hypertext transfer protocol (HTTP) (DASH) content subject to content-specific policy information using the GBA-based authentication and authorization procedure, wherein the content-specific policy information is for a specific bitrate or resolution of the DASH content;
receive, using the NAF, DASH authentication information for the DASH content and a DASH content information location in a media presentation description (MPD), wherein the DASH authentication information includes a signature and an authentication key, and the DASH content information location includes a DASH content information uniform resource locator (URL);
authorize, using the NAF, the client for access to the DASH content based upon the received DASH authentication information and the received DASH content information;
deliver the DASH content to the client when the client is successfully authenticated and authorized using the GBA-based authentication and authorization procedure; and
provide operator network authentication and authorization for a DASH service provider, wherein the NAF receives the content-specific policy information from the DASH service provider.

### Claim 2 (depends on 1)

The server of claim 1, wherein the one or more processors and memory are further configured to parse, using the NAF, a DASH media presentation description (MPD) for DASH content information that includes the content-specific policy information.

### Claim 3 (depends on 1)

The server of claim 1, wherein the one or more processors and memory are further configured to parse, using the NAF, a DASH media presentation description (MPD) for DASH content information that includes a DASH content information uniform resource locator (URL), wherein the DASH content information URL is used to authenticate a base URL for a DASH MPD, period, adaption set, or representation level, or the DASH content information URL is used to authenticate a segment URL of the MPD.

### Claim 4 (depends on 1)

The server of claim 1, wherein the one or more processors and memory are further configured to:
retrieve, using the NAF, a session key from a bootstrapping server function (BSF) including a NAF key material, profile, bootstrapping time, or key lifetime; or
retrieve, using the NAF, a content key from the BSF including a NAF key material for DASH content information.

### Claim 5 (depends on 1)

The server of claim 1, wherein the one or more processors and memory are further configured to override, using the NAF, the GAA-based authentication and authorization procedure via a bootstrapping server function (BSF) or a home subscriber subsystem (HSS).

### Claim 6 (depends on 1)

The server of claim 1, wherein the one or more processors and memory are further configured to receive, using the NAF, an authentication and authorization policy of a DASH service provider in a DASH media presentation description (MPD).

### Claim 7 (depends on 1)

The server of claim 1, wherein the one or more processors and memory are further configured to authorize, using the NAF, the client for access to the DASH content subject to a streaming plan associated with the client, wherein the streaming plan describes acceptable bitrates and resolutions for accessing the DASH content at the client.

### Claim 8 (depends on 1)

The server of claim 1, wherein the one or more processors and memory are further configured to validate, using the NAF, an integrity of delivered DASH content to ensure a defined level of content delivery accuracy.

### Claim 9 (depends on 1)

The server of claim 1, wherein the one or more processors and memory are further configured to validate, using the NAF, an integrity of a DASH media presentation description (MPD) for DASH content information.

### Claim 10 (depends on 1)

The server of claim 1, wherein the one or more processors and memory are further configured to: calculate, using the NAF, a URL signature based on the DASH content URL and the authentication key; and
reject, using the NAF, the DASH content when the calculated URL signature does not match the signature received in the DASH authentication information.

### Claim 11

At least one non-transitory machine readable storage medium having instructions embodied thereon for authenticating and authorizing a client to receive dynamic adaptive streaming over hypertext transfer protocol (HTTP) (DASH) content, the instructions when executed by one or more processors of a server performs the following:
authenticating, at the server that includes a network application function (NAF), a client using a Generic Bootstrapping Architecture (GBA)-based authentication and authorization procedure;
authorizing, at the server that includes the NAF, the client for access to dynamic adaptive streaming over hypertext transfer protocol (HTTP) (DASH) content subject to content-specific policy information using the GBA-based authentication and authorization procedure, wherein the content-specific policy information is for a specific bitrate or resolution of the DASH content;
receive, using the NAF, DASH authentication information for the DASH content and a DASH content information location in a media presentation description (MPD), wherein the DASH authentication information includes a signature and an authentication key, and the DASH content information location includes a DASH content information uniform resource locator (URL);
authorize, using the NAF, the client for access to the DASH content based upon the received DASH authentication information and the received DASH content information;
delivering, from the server that includes the NAF, the DASH content to the client when the client is successfully authenticated and authorized using the GBA-based authentication and authorization procedure; and
providing, from the server that includes the NAF, operator network authentication and authorization for a DASH service provider, wherein the NAF received the content-specific policy information from the DASH service provider.

### Claim 12 (depends on 11)

The at least one non-transitory machine readable storage medium of claim 11, further comprising instructions when executed by the one or more processors performs the following: receiving an authentication and authorization policy of a DASH service provider in a DASH media presentation description (MPD).

### Claim 13 (depends on 11)

The at least one non-transitory machine readable storage medium of claim 11, further comprising instructions when executed by the one or more processors performs the following: authorizing the client for access to the DASH content subject to a streaming plan associated with the client, wherein the streaming plan describes acceptable bitrates and resolutions for accessing the DASH content at the client.

### Claim 14 (depends on 11)

The at least one non-transitory machine readable storage medium of claim 11, further comprising instructions when executed by the one or more processors performs the following: validating an integrity of delivered DASH content to ensure a defined level of content delivery accuracy.

### Claim 15 (depends on 11)

The at least one non-transitory machine readable storage medium of claim 11, further comprising instructions when executed by the one or more processors performs the following: validating an integrity of a DASH media presentation description (MPD) for DASH content information.

### Claim 16

A server that includes a network application function (NAF), the server comprising one or more processors and memory configured to:
authenticate, using the NAF, a client using a Generic Bootstrapping Architecture (GBA)-based authentication and authorization procedure;
authorize, using the NAF, the client for access to dynamic adaptive streaming over hypertext transfer protocol (HTTP) (DASH) content subject to content-specific policy information using the GBA-based authentication and authorization procedure, wherein the content-specific policy information is for a specific bitrate or resolution of the DASH content;
receive DASH authentication information for the DASH content and a DASH content information location in a media presentation description (MPD), wherein the DASH authentication information includes a signature and an authentication key, and the DASH content information location includes a DASH content information uniform resource locator (URL);
authorize, using the NAF, the client for access to the DASH content based upon the received DASH authentication information and the received DASH content information;
deliver the DASH content to the client when the client is successfully authenticated and authorized via the NAF using the GBA-based authentication and authorization procedure; and
provide operator network authentication and authorization for a DASH service provider, wherein the NAF receives the content-specific policy information from the DASH service provider.

### Claim 17 (depends on 16)

The server of claim 16, wherein the one or more processors and memory are further configured to parse, using the NAF, a DASH media presentation description (MPD) for DASH content information that includes the content-specific policy information.

### Claim 18 (depends on 16)

The server of claim 16, wherein the one or more processors and memory are further configured to parse, using the NAF, a DASH media presentation description (MPD) for DASH content information that includes a DASH content information uniform resource locator (URL), wherein the DASH content information URL is used to authenticate a base URL for a DASH MPD, period, adaption set, or representation level, or the DASH content information URL is used to authenticate a segment URL of the MPD.

### Claim 19 (depends on 16)

The server of claim 16, wherein the one or more processors and memory are further configured to:
retrieve, using the NAF, a session key from a bootstrapping server function (BSF) including a NAF key material, profile, bootstrapping time, or key lifetime; or
retrieve, using the NAF, a content key from the BSF including a NAF key material for DASH content information.

### Claim 20 (depends on 16)

The server of claim 16, wherein the one or more processors and memory are further configured to authorize, using the NAF, the client for access to the DASH content subject to a streaming plan associated with the client, wherein the streaming plan describes acceptable bitrates and resolutions for accessing the DASH content at the client.

### Claim 21 (depends on 16)

The server of claim 16, wherein the one or more processors and memory are further configured to:
validate, using the NAF, an integrity of delivered DASH content to ensure a defined level of content delivery accuracy; or
validate, using the NAF, an integrity of a DASH media presentation description (MPD) for DASH content information.
