Из StackOverflow: Как установить доверенный сертификат CA на устройстве Android?
Я потратил много времени, пытаясь найти ответ на этот вопрос (мне нужен Android, чтобы увидеть сертификаты StartSSL). Вывод: Android 2.1 и 2.2 позволяют импортировать сертификаты, но только для использования с WiFi и VPN. Пользовательский интерфейс для обновления списка доверенных корневых сертификатов отсутствует, но обсуждается вопрос о добавлении этой функции. Неясно, есть ли надежный обходной путь для ручного обновления и замены файла cacerts.bks.
Подробности и ссылки: http://www.mcbsys.com/techblog/2010/12/android-certificates/ . В этом посте см. Ссылку на ошибку Android 11231 - вы можете добавить свой голос и запросить эту ошибку.
11231 был закрыт в ноябре 2011 года и был выпущен статус для Android 4.0 ICS.
Вот примечания, связанные со статусом Выпущено :
ICS пытается сделать большинство, если не все элементы в этом выпуске. Если я что-то пропустил, я открою более конкретные вопросы для устранения пробелов.
Некоторые детали ниже, я планирую более формальный пост в блоге позже. Следующее должно быть видно в Android 4.0 SDK, если вы хотите попробовать их и оставить отзыв.
Изменения в настройках:
- Системные центры сертификации (ЦС) теперь отображаются в меню «Настройки»> «Безопасность»> «Доверенные учетные данные».
- системные ЦС теперь можно отключить и включить
- пользователи могут установить свои собственные центры сертификации в меню «Настройки»> «Безопасность» (а также с помощью других механизмов, таких как браузер или открытие из вложений электронной почты).
- Пользовательские центры сертификации можно просмотреть и удалить в разделе «Настройки»> «Безопасность»> «Доверенные учетные данные».
- вместо отдельного 8-символьного PIN-кода для хранения учетных данных теперь доступ контролируется через экран блокировки
Новый API KeyChain
- KeyChain.createInstallIntent позволяет приложениям запрашивать установку учетных данных, в основном делая общедоступным интерфейс, используемый настройками для запроса установки. пользователи должны подтвердить запросы на установку, как и раньше.
- KeyChain.choosePrivateKeyAlias / getPrivateKey / getCertificateChain позволяют приложениям запрашивать закрытые ключи и связанные с ними сертификаты для использования приложения. Распространенным случаем использования будет аутентификация сертификата клиента с использованием протокола https.
Эл. адрес
- В электронной почте теперь используется API-интерфейс KeyChain, чтобы разрешить проверку подлинности сертификата клиента для учетных записей Exchange.
браузер
- Браузер теперь будет использовать KeyChain для запроса сертификата клиента, когда сервер запрашивает сертификат для аутентификации.
В марте 2014 года был создан запрос на расширение, позволяющий пользователям устанавливать собственные сертификаты ЦС .
Многие пользователи (включая компании) используют самозаверяющие сертификаты для SSL / TLS, либо потому, что они не хотят платить за это, либо потому, что они просто не доверяют другим компаниям и хотят сделать это сами (на самом деле, нет причин купите сертификат, когда анонимные интернет-пользователи не будут доверять вашему серверу).
На данный момент возможно установить собственный сертификат CA в Android, но он определяется как «пользовательский сертификат», который, кажется, предназначен для клиентских сертификатов. В результате эти сертификаты отображаются как «пользовательские сертификаты» в графическом интерфейсе, и, начиная с Android 4.4, была реализована ужасная «Сеть может контролироваться».