最终,华为做出 EMUI 9 ,又一次成为国内最快发布新版本安卓定制系统的厂商(安卓7.0、8.0也是)。
正因如此,华为P20和谷歌的Pixel在今年Pwn2Own破解赛上“无人问津”。我猜想黑客们的心里独白可能是:“啊?Android P ?不好意思打扰了……”
理由二:在原生安卓基础上做了大量额外工作
我质疑华哥:“如果单论系统内核的更新速度,没人能比得上谷歌的亲儿子 Pixel 手机。那为什么不直接用 Pixel 不就得了?”
华哥告诉我,华为有几万个研发人员,当然不是把安卓系统内核拿来直接就用, EMUI 9 在原生安卓的基础上做了许多额外的开发工作。
“就拿内核加固来说,我们会基于自己的攻防经验,对黑客可能采取的攻击手法进行预防,给黑客提前挖一些坑。
比如随机更改掉内核里的一部分地址,增加迷惑性。或者加入一些检测代码,一旦发现进程试图跳转到恶意代码的位置,就采取反制措施。
华为手机还个“安全启动”功能,开机时就会从系统内核的外部更靠近硬件底层系统的位置,利用加密学原理来确保软件不被篡改。正常开机后,守护进程会全天候感知整个系统内核的运行状态,守护系统安全。
说到这里,华哥特意强调了华为手机自研芯片的优势:
“这里有很多工作都需要从底层来做,许多手机厂商依赖国外芯片厂商的标准和方案,而华为手机的芯片是自研的,软硬件研发部门可以相互配合,所以安全和各方面优化工作都会顺畅很多。”
理由三:获得顶级安全认证的 “独立空间”
华哥告诉我,华为手机里有一个特殊的安全区域—— TEE OS 。
TEE OS又叫“可信执行环境”,它独立于安卓内核之外,专门用来处理敏感数据,比如密码、指纹、3D人脸解锁、钱包支付等功能,都会隔离在 TEE OS 区域里存储和处理。
(一个不太严谨的示意图)
他举了个例子,EMUI 9 有个“密码保险箱”功能,用户第一次登录某个APP后,可以把账号密码保存在手机里,等到下一次再登录这个APP,就能直接填进去,免去记密码和手动输入。
“这个 密码保险箱 功能的数据就存储在 TEE OS 区域。”
说起来,TEE OS 有点类似于银行柜台。普通人可以在大厅(安卓系统)里随意走动,只有银行工作人员能进入柜台内部(TEE OS),两个区域之间隔离透过狭小的窗口交换信息。
华哥说,"华为自研的 TEE OS 叫 itrustee ,从 Mate 7 开始就在用这项技术大约2014年),今年升级到2.0版本,在国内最早拿到了全球权威信息技术安全性评估标准 CC EAL2 级别认证。”
(从公开网站找到的华为TEE OS 认证信息)
理由四:严格的数据安全和权限管控
聊到数据安全,华哥反复提起一个听着有些专业的词——“数据的全生命周期管理”。意思是从数据的诞生,传输,使用,到消亡,整个过程确保安全。
听着有点复杂,我们试图换个简单的方法来说说。
数据安全的关键在于权限管控,简单来说就是 “谁,在什么时候,有权访问什么数据”。更直白一些,就是提防手机里的某个应用在你不知情时偷偷读取数据。
原生安卓系统虽然有一套权限管控方案,但实际使用体验并不完美。
华哥举了个例子:
“你授权给某个APP麦克风权限,本意只是想临时用一下某个功能,可一旦授权,这个APP就永远拥有了这个权限。
无论是白天还是半夜,无论手机拿在手里还是放进裤兜,它都拥有录音权限,这并不安全也不合理。”
显然,手机里的APP并不会像我们设想的那样守规矩,而安卓手机的很多问题又恰恰源于手机里某个APP “不老实,不守规矩” :
它们要么读取不该读取的数据,获得不该获得的权限,侵犯隐私;
要么展示不该展示的内容(营销广告、不良信息),影响体验;
要么唤醒不该唤醒的进程,占用不该占用的内存,耗费性能。
华哥说,为了解决APP 滥用权限的问题,华为手机准备了两招,一招文,一招武,前者事前预防,后者事后处理。
先说“文招”。
2016年,华为联合阿里巴巴、百度、腾讯、网易四家共同发起了一个“安卓绿色联盟”,拉进来好几百家企业,本意是想让APP开发者能更快地拿到新版本的安卓系统,缩短应用开发适配的时间,以提升用户的使用体验。
解决完APP适配手机系统的问题,华为顺势推出了一个 “安卓绿色联盟应用体验标准”,呼吁联盟成员企业做个表率,按照标准来开发应用。
今年联盟发布了2.0的标准,我从里头随手摘出几条,大家可以感受一下:
“如无必要的使用场景,应用不能在桌面、锁屏和其他应用上,弹出悬浮窗、自定义后台Toast、后台弹出 Activity 等*扰用户的行为”。
“应用不能引导用户开启开发者选项,禁止引导用户开启USB调试模式”。
“应用申请的权限,都必须有明确、合理的功能和使用场景”。
安卓生态中权限滥用的问题由来已久,仅靠简单的呼吁当然不行。
为了激励开发者们都遵守联盟的开发标准,华为在自家的应用市场做了一个“老实人认证”,只有通过人工和机器的双重检测,严格遵守联盟标准的APP才能在华为应用市场打上“安卓绿色联盟”的标志。