以太坊區(qū)塊鏈大小已經(jīng)超過(guò)1TB了,這是個(gè)嚴(yán)重的問(wèn)題

原作者:StopAndDecrypt

原文鏈接:https://hackernoon.com/the-ethereum-blockchain-size-has-exceeded-1tb-and-yes-its-an-issue-2b650b5f4f62

(太長(zhǎng)不看版:這跟存儲(chǔ)空間限制沒(méi)有關(guān)系)

不到一年前,以太坊錢(qián)包Parity的一位開(kāi)發(fā)者Afri Schoedon寫(xiě)了一篇文章,現(xiàn)在這篇文章是對(duì)他的文章的一個(gè)間接回應(yīng):

https://dev.to/5chdn/the-ethereum-blockchain-size-will-not-exceed-1tb-anytime-soon-58a

我想要聲明的是我對(duì)在這個(gè)領(lǐng)域中幾乎所有的開(kāi)發(fā)者都心懷尊敬,這篇文章并不是要攻擊什么人。我寫(xiě)這篇文章的目的是解釋目前真正的問(wèn)題是什么,以及解釋為什么Afri Schoedon的文章并沒(méi)有討論到這些真正的問(wèn)題。我很希望有人能夠?qū)懫恼聛?lái)解釋這些問(wèn)題,這樣我們就可以把它也應(yīng)用到比特幣上。確實(shí)有個(gè)別開(kāi)發(fā)者故意通過(guò)協(xié)議誤解來(lái)進(jìn)行誤導(dǎo)、混淆、無(wú)視,就和2X以及replay保護(hù)措施那場(chǎng)鬧劇一樣,不過(guò)大多數(shù)開(kāi)發(fā)者并不是那樣的人。你不能因?yàn)槌隽?a target="_blank" rel="nofollow">這樣或那樣的事就討厭這些開(kāi)發(fā)者。他們和我們一樣都是為了同一個(gè)目標(biāo)而奮斗的,并且我相信Afri是屬于第二類開(kāi)發(fā)者,而非前者。

https://github.com/paritytech/parity/issues/6372

@ravensorb?本issue已被分類識(shí)別,并入子任務(wù),你可以在這個(gè)鏈接里查閱到概況:https://wiki.parity.io/Known-Issues-Priorities

@codewiz?Warp-sync本身沒(méi)毛病,在以太坊之外的任何鏈上都正常運(yùn)行。目前以太坊的體積大小是一個(gè)很嚴(yán)峻的問(wèn)題,而且這也不屬于Parity的問(wèn)題。

如果你之前讀過(guò)我的文章,那你就會(huì)發(fā)現(xiàn)這篇文章里有一些片段是從之前的文章中搬過(guò)來(lái)的。到目前為止,我的文章主要都是以一個(gè)“極大主義者”的角度來(lái)寫(xiě)關(guān)于比特幣的問(wèn)題以及在比特幣社區(qū)內(nèi)的一些爭(zhēng)論。如果你只從你個(gè)人的角度來(lái)看的話,這些爭(zhēng)論的原因其實(shí)都是一樣的。我甚至?xí)脵?quán)益證明來(lái)為我的意見(jiàn)進(jìn)行辯護(hù),以至于不去批評(píng)權(quán)益證明這個(gè)東西。

修正:看起來(lái)有些人并沒(méi)有好好閱讀我的副標(biāo)題所以誤解我的意思了。這里討論的不是檔案節(jié)點(diǎn),而是完全驗(yàn)證了的節(jié)點(diǎn)。不管你是為了趕上進(jìn)度而漏讀了哪些東西我都不在乎。這是關(guān)乎同步的問(wèn)題。輕節(jié)點(diǎn)并不能算作節(jié)點(diǎn)。

目錄

·? 我的論點(diǎn):以太坊的失控?cái)?shù)據(jù)(runaway data)目錄只是冰山一角。

·? 我的預(yù)測(cè):一切都?xì)q月靜好,直到大廈崩塌。

·? 我的建議:進(jìn)行轉(zhuǎn)置。

我的論點(diǎn):更大的區(qū)塊會(huì)使得驗(yàn)證者中心化

就是這么簡(jiǎn)單,這就是擴(kuò)容之爭(zhēng)中整個(gè)數(shù)字貨幣社區(qū)爭(zhēng)論的中心,熟悉區(qū)塊鏈協(xié)議的人一般都不會(huì)否認(rèn)這個(gè)事實(shí)。以下這段節(jié)選我認(rèn)為很好地解釋了各種“第二層”擴(kuò)容方案(在這些方案中唯一可行的一個(gè)已經(jīng)實(shí)施到比特幣中了)。

https://medium.com/l4-media/making-sense-of-ethereums-layer-2-scaling-solutions-state-channels-plasma-and-truebit-22cb40dcc2f4

1. 公共區(qū)塊鏈擴(kuò)容所面臨的挑戰(zhàn)

首先要弄清楚的是,“擴(kuò)容”并不是一個(gè)單獨(dú)的問(wèn)題,而是一系列挑戰(zhàn),要克服這些挑戰(zhàn),才能讓全球數(shù)以百萬(wàn)計(jì)的用戶用上以太坊。

討論最多的一個(gè)擴(kuò)容問(wèn)題就是交易吞吐量。目前以太坊每秒能夠處理大約15筆交易,而Visa的交易處理速度則為45,000/tps。去年一些應(yīng)用如Cryptokitties或者有時(shí)候甚至一些ICO都會(huì)因?yàn)樘軞g迎而拖慢整個(gè)網(wǎng)絡(luò)速度并導(dǎo)致gas費(fèi)上漲。

核心限制在于,像以太坊這種公鏈中,每一筆交易都需要被全網(wǎng)每一個(gè)節(jié)點(diǎn)處理。在以太坊區(qū)塊鏈上進(jìn)行的每個(gè)操作,比如說(shuō)一筆交易,創(chuàng)建一個(gè)Cryptokitty,或者進(jìn)行一個(gè)新的ERC20合同,都需要全網(wǎng)的每個(gè)節(jié)點(diǎn)同時(shí)進(jìn)行處理。這個(gè)機(jī)制就是故意這樣設(shè)計(jì)的,以保證公共區(qū)塊鏈的權(quán)威性。節(jié)點(diǎn)不需要其他人來(lái)告知現(xiàn)在區(qū)塊鏈上發(fā)生了什么,它們得自己去弄清楚。

這就給以太坊的交易吞吐量設(shè)置了一個(gè)根本性的限制:不能高于我們?cè)敢庀蛞粋€(gè)單一節(jié)點(diǎn)索取的量。

該文章的作者是Josh Stark,他能夠弄明白這一點(diǎn)。他的公司甚至宣布進(jìn)行一個(gè)項(xiàng)目,要在以太坊上弄一個(gè)和閃電網(wǎng)絡(luò)一樣的東西。(巧的是Elizabeth Stark的公司也在參與建設(shè)閃電網(wǎng)絡(luò)。)

