C# Examples

ChilkatHOMEAndroid™ASPVisual BasicVB.NETC#iOS (IPhone)Objective-CC++CUnicode C++Unicode CMFCDelphi DLLDelphi ActiveXFoxProJavaPerlPHP ExtensionPHP ActiveXPythonPowerShellRubySQL ServerVBScript

C# Examples

Bounced Mail
Bz2
Character Encoding
CSV
DKIM / DomainKey
Digital Certificates
Digital Signatures
Email
Email Object
FTP
HTML Conversion
HTTP
IMAP
Encryption
MHT / HTML Email
MIME
POP3
RSA
S/MIME
SMTP
Socket
Spider
SSH
SSH Tunnel
SSH Key
SFTP
Tar Archive
Upload
XML
XMP
Zip Compression


More Examples...
Amazon S3
NTLM
FileAccess
RSS
Atom
String
Byte Array
Self-Extractor
Service
PPMD
Deflate
DH Key Exchange
DSA
Bzip2
LZW

 

 

 

 

 

 

Add DomainKey-Signature Header to MIME / Email

Demonstrates how to add a DomainKey-Signature header field to a MIME message.

Note: The DKIM / DomainKey functionality is included with the Chilkat MIME license.

Download: Chilkat .NET Assemblies

//  Important: It is helpful to send the contents of the
//  dkim.LastErrorText property when requesting support.

Chilkat.Dkim dkim = new Chilkat.Dkim();

//  Any string automatically begins a fully-functional 30-day trial.
bool success;
success = dkim.UnlockComponent("Anything for 30-day trial");
if (success != true) {
    MessageBox.Show(dkim.LastErrorText);
    return;
}

//  To create a DomainKey signature for email (i.e. MIME),
//  you'll need to provide the following:
//  (1) An RSA private key in any common file format.
//  (2) The domain name (typically the same domain
//  as the sender of an email).
//  (3) A selector for the domain name -- an arbitrary string
//  to identify the matching public key in DNS.

//  To allow an email recipient to verify the DomainKey signature via an
//  external email client supporting DomainKey or using other software,
//  you will need to create a DNS record with the selector
//  and matching public key.  This example does not provide
//  information about DomainKey DNS record creation.
//  (Chilkat does not provide an API for creating DNS records.
//  Creating the DomainKey DNS record is something you would do
//  manually.)

//  Set the domain and selector:
//  You'll need to provide your own values here..
dkim.DomainKeyDomain = "chilkatsoft.com";
dkim.DomainKeySelector = "salmon";

//  Load a private key from any common RSA private key
//  format, such as DER, PKCS8, PEM, XML, etc.
//  The LoadDomainKeyPkFile method automatically detects
//  the file format and reads it appropriately.
//  If a password is not required, you'll still need to provide
//  a password string argument, but it is ignored.
string password;
password = "optionalPassword";
success = dkim.LoadDomainKeyPkFile("myPrivateKey.pem",password);
if (success != true) {
    MessageBox.Show(dkim.LastErrorText);
    return;
}

//  Load a MIME file into a byte array.
byte[] mimeData = null;
mimeData = System.IO.File.ReadAllBytes("testMessage.eml");

//  Sign it.  This adds the DomainKey-Signature header and
//  returns the new MIME with DomainKey-Signature added.
byte[] domainKeySignedMime = null;
domainKeySignedMime = dkim.AddDomainKeySignature(mimeData);

System.IO.File.WriteAllBytes("domainKeySigned.eml", domainKeySignedMime);

MessageBox.Show("Success.");
 

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