APP下载

Android密钥库简析

2018-09-10李阳天

计算机与网络 2018年2期
关键词:用户设备

李阳天

Android的密钥库已经推出很多年了,它为应用开发者提供了一种使用加密密钥进行身份验证和加密的方式。密钥库将密钥资料存放在应用的进程空间之外,因此,密钥资料不会在可能受到网络钓鱼攻击的情形下被應用意外透露给用户,不会通过其他某种渠道泄漏,也不会在应用遭到入侵时陷入危险之中。

许多设备也在安全硬件中为密钥库密钥提供基于硬件的安全机制,这种机制将密钥资料完全存储在Android系统之外,因此即使Linux内核遭受入侵,密钥资料也不会泄漏。在绝大多数Android设备中,安全硬件都是主CPU的一种特殊模式,其通过硬件与Linux内核及Android用户空间强制隔离。有些设备还使用单独的安全微处理器。

Android提供的API可以让应用确定给定密钥库密钥是否处于安全硬件中,但是如果操作系统受到入侵,这些API将变得不可靠。密钥认证让设备的安全硬件可以验证某个非对称密钥是否处于安全硬件中,从而在Android OS遭受入侵时为密钥提供保护。

密钥库最初在Android 4.0中引入,密钥采用用户的密码进行加密。Android 4.1添加了使用设备安全硬件的基础架构。

在Android 6.0之前,密钥库仅支持RSA和ECDSA。在Android 6.0中,密钥库得到显著增强,增加了对AES和HMAC的支持。此外,加密运算的其他关键要素(例如RSA补位和AES区块链接模式)也移入安全硬件中。

在Android 6.0中,密钥库还能够限制特定密钥的使用方式。可以应用的最有用限制是用户身份验证绑定。这种限制允许将密钥的使用“绑定”到用户密码(他们的PIN码、图案或口令)或者指纹。……

登录APP查看全文

猜你喜欢

用户设备
谐响应分析在设备减振中的应用
基于VB6.0+Access2010开发的设备管理信息系统
基于MPU6050简单控制设备
关注用户
关注用户
关注用户
500kV输变电设备运行维护探讨
如何在设备采购中节省成本
Camera360:拍出5亿用户
100万用户