那么問(wèn)題是什么呢?先把權(quán)益證明的東西放在一邊,底層的激勵(lì)機(jī)制完全不對(duì),因?yàn)橐蕴坏膮^(qū)塊大小沒(méi)有限制,就算要設(shè)置一個(gè)限制也得是一個(gè)合理的數(shù)字,而且這些去中心化的應(yīng)用(Dapps)也不可能正常運(yùn)轉(zhuǎn),因?yàn)楝F(xiàn)在沒(méi)有限制的情況下他們也才勉強(qiáng)能夠運(yùn)轉(zhuǎn)。甚至這個(gè)限制的數(shù)值到底是多少也不必討論了,因?yàn)楝F(xiàn)在根本就沒(méi)有限制。

有點(diǎn)跑題了。我現(xiàn)在要簡(jiǎn)單地定義一個(gè)區(qū)塊鏈,有些人可能會(huì)被惹毛。

以下是一個(gè)區(qū)塊鏈所能提供的:

·? 一個(gè)不可更改的、去中心化的賬簿。

·? 就這樣沒(méi)別的了。

以下是一個(gè)區(qū)塊鏈所需要的東西以保持他的本質(zhì):

一個(gè)去中心化的網(wǎng)絡(luò)并且擁有以下能力:

·?????? 分散我的賬簿——驗(yàn)證

·?????? 添加我的賬簿——工作

·?????? 為我的需求提供激勵(lì)——代幣

以下是讓區(qū)塊鏈?zhǔn)〉囊蛩兀?/b>

·?????? 在區(qū)塊鏈上添加讓它偏離網(wǎng)絡(luò)的目標(biāo)的功能。

區(qū)塊鏈只是網(wǎng)絡(luò)的一個(gè)工具,并且是只能用在特定網(wǎng)絡(luò)中的一種特定工具,這個(gè)特定工具和特定的網(wǎng)絡(luò)是相互依存的,其中一個(gè)沒(méi)有了另一個(gè)也無(wú)法存活。你可以在這個(gè)網(wǎng)絡(luò)的基礎(chǔ)之上建設(shè)其他東西,但是坦白說(shuō)如果在這個(gè)網(wǎng)絡(luò)的底層(L1)上添加了使得網(wǎng)絡(luò)無(wú)法正常運(yùn)作的東西的話,這個(gè)網(wǎng)絡(luò)遲早玩完。

下面我舉個(gè)例子,這是一個(gè)L1層面上的功能,它并不會(huì)影響網(wǎng)絡(luò)的正常運(yùn)轉(zhuǎn),它就是多重簽名。

多重簽名確實(shí)需要節(jié)點(diǎn)多做一點(diǎn)工作,但這點(diǎn)工作算是“微不足道”的。需要注意的是,對(duì)于這些設(shè)計(jì)良好的網(wǎng)絡(luò)來(lái)說(shuō),硬件并不是它的瓶頸,網(wǎng)絡(luò)延遲才是。向一個(gè)多重簽名地址支付款項(xiàng),并不比向一個(gè)普通地址支付款項(xiàng)所需要的網(wǎng)絡(luò)費(fèi)用高,因?yàn)閷?duì)于每筆交易來(lái)說(shuō)是按字節(jié)收費(fèi)的。這項(xiàng)區(qū)塊鏈功能并不會(huì)妨礙網(wǎng)絡(luò)的正常運(yùn)轉(zhuǎn),因?yàn)樵诰W(wǎng)絡(luò)上進(jìn)行傳輸?shù)臄?shù)據(jù)是(1)按字節(jié)收費(fèi)的,并且(2)受到區(qū)塊大小限制的管理。這里說(shuō)管理而不是“限制”。區(qū)塊大小并不限制交易流程,而是管理向所有節(jié)點(diǎn)廣播的數(shù)據(jù)量,那么問(wèn)題就出在這里。

當(dāng)我們說(shuō)“數(shù)據(jù)目錄”大小時(shí),指的是從創(chuàng)世區(qū)塊起一整條鏈的大小,但如果只從字面意思理解的話就會(huì)有人來(lái)抬杠:

·? 光盤(pán)空間很便宜,而且摩爾定律認(rèn)為當(dāng)價(jià)格不變時(shí),集成電路上可容納的元器件的數(shù)目,約每隔18-24個(gè)月便會(huì)增加一倍,性能也將提升一倍。

·? 如果需要的話可以修剪區(qū)塊鏈。

·? 不需要一直追溯到創(chuàng)世區(qū)塊,只需要最后X個(gè)區(qū)塊就可以確定目前整個(gè)網(wǎng)絡(luò)的狀態(tài)了。

這些言論完全無(wú)視了一個(gè)節(jié)點(diǎn)每秒必須處理的數(shù)據(jù)。

如果愿意的話你可以閱讀我寫(xiě)的關(guān)于摩爾定律的文章,我在這里只節(jié)選其中重要的幾點(diǎn)。在Oz那里他們?cè)噲D辯稱“你不需要運(yùn)行一個(gè)節(jié)點(diǎn),只有礦工才有資格決定采用什么代碼”。這種說(shuō)法很荒唐,但在這里我不打算進(jìn)行反駁,因?yàn)闄?quán)益證明把礦工完全移除,把所有東西都放到節(jié)點(diǎn)里了。(其實(shí)他們一直都在節(jié)點(diǎn)里,只不過(guò)這次沒(méi)有礦工來(lái)轉(zhuǎn)移話題了。)

1. 摩爾定律討論的是集成電路的增長(zhǎng)速度,每年大約能夠增長(zhǎng)60%。這個(gè)定律討論的并不是可用的帶寬(而帶寬才是更重要的)。

2. 帶寬的增長(zhǎng)速度要慢得多。我們來(lái)看看尼爾森定律。從1:1比例開(kāi)始(在硬件和帶寬上沒(méi)有瓶頸),每年增長(zhǎng)50%,10年復(fù)合增長(zhǎng)得到大約~1:2的比例,這就意味著每十年帶寬增長(zhǎng)速度要慢兩倍,每20年就慢四倍,每40年慢八倍,如此反復(fù)。(實(shí)際的情況要糟糕得多,但是我這里只做簡(jiǎn)單的假設(shè),因?yàn)閮H僅是這樣就已經(jīng)相當(dāng)糟糕了。)

3. 網(wǎng)絡(luò)延遲比帶寬增長(zhǎng)要慢,這就意味著隨著網(wǎng)絡(luò)上節(jié)點(diǎn)的平均帶寬速度提高,區(qū)塊和數(shù)據(jù)傳輸速度并不以同樣的速率提高。

4. 更大的區(qū)塊需要更好的數(shù)據(jù)傳輸(更低的網(wǎng)絡(luò)延遲)來(lái)抵抗節(jié)點(diǎn)中心化。

嚴(yán)格地從以太坊的角度來(lái)看,轉(zhuǎn)換成權(quán)益證明之后只剩下節(jié)點(diǎn)了,那么你肯定想要確保不會(huì)發(fā)生節(jié)點(diǎn)中心化。比特幣網(wǎng)絡(luò)所遇到的瓶頸是它的區(qū)塊大小(這是理所當(dāng)然的),因?yàn)檫@保證了網(wǎng)絡(luò)的需求增長(zhǎng)速度永遠(yuǎn)不會(huì)超過(guò)外部(有時(shí)候不一定)限制(如計(jì)算性能網(wǎng)絡(luò)性能)的增長(zhǎng)速度。由于以太坊不斷增長(zhǎng)的區(qū)塊大小,它的瓶頸不再受到這些外部因素的控制,網(wǎng)絡(luò)需求不斷超過(guò)平均用戶的硬件和帶寬水平,導(dǎo)致網(wǎng)絡(luò)愈加縮小和中心化。

