怎样指纹支付 指纹支付模块( 二 )


在门禁中使用指纹一般是先注册 , 将用户和指纹进行绑定 , 提取出的指纹特征数据就保存在本地 , 具体注册过程如下图所示:

怎样指纹支付 指纹支付模块

文章插图

当用户需要开门时 , 在指纹机上刷指纹 , 指纹机会提取当前指纹的特征值 , 然后和本地存储的指纹数据进行一一比对 , 如果匹配度达到一定的阈值 , 则指纹识别成功 , 向门禁下达开门指令 , 具体认证过程如下图所示:
怎样指纹支付 指纹支付模块

文章插图

APP中的指纹认证这里说的APP指的是移动设备系统中的第三方应用 , 移动设备系统特指当前比较流行的Android和iOS等手机操作系统 。
APP中的指纹认证目前常见于登录或者支付功能 , 因为涉及到APP自身的用户和业务数据操作 , 必然需要和APP后端服务进行交互 , 基于安全考虑 , 客户端和服务端之间也需要进行身份认证 , 所以APP中的指纹认证被分成了两部分:手机本地认证和远程认证 。
本机认证手机系统本身的指纹认证和门禁系统中的指纹认证并无本质区别:用户首先录入指纹 , 基于安全考虑 , 指纹的特征数据也是保存在手机本地;使用指纹进入系统时也是先提取当前的特征值 , 然后和本地的指纹库进行比对 , 匹配上了就能进手机入系统 。
和门禁系统不同的一点是 , 手机中用户需要有一个能进入系统的密码 , 可以是字符密码 , 也可以是手势密码 , 当用户的指纹无法使用时(可能是指纹模块故障 , 也可能是用户指纹问题) , 仍然能有其它方式进入手机;门禁系统中用户则可以只有指纹认证这一种方式 , 进不了门时 , 还可以找管理员 。
当然只使用手机本地认证也是有意义的 , 每次APP从后台切换到前台时都需要用户刷指纹 , 以验证当前操作用户的身份 , 很多的银行APP就是这样做的(其实我并未确认这些APP此时有没有去后台再次验证 , 只是认为这是一种有意义的认证方式) 。
本机认证的安全性手机操作系统厂商们已经做得很好了 , 指纹的注册和识别都在安全区域内进行 , 指纹识别的结果可以加密的方式返回给APP , 这块直接应用就可以了 。
远程认证远程认证就是客户端和服务端之间的认证 , 完整的方式就是双向认证:客户端要验证服务端的身份 , 以免被套取信息;服务端要验证客户端的身份 , 以免用户身份被冒充 。