本文为您介绍了活体认证的系统交互流程。

工作流程

  1. 去阿里云控制台创建方案号,如果已经创建方案号了,该步骤可以跳过。
  2. 去阿里云控制台开通活体认证功能,如果是历史方案号,该步骤会将历史密钥进行更新,SDK需要更换为新密钥,否则无法使用活体认证功能。
  3. 为SDK设置密钥。
  4. 调用活体认证加速接口,进行初始化加速(这一步可提前调用),加速缓存有效期30分钟。
  5. 调用活体认证接口,发起认证,SDK返回认证结果,成功或者失败,以及认证Token(即便失败也可能会有Token)。
  6. 使用Token,通过客户服务端查询精准结果,根据查询结果执行相应的处理逻辑。
活体认证

密钥处理(非常重要)

密钥的处理逻辑:
  • 对于老方案号,如果想用活体认证功能,则客户需要更换最新的SDK,并且更新最新的秘钥。
  • 对于新方案号,如果想用号码认证的功能,iOS正常使用即可,Android则需要保证SDK的版本>=v2.8.4或者>=v9.4.0,否则会报密钥解析错误600017,建议升级到最新版SDK即可。
注意 由于Android老SDK并不兼容新方案号,如果客户的方案号是存在服务端,需要有APP主动拉取的情况,在服务端更新密钥时需要对APP或者SDK版本号做判断区分,如果密钥信息是保存在APP客户端,则无需考虑该问题。

常见问题

1、使用历史创建的方案号,为什么开通了活体认证功能依然无法使用?

答:历史方案号的密钥信息里面,没有携带活体认证相关的信息,所以SDK无法使用活体认证功能,需要从控制台重新复制一下密钥,使用新的密钥才能使用活体认证。

2、开通了活体认证,密钥发生更换,对历史版本的APP是否会有影响?

答:Android:如果秘钥保存在APP客户端,则不会有影响;假如历史版本的APP,密钥是存在服务端的,则更新密钥时需要区分新老版本,否则会有影响,要保证旧SDK拿到的是旧密钥,新SDK使用新密钥。如果是v2.8.4或者v9.4.0及以后的版本,则无需区分新老密钥。

iOS:无影响。

3、Android v2.8.4和v9.4.0之前的SDK,使用新密钥或者新创建的方案号为啥没法使用,会报密钥解析错误?

答:建议升级SDK至最新版本。