最近的项目中每每都会被问到:HCE安全吗?
我的答复是:相对安全。
听到我这样的回答,很多人可能会开始说了,某某银行都上HCE应用了,怎么不安全了?
其实,HCE应用的场景有两种:在线模式与离线模式。
在线模式:
相关密钥以及运算在后台完成,即便出现安全问题,也属于网络安全范畴。但,不会发生大规模密钥泄露问题。目前,银行上线的HCE应用都是属于在线模式。
离线模式:
相关密钥、敏感数据、金额等信息都会存储在手机内部。这样就麻烦了,因为Android手机很容易被root,所有的数据会被读取、复制。
纯HCE的安全方案:
- 交易密钥:通过会话密钥进行保护,每次登陆会话密钥会进行变化,对交易密钥进行转加密。
- 敏感数据以及金额:通过会话密钥进行保护,用数据明文对全0进行加密,产生校验值;在验证敏感数据与金额时,先进行解密,然后进行比较校验值。
安全级别:算法隐藏
缺点:无法实现防复制。
HCE+TEE的安全方案:
- HCE应用实现模拟行业应用。
- TEE存储密钥、敏感数据、金额等。
安全级别:内核安全
缺点:TEE适配率低,而且需要重新启动手机。
时间: 2024-10-15 13:43:06