本技術(shù)涉及區(qū)塊鏈,尤其涉及一種數(shù)據(jù)處理方法、裝置、設(shè)備、存儲介質(zhì)和程序產(chǎn)品。
背景技術(shù):
1、對區(qū)塊鏈底層技術(shù)開展研究發(fā)現(xiàn),以比特幣、以太坊網(wǎng)絡(luò)為代表的區(qū)塊+鏈式結(jié)構(gòu),存在可擴展性差的問題,消除可擴展性差這個問題是推進區(qū)塊鏈技術(shù)的重大難關(guān),然而,擴大容量往往需要在數(shù)據(jù)安全性和去中心化程度上作出一定讓步。
2、如何在保障可擴展性的同時,保障數(shù)據(jù)安全性、去中心化程度是亟待解決的一個問題。
技術(shù)實現(xiàn)思路
1、本技術(shù)提供一種數(shù)據(jù)處理方法、裝置、設(shè)備、存儲介質(zhì)和程序產(chǎn)品,用以解決現(xiàn)有技術(shù)中區(qū)塊鏈交易性能的可擴展性差的問題。
2、第一方面,本技術(shù)提供一種數(shù)據(jù)處理方法,其特征在于,所述方法包括:
3、響應(yīng)于發(fā)布指令,生成所述發(fā)布指令對應(yīng)的目標標識符;
4、在所述目標標識符符合第一預設(shè)要求時,針對業(yè)務(wù)提供方預先構(gòu)造的有向無環(huán)圖,獲取所述有向無環(huán)圖包含的至少一個原始交易單元的原始標識符;
5、基于所述原始標識符,從所述原始交易單元中確定出驗證單元;
6、采用所述驗證單元驗證所述目標交易信息,并在驗證通過后,生成構(gòu)建指令并發(fā)送給業(yè)務(wù)提供方,以在所述有向無環(huán)圖中基于所述目標交易信息構(gòu)建目標交易單元。
7、在其中一個實施例中,所述生成所述發(fā)布指令對應(yīng)的目標標識符之后,還包括:
8、采用預先設(shè)置的哈希函數(shù),計算所述目標標識符對應(yīng)的目標哈希值;
9、將所述目標哈希值與預先設(shè)置的第一哈希值閾值進行比對;
10、所述在所述目標標識符符合第一預設(shè)要求時,針對業(yè)務(wù)提供方預先構(gòu)造的有向無環(huán)圖,獲取所述有向無環(huán)圖包含的至少一個原始交易單元的原始標識符,包括:
11、在所述目標哈希值小于等于所述第一哈希值閾值時,獲取至少一個所述原始交易單元的原始標識符。
12、在其中一個實施例中,采用如下公式將所述目標哈希值與預先設(shè)置的第一哈希值閾值進行比對:
13、h(tx,nonce1)≤a
14、其中,h()表示所述哈希函數(shù),(tx,nonce1)表示所述目標標識符,a表示所述第一哈希值閾值,h(tx,nonce1)表示所述目標哈希值。
15、在其中一個實施例中,所述方法還包括:
16、當所述目標標識符不符合第一預設(shè)要求時,生成所述發(fā)布指令對應(yīng)的更新標識符;
17、在所述更新標識符符合所述第一預設(shè)要求時,獲取所述有向無環(huán)圖包含的至少一個原始交易單元的原始標識符;
18、基于所述原始標識符,從所述原始交易單元中確定出所述驗證單元;
19、采用所述驗證單元驗證所述目標交易信息,并在驗證通過后,生成所述構(gòu)建指令并發(fā)送給業(yè)務(wù)提供方,以在所述有向無環(huán)圖中基于所述目標交易信息構(gòu)建目標交易單元。
20、在其中一個實施例中,所述基于所述原始標識符,從所述原始交易單元中確定出驗證單元,包括:
21、采用預先設(shè)置的哈希函數(shù),計算各所述原始標識符對應(yīng)的原始哈希值;
22、將預設(shè)數(shù)量個所述原始哈希值進行隨意組合,得到至少一個原始哈希值集合;
23、采用所述哈希函數(shù),計算各所述原始哈希值集合中、所述原始哈希值對應(yīng)的至少一個驗證哈希值;
24、在所述原始哈希值集合對應(yīng)的驗證哈希值均小于等于預先設(shè)置的第二哈希值閾值時,將所述原始哈希值集合對應(yīng)的原始交易單元作為所述驗證單元;所述第二哈希值閾值大于等于所述第一哈希值閾值。
25、在其中一個實施例中,所述基于所述原始標識符,從所述原始交易單元中確定出驗證單元的步驟,采用如下公式確定所述驗證單元:
26、h(h(txn1),h(txn2),…h(huán)(txni),nonce2)≤b
27、其中,h()表示所述哈希函數(shù),txni表示第i個原始交易單元,b表示所述第二哈希值閾值,h(txni)表示第i個原始交易單元的原始哈希值,(h(txn1),h(txn2),…h(huán)(txni),nonce2)表示i個所述原始哈希值組成的原始哈希值集合,h(h(txn1),h(txn2),…h(huán)(txni),nonce2)表示所述原始哈希值集合對應(yīng)的i個驗證哈希值。
28、在其中一個實施例中,所述方法還包括:
29、當不存在對應(yīng)的驗證哈希值均小于等于所述第二哈希值閾值的原始哈希值集合時,將所述預設(shè)數(shù)量調(diào)整為更新數(shù)量;
30、將更新數(shù)量個所述原始哈希值進行隨意組合,得到至少一個更新哈希值集合;
31、獲取各所述更新哈希值集合對應(yīng)的第二原始標識符集合,并采用所述哈希函數(shù)計算所述第二原始標識符集合對應(yīng)的至少一個更新哈希值;
32、在所述更新哈希值集合對應(yīng)的更新哈希值均小于等于所述第二哈希值閾值時,將所述更新哈希值集合對應(yīng)的原始交易單元作為所述驗證單元。
33、在其中一個實施例中,所述生成構(gòu)建指令并發(fā)送給業(yè)務(wù)提供方,以在所述有向無環(huán)圖中基于所述目標交易信息構(gòu)建目標交易單元之后,還包括:
34、基于所述驗證單元,計算交易難度值;
35、當所述交易難度值達到預設(shè)閾值時,生成難度調(diào)整提示。
36、在其中一個實施例中,所述基于所述驗證單元,計算交易難度值,包括:
37、基于所述驗證單元的原始標識符,計算所述目標交易單元的第一驗證成本和所述驗證單元的第二驗證成本;
38、基于所述第一驗證成本和所述第二驗證成本,確定所述交易難度值。
39、在其中一個實施例中,所述基于所述目標交易單元的目標標識符和所述驗證單元的原始標識符,計算所述目標交易單元的第一驗證成本和所述驗證單元的第二驗證成本,包括:
40、采用預先設(shè)置的哈希函數(shù),計算各所述原始標識符對應(yīng)的原始哈希值;
41、獲取各所述驗證單元對應(yīng)的前序驗證單元、以及各所述前序驗證單元對應(yīng)的前序標識符,并采用所述哈希函數(shù),計算各所述前序標識符對應(yīng)的前序哈希值;
42、基于所述原始哈希值和所述前序哈希值,確定所述第一驗證成本和所述第二驗證成本。
43、在其中一個實施例中,所述基于所述第一驗證成本和所述第二驗證成本,確定所述交易難度值的步驟,采用如下公式確定所述交易難度值:
44、f=f1+f2
45、f1=∑verifyj,yj=max(h(txn1),h(txn2),...h(txnl))
46、f2=max(h(txn1),h(txn2),…h(huán)(txni))
47、其中,f表示所述交易難度值,f1表示所述第一驗證成本,f2表示所述第二驗證成本;yj表示第j個驗證單元對應(yīng)的前序驗證單元;txnl表示第j個驗證單元對應(yīng)的第l個前序驗證單元;(h(txn1),h(txn2),…h(huán)(txnl))表示第j個驗證單元對應(yīng)的l個前序驗證單元的前序哈希值,h(txn1),h(txn2),…h(huán)(txni)表示各所述驗證單元對應(yīng)的原始哈希值。
48、第二方面,本技術(shù)還提供了一種數(shù)據(jù)處理裝置,包括:
49、生成模塊,用于響應(yīng)于發(fā)布指令,生成所述發(fā)布指令對應(yīng)的目標標識符;
50、獲取模塊,用于在所述目標標識符符合第一預設(shè)要求時,針對業(yè)務(wù)提供方預先構(gòu)造的有向無環(huán)圖,獲取所述有向無環(huán)圖包含的至少一個原始交易單元的原始標識符;
51、確定模塊,用于基于所述原始標識符,從所述原始交易單元中確定出驗證單元;
52、構(gòu)建模塊,用于采用所述驗證單元驗證所述目標交易信息,并在驗證通過后,生成構(gòu)建指令并發(fā)送給業(yè)務(wù)提供方,以在所述有向無環(huán)圖中基于所述目標交易信息構(gòu)建目標交易單元。
53、第三方面,本技術(shù)還提供了一種計算機設(shè)備。所述計算機設(shè)備包括存儲器和處理器,所述存儲器存儲有計算機程序,所述處理器執(zhí)行所述計算機程序時實現(xiàn)上述任一實施例所述的數(shù)據(jù)處理方法。
54、第四方面,本技術(shù)還提供了一種計算機可讀存儲介質(zhì)。所述計算機可讀存儲介質(zhì),其上存儲有計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)上述任一實施例所述的數(shù)據(jù)處理方法。
55、第五方面,本技術(shù)還提供了一種計算機程序產(chǎn)品。所述計算機程序產(chǎn)品,包括計算機程序,該計算機程序產(chǎn)品被處理器執(zhí)行時實現(xiàn)上述任一實施例所述的數(shù)據(jù)處理方法。
56、上述數(shù)據(jù)處理方法、裝置、設(shè)備、存儲介質(zhì)和程序產(chǎn)品,能夠在接收到針對業(yè)務(wù)提供方的特定有向無環(huán)圖的發(fā)布指令時,首先生成滿足第一預設(shè)要求的目標標識符,從而能夠證明目標標識符對應(yīng)的交易動作的有效性,其次基于有向無環(huán)圖中包含的原始交易單元的原始標識符,篩選出用于驗證目標標識符對應(yīng)交易動作的驗證單元,并在驗證單元驗證通過后,觸發(fā)業(yè)務(wù)提供方在有向無環(huán)圖中基于交易動作的目標交易信息、構(gòu)建目標交易單元,從而確保該交易動作能夠滿足業(yè)務(wù)提供方制定的特定規(guī)則,以維護有向無環(huán)圖的安全性和完整性;將有向無環(huán)圖應(yīng)用于交易處理,在保障可擴展性的同時,保障數(shù)據(jù)安全性、去中心化程度。