2015-12-03 3 views
0

Теперь, когда encrypt.org запускает публичную бета-версию, они выдают только https-сертификаты, которые длится 90 дней. Именно по соображениям безопасности они советуют разработчикам обновлять свои https-сертификаты через 60 дней, и лучший способ сделать это - автоматизировать это.Обновление протокола HTTPS в мобильных приложениях

Однако я ищу, чтобы добавлять HTTPS в мобильное приложение. Как вы автоматически продлеваете сертификат каждые 90 дней? Разве это не потребует новой сборки приложения и обновления каждые 60 дней в магазине приложений/игр? Я хотел бы, чтобы этот вопрос ответил, потому что я понимаю, что HTTPS намного безопаснее.

Заранее благодарен!

+1

Что вы хотите сказать, добавив сертификат в приложение? Вы хотите сделать привязку SSL (в этом случае вы должны перестраивать свое приложение каждый раз, когда изменяется сертификат)? Но если эти сертификаты доверяют устройству, вы должны иметь возможность подключаться к серверу без добавления сертификатов в свой проект. – Levi

+0

Итак, вам нужно добавить открытый ключ .cert файл один раз, а затем веб-сайт доверен на устройстве? – gigha

+0

думаю. Когда вы добавите его (откройте его на устройстве, например, из почты), сертификат должен появиться в разделе «Настройки»> «Основные»> «Профили». Вероятно, вам также понадобится исключение для ATS, если этот сертификат самоподписан. – Levi

ответ

0

Не хватает мест в комментариях, так что я выложу его здесь

Я не совсем уверен, как encrypt.org работает, так что до тех пор, пока вы не предоставить больше информации о своем я не могу помочь вам.

Однако сам X509Certificate, содержит механизм для обновления сертификата, так что, если он правильно реализован на þér стороне вы можете реализовать его в своем приложении:

According to wiki:

, чтобы обеспечить изящный переход от старого подписание пары ключей в новую пару ключей подписи , ЦС должен выдать сертификат, содержащий старый открытый ключ, подписанный новым закрытым ключом подписи, и сертификат , содержащий новый открытый ключ, подписанный старым частным ключом подпись ключ. Оба эти сертификата выдаются самостоятельно, но ни не подписывается самостоятельно. Обратите внимание, что они дополняют два самоподписанных сертификата (один старый, новый).

Так как cert1 и cert3 содержат один и тот же открытый ключ (старый), есть две действительные цепочки сертификатов для cert5: "cert5 → cert1" и "cert5 → cert3 → cert2", и аналогично для cert6. Это позволяет получить сертификаты старых пользователей (например, cert5) , а также новые сертификаты (например, cert6), которым может быть доверена сторона, имеющая либо новый корневой сертификат ЦС , либо старый в качестве доверительного анкера при переходе к новому CA ключи

Однако это все еще требует, чтобы у вас был сертификат CA (что, вероятно, нет).

С другой стороны Я не знаю, зачем нужен ваш собственный сертификат (и почему с encrypt.org)? И вы уверены, что их сертификаты не проверяются в Android по умолчанию TrustStore? И в конце концов Isnt лучше создать самостоятельно подписанный сертификат для вашего сервера и использовать его в приложении, чтобы вы могли иметь полный контроль?

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