本發(fā)明涉及pos支付應(yīng)用,尤其涉及一種基于pos收單商戶的驗(yàn)證方法及系統(tǒng)。
背景技術(shù):
1、目前,現(xiàn)有的軟件的合法使用通常是基于pos機(jī)的機(jī)器碼或者硬盤序列號(hào)是否合規(guī)來判斷的,這種方式在銀行支付應(yīng)用場景中存在較大局限性,不適用于基于pos刷卡金融設(shè)備的商戶環(huán)境。隨著商戶終端數(shù)量的增加,上述這種傳統(tǒng)的方式難以管理和維護(hù),且不能保障軟件開發(fā)商的利益,因此,亟需一種新的解決方案來解決上述問題。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明的目的在于提供一種基于pos收單商戶的驗(yàn)證方法及系統(tǒng),從而解決現(xiàn)有技術(shù)中存在的前述問題。
2、為了實(shí)現(xiàn)上述目的,本發(fā)明采用的技術(shù)方案如下:
3、一種基于pos收單商戶的驗(yàn)證方法,包括如下步驟,
4、s1、創(chuàng)建請(qǐng)求:基于用戶輸入的商戶信息,發(fā)起證書創(chuàng)建的https請(qǐng)求;
5、s2、證書創(chuàng)建:基于證書創(chuàng)建的https請(qǐng)求,錨定隨機(jī)種子獲取隨機(jī)數(shù),利用隨機(jī)數(shù)對(duì)商戶信息中的商戶號(hào)和/或終端號(hào)組合后的字符串進(jìn)行des加密,獲取數(shù)據(jù)一,將隨機(jī)數(shù)進(jìn)行非對(duì)稱加密,獲取數(shù)據(jù)二,將數(shù)據(jù)一和數(shù)據(jù)二按照json格式組合后,生成證書文件;
6、s3、證書驗(yàn)證:pos軟件在調(diào)用pos機(jī)時(shí),獲取相應(yīng)pos機(jī)中存儲(chǔ)的商戶號(hào)和/或終端號(hào),獲取證書文件并對(duì)其依次進(jìn)行非對(duì)稱解密和des解密,獲取證書文件中的商戶號(hào)和/或終端號(hào);將pos機(jī)中的商戶號(hào)和/或終端號(hào)與證書文件中的商戶號(hào)和/或終端號(hào)進(jìn)行匹配校驗(yàn),以防止軟件被非法盜用或非授權(quán)使用。
7、優(yōu)選的,步驟s2中,在數(shù)據(jù)一和數(shù)據(jù)二組合之后,需要判斷組合后的數(shù)據(jù)文件是否大于預(yù)設(shè)閾值,若是,則使用轉(zhuǎn)碼壓縮算法進(jìn)行數(shù)據(jù)壓縮,并添加壓縮標(biāo)記組成新的josn數(shù)據(jù),生成證書文件;否則,直接生成證書文件。
8、優(yōu)選的,步驟s3中,在對(duì)證書文件進(jìn)行解密之前,需要判斷證書文件是否具備壓縮標(biāo)記,若是,則需要首先對(duì)其進(jìn)行轉(zhuǎn)碼解壓縮操作,獲取解壓內(nèi)容,再對(duì)其進(jìn)行解密。
9、優(yōu)選的,所述轉(zhuǎn)碼壓縮算法為bcd轉(zhuǎn)碼壓縮算法。
10、優(yōu)選的,在生成證書時(shí),設(shè)置有效期,商戶在使用的有效期內(nèi)能夠正常生成證書文件,超過有效期則需要聯(lián)系pos軟件商重新生成證書文件。
11、優(yōu)選的,生成的證書文件存儲(chǔ)在本地服務(wù)器中,用戶后續(xù)能夠在本地服務(wù)器的商戶證書列表中查看所有生成的證書文件,并根據(jù)商戶號(hào)和/或終端號(hào)查詢指定的證書文件,下載保存到本地使用。
12、本發(fā)明的目的還在于提供一種基于pos收單商戶的驗(yàn)證系統(tǒng),所述系統(tǒng)用于實(shí)現(xiàn)上述任一所述的方法,系統(tǒng)包括,
13、視圖模塊:用于提供登錄界面、證書文件瀏覽界面、證書文件創(chuàng)建界面和證書文件編輯界面;
14、服務(wù)模塊:用于創(chuàng)建、檢索、存儲(chǔ)、修改證書文件;
15、數(shù)據(jù)庫:用于存儲(chǔ)各種證書文件。
16、優(yōu)選的,pos軟件商在開發(fā)pos軟件的過程中,需要加載系統(tǒng)提供的證書校驗(yàn)的軟件接口;在商戶交易授權(quán)的過程中,調(diào)用此軟件接口,檢索當(dāng)前目錄下的證書文件,如果存在與該商戶匹配的證書文件,則讀取該證書文件,對(duì)其進(jìn)行解密,校驗(yàn)數(shù)據(jù)的完整性,數(shù)據(jù)校驗(yàn)通過后對(duì)數(shù)據(jù)進(jìn)行有序分解,軟件接口自動(dòng)校驗(yàn)關(guān)鍵信息以判斷交易的合法性,或者軟件接口以json格式返回明文數(shù)據(jù)信息,讓商戶自行校驗(yàn)其他有關(guān)數(shù)據(jù);校驗(yàn)通過后繼續(xù)后續(xù)的pos操作,否則,直接報(bào)錯(cuò)。
17、本發(fā)明的有益效果是:1、通過引入基于pos商戶號(hào)終端號(hào)的授權(quán)生成和驗(yàn)證機(jī)制,提高了系統(tǒng)的管理效率和安全性,確保商戶授權(quán)的唯一性和合法性。2、提供證書校驗(yàn)的軟件接口,軟件接口適配wi?ndwos、andoi?rd、l?i?nux等各種常用平臺(tái),其能夠自動(dòng)校驗(yàn)關(guān)鍵信息以判斷交易的合法性,也可以以json格式返回明文數(shù)據(jù)信息,讓商戶自行校驗(yàn)其他有關(guān)數(shù)據(jù),提升了系統(tǒng)的兼容性和可擴(kuò)展性。3、靈活的使用環(huán)境,大部分的wi?ndwos、andoird、l?i?nux等環(huán)境都能使用,且使用簡單高效。4、pos軟件開發(fā)商戶不用再去考慮被盜用,挪用等風(fēng)險(xiǎn),可以專注于實(shí)現(xiàn)銀行的支付接口,簡化開發(fā)流程,提升開發(fā)效率。5、如果軟件接口中有多種需要加密和檢驗(yàn)的數(shù)據(jù),可以將其整合成一個(gè)文件,簡化pos機(jī)軟件的后續(xù)開發(fā)和部署。6、方便設(shè)置有效期的功能,讓軟件商可以更有效控制掌握軟件的使用情況。
1.一種基于pos收單商戶的驗(yàn)證方法,其特征在于:包括如下步驟,
2.根據(jù)權(quán)利要求1所述的基于pos收單商戶的驗(yàn)證方法,其特征在于:步驟s2中,在數(shù)據(jù)一和數(shù)據(jù)二組合之后,需要判斷組合后的數(shù)據(jù)文件是否大于預(yù)設(shè)閾值,若是,則使用轉(zhuǎn)碼壓縮算法進(jìn)行數(shù)據(jù)壓縮,并添加壓縮標(biāo)記組成新的josn數(shù)據(jù),生成證書文件;否則,直接生成證書文件。
3.根據(jù)權(quán)利要求2所述的基于pos收單商戶的驗(yàn)證方法,其特征在于:步驟s3中,在對(duì)證書文件進(jìn)行解密之前,需要判斷證書文件是否具備壓縮標(biāo)記,若是,則需要首先對(duì)其進(jìn)行轉(zhuǎn)碼解壓縮操作,獲取解壓內(nèi)容,再對(duì)其進(jìn)行解密。
4.根據(jù)權(quán)利要求2所述的基于pos收單商戶的驗(yàn)證方法,其特征在于:所述轉(zhuǎn)碼壓縮算法為bcd轉(zhuǎn)碼壓縮算法。
5.根據(jù)權(quán)利要求1所述的基于pos收單商戶的驗(yàn)證方法,其特征在于:在生成證書時(shí),設(shè)置有效期,商戶在使用的有效期內(nèi)能夠正常生成證書文件,超過有效期則需要聯(lián)系pos軟件商重新生成證書文件。
6.根據(jù)權(quán)利要求1所述的基于pos收單商戶的驗(yàn)證方法,其特征在于:生成的證書文件存儲(chǔ)在本地服務(wù)器中,用戶后續(xù)能夠在本地服務(wù)器的商戶證書列表中查看所有生成的證書文件,并根據(jù)商戶號(hào)和/或終端號(hào)查詢指定的證書文件,下載保存到本地使用。
7.一種基于pos收單商戶的驗(yàn)證系統(tǒng),其特征在于:所述系統(tǒng)用于實(shí)現(xiàn)上述權(quán)利要求1-6任一所述的方法,系統(tǒng)包括,
8.根據(jù)權(quán)利要求7所述的基于pos收單商戶的驗(yàn)證系統(tǒng),其特征在于:pos軟件商在開發(fā)pos軟件的過程中,需要加載系統(tǒng)提供的證書校驗(yàn)的軟件接口;在商戶交易授權(quán)的過程中,調(diào)用此軟件接口,檢索當(dāng)前目錄下的證書文件,如果存在與該商戶匹配的證書文件,則讀取該證書文件,對(duì)其進(jìn)行解密,校驗(yàn)數(shù)據(jù)的完整性,數(shù)據(jù)校驗(yàn)通過后對(duì)數(shù)據(jù)進(jìn)行有序分解,軟件接口自動(dòng)校驗(yàn)關(guān)鍵信息以判斷交易的合法性,或者軟件接口以json格式返回明文數(shù)據(jù)信息,讓商戶自行校驗(yàn)其他有關(guān)數(shù)據(jù);校驗(yàn)通過后繼續(xù)后續(xù)的pos操作,否則,直接報(bào)錯(cuò)。