業(yè)務(wù)文檔
- 實(shí)名認(rèn)證服務(wù)
- 數(shù)字證書服務(wù)
-
時間戳服務(wù)
- · 概述
- · 前提條件
- · 通用約束
- · 安全性設(shè)計(jì)
- · 服務(wù)接口定義
- 存證服務(wù)
-
風(fēng)險(xiǎn)識別服務(wù)
- · 服務(wù)介紹
- · 業(yè)務(wù)流程
- · 服務(wù)優(yōu)勢
- · 應(yīng)用場景
業(yè)務(wù)文檔
5.1 RFC3161標(biāo)準(zhǔn)協(xié)議接口定義
名稱 | 內(nèi)容 |
接口說明 | RFC3161協(xié)議簽發(fā)時間戳 |
請求地址 | 生產(chǎn)環(huán)境: https://open.itruscloud.com/apigate/timestampapi?serviceCode=TSA0005 測試環(huán)境: https://demo-open.itruscloud.com/apigate/timestampapi?serviceCode=TSA0005 |
賬號 | 應(yīng)用appid |
密碼 | JSON |
輸出示例 | 1. 成功返回 會在指定的路徑下生產(chǎn)pdf文件 2. 失敗返回 2.1 app沒有添加服務(wù)或者購買數(shù)量不足 java.io.IOException: Server returned HTTP response code: 401 for URL: https://demo-open.itruscloud.com/apigate/timestampapi?serviceCode=TSA0005 如果還是不能確定問題在哪,需要看apigate網(wǎng)關(guān)的日志排查,因?yàn)檫@個401是網(wǎng)關(guān)返回的。 |
5.2 簽戳服務(wù)接口定義
基本信息:
名稱 | 內(nèi)容 |
接口說明 | 簽發(fā)時間戳 |
請求地址 | 生產(chǎn)環(huán)境: https://open.itruscloud.com/apigate/timestampapi 測試環(huán)境: https://demo-open.itruscloud.com/apigate/timestampapi |
請求方法 | POST |
應(yīng)答格式 | JSON |
HEAD參數(shù) | Content-Signature:“HMAC-SHA1 ”加hmac簽名值,采用HmacSHA1算法 |
請求參數(shù):
名稱 | 類型 | 約束 | 描述 |
plainHash | String | 必選 | 原文hash的hex編碼 |
hashAlg | String | 必選 | 原文Hash算法??蛇x值為“SHA1”或者“SM3” |
返回值:
名稱 | 類型 | 描述 |
status | String | status的值為1表示簽戳成功, 其他表示簽戳失敗 |
message | String | 對應(yīng)狀態(tài)信息說明 或 失敗原因 |
serialNumber | String | 流水號 |
b64TimeStamp | String | base64編碼后的時間戳數(shù)據(jù)。如果簽戳失敗,返回為“”。 |
signTime | Date | 時間戳簽發(fā)時間,格式為"yyyy-MM-dd HH:mm:ss"。如果簽戳失敗,返回為“”。 |
輸出示例 | 1. 成功返回 { "serialNumber":"TSA202007131445390545087", "b64TimeStamp":"時間戳base64字符串", "signTime":"2020-07-13 14:45:39", "message":"success.", "status":"1" } 2. 失敗返回 2.1原文字符串plainHash錯誤 { "serialNumber":"TSA202007131632418306001", "b64TimeStamp":"", "signTime":"", "message":"generated timestamp failed. errCode : 65547, errMsg : 1000B.", "status":"251658246" } 注: 目前這個錯在錯誤碼中沒有 2.2原文hash算法hashAlg錯誤 {"data":"101003","message":"原文的hash算法不支持","status":200} |
5.3 驗(yàn)戳接口定義
名稱 | 內(nèi)容 |
接口說明 | 驗(yàn)證時間戳 |
請求地址 | 生產(chǎn)環(huán)境: https://open.itruscloud.com/apigate/timestampapi 測試環(huán)境: https://demo-open.itruscloud.com/apigate/timestampapi |
請求方法 | POST |
應(yīng)答格式 | JSON |
HEAD參數(shù) | Content-Signature:“HMAC-SHA1 ”加hmac簽名值,采用HmacSHA1算法 |
請求參數(shù):
名稱 | 類型 | 約束 | 描述 |
plainHash | String | 必選 | 原文hash的hex編碼 |
hashAlg | String | 必選 | 原文Hash算法??蛇x值為“SHA1”或者“SM3” |
b64TimeStamp | String | 必選 | base64編碼后的時間戳數(shù)據(jù) |
返回值:
名稱 | 類型 | 描述 |
status | Long | 1表示調(diào)用成功,其他表示調(diào)用失敗 |
message | String | 對應(yīng)狀態(tài)信息說明 或 失敗原因 |
verifyResult | Boolean | 驗(yàn)證結(jié)果,true表示時間戳驗(yàn)證通過,false表示時間戳驗(yàn)證未通過 |
verifyResultStr | String | 驗(yàn)證結(jié)果信息 |
serialNumber | String | 流水號 |
signAlg | String | 采用的簽名算法,SHA1withRSA或SM3withSM2。如果驗(yàn)證失敗,返回為“”。 |
signTime | Date | 時間戳簽發(fā)時間,格式為"yyyy-MM-dd HH:mm:ss"。如果驗(yàn)證失敗,返回為“”。 |
輸出示例 | 3. 成功返回 { "orderNumber":"TSA202007131650128508820", "signTime":"2020-07-06 14:05:12", "verifyResultStr":"verify success", "signAlg":"SHA1withRSA", "verifyResult":true, "message":"success", "status":"1" } 4. 失敗返回 2.1原文字符串plainHash錯誤 { "orderNumber":"TSA202007131811018147744", "signTime":"", "verifyResultStr":"", "signAlg":"", "verifyResult":false, "message":"success. errCode : 65547, errMsg : 1000B.", "status":"251658244" } 注: 目前這個錯在錯誤碼中沒有
2.2 原文hash算法hashAlg錯誤 { "orderNumber":"TSA202007131808545736474", "signTime":"", "verifyResultStr":"wrong plain hash or hash alg.", "signAlg":"", "verifyResult":false, "message":"success", "status":"1" }
2.3待驗(yàn)證的時間戳b64TimeStamp錯誤 {"message":"接口調(diào)用異常","status":100008}
2.4 驗(yàn)戳?xí)r使用的serviceCode與簽戳?xí)r使用的serviceCode的證書算法不一致 比如,簽戳?xí)r用TSA0001(這個產(chǎn)品使用的是rsa證書),驗(yàn)戳?xí)r使用TSA0004(這個產(chǎn)品使用的是SM2證書)或者其他編碼,兩者使用的證書算法不一致。 { "orderNumber":"TSA202007141855201804606", "signTime":"", "verifyResultStr":"no found match cert.", "signAlg":"", "verifyResult":false, "message":"success", "status":"1" } |