StopAndDecrypt: 兩天內(nèi)就達(dá)到了10 GB。作為一個(gè)比特幣愛(ài)好者,我有個(gè)嚴(yán)肅的問(wèn)題:對(duì)于這個(gè)增長(zhǎng)趨勢(shì)你們有什么應(yīng)對(duì)方案嗎?你們將在不到一個(gè)月的時(shí)間內(nèi)增長(zhǎng)33%。請(qǐng)文明發(fā)言。

Vitalik: 那個(gè)圖表具有非常大的誤導(dǎo)性。300GB是一個(gè)檔案全節(jié)點(diǎn)的大小,這種節(jié)點(diǎn)存儲(chǔ)著歷史數(shù)據(jù),包含目前和過(guò)去的所有狀態(tài)。狀態(tài)本身僅有~1-2 GB,歷史數(shù)據(jù)大約有~10 GB。修剪了的節(jié)點(diǎn)仍然存儲(chǔ)著所有的狀態(tài)和歷史,如果你真的需要的話它可以調(diào)出任何歷史狀態(tài),但這個(gè)節(jié)點(diǎn)只有大約20 GB。如果只需要現(xiàn)時(shí)狀態(tài)的話,這個(gè)數(shù)字還可以更小。

Senzheng:不要認(rèn)為大家像關(guān)心帶寬一樣關(guān)心空間大小。

對(duì)于全節(jié)點(diǎn)最低上傳速度,在保證網(wǎng)絡(luò)安全的情況下,實(shí)時(shí)帶寬需要多大?

就和這里的分析相似:https://iancoleman.github.io/blocksize/#_ & https://twitter.com/SDWouters/status/862426991370358784 (我才意識(shí)到以太坊不一樣)

(沒(méi)有回應(yīng))

Privpub: 有人認(rèn)為修剪過(guò)的節(jié)點(diǎn)就像比特幣里的SPV節(jié)點(diǎn)一樣,而且無(wú)法實(shí)現(xiàn)“真正的”去中心化,這個(gè)觀點(diǎn)你怎么看?

Vitalik: 你說(shuō)的其實(shí)是一個(gè)輕量客戶端,即使是以太坊輕量客戶端也比比特幣SPV節(jié)點(diǎn)要強(qiáng)大得多:比特幣SPV節(jié)點(diǎn)能夠驗(yàn)證交易,而以太坊輕量客戶端能夠驗(yàn)證現(xiàn)時(shí)狀態(tài)。

比特幣SPV并不是節(jié)點(diǎn),他們并不在網(wǎng)絡(luò)上傳播區(qū)塊或交易。他們像水蛭一樣吸附在區(qū)塊頭上。

下面提到的概念對(duì)于理解本文接下來(lái)要講的內(nèi)容非常重要,請(qǐng)注意閱讀:

·? 你可以將無(wú)效的交易放進(jìn)區(qū)塊中,并且仍能創(chuàng)建一個(gè)有效的區(qū)塊頭。

·? 如果網(wǎng)絡(luò)是由10個(gè)全節(jié)點(diǎn)控制的,只要區(qū)塊頭是有效的,則只需要其中一半即可忽略/準(zhǔn)許無(wú)效交易通過(guò)。

這就是為什么從網(wǎng)絡(luò)的角度來(lái)看驗(yàn)證交易非常重要,以及為什么需要一個(gè)大的去中心化網(wǎng)絡(luò)。對(duì)于我外婆來(lái)說(shuō)這是并不重要,但我們現(xiàn)在討論的不是我的外婆。我們現(xiàn)在討論的是如何保證正常工作的節(jié)點(diǎn)能夠不斷增長(zhǎng)而不是減少。

這個(gè)節(jié)點(diǎn)一直在參與工作,直到因?yàn)榫W(wǎng)絡(luò)需求增加而被砍掉:

https://www.reddit.com/r/ethereum/comments/58ectw/geth_super_fast/d908tik/

cryptoogre: 我不知道發(fā)生了什么,是不是Geth現(xiàn)在對(duì)系統(tǒng)有要求了。

之前我一直在i3內(nèi)核和8GB內(nèi)存上運(yùn)行Geth,在cache=1024的情況下,能夠在兩小時(shí)內(nèi)進(jìn)行快速同步。

受到攻擊之后我就無(wú)法再同步或運(yùn)行Geth了。

分叉之后,Geth每次同步到99%的時(shí)候就停止同步了(大約需要6小時(shí)),然后就開(kāi)始進(jìn)行正常區(qū)塊輸入,沒(méi)辦法跟上,我一直都比鏈落后5到7個(gè)小時(shí)。

我準(zhǔn)備在固態(tài)硬盤(pán)上用cloud vm進(jìn)行測(cè)試,不過(guò)我唯一能夠想到的可能性就是Geth對(duì)硬件的要求已經(jīng)超過(guò)我的機(jī)器的性能了。

iamsunbird: 我也遇到同樣的問(wèn)題,客戶端已經(jīng)連續(xù)同步一天半了,但還是跟不上。

這并非不常見(jiàn),并且還在繼續(xù)發(fā)生:

sonulrk:?我從這個(gè)Geth快速模式問(wèn)題中得到的經(jīng)驗(yàn)是:

1. 你一定要用Quad內(nèi)核處理器和4GB以上的內(nèi)存

2. 你一定要用固態(tài)硬盤(pán)而不是機(jī)械硬盤(pán)

3. 你的網(wǎng)絡(luò)一定要穩(wěn)定,速度要達(dá)到2mbps及以上

如果你能實(shí)現(xiàn)以上3個(gè)條件的話那你可以試試Geth,打開(kāi)完全模式的話基本上一個(gè)星期、最多兩個(gè)星期就能完全同步。如果使用的是快速模式的話就看運(yùn)氣了,要么兩三天內(nèi)能夠完成同步,要么永遠(yuǎn)也完不成。

winsvega: Geth 1.8版本仍然有這個(gè)問(wèn)題,重啟Geth后出現(xiàn)這個(gè)錯(cuò)誤

快速同步模式會(huì)掉節(jié)點(diǎn)而且無(wú)法同步,還有不到100個(gè)區(qū)塊就完成了,但是一直沒(méi)法同步。

ceciliato310:?這就是P2P網(wǎng)絡(luò)的本質(zhì),你會(huì)受到節(jié)點(diǎn)和網(wǎng)絡(luò)情況的限制。一般來(lái)說(shuō)只要耐心等待最終還是會(huì)成功的。按ctrl-c重啟也可以(但愿重啟之后你能得到一個(gè)好一點(diǎn)的節(jié)點(diǎn))。另一個(gè)解決辦法是找一個(gè)好的節(jié)點(diǎn)然后手動(dòng)添加它。

注意到了沒(méi)有,解決辦法是“尋找一個(gè)好一點(diǎn)的節(jié)點(diǎn)”或者“升級(jí)你的硬件”。不管是節(jié)點(diǎn)還是硬件,都不應(yīng)該成為瓶頸。當(dāng)你所有的節(jié)點(diǎn)都被那群吸血的水蛭給占滿了(因?yàn)橹挥泻玫墓?jié)點(diǎn)真正在干活),這個(gè)網(wǎng)絡(luò)就會(huì)變成一群主人領(lǐng)導(dǎo)一群奴隸,最終變成一個(gè)主人剩下的都是奴隸。(如果你不同意這個(gè)說(shuō)法的話,請(qǐng)證明為什么將來(lái)不會(huì)出現(xiàn)這個(gè)趨勢(shì),因?yàn)楝F(xiàn)在的趨勢(shì)就是這樣,如果不加以限制的話就不會(huì)停止。如果你的答案是數(shù)據(jù)分片的話,我在文章末尾會(huì)講到這個(gè)。)這就是教科書(shū)式的中心化,不受管制區(qū)塊會(huì)將網(wǎng)絡(luò)變得中心化。大區(qū)塊(但是有限制)會(huì)使情況變得好那么一點(diǎn)點(diǎn),但是會(huì)為不斷增大的區(qū)塊大小開(kāi)了先例,這就使得情況變得同樣糟糕,因?yàn)檫@就開(kāi)了先例,只要“形勢(shì)需要”,就可以擴(kuò)大區(qū)塊大小,這也就相當(dāng)于區(qū)塊大小不受管制了。這就是我們?yōu)槭裁丛诒忍貛艆^(qū)塊大小問(wèn)題上堅(jiān)決不讓步的原因。

我在推特上談過(guò)幾次這個(gè)問(wèn)題,但是效果并不顯著,因?yàn)槲业耐铺仃P(guān)注者中并沒(méi)有很多以太坊圈子里的人。

https://twitter.com/StopAndDecrypt/status/991683846100963328/photo/1

還需要進(jìn)一步解釋嗎?

假設(shè)要保持同步的話,你的Geth節(jié)點(diǎn)需要處理100個(gè)“單位”的數(shù)據(jù)。

你的硬件能夠處理150個(gè)單位。第二天網(wǎng)絡(luò)要求你處理101個(gè)單位,下個(gè)月要求你處理125個(gè)單位。

總有一天你會(huì)跟不上的。

上面那個(gè)圖標(biāo)只是為了解釋而畫(huà)的,并不涉及實(shí)際的數(shù)據(jù)。綠色的曲線代表以太坊網(wǎng)絡(luò)的各種需求的總和。總有一天要么是你的節(jié)點(diǎn)會(huì)跟不上同步,要么會(huì)設(shè)置一個(gè)區(qū)塊大小限制??赡苁乾F(xiàn)在,也可能是十年后或五十年后,但是在這個(gè)速度下總有一天你的節(jié)點(diǎn)會(huì)跟不上同步的速度。但這并不會(huì)發(fā)生在比特幣身上。現(xiàn)在你可以盡情地否認(rèn),但總有一天會(huì)發(fā)生的。當(dāng)它發(fā)生的時(shí)候,像CryptoKitties,?Shrimp Farm,?Pepe Farm之類的去中心化應(yīng)用將會(huì)停止運(yùn)行。這就和Ryan Charles的網(wǎng)站Yours.org的結(jié)局一樣,當(dāng)時(shí)它原本是建在比特幣上的。唯一的區(qū)別是比特幣已經(jīng)有區(qū)塊大小的限制了,Ryan要么沒(méi)弄明白情況所以沒(méi)預(yù)料到會(huì)這樣,要么就是他認(rèn)為區(qū)塊大小會(huì)不斷增加。Ryan并沒(méi)有吸取教訓(xùn),反而在BCash上下了更大的血本,而Yalls.org則將他的創(chuàng)意移植到了比特幣的閃電網(wǎng)絡(luò)上。

我的預(yù)測(cè):以太坊將會(huì)設(shè)置一個(gè)區(qū)塊大小限制,把BCash和它自己逼上絕路。

http://bc.daniel.net.nz/?←這個(gè)網(wǎng)站已經(jīng)不再更新數(shù)據(jù)了,這個(gè)圖表經(jīng)過(guò)改動(dòng),使用REAL目前的數(shù)據(jù)進(jìn)行推測(cè)
https://ethereum.stackexchange.com/questions/143/what-are-the-ethereum-disk-space-needs

上面的圖表甚至不是預(yù)測(cè)了,在這張最后存留的圖表比較了兩條鏈的數(shù)據(jù)目錄,我用這些數(shù)據(jù)進(jìn)行了推測(cè)(黃色部分)。以下是我們目前已知的:

·? 比特幣的未來(lái)是可預(yù)測(cè)的,區(qū)塊鏈增長(zhǎng)和網(wǎng)絡(luò)需求將永遠(yuǎn)是線性的。(這是我們想要的。)

·??以太坊節(jié)點(diǎn)每秒所需要處理的數(shù)據(jù)量已經(jīng)非常大了而且還在不斷增長(zhǎng)。(這不是我們想要的情況。)

·??如果以太坊鏈上需求停在它現(xiàn)在的這個(gè)點(diǎn),區(qū)塊鏈增長(zhǎng)將繼續(xù)保持這個(gè)線性增長(zhǎng)趨勢(shì),如圖中虛線所示。(這個(gè)情況很糟糕。)

·??如果以太坊鏈上需求繼續(xù)爆炸性增長(zhǎng),那么抱怨他們的節(jié)點(diǎn)跟不上同步節(jié)奏的人會(huì)越來(lái)越多,總有一天會(huì)爆發(fā)。(如果到了這一步就只有一個(gè)選擇了。)

上面那張圖發(fā)生什么了?這個(gè)節(jié)點(diǎn)的主人不再維護(hù)這個(gè)節(jié)點(diǎn)了。其他物理限制也是個(gè)問(wèn)題,比如說(shuō)你有限的生命里的時(shí)間也是有限的。進(jìn)行維護(hù)的要求應(yīng)當(dāng)比較,而不是高得不可理喻。

你知道我是如何維護(hù)我的比特幣/閃電網(wǎng)絡(luò)節(jié)點(diǎn)的嗎?只要讓筆記本電腦一直開(kāi)機(jī)就行了。如果需要重啟,那我就關(guān)機(jī)然后重新開(kāi)機(jī)就好了。我每天還會(huì)用我的筆記本電腦做很多其他的事情,這并不影響我運(yùn)行節(jié)點(diǎn)軟件。如果發(fā)生了什么改變導(dǎo)致我的節(jié)點(diǎn)不再和網(wǎng)絡(luò)兼容并且無(wú)法同步,如果我是受了錯(cuò)誤信息引導(dǎo)的話,我會(huì)大聲痛罵那個(gè)讓這一切發(fā)生的大傻瓜。但幸運(yùn)的是我并沒(méi)有受到錯(cuò)誤信息引導(dǎo),我很有預(yù)見(jiàn)性地選擇了比特幣。

那么問(wèn)題是什么呢?我認(rèn)為大多數(shù)運(yùn)行以太坊節(jié)點(diǎn)的人并不知道他們掉進(jìn)了一個(gè)怎樣的坑里。我認(rèn)為他們并不了解這其中的基本激勵(lì)模型,他們也不知道為什么沒(méi)有區(qū)塊大小限制這件小事會(huì)讓他們陰溝翻船。希望這篇文章能讓他們明白這些道理。

那么當(dāng)那個(gè)心理預(yù)期的爆發(fā)點(diǎn)達(dá)到時(shí)會(huì)發(fā)生什么呢?人們會(huì)放棄嗎?要失去多少個(gè)節(jié)點(diǎn)才會(huì)發(fā)生?探索者網(wǎng)站甚至已經(jīng)不再追蹤這些數(shù)據(jù)了。Etherscan.io已經(jīng)不再追蹤全部或者快速同步目錄了,Etherchain.org上則直接出現(xiàn)找不到頁(yè)面的錯(cuò)誤提示。

Etherscan同樣也不會(huì)讓你放大內(nèi)存池,即等待被放進(jìn)區(qū)塊的交易。費(fèi)用上漲的原因就是等待被放進(jìn)區(qū)塊的交易越來(lái)越多。隨著時(shí)間的推移你將能夠看得出來(lái)。下面的圖標(biāo)比較了比特幣的內(nèi)存池和Etherscan.io的內(nèi)存池:

這兩張圖表都在監(jiān)測(cè)這些網(wǎng)絡(luò)上在排隊(duì)的交易數(shù)量,比例也大致一樣,大約4/5天。區(qū)別是什么呢?我可以縮小比特幣的這張圖表,然后查看整個(gè)歷史。這一點(diǎn)為什么重要?當(dāng)你的網(wǎng)絡(luò)沒(méi)有受管制的上限時(shí),心理學(xué)就很重要了。以下是我們的圖表縮小了看的樣子:

明白我的意思了嗎?明白為什么比例很重要了嗎?如果我把以太坊的內(nèi)存池也縮小了看,發(fā)現(xiàn)這部分其實(shí)是處在一個(gè)不斷上漲的曲線的巔峰?我并不是說(shuō)這就是它今天的情況,而是說(shuō)這個(gè)信息不應(yīng)當(dāng)這么隱晦。如果有那一天這個(gè)不再隱晦了,那就已經(jīng)太晚了,來(lái)不及拯救了。現(xiàn)在也已經(jīng)太晚了。

現(xiàn)在讓我們來(lái)看一下比特幣網(wǎng)絡(luò)上的區(qū)塊和交易延遲。下面有兩個(gè)圖表,第一個(gè)是一個(gè)區(qū)塊要傳播到整個(gè)網(wǎng)絡(luò)需要多久,第二個(gè)是一個(gè)交易要傳播到全網(wǎng)需要多久。交易由節(jié)點(diǎn)來(lái)處理(一共有115,000個(gè)節(jié)點(diǎn)),然后由節(jié)點(diǎn)暫時(shí)保存,直到礦工創(chuàng)造出一個(gè)有效的區(qū)塊并向全網(wǎng)公布。

·? 區(qū)塊傳播所需時(shí)間大幅度減少,因?yàn)檐浖阅苡辛撕艽蟮奶嵘=灰走M(jìn)來(lái)內(nèi)存池之后會(huì)被驗(yàn)證。當(dāng)?shù)玫揭粋€(gè)新的區(qū)塊時(shí),迅速與已經(jīng)存儲(chǔ)的交易進(jìn)行交叉對(duì)比,并且很少會(huì)收錄還未收到的交易。這就使得你的節(jié)點(diǎn)能夠以非??斓乃俣闰?yàn)證區(qū)塊,并把它發(fā)送給其他節(jié)點(diǎn)。

·??交易時(shí)間則緩慢上升,但目前似乎有穩(wěn)定下來(lái)的趨勢(shì)。由于軟件的隱私性能加強(qiáng),交易時(shí)間的增長(zhǎng)是被允許的,但權(quán)衡之下還是利大于弊,因?yàn)槠骄鰤K時(shí)間至少要10分鐘,所以交易時(shí)間上漲16秒也是可以接受的。當(dāng)大多數(shù)區(qū)塊都已經(jīng)滿了的時(shí)候,這種上漲的趨勢(shì)也會(huì)停止,因?yàn)閰^(qū)塊大小限制帶來(lái)的交易費(fèi)會(huì)自我調(diào)節(jié)交易進(jìn)來(lái)的速度,如果比特幣協(xié)議沒(méi)有什么其他的改變的話。

請(qǐng)注意,這些信息當(dāng)中沒(méi)有一項(xiàng)是以太坊能夠提供的

比特幣就是按照這個(gè)理念來(lái)設(shè)計(jì)的。排隊(duì)等待的交易數(shù)量逐漸增加,但是區(qū)塊是受到管制的,人們逐漸學(xué)會(huì)使用區(qū)塊鏈這個(gè)工具,然后交易流會(huì)逐漸穩(wěn)定下來(lái)。如果這個(gè)工具不受管制,那么就會(huì)有一大幫人來(lái)?yè)屩眠@個(gè)工具,添加像CryptoKitties這樣隨意的功能,讓整個(gè)網(wǎng)絡(luò)無(wú)法運(yùn)行,直到所有積累的交易處理完為止。所有以太坊的全節(jié)點(diǎn)都要處理每一個(gè)這樣的合約。你可能不需要處理,他們可能也告訴你說(shuō)不需要處理,但確實(shí)有人需要來(lái)處理。那么有多少個(gè)這樣的人呢?更高的費(fèi)用怎么辦?他們?cè)诘讓泳桶严馛ryptoKitties這種愚蠢的去中心化應(yīng)用扼殺在搖籃里了。這些應(yīng)用完全沒(méi)有存在的必要,而其他的“可行的想法”也會(huì)得到同樣的下場(chǎng),并且只會(huì)更加糟糕,因?yàn)?b>區(qū)塊鏈不會(huì)擴(kuò)容。

這些去中心化應(yīng)用會(huì)把你的區(qū)塊鏈搞垮因?yàn)樗麄儾皇芄苤疲?/b>

但那不就是最初的承諾和夢(mèng)想嗎?那就是以太坊區(qū)塊鏈全部的前提:和比特幣一樣,但是比比特幣更好。實(shí)際上不是的

很顯然不受管制的區(qū)塊并不會(huì)導(dǎo)致無(wú)限的交易,到此處得到的教訓(xùn)是這個(gè)網(wǎng)絡(luò)甚至在物理上就無(wú)法處理目前的數(shù)量了,確實(shí)沒(méi)有足夠的節(jié)點(diǎn)能夠處理這些信息并及時(shí)地進(jìn)行中繼。你知道到底有多少以太坊節(jié)點(diǎn)嗎?你真的知道嗎?比特幣網(wǎng)絡(luò)大約有115,000個(gè)節(jié)點(diǎn),其中約有12,000個(gè)聽(tīng)節(jié)點(diǎn),幾乎所有的節(jié)點(diǎn)都是參與工作的,因?yàn)檫@是受到管制的。具體什么是聽(tīng)節(jié)點(diǎn)在這里并不重要,因?yàn)椴还苁锹?tīng)節(jié)點(diǎn)還是非聽(tīng)節(jié)點(diǎn),他們都參與了將區(qū)塊接收和發(fā)送給其他相連接的節(jié)點(diǎn)的工作。默認(rèn)是8,那么客戶端就不會(huì)讓你超過(guò)8,除非你手動(dòng)添加。這個(gè)限制是估計(jì)設(shè)置的,你最好不要添加太多,不然對(duì)網(wǎng)絡(luò)不好:

