测试发现红外照片可以骗过小米8 的人脸解锁
发布会上还演示了用照片是无法骗过面部识别的,但是这部手机又没配备 3D 结构光面部识别,它是怎么做到的呢?
小米 8 的刘海之所以这么大,是因为里面多了两个零件,红外照明元件和红外镜头,它们可以让小米 8 在完全无光的情况下实现面部解锁,目前这只有 iPhone X 和小米 8 可以做到。其余的手机想要在这么黑的环境下解锁,办法只有一个:补光。把屏幕亮度调高到可以照亮人脸的程度,便可以顺利解锁,但是晃瞎眼就无法避免了。
发布会上还演示了用照片是无法骗过面部识别的,但是这部手机又没配备 3D 结构光面部识别,它是怎么做到的呢?
首先可以确定的是小米 8 并没有利用前置双摄像头来判断面部 3D 结构,因为堵住前摄是可以正常解锁的。其次,学过生物的话你就应该知道,人体本身就是一个三十多度的热源,在不停地向外发出红外线,而通过红外线传感器,即使在周围无光的环境下,也能「看到」人。前提是,这是个活人。所以通过红外相机,理论上不但能在纯黑下识别人脸,还能做活体检测。
但~这一切只是理论。刚才我用的是我们实验室六万多的工业级红外温枪。小米 8 的这颗红外镜头要是真的能做到在纯黑环境下直接识别人脸,那也用不着在旁边摆一颗不可见红外光灯来在夜间照亮你的美了。事实证明在堵住这颗灯之后,黑暗环境下真的无法解锁,进 CIT 模式去看也发现红外相机什么都没拍到。
所以通过体温检测活体这条路无法通过,那么小米 8 又是怎么识破照片的呢?
我用小米 8 前置相机,关掉美颜拍了一张自拍照,然后让子章找楼下的打印店找最好的相片纸,用最高分辨率打印了一张彩照,结果,不能解锁。
第一次尝试:失败
然后我把照片沿着人像边缘剪裁了一圈,放在那,果然,还是不能解锁。
第二次尝试:失败
那肯定不能啊,我不能用普通彩色照片,小米 8 面部识别用的是红外相机,我得用红外黑白照片。所以我就又进 CIT 模式,调用红外相机拍了一张红外照片,又让子章去打印店找最好的相片纸、用最高的 DPI 打印了一张黑白照,结果还是不能解锁。
第三次尝试:失败
厉害了。抱着好奇心,我再次进去 CIT 模式,结果发现我们打印的照片,在红外相机里根本就是一张白纸。因为照片纸表面的这层膜会完全反射红外灯光,白纸能解锁就怪了。所以在发布会上,那个人用照片是不可能解锁的……吗?
我这次用我们办公室的黑白打印机,用最普通的 A4 纸,把这张红外照片打印出来,(咔嚓,解锁了)解锁了。
第四次尝试:成功
所以,只要照片不反光,并且是红外照片,剪都不用剪,直接解锁。不过话说回来不反光的纸好找,但是红外相机不太好找,而且你上大街拿着红外相机对着人拍,是谁都会警觉的,所以破解难度还是比较高的……吗?
我把普通彩色照片也用黑白打印机打印出来,你看,其实差别无非就是红外的眼睛更黑,面部阴影更重,所以再花一块五买根铅笔把眼睛涂黑,脸上的阴影涂重,(咔,解锁)。所以破解成本:一张普通大头照,一个普通打印店,必须打印最便宜的五毛钱一张黑白照片,贵的还真不行,再用一根一块五的铅笔,就大功告成了。破解成本比我们之前破解 vivo X20 陡增了一倍,也就是贵了一块钱。
所以如果你是小米 8 用户、或者打算买小米 8、在乎自己的隐私的话,还是得把面部解锁禁用掉。真正的支付级面部识别,让我们一起期待使用结构光的小米 8 透明探索版。
发表回复