理財

ETH記事錄|解讀君士坦丁堡升級之路

“在舊金山寒冷的十一月的一天,我第一次寫出以太坊(Ethereum)白皮書的最初草稿。這份初稿是我對我們稱之為“密碼學貨幣2.0”領域長達幾個月的思考和工作的結晶。密碼學貨幣2.0簡單地說就是把區塊鏈技術應用到貨幣以外的領域,不再僅僅侷限於貨幣領域。”

——這是Vitalik Buterin在2014年1月23日寫的部落格,如今以太坊即將進行君士坦丁堡升級,讓我們從起點回顧以太坊的成長曆程,或許能更好的理解這次重大升級。

01

起點

Vitalik Buterin於2013年底描述了以太坊。此後不久,Vitalik發表了以太坊白皮書,詳細描述了以太坊協議和智慧合約架構的技術設計和基本原理。2014年1月,Vitalik在美國佛羅里達州邁阿密舉行的北美比特幣會議上正式宣佈了以太坊。

以太坊開發開始於2013年12月份,當時兩個開發者(中間:Jeffrey Wilcke和右邊:Gavin)和一個大學輟學生(左邊:Vitalik)決定集思廣益,一起開發這一專案。ETH的第一個概念驗證(Proof of Cocept 1,PoC1)在2014年2月1日完成。

為了啟動龐大的開發商、礦工、投資者和其他利益相關者網路,以太坊宣佈計劃進行以太幣代幣的預售。2014年7月23日,以太坊通過為期42天的預售募集到1844萬美金,大概為60102216枚以太坊。

繼乙太網成功預售之後,以太坊開發在一個名為ETH DEV的非營利組織下正式化,該組織根據以太坊的合同管理以太坊的發展——Vitalik Buterin,Gavin Wood和Jeffrey Wilcke一起擔任該公司的3名董事。

2014年11月,ETH DEV在柏林舉辦了為期5天的第一次小型開發者會議devcon 0。

Devcon 0現場

2015年5月,奧運測試網推出,一直在2014年2月1日午夜開始的事情(POC1)即將結束。實際上在整個2014年和2015年,以太坊團隊開發了一系列概念驗證釋出,在第9個POC(也是最後一個)開放測試網路,稱為奧運會,開發者社群被邀請參加網路上限的測試,持有各種記錄或以某種方式破壞系統的人可以獲得豐厚的獎金。

這也是Frontier釋出之前以太坊開發過程的最後階段。

02

釋出

2015年7月30日,以太坊釋出測試版,即Frontier(以太坊的第一個階段)。全世界的礦工開動挖礦裝置,使用者執行節點,以太坊網路執行起來了。儘管作為以太坊專案的第一個里程碑,Frontier本質上是一個測試版本,供開發者學習和體驗,並開始初步構建去中心化的應用和工具。

Frontier網路

Frontier(前沿)採用了一個類似Bitcoiners的模型,是以太坊的最初版本。Frontier是空白版的以太坊網路:一個用於挖礦的介面和一種上傳和執行合約的方法。

Frontier的主要用途是:將挖礦和交易所交易執行起來,從而社群可以執行挖礦裝置,開始建立一個環境,人們可以在裡面測試分散式應用(DApps)。在這個環境中,使用者上傳自己的軟體到以太需要以太幣。你可以通過以太幣/比特幣(ETH/BTC)交易對購買ETH,或者在預售期間購買以太幣,然後可以在Frontier網路中使用它。

Frontier只有命令列介面,沒有圖形介面,需要非常精通整個以太坊模型,對工具的掌握非常好。你可以挖到真正的以太幣,每個區獎勵0.59個以太幣,是正常以太幣發行速率的10%。挖出的以太幣可以用於支付程式執行費用,或者用於互動其它東西。

如果核心開發者和審計人員認為Frontier已經十分穩定了,ETH將從Frontier遷移到Homestead(家園)。當準備好遷移到Homestead(Frontier之後的另一個階段),Frontier網路會被關閉。錢包中的以太幣一起被轉移,但是合約中的狀態會被擦除,且通過“炸彈合約”的形式轉換到新網路。

