System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術涉及軟件支付,具體涉及一種測試環境下真實支付流程的模擬方法及系統。
技術介紹
1、線上支付技術發展并廣泛應用于各種交易場合,隨著電子商務和移動支付的快速發展,支付系統的穩定性、安全性和可靠性變得至關重要。在支付系統的開發和測試過程中,模擬真實的支付場景、多種支付方式以及各種異常情況是確保支付系統質量的關鍵步驟。
2、現有的測試環境為了驗證支付場景,需要反復多次支付多張訂單,在測試過程中,使用真實資金進行支付會導致資金從賬戶中流出,這不僅增加了測試成本,還可能導致不必要的財務風險,尤其是在測試過程中出現錯誤或異常時,造成的測試成本和財務風險更高;并且真實資金的交易涉及交易合規性的問題。
技術實現思路
1、為克服上述現有技術的不足,本專利技術提出一種測試環境下真實支付流程的模擬方法,包括:
2、在測試環境中利用本地dns服務器,將真實支付平臺的域名解析到預先構建的模擬支付服務器的ip地址,并將所述模擬支付服務器的自簽名證書導入客戶端;
3、完成導入后,利用所述模擬支付服務器將預先構建的支付邏輯的混淆電路以及對應的密鑰發送至所述客戶端;
4、利用所述客戶端基于所述密鑰對支付請求加密,得到加密支付請求并發送至所述模擬服務器;通過所述模擬服務器基于所述支付邏輯的混淆電路和密鑰,解析所述加密支付請求,生成支付響應,并將所述支付響應返回至所述客戶端。
5、可選的,所述支付邏輯的混淆電路以及對應的密鑰按照下述方式預先構建:
>6、在所述模擬支付服務器中,將預設的支付邏輯轉換為布爾電路;
7、對所述布爾電路中的每個邏輯門創建密鑰;
8、基于所述密鑰對所述布爾電路進行混淆處理得到所述支付邏輯的混淆電路,以及所述支付邏輯的混淆電路對應的密鑰。
9、可選的,所述通過所述模擬服務器基于所述支付邏輯的混淆電路和密鑰,解析所述加密支付請求,生成支付響應,包括:
10、通過所述模擬服務器基于所述支付邏輯的密鑰、以及所述支付邏輯的混淆電路中的邏輯門,對所述加密支付請求執行混淆電路計算,得到加密計算結果;
11、利用所述密鑰解析所述加密計算結果得到明文結果;
12、基于所述明文結果生成響應格式與所述真實支付平臺相同的支付響應。
13、可選的,所述通過所述模擬服務器基于所述支付邏輯的密鑰、以及所述支付邏輯的混淆電路中的邏輯門,對所述加密支付請求執行混淆電路計算,得到加密計算結果,包括:
14、利用所述模擬支付服務器,基于支付邏輯的混淆電路中支付方式的邏輯門和對應的密鑰,驗證加密支付請求中的支付方式是否有效,得到支付方式驗證結果;
15、基于支付邏輯的混淆電路中支付金額的邏輯門和對應的密鑰,驗證加密支付請求中的支付金額是否有效,得到支付金額驗證結果;
16、將所述支付方法驗證結果和所述支付金額驗證結果,作為所述混淆電路中支付請求綜合驗證的邏輯門,得到所述加密支付請求的加密計算結果。
17、可選的,所述明文結果包括支付成功和支付失敗;
18、所述基于所述明文結果生成響應格式與所述真實支付平臺相同的支付響應,包括:
19、在所述明文結果為支付成功時,利用所述模擬支付服務器生成與所述真實支付平臺格式相同的支付成功響應;所述支付成功響應包括訂單信息、支付金額和支付成功標識;
20、在所述明文結果為支付失敗時,利用所述模擬支付服務器生成與所述真實支付平臺格式相同的支付失敗響應;
21、若在預設時間內未得到明文結果,則利用所述模擬支付服務器生成與所述真實支付平臺格式相同的支付超時響應。
22、可選的,所述將所述支付響應返回至所述客戶端,包括:
23、利用與所述真實支付平臺相同的數字簽名算法對所述支付響應進行簽名,生成數字簽名;
24、將所述數字簽名和所述支付響應同時發送至所述客戶端,用于通過所述客戶端基于所述數字簽名驗證所述支付響應的完整性和有效性。
25、可選的,所述模擬支付服務器的預先構建過程如下:
26、基于支付流程的模擬需求搭建服務器的系統架構,并配置服務器的基本網絡設置,得到初始模擬支付服務器;
27、在所述初始模擬支付服務器的web服務器中,配置所述初始模擬服務器的自簽名證書;
28、并在所述初始模擬支付服務器的用戶界面配置多種支付方式;
29、基于所述多種支付方式,在所述初始模擬服務器中配置多個api端點,得到模擬支付服務器;
30、其中,所述多個api端點分別對應多種支付方式以及所述支付方式的更新模塊。
31、可選的,所述在所述初始模擬支付服務器中配置多個api端點之后,還包括:
32、在所述初始模擬支付服務器中創建虛擬賬戶、資金流動模塊和清算機制模塊;
33、所述資金流動模塊用于,在所述模擬支付服務器完成支付響應后,基于所述支付響應中的支付金額從虛擬賬戶中扣除或增加金額,更新所述虛擬賬戶的賬戶余額;
34、所述清算機制模塊,用于基于預設的清算規則,對所述虛擬賬戶中的賬戶余額進行結算。
35、可選的,將所述模擬支付服務器的自簽名證書導入客戶端,包括:
36、將所述模擬支付服務器的自簽名證書導出為客戶端可識別的格式;
37、通過所述模擬支付服務器將導出的所述自簽名證書傳輸到所述客戶端,并配置在所述客戶端的受信證書列表。
38、基于同一專利技術構思,本專利技術提出一種測試環境下真實支付流程的模擬系統,包括:
39、域名解析模塊,用于在測試環境中利用本地dns服務器,將真實支付平臺的域名解析到預先構建的模擬支付服務器的ip地址,并將所述模擬支付服務器的自簽名證書導入客戶端;
40、支付邏輯發送模塊,用于在完成導入后,利用所述模擬支付服務器將預先構建的支付邏輯的混淆電路以及對應的密鑰發送至所述客戶端;
41、支付響應模塊,用于利用所述客戶端基于所述密鑰對支付請求加密,得到加密支付請求并發送至所述模擬服務器;通過所述模擬服務器基于所述支付邏輯的混淆電路和密鑰,解析所述加密支付請求,生成支付響應,并將所述支付響應返回至所述客戶端。
42、可選的,所述系統還包括支付邏輯處理模塊,用于:
43、在所述模擬支付服務器中,將預設的支付邏輯轉換為布爾電路;
44、對所述布爾電路中的每個邏輯門創建密鑰;
45、基于所述密鑰對所述布爾電路進行混淆處理得到所述支付邏輯的混淆電路,以及所述支付邏輯的混淆電路對應的密鑰。
46、可選的,所述支付響應模塊,具體用于:
47、通過所述模擬服務器基于所述支付邏輯的密鑰、以及所述支付邏輯的混淆電路中的邏輯門,對所述加密支付請求執行混淆電路計算,得到加密計算結果;
48、利用所述本文檔來自技高網...
【技術保護點】
1.一種測試環境下真實支付流程的模擬方法,其特征在于,包括:
2.如權利要求1所述的方法,其特征在于,所述支付邏輯的混淆電路以及對應的密鑰按照下述方式預先構建:
3.如權利要求1所述的方法,其特征在于,所述通過所述模擬服務器基于所述支付邏輯的混淆電路和密鑰,解析所述加密支付請求,生成支付響應,包括:
4.如權利要求3所述的方法,其特征在于,所述通過所述模擬服務器基于所述支付邏輯的密鑰、以及所述支付邏輯的混淆電路中的邏輯門,對所述加密支付請求執行混淆電路計算,得到加密計算結果,包括:
5.如權利要求3所述的方法,其特征在于,所述明文結果包括支付成功和支付失敗;
6.如權利要求1所述的方法,其特征在于,所述將所述支付響應返回至所述客戶端,包括:
7.如權利要求1所述的方法,其特征在于,所述模擬支付服務器的預先構建過程如下:
8.如權利要求7所述的方法,其特征在于,所述在所述初始模擬支付服務器中配置多個API端點之后,還包括:
9.如權利要求1所述的方法,其特征在于,將所述模擬支付服務器的自
10.一種測試環境下真實支付流程的模擬系統,其特征在于,包括:
...【技術特征摘要】
1.一種測試環境下真實支付流程的模擬方法,其特征在于,包括:
2.如權利要求1所述的方法,其特征在于,所述支付邏輯的混淆電路以及對應的密鑰按照下述方式預先構建:
3.如權利要求1所述的方法,其特征在于,所述通過所述模擬服務器基于所述支付邏輯的混淆電路和密鑰,解析所述加密支付請求,生成支付響應,包括:
4.如權利要求3所述的方法,其特征在于,所述通過所述模擬服務器基于所述支付邏輯的密鑰、以及所述支付邏輯的混淆電路中的邏輯門,對所述加密支付請求執行混淆電路計算,得到加密計算結果,包括:
5.如權利要...
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。