Сертификаты распространения и закрытые ключи

Хорошо, вот моя ситуация: у меня есть 2 Macbook (давайте назовем их № 1 и № 2), и я начал разработку № 1 в 2010 году.

В июне 2011 года срок действия моего сертификата на распространение истек, и мне пришлось его продлить. На моем Macbook № 1 я смог обновить сертификат в цепочке для ключей, и при повторном обновлении моего приложения все было в порядке.

Теперь, в августе 2011 года, я также хотел обновить сертификат на моем #2 и подумал, что могу просто загрузить его со страницы dev.apple и добавить в цепочку для ключей. Но когда я это сделал, закрытый ключ под сертификатом отсутствовал! Почему это? Закрытый ключ для профиля распространения на 2010 год все еще был виден под (истекшим) сертификатом.

Меня это настолько взбесило, что я вернулся к Macbook #1 и экспортировал оба ключа оттуда в #2. Это сработало, конечно, но это не может быть решением на будущее! Что, если Macbook выйдет из строя, а я захочу делать все через новый Macbook? Давайте предположим, что я не мог сделать экспорт из № 1, как мне получить чертов закрытый ключ под сертификатом в № 2?

Во-вторых, я немного запутался: какие ключи мне нужно бэкапить? Я думал, что это только закрытый ключ, но я не мог получить его «ниже» сертификата распространения на моем новом Macbook #2, что меня немного пугает.

Кстати: война сертификатов с Apple — это большая шутка, но это уже другая тема.


person andreas    schedule 24.08.2011    source источник
comment
Вам необходимо сделать резервную копию вашего закрытого ключа. Если у кого-то еще есть ваш закрытый ключ, он не является закрытым. Если у Apple есть ваши закрытые ключи, значит, они делают что-то серьезно неправильное. О какой «войне сертификатов» вы говорите?   -  person Zoredache    schedule 25.08.2011
comment
Хорошо, поэтому я сделал резервную копию закрытого ключа (тот, который я вижу в цепочке для ключей под iPhone Distribution: MyCompany, справа). Во всяком случае, я не понимаю, как связать его с новым сертификатом распространения. Как я уже писал, это не сработало автоматически для моего нового Macbook. -- Ну, если вы разрабатываете для других платформ, вы наверняка знаете разницу во времени, которое вы тратите на сертификаты. :)   -  person andreas    schedule 25.08.2011


Ответы (1)


После того, как вы настроите свои сертификаты, перейдите в Xcode Organizer и на вкладке «Устройства» с левой стороны вы увидите раздел «Профиль разработчика», где вы можете экспортировать свой профиль разработчика. Это защищенные паролем файлы, в которых будут храниться все ваши сертификаты разработки/распространения и их соответствующие закрытые ключи, а также любые установленные вами профили подготовки. Когда у вас есть этот файл, это все, что вам нужно для переноса разработки на новый компьютер, просто дважды щелкните его, и когда Xcode откроет его, введите пароль.

И хотите верьте, хотите нет, но «война сертификатов» — это не большая шутка с Apple, вы должны увидеть WP7, но это для обсуждения в другом месте.

person Filip Radelic    schedule 25.08.2011