Objective-C
Objective-C
RSA Encrypt with Modulus and Exponent
See more RSA Examples
Demonstrates how to RSA encrypt with a given modulus and exponent.Chilkat Objective-C Downloads
#import <CkoRsa.h>
#import <NSString.h>
#import <CkoXml.h>
#import <CkoPublicKey.h>
BOOL success = NO;
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
CkoRsa *rsa = [[CkoRsa alloc] init];
// Assuming you already have a base64 modulus and exponent,
// wrap it in XML like this:
NSString *modulus = @"qMBRpdYrAy5aMmo31NErUizh5sbweguSmh4wlK6uJEIDl+kwTlROnE34KOFExeTbJSX0WygPi+vWl0yNq7buIMUKpytossAAWut5khO3CQJxTk7G2gnEPNUUXHiExGgNrLzcSLv8YIlfVALhoRWyC67KOL+a+3taNq3h+BHeWhM=";
NSString *exponent = @"AQAB";
CkoXml *xml = [[CkoXml alloc] init];
xml.Tag = @"RSAPublicKey";
[xml NewChild2: @"Modulus" content: modulus];
[xml NewChild2: @"Exponent" content: exponent];
CkoPublicKey *pubKey = [[CkoPublicKey alloc] init];
success = [pubKey LoadFromString: xml];
if (success == NO) {
NSLog(@"%@",pubKey.LastErrorText);
return;
}
success = [rsa UsePublicKey: pubKey];
if (success == NO) {
NSLog(@"%@",rsa.LastErrorText);
return;
}
BOOL usePrivateKey = NO;
NSString *plainText = @"message in a bottle";
rsa.EncodingMode = @"base64";
NSString *encryptedStrBase64 = [rsa EncryptStringENC: plainText bUsePrivateKey: usePrivateKey];
NSLog(@"%@",encryptedStrBase64);