虽然大家都知道硬件安全很重要,但它从来都没有获得过与其重要度匹配的关注度。而荣耀在 1 月 10 日发布的 Magic V,除了新一代骁龙 8 移动平台和折叠屏,还重点宣传了很久没有进入公众视野的安全功能。
荣耀 Magic V 的官方宣传是 “一个保险柜和两把锁”,搭载荣耀首款独立安全存储芯片,拥有独立于安卓操作系统之外的双 TEE(可信执行环境)安全系统。其有隐私维修模式并能随时切换,可以远程锁定 SIM 卡,遭到恶意刷机后也会要求账号密码,即便物理破解存储芯片也无法读取个人数据等众多安全特性。
毫无疑问,智能手机就是普通民众能接触到,科技安全级别最高的产品。在智能手机就能提供极高安全性的今天,我们以最有代表性的高通为例,一起回顾一下 Android 阵营的安全架构历史。
ARM 阵营的安全硬件演进
提到 Android,自然离不开 ARM 指令集和高通。前者是移动世界的基石,后者是 Android 阵营 SoC 的代名词。从高通第一代骁龙 S1 问世至今,骁龙品牌走过了十四年,无论是骁龙 S1 到 S4 时期,还是 “骁龙 8XX” 时期,高通骁龙一直都是 Android 旗舰的御用移动平台。高通骁龙平台持续强化的安全能力,是 Android 生态最重要的安全和隐私基础。
无论是桌面平台的 TPM 可信平台模块,还是移动端的安全芯片,一直追求的都是安全三要素:Confidenciality 机密性、Integrity 完整性、Availability 可用性。而 ARM 阵营安全硬件近 10 年的演变,本身就是一部新功能高速发展和普及的历史。
“史前” 的 ARM v7 指令集就引入了 Security Extension 概念,即 CPU 能够在 “普通世界和安全世界” 间切换,两个模式有独立的 MMU 内存管理单元,有用于隔离内存 TZASC、用于隔离外设 TZP 和 CCI 总线,可以在不增加硬件成本的情况下为提供可信执行环境。
在 ARM v8.x 时代,又先后引进了一系列的安全特性:
PAN 和 UAO(Privileged Execute Never 和 User Access Only),一定程度把内核态程序和用户资源分隔开;
PA(Pointer Authentication)和 CFI(Control Flow Integrity),防止跳转指针被修改,保证控制流完整性,防止 ROP 攻击;
而下一个里程碑,是 ARM v8.4 在安全世界引入的 hypervisor,软件层面支持多个 TEEOS,安全级别高的支付业务可以跑在独立的 TEEOS 并于通用 TEEOS 隔离;
ARM v8.5 引入 BTI(Branch Target Identifiers)和 MT(Memory Tagging),前者限制间接转跳,防 JOP 攻击,后者能标记内存区域,防止溢出和 UAF 漏洞;
Arm v9(骁龙 8 Gen 1 这一代)提出了 Arm CCA 的概念,引入全新的 “Realm 机密领域”,生成对 OS 或虚拟机管理程序完全不透明的安全容器化的执行环境,保护正在使用的数据与代码,并缩短信任链。
高通骁龙的安全能力演进
当年骁龙 845 的元件示意图↑
从指令集往上,到达 SoC 这一层,高通几乎每代骁龙旗舰都会率先引入最新的安全功能,用户安全和隐私的保护措施在以军事竞赛式的速度升级:
2015 年的骁龙 810 引入 SafeSwitch 功能。在丢失手机后,可以远程锁机并轻松抹掉手机上的用户数据,而且 SafeSwitch 先于操作系统启动,让 “简单刷机破账号” 成为历史;
2016 年的骁龙 820 引入了 Smart Protect,后者是首款利用高通 Zeroth 技术的产品,具备机器学习功能。其基于签名的反恶意软件服务,能自动阻止已知恶意软件的运行,能实时监测手机的后台并做异常警告,最终达到零时差 (Zero-Day) 侦测病毒、恶意软件的效果,且能离线运行;
2017 年骁龙 835 内置了 Qualcomm Haven 安全平台,包括内容保护、恶意软件检测、防盗、身份验证等 4 大方面。此时的 Android 旗舰已经可以让虹膜、人脸等敏感信息存放在 SoC 的 TrustZone 并与系统隔离。而与 FIDO 联盟、腾讯等厂商的合作,也为指纹和虹膜移动支付铺平了道路;
骁龙 845 则带来了独立安全处理单元,高通称之为 “安全岛”。这个爆改过的 Arm SC300,有自己的 CPU 内核、独立的电源供应和闪存,能将图像、指纹识别等用户生物信息、银行卡等金融信息独立存储,自带加密引擎,能防止篡改和重放攻击;
骁龙 855 是首款达到智能卡级别安全性的移动 SoC,通过了 Common Criteria EAL-4 + 全球安全认证,可以省却 OEM 厂商外挂安全芯片的麻烦。其更强的 SPU,能用于 Android StrongBox 和 Gatekeeper 等系统,可以支持离线支付、TPM、电子身份证、加密钱包等功能,并开始支持 iSIM 应用。
骁龙 865 首发支持当时 Android 系统最新的安全凭证 API,并对 ISP、DSP、存储分别做了安全优化,即使安装了恶意软件,数据也不会被复制到安全区以外。而新的高通传感器中枢,也能以极低的功耗提供安全防护。
骁龙 888 则为移动端带来了全新的 Type-1 Hypervisor 支持,让手机可以启用同一个系统的多个实例,在进行数据的保护和隔离的同时,能在不同应用和多个操作系统间即时切换,还能让 Hypervisor 应用数据完全与主要操作系统内的其他应用隔离。另外,其也支持 Adobe 的 CAI 数字验证标准,能为照片制作加密印记,用于验证数字内容的真实性。
全新一代骁龙 8,全新的移动安全架构
全新一代骁龙 8 在 2021 骁龙技术峰会发布。发布会开头就紧贴热点,是元宇宙。5G、计算机视觉、头部 / 眼球 / 姿势追踪以及工具、3D 重建、感知算法、情境语言理解 / 音频增强和创作支持,应有尽有。
而此时的骁龙,已经是包含 50 多个芯片组的完整平台,一切都要建立在安全的基础上。今年发布会,开场致辞之后第一个说的就是安全,排位比影像、AI、游戏都要靠前,就知道高通对安全特性的重视程度。
首先,上一代引入的 Hypervisor 深度保护层,现在面向合作伙伴和客户开源了,宣称将允许应用程序和服务与 SoC 的更多部件进行交流,从而在虚拟化环境提供更多特性。
高通也继续贯彻深度防御(Defense-In-Depth)策略,在 Hypervisor 之上再加了一个安全层 —— 全新的信任管理引擎(Trust Management Engine)。其运行在 Android 系统和其他安全服务的管理程序层之下,即使高级别的软件堆栈受损,也能保护低级别数据的安全,并为应用和服务提供额外信任根(Root of Trust)。这个信任管理引擎甚至可以和云端等其他安全技术协同工作,通过云端的网站与应用信用评估,改变本地策略,对新风险第一时间做出反应,实现从芯片到云端的信任防护。
在高通宣称是保险库级别的安全配置下,新一代骁龙 8 成为全球首个符合 Android Ready SE 标准的移动平台。而后者是 Google 在 2021 年 3 月发起,用于 SE 安全芯片标准的研发和推广的联盟,目标上是通过开源的 SE 安全接口和程序,让手机、平板、汽车等智能设备可以用作住房钥匙、车钥匙、数字钱包 / 货币、电子驾照、护照使用,让更多的实体物品数字化。
全新一代骁龙 8 也是首个能让创作者直接在手机上铸造 NFT “非同质化代币” 的移动平台,可以为数字内容 “盖印” 并保存在区块链账簿。高通还与各国政府、通讯服务商建立连接安全场景,实现 Stingray 伪基站防护,提供恶意蜂窝网络识别,阻断其数据连接等功能。新骁龙 8 的安全处理单元 SPU 同样集成 iSIM,只要应用厂商愿意,随时都可以代替物理 SIM 卡和卡槽来节省宝贵的机身空间。
另外,骁龙 8 可以在不录像和录音的情况下,完成全天候的视觉感知,它甚至可以检测到旁边的人偷看屏幕并自动锁屏。而加密性能的提升,也让骁龙 8 打破以前骁龙平台 800MB/s 的持续写入速度限制。
总结
虽然元宇宙还是当红概念,但每天数十亿台移动设备、数百亿次的应用调用、数千亿次的服务请求,手机对现代生活的重塑,其实早就让我们身处数字 “元宇宙” 当中。
移动支付、电子驾照、电子身份证的普及之外,上至 VR/AR 的未来,下至车钥匙、钱包、货币的数字化,数码生活还会继续下沉渗透。移动设备,特别是智能手机的安全功能,其重要性再怎么强调都不为过。
下游应用领域往前狂奔的基础,是高通这些上游供应商提前做好的安全技术支撑。现代智能手机诞生的第 12 年,生物识别大规模应用的第 8 年,高通骁龙为代表的移动 SoC,其软硬件安全功能已经在一轮轮的攻防战中得到了前所未有的增强。而全新一代骁龙 8,也从 TrustZone 到 Hypervisor,再到信任管理引擎、Android Ready SE 标准和 NFT 的支持,让移动安全进入了新的阶段。
科技在被展望时是那么声势浩大,在实现时又是那么悄无声息。现在反过来看,智能设备底层的安全性问题,从来都没有获得过与其重要度匹配的关注度,这或许是件好事。无比低调,甚至很难被感知到,就是对众多强大安全特性最完美的注脚。
雷峰网(公众号:雷峰网)雷峰网雷峰网
雷峰网原创文章,未经授权禁止转载。详情见转载须知。