TW202004626A - 分散式金流稽核方法、裝置及系統 - Google Patents
分散式金流稽核方法、裝置及系統 Download PDFInfo
- Publication number
- TW202004626A TW202004626A TW107117106A TW107117106A TW202004626A TW 202004626 A TW202004626 A TW 202004626A TW 107117106 A TW107117106 A TW 107117106A TW 107117106 A TW107117106 A TW 107117106A TW 202004626 A TW202004626 A TW 202004626A
- Authority
- TW
- Taiwan
- Prior art keywords
- intermediary
- user
- tree
- index
- transaction
- Prior art date
Links
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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/02—Banking, e.g. interest calculation or account maintenance
-
- 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/04—Payment circuits
- G06Q20/06—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
-
- 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/381—Currency conversion
-
- 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
-
- 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/3825—Use of electronic signatures
-
- 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
-
- 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Engineering & Computer Science (AREA)
- Finance (AREA)
- Physics & Mathematics (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Technology Law (AREA)
- Computer Security & Cryptography (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本發明係一種分散式金流稽核方法、裝置及系統,該分散式金流稽核方法包括提供相關於使用者且儲存為第一索引模克樹的實體通貨兌換憑據或虛擬通貨之餘額資訊及相關於該餘額資訊且儲存為第二索引模克樹之交易的稽核資訊;以及該使用者比對該餘額資訊與該稽核資訊。該分散式金流稽核方法更包括該使用者與該中介者之間的溝通協定、該些使用者之間的證據協定及該第一索引模克樹與該第二索引模克樹之間所具有各階段完成時的清算協定。本發明能解決現有區塊鏈交易成本過高、公信力不佳及低效率等問題,並能支援實體通貨兌換憑據或虛擬通貨的一般性微支付。
Description
本發明是關於交易稽核之領域,更特定而言是關於分散式金流稽核方法、裝置及系統。
在先前技術之區塊鏈實行中,由於單一筆金流交易之稽核資訊係以區塊鏈的礦工將交易儲存於區塊鏈中,現今公有區塊鏈的交易頻寬過低(每秒不超過25個)、同時因為區塊鏈的貨幣價值上漲,每筆金流交易的手續費成本過高。因此使用區塊鏈來進行一般性的微支付是不可行的。
所以一般採用區塊鏈下的交易,以加快金流交易的速度及降低交易成本。由於代理人負責向使用者收費,並紀錄及統計帳本,於每期間提供一對帳紀錄給權利人,告知本期間內,其交易紀錄,及對應之權利金等。惟,上述帳本係由代理人所紀錄及維護,權利人及/或使用者無從稽核其真實性。舉例而言,代理人可能非因故意,但系統有瑕疵而導致紀錄上有短缺或其他錯誤。亦或,代理人可能出於故意,刻意偽造或變造紀錄以減少應給付權利人之權利金。甚者,代理人可能宣稱某些下載量係不肖使用者利用破解等不正在權利人及/或使用者無從稽核其帳本真實性之下,除可能因此有損權利人及/或使用者之權益外,甚至可能降低權利人及/或使用者授權代理人代理交易之意願,對區塊鏈交易之發展亦非益事。
有鑑於此,本發明提出一種分散式金流稽核方法、裝置及系統,以解決先前技術之區塊鏈實行中種種缺失,且能降低交易成本、提升交易公信力並達成低負擔及高效率,且能支援實體通貨兌換憑據或虛擬通貨的一般性微支付。
本發明提供一種分散式金流稽核方法,其包括提供相關於使用者且儲存為第一索引模克樹的實體通貨兌換憑據或虛擬通貨之餘額資訊及相關於該餘額資訊且儲存為第二索引模克樹之交易的稽核資訊;以及該使用者比對該餘額資訊與該稽核資訊。
本發明之分散式金流稽核方法,其中,該稽核資訊係至少對應一合約。
本發明之分散式金流稽核方法,其中,該使用者係與中介者以該合約而交易,且該中介者於該交易後更新該第一索引模克樹及該第二索引模克樹,於該使用者比對該餘額資訊與該稽核資訊異常時,產生證據資訊予該合約。
本發明之分散式金流稽核方法,其中,該使用者與該中介者之間具有溝通協定,且在該使用者之數目為複數個時,該些使用者之間具有證據協定,在該交易之數目為複數個時,該中介者以一部分數目之該些交易作為一階段而更新該第一索引模克樹及該第二索引模克樹,且至少該第一索引模克樹與該第二索引模克樹之間具有各該階段完成時的清算協定。
本發明之分散式金流稽核方法,其中,該使用者與該中介者之間具有溝通協定,且在該使用者之數目為複數個時,該些使用者之間具有證據協定,在該交易之數目為複數個時,該中介者以一部分數目之該些交易作為一階段而更新該第一索引模克樹及該第二索引模克樹,且至少該第一索引模克樹與該第二索引模克樹之間具有各該階段完成時的清算協定。
本發明之分散式金流稽核方法,其中,該合約包含該中介者之抵押、該使用者之實體通貨兌換憑據或虛擬通貨、該使用者之實體通貨兌換憑據或虛擬通貨之儲金記錄、該合約與該第一索引模克樹及該第二索引模克樹之間的金流記錄、該些階段之序號、該第一索引模克樹及該第二索引模克樹之該些階段的雜湊值、以及該合約之函式。
本發明之分散式金流稽核方法,其中,該合約之函式包含將該使用者之實體通貨兌換憑據或該虛擬通貨存到該合約中的函式、將該使用者於該合約中的實體通貨兌換憑據或虛擬通貨轉移的函式、將該使用者於該合約中的實體通貨兌換憑據或虛擬通貨轉移至該第一索引模克樹的函式、將該第一索引模克樹之實體通貨兌換憑據或虛擬通貨的至少部分餘額轉移至該合約中的函式、結束一該階段並進行清算的函式、以及產生該證據資訊的函式。
本發明之分散式金流稽核方法,其中,該溝通協定包含轉帳交易、入金交易及出金交易。
本發明之分散式金流稽核方法,其中,該轉帳交易之步驟包含:該使用者送給該中介者TRmit
= ((LSN, Remittance, Ui, Uj, X, 階段序號), SIGPri(Ui)
),LSN為該使用者產生的一不重複的亂數,SIGPri(Ui)
為該使用者所簽署之訊息本體的電子簽章;該中介者將該第一索引模克樹中的不同使用者(Ui,Uj)之該實體通貨兌換憑據或虛擬通貨的餘額修改,假定Ui及Uj之該實體通貨兌換憑據或虛擬通貨的餘額於轉帳後分別為p,q;該中介者以TACK
=(( TRmit
, p, q, GSN), SIGPri (Agent)
)回覆該使用者Ui, GSN為該中介者產生的一個整數,由0開始,每次處理一該使用者的交易後都會增加1予GSN,SIGPri( Agent)
為該中介者所簽署之訊息本體的電子簽章;以及該中介者將TACK
存到該第二索引模克樹。
本發明之分散式金流稽核方法,其中,該入金交易之步驟包含:該使用者(Ui)送給該中介者TDeposit
= ((LSN, Deposit, X, 階段序號), SIGPri (Ui)
), LSN為該使用者產生的一不重複的亂數,SIGPri(Ui)
為該使用者所簽署之訊息本體的電子簽章;該中介者將該第一索引模克樹中的使用者餘額修改,假定該使用者之實體通貨兌換憑據或虛擬通貨的餘額於轉帳後為p;該中介者令該合約中的Deposit_token_to_sidechain()執行,Deposit_token_to_sidechain()將該合約中的Ui.balance減去X,同時將該金流記錄增加一筆記錄:(Deposit, Ui, X, 階段序號, GSN);該中介者以TACK
=(( TDepost
, p, GSN), SIGPri(Agent)
))回覆該使用者,GSN為該中介者產生的一由0開始之整數,每次處理一該使用者的交易後都會增加1予GSN,SIGPri( Agent)
為該中介者所簽署之訊息本體的電子簽章;以及該中介者將TACK
存到該第二索引模克樹。
本發明之分散式金流稽核方法,其中,該出金交易之
步驟包含:該使用者(Ui)送給該中介者TWithdraw
= ((LSN, Withdraw, X, 階段序號), SIGPri( Ui)
),LSN為該使用者產生的一不重複的亂數,SIGPri(Ui)
為該使用者所簽署之訊息本體的電子簽章;該中介者修改該第一索引模克樹中該使用者之餘額,假定該使用者之實體通貨兌換憑據或虛擬通貨的餘額於轉帳後為p;該中介者令該合約中的Withdraw_token_from_sidechain()執行,Withdraw_token_from_sidechain()將該合約中的Ui.balance加上X,同時將該金流記錄增加一筆記錄:(Withdraw, Ui, X, 階段序號, GSN);該中介者以TACK
=(( TWithdraw
, p, GSN), SIGPri (Agent)
) 回覆該使用者,GSN為該中介者產生的一由0開始之整數,每次處理一該使用者的交易後都會增加1予GSN,SIGPri(A gent)
為該中介者所簽署之訊息本體的電子簽章;以及該中介者將TACK
存到該第二索引模克樹。
本發明之分散式金流稽核方法,其中,該合約更包含函式Finalize(),該中介者執行Finalize()以將該第一索引模克樹及該第二索引模克樹於現有階段結束後的雜湊值儲存於該合約並公布,同時該中介者公布該現有階段結束後的至少部分該第一索引模克樹及至少部分該第二索引模克樹以供查詢。
本發明之分散式金流稽核方法,其中,該合約具有函式Fraud_proof()以產生該證據資訊,產生該證據資訊係於以下情況或其組合產生:(1)該中介者於處理轉帳交易、入金交易或出金交易後沒有將交易儲存於該第二索引模克樹,該使用者執行Fraud_proof()函式以提出由該中介者回傳的TACK
及該第二索引模克樹的切片,證明該中介者沒有將該交易儲存於該第二索引模克樹;(2)該中介者於處理該轉帳交易、該入金交易或該出金交易後將該使用者的餘額算錯,由於該中介者每個交易之回傳的TACK
都有GSN,其數值為遞增且不重複,故該使用者將該交易排序並找出發生錯誤交易的前一個交易的該中介者之回傳TACK
,之後該使用者執行Fraud_proof()函式,將此錯誤交易及前一個交易的該中介者之回傳TACK
為證據,而證明該中介者提不出有GSN值介於此兩交易中GSN值的交易以證明該中介者出錯。
本發明之分散式金流稽核方法,其中,該第一索引模克樹及該第二索引模克樹係對應一區塊鏈。
本發明提供一種分散式金流稽核裝置,其包括處理單元及儲存單元,該處理單元產生相關於使用者且為實體通貨兌換憑據或虛擬通貨之餘額資訊的第一索引模克樹,以及產生相關於該餘額資訊之交易的稽核資訊之第二索引模克樹,且比對該餘額資訊與該稽核資訊,以及該儲存單元耦接該處理單元,儲存該第一索引模克樹及該第二索引模克樹。
本發明之分散式金流稽核裝置,其中,該稽核資訊係至少對應一合約,且該處理單元處理該合約,該儲存單元儲存該合約。
本發明之分散式金流稽核裝置,其中,該使用者與中介者係以該合約而交易,且該中介者於交易後令該處理單元更新該第一索引模克樹及該第二索引模克樹,於該使用者令該處理單元比對該餘額資訊與該稽核資訊異常時,該處理單元產生證據資訊予該合約,該儲存單元儲存該證據資訊。
本發明之分散式金流稽核裝置,其中,該使用者與該中介者之間具有溝通協定,且在該使用者之數目為複數個時,該些使用者之間具有證據協定,該處理單元處理該溝通協定及該證據協定,且該儲存單元儲存該溝通協定及該證據協定,在該交易之數目為複數個時,該中介者以一部分數目之該些交易作為一階段而令該處理單元更新該第一索引模克樹及該第二索引模克樹,該儲存單元儲存更新之該第一索引模克樹及該第二索引模克樹,且至少該第一索引模克樹與該第二索引模克樹之間具有各該階段完成時的清算協定,該處理單元處理該清算協定且該儲存單元儲存該清算協定。
本發明之分散式金流稽核裝置,其中,該合約包含該中介者之抵押、該使用者之實體通貨兌換憑據或虛擬通貨、該使用者之實體通貨兌換憑據或虛擬通貨之儲金記錄、該合約與該第一索引模克樹及該第二索引模克樹之間的金流記錄、該些階段之序號、該第一索引模克樹及該第二索引模克樹之該些階段的雜湊值、以及該合約之函式。
本發明之分散式金流稽核裝置,其中,該合約之函式包含將該使用者之實體通貨兌換憑據或該虛擬通貨存到該合約中的函式、將該使用者於該合約中的實體通貨兌換憑據或虛擬通貨轉移的函式、將該使用者於該合約中的實體通貨兌換憑據或虛擬通貨轉移至該第一索引模克樹的函式、將該第一索引模克樹之實體通貨兌換憑據或虛擬通貨的至少部分餘額轉移至該合約中的函式、結束一該階段並進行清算的函式、以及產生該證據資訊的函式。
本發明之分散式金流稽核裝置,其中,該溝通協定包含轉帳交易、入金交易及出金交易。
本發明之分散式金流稽核裝置,其中,該轉帳交易之步驟包含:該使用者令該處理單元送給該中介者TRmit
= ((LSN, Remittance, Ui, Uj, X, 階段序號), SIGPri(Ui)
),LSN為該使用者產生的一不重複的亂數,SIGPri(Ui)
為該使用者所簽署之訊息本體的電子簽章;該中介者令該處理單元將該第一索引模克樹中的不同使用者(Ui,Uj)之該實體通貨兌換憑據或虛擬通貨的餘額修改,假定Ui及Uj之該實體通貨兌換憑據或虛擬通貨的餘額於轉帳後分別為p,q;該中介者令該處理單元以TACK
=(( TRmit
, p, q, GSN), SIGPri (Agent)
)回覆該使用者Ui,GSN為該中介者產生的一個整數,由0開始,該處理單元每次處理一該使用者的交易後都會增加1予GSN,SIGPri(A gent)
為該中介者所簽署之訊息本體的電子簽章;以及該中介者令該處理單元將TACK
存到該第二索引模克樹。
本發明之分散式金流稽核裝置,其中,該入金交易之步驟包含:該使用者(Ui)令該處理單元送給該中介者TDeposit
= ((LSN, Deposit, X, 階段序號), SIGPri (Ui)
), LSN為該使用者產生的一不重複的亂數,SIGPri(Ui)
為該使用者所簽署之訊息本體的電子簽章;該中介者令該處理單元將該第一索引模克樹中的使用者餘額修改,假定該使用者之實體通貨兌換憑據或虛擬通貨的餘額於轉帳後為p;該中介者令該處理單元執行該合約中的Deposit_token_to_sidechain(),Deposit_token_to_sidechain()將該合約中的Ui.balance減去X,同時將該金流記錄增加一筆記錄:(Deposit, Ui, X, 階段序號, GSN);該中介者令該處理單元以TACK
=(( TDepost
, p, GSN), SIGPri( Agent)
))回覆該使用者,GSN為該中介者產生的一由0開始之整數,該處理單元每次處理一該使用者的交易後都會增加1予GSN,SIGPri(A gent)
為該中介者所簽署之訊息本體的電子簽章;以及該中介者令該處理單元將TACK
存到該第二索引模克樹。
本發明之分散式金流稽核裝置,其中,該出金交易之步驟包含:該使用者(Ui)令該處理單元送給該中介者TWithdraw
= ((LSN, Withdraw, X, 階段序號), SIGPri( Ui)
),LSN為該使用者產生的一不重複的亂數,SIGPri(Ui)
為該使用者所簽署之訊息本體的電子簽章;該中介者令該處理單元修改該第一索引模克樹中該使用者之餘額,假定該使用者之實體通貨兌換憑據或虛擬通貨的餘額於轉帳後為p;該中介者令該處理單元執行該合約中的Withdraw_token_from_sidechain(),Withdraw_token_from_sidechain()將該合約中的Ui.balance加上X,同時將該金流記錄增加一筆記錄:(Withdraw, Ui, X, 階段序號, GSN);該中介者令該處理單元以TACK
=(( TWithdraw
, p, GSN), SIGPri(A gent)
) 回覆該使用者,GSN為該中介者產生的一由0開始之整數,該處理單元每次處理一該使用者的交易後都會增加1予GSN,SIGPri (Agent)
為該中介者所簽署之訊息本體的電子簽章;以及該中介者令該處理單元將TACK
存到該第二索引模克樹。
本發明之分散式金流稽核裝置,其中,該合約更包含函式Finalize(),該中介者令該處理單元執行Finalize()以將該第一索引模克樹及該第二索引模克樹於現有階段結束後的雜湊值儲存於該合約並公布,同時該中介者公布該現有階段結束後的至少部分該第一索引模克樹及至少部分該第二索引模克樹以供查詢。
本發明之分散式金流稽核裝置,其中,該合約具有函式Fraud_proof()以產生該證據資訊,產生該證據資訊係於以下情況或其組合產生:(1)該中介者於該處理單元處理轉帳交易、入金交易或出金交易後沒有將交易儲存於該第二索引模克樹,該使用者令該處理單元執行Fraud_proof()函式以提出由該中介者回傳的TACK
及該第二索引模克樹的切片,證明該中介者沒有將該交易儲存於該第二索引模克樹;(2)該中介者於該處理單元處理該轉帳交易、該入金交易或該出金交易後將該使用者的餘額算錯,由於該中介者每個交易之回傳的TACK
都有GSN,GSN之數值為遞增且不重複,故該使用者令該處理單元將該交易排序並找出發生錯誤交易的前一個交易的該中介者之回傳TACK
,之後該使用者令該處理單元執行Fraud_proof()函式,將此錯誤交易及前一個交易的該中介者之回傳TACK
為證據,而證明該中介者提不出有GSN值介於此兩交易中GSN值的交易以證明該中介者出錯。
本發明之分散式金流稽核裝置,其中,該第一索引模克樹及該第二索引模克樹係對應一區塊鏈。本發明提供一種分散式金流稽核系統,其包括複數個金流稽核裝置,其至少一者係包含處理單元或儲存單元,且該些金流稽核裝置具有資料傳輸單元,至少一該處理單元產生相關於使用者且為實體通貨兌換憑據或虛擬通貨之餘額資訊的第一索引模克樹、產生相關於該餘額資訊之交易的稽核資訊之第二索引模克樹、比對該餘額資訊與該稽核資訊或其組合,該資料傳輸單元傳輸至少部分對應該第一索引模克樹之資訊、至少部分對應該第二索引模克樹之資訊、該餘額資訊與該稽核資訊之比對結果或其組合,該儲存單元耦接該處理單元或該資料傳輸單元,以儲存該第一索引模克樹或該第二索引模克樹。
本發明之分散式金流稽核系統,其中,該稽核資訊係至少對應一合約,且至少一該處理單元處理該合約,至少一該儲存單元儲存該合約。
本發明之分散式金流稽核系統,其中,該使用者係與中介者以該合約而交易,且該中介者於交易後令至少一該處理單元更新該第一索引模克樹及該第二索引模克樹,於該使用者令至少一該處理單元比對該餘額資訊與該稽核資訊異常時,至少一該處理單元產生證據資訊予該合約,且至少一該儲存單元儲存該證據資訊。
本發明之分散式金流稽核系統,其中,該使用者與該中介者之間具有溝通協定,且在該使用者之數目為複數個時,該些使用者之間具有證據協定,至少一該處理單元處理該溝通協定及該證據協定,且至少一該儲存單元儲存該溝通協定及該證據協定,在該交易之數目為複數個時,該中介者以一部分數目之該些交易作為一階段而令至少一該處理單元更新該第一索引模克樹及該第二索引模克樹,至少一該儲存單元儲存更新之該第一索引模克樹及該第二索引模克樹,且至少該第一索引模克樹與該第二索引模克樹之間具有各該階段完成時的清算協定,至少一該處理單元處理該清算協定且至少一該儲存單元儲存該清算協定。
本發明之分散式金流稽核系統,其中,該合約包含該中介者之抵押、該使用者之實體通貨兌換憑據或虛擬通貨、該使用者之實體通貨兌換憑據或虛擬通貨之儲金記錄、該合約與該第一索引模克樹及該第二索引模克樹之間的金流記錄、該些階段之序號、該第一索引模克樹及該第二索引模克樹之該些階段的雜湊值、以及該合約之函式。
本發明之分散式金流稽核系統,其中,該合約之函式包含將該使用者之實體通貨兌換憑據或該虛擬通貨存到該合約中的函式、將該使用者於該合約中的實體通貨兌換憑據或虛擬通貨轉移的函式、將該使用者於該合約中的實體通貨兌換憑據或虛擬通貨轉移至該第一索引模克樹的函式、將該第一索引模克樹之實體通貨兌換憑據或虛擬通貨的至少部分餘額轉移至該合約中的函式、結束一該階段並進行清算的函式、以及產生該證據資訊的函式。
本發明之分散式金流稽核系統,其中,該溝通協定包含轉帳交易、入金交易及出金交易。
本發明之分散式金流稽核系統,其中,該轉帳交易之步驟包含:該使用者令至少一該處理單元送給該中介者TRmit
= ((LSN, Remittance, Ui, Uj, X, 階段序號), SIGPri(Ui)
),LSN為該使用者產生的一不重複的亂數,SIGPri(Ui)
為該使用者所簽署之訊息本體的電子簽章;該中介者令至少一該處理單元將該第一索引模克樹中的不同使用者(Ui,Uj)之該實體通貨兌換憑據或虛擬通貨的餘額修改,假定Ui及Uj之該實體通貨兌換憑據或虛擬通貨的餘額於轉帳後分別為p,q;該中介者令至少一該處理單元以TACK
=(( TRmit
, p, q, GSN), SIGPri (Agent)
)回覆該使用者Ui,GSN為該中介者產生的一個整數,由0開始,至少一該處理單元每次處理一該使用者的交易後都會增加1予GSN,SIGPri( Agent)
為該中介者所簽署之訊息本體的電子簽章;以及該中介者令至少一該處理單元將TACK
存到該第二索引模克樹。
本發明之分散式金流稽核系統,其中,該入金交易之步驟包含:該使用者(Ui)令至少一該處理單元送給該中介者TDeposit
= ((LSN, Deposit, X, 階段序號), SIGPri( Ui)
), LSN為該使用者產生的一不重複的亂數,SIGPri(Ui)
為該使用者所簽署之訊息本體的電子簽章;該中介者令至少一該處理單元將該第一索引模克樹中的使用者餘額修改,假定該使用者之實體通貨兌換憑據或虛擬通貨的餘額於轉帳後為p;該中介者令至少一該處理單元執行該合約中的Deposit_token_to_sidechain(),Deposit_token_to_sidechain()將該合約中的Ui.balance減去X,同時將該金流記錄增加一筆記錄:(Deposit, Ui, X, 階段序號, GSN);該中介者令至少一該處理單元以TACK
=(( TDepost
, p, GSN), SIGPri(A gent)
))回覆該使用者,GSN為該中介者產生的一由0開始之整數,至少一該處理單元每次處理一該使用者的交易後都會增加1予GSN,SIGPri( Agent)
為該中介者所簽署之訊息本體的電子簽章;以及該中介者令至少一該處理單元將TACK
存到該第二索引模克樹。
本發明之分散式金流稽核系統,其中,該合約更包含函式Finalize(),該中介者令至少一該處理單元執行Finalize()以將該第一索引模克樹及該第二索引模克樹於現有階段結束後的雜湊值儲存於該合約並公布,同時該中介者公布該現有階段結束後的至少部分該第一索引模克樹及至少部分該第二索引模克樹以供查詢。
本發明之分散式金流稽核系統,其中,該合約具有函式Fraud_proof()以產生該證據資訊,產生該證據資訊係於以下情況或其組合產生:(1)該中介者於至少一該處理單元處理轉帳交易、入金交易或出金交易後沒有將交易儲存於該第二索引模克樹,該使用者令至少一該處理單元執行Fraud_proof()函式以提出由該中介者回傳的TACK
及該第二索引模克樹的切片,證明該中介者沒有將該交易儲存於該第二索引模克樹;(2)該中介者於至少一該處理單元處理該轉帳交易、該入金交易或該出金交易後將該使用者的餘額算錯,由於該中介者每個交易之回傳的TACK
都有GSN,GSN之數值為遞增且不重複,故該使用者令至少一該處理單元將該交易排序並找出發生錯誤交易的前一個交易的該中介者之回傳TACK
,之後該使用者令至少一該處理單元執行Fraud_proof()函式,將此錯誤交易及前一個交易的該中介者之回傳TACK
為證據,而證明該中介者提不出有GSN值介於此兩交易中GSN值的交易以證明該中介者出錯。
本發明之分散式金流稽核系統,更包括區塊鏈裝置或區塊鏈單元,該區塊鏈裝置與至少一該金流稽核裝置耦接,該區塊鏈單元設置於至少一該金流稽核裝置,該第一索引模克樹及該第二索引模克樹係至少對應該區塊鏈裝置或該區塊鏈單元中之一區塊鏈。
相較於習知技術,本發明能節省傳輸稽核資訊之時間、次數、手續費等成本。另外,本發明能提升交易之公信力。再者,本發明能達成低負擔且高效率之系統。並且,本發明能支援實體通貨兌換憑據或虛擬通貨的一般性微支付。
為充分瞭解本發明之目的、特徵及功效,茲藉由下述具體之實施例,並配合所附之圖式,對本發明做一詳細說明,說明如後:
請參考圖1,係本發明分散式金流稽核方法之流程圖,其步驟包括步驟S10至步驟S11。步驟S10中,其可提供相關於使用者且儲存為第一索引模克樹的實體通貨兌換憑據或虛擬通貨之餘額資訊及相關於該餘額資訊且儲存為第二索引模克樹之交易的稽核資訊。其中,第一索引模克樹及第二索引模克樹可為完滿二元雜湊樹(Full Hash Binary Tree)與指標函數 Γ(Index function, 即𝚪(FileName)=SHA-256(FileName) mod 2N-1
) 之結合。惟於其他實施例中,並不限於利用其他雜湊樹。該稽核資訊可相關於使用者,特定而言,可為複數個使用者。其中,該稽核資訊譬如一帳本,紀錄使用者之交易紀錄。於不同實施例中,使用者之數量可能相當龐大,譬如應用於有五十萬使用者之加密貨幣應用、商品或勞務交易平台等。實體通貨兌換憑據可例如為實體通貨之存摺、票據、股票、地契、電子錢包等,而虛擬通貨可例如為比特幣、以太幣等,惟本發明不限於此。再者,該稽核資訊可為複數筆交易之累積稽核資訊,從而節省傳輸稽核資訊之時間、次數、手續費等成本。特定而言,本發明之該第一索引模克樹及該第二索引模克樹可對應一區塊鏈。該使用者可為交易者、區塊鏈之參與者或其它參與者。
另外,可藉由雜湊函數而根據該稽核資訊作成一濃縮狀態碼。雜湊函數可利用「MD5」、「RIPEMD160」、「SHA1」、「SHA256」、「SHA384」、「SHA512」或其他雜湊函數。較佳實施例中可利用SHA系列雜湊函數,且更特定而言可利用「SHA256」雜湊函數。藉此,濃縮狀態碼可用來檢驗該稽核資訊之完整性及同一性,且具有不可逆性質,無法反向導出原始資料。再者,經過濃縮,有壓縮檔案大小之效果,以便利傳輸。
該第一索引模克樹可包含第一切片(Slice)且該第二索引模克樹可包含第二切片,詳細而言該稽核資訊可作成複數個切片,參考圖2,其繪示切片之示意圖。可表示為取出特定部分之雜湊樹。藉此,本發明可根據該使用者作成與該使用者相關之切片。因此,藉由各切片,該使用者僅得審閱關於自己的交易資訊。另外,該稽核資訊可至少對應一合約。舉例而言,該合約可為以太坊的智能合約,惟本發明不限於此。
步驟S11中,該使用者可比對該餘額資訊與該稽核資訊。在該使用者初入金時,本發明之分散式金流稽核方法可僅比對初入金之該餘額資訊與該稽核資訊。特定而言,比對該餘額資訊與該稽核資訊可比對該第一切片與該第二切片。另外,該使用者可與中介者以該合約而交易,且該中介者更新該第一索引模克樹及該第二索引模克樹,於該使用者比對該餘額資訊與該稽核資訊異常時,產生證據(Fraud Proof)資訊予該合約。該中介者可為代理人、仲介、管理者等。
詳細而言,可將該濃縮狀態碼及相關於該使用者之交易的切片一起送予該使用者,因此該使用者可藉由該濃縮狀態碼確認其切片具有同一性,進而比對該使用者之交易資訊(帳本)是否正確,以決定是否作出錯誤回報。藉此,雖然該使用者皆僅利用各切片,而僅比對關於自身的交易資訊是否正確,惟因為本發明實施例中,利用該濃縮狀態碼,使各切片與該稽核資訊之間具有同一性,或稱唯一性,而具有綁定之效果。因此,只要該使用者作出錯誤回報,就可比對出該稽核資訊為不正確。亦即,將比對之工作分散於該使用者。且讓該使用者在檢視自己之交易資訊時,無形中幫忙做了比對之工作,而並未增加該使用者之負擔。且於較佳實施例中,該濃縮狀態碼及其切片之確認動作,可利用該使用者之應用程式自動進行。
在本發明實施例中,利用該濃縮狀態碼及切片,可大幅縮減需要傳輸之資料量。舉例而言,在一實施例中,若有50萬個使用者,則設置雜湊樹所需記憶體空間約為206.9百萬位元組(Megabyte,MB),而該使用者接收該濃縮狀態碼僅需下載約32位元組(Byte,B)、接收切片僅需下載1千位元組(KB)。下載量僅占原始帳本(稽核資訊)之約十萬分之一,且理想狀態下,比對僅須費時約千分之一秒。可適用於具有大量使用者之加密貨幣應用、商品或勞務交易平台等,而不會有明顯延遲感等不佳使用者體驗。達成低負擔且高效率之系統。另外,由於本發明實施例中該中介者可提供一筆抵押,例如該實體通貨兌換憑據或虛擬通貨,予該合約,故於該使用者比對該餘額資訊與該稽核資訊異常並產生證據資訊予該合約後,可由該抵押支付賠償予該使用者,從而提升本發明之公信力。
進一步而言,本發明之分散式金流稽核方法的該使用者與該中介者之間具有溝通協定,且在該使用者之數目為複數個時,該些使用者之間具有證據協定,在該交易之數目為複數個時,該中介者以一部分數目之該些交易作為一階段而更新該第一索引模克樹及該第二索引模克樹,且至少該第一索引模克樹與該第二索引模克樹之間具有各該階段完成時的清算協定。而該溝通協定可包含轉帳交易、入金交易及出金交易。因此,本發明可以該些協定而建立複數個使用者之間及使用者與至少一個中介者之間的多對多交易管道以支援實體通貨兌換憑據或虛擬通貨的一般性微支付。
詳細而言並請參閱圖3,該合約可包含該中介者之抵押、該使用者之實體通貨兌換憑據或虛擬通貨、該使用者之實體通貨兌換憑據或虛擬通貨之儲金記錄、該合約與該第一索引模克樹及該第二索引模克樹之間的金流記錄、該些階段之序號、該第一索引模克樹及該第二索引模克樹之該些階段的雜湊值、以及該合約之函式。
如上所述之該合約之函式可包含將該使用者之實體通貨兌換憑據或該虛擬通貨存到該合約中的函式(即Transfer_token_to_contact(),特定而言為金流交易人擁有的虛擬通貨存到智能合約中)、將該使用者於該合約中的實體通貨兌換憑據或虛擬通貨轉移的函式(即Transfer_token_out(),特定而言為金流交易人將自己在此合約中的虛擬通貨轉到區塊鏈其他帳戶中)、將該使用者於該合約中的實體通貨兌換憑據或虛擬通貨轉移至該第一索引模克樹的函式(即Deposit_token_to_sidechain(),特定而言為將金流交易人在合約中的虛擬通貨轉移到第一索引模克樹)、將該第一索引模克樹之實體通貨兌換憑據或虛擬通貨的至少部分餘額轉移至該合約中的函式(即Withdraw_token_from_sidechain(),特定而言為將第一索引模克樹的虛擬通貨餘額轉到智能合約中)、結束一該階段並進行清算的函式(即Finalize(),特定而言為結束一個階段,進行清算)、以及產生該證據資訊的函式(即Fraud_Proof()),惟本發明不限於此。
請參閱圖4,如上所述之轉帳交易(例如交易人Ui要將X單位的虛擬通貨轉帳給Uj)之
步驟可包含以下步驟:步驟S401至步驟S404。步驟S401中,該使用者送給該中介者TRmit
= ((LSN, Remittance, Ui, Uj, X, 階段序號), SIGPri(Ui)
),LSN為該使用者產生的一不重複的亂數,SIGPri(Ui)
為該使用者所簽署之訊息本體的電子簽章。特定而言,參與交易人Ui首先送給代理人訊息TRmit
= ((LSN, Remittance, Ui, Uj, X, 階段序號), SIGPri(Ui)
),其中LSN(Local sequence number)為交易人Ui產生的一個不會重複的亂數,SIGPri(Ui)
為由Ui所簽署之訊息本體的電子簽章。步驟S402中,該中介者將該第一索引模克樹中的不同使用者(Ui,Uj)之該實體通貨兌換憑據或虛擬通貨的餘額修改,假定Ui及Uj之該實體通貨兌換憑據或虛擬通貨的餘額於轉帳後分別為p,q。特定而言,代理人將第一索引模克樹的中交易人Ui及Uj的虛擬通貨的餘額修改,假定Ui及Uj的虛擬通貨的餘額於轉帳後分別為p、q。步驟S403中,該中介者以TACK
=(( TRmit
, p, q, GSN), SIGPri( Agent)
)回覆該使用者Ui, GSN為該中介者產生的一個整數,由0開始,每次處理一該使用者的交易後都會增加1予GSN,SIGPri(A gent)
為該中介者所簽署之訊息本體的電子簽章。特定而言,代理人回覆交易人Ui訊息TACK
=(( TRmit
, p, q, GSN), SIGPri( Agent)
),其中GSN(Global sequence number(廣域序列數))為代理人產生的一個整數,由0開始,每次處理一個交易人的交易後都會增加1。SIGPri(Ag ent)
為由中介者所簽署之訊息本體的電子簽章。步驟S404中,該中介者將TACK
存到該第二索引模克樹。
請參閱圖5,如上所述之入金交易(例如交易人Ui要將智能合約X單位的虛擬通貨轉移到第一索引模克樹)之
步驟可包含以下步驟:步驟S501至步驟S505。步驟S501中,該使用者(Ui)送給該中介者TDeposit
= ((LSN, Deposit, X, 階段序號), SIGPri (Ui)
), LSN為該使用者產生的一不重複的亂數,SIGPri(Ui)
為該使用者所簽署之訊息本體的電子簽章。特定而言,參與交易人Ui首先送給代理人訊息TDeposit
= ((LSN, Deposit, X, 階段序號), SIGPri( Ui)
),其中LSN(Local sequence number)為交易人Ui產生的一個不會重複的亂數,SIGPri(U i)
為由Ui所簽署之訊息本體的電子簽章。步驟S502中,該中介者將該第一索引模克樹中的使用者餘額修改,假定該使用者之實體通貨兌換憑據或虛擬通貨的餘額於轉帳後為p。特定而言,代理人將第一索引模克樹中的交易人Ui餘額修改(增加X),假定Ui於轉帳後分別為p。步驟S503中,該中介者令該合約中的Deposit_token_to_sidechain()執行,Deposit_token_to_sidechain()將該合約中的Ui.balance減去X,同時將該金流記錄增加一筆記錄:(Deposit, Ui, X, 階段序號, GSN) 。特定而言,代理人呼叫執行智能合約中的Deposit_token_to_sidechain(),此函式會將合約中的Ui.balance減去X,同時將合約及側鏈間的金流記錄增加一筆記錄:(Deposit, Ui, X, 階段序號, GSN)。步驟S504中,該中介者以TACK
=(( TDepost
, p, GSN), SIGPri(Age nt)
))回覆該使用者,GSN為該中介者產生的一由0開始之整數,每次處理一該使用者的交易後都會增加1予GSN,SIGPri( Agent)
為該中介者所簽署之訊息本體的電子簽章。特定而言,代理人回覆交易人Ui訊息TACK
=(( TDepost
, p, GSN), SIGPri (Agent)
),其中GSN為代理人產生的一個整數,由0開始,每次處理一個交易人的交易後都會增加1。SIGPri( Agent)
為由中介者所簽署之訊息本體的電子簽章。步驟S505中,該中介者將TACK
存到該第二索引模克樹。
請參閱圖6,如上所述之出金交易(例如交易人Ui要將第一個索引模克樹的虛擬通貨X單位轉移到智能合約)之
步驟可包含以下步驟:步驟S601至步驟S605。步驟S601中,該使用者(Ui)送給該中介者TWithdraw
= ((LSN, Withdraw, X, 階段序號), SIGPri( Ui)
),LSN為該使用者產生的一不重複的亂數,SIGPri(Ui)
為該使用者所簽署之訊息本體的電子簽章。特定而言,參與交易人Ui送給代理人訊息TWithdraw
= ((LSN, Withdraw, X, 階段序號), SIGPri (Ui)
),其中LSN(Local sequence number)為交易人Ui產生的一個不會重複的亂數,SIGPri (Ui)
為由Ui所簽署之訊息本體的電子簽章。步驟S602中,該中介者修改該第一索引模克樹中該使用者之餘額,假定該使用者之實體通貨兌換憑據或虛擬通貨的餘額於轉帳後為p。特定而言,代理人將第一索引模克樹中的交易人Ui餘額修改(減去X),假定Ui於轉帳後分別為p。步驟S603中,該中介者令該合約中的Withdraw_token_from_sidechain()執行,Withdraw_token_from_sidechain()將該合約中的Ui.balance加上X,同時將該金流記錄增加一筆記錄。特定而言,代理人呼叫執行智能合約中的Withdraw_token_from_sidechain(),此函式會將合約中的Ui.balance加上X,同時將合約及側鏈(第一及/或第二索引模克樹)間的金流記錄增加一筆記錄:(Withdraw, Ui, X, 階段序號, GSN) 。步驟S604中,該中介者以TACK
=(( TWithdraw
, p, GSN), SIGPri (Agent)
) 回覆該使用者,GSN為該中介者產生的一由0開始之整數,每次處理一該使用者的交易後都會增加1予GSN,SIGPri (Agent)
為該中介者所簽署之訊息本體的電子簽章。特定而言,代理人回覆交易人Ui訊息TACK
=(( TWithdraw
, p, GSN), SIGPri (Agent)
),其中GSN為代理人產生的一個整數,由0開始,每次處理一個交易人的交易後都會增加1,且SIGPri (Agent)
為由中介者所簽署之訊息本體的電子簽章。步驟S605中,該中介者將TACK
存到該第二索引模克樹。
進一步而言,該中介者更新該第一索引模克樹及該第二索引模克樹可包含產生對應該第一索引模克樹之第一根雜湊值(Root Hash)及對應該第二索引模克樹之第二根雜湊值,且該中介者以該第一根雜湊值及該第二根雜湊值更新該合約。
另外,該合約更包含函式Finalize(),其中該中介者執行Finalize()以將該第一索引模克樹及該第二索引模克樹於現有階段結束後的雜湊值儲存於該合約並公布,同時該中介者公布該現有階段結束後的至少部分該第一索引模克樹及至少部分該第二索引模克樹以供查詢。特定而言,智能合約中的函式Finalize()為代理人於約定的時間到期後,進行運作的清算協定
。因此,本發明之一種分散式金流稽核方法可將一段時間內的交易整合清算以節省傳輸稽核資訊之時間、次數、手續費等成本。而代理人執行此函式,以將第一索引模克樹及第二索引模克樹於現有階段結束後的雜湊值儲存於合約以公布之。同時代理人亦公布階段結束後的至少部分第一索引模克樹及至少部分第二索引模克樹供查詢。
再者,該合約可具有函式Fraud_proof()以產生該證據資訊,該證據資訊可於以下情況或其組合產生:(1)該中介者於處理轉帳交易、入金交易或出金交易後沒有將交易儲存於該第二索引模克樹,該使用者執行Fraud_proof()函式以提出由該中介者回傳的TACK
及該第二索引模克樹的切片,證明該中介者沒有將該交易儲存於該第二索引模克樹;(2)該中介者於處理該轉帳交易、該入金交易或該出金交易後將該使用者的餘額算錯,由於該中介者每個交易之回傳的TACK
都有GSN,其數值為遞增且不重複,故該使用者將該交易排序並找出發生錯誤交易的前一個交易的該中介者之回傳TACK
,之後該使用者執行Fraud_proof()函式,將此錯誤交易及前一個交易的該中介者之回傳TACK
為證據,而證明該中介者提不出有GSN值介於此兩交易中GSN值的交易以證明該中介者出錯。特定而言,智能合約中的函式Fraud_proof()可以由交易人或其他參與者提出密碼學證據來證明代理人有發生錯誤。既有以下的可能情形:(1)代理人於處理轉帳交易、入金交易、出金交易後並沒有將交易儲存於第二索引模克樹:交易人或其他參與者可以執行Fraud_proof()函式,提出由代理人回傳的TACK
及第二索引模克樹的切片,來證明代理人沒有將交易儲存於第二索引模克樹;(2)代理人於處理轉帳交易、入金交易、出金交易後將交易人的餘額算錯:因為代理人每個交易的回傳訊息TACK
都有GSN,其數值必須為遞增且不得重複,所以交易人可以將自己的交易排序,找出發生錯誤交易的前一個交易的代理人回傳交易訊息,執行Fraud_proof()函式,將此錯誤交易及前一個交易的回傳交易訊息為證據,因為代理人提不出有GSN值介於此兩交易中GSN值的交易,所以可以證明代理人出錯。
如圖7所示,其係本發明之一種分散式金流稽核裝置7的方塊圖,其可包括處理單元71及儲存單元72。如上所述之處理單元71可產生相關於使用者且為實體通貨兌換憑據或虛擬通貨之餘額資訊的第一索引模克樹,以及產生相關於該餘額資訊之交易的稽核資訊之第二索引模克樹,且比對該餘額資訊與該稽核資訊。處理單元71可為電路、晶片、中央處理器、微處理器(MCU)或其組合,惟本發明不限於此。
如上所述之儲存單元72可耦接處理單元71,儲存該第一索引模克樹及該第二索引模克樹。儲存單元72可為燒錄式光碟機、硬碟機、軟碟機、通用串行總線(USB)、動態隨機存取記憶體、快閃記憶體、電子抹除式可複寫唯讀記憶體(EEPROM)、可擦除可規劃式唯讀記憶體(EPROM)等,惟本發明不限於此。
另外,處理單元71比對該餘額資訊與該稽核資訊可比對該第一切片與該第二切片,該稽核資訊可至少對應一合約,且處理單元71處理該合約,儲存單元72儲存該合約。再者,該使用者與中介者可以該合約而交易,且該中介者令處理單元71更新該第一索引模克樹及該第二索引模克樹,於該使用者令處理單元71比對該餘額資訊與該稽核資訊異常時,處理單元71產生證據資訊予該合約,且儲存單元72儲存該證據資訊。而該中介者令處理單元71更新該第一索引模克樹及該第二索引模克樹可包含處理單元71產生對應該第一索引模克樹之第一根雜湊值及對應該第二索引模克樹之第二根雜湊值,且該中介者令處理單元71以該第一根雜湊值及該第二根雜湊值更新該合約。
進一步而言,該使用者與該中介者之間具有溝通協定,且在該使用者之數目為複數個時,該些使用者之間具有證據協定,處理單元71處理該溝通協定及該證據協定,且儲存單元72儲存該溝通協定及該證據協定,在該交易之數目為複數個時,該中介者以一部分數目之該些交易作為一階段而令處理單元71更新該第一索引模克樹及該第二索引模克樹,儲存單元72儲存更新之該第一索引模克樹及該第二索引模克樹,且至少該第一索引模克樹與該第二索引模克樹之間具有各該階段完成時的清算協定,處理單元71處理該清算協定且儲存單元72儲存該清算協定。
如上所述之該合約可包含該中介者之抵押、該使用者之實體通貨兌換憑據或虛擬通貨、該使用者之實體通貨兌換憑據或虛擬通貨之儲金記錄、該合約與該第一索引模克樹及該第二索引模克樹之間的金流記錄、該些階段之序號、該第一索引模克樹及該第二索引模克樹之該些階段的雜湊值、以及該合約之函式。
如上所述之該合約之函式可包含將該使用者之實體通貨兌換憑據或該虛擬通貨存到該合約中的函式、將該使用者於該合約中的實體通貨兌換憑據或虛擬通貨轉移的函式、將該使用者於該合約中的實體通貨兌換憑據或虛擬通貨轉移至該第一索引模克樹的函式、將該第一索引模克樹之實體通貨兌換憑據或虛擬通貨的至少部分餘額轉移至該合約中的函式、結束一該階段並進行清算的函式、以及產生該證據資訊的函式。
如上所述之該溝通協定可包含轉帳交易、入金交易及出金交易。詳細而言,該轉帳交易之步驟可包含:該使用者令處理單元71送給該中介者TRmit
= ((LSN, Remittance, Ui, Uj, X, 階段序號), SIGPri(Ui)
),LSN為該使用者產生的一不重複的亂數,SIGPri(Ui)
為該使用者所簽署之訊息本體的電子簽章;該中介者令處理單元71將該第一索引模克樹中的不同使用者(Ui,Uj)之該實體通貨兌換憑據或虛擬通貨的餘額修改,假定Ui及Uj之該實體通貨兌換憑據或虛擬通貨的餘額於轉帳後分別為p,q;該中介者令處理單元71以TACK
=(( TRmit
, p, q, GSN), SIGPri(Agent)
)回覆該使用者Ui,GSN(Global sequence number)為該中介者產生的一個整數,由0開始,處理單元71每次處理一該使用者的交易後都會增加1予GSN,SIGPri(Agent)
為該中介者所簽署之訊息本體的電子簽章;以及該中介者令處理單元71將TACK
存到該第二索引模克樹。
而該入金交易之步驟可包含:該使用者(Ui)令處理單元71送給該中介者TDeposit
= ((LSN, Deposit, X, 階段序號), SIGPri(Ui)
), LSN為該使用者產生的一不重複的亂數,SIGPri(Ui)
為該使用者所簽署之訊息本體的電子簽章;該中介者令處理單元71將該第一索引模克樹中的使用者餘額修改,假定該使用者之實體通貨兌換憑據或虛擬通貨的餘額於轉帳後為p;該中介者令處理單元71執行該合約中的Deposit_token_to_sidechain(),Deposit_token_to_sidechain()將該合約中的Ui.balance減去X,同時將該金流記錄增加一筆記錄:(Deposit, Ui, X, 階段序號, GSN);該中介者令處理單元71以TACK
=(( TDepost
, p, GSN), SIGPri (Agent)
))回覆該使用者,GSN該中介者產生的一由0開始之整數,處理單元71每次處理一該使用者的交易後都會增加1予GSN,SIGPri (Agent)
為該中介者所簽署之訊息本體的電子簽章;以及該中介者令處理單元71將TACK
存到該第二索引模克樹。
另外,該出金交易之步驟可包含:該使用者(Ui)令處理單元71送給該中介者TWithdraw
= ((LSN, Withdraw, X, 階段序號), SIGPri (Ui)
),LSN為該使用者產生的一不重複的亂數,SIGPri(Ui)
為該使用者所簽署之訊息本體的電子簽章;該中介者令處理單元71修改該第一索引模克樹中該使用者之餘額,假定該使用者之實體通貨兌換憑據或虛擬通貨的餘額於轉帳後為p;該中介者令處理單元71執行該合約中的Withdraw_token_from_sidechain(),Withdraw_token_from_sidechain()將該合約中的Ui.balance加上X,同時將該金流記錄增加一筆記錄:(Withdraw, Ui, X, 階段序號, GSN);該中介者令處理單元71以TACK
=(( TWithdraw
, p, GSN), SIGPri(Agent)
) 回覆該使用者,GSN為該中介者產生的一由0開始之整數,處理單元71每次處理一該使用者的交易後都會增加1予GSN,SIGPri(Agent)
為該中介者所簽署之訊息本體的電子簽章;以及該中介者令處理單元71將TACK
存到該第二索引模克樹。
再者,該合約可更包含函式Finalize(),該中介者令處理單元71執行Finalize()以將該第一索引模克樹及該第二索引模克樹於現有階段結束後的雜湊值儲存於該合約並公布,同時該中介者公布該現有階段結束後的至少部分該第一索引模克樹及至少部分該第二索引模克樹以供查詢。
如上所述之該合約可具有函式Fraud_proof()以產生該證據資訊,該證據資訊可於以下情況或其組合產生:(1)該中介者於處理單元71處理轉帳交易、入金交易或出金交易後沒有將交易儲存於該第二索引模克樹,該使用者令處理單元71執行Fraud_proof()函式以提出由該中介者回傳的TACK
及該第二索引模克樹的切片,證明該中介者沒有將該交易儲存於該第二索引模克樹;(2)該中介者於處理單元71處理該轉帳交易、該入金交易或該出金交易後將該使用者的餘額算錯,由於該中介者每個交易之回傳的TACK
都有GSN,GSN之數值為遞增且不重複,故該使用者令處理單元71將該交易排序並找出發生錯誤交易的前一個交易的該中介者之回傳TACK
,之後該使用者令處理單元71執行Fraud_proof()函式,將此錯誤交易及前一個交易的該中介者之回傳TACK
為證據,而證明該中介者提不出有GSN值介於此兩交易中GSN值的交易以證明該中介者出錯。
此外,該第一索引模克樹及該第二索引模克樹可對應一區塊鏈。實際而言,該區塊鏈可外接於本發明之分散式金流稽核裝置7或為分散式金流稽核裝置7內含之區塊鏈單元73,而區塊鏈單元73可至少與處理單元71耦接。。
須注意的是,本發明之一種分散式金流稽核裝置7的其它內容已於上文敘述,不再贅述。另外,該使用者或該中介者令處理單元71執行之指令可由該使用者或該中介者直接輸入分散式金流稽核裝置7,或可由該使用者或該中介者從外接裝置輸入分散式金流稽核裝置7。再者,該耦接可為電性耦接及/或光學耦接等可傳遞訊號或指令的耦接方式。
如圖8所示,其係本發明之一種分散式金流稽核系統8的方塊圖,其可包括複數個金流稽核裝置81。如上所述之複數個金流稽核裝置81的其中至少一者可包含處理單元811或儲存單元812,且該些金流稽核裝置81具有資料傳輸單元813,處理單元811產生相關於使用者且為實體通貨兌換憑據或虛擬通貨之餘額資訊的第一索引模克樹、產生相關於該餘額資訊之交易的稽核資訊之第二索引模克樹、比對該餘額資訊與該稽核資訊或其組合,資料傳輸單元813可傳輸至少部分對應該第一索引模克樹之資訊、至少部分對應該第二索引模克樹之資訊、該餘額資訊與該稽核資訊之比對結果或其組合,儲存單元812耦接處理單元811或資料傳輸單元813,以儲存該第一索引模克樹或該第二索引模克樹。即在分散式計算架構或雲計算的情況下,金流稽核裝置81可不必同時具有處理單元811或儲存單元812,或不必同時具有上述分散式金流稽核系統8之功能的處理單元811或儲存單元812,惟金流稽核裝置81可具有資料傳輸單元813以供分散式金流稽核系統8之運作。而第一索引模克樹、第二索引模克樹、該餘額資訊與該稽核資訊之比對或其組合可在不同處理單元811中進行,且該第一索引模克樹及該第二索引模克樹可在不同儲存單元812中儲存。
另外,該第一索引模克樹可包含第一切片且該第二索引模克樹可包含第二切片,進一步而言,處理單元811比對該餘額資訊與該稽核資訊可比對該第一切片與該第二切片。而該稽核資訊可至少對應一合約,且至少一該處理單元811處理該合約,至少一儲存單元812儲存該合約。
在本發明之另一態樣中,使用者與中介者可以該合約而交易,且該中介者於交易後令至少一處理單元811更新該第一索引模克樹及該第二索引模克樹,於該使用者令至少一處理單元811比對該餘額資訊與該稽核資訊異常時,至少一處理單元811產生證據資訊予該合約,且至少一儲存單元812儲存該證據資訊。
實際而言,該使用者與該中介者之間具有溝通協定,且在該使用者之數目為複數個時,該些使用者之間具有證據協定,至少一處理單元811處理該溝通協定及該證據協定,且至少一儲存單元812儲存該溝通協定及該證據協定,在該交易之數目為複數個時,該中介者以一部分數目之該些交易作為一階段而令至少一處理單元811更新該第一索引模克樹及該第二索引模克樹,至少一儲存單元812儲存更新之該第一索引模克樹及該第二索引模克樹,且至少該第一索引模克樹與該第二索引模克樹之間具有各該階段完成時的清算協定,至少一處理單元811處理該清算協定且至少一儲存單元812儲存該清算協定。而該溝通協定可包含轉帳交易、入金交易及出金交易。
另外,該合約可包含該中介者之抵押、該使用者之實體通貨兌換憑據或虛擬通貨、該使用者之實體通貨兌換憑據或虛擬通貨之儲金記錄、該合約與該第一索引模克樹及該第二索引模克樹之間的金流記錄、該些階段之序號、該第一索引模克樹及該第二索引模克樹之該些階段的雜湊值、以及該合約之函式。
如上所述之該轉帳交易之步驟可包含:該使用者令至少一處理單元811送給該中介者TRmit
= ((LSN, Remittance, Ui, Uj, X, 階段序號), SIGPri(Ui)
),LSN為該使用者產生的一不重複的亂數,SIGPri(Ui)
為該使用者所簽署之訊息本體的電子簽章;該中介者令至少一處理單元811將該第一索引模克樹中的不同使用者(Ui,Uj)之該實體通貨兌換憑據或虛擬通貨的餘額修改,假定Ui及Uj之該實體通貨兌換憑據或虛擬通貨的餘額於轉帳後分別為p,q;該中介者令至少一處理單元811以TACK
=(( TRmit
, p, q, GSN), SIGPri (Agent)
)回覆該使用者Ui,GSN為該中介者產生的一個整數,由0開始,至少一處理單元811每次處理一該使用者的交易後都會增加1予GSN,SIGPri (Agent)
為該中介者所簽署之訊息本體的電子簽章;以及該中介者令至少一處理單元811將TACK
存到該第二索引模克樹。
如上所述之該入金交易之步驟可包含:該使用者(Ui)令至少一處理單元811送給該中介者TDeposit
= ((LSN, Deposit, X, 階段序號), SIGPri (Ui)
), LSN為該使用者產生的一不重複的亂數,SIGPri(Ui)
為該使用者所簽署之訊息本體的電子簽章;該中介者令至少一處理單元811將該第一索引模克樹中的使用者餘額修改,假定該使用者之實體通貨兌換憑據或虛擬通貨的餘額於轉帳後為p;該中介者令至少一處理單元811執行該合約中的Deposit_token_to_sidechain(),Deposit_token_to_sidechain()將該合約中的Ui.balance減去X,同時將該金流記錄增加一筆記錄:(Deposit, Ui, X, 階段序號, GSN);該中介者令至少一處理單元811以TACK
=(( TDepost
, p, GSN), SIGPri (Agent)
))回覆該使用者,GSN為該中介者產生的一由0開始之整數,至少一處理單元811每次處理一該使用者的交易後都會增加1予GSN,SIGPri (Agent)
為該中介者所簽署之訊息本體的電子簽章;以及該中介者令至少一處理單元811將TACK
存到該第二索引模克樹。
如上所述之該出金交易之步驟可包含:該使用者(Ui)令至少一處理單元811送給該中介者TWithdraw
= ((LSN, Withdraw, X, 階段序號), SIGPri (Ui)
),LSN為該使用者產生的一不重複的亂數,SIGPri(Ui)
為該使用者所簽署之訊息本體的電子簽章;該中介者令至少一處理單元811修改該第一索引模克樹中該使用者之餘額,假定該使用者之實體通貨兌換憑據或虛擬通貨的餘額於轉帳後為p;該中介者令至少一處理單元811執行該合約中的Withdraw_token_from_sidechain(),Withdraw_token_from_sidechain()將該合約中的Ui.balance加上X,同時將該金流記錄增加一筆記錄:(Withdraw, Ui, X, 階段序號, GSN);該中介者令至少一處理單元811以TACK
=(( TWithdraw
, p, GSN), SIGPri (Agent)
) 回覆該使用者,GSN為該中介者產生的一由0開始之整數,至少一處理單元811每次處理一該使用者的交易後都會增加1予GSN,SIGPri (Agent)
為該中介者所簽署之訊息本體的電子簽章;以及該中介者令至少一處理單元811將TACK
存到該第二索引模克樹。
另外,該合約具有函式Finalize(),該中介者令至少一處理單元811執行Finalize()以將該第一索引模克樹及該第二索引模克樹於現有階段結束後的雜湊值儲存於該合約並公布,同時該中介者公布該現有階段結束後的至少部分該第一索引模克樹及至少部分該第二索引模克樹以供查詢。
再者,該合約可具有函式Fraud_proof()以產生該證據資訊,該證據資訊可於以下情況或其組合產生:(1)該中介者於至少一處理單元811處理轉帳交易、入金交易或出金交易後沒有將交易儲存於該第二索引模克樹,該使用者令至少一處理單元811執行Fraud_proof()函式以提出由該中介者回傳的TACK
及該第二索引模克樹的切片,證明該中介者沒有將該交易儲存於該第二索引模克樹;(2)該中介者於至少一處理單元811處理該轉帳交易、該入金交易或該出金交易後將該使用者的餘額算錯,由於該中介者每個交易之回傳的TACK
都有GSN,GSN之數值為遞增且不重複,故該使用者令至少一處理單元811將該交易排序並找出發生錯誤交易的前一個交易的該中介者之回傳TACK
,之後該使用者令至少一處理單元811執行Fraud_proof()函式,將此錯誤交易及前一個交易的該中介者之回傳TACK
為證據,而證明該中介者提不出有GSN值介於此兩交易中GSN值的交易以證明該中介者出錯。
進一步而言,該中介者令至少一處理單元811更新該第一索引模克樹及該第二索引模克樹可包含至少一處理單元811產生對應該第一索引模克樹之第一根雜湊值且至少一處理單元811產生對應該第二索引模克樹之第二根雜湊值,且該中介者令至少一處理單元811以該第一根雜湊值及該第二根雜湊值更新該合約,資料傳輸單元813傳輸該第一根雜湊值及該第二根雜湊值。
在本發明之另一態樣中,本發明之一種分散式金流稽核系統8可更包括區塊鏈裝置82或區塊鏈單元814,區塊鏈裝置82與至少一金流稽核裝置81耦接,區塊鏈單元814設置於至少一金流稽核裝置81,該第一索引模克樹及該第二索引模克樹可至少對應區塊鏈裝置82或區塊鏈單元814中之一區塊鏈。
綜上所述,本發明藉由將複數筆交易之累積稽核資訊整合為單一稽核資訊,可從而節省傳輸稽核資訊之時間、次數、手續費等成本。另外,藉由中介者提供一筆抵押以於該使用者比對該餘額資訊與該稽核資訊異常時由該抵押支付賠償予該使用者,從而提升本發明之公信力。再者,本發明藉由使用者僅比對原始帳本(稽核資訊)之切片,從而達成低負擔且高效率之系統。此外,本發明還藉由各種協定而建立複數個使用者之間及使用者與至少一個中介者之間的多對多交易管道以支援實體通貨兌換憑據或虛擬通貨的一般性微支付。
本發明在上文中已以較佳實施例揭露,然熟習本項技術者應理解的是,該實施例僅用於描繪本發明,而不應解讀為限制本發明之範圍。應注意的是,舉凡與該實施例等效之變化與置換,均應設為涵蓋於本發明之範疇內。因此,本發明之保護範圍當以申請專利範圍所界定者為準。
7‧‧‧分散式金流稽核裝置71、811‧‧‧處理單元72、812‧‧‧儲存單元8‧‧‧分散式金流稽核系統81‧‧‧金流稽核裝置813‧‧‧資料傳輸單元73、814‧‧‧區塊鏈單元82‧‧‧區塊鏈裝置S10、S11、S401、S402、S403、S404、S501、S502、S503、S504、S505、S601、S602、S603、S604、S605‧‧‧步驟
圖1係本發明分散式金流稽核方法之流程圖。 圖2係切片之示意圖。 圖3係本發明之合約內容的方塊圖。 圖4係本發明之轉帳交易的流程圖。 圖5係本發明之入金交易的流程圖。 圖6係本發明之出金交易的流程圖。 圖7係本發明之一種分散式金流稽核裝置的方塊圖。 圖7係本發明之一種分散式金流稽核系統的方塊圖。
S10、S11‧‧‧步驟
Claims (39)
- 一種分散式金流稽核方法,係包括: 提供相關於使用者且儲存為第一索引模克樹的實體通貨兌換憑據或虛擬通貨之餘額資訊及相關於該餘額資訊且儲存為第二索引模克樹之交易的稽核資訊;以及 該使用者比對該餘額資訊與該稽核資訊。
- 如申請專利範圍第1項所述之分散式金流稽核方法,其中,該稽核資訊係至少對應一合約。
- 如申請專利範圍第2項所述之分散式金流稽核方法,其中,該使用者係與中介者以該合約而交易,且該中介者於該交易後更新該第一索引模克樹及該第二索引模克樹,於該使用者比對該餘額資訊與該稽核資訊異常時,產生證據資訊予該合約。
- 如申請專利範圍第3項所述之分散式金流稽核方法,其中,該使用者與該中介者之間具有溝通協定,且在該使用者之數目為複數個時,該些使用者之間具有證據協定,在該交易之數目為複數個時,該中介者以一部分數目之該些交易作為一階段而更新該第一索引模克樹及該第二索引模克樹,且至少該第一索引模克樹與該第二索引模克樹之間具有各該階段完成時的清算協定。
- 如申請專利範圍第4項所述之分散式金流稽核方法,其中,該合約包含該中介者之抵押、該使用者之實體通貨兌換憑據或虛擬通貨、該使用者之實體通貨兌換憑據或虛擬通貨之儲金記錄、該合約與該第一索引模克樹及該第二索引模克樹之間的金流記錄、該些階段之序號、該第一索引模克樹及該第二索引模克樹之該些階段的雜湊值、以及該合約之函式。
- 如申請專利範圍第5項所述之分散式金流稽核方法,其中,該合約之函式包含將該使用者之實體通貨兌換憑據或該虛擬通貨存到該合約中的函式、將該使用者於該合約中的實體通貨兌換憑據或虛擬通貨轉移的函式、將該使用者於該合約中的實體通貨兌換憑據或虛擬通貨轉移至該第一索引模克樹的函式、將該第一索引模克樹之實體通貨兌換憑據或虛擬通貨的至少部分餘額轉移至該合約中的函式、結束一該階段並進行清算的函式、以及產生該證據資訊的函式。
- 如申請專利範圍第4項所述之分散式金流稽核方法,其中,該溝通協定包含轉帳交易、入金交易及出金交易。
- 如申請專利範圍第7項所述之分散式金流稽核方法,其中,該轉帳交易之步驟包含:該使用者送給該中介者TRmit = ((LSN, Remittance, Ui, Uj, X, 階段序號), SIGPri(Ui) ),LSN為該使用者產生的一不重複的亂數,SIGPri(Ui) 為該使用者所簽署之訊息本體的電子簽章;該中介者將該第一索引模克樹中的不同使用者(Ui,Uj)之該實體通貨兌換憑據或虛擬通貨的餘額修改,假定Ui及Uj之該實體通貨兌換憑據或虛擬通貨的餘額於轉帳後分別為p,q;該中介者以TACK =(( TRmit , p, q, GSN), SIGPri (Agent) )回覆該使用者Ui, GSN為該中介者產生的一個整數,由0開始,每次處理一該使用者的交易後都會增加1予GSN,SIGPri (Agent) 為該中介者所簽署之訊息本體的電子簽章;以及該中介者將TACK 存到該第二索引模克樹。
- 如申請專利範圍第7項所述之分散式金流稽核方法,其中,該入金交易之步驟包含:該使用者(Ui)送給該中介者TDeposit = ((LSN, Deposit, X, 階段序號), SIGPri (Ui) ), LSN為該使用者產生的一不重複的亂數,SIGPri(Ui) 為該使用者所簽署之訊息本體的電子簽章;該中介者將該第一索引模克樹中的使用者餘額修改,假定該使用者之實體通貨兌換憑據或虛擬通貨的餘額於轉帳後為p;該中介者令該合約中的Deposit_token_to_sidechain()執行,Deposit_token_to_sidechain()將該合約中的Ui.balance減去X,同時將該金流記錄增加一筆記錄:(Deposit, Ui, X, 階段序號, GSN);該中介者以TACK =(( TDepost , p, GSN), SIGPri (Agent) ))回覆該使用者,GSN為該中介者產生的一由0開始之整數,每次處理一該使用者的交易後都會增加1予GSN,SIGPri (Agent) 為該中介者所簽署之訊息本體的電子簽章;以及該中介者將TACK 存到該第二索引模克樹。
- 如申請專利範圍第7項所述之分散式金流稽核方法,其中,該出金交易之步驟包含:該使用者(Ui)送給該中介者TWithdraw = ((LSN, Withdraw, X, 階段序號), SIGPri (Ui) ),LSN為該使用者產生的一不重複的亂數,SIGPri(Ui) 為該使用者所簽署之訊息本體的電子簽章;該中介者修改該第一索引模克樹中該使用者之餘額,假定該使用者之實體通貨兌換憑據或虛擬通貨的餘額於轉帳後為p;該中介者令該合約中的Withdraw_token_from_sidechain()執行,Withdraw_token_from_sidechain()將該合約中的Ui.balance加上X,同時將該金流記錄增加一筆記錄:(Withdraw, Ui, X, 階段序號, GSN);該中介者以TACK =(( TWithdraw , p, GSN), SIGPri (Agent) ) 回覆該使用者,GSN為該中介者產生的一由0開始之整數,每次處理一該使用者的交易後都會增加1予GSN,SIGPri (Agent) 為該中介者所簽署之訊息本體的電子簽章;以及該中介者將TACK 存到該第二索引模克樹。
- 如申請專利範圍第5項所述之分散式金流稽核方法,其中,該合約更包含函式Finalize(),該中介者執行Finalize()以將該第一索引模克樹及該第二索引模克樹於現有階段結束後的雜湊值儲存於該合約並公布,同時該中介者公布該現有階段結束後的至少部分該第一索引模克樹及至少部分該第二索引模克樹以供查詢。
- 如申請專利範圍第6項所述之分散式金流稽核方法,其中,該合約具有函式Fraud_proof()以產生該證據資訊,該證據資訊係於以下情況或其組合產生:(1)該中介者於處理轉帳交易、入金交易或出金交易後沒有將交易儲存於該第二索引模克樹,該使用者執行Fraud_proof()函式以提出由該中介者回傳的TACK 及該第二索引模克樹的切片,證明該中介者沒有將該交易儲存於該第二索引模克樹;(2)該中介者於處理該轉帳交易、該入金交易或該出金交易後將該使用者的餘額算錯,由於該中介者每個交易之回傳的TACK 都有GSN,其數值為遞增且不重複,故該使用者將該交易排序並找出發生錯誤交易的前一個交易的該中介者之回傳TACK ,之後該使用者執行Fraud_proof()函式,將此錯誤交易及前一個交易的該中介者之回傳TACK 為證據,而證明該中介者提不出有GSN值介於此兩交易中GSN值的交易以證明該中介者出錯。
- 如申請專利範圍第1項所述之分散式金流稽核方法,其中,該第一索引模克樹及該第二索引模克樹係對應一區塊鏈。
- 一種分散式金流稽核裝置,係包括: 處理單元,產生相關於使用者且為實體通貨兌換憑據或虛擬通貨之餘額資訊的第一索引模克樹,以及產生相關於該餘額資訊之交易的稽核資訊之第二索引模克樹,且比對該餘額資訊與該稽核資訊;以及 儲存單元,耦接該處理單元,儲存該第一索引模克樹及該第二索引模克樹。
- 如申請專利範圍第14項所述之分散式金流稽核裝置,其中,該稽核資訊係至少對應一合約,且該處理單元處理該合約,該儲存單元儲存該合約。
- 如申請專利範圍第15項所述之分散式金流稽核裝置,其中,該使用者與中介者係以該合約而交易,且該中介者於交易後令該處理單元更新該第一索引模克樹及該第二索引模克樹,於該使用者令該處理單元比對該餘額資訊與該稽核資訊異常時,該處理單元產生證據資訊予該合約,該儲存單元儲存該證據資訊。
- 如申請專利範圍第16項所述之分散式金流稽核裝置,其中,該使用者與該中介者之間具有溝通協定,且在該使用者之數目為複數個時,該些使用者之間具有證據協定,該處理單元處理該溝通協定及該證據協定,且該儲存單元儲存該溝通協定及該證據協定,在該交易之數目為複數個時,該中介者以一部分數目之該些交易作為一階段而令該處理單元更新該第一索引模克樹及該第二索引模克樹,該儲存單元儲存更新之該第一索引模克樹及該第二索引模克樹,且至少該第一索引模克樹與該第二索引模克樹之間具有各該階段完成時的清算協定,該處理單元處理該清算協定且該儲存單元儲存該清算協定。
- 如申請專利範圍第17項所述之分散式金流稽核裝置,其中,該合約包含該中介者之抵押、該使用者之實體通貨兌換憑據或虛擬通貨、該使用者之實體通貨兌換憑據或虛擬通貨之儲金記錄、該合約與該第一索引模克樹及該第二索引模克樹之間的金流記錄、該些階段之序號、該第一索引模克樹及該第二索引模克樹之該些階段的雜湊值、以及該合約之函式。
- 如申請專利範圍第18項所述之分散式金流稽核裝置,其中,該合約之函式包含將該使用者之實體通貨兌換憑據或該虛擬通貨存到該合約中的函式、將該使用者於該合約中的實體通貨兌換憑據或虛擬通貨轉移的函式、將該使用者於該合約中的實體通貨兌換憑據或虛擬通貨轉移至該第一索引模克樹的函式、將該第一索引模克樹之實體通貨兌換憑據或虛擬通貨的至少部分餘額轉移至該合約中的函式、結束一該階段並進行清算的函式、以及產生該證據資訊的函式。
- 如申請專利範圍第17項所述之分散式金流稽核裝置,其中,該溝通協定包含轉帳交易、入金交易及出金交易。
- 如申請專利範圍第20項所述之分散式金流稽核裝置,其中,該轉帳交易之步驟包含:該使用者令該處理單元送給該中介者TRmit = ((LSN, Remittance, Ui, Uj, X, 階段序號), SIGPri(Ui) ),LSN為該使用者產生的一不重複的亂數,SIGPri(Ui) 為該使用者所簽署之訊息本體的電子簽章;該中介者令該處理單元將該第一索引模克樹中的不同使用者(Ui,Uj)之該實體通貨兌換憑據或虛擬通貨的餘額修改,假定Ui及Uj之該實體通貨兌換憑據或虛擬通貨的餘額於轉帳後分別為p,q;該中介者令該處理單元以TACK =(( TRmit , p, q, GSN), SIGPri (Agent) )回覆該使用者Ui,GSN為該中介者產生的一個整數,由0開始,該處理單元每次處理一該使用者的交易後都會增加1予GSN,SIGPri (Agent) 為該中介者所簽署之訊息本體的電子簽章;以及該中介者令該處理單元將TACK 存到該第二索引模克樹。
- 如申請專利範圍第20項所述之分散式金流稽核裝置,其中,該入金交易之步驟包含:該使用者(Ui)令該處理單元送給該中介者TDeposit = ((LSN, Deposit, X, 階段序號), SIGPri( Ui) ), LSN為該使用者產生的一不重複的亂數,SIGPri(Ui) 為該使用者所簽署之訊息本體的電子簽章;該中介者令該處理單元將該第一索引模克樹中的使用者餘額修改,假定該使用者之實體通貨兌換憑據或虛擬通貨的餘額於轉帳後為p;該中介者令該處理單元執行該合約中的Deposit_token_to_sidechain(),Deposit_token_to_sidechain()將該合約中的Ui.balance減去X,同時將該金流記錄增加一筆記錄:(Deposit, Ui, X, 階段序號, GSN);該中介者令該處理單元以TACK =(( TDepost , p, GSN), SIGPri (Agent) ))回覆該使用者,GSN為該中介者產生的一由0開始之整數,該處理單元每次處理一該使用者的交易後都會增加1予GSN,SIGPri (Agent) 為該中介者所簽署之訊息本體的電子簽章;以及該中介者令該處理單元將TACK 存到該第二索引模克樹。
- 如申請專利範圍第20項所述之分散式金流稽核裝置,其中,該出金交易之步驟包含:該使用者(Ui)令該處理單元送給該中介者TWithdraw = ((LSN, Withdraw, X, 階段序號), SIGPri (Ui) ),LSN為該使用者產生的一不重複的亂數,SIGPri(Ui) 為該使用者所簽署之訊息本體的電子簽章;該中介者令該處理單元修改該第一索引模克樹中該使用者之餘額,假定該使用者之實體通貨兌換憑據或虛擬通貨的餘額於轉帳後為p;該中介者令該處理單元執行該合約中的Withdraw_token_from_sidechain(),Withdraw_token_from_sidechain()將該合約中的Ui.balance加上X,同時將該金流記錄增加一筆記錄:(Withdraw, Ui, X, 階段序號, GSN);該中介者令該處理單元以TACK =(( TWithdraw , p, GSN), SIGPri (Agent) ) 回覆該使用者,GSN為該中介者產生的一由0開始之整數,該處理單元每次處理一該使用者的交易後都會增加1予GSN,SIGPri (Agent) 為該中介者所簽署之訊息本體的電子簽章;以及該中介者令該處理單元將TACK 存到該第二索引模克樹。
- 如申請專利範圍第18項所述之分散式金流稽核裝置,其中,該合約更包含函式Finalize(),該中介者令該處理單元執行Finalize()以將該第一索引模克樹及該第二索引模克樹於現有階段結束後的雜湊值儲存於該合約並公布,同時該中介者公布該現有階段結束後的至少部分該第一索引模克樹及至少部分該第二索引模克樹以供查詢。
- 如申請專利範圍第19項所述之分散式金流稽核裝置,其中,該合約具有函式Fraud_proof()以產生該證據資訊,該證據資訊係於以下情況或其組合產生:(1)該中介者於該處理單元處理轉帳交易、入金交易或出金交易後沒有將交易儲存於該第二索引模克樹,該使用者令該處理單元執行Fraud_proof()函式以提出由該中介者回傳的TACK 及該第二索引模克樹的切片,證明該中介者沒有將該交易儲存於該第二索引模克樹;(2)該中介者於該處理單元處理該轉帳交易、該入金交易或該出金交易後將該使用者的餘額算錯,由於該中介者每個交易之回傳的TACK 都有GSN,GSN之數值為遞增且不重複,故該使用者令該處理單元將該交易排序並找出發生錯誤交易的前一個交易的該中介者之回傳TACK ,之後該使用者令該處理單元執行Fraud_proof()函式,將此錯誤交易及前一個交易的該中介者之回傳TACK 為證據,而證明該中介者提不出有GSN值介於此兩交易中GSN值的交易以證明該中介者出錯。
- 如申請專利範圍第14項所述之分散式金流稽核裝置,其中,該第一索引模克樹及該第二索引模克樹係對應一區塊鏈。
- 一種分散式金流稽核系統,係包括: 複數個金流稽核裝置,其至少一者係包含處理單元或儲存單元,且該些金流稽核裝置具有資料傳輸單元,至少一該處理單元產生相關於使用者且為實體通貨兌換憑據或虛擬通貨之餘額資訊的第一索引模克樹、產生相關於該餘額資訊之交易的稽核資訊之第二索引模克樹、比對該餘額資訊與該稽核資訊或其組合,該資料傳輸單元傳輸至少部分對應該第一索引模克樹之資訊、至少部分對應該第二索引模克樹之資訊、該餘額資訊與該稽核資訊之比對結果或其組合,該儲存單元耦接該處理單元或該資料傳輸單元,以儲存該第一索引模克樹或該第二索引模克樹。
- 如申請專利範圍第27項所述之分散式金流稽核系統,其中,該稽核資訊係至少對應一合約,且至少一該處理單元處理該合約,至少一該儲存單元儲存該合約。
- 如申請專利範圍第28項所述之分散式金流稽核系統,其中,該使用者係與中介者以該合約而交易,且該中介者於交易後令至少一該處理單元更新該第一索引模克樹及該第二索引模克樹,於該使用者令至少一該處理單元比對該餘額資訊與該稽核資訊異常時,至少一該處理單元產生證據資訊予該合約,且至少一該儲存單元儲存該證據資訊。
- 如申請專利範圍第29項所述之分散式金流稽核系統,其中,該使用者與該中介者之間具有溝通協定,且在該使用者之數目為複數個時,該些使用者之間具有證據協定,至少一該處理單元處理該溝通協定及該證據協定,且至少一該儲存單元儲存該溝通協定及該證據協定,在該交易之數目為複數個時,該中介者以一部分數目之該些交易作為一階段而令至少一該處理單元更新該第一索引模克樹及該第二索引模克樹,至少一該儲存單元儲存更新之該第一索引模克樹及該第二索引模克樹,且至少該第一索引模克樹與該第二索引模克樹之間具有各該階段完成時的清算協定,至少一該處理單元處理該清算協定且至少一該儲存單元儲存該清算協定。
- 如申請專利範圍第30項所述之分散式金流稽核系統,其中,該合約包含該中介者之抵押、該使用者之實體通貨兌換憑據或虛擬通貨、該使用者之實體通貨兌換憑據或虛擬通貨之儲金記錄、該合約與該第一索引模克樹及該第二索引模克樹之間的金流記錄、該些階段之序號、該第一索引模克樹及該第二索引模克樹之該些階段的雜湊值、以及該合約之函式。
- 如申請專利範圍第31項所述之分散式金流稽核系統,其中,該合約之函式包含將該使用者之實體通貨兌換憑據或該虛擬通貨存到該合約中的函式、將該使用者於該合約中的實體通貨兌換憑據或虛擬通貨轉移的函式、將該使用者於該合約中的實體通貨兌換憑據或虛擬通貨轉移至該第一索引模克樹的函式、將該第一索引模克樹之實體通貨兌換憑據或虛擬通貨的至少部分餘額轉移至該合約中的函式、結束一該階段並進行清算的函式、以及產生該證據資訊的函式。
- 如申請專利範圍第30項所述之分散式金流稽核系統,其中,該溝通協定包含轉帳交易、入金交易及出金交易。
- 如申請專利範圍第33項所述之分散式金流稽核系統,其中,該轉帳交易之步驟包含:該使用者令至少一該處理單元送給該中介者TRmit = ((LSN, Remittance, Ui, Uj, X, 階段序號), SIGPri(Ui) ),LSN為該使用者產生的一不重複的亂數,SIGPri(Ui) 為該使用者所簽署之訊息本體的電子簽章;該中介者令至少一該處理單元將該第一索引模克樹中的不同使用者(Ui,Uj)之該實體通貨兌換憑據或虛擬通貨的餘額修改,假定Ui及Uj之該實體通貨兌換憑據或虛擬通貨的餘額於轉帳後分別為p,q;該中介者令至少一該處理單元以TACK =(( TRmit , p, q, GSN), SIGPri (Agent) )回覆該使用者Ui,GSN為該中介者產生的一個整數,由0開始,至少一該處理單元每次處理一該使用者的交易後都會增加1予GSN,SIGPri (Agent) 為該中介者所簽署之訊息本體的電子簽章;以及該中介者令至少一該處理單元將TACK 存到該第二索引模克樹。
- 如申請專利範圍第33項所述之分散式金流稽核系統,其中,該入金交易之步驟包含:該使用者(Ui)令至少一該處理單元送給該中介者TDeposit = ((LSN, Deposit, X, 階段序號), SIGPri (Ui) ), LSN為該使用者產生的一不重複的亂數,SIGPri(Ui) 為該使用者所簽署之訊息本體的電子簽章;該中介者令至少一該處理單元將該第一索引模克樹中的使用者餘額修改,假定該使用者之實體通貨兌換憑據或虛擬通貨的餘額於轉帳後為p;該中介者令至少一該處理單元執行該合約中的Deposit_token_to_sidechain(),Deposit_token_to_sidechain()將該合約中的Ui.balance減去X,同時將該金流記錄增加一筆記錄:(Deposit, Ui, X, 階段序號, GSN);該中介者令至少一該處理單元以TACK =(( TDepost , p, GSN), SIGPri (Agent) ))回覆該使用者,GSN為該中介者產生的一由0開始之整數,至少一該處理單元每次處理一該使用者的交易後都會增加1予GSN,SIGPri (Agent) 為該中介者所簽署之訊息本體的電子簽章;以及該中介者令至少一該處理單元將TACK 存到該第二索引模克樹。
- 如申請專利範圍第33項所述之分散式金流稽核系統,其中,該出金交易之步驟包含:該使用者(Ui)令至少一該處理單元送給該中介者TWithdraw = ((LSN, Withdraw, X, 階段序號), SIGPri (Ui) ),LSN為該使用者產生的一不重複的亂數,SIGPri(Ui) 為該使用者所簽署之訊息本體的電子簽章;該中介者令至少一該處理單元修改該第一索引模克樹中該使用者之餘額,假定該使用者之實體通貨兌換憑據或虛擬通貨的餘額於轉帳後為p;該中介者令至少一該處理單元執行該合約中的Withdraw_token_from_sidechain(),Withdraw_token_from_sidechain()將該合約中的Ui.balance加上X,同時將該金流記錄增加一筆記錄:(Withdraw, Ui, X, 階段序號, GSN);該中介者令至少一該處理單元以TACK =(( TWithdraw , p, GSN), SIGPri (Agent) ) 回覆該使用者,GSN為該中介者產生的一由0開始之整數,至少一該處理單元每次處理一該使用者的交易後都會增加1予GSN,SIGPri (Agent) 為該中介者所簽署之訊息本體的電子簽章;以及該中介者令至少一該處理單元將TACK 存到該第二索引模克樹。
- 如申請專利範圍第31項所述之分散式金流稽核系統,其中,該合約更包含函式Finalize(),該中介者令至少一該處理單元執行Finalize()以將該第一索引模克樹及該第二索引模克樹於現有階段結束後的雜湊值儲存於該合約並公布,同時該中介者公布該現有階段結束後的至少部分該第一索引模克樹及至少部分該第二索引模克樹以供查詢。
- 如申請專利範圍第32項所述之分散式金流稽核系統,其中,該合約具有函式Fraud_proof()以產生該證據資訊,該證據資訊係於以下情況或其組合產生:(1)該中介者於至少一該處理單元處理轉帳交易、入金交易或出金交易後沒有將交易儲存於該第二索引模克樹,該使用者令至少一該處理單元執行Fraud_proof()函式以提出由該中介者回傳的TACK 及該第二索引模克樹的切片,證明該中介者沒有將該交易儲存於該第二索引模克樹;(2)該中介者於至少一該處理單元處理該轉帳交易、該入金交易或該出金交易後將該使用者的餘額算錯,由於該中介者每個交易之回傳的TACK 都有GSN,GSN之數值為遞增且不重複,故該使用者令至少一該處理單元將該交易排序並找出發生錯誤交易的前一個交易的該中介者之回傳TACK ,之後該使用者令至少一該處理單元執行Fraud_proof()函式,將此錯誤交易及前一個交易的該中介者之回傳TACK 為證據,而證明該中介者提不出有GSN值介於此兩交易中GSN值的交易以證明該中介者出錯。
- 如申請專利範圍第27項所述之分散式金流稽核系統,更包括區塊鏈裝置或區塊鏈單元,該區塊鏈裝置與至少一該金流稽核裝置耦接,該區塊鏈單元設置於至少一該金流稽核裝置,該第一索引模克樹及該第二索引模克樹係至少對應該區塊鏈裝置或該區塊鏈單元中之一區塊鏈。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW107117106A TW202004626A (zh) | 2018-05-18 | 2018-05-18 | 分散式金流稽核方法、裝置及系統 |
CN201810935066.8A CN110503428A (zh) | 2018-05-18 | 2018-08-16 | 分布式金流稽核方法、装置及*** |
US16/110,753 US20190355053A1 (en) | 2018-05-18 | 2018-08-23 | Method, a device and a system of a distributed financial flows auditing |
JP2018171855A JP2019200768A (ja) | 2018-05-18 | 2018-09-13 | 分散式金流監査方法、装置及びシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW107117106A TW202004626A (zh) | 2018-05-18 | 2018-05-18 | 分散式金流稽核方法、裝置及系統 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW202004626A true TW202004626A (zh) | 2020-01-16 |
Family
ID=68532463
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW107117106A TW202004626A (zh) | 2018-05-18 | 2018-05-18 | 分散式金流稽核方法、裝置及系統 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20190355053A1 (zh) |
JP (1) | JP2019200768A (zh) |
CN (1) | CN110503428A (zh) |
TW (1) | TW202004626A (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2019203849C1 (en) * | 2019-03-04 | 2021-04-29 | Advanced New Technologies Co., Ltd. | Updating blockchain world state merkle patricia trie subtree |
CN111680317B (zh) * | 2020-04-27 | 2021-05-25 | 华东师范大学 | 一种面向区块链的乐观并发保序编码方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107683488B (zh) * | 2015-04-05 | 2023-09-05 | 数字资产(瑞士)股份有限公司 | 数字资产中介电子结算平台 |
US20170140408A1 (en) * | 2015-11-16 | 2017-05-18 | Bank Of America Corporation | Transparent self-managing rewards program using blockchain and smart contracts |
CN115660675A (zh) * | 2016-05-04 | 2023-01-31 | 阿尔戈兰德有限责任公司 | 由计算机设备执行的方法及相应***和存储介质 |
CN107730225B (zh) * | 2017-10-24 | 2021-07-06 | 广东工业大学 | 一种大数据交易方法、***、设备及计算机存储介质 |
-
2018
- 2018-05-18 TW TW107117106A patent/TW202004626A/zh unknown
- 2018-08-16 CN CN201810935066.8A patent/CN110503428A/zh active Pending
- 2018-08-23 US US16/110,753 patent/US20190355053A1/en not_active Abandoned
- 2018-09-13 JP JP2018171855A patent/JP2019200768A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
CN110503428A (zh) | 2019-11-26 |
US20190355053A1 (en) | 2019-11-21 |
JP2019200768A (ja) | 2019-11-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109214818B (zh) | 一种跨链交易方法及装置 | |
US11895246B2 (en) | Devices, systems, and methods for facilitating low trust and zero trust value transfers | |
US10977632B2 (en) | Electronic bill management method, apparatus, and storage medium | |
US20200265516A1 (en) | Trusted tokenized transactions in a blockchain system | |
WO2019019490A1 (zh) | 一种用于支付区块链网络中交易费用的方法和*** | |
JP2019523495A (ja) | 分散トランザクションコンセンサスネットワークのデジタル財管理 | |
TWM543413U (zh) | 利用區塊鏈技術進行交易的網路借貸平台 | |
CN109064167B (zh) | 基于区块链的数据处理方法和装置 | |
JP2020047104A (ja) | 決済システム、決済方法、利用者装置、決済プログラム | |
WO2020087042A1 (en) | Blockchain consensus systems and methods involving a time parameter | |
CN110866753B (zh) | 一种第三方结算的控制方法、装置、电子设备和存储介质 | |
JP2020500458A (ja) | 情報保護用のシステム及び方法 | |
CN110910000A (zh) | 一种区块链资产管理方法和装置 | |
JPWO2019167116A1 (ja) | ブロックチェーン管理システム、ブロックチェーン管理装置、情報提供装置及びブロックチェーン管理方法 | |
US11922526B2 (en) | Net settlement of subrogation claims using a distributed ledger | |
CN113706313A (zh) | 基于区块链的融资方法、***及计算机可读存储介质 | |
CN111292190A (zh) | 交易生成方法、区块创建方法及相关装置、设备 | |
TW202004626A (zh) | 分散式金流稽核方法、裝置及系統 | |
TWI608434B (zh) | Decentralized electronic transaction record method and system with traceability verification mechanism | |
CN115619395A (zh) | 基于区块链的数据处理方法及相关设备 | |
CN116029825B (zh) | 区块链的交易方法、装置、***、电子设备及存储介质 | |
WO2023078158A1 (zh) | 基于区块链的汇款汇路管理 | |
JP6885457B2 (ja) | 仮想通貨の支払代行装置、仮想通貨の支払代行方法及びプログラム | |
CN110852891B (zh) | 基于轧差的数据处理方法、装置以及可读存储介质 | |
AU2019101581A4 (en) | System and method for information protection |