999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Quorum區塊鏈平臺性能研究

2022-05-27 16:35:08陳子凡王利朋周春天潘常春賈志娟張麗
計算機時代 2022年5期

陳子凡 王利朋 周春天 潘常春 賈志娟 張麗

摘? 要: 以太坊是一種開源的支持智能合約的公共區塊鏈,有更快的“出塊”速度和更先進的獎勵機制。Quorum是一種支持隱私交易和隱私合約的聯盟鏈,相比于以太坊而言,Quorum提供了交易和智能合約私有化功能、多種共識機制以及具有更高的性能。Quorum作為一個新生區塊鏈平臺,有關其性能的研究還很少。本文研究了Quorum在不同工作負載和一致性算法下的吞吐量,并且通過一系列微觀基準測試后,更進一步探討了事務和智能合約參數對吞吐量的影響。

關鍵詞: 區塊鏈; 聯盟鏈; Quorum; 吞吐量; 智能合約

中圖分類號:TP311.13? ? ? ? ? 文獻標識碼:A? ? ? 文章編號:1006-8228(2022)05-29-04

Performance evaluation of Quorum blockchain platform

Chen Zifan Wang Lipeng Zhou Chuntian Pan Changchun Jia Zhijuan1, Zhang Li

Abstract: Ethereum is an open-source public blockchain supporting smart contracts with faster "block out" and more advanced reward mechanism. Quorum is an alliance chain supporting privacy transactions and privacy contracts. Compared with Ethereum, Quorum provides transaction and smart contract privatization functions, multiple consensus mechanisms and higher performance. As a new blockchain platform, there is little research on the performance of Quorum. In order to obtain its accurate performance data, the throughput of Quorum under different workloads and consistency algorithms is studied. After a series of micro-benchmarks, the impact of transaction and smart contract parameters on throughput is further explored.

Key words: blockchain; consortium blockchain; Quorum; throughput; smart contract

收稿日期:2021-10-25

引言

2008年,一位名為中本聰的神秘人發表的關于“一個點對點的電子貨幣交易的機制”[1]的論文出現在網上,它使得交易去中心化,使之變成點對點的可溯源,形成防篡改的分布式賬本,由此進入區塊鏈1.0時代。智能合約與貨幣相結合,使區塊鏈對金融領域提供更廣泛的應用場景,區塊鏈被真正應用,進入區塊鏈2.0時代[2]。除了金融領域的需求外,各行業的應用場景浮出水面,當區塊鏈被應用到更多行業時,標志區塊鏈3.0時代到來[3]。為了滿足不同的需求,不同特征的區塊鏈平臺被提出,如聯盟鏈中的Quorum和Libra。區塊鏈已成為加密貨幣系統的核心技術,被譽為數字經濟的基石[4]。

區塊鏈分兩大類,私有鏈條和公有鏈[5],兩者根據不同的應用場景被提出。還有一種叫聯盟鏈的區塊鏈,它屬于私有鏈。衡量區塊鏈要考慮的指標是性能和可擴展性。比特幣和以太坊是公有鏈的代表[6],共識機制通常使用工作量證明,此機制安全性高,但會導致高延遲和較低的交易吞吐量,它的交易吞吐量在100之內,Visa的交易吞吐量在2000左右[7],Libra的交易吞吐量為600左右[8],因此公有鏈很難應用于交易量極大且產生極快的全球經濟。Hyperledger Fabric[9]是私有鏈代表,共識機制通常用拜占庭和拜占庭容錯,后者的性能往往比前者更好。Quorum被JP Morgan推出,屬于聯盟鏈。很少有關于Quorum的性能數據。本文主要做了以下研究。

⑴ 對Quorum2.0區塊鏈平臺做了實驗評估,展示了其性能特征。

⑵ 通過為Quorum定制的一套微觀基準測試,研究了不同的智能合約如何影響交易的處理。

1 背景知識

1.1 Quorum介紹

Quorum是企業級區塊鏈平臺,是一種支持隱私交易和隱私合約的聯盟鏈。它支持智能合約和交易的機密性和隱私性以及拜占庭容錯共識算法。

Quorum是以太坊Go語言實現版本的一個分支,復用并擴展了以太坊的一些特性。其邏輯架構主要由以下部分組成:對geth進行修改之后的節點、交易管理器和Enclave。如圖1所示。交易管理器負責交易的保密性,允許訪問私人事務的加密交易數據并且可以與其他節點上運行的交易管理器通信。它利用Enclave執行加密,實現數據安全加密。Enclave的存在保證了區塊鏈記帳真實性和安全性,所有公私鑰生成、數據的加密/解密都由Enclave模塊完成。