https://bitcoin.stackexchange.com/a/8140

比特幣默認(rèn)是不會(huì)允許超過(guò)8個(gè)外向連接的,-maxconnections只控制你允許多少內(nèi)向連接。你可以把這個(gè)數(shù)值調(diào)高一點(diǎn),但等其他大多數(shù)人連接上你要花一些時(shí)間。

請(qǐng)不要修改這個(gè),因?yàn)楦緵](méi)必要。在網(wǎng)絡(luò)上可連接的節(jié)點(diǎn)是一個(gè)稀缺資源,而且對(duì)于去中心化來(lái)說(shuō)是必不可少的。如果人們都像個(gè)別站點(diǎn)那樣試圖連接所有節(jié)點(diǎn),那么我們很快就會(huì)用完這些節(jié)點(diǎn)。

如果你是一個(gè)商人或者礦工,你可能想和幾個(gè)你信任的節(jié)點(diǎn)建立固定的連接(請(qǐng)查看-addnode?命令行/配置選項(xiàng)),但是有更多的連接并不意味著有更強(qiáng)的驗(yàn)證能力(參考客戶端永遠(yuǎn)驗(yàn)證所有的東西),也不意味著中繼更快(因?yàn)槟阈枰獙⑿碌膮^(qū)塊和交易分發(fā)給你所有的節(jié)點(diǎn),反而更慢了)。這主要就是為網(wǎng)絡(luò)提供服務(wù)。

還記得前文提到過(guò)的這個(gè)嗎?

這并不是解決的辦法。這只是一個(gè)例子,說(shuō)明為什么一個(gè)允許參與者作出自私的選擇而不進(jìn)行監(jiān)管的鏈?zhǔn)呛茉愀獾摹_@只有一個(gè)結(jié)局:主人和奴隸節(jié)點(diǎn),少數(shù)的主人領(lǐng)導(dǎo)所有的奴隸節(jié)點(diǎn)。聽(tīng)起來(lái)很去中心化對(duì)嗎?尤其是當(dāng)成為主人節(jié)點(diǎn)對(duì)財(cái)力的要求越來(lái)越高的時(shí)候…

為了公平起見(jiàn),我們?cè)谶@里說(shuō)點(diǎn)離題的話:這也正是閃電網(wǎng)絡(luò)所受到的批評(píng),但閃電網(wǎng)絡(luò)是另一種完全不同的網(wǎng)絡(luò)。區(qū)塊鏈網(wǎng)絡(luò)是點(diǎn)對(duì)點(diǎn)廣播網(wǎng)絡(luò)。像閃電網(wǎng)絡(luò)這樣的狀態(tài)通道則是點(diǎn)對(duì)點(diǎn)任播網(wǎng)絡(luò)。這兩種網(wǎng)絡(luò)中信息傳遞的方式是完全不同的。即使是你家里的冰箱也有足夠的硬件來(lái)成為一個(gè)閃電網(wǎng)絡(luò)節(jié)點(diǎn)。閃電網(wǎng)絡(luò) “輻射狀通道模式”相關(guān)的批評(píng)是關(guān)于通道平衡容量的。輻射狀通道模式和主人與奴隸的問(wèn)題一樣,但有了通道平衡之后數(shù)據(jù)就不會(huì)遇到瓶頸。你只需要把閃電網(wǎng)絡(luò)客戶端標(biāo)準(zhǔn)化,打開(kāi)X個(gè)通道,每個(gè)通道含有X資金,然后網(wǎng)絡(luò)就會(huì)按照這個(gè)標(biāo)準(zhǔn)形成,完全避開(kāi)了輻射狀通道模式,就像比特幣客戶端標(biāo)準(zhǔn)化地只允許8個(gè)節(jié)點(diǎn)。閃電網(wǎng)絡(luò)是一個(gè)很新的東西,所以我們還不知道應(yīng)該有什么樣的標(biāo)準(zhǔn),因?yàn)槲覀儸F(xiàn)在可以測(cè)量的數(shù)據(jù)量幾乎為零。/結(jié)束為閃電網(wǎng)絡(luò)辯護(hù)

談到我們可以測(cè)量的數(shù)據(jù)幾乎為零,為什么以太坊節(jié)點(diǎn)數(shù)量只有這幾個(gè)圖表?歷史在哪里?這些節(jié)點(diǎn)中有多少個(gè)使用了fast/warp同步而且從未完全驗(yàn)證?你不需要全部?jī)?chǔ)存,因?yàn)槟氵€可以修剪,但是再問(wèn)一次,有多少個(gè)是完全驗(yàn)證過(guò)的?有多少個(gè)僅是輕量客戶端,只同步區(qū)塊頭的?

https://www.ethernodes.org/network/1

可笑的是,像Trustnodes這種鼓吹BCash陰謀的宣傳網(wǎng)站會(huì)發(fā)布像以下這樣睜著眼睛說(shuō)瞎話的文章,這些文章被大量轉(zhuǎn)發(fā),不知情的人也不會(huì)去質(zhì)疑它:

我才不要放鼓吹BCash網(wǎng)站的鏈接?

目前有115,000個(gè)比特幣節(jié)點(diǎn),并且全部都已驗(yàn)證:

http://luke.dashjr.org/programs/bitcoin/files/charts/software.html

那么現(xiàn)在你該怎么辦呢?你作為一個(gè)獨(dú)立的人,逐漸意識(shí)到了這個(gè)問(wèn)題,你會(huì)怎么做呢?如果你完全不知道發(fā)生了什么,你會(huì)怎么做呢?這個(gè)網(wǎng)絡(luò)中充滿了這樣的人,他們逐漸地離開(kāi)了(不一定是離開(kāi),而是參與工作的節(jié)點(diǎn)逐漸降級(jí)為輕量節(jié)點(diǎn)),那這個(gè)網(wǎng)絡(luò)會(huì)怎么樣呢?還剩下多少個(gè)參加工作的節(jié)點(diǎn)?還有多少個(gè)節(jié)點(diǎn)擁有創(chuàng)世區(qū)塊的完整副本?如果只有5個(gè)數(shù)據(jù)中心在為整個(gè)奴隸網(wǎng)絡(luò)(輕量節(jié)點(diǎn))鏈服務(wù)會(huì)怎么樣呢?如果每個(gè)人都只同步區(qū)塊頭的話,誰(shuí)來(lái)驗(yàn)證交易呢?你可以干坐在那里不斷告訴自己:“網(wǎng)絡(luò)只需要最近的狀態(tài)歷史就能保持安全”,但是當(dāng)你的網(wǎng)絡(luò)從底層開(kāi)始全軍覆沒(méi),大多數(shù)節(jié)點(diǎn)甚至跟不上最后的1,000個(gè)區(qū)塊時(shí),這個(gè)網(wǎng)絡(luò)又怎么會(huì)是安全的?

