密码TCP API接口文档
协议
- 请求方式:TCP
- ip地址: 172.16.3.145:30232
一、请求数据格式
- byte[]规则定义如下,[2+8+4+8+4+N],请求和响应都按照此规则构建,N为业务数据长度。
- 2-前两个字节标识业务(字符串),其中00-获取随机数,01-对称密钥加密,02-对称密钥解密,03-SM2私钥签名,04-SM2公钥验签,05-SM2公钥加密,06-SM2私钥解密,07-导出公钥,08-申请指定索引密钥对,09——注销指定索引的密钥对
- 8-客户端参数透传
- 4-加密机虚拟索引(int),没有的话默认-1,-1,-1,-1
- 8-appKey(字符串),必要
- 2-错误码(字符串)-默认填充-1,-1
- 2-预留-默认填充-1,-1
- N-业务数据,比如请求的待签名数据,响应的已签名数据
二、响应数据格式
- 同请求数据格式
三、错误码
错误码 | 错误描述 |
---|---|
00 | 成功响应 |
90 | 随机数异常 |
91 | 对称密钥解密异常 |
92 | SM2私钥签名异常 |
93 | sm2解密异常 |
94 | 无此业务 |
95 | appKey错误 |
96 | 索引缺失 |
97 | SM2公钥导出 |
98 | 申请指定索引的密钥对异常 |
99 | 注销指定索引的密钥对异常 |
87 | SM2公钥验签异常 |
88 | SM2公钥加密异常 |
89 | 对称密钥解密异常 |
四、示例代码
参考api-test-tcp-1.0.0-SNAPSHOT.zip包下的cn.unitid.ca.api.tcp.client.service.impl.MessageServiceImplTest类。 |
申请随机数
申请随机数。
一、请求响应示例
请求示例
注意:此处省略了内容长度(当前请求的二进制数据长度)
```
请求数据:30303132333435363738ffffffff77384d7547433943ffffffff00000005
响应成功示例
注意:此处省略了内容长度(当前请求的二进制数据长度)
响应数据:30303132333435363738ffffffff77384d75474339433030ffffbc5bcf92a1 |
对称密钥加密
对称密钥加密。
一、请求响应示例
请求示例
注意:此处省略了内容长度(当前请求的二进制数据长度)
请求数据:303131323334353637380000000148683457514e4b78ffffffff653562653835653538616130653561663836653639356230653638646165 |
响应成功示例
注意:此处省略了内容长度(当前请求的二进制数据长度)
响应数据:303131323334353637380000000148683457514e4b783030ffffe5313adfdc4f48d285580ca12be58c1ab087289406efa21f08069ed74312518a |
对称密钥解密
对称密钥解密。
一、请求响应示例
请求示例
注意:此处省略了内容长度(当前请求的二进制数据长度)
请求数据:303231323334353637380000000177384d7547433943ffffffff43b2dcdefed2ceaf22e47ce153073cb63033b282f8f090dc05d20cc924104ce7 |
响应成功示例
注意:此处省略了内容长度(当前请求的二进制数据长度)
响应数据:303231323334353637380000000177384d75474339433030ffffe5afb9e7a7b0e5af86e992a5e58aa0e5af86e695b0e68dae |
sm2签名
sm2签名。
一、请求响应示例
请求示例
注意:此处省略了内容长度(当前请求的二进制数据长度)
请求数据:303331323334353637380000000177384d7547433943ffffffffe5be85e58aa0e5af86e695b0e68dae |
响应成功示例
注意:此处省略了内容长度(当前请求的二进制数据长度)
响应数据:303331323334353637380000000177384d75474339433030ffff3045022009c9c6d0617747c3bbd54d7b35df031374c08d400c7c4691077f032e43c4f2ca022100e304600f66afbd021ca902d4ac0c88fa918d3759c0027ce10170c13db3ebfeb0 |
sm2验签
sm2验签。
一、请求响应示例
请求示例
注意:此处省略了内容长度(当前请求的二进制数据长度)
请求数据:303431323334353637380000000148683457514e4b78ffffffff8eee1ca679c3cc0c93938d2cc9446df852a67dd5414bddea6dbffe974ebd767d3046022100847fa7d2a951279e4fc1c4d82e05c0bd34e8fb601463178289235d01b1caac2f022100f566f6e75779975bb746f7412ad50f6e4b6b788b4fd82b59223280f8bf993bd3 |
响应成功示例
注意:此处省略了内容长度(当前请求的二进制数据长度)
响应数据:303431323334353637380000000148683457514e4b783030ffff00000001 |
sm2加密
sm2加密。
一、请求响应示例
请求示例
注意:此处省略了内容长度(当前请求的二进制数据长度)
请求数据:303531323334353637380000000148683457514e4b78ffffffffe5be85e58aa0e5af86e695b0e68dae |
响应成功示例
注意:此处省略了内容长度(当前请求的二进制数据长度)
响应数据:303531323334353637380000000148683457514e4b783030ffff3078022062ced2ffe421c133ff2c693146a64598279a14d7d1d5d7889cda0fe8af78ea6a022100e5caa44c482a6ef0385df3b774fc0b174fc600c27c70978322f9fe77e158d97904205a900675c4b71da8923b23d51c0252dbf423308fc08c4889c93af6f570e9aeb1040fb7c028ea3270b046e9b416f90db3a6 |
申请指定索引的密钥对
申请指定索引的密钥对。
一、请求响应示例
请求示例
注意:此处省略了内容长度(当前请求的二进制数据长度)
请求数据:303831323334353637380000000148683457514e4b78ffffffff00000000 |
响应成功示例
注意:此处省略了内容长度(当前请求的二进制数据长度)
响应数据:303831323334353637380000000148683457514e4b783030ffff00000001 |
注销指定索引的密钥对
注销指定索引的密钥对。
一、请求响应示例
请求示例
注意:此处省略了内容长度(当前请求的二进制数据长度)
请求数据:303931323334353637380000000148683457514e4b78ffffffff00000005 |
响应成功示例
注意:此处省略了内容长度(当前请求的二进制数据长度)
响应数据:303931323334353637380000000148683457514e4b783030ffff00000001 |
sm2解密
sm2解密。
一、请求响应示例
请求示例
注意:此处省略了内容长度(当前请求的二进制数据长度)
请求数据:303631323334353637380000000177384d7547433943ffffffff000000000000000000000000000000000000000000000000000000000000000074cf8db633b22572c70cbc164e04a630709c70b2f6e3d80c9b6ddfd146cc40420000000000000000000000000000000000000000000000000000000000000000ab29782b9ac9c0a733e6b8d45d3f39d5b0568ed85849634a7a6bd5593acebe656af946f01da5f892600f29042889ff8c28a962ea603430dcb569ad18f374608b10000000fdf797490d6b2907bc74f00599c2f4150000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008916ab4937a4c9f5b3185a077cc52c7d |
响应成功示例
注意:此处省略了内容长度(当前请求的二进制数据长度)
响应数据:303631323334353637380000000177384d75474339433030ffff06b4ae8bf1cd01da8512c72c922a61be |
sm2公钥导出
sm2公钥导出
一、请求响应示例
请求示例
//操作标识 |
请求数据:303731323334353637380000000177384d7547433943ffffffff454e4352595054494f4e |
响应成功示例
注意:此处省略了内容长度(当前请求的二进制数据长度)
响应数据:303731323334353637380000000177384d75474339433030ffff40286cde42554a51c033802e3b0bc7bd0bd621e37b4190a91dccffdce29c8e4af15748d1e6ec2101854896c3b9d7b37259d8a49223e4c937141528cd5d07fc89 |