Objective-C
Objective-C
2-Key Triple DES (112 bits)
See more Encryption Examples
Demonstrates 2-Key Triple DES encryption (112-bit 3DES encryption).Chilkat Objective-C Downloads
#import <CkoCrypt2.h>
#import <NSString.h>
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
CkoCrypt2 *crypt = [[CkoCrypt2 alloc] init];
// Specify 3DES for the encryption algorithm:
crypt.CryptAlgorithm = @"3des";
crypt.CipherMode = @"ecb";
// For 2-Key Triple-DES, use a key length of 128
// (Given that each byte's msb is a parity bit, the strength is really 112 bits).
crypt.KeyLength = [NSNumber numberWithInt:128];
// Pad with zeros
crypt.PaddingScheme = [NSNumber numberWithInt:3];
// EncodingMode specifies the encoding of the output for
// encryption, and the input for decryption.
// It may be "hex", "url", "base64", or "quoted-printable".
crypt.EncodingMode = @"hex";
// Let's create a secret key by using the MD5 hash of a password.
// The Digest-MD5 algorithm produces a 16-byte hash (i.e. 128 bits)
crypt.HashAlgorithm = @"md5";
NSString *keyHex = [crypt HashStringENC: @"secretPassword"];
// Set the encryption key:
[crypt SetEncodedKey: keyHex encoding: @"hex"];
// Encrypt
NSString *encStr = [crypt EncryptStringENC: @"The quick brown fox jumped over the lazy dog"];
NSLog(@"%@",encStr);
// Now decrypt:
NSString *decStr = [crypt DecryptStringENC: encStr];
NSLog(@"%@",decStr);