揭秘 Google Titan M 芯片:Pixel 3 的终极保镖是如何炼成的?
2018 年 10 月 9 日,Google Pixel 3/XL 在纽约正式亮相。无论是用单摄吊打(特指 iPhone XS Max)双摄的 AI 技术,还是 799 美元的起售价,它都引起了很多的争议。不过有一点是无可争议的,Pixel 3/XL 是一款前所未有的搭载三款独立芯片的智能手机,三款独立芯片分别是高通骁龙 845、Pixel Visual Core 和 Titan M。
其中,Titan M 是 Google 专门为智能手机安全而打造的一款芯片,虽然在体积上不大,但它的来头却实在不小。
从 Titan 到 Titan M
关于 Google Pixel 3/XL 中 Titan M 芯片的来由,还要从 2017 年 3 月的 Google Cloud Next 大会上说起。
在这场大会上,Google 发布了一款名为 Titan 的安全芯片,尺寸上只有一款耳钉大小,功率也非常小。这是一款旨在用于 Google Cloud Platform(GCP)服务器上的产品,目的是保证其顾客代码和数据的安全性,可以防止政府间谍窃听硬件和插入固件植入来攻击电脑。
2017 年 8 月,Google 在官网发表博客,对 Titan 芯片的工作细节进行了深入介绍。从组件构成的角度,Titan 本身包含一个安全应用处理器、密码协处理器、硬件随机数发电机、精良的密钥层次结构、嵌入式静态 RAM(SRAM)、嵌入式闪存、只读存储器、串行外设接口(SPI)总线、底板管理控制器(BMC)或平台控制器中枢(PHC)。
从工作机制的角度简单来说,Titan 在硬件层面保护了 Google Cloud 数据中心从主机启动的那一刻开始的整个启动加载过程,防止外界通过固件漏洞的方式来破坏操作系统。
不仅如此,Titan 还提供了两个重要的附加安全属性——修复和第一指令完整性,它可以用来监测启动固件的所有字节。
总体来说,Titan 为整个系统提供了硬件级别的安全保障,甚至可以识别拥有 Root 权限的内部人士的操作;可以说是大大提供了安全性。在 2018 年 7 月的新一届 Google Cloud 大会上,Titan 也得到了更新。
当然,就 Google Pixel 3/XL 上所搭载的 Titan M 而言,它在某种意义上是 Titan 的延续,至少在命名和用途上是如此(M 是 Mobile 的意思)。不过与已经很省电的 Titan 相比,Titan M 的体积更小一些,也更加省电——这对于一款智能手机来说毫无疑问是必须的。
Google 表示,实际上,Titan M 就是从 Titan(for Data Center)那里取来的功能,只不过针对 Mobile 进行了加工。
Titan M 如何保护手机安全?
Google 想要在 Pixel 智能手机上采用一个专用的模块来保护其数据安全,并非是心血来潮的事情;因为其实在去年 10 月份发布的 Google Pixel 2/XL 中,就已经拥有一个硬件级别的安全模块(Security Modeule),目的是提供企业级别的安全——由此可知,Pixel 系列某种意义上试图面向的也是企业用户。
按照 Google 在 2017 年 11 月 14 日的博客描述,Google Pixel 2 中内置的 Security Modeule 可以保护智能手机在锁屏状态下的数据安全,防止攻击者绕过用户设置的密码来窃取数据。实际上 Pixel 2/XL 内置的 Security Modeule 是一个独立于高通骁龙 835 SoC 的硬件结构,它甚至拥有自己的 Flash/RAM/处理单元等组件。
从这个角度来看,Pixel 3/XL 内置的 Titan M 显然是对上述 Security Modeule 的继承和更新。
Titan M 在保护机制上与 Titan 有某种相同之处。它对智能手机的保护从 Boot 层面开始,与 Verified Boot 进行了深度整合,保证 bootlooder 加载的是正确的 Android 版本,阻止任何想要对 Android 进行降级的行为;不仅如此,Titan M 还阻止 Android 系统中的潜在攻击者解锁 Bootloader(这意味着 Pixel 3 的 Bootloader 不能被解锁了?)
除此之外,Titan M 可以帮助 Pixel 3/XL 来验证锁屏密码,限制不良程序试图解锁手机的次数,防止数据篡改和窃取——这一功能与上文中提到的 Security Modeule 的功能有相似之处。
Titan M 不仅可以用来保护 Android 操作系统和它的功能完整,也可以保护第三方应用和涉及到安全敏感性的交易(Transaction)。
在 Android 9 中,Google 提供了 StrongBox KeyStore API,应用者可以用之来经密码存储在 Titan M 中;同时,针对需要通过跳转来完成交易的应用,比如说电子投票、转账,Google 在 Android 中也提供了 Protected Confirmation API,该 API 同样得到了 Titan M 在硬件层面的支持。
在接受 Wired 采访时,Google 安全项目经理 Xiaowen Xin 表示,Titan M 的固件将会在未来几个月开源,这在行业中也是非常独特的。
另外,关于 Titan M 自身的安全性,Google 也有所准备。除非用户输入了密码,否则 Titan M 的固件永远不会得到任何更新,这就完全阻断了攻击者试图通过损坏 Titan M 来干坏事的可能性。
发展到今天,Google Pixel 系列已经步入到第三代;且不说外观如何,Google Pixel 系列在底层硬件层面的确做了许多普通消费者难以感知到的努力,比如说 Pixel Visual Core 和 Titan M。这些努力虽然一时难以被转化为明显的销量,但毫无疑问是 Google 在走向软硬件结合道路上的重要步伐。而在数据安全被愈加重视的时代,Titan M 的重要性是毋庸置疑的。
正如哥伦比亚大学的计算机科学家 Simha Sethumadhavan 的评价:
Google 所做这种层面的硬件改进,我认为是非常了不起的。它比软件防护更难取得突破,难度高得多了。