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