Top Banner
MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft) Multimedia Security
38

MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

Mar 20, 2016

Download

Documents

aliya

MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft). Multimedia Security. Outline. Overview of the IPMP framework Framework architecture Walkthrough Standardized processes Messaging infrastructure. ISO/IEC 21000-4. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

MPEG-21 Part4: IPMP

ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

Multimedia Security

Page 2: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

2

Outline

• Overview of the IPMP framework– Framework architecture– Walkthrough

• Standardized processes• Messaging infrastructure

Page 3: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

3

ISO/IEC 21000-4

• An MPEG-21 IPMP framework, referred to as “IPMP Extensions”, is specified in this part of MPEG-21– The MPEG IPMP Extensions are designed so

that they can be applied to any MPEG multimedia representation

– Specific mappings of the MPEG IPMP Extensions should be defined as amendments to the MPEG-n standard

Page 4: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

4

Interoperability

• Two types of interoperability are defined

• The major focus of MPEG in general• A consumer centric approach • Content protected by one IPMP vendor will play on any given Terminal

C-interoperability

• IPMP Tools from different vendors will be able to integrate into the same Terminal implementation concurrently• An IPMP System is able to comprise IPMP Tools made by one or more vendors• Goal: to simplify the design of tool and terminal interfaces such that the integration and interoperation of these tools and terminals may be more widespread and economical

M-interoperability

Consumers’ Point of View

Manufacturers’ Point of View

Page 5: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

5

Framework Architecture

IPMP Tool ID(s)

Alternate IPMP Tool ID(s)

Parametric Tool Description(s)

IPMP Tool Elementary Stream IPMP Information

IPMP Tool List

Content

Terminal

IPMP Tool Manager

Terminal-Tool Message Interchange Interface

Missing IPMP Tools

Content Request

Content Delivery

Obtain missing IPMP Tool(s)

IPMP Tool 1 IPMP Tool n…

Terminal-IPMP Tool Communications

Message Router

Page 6: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

6

Walkthrough:(1) User Requests Specific Contents

• The manner in which content is requested is out of scope• Recommendations about the order in which different parts of the content are

received and used– IPMP requirements on the Terminal should be placed with or before media

requirements on the Terminal– Access information and/or restrictions should precede Content Stream download

information

IPMP Tool ID(s)

Alternate IPMP Tool ID(s)

Parametric Tool Description(s)

IPMP Tool Elementary Stream IPMP Information

IPMP Tool List

Content

Terminal

IPMP Tool Manager

Terminal-Tool Message Interchange Interface

IPMP Tool 1

Missing IPMP Tools

Content Request

IPMP Tool 2 …

Message Router

Page 7: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

7

Walkthrough:(2) IPMP Tools Description Access

• The Terminal access the IPMP Tool List• Using the IPMP Tool List, the Terminal determines the IPMP

Tools required to consume the content

IPMP Tool ID(s)

Alternate IPMP Tool ID(s)

Parametric Tool Description(s)

IPMP Tool Elementary Stream IPMP Information

IPMP Tool List

Content

Terminal

IPMP Tool Manager

Terminal-Tool Message Interchange Interface

Missing IPMP Tools

Access the IPMP Tool List

Receiving IPMP Tools Descriptio

n

IPMP Tool 1 …IPMP Tool 2

Message Router

Page 8: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

8

IPMP Tool ID(s)

Alternate IPMP Tool ID(s)

Parametric Tool Description(s)

IPMP Tool Elementary Stream IPMP Information

IPMP Tool List

Content

Walkthrough:(3) IPMP Tools Retrieval

• Sources of IPMP Tools– Locally available IPMP Tools– Missing IPMP Tools carried in Content itself– Missing IPMP Tools that need to be obtained remotely

Terminal

IPMP Tool Manager

Terminal-Tool Message Interchange Interface

Missing IPMP ToolsObtaining Missing IPMP Tool(s)

IPMP Tool 1 …Locally Available IPMP ToolsIPMP Tool 1 …IPMP Tool 2

ObtainingMissing

IPMP Tool(s)

IPMP Tool 1 IPMP Tool n…

All Required IPMP Tools Received

Message Router

Page 9: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

9

IPMP Tool 1 IPMP Tool n…Instantiations

