阿里云「飞天发布时刻」2024来啦!新产品、新特性、新能力、新方案,等你来探~ 了解详情
写点什么

荣耀安全专家殷高生:双 TEE 纵深防御体系,打造用户便捷可信赖的数字生活

  • 2023-04-11
    北京
  • 本文字数:5959 字

    阅读完需:约 20 分钟

荣耀安全专家殷高生:双TEE纵深防御体系,打造用户便捷可信赖的数字生活

手机越来越成为人们日常生活中离不开的伙伴,同时手机数据安全给人们的数字生活带来很大的焦虑。荣耀坚持用双 TEE 和安全芯片等硬核能力构建设备的安全根,好比为数据修筑坚固的城墙,形成纵深的保护,有效防御攻击,周全地保护用户的数据资产。

 

此外,在手机上,如何给用户带来安全又便捷的场景,如何让银行等合作伙伴降低运营成本?InfoQ 邀请了荣耀安全专家殷高生,为你分享双 TEE 隔离系统在手机数据安全的实践和产品化。本文为 ArchSummit 全球架构师峰会演讲整理,希望对你有所启发。

 

各位现场和线上的伙伴和朋友们,大家好!我是荣耀隐私安全专家殷高生,今天跟大家分享的是手机的安全和用户隐私保护的优秀实践,双 TEE 隔离系统在手机数据安全的实践和产品化。

 

首先,我将给大家讲述一下双 TEE 从技术研究到产品实现和能力开放的心路历程,以及两个实战项目,实战项目一,手机防丢失防破解;实战项目二,把银行 U 盾业务装进手机,双 TEE 系统安全服务能力开放。同时,我也会介绍和提供大家一个安全开发平台,大家可以在平台上开发安全 APP,保护您的商业机密,减少风险损失,减少业务激活成本、获取潜在用户。

 

如今,我们生活在数字时代,科技和智能给人们带来很多便利,包括用移动设备进行付款、转账已经习以为常。但我们同时也发现,关于用户隐私和安全的情况并不乐观,甚至还可以说面临着巨大挑战。

 

另外,当前各种各样的应用层出不穷,而整体应用生态的不纯净也让设备的安全治理面临新挑战:比如风险应用;移动威胁黑转灰,即病毒转流氓化,这些行为杀伤力大,甚至有时会利用人性,给受害用户带来巨大的财产损失乃至生命风险,这些事情一旦发生,必然将对平台方口碑带来严重的不良影响。但是,单纯进行技术检测手段无法有效解决风险应用灰色威胁,那么如何给用户一个更安全、可信赖的使用环境,是当前移动设备厂商和开发者共同面临的重要课题。

 

这个行业发展多年,大家都在寻找各种各样的解决方案,中心思想都是希望构建隔离环境,可以把贵重的资料单独存储和使用起来,把有威胁的对象隔离防御起来,或者把要保护的对象隔离保护起来。

 

针对这些比较常见的解决方法是沙箱技术,就是让应用在沙箱中运行,其他应用无法访问这个沙箱里面的 APP,人们一般会把邮件,移动 OA,VPN 保护起来,但是沙箱通过调用 MDM 接口,还是一种 to B 的 MDM 定制,To C 怎么快速开发、部署?



另外,虽然沙箱可以远程管理,但是当系统受到攻击时无法做出快速和有效的应对,安全能力只达到应用级隔离安全。

 

随着芯片技术的发展,虚拟化技术变得成熟,也有很多行业实践。

 

从技术架构上,业内主要分成两类,首先是 Type II 设备虚拟化,也叫做 Container,容器隔离双系统,它可以在系统内核层完成虚拟化,实现双系统的切换,但是切换性能差,用户体验不友好,因此主要局限于 To B 行业使用;

 

其次是 Type1 硬化虚拟化,也叫 bare metal,性能相比 Type I 要好很多,但是因为跟芯片、外设深度耦合,无法快速迭代。

 


面对 To B 技术方案的不足,我们该如何构建一个更加完善的 To C 技术方案呢?这还要从 To C 场景开发者的安全诉求说起:

 

  • 第一,保护商业秘密,如 APP 防破解、防盗版;

  • 第二,减少风险损失,如防盗刷,儿童保护,防薅羊毛,游戏防外挂,防黄牛刷票;

  • 第三,减少业务激活成本、获取潜在用户,如钱包、卡包、移动支付、电子证件、电子印章、指纹/人脸支付等。

 

