Я нашел следующий код: 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);