Perl Examples

ChilkatHOMEASPVisual BasicVB.NETC#Visual C++CMFCDelphiFoxProJavaPerlPHPPythonRubySQL ServerVBScript

Perl Examples

Quick Start
Unicode
Byte Array
Bz2
Certificates
CSV
Email
Encryption
FTP
HTML-to-XML
HTTP
IMAP
MHT
MIME
POP3
RSA
S/MIME
Signatures
SMTP
Socket / SSL
Spider
SFTP
SSH Key
SSH
SSH Tunnel
Tar
HTTP Upload
XML
XMP
Zip

More Examples...
String
Email Object
DKIM / DomainKey
NTLM
FileAccess
RSS
Atom
Self-Extractor
Service
PPMD
Deflate
DH Key Exchange
DSA
Bzip2
LZW

 

 

 

 

 

 

 

Send Signed Email using PFX File

Demonstrates how to send a signed email using a digital certificate w/ private key stored in a PFX file.

Download Chilkat Perl Module

use chilkat;

#  The mailman object is used for sending and receiving email.
$mailman = new chilkat::CkMailMan();

#  Any string argument automatically begins the 30-day trial.
$success = $mailman->UnlockComponent("30-day trial");
if ($success != 1) {
    print "Component unlock failed" . "\n";
    exit;
}

#  Set the SMTP server.
$mailman->put_SmtpHost("smtp.mymailserver.com");

#  Create a new email object
$email = new chilkat::CkEmail();

$email->put_Subject("This email is signed");
$email->put_Body("This is a digitally signed mail");
$email->put_From('Chilkat Admin <admin@chilkatsoft.com>');
$email->AddTo("Chilkat Support",'support@chilkatsoft.com');

#  Indicate that the email should be sent signed.
$email->put_SendSigned(1);

#  Create an instance of a certificate store object, load a PFX file,
#  locate the certificate we need, and use it for signing.
#  (a PFX file may contain more than one certificate.)
$certStore = new chilkat::CkCertStore();
#  The 1st argument is the filename, the 2nd arg is the
#  PFX file's password:
$success = $certStore->LoadPfxFile("chilkatsoft_secret.pfx","secret");
if ($success != 1) {
    print $certStore->lastErrorText() . "\n";
    exit;
}

$cert = $certStore->FindCertBySubjectE('admin@chilkatsoft.com');
if ($cert eq null ) {
    print $certStore->lastErrorText() . "\n";
    exit;
}

#  If a PFX file is known to contain a single certificate,
#  you may load it directly into a Chilkat certificate object.
#  This snippet of source code shows how:
$cert2 = new chilkat::CkCert();
#  The 1st argument is the filename, the 2nd arg is the
#  PFX file's password:
$success = $cert2->LoadPfxFile("chilkatsoft_secret.pfx","secret");
if ($success != 1) {
    print $cert->lastErrorText() . "\n";
    exit;
}

#  This example will use the cert from the certStore...
$email->SetSigningCert($cert);

#  Send a signed email.
$success = $mailman->SendEmail($email);
if ($success != 1) {
    print $mailman->lastErrorText() . "\n";
}
else {
    #  The LastErrorText property provides information
    #  even when successful.
    print $mailman->lastErrorText() . "\n";
    print "Mail Sent!" . "\n";
}

 

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

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