2015年11月初,第二屆開發者大會DEVCON-1 在倫敦市舉行。為期5天的活動包括100多場演講,小組討論和閃電講座,吸引了400多名參與者,各種開發者、企業家、思想家和企業高管。像UBS、IBM和微軟這樣的大公司的出席,也表明了企業界對這些技術的興趣,微軟也宣佈將在其雲端計算平臺Azure上提供以太坊區塊鏈服務(Blockchain as a Service,BaaS)。

devcon 1現場

2016年3月14日(圓周率日,Pi Day),以太坊進入一個新階段:Homestead。Homestead區塊是主網路的第1150000個區塊。對於測試網路Morden來說,Homestead區塊是測試網路的第494000個區塊。

Homestead版本

Homestead是以太坊平臺的第二個階段,包括幾個協議改變(protocol changes):

❶以太幣挖礦獲得100%的報酬,即5個ETH,而不再是Frontier時期的10%

❷EIP-2 主要的Homestead硬分叉改變

❸EIP-7 硬分叉相對應的EVM(以太坊虛擬機器)更新:DELEGATECALL

❹EIP-8 devp2p 向前相容性

2016年9月19日至24日,為期5日的第三屆以太坊開發者會議DEVCON 2在上海舉行。會議吸引了一千多名的參與者,並圍繞以太坊開發、工具、安全、應用以及生態進行展望與探討。此外,在DEVCON 2會議上,Vitalik將其最新的研究成果作為《以太坊紫皮書》釋出,詳細闡述了Casper和sharding(分片)技術的機制。

Devcon 2 現場

03

低谷

事實上,2015-2016年是ETH的一個低谷,ETH團隊在解決PoS、可擴充套件性中的一些核心問題上遭遇了一系列困難,具體包括“投注共識”、儲存費用和分片技術等。

除了技術開發,外部面臨的困難也給它帶來了最為嚴峻的考驗。

2016年4月30日 “The DAO” 專案開啟眾籌,在28天時間籌集了價值超過1.5億美元的ETH,成為有史以來最大的眾籌專案。

DAO(Decentralized Autonomous Organization)是“去中心化自治組織”的簡稱。其目的是為規則制定者以及決策機構編寫智慧合約,從而節約人工和管理成本,創建出一個去中心化的自治管理架構,可以把DAO理解為完全由計算機程式碼控制運作的類似公司的實體。

2016年6月18日,黑客利用The DAO程式碼中的漏洞,成功盜取了360萬枚以太幣,在當時這些幣價值超過5000萬美元,經過社群激烈的討論後,以太坊社群決心通過硬分叉來阻止黑客將幣提走。

2016年7月20日,以太坊硬分叉完成,以太坊在原鏈的基礎上分叉出了一條新的鏈,然而,社群裡的一些礦工依舊繼續挖原鏈,這直接導致了Ethereum Classic(ETC)的誕生。從此以後,ETH和ETC兩條鏈並行發展。

就在所有人都以為The DAO事件告一段落的時候,麻煩再次落在以太坊頭上。在2016年行將結束前的幾個月裡,以太坊網路又遭受多次DoS攻擊。The DAO事件和DoS攻擊,最終耽誤了很多人的時間和精力,時間長達6個月。

04

大都會來臨

2017年10月17日,以太坊按照原定計劃於第473萬個區塊高度升級至第三階段Metropolis(大都會)。

Metropolis版本共包含Byzantium(拜占庭)和Constantinople(君士坦丁堡)兩個硬分叉,其中,Byzantium作為Metropolis首要部分成功部署,而後者則計劃於2018年進行升級,後推遲至2019年1月16日

“大都會"是以太坊發展的四個階段裡面的第三個,隨著它的到來,以太坊增加了許多有趣的特性,即:zk-Snarks、PoS(Proof of Stake , 即權益證明)早期實施、智慧合約的靈活性和穩定性和抽象賬戶。(點選下方“閱讀原文”,詳細瞭解大都會四大特性)

“拜占庭"將會引入大量新特性,主要包括前面講的zk-Snarks、“revert功能和returndata指令”(智慧合約的靈活性),以及抽象賬戶。

具體包括以下升級:

❶增加‘REVERT’操作符,允許處理錯誤不需要花費掉所有的gas(EIP 140)

