1

Я пытаюсь создать сервер подписи пропусков для динамического создания пропусков Apple Wallet с использованием OpenSSL и стандартных шаблонов пропусков, предоставленных Apple, но мне не удается отобразить пропуск, используя следующее руководство:

- https://www.raywenderlich.com/2855-beginning-passbook-in-ios-6-part-1-2

К сожалению, когда я пытаюсь импортировать пароль в симулятор устройства, я не получаю никаких сообщений об ошибках, указывающих на проблему ... но я просмотрел документацию Apple и думаю, что это может быть связано с процессом подписи поскольку (устаревшее) руководство не упоминает ничего об отсоединенной подписи PKCS # 7:Документация по Apple Wallet

Мой вопрос: что мне нужно настроить в командах OpenSSL учебника, чтобы успешно подписать проход соответствующими сертификатами? Я просмотрел документацию по OpenSSL, но я довольно новичок в этом процессе, поэтому я не уверен, что с этим делать. Также, если у кого-то есть приличные ресурсы для получения дополнительной информации о сертификатах / подписи / и т.д., я был бы очень признателен за помощь!

1 ответ1

-1

Это отложенный ответ, но сегодня я столкнулся с аналогичной ситуацией, используя то же руководство:

Начало Passbook в iOS 6: часть 1/2.

Оказывается, сколько бы лет оно ни было, оно все еще работает.

Вот некоторая информация, которая может помочь:

1) Вам не нужен iOS Simulator для открытия файла .pkpass (как предложено в документации Apple), вы также можете открыть их на Mac. Что еще лучше, на Mac вы получите сообщение об ошибке, когда он не открывается, в то время как на iOS Simulator он просто молча выйдет из строя.

2) Эти ошибки можно увидеть, открыв Console.app на вашем Mac. При попытке открыть недопустимый .pkpass на Mac и iOS Simulator у обоих были записи в журнале Console.app , что может дать вам еще несколько советов. (Если в других журналах слишком много шума, попробуйте выполнить фильтрацию по pass в верхнем правом углу.)

3) В конце концов я понял, что моя проблема в том, что я изменил пример и просто использовал пустой пароль для создания passkey.pem , а openssl не выводил ключ в файл passkey.pem . Обратите внимание на пустой -passout pass: в конце:

openssl pkcs12 -in Certificates.p12 -nocerts -out passkey.pem -passin pass: -passout pass:

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

Чтобы уточнить и ответить на ваш вопрос более прямо, я не думаю, что вам нужно что-то настраивать в примере. После этого он все еще генерирует действительный файл .pkpass . Попробуйте использовать методы, описанные выше, чтобы выяснить, где вы ошиблись: то есть, является ли сертификат недействительным или подпись не соответствует данным. Там должны быть некоторые подсказки в журналах ошибок.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .