Я нашел следующий код: https://github.com/roddi/ValidateStoreReceipt/blob/master/validatereceipt.m, который загружает корневой сертификат («Apple Root CA») на MacOS
, и я пытаюсь заставить его работать и на iOS.
Наш код написан на C ++ и использует OpenSSL для проверки удаленного узла при использовании сокетов SSL.
На других платформах мы загружаем корневой сертификат и добавляем их в контекст, используя * 1009.* 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);