【超越白皮書 2】EOS 主網(wǎng)上線前夕的實(shí)測(cè)分析與技術(shù)建議
火幣區(qū)塊鏈應(yīng)用研究院從技術(shù)角度對(duì)EOSIO保持跟蹤,并對(duì)上線期間可能會(huì)遇到的問題進(jìn)行研究分析,主要得到以下研究結(jié)果:
多鏈上線的情況有可能出現(xiàn),但更應(yīng)引起普通投資者的關(guān)注是EOS映射與錢包安全。
EOSIO Dawn 4.x 版本在性能方面相較于Dawn 3.0有所下降。相同環(huán)境下,Dawn 4.x可達(dá)到約700 -1300 TPS,而3.0為1900。
即使沒有足夠的計(jì)算資源,攻擊者仍有可能惡意消耗EOSIO額外資源。但此影響不會(huì)通過網(wǎng)絡(luò)蔓延到其他節(jié)點(diǎn)。
綜合分析當(dāng)前版本性能與EOSIO應(yīng)用的防攻擊情況,我們建議通過VPN鏈接以及不直接在公網(wǎng)暴露超級(jí)節(jié)點(diǎn)等方式盡可能避免因網(wǎng)絡(luò)攻擊而帶來的節(jié)點(diǎn)宕機(jī)、分叉等情況。
1. 引言
“話說天下大勢(shì),分久必合,合久必分”。區(qū)塊鏈的世界似乎也符合這個(gè)規(guī)律。
從中心化的傳統(tǒng)信息系統(tǒng)世界逐漸過渡到去中心化的區(qū)塊鏈新世代,我們正有幸經(jīng)歷著一場(chǎng)從“合”到“分”的生產(chǎn)關(guān)系偉大變革。在這個(gè)過程中,區(qū)塊鏈也在現(xiàn)有如PoW、PoS這些完全去中心化的共識(shí)方式的基礎(chǔ)上,開始了一些從“分”到“合”的有益探索,例如EOS的DPoS+BFT這種去中心化與中心化相結(jié)合的共識(shí)模式。
在分分合合的大勢(shì)下,EOSIO基于目前的版本在開始上線運(yùn)營過程中可能會(huì)遇到哪些問題?對(duì)于普通投資者與技術(shù)人員應(yīng)怎樣應(yīng)對(duì)?我們嘗試從技術(shù)角度對(duì)這些問題進(jìn)行分析。
另外需要注意的是:測(cè)試得到的指標(biāo)數(shù)據(jù)結(jié)果不是也不應(yīng)被視為是對(duì)EOSIO平臺(tái)或項(xiàng)目最終效果的證明或確認(rèn)。特此聲明。
2. 主要結(jié)論
根據(jù)我們對(duì)近期EOS熱點(diǎn)問題的跟蹤與實(shí)測(cè)分析,我們得到以下主要研究結(jié)果:
● 多鏈上線的情況有可能出現(xiàn),但更應(yīng)引起普通投資者的關(guān)注是EOS映射與錢包安全
● EOSIO Dawn 4.x 版本在性能方面相較于Dawn 3.0有所下降
● 即使沒有足夠的計(jì)算資源,攻擊者仍有可能惡意消耗EOSIO額外資源,但此影響不會(huì)通過網(wǎng)絡(luò)蔓延到其他節(jié)點(diǎn)
● 綜合分析當(dāng)前性能與EOSIO應(yīng)用的防攻擊情況,我們建議通過VPN鏈接以及不直接在公網(wǎng)暴露超級(jí)節(jié)點(diǎn)等方式來盡可能避免因網(wǎng)絡(luò)攻擊而帶來的節(jié)點(diǎn)宕機(jī)、分叉等情況
3. 從“分”到“合”
EOS主網(wǎng)即將在6月初上線。很多EOS技術(shù)人員、投資者在期待的同時(shí)也有所擔(dān)心:因?yàn)锽lock.One公司只負(fù)責(zé)EOSIO程序的開發(fā),而把上線及運(yùn)營交給了社區(qū)來做,因此存在出現(xiàn)多個(gè)社區(qū)各自啟動(dòng)區(qū)塊鏈的可能性。
關(guān)于這一問題,EOS原力等已進(jìn)行了相關(guān)研究解答。
社區(qū)對(duì)有哪些鏈將啟動(dòng),以及啟動(dòng)時(shí)所采取的技術(shù)方式均有多種思路意見,并不統(tǒng)一。這對(duì)用戶EOS的映射工作可能會(huì)造成較大的困擾。
令EOS支持者欣喜的是,越來越多的EOS社區(qū)開始發(fā)表聲明,只承認(rèn)一個(gè)主鏈。因此按照目前的情況估計(jì),在投票開始前,候選節(jié)點(diǎn)們應(yīng)該會(huì)共同選出一條鏈作為投票及后續(xù)運(yùn)營的主鏈。所以對(duì)于EOS的持有者,更應(yīng)關(guān)注的事情是做好自己數(shù)字資產(chǎn)的映射。
盡管Block.One的產(chǎn)品VP——Thomas Cox曾在網(wǎng)絡(luò)上表示即使不映射EOS也不會(huì)丟,但為了資產(chǎn)安全,我們?nèi)匀粡?qiáng)烈建議在北京時(shí)間6月2日前完成映射。
目前映射的主要方法包括:
● 手動(dòng)映射
● 通過錢包映射
● 由交易所完成映射
由于手動(dòng)映射需要的技術(shù)工作較多,且如果確實(shí)上線時(shí)存在多個(gè)鏈,則需要對(duì)每個(gè)鏈都進(jìn)行映射,因此此種方法對(duì)用戶并不友好且存在私鑰暴露的風(fēng)險(xiǎn)。
綜上考慮,對(duì)于普通投資者,我們推薦使用支持自動(dòng)映射的交易所,由交易所來完成映射工作。
4. 從“合”到“分”
開始穩(wěn)定運(yùn)行后,并不是萬事大吉。DPoS+BFT創(chuàng)新方式會(huì)對(duì)系統(tǒng)運(yùn)行與維護(hù)帶來新的挑戰(zhàn)。尤其在近期360公布了EOS存在漏洞的消息后,為了避免因?yàn)閻阂夤舳鴰聿幌M木W(wǎng)絡(luò)分叉或節(jié)點(diǎn)下線等情況,更需要在平臺(tái)運(yùn)行過程中以安全為導(dǎo)向進(jìn)行持續(xù)跟蹤。這里我們從技術(shù)概念論證角度提出在性能分析中發(fā)現(xiàn)的風(fēng)險(xiǎn)及其防范思路。
4.1 性能跟蹤
在開始正式討論是否會(huì)“合久必分”前,我們先看下EOSIO最新版本的性能情況。
相較于我們之前對(duì)于EOSIO Dawn 3.0版本的測(cè)試,EOSIO Dawn 4.0、4.1和4.2版本在同樣的測(cè)試環(huán)境下,其性能有了一定幅度的下降。
測(cè)試的場(chǎng)景為:
● 使用Block.One提供的txn_test_gen測(cè)試插件工具發(fā)送測(cè)試交易數(shù)據(jù)并觀察實(shí)際TPS與系統(tǒng)CPU使用率等指標(biāo)情況。
測(cè)試的軟件環(huán)境為:
● 測(cè)試程序分別為EOSIO的dawn-v4.0.0版本、dawn-v4.1.0版本、dawn-v4.2.0版本
● 操作系統(tǒng)為Ubuntu 16.04
測(cè)試硬件環(huán)境為:
● 2臺(tái) AWS EC2 C5.4xlarge 服務(wù)器: 16 核 3GHz, Intel Xeon Platinum 8124M CPU,32GB內(nèi)存
● 服務(wù)器間為10Gbps局域網(wǎng)網(wǎng)絡(luò),通訊延遲(ping)小于1ms
測(cè)試結(jié)果:
根據(jù)《【超越白皮書1】EOSIO程序?qū)崪y(cè)分析與技術(shù)建議》,我們選擇單機(jī)方式組建私有測(cè)試環(huán)境以最大限度的提高TPS。基于上述測(cè)試環(huán)境條件,目前各版本的TPS為:
這一情況在目前的測(cè)試網(wǎng)上也有所體現(xiàn)。Daniel Larimer在EOS Developers的Telegram群里曾表示,Dawn 4.0 的測(cè)試網(wǎng)Jungle已可穩(wěn)定運(yùn)行,其TPS曾達(dá)到600多。
究其原因,EOSIO Dawn 4.x版本引入的諸多功能包括投票、對(duì)原有合約的改寫等是可能的原因之一。
根據(jù)《【超越白皮書1】EOSIO程序?qū)崪y(cè)分析與技術(shù)建議》,為了提供良好的交易服務(wù),新版本對(duì)服務(wù)器提出了更高的要求。所幸,EOSIO在設(shè)計(jì)時(shí),已考慮到了無礦工手續(xù)費(fèi)所可能引發(fā)的DDoS攻擊等問題,并設(shè)計(jì)了包括CPU、內(nèi)存及帶寬在內(nèi)的計(jì)算資源購買和使用模式,即必須持有足夠的EOS并得到計(jì)算資源后才允許進(jìn)行符合當(dāng)前資源下的交易。
但這樣就可以從應(yīng)用層面上避免大量惡意交易占用網(wǎng)絡(luò)資源甚至DDoS現(xiàn)象么?答案并沒有那么簡單。在新版本EOSIO交易處理性能有所下降的情況下,我們尤其需要對(duì)這一問題進(jìn)行更深入的探討。
4.2 惡意交易攻擊示例及防范思路
由于EOS的超級(jí)節(jié)點(diǎn)為有限的21個(gè),因此很有可能存在針對(duì)這些超級(jí)節(jié)點(diǎn)的網(wǎng)絡(luò)攻擊,出現(xiàn)包括超級(jí)節(jié)點(diǎn)無法正常提供服務(wù)甚至下線、網(wǎng)絡(luò)出現(xiàn)惡意分叉等這些并不健康的“合久必分”現(xiàn)象。
在網(wǎng)絡(luò)層面上防范方案,可參考,包括增加防火墻、選擇合適的云計(jì)算資源服務(wù)商、改變網(wǎng)絡(luò)拓?fù)涞取_@里,我們從EOSIO的應(yīng)用層面來進(jìn)行實(shí)測(cè)分析論證。
盡管已經(jīng)對(duì)可使用資源做了限制,我們通過構(gòu)建模擬攻擊場(chǎng)景,分析是否存在攻擊者可花費(fèi)低成本代價(jià)(擁有少量EOS)就能進(jìn)行一些惡意攻擊的風(fēng)險(xiǎn)。
測(cè)試的場(chǎng)景為:
● 構(gòu)建2個(gè)交易賬戶,其擁有極少量的EOS及不足以完成正常交易的計(jì)算資源的交易賬戶(創(chuàng)建時(shí)的參數(shù)可設(shè)置為:“--stake-net '0.0001 EOS' --stake-cpu '0.0001 EOS' ”)
● 通過這2個(gè)交易賬戶,編寫調(diào)用轉(zhuǎn)賬接口的簡單腳本,不間斷的向EOSIO節(jié)點(diǎn)發(fā)送大量交易。由于賬戶所擁有的計(jì)算資源限制,這些交易均不能完成。(發(fā)送時(shí)會(huì)提示錯(cuò)誤,例如:“billed CPU time (360 us) is greater than the maximum billable CPU time for the transaction (21 us)”)
● 重復(fù)調(diào)用該腳本多次,觀察情況
測(cè)試的軟件環(huán)境為:
● 測(cè)試程序?yàn)镋OSIO的dawn-v4.0.0版本、dawn-v4.1.0版本、dawn-v4.2.0版本
● 操作系統(tǒng)為Ubuntu 16.04
測(cè)試硬件環(huán)境為:
● 2臺(tái) AWS EC2 C5.4xlarge 服務(wù)器: 16 核 3GHz, Intel Xeon Platinum 8124M CPU,32GB內(nèi)存
● 服務(wù)器間為10Gbps局域網(wǎng)網(wǎng)絡(luò),通訊延遲(ping)小于1ms
在一個(gè)包含超級(jí)節(jié)點(diǎn)(Block Producer,以下簡稱“BP”)與普通節(jié)點(diǎn)(Full Node,以下簡稱“FN”)的網(wǎng)絡(luò)中,如果通過FN接收腳本發(fā)送的交易,nodeos進(jìn)程CPU利用率關(guān)系如下:
EOSIO的節(jié)點(diǎn)進(jìn)程nodeos會(huì)被這些無法完成的交易信息所影響。隨著惡意交易的不斷增加,其CPU占用率也會(huì)不斷提高。
同時(shí),我們觀察到,這些對(duì)資源的額外占用并沒有對(duì)另外的節(jié)點(diǎn)(BP)產(chǎn)生影響,即這些交易并沒有通過網(wǎng)絡(luò)對(duì)外共識(shí),說明FN確實(shí)處理了這些無效交易,但代價(jià)是自身CPU使用率的提高。
值得注意的是,當(dāng)這些惡意交易的負(fù)載到達(dá)一定程度后,會(huì)對(duì)錢包進(jìn)程keosd產(chǎn)生影響,首先是錢包進(jìn)程的CPU利用率升高,進(jìn)而產(chǎn)生一些服務(wù)異常情況。而EOSIO當(dāng)前版本的機(jī)制是會(huì)在鏈接不到錢包服務(wù)的情況下新啟動(dòng)一個(gè)keosd進(jìn)程(“"/usr/local/bin/keosd" launched”),因此會(huì)不斷涌現(xiàn)大量僵尸進(jìn)程。而nodeos進(jìn)程CPU利用率下降的原因可能在于此情況下無法讀取基本的賬戶信息。
如果通過BP接收交易,nodeos進(jìn)程CPU利用率關(guān)系如下:
可以看到與通過FN接收交易的測(cè)試結(jié)果差別不大。
根據(jù)《【超越白皮書1】EOSIO程序?qū)崪y(cè)分析與技術(shù)建議》,由于處在高利用率CPU下的節(jié)點(diǎn)容易使其區(qū)塊進(jìn)度落后于其他節(jié)點(diǎn);并且當(dāng)攻擊進(jìn)一步發(fā)展時(shí),甚至可能會(huì)導(dǎo)致BP的下線。
因此,建議BP不要直接暴露在公網(wǎng)上,而是采用VPN方式,例如WireGuard等與其他節(jié)點(diǎn)進(jìn)行連接,并通過FN接收交易,從而防范此類風(fēng)險(xiǎn)。
您可能也感興趣:
為您推薦
諾基亞/堅(jiān)果/華為對(duì)決全面屏 2K價(jià)位誰更值得買
廣州日?qǐng)?bào):創(chuàng)新讓非遺更好傳承
諾基亞7 Plus拆機(jī)測(cè)評(píng) 這做工照樣砸核桃
更多
- 中國企業(yè)人工智能產(chǎn)品驚艷法國科技展
- 武漢造純電動(dòng)公交車北京開跑 踐行綠色交通經(jīng)營理念
- 溧陽市首個(gè)生物質(zhì)秸稈直燃熱電項(xiàng)目通過核準(zhǔn) 社會(huì)效益良好
- 分析報(bào)告:2017年我國創(chuàng)新驅(qū)動(dòng)產(chǎn)業(yè)發(fā)展新動(dòng)力已經(jīng)形成
- 創(chuàng)新企業(yè)登陸A股進(jìn)入預(yù)熱期 投資者準(zhǔn)入制度或較寬松
- 國資委將打造一批青年創(chuàng)新創(chuàng)業(yè)平臺(tái)
- 上海南通簽署科技創(chuàng)新戰(zhàn)略合作協(xié)議
- 華麗志全球時(shí)尚創(chuàng)新與投資論壇在京舉辦
排行
- 荔枝微課成立黨支部,激發(fā)爭先創(chuàng)優(yōu)新動(dòng)力
- 宜人貸發(fā)布2017年第四季度及全年財(cái)報(bào) 科技驅(qū)動(dòng)持續(xù)高質(zhì)量發(fā)展
- 時(shí)刻保持德國血統(tǒng)的寶沃汽車
- 市場(chǎng)新選擇,寶沃汽車再添新寵
- 微盟啟動(dòng)小程序“颶風(fēng)行動(dòng)” 助全國50城企業(yè)商戶 搶占小程...
- 銷量如此之狂,除了寶沃還會(huì)有誰
- 成品油調(diào)價(jià)窗口今日開啟 或迎2018年首次擱淺
- 毛里求斯《挑戰(zhàn)報(bào)》記者:“我對(duì)中國治理模式很欽佩”
- 花下重門 《古劍奇譚三》城鎮(zhèn)場(chǎng)景鄢陵曝光
- 完美軍民融合"組合拳",制片人劇透《紅海行動(dòng)》幕后
今日要聞
- 【超越白皮書 2】EOS 主網(wǎng)上線前夕的實(shí)測(cè)分析與技術(shù)建議
- 荔枝微課成立黨支部,激發(fā)爭先創(chuàng)優(yōu)新動(dòng)力
- 荔枝微課榮獲第三屆中國“互聯(lián)網(wǎng)+”大賽金獎(jiǎng)
- 荔枝微課助力第四屆中國“互聯(lián)網(wǎng)+”大賽,推進(jìn)人才發(fā)展新格局
- 【火線視點(diǎn) 6】復(fù)盤 EOS 安全事件及再議區(qū)塊鏈安全
- EKT公鏈上線火幣,區(qū)塊鏈的多鏈平行獲得各方認(rèn)可
- 修羅魔族圣女龍?jiān)聝?!《妖道至尊》漫畫版女主人設(shè)來啦
- 中通快運(yùn)A輪融資超1億美金,騰達(dá)擔(dān)任獨(dú)家財(cái)務(wù)顧問
- 火幣主力指數(shù)化產(chǎn)品HB10上線 對(duì)用戶而言利好不少
- 重磅消息 火幣HADAX項(xiàng)目轉(zhuǎn)板火幣PRO又多一途徑