Оглавление:
- Бесшовные обновления
- Конфигурация безопасности сети
- Media Server укрепляется
- Ключевая Аттестация
- Шифрование на уровне файлов
- Прямая загрузка
- Доступ к каталогу
Обновленный 13 августа 2016 г., с информацией о последних возможностях Android Nougat и API.
В Android N появилось много изменений в коде. Некоторые из них мы можем видеть - например, новые уведомления - а другие мы не можем (но все еще важны). Мы видим то же самое с каждым обновлением. Есть доработки и изменения в интерфейсе, но под капотом сделаны корректировки и изменения, чтобы Android работал лучше и безопаснее.
Google улучшил безопасность в Android Nougat в нескольких разных областях. Некоторые из них предназначены для защиты самого Android, в то время как другие являются инструментами для разработчиков, поэтому мы остаемся такими же при установке приложений. Давайте посмотрим на сами изменения.
Бесшовные обновления
Google уже делает «плавные обновления» на Chrome OS, и это работает очень хорошо. Вещи будут очень похожи в Android.
Для бесшовных обновлений будут использоваться два отдельных системных раздела. Одна из них - это система, которую вы используете, когда используете свой телефон каждый день. Когда приходит время обновления, другой системный раздел изменяется и обновляется, и при следующей перезагрузке вы автоматически переключаетесь. При следующем обновлении другой системный раздел меняется, и вы переключаетесь обратно.
: Android 7.0: Что такое плавные обновления и как они работают?
Это означает, что что-то можно сделать, пока вы работаете или играете, а когда все закончится, все, что вам нужно сделать, - это перезагрузиться как обычно. Вы были бы удивлены (я был, когда я услышал это), но довольно большая часть людей не обновляет свой телефон, потому что это занимает некоторое время. Они могли бы сделать это один раз, потом сидели в ожидании и решили больше этого не делать. Это легко отклонить уведомление. Но, изменив процедуру, упростив обновления и исключив ужасное время ожидания при просмотре диалога «Обновление приложений», все больше людей будут это делать.
Конфигурация безопасности сети
Конфигурация безопасности сети позволяет разработчикам приложений создавать и использовать пользовательский файл конфигурации для параметров безопасности сети вместо запроса изменений на уровне системы. Файл конфигурации можно изменить без изменения самого приложения и установить вместо него использование настраиваемого центра сертификации вместо устройства. по умолчанию, а также может быть установлен, чтобы игнорировать любой или все CA, доверенные системой. Это важно для подключения к хосту с самозаверяющим CA (для таких вещей, как корпоративные приложения) или для приложения, которое должно доверять только определенному CA.
Кроме того, конфигурация может быть настроена на отказ от любого обычного текстового сетевого трафика и принудительное шифрование связи с использованием протокола HTTPS. Если вы администратор сети или разрабатываете сетевые приложения, вы знаете, насколько важны эти изменения. Остальные из нас могут быть рады, что у нас может быть более безопасный сетевой трафик в приложениях, которые легче разрабатывать.
Media Server укрепляется
Помните Stagefright? Несмотря на то, что большинство средств массовой информации взорвало его соразмерно, за гиперболой скрывалась реальная проблема. Воспроизведение мультимедийного файла с возможностью принудительной перезагрузки или потери всего звука - неприятная проблема, и тот факт, что (теоретически) это может быть использовано для тайного получения прав root, еще страшнее. Google относится к этому очень серьезно, и мы каждый месяц видим исправления для библиотеки медиасервера, чтобы попытаться опередить ошибки и проблемы безопасности, связанные с ними.
В Android N медиа-сервер претерпел значительные изменения. Google разбил медиа-сервер на более мелкие компоненты, которые можно обновлять вне полного обновления системы - так же, как они сделали с компонентом WebView. Это означает, что когда у них есть новый патч, вы можете получить обновление из Google Play, а не ждать шесть месяцев или более, пока люди, которые заставили ваш телефон принять решение отправить вам патч.
Они также изменили модель разрешений для медиа-сервера, больше не предоставляя ему полные системные разрешения. Работа с низкими привилегиями еще больше затрудняет взлом системы, если они попадают на медиасервер. Это серьезное изменение, которое сделает взлом Android-телефона (плохой вид взлома) еще сложнее, чем раньше.
Ключевая Аттестация
Аттестация ключей позволит разработчикам убедиться, что ключи, которые они могут использовать в своих приложениях, действительны и хранятся в аппаратном хранилище ключей телефона, а не в программном обеспечении. Когда инструмент аттестации получает сгенерированный псевдоним для ключа (фактический ключ никогда не должен передаваться), он генерирует цепочку сертификатов, которую можно использовать для проверки ключа. Разработчики могут проверить как ключ, так и проверенное состояние загрузки, чтобы убедиться, что все правильно.
Телефоны, которые поставляются с Android N и используют службы Google, будут иметь сертификат, выданный Google в качестве корневого (или основного) органа, в то время как для других обновленных телефонов потребуется сертификат, выпущенный компанией, которая их выпустила.
Не все телефоны, которые могут работать под управлением Android N, имеют надежную аппаратную среду для хранения ключей шифрования, и в этих случаях вместо них используется аттестация ключей на уровне программного обеспечения. Проверенное состояние загрузки все еще можно проверить, чтобы убедиться, что системное программное обеспечение не было подделано. Да, это означает, что разработчик может проверить наличие root. Это хорошо, если к пользователям, которые рутировали свой телефон, не применяется чрезмерное наказание.
Шифрование на уровне файлов
Ранее в Android использовалось шифрование на уровне блоков для одновременного шифрования всего раздела или устройства хранения данных. Это был очень безопасный метод шифрования, и сохранение настоящих токенов в хранилище и на оборудовании в значительной степени означало, что единственным способом было использование правильного пароля или PIN-кода. С Android N все было изменено на шифрование на уровне файлов.
Direct Boot предназначен для работы с шифрованием на уровне файлов с целью обеспечения удобства и безопасности.
Когда ваше зашифрованное устройство Android загружается (или перезагружается в вашем кармане), устройство шифруется и блокируется. Только определенные приложения могут работать, и это называется режимом прямой загрузки. Это означает, что вы все еще можете получать телефонные звонки или отключить будильник (или даже увидеть некоторые уведомления о сообщениях), но чтобы сделать что-то еще, вам нужно разблокировать и расшифровать устройство. После разблокировки N использует шифрование на уровне файлов, чтобы позволить нам (пользователю) и приложениям иметь немного больший контроль над тем, как блокируются данные.
Здесь есть два преимущества: FDE (блочное шифрование на уровне дисков) делает низкоуровневые устройства довольно плохо работающими. Google потребовалось несколько попыток на Nexus 6, чтобы сделать это правильно, и любое устройство с флэш-памятью со скоростью менее 50 МБ / с по-прежнему испытывает трудности. Вторым (и более важным) преимуществом является использование шифрования на уровне файлов для аутентифицированного шифрования с ассоциированной D ata (AEAD). AEAD означает, что доступ к данным несанкционированному пользователю или приложению затруднен. Для людей, интересующихся AEAD, вот действительно хорошее чтение от профессора Калифорнийского университета в Дэвисе Филиппа Рогавея (файл.pdf).
Этот многоуровневый подход к шифрованию позволит компаниям, которые делают Android по очень бюджетным ценам, предлагать шифрование без снижения производительности.
Прямая загрузка
Шифрование на уровне файлов также будет работать лучше с функцией прямой загрузки. В Direct Boot появился новый режим, который разработчики могут использовать, чтобы их приложение могло работать сразу после включения системы, а не ждать, пока пользователь разблокирует телефон или расшифрует его.
Это делается совместно с новой областью хранения устройств, и приложения, использующие Direct Boot, не будут взаимодействовать с обычной файловой системой, защищенной учетными данными, и с какими-либо индивидуально зашифрованными файлами или каталогами.
: Android 7.0: Что такое Direct Boot и как это улучшит ваш опыт?
Доступ к каталогу
Доступ к каталогу по областям - это способ для приложения получить разрешение на доступ к определенному каталогу во внешнем хранилище (внешнее хранилище является разделом вне системы и включает в себя память вашего телефона и SD-карту или другое подключенное устройство хранения) без запроса разрешение для всего тома или использование всплывающего окна для запроса разрешений для папки.
Безопасный доступ к хранимым данным важен. Приложение, которому нужен только доступ к папке хранилища «Музыка» или «Фото», больше ничего не должно видеть, и написание кода для использования существующей среды Access Access Framework оказалось тем, что многие разработчики отказываются делать. новый API доступа к каталогам Scoped облегчит разработчикам создание приложений, которые будут безопасны и защищают ваши данные.
Эти важные функции безопасности являются важной частью Android N. Хотя некоторые телефоны (особенно те, которые не поставляются с Nougat) могут не использовать их все, каждый из них помогает защитить наши данные при правильном использовании. Android повзрослел, и внимание к деталям, которое Google показывает с 7.0, может быть не таким ярким, как новые смайлики или новая цветовая схема, но это гораздо важнее.