❷現在交易接收方可以包括一個狀態欄位,用以指出交易成功還是失敗(EIP 658)

❸在alt_bn128 (EIP 196)和配對檢查上 (EIP 197)增加橢圓曲線和標量乘法,允許ZK-Snarks和其它加密數學

❹支援大數模冪 (EIP 198),實現RSA簽名驗證和其它加密應用。

❺支援可變長度返回值 (EIP 211)

❻增加‘STATICCALL’操作符,允許對其它合約進行非狀態改變呼叫(EIP 214)

❼修改難度調整公式,將叔塊計算在內(EIP 100)

❽冰河期/難度炸彈延期一年,區塊獎勵從5個以太幣降到3個以太幣 (EIP 649)

05

君士坦丁堡升級

總體來說這次升級主要有以下幾個方面,具體為EIP-145、EIP-1052、EIP-1014、EIP-1234。

EIP-145:它向EVM添加了按位移位指令。按位移動是向左或向右移動數字位的過程。通過這個新指令,系統執行時的操作將減少10倍的gas消耗,意味著某些專案的智慧合約將會變得更便宜。

EIP-1052:它引入了一項允許智慧合約驗證的新操作,使另一份合同的程式碼更有效率。以前此驗證需要使用者獲取其他合同的程式碼,並驗證。這個新操作會返回程式碼的雜湊值,允許檢查。合同的雜湊就像一個指紋,它具有唯一的標識並且不可以偽造。

EIP-145和EIP-1052將使EVM更高效,從而使使用者獲得更便宜的價格在以太坊網路上執行他們的智慧合約。

EIP-1014:將新增狀態通道,可以與比特幣的Lightning網路進行比較,允許某些交易不在主區塊鏈進行,將大大提高以太坊的吞吐量和效能。(注:Lightning網路是擴容方案的一種,採用鏈下交易的形式,只需開始和結束需要在鏈上廣播交易,其他的交易完全在鏈下實現。)

EIP-1234:這是一個引發爭議的提議,是關於以太坊的“難度炸彈”(“Difficulty Bomb”)和減少塊獎勵。

EIP-1234為什麼要引入難度炸彈?

在第二階段Homestead(家園)中,100%採用PoW挖礦,但是挖礦的難度除了因為算力增長而增加之外,還有一個額外的難度因子呈指數級增加,這就是難度炸彈(Difficulty Bomb),為了防止PoW轉PoS的過程中礦工聯合起來抵制,從而分叉出兩條以太坊區塊鏈,難度炸彈被引入。

難度炸彈指的是計算難度時除了根據出塊時間和上一個區塊難度進行調整外,加上了一個每十萬個區塊呈指數型增長的難度因子。

隨著區塊高度的增加,呈指數增長的難度因子比重將會顯著提高,使得出塊難度大大增加,礦工將難以挖出新的區塊,這也將導致平均15秒的出塊時間越來越長,每天總出塊數也會下降,隨著出塊越來越艱難,到最後區塊將被完全凍結,這個過程又被稱作“冰川時代”(Ice Age)。

有了這個預期,一直使用PoW挖礦的礦工會逐漸發現轉移到PoS上挖礦收益會更好,從而主動放棄PoW挖礦,將已購入的礦機做為沉沒成本處理掉而不是發起分叉行動,同時難度炸彈也將在第三階段Metropolis(大都會)時解除。

然而當真正進入到Metropolis(大都會)階段時,轉換到權益證明(PoS)的開發時間遠比原計劃的要長,工作量證明(PoW)仍然是以太坊當前挖礦主要的機制,此時以太坊的平均出塊時間為15秒,並因為難度炸彈的作用開始出現增長趨勢。

為了不堵塞交易,維持系統穩定執行,在PoS還未上線時,難度炸彈拆除需要被相應地延遲,實現方式是將挖礦難度按照回退300萬個區塊的高度去計算達到維持平均15秒的出塊速度,這樣操作後ETH的供應量會明顯超出按原本難度炸彈時間表規劃的供應量,這會導致通貨膨脹,降低ETH的價值。