开发者需要什么样的安全能力呢?当务之急是寻找一种隔离的芯片级可信环境的平台,开发者开发安全应用,保护 IP 和用户数据。

 

分解一下,首先是芯片级隔离,其次是可以便捷开发,是一个安全 OS,可以让诸如办公、银行、支付、DRM 等高安全应用,加解密、生物认证、安全键盘等服务可以独立在安全 OS 中执行。于是在 ARM cortex –A 上的 Trust zone 技术迎来了旺盛的生命力。



TEE 来源于 ARM® TrustZone® 技术,是基于 SoC 硬件的安全解决方案,遵循提供端点安全和移动终端的可信根(Root of Trust)。 Cortex-A 应用处理器的 TrustZone 技术支撑可信启动和创建可信执行环境(TEE),其典型的使用场景包括鉴权机制、密码系统、Key 派生、安全用户界面和数字权限管理(DRM),为了行业打通,Global Platform 也发布了接口标准。手机厂商需要的是基于这个架构和标准,首先需要构建一个 RTOS,旨在与 REE 并存,并提供设备的安全区域以保护资产和执行可信代码。

 


当下,行业主流的 ARM 系列芯片,都支持 Trust Zone 架,SOC 提供一个片上的 TEE OS, 比如高通的 QTEE,可以实现加解密计算和人脸、指纹识别,但是三方在业务部署时,面临诸多的挑战,比如行业认证难迈过高安行业门槛,同时缺乏开发者服务,三方合作伙伴很难参与开发,最后,它缺乏可信 APP 的生命周期管理,业务 TTM 长。那么,对手机厂商来讲,怎么破局?构建一个自研 TEE OS 正当其时,功能需要更丰富,需要权威认证,需要更短的 TTM。

 

因此荣耀双 TEE 应运而生,我们利用 SoC 的 hypervisor 机制,构建双 TEE,一方面帮助开发者快速开发,另一方面通过安全纵深,提升安全能力。



荣耀“两锁一芯”优秀实践

 

那么接下来为大家介绍安卓阵营首创的两锁一芯硬件级系统安全能力。

首先我们来讲讲 Hypervisor 虚拟化 ,这是一种广泛使用的技术,可以对同一个物理核上运行的虚拟机进行隔离。这使得多个执行环境可以共享同一套硬件环境,对于 ARM 架构的芯片, Hypervisor 运行在 EL2 异常级别。只有运行在 EL2 或更高异常级别的软件才可以访问并配置各项虚拟化功能。HTEE 运行在 VM 中,与其他 VM 隔离,通过 Hypervisor 与其他 VM 通信。

 

在双 TEE 架构下,为了进一步保障用户的数据达成芯片级安全,防御侧信道等物理攻击,荣耀推出并在去年 11 月 MagicOS 7.0 的发布会上发布了”两锁一芯”的技术架构,这个架构的中心思想是,三层保护,安全存储、加解密计算和可信应用在 HTEE 中执行,用户身份认证在 QTEE 中执行,形成安全共担,根密钥、解锁口令等在安全芯片中存储和计算,形成芯片可信根。“两锁一芯”架构也获得了北京国家金融科技认证中心和 FIDO 等权威认证。



荣耀 MagicOS 系统中的HTEE(Honor Trusted Execution Environment,荣耀可信执行环境, 简称 HTEE)是荣耀采用微内核技术实现的可信执行环境,包括了安全 OS 内核、框架层以及系统核心可信应用等构成,基于 TrustZone 和虚拟化技术构建。通过指令在 CPU 的安全世界和普通世界之间切换来提供硬件隔离。

 

在安全世界下,我们提供了对硬件资源的保护和隔离,包括内存、外设等,通过执行过程保护、密钥保密性、数据完整性和访问权限实现了端到端的安全,可防止来自非安全世界中的恶意软件攻击。


TrustZone 是硬件级别的安全,兼顾了性能、安全和成本的平衡。另外, HTEE 还采用多种技术手段对 REE 侧系统安全、通道安全、鉴权安全、TEE 侧系统安全等进行全方位地安全加固,通过镜像反逆向、系统反入侵、数据反侵害等基于杀伤链的安全防御技术提高系统安全性。

 