1.2 PBFT和RAFT共識算法

PBFT算法根據密碼學算法保證節點之間的消息不可篡改,其能容忍最大無效或惡意節點數為f;而要保證網絡可以正常工作,則要在網絡中存在2f+1個正常節點;即系統的總節點數則為R=3f+1,容忍小于1/3個R個無效或者惡意節點數[11]。PBFT通常用于聯盟鏈,文獻[13]對PBFT用在聯盟鏈中進行了優化。

RAFT算法有三種角色,分別是:跟隨者、候選人和領導者。正常狀態下,節點中只有一個節點作為領導者,剩下的節點作為跟隨者。跟隨者不會主動發出信息,只是反饋領導者或者候選人的信息以及轉發客戶端的請求發送給領導者。而候選人角色只是一種短暫的狀態。RAFT算法支持最大的無效或者惡意節點數是(R-1)/2,其中R為節點總數量。RAFT算法大致分為兩步:第一個步:領導者選舉;第二步:日志復制。而日志復制又可以細分記錄日志和提交數據兩個過程[12]。

2 實驗評估

2.1 實驗設備

Quorum區塊鏈網絡含3~6個用戶賬戶。每個賬戶運行在不同的物理機。物理機有16GB內存,通過1Gbps交換機相互連接,表1列舉了相關配置等信息。

2.2 客戶端安裝

實驗使用nodejs的版本為14.10.0,使用geth軟件連接用戶賬戶、進入命令行模式和執行js腳本。Quorum官方提供了一種可以快速搭建一個簡單的Quorum網絡方式,其包含多個腳本,每個腳本都封裝了geth命令,實驗使用了封裝后的腳本。docker的版本為7.6.0。實驗用Quorum-maker框架快速便捷地在多個物理機之間搭建Quorum網絡。在進行搭建時,需要設置賬戶的標識符、IP地址和RPC端口號等信息,默認為22000。當第一個賬戶創建成功后,會自動啟動以及其所在的網絡。在瀏覽器輸入http://localhost:22004(默認端口號)即可查看網頁形式的Quorum網絡信息,包含用戶賬戶數目、交易數量以及區塊數量等信息。其他賬戶若要加入網絡,則選擇對應的加入網絡,并且設置本賬戶的標識符、IP地址、所加入目標網絡中賬戶的IP地址等信息。此時目標網絡中對應IP地址的賬戶會收到這個申請,若同意則加入成功,反之則反。

2.3 實驗設計

2.3.1 實驗步驟

對實驗劃分了三個步驟,創建賬戶和Quorum網絡、加入Quorum網絡以及產生并查詢交易情況。

⑴ 創建帳戶和Quorum網絡。在創建網絡時會根據輸入的用戶賬戶信息創建賬戶和網絡。信息包括本用戶賬戶的標識符、IP地址、RPC端口號、網絡監聽端口號、RAFT端口號以及節點管理器端口號等數據。若顯示創建成功,則系統會生成用戶賬戶的公鑰、賬戶地址以及給賬戶分配1019wei的以太幣,反之則反。用戶可以使用本用戶賬戶公鑰發起私有交易或部署私有智能合約,用戶賬戶地址可以作為交易中接收方地址或作為智能合約的調用方。

⑵ 加入Quorum網絡。加入網絡同樣也需要填寫信息生成一個用戶賬戶并且自動發起加入網絡的申請。信息為加入目標網絡的賬戶IP地址和其管理器端口號,剩余信息標題和第一步相同。若信息無誤則需要目標網絡中賬戶的同意,若同意,則加入網絡,反之則反。

⑶ 產生并查詢交易情況。每個用戶賬戶都以極小間隔為周期調用智能合約對Quorum進行一個壓力測試,每調用一次智能合約都會產生一筆交易。再由另一個賬戶使用腳本查詢。本文實驗部分將會統計不同智能合約產生的交易被處理速度的情況。

2.3.2 性能測試

為了全面地測試出Quorum網絡的綜合性能,本實驗采用了三種不同的智能合約,每種智能合約除了測試其交易吞吐量,還根據智能合約自身的特性,對Quorum網絡中不同的層次進行了測試。三種智能合約部分代碼具體如下。

⑴ Transfer智能合約:該智能合約的作用是從本智能合約中向指定賬戶轉入金額,主要是針對轉賬層的執行性能,具體代碼如表2所示。

