OCR 生成签名

最近更新时间:2024-06-17 17:54:01

我的收藏
注意
如果因自身业务需要对 OCR 识别的影像文件进行存储或其他用途,请合作方务必自行保存订单号,通过订单号拉取 OCR 识别的影像文件是唯一方式。

准备步骤

下载 SDK,请到控制台自助接入列表页获取密码。
前置条件:请合作方确保 NONCE ticket 已经正常获取,获取方式请参见 获取 NONCE ticket
NONCE 类型的 ticket,其有效期为120秒,且一次性有效,即每次启动 SDK 刷脸都要重新请求 NONCE ticket
合作方根据本次人脸核身的如下参数生成签名,需要签名的参数信息如下:
参数
说明
来源
appId
业务流程唯一标识
参考 获取 WBappid 指引在人脸核身控制台内申请
userId
用户唯一标识
合作方自行分配(与 SDK 里面定义的 userId 保持一致,不要带有特殊字符)
version
参数值:1.0.0
-
ticket
合作伙伴服务端实时获取的 ticket,注意是 NONCE 类型
获取方式请参见 获取 NONCE ticket(所用的 userId 参数值需要和 SDK 里面定义的 userId 保持一致)
nonceStr
必须是32位随机数
合作方自行生成(与接口里面定义的随机数保持一致,不要带有特殊字符)
注意
参与签名的数据需要和使用该签名的 SDK 中的请求参数保持一致。

基本步骤

1. 生成一个32位的随机字符串 nonceStr(其为字母和数字,登录时也要用到)。
2. 将 appId、userId、version 连同 ticket、nonceStr 共5个参数的值进行字典序排序。
3. 将排序后的所有参数字符串拼接成一个字符串。
4. 将排序后的字符串进行 SHA1 编码,编码后的40位字符串作为签名(sign)。
注意
签名算法请参见 签名算法说明

参考示例

请求参数:
参数
参数值
appId
IDAXXXXX
userId
userID19959248596551
nonceStr
kHoSxvLZGxSoFsjxlbzEoUzh5PAnTU7T
version
1.0.0
ticket
XO99Qfxlti9iTVgHAjwvJdAZKN3nMuUhrsPdPlPVKlcyS50N6tlLnfuFBPIucaMS
字典排序后的参数为:
[1.0.0, IDAXXXXX, XO99Qfxlti9iTVgHAjwvJdAZKN3nMuUhrsPdPlPVKlcyS50N6tlLnfuFBPIucaMS , kHoSxvLZGxSoFsjxlbzEoUzh5PAnTU7T, userID19959248596551]
拼接后的字符串为:
1.0.0IDAXXXXXXO99Qfxlti9iTVgHAjwvJdAZKN3nMuUhrsPdPlPVKlcyS50N6tlLnfuFBPIucaMSkHoSxvLZGxSoFsjxlbzEoUzh5PAnTU7TuserID19959248596551
计算 SHA1 得到签名: 该字符串就是最终生成的签名(40位),不区分大小写。
D7606F1741DDCF90757DA924EDCF152A200AC7F0