下面为大家详细介绍一下 HTEE 具备的 6 大安全能力。



HTEE 安全 OS 的可信存储分为两种:安全文件系统存储与 RPMB(Replay Protected Memory Block)存储,前者将密文存储到特定的安全存储分区,后者存储到 NAND Flash 特定的存储区域,RPMB 支持防删除、防回滚特性。可信存储支持设备绑定,支持不同安全应用之间的隔离,每个安全应用仅能访问自己的存储内容,无法打开、删除或篡改其它应用的存储内容。基于 HTEE 安全 OS 实现的安全文件系统(SFS),提供对关键信息的存储保护能力,可用于存储密钥、证书、个人隐私数据和指纹模板等数据,具有机密性、完整性、原子性、隔离性等特点。

 

在 REE 侧负责的应用环境中,应用显示的支付金额或输入的密码可能被恶意应用劫持,HTEE 安全 OS 提供了无法截屏的 TUI(Trusted UI,可信 UI)显示技术(符合 GP 规范)来保护 TA 显示的内容,采用与外部隔离的显示。当显示时完全阻止 REE 侧对该显示区域的访问,可防止恶意应用对于显示和输入的劫持和篡改。确保恶意程序既看不到显示屏上的信息,也无法访问触摸屏。

 

基于刚刚提到的 6 大安全能力,我们以身份认证为例,解决人的身份、设备身份、在线登录/交易、是否可信,确保操作、资源访问、合法性。

 

MagicOS 以人为中心的身份认证分为三大部分:

1、本机身份认证,指纹、人脸解锁;

2、在线身份认证,联网、快捷免密认证;

3、设备认证和账号认证。



中心思想是设备合法性、机主身份合法性、跨设备/上云的数据流转安全。



首先是本机身份认证,通过 HTEE 和安全芯片保护,生物特征不出安全区且解锁体验便捷;其次,生物模板加密且 HTEE 才能访问,数据采集安全;最后,3D 人脸达到金融支付级安全,目前微信、支付宝已采用。

 

荣耀构建的“两锁一芯“的平台安全能力,主要是针对用户对手机安全的诉求,通过用户调研获取真实的源声我们发现支付安全、手机被盗后数据和账户安全是用户关注隐私安全 TOP 问题,那么下面我们将围绕这两点分享两个实战项目。

实战项目一: 手机防丢解决方案

 

这是手机丢失的用户旅程的分析图。丢失手机这件事本身让用户细思极恐的是手机被非法刷机和倒卖,手机里的各种信息会暴露在“光天化日下”,对用户造成不可逆的损失。那么利用两锁一芯的纵深防御,通过对用户身份的防假冒解决方案,可以做到手机丢失防破解、防刷机,关键点在于激活锁标识不可清除,和要求验证荣耀账号密码才能启动系统。



我们会通过一套完整的安全解决方案,通过防关机、防离线、防盗卡、防诈骗,以及防刷机,一方面提升手机找回效率,另一方面,即使手机丢失,但是数据不丢失。

 

在启用了查找我的手机时,开启设备激活锁功能,若设备丢失被非法用户执行强制清除数据,设备重新启动后需要用户登录荣耀帐号才能进行重新激活,确保没有得到授权的用户无法激活和使用设备,保证设备的安全。TEE 中的防盗 TA 会结合安全芯片的用户 profile,来验证用户的真实身份。


实战项目二:把银行 U 盾业务装进手机

 

当前支付行业通常采用短信验证码、人脸、指纹等多因子认证保障用户的身份不被仿冒,大额转账需要专用的硬件盾,不方便、硬件成本和运营成本高,我们和伙伴思考的是怎么能既安全又便捷,于是提出了金融安全—支付认证解决方案。



金融安全-支付认证方案是面向金融支付业务场景,开放可信计算、可信 UI 和可信存储能力,保护用户金融资产的存储与支付安全,助力传统金融业务吸引更多高净值用户;HTEE 拿到了移动金融技术服务认证,金融级安全得到权威认可,安全芯片也获得了 CC EAL5+的安全认证,方案的核心是解决 3 个关键问题:

 

  • 其一,核心业务逻辑(加解密、签名、验签) 不被劫持、篡改;

  • 其二,交互界面(转账交易信息)敏感信息,不被录屏、截屏;

  • 其三,可信存储,保障证书、密钥不泄露;同时这些能力还可以应用到电子合约、电子印章等其他场景。

 

