Намерих следния код: https://github.com/roddi/ValidateStoreReceipt/blob/master/validatereceipt.m, който зарежда основния сертификат („Apple Root CA“) на MacOS
и се опитвам да го накарам да работи и на iOS.
Нашият код е написан на C++ и използва OpenSSL за валидиране на отдалечен партньор при използване на SSL сокети.
На други платформи зареждаме основния сертификат и ги добавяме към контекста с помощта на X509_STORE_add_cert.
След това използваме SSL_get_peer_certificate и проверяваме името на хоста. Това НЕ са самоподписани сертификати, поради което искаме да използваме основния сертификат на устройството.
Въпросът ми е как да получа основния сертификат на iOS устройства?
РЕДАКТИРАНЕ:
Опитах следната заявка, но продължавам да получавам -25300 (errSecItemNotFound).
NSDictionary* query=[NSDictionary dictionaryWithObjectsAndKeys:
(__bridge id)kSecClassCertificate,kSecClass,
kCFBooleanTrue,kSecReturnRef,
kSecMatchLimitAll,kSecMatchLimit,
kCFBooleanTrue,kSecMatchTrustedOnly,
nil];
SecItemCopyMatching((__bridge CFDictionaryRef)query,&ref);