SolutionsTools & SDKSupportForums Register



Quick Links
 
OMA-DRM
 
 

Support for Digital Rights Management (DRM) is becoming more and more widespread across mobile devices. Openwave provides support for a broad range of DRM specifications and implementations via Openwave Download Manager (ODM). There are three classes of DRM that are specified by the Open Mobile Alliance (OMA) DRM specifications: Forward-Lock, Combined Delivery, and Separate Delivery. Separate delivery is the most flexible and powerful of the three because it separates objects from the rights to actually use an object, therefore enabling re-distribution of content while keeping it protected. Since ODM does the work of applying the OMA-DRM for handsets which support the standard, the burden is lifted from the content developer and high value content can be safely introduced into the mobile space. We'll take a closer look at exactly how OMA DRM works, and what the rights objects look like.

A device will declare support for OMA-DRM by including one of the following sets of strings in the http accept header:

  • Forward-lock
    • application/vnd.oma.drm.message
  • Combined delivery
    • application/vnd.oma.drm.message
    • application/vnd.oma.drm.rights+xml
  • Separate delivery
    • application/vnd.oma.drm.rights+xml
    • application/vnd.oma.drm.rights+wbxml
    • application/vnd.oma.drm.content

As you might note, support builds on it self, so a device that supports combined delivery also supports forward-lock, and a device that supports separate delivery also supports combined delivery and forward lock. To help you better understand exactly what is implied by each of the following methods what follows here are descriptions, illustrations, and sample of what actually gets delivered over the air to a device. Note that when the rights are applied to an object, the object is delivered as a multipart format.

  • Forward Lock DRM
    • Content inside DRM Message (MIME wrapper)
    • Content should not be forwarded by device


    In the case of simple forward lock, an additional HTTP header is applied to the object that looks like:
    
    		Content-type: application/vnd.oma.drm.message; boundary=boundary-1 
    		Content-Length: 574 
    		--boundary-1 
    		Content-type: image/jpeg 
    		Content-Transfer-Encoding: binary 
    		...jpeg image in binary format...
    		 --boundary-1--

    Notice that the only part of the multipart is the object itself. Since the lowest common denominator of OMA-DRM is forward-lock, completely omitting a specific rights object implies the forward-lock.
  • Combined Delivery
    • Content inside DRM Message (MIME wrapper)
    • Rights object (XML document) added within the message
    • Enables content preview with forward lock

  • When the object is delivered to the handset the rights object that accompanies the object itself will look something like what follows below:
    
    	Content-type: application/vnd.oma.drm.message; boundary=boundary-1 
    	Content-Length: 893 
    	--boundary-1 
    	Content-type: application/vnd.oma.drm.rights+xml 
    	Content-Transfer-Encoding: binary 
        
    	
    	<o-ex:rights xmlns:o-ex="http://odrl.net/1.1/ODRL-EX" xmlns:o-dd="http://odrl.net/1.1/ODRL-DD" > 
    	<o-ex:context> 
    		<o-dd:version>1.0</o-dd:version> 
    	</o-ex:context> 
    	<o-ex:agreement> 
    		<o-ex:asset> 
    			<o-ex:context> 
    				<o-dd:uid>cid:4567829547@foo.com</o-dd:uid> 
    			</o-ex:context> 
    		</o-ex:asset> 
    		<o-ex:permission> 
    			<o-dd:play/> 
    		</o-ex:permission> 
    	</o-ex:agreement>
    	</o-ex:rights>
    	--boundary-1 
    	Content-type: image/jpeg 
    	Content-ID: <45678929547@foo.bar> 
    	Content-Transfer-Encoding: binary 
    	...jpeg image in binary format... 
    	--boundary-1--
  • Separate Delivery
    • Content inside DRM Content Format (Binary MIME wrapper)
    • Content encrypted - no restrictions on distribution, storage, etc. of protected content
    • Content encryption key is included in rights object (XML document)
    • Rights object delivered separately over trusted channel (SMS)
    • Gives higher security, but still assumes trusted device for management of rights object.
    • Enables super distribution

    • In the case of separate delivery, as the name specifies, the rights object will come as the result of an SMS message or a WAP Push. A sample of the XML format for unlimited play of an object is as follows:
      
      <o-ex:rights xmlns:o-ex="http://odrl.net/1.1/ODRL-EX" 
                   xmlns:o-dd="http://odrl.net/1.1/ODRL-DD" 
      			 xmlns:ds="http://www.w3.org/2000/09/xmldsig#/"> 
      	<o-ex:context> 
      		<o-dd:version>1.0</o-dd:version> 
      	</o-ex:context> 
      	<o-ex:agreement> 
      		<o-ex:asset> 
      			<o-ex:context> 
      				<o-dd:uid>cid:4567829547@foo.com</o-dd:uid> 
      			</o-ex:context> 
      			<ds:KeyInfo> 
      				<ds:KeyValue>vUEwR8LzEJoeiC+dgT1mgg==</ds:KeyValue> 
      			</ds:KeyInfo> 
      		</o-ex:asset> 
      		<o-ex:permission> 
      			<o-dd:play/> 
      		</o-ex:permission> 
      	</o-ex:agreement> 
      </o-ex:rights>

      Note that in the case of separate delivery, a base 64 encoded key is delivered.
  • The Openwave Download Manager will do the work of determining the capabilities of the devices that an object is being sent to, and will apply the object protection that is most appropriate for the target device. In the case where a device supports either the combined or separate delivery of rights for an object, those rights are delivered in an XML document. Also, in either case the object may come WBXML encoded instead of in plain text.

    Remember, that as a developer, you don't need to do anything additional to your objects or applications. The rights objects will be automatically applied by Openwave Download Manager when uploaded. As a content owner you have the ability to specify what type of rights you wish your content to have (e.g. play only, preview, etc...), but you don't have to worry about the specific implementation on each device out there, we take care of that for you. If you want to find out more about the OMA DRM specifications, you can download them directly from the OMA .

     
    Copyright © 2000-2008 Openwave Systems Inc.    About Us  |  Openwave  |  Terms & Conditions  |  Privacy Policy  |  Update Profile