Perl Examples

ChilkatHOMEASPVisual BasicVB.NETC#Visual C++CMFCDelphiFoxProJavaPerlPHPPythonRubySQL ServerVBScript



Perl Examples

Quick Start
Perl Unicode
Perl Byte Array
Perl Certs
Perl Email
Perl Encryption
Perl FTP
HTML-to-XML
Perl HTTP
Perl IMAP
Perl MHT
Perl MIME
Perl RSA
Perl S/MIME
Perl Signatures
Perl Socket
Perl Spider
Perl Tar
Perl Upload
Perl XML
Perl XMP
Perl Zip

More Examples...
String
Email Object
POP3
SMTP
RSS
Atom
Self-Extractor
Service
PPMD
Deflate
DH Key Exchange
DSA
SSH Key
SSH
SSH Tunnel
SFTP

Unreleased...
Bzip2
LZW
Bz2
Icon

 

 

 

 

 

 

 

OMA DRM DCF - Create Separate Delivery Content Format (.dcf) and Rights Object (.dr) Files

Perl example script to create a DCF file for OMA DRM (Open Mobile Alliance Digital Rights Management). Also creates the corresponding DRM rights object file (.dr).

DRM Content Format (file extension *.dcf) contains the encrypted content. This file type is used in separate delivery where the content is encrypted into this message without the rights. The key used to encrypt the content is sent separately with the rights to the device. The MIME type for this is application/vnd.oma.drm.content.

Download Perl Programming Example Scripts

# file: omaDrmCreate.pl

use chilkat;

# Perl example program to create an OMA DRM DCF file.    
$omaDrm = new chilkat::CkOmaDrm();
$omaDrm->UnlockComponent("anything for 30-day trial");
    
# Set the content type here:
$omaDrm->set_ContentType("image/gif");
    
# Substitute your own URI here:
$omaDrm->set_ContentUri("cid:my-text-20060925101425-1396302043@site.com");
    
# Substitute your own information here, but keep the
# Encryption-Method the same.
$omaDrm->set_Headers("Encryption-Method: AES128CBC;padding=RFC2630" . 
		"\r\n" . "Content-Name: \"Orval\"" . 
		"\r\n" . "Content-Description: \"Orval\"" . 
		"\r\n" . "Content-Vendor: \"Orval\"" . 
		"\r\n" . "Icon-Uri: http://www.site.com/icons/orval2.dcf.png");
    
# You may set your initialization vector here:
$omaDrm->SetEncodedIV("00010203040506070001020304050607", "hex");

# Your Base64-key for encryption can be set here:
$omaDrm->set_Base64Key("BiVVJOQee6y4PWYL+fbvJA==");

# In this example, the content is a GIF image.
$omaDrm->LoadUnencryptedFile("orval2.gif");

# Finally, write the DCF file:
$omaDrm->CreateDcfFile("orval2.dcf");

# Create a corresponding .dr DRM Rights Object file (which is an XML formatted file).
$dr = new chilkat::CkXml();
$dr->put_Tag("o-ex:rights");
$dr->AddAttribute("xmlns:o-ex","http://odrl.net/1.1/ODRL-EX");
$dr->AddAttribute("xmlns:o-dd","http://odrl.net/1.1/ODRL-DD");
$dr->AddAttribute("xmlns:ds","http://www.w3.org/2000/09/xmldsig#/");
$context = $dr->NewChild("o-ex:context","");	
$context->NewChild2("o-dd:version","1.0");
$agreement = $dr->NewChild("o-ex:agreement","");	
$asset = $agreement->NewChild("o-ex:asset","");	
$context = $asset->NewChild("o-ex:context","");	
$context->NewChild2("o-dd:uid",'cid:my-text-20060925101425-1396302043@site.com');
$keyInfo = $asset->NewChild("ds:KeyInfo","");	
$keyInfo->NewChild2("ds:KeyValue",'BiVVJOQee6y4PWYL+fbvJA==');
$permission = $agreement->NewChild("o-ex:permission","");	
$permission->NewChild2("o-dd:display","");
$dr->SaveXml("orval2.dr");




 

Need a specific example? Send a request to support@chilkatsoft.com

© 2000-2008 Chilkat Software, Inc. All Rights Reserved.