Безопасность

Безопасно управляйте ключами, шифруйте файлы и общие настройки.

В этой таблице перечислены все артефакты в группе androidx.security .

Артефакт Стабильный выпуск Кандидат на выпуск Бета-версия Альфа-релиз
безопасность-крипто 1.0.0 - - 1.1.0-альфа06
безопасность-приложение-аутентификатор - - 1.0.0-бета01 -
учетные данные-идентификации безопасности - - - 1.0.0-альфа03
Последнее обновление этой библиотеки: 7 августа 2024 г.

Объявление зависимостей

Чтобы добавить зависимость от безопасности, необходимо добавить в свой проект репозиторий Google Maven. Для получения дополнительной информации прочтите репозиторий Google Maven .

Добавьте зависимости для нужных вам артефактов в файл build.gradle для вашего приложения или модуля:

Дополнительные сведения о зависимостях см. в разделе Добавление зависимостей сборки .

Обратная связь

Ваши отзывы помогают сделать Jetpack лучше. Дайте нам знать, если вы обнаружите новые проблемы или у вас есть идеи по улучшению этой библиотеки. Пожалуйста, ознакомьтесь с существующими проблемами в этой библиотеке, прежде чем создавать новую. Вы можете добавить свой голос к существующей проблеме, нажав кнопку со звездочкой.

Создать новую задачу

Дополнительную информацию см . в документации по системе отслеживания проблем .

Состояние безопасности версии 1.0

Версия 1.0.0-альфа04

7 августа 2024 г.

androidx.security:security-state:1.0.0-alpha04 выпущен. Версия 1.0.0-alpha04 содержит эти коммиты .

Примечание

  • Обновите compileSdk до версии 35 5dc41be.

Изменения API

  • Критическое изменение: перечисление компонентов было заменено строковыми константами для расширяемости. ( Я3283 ​​)

Версия 1.0.0-альфа03

10 июля 2024 г.

androidx.security:security-state:1.0.0-alpha03 выпущен. Версия 1.0.0-alpha03 содержит эти коммиты .

Исправления ошибок

  • Исправление шаблона ASB-A- для ошибок бюллетеня по безопасности Android, синтаксического анализа JSON для дополнительных компонентов и извлечения пакетов Webview . ( Иде86а )

Версия 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 содержит эти коммиты .

Новые возможности

  • Состояние безопасности — это новая библиотека, которую разработчики могут использовать для получения полезных данных о версиях обновляемых компонентов системы, обновлениях безопасности и применяемых исправлениях.

Тестирование аутентификатора приложения безопасности, версия 1.0

Версия 1.0.0-бета01

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 затем сообщит о совпадении подписи только в том случае, если предоставленный идентификатор соответствует объявлению в файле конфигурации.
  • Пакеты также могут считаться неустановленными или имеющими явный идентификатор пользователя.

Security-App-Authenticator версии 1.0.0

Версия 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, атрибут ignoreAlgorithm больше не может быть указан в конфигурации; вместо этого все дайджесты сертификатов должны рассчитываться с использованием SHA-256.

Исправления ошибок

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

Версия 1.0.0-альфа01

5 мая 2021 г.

androidx.security:security-app-authenticator:1.0.0-alpha01 выпущен. Версия 1.0.0-alpha01 содержит эти коммиты.

Новые возможности

AppAuthenticator — это новая библиотека, призванная упростить проверку доверия приложений на основе подписи удостоверений. Приложению просто нужно указать файл конфигурации XML, содержащий имена пакетов и удостоверения подписи доверенных приложений, а библиотека позаботится о проверке удостоверений подписи приложений во время выполнения.

Версия 1.1.0

Версия 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 содержит эти коммиты.

Новые возможности

  • Удалено сообщение журнала «Набор ключей не найден, будет сгенерирован новый» при первом запуске приложения. ( б / 185219606 )
  • Зависимость Tink обновлена ​​до версии 1.7.0.

