请教ColorOS 解锁后功能是否正常

我的一加 Ace 3 买回来之后很快就刷机了,一开始用 PixelOS,现在是 LineageOS 23。

原生系统很简洁,没有多余的东西。但是用久了,有些问题很头疼:

  • 耗电:某些国产应用喜欢在后台不断启动(应用宝曾经一分钟内启动二十多次,被黑阈关闭二十多次),Google Play 服务也会有额外耗电。用冰箱可以解决应用耗电,但是冷启动应用会比较慢,重复的冷启动和冻结应该也比正常用耗电吧。
  • 指纹支付基本不行,总是要按密码
  • 没有钱包功能,也就是不能用手机 Pay 和门禁卡。有时候想刷卡就不得不带实体信用卡。
  • LineageOS 没有人脸解锁,有时候戴手套不方便指纹解锁
  • 拍照质量没原厂系统好,LineageOS的相机用后置相机拍视频画面比例会出错
  • 通话录音。LineageOS 只能手动录电话,应用录音是没有的。
  • 农业银行应用经常闪退,不知道啥原因

现在我想安装回 ColorOS,请问解锁 bootloader 的状态下,以下功能正常吗:

  • 指纹支付(支付宝、微信、云闪付等)
  • 银行应用
  • 手机 Pay

是不是得锁上 bootloader 以上功能才正常?

  1. 耗电:常用的软件没必要冻结,有后台就让他挂后台就好了;不常用的软件不会存在频繁冻结解冻导致的额外耗电
  2. 指纹这个或许可以试试隐藏root和bootloader解锁状态,关键字:keybox、Tricky Store、Play Integrity
  3. 不清楚你说的手机Pay是什么(因为我不太用这类东西),可能和解锁bl相关,不知道隐藏能不能解决;有root的话门禁卡也可以用NFC Tool之类的第三方软件进行模拟
  4. 拍照我也不太清楚,个人不太拍照
  5. 录音或许这个会有帮助? GitHub - vvb2060/CallRecording · GitHub
  6. 闪退大部分也是被检测到root/解锁bl导致的

另外,刷回ColorOS后隐藏root/bl是个不错的选择

1 个赞

就是模拟银行卡,可以通过 NFC 拍卡支付,这样不能带实体银行卡也可以付款了,甚至可以拿去坐公交地铁。

  • 确实只有重新锁定 Bootloader,手机的安全认证状态才会真正的彻底恢复(TEE 环境恢复正常,Widevine DRM 恢复 L1,Google Play 保护机制验证通过)

  • 确实在BL解锁状态下,是可以通过 Shamiko、Play Integrity Fix 等各种隐藏模块来“欺骗”这些应用,但这通常是一场无休止的此消彼长的猫鼠游戏,经常会随着 App 更新而失效,然后就要等模块更新。

既然你想要的是省心,那还是建议锁回BL为好

建议不要国产机刷国外系统,除非你习惯了

手机刷第三方系统,十有八九都会很耗电:red_exclamation_mark:不管你有多会优化,除非你有能力硬件级优化

手机刷机玩玩而已,没有条件和精力建议少折腾这些,尤其是不要用主力机,

解BL锁掉TEE至少是高通的要求;Google自己的Tensor就不掉,一加搭载天玑的设备也不掉。小米这种解BL保TEE的反而不遵守规范,因为一旦动了persist分区就有很大概率导致TEE彻底死掉,要恢复只能去售后刷工厂包了。

微信指纹不能用是因为把指纹数据存于TEE本身就不遵守开发规范,国产厂商给他擦屁股,当然也有修复模块。TEE假死就已经可以判断BL锁已解,但是目前还没有应用检测到BL开锁就停止运行这么极端。其次就是影响SafetyNet,Google设备认证等级会掉L3,导致NetFlix和Disney+这些看不了高清,不过对这方面没需求的影响也不大。

国内应用查得最狠的目前只有美团,检测到root不仅会封禁设备,还会黑号。最好不要在已ROOT的设备上运行美团。ROOT的话Alpha面具+Shamiko+ZygiskNext基本能过大部分国产应用,或者新的APatch+内核模块也行,隐藏效果最强;Delta面具无法隐藏Zygisk,并且处于停更状态;KernelSU对一些老内核设备不太友好。当然这些都是系统级的隐藏,TEE层面隐藏除了以上操作外,还要自己找密钥编译FrameworkPatch,这个一般没戏,除非是挂:dog_face:开挂需要。