对开发者来讲,完成业务的开发一共需要三步,首先三方 APP 集成 HTEE SDK,然后三方 App 调用密钥服务,开发核心业务流程,完成关键数据可信计算,最后申请 HTEE Kit 权限,调试证书和开发证书,完成上线部署。



HTEE 提供可信计算/显示/存储/时钟/权限等 6 大能力,安全显示、安全键盘来确保用户交易时候的账号、密码安全,可以做到支付所见即所签; HTEE RPMB 安全存储,防回滚攻击;同时 HTEE 支持 TA 动态加载,业务 TA 可以随着 APP 更新,按需部署,不需要依赖于手机厂商的 ROM 升级和 TAM 对接;特别的是,HTEE 遵循国际 GP 标准规范,一套 TA 可跨芯片、跨产品部署,降低开发维护成本。

 

下面介绍 HTEE KIT 关键 API,以可信显示为例,通过 TA 可申请独占 TUI 资源,包括屏幕显示、键盘输入;可确保用户核心数据和信息不被截屏和泄露;同时我们也对标准的 GP 接口做了扩展,可以提供基于 HTEE 的可信二维码显示接口,可以将基于二维码的支付或认证业务嵌入到可信环境中,提高安全防护等级。



以上是实战项目二的分享。

携手共建隐私安全生态

双 TEE 系统安全服务能力开放,对安全生态开放了三大 Kit,HTEE Kit、身份认证 Kit 和风险检测 Kit,便捷身份认证,利用手机的安全 camera、人脸识别等能力进行便捷的身份认证;利用手机的端侧风险监测与服务商联合进行风险控制与识别,实现支付反欺诈和营销反欺诈。



另外,为了让广大的用户解决密码使用烦恼,我们进行人、设备、账号一体化认证、快捷免密认证体验,融合了 TEE、生物认证、设备证书、数字签名技术,在人、设备、业务的信任链传递;当前 HTEE 已支持 FIDO、IFAA、SOTER 等在线身份协议,开发者可以通过人脸识别的服务接口,实现便捷的身份认证。

 

面对注册有礼、抢红包、优惠券等营销让利活动。被黑灰产利用风控漏洞,利用技术手段进行薅羊毛等恶意行为,使真实消费者不能公平享受优惠,也让商家优惠促销没能触达真实用户,造成营销资源浪费; 我们会通过开放 HTEE 虚拟触屏检测 和 设备健康检测能力,识别是否是真实的用户操作以及当前设备是不是可信设备。解决方案还可以用于直播刷榜刷人气、电商刷单炒信、游戏外挂等场景。

 

营销反欺诈同样依赖风险检测 KIT,通过开放设备健康检测能力虚拟触屏检测能力 ,整个威胁感知平台分为三大部分:异常行为感知、AI 自学习引擎、风险识别引擎;异常行为感知主要针对诈骗应用、流氓应用行为进行特征提取,通常异常应用通过监听系统事件、界面劫持、恶意覆盖、 多级跳转(展开)等;荣耀还引入业界专业的应用检测能力,持续构建领先的威胁感知能力,让支付平台在荣耀设备上运行得更安全可靠。

 


说了以上这么多,那么开发者如何快速地在荣耀 MagicOS 上使用 HTEE KIT 能力呢?

 

首先,您可以通过我们提供的 SDK 说明、demo 参考设计、详细的白皮书等开发套件,了解如何快速开发 TA;其次,在开发过程中提供一站式开发编译环境,同时您可以在线申请调试证书,使用商品机即可完成环境准备和开发,实现业务快速调试和上线;最后,HTEE 也提供 debug 版本和 release 版本的分层管控机制,保证研发和商用的安全可靠;

 

想要了解更详细的资料和技术支持的话,大家还可以在 MagicOS 开发者网站上查阅。我们有完整的 MagicOS 安全解决方案接入指南,一站式开发部署、基于商用版本,可本地编译、打包、签名、一站式开发、跨芯片平台部署。

 

