Cocoa Objective-C Examples

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

Objective-C Examples

Bounced Email
Digital Certificates
Digital Signatures
DKIM / DomainKey
DSA
Email Object
Encryption
FTP
HTML Conversion
HTTP
IMAP
MHT / HTML Email
POP3
RSA
MIME
SMTP
Socket
SOCKS Proxy
Spider
SSH Key
SSH
SFTP
Tar
Upload
XML
XMP
Zip


More Examples...
Amazon S3
NTLM
RSS
Atom
PPMD
Deflate
Bzip2
LZW
Diffie-Hellman
Bz2
Character Encoding
CSV

 

 

 

 

 

 

 

 

Create PKCS1 RSA Signature with PEM Private Key

Demonstrates how to load a private key from a PEM file and create a PKCS1 RSA digital signature.

Download: Chilkat Cocoa Objective-C Libraries

NSMutableString *strOutput = [NSMutableString stringWithCapacity:1000];

CkoPrivateKey *pkey = [[[CkoPrivateKey alloc] init] autorelease];

//  Load the private key from an RSA PEM file:
[pkey LoadPemFile: @"pvkey2_rsa.pem"];

BOOL success;

NSString *pkeyXml;
//  Get the private key in XML format:
pkeyXml = [pkey GetXml];

CkoRsa *rsa = [[[CkoRsa alloc] init] autorelease];

//  Any string argument automatically begins the 30-day trial.

success = [rsa UnlockComponent: @"30-day trial"];
if (success != YES) {
    [strOutput appendString: @"RSA component unlock failed"];
    [strOutput appendString: @"\n"];
    self.mainTextField.stringValue = strOutput;
    return;
}

//  Import the private key into the RSA component:
success = [rsa ImportPrivateKey: pkeyXml];
if (success != YES) {
    [strOutput appendString: rsa.LastErrorText];
    [strOutput appendString: @"\n"];
    self.mainTextField.stringValue = strOutput;
    return;
}

//  This example will sign a string, and receive the signature
//  in a hex-encoded string.  Therefore, set the encoding mode
//  to "hex":
rsa.EncodingMode = @"hex";

//  If some other non-Chilkat software is going to verify
//  the signature, it is important to match the byte-ordering.
//  The LittleEndian property may be set to YES
//  for little-endian byte ordering,
//  or NO  for big-endian byte ordering.
//  Microsoft apps typically use little-endian, while
//  OpenSSL and other services (such as Amazon CloudFront)
//  use big-endian.
rsa.LittleEndian = NO;

NSString *strData;
strData = @"This is the string to be signed.";

//  Sign the string using the sha-1 hash algorithm.
//  Other valid choices are "md2", "md5", "sha256",
//  "sha384", and "sha512".
NSString *hexSig;
hexSig = [rsa SignStringENC: strData hashAlg: @"sha-1"];

[strOutput appendString: hexSig];
[strOutput appendString: @"\n"];

[strOutput appendString: @"Success!"];
[strOutput appendString: @"\n"];

self.mainTextField.stringValue = strOutput;



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