2015-09-21 6 views
0

Вопрос:Как именно используется промежуточный сертификат WWDR при подписании приложения?

Я немного запутался, с целью ДОВРМ промежуточного сертификата, используемого в развитии IOS. После выполнения следующих этапов:

  1. создать пару открытых/закрытых ключей;
  2. сформировать запрос подписи сертификата (CSR) на основе сгенерированной пары и отправить его в Apple;
  3. получить обратно сертификат, подписанный Apple, который проверяет, что у меня есть закрытый ключ, связанный с представленным открытым ключом,

Я уже, кажется, есть все, что нужно будет подписать заявление (с использованием моего закрытый ключ) и доказали Apple, что я являюсь владельцем частного ключа. Поэтому я прихожу к следующим вопросам:

  • Зачем нужен промежуточный сертификат WWDR?
  • Какая информация содержится в промежуточном сертификате WWDR?
  • На каком этапе процесса подписи кода используется информация, содержащаяся в промежуточном сертификате WWDR и как?

Контекст:

Я Android-разработчик, который делал развитие IOS в течение последних 3-х месяцев. До сих пор я понял свое понимание:

  • основные принципы криптографии с открытым ключом;
  • как PKC допускает подписание сущностей;
  • необходимость в цепочке доверия между персоналом и центром сертификации для подписи, которая будет полезна.

Я прочитал вопросы like this one, в которых указывается промежуточный сертификат WWDR, ​​чтобы подтвердить, что все другие сертификаты, полученные через CSR, отправленные в Apple, действительны. Как выполняется эта проверка? Является ли загрузка промежуточного сертификата типичным способом проверки того, что подписывающим лицом другого сертификата является ЦС?

+1

Обычно промежуточные сертификаты используются для использования автономного корневого сертификата. Корневой сертификат используется для создания промежуточного сертификата в автономном режиме. Это помогает защитить корневой секретный ключ так, как будто он не находится в сети, и он не может протекать через нарушение безопасности. Если промежуточный сертификат скомпрометирован, то этот сертификат может быть отозван и повторно выпущен без необходимости обновления открытого открытого ключа, хранящегося в миллионах устройств, или компрометации многих других сертификатов, которые Apple может выпускать для разных целей. – Paulw11

+1

. Чтобы ответить на ваш вопрос, вы доказали Apple, что вы являетесь владельцем частного ключа. Когда они подписывают вашу CSR, вы можете доказать iOS, что вы доказали Apple, что являетесь владельцем закрытого ключа. Для этого они подписывают вашу CSR с закрытым ключом промежуточного сертификата WWDR – Paulw11

ответ

1

Вы предоставляете некоторые детали, включая открытый ключ для Apple в вашей CSR. Технически это не доказывает Apple, что у вас есть закрытый ключ, но подписанная информация может использоваться для проверки вашего открытого ключа. Пока ваш секретный ключ хранится в секрете, то то, что расшифровывается с вашим открытым ключом, должно быть зашифровано с помощью соответствующего закрытого ключа. Это означает, что устройства iOS могут доверять профили и приложениям, которые вы создаете, потому что ваша личность может быть проверена и привязана к чему-то, на что они доверяют.

Причина, по которой ваша CSR подписывается промежуточным сертификатом WWDR, ​​заключается в обеспечении безопасности пары ключей от Apple. Пара корневых ключей - очень важная и чувствительная вещь. Доступ к нему будет ограничен очень небольшим количеством людей в Apple. Наличие на компьютере, подключенном к Интернету, чтобы он мог подписать ваш CSR, был бы очень рискованным.

Чтобы избежать использования корневого сертификата онлайн, используется промежуточный СА.Корневой сертификат используется для создания промежуточного ЦС в автономном режиме.

Затем, если промежуточный сертификат CA скомпрометирован, тогда этот сертификат может быть отозван и повторно выпущен без необходимости обновления корневого открытого ключа, хранящегося в миллионах устройств, или компрометации многих других сертификатов, которые Apple может выпускать для разных целей.

+0

Отличный ответ! Один вопрос: зачем мне загружать промежуточный сертификат на мой компьютер, если CSR возвращает сертификат, уже подписанный промежуточным сертификатом? Я думал, что проверка подписей обычно выполняется удаленно? Или эта ссылка связана с необходимостью сохранить секретную пару ключей root? – stkent

+1

Ваш компьютер должен доверять всем шагам в цепочке сертификации. Хотя теоретически это может выходить через Интернет для проверки сертификата, это вызывает проблемы, если вы не подключены к Интернету, а также могут быть риски, связанные с атаками на процесс проверки - Человек в средних атаках. Операционные системы, такие как OS X, поставляются с множеством доверенных корней, которые уже установлены (посмотрите на элемент «Системные корни» в Keychain Access), но ICDR IC не является одним из них. – Paulw11

+0

Вижу, интересно. Я удивлен, что он не установлен по умолчанию; предположительно считается целесообразным иметь минимальный практический набор сертификатов, установленных по умолчанию по соображениям безопасности. – stkent

 Смежные вопросы

  • Нет связанных вопросов^_^