以上就是今天的分享,我们始终期待未来可以联合更多全行业的合作伙伴共建共享完备和繁荣的隐私安全生态,一起守护消费者便捷、可信赖的数字生活,谢谢大家!


嘉宾介绍:

殷高生 荣耀 MagicOS 首席隐私安全规划专家 MagicOS 隐私安全场景化设计和技术规划专家;曾负责华为 TEE、终端数据安全和隐私保护技术规划,以色列研究生身份认证实验室副主任;Check Point 中国区技术总监。

活动推荐:

 

4 月 21-22 日,我们即将在上海举办一场ArchSummit,内容涵盖人工智能前沿技术、AIGC 应用探索、金融业数字化转型探索、架构标准化和质量评估、大数据+架构、DataOps 落地实践、ToB 软件质量保障、制造业数字化转型架构创新、架构师成长、以及企业架构演进、数字化转型下的应用现代化、架构稳定性保障等专题。

 

目前嘉宾已上线 100%,可扫码下方海报了解更多...



公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2023-04-11 17:525077

评论

发布
暂无评论
发现更多内容

听说学Python字体反爬的人,都打开过这篇博客,自如字体反爬,图片字体反爬

梦想橡皮擦

Python 爬虫 7月月更

类似 MS Project 的项目管理工具有哪些

PingCode

Java避坑指南:涉及金钱计算时使用BigDecimal如何避坑

Beaver

最新发布!阿里巴巴专家亲自撰写,Dubbo 3.0 分布式实战(彩印版)

冉然学Java

Java 分布式 dubbo 框架 RPC 协议实现原理

好的plm软件有哪些?plm软件排行榜

PingCode

小心你的字典和样板代码

白日梦想家

总结 编码 反思 编程、 编码风格

设备树的引入与体验

贾献华

7月月更

leetcode 406. Queue Reconstruction by Height 根据身高重建队列(中等)

okokabcd

LeetCode 数据结构与算法 贪心算法

3 分钟掌握 Node.js 版本的区别

pingan8787

JavaScript node.js Vue 前端开发

模块八

Geek_2ce415

大家都在用的plm项目管理软件有哪些

PingCode

项目管理

vue2升级vue3: TSX Vue 3 Composition API Refs

zhoulujun

Vue3 Ref JSX tsx 子组件

一文详解:SRv6 Policy模型、算路及引流

穿过生命散发芬芳

7月月更 SRv6

jQuery 遍历-后代深入解析分析【前端jQuery框架】

恒山其若陋兮

7月月更

编写Prometheus HTTP 服务发现有什么要求

耳东@Erdong

Prometheus 服务注册与发现 7月月更

Spark 在 Yarn 上运行 Spark 应用程序

xiaosi

spark YARN

Python中关于函数的那点事

Java学术趴

7月月更

你了解SpringBoot启动时API相关信息是用什么数据结构存储的吗?

宁在春

Java 源码 springboot 7月月更

设计消息队列存储消息数据的 MySQL 表格

爱晒太阳的大白

深入浅出边缘云 | 3. 资源配置

俞凡

架构 边缘计算 网络 深入浅出边缘云

SpringBoot日志收集-Aop方式-存进数据库

宁在春

aop springboot 7月月更

数据质量提升

奔向架构师

数据质量 7月月更

透过开发抽奖小程序,体会创新与迭代

小院里的霍大侠

创业 前端开发 创新 淘宝小程序 签约计划第三季

数据中台建设(六):数据体系建设

Lansonli

数据中台 7月月更

Snowflake vs. Redshift的2022战报:两个数据平台谁更适合你?

雨果

走进Redis,让你重新认识redis。绝不是表面

派大星

签约计划第三季

openim支持十万超级大群

Geek_1ef48b

JAVA编程规范之服务器

源字节1号

软件开发 后端开发

(WebFlux)001、如何自定义注解实现功能

编号94530

spring springmvc WebFlux 拦截器 @WebFilter

消息队列存储消息数据的MySQL表设计

intelamd

使用 Solidity 和 Node.js 构建简单的区块链预言机

devpoint

区块链 Node 预言机 7月月更

荣耀安全专家殷高生:双TEE纵深防御体系,打造用户便捷可信赖的数字生活_ArchSummit_李忠良_InfoQ精选文章