Objective-C
Objective-C
Combine Multiple PKCS12's into a Single Java KeyStore
See more Java KeyStore (JKS) Examples
Combines multiple PKCS12's into a single Java KeyStore (JKS) file. To combine multiple PKCS12 files into a single JKS, simply load each PKCS12 into a PFX object, add it to the Java keystore object via the AddPfx method, and then finally write the Java keystore at the very end.Chilkat Objective-C Downloads
#import <CkoJavaKeyStore.h>
#import <CkoPfx.h>
#import <NSString.h>
BOOL success = NO;
// This requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
CkoJavaKeyStore *jks = [[CkoJavaKeyStore alloc] init];
CkoPfx *pfx = [[CkoPfx alloc] init];
// Combines several PKCS12's into a single JKS.
// Simply load each, add it to the keystore, and then
// save at the very end.
NSString *alias = 0;
NSString *pfxPassword = 0;
NSString *jksPassword = @"jksSecret";
// Add the 1st PFX...
pfxPassword = @"secret1";
success = [pfx LoadPfxFile: @"/someDir/file1.p12" password: pfxPassword];
if (success != YES) {
NSLog(@"%@",pfx.LastErrorText);
return;
}
alias = @"alias1";
success = [jks AddPfx: pfx alias: alias password: jksPassword];
if (success != YES) {
NSLog(@"%@",jks.LastErrorText);
return;
}
// Add the 2nd PFX...
pfxPassword = @"secret2";
success = [pfx LoadPfxFile: @"/someDir/file2.p12" password: pfxPassword];
if (success != YES) {
NSLog(@"%@",pfx.LastErrorText);
return;
}
alias = @"alias2";
success = [jks AddPfx: pfx alias: alias password: jksPassword];
if (success != YES) {
NSLog(@"%@",jks.LastErrorText);
return;
}
// We can continue adding as many PFX's as desired...
// Write the Java keystore to a file:
success = [jks ToFile: jksPassword path: @"/jksFiles/my.jks"];
if (success != YES) {
NSLog(@"%@",jks.LastErrorText);
}
else {
NSLog(@"%@",@"Successfully combined multiple PKCS12's into a single JKS");
}