反向工程一例,攻击人脸识别系统
包师弟有个笔记本,可以通过刷他的脸登录。登录的时候他往机器前面一坐,屏幕上显示摄像头看到他的脸了,然后"的狗"一声,机器就登录成功了。这几天做SECM实在压抑,干活期间,我们试着业余攻击这个人脸识别系统。
我们把攻击定义为,能通过包师弟的脸以外的东西登录成功。众所周知,人脸识别系统是通过摄像头,十有八九是基于数字图像处理的什么算法。如果能够猜测到算法,那么攻击就有的放矢了。
所以,第一步是猜想,第二步是设计实验验证或证否猜想,第三步是修正手头上的"东西",让它看起来虽然不像包师弟的脸,甚至不从他的脸抄袭,却能通过验证。
我们几个人一起整的,中间有商量彼此赞同,还有互相驳斥,再实验验证;许多猜想夹杂在一起,验证的顺序颇为混乱,所以我不按时间叙述,而按猜想组织。
1. 颜色,对比度
我们最初想到的就是拍一张包师弟的照片,刷照片。
第一张照片,我们考虑到了距离远近会导致几何失真,所以相机距离包师弟的脸与摄像头距离他几乎相同距离 (约一臂远)。距离不必太精确,因为考虑到人在登录的时候距离也不精确,所以算法一定具有一定程序的鲁棒性。又同样由于几何失真,我们把这张照片打印为人脸几乎充满A4纸,这跟人脸的真正大小差不多。
登录失败。
我们用的是灰度图,黑白打印机。所以我们怀疑是算法要求颜色,比如使用颜色和纹理确认哪里是人脸,哪里是背景。虽然我们强烈倾向于
包师弟有个笔记本,可以通过刷他的脸登录。登录的时候他往机器前面一坐,屏幕上显示摄像头看到他的脸了,然后"的狗"一声,机器就登录成功了。这几天做SECM实在压抑,干活期间,我们试着业余攻击这个人脸识别系统。
我们把攻击定义为,能通过包师弟的脸以外的东西登录成功。众所周知,人脸识别系统是通过摄像头,十有八九是基于数字图像处理的什么算法。如果能够猜测到算法,那么攻击就有的放矢了。
所以,第一步是猜想,第二步是设计实验验证或证否猜想,第三步是修正手头上的"东西",让它看起来虽然不像包师弟的脸,甚至不从他的脸抄袭,却能通过验证。
我们几个人一起整的,中间有商量彼此赞同,还有互相驳斥,再实验验证;许多猜想夹杂在一起,验证的顺序颇为混乱,所以我不按时间叙述,而按猜想组织。
1. 颜色,对比度
我们最初想到的就是拍一张包师弟的照片,刷照片。
第一张照片,我们考虑到了距离远近会导致几何失真,所以相机距离包师弟的脸与摄像头距离他几乎相同距离 (约一臂远)。距离不必太精确,因为考虑到人在登录的时候距离也不精确,所以算法一定具有一定程序的鲁棒性。又同样由于几何失真,我们把这张照片打印为人脸几乎充满A4纸,这跟人脸的真正大小差不多。
登录失败。
我们用的是灰度图,黑白打印机。所以我们怀疑是算法要求颜色,比如使用颜色和纹理确认哪里是人脸,哪里是背景。虽然我们强烈倾向于