安智客

未来是一个智能的世界,同时我们也希望是一个更安全世界!安智客力求客观公正,不涉及任何商业行为。 与您一起探讨、分享!...

Android系统终端上不得不说的5个密钥!

从事手机开发、终端软件安全的相关从业者不得不面对以下5个密钥,其他密钥略:


这5个密钥,有些是因为支付宝支付、微信支付所必须要的如IFAA Key、Soter Key。有些是Google最新Android8.0版本所要求的,比如attestation Key,有些是因为一些业务需要比如DRM Key。最后一个RPMB Key是TEEOS所需要的,作为可信安全存储的一个密钥。


当然最重要的是,这些Key的都需要TEE系统作为支撑,也就是说可信执行环境成为一个必选项!下面安智客简要介绍一些这些key:


RPMB全称Replay Protected Memory Block, 重放保护存储块,用于存放一些重要的安全信息。RPMB为什么能防重放攻击呢?通过密钥获得访问权限,同时对每一个访问动作进行计数,这个密钥就是RPMB Key。有了这个key, 在访问RPMB区域的时候, 都要用这把key生成Message Authentication Code(MAC), 用来鉴定授权,鉴权过程通常在TEE中使用,每次开机生成的RPMB key得到MAC值和EMMC RPMB本身根据写入的RPMB key生成的MAC值做比较。关于TEE的存储详见:

GP TEE中的几种存储方式介绍


DRM全称Digital Rights Management, 是用于管理数字版权的一套机制。 这套机制概括为内容提供商提供的视频内容都是经过加密的, 用户想要观看必须先购买授权。之后会得到服务器发送的被content key加密后的视频内容及一把被DRM key加密的device key和被device key加密的content key. 用户用DRM key解密device key, 再解密的content key,最后解密加密视频, 最终得以观看。Widevine是DRM解决方案中的一种, 也是Android平台目前支持的一种。 

腾讯在微信指纹支付——SOTER。SOTER标准中,所有的密钥生成、数据签名处理、指纹验证、敏感数据传输等敏感操作均在TEE中进行。不仅如此,SOTER使用的设备根密钥由厂商在产线上烧入,从根本上解决了根密钥不可信的问题,并以此根密钥为信任链根,派生密钥,从而完成。与微信合作的所有手机厂商将均带有TEE,并且通过腾讯安全平台和微信支付安全团队验收,符合SOTER标准。soter key即ATTK(设备密钥)密钥在设备出厂之前需要在TEE中生成,公钥被被厂商安全得传输到腾讯的TAM服务器,私钥则在TEE中安全存储。

IFAA全称internet finance authentiation alliance,互联网金融身份认证联盟,也指一种认证规范,IFAA key其实分三个层次, 分别是业务密钥, 可信根密钥和设备密钥。这里所说的IFAA key, 说的其实是设备密钥。IFAA相关介绍,安智客之前介绍过不少。关于SOTER和IFAA相关介绍,详见:

详解IFAA标准中的注册认证流程

IFAA、SOTER、FIDO图文比较

图解IFAA、SOTER方案接入工作流程

Attestation Key 在Android O中,认证密钥必不可少,在CTS/GTS中进行测试检查。密钥认证旨在提供一种方法来强有力地确定非对称密钥对是否由硬件支持(如果来自HW Keymaster)。在APP获取Keymaster密钥对后,APP可以要求Keymaster提供一个证书链(证书密钥签名的证书,而根证书来自google),并验证证书链是否有效。 应用程序应该自行验证证书。相关介绍如下:

Google Keybox功能与TEE关系介绍

Key attestation-Google的密钥认证

Key attestation的几个关键点!

安智客后续重点将突出一下技术层面的知识,力求以简洁、全面的方式介绍,希望大家喜欢!


阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/young_zyj/article/details/79967332
个人分类: TEE android
上一篇Google物联网操作系统Fuchsia与微内核
下一篇安智客TEE技术文章更新进行时
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