解绑卡密绑定的机器码和 IP,方便用户换设备。

接口地址: https://xy.ttnb666.top/api.php?api=kmunmachine&app=YOUR_APP_ACCESS_CODE

返回格式: JSON

请求方式: POST

请求示例: https://xy.ttnb666.top/api.php?api=kmunmachine&app=YOUR_APP_ACCESS_CODE

安全协议: v2 HMAC-SHA256,旧版 MD5 Sign、GET 直连和 URL 带 key 均不兼容

公共安全参数:

名称 变量/请求头 必填 位置 说明
协议版本 security_version / X-Auth-Version POST或Header 固定填写 2
时间戳 security_timestamp / X-Auth-Timestamp POST或Header Unix 秒级时间戳,允许 300 秒误差
随机串 security_nonce / X-Auth-Nonce POST或Header 16 到 96 位随机字符串,每次请求必须不同
请求签名 security_sign / X-Auth-Signature POST或Header 使用 APPKEY 对签名原文计算 HMAC-SHA256
登录令牌 auth_token / X-Auth-Token 按接口需要 POST或Header 卡密登录、账号登录等登录成功后返回;解绑、取文件等授权态接口必须提交

签名原文:

app-api-v2
POST
kmunmachineYOUR_APP_ACCESS_CODE
security_timestamp
security_nonce
auth_token或留空
按参数名升序排序后的业务参数查询串
业务参数查询串只包含接口业务字段,不包含 api、app、security_version、security_timestamp、security_nonce、security_sign、sign、auth_token、data、value、PHPSESSID 等安全或系统字段。编码规则使用 RFC3986 URL 编码。签名原文里的 app 字段必须和请求地址里的 app 参数完全一致。

响应验签:

服务端返回 server_sign_alg=RSA-SHA256、server_key_id、server_key_scope、server_public_key、server_sign、request_nonce、server_time
客户端必须校验 request_nonce 等于本次 nonce
客户端必须使用当前应用预置的服务端公钥验 server_sign
server_sign = base64url(rsa_sha256_sign(canonical_json_without_server_sign, SERVER_PRIVATE_KEY))
每个应用可以配置独立响应签名私钥/公钥。正式客户端不能只信任响应里带回的 server_public_key;应内置当前应用访问码对应的固定公钥或固定 server_key_id。server_public_key 仅用于展示、调试和公钥轮换对照。

业务请求参数说明:


名称 变量 必填 类型 说明
接口 api URL Query 填写kmunmachine
应用 app URL Query 填写后台应用访问码(URL app 参数)
设备码 markcode POST 后台设置“仅原设备可解绑”时必须等于原设备码;设置“任何设备可解绑”时可提交当前设备码

返回参数说明:

名称 类型 说明
code String 返回状态
msg String 返回内容

返回示例:

{
    "code": 200,
    "msg": "卡密解绑成功",
    "time": 1614691420,
    "check": "9730a2b274084053f7e42dd5399a0b55"
}

错误码格式说明:

名称 类型 说明
101 String 应用不存在
102 String 应用已关闭
171 String 接口维护中
172 String 接口未添加或不存在
104 String 签名为空
105 String 数据过期
106 String 签名有误
112 String 请填写机械码
148 String 卡密为空
149 String 卡密不存在
151 String 卡密禁用

代码示例:

暂未添加示例代码