不是说 app 不能直接操作指纹吗? 安卓上的指纹校准 app 的原理是什么?

2018-02-08 12:23:39 +08:00
 gdtv

买了台小米 note3,指纹解锁识别率很差,后来听人介绍用了一个指纹校准 app,按app里提示操作了一番,非常有效,现在秒解了。 手机没有 root。 请问这个校准的原理是什么?

9401 次点击
所在节点    Android
23 条回复
Pain
2018-02-08 12:33:26 +08:00
手机内部有一块 tpm 芯片和那个有关,具体不清楚不敢乱说。
lucifer9
2018-02-08 12:46:11 +08:00
我觉得好歹给出来这个软件的下载地址,或者至少说个名字吧。
gdtv
2018-02-08 12:58:48 +08:00
@lucifer9 https://pan.baidu.com/s/1qZ0erBe 不知对其他安卓手机有没有效
3a3Mp112
2018-02-08 12:59:33 +08:00
。。。不就是重新录一遍吗
Biwood
2018-02-08 13:03:07 +08:00
用直接下载 apk 安装的 app 来校准指纹?你们可真是心宽
gdtv
2018-02-08 13:04:35 +08:00
@Biwood 所以才来问啊。
gdtv
2018-02-08 13:05:52 +08:00
@3a3Mp112 如果重新录一遍就能解决就好了
tghgffdgd
2018-02-08 13:09:34 +08:00
你这说得好像系统设置就不是 app 似的。
xomix
2018-02-08 13:37:29 +08:00
指纹锁的解锁到底给系统反馈的是什么?从 07 年第一次接触指纹设备开发到现在,见到的设备都是指纹作为一个二进制数据传输过来,和本地或远端数据库对比数据后返回对比结果。
也就是说,指纹解锁反馈的是比对结果。
现在的比对算法越来越复杂了,但是根本上还是比对结果。
系统 APP 可能为了方便用户,对指纹采集次数不足,因此关键点重叠的时候找的关键点比较难直接复现出来,app 通过自有接口给数据库增加更多指纹因此关键点找到的更多,找到了更容易复现的关键点组合,因此秒解。
但是使用第三方 APP 丰富指纹库的行为本身就是危险的,别的不说我每次都把自己的指纹给你丰富进去一套,过几天你的手指和我的手指就都能解锁了。
king2014
2018-02-08 14:52:46 +08:00
你试着系统重新输入指纹,一个手指各个角度都输入,看看正确率怎么样
sea516
2018-02-08 14:56:19 +08:00
同 note3,秒解
rswl
2018-02-08 15:07:15 +08:00
是录得不好吧
badec
2018-02-08 15:11:21 +08:00
...就是重新录入一次而已啊。。。
gdtv
2018-02-08 15:16:19 +08:00
@king2014
这台 note3 上的指纹有点奇怪。
我的右手各个手指横着竖着都可以录入指纹,左手姆指只能竖着录入,横着录不入,横着就提示传感器污脏。竖着录入去后,解锁的时候也要竖着才勉强能解。而我的左手姆指在其他多台手机上横着竖着都可以录入。
刚去了小米论坛上看,也有其他人遇到同样的问题。
flynaj
2018-02-08 15:42:28 +08:00
不能直接操作可以间接操作么,肯定要有 API 才行么
besto
2018-02-08 15:51:38 +08:00
@xomix 理论上来说,此类操作都应该在所谓的 Trust Zone 内进行,指纹存贮在 TrustStroage (可能实现为 RPMB 分区)。

APP 对指纹的操作需要 Linux kernel 端通过 CA 端操作并通过 SMC 指令切换到 ARMv8a SEL3 再切回 SEL0/SEL1,进入特定的 Trust OS,有 TA 端负责录入指纹,指纹对比,等操作。整个 Linux kernel 端,都不可见指纹。
xomix
2018-02-08 15:55:14 +08:00
@besto 这个没有统一标准,这只是 google 的标准并不是所有手机厂商的标准。还有就是我 07 年做开发的时候还没有安卓呢。
Halry
2018-02-08 16:23:58 +08:00
miui 本来就是个黑盒子,安全这东西就别想太多
要是标准的原生安卓,应用不能直接调用读取模块,指纹硬件操作都要经过内核然后访问 trustzone 实现。而小米可能直接把硬件暴露在系统里了
wanwan
2018-02-08 16:27:34 +08:00
重新录入吧
besto
2018-02-08 17:54:40 +08:00
@xomix 这是 ARM 标准支持的东西,我说的也是 linux 平台上的实现,Google 也只是用了这套系统...另外,理论上,Google 如果做了 CTS,里面有了类似的测试,那么没通过测试的,可就不能叫 android 了(狗头表情)

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/429426

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX