4
我開發IPhone需要一個證書來調用一些服務的應用程序,所以我加入了證書,我的鑰匙串這樣做:SecItemAdd創建兩個身份
SecCertificateRef cert = SecCertificateCreateWithData(NULL, (__bridge CFDataRef) certificadoData);
NSMutableDictionary *dictionary = [[NSMutableDictionary alloc] init];
[dictionary setObject:(__bridge id)kSecClassCertificate forKey:(__bridge id)kSecClass];
[dictionary setObject:(__bridge id)(cert) forKey:(__bridge id<NSCopying>)(kSecValueRef)];
OSStatus status = SecItemAdd((__bridge CFDictionaryRef)dictionary, NULL);
當我列出所有的kSecClassIdentity在此代碼之前,結果是none,並且在此代碼之後,返回是兩個身份和一個證書。 當我嘗試使用身份標識時,一個正常工作,另一個沒有。爲什麼SecItemAdd爲一個kSecClassCertificate創建兩個kSecClassIdentity?我怎樣才能找到正確的?
這必須是一個鑰匙扣錯誤,因爲它對每個證書擁有多個身份是沒有意義的,也沒有與私鑰沒有關聯的身份。你有沒有向蘋果提交錯誤報告? –