Security
最近更新时间 | 当前稳定版 | 下一候选版本 | Beta 版 | Alpha 版 |
---|---|---|---|---|
2021 年 1 月 13 日 | - | 1.0.0-rc04 | - | 1.1.0-alpha03 |
声明依赖项
如需添加 Security 的依赖项,您必须将 Google Maven 代码库添加到项目中。如需了解详情,请参阅 Google 的 Maven 代码库。
在应用或模块的 build.gradle
文件中添加所需工件的依赖项:
dependencies { implementation "androidx.security:security-crypto:1.0.0-rc04" // For Identity Credential APIs implementation "androidx.security:security-identity-credential:1.0.0-alpha01" }
如需详细了解依赖项,请参阅添加构建依赖项。
反馈
您的反馈将帮助我们改进 Jetpack。如果您发现了新问题,或对库的改进有某些建议,请告诉我们。创建新问题前,请先查看此库中的现有问题。您可以点击星标按钮,为现有问题投票。
如需了解详情,请参阅问题跟踪器文档。
版本 1.1.0
版本 1.1.0-alpha03
2020 年 12 月 2 日
发布了 androidx.security:security-crypto:1.1.0-alpha03
。版本 1.1.0-alpha03 中包含这些提交内容。
新功能
- 将 Tink 更新为了稳定版
1.5.0
版本 1.1.0-alpha02
2020 年 8 月 5 日
发布了 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-alpha01
2020 年 6 月 10 日
发布了 androidx.security:security-crypto:1.1.0-alpha01
。版本 1.1.0-alpha01 中包含这些提交内容。
新功能
- Lollipop(API 级别 21 以上)现在受支持。请注意,AndroidKeyStore 不用于 API 21 和 22。(I7c12d、b/132325342)
- 新的 MasterKey 类为密钥提供更多选项,同时弃用了 MasterKey 以支持新功能和不具有 KeyGenParamSpec 的 Android 版本。
Security-Identity-Credential 版本 1.0.0
Security-Identity-Credential 版本 1.0.0-alpha01
2020 年 8 月 19 日
发布了 androidx.security:security-identity-credential:1.0.0-alpha01
。版本 1.0.0-alpha01 中包含这些提交内容。
新功能
此 Jetpack 版本具有身份凭据 API 的 Jetpack 版本,它已添加到 Android 11 和 API 级别 30。如果设备搭载 Android 11 并提供由硬件支持的身份凭据支持,那么此 Jetpack 仅会向平台 API 转发调用。否则,将使用由 Android 密钥库支持的实现。虽然由 Android 密钥库支持的实现不会提供相同级别的安全和隐私保护,但只要所有数据都经颁发者签名,对持有者和颁发者而言,该实现就完全足够。此库需要 API 级别 24 或更高级别。
身份凭据 API 为用户身份文档提供安全存储的接口。这些 API 是极其普通且抽象的 API。与凭据验证设备和颁发机构 (IA) 通信时,消息格式和语义应尽可能不在这些 API 的范围内。这些 API 所依赖的数据结构与即将发布的《ISO/IEC IS 18013-5 个人身份识别 — 符合 ISO 要求的驾照 — 第 5 部分:移动驾照 (mDL) 申请标准》中的数据结构兼容。
API 变更
- 添加了身份凭据 Jetpack。(Icf90b)
版本 1.0.0
版本 1.0.0-rc04
2021 年 1 月 13 日
发布了 androidx.security:security-crypto:1.0.0-rc04
。版本 1.0.0-rc04 中包含这些提交内容。
问题修复
- 已将 Tink 升级到 1.5.0 以提升稳定性。
版本 1.0.0-rc03
2020 年 8 月 5 日
发布了 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
2020 年 5 月 20 日
发布了 androidx.security:security-crypto:1.0.0-rc02
。版本 1.0.0-rc02 中包含这些提交内容。
问题修复
- 已更新至 Tink 版本 1.4.0-rc2,可为 protobuf 精简依赖项添加阴影。这解决了被广泛报告的与其他 Android SDK 冲突的问题。(I8a831)
- 修复了
EncryptedSharedPreferences
中的apply()
。(I29069、b/154366606)
版本 1.0.0-rc01
2020 年 4 月 15 日
发布了 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
2020 年 3 月 18 日
发布了 androidx.security:security-crypto:1.0.0-beta01
,该版本与 1.0.0-alpha02
相比没有变化。版本 1.0.0-beta01 中包含这些提交内容。
版本 1.0.0-alpha02
2019 年 5 月 23 日
发布了 androidx.security:security-crypto:1.0.0-alpha02
。点击提交内容日志可查看此版本中包含的提交内容。
问题修复
- 修复了从
getAll()
检索与共享偏好设置相关的键值对时出现的问题。 - 已阻止使用受限的偏好设置键。
- 对 Javadoc 进行了次要更新。
版本 1.0.0-alpha01
2019 年 5 月 7 日
发布了 androidx.security:security-crypto:1.0.0-alpha01
。点击此处可查看此版本中包含的提交内容。
新功能亮点
EncryptedFile
,提供加密输入和输出流,以从文件读取或向文件写入加密数据。EncryptedSharedPreferences
,提供了SharedPreferences
的实现,可自动加密/解密所有键和值。- 通过 MasterKeys 提供简单的密钥生成机制。