开始 SOTER 生物认证。验证流程请参考说明

resultJSON 说明 此数据为设备TEE中,将传入的challenge和TEE内其他安全信息组成的数据进行组装而来的JSON,对下述字段的解释如下表。例子如下:

字段名说明
raw调用者传入的challenge
fid(仅Android支持)本次生物识别认证的生物信息编号(如指纹识别则是指纹信息在本设备内部编号)
counter防重放特征参数
tee_nTEE名称(如高通或者trustonic等)
tee_vTEE版本号
fp_n指纹以及相关逻辑模块提供商(如FPC等)
fp_v指纹以及相关模块版本号
cpu_id机器唯一识别ID
uid概念同Android系统定义uid,即应用程序编号

参考文档

类型

  1. (option: Option) => Promise<SuccessCallbackResult>

参数

Option

参数类型必填说明
challengestring挑战因子。挑战因子为调用者为此次生物鉴权准备的用于签名的字符串关键识别信息,将作为 resultJSON 的一部分,供调用者识别本次请求。例如:如果场景为请求用户对某订单进行授权确认,则可以将订单号填入此参数。
requestAuthModes(“fingerPrint” | “facial” | “speech”)[]请求使用的可接受的生物认证方式
authContentstring验证描述,即识别过程中显示在界面上的对话框提示内容
complete(res: CallbackResult) => void接口调用结束的回调函数(调用成功、失败都会执行)
fail(res: CallbackResult) => void接口调用失败的回调函数
success(result: SuccessCallbackResult) => void接口调用成功的回调函数

SuccessCallbackResult

参数类型说明
authModestring生物认证方式
errCodenumber错误码
errMsgstring错误信息
resultJSONstring在设备安全区域(TEE)内获得的本机安全信息(如TEE名称版本号等以及防重放参数)以及本次认证信息(仅Android支持,本次认证的指纹ID)。具体说明见下文
resultJSONSignaturestring用SOTER安全密钥对 resultJSON 的签名(SHA256 with RSA/PSS, saltlen=20)

requestAuthModes

参数说明
fingerPrint指纹识别
facial人脸识别
speech声纹识别
API 支持度: 暂未支持

API 支持度

API微信小程序H5React Native
requestAuthModes.speech

示例代码

  1. Taro.startSoterAuthentication({
  2. requestAuthModes: ['fingerPrint'],
  3. challenge: '123456',
  4. authContent: '请用指纹解锁',
  5. success: function (res) { }
  6. })
  1. {
  2. "raw":"msg",
  3. "fid":"2",
  4. "counter":123,
  5. "tee_n":"TEE Name",
  6. "tee_v":"TEE Version",
  7. "fp_n":"Fingerprint Sensor Name",
  8. "fp_v":"Fingerprint Sensor Version",
  9. "cpu_id":"CPU Id",
  10. "uid":"21"
  11. }

API 支持度

API微信小程序H5React Native
Taro.startSoterAuthentication✔️