TWI816329B - 一種交易處理方法、裝置、設備及存儲介質 - Google Patents
一種交易處理方法、裝置、設備及存儲介質 Download PDFInfo
- Publication number
- TWI816329B TWI816329B TW111109358A TW111109358A TWI816329B TW I816329 B TWI816329 B TW I816329B TW 111109358 A TW111109358 A TW 111109358A TW 111109358 A TW111109358 A TW 111109358A TW I816329 B TWI816329 B TW I816329B
- Authority
- TW
- Taiwan
- Prior art keywords
- transaction
- chain
- request
- payment
- result
- Prior art date
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 49
- 238000007781 pre-processing Methods 0.000 claims abstract description 250
- 238000000034 method Methods 0.000 claims abstract description 29
- 238000012545 processing Methods 0.000 claims description 115
- 238000012546 transfer Methods 0.000 claims description 34
- 238000004590 computer program Methods 0.000 claims description 21
- 238000012544 monitoring process Methods 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 7
- 238000005516 engineering process Methods 0.000 abstract description 3
- 238000012790 confirmation Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 230000001276 controlling effect Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000013473 artificial intelligence Methods 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Physics & Mathematics (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- Computer Security & Cryptography (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本發明實施例提供了一種交易處理方法、裝置、設備及存儲介質,屬於區塊鏈技術領域,該方法包括:支付前置設備接收到區塊鏈發送的交易請求時,發送相應的交易預處理請求至鏈下支付系統。鏈下支付系統執行相應的交易預處理操作,獲得交易預處理結果。支付前置設備接收鏈下支付系統發送的交易預處理結果,並將交易預處理結果發送至區塊鏈。在監聽到區塊鏈生成交易請求對應的鏈上交易結果時,發送交易指示消息至鏈下支付系統。本發明提供的該交易處理的方法,實現了聯盟鏈的支付交易。鏈上交易可以通過智慧合約發起交易請求,因此保證了鏈上交易在一個可信的環境中執行。由於鏈上交易和鏈下交易交互執行,也保證了鏈下交易的可信度和安全性。
Description
本發明實施例屬於區塊鏈技術領域,尤其關於一種交易處理方法、裝置、設備及存儲介質。
區塊鏈是分散式資料存儲、點對點傳輸、共識機制、加密演算法等電腦技術的新型應用模式。區塊鏈(Blockchain),本質上是一個去中心化的資料庫,是一串使用密碼學方法相關聯產生的資料塊,每一個資料塊中包含了一批次網路交易的資訊,用於驗證其資訊的有效性(防偽)和生成下一個區塊。
從技術分類看,區塊鏈分為公有鏈、聯盟鏈和私有鏈。目前的區塊鏈以聯盟鏈為主,對於聯盟鏈來說,由於國內的監管政策的限制,聯盟鏈一般不具備激勵機制,基本沒有代幣,因此區塊鏈也無法處理支付交易。
本發明實施例提供了一種交易處理方法、裝置、設備及存儲介質,用於實現通過區塊鏈處理交易,提供交易的可信度和安全性。
一方面,本發明實施例提供了一種交易處理方法,所述方法包括:
接收到區塊鏈發送的交易請求時,發送相應的交易預處理請求至鏈下支付系統,以使該鏈下支付系統執行相應的交易預處理操作,獲得交易預處理結果;
接收該鏈下支付系統發送的交易預處理結果,並將該交易預處理結果發送至該區塊鏈;
在監聽到該區塊鏈生成該交易請求對應的鏈上交易結果時,發送交易指示消息至該鏈下支付系統,該交易指示消息用於指示該鏈下支付系統執行相應的鏈下處理操作,獲得該交易請求對應的鏈下交易結果,其中,該鏈上交易結果是該區塊鏈基於該交易預處理結果,執行針對該交易請求的鏈上處理操作獲得的。
一方面,本發明實施例提供了一種交易處理方法,所述方法包括:
接收支付前置設備發送的交易預處理請求,並執行相應的交易預處理操作,獲得交易預處理結果,該交易預處理請求是該支付前置設備接收到區塊鏈發送的交易請求後發送給鏈下支付系統的;
發送該交易預處理結果至該支付前置設備,以使該支付前置設備將該交易預處理結果發送至該區塊鏈;
接收該支付前置設備發送的交易指示消息,並執行相應的鏈下處理操作,獲得該交易請求對應的鏈下交易結果,該交易指示消息是由該支付前置設備在監聽到該區塊鏈生成該交易請求對應的鏈上交易結果時發送給該鏈下支付系統的,該鏈上交易結果是該區塊鏈基於該交易預處理結果,執行針對該交易請求的鏈上處理操作獲得的。
一方面,本發明實施例提供了一種交易處理裝置,該裝置包括:
第一接收模組,用於接收到區塊鏈發送的交易請求時,發送相應的交易預處理請求至鏈下支付系統,以使該鏈下支付系統執行相應的交易預處理操作,獲得交易預處理結果;
第一發送模組,用於接收該鏈下支付系統發送的交易預處理結果,並將該交易預處理結果發送至該區塊鏈;
第一處理模組,用於在監聽到該區塊鏈生成該交易請求對應的鏈上交易結果時,發送交易指示消息至該鏈下支付系統,該交易指示消息用於指示該鏈下支付系統執行相應的鏈下處理操作,獲得該交易請求對應的鏈下交易結果,其中,該鏈上交易結果是該區塊鏈基於該交易預處理結果,執行針對該交易請求的鏈上處理操作獲得的。
可選地,該交易請求是由該區塊鏈通過智慧合約調用支付前置設備中的預言機發送的。
可選地,該第一接收模組具體用於:
接收該區塊鏈發送的加密後的交易請求,其中,該交易請求是該區塊鏈基於支付前置設備的公開金鑰加密的;
對該交易請求進行解密,獲得該交易請求中的交易資訊;
基於該交易資訊,生成交易預處理請求,並將該交易預處理請求發送至該鏈下支付系統。
可選地,該第一接收模組具體用於:
接收到區塊鏈發送的交易請求時,判斷該交易請求包含的鏈上交易標識、合約名稱、調用序號,與歷史交易請求中包含的鏈上交易標識、合約名稱、調用序號是否一致;
若不一致,則發送相應的交易預處理請求至該鏈下支付系統。
可選地,該第一接收模組還用於:
若一致,則判斷是否已緩存該交易請求對應的交易預處理結果;
若已緩存,則將已緩存的該交易請求對應的交易預處理結果發送至該區塊鏈;
若沒有緩存,則等待該鏈下支付系統返回該交易請求對應的交易預處理結果。
可選地,該第一處理模組還用於:
若監聽到該區塊鏈生成該交易請求對應的預設數量的區塊,則確定該交易請求對應的鏈上交易結果為鏈上交易成功,否則確定該交易請求對應的鏈上交易結果為鏈上交易失敗,其中,該預設數量是根據該區塊鏈中共識演算法或背書策略的配置資訊確定的。
可選地,該交易請求至少包括發送方帳戶以及支付金額,該交易預處理請求包括鎖定該發送方帳戶中該支付金額的請求;
該第一處理模組具體用於:
在監聽到該鏈上交易結果為鏈上交易成功時,向該鏈下支付系統發送第一交易指示消息,該第一交易指示消息用於指示該鏈下支付系統控制該發送方帳戶向該交易請求中的接收方帳戶支付該支付金額,獲得第一鏈下交易結果。
可選地,該第一處理模組還用於:
在監聽到該鏈上交易結果為鏈上交易失敗時,向該鏈下支付系統發送第二交易指示消息,該第二交易指示消息用於指示該鏈下支付系統解鎖該發送方帳戶中該支付金額,獲得第二鏈下交易結果。
可選地,該交易請求至少包括發送方帳戶、支付金額以及接收方帳戶,該交易預處理請求包括控制該發送方帳戶向該接收方帳戶支付該支付金額,以及鎖定該接收方帳戶中該支付金額的請求;
該第一處理模組具體用於:
在監聽到該鏈上交易結果為鏈上交易成功時,向該鏈下支付系統發送第三交易指示消息,該第三交易指示消息用於指示該鏈下支付系統解鎖該接收方帳戶中該支付金額,獲得第三鏈下交易結果。
可選地,該第一處理模組還用於:
在監聽到該鏈上交易結果為鏈上交易失敗時,向該鏈下支付系統發送第四交易指示消息,該第四交易指示消息用於指示該鏈下支付系統控制該接收方帳戶向該發送方帳戶退還該支付金額,獲得第四鏈下交易結果。
可選地,該發送方帳戶是使用者終端通過支付前置設備從標記服務商申請的支付標記。
可選地,該交易請求包括發送方位址、該發送方位址對應的數位人民幣數串、接收方位址,該發送方地址和該接收方位址是使用者終端通過數位貨幣錢包獲得的,該交易預處理請求包括鎖定該數位人民幣數串的請求;
該第一處理模組具體用於:
在監聽到該鏈上交易結果為鏈上交易成功時,向該鏈下支付系統發送第五交易指示消息,該第五交易指示消息用於指示該鏈下支付系統控制將該數位人民幣數串從該發送方地址轉移至該接收方地址,獲得第五鏈下交易結果。
該第一處理模組還用於:
在監聽到該鏈上交易結果為鏈上交易失敗時,向該鏈下支付系統發送第六交易指示消息,該第六交易指示消息用於指示該鏈下支付系統解鎖該數位人民幣數串,獲得第六鏈下交易結果。
一方面,本發明實施例提供了一種交易處理裝置,該裝置包括:
第二接收模組,用於接收支付前置設備發送的交易預處理請求,並執行相應的交易預處理操作,獲得交易預處理結果,該交易預處理請求是該支付前置設備接收到區塊鏈發送的交易請求後發送給鏈下支付系統的;
第二發送模組,用於發送該交易預處理結果至該支付前置設備,以使該支付前置設備將該交易預處理結果發送至該區塊鏈;
第二處理模組,用於接收該支付前置設備發送的交易指示消息,並執行相應的鏈下處理操作,獲得該交易請求對應的鏈下交易結果,該交易指示消息是由該支付前置設備在監聽到該區塊鏈生成該交易請求對應的鏈上交易結果時發送給該鏈下支付系統的,該鏈上交易結果是該區塊鏈基於該交易預處理結果,執行針對該交易請求的鏈上處理操作獲得的。
可選地,該交易請求至少包括發送方帳戶以及支付金額,該交易預處理請求包括鎖定該發送方帳戶中該支付金額的請求;
該第二接收模組具體用於:
接收支付前置設備發送的交易預處理請求,並鎖定該發送方帳戶中該支付金額。
可選地,該第二處理模組具體用於:
接收該支付前置設備發送的第一交易指示消息,控制該發送方帳戶向該交易請求中的接收方帳戶支付該支付金額,獲得第一鏈下交易結果;
或者,接收該支付前置設備發送的第二交易指示消息,解鎖該發送方帳戶中該支付金額,獲得第二鏈下交易結果。
可選地,該交易請求至少包括發送方帳戶、支付金額以及接收方帳戶,該交易預處理請求包括控制該發送方帳戶向該接收方帳戶支付該支付金額,以及鎖定該接收方帳戶中該支付金額的請求;
該第二接收模組具體用於:
接收支付前置設備發送的交易預處理請求,控制該發送方帳戶向該接收方帳戶支付該支付金額,並鎖定該接收方帳戶中該支付金額。
可選地,該第二處理模組具體用於:
接收該支付前置設備發送的第三交易指示消息,解鎖該接收方帳戶中該支付金額,獲得第三鏈下交易結果;
或者,接收該支付前置設備發送的第四交易指示消息,控制該接收方帳戶向該發送方帳戶退還該支付金額,獲得第四鏈下交易結果。
可選地,該交易請求包括發送方位址、該發送方位址對應的數位人民幣數串、接收方位址,該發送方地址和該接收方位址是使用者終端通過數位貨幣錢包獲得的,該交易預處理請求包括鎖定該數位人民幣數串的請求;
該第二接收模組具體用於:
接收支付前置設備發送的交易預處理請求,並鎖定該數字人民幣數串。
可選地,該第二處理模組具體用於:
接收該支付前置設備發送的第五交易指示消息,控制該數位人民幣數串從該發送方地址轉移至該接收方地址,獲得第五鏈下交易結果;
或者,接收該支付前置設備發送的第六交易指示消息,解鎖該數字人民幣數串,獲得第六鏈下交易結果。
一方面,本發明實施例提供了一種電腦設備,包括記憶體、處理器及存儲在記憶體上並可在處理器上運行的電腦程式,該處理器執行該程式時實現上述交易處理方法的步驟。
一方面,本發明實施例提供了一種電腦可讀存儲介質,其存儲有可由電腦設備執行的電腦程式,當該程式在電腦設備上運行時,使得該電腦設備執行上述交易處理方法的步驟。
一方面,本發明實施例提供了一種電腦程式產品,該電腦程式產品包括存儲在電腦可讀存儲介質上的電腦程式,該電腦程式包括程式指令,當該程式指令被電腦設備執行時,使該電腦設備執行上述交易處理方法的步驟。
在本發明實施例中,支付前置設備接收到區塊鏈發送的交易請求時,發送相應的交易預處理請求至鏈下支付系統。鏈下支付系統執行相應的交易預處理操作,獲得交易預處理結果。交易請求中的發送方帳戶或接收方帳戶為多種線下支付帳戶中的一種,因此,本發明中的支付交易方法適配多種鏈下支付系統,以滿足各種不同支付帳戶的使用,增強了本發明中支付交易方法的通用性。
支付前置設備接收鏈下支付系統發送的交易預處理結果,並將交易預處理結果發送至區塊鏈。在監聽到區塊鏈生成交易請求對應的鏈上交易結果時,發送交易指示消息至鏈下支付系統,交易指示消息用於指示鏈下支付系統執行相應的鏈下處理操作,獲得交易請求對應的鏈下交易結果,其中,鏈上交易結果是區塊鏈基於交易預處理結果,執行針對交易請求的鏈上處理操作獲得的。本發明提供的所述交易處理的方法,實現了聯盟鏈的支付交易。由於所述支付交易是基於鏈上交易和鏈下交易同時進行處理的。即根據鏈下交易的交易預處理結果,區塊鏈執行交易請求的鏈上交易,獲得鏈上交易結果;鏈下支付系統再根據鏈上交易結果,執行交易請求的鏈下交易,獲得鏈下交易結果。鏈上交易可以通過智慧合約發起交易請求,因此保證了鏈上交易在一個可信的環境中執行。由於鏈上交易和鏈下交易交互執行,因此,也保證了鏈下交易的可信度和安全性,可以避免單獨執行鏈下交易時所存在的人為失誤帶來的錯誤交易。
為利 貴審查委員了解本發明之技術特徵、內容與優點及其所能達到之功效,茲將本發明配合附圖及附件,並以實施例之表達形式詳細說明如下,而其中所使用之圖式,其主旨僅為示意及輔助說明書之用,未必為本發明實施後之真實比例與精準配置,故不應就所附之圖式的比例與配置關係解讀、侷限本發明於實際實施上的申請範圍,合先敘明。
在本發明的描述中,需要理解的是,術語「中心」、「橫向」、「上」、「下」、「左」、「右」、「頂」、「底」、「內」、「外」等指示的方位或位置關係為基於圖式所示的方位或位置關係,僅是為了便於描述本發明和簡化描述,而不是指示或暗示所指的裝置或元件必須具有特定的方位、以特定的方位構造和操作,因此不能理解為對本發明的限制。
為了方便理解,下面對本發明實施例中所述的名詞進行解釋。
聯盟鏈:由多個私有鏈組成的集群,由多個機構共同參與管理的區塊鏈,每個組織或機構管理一個或多個節點,其資料只允許系統內不同的機構進行讀寫和發送。
智能合約:當一定條件被滿足的情況下,可以被自動執行的電腦系統上的合約。
預言機:連接外部資料和智慧合約,充當區塊鏈和資料應用程式介面(Application Programming Interface,簡稱API)之間的中間層,將資料轉換為區塊鏈可以讀取的格式。
TR:Token Request,支付標記請求方,向標記服務商提供標記申請的機構。
TSP:Token Service Provider,標記服務商,負責產生、維護標記的主體,也負責管理支付標記請求方,並向其提供標記的相關服務。
token:支付標記,是指主帳號(PAN)的一個代替值,一般由13至19位元的數位組成,該數值必須符合主帳號的基本驗證規則,其中包括LUHN演算法校驗。
非對稱加密:一種使用一對金鑰(公開金鑰和私密金鑰)進行加密的密碼系統。
參考圖1,其為本發明實施例適用的一種系統架構圖,該系統架構至少包括終端設備101、區塊鏈102、支付前置設備103以及鏈下支付系統104。
終端設備101安裝有交易處理的目標應用,該應用可以是預先安裝的用戶端、網頁版應用或嵌入在其他應用中的小程式等。終端設備101可以是智慧手機、平板電腦、筆記型電腦、臺式電腦等,但並不局限於此。
區塊鏈102、支付前置設備103和鏈下支付系統104為目標應用的後臺伺服器,為目標應用提供服務。區塊鏈102可以是獨立的實體伺服器,也可以是多個實體伺服器構成的伺服器集群或者分散式系統,還可以是提供雲服務、雲資料庫、雲計算、雲函數、雲存儲、網路服務、雲通信、中介軟體服務、功能變數名稱服務、安全服務、內容分發網路(Content Delivery Network, CDN)、以及大資料和人工智慧平臺等基礎雲計算服務的雲伺服器。
支付前置設備103可以是獨立的實體伺服器,也可以是多個實體伺服器構成的伺服器集群或者分散式系統,還可以是提供雲服務、雲資料庫、雲計算、雲函數、雲存儲、網路服務、雲通信、中介軟體服務、功能變數名稱服務、安全服務、內容分發網路(Content Delivery Network, CDN)、以及大資料和人工智慧平臺等基礎雲計算服務的雲伺服器。
鏈下支付系統104可以是獨立的實體伺服器,也可以是多個實體伺服器構成的伺服器集群或者分散式系統,還可以是提供雲服務、雲資料庫、雲計算、雲函數、雲存儲、網路服務、雲通信、中介軟體服務、功能變數名稱服務、安全服務、內容分發網路(Content Delivery Network, CDN)、以及大資料和人工智慧平臺等基礎雲計算服務的雲伺服器。
終端設備101與區塊鏈102可以通過有線或無線通訊方式進行直接或間接地連接,本發明在此不做限制。區塊鏈102和支付前置設備103可以通過有線或無線通訊方式進行直接或間接地連接,本發明在此不做限制。支付前置設備103和鏈下支付系統104可以通過有線或無線通訊方式進行直接或間接地連接,本發明在此不做限制。
終端設備101回應於使用者的交易處理操作,發送交易處理請求至區塊鏈102,交易處理請求中至少包括發送方帳戶、接收方帳戶以及支付金額。
區塊鏈102發送交易請求至支付前置設備103。支付前置設備103接收到區塊鏈102發送的交易請求時,發送相應的交易預處理請求至鏈下支付系統104。鏈下支付系統104執行相應的交易預處理操作,獲得交易預處理結果。支付前置設備103接收鏈下支付系統發送的交易預處理結果,並將交易預處理結果發送至區塊鏈102。區塊鏈102基於交易預處理結果,執行針對交易請求的鏈上處理操作,獲得鏈上交易結果,並對鏈上交易結果進行共識確認。支付前置設備103在監聽到區塊鏈生成交易請求對應的鏈上交易結果時,發送交易指示消息至鏈下支付系統104。鏈下支付系統104基於交易指示消息,執行相應的鏈下處理操作,獲得交易請求對應的鏈下交易結果。
基於圖1所述的系統架構圖,本發明實施例提供了一種交易處理方法的流程,如圖2所示,所述方法的流程由圖1所示的區塊鏈102、支付前置設備103以及鏈下支付系統104交互執行,包括以下步驟:
步驟S201、區塊鏈發送交易請求至支付前置設備。
具體地,交易請求可以由區塊鏈直接發送,也可以由區塊鏈通過智慧合約調用支付前置設備中的預言機發送。
交易請求中包括兩部分內容:第一部分是調用中繼資料資訊,調用中繼資料資訊包括以下一項或多項:鏈上交易標識、合約名稱、調用序號等。第二部分是交易參數,交易參數包括以下一項或多項:發送方帳戶、支付金額、接收方帳戶、簽名、數位人民幣數串等資訊。
發送方帳戶或接收方帳戶可以是銀行卡帳戶、線下二維碼、線下條碼、線下近場通信(Near Field Communication, NFC)應用,也可以是使用者終端通過支付前置設備從標記服務商申請的支付標記,還可以是使用者終端通過數位貨幣錢包獲得的發送地址或接收方地址,對此,在此不做限定。
當使用者終端從標記服務商申請支付標記時,使用者終端通過支付前置設備或其他支付服務商的頁面提交使用者的銀行卡帳戶資訊以及標記申請請求。支付前置設備或其他支付服務商作為支付標記請求方向標記服務商申請支付標記。標記服務商完成使用者終端提交的帳戶資訊的驗證後,向支付標記請求方下發支付標記,支付標記請求方將支付標記返回給使用者終端或者直接註冊到區塊鏈。
步驟S202、支付前置設備發送相應的交易預處理請求至鏈下支付系統。
具體地,支付前置設備的具體位置是在區塊鏈和鏈下支付系統之間,支付前置設備可以採用中心化或分散式或去中心化的方式實現。
一種可能的實施方式,交易預處理請求包括鎖定發送方帳戶中支付金額的請求。
舉例來說,發送方帳戶為銀行卡帳戶A,支付金額為100元,則交易預處理請求的內容包括:鎖定銀行卡帳戶A中的100元。
一種可能的實施方式,交易預處理請求包括控制發送方帳戶向接收方帳戶支付支付金額,以及鎖定接收方帳戶中支付金額的請求。
舉例來說,發送方帳戶為銀行卡帳戶A,支付金額為100元,接收方帳戶為銀行卡帳戶B,則交易預處理請求的內容包括:控制銀行卡帳戶A向銀行卡帳戶B支付100元,並鎖定銀行卡帳戶B中的100元。
一種可能的實施方式,交易預處理請求包括鎖定發送方位址對應的數位人民幣數串的請求。
舉例來說,發送方帳戶為發送方地址A,在發送方位址A中包含數位人民幣數串,數位人民幣數串對應的支付金額為100元。接收方帳戶為接收方位址B,則交易預處理請求的內容包括:鎖定發送方位址A中的數位人民幣數串。
一種可能的實施方式,交易預處理請求包括控制支付金額對應的數位人民幣數串從發送方位址轉移至接收方地址,以及鎖定接收方位址中該數位人民幣數串的請求。
舉例來說,發送方帳戶為發送方地址A,在發送方位址A中包含數位人民幣數串,數位人民幣數串對應的支付金額為100元。接收方帳戶為接收方位址B,則交易預處理請求的內容包括:將發送方位址A中的數位人民幣數串從發送方地址A轉移至接收方地址B,並鎖定接收方位址中的數位人民幣數串。
可選地,支付前置設備在確定接收的交易請求中的鏈上交易標識、合約名稱、調用序號,與歷史交易請求中的鏈上交易標識、合約名稱、調用序號相同時,判斷是否已緩存交易請求對應的交易預處理結果,若是,則將已緩存的交易請求對應的交易預處理結果發送至區塊鏈,否則等待鏈下支付系統返回交易請求對應的交易預處理結果。支付前置設備在確定接收的交易請求中的鏈上交易標識、合約名稱、調用序號,與歷史交易請求中的鏈上交易標識、合約名稱、調用序號不相同時,執行步驟S203。
步驟S203、鏈下支付系統執行相應的交易預處理操作,獲得交易預處理結果。
一種可能的實施方式,當交易預處理請求包括鎖定發送方帳戶中支付金額的請求時,鏈下支付系統鎖定發送方帳戶中相應的支付金額,獲得交易預處理結果。
舉例來說,當交易預處理請求的內容為鎖定銀行卡帳戶A中的100元時,鏈下支付系統執行鎖定銀行卡帳戶A中的100元操作,獲得交易預處理結果。
一種可能的實施方式,當交易預處理請求包括控制發送方帳戶向接收方帳戶支付支付金額,以及鎖定接收方帳戶中支付金額的請求時,鏈下支付系統控制發送方帳戶向接收方帳戶支付相應的支付金額,並鎖定接收方帳戶中相應的支付金額,獲得交易預處理結果。
舉例來說,當交易預處理請求的內容為控制銀行卡帳戶A向銀行卡帳戶B支付100元,並鎖定銀行卡帳戶B中的100元時,鏈下支付系統控制銀行卡帳戶A向銀行卡帳戶B支付100元,並鎖定銀行卡帳戶B中的100元,獲得交易預處理結果。
一種可能的實施方式,當交易預處理請求包括鎖定發送方位址對應的數位人民幣數串的請求時,鏈下支付系統鎖定該數位人民幣數串。
舉例來說,當交易預處理請求的內容為鎖定發送方位址A中的數位人民幣數串時,鏈下支付系統執行鎖定該數位人民幣數串操作,獲得交易預處理結果。
一種可能的實施方式,當交易預處理請求包括控制將發送方位址中的數位人民幣數串從發送方地址轉移至接收方地址,以及鎖定接收方位址中該數位人民幣數串的請求時,鏈下支付系統控制將支付金額對應的數位人民幣數串從發送方位址轉移至接收方位址,並鎖定接收方位址中該數字人民幣數串,獲得交易預處理結果。
舉例來說,當交易預處理請求的內容為控制將發送方位址A中的數位人民幣數串從發送方地址A轉移至接收方位址B,並鎖定接收方位址B中的該數位人民幣數串時,鏈下支付系統控制將發送方位址A中的數位人民幣數串從發送方地址A轉移至接收方地址B,並鎖定接收方B中的該數字人民幣數串,獲得交易預處理結果。
步驟S204、鏈下支付系統發送交易預處理結果至支付前置設備。
具體地,支付前置設備在本地緩存交易預處理結果和對應的鏈上交易標識。
步驟S205、支付前置設備將交易預處理結果發送至區塊鏈。
具體地,交易預處理結果包括交易預處理成功和交易預處理不成功兩種情況。
舉例來說,一種可能的實施方式,當交易預處理請求的內容為鎖定銀行卡帳戶A中的100元時,鏈下支付系統執行鎖定銀行卡帳戶A中的100元操作。
若銀行卡帳戶A中並沒有100元,或者鏈下支付系統無法鎖定銀行卡帳戶A中的100元時,獲得的交易預處理結果為交易預處理不成功;
若鏈下支付系統成功鎖定了銀行卡帳戶A中的100元,獲得的交易預處理結果為交易預處理成功。
一種可能的實施方式,當交易預處理請求的內容為控制銀行卡帳戶A向銀行卡帳戶B支付100元,並鎖定銀行卡帳戶B中的100元時,鏈下支付系統執行對應的操作。
若鏈下支付系統無法控制銀行卡帳戶A向銀行卡帳戶B支付100元,或無法鎖定銀行卡帳戶B中的100元時,獲得的交易預處理結果為交易預處理不成功;
若鏈下支付系統控制銀行卡帳戶A向銀行卡帳戶B支付100元,並成功鎖定銀行卡帳戶B中的100元時,獲得的交易預處理結果為交易預處理成功。
一種可能的實施方式,當交易預處理請求的內容為鎖定發送方位址A中的數位人民幣數串,鏈下支付系統執行對應的操作。
若發送方位址A中並沒有數位人民幣數串,或者鏈下支付系統無法鎖定發送方位址A中的該數位人民幣數串,則獲得的交易預處理結果為交易預處理不成功;
若鏈下支付系統成功鎖定了發送方位址A中的數位人民幣數串,則獲得的交易預處理結果為交易預處理成功。
一種可能的實施方式,當交易預處理請求的內容為控制將發送方位址A中的數位人民幣數串從發送方地址A轉移至接收方位址B,並鎖定接收方位址B中的該數位人民幣數串時,鏈下支付系統執行對應的操作。
若鏈下支付系統無法控制將發送方位址A中的數位人民幣數串從發送方地址A轉移至接收方地址B,或無法鎖定接收方位址B中的該數字人民幣數串,則獲得的交易預處理結果為交易預處理不成功;
若鏈下支付系統控制將發送方位址A中的數位人民幣數串從發送方地址A轉移至接收方位址B,並成功鎖定接收方位址B中的該數字人民幣數串,則獲得的交易預處理結果為交易預處理成功。
步驟S206、區塊鏈在確定交易預處理結果為交易預處理成功時,基於交易預處理結果執行針對交易請求的鏈上處理操作,獲得鏈上交易結果。
具體地,鏈上處理操作包括基於交易預處理結果對交易請求進行處理,將交易處理結果記入區塊,然後將區塊進行共識確認,在區塊確認後即完成了交易確認事件。
另外,區塊鏈在確定交易預處理結果為交易預處理失敗時,輸出鏈上交易失敗並結束。
步驟S207、支付前置設備監聽到區塊鏈生成鏈上交易結果。
可選地,若監聽到區塊鏈生成交易請求對應的預設數量的區塊,則確定交易請求對應的鏈上交易結果為鏈上交易成功,否則確定交易請求對應的鏈上交易結果為鏈上交易失敗,其中,預設數量是根據區塊鏈中共識演算法或背書策略的配置資訊確定的。
具體地,共識演算法中的預設數量可以是一個具體的數值,也可以根據區塊鏈上區塊的數量進行調整。
步驟S208、支付前置設備發送交易指示消息至鏈下支付系統。
一種可能的實施方式,若交易預處理操作為鎖定發送方帳戶中相應的支付金額,當支付前置設備在監聽到鏈上交易結果為鏈上交易成功時,向鏈下支付系統發送第一交易指示消息,第一交易指示消息用於指示鏈下支付系統控制發送方帳戶向交易請求中的接收方帳戶支付相應的支付金額,獲得第一鏈下交易結果。
當支付前置設備在監聽到鏈上交易結果為鏈上交易失敗時,向鏈下支付系統發送第二交易指示消息,第二交易指示消息用於指示鏈下支付系統解鎖發送方帳戶中支付金額,獲得第二鏈下交易結果。
舉例來說,若交易預處理操作為鎖定銀行卡帳戶A中的100元時,當支付前置設備在監聽到鏈上交易結果為鏈上交易成功時,向鏈下支付系統發送第一交易指示消息,即鏈下支付系統控制銀行卡帳戶A向銀行卡帳戶B支付100元。
當支付前置設備在監聽到鏈上交易結果為鏈上交易失敗時,向鏈下支付系統發送第二交易指示消息,即鏈下支付系統解鎖銀行卡帳戶A中的100元。
一種可能的實施方式,若交易預處理操作為控制發送方帳戶向接收方帳戶支付支付金額,以及鎖定接收方帳戶中相應的支付金額。當支付前置設備在監聽到鏈上交易結果為鏈上交易成功時,向鏈下支付系統發送第三交易指示消息,第三交易指示消息用於指示鏈下支付系統解鎖接收方帳戶中相應的支付金額,獲得第三鏈下交易結果。
當支付前置設備在監聽到鏈上交易結果為鏈上交易失敗時,向鏈下支付系統發送第四交易指示消息,第四交易指示消息用於指示鏈下支付系統控制接收方帳戶向發送方帳戶退還相應的支付金額,獲得第四鏈下交易結果。
舉例來說,若交易預處理操作為控制銀行卡帳戶A向銀行卡帳戶B支付100元,並鎖定銀行卡帳戶B中的100元,當支付前置設備在監聽到鏈上交易結果為鏈上交易成功時,向鏈下支付系統發送第三交易指示消息,即鏈下支付系統解鎖銀行卡帳戶B中的100元。
當支付前置設備在監聽到鏈上交易結果為鏈上交易失敗時,向鏈下支付系統發送第四交易指示消息,即鏈下支付系統控制銀行卡帳戶B向銀行卡帳戶A退還100元。
一種可能的實施方式,若交易預處理操作為鎖定發送方位址中支付金額對應的數位人民幣數串,當支付前置設備在監聽到鏈上交易結果為鏈上交易成功時,向鏈下支付系統發送第五交易指示消息,第五交易指示消息用於指示鏈下支付系統控制將該數位人民幣數串從發送方地址轉移至接收方地址,獲得第五鏈下交易結果。
當支付前置設備在監聽到鏈上交易結果為鏈上交易失敗時,向鏈下支付系統發送第六交易指示消息,第六交易指示消息用於指示鏈下支付系統解鎖發送方位址中該支付金額對應的數字人民幣數串,獲得第六鏈下交易結果。
舉例來說,若交易預處理操作為鎖定發送方位址A中的數位人民幣數串,當支付前置設備在監聽到鏈上交易結果為鏈上交易成功時,向鏈下支付系統發送第五交易指示消息,即鏈下支付系統控制將發送方位址A中的數位人民幣數串從發送方地址A轉移至接收方位址B。
當支付前置設備在監聽到鏈上交易結果為鏈上交易失敗時,向鏈下支付系統發送第六交易指示消息,即鏈下支付系統解鎖發送方位址A中的數位人民幣數串。
一種可能的實施方式,若交易預處理操作為控制將支付金額對應的數位人民幣數串從發送方位址轉移至接收方地址,以及鎖定接收方位址中該數位人民幣數串。當支付前置設備在監聽到鏈上交易結果為鏈上交易成功時,向鏈下支付系統發送第七交易指示消息,第七交易指示消息用於指示鏈下支付系統解鎖接收方位址中該數位人民幣數串,獲得第七鏈下交易結果。
當支付前置設備在監聽到鏈上交易結果為鏈上交易失敗時,向鏈下支付系統發送第八交易指示消息,第八交易指示消息用於指示鏈下支付系統控制將該數位人民幣數串從接收方地址轉移至發送方地址,獲得第八鏈下交易結果。
舉例來說,若交易預處理操作為控制將發送方位址A中的數位人民幣數串從發送方地址A轉移至接收方位址B,並鎖定接收方位址B中該數位人民幣數串,當支付前置設備在監聽到鏈上交易結果為鏈上交易成功時,向鏈下支付系統發送第七交易指示消息,即鏈下支付系統解鎖接收方位址B中該數位人民幣數串。
當支付前置設備在監聽到鏈上交易結果為鏈上交易失敗時,向鏈下支付系統發送第八交易指示消息,即鏈下支付系統控制將發送方位址B中的該數位人民幣數串從接收方地址B轉移至發送方位址A。
步驟S209、鏈下支付系統執行相應的鏈下處理操作,獲得鏈下交易結果。
一種可能的實施方式,若鏈下支付系統接收第一交易指示消息,則控制發送方帳戶向交易請求中的接收方帳戶支付相應的支付金額,獲得第一鏈下交易結果。若鏈下支付系統接收第二交易指示消息,則解鎖發送方帳戶中相應的支付金額,獲得第二鏈下交易結果。
舉例來說,若交易預處理操作為鎖定銀行卡帳戶A中的100元時,當鏈下支付系統接收到第一指示消息時,鏈下支付系統控制銀行卡帳戶A向銀行卡帳戶B支付100元,獲得第一鏈下交易結果。
當鏈下支付系統接收到第二指示消息時,鏈下支付系統解鎖銀行卡帳戶A中的100元。
一種可能的實施方式,若鏈下支付系統接收第三交易指示消息,則解鎖接收方帳戶中上述支付金額,獲得第三鏈下交易結果。若鏈下支付系統接收第四交易指示消息,則控制接收方帳戶向發送方帳戶退還上述支付金額。
舉例來說,若交易預處理操作為控制銀行卡帳戶A向銀行卡帳戶B支付100元,並鎖定銀行卡帳戶B中的100元時,當鏈下支付系統接收到第三指示消息時,鏈下支付系統解鎖銀行卡帳戶B中的100元。
當鏈下支付系統接收到第四指示消息時,鏈下支付系統控制銀行卡帳戶B向銀行卡帳戶A退還100元。
一種可能的實施方式,若鏈下支付系統接收第五交易指示消息,則控制將數位人民幣數串從發送方地址轉移至接收方地址,獲得第五鏈下交易結果。若鏈下支付系統接收第六交易指示消息,則解鎖發送方位址中相應的數字人民幣數串,獲得第六鏈下交易結果。
舉例來說,若交易預處理操作為鎖定發送方位址A中的數位人民幣數串,當鏈下支付系統接收到第五指示消息時,鏈下支付系統控制將發送方位址A中的人民幣數串從發送方地址A轉移至接收方地址B,獲得第五鏈下交易結果。
當鏈下支付系統接收到第六指示消息時,鏈下支付系統解鎖發送方位址A中的人民幣數串。
一種可能的實施方式,若鏈下支付系統接收第七交易指示消息,則解鎖接收方位址中上述數字人民幣數串,獲得第七鏈下交易結果。若鏈下支付系統接收第八交易指示消息,則控制將上述數位人民幣數串從接收方地址轉移至發送方地址,獲得第八鏈下交易結果。
舉例來說,若交易預處理操作為控制將發送方位址A中的數位人民幣數串從發送方地址A轉移至接收方位址B,並鎖定接收方位址B中的該數位人民幣數串,當鏈下支付系統接收到第七指示消息時,鏈下支付系統解鎖接收方位址B中的該數位人民幣數串。
當鏈下支付系統接收到第八指示消息時,鏈下支付系統控制將接收方位址B中的數位人民幣數串從接收方地址B轉移至發送方位址A。
在本發明實施例中,支付前置設備接收到區塊鏈發送的交易請求時,發送相應的交易預處理請求至鏈下支付系統。鏈下支付系統執行相應的交易預處理操作,獲得交易預處理結果。交易請求中的發送方帳戶或接收方帳戶為多種線下支付帳戶中的一種,因此,本發明中的支付交易方法適配多種鏈下支付系統,以滿足各種不同支付帳戶的使用,增強了本發明中支付交易方法的通用性。
支付前置設備接收鏈下支付系統發送的交易預處理結果,並將交易預處理結果發送至區塊鏈。在監聽到區塊鏈生成交易請求對應的鏈上交易結果時,發送交易指示消息至鏈下支付系統,交易指示消息用於指示鏈下支付系統執行相應的鏈下處理操作,獲得交易請求對應的鏈下交易結果,其中,鏈上交易結果是區塊鏈基於交易預處理結果,執行針對交易請求的鏈上處理操作獲得的。本發明提供的所述交易處理的方法,實現了聯盟鏈的支付交易。由於所述支付交易是基於鏈上交易和鏈下交易同時進行處理的。即根據鏈下交易的交易預處理結果,區塊鏈執行交易請求的鏈上交易,獲得鏈上交易結果;鏈下支付系統再根據鏈上交易結果,執行交易請求的鏈下交易,獲得鏈下交易結果。鏈上交易可以通過智慧合約發起交易請求,因此保證了鏈上交易在一個可信的環境中執行。由於鏈上交易和鏈下交易交互執行,因此,也保證了鏈下交易的可信度和安全性,可以避免單獨執行鏈下交易時所存在的人為失誤帶來的錯誤交易。
可選地,在上述步驟S203中,支付前置設備接收區塊鏈發送的加密後的交易請求,其中,交易請求是區塊鏈基於支付前置設備的公開金鑰加密的。支付前置設備對交易請求進行解密,獲得交易請求中的交易資訊,然後基於交易資訊,生成交易預處理請求,並將交易預處理請求發送至鏈下支付系統。
具體地,加密演算法可以是對稱加密演算法,也可以是非對稱加密演算法。對稱加密演算法中,資料發送者和資料接收者使用同一套規則來對資料進行加密和解密。非對稱加密使用金鑰對對資料進行加密和解密,金鑰對包含一個公開金鑰,一個私密金鑰。非對稱加密演算法一般可以劃分為三種主要的方式:大整數分解問題類、離散對數問題類、橢圓曲線類。區塊鏈中的非對稱加密演算法主要使用橢圓曲線類加密演算法,即利用平面橢圓曲線來計算成組非對稱特殊值。
在本發明實施例中,區塊鏈使用支付前置設備的公開金鑰,對交易請求進行加密後,將加密後的交易請求發送給支付前置設備。如果所述加密後的交易請求被第三方面攔截,第三方面也只能看到隨機的數位和字母,並不能獲取交易請求中的資訊。支付前置設備接收到加密後的交易請求,利用自身的私密金鑰對交易請求進行解密,獲得交易請求中的交易資訊。
本發明中,採用了非對稱加密演算法對交易請求進行加密,由於非對稱加密演算法使用了金鑰對對資料進行加密和解密,金鑰對中的公開金鑰公開,私密金鑰自己保存,安全性更高,在保證了交易請求安全性的同時,解決了金鑰傳輸問題。
為了更好的解釋本發明實施例,下面結合具體的轉帳場景描述本發明實施例提供的一種交易處理的方法,所述方法由區塊鏈、支付前置設備和鏈下支付系統交互執行,設定發送方帳戶是銀行卡帳戶,如圖3所示,所述方法包括以下步驟:
步驟S301、支付前置設備啟動預言機服務和監聽鏈上區塊確認和交易事件。
步驟S302、區塊鏈直接或通過智慧合約發送加密後的交易請求至支付前置設備。
其中,交易請求中至少包括發送方銀行卡帳戶以及支付金額。
步驟S303、支付前置設備對交易請求進行解密。
支付前置設備判斷該交易請求包含的鏈上交易標識、合約名稱、調用序號,與歷史交易請求中包含的鏈上交易標識、合約名稱、調用序號是否一致,若不一致,則執行步驟S304。
若一致,則判斷是否已緩存該交易請求對應的交易預處理結果,若已緩存,則將執行步驟S307;若沒有緩存,則等待鏈下支付系統返回該交易請求對應的交易預處理結果,並執行步驟S307。
步驟S304、支付前置設備向鏈下支付系統發送鎖定發送方銀行卡帳戶中上述支付金額的請求。
步驟S305、鏈下支付系統執行鎖定發送方銀行卡帳戶中上述支付金額的操作,獲得交易預處理結果。
步驟S306、鏈下支付系統發送交易預處理結果至支付前置設備。
步驟S307、支付前置設備判斷鎖定發送方銀行卡帳戶中上述支付金額的操作是否成功,若是,則執行步驟S308,否則,執行步驟S316。
步驟S308,支付前置設備發送交易預處理成功消息至區塊鏈。
步驟S309、區塊鏈執行鏈上處理操作,獲得鏈上交易結果。
鏈上處理操作包括基於交易預處理結果對交易請求進行處理,將交易處理結果記入區塊,然後將區塊進行共識確認,在區塊確認後即完成了交易確認事件。
步驟S310、支付前置設備監聽區塊鏈生成的交易請求對應的鏈上交易結果。
步驟S311、判斷鏈上交易結果是否為鏈上交易成功,若是,則執行步驟S312,否則,執行步驟S314。
若監聽到區塊鏈生成交易請求對應的預設數量的區塊,則確定交易請求對應的鏈上交易結果為鏈上交易成功,否則確定交易請求對應的鏈上交易結果為鏈上交易失敗,其中,預設數量是根據區塊鏈中共識演算法或背書策略的配置資訊確定的。
步驟S312、支付前置設備發送第一交易指示消息至鏈下支付系統。
其中,第一交易指示消息用於指示鏈下支付系統控制發送方銀行卡帳戶向接收方銀行卡帳戶支付上述支付金額。
步驟S313、鏈下支付系統控制發送方銀行卡帳戶向接收方銀行卡帳戶支付上述支付金額,獲得第一鏈下交易結果。
步驟S314、支付前置設備發送第二交易指示消息至鏈下支付系統。
其中,第二交易指示消息用於指示鏈下支付系統解鎖發送方銀行卡帳戶中上述支付金額。
步驟S315、鏈下支付系統解鎖發送方銀行卡帳戶中的上述支付金額,獲得第二鏈下交易結果。
步驟S316、區塊鏈輸出鏈上交易失敗。
本發明實施例中,在進行支付交易時,鏈下支付系統先執行鎖定發送方相應支付金額,獲得交易預處理結果。區塊鏈通過支付前置設備獲得交易預處理結果後,基於交易預處理結果執行交易請求的鏈上交易操作,鏈下支付系統執行相應的鏈下交易操作,獲得鏈下交易結果。由於區塊鏈通過智慧合約執行鏈上交易,保證了鏈上交易在一個可信的環境中執行。由於鏈上交易和鏈下交易是交互執行的,因此也保證了鏈下交易的可信度和安全性,避免人為失誤帶來的錯誤交易。
其次,在進行支付交易時,先鎖定發送方帳戶中的相應的支付金額,根據是否鎖定成功,再進行對應的鏈上交易處理和鏈下交易處理,保證了後續交易的準確性,同時避免了無效處理過程。
為了更好的解釋本發明實施例,下面結合具體的轉帳場景描述本發明實施例提供的一種交易處理的方法,所述方法由區塊鏈、支付前置設備和鏈下支付系統交互執行,設定發送方帳戶是支付標記,接收方帳戶是商戶的線下二維碼,如圖4所示,包括以下步驟:
步驟S401、支付前置設備啟動預言機服務和監聽鏈上區塊確認和交易事件。
步驟S402、區塊鏈直接或通過智慧合約發送加密後的交易請求至支付前置設備。
其中,交易請求中至少包括發送方支付標記、接收方的線下二維碼以及支付金額。
步驟S403、支付前置設備對交易請求進行解密。
支付前置設備判斷該交易請求包含的鏈上交易標識、合約名稱、調用序號,與歷史交易請求中包含的鏈上交易標識、合約名稱、調用序號是否一致,若不一致,則執行步驟S404。
若一致,則判斷是否已緩存該交易請求對應的交易預處理結果,若已緩存,則將執行步驟S409;若沒有緩存,則等待鏈下支付系統返回該交易請求對應的交易預處理結果,並執行步驟S409。
步驟S404、支付前置設備將交易請求發送給標記服務商。
步驟S405、標記服務商根據發送方支付標記確定發送方銀行卡帳戶。
步驟S406、標記服務商向鏈下支付系統發送交易預處理請求。
其中,交易預處理請求的內容包括發送方銀行卡帳戶向線下二維碼對應的接收方銀行卡帳戶支付上述支付金額,以及鎖定接收方銀行卡帳戶中上述支付金額。
步驟S407、鏈下支付系統控制發送方銀行卡帳戶向接收方銀行卡帳戶支付上述支付金額,以及鎖定接收方銀行卡帳戶中上述支付金額,獲得交易預處理結果。
步驟S408、鏈下支付系統發送交易預處理結果至支付前置設備。
步驟S409、支付前置設備判斷發送方銀行卡帳戶向接收方銀行卡帳戶支付上述支付金額,以及鎖定接收方銀行卡帳戶中上述支付金額是否成功,若是,則執行步驟S410,否則,執行步驟S418。
步驟S410、支付前置設備發送交易預處理成功消息至區塊鏈。
步驟S411、區塊鏈執行鏈上處理操作,獲得鏈上交易結果。
鏈上處理操作包括基於交易預處理結果對交易請求進行處理,將交易處理結果記入區塊,然後將區塊進行共識確認,在區塊確認後即完成了交易確認事件。
步驟S412、支付前置設備監聽區塊鏈生成的交易請求對應的鏈上交易結果。
步驟S413、判斷鏈上交易結果是否為鏈上交易成功,若是,則執行步驟S414,否則,執行步驟S416。
若監聽到區塊鏈生成交易請求對應的預設數量的區塊,則確定交易請求對應的鏈上交易結果為鏈上交易成功,否則確定交易請求對應的鏈上交易結果為鏈上交易失敗,其中,預設數量是根據區塊鏈中共識演算法或背書策略的配置資訊確定的。
步驟S414、支付前置設備發送第三交易指示消息至鏈下支付系統。
其中,第三交易指示消息用於指示鏈下支付系統解鎖接收方銀行卡帳戶中的上述支付金額。
步驟S415、鏈下支付系統解鎖接收方銀行卡帳戶中的上述支付金額,獲得第三鏈下交易結果。
步驟S416、支付前置設備發送第四交易指示消息至鏈下支付系統。
其中,第四交易指示消息用於指示鏈下支付系統控制接收方銀行卡帳戶向發送方銀行卡帳戶退還上述支付金額。
步驟S417、鏈下支付系統控制接收方銀行卡帳戶向發送方銀行卡帳戶退還上述支付金額,獲得第四鏈下交易結果。
步驟S418、區塊鏈輸出鏈上交易失敗。
本發明實施例中,在進行支付交易時,鏈下支付系統先控制發送方銀行卡帳戶向接收方銀行卡帳戶支付相應的支付金額,以及鎖定接收方銀行卡帳戶中所述支付金額,獲得交易預處理結果。區塊鏈通過支付前置設備獲得交易預處理結果後,基於交易預處理結果執行交易請求的鏈上交易操作,鏈下支付系統執行相應的鏈下交易操作,獲得鏈下交易結果。由於區塊鏈通過智慧合約執行鏈上交易,保證了鏈上交易在一個可信的環境中執行。由於鏈上交易和鏈下交易是交互執行的,因此也保證了鏈下交易的可信度和安全性,避免人為失誤帶來的錯誤交易。
其次,本實施例中,採用支付標記替代交易請求中的銀行卡帳戶,避免了銀行卡帳戶洩露,保證了交易的安全性。同時,採用統一格式的支付標記代替各種銀行卡帳戶資訊,可以提高支付交易中相容性,以及提高管理不同種類交易帳號的靈活性。
為了更好的解釋本發明實施例,下面結合具體的轉帳場景描述本發明實施例提供的一種交易處理的方法,所述方法由區塊鏈、支付前置設備和鏈下支付系統交互執行,設定發送方帳戶是發送方位址,接收方帳戶為接收方位址,如圖5所示,所述方法包括以下步驟:
步驟S501、支付前置設備啟動預言機服務和監聽鏈上區塊確認和交易事件。
步驟S502、區塊鏈直接或通過智慧合約發送加密後的交易請求至支付前置設備。
其中,交易請求中包括發送方位址、發送方位址中的數位人民幣數串、接收方位址,數位人民幣數串包括相應的支付金額。
步驟S503、支付前置設備對交易請求進行解密。
支付前置設備判斷該交易請求包含的鏈上交易標識、合約名稱、調用序號,與歷史交易請求中包含的鏈上交易標識、合約名稱、調用序號是否一致,若不一致,則執行步驟S504。
若一致,則判斷是否已緩存該交易請求對應的交易預處理結果,若已緩存,則將執行步驟S507;若沒有緩存,則等待鏈下支付系統返回該交易請求對應的交易預處理結果,並執行步驟S507。
步驟S504、支付前置設備向鏈下支付系統發送鎖定發送方位址中數位人民幣數串的請求。
步驟S505、鏈下支付系統執行鎖定發送方位址中數位人民幣數串的操作,獲得交易預處理結果。
步驟S506、鏈下支付系統發送交易預處理結果至支付前置設備。
步驟S507、支付前置設備判斷鎖定發送方位址中上述數位人民幣數串的操作是否成功,若是,則執行步驟S508,否則,執行步驟S516。
步驟S508,支付前置設備發送交易預處理成功消息至區塊鏈。
步驟S509、區塊鏈執行鏈上處理操作,獲得鏈上交易結果。
鏈上處理操作包括基於交易預處理結果對交易請求進行處理,將交易處理結果記入區塊,然後將區塊進行共識確認,在區塊確認後即完成了交易確認事件。
步驟S510、支付前置設備監聽區塊鏈生成的交易請求對應的鏈上交易結果。
步驟S511、判斷鏈上交易結果是否為鏈上交易成功,若是,則執行步驟S512,否則,執行步驟S514。
若監聽到區塊鏈生成交易請求對應的預設數量的區塊,則確定交易請求對應的鏈上交易結果為鏈上交易成功,否則確定交易請求對應的鏈上交易結果為鏈上交易失敗,其中,預設數量是根據區塊鏈中共識演算法或背書策略的配置資訊確定的。
步驟S512、支付前置設備發送第五交易指示消息至鏈下支付系統。
其中,第五交易指示消息用於指示鏈下支付系統控制將該數位人民幣數串從發送方位址轉移至接收方位址。
步驟S513、鏈下支付系統控制將該數位人民幣數串從發送方地址轉移至接收方地址,獲得第五鏈下交易結果。
步驟S514、支付前置設備發送第六交易指示消息至鏈下支付系統。
其中,第六交易指示消息用於指示鏈下支付系統解鎖發送方位址中上述數位人民幣數串。
步驟S515、鏈下支付系統解鎖發送方位址中的上述數位人民幣數串,獲得第六鏈下交易結果。
步驟S516、區塊鏈輸出鏈上交易失敗。
本發明實施例中,在進行支付交易時,鏈下支付系統先執行鎖定發送方位址中的數位人民幣數串,獲得交易預處理結果。區塊鏈通過支付前置設備獲得交易預處理結果後,基於交易預處理結果執行交易請求的鏈上交易操作,鏈下支付系統執行相應的鏈下交易操作,獲得鏈下交易結果。由於區塊鏈通過智慧合約執行鏈上交易,保證了鏈上交易在一個可信的環境中執行。由於鏈上交易和鏈下交易是交互執行的,因此也保證了鏈下交易的可信度和安全性,避免人為失誤帶來的錯誤交易。
其次,在進行支付交易時,先鎖定發送方位址中的數位人民幣,根據是否鎖定成功,再進行對應的鏈上交易處理和鏈下交易處理,保證了後續交易的準確性,同時避免了無效處理過程。
最後,由於採用了數位人民幣進行交易,更加有利於構建鏈上交易和鏈下交易的交互系統。同時,在沒有網路的情況下,數位人民幣交易可以直接進行離線支付,擺脫了網路信號不佳場所的限制。
為了更好的解釋本發明實施例,下面結合具體的轉帳場景描述本發明實施例提供的一種交易處理的方法,所述方法由區塊鏈、支付前置設備和鏈下支付系統交互執行,設定發送方帳戶是發送方位址,接收方帳戶是接收方位址,如圖6所示,包括以下步驟:
步驟S601、支付前置設備啟動預言機服務和監聽鏈上區塊確認和交易事件。
步驟S602、區塊鏈直接或通過智慧合約發送加密後的交易請求至支付前置設備。
其中,交易請求中包括發送方位址、發送方位址中的數位人民幣數串、接收方位址,數位人民幣數串包括相應的支付金額。
步驟S603、支付前置設備對交易請求進行解密。
支付前置設備判斷該交易請求包含的鏈上交易標識、合約名稱、調用序號,與歷史交易請求中包含的鏈上交易標識、合約名稱、調用序號是否一致,若不一致,則執行步驟S604。
若一致,則判斷是否已緩存該交易請求對應的交易預處理結果,若已緩存,則將執行步驟S607;若沒有緩存,則等待鏈下支付系統返回該交易請求對應的交易預處理結果,並執行步驟S607。
步驟S604、支付前置設備向鏈下支付系統發送交易預處理請求。
其中,交易預處理請求的內容包括將發送方位址中的數位人民幣數串從發送方地址轉移至接收方地址,以及鎖定接收方位址中該數位人民幣數串。
步驟S605、鏈下支付系統控制將發送方位址中的數位人民幣數串從發送方地址轉移至接收方地址,以及鎖定接收方位址中該數位人民幣數串,獲得交易預處理結果。
步驟S606、鏈下支付系統發送交易預處理結果至支付前置設備。
步驟S607、支付前置設備判斷將發送方位址中的數位人民幣數串從發送方地址轉移至接收方地址,以及鎖定接收方位址中該數位人民幣數串是否成功,若是,則執行步驟S608,否則,執行步驟S616。
步驟S608、支付前置設備發送交易預處理成功消息至區塊鏈。
步驟S609、區塊鏈執行鏈上處理操作,獲得鏈上交易結果。
鏈上處理操作包括基於交易預處理結果對交易請求進行處理,將交易處理結果記入區塊,然後將區塊進行共識確認,在區塊確認後即完成了交易確認事件。
步驟S610、支付前置設備監聽區塊鏈生成的交易請求對應的鏈上交易結果。
步驟S611、判斷鏈上交易結果是否為鏈上交易成功,若是,則執行步驟S612,否則,執行步驟S614。
若監聽到區塊鏈生成交易請求對應的預設數量的區塊,則確定交易請求對應的鏈上交易結果為鏈上交易成功,否則確定交易請求對應的鏈上交易結果為鏈上交易失敗,其中,預設數量是根據區塊鏈中共識演算法或背書策略的配置資訊確定的。
步驟S612、支付前置設備發送第七交易指示消息至鏈下支付系統。
其中,第七交易指示消息用於指示鏈下支付系統解鎖接收方位址中的該數位人民幣數串。
步驟S613、鏈下支付系統解鎖接收方位址中的該數位人民幣數串,獲得第七鏈下交易結果。
步驟S614、支付前置設備發送第八交易指示消息至鏈下支付系統。
其中,第八交易指示消息用於指示鏈下支付系統控制將接收方位址中的該數位人民幣數串轉移至發送方地址。
步驟S615、鏈下支付系統控制將該數位人民幣數串從接收方地址轉移至發送方地址,獲得第八鏈下交易結果。
步驟S616、區塊鏈輸出鏈上交易失敗。
本發明實施例中,由於區塊鏈通過智慧合約執行鏈上交易,保證了鏈上交易在一個可信的環境中執行。由於鏈上交易和鏈下交易是交互執行的,因此也保證了鏈下交易的可信度和安全性,避免人為失誤帶來的錯誤交易。
其次,由於採用了數位人民幣進行交易,更加有利於構建鏈上交易和鏈下交易的交互系統。同時,在沒有網路的情況下,數位人民幣交易可以直接進行離線支付,擺脫了網路信號不佳場所的限制。
基於相同的技術構思,本發明實施例提供了一種交易處理裝置,如圖7所示,該交易處理裝置700包括:
第一接收模組701,用於接收到區塊鏈發送的交易請求時,發送相應的交易預處理請求至鏈下支付系統,以使該鏈下支付系統執行相應的交易預處理操作,獲得交易預處理結果;
第一發送模組702,用於接收該鏈下支付系統發送的交易預處理結果,並將該交易預處理結果發送至該區塊鏈;
第一處理模組703,用於在監聽到該區塊鏈生成該交易請求對應的鏈上交易結果時,發送交易指示消息至該鏈下支付系統,該交易指示消息用於指示該鏈下支付系統執行相應的鏈下處理操作,獲得該交易請求對應的鏈下交易結果,其中,該鏈上交易結果是該區塊鏈基於該交易預處理結果,執行針對該交易請求的鏈上處理操作獲得的。
可選地,該交易請求是由該區塊鏈通過智慧合約調用支付前置設備中的預言機發送的。
可選地,該第一接收模組701具體用於:
接收該區塊鏈發送的加密後的交易請求,其中,該交易請求是該區塊鏈基於支付前置設備的公開金鑰加密的;
對該交易請求進行解密,獲得該交易請求中的交易資訊;
基於該交易資訊,生成交易預處理請求,並將該交易預處理請求發送至該鏈下支付系統。
可選地,該第一接收模組701具體用於:
接收到區塊鏈發送的交易請求時,判斷該交易請求包含的鏈上交易標識、合約名稱、調用序號,與歷史交易請求中包含的鏈上交易標識、合約名稱、調用序號是否一致;
若不一致,則發送相應的交易預處理請求至該鏈下支付系統。
可選地,該第一接收模組701還用於:
若一致,則判斷是否已緩存該交易請求對應的交易預處理結果;
若已緩存,則將已緩存的該交易請求對應的交易預處理結果發送至該區塊鏈;
若沒有緩存,則等待該鏈下支付系統返回該交易請求對應的交易預處理結果。
可選地,該第一處理模組703還用於:
若監聽到該區塊鏈生成該交易請求對應的預設數量的區塊,則確定該交易請求對應的鏈上交易結果為鏈上交易成功,否則確定該交易請求對應的鏈上交易結果為鏈上交易失敗,其中,該預設數量是根據該區塊鏈中共識演算法或背書策略的配置資訊確定的。
可選地,該交易請求至少包括發送方帳戶以及支付金額,該交易預處理請求包括鎖定該發送方帳戶中該支付金額的請求;
該第一處理模組703具體用於:
在監聽到該鏈上交易結果為鏈上交易成功時,向該鏈下支付系統發送第一交易指示消息,該第一交易指示消息用於指示該鏈下支付系統控制該發送方帳戶向該交易請求中的接收方帳戶支付該支付金額,獲得第一鏈下交易結果。
可選地,該第一處理模組703還用於:
在監聽到該鏈上交易結果為鏈上交易失敗時,向該鏈下支付系統發送第二交易指示消息,該第二交易指示消息用於指示該鏈下支付系統解鎖該發送方帳戶中該支付金額,獲得第二鏈下交易結果。
可選地,該交易請求至少包括發送方帳戶、支付金額以及接收方帳戶,該交易預處理請求包括控制該發送方帳戶向該接收方帳戶支付該支付金額,以及鎖定該接收方帳戶中該支付金額的請求;
該第一處理模組703具體用於:
在監聽到該鏈上交易結果為鏈上交易成功時,向該鏈下支付系統發送第三交易指示消息,該第三交易指示消息用於指示該鏈下支付系統解鎖該接收方帳戶中該支付金額,獲得第三鏈下交易結果。
可選地,該第一處理模組703還用於:
在監聽到該鏈上交易結果為鏈上交易失敗時,向該鏈下支付系統發送第四交易指示消息,該第四交易指示消息用於指示該鏈下支付系統控制該接收方帳戶向該發送方帳戶退還該支付金額,獲得第四鏈下交易結果。
可選地,該發送方帳戶是使用者終端通過支付前置設備從標記服務商申請的支付標記。
可選地,該交易請求包括發送方位址、該發送方位址對應的數位人民幣數串、接收方位址,該發送方地址和該接收方位址是使用者終端通過數位貨幣錢包獲得的,該交易預處理請求包括鎖定該數位人民幣數串的請求;
該第一處理模組703具體用於:
在監聽到該鏈上交易結果為鏈上交易成功時,向該鏈下支付系統發送第五交易指示消息,該第五交易指示消息用於指示該鏈下支付系統控制將該數位人民幣數串從該發送方地址轉移至該接收方地址,獲得第五鏈下交易結果。
該第一處理模組703還用於:
在監聽到該鏈上交易結果為鏈上交易失敗時,向該鏈下支付系統發送第六交易指示消息,該第六交易指示消息用於指示該鏈下支付系統解鎖該數位人民幣數串,獲得第六鏈下交易結果。
基於相同的技術構思,本發明實施例提供了一種交易處理裝置,如圖8所示,該裝置交易處理裝置800包括:
第二接收模組801,用於接收支付前置設備發送的交易預處理請求,並執行相應的交易預處理操作,獲得交易預處理結果,該交易預處理請求是該支付前置設備接收到區塊鏈發送的交易請求後發送給鏈下支付系統的;
第二發送模組802,用於發送該交易預處理結果至該支付前置設備,以使該支付前置設備將該交易預處理結果發送至該區塊鏈;
第二處理模組803,用於接收該支付前置設備發送的交易指示消息,並執行相應的鏈下處理操作,獲得該交易請求對應的鏈下交易結果,該交易指示消息是由該支付前置設備在監聽到該區塊鏈生成該交易請求對應的鏈上交易結果時發送給該鏈下支付系統的,該鏈上交易結果是該區塊鏈基於該交易預處理結果,執行針對該交易請求的鏈上處理操作獲得的。
可選地,該交易請求至少包括發送方帳戶以及支付金額,該交易預處理請求包括鎖定該發送方帳戶中該支付金額的請求;
該第二接收模組801具體用於:
接收支付前置設備發送的交易預處理請求,並鎖定該發送方帳戶中該支付金額。
可選地,該第二處理模組803具體用於:
接收該支付前置設備發送的第一交易指示消息,控制該發送方帳戶向該交易請求中的接收方帳戶支付該支付金額,獲得第一鏈下交易結果;
或者,接收該支付前置設備發送的第二交易指示消息,解鎖該發送方帳戶中該支付金額,獲得第二鏈下交易結果。
可選地,該交易請求至少包括發送方帳戶、支付金額以及接收方帳戶,該交易預處理請求包括控制該發送方帳戶向該接收方帳戶支付該支付金額,以及鎖定該接收方帳戶中該支付金額的請求;
該第二接收模組801具體用於:
接收支付前置設備發送的交易預處理請求,控制該發送方帳戶向該接收方帳戶支付該支付金額,並鎖定該接收方帳戶中該支付金額。
可選地,該第二處理模組803具體用於:
接收該支付前置設備發送的第三交易指示消息,解鎖該接收方帳戶中該支付金額,獲得第三鏈下交易結果;
或者,接收該支付前置設備發送的第四交易指示消息,控制該接收方帳戶向該發送方帳戶退還該支付金額,獲得第四鏈下交易結果。
可選地,該交易請求包括發送方位址、該發送方位址對應的數位人民幣數串、接收方位址,該發送方地址和該接收方位址是使用者終端通過數位貨幣錢包獲得的,該交易預處理請求包括鎖定該數位人民幣數串的請求;
該第二接收模組801具體用於:
接收支付前置設備發送的交易預處理請求,並鎖定該數字人民幣數串。
可選地,該第二處理模組803具體用於:
接收該支付前置設備發送的第五交易指示消息,控制該數位人民幣數串從該發送方地址轉移至該接收方地址,獲得第五鏈下交易結果;
或者,接收該支付前置設備發送的第六交易指示消息,解鎖該數字人民幣數串,獲得第六鏈下交易結果。
基於相同的技術構思,本發明實施例提供了一種電腦設備,電腦設備可以是終端或伺服器,如圖9所示,包括至少一個處理器901,以及與至少一個處理器連接的記憶體902,本發明實施例中不限定處理器901與記憶體902之間的具體連接介質,圖9中處理器901和記憶體902之間通過匯流排連接為例。匯流排可以分為位址匯流排、資料匯流排、控制匯流排等。
在本發明實施例中,記憶體902存儲有可被至少一個處理器901執行的指令,至少一個處理器901通過執行記憶體902存儲的指令,可以執行上述交易處理方法中所包括的步驟。
其中,處理器901是電腦設備的控制中心,可以利用各種介面和線路連接電腦設備的各個部分,通過運行或執行存儲在記憶體902內的指令以及調用存儲在記憶體902內的資料,從而進行交易處理。可選的,處理器901可包括一個或多個處理單元,處理器901可集成應用處理器和調製解調處理器,其中,應用處理器主要處理作業系統、使用者介面和應用程式等,調製解調處理器主要處理無線通訊。可以理解的是,上述調製解調處理器也可以不集成到處理器901中。在一些實施例中,處理器901和記憶體902可以在同一晶片上實現,在一些實施例中,它們也可以在獨立的晶片上分別實現。
處理器901可以是通用處理器,例如中央處理器(CPU)、數位訊號處理器、專用積體電路(Application Specific Integrated Circuit,ASIC)、現場可程式設計閘陣列或者其他可程式設計邏輯器件、分立門或者電晶體邏輯器件、分立硬體元件,可以實現或者執行本發明實施例中公開的各方法、步驟及邏輯框圖。通用處理器可以是微處理器或者任何常規的處理器等。結合本發明實施例所公開的方法的步驟可以直接體現為硬體處理器執行完成,或者用處理器中的硬體及軟體模組組合執行完成。
記憶體902作為一種非揮發性電腦可讀存儲介質,可用於存儲非揮發性軟體程式、非揮發性電腦可執行程式以及模組。記憶體902可以包括至少一種類型的存儲介質,例如可以包括快閃記憶體、硬碟、多媒體卡、卡型記憶體、隨機訪問記憶體(Random Access Memory,RAM)、靜態隨機訪問記憶體(Static Random Access Memory,SRAM)、可程式設計唯讀記憶體(Programmable Read Only Memory,PROM)、唯讀記憶體(Read Only Memory,ROM)、帶電可擦除可程式設計唯讀記憶體(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性記憶體、磁片、光碟等等。記憶體902是能夠用於攜帶或存儲具有指令或資料結構形式的期望的程式碼並能夠由電腦存取的任何其他介質,但不限於此。本發明實施例中的記憶體902還可以是電路或者其它任意能夠實現存儲功能的裝置,用於存儲程式指令和/或資料。
基於同一發明構思,本發明實施例提供了一種電腦可讀存儲介質,其存儲有可由電腦設備執行的電腦程式,當程式在電腦設備上運行時,使得電腦設備執行上述交易處理方法的步驟。
基於同一發明構思,本發明實施例提供了一種電腦程式產品,所述電腦程式產品包括存儲在電腦可讀存儲介質上的電腦程式,所述電腦程式包括程式指令,當所述程式指令被電腦執行時,使所述電腦執行上述交易處理方法的步驟。
本領域內的具通常知識者應明白,本發明的實施例可提供為方法、系統、或電腦程式產品。因此,本發明可採用完全硬體實施例、完全軟體實施例、或結合軟體和硬體方面的實施例的形式。而且,本發明可採用在一個或多個其中包含有電腦可用程式碼的電腦可用存儲介質(包括但不限於磁碟記憶體、CD-ROM、光學記憶體等)上實施的電腦程式產品的形式。
這些電腦程式指令也可裝載到電腦或其他可程式設計資料處理設備上,使得在電腦或其他可程式設計設備上執行一系列操作步驟以產生電腦實現的處理,從而在電腦或其他可程式設計設備上執行的指令提供用於實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
以上僅為本發明之較佳實施例,並非用來限定本發明之實施範圍,如果不脫離本發明之精神和範圍,對本發明進行修改或者等同替換,均應涵蓋在本發明申請專利範圍的保護範圍當中。
101:終端設備
102:區塊鏈
103:支付前置設備
104:鏈下支付系統
700:交易處理裝置
701:第一接收模組
702:第一發送模組
703:第一處理模組
800:交易處理裝置
801:第二接收模組
802:第二發送模組
803:第二處理模組
901:處理器
902:記憶體
201-209:步驟
301-316:步驟
401-418:步驟
501-516:步驟
601-616:步驟
圖1是本發明實施例提供的資訊處理方法的流程圖之一;
圖1為本發明實施例提供的一種系統架構示意圖;
圖2為本發明實施例提供的一種交易處理方法的流程示意圖;
圖3為本發明實施例提供的一種交易處理方法的流程示意圖;
圖4為本發明實施例提供的一種交易處理方法的流程示意圖;
圖5為本發明實施例提供的一種交易處理方法的流程示意圖;
圖6為本發明實施例提供的一種交易處理方法的流程示意圖;
圖7為本發明實施例提供的一種交易處理裝置的結構示意圖;
圖8為本發明實施例提供的一種交易處理裝置的結構示意圖;
圖9為本發明實施例提供的一種電腦設備的結構示意圖。
201-209:步驟
Claims (25)
- 一種交易處理方法,應用於支付前置設備,該支付前置設備位於區塊鏈和鏈下支付系統之間,其特徵在於,包括:接收到該區塊鏈發送的交易請求時,發送相應的交易預處理請求至該鏈下支付系統,以使該鏈下支付系統執行相應的交易預處理操作,獲得交易預處理結果;該交易請求中至少包括發送方帳戶、接收方帳戶以及支付金額;該交易預處理請求為鎖定該發送方帳戶中該支付金額的請求,或者為控制該發送方帳戶向該接收方帳戶支付該支付金額,以及鎖定該接收方帳戶中該支付金額的請求;接收該鏈下支付系統發送的交易預處理結果,並將該交易預處理結果發送至該區塊鏈;在監聽到該區塊鏈生成該交易請求對應的鏈上交易結果時,發送交易指示消息至該鏈下支付系統,該交易指示消息用於指示該鏈下支付系統執行相應的鏈下處理操作,獲得該交易請求對應的鏈下交易結果,其中,該鏈上交易結果是該區塊鏈基於該交易預處理結果,執行針對該交易請求的鏈上處理操作獲得的。
- 如請求項1所述之交易處理方法,其特徵在於,該交易請求是由該區塊鏈通過智慧合約調用支付前置設備中的預言機發送的。
- 如請求項1所述之交易處理方法,其特徵在於,該接收到區塊鏈發送的交易請求時,發送相應的交易預處理請求至鏈下支付系統,包括: 接收該區塊鏈發送的加密後的交易請求,其中,該交易請求是該區塊鏈基於支付前置設備的公開金鑰加密的;對該交易請求進行解密,獲得該交易請求中的交易資訊;基於該交易資訊,生成交易預處理請求,並將該交易預處理請求發送至該鏈下支付系統。
- 如請求項1所述之交易處理方法,其特徵在於,該接收到區塊鏈發送的交易請求時,發送相應的交易預處理請求至鏈下支付系統,包括:接收到區塊鏈發送的交易請求時,判斷該交易請求包含的鏈上交易標識、合約名稱、調用序號,與歷史交易請求中包含的鏈上交易標識、合約名稱、調用序號是否一致;若不一致,則發送相應的交易預處理請求至該鏈下支付系統。
- 如請求項4所述之交易處理方法,其特徵在於,還包括:若一致,則判斷是否已緩存該交易請求對應的交易預處理結果;若已緩存,則將已緩存的該交易請求對應的交易預處理結果發送至該區塊鏈;若沒有緩存,則等待該鏈下支付系統返回該交易請求對應的交易預處理結果。
- 如請求項1所述之交易處理方法,其特徵在於,該發送交易指示消息至該鏈下支付系統之前,還包括:若監聽到該區塊鏈生成該交易請求對應的預設數量的區塊,則確定該交易請求對應的鏈上交易結果為鏈上交易成功,否則確定該 交易請求對應的鏈上交易結果為鏈上交易失敗,其中,該預設數量是根據該區塊鏈中共識演算法或背書策略的配置資訊確定的。
- 如請求項6所述之交易處理方法,其特徵在於,該在監聽到該區塊鏈生成該交易請求對應的鏈上交易結果時,發送交易指示消息至該鏈下支付系統,該交易指示消息用於指示該鏈下支付系統執行相應的鏈下處理操作,獲得該交易請求對應的鏈下交易結果,包括:在監聽到該鏈上交易結果為鏈上交易成功時,向該鏈下支付系統發送第一交易指示消息,該第一交易指示消息用於指示該鏈下支付系統控制該發送方帳戶向該交易請求中的接收方帳戶支付該支付金額,獲得第一鏈下交易結果。
- 如請求項7所述之交易處理方法,其特徵在於,還包括:在監聽到該鏈上交易結果為鏈上交易失敗時,向該鏈下支付系統發送第二交易指示消息,該第二交易指示消息用於指示該鏈下支付系統解鎖該發送方帳戶中該支付金額,獲得第二鏈下交易結果。
- 如請求項6所述之交易處理方法,其特徵在於,該在監聽到該區塊鏈生成該交易請求對應的鏈上交易結果時,發送交易指示消息至該鏈下支付系統,該交易指示消息用於指示該鏈下支付系統執行相應的鏈下處理操作,獲得該交易請求對應的鏈下交易結果,包括:在監聽到該鏈上交易結果為鏈上交易成功時,向該鏈下支付系統 發送第三交易指示消息,該第三交易指示消息用於指示該鏈下支付系統解鎖該接收方帳戶中該支付金額,獲得第三鏈下交易結果。
- 如請求項9所述之交易處理方法,其特徵在於,還包括:在監聽到該鏈上交易結果為鏈上交易失敗時,向該鏈下支付系統發送第四交易指示消息,該第四交易指示消息用於指示該鏈下支付系統控制該接收方帳戶向該發送方帳戶退還該支付金額,獲得第四鏈下交易結果。
- 如請求項7或9所述之交易處理方法,其特徵在於,該發送方帳戶是使用者終端通過支付前置設備從標記服務商申請的支付標記。
- 如請求項1所述之交易處理方法,其特徵在於,該交易請求包括發送方位址、該發送方位址對應的數位人民幣數串、接收方位址,該發送方地址和該接收方位址是使用者終端通過數位貨幣錢包獲得的,該交易預處理請求包括鎖定該數位人民幣數串的請求;該在監聽到該區塊鏈生成該交易請求對應的鏈上交易結果時,發送交易指示消息至該鏈下支付系統,該交易指示消息用於指示該鏈下支付系統執行相應的鏈下處理操作,獲得該交易請求對應的鏈下交易結果,包括:在監聽到該鏈上交易結果為鏈上交易成功時,向該鏈下支付系統發送第五交易指示消息,該第五交易指示消息用於指示該鏈下支 付系統控制將該數位人民幣數串從該發送方地址轉移至該接收方地址,獲得第五鏈下交易結果。
- 如請求項12所述之交易處理方法,其特徵在於,還包括:在監聽到該鏈上交易結果為鏈上交易失敗時,向該鏈下支付系統發送第六交易指示消息,該第六交易指示消息用於指示該鏈下支付系統解鎖該數位人民幣數串,獲得第六鏈下交易結果。
- 一種交易處理方法,應用於鏈下支付系統,其特徵在於,包括:接收支付前置設備發送的交易預處理請求,並執行相應的交易預處理操作,獲得交易預處理結果,該交易預處理請求是該支付前置設備接收到區塊鏈發送的交易請求後發送給該鏈下支付系統的;該交易請求中至少包括發送方帳戶、接收方帳戶以及支付金額;該交易預處理請求為鎖定該發送方帳戶中該支付金額的請求,或者為控制該發送方帳戶向該接收方帳戶支付該支付金額,以及鎖定該接收方帳戶中該支付金額的請求;發送該交易預處理結果至該支付前置設備,以使該支付前置設備將該交易預處理結果發送至該區塊鏈;接收該支付前置設備發送的交易指示消息,並執行相應的鏈下處理操作,獲得該交易請求對應的鏈下交易結果,該交易指示消息是由該支付前置設備在監聽到該區塊鏈生成該交易請求對應的鏈上交易結果時發送給該鏈下支付系統的,該鏈上交易結果是該區塊鏈基於該交易預處理結果,執行針對該交易請求的鏈上處理操 作獲得的。
- 如請求項14所述之交易處理方法,其特徵在於,該接收支付前置設備發送的交易預處理請求,並執行相應的交易預處理操作,獲得交易預處理結果,包括:接收支付前置設備發送的交易預處理請求,並鎖定該發送方帳戶中該支付金額。
- 如請求項15所述之交易處理方法,其特徵在於,該接收該支付前置設備發送的交易指示消息,並執行相應的鏈下處理操作,獲得該交易請求對應的鏈下交易結果,包括:接收該支付前置設備發送的第一交易指示消息,控制該發送方帳戶向該交易請求中的接收方帳戶支付該支付金額,獲得第一鏈下交易結果;或者,接收該支付前置設備發送的第二交易指示消息,解鎖該發送方帳戶中該支付金額,獲得第二鏈下交易結果。
- 如請求項14所述之交易處理方法,其特徵在於,該接收支付前置設備發送的交易預處理請求,並執行相應的交易預處理操作,獲得交易預處理結果,包括:接收支付前置設備發送的交易預處理請求,控制該發送方帳戶向該接收方帳戶支付該支付金額,並鎖定該接收方帳戶中該支付金額。
- 如請求項17所述之交易處理方法,其特徵在於,該接收該支付前置設備發送的交易指示消息,並執行相應的鏈下處理操作,獲 得該交易請求對應的鏈下交易結果,包括:接收該支付前置設備發送的第三交易指示消息,解鎖該接收方帳戶中該支付金額,獲得第三鏈下交易結果;或者,接收該支付前置設備發送的第四交易指示消息,控制該接收方帳戶向該發送方帳戶退還該支付金額,獲得第四鏈下交易結果。
- 如請求項14所述之交易處理方法,其特徵在於,該交易請求包括發送方位址、該發送方位址對應的數位人民幣數串、接收方位址,該發送方地址和該接收方位址是使用者終端通過數位貨幣錢包獲得的,該交易預處理請求包括鎖定該數位人民幣數串的請求;該接收支付前置設備發送的交易預處理請求,並執行相應的交易預處理操作,獲得交易預處理結果,包括:接收支付前置設備發送的交易預處理請求,並鎖定該數字人民幣數串。
- 如請求項19所述之交易處理方法,其特徵在於,該接收該支付前置設備發送的交易指示消息,並執行相應的鏈下處理操作,獲得該交易請求對應的鏈下交易結果,包括:接收該支付前置設備發送的第五交易指示消息,控制該數位人民幣數串從該發送方地址轉移至該接收方地址,獲得第五鏈下交易結果;或者,接收該支付前置設備發送的第六交易指示消息,解鎖該數 字人民幣數串,獲得第六鏈下交易結果。
- 一種交易處理裝置,其特徵在於,包括:第一接收模組,用於接收到區塊鏈發送的交易請求時,發送相應的交易預處理請求至鏈下支付系統,以使該鏈下支付系統執行相應的交易預處理操作,獲得交易預處理結果;該交易請求中至少包括發送方帳戶、接收方帳戶以及支付金額;該交易預處理請求為鎖定該發送方帳戶中該支付金額的請求,或者為控制該發送方帳戶向該接收方帳戶支付該支付金額,以及鎖定該接收方帳戶中該支付金額的請求;第一發送模組,用於接收該鏈下支付系統發送的交易預處理結果,並將該交易預處理結果發送至該區塊鏈;第一處理模組,用於在監聽到該區塊鏈生成該交易請求對應的鏈上交易結果時,發送交易指示消息至該鏈下支付系統,該交易指示消息用於指示該鏈下支付系統執行相應的鏈下處理操作,獲得該交易請求對應的鏈下交易結果,其中,該鏈上交易結果是該區塊鏈基於該交易預處理結果,執行針對該交易請求的鏈上處理操作獲得的。
- 一種交易處理裝置,其特徵在於,包括:第二接收模組,用於接收支付前置設備發送的交易預處理請求,並執行相應的交易預處理操作,獲得交易預處理結果,該交易預處理請求是該支付前置設備接收到區塊鏈發送的交易請求後發送給鏈下支付系統的; 該交易請求中至少包括發送方帳戶、接收方帳戶以及支付金額;該交易預處理請求為鎖定該發送方帳戶中該支付金額的請求,或者為控制該發送方帳戶向該接收方帳戶支付該支付金額,以及鎖定該接收方帳戶中該支付金額的請求;第二發送模組,用於發送該交易預處理結果至該支付前置設備,以使該支付前置設備將該交易預處理結果發送至該區塊鏈;第二處理模組,用於接收該支付前置設備發送的交易指示消息,並執行相應的鏈下處理操作,獲得該交易請求對應的鏈下交易結果,該交易指示消息是由該支付前置設備在監聽到該區塊鏈生成該交易請求對應的鏈上交易結果時發送給該鏈下支付系統的,該鏈上交易結果是該區塊鏈基於該交易預處理結果,執行針對該交易請求的鏈上處理操作獲得的。
- 一種電腦設備,包括記憶體、處理器及存儲在記憶體上並可在處理器上運行的電腦程式,其特徵在於,該處理器執行該程式時實現如請求項1至20中任一項所述之交易處理方法。
- 一種電腦可讀存儲介質,其特徵在於,其存儲有可由電腦設備執行的電腦程式,當該程式在電腦設備上運行時,使得該電腦設備執行請求項1至20中任一項所述之交易處理方法。
- 一種電腦程式產品,其特徵在於,該電腦程式產品包括存儲在電腦可讀存儲介質上的電腦程式,該電腦程式包括程式指令,當該程式指令被電腦設備執行時,使該電腦設備執行請求項1至20中任一項所述之交易處理方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110994332.6A CN113762963A (zh) | 2021-08-27 | 2021-08-27 | 一种交易处理方法、装置、设备及存储介质 |
CN202110994332.6 | 2021-08-27 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202309820A TW202309820A (zh) | 2023-03-01 |
TWI816329B true TWI816329B (zh) | 2023-09-21 |
Family
ID=78791501
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW111109358A TWI816329B (zh) | 2021-08-27 | 2022-03-15 | 一種交易處理方法、裝置、設備及存儲介質 |
Country Status (3)
Country | Link |
---|---|
CN (1) | CN113762963A (zh) |
TW (1) | TWI816329B (zh) |
WO (1) | WO2023024453A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113762963A (zh) * | 2021-08-27 | 2021-12-07 | ***股份有限公司 | 一种交易处理方法、装置、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190188657A1 (en) * | 2017-12-19 | 2019-06-20 | Mastercard International Incorporated | Method and system for outside guarantees for a blockchain transaction |
CN111105220A (zh) * | 2019-10-14 | 2020-05-05 | 杭州复杂美科技有限公司 | 一种数字货币支付方法、***、设备及存储介质 |
CN111612453A (zh) * | 2019-02-22 | 2020-09-01 | 北京趣块远扬科技有限公司 | 基于区块链的去中心化交易方法、装置及电子设备 |
TW202046208A (zh) * | 2019-06-12 | 2020-12-16 | 開曼群島商創新先進技術有限公司 | 在區塊鏈中解鎖帳戶的方法和裝置 |
CN112241884A (zh) * | 2020-09-21 | 2021-01-19 | 西安电子科技大学 | 一种基于联盟链的链下安全支付方法、***、介质及设备 |
CN108734574B (zh) * | 2017-04-19 | 2021-07-23 | 中思博安科技(北京)有限公司 | 一种区块链的跨链操作方法及区块链管理*** |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3568794B1 (fr) * | 2017-01-16 | 2024-03-13 | Enrico Maim | Procédés et systèmes pour l'exécution de contrats intelligents dans des environnements sécurisés |
CN108665253A (zh) * | 2018-05-18 | 2018-10-16 | 百度在线网络技术(北京)有限公司 | 一种区块链网络的数据处理方法、装置、设备及存储介质 |
CN109409877B (zh) * | 2018-10-09 | 2020-12-04 | 北京网录科技有限公司 | 基于htlc技术的区块链跨链价值交互方法 |
CN109409885A (zh) * | 2018-10-29 | 2019-03-01 | 深圳声笑科技有限公司 | 区块链上的跨链交易方法、装置及存储介质 |
US11522690B2 (en) * | 2019-06-07 | 2022-12-06 | Bengala Technologies, Llc | Supply chain management system |
CN111145023A (zh) * | 2019-12-17 | 2020-05-12 | 上海交通大学 | 基于可信预言机的跨链交换方法、***及介质 |
CN112700242A (zh) * | 2020-12-28 | 2021-04-23 | 山东浪潮质量链科技有限公司 | 一种区块链的敏感信息前置检测的方法、设备及介质 |
CN112767163B (zh) * | 2021-01-22 | 2022-11-22 | 支付宝(杭州)信息技术有限公司 | 基于区块链的数字商品交易方法和装置 |
CN113139808A (zh) * | 2021-04-15 | 2021-07-20 | 张莹 | 基于预言机的跨链资产交易方法、设备及存储介质 |
CN113762963A (zh) * | 2021-08-27 | 2021-12-07 | ***股份有限公司 | 一种交易处理方法、装置、设备及存储介质 |
CN115392920A (zh) * | 2022-09-01 | 2022-11-25 | 杭州复杂美科技有限公司 | 基于预言机的验证方法、计算机设备和存储介质 |
-
2021
- 2021-08-27 CN CN202110994332.6A patent/CN113762963A/zh active Pending
-
2022
- 2022-02-18 WO PCT/CN2022/076930 patent/WO2023024453A1/zh unknown
- 2022-03-15 TW TW111109358A patent/TWI816329B/zh active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108734574B (zh) * | 2017-04-19 | 2021-07-23 | 中思博安科技(北京)有限公司 | 一种区块链的跨链操作方法及区块链管理*** |
US20190188657A1 (en) * | 2017-12-19 | 2019-06-20 | Mastercard International Incorporated | Method and system for outside guarantees for a blockchain transaction |
CN111612453A (zh) * | 2019-02-22 | 2020-09-01 | 北京趣块远扬科技有限公司 | 基于区块链的去中心化交易方法、装置及电子设备 |
TW202046208A (zh) * | 2019-06-12 | 2020-12-16 | 開曼群島商創新先進技術有限公司 | 在區塊鏈中解鎖帳戶的方法和裝置 |
CN111105220A (zh) * | 2019-10-14 | 2020-05-05 | 杭州复杂美科技有限公司 | 一种数字货币支付方法、***、设备及存储介质 |
CN112241884A (zh) * | 2020-09-21 | 2021-01-19 | 西安电子科技大学 | 一种基于联盟链的链下安全支付方法、***、介质及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113762963A (zh) | 2021-12-07 |
TW202309820A (zh) | 2023-03-01 |
WO2023024453A1 (zh) | 2023-03-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11899629B2 (en) | Decentralized database associating public keys and communications addresses | |
CN111448565B (zh) | 基于去中心化标识的数据授权 | |
US11620642B2 (en) | Digital contracts in blockchain environments | |
CN109219940B (zh) | 私有节点以及私有节点中的处理方法 | |
CA3101638C (en) | Telecommunication system and method for settling session transactions | |
CN109314643B (zh) | 事务处理装置以及事务处理方法 | |
CN109313763B (zh) | 层次型网络***以及用于层次型网络***的节点 | |
EP3396612A1 (en) | Method and system for creating a user identity | |
JP2019160316A (ja) | ブロックチェーンのためのリソースの公平性のためのシステム、方法、およびコンピュータ・プログラム | |
JP2022520656A (ja) | ブロックチェーンネットワークを介した移転を実施するためのコンピュータで実施されるシステムおよび方法 | |
AU2016288644A1 (en) | Systems and methods of secure provenance for distributed transaction databases | |
US11195177B1 (en) | Distributed ledger systems for tracking recurring transaction authorizations | |
CN111418184A (zh) | 基于区块链的可信保函 | |
US20220172198A1 (en) | Real-time blockchain settlement network | |
CN111433799A (zh) | 基于区块链的可信保函 | |
TWI816329B (zh) | 一種交易處理方法、裝置、設備及存儲介質 | |
US20200104228A1 (en) | Asynchronous self-proving transactions | |
WO2019143816A1 (en) | Systems and methods of securing sensitive data | |
US11677728B2 (en) | Secure authorization and transmission of data between trustless actors | |
US11893553B1 (en) | Systems and methods of exchanging digital assets using a public key cryptography (PKC) framework | |
Pandey et al. | Blockchain Architecture and Policy for Transforming Healthcare Industry | |
WO2023183494A1 (en) | Integrated platform for digital asset registration, tracking and validation | |
CN110610426A (zh) | 通过链上数字货币结算的链上资产质押融资***和方法 | |
KR20200030883A (ko) | 암호화폐의 거래장치 및 그 방법 |