Objective-C
Objective-C
Convert CRL PEM to XML
See more PEM Examples
Loads a CRL (Certificate Revocation List) from the PEM file format and converts to XML to allow for visual examination and parsing.Note: This example requires Chilkat v9.5.0.77 or greater.
Chilkat Objective-C Downloads
#import <CkoPem.h>
#import <CkoAsn.h>
#import <CkoXml.h>
#import <NSString.h>
BOOL success = NO;
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
// This example requires Chilkat v9.5.0.77 or greater.
CkoPem *pem = [[CkoPem alloc] init];
pem.VerboseLogging = YES;
success = [pem LoadPemFile: @"qa_data/crl/sampleCrl.pem" password: @"password_not_used"];
if (success != YES) {
NSLog(@"%@",pem.LastErrorText);
return;
}
int numCrls = [pem.NumCrls intValue];
int i = 0;
CkoAsn *asn = [[CkoAsn alloc] init];
CkoXml *xml = [[CkoXml alloc] init];
while (i < numCrls) {
// Get the CRL as base64 (multi-line)
NSString *crlBase64 = [pem GetEncodedItem: @"crl" itemSubType: @"" encoding: @"base64_mime" index: [NSNumber numberWithInt: i]];
if (pem.LastMethodSuccess != YES) {
NSLog(@"%@",pem.LastErrorText);
return;
}
NSLog(@"%@",crlBase64);
success = [asn LoadEncoded: crlBase64 encoding: @"base64"];
if (success != YES) {
NSLog(@"%@",asn.LastErrorText);
return;
}
// Convert ASN.1 to XML and load into xml and re-emit for pretty printing..
[xml LoadXml: [asn AsnToXml]];
NSLog(@"%@",[xml GetXml]);
// Use this online tool to generate parsing code from CRL XML:
// Generate Parsing Code from XML
NSLog(@"%@",@"-------------------------------------");
i = i + 1;
}