中國(guó)工商銀行銀企互連系統(tǒng)開發(fā)手冊(cè)模板_第1頁(yè)
中國(guó)工商銀行銀企互連系統(tǒng)開發(fā)手冊(cè)模板_第2頁(yè)
中國(guó)工商銀行銀企互連系統(tǒng)開發(fā)手冊(cè)模板_第3頁(yè)
中國(guó)工商銀行銀企互連系統(tǒng)開發(fā)手冊(cè)模板_第4頁(yè)
中國(guó)工商銀行銀企互連系統(tǒng)開發(fā)手冊(cè)模板_第5頁(yè)
已閱讀5頁(yè),還剩11頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

概述銀企互聯(lián)面向大集團(tuán)用戶,提供和企業(yè)ERP系統(tǒng)直連平臺(tái),銀企互聯(lián)面向大集團(tuán)用戶,提供和企業(yè)ERP系統(tǒng)直連平臺(tái),為工行現(xiàn)金管理服務(wù)提供多渠道和用戶化支持。企業(yè)ERP系統(tǒng)經(jīng)過HTTPS協(xié)議和工行系統(tǒng)進(jìn)行連接并向銀企互聯(lián)前置發(fā)送數(shù)據(jù),數(shù)據(jù)接口格式使用標(biāo)準(zhǔn)xml數(shù)據(jù)格式,但雙方通訊過程中則需要遵守下文描述要求。銀企互聯(lián)前置接到企業(yè)數(shù)據(jù)后進(jìn)行一系列檢驗(yàn)后完成交易,并將處理結(jié)果以企業(yè)便于處理形式返回給企業(yè)。在安全確保方面,通訊層安全確保是HTTPS協(xié)議。企業(yè)如需使用銀企互聯(lián)絡(luò)統(tǒng),要辦理相關(guān)注冊(cè)手續(xù),并審領(lǐng)證書。企業(yè)進(jìn)行結(jié)算類交易時(shí),假如包含到授權(quán)過程,企業(yè)需要在企業(yè)網(wǎng)銀系統(tǒng)中完成相關(guān)授權(quán)動(dòng)作。銀企互連系統(tǒng)將企業(yè)提交支付指令或授權(quán)成功后指令看成最終轉(zhuǎn)賬指令,依據(jù)提交指令證書ID檢驗(yàn)收付方帳號(hào)等正當(dāng)性,以確保所提交指令在權(quán)限許可范圍內(nèi)進(jìn)行操作??傮w方案介紹總體網(wǎng)絡(luò)結(jié)構(gòu)圖上圖企業(yè)ERP系統(tǒng)1采取是非NC方法接入用戶;企業(yè)ERP系統(tǒng)2采取是NC方法接入用戶;企業(yè)端安全服務(wù)器介紹此服務(wù)器只對(duì)使用NC方法接入用戶有效。企業(yè)端安全服務(wù)器被稱為NetSafeClient。它有兩個(gè)能夠配置端口分別用于加密和署名/驗(yàn)簽服務(wù),以下圖所表示(假設(shè)1為加密端口,2為署名/驗(yàn)簽端口)。11(加密)NetSafeClient2(署名/驗(yàn)簽)1.http交易請(qǐng)求包https交易請(qǐng)求包1.署名/驗(yàn)簽請(qǐng)求包2.署名/驗(yàn)簽結(jié)果2.交易結(jié)果具體使用時(shí),企業(yè)應(yīng)用向工行提交交易請(qǐng)求時(shí),能夠依據(jù)http協(xié)議向NetSafeClient端口1發(fā)送請(qǐng)求。接到請(qǐng)求后,NetSafeClient使用企業(yè)證書將http請(qǐng)求包轉(zhuǎn)換成https請(qǐng)求包發(fā)往工行端服務(wù)器;假如需要對(duì)一些交易數(shù)據(jù)進(jìn)行署名,則企業(yè)應(yīng)用需要和署名端口建立Socket連接并將待署名數(shù)據(jù)發(fā)往端口2,然后接收端口2署名結(jié)果,以后再將包含署名信息交易請(qǐng)求發(fā)往端口1而完成整個(gè)交易請(qǐng)求過程。對(duì)署名還是驗(yàn)署名請(qǐng)求區(qū)分則是經(jīng)過http包頭來進(jìn)行。Content-Type:INFOSEC_SIGN/1.0和Content-Type:INFOSEC_VERIFY_SIGN/1.0分別用于標(biāo)識(shí)署名請(qǐng)求和驗(yàn)署名請(qǐng)求,而Content-Type:INFOSEC_SIGN_RESULT/1.0和Content-Type:INFOSEC_VERIFY_SIGN_RESULT/1.0分別用于標(biāo)識(shí)署名和驗(yàn)署名返回結(jié)果。為方便起見,能夠?qū)etSafeClient兩個(gè)服務(wù)端口邏輯地稱為兩臺(tái)服務(wù)器,NetSafeClient加密服務(wù)器和署名服務(wù)器。安全控制介紹對(duì)于NC方法接入用戶企業(yè)向工行提交交易數(shù)據(jù),必需經(jīng)過企業(yè)方NetSafeClient進(jìn)行和工行服務(wù)器連接,接口確定需要署名數(shù)據(jù)也必需由NetSafeClient署名服務(wù)器署名后組成要求數(shù)據(jù)包格式后,經(jīng)過NetSafeClient提交工行,這么能夠確保企業(yè)數(shù)據(jù)和相關(guān)信息不被惡意篡改。數(shù)據(jù)全部由NetSafeClient負(fù)責(zé)轉(zhuǎn)發(fā),使NetSafeClient成為架設(shè)在企業(yè)現(xiàn)場(chǎng)工行接入服務(wù)器。而企業(yè)和工行之間安全連接,由NetSafeClient和工行安全代理服務(wù)器NetSafe確保;工行接收到企業(yè)提交過來部分關(guān)鍵交易數(shù)據(jù)后,需要解密并驗(yàn)證企業(yè)數(shù)字署名,以預(yù)防第三方假冒企業(yè)行為。對(duì)于非NC方法接入用戶企業(yè)向工行提交交易數(shù)據(jù)時(shí)安全控制企業(yè)ERP和銀企互連系統(tǒng)之間使用HTTPS協(xié)議通訊。企業(yè)能夠選擇是否對(duì)交易數(shù)據(jù)進(jìn)行對(duì)稱加密,現(xiàn)在系統(tǒng)支持算法有DES和3DES。進(jìn)行對(duì)稱加密能夠預(yù)防第三方截獲交易信息。而加密中需要用到密鑰由企業(yè)和工行共同約定。(加密功效暫不支持)企業(yè)需要對(duì)其發(fā)送指令數(shù)據(jù)進(jìn)行數(shù)字署名,署名中使用證書能夠是企業(yè)證書也能夠是工行證書,其中署名使用算法是SHA1withRSA。進(jìn)行數(shù)字署名能夠預(yù)防第三方假冒企業(yè)行為。工行向企業(yè)發(fā)送結(jié)果信息時(shí)安全控制企業(yè)ERP和銀企互連系統(tǒng)之間使用HTTPS協(xié)議通訊。企業(yè)可選擇是否對(duì)返回?cái)?shù)據(jù)進(jìn)行對(duì)稱加密,方法和上文相同。工行對(duì)部分關(guān)鍵交易返回信息進(jìn)行數(shù)字署名。關(guān)鍵說明全部交易請(qǐng)求包中“包序列ID”字段(PackageID)由企業(yè)產(chǎn)生,產(chǎn)生規(guī)則為目前日期(北京時(shí)間,格式為yyyyMMdd)+7位序列號(hào)(比如,為12月23日發(fā)送一個(gè)交易請(qǐng)求包包序列ID)。在一個(gè)企業(yè)代碼下當(dāng)日包序列ID必需唯一。工行處理完成以后將該字段原值返回,即全部交易返回包中“包序列ID”字段(PackageID)。轉(zhuǎn)帳交易請(qǐng)求包中“署名時(shí)間”字段(SignTime),格式為yyyyMMddhhmmssSSS(比如8,表示12月23日9點(diǎn)27分10秒568毫秒)。署名時(shí)間應(yīng)為北京時(shí)間。署名時(shí)間假如和交易請(qǐng)求抵達(dá)工行服務(wù)器時(shí)北京標(biāo)按時(shí)間誤差過大(暫定為15分鐘),交易將無法進(jìn)行。此方法將能夠有效地預(yù)防黑客采取重放攻擊進(jìn)行干擾帳務(wù)活動(dòng)行為。同一筆交易假如因?yàn)榫W(wǎng)絡(luò)不正常等原因需要重新提交時(shí),要修改轉(zhuǎn)賬交易請(qǐng)求包“署名時(shí)間字段”并重新署名。全部請(qǐng)求包和返回包中備用字段使用關(guān)鍵是出于對(duì)以后擴(kuò)展考慮,假如以后需要增加企業(yè)上送項(xiàng)目或返回給企業(yè)信息,無須再改變交易包格式?,F(xiàn)在對(duì)企業(yè)請(qǐng)求包來說這些備用字段值能夠送空;企業(yè)對(duì)銀行返回包中備用字段也無須作處理。請(qǐng)求包中備用字段標(biāo)簽為“ReqReserved*”,返回包中備用字段標(biāo)簽為“RepReserved*”(其中*為1、2、3或4,詳見接口說明文檔)。查詢歷史明細(xì)返回?cái)?shù)據(jù)包中交易時(shí)間(<Trans_time></Trans_time>)數(shù)值如為空,則說明該筆指令是銀行計(jì)息交易明細(xì)。支付查詢指令接口,方便企業(yè)對(duì)可疑、有疑問(如網(wǎng)絡(luò)中止,交易長(zhǎng)時(shí)間沒有返回等)或處理完成轉(zhuǎn)帳指令進(jìn)行查詢。企業(yè)提交要查詢結(jié)算請(qǐng)求包序列ID,工行返回該筆轉(zhuǎn)帳指令基礎(chǔ)信息和狀態(tài)。本接口說明中全部包含金額字段全部是以分為單位(不帶小數(shù)點(diǎn))。如企業(yè)系統(tǒng)需要代理匯兌功效則企業(yè)應(yīng)用需同時(shí)開發(fā)網(wǎng)點(diǎn)信息下載交易,方便為代理匯兌交易中收方為它行情況時(shí)提供工行網(wǎng)點(diǎn)名稱。不然,無需開發(fā)網(wǎng)點(diǎn)信息下載交易。在網(wǎng)點(diǎn)信息下載功效中,因?yàn)橄螺d數(shù)據(jù)過大且數(shù)據(jù)不會(huì)常常更新,所以此交易控制了企業(yè)每日下載次數(shù)?,F(xiàn)在暫定次數(shù)為每日2次。個(gè)人聯(lián)名卡簽權(quán)指令只支持幣種是人民幣賬號(hào)/卡號(hào)。企業(yè)端傳輸數(shù)據(jù)時(shí),指定xml編碼方法為GB2312。銀企互聯(lián)提交包中包含“<SignTime>署名時(shí)間(yyyyMMddhhmmssSSS)</SignTime>”此標(biāo)簽,說明該交易需要進(jìn)行署名處理。企業(yè)端程序需要對(duì)銀行返回?cái)?shù)據(jù)有可擴(kuò)展性,方便適應(yīng)以后業(yè)務(wù)不停發(fā)展。銀企互連系統(tǒng)支持兩種接入方法,用戶能夠任何選擇一個(gè)。第一個(gè):使用第三方NC軟件方法接入銀企互連系統(tǒng);第二種:使用非NC方法企業(yè)直接接入銀企互連系統(tǒng);下面將區(qū)分兩類用戶分別對(duì)接入方法等相關(guān)信息進(jìn)行說明。銀企互聯(lián)——NC方法接入用戶企業(yè)端系統(tǒng)環(huán)境要求軟件環(huán)境對(duì)企業(yè)ERP系統(tǒng)無要求;工行企業(yè)端證書服務(wù)器軟件NetSafeClient需安裝在一臺(tái)PC機(jī)上。網(wǎng)絡(luò)環(huán)境企業(yè)財(cái)務(wù)系統(tǒng)經(jīng)過局域網(wǎng)和工商銀行提供NetSafeClient連接;企業(yè)端NetSafeClient能夠經(jīng)過專線或INTERNET和中國(guó)工商銀行銀企互連系統(tǒng)互聯(lián)。企業(yè)開發(fā)過程描述企業(yè)提交交易請(qǐng)求數(shù)據(jù)過程企業(yè)提交交易分為兩大類:查詢類和結(jié)算類(需要進(jìn)行署名處理)。查詢類:企業(yè)根據(jù)工行提供xml包格式進(jìn)行打包,在局域網(wǎng)內(nèi)經(jīng)過http協(xié)議以POST方法將交易包發(fā)送到NetSafeClient安全http協(xié)議服務(wù)器。http請(qǐng)求格式:action=”http://用戶端NetSafeClient地址和加密端口號(hào)/servlet/ICBCCMPAPIReqServlet?userID=證書ID&PackageID=包序列ID&SendTime=請(qǐng)求時(shí)間”請(qǐng)求數(shù)據(jù)格式(post方法):Version=版本號(hào)(區(qū)分版本時(shí)間,暫定)&TransCode=交易代碼(區(qū)分交易類型,每個(gè)交易固定)&BankCode=用戶歸屬單位&GroupCIS=用戶歸屬編碼&ID=用戶證書ID(無證書用戶可空)&PackageID=用戶指令包序列號(hào)(由用戶ERP系統(tǒng)產(chǎn)生,不可反復(fù))&Cert=用戶證書公鑰信息(進(jìn)行BASE64編碼;NC用戶送空)&reqData=用戶xml請(qǐng)求數(shù)據(jù)其中:包序列ID、證書ID應(yīng)依據(jù)實(shí)際情況進(jìn)行更改,請(qǐng)求時(shí)間為企業(yè)發(fā)出該交易請(qǐng)求包目前系統(tǒng)時(shí)間。post方法最終不許可有回車等其它亂字符,TransCode交易名稱應(yīng)和xml包內(nèi)標(biāo)簽<TransCode></TransCode>中值一致,action中證書ID、PackageID和請(qǐng)求數(shù)據(jù)格式中證書ID、PackageID、xml包中證書ID、PackageID值三者相一致。NetSafeClient將xml包加密后根據(jù)https協(xié)議,經(jīng)過互聯(lián)網(wǎng)/專線發(fā)送到銀行端NetSafeServer。(本步由NetSafeClient完成,企業(yè)無需處理);NetSafeServer將交易請(qǐng)求送銀企互連系統(tǒng)進(jìn)行處理。企業(yè)企業(yè)NetSafeClientNetSafeServer(1)(2)工行(3)結(jié)算類:企業(yè)根據(jù)工行提供xml包格式進(jìn)行打包,在局域網(wǎng)內(nèi)和NetSafeClient署名端口建立Socket連接,經(jīng)過此連接向署名端口發(fā)送http數(shù)據(jù)包。http包頭中需包含“Content-Length”和“Content-Type”兩個(gè)屬性。其中“Content-Length:”后面是需要署名二進(jìn)制數(shù)據(jù)包長(zhǎng)度,“Content-Type:”后面是需要署名標(biāo)識(shí),為INFOSEC_SIGN/1.0。(注意大小寫)http請(qǐng)求格式:action=”http://用戶端NetSafeClient地址和署名端口號(hào)”請(qǐng)求數(shù)據(jù)格式:結(jié)算類請(qǐng)求提交xml包NetSafeClient對(duì)xml包進(jìn)行署名后,經(jīng)過http協(xié)議將署名結(jié)果返回給企業(yè)系統(tǒng)。如署名成功<sign>標(biāo)簽和</sign>標(biāo)簽之間部分為署名結(jié)果。NetSafeClient返回署名包以下:<html><head><title>署名結(jié)果</title><result>0</result></head><body><sign>MIIIXAYJKovcNAQcCo………….0BlLdSgw=</sign></body></html>企業(yè)根據(jù)工行提供xml包格式進(jìn)行打包,在局域網(wǎng)內(nèi)經(jīng)過http協(xié)議以POST方法將交易包發(fā)送到NetSafeClient安全http協(xié)議服務(wù)器。http請(qǐng)求格式:action=”http://用戶端NetSafeClient地址和加密端口號(hào)/servlet/ICBCCMPAPIReqServlet?userID=證書ID&PackageID=包序列ID&SendTime=請(qǐng)求時(shí)間”請(qǐng)求數(shù)據(jù)格式(post方法):Version=版本號(hào)(區(qū)分版本時(shí)間,暫定)&TransCode=交易代碼(區(qū)分交易類型,每個(gè)交易固定)&BankCode=用戶歸屬單位&GroupCIS=用戶歸屬編碼&ID=用戶證書ID(無證書用戶可空)&PackageID=用戶指令包序列號(hào)(由用戶ERP系統(tǒng)產(chǎn)生,不可反復(fù))&Cert=用戶證書公鑰信息(進(jìn)行BASE64編碼;NC用戶送空)&reqData=用戶xml請(qǐng)求數(shù)據(jù)其中:包序列ID、證書ID應(yīng)依據(jù)實(shí)際情況進(jìn)行更改,請(qǐng)求時(shí)間為企業(yè)發(fā)出該交易請(qǐng)求包目前系統(tǒng)時(shí)間。post方法最終不許可有回車等其它亂字符,TransCode交易名稱應(yīng)和xml包內(nèi)標(biāo)簽<TransCode></TransCode>中值一致,action中證書ID、PackageID和請(qǐng)求數(shù)據(jù)格式中證書ID、PackageID、xml包中證書ID、PackageID值三者相一致。NetSafeClient將企業(yè)送來署名包加密后根據(jù)https協(xié)議,經(jīng)過互聯(lián)網(wǎng)/專線發(fā)送到工行端NetSafeServer,再發(fā)往工行網(wǎng)銀進(jìn)行處理。(本步由NetSafeClient完成,企業(yè)無需處理)。企業(yè)企業(yè)NetSafeClientNetSafeServer(1)(2)(3)(4)企業(yè)接收交易響應(yīng)數(shù)據(jù)過程企業(yè)接收到數(shù)據(jù)包格式:reqData=交易返回包或errorCode=錯(cuò)誤代碼步驟:判定返回?cái)?shù)據(jù)中是否是errorCode:(1)假如是:依據(jù)錯(cuò)誤代碼做對(duì)應(yīng)處理,結(jié)束。錯(cuò)誤代碼含義參見接口說明文檔中附錄。(2)假如否:企業(yè)接收到數(shù)據(jù)包格式:reqData=交易結(jié)果包;企業(yè)依據(jù)優(yōu)異行BASE64解碼,署名返回包根據(jù)格式拆分出明文和密文,驗(yàn)簽正確后對(duì)明文按工行提供xml包格式進(jìn)行解包。對(duì)于單筆提交類指令(即存在文件級(jí)返回包指令),返回xml包格式根據(jù)指令級(jí)返回包格式來處理,多筆則根據(jù)文件級(jí)返回包格式來處理。企業(yè)接收銀行主動(dòng)返回過程http請(qǐng)求格式:action=”http://用戶ERP服務(wù)器地址和端口號(hào)”請(qǐng)求數(shù)據(jù)格式(post方法):Version=版本號(hào)(區(qū)分版本時(shí)間,暫定)&TransCode=交易代碼(區(qū)分交易類型,每個(gè)交易固定)&BankCode=用戶歸屬單位&GroupCIS=用戶歸屬編碼&ID=用戶證書ID(無證書用戶可空)&PackageID=用戶指令包序列號(hào)(由用戶ERP系統(tǒng)產(chǎn)生,不可反復(fù))&Cert=用戶證書公鑰信息(進(jìn)行BASE64編碼;NC用戶送空)&reqData=用戶xml請(qǐng)求數(shù)據(jù)reqData數(shù)據(jù)格式:假如需要署名,格式為:數(shù)字字符串:長(zhǎng)度10位,代表明文數(shù)據(jù)長(zhǎng)度,不足10位左補(bǔ)0;明文:xml明文,長(zhǎng)度可變,需要上面數(shù)據(jù)指明,雙字節(jié)字符(漢字)算作1位長(zhǎng)度;分隔符:ICBCCMP;密文:明文經(jīng)過署名后數(shù)據(jù)并做BASE64編碼;假如不需要署名,則直接送xml明文;以上數(shù)據(jù)經(jīng)過拼接后,再進(jìn)行BASE64編碼(僅reqData項(xiàng))、URLEncode編碼(全部參數(shù)項(xiàng))得到最終reqData數(shù)據(jù)。根據(jù)以上格式將請(qǐng)求數(shù)據(jù)發(fā)送到企業(yè);銀企互聯(lián)——非NC方法接入用戶企業(yè)端系統(tǒng)環(huán)境要求軟件環(huán)境對(duì)企業(yè)ERP系統(tǒng)無要求;網(wǎng)絡(luò)環(huán)境企業(yè)財(cái)務(wù)系統(tǒng)能夠經(jīng)過專線和中國(guó)工商銀行銀企互連系統(tǒng)互聯(lián)。企業(yè)開發(fā)過程描述企業(yè)提交交易請(qǐng)求數(shù)據(jù)過程企業(yè)根據(jù)工行提供xml包格式進(jìn)行打包,在局域網(wǎng)內(nèi)經(jīng)過http協(xié)議以POST方法將交易包發(fā)送到NetSafeClient安全http協(xié)議服務(wù)器。http請(qǐng)求格式:action=”http://用戶端NetSafeClient地址和加密端口號(hào)/servlet/ICBCCMPAPIReqServlet?userID=證書ID&PackageID=包序列ID&SendTime=請(qǐng)求時(shí)間”請(qǐng)求數(shù)據(jù)格式(post方法):Version=版本號(hào)(區(qū)分版本時(shí)間,暫定)&TransCode=交易代碼(區(qū)分交易類型,每個(gè)交易固定)&BankCode=用戶歸屬單位&GroupCIS=用戶歸屬編碼&ID=用戶證書ID(無證書用戶可空)&PackageID=用戶指令包序列號(hào)(由用戶ERP系統(tǒng)產(chǎn)生,不可反復(fù))&Cert=用戶證書公鑰信息(進(jìn)行BASE64編碼;NC用戶送空)&reqData=用戶xml請(qǐng)求數(shù)據(jù)其中:包序列ID、證書ID應(yīng)依據(jù)實(shí)際情況進(jìn)行更改,請(qǐng)求時(shí)間為企業(yè)發(fā)出該交易請(qǐng)求包目前系統(tǒng)時(shí)間。post方法最終不許可有回車等其它亂字符,TransCode交易名稱應(yīng)和xml包內(nèi)標(biāo)簽<TransCode></TransCode>中值一致,action中證書ID、PackageID和請(qǐng)求數(shù)據(jù)格式中證書ID、PackageID、xml包中證書ID、PackageID值三者相一致。reqData數(shù)據(jù)格式:假如需要署名:數(shù)字字符串:長(zhǎng)度10位,代表明文數(shù)據(jù)長(zhǎng)度,不足10位左補(bǔ)0;明文:xml明文,長(zhǎng)度可變,需要上面數(shù)據(jù)指明,雙字節(jié)字符(漢字)算作1位長(zhǎng)度;分隔符:ICBCCMP;密文:明文經(jīng)過署名后數(shù)據(jù)并做BASE64編碼;假如不需要署名,則直接送xml明文;以上數(shù)據(jù)經(jīng)過拼接后,再進(jìn)行BASE64編碼得到最終reqData數(shù)據(jù)。根據(jù)以上格式將請(qǐng)求數(shù)據(jù)發(fā)送到工行;企業(yè)接收交易響應(yīng)數(shù)據(jù)過程企業(yè)接收到數(shù)據(jù)包格式:reqData=交易返回包或errorCode=錯(cuò)誤代碼reqData=交易返回包結(jié)構(gòu): 假如交易返回包進(jìn)行了署名,則結(jié)構(gòu)為:數(shù)字字符串:長(zhǎng)度10位,代表明文數(shù)據(jù)長(zhǎng)度,不足10位左補(bǔ)0;明文:長(zhǎng)度可變,需要上面數(shù)據(jù)指明,雙字節(jié)字符(漢字)算作1位長(zhǎng)度;分隔符:ICBCCMP;密文:明文經(jīng)過署名后數(shù)據(jù); 假如交易返回包沒有署名,則結(jié)構(gòu)為:明文; 不管是否署名,交易返回包均進(jìn)行了BASE64編碼;步驟:判定返回?cái)?shù)據(jù)中是否是“errorCode=”打頭:(1)假如是:依據(jù)錯(cuò)誤代碼做對(duì)應(yīng)處理,結(jié)束。錯(cuò)誤代碼含義參見接口說明文檔中附錄。(2)假如否:企業(yè)接收到數(shù)據(jù)包格式:reqData=交易結(jié)果包企業(yè)依據(jù)優(yōu)異行BASE64解碼,署名返回包根據(jù)格式拆分出明文和密文,驗(yàn)簽正確后對(duì)明文按工行提供xml包格式進(jìn)行解包。對(duì)于單筆提交類指令(即存在文件級(jí)返回包指令),返回xml包格式根據(jù)指令級(jí)返回包格式來處理,多筆則根據(jù)文件級(jí)返回包格式來處理。企業(yè)接收銀行主動(dòng)返回過程http請(qǐng)求格式:action=”http://用戶ERP服務(wù)器地址和端口號(hào)”請(qǐng)求數(shù)據(jù)格式(post方法):Version=版本號(hào)(區(qū)分版本時(shí)間,暫定)&TransCode=交易代碼(區(qū)分交易類型,每個(gè)交易固定)&BankCode=用戶歸屬單位&GroupCIS=用戶歸屬編碼&ID=用戶證書ID(無證書用戶可空)&PackageID=用戶指令包序列號(hào)(由用戶ERP系統(tǒng)產(chǎn)生,不可反復(fù))&Cert=用戶證書公鑰信息(進(jìn)行BASE64編碼;NC用戶送空)&reqData=用戶xml請(qǐng)求數(shù)據(jù)reqData數(shù)據(jù)格式:假如需要署名,格式為:數(shù)字字符串:長(zhǎng)度10位,代表明文數(shù)據(jù)長(zhǎng)度,不足10位左補(bǔ)0;明文:xml明文,長(zhǎng)度可變,需要上面數(shù)據(jù)指明,雙字節(jié)字符(漢字)算作1位長(zhǎng)度;分隔符:ICBCCMP;密文:明文經(jīng)過署名后數(shù)據(jù)并做BASE64編碼;假如不需要署名,則直接送xml明文;以上數(shù)據(jù)經(jīng)過拼接后,再進(jìn)行BASE64編碼(僅reqData項(xiàng))、URLEncode編碼(全部參數(shù)項(xiàng))得到最終reqData數(shù)據(jù)。 根據(jù)以上格式將請(qǐng)求數(shù)據(jù)發(fā)送到企業(yè);企業(yè)署名驗(yàn)簽過程在銀企互聯(lián)中,對(duì)于指令體署名和驗(yàn)簽工作由純java版工行署名驗(yàn)簽接口完成。本文檔對(duì)在專業(yè)版銀企互聯(lián)中使用接口作出描述。同時(shí)提供了一套純java版從企業(yè)發(fā)送指令到工行系統(tǒng)和從工行系統(tǒng)接收處理結(jié)果例子程序。從企業(yè)發(fā)送指令到工行系統(tǒng)例子中包含了兩方面內(nèi)容:用企業(yè)數(shù)據(jù)層私鑰對(duì)數(shù)據(jù)進(jìn)行署名,然后用工行通訊層公鑰進(jìn)行通訊認(rèn)證;從工行系統(tǒng)接收處理結(jié)果例子中包含了兩方面內(nèi)容:用企業(yè)通訊層私鑰要求通訊認(rèn)證,然后用工行數(shù)據(jù)層公鑰進(jìn)行數(shù)據(jù)驗(yàn)簽。企業(yè)署名驗(yàn)簽方法總體介紹接口包含icbc.jar、InfosecCrypto_Java1_02_JDK14.jar、org.mortbay.jetty.jar、tools.jar四個(gè)文件,使用時(shí)需要把這四個(gè)文件放置到j(luò)avaclasspath目錄中。該接口提議JDK版本為1.4.2。(不要使用JDK1.5版本或比1.4更低版本)接口使用具體說明Sign (對(duì)原始數(shù)據(jù)進(jìn)行數(shù)字署名函數(shù))publicstaticbyte[]sign(byte[]