經(jīng)驗(yàn)教訓(xùn):

1.??? 以太坊區(qū)塊大小增長(zhǎng)是一件不好的事,這是因?yàn)楣?jié)點(diǎn)處理所需,而不是因?yàn)樗麄円谟脖P(pán)上存儲(chǔ)的量。

2.??? 為了防止網(wǎng)絡(luò)全盤(pán)崩潰,以太坊需要設(shè)置一個(gè)合理的區(qū)塊大小限制。

3.??? 設(shè)置區(qū)塊大小限制會(huì)導(dǎo)致費(fèi)用上漲,這就使得許多去中心化應(yīng)用無(wú)法運(yùn)轉(zhuǎn)或者速度大幅減緩。在未來(lái)這些去中心化應(yīng)用將無(wú)法使用。

4.??? 如果去中心化應(yīng)用無(wú)法使用,那么以太坊整個(gè)存在的意義就沒(méi)有了。

BCash在這里是什么角色?

1.??? BCash剛剛將他們的區(qū)塊大小從8MB提高到了32MB,并且很快會(huì)添加新的OP_CODES來(lái)使得像ICO和BCash Birdies?之類的功能得以實(shí)現(xiàn)。

2.??? BCash“還有增長(zhǎng)的空間”,因?yàn)樗@個(gè)區(qū)塊鏈上的壓力還不是很大,而以太坊區(qū)塊鏈身上則背負(fù)著巨大的壓力。

https://txhighway.cash/

以太坊正在走向滅亡,而B(niǎo)Cash正在走上它的老路,無(wú)視各種警告。他們想要更大的區(qū)塊和ICO,于是他們做到了。這兩個(gè)區(qū)塊鏈都會(huì)成為同樣的東西:逐步邁向死亡的、被中心化統(tǒng)治的區(qū)塊鏈,但是通過(guò)逐步的區(qū)塊大小增加來(lái)繼續(xù)支持具有欺詐性質(zhì)的實(shí)用代幣,使其繼續(xù)茍延殘喘,直到整個(gè)系統(tǒng)崩潰,沒(méi)有人能夠再運(yùn)行節(jié)點(diǎn)。

我的建議:停止使用中心化的區(qū)塊鏈

唯一一個(gè)運(yùn)行完全驗(yàn)證的節(jié)點(diǎn)的人就是那個(gè)支撐起整個(gè)以太坊網(wǎng)絡(luò)的人。整篇文章到此為止我都很努力地不去提Vitalik的名字,這樣我才能專注于討論技術(shù)問(wèn)題但如果這張照片(或者原來(lái)那張)無(wú)法代表以太坊空間的精髓的話,那我就不知道還有什么能代表了。我為Vitalik指出像Fake Satoshi之類的大騙子而鼓掌,但同時(shí)他也錯(cuò)誤地代表了以太坊所宣稱的功能。

啊對(duì)了,還有那個(gè)被稱為殺手锏的數(shù)據(jù)分片?那完全就是騙人的把戲,還是同樣的節(jié)點(diǎn)中心化問(wèn)題,只不過(guò)往上披了一層面紗而已。這完全就是將我剛才警告過(guò)的主人和奴隸網(wǎng)絡(luò)強(qiáng)塞給你,只不過(guò)打著“新的擴(kuò)容技術(shù)”的名號(hào)而已。

忘了Vitalik放出來(lái)的圖表吧,因?yàn)槟歉揪蜎](méi)意義?,F(xiàn)在讓我們來(lái)將以太坊目前的網(wǎng)絡(luò)簡(jiǎn)化一下。下面的圖表中將所有的輕量客戶端用綠色標(biāo)出來(lái),而“好的”全節(jié)點(diǎn)用紅色標(biāo)出。你的fast/warp同步節(jié)點(diǎn)可能現(xiàn)在還是紅色的,直到它無(wú)法再繼續(xù)保持,或者你不再繼續(xù)升級(jí)或維護(hù),改為使用輕量客戶端,變成了綠色的點(diǎn)。

隨著時(shí)間的推移,綠色的點(diǎn)越來(lái)越多而紅色的越來(lái)越少,這個(gè)情況是無(wú)法避免的,因?yàn)樗腥硕荚谶@么干。你運(yùn)行的是一個(gè)全節(jié)點(diǎn)還是一個(gè)輕量客戶端?甚至你有在運(yùn)行節(jié)點(diǎn)嗎?“如果同步失敗”,那么很多人都會(huì)建議你轉(zhuǎn)而使用輕量客戶端,但這并不能解決問(wèn)題。

這張圖甚至已經(jīng)把情況輕描淡寫(xiě)了。實(shí)際上許多全節(jié)點(diǎn)(紅色)的網(wǎng)絡(luò)連接很差,根本沒(méi)有圖上畫(huà)的連接得這么好:

不過(guò)不要擔(dān)心,Vitalik來(lái)拯救世界了。他要把“節(jié)點(diǎn)”變成SPV客戶端,只同步區(qū)塊頭。

限制就是每一個(gè)節(jié)點(diǎn)都要驗(yàn)證所有數(shù)據(jù)分片的區(qū)塊頭,而節(jié)點(diǎn)對(duì)區(qū)塊頭的驗(yàn)證能力受到其計(jì)算能力的限制,因此要進(jìn)行“二次方數(shù)據(jù)分片”:如果一個(gè)節(jié)點(diǎn)能夠處理C件事情,那么就有C個(gè)數(shù)據(jù)分片的區(qū)塊頭來(lái)讓該節(jié)點(diǎn)處理;或者說(shuō),如果一個(gè)節(jié)點(diǎn)在驗(yàn)證一個(gè)單一的區(qū)塊,那么它就能驗(yàn)證C個(gè)交易,所以他的總處理容量就(大約)是C的二次方。

這是什么意思呢?我花了很多時(shí)間來(lái)畫(huà)了個(gè)圖好讓大家有個(gè)直觀的感受,但是首先我們先用文字來(lái)解釋一下:

在比特幣中,你要么完全驗(yàn)證,要么不驗(yàn)證。你可以是以下兩種情況之一:

·? 一個(gè)全節(jié)點(diǎn),所有的活都能干,完全驗(yàn)證所有的交易/區(qū)塊。

·? 一個(gè)SPV客戶端,什么都不干,掛在一個(gè)全節(jié)點(diǎn)上,只同步區(qū)塊頭,不分享任何東西。這些客戶端不是網(wǎng)絡(luò)的一份子,根本就不配被提起,不過(guò)為了避免困惑我在這里還是說(shuō)一下。

再?gòu)?qiáng)調(diào)一次,比特幣里一共有115,000個(gè)全節(jié)點(diǎn),他們什么活都能干。

在以太坊里有:

·?什么活都能干的全節(jié)點(diǎn),完全驗(yàn)證所有的交易/區(qū)塊。

·? 試圖干活的節(jié)點(diǎn)但是由于節(jié)點(diǎn)問(wèn)題而無(wú)法同步,所以跳過(guò)并使用warp/fast同步,“完全”驗(yàn)證新的交易/區(qū)塊。