Walkthrough:(4) Instantiation of IPMP Tools

• The Terminal instantiates the IPMP tools• The instantiated Tools are provided with the initial IPMP information from the

Content• IPMP Tools may use IPMP information to

– Determine security requirements for content access– Monitor and facilitate the establishment and maintenance of the security

requirements in inter-Tool communication

IPMP Tool ID(s)

Alternate IPMP Tool ID(s)

Parametric Tool Description(s)

IPMP Tool Elementary Stream IPMP Information

IPMP Tool List

Content

Terminal

IPMP Tool Manager

Terminal-Tool Message Interchange Interface

Missing IPMP Tools

Providing Initial IPMP Information

Message Router

Accessing Content

Inter-Tool Communication

Page 10: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

10

Walkthrough:(5) IPMP Initialization and Update

- in Parallel with Content Consumption

• Content consumption if allowed• IPMP Information routing• The whole walkthrough can be requested again

IPMP Tool ID(s)

Alternate IPMP Tool ID(s)

Parametric Tool Description(s)

IPMP Tool Elementary Stream IPMP Information

IPMP Tool List

Content

Terminal

IPMP Tool Manager

Terminal-Tool Message Interchange Interface

IPMP Tool 1 IPMP Tool n…

Missing IPMP Tools

Message Router

Content Consumption

IPMP Info. Routing

Page 11: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

11

Illustration of Normative Elements

IPMP Tool ID(s)

Alternate IPMP Tool ID(s)

Parametric Tool Description(s)

IPMP Tool Elementary Stream IPMP Information

IPMP Tool List

Content

Terminal

IPMP Tool Manager

Terminal-Tool Message Interchange Interface

IPMP Tool 1 IPMP Tool n…

Missing IPMP Tools

Content Request

Content Delivery

Obtain missing IPMP Tool(s)

Terminal-IPMP Tool Communications

Message Router

IPMP Tool List

Tools in the Content

Instantiation of IPMP Tools

Mutual AuthenticationIPMP Information

IPMP Information Routing

Consumption Query and Permission

The Parametric Infrastructure

Page 12: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

12

Normative Elements

• IPMP Tool List– IPMP Tool ID– Parametric Infrastructure

• Tools in the Content • Instantiation of IPMP Tools• Mutual Authentication• IPMP Information• IPMP Information Routing• Consumption Query and Permission

Page 13: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

13

IPMP Tool List

IPMP_ToolListDescriptorbit(8) IPMPToolListDescriptorID;bit(8) numTools;IPMP_Tool ipmpTool[numTools];

The container for the Tool List

IPMP_ToolParametricDescriptor

Container for a parametric description of an IPMP Tool required to access the content

ByteArray parametricDesc;

•For the case of a list of alternate IPMP tools, the Terminals shall select an IPMP Tool from the list•For the case of a parametric description of the IPMP Tool, the Terminal shall select an IPMP Tool that meets the criteria specified in the parametric description

The class describing a logical IPMP Tool required to access the content

IPMP_Toolbit(1) isAltGroup;bit(1) isParametric;bit(6) reserved=0b111111;bit(128) IPMP_ToolID;If (isAltGroup) { bit(8) numAlternates; bit(128) Alt_IPMP_ToolIDs[numAlternates];}else if(isParametric) { IPMP_ToolParametricDescriptor toolParamDescr;}

•A vendor-specific IPMP Tool specified by IPMP_ToolID

•One of a list of alternate IPMP Tools

•An IPMP Tool specified by a parametric description

Page 14: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

14

IPMP Tool ID (1/2)

• The IPMP_Tool_ID identifier– 128-bits long– Platform-independent

• A registration authority for IPMP Tools that use a unique ID is required– An association of the download URLs for

various implementations of the given tool for various platforms shall be maintained.

Page 15: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

15

IPMP Tool ID (2/2)

IPMP_Tool_ID Semantics0x0000 Forbidden0x0001 Content0x0002 Terminal0x0003-0x2000 Reserved for ISO use0x2001-0xFFFF Carry over from 14496-1 RA0x10000-0x100FF Parametric Tools or

Alternate Tools0x100FF-2^128-2 Open for registration2^128-1 Forbidden

Page 16: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

16

Parametric Infrastructure• Cases in which the tools required may not be

