Безопасность
В этой таблице перечислены все артефакты в группе androidx.security
.
Артефакт | Стабильный релиз | Кандидат на релиз | Бета-версия | Альфа-релиз |
---|---|---|---|---|
безопасность-криптография | 1.1.0 | - | - | - |
приложение-аутентификатор безопасности | 1.0.0 | - | - | - |
тестирование аутентификатора-приложения-безопасности | 1.0.0 | - | - | - |
безопасность-идентификация-учетные данные | - | - | - | 1.0.0-альфа03 |
Объявление зависимостей
Чтобы добавить зависимость от Security, необходимо добавить репозиторий Google Maven в свой проект. Подробнее см. в репозитории Google Maven .
Добавьте зависимости для необходимых артефактов в файл build.gradle
вашего приложения или модуля:
Дополнительные сведения о зависимостях см. в разделе Добавление зависимостей сборки .
Обратная связь
Ваши отзывы помогают улучшить Jetpack. Сообщите нам, если вы обнаружите новые проблемы или у вас есть идеи по улучшению этой библиотеки. Пожалуйста, ознакомьтесь с уже существующими проблемами в этой библиотеке, прежде чем создавать новую. Вы можете проголосовать за существующую проблему, нажав на кнопку со звёздочкой.
Более подробную информацию см. в документации по системе отслеживания проблем .
Security-State Версия 1.0.0
Версия 1.0.0-beta01
26 февраля 2025 г.
Выпущена версия androidx.security:security-state:1.0.0-beta01
. Версия 1.0.0-beta01 содержит следующие коммиты .
Исправления ошибок
- Исправлена ошибка, из-за которой
getPatchedCves()
не возвращал исправленные CVE дляCOMPONENT_SYSTEM_MODULES
. ( Ice5e2 )
Версия 1.0.0-альфа05
29 января 2025 г.
Выпущена версия androidx.security:security-state:1.0.0-alpha05
. Версия 1.0.0-alpha05 содержит следующие коммиты .
Новые функции
- Имена пакетов системных модулей по умолчанию были добавлены в манифест библиотеки, чтобы позволить клиентским приложениям получать Device SPL для системных модулей. ( Ic259c )
Изменения API
-
SecurityStateManager
переименован вSecurityStateManagerCompat
, добавлена дополнительная документация для публичных свойств и функций, а также методыgetComponentSecurityPatchLevel
иgetVulnerabilityReportUrl
сделаны статическими. ( I44a0c ) - Функциональность обновления доступности (методы
listAvailableUpdates()
иgetAvailableSecurityPatchLevel()
) на данный момент удалена из API и планируется вернуть в будущем обновлении библиотеки. ( Idbc5e ) - Доступ к Vendor SPL теперь защищен флагом времени компиляции, который по умолчанию отключен до будущего обновления библиотеки. ( I45b58 )
-
getGlobalSecurityState()
теперь возвращает глобальное состояние безопасности из системной службы для SDK 35+. ( I7b9da )
Исправления ошибок
- Исправлен сбой, возникавший при попытке получить опубликованный SPL для ядра на старых версиях Android, где опубликованные версии ядра LTS недоступны. ( I93dff )
Версия 1.0.0-альфа04
7 августа 2024 г.
Выпущена версия androidx.security:security-state:1.0.0-alpha04
. Версия 1.0.0-alpha04 содержит следующие коммиты .
Примечание
- Обновление
compileSdk
до версии 35 5dc41be
Изменения API
- Критическое изменение: перечисление компонентов было заменено строковыми константами для расширения. ( Ia3283 )
Версия 1.0.0-альфа03
10 июля 2024 г.
Выпущена версия androidx.security:security-state:1.0.0-alpha03
. Версия 1.0.0-alpha03 содержит следующие коммиты .
Исправления ошибок
- Исправление шаблона ASB-A для ошибок бюллетеня безопасности Android, анализ JSON для дополнительных компонентов и пакетное извлечение
Webview
. ( Ide86a )
Версия 1.0.0-альфа02
26 июня 2024 г.
Выпущена версия androidx.security:security-state:1.0.0-alpha02
. Версия 1.0.0-alpha02 содержит следующие коммиты .
Исправления ошибок
- Исправлена логика получения версии ядра. ( I5602a )
Версия 1.0.0-альфа01
12 июня 2024 г.
Выпущена версия androidx.security:security-state:1.0.0-alpha01
. Версия 1.0.0-alpha01 содержит следующие коммиты .
Новые функции
- Security State — это новая библиотека, которую разработчики могут использовать для получения полезных данных о версиях обновляемых компонентов системы, обновлениях безопасности и примененных исправлениях.
Security-App-Authenticator-Testing Версия 1.0.0
Версия 1.0.0
30 июля 2025 г.
Выпущены androidx.security:security-app-authenticator:1.0.0
и androidx.security:security-app-authenticator-testing:1.0.0
. Версия 1.0.0 содержит эти коммиты .
Версия 1.0.0-rc01
20 мая 2025 г.
Выпущены androidx.security:security-app-authenticator:1.0.0-rc01
и androidx.security:security-app-authenticator-testing:1.0.0-rc01
. Версия 1.0.0-rc01 содержит эти коммиты .
Версия 1.0.0-beta01
6 марта 2024 г.
Выпущены androidx.security:security-app-authenticator:1.0.0-beta01
и androidx.security:security-app-authenticator-testing:1.0.0-beta01
. Версия 1.0.0-beta01 содержит эти коммиты .
Версия 1.0.0-альфа02
13 декабря 2023 г.
Выпущена версия androidx.security:security-app-authenticator-testing:1.0.0-alpha02
. Версия 1.0.0-alpha02 содержит следующие изменения.
Исправления ошибок
- Обновлен тест для нового поведения API, которое больше не предполагает
Binder#getCalling[Uid|Pid]
если он не указан в API[check|enforce]CallingAppIdentity
. ( I1851b )
Версия 1.0.0-альфа01
2 июня 2021 г.
Выпущена версия androidx.security:security-app-authenticator-testing:1.0.0-alpha01
. Версия 1.0.0-alpha01 содержит следующие изменения.
Новые функции
Эта тестовая библиотека предоставляет конструктор, который можно использовать для настройки внедряемого AppAuthenticator в соответствии с требованиями теста. Эта библиотека поддерживает несколько методов настройки AppAuthenticator:
- Можно указать общую политику тестирования, которая будет сообщать о совпадении подписей для всех пакетов, объявленных в конфигурации.
- Можно указать отдельные пакеты, которые будут возвращать совпадение сигнатуры, в то время как все остальные пакеты будут сообщать об отсутствии совпадения.
- Для каждого пакета можно задать явные идентификаторы подписи; полученный AppAuthenticator затем сообщит о совпадении подписи только в том случае, если предоставленный идентификатор соответствует объявлению в файле конфигурации.
- Пакеты также можно рассматривать как не установленные или имеющие явный uid.
Security-App-Authenticator версии 1.0.0
Версия 1.0.0-rc01
20 мая 2025 г.
Выпущены androidx.security:security-app-authenticator:1.0.0-rc01
и androidx.security:security-app-authenticator-testing:1.0.0-rc01
. Версия 1.0.0-rc01 содержит эти коммиты .
Версия 1.0.0-beta01
6 марта 2024 г.
Выпущены androidx.security:security-app-authenticator:1.0.0-beta01
и androidx.security:security-app-authenticator-testing:1.0.0-beta01
. Версия 1.0.0-beta01 содержит эти коммиты .
Версия 1.0.0-альфа03
13 декабря 2023 г.
Выпущена версия androidx.security:security-app-authenticator:1.0.0-alpha03
. Версия 1.0.0-alpha03 содержит следующие изменения.
Изменения API
- Добавлена поддержка случаев использования, когда UID/PID проверяемого пакета недоступен; API теперь поддерживают такие случаи, как
startActivityForResult
и действия/приемники, где идентификация вызывающего приложения передается через[Activity|Broadcast]Options#setShareIdentityEnabled
. - Поведение
[check|enforce]CallingAppIdentity(String, String)
было обновлено для поддержки этих новых вариантов использования; эти методы больше не будут по умолчанию использоватьBinder#getCalling[Uid|Pid]
, а вместо этого будут пропускать проверку UID вызывающего пакета, если он не указан явно. ( I1851b )
Версия 1.0.0-альфа02
2 июня 2021 г.
Выпущена версия androidx.security:security-app-authenticator:1.0.0-alpha02
. Версия 1.0.0-alpha02 содержит следующие изменения.
Изменения API
- В рамках подготовки к поддержке нового флага защиты разрешений
knownSigner
, представленного в Android 12, атрибут digestAlgorithm больше не может быть указан в конфигурации; вместо этого все дайджесты сертификатов должны вычисляться с использованием SHA-256.
Исправления ошибок
- Все дайджесты сертификатов, предусмотренные в конфигурации, теперь нормализованы, что гарантирует возможность сообщения об успешном сопоставлении подписей как при вычислении дайджеста во время выполнения, так и при явном определении личности подписи при использовании тестовой библиотеки.
Версия 1.0.0-альфа01
5 мая 2021 г.
Выпущена версия androidx.security:security-app-authenticator:1.0.0-alpha01
. Версия 1.0.0-alpha01 содержит следующие изменения.
Новые функции
AppAuthenticator — это новая библиотека, призванная упростить проверку доверия приложений на основе подписи. Приложению достаточно указать XML-файл конфигурации, содержащий имена пакетов и подписи доверенных приложений, и библиотека возьмет на себя проверку подписи приложений во время выполнения.
Безопасность-Идентификация-Учетные данные Версия 1.0.0
Версия 1.0.0-альфа03
1 сентября 2021 г.
Выпущена версия androidx.security:security-identity-credential:1.0.0-alpha03
. Версия 1.0.0-alpha03 содержит следующие изменения.
Новые функции
- Добавлена поддержка аппаратных функций удостоверения личности в Android 12.
Версия 1.0.0-альфа02
24 февраля 2021 г.
Выпущена версия androidx.security:security-identity-credential:1.0.0-alpha02
. Версия 1.0.0-alpha02 содержит следующие изменения.
Исправления ошибок
- Обновление API удостоверений личности для соответствия тарифным планам Android 12 ( Iff83e )
Версия 1.0.0-альфа01
19 августа 2020 г.
Выпущена версия androidx.security:security-identity-credential:1.0.0-alpha01
. Версия 1.0.0-alpha01 содержит следующие изменения.
Новые функции
В этом выпуске Jetpack представлена версия API-интерфейсов удостоверений личности (Identity Credential), добавленная в Android 11 и API уровня 30. При работе на Android 11 и наличии аппаратной поддержки Identity Credential на устройстве Jetpack просто перенаправляет вызовы в API платформы. В противном случае будет использоваться реализация, реализованная в Android Keystore. Хотя реализация, реализованная в Android Keystore, не обеспечивает такого же уровня безопасности и конфиденциальности, она вполне подходит как для держателей, так и для эмитентов, если все данные подписаны эмитентом. Для этой библиотеки требуется API уровня 24 или выше.
API-интерфейсы для учётных данных предоставляют интерфейс к безопасному хранилищу документов, удостоверяющих личность пользователя. Эти API намеренно разработаны в достаточно общем и абстрактном ключе. Спецификация форматов сообщений и семантики взаимодействия с устройствами проверки учётных данных и органами выдачи (IA) выходит за рамки этих API, насколько это возможно. Структуры данных, от которых зависят эти API, совместимы со структурами данных стандарта ISO/IEC IS 18013-5 «Персональная идентификация — водительские права, соответствующие ISO — Часть 5: Мобильные водительские права (mDL)», который скоро будет выпущен.
Изменения API
- Добавлен Jetpack для проверки подлинности. ( Icf90b )
Security-Crypto Версия 1.1.0
Версия 1.1.0
30 июля 2025 г.
Выпущены androidx.security:security-crypto:1.1.0
и androidx.security:security-crypto-ktx:1.1.0
. Версия 1.1.0 содержит эти коммиты .
Версия 1.1.0-rc01
2 июля 2025 г.
Выпущены androidx.security:security-crypto:1.1.0-rc01
и androidx.security:security-crypto-ktx:1.1.0-rc01
. Версия 1.1.0-rc01 содержит эти коммиты .
Версия 1.1.0-beta01
4 июня 2025 г.
Выпущены androidx.security:security-crypto:1.1.0-beta01
и androidx.security:security-crypto-ktx:1.1.0-beta01
. Версия 1.1.0-beta01 содержит эти коммиты .
Изменения API
- Отменены все API в пользу существующих API платформы и прямого использования Android Keystore.
Версия 1.1.0-альфа07
9 апреля 2025 г.
Выпущены androidx.security:security-crypto:1.1.0-alpha07
и androidx.security:security-crypto-ktx:1.1.0-alpha07
. Версия 1.1.0-alpha07 содержит эти коммиты .
Изменения API
- Отменены все API в пользу существующих API платформы и прямого использования Android Keystore.
Версия 1.1.0-альфа06
19 апреля 2023 г.
Выпущены androidx.security:security-crypto:1.1.0-alpha06
и androidx.security:security-crypto-ktx:1.1.0-alpha06
. Версия 1.1.0-alpha06 содержит эти коммиты.
Новые функции
- Обновлена зависимость Tink до версии 1.8.0.
Версия 1.1.0-альфа05
22 февраля 2023 г.
Выпущены androidx.security:security-crypto:1.1.0-alpha05
и androidx.security:security-crypto-ktx:1.1.0-alpha05
. Версия 1.1.0-alpha05 содержит эти коммиты.
Исправления ошибок
- Исправлено состояние гонки в
MasterKeys.getOrCreate
( I3391e , b/268572037 )
Версия 1.1.0-альфа04
9 ноября 2022 г.
Выпущены androidx.security:security-crypto:1.1.0-alpha04
и androidx.security:security-crypto-ktx:1.1.0-alpha04
. Версия 1.1.0-alpha04 содержит эти коммиты.
Новые функции
- Удалено сообщение журнала «Набор ключей не найден, будет создан новый» при первом запуске приложения. ( b/185219606 )
- Зависимость Tink обновлена до версии 1.7.0.
Изменения API
- Изменяет
EncryptedFile#openFileInput()
так, чтобы он выдавалFileNotFoundException
вместо универсальногоIOException
, когда запрошенный файл не существует. ( I80e41 , b/148804719 ) - Обновлен класс «MasterKeys» для использования Android M, а не каждого из его методов. ( I8b4b8 )
- Изменяет все методы получения настроек в
EncryptedSharedPreferences
(например,#getString
,#getInt
), чтобы они вызывали исключениеSecurityException
в редких случаях, когда тип значения не может совпасть ни с одним из определенных вариантов перечисления. ( b/241699427 )
Исправления ошибок
- Минимальная версия SDK библиотеки security-crypto-ktx синхронизирована с security-crypto, путем понижения ее до v21 ( b/193550375 ).
- Исправлена ошибка параллелизма при создании нескольких
EncryptedFile
( b/136590547 )
Внешний вклад
- Получено исправление для
EncryptedSharedPreferences.Editor#remove
от chr.ibbotson@gmail.com ( b/224994760 , b/134197835 , f44d44d )
Security-Crypto-Ktx Версия 1.1.0-alpha03
18 мая 2021 г.
Выпущена версия androidx.security:security-crypto-ktx:1.1.0-alpha03
. Версия 1.1.0-alpha03 содержит следующие коммиты.
Обновлено для соответствия androidx.security:security-crypto:1.1.0-alpha03
.
Версия 1.1.0-альфа03
2 декабря 2020 г.
Выпущена версия androidx.security:security-crypto:1.1.0-alpha03
. Версия 1.1.0-alpha03 содержит следующие изменения.
Новые функции
- Tink обновлен до стабильной версии
1.5.0
Версия 1.1.0-альфа02
5 августа 2020 г.
Выпущены androidx.security:security-crypto:1.1.0-alpha02
и androidx.security:security-crypto-ktx:1.1.0-alpha02
. Версия 1.1.0-alpha02 содержит эти коммиты.
Новые функции
- Tink обновлен до стабильной версии
1.4.0
Исправления ошибок
- Обновление Tink должно исправить проблемы R8 и Proguard с затененной зависимостью Protobuf.
- Обновление Tink должно корректно обрабатывать сбои параллелизма AndroidKeyStore.
Внешний вклад
- очистить
mKeysChanged
при применении, исправить для EncryptedSharedPreferences ( aosp/1323026 )
Версия 1.1.0-альфа01
10 июня 2020 г.
Выпущена версия androidx.security:security-crypto:1.1.0-alpha01
. Версия 1.1.0-alpha01 содержит следующие изменения.
Новые функции
- Теперь поддерживается Lollipop (API уровня 21+). Обратите внимание, что AndroidKeyStore не используется для API 21 и 22. ( I7c12d , b/132325342 )
- Новый класс MasterKey предоставляет больше возможностей для ключей, а также прекращает поддержку MasterKey для поддержки новых функций и версий Android, не имеющих KeyGenParamSpec.
Security-Crypto Версия 1.0.0
Версия 1.0.0
21 апреля 2021 г.
Выпущена версия androidx.security:security-crypto:1.0.0
. Версия 1.0.0 содержит следующие изменения.
Основные особенности версии 1.0.0
Основные моменты
-
EncryptedFile
предоставляет зашифрованные входные и выходные потоки для чтения/записи зашифрованных данных в файл. -
EncryptedSharedPreferences
— обеспечивает реализацию SharedPreferences, которая автоматически шифрует/расшифровывает все ключи и значения. - Обеспечивает простую генерацию ключей с помощью MasterKeys.
- Для повышения стабильности используется Tink 1.5.0.
Версия 1.0.0-rc04
13 января 2021 г.
Выпущена версия androidx.security:security-crypto:1.0.0-rc04
. Версия 1.0.0-rc04 содержит следующие коммиты.
Исправления ошибок
- Обновление Tink до версии 1.5.0 для повышения стабильности.
Версия 1.0.0-rc03
5 августа 2020 г.
Выпущена версия androidx.security:security-crypto:1.0.0-rc03
. Версия 1.0.0-rc03 содержит следующие изменения.
Новые функции
- Tink обновлен до стабильной версии
1.4.0
Исправления ошибок
- Обновление Tink должно исправить проблемы R8 и Proguard с затененной зависимостью Protobuf.
- Обновление Tink должно корректно обрабатывать сбои параллелизма AndroidKeyStore.
Внешний вклад
- очистить
mKeysChanged
при применении, исправить для EncryptedSharedPreferences ( aosp/1323026 )
Версия 1.0.0-rc02
20 мая 2020 г.
Выпущена версия androidx.security:security-crypto:1.0.0-rc02
. Версия 1.0.0-rc02 содержит следующие изменения.
Исправления ошибок
- Обновление Tink до версии 1.4.0-rc2, которое затеняет зависимость Proto Buf Lite. Это решает широко известную проблему конфликта с другими SDK для Android. ( I8a831 )
- Исправлен
apply()
вEncryptedSharedPreferences
. ( I29069 , b/154366606 )
Версия 1.0.0-rc01
15 апреля 2020 г.
Выпущена версия androidx.security:security-crypto:1.0.0-rc01
. Версия 1.0.0-rc01 содержит следующие коммиты.
Исправления ошибок
- Добавлены проверки, гарантирующие, что если
KeyGenParamSpec
передается вMasterKeys.getOrCreate
, то еслиgetUserAuthenticationRequired
возвращаетtrue
, тоgetUserAuthenticationValidityDurationSeconds
возвращает значение >0. ( I911f5 ) ( b/152644939 )
Версия 1.0.0-beta01
18 марта 2020 г.
androidx.security:security-crypto:1.0.0-beta01
выпущен без изменений по сравнению с 1.0.0-alpha02
. Версия 1.0.0-beta01 содержит следующие коммиты .
Версия 1.0.0-альфа02
23 мая 2019 г.
Выпущена версия androidx.security:security-crypto:1.0.0-alpha02
. Изменения, включённые в эту версию, можно найти в этом журнале изменений .
Исправления ошибок
- Исправлена проблема с получением ключей/значений, связанных с общими настройками, из
getAll()
. - Заблокировано использование ограниченных ключей настроек.
- Небольшие обновления Javadoc.
Версия 1.0.0-альфа01
7 мая 2019 г.
Выпущена версия androidx.security:security-crypto:1.0.0-alpha01
. Изменения, включённые в эту версию, можно найти здесь .
Основные моменты новых функций
-
EncryptedFile
предоставляет зашифрованные входные и выходные потоки для чтения/записи зашифрованных данных в файл. -
EncryptedSharedPreferences
— обеспечивает реализациюSharedPreferences
, которая автоматически шифрует/расшифровывает все ключи и значения. - Обеспечивает простую генерацию ключей с помощью MasterKeys.