⑵ Do-nothing智能合約:該智能合約的作用是衡量共識機制的性能,具體代碼如表3所示。通過調用fun函數執行。因為該智能合約只有一行return代碼,所以運行時對Quorum網絡性能的影響很小。又因為其邏輯簡單,不會產生額外的操作,也就是說,當運行此智能合約時,Quorum平臺的性能主要取決于共識機制的性能。

⑶ VM-heavy智能合約:該智能合約作用是衡量Quorum平臺的健壯性,具體如表4所示。通過調用fabonacci函數,返回出第100個斐波那契數,這樣可以使得此函數需要較長的時間來運行,因此可以評估Quorum網絡的健壯性。

在實驗中,用戶賬戶調用智能合約。開始時,每個賬戶以極小間隔為周期調用3種智能合約,調用一次可以產生一筆交易。待Quorum網絡穩定后,啟動腳本獲得交易吞吐量。獲得交易吞吐量要進行n組記錄。在每組中,交易總量除以時間得到交易吞吐量。每組交易吞吐量相加除以n,得出一個平均值,此值則為最終的交易吞吐量(Transaction Per Second,TPS)。但要獲得每組的交易總量,首先要獲得每組包含的區塊數目,再調用接口得到區塊包含的交易數。但是,每組中第一個區塊可能包含已經存在的交易,因此,需要在記錄開始和結束時都獲得第一個區塊包含的交易數量,若相同則說明此區塊在該組記錄中沒有產生新的交易。綜上,TPS的計算公式可以寫為:

其中n表示實驗包含n組記錄,ts+x表示某組記錄的最后一時刻,ts表示某組記錄最開始一時刻,x表示某組記錄的時間間隔,TXS表示某組記錄的交易總量,i表示第i組記錄。而每組交易總量的計算公式可以寫為:

其中bid1代表第一個區塊號,bid2代表最后一個區塊號。對于第二個及之后的區塊,txs表示區塊所包含的交易量,對于第一個區塊,txss+x表示最后時刻所含交易數,txss表示最開始時刻所含交易數。

2.4 衡量指標

TPS即區塊鏈網絡每秒成功處理的交易數量,其反應了區塊鏈系統在單位時間內處理交易的能力。當系統進入高壓力區時,TPS會有所下降,如果再繼續加壓的話,會出現少量的失敗交易[14]。

2.5 測試結果

圖2橫軸代表交易數量,縱軸代表TPS。由圖2可得,TPS隨著交易量的增長穩定在一個數值附近。其中,Do-nothing產生的TPS最高,大約在450左右,不過在交易數為6000時,其TPS最低,原因是Quorum進入高壓力區出現失敗交易,導致發起交易的賬戶暫時停頓,停頓片刻后,交易吞吐量回歸正常。其次是VM-heavy,TPS在320左右,不過在交易數量為40000時,其TPS出現最低,原因同上。最后是Transfer,TPS在300左右,運行時比較穩定,沒有出現交易失敗的現象。數據見表5。

圖3橫軸代表用戶賬戶數目,縱軸代表TPS。由圖3可得,TPS隨著用戶賬戶數的增加而緩慢增加。因為增加賬戶數目,就會增加交易發起方數目,單位時間內交易發起量也會隨之增加,若要將所得到的TPS除以用戶賬戶數,則會發現TPS出現下降,因為用戶賬戶數目增加使共識時延的增加。數據見表6。

3 結論

本文采用三種不同的智能合約對Quorum區塊鏈平臺的性能和可擴展性進行了研究。研究結果表現出Quorum的交易吞吐量雖然比公有鏈區塊鏈的交易吞吐量高,但是和聯盟鏈中的Hyperledger Fabric相比還是較低。因此,我們后續將會以如何提高Quorum的性能為出發點進行研究。

參考文獻(References):

[1] Bitcoin: A Peer-to-Peer Electronic Cash System[J]. Social

Science Electronic Publishing

[2] 李赫.區塊鏈2.0架構及其保險業應用初探[J].金卡工程,

2017,Z1(209):50-54

[3] 王海濤,韓冬暉.區塊鏈技術在融媒體時代的應用探索[J].廣播

電視信息,2020,338(6):19-20

[4] 馬瑞鵬,張珂雯.區塊鏈發展歷程與研究初探[J]. 數碼世界,

2020,182(12):13-14

[5] Marko Vukoli?. Rethinking Permissioned Blockchains[P].

Blockchain, Cryptocurrencies and Contracts,2017

[6] Wood G.Ethereum: a secure decentralised generalised

transaction ledger,2014

