手机刷脸登录
目录
1、简介
1.1 方案概述
1.2 功能介绍
1.3 产品构成
1.3.1 鉴权认证机制
1.3.2 人脸注册
1.3.3 人脸识别登录
1.3.4 人脸认证登录
2、集成指南
2.1 准备工作
2.1.1 注册开发者
2.1.2 创建应用
2.1.3 获取密钥
2.1.4 生成token
2.1.5 SDK license(十分重要!)
2.2 集成策略
2.2.1 阈值选择
2.2.2 图片压缩
2.3 iOS集成说明
2.4 Android集成说明
2.5 H5方案集成说明
3、常见问题
1、简介
1.1 方案概述
业务流程图
1.2 功能介绍
人脸注册&实名认证
随着移动互联网的快速发展,全行业从“实名制”向“人脸实名认证”快速升级。
①传统实名制:通过姓名+身份证号,或姓名+身份证号+手机号进行应用的账号注册。该方式虽然操作简便,但存在身份信息被盗用、黑产批量注册薅羊毛等风险,企业也无法真实确认操作者为身份信息所有者本人。
②结合人脸注册:在实名制的基础之上,通过人脸图片进行账号注册,被公认为最可靠的身份认证方式。具体为基于前端SDK进行动作/炫瞳活体检测,结合服务端的图片活体检测算法,抵挡高清屏幕、照片、视频、AI换脸、高仿真面具、3D模型的攻击,判断用户为活人,保障业务环节中的用户真实性判断,并获得账号所有者的一张人脸底图。该方式虽获得了用户的人脸图片,但无法判断与身份信息的一致性,仍存在被重复使用的风险。
③人脸实名认证:由于部分业务有“一人一账号”的要求,因此需要在以上活体检测的基础之上,与权威数据源对接,确保用户身份真实有效,避免其他用户也用同一信息重复注册账号,具体方式为校验姓名+身份证号+人脸图片的一致性。
人脸认证登录
在以上人脸实名认证完成后,业务系统已具备了uid及人脸底图。后续用户进行登录、打卡等低安全要求的操作时,无需再次采集信息进行权威数据源核验,仅通过现场采集人脸照片进行1:1人脸比对,即可确认身份.
用户操作时,系统需要指定uid的映射信息(如输入用户名),这样就需要通过用户名先获取uid。当然也可以第一次登录后,把uid或用户名保存在端上,后面登录跳过用户获取uid的过程。
1.3 产品构成
本方案由人脸注册、人脸识别登录和人脸认证登录组成,具体如下所示:
1.3.1 鉴权认证机制
调用接口:https://aip.baidubce.com/oauth/2.0/token
百度AIP开放平台使用 OAuth2.0
授权调用开放API,调用API(如:人脸注册、人脸识别、人脸认证接口)时必须在URL中带上accesss_token参数,获取Access Token。
1.3.2 传统实名制
调用接口:https://aip.baidubce.com/rest/2.0/face/v3/person/idmatch
验证用户输入的身份证号码和姓名是否匹配,用于判断用户信息是否真实。
1.3.3 人脸注册
调用接口:https://aip.baidubce.com/rest/2.0/face/v4/faceverify
人脸注册流程,端上进行离线动作/炫瞳/静默活体验证、服务端进行在线活体检测,从开发者服务端获取用户uid、注册uid和人脸到人脸库。
人脸实名认证APP端方案接口文档
在线图片活体接口文档
人脸实名认证V4接口文档
业务流程图如下所示:
1.3.3 人脸实名认证
调用接口:https://aip.baidubce.com/rest/2.0/face/v4/mingjing/verify
人脸实名认证流程,端上进行离线动作/炫瞳/静默活体验证、服务端进行在线活体检测(防止视频攻击)、通过权威数据源人脸实名认证进行信息一致性核验,开发者可自行给定是否通过人脸相似度阈值(建议80分,对应万分之一误识率,安全级别高的建议90分)。
1.3.4 人脸认证登录
调用接口:https://aip.baidubce.com/rest/2.0/face/v4/mingjing/match
此接口入参中需要指定uid,但能解决同一个人注册多用户的问题。这样就需要通过用户名先获取uid。当然也可以第一次登录后,把uid或用户名保存在端上,后面登录跳过用户获取uid的过程。
业务流程图如下所示:
2、集成指南
2.1 准备工作
在正式集成前,需要做一些准备工作,完成一些账号、应用及配置,具体如下:
2.1.1 注册开发者
- STEP1:点击百度AI开放平台导航右侧的控制台中的人脸识别,页面跳转登录完毕后,进入人脸识别后台。
- STEP2:使用百度账号完成登录,如您还未持有百度账户,可以点击此处注册百度账户。
- STEP3:进入百度云欢迎页面,填写企业/个人基本信息,注册完毕,至此成为开发者,进行个人实名及企业实名,获得相关API权限及免费额度。注:(如您之前已经是百度云用户或百度开发者中心用户,STEP3可略过。)
- STEP4:进入百度云控制台,找到人工智能相关服务面板。
- STEP5:点击进入「人脸识别」模块。
注一:如果您通过百度AI开放平台登录到后台,AI相关服务模块入口,如下图所示:
注二:如果您通过百度云直接登录后台,AI相关服务模块入口,则如下图红框部分所示:
说明:两种入口只是展现形式不同,相关AI服务模块内容完全一样。
2.1.2 创建应用
创建好账号后,在正式调用AI能力之前,需要您创建以下应用,这个是调用服务的基础能力单元。选择「人脸识别」服务,首先见到此服务的控制台概览页,点击「创建应用」,即可进入应用创建界面,如下图所示:
2.1.3 获取密钥
在您创建完毕应用后,平台将会分配给您此应用的相关凭证,主要为AppID、API Key、Secret Key,以上三个信息是您应用实际开发的主要凭证,每个应用之间各不相同,请您妥善保管。如上图所示。
注意:开发中请注意区分多份aksk(API Key、Secret Key),每个aksk代表一个人脸库。
2.1.4 生成token
刚才所创建的应用在调用开放平台API之前,首先需要获取Access Token(用户身份验证和授权的凭证)您需要使用创建应用所分配到的AppID、API Key及Secret Key,进行Access Token的生成,方法详见Access Token获取,我们为您准备了几种常见语言的请求示例代码。
注意: Access Token的有效期为30天(以秒为单位),请您集成时注意在程序中定期请求新的token,或每次请求都获取一次token。
2.1.5 SDK license(十分重要!)
人脸SDK License:此license用于SDK离线功能使用,用于接下来集成使用。
您可以在创建人脸实名认证APP方案后下载示例工程,获得已经配置好授权信息的版本。
2.2 集成策略
2.2.1 阈值选择
实名场景主要适用单帧检测模式,可以通过识别接口接口中的faceliveness参数判断,超过阈值即为活体通过。阈值设置越高,对应的安全性越高,即拒识率越高,但通过率相应下降
阈值(Threshold) | 误拒率(FRR) | 通过率(TAR) | 拒绝率(TRR) |
---|---|---|---|
0.05 | 0.01% | 99.99% | 97.75% |
0.1 | 0.05% | 99.95% | 98.33% |
0.03(推荐) | 0.1% | 99.9% | 98.82% |
0.5 | 0.5% | 99.5% | 99.67% |
0.9 | 1% | 99% | 99.77% |
关于以上数值的概念介绍:
- 拒绝率(TRR):如99%,代表100次作弊假体攻击,会有99次被拒绝。
- 误拒率(FRR):如0.5%,指1000次真人请求,会有5次因为活体分数低于阈值被错误拒绝。
- 通过率(TAR):如99%,指100次真人请求,会有99次因为活体分数高于阈值而通过。
- 阈值(Threshold):高于此数值,则可判断为活体。
2.2.2 图片压缩
SDK拿到人脸后,可以基于本地的人脸检测,取到人脸的标准框位置,基于人脸关键点进行人脸部分的进一步自动剪裁,减少图片的大小,总而减少网络传输耗时。通常建议:剪裁(人脸不小于100px)、分辨率压缩(最小宽度200px左右)、质量压缩(控制在0.8以上),以上三种处理方式也可以组合叠加使用。
2.3 iOS集成说明
查看APP方案文档:https://ai.baidu.com/ai-doc/FACE/Kkxh51gck
2.4 Android集成说明
查看APP方案文档:https://ai.baidu.com/ai-doc/FACE/Ykxh51xsl
2.5 H5集成说明(手机/PC浏览器)
此方案适用于微信公众号及微信小程序。
查看H5方案文档:https://ai.baidu.com/ai-doc/FACE/skxie72kp
常见问题
Q:有了license为什么还有AK/SK?
A:license是离线人脸检测使用的。使用在线API(人脸注册、人脸识别、人脸认证)需要使用access_token,而access_token需要AK/SK获取。
Q:以上方案的收费标准是?
A:请查看产品价格文档。
Q:以上方案是否可以用于私有化环境?
A:除权威数据源核验外,均可以部署在私有化,请查看部署环境准备。如需了解更多,请提交合作咨询或联系您的专属商务经理。