Objective-C
Objective-C
Generate a Unique Key for an Email
Demonstrates how to generate a unique key for an email.Chilkat Objective-C Downloads
#import <CkoEmail.h>
#import <NSString.h>
BOOL success = NO;
CkoEmail *email = [[CkoEmail alloc] init];
success = [email LoadEml: @"qa_data/eml/someEmail.eml"];
if (success != YES) {
NSLog(@"%@",email.LastErrorText);
return;
}
// The ComputeGlobalKey method computes a global unique key for an email that may be used as a
// key for a relational database table (or anything else).
// The key is created by a digest-MD5 hash of the concatenation of the following header fields:
// Message-ID, Subject, From, Date, To. (The header fields are Q/B decoded if necessary,
// converted to the utf-8 encoding, concatenated, and hashed using MD5.)
// The 16-byte MD5 hash is returned as an encoded string (such as base64, url, hex, etc.)
// If the bFold argument is true, then the 16-byte MD5 hash is folded to 8 bytes with an XOR to produce a shorter key.
BOOL bFold = NO;
NSString *key = [email ComputeGlobalKey2: @"hex" bFold: bFold];
NSLog(@"%@%@",@"key: ",key);