[7] Lee D, Jang Y, Jang H, et al. 80% of Block Propagation

Rate is Enough-Towards Secure and Efficient PoW-based Blockchain Consensus (poster)[C]//the 17th Annual International Conference,2019

[8] J Zhang, J Gao, Wu Z , et al. Performance Analysis of the

Libra Blockchain: An Experimental Study[C]//2019 2nd International Conference on Hot Information-Centric Networking (HotICN). IEEE,2020

[9] Androulaki E, Manevich Y,? Muralidharan S, et al.

Hyperledger fabric: a distributed operating system for permissioned blockchains[J].2018

[10] Baliga A, Subhod I, Kamat P, et al. Performance

Evaluation of the Quorum Blockchain Platform[J].2018

[11] Castro M,? Liskov B. Practical Byzantine Fault Tolerance[J].

ACM Transactions on Computer Systems (TOCS),2002

[12] Ongaro D, Ousterhout J K. In search of an understand-

able consensus algorithm[J]. draft of october,2014

[13] 方燚飚,周創明,李松,等.聯盟鏈中實用拜占庭容錯算法的

改進[J/OL].計算機工程與應用:1-10[2021-10-18].http://kns.cnki.net/kcms/detail/11.2127.tp.20210224.

1322.014.html.

[14] 王銳.區塊鏈系統的性能評估與優化[D].中國科學院大學

(中國科學院深圳先進技術研究院),

基金項目:國家重點研發計劃(2020YFB1005404); 河南省高等學校重點科研項目(22A520048); 鄭州師范學院大學生科研創新基金資助(DCY2020017)

作者簡介:陳子凡(2000-),男,河南安陽人,本科,主要研究方向:區塊鏈、軟件工程。

通訊作者:王利朋(1987-),男,河南衛輝人,博士研究生,主要研究方向:虛擬化安全、云存儲、并行計算。

主站蜘蛛池模板: 亚洲欧美日韩精品专区| 制服丝袜一区| 亚洲一区二区三区国产精品| 亚洲伊人天堂| 中国毛片网| 久久久久亚洲AV成人网站软件| 亚洲天堂免费| 一级毛片无毒不卡直接观看| 国产色爱av资源综合区| www.99在线观看| 精品国产乱码久久久久久一区二区| 国产精品熟女亚洲AV麻豆| 99精品久久精品| 亚洲午夜国产精品无卡| 色综合久久久久8天国| 欧美一级片在线| 五月丁香伊人啪啪手机免费观看| 午夜电影在线观看国产1区| 91无码人妻精品一区| 99九九成人免费视频精品| 亚洲av日韩av制服丝袜| 亚洲天堂日韩在线| 在线五月婷婷| 无码精品福利一区二区三区| 国产小视频免费| 中文字幕中文字字幕码一二区| 国产又色又爽又黄| 黄色福利在线| 精品夜恋影院亚洲欧洲| 国产H片无码不卡在线视频| 免费在线成人网| 免费一级毛片完整版在线看| 国模私拍一区二区三区| 国产成人无码久久久久毛片| 欧美精品啪啪| 亚洲无卡视频| 亚洲一区二区三区在线视频| a色毛片免费视频| 久久国产免费观看| 午夜精品一区二区蜜桃| 精品国产毛片| 男人天堂亚洲天堂| 尤物午夜福利视频| 午夜在线不卡| 日韩毛片免费观看| 青草国产在线视频| 日韩在线欧美在线| 国产欧美日韩资源在线观看| 免费毛片全部不收费的| 国产网站免费| 欧美人与牲动交a欧美精品| 毛片在线看网站| 亚洲成a人在线观看| 在线一级毛片| 熟妇人妻无乱码中文字幕真矢织江| 日韩毛片免费| 美女一区二区在线观看| 国产成人精品第一区二区| 亚洲中文无码av永久伊人| 日本精品视频| 国产不卡在线看| 免费女人18毛片a级毛片视频| 99人妻碰碰碰久久久久禁片| 亚洲最新在线| 成人国内精品久久久久影院| 伊人精品视频免费在线| 丝袜国产一区| 亚洲人成网站18禁动漫无码| 视频一本大道香蕉久在线播放| 国产91在线|日本| 免费无码网站| 国产黑人在线| 不卡无码网| 亚洲第一香蕉视频| 国产在线观看91精品亚瑟| 五月婷婷丁香色| 狠狠色综合网| 国产欧美日韩综合在线第一| 国产乱人激情H在线观看| 激情无码字幕综合| 国产成人盗摄精品| 91视频区|