unique– Tools are based on popular public algorithms– A wide variety of equivalent implementations are available– Computationally intensive tools leading to platform-specific

optimized implementations form a wide variety of venders– A set of parameters and values are to be identified and

standardized to support a specific class of functionality

• Parametric Representation– Parametric Description– Parametric Aggregation

Page 17: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

17

Parametric Description

• Definition– Information that enables a Terminal to choose a

specific Tool implementation that will support all functionalities required by a presentation

• No specific schema for any specific Tool type is attempted to be defined now– It is anticipated that such definitions will be added

over time to develop an optimal schema– Only a basic framework is outlined in the current

version of the specification

Page 18: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

18

Current Parametric Description Framework

• Version of parametric description syntax• Class of Tool

– e.g. Decryption, Right Language Parser • Sub-class of Tool

– E.g. for Decryption: DES, Camellia– E.g. for Rights Language Parser: XrML, ODRL– E.g. for Protocol Parser: Bluetooth, SmartCard

• Sub-class-specific information– E.g. for DES: number of bits, block decipher capabili

ty– E.g. for Rights language Parser: version

Page 19: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

19

Parametric Aggregation

• Definitions– Information to aggregate different IPMP Tools

in a given configuration under a single entry-point IPMP Tool

• Goals– To configure existing IPMP Tools into new

combinations, enabling different types of protection schemes

Page 20: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

20

Current Parametric Aggregation Framework

• Version of parametric aggregation syntax• Entry-point Tool

– Input and output pin specification– The ID of the entry-point tool is not required

• List of member IPMP Tools (aggregation units)– A 128-bit IPMP Tool ID– One or more Input and output interface codes

• No duplication of interface codes to avoid ambiguity• Sequential links can be established

• Opaque information, specific to the entry-point tool

• Optional signal information

Page 21: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

21

Delivery of Tools via Content

• One or more Binary Representations of IPMP Tools may be carried directly or by reference in an MPEG presentation

• Required information– IPMP_Tool_ID– Tool_Format_ID

• The Binary Representation of the Tool• E.g. Platform Dependent Native Code, Java Byte Code

– Tool_Package_ID• The details of the packages of the tool• E.g. CAB, Winzip self-install executable

– Signature and Certification data

Assigned by a Registration Authority

Assigned by a Registration Authority

Page 22: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

22

IPMP Tool Instantiation

• Upon instantiation of an IPMP Tools, all IPMP Tools already instantiated by the Terminal must be notified such instantiation

• The newly instantiated IPMP Tool may request to be informed of other IPMP Tools running on the Terminal

• The process of instantiation– Establish a context for the Tool being instantiated– Establish a link between the Message Router and the

Tool instance– Establish a link between the Tool instance and the

Message Router

Page 23: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

23

Events Triggering IPMP Tools Instantiation

• Sources and requirements – The Content

• The syntax and context that trigger instantiation• The scope of protection• The relationship of one IPMP Tool with another

IPMP Tool in the same scope of protection– Another IPMP Tool

• Clear method of creation of a context for such instantiation

Page 24: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

24

IPMP Information Routing• Addressing

– Normative addressing methods are used – Addressee of a specific message is implicit either

by bit-stream context or by process context• Message router

– Handling the physical routing of information, synchronous/asynchronous delivery issues, and context resolution

– Abstract all platform-dependent issues – Both interfaces between the Message Router and

the IPMP Tools and the behavior of the Message Router are normative

Page 25: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

25

Mutual Authentication

• IPMP Tools may be required to communicate with one another or the Terminal.

• Execution of mutual authentication– The tool that initiates mutual authentication with

another tool determines the conditions of trust to be achieved by such authentication

• E.g. integrity protected communication or fully-secured communication

– Both tools engaged in message exchange to determine which authentication protocol will be used

Page 26: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

26

Credentials

• Used by an IPMP Tool or Terminal for identification, verification, mutual authentication, and similar security process.– Information about the identity and

implementation of IPMP Tools (see the recommended schema)

– A means of identifying the integrity and validity of the credential info

– Trust and security metadata– Opaque information

Page 27: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

27

A Schema for Platform Presentation (Informative)

Page 28: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

28

Permission for Consumption