·? 輕量“節(jié)點(diǎn)”,永遠(yuǎn)只同步區(qū)塊頭,我猜他們也會(huì)和其他相似的節(jié)點(diǎn)分享區(qū)塊頭,所以我們可以把他們稱為“SPV節(jié)點(diǎn)”。在比特幣里她們并不存在。再說(shuō)一次,比特幣里的SPV客戶端并不傳遞信息,他們不屬于節(jié)點(diǎn)。

你所看到的以太坊節(jié)點(diǎn)數(shù)量?我敢說(shuō)那大多數(shù)都是輕量節(jié)點(diǎn),根本不進(jìn)行驗(yàn)證工作(檢驗(yàn)區(qū)塊頭不能算是驗(yàn)證)。不同意的話就來(lái)證明我是錯(cuò)的吧,拿出數(shù)據(jù)來(lái)。這就相當(dāng)于運(yùn)行了一個(gè)次級(jí)網(wǎng)絡(luò),相互分享區(qū)塊頭,但是計(jì)算網(wǎng)絡(luò)節(jié)點(diǎn)的時(shí)候卻被用來(lái)濫竽充數(shù)。他們對(duì)網(wǎng)絡(luò)完全沒(méi)有貢獻(xiàn),只是吸血的水蛭而已。


有了數(shù)據(jù)分片的新的以太坊有點(diǎn)不一樣,這里有:

·?????? 什么活都能干的全節(jié)點(diǎn),完全驗(yàn)證所有的交易/區(qū)塊。

·?????? 含有全節(jié)點(diǎn)的數(shù)據(jù)分片網(wǎng)絡(luò),能夠在該數(shù)據(jù)分片內(nèi)干所有的活,并且驗(yàn)證其他數(shù)據(jù)分片的區(qū)塊頭。

·?????? 只同步、驗(yàn)證、傳播其他數(shù)據(jù)分片的區(qū)塊頭的“節(jié)點(diǎn)”。(檢驗(yàn)區(qū)塊頭不能算是驗(yàn)證,這就相當(dāng)于還是一個(gè)次級(jí)網(wǎng)絡(luò),假裝里面是真正的以太坊節(jié)點(diǎn),當(dāng)他們統(tǒng)計(jì)節(jié)點(diǎn)的時(shí)候會(huì)把這些假的節(jié)點(diǎn)也算進(jìn)去,讓人們繼續(xù)相信這還是一個(gè)運(yùn)營(yíng)正常的去中心化網(wǎng)絡(luò),但實(shí)際上它已經(jīng)不是了。)

猜猜你會(huì)運(yùn)行哪種節(jié)點(diǎn)?大膽猜一下吧。對(duì)于完全驗(yàn)證的節(jié)點(diǎn)來(lái)說(shuō)什么都沒(méi)有改變。

我為了省時(shí)間所以畫(huà)連接線的時(shí)候都是復(fù)制粘貼的,因?yàn)闆](méi)必要那么精確。藍(lán)色的點(diǎn)是數(shù)據(jù)分片網(wǎng)絡(luò)。紅色的是以前的以太坊網(wǎng)絡(luò),他們需要處理所有的東西。綠色的“節(jié)點(diǎn)”則只是將區(qū)塊頭進(jìn)行同步和傳播而已:

這并不是擴(kuò)容。如果你的節(jié)點(diǎn)無(wú)法同步,那它就會(huì)降級(jí)為一個(gè)輕量客戶端。現(xiàn)在有了數(shù)據(jù)分片,你的節(jié)點(diǎn)降級(jí)為一個(gè)“數(shù)據(jù)分片節(jié)點(diǎn)”。不論如何,每次有一個(gè)節(jié)點(diǎn)降級(jí),你就失去了一個(gè)全節(jié)點(diǎn)。更糟糕的是,他們把這些綠色的點(diǎn)也稱為節(jié)點(diǎn),但他們只是同步區(qū)塊頭而已,把所有的驗(yàn)證工作留給紅色的節(jié)點(diǎn)。

在這種情況下,你究竟如何才能知道有多少完全驗(yàn)證節(jié)點(diǎn)?你現(xiàn)在完全無(wú)法得知了,因?yàn)槲ㄒ灰粋€(gè)追蹤這個(gè)數(shù)據(jù)的網(wǎng)站把輕量客戶端也算進(jìn)去了。假如這些全節(jié)點(diǎn)中心化到了10個(gè)數(shù)據(jù)中心里,那你怎么知道呢?你永遠(yuǎn)不會(huì)知道。

更正:有人“糾正”了我關(guān)于數(shù)據(jù)分片的說(shuō)法,但我很清楚我知道它應(yīng)該怎樣工作。我想讓這篇文章簡(jiǎn)單一點(diǎn),因?yàn)檫@篇文章不是關(guān)于數(shù)據(jù)分片的。我會(huì)另外寫(xiě)一篇文章來(lái)討論這個(gè)問(wèn)題,主要是關(guān)于??闭?/b>(Collater)和執(zhí)行者(Executor)的,他們只是改頭換面的全節(jié)點(diǎn),但你無(wú)法運(yùn)行。在我寫(xiě)出這篇文章之前,你可以先看下面這張新的圖表,它更精確地反映了含有數(shù)據(jù)分片的以太坊網(wǎng)絡(luò)。

0全節(jié)點(diǎn):

另一方面,比特幣從一開(kāi)始就被設(shè)計(jì)成防止出現(xiàn)這種狀況:

https://twitter.com/StopAndDecrypt/status/992766974022340608

那么你會(huì)怎么做?

你應(yīng)該怎么做?

你是一個(gè)開(kāi)發(fā)者嗎?用上你所學(xué)到的一切知識(shí),找一個(gè)好的、沒(méi)壞的區(qū)塊鏈進(jìn)行應(yīng)用開(kāi)發(fā)吧。

你是一名商人嗎?集中精力讓你的服務(wù)能夠接受支付網(wǎng)絡(luò)吧,要確保這個(gè)支付網(wǎng)絡(luò)基于一個(gè)好的區(qū)塊鏈上。

你是一名投資者嗎?現(xiàn)在開(kāi)始投資一個(gè)好的區(qū)塊鏈吧,要確保這個(gè)區(qū)塊鏈不會(huì)在未來(lái)的幾年內(nèi)就走向衰亡。

你是一個(gè)賭徒嗎?購(gòu)買EOS吧,這是個(gè)新玩意,但同樣糟糕,理由和我前文所述一樣,只不過(guò)還沒(méi)人知道而已。

你是一個(gè)理想主義者嗎?那這個(gè)絕對(duì)不是你想要的區(qū)塊鏈,你應(yīng)該去尋找你真正想要的區(qū)塊鏈。

https://twitter.com/StopAndDecrypt/status/992766974022340608

如果你有興趣運(yùn)行一個(gè)永遠(yuǎn)不會(huì)同步不上、也不會(huì)要求你升級(jí)硬件的比特幣節(jié)點(diǎn),可以查看以下這些教程:

https://hackernoon.com/a-complete-beginners-guide-to-installing-a-bitcoin-full-node-on-linux-2018-edition-cb8e384479ea

https://twitter.com/StopAndDecrypt

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容