Presented by: Dmitry Mogilevsky DRM Group: Archana Dutta, Haoweng Huang, Dmitry Mogilevsky, Kasem Kharbat University of Illinois Spring 2006 563.12.4 Overview of IPMP Extensions in MPEG-4 Architecture.
Motivation DRM development has occurred on many simultaneous fronts One of the results is lack of interoperability between content, players and different DRM systems. IPMP-X: Specific DRM solution by the MPEG-4 group which focuses on interoperability Ability to play different vendor's content on the same player Ability to use different IPMP systems on the same player.
Motivation(2) Design must address the Gobi Desert Scenario In the middle of the Gobi Desert, Mr. MPEG should be able to transfer content from his Panasonic player to his wife's Philips player IPMP Extension should support such request, even if the song is protected by tools that are not present on his wife's player.
Motivation(3) Gobi scenario imposes the following requirements A way to signal to the terminal which IPMP Tools are needed to consume the content Ability to retrieve the missing tools from a remote location Secure way to transfer content and tools from one player to another. Tools from different manufacturers should be able to securely communicate with each other And others...
Architecture Five elements: IPMP Tools IPMP Descriptors IPMP Elementary Streams(ES) IPMP Tool List Secure Messaging Framework More generalizable interface, compared to the IPMP original “Hooks” design
Architecture – IPMP Tools IPMP Tools Modules that perform one or more IPMP (DRM) functions Authentication Decryption Watermarking Rights Etc.. IPMP Tools are not standardized in MPEG-4 Its not possible to standardize every possible IPMP function Thus IPMP Tools are left to be defined by 3rd Party Vendors
Architecture – IPMP Descriptors and Elementary Streams IPMP Descriptors Part of MPEG-4 Object Descriptors (OD) Describe how an object is accessed and decoded Identify which IPMP Tools are used to protect the object IPMP Elementary Streams (ES) Carries IPMP specific data Key Data Rights Syntax and semantics of IPMP ES are further specified in IPMP Extension
Architecture – IPMP Tool List IPMP Tool List Specifies which tools are needed by the terminal to consume the content Enables the terminal to manage and retrieve missing tools. Carried in the Initial Object Descriptor (IOD) of the MPEG-4 stream
Architecture – Secure Messaging Framework Defines an interface by which tools communicate with Tool Manager and with each other Messaging communication was chosen over functional interfaces Messaging is handled by a conceptual entity called Message Router. Message syntax and semantics are clearly defined to facilitate inter-tool interoperability Messaging approach is more secure, easily maintainable and interoperable than functional interfaces
Flexible Protection Signalling – Tool Management IPMP Tool Elementary Stream Descriptor IPMP-X allows Tools to be carried as part of MPEG-4 stream Defines a new ES of type “IPMPToolStream” to do so. This stream is referenced in the IOD to allow retrieval Decoding of this stream is done by the Tool Manager itself
Flexible Protection Signalling IPMP Descriptor and IPMP DescriptorPointer Carries IPMP information to one or more tools keys, usage rights, mutual authentication, etc... Information about which control point the tool operates on Information about resolving contention among different tools on the same control point Location determines whether tool operates on the entire MPEG-4 object, or an individual stream
Secure Messaging Framework MPEG-4 Group defines the following components of the IPMP Tool Interaction Framework Interaction between Terminal and Tools Messages (syntax and semantics) Message routing Allows different IPMP Tools, from different vendors to be plugged into the terminal and interoperate with each other and the terminal securely
Examples – Protecting MPEG-4 Content with IPMP-X Content: MPEG-4 Stream Single Audio Stream Video object with two streams Basic Layer Enhancement Layer Protection Basic Layer unprotected Enhancement Layer encrypted with AES Copyright information watermark in audio stream
Examples – Protecting MPEG-4 Content with IPMP-X • Tools • Tool X can do AES decryption • Tool Y can do Watermark Detection • IPMP Tool List is constructed for these two tools and placed in IOD • Can also include tool elementary streams for easy retrieval
Gobi Desert Scenario Bob wants to listen to content for IPMP-A Bob connects his device to Alice's Locates the content using inter-device messages, and requests a download The two devices mutually authenticate using IPMP-X interdevice messges and establish a secure channel Content is security downloaded using the secure channel Bob's device checks the tool list of the content and determines IPMP-A is not on the device, nor is it in the IPMP Tool ES in the content stream
Gobi Desert Scenario Bob's device connects to Alice's and requests the missing IPMP-A tool. Devices mutually authenticate IPMP-A is transferred to Bob's device, using IPMP-X inter-device tool transfer messages. Bob can now play the content locally using IPMP-A tool. This requires previously established trust (which is the focus of our project)
Questions? • Ming Ji, SM Shen, “MPEG-4 IPMP Extension for Interoperable Protection of Multimedia Content”. EURASIP Journal of Advanced Signal Processing. http://www.cs.missouri.edu/~zeng/MPEG-4_IPMP_final_manuscript.pdf • Rob Koenen, “Overview of the MPEG-4 Standard”, http://www.chiariglione.org/mpeg/standards/mpeg-4/mpeg-4.htm