• Permission for an intent on protected media in a presentation should be requested from and explicitly granted by all IPMP Tools protecting that media, prior to processing such intents.

• Permission is granted in true-false form by each IPMP Tool.

Page 29: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

29

IPMP Tool Manager

• A conceptual entity in a given IPMP Terminal– Parsing IPMP Tool List– Retrieving IPMP Tools– Processing parametric descriptions – Resolving alternative tools– Receive binary Tools that arrive in the content

Page 30: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

30

Message Router

• All IPMP Tool messages are routed through the Terminal

• The Message Router (MR) connects and communicates with supported IPMP Tools, and thus abstracts the physical interface of one IPMP Tool from other IPMP Tools that wishes to communicate with it.

Page 31: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

31

Message Infrastructure

• Normative components of the IPMP Tool Interaction Framework– Interaction (communication) is realized via

“messaging”– The generic functional interface is normative– The messages (syntax and semantics) are

normative– The process of message routing is normative

Page 32: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

32

Message Interchange Interface

IPMP_ToolMsgStatusIPMP_ReceiveMessage( [in] short Sender, //sender context ID [in] short Recipient, //recipient context ID [in] long MsgSize, //size of message in bits [in] octet Msg[], //payload [in] IPMP_MsgMode, //sync/async [in] long MsgID) //message ID, included in resp

onse message

IPMP_ToolMsgStatusAn enumerated status returned by the Terminal (MR) to the message originator

IPMP_MSG_STATUS_MSG_POSTEDIPMP_MSG_STATUS_INVALID_SENDER_IDIPMP_MSG_STATUS_INVALFID_RECIPIENT_IDIPMP_MSG_STATUS_MSG_MODE_NOT_SUPPORTEDIPMP_MSG_STATUS_GENERIC_ERROR

Page 33: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

33

IPMP Tool Messages (I)

Instantiation and Notification•IPMP_CreateNewToolInstance/IPMP_ToolInstNotification•IPMP_RequestInstTools/IPMP_ToolInstNotofication•IPMP_AddToolInstNotoficationListener (IPMP_ToolInstNotofication)•IPMP_RemoveToolInstNotoficationListener•IPMP_RequestToolContextID/IPMP_SupplyToolContextID

IPMP Information Delivery

Data Processing Functions (between terminals and tools)•IPMP_ProcessData/IPMP_ProcessDataReturn

Intent and Permission•IPMP_IntentRequest/IPMP_IntentResponse•IPMP_IntentTerminate•IPMP_IntentRevoke

Page 34: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

34

IPMP Tool Messages (II)

ToolToUserMessage (defined as a class)•languageCode: three character language code•titleText: Title of dialog display•displayText: Text to be displayed to the user•promptText: Text to be displayed to the user to indicate the purpose of text input field •optionText: text to be displayed indicating purpose of option selection•SMIL: SMIL file to be displayed

UserToToolMessage (defined as a class)•replyText: text entered by user•optionResult

Page 35: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

35

IPMP Tool Messages (III)

Mutual Authentication Messages•IPMP_InitAuthentication

•Context ID•Authentication Types

•No authentication required•No ID verify, do secure channel•No ID verify, no secure channel•Do ID verify, do secure channel

Page 36: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

36

IPMP Tool Acquisition

Content Terminal IPMP Tool Provider IPMP ToolGet Tool List

Tool ListIPMP Data

Locate Tool

Establish Channel

Acquire IPMP Tool

ToolInstantiate

Mutual AuthenticationIPMP Data

Allow Consume Content

Get Content

Content

Page 37: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

37

Failed IPMP Tool Validation

Content Terminal IPMP Tool Provider IPMP ToolGet Tool List

Tool ListIPMP Data

Locate Tool

Establish Channel

Acquire IPMP Tool

ToolInstantiate

Mutual Authentication

Failed Authentication: Consumption Terminates

Page 38: MPEG-21 Part4: IPMP ISO/IEC JTC 1/SC29/WG11 N4269 (Committee Draft)

38

Denied User Permission

Content Terminal IPMP Tool Provider IPMP ToolGet Tool List

Tool ListIPMP Data

Locate Tool

Establish Channel

Acquire IPMP Tool

ToolInstantiate

Mutual AuthenticationIPMP Data

Disallow Content Consumption