本申請涉及區塊鏈,具體而言,涉及一種區塊鏈跨鏈交易驗證方法、裝置、電子設備和存儲介質。
背景技術:
1、在區塊鏈的跨鏈交易中,通常采用中繼模式來實現異構鏈的跨鏈交易。當前的中繼模式主要有兩種,一是通過在跨鏈相關的鏈之外增加一條區塊鏈(稱為中繼鏈),通過區塊鏈來保證跨鏈事務的安全性和不可篡改性;二是采用跨鏈消息傳輸協議的形式,通過與不同域的跨鏈路由建立點對點安全鏈接,將消息發送到對應區塊鏈域。
2、在采用跨鏈消息傳輸協議的形式進行跨鏈交易的過程中,發起方在收到目標鏈事務完成的消息后,需要對目標鏈的執行結果進行驗證。由于一個跨鏈事務包含多個跨鏈子任務,多個子任務中會存在對同一個交易的多次驗證,并且當前的跨鏈讀取也會需要對來自目標鏈的數據正確性和存在性進行驗證。這些重復的交易驗證,使得跨鏈交易的效率低下。
3、因此,如何提高跨鏈交易的效率成為業界亟待解決的技術問題。
技術實現思路
1、本申請提供一種區塊鏈跨鏈交易驗證方法、裝置、電子設備和存儲介質,用于解決如何提高跨鏈交易的效率的技術問題。
2、本申請提供一種區塊鏈跨鏈交易驗證方法,包括:
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、接收單元,用于接收當前區塊鏈發送的跨鏈交易驗證請求;
28、確定單元,用于確定所述跨鏈交易驗證請求對應的交易驗證查詢標識;
29、查詢單元,用于基于所述交易驗證查詢標識在緩存表中進行查詢,確定所述交易驗證查詢標識對應的交易驗證信息;
30、發送單元,用于將所述交易驗證信息發送至所述當前區塊鏈;
31、其中,所述緩存表用于存儲各個目標區塊鏈返回的交易驗證信息;所述當前區塊鏈與所述目標區塊鏈處于不同的域;所述緩存表設置于跨鏈路由;所述跨鏈路由與所述當前區塊鏈屬于同一域。
32、本申請提供一種電子設備,包括存儲器、處理器及存儲在所述存儲器上并可在所述處理器上運行的計算機程序,所述處理器執行所述計算機程序時實現所述區塊鏈跨鏈交易驗證方法。
33、本申請提供一種非暫態計算機可讀存儲介質,其上存儲有計算機程序,所述計算機程序被處理器執行時實現如所述區塊鏈跨鏈交易驗證方法。
34、本申請提供一種計算機程序產品,包括計算機程序,所述計算機程序被處理器執行時實現所述區塊鏈跨鏈交易驗證方法。
35、本申請提供的區塊鏈跨鏈交易驗證方法、裝置、電子設備和存儲介質,接收當前區塊鏈發送的跨鏈交易驗證請求;確定跨鏈交易驗證請求對應的交易驗證查詢標識;基于交易驗證查詢標識在緩存表中進行查詢,確定交易驗證查詢標識對應的交易驗證信息;將交易驗證信息發送至當前區塊鏈;由于當前區塊鏈與目標區塊鏈處于不同的域,緩存表設置于與當前區塊鏈屬于同一域的跨鏈路由,用于存儲各個目標區塊鏈返回的交易驗證信息;使得當前區塊鏈可以通過域內訪問跨鏈路由的緩存表直接獲取交易驗證信息而無需跨域訪問目標區塊鏈,并且在跨鏈事務包含多個跨鏈子任務,多個子任務中會存在對同一個交易的多次驗證的情況下,能夠大幅度地減少重復的跨域請求,提高了跨鏈交易驗證的效率,也提高了跨鏈交易的效率。
1.一種區塊鏈跨鏈交易驗證方法,其特征在于,包括:
2.根據權利要求1所述的區塊鏈跨鏈交易驗證方法,其特征在于,所述緩存表基于鍵值對對各個目標區塊鏈返回的交易驗證信息進行存儲;
3.根據權利要求2所述的區塊鏈跨鏈交易驗證方法,其特征在于,所述數據存留時間包括所述交易驗證信息的緩存開始時間和存留設定時長;所述方法還包括:
4.根據權利要求3所述的區塊鏈跨鏈交易驗證方法,其特征在于,所述方法還包括:
5.根據權利要求1至4任一項所述的區塊鏈跨鏈交易驗證方法,其特征在于,所述基于所述交易驗證查詢標識在緩存表中進行查詢,確定所述交易驗證查詢標識對應的交易驗證信息,包括:
6.根據權利要求1至4任一項所述的區塊鏈跨鏈交易驗證方法,其特征在于,所述方法還包括:
7.一種區塊鏈跨鏈交易驗證裝置,其特征在于,包括:
8.一種電子設備,包括存儲器、處理器及存儲在所述存儲器上并可在所述處理器上運行的計算機程序,其特征在于,所述處理器執行所述計算機程序時實現如權利要求1至6任一項所述區塊鏈跨鏈交易驗證方法。
9.一種非暫態計算機可讀存儲介質,其上存儲有計算機程序,其特征在于,所述計算機程序被處理器執行時實現如權利要求1至6任一項所述區塊鏈跨鏈交易驗證方法。
10.一種計算機程序產品,包括計算機程序,其特征在于,所述計算機程序被處理器執行時實現權利要求1至6任一項所述區塊鏈跨鏈交易驗證方法。