PHP
Chilkat2 PHP
Find Certificate for Email Encryption
Demonstrates finding the recipient's certificate in the Windows certificate store and using it to send encrypted email.Chilkat PHP Downloads
<?php
use Chilkat2\Cert;
use Chilkat2\Email;
use Chilkat2\MailMan;
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
$mailman = new MailMan();
// Set the SMTP server.
$mailman->SmtpHost = 'smtp.example.com';
// Create a new email object
$email = new Email();
$email->Subject = 'This email is encrypted';
$email->Body = 'This is a digitally encrypted mail';
$email->From = 'Joe <joe@example.com>';
// Emails are encrypted using the recipient's certificate.
$recipientEmailAddr = 'jane@example2.com';
$email->AddTo('Jane', $recipientEmailAddr);
// Indicate that the email is to be sent encrypted.
$email->SendEncrypted = true;
// This example demonstrates finding the email encryption certificate
// on a Windows system where the certificate is stored in the Windows
// certificate store.
$cert = new Cert();
// The recipient's certificate is used to encrypt.
// (Because the recipient is the only one in possession of the private key to decrypt.)
try {
$cert->LoadByEmailAddress($recipientEmailAddr);
} catch (\Chilkat2\Exception $e) {
echo $e->getMessage(), "\n";
exit;
}
// Specify the certificate to be used for encryption.
$email->SetEncryptCert($cert);
try {
$mailman->SendEmail($email);
echo "Encrypted Mail Sent!\n";
} catch (\Chilkat2\Exception $e) {
echo $e->getMessage(), "\n";
}