Создать сертификат DER в OS X
Вопрос довольно прямой. Как можно создать сертификат x509 в osx, просто используя API SecurityFramework. Я хочу создать сертификат с publicKey, который я сгенерировал с SecKeyGeneratePair.
Пока что в документе я нашел только метод SecCertificateCreateWithData, но для этого уже требуется сертификат x509 в качестве параметра, так что мне это не подходит. Я не мог найти метод, с помощью которого я мог бы создать сертификат с нуля. Кроме того, я не очень разбираюсь в этой теме, поэтому очень вероятно, что я что-то здесь упускаю. Любая помощь с благодарностью.
Также использование openSSL или любого устаревшего API не подходит для моего проекта.
Я уже сталкивался с этим вопросом. Создание сертификатов x509 программным способом в Objective-C с использованием Security Framework, но так как это год, я подумал, есть ли сейчас возможность сделать это,
1 ответ
Я не думаю, что на самом деле это возможно, используя Security Framework. AFAICT, единственный способ сделать это на iOS/OSX - это использовать (устаревшую) библиотеку CDSA или (устаревшую) библиотеку OpenSSL.
Есть библиотека по адресу https://github.com/snej/MYCrypto которая может это сделать, но она использует некоторые (устаревшие) вызовы CDSA/CSSA и зависит от множества утилит / библиотечных функций того же автора, которые Я нашел бесполезным.
Я предлагаю вам сообщить об ошибке на bugreporter.apple.com, чтобы выразить ваше желание иметь возможность создавать сертификаты x.509. Я имею!
Редактировать: Автор MYCrypto (snej) также имеет упрощенную версию MYAnonymousIdentity, которая принимает предварительно созданный сертификат самоподписания x.509 и использует минимальные вызовы SDK для введения нового ключа / подписи RSA в существующий сертификат. Он также использовал некоторые из его утилит / библиотек, но я удалил все это для своего собственного проекта, и вы можете найти модифицированный код, скрипт, который я использую для генерации предварительно консервированного сертификата (и файл заголовка, содержащий все смещения для модификации) по адресу: https://github.com/Hammerspoon/hammerspoon/tree/master/extensions/httpserver
От:
Создание сертификатов x509 программно в Objective-C с использованием Security Framework