為了使ETH的供應量與原本計劃的數量相當,於是需要減少每個區塊的獎勵,拜占庭(Byzantium)升級就將原本的5個ETH減少為3個ETH,叔塊的獎勵也將相應減少。這樣冰川時代(Ice Age)到來時間就被推遲了4200萬秒,大約是1.4年,預計到2018年年底的出塊速度在平均30秒(EIP649)。

然而,隨著權益證明(PoS)的開發進一步滯後,這次君士坦丁堡(Constantinople)升級不得不再一次重複拜占庭的操作,將難度炸彈解除再推遲12個月,實現方式是將挖礦難度按照回退500萬個區塊的高度,並進一步從3個ETH減少為2個ETH,叔塊的獎勵也將進一步減少(2E18 wei, or 2,000,000,000,000,000,000 wei, or 2 ETH)。

這樣,冰川時代(Ice Age)也就被順延了2900萬秒,大約是12個月,預計到2019年冬季時的出塊速度在平均30秒(EIP1234)。

06

總結

從專案成立至今,以太坊的願景一直在進化和擴充套件。簡單的說,一開始以太坊(Ethereum)的願景是下一代密碼學賬本,打算支援眾多的高階功能,包括使用者發行貨幣、智慧協議、去中心化的交易和第一個完全的去中心化自治組織(DAOs)或去中心化自治公司(DACs)應用。

隨著以太坊區塊鏈的開發,逐步形成了與之相匹配的一套底層和高層協議,包括 Solidity、Whisper、IPFS、零知識證明系統、賬戶管理系統、專用的瀏覽器等等。以太坊已經從一個通過增加程式設計功能提高 Mastercoin 的簡單嘗試變成了實現更為巨集大的願景即“網路3.0”——一個更加安全、可信和開放的為共識、金融、審計、追蹤、利用去中心化技術取代原有低效方案的應用而生的網際網路,而區塊鏈只是其中的一部分。

我們可以把以太坊整個升級之路用下表表示:

在2018年底的devcon 4上,ETH團隊展示了以太坊2.0,即進入“寧靜階段”的三大特點是:權益證明的共識機制(casper是pow與pos共存的機制)、分片和Ewasm虛擬機器,除此之外,還有側鏈方案plasma等,ETH接下來的開發和道路仍然是艱鉅的。

然而對於ETH這樣一個成熟的專案來說,除了面對開發上的困難,在每一次升級之際如何妥善處理好社群生態的關係,也是需要慎重考慮的問題。據ETHernodes網站提供的資料顯示,截至1月9日晚以太坊全網7863個全節點中僅有14.47%左右的節點支援君士坦丁堡硬分叉,儘管說難度炸彈在很大程度上保證了ETH不會分裂成兩條鏈,但礦工們面臨獎勵收益減小的情況,是否會撤出ETH,選擇其他鏈進行挖礦未可知。

參考閱讀:測試網迭代

2015年5月,以太坊推出Frontier及其首個公共測試網Olympic。兩個月後,Olympic被Morden取代。Morden是第一個真正意義上的官方公共測試網,其貫穿於Frontier和Homestead,但由於區塊鏈過於臃腫導致同步時間過長以及Geth和Parity客戶端之間的共識問題,其後,以太坊測試網路重新啟動為Ropsten,Morden測試網被棄用。

Ropsten是以太坊官方為了解決Morden難度炸彈而重新啟動的測試網,其於2016年11月20日推出,目前仍在使用。

2017年2月24日,Ropsten測試網遭受DDoS攻擊,該攻擊讓以太坊開發者們認識到當前測試網的不穩定性。其後24小時內,包括Parity在內的10家以太坊公司共同推出測試網路Kovan,該網路由權威證明(PoA,Proof of Authority)共識引擎驅動。Kovan網路代幣供應由可信節點控制,因而不易受垃圾交易攻擊的影響。

同年4月,以太坊團隊針對Homestead釋出Geth測試網路Rinkeby,該網路同樣由PoA共識引擎驅動。

ONETOP評級(ONETOPPJ):全球區塊鏈專案評級平臺,知專案好壞,就上ONETOP!

Reference:理財生活通

看更多!請加入我們的粉絲團

轉載請附文章網址

不可錯過的話題