Изменения API

  • Изменяет EncryptedFile#openFileInput() для выдачи исключения FileNotFoundException вместо общего исключения IOException , когда запрошенный файл не существует. ( I80e41 , б/148804719 )
  • Обновлен класс MasterKeys, теперь требуется Android M, а не каждый из его методов. ( I8b4b8 )
  • Изменяет все методы получения предпочтений в EncryptedSharedPreferences (например, #getString , #getInt ) для выдачи SecurityException в редких случаях, когда тип значения не может быть сопоставлен с одним из определенных вариантов перечисления. ( б/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 предоставляет больше возможностей для ключей, а также исключает поддержку MasterKeys для поддержки новых функций и версий Android, не имеющих KeyGenParamSpec.

Security-Identity-Credential Версия 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 содержит эти коммиты.

Исправления ошибок

  • Обновите Identity Credential API в соответствии с планами Android 12 ( Iff83e ).

Версия 1.0.0-альфа01

19 августа 2020 г.

androidx.security:security-identity-credential:1.0.0-alpha01 выпущен. Версия 1.0.0-alpha01 содержит эти коммиты.

Новые возможности

В этом выпуске Jetpack представлена ​​версия Jetpack API-интерфейсов Identity Credential, которая была добавлена ​​​​в Android 11, и уровень API 30. Если вы работаете на Android 11 и устройство имеет аппаратную поддержку Identity Credential, то этот Jetpack просто перенаправляет вызовы к API платформы. В противном случае будет использоваться реализация, поддерживаемая хранилищем ключей Android. Хотя реализация, поддерживаемая хранилищем ключей Android, не обеспечивает такой же уровень безопасности и конфиденциальности, она вполне подходит как для держателей, так и для эмитентов в тех случаях, когда все данные подписаны эмитентом. Для этой библиотеки требуется уровень API 24 или более поздний.

API-интерфейсы Identity Credential предоставляют интерфейс к безопасному хранилищу документов, удостоверяющих личность пользователя. Эти API намеренно являются довольно общими и абстрактными. Насколько это возможно, спецификация форматов сообщений и семантики связи с устройствами проверки учетных данных и органами выдачи (IA) выходит за рамки этих API. Структуры данных, от которых зависят API, совместимы со структурами данных в стандарте ISO/IEC IS 18013-5, который скоро будет выпущен. Идентификация личности. Водительские права, соответствующие ISO. Часть 5. Стандарт применения мобильных водительских прав (mDL).

Изменения API

  • Добавлен реактивный ранец с идентификационными данными. ( Icf90b )

Версия 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, которая затеняет прото buf lite dep. Это решает широко распространенную проблему конфликтов с другими SDK для Android. ( I8a831 )
  • Исправлен apply() в EncryptedSharedPreferences . ( I29069 , б / 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 ) ( б / 152644939 )

Версия 1.0.0-бета01

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.
,

Безопасность

Безопасно управляйте ключами, шифруйте файлы и общие настройки.

В этой таблице перечислены все артефакты группы androidx.security .

Артефакт Стабильный выпуск Кандидат на выпуск Бета-версия Альфа-релиз
безопасность-крипто 1.0.0 - - 1.1.0-альфа06
безопасность-приложение-аутентификатор - - 1.0.0-бета01 -
учетные данные-идентификации безопасности - - - 1.0.0-альфа03
Последнее обновление этой библиотеки: 7 августа 2024 г.

Объявление зависимостей

Чтобы добавить зависимость от безопасности, необходимо добавить в свой проект репозиторий Google Maven. Для получения дополнительной информации прочтите репозиторий Google Maven .

Добавьте зависимости для нужных вам артефактов в файл build.gradle для вашего приложения или модуля:

Дополнительные сведения о зависимостях см. в разделе Добавление зависимостей сборки .

Обратная связь

Ваши отзывы помогают сделать Jetpack лучше. Дайте нам знать, если вы обнаружите новые проблемы или у вас есть идеи по улучшению этой библиотеки. Пожалуйста, ознакомьтесь с существующими проблемами в этой библиотеке, прежде чем создавать новую. Вы можете добавить свой голос к существующей проблеме, нажав кнопку со звездочкой.

Создать новую задачу

Дополнительную информацию см . в документации по системе отслеживания проблем .

Состояние безопасности версии 1.0

Версия 1.0.0-альфа04

7 августа 2024 г.

androidx.security:security-state:1.0.0-alpha04 выпущен. Версия 1.0.0-alpha04 содержит эти коммиты .

Примечание

  • Обновите compileSdk до версии 35 5dc41be.

Изменения API

  • Критическое изменение: перечисление компонентов было заменено строковыми константами для расширяемости. ( Я3283 ​​)

Версия 1.0.0-альфа03

10 июля 2024 г.

androidx.security:security-state:1.0.0-alpha03 выпущен. Версия 1.0.0-alpha03 содержит эти коммиты .

Исправления ошибок

  • Исправление шаблона ASB-A- для ошибок бюллетеня по безопасности Android, синтаксического анализа JSON для дополнительных компонентов и извлечения пакетов Webview . ( Иде86а )

Версия 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 содержит эти коммиты .

Новые возможности

  • Состояние безопасности — это новая библиотека, которую разработчики могут использовать для получения полезных данных о версиях обновляемых компонентов системы, обновлениях безопасности и применяемых исправлениях.

Тестирование аутентификатора приложения безопасности, версия 1.0

Версия 1.0.0-бета01

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 затем сообщит о совпадении подписи только в том случае, если предоставленный идентификатор соответствует объявлению в файле конфигурации.
  • Пакеты также могут считаться неустановленными или имеющими явный идентификатор пользователя.

Security-App-Authenticator версии 1.0.0

Версия 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, атрибут ignoreAlgorithm больше не может быть указан в конфигурации; вместо этого все дайджесты сертификатов должны рассчитываться с использованием SHA-256.

Исправления ошибок

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

Версия 1.0.0-альфа01

5 мая 2021 г.

androidx.security:security-app-authenticator:1.0.0-alpha01 выпущен. Версия 1.0.0-alpha01 содержит эти коммиты.

Новые возможности

AppAuthenticator — это новая библиотека, призванная упростить проверку доверия приложений на основе подписи удостоверений. Приложению просто нужно указать файл конфигурации XML, содержащий имена пакетов и удостоверения подписи доверенных приложений, а библиотека позаботится о проверке удостоверений подписи приложений во время выполнения.

Версия 1.1.0

Версия 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 содержит эти коммиты.

Новые возможности

  • Удалено сообщение журнала «набор ключей не найден, будет сгенерирован новый» при первом запуске приложения. ( б / 185219606 )
  • Зависимость Tink обновлена ​​до версии 1.7.0.

Изменения API

  • Изменяет EncryptedFile#openFileInput() для выдачи исключения FileNotFoundException вместо общего исключения IOException , когда запрошенный файл не существует. ( I80e41 , б/148804719 )
  • Обновлен класс MasterKeys, теперь требуется Android M, а не каждый из его методов. ( I8b4b8 )
  • Изменяет все методы получения предпочтений в EncryptedSharedPreferences (например, #getString , #getInt ) для выдачи SecurityException в редких случаях, когда тип значения не может быть сопоставлен с одним из определенных вариантов перечисления. ( б/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 предоставляет больше возможностей для ключей, а также исключает поддержку MasterKeys для поддержки новых функций и версий Android, не имеющих KeyGenParamSpec.

Security-Identity-Credential Версия 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 содержит эти коммиты.

Исправления ошибок

  • Обновите Identity Credential API в соответствии с планами Android 12 ( Iff83e ).

Версия 1.0.0-альфа01

19 августа 2020 г.

androidx.security:security-identity-credential:1.0.0-alpha01 выпущен. Версия 1.0.0-alpha01 содержит эти коммиты.

Новые возможности

В этом выпуске Jetpack представлена ​​версия Jetpack API-интерфейсов Identity Credential, которая была добавлена ​​​​в Android 11, и уровень API 30. Если вы работаете на Android 11 и устройство имеет аппаратную поддержку Identity Credential, то этот Jetpack просто перенаправляет вызовы к API платформы. В противном случае будет использоваться реализация, поддерживаемая хранилищем ключей Android. Хотя реализация, поддерживаемая хранилищем ключей Android, не обеспечивает такой же уровень безопасности и конфиденциальности, она вполне подходит как для держателей, так и для эмитентов в тех случаях, когда все данные подписаны эмитентом. Для этой библиотеки требуется уровень API 24 или более поздний.

API-интерфейсы Identity Credential предоставляют интерфейс к безопасному хранилищу документов, удостоверяющих личность пользователя. Эти API намеренно являются довольно общими и абстрактными. Насколько это возможно, спецификация форматов сообщений и семантики связи с устройствами проверки учетных данных и органами выдачи (IA) выходит за рамки этих API. Структуры данных, от которых зависят API, совместимы со структурами данных в стандарте ISO/IEC IS 18013-5, который скоро будет выпущен. Идентификация личности. Водительские права, соответствующие ISO. Часть 5. Стандарт применения мобильных водительских прав (mDL).

Изменения API

  • Добавлен реактивный ранец с идентификационными данными. ( Icf90b )

Версия 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, которая затеняет прото buf lite dep. Это решает широко распространенную проблему конфликтов с другими SDK для Android. ( I8a831 )
  • Исправлен apply() в EncryptedSharedPreferences . ( I29069 , б / 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 ) ( б / 152644939 )

Версия 1.0.0-бета01

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.
,

Безопасность

Безопасно управляйте ключами, шифруйте файлы и общие настройки.

В этой таблице перечислены все артефакты в группе androidx.security .

Артефакт Стабильный выпуск Кандидат на выпуск Бета-версия Альфа-релиз
безопасность-крипто 1.0.0 - - 1.1.0-альфа06
безопасность-приложение-аутентификатор - - 1.0.0-бета01 -
учетные данные-идентификации безопасности - - - 1.0.0-альфа03
Последнее обновление этой библиотеки: 7 августа 2024 г.

Объявление зависимостей

Чтобы добавить зависимость от безопасности, необходимо добавить в свой проект репозиторий Google Maven. Для получения дополнительной информации прочтите репозиторий Google Maven .

Добавьте зависимости для нужных вам артефактов в файл build.gradle для вашего приложения или модуля:

Дополнительные сведения о зависимостях см. в разделе Добавление зависимостей сборки .

Обратная связь

Ваши отзывы помогают сделать Jetpack лучше. Дайте нам знать, если вы обнаружите новые проблемы или у вас есть идеи по улучшению этой библиотеки. Пожалуйста, ознакомьтесь с существующими проблемами в этой библиотеке, прежде чем создавать новую. Вы можете добавить свой голос к существующей проблеме, нажав кнопку со звездочкой.

Создать новую задачу

Дополнительную информацию см . в документации по системе отслеживания проблем .

Состояние безопасности версии 1.0

Версия 1.0.0-альфа04

7 августа 2024 г.

androidx.security:security-state:1.0.0-alpha04 выпущен. Версия 1.0.0-alpha04 содержит эти коммиты .

Примечание

  • Обновите compileSdk до версии 35 5dc41be.

Изменения API

  • Критическое изменение: перечисление компонентов было заменено строковыми константами для расширяемости. ( Я3283 ​​)

Версия 1.0.0-альфа03

10 июля 2024 г.

androidx.security:security-state:1.0.0-alpha03 выпущен. Версия 1.0.0-alpha03 содержит эти коммиты .

Исправления ошибок

  • Исправление шаблона ASB-A- для ошибок бюллетеня по безопасности Android, синтаксического анализа JSON для дополнительных компонентов и извлечения пакетов Webview . ( Иде86а )

Версия 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-App, версия 1.0

Версия 1.0.0-бета01

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 затем сообщит о совпадении подписи только в том случае, если предоставленный идентификатор соответствует объявлению в файле конфигурации.
  • Пакеты также могут считаться неустановленными или имеющими явный идентификатор пользователя.

Security-App-Authenticator версии 1.0.0

Версия 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, атрибут ignoreAlgorithm больше не может быть указан в конфигурации; вместо этого все дайджесты сертификатов должны рассчитываться с использованием SHA-256.

Исправления ошибок

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

Версия 1.0.0-альфа01

5 мая 2021 г.

androidx.security:security-app-authenticator:1.0.0-alpha01 выпущен. Версия 1.0.0-alpha01 содержит эти коммиты.

Новые возможности

AppAuthenticator — это новая библиотека, призванная упростить проверку доверия приложений на основе подписи удостоверений. Приложению просто нужно указать файл конфигурации XML, содержащий имена пакетов и удостоверения подписи доверенных приложений, а библиотека позаботится о проверке удостоверений подписи приложений во время выполнения.

Версия 1.1.0

Версия 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 содержит эти коммиты.

Новые возможности

  • Удалено сообщение журнала «Набор ключей не найден, будет сгенерирован новый» при первом запуске приложения. ( б / 185219606 )
  • Зависимость Tink обновлена ​​до версии 1.7.0.

Изменения API

  • Изменяет EncryptedFile#openFileInput() для выдачи исключения FileNotFoundException вместо общего исключения IOException , когда запрошенный файл не существует. ( I80e41 , б/148804719 )
  • Обновлен класс MasterKeys, теперь требуется Android M, а не каждый из его методов. ( I8b4b8 )
  • Изменяет все методы получения предпочтений в EncryptedSharedPreferences (например, #getString , #getInt ) для выдачи SecurityException в редких случаях, когда тип значения не может быть сопоставлен с одним из определенных вариантов перечисления. ( б/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 предоставляет больше возможностей для ключей, а также исключает поддержку MasterKeys для поддержки новых функций и версий Android, не имеющих KeyGenParamSpec.

Security-Identity-Credential Версия 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 содержит эти коммиты.

Исправления ошибок

  • Обновите Identity Credential API в соответствии с планами Android 12 ( Iff83e ).

Версия 1.0.0-альфа01

19 августа 2020 г.

androidx.security:security-identity-credential:1.0.0-alpha01 выпущен. Версия 1.0.0-alpha01 содержит эти коммиты.

Новые возможности

В этом выпуске Jetpack представлена ​​версия Jetpack API-интерфейсов Identity Credential, которая была добавлена ​​​​в Android 11, и уровень API 30. Если вы работаете на Android 11 и устройство имеет аппаратную поддержку Identity Credential, то этот Jetpack просто перенаправляет вызовы к API платформы. В противном случае будет использоваться реализация, поддерживаемая хранилищем ключей Android. Хотя реализация, поддерживаемая хранилищем ключей Android, не обеспечивает такой же уровень безопасности и конфиденциальности, она вполне подходит как для держателей, так и для эмитентов в тех случаях, когда все данные подписаны эмитентом. Для этой библиотеки требуется уровень API 24 или более поздний.

API-интерфейсы Identity Credential предоставляют интерфейс к безопасному хранилищу документов, удостоверяющих личность пользователя. Эти API намеренно являются довольно общими и абстрактными. Насколько это возможно, спецификация форматов сообщений и семантики связи с устройствами проверки учетных данных и органами выдачи (IA) выходит за рамки этих API. Структуры данных, от которых зависят API, совместимы со структурами данных в стандарте ISO/IEC IS 18013-5, который скоро будет выпущен. Идентификация личности. Водительские права, соответствующие ISO. Часть 5. Стандарт применения мобильных водительских прав (mDL).

Изменения API

  • Добавлен реактивный ранец с идентификационными данными. ( Icf90b )

Версия 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 -Crypto:1.0.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 -Crypto:1.0.0.0-RC03 выпущен. Версия 1.0.0-RC03 содержит эти коммиты.

Новые возможности

  • Обновлено Tink до стабильного выпуска 1.4.0

Исправления ошибок

  • Обновление Tink должно исправить проблемы R8 и прогноза с затененной зависимостью Protobuf.
  • Обновление Tink должно изящно обрабатывать сбои параллелизма AndroidKeyStore.

Внешний вклад

  • Чистый mKeysChanged на Apply, исправление для зашифрованных поэтапно -референций ( AOSP/1323026 )

Версия 1.0.0-rc02

20 мая 2020 г.

androidx.security:security-crypto:1.0.0-rc02 :1.0.0-RC02 выпускается. Версия 1.0.0-RC02 содержит эти коммиты.

Исправления ошибок

  • Обновлено до Tink версии 1.4.0-RC2, которая затеняет Proto Buf Lite Dep. Это решает широко известную проблему столкновения с другими Android SDK. ( I8a831 )
  • Fixed apply() в EncryptedSharedPreferences . ( I29069 , B/154366606 )

Версия 1.0.0-rc01

15 апреля 2020 г.

androidx.security:security-crypto:1.0.0-rc01 -Crypto:1.0.0.0-RC01 выпущен. Версия 1.0.0-rc01 содержит эти коммиты.

Исправления ошибок

  • Добавлены проверки, чтобы убедиться, что если KeyGenParamSpec передается в MasterKeys.getOrCreate , если getUserAuthenticationRequired возвращает, true , что getUserAuthenticationValidityDurationSeconds возвращает значение> 0. ( I911f5 ) ( b/152644939 )

Версия 1.0.0-бета01

18 марта 2020 года

androidx.security:security-crypto:1.0.0-beta01 :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 -Crypto:1.0.0-Alpha02 выпущен. Коммуты, включенные в эту версию, можно найти в этом журнале Commit .

Исправления ошибок

  • Исправленная проблема извлечения ключа/значений, связанных с общими предпочтениями из getAll() .
  • Заблокированное использование ограниченных ключей предпочтения.
  • Незначительные обновления Javadoc.

Версия 1.0.0-альфа01

7 мая 2019 г.

androidx.security:security-crypto:1.0.0-alpha01 :1.0.0-Alpha01 выпускается. Коммиты, включенные в эту версию, можно найти здесь .

Новые основные моменты

  • EncryptedFile , предоставляет зашифрованные входные и выходные потоки для чтения/записи зашифрованных данных в файл.
  • EncryptedSharedPreferences , предоставляет реализацию SharedPreferences , которая автоматически шифрует/дешифрует все ключи и значения.
  • Обеспечивает простое поколение ключей через Masterkeys.
,

Безопасность

Безопасно управлять ключами и файлов шифрования и SharedPreferences.

В этой таблице перечислены все артефакты в группе androidx.security .

Артефакт Стабильный выпуск Кандидат на выпуск Бета-версия Альфа-релиз
Security-Crypto 1.0.0 - - 1.1.0-Alpha06
Security-App-Authenticator - - 1.0.0-бета01 -
Безопасность-идентификация-Креда - - - 1.0.0-Alpha03
Эта библиотека была в последний раз обновлялась: 7 августа 2024 г.

Объявление зависимостей

Чтобы добавить зависимость от безопасности, вы должны добавить репозиторий Google Maven в свой проект. Для получения дополнительной информации прочтите репозиторий Google Maven .

Добавьте зависимости для нужных вам артефактов в файл build.gradle для вашего приложения или модуля:

Дополнительные сведения о зависимостях см. в разделе Добавление зависимостей сборки .

Обратная связь

Ваши отзывы помогают сделать Jetpack лучше. Дайте нам знать, если вы обнаружите новые проблемы или у вас есть идеи по улучшению этой библиотеки. Пожалуйста, ознакомьтесь с существующими проблемами в этой библиотеке, прежде чем создавать новую. Вы можете добавить свой голос к существующей проблеме, нажав кнопку со звездочкой.

Создать новую задачу

Дополнительную информацию см . в документации по системе отслеживания проблем .

Версия по безопасности 1.0

Версия 1.0.0-альфа04

7 августа 2024 г.

androidx.security:security-state:1.0.0-alpha04 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 State:1.0.0-Alpha03 выпускается. Версия 1.0.0-alpha03 содержит эти коммиты .

Исправления ошибок

  • Исправлена ​​шаблон ASB-A-A для ошибок Bulletin Android Security, диаграммы JSON для дополнительных компонентов и поиск упаковки Webview . ( IDE86A )

Версия 1.0.0-альфа02

26 июня 2024 г.

androidx.security:security-state:1.0.0-alpha02 State:1.0.0-Alpha02 выпускается. Версия 1.0.0-alpha02 содержит эти коммиты .

Исправления ошибок

  • Исправлена ​​логика получения версии ядра. ( I5602a )

Версия 1.0.0-альфа01

12 июня 2024 г.

androidx.security:security-state:1.0.0-alpha01 State:1.0.0-Alpha01 выпускается. Версия 1.0.0-Alpha01 содержит эти коммиты .

Новые возможности

  • Security State - это новые разработчики библиотеки могут использовать для получения действенных данных о версиях обновляемых системных компонентов, обновлений безопасности и примененных исправлений.

Security-App-Authenticator-тестирование версии 1.0

Версия 1.0.0-бета01

6 марта 2024 г.

androidx.security:security-app-authenticator:1.0.0-beta01 -Authenticator:1.0.0-beta01 и androidx.security:security-app-authenticator-testing:1.0.0-beta01 -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 App-Authenticator-тестирование: 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 App-Authenticator-тестирование: 1.0.0-Alpha01. Версия 1.0.0-alpha01 содержит эти коммиты.

Новые возможности

Эта библиотека тестирования предоставляет строитель, который может использоваться для настройки инъекционного appauthenticator для удовлетворения требований теста. Эта библиотека поддерживает несколько методов настройки Appauthenticator:

  • Можно указать общую политику тестирования, в которой сообщается о совпадении подписи для всех пакетов, объявленных в конфигурации.
  • Отдельные пакеты могут быть указаны, чтобы вернуть подпись со всеми другими пакетами, сообщающими об отсутствии совпадения.
  • Явные идентификаторы подписания могут быть установлены для каждого пакета; Полученный appauthenticator будет сообщать только о подписи, если предоставленная идентификация соответствует объявлению в файле конфигурации.
  • Пакеты также могут рассматриваться как не установленные или имеющие явный UID.

Security-App-Authenticator Версия 1.0.0

Версия 1.0.0-альфа03

13 декабря 2023 г.

androidx.security:security-app-authenticator:1.0.0-alpha03 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 App-Authenticator:1.0.0-Alpha02 выпускается. Версия 1.0.0-alpha02 содержит эти коммиты.

Изменения API

  • При подготовке к поддержке нового knownSigner флага защиты разрешений, введенного в Android 12, атрибут DistestAlgorithm больше не может быть указан в конфигурации; Вместо этого все дайджесты сертификата должны быть рассчитаны с использованием SHA-256.

Исправления ошибок

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

Версия 1.0.0-альфа01

5 мая 2021 года

androidx.security:security-app-authenticator:1.0.0-alpha01 App-Authenticator:1.0.0-Alpha01 выпущен. Версия 1.0.0-alpha01 содержит эти коммиты.

Новые возможности

Appauthenticator - это новая библиотека, направленная на упрощение проверки доверия APP, основанного на подписании личности. Приложению просто должно указать файл конфигурации XML, содержащий имена пакетов и подписание идентификаторов доверенных приложений, и библиотека позаботится о проверке подписания идентификации приложений во время выполнения.

Версия 1.1.0

Версия 1.1.0-Alpha06

19 апреля 2023 года

androidx.security:security-crypto:1.1.0-alpha06 :1.1.0-Alpha06 и androidx.security:security-crypto-ktx:1.1.0-alpha06 Security-Crypto-Ktx:1.1.0-Alpha06 выпускаются. Версия 1.1.0-Alpha06 содержит эти коммиты.

Новые возможности

  • Обновленная зависимость Tink до 1.8.0

Версия 1.1.0-Alpha05

22 февраля 2023 года

androidx.security:security-crypto:1.1.0-alpha05 :1.1.0-Alpha05 и androidx.security:security-crypto-ktx:1.1.0-alpha05 Security-Crypto-Ktx:1.1.0-Alpha05 выпускаются. Версия 1.1.0-Alpha05 содержит эти коммиты.

Исправления ошибок

  • Исправлена ​​условия гонки в MasterKeys.getOrCreate ( i3391e , b/268572037 )

Версия 1.1.0-Alpha04

9 ноября 2022 г.

androidx.security:security-crypto:1.1.0-alpha04 :1.1.0-Alpha04 и androidx.security:security-crypto-ktx:1.1.0-alpha04 Security-Crypto-Ktx:1.1.0-Alpha04 выпускаются. Версия 1.1.0-Alpha04 содержит эти коммиты.

Новые возможности

  • Удаленное сообщение журнала «Keyset не найдено, генерирует новый» при первом запуска приложения. ( B/185219606 )
  • Обновленная зависимость Tink до версии 1.7.0.

Изменения API

  • Изменения EncryptedFile#openFileInput() для выброса FileNotFoundException , а не общее IOException , когда запрашиваемый файл не существует. ( I80e41 , b/148804719 )
  • Обновлено класс Masterkeys, чтобы потребовать Android M, а не каждый из его методов. ( I8b4b8 )
  • Изменения все предпочтения получают на EncryptedSharedPreferences (Ex #getString , #getInt ), чтобы добавить SecurityException в редких обстоятельствах, где тип значения не может быть сопоставлен с одним из определенных вариантов Enum. ( 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 -Crypto-Ktx:1.1.0-Alpha03 выпущен. Версия 1.1.0-Alpha03 содержит эти коммиты.

Обновлено в соответствии с androidx.security:security-crypto:1.1.0-alpha03 :1.1.0-Alpha03.

Версия 1.1.0-альфа03

2 декабря 2020 г.

androidx.security:security-crypto:1.1.0-alpha03 -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 :1.1.0-Alpha02 и androidx.security:security-crypto-ktx:1.1.0-alpha02 Security-Crypto-Ktx:1.1.0-Alpha02 выпускаются. Версия 1.1.0-alpha02 содержит эти коммиты.

Новые возможности

  • Обновлено Tink до стабильного выпуска 1.4.0

Исправления ошибок

  • Обновление Tink должно исправить проблемы R8 и прогноза с затененной зависимостью Protobuf.
  • Обновление Tink должно изящно обрабатывать сбои параллелизма AndroidKeyStore.

Внешний вклад

  • Чистый mKeysChanged на Apply, исправление для зашифрованных поэтапно -референций ( AOSP/1323026 )

Версия 1.1.0-альфа01

10 июня 2020 года

androidx.security:security-crypto:1.1.0-alpha01 -Crypto:1.1.0-Alpha01 выходит. Версия 1.1.0-alpha01 содержит эти коммиты.

Новые возможности

  • Lollipop (API -уровень 21+) теперь поддерживается. Обратите внимание, что AndroidKeyStore не используется для API 21 и 22. ( I7C12D , B/132325342 )
  • Новый класс Masterkey предоставляет больше вариантов для ключей, а также выходящие из Masterkeys для поддержки новых функций и версий Android, которые не имеют KeyGenParamSpec.

Security-Identity-Credential Version 1.0.0

Версия 1.0.0-альфа03

1 сентября 2021 года

androidx.security:security-identity-credential:1.0.0-alpha03 -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 -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 -Credential: 1.0.0-Alpha01 выпускается. Версия 1.0.0-alpha01 содержит эти коммиты.

Новые возможности

В этом выпуске JetPack есть версия API-интерфейсов учетных данных идентификации, которая была добавлена ​​в Android 11 и API-уровне 30. Если работа на Android 11 и у устройства есть поддержка учетных данных идентификации, тогда этот JetPack просто пересылает вызовы на API платформы. В противном случае будет использоваться реализация Android-ключа. Хотя реализация Android-ключа, поддерживаемая хранилищем Эта библиотека требует уровня API 24 или позже.

API -интерфейсы учетных данных идентификации предоставляют интерфейс для безопасного магазина для документов идентификации пользователей. Эти API намеренно довольно общие и абстрактные. Насколько это возможно, спецификация форматов сообщений и семантики общения с устройствами проверки учетных данных и органами власти (IAS) выходит за рамки этих API. Структуры данных, от которых зависят API, совместимы со структурами данных в скорости, которая вскоре будет выпущена ISO/IEC, составляет 18013-5 Личная идентификация-ISO-совместимые водительские права-Часть 5: Стандарт мобильных водительских прав (MDL).

Изменения API

  • Добавлен адаптационные данные JetPack. ( ICF90B )

Версия 1.0.0

Версия 1.0.0

21 апреля 2021 г.

androidx.security:security-crypto:1.0.0 :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 -Crypto:1.0.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 -Crypto:1.0.0.0-RC03 выпущен. Версия 1.0.0-RC03 содержит эти коммиты.

Новые возможности

  • Обновлено Tink до стабильного выпуска 1.4.0

Исправления ошибок

  • Обновление Tink должно исправить проблемы R8 и прогноза с затененной зависимостью Protobuf.
  • Обновление Tink должно изящно обрабатывать сбои параллелизма AndroidKeyStore.

Внешний вклад

  • Чистый mKeysChanged на Apply, исправление для зашифрованных поэтапно -референций ( AOSP/1323026 )

Версия 1.0.0-rc02

20 мая 2020 г.

androidx.security:security-crypto:1.0.0-rc02 :1.0.0-RC02 выпускается. Версия 1.0.0-RC02 содержит эти коммиты.

Исправления ошибок

  • Обновлено до Tink версии 1.4.0-RC2, которая задерживает Proto Buf Lite Dep. Это решает широко известную проблему столкновения с другими Android SDK. ( I8a831 )
  • Fixed apply() в EncryptedSharedPreferences . ( I29069 , B/154366606 )

Версия 1.0.0-rc01

15 апреля 2020 г.

androidx.security:security-crypto:1.0.0-rc01 -Crypto:1.0.0.0-RC01 выпущен. Версия 1.0.0-rc01 содержит эти коммиты.

Исправления ошибок

  • Добавлены проверки, чтобы убедиться, что если KeyGenParamSpec передается в MasterKeys.getOrCreate , если getUserAuthenticationRequired возвращает, true , что getUserAuthenticationValidityDurationSeconds возвращает значение> 0. ( I911f5 ) ( b/152644939 )

Версия 1.0.0-бета01

18 марта 2020 года

androidx.security:security-crypto:1.0.0-beta01 :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 -Crypto:1.0.0-Alpha02 выпущен. Коммуты, включенные в эту версию, можно найти в этом журнале Commit .

Исправления ошибок

  • Исправленная проблема извлечения ключа/значений, связанных с общими предпочтениями из getAll() .
  • Заблокированное использование ограниченных ключей предпочтения.
  • Незначительные обновления Javadoc.

Версия 1.0.0-альфа01

7 мая 2019 г.

androidx.security:security-crypto:1.0.0-alpha01 :1.0.0-Alpha01 выпускается. Коммиты, включенные в эту версию, можно найти здесь .

Новые основные моменты

  • EncryptedFile , предоставляет зашифрованные входные и выходные потоки для чтения/записи зашифрованных данных в файл.
  • EncryptedSharedPreferences , предоставляет реализацию SharedPreferences , которая автоматически шифрует/дешифрует все ключи и значения.
  • Обеспечивает простое поколение ключей через Masterkeys.