Я могу извлечь личность, когда я читаю nsdata из файла p12 из моего пакета.
NSData *PKCS12Data = [NSData dataWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"sample" ofType:@"p12"]];
Но когда я сохраняю это как blob и пытаюсь создать nsdata
PKCS12 *newp12;
using NSData *PKCS12Data = [[NSData alloc] initWithBytes:&p12ptr length:length];
не удалось .... код ошибки -26275 osstatus.оба случая nsdata показывает те же самые байты .. любая проблема кодирования?пожалуйста, помогите
Я извлекаю личность, используя следующий код
securityError = SecPKCS12Import((CFDataRef)inPKCS12Data,(CFDictionaryRef)optionsDictionary,&items);
if (securityError == 0) {
CFDictionaryRef myIdentityAndTrust = CFArrayGetValueAtIndex (items, 0);
const void *tempIdentity = NULL;
tempIdentity = CFDictionaryGetValue (myIdentityAndTrust, kSecImportItemIdentity);
*outIdentity = (SecIdentityRef)tempIdentity;
const void *tempTrust = NULL;
tempTrust = CFDictionaryGetValue (myIdentityAndTrust, kSecImportItemTrust);
*outTrust = (SecTrustRef)tempTrust;
} else
{
NSLog(@"Failed with error code %d",(int)securityError);
return NO;
}