NAME

OMA::Download::DRM - Perl extension for packing DRM objects according to OMA DRM 1.0 specification

SYNOPSIS

  use OMA::Download::DRM;
  
  # Forward-Lock
  my $drm = OMA::Download::DRM->new(
				'content-type' => 'image/gif', 
				'data' => 'GIF image binary data REFERENCE here'
			);
  print "Content-type: ".$drm->mime."\n\n";                     # prints appropriate MIME type
  print $drm->fw_lock();                                        # Forward lock
  exit;
  
  # OR

  # Combined delivery
  my $drm = OMA::Download::DRM->new(
				'content-type' => 'image/gif', 
				'data' => 'GIF image binary data REFERENCE here', 
				'domain' => 'example.com'
			);
  print "Content-type: ".$drm->mime."\n\n";                     # prints appropriate MIME type
  print $drm->combined($permission, %constraint);   	        # Combined delivery. See OMA::Download::DRM::REL
  

  # OR
  
  # Separate Delivery
  my $drm = OMA::Download::DRM->new(
				'content-type' => 'image/gif', 
				'data' => 'GIF image binary data REFERENCE here', 
				'domain' => 'example.com', 
				'key' => '128-bit ascii key'
			);
  print "Content-type: ".$drm->mime."\n";                       # prints appropriate MIME type
  print "X-Oma-Drm-Separate-Delivery: 12\n";                    # the terminal expects WAP push 12 seconds later
  print $drm->separate_content($rights_issuer, $content_name);  # prints encrypted content
  my $rights = $drm->separate_rights($permission, %constraint)  # you have to send this rights object via WAP Push. See OMA::Download::DRM::REL
  

DESCRIPTION

This module encodes data objects according to the Open Mobile Alliance Digital Rights Management 1.0 specification in order to control how these objects are used.

SEE ALSO

OMA::Download::DRM::REL OMA::Download::DRM::CF

OMA DRM 1.0 Specifications

REVISION INFORMATION

1.00.04 First public release

AUTHOR

Bernard Nauwelaerts, <bpgn@cpan.org>

COPYRIGHT AND LICENSE

Copyright (C) 2006 by Bernard Nauwelaerts, IT Development Belgium

Released under GPL licence.