SenseID 身份验证一体机开
发协议文档
深圳市商汤科技有限公司
目录
1. 目标与背景............................................................... 1
2. 功能与定位............................................................... 2
3. 系统结构
.............................................................. 3
4. 接口协议................................................................. 4
4.1 身份信息输出模块 .................................................... 4
4.1.1 获取 Token 的接口............................................... 4
4.1.2 身份信息输出接口............................................... 5
5. 参考..................................................................... 8
版本
v1.0
更新时间
2017/7/20
描述
增加信息输出 HTTP 接口
修改人
Jack
SenseID 身份验证一体机开发文档
1. 目标与背景
商汤 SenseID 身份验证一体机【简称 SenseID 一体机】是一款独立完整的核验人证一致性的终端设
备。该设备自带摄像头和身份读卡器,将持证人的现场照片和读取的身份证照片进行比对,以达到人
证合一身份验证。
同时,为了支持客户在实际业务系统中更灵活的对接和使用该设备, 我们提供标准且完备的数据
导入导出接口,便于大家快速集成。
www.sensetime.com
1
SenseID 身份验证一体机开发文档
2. 功能与定位
本接口文档面向有一定系统集成需求的客户,当前 SenseID 一体机设备中开放该接口便于客户接入
使用:身份信息的输出接口。
客户可以将 SenseID 一体机上验证和比对的结果通过该接口输出到自身的业务系统中。【访客系统
的示例】
www.sensetime.com
2
SenseID 身份验证一体机开发文档
3. 系统结构
如下:
3
www.sensetime.com
SenseID 身份验证一体机开发文档
4. 接口协议
4.1 身份信息输出模块
SenseID 访问服务器,获取通信用的 token 及服务器时间。每次传输数据时,SenseID 必须提供合
法的 token。Token 具有时间限制或者次数限制,具体由服务器实现。当 token 失效后,服务器会拒绝
请求。
为了防止非法用户请求 token,接口请求将对参数进行签名,服务端接收到参数签名 sign 字段
后,根据相同的算法进行合法性判断,只有通过参数签名校验才返回 token 值。
参数签名校验规则:
1. 按字母表升序方式,对传递的参数名与参数值进行排序。排序后的字符串格式应该如下所示:
Params = ”device_id=SZFT030×tamp=1489116844&version=1.0.0”;
2. 对排序后的字符串加盐处理,然后进行 md5 加密,生成校验码。如下:
key = md5(params + SALT);
3. 将生成的 key 值与客户端传递的 sign 值进行比对。(SALT 值保密,不在本文档中声明)
4.1.1 获取 Token 的接口:
描述
获取合法的 token 信息便于安全传输
版本
1.0
调用 URL
http://ip-addr:port/path/auth or https://ip-addr:port/path/auth
ip-addr: 业务系统的服务器地址
port: 8080
请求方式
POST
www.sensetime.com
3
SenseID 身份验证一体机开发文档
请求参数
参数名称 类型
说明
device_id string
在业务系统中唯一标识设备
timestamp string
客户端时间戳,用于参数签名校验
version
string
当前实现的协议版本
sign
string
根据约定算法生成的参数签名
注意:
1. device_id 为用户在系统中为该设备分配的唯一编码,需在 SenseID 软件中设置,默认使用设
备唯一 ID。
2. version 为当前 SenseID 中实现的协议版本号。
返回值说明
字段
code
message
token
timestamp
version
类型
string
string
string
string
String
说明
返回码 0:成功 非 0:错误
返回码的错误信息描述
识别分数,大小范围 0-1
服务器响应的时间戳
服务器的协议的版本号
返回值示例
成功返回
{
"code": 0,
"message": "success",
"data": {
"token": "dsjfkldsjflkajsflkhekjhfjkehffkahekjhfjk",
"timestamp": "1489116844",
"version": "1.0.0"
}
}
失败返回
www.sensetime.com
4