src,intlen,byte[]

privateKey,char[]

keyPass)Description用rsa算法對(duì)一段消息署名Parameters:privateKey-為口令保護(hù)私鑰src-為待署名消息len-為待署名消息長(zhǎng)度keyPass-為私鑰保護(hù)口令Returns:假如成功返回署名結(jié)果,假如失敗返回nullThrows:NoSuchProviderException-NoSuchAlgorithmException-InvalidKeyException-SignatureException-verifySign (對(duì)數(shù)字署名進(jìn)行驗(yàn)簽函數(shù))publicstaticintverifySign(byte[]

src,intlen,byte[]

cert,byte[]

sign)Description用rsa算法對(duì)一段署名進(jìn)行驗(yàn)證Parameters:cert-為證書src-為被署名消息len-為被署名消息長(zhǎng)度sign-為署名結(jié)果Returns:假如成功返回0,假如其它則失敗Throws:SignatureException-NoSuchAlgorithmException-InvalidKeyException-附件說明ceshizhang.cer,ceshizhang.key是一套用戶證書公鑰和私鑰,保護(hù)口令是12345678。Test.java是一個(gè)演示各個(gè)接口使用方法測(cè)試程序。APIforZHEJIANG.rar指導(dǎo)企業(yè)開發(fā)例

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論