Key管理器提供函数来安全地储存键,相关证书,和敏感数据用户和密码保护应用程序。 此外,它提供了安全密码操作不可导出键没有透露客户的键值。 Key管理器存储密钥、证书和敏感的用户数据在中央安全存储库。 中央安全存储库是受密码保护。 Key管理器API的主要特点包括: - 数据存储策略
客户可以指定简单的访问规则,将数据存储在密钥:
- 可推断出的或non-extractable
- 只有数据标记为可抽出的,数据的Key管理器返回的原始值。
- 如果标记为non-extractable数据,Key管理器不返回其原始值。 在这种情况下,不可导出Key的Key管理器提供安全密码操作没有透露客户的Key值。
- 每个Key密码
- Key管理器中的所有数据由用户密码保护。
- 客户端可以使用自己的密码另外加密数据。
- 如果客户提供了密码在存储数据时,数据是加密的密码。 获取数据时必须提供这个密码Key管理器。
- 用户登录
实现用户登录控制如下:
- 用户的数据库文件是由用户的加密DKEK(域密钥加密密钥)。 DKEK用户随机生成和存储与用户密码加密首次当用户登录。
- 当用户登录时,Key管理器解密用户DKEK用户密码。 登录会话期间,任何客户机可以访问的数据由用户密码保护。 当用户注销时,Key管理器从内存中删除用户DKEK。
- 当用户登录、注销或变更他们的密码,必须通知键管理器。 只有特权应用程序,如屏幕应用程序或设置应用程序,可以通知Manager的关键。
- 当用户更改密码,键管理器对用户DKEK新的密码。
- 数据访问控制
默认情况下,只有一个数据的所有者可以访问数据。 如果所有者授予访问其他应用程序,这些应用程序可以读取或删除键管理器数据库中的数据。 当应用程序被删除,数据和访问控制信息的应用程序也会被删除。
图:Key管理器进程
Key管理器提供了两种类型的api(在 移动端口和 可穿戴应用程序): |