# 发放时间戳
进行时间戳的发放
# 一、请求说明
- 请求地址:http://api.spiderid.cn/openapi/tss/v1/tsa/issue,https://api.spiderid.cn/openapi/tss/v1/tsa/issue
- 服务接口名称(即公共参数method的值): tsa/issue
- 请求方式:POST
TIP
当使用SDK时,请求地址:https://api.spiderid.cn
# 二、请求参数
名称 | 类型 | 是否必须 | 描述 |
---|---|---|---|
signType | CertSearchEnum | 否 | 签名方式 (管理系统配置默认时间戳证书可不传,不传使用默认设置的时间戳证书) |
signItemValue | String | 否 | 签名方式的值 (系统配置默认时间戳证书可不传,不传使用默认设置的时间戳证书) |
data | String | 是 | 原文数据 |
dataType | DataType | 是 | 原文数据类型 |
algo | DegistEnum | 是 | 时间戳摘要算法 |
includeCert | Boolean | 否 | 时间戳中是否包含证书,true:包含,false:不包含 |
字段解释
DegistEnum 时间戳摘要算法介绍
字段 | 类型介绍 |
---|---|
SHA1 | SHA1算法 |
SM3 | SM3算法 |
SHA256 | SHA256算法 |
- DataType 数据类型介绍
字段 | 类型介绍 |
---|---|
BASE64 | 原文BASE64 |
HEX | 原文Hex |
ORIGINAL | 原文 |
DIGEST_BASE64 | 摘要base64 |
DIGEST_HEX | 摘要16进制HEX |
- CertSearchEnum 签名方式
类型字段 | 介绍 |
---|---|
CERT | 证书 |
CERT_ID | 证书ID |
SN_HEX | 证书序列号(十六进制格式) |
SN_DEC | 证书序列号(十进制格式) |
TN_HASH | 证书证书指纹 |
CERT_CN | 证书持有者 |
CERT_DN | 证书主题项 |
# 三、响应参数
data 结果信息 | 类型 | 描述 |
---|---|---|
tsa | String | 时间戳response Base64 |
signerSn | String | 序列 |
signerDn | String | 签发证书主题项 |
genTime | Date | 时间戳生成时间 |
# 四、成功示例
JSON示例
{
"code": 0,
"data": {
"tsa": "string",
"signerSn": "string",
"genTime": "Date",
"signerDn": "String",
},
"message": "success",
"requestId": "xxx"
}
# 五、失败示例
JSON示例
{
"code":10100,
"message":"参数错误",
"requestId":"62398a2e20c40f25eb02faac"
}
# 六、SDK请求示例
// 提供的URL
String url = "https://api.spiderid.cn";
// 您的appKey
String appKey = "XXX";
// 您的appSecret
String appSecret = "XXX";
// 1.原客户端
PkiClient client = new PkiOkhttpClient(url, appKey, appSecret);
TssGenerateRequest request = new TssGenerateRequest();
//数据类型
request.setDataType(DataType.ORIGINAL);
//数据
request.setData("123");
//时间戳摘要算法
request.setAlgo(DegistEnum.sm3);
//时间戳中是否包含证书,true:包含,false:不包含
request.setIncludeCert(Boolean.TRUE);
try {
TssGenerateResponse response = client.execute(request);
// 后续业务
if (response.isSuccess()) {
System.out.println("成功响应:" + response.getBody());
} else {
System.out.println("失败响应:" + response.getBody());
}
} catch (ApiException e) {
e.printStackTrace();
}