OCR 生成签名

最近更新时间:2024-06-17 17:09:41

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

准备步骤

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