现在已经有应用解锁BL不能使用了,主要是海外金融软件。OCBC SG Digital(解锁无法使用),八达通(解锁无法新开卡/绑卡),现在还只是金融应用,再过几年极有可能就是其他应用了。 米系手机解除BL锁条件提高 - wvbCommunity


  1. 部分品牌的 TEE 即使未熔断,也并非完全可用(如三星会熔断使用 TEE Client API 与 TEE 交互的 Knox 系列功能)
  2. 部分品牌解锁后拥有永久熔断机制,但并非必定触发(如小米)
  3. 部分品牌的部分设备会在解锁后临时屏蔽 TEE,回锁后可完整恢复(如 OPPO、一加、真我、Nothing)
  4. 部分品牌虽然 TEE 未熔断,但应用并不认可(如微信 Stoer 组件要求厂商在 TEE 中添加自己的证书才能工作,但国外厂商如 Google 并未添加)
  5. 部分品牌中,仅部分设备会永久熔断,实际情况难以统计(如联想)
  6. TEE 目前来说没有什么实际作用,除了 Play Integrity 会使用该特性来验证设备是否已解锁,以及微信 Soter 组件不按照 Android 文档正确使用 Biometrics API
  7. TEE 会给应用提供一个不可伪造的解锁状态,熔断的利与弊无法定夺,单独列出容易对用户造成误导

综上,解锁后的 TEE 状态容易造成误导,且难以统计,不宜单独列出
(BTW,大部分厂商的解锁后状态已经在上述理由里列出了,如有需要自行参考)

注:

  • 除上述列出厂商外,摩托罗拉在解锁后也会永久熔断、索尼部分设备在解锁后相机功能永久丢失、三星部分设备在解锁后相机功能永久丢失,其余未列出厂商均未知
  • 上述结果由单一品牌多款机型测试得出,可能会与个人单一设备测试结果有出入,仅供参考

高通没有要求过 TEE 熔断,都是 OEM 自己做的;Google 的高通设备(Pixel 5 及之前的设备)也不掉且不存在隐藏熔断机制;欧加系在高通平台中的底层实现有问题,在解锁后屏蔽了 TEE 调用,也并非永久熔断,而联发科平台没有同样的问题,故不会屏蔽 TEE 调用。

没有什么规范要求解锁后 TEE 熔断或者是不熔断,我之前向前员工确认过,这就是小米自己埋下的一个安全机制;熔断逻辑也不是直接因为动了 persist 分区而死掉,而是经常写入 persist 容易导致该分区损坏,之后才会触发熔断。但触发熔断的条件不止 persist 分区损坏,我曾经刷入过一些内核也触发了熔断(内核代码未触及 persist 分区);小米设备一旦触发熔断只能在公司(或工厂)内网重新进行 Provision 操作,售后或高维均无此权限,售后内更无工厂包可刷。

微信指纹不能用当然是因为张小龙不遵守开发规范,但不是厂商给他擦屁股,是微信拿这个来要挟厂商收费。

这个说法是错误的,TEE 无法调用可能是被屏蔽了,可能是密钥丢失,也可能是永久熔断,或者设备压根就不支持。但无论是那一样都无法用来判断设备目前为已解锁状态,小米设备触发过熔断回锁,TEE 一样无法调用,但设备的确是未解锁。正相反,如果 TEE 可正常调用,它才会向所有应用提供一个设备已解锁的标记(参见 Attestation 相关文档),应用无需权限即可获取 BL 锁状态。由此可知解锁后 TEE 状态为无法调用其实是利大于弊的。

首先,SafetyNet 已经废弃,应用都已被要求迁移至 Play Integrity。其次,TEE 状态并不会影响 SafetyNet 两个检查的状态,只能影响 evaluationType,TEE 正常工作时其为 HARDWARE,反之其为 BASIC,但如果 TEE 正常工作却返回了一个已解锁的状态,那么两个检查必定会失败。Play Integrity 的情况更为复杂一些,全部正常并且 TEE 工作才能获得 MEETS_STRONG_INTEGRITY 等级,反之只能获得 MEETS_DEVICE_INTEGRITY 等级。这就要求用户如果解锁了 BL 还想要通过 SafetyNet / Play Integrity 认证,就必须 采取任意手段,将 TEE 置为无法调用的状态(当然如果有可用的私钥,也可以选择伪装来获取更高的认证等级)。

Google Widevine DRM 等级与 TEE 状态无关,我只举两个例子:一加解锁后 TEE 被屏蔽调用,但 DRM 等级仍为 L1;小米触发 TEE 熔断后 DRM 会降级 L3,但在设置内重新写回 DRM L1 Key 后,虽然 TEE 仍无法工作,但 DRM 等级为 L1。

OCBC SG Digital 查的是无障碍和 root,不是 BL 锁状态;Octopus 本地查询 root 和非 Play 应用,开新 NFC HCE 八达通卡时通过服务器查询 Play Integrity 状态,要求 MEETS_STRONG_INTEGRITY 等级。 是否考虑添加各 Android 手机厂商 Bootloader 解锁后的一些信息 · Issue #93 · KHwang9883/MobileModels

隐藏BL 总有几款软件是不能完美隐藏的 尤其是银行类APP
可以上酷安查查看 很多反馈

装回 ColorOS 了,解锁 bootloader 状态下,有些银行卡可以添加,有些不行,还显示 NFC 异常。最后还是锁上了 bootloader,懒得折腾了。

刚装好就遇到问题,Outlook 和 Google Tasks 不会发通知,要设置完全允许后天行为才可以。