買比特幣 買比特幣
Ctrl+D 買比特幣
ads

以太坊:以太坊啟動之前的故事_AVI

Author:

Time:1900/1/1 0:00:00

作者:VitalikButerin

原標題:《APrehistoryoftheEthereumProtocol》

發表時間:2017年9月14日

盡管當前以太坊協議背后的想法已經基本穩定了兩年,但以太坊并沒有一下子出現,在目前的概念中并完全形成。在區塊鏈啟動之前,該協議經過了許多重大的發展和設計決策。本文的目的是瀏覽該協議從頭開始啟動的各種演變;在諸如Geth,Cppethereum,Pyethereum和Ethereumj之類的協議實施方面所做的無數工作,以及以太坊生態系統中的應用和業務歷史,是故意超出范圍的。

Casper和ShardingResearch的歷史也出現了。雖然我們當然可以發表更多的博客文章,討論弗拉德,Gavin,我本人和其他人的所有想法,包括“工作證明”,“輪輻鏈”,“超級立法”,影子鏈,鏈纖維和Casper的各種迭代,以及弗拉德(Vlad在一個帖子中,我們現在將其遺漏。

讓我們首先從最終變成以太坊的最早版本開始,當時它甚至沒有被稱為以太坊。當我在2013年10月訪問以色列時,我與萬事幣團隊一起度過了很多時間,甚至為他們提供了一些功能。花了幾次思考他們在做什么之后,我向團隊發送了一個建議,以使協議更加普遍,并支持更多類型的合約,而無需添加同樣大而復雜的功能:

https://web.archive.org/web/20150627031414/http://vbuterin.com/ultimatescripting.html

請注意,這與以太坊的后來更廣泛的愿景相去甚遠:它純粹是Mastercoin試圖專門研究的,即兩黨合約,當事人A和B都會投入資金,然后他們后來他們會根據合約中指定的某些公式獲取資金。腳本語言并不完整。

以太坊基金會、AMD、Polkadot 發起 700 萬美元競賽以促進零知識擴展:金色財經報道,ZPrize于4月19日宣布,多個加密貨幣項目聯合起來,為使用零知識(ZK)證明的創新團隊提供700萬美元的獎金。該競賽由21個Web3組織支持,包括Polygon、Polkadot、Mina和Ethereum基金會。AMD-Xilinx還將為參賽團隊提供高功率的計算設備。ZPrize在一份聲明中說,參賽團隊將嘗試設計 \"新的算法和技術,以實現最好的零知識系統無法比擬的性能指標。\"獲獎者必須將其提交的材料開源,以便其他開發者能夠將任何突破性的東西整合到他們的工作中。[2022/4/20 14:34:54]

Mastercoin團隊印象深刻,但他們對放棄他們正在做的一切朝著這個方向發展并不感興趣,我越來越相信這是正確的選擇。因此,這里是12月2日的版本2:

https://web.archive.org/web/20131219030753/http://vitalik.ca/ethereum.html

在這里,你可以看到一個實質性的重新研究的結果,這主要是由于我意識到智能合約有可能完全概括的舊金山長途旅行的結果。與其僅僅是描述兩方之間關系條款的一種腳本語言,不如說合約本身是完整的帳戶,并且有能力持有,發送和接收資產,甚至保持永久存儲。該語言從基于堆棧的計算機轉變為我自己的意志的基于寄存器的計算機;除了看起來更復雜的情況外,我對此幾乎沒有爭論。

此外,請注意現在有一種內置的費用機制:

在這一點上,以太實際上是氣體。在每個計算步驟之后,交易所要求的合約的余額將有所下降,如果合約用完了貨幣執行,則會停止。請注意,此“接收者付費”機制意味著合約本身必須要求發件人向合約支付費用,并在不存在此費用的情況下立即退出;該協議分配了16個免費執行步驟的津貼,以允許合約拒絕非付費交易。

以太坊未確認交易為108,293筆:金色財經消息,據OKLink數據顯示,以太坊未確認交易108,293筆,當前全網算力為307.54TH/s,全網難度為4.08P,當前持幣地址為53,154,184個,同比增加166,532個,24h鏈上交易量為3,666,812.17ETH,當前平均出塊時間為13s。[2021/1/15 16:17:25]

這是以太坊協議完全是我自己的創建的時候。但是,從這里開始,新參與者開始加入折疊。到目前為止,該協議方面最突出的是Gavin·伍德,他在2013年12月向我接觸。

GO客戶的首席開發人員JeffreyWilcke也伸出了大約同一時間,盡管他的貢獻更多地在客戶開發方面而不是協議研究。

“嘿,Jeffrey,很高興看到你對以太坊感興趣……”

Gavin的最初貢獻是兩倍。首先,你可能會注意到,初始設計中的合約調用模型是異步的:盡管合約A可以為合約B創建“內部交易”,直到第一個交易的執行完全完成后,內部事務的執行才會啟動。這意味著交易不能使用內部交易作為從其他合約中獲取信息的一種方式;唯一的方法是ExtroOpCode,隨后在Gavin和其他人的支持下也將其刪除。

在實施我的初始規格時,Gavin自然地同步實施了內部交易,甚至沒有意識到意圖是不同的-也就是說,在Gavin的實施中,當合約呼叫另一個合約時,內部交易立即執行,一旦執行完成,則一旦執行,VM返回到創建內部交易的合約,并繼續進行下一個OPCODE。在我們倆看來,這種方法似乎是優越的,因此我們決定將其作為規格的一部分。

其次,他和我本人之間的討論交易費用模型從“合約付款”方法轉向“發送者付費”方法,還切換到“燃氣”架構。交易發件人并沒有立即奪走每個單獨的交易步驟,而是為了分配了一些“氣體”,而計算步驟則從這種氣體的津貼中獲取。如果一筆交易用盡了汽油,則汽油仍將被沒收,但整個處決將被恢復;這似乎是最安全的事情,因為它刪除了整個課程”

灰度以太坊信托已正式獲得SEC批準:剛剛,加密貨幣資產管理公司Grayscale Investments官方發推宣布,其此前向美國證券交易委員會(SEC)提交的以太坊信托注冊申請已正式獲得通過。至此,灰度以太坊信托已成為其旗下第二個獲得許可的數字貨幣投資工具。此前1月,灰度比特幣信托成為首個符合美國證券交易委員會標準的數字資產工具。[2020/10/12]

Gavin也可以在很大程度上歸功于從將以太坊視為建造可編程資金平臺的遠見卓識,并具有基于區塊鏈的合約,可以持有數字資產并根據預設的規則轉移它們,再到通用計算平臺。這始于重點和術語的細微變化,后來隨著對“Web3”合奏的越來越重視,這種影響變得更加強大,該合奏將以太坊視為一組分散的技術,其他兩個是耳語和蜂擁而至。

其他人建議在2014年初左右也進行了更改。在安德魯·米勒和其他人提出這個想法之后,我們最終回到了基于堆棧的建筑。

查爾斯·霍斯金森建議從比特幣的SHA256轉換為新的SHA3。盡管有一段時間的爭議,但與Gavin,安德魯和其他人的討論導致確定堆棧上的價值大小應限于32個字節。考慮的另一種替代方案是無限尺寸的整數,存在一個問題,即難以弄清楚多少天然氣,添加,乘法和其他操作。

我們想到的最初的采礦算法早在2014年1月,是一種名為Dagger的裝置:

https://github.com/ethereum/wiki/blob/master/Dagger.md

Dagger以“定向無環圖”命名,該算法中使用的數學結構。這個想法是,每個n個塊,一個新的dag都會是從種子中生成的偽隨機,而dag的底層將是一系列節點的集合,這些節點需要數個千兆字節才能存儲。但是,在DAG中生成任何個人值都需要計算幾千個條目。“Dagger計算”涉及在此底部數據集中的隨機位置中獲得一些值,然后將它們放在一起。這意味著有一種快速的方法來進行Dagger計算-已經將數據存儲在內存中,而不是記憶密集型的方法-從你需要從頭開始獲得的每個值。

數據:以太坊鏈上手續費較年內高位已下降90%:據歐科云鏈OKLink數據顯示,以太坊鏈上手續費較此前高位下降90%。此前以太坊鏈上手續費在9月2日達到40554 ETH,而10月11日以太坊的鏈上手續費則為3797 ETH,較2日歷史高位已下降90.63%。而單筆交易費均值同樣自2日的0.0341 ETH降至0.0037 ETH,降幅為89.1%。

同期以太坊的礦工收益亦有所下降。近七日以太坊鏈上礦工挖礦收益均值約合1.87萬 ETH,較9月高位下降了66%左右,但仍高于年初的13500 ETH。[2020/10/12]

該算法的目的是具有與當時流行的算法相同的“記憶力”屬性,例如Scrypt,但仍然是輕客戶友好的。礦工會使用快速的方式,因此他們的采礦將受到內存帶寬的限制,但是Light客戶可以可以使用無內存但較慢的版本進行驗證。快速的方法可能需要幾微秒,并且不含內存的方式緩慢而無需毫秒,因此對于輕型客戶來說,它仍然非常可行。

從這里開始,在以太坊開發過程中,該算法會發生多次變化。我們經歷的下一個想法是“自適應的工作證明”。在這里,工作證明將涉及執行隨機選擇的以太坊合約,并且有一個聰明的理由如何預期這將是抗ASIC的:如果開發了ASIC,那么競爭的礦工將有動機創建和發布許多合約,說明這些合約的說明ASIC不擅長執行。這個故事就沒有用于通用計算的ASIC之類的東西,因為這只是CPU,因此我們可以使用這種對抗性激勵機制來做出基本上是執行一般計算的工作證明。

之所以失敗,原因很簡單:遠程攻擊。攻擊者可以從區塊1開始一條鏈,只用他們可以為其創建專用硬件的簡單合約填充它,并迅速超越主鏈。所以......回到繪圖板。

下一個算法是稱為“隨機電路”,在此Google文檔中描述,由我自己和VladZamfir提出,并由MatthewWampler-Doty等人進行了分析。這里的想法也是為了模擬采礦算法中的通用計算,這次是通過執行隨機生成的電路。沒有什么難以證明的,基于這些原則是行不通的,但是我們在2014年與之聯系的計算機硬件專家往往對此非常悲觀。MatthewWampler-Doty本人建議基于SAT解決的工作證明,但最終也被拒絕了。

動態 | 澳大利亞儲備銀行進行在以太坊網絡支付系統運行CBDC的模擬測試:1月16日消息,澳大利亞儲備銀行(RBA)近期透露,其模擬了在以太坊網絡為基礎的批發支付系統中使用中央銀行數字貨幣(CBDC),以調查央行數字貨幣的可能性。(Bitcoinist)[2020/1/16]

最后,我們以一種稱為“DaggerHashimoto”的算法來完善電路。“dashimoto”有時被稱為“dashimoto”,從hashimoto那里借了許多想法,Hashimoto是ThaddeusDryja的工作證明算法,它率先提出了“I/O的工作證明”的概念,其中挖掘速度的主要限制因素是不是每秒哈希,而是每秒RAM訪問的大型范圍。但是,它將其與Dagger的輕客戶端友好型DAG生成的數據集相結合。在我自己進行了許多調整之后,Matthew,Tim和其他人,這些想法終于融合到了我們現在稱為ethash的算法中。

到2014年夏天,該協議已經大大穩定了,除了工作證明算法外,該協議直到2015年初才能達到Ethash階段,并且以Gavin的黃皮書的形式存在半正式規格。

2014年8月,我開發并介紹了叔塊機制,該機制使以太坊的區塊鏈具有較短的區塊時間和更高的容量,同時減輕集中化風險。這是作為POC6的一部分引入的。

與Bitshares團隊的討論導致我們考慮將堆添加為一流的數據結構,盡管由于缺乏時間,我們最終沒有這樣做,而后來的安全審核和DOS攻擊將表明,實際上它比我們的難度要困難得多。當時想到安全執行此操作。

9月,我和Gavin計劃了協議設計的接下來的兩個重大更改。首先,在狀態樹和事務樹旁邊,每個塊還包含一個“收據樹”。收據樹將包括交易創建的日志的哈希以及中間狀態根。日志將允許交易創建保存在區塊鏈中的“輸出”,并且可以通過光線客戶端訪問,但是未來狀態計算無法訪問。這可以用來允許分散的應用程序輕松查詢事件,例如令牌轉移,購買,創建和填寫的交換訂單,開始拍賣等等。

還有其他考慮的想法,例如,從整個交易的整個執行痕跡中制造出默克爾樹,以證明任何事物。選擇日志是因為它們是簡單性和完整性之間的妥協。

第二個是“預編譯”的想法,解決了允許復雜的加密計算在EVM中可用的問題,而無需處理EVM開銷。我們還經歷了關于“本地合約”的更多雄心勃勃的想法“如果礦工可以優化某些合約的實施,他們可以為這些合約的打包費用“投票”,因此大多數礦工可以更快執行的合約自然會降低gas價格;但是,所有這些想法都被拒絕了因為我們無法提出一種加密經濟上安全的方法來實施此類事情。攻擊者總是可以創建一份合約,該合約執行某些陷阱的加密操作,將陷阱門分配給自己和朋友,以使他們更快地執行此合約,然后再執行此合約,然后對加油的投票并將其用于網絡。相反,我們選擇了雄心勃勃的方法,即簡單地在協議中指定的較小數量的預編譯,用于諸如哈希斯和簽名方案之類的常見操作。

Gavin也是開發“協議抽象”概念的關鍵初始聲音-移動協議的許多部分,例如以太余額,交易簽名算法,nonces等作為合約本身,并具有達到達到的理論最終目標可以將整個以太坊協議描述為將函數調用到具有某些原始狀態的虛擬機中的情況。這些想法沒有足夠的時間進入最初的前沿版本,但是預計原則將通過一些君士坦丁堡的變化,卡斯珀合約和分片規范開始緩慢地集成。

這一切都是在POC7中實施的;在POC7之后,該協議并沒有發生太大變化,除了未成年人以外,盡管在某些情況下很重要,但通過安全審核會得出的細節...

2015年初,JuttaSteiner等人組織了發出的預發行安全審計,其中包括軟件代碼審核和學術審核。該軟件審核主要是由GavinWood和JeffreyWilcke領導的C++和GO實施,盡管我的Pyethereum實施中也有較小的審計。在這兩項學術審核中,一項是由IttayEyal進行的,另一個由AndrewMiller和其他最低權威進行。EYAL審計導致了較小的協議更改:鏈的總難度不包括叔叔。權限最少的審計更專注于智能合約和天然氣經濟學以及帕特里夏樹。該審核導致了幾個協議更改。一個小的是將sha3和sha3用作trie鍵而不是直接地址和鍵的使用;這將使對Trie進行最糟糕的攻擊變得更加困難。

警告可能比它的時代有點太遠了...

我們討論的另一個重要的事情是氣體限制投票機制。當時,我們已經擔心比特幣大小辯論中缺乏進展,并希望在以太坊中具有更靈活的設計,并且可以根據需要隨時間進行調整。但是挑戰是:最佳限制是什么?我最初的想法是建立動態限制,針對實際使用氣體使用的長期指數移動平均值,因此從長遠來看,平均塊將是滿的。但是,Andrew,這在某些方面是可利用的-特別是,想要提高限制的礦工只會在自己的塊中包括交易,這些交易消耗大量的氣體,但要花費很少的時間來處理,因此總是創造出來整個塊無需花錢。因此,至少在向上的方向上,安全模型相當于簡單地讓礦工對gas限制進行投票。

我們沒能想出一個不太可能打破的gas限制策略,因此Andrew推薦的解決方案是簡單地讓礦工對gas限制進行明確投票,并將默認投票策略設置為EMA規則。原因是我們離設定最大gas限制的正確方法還有很長的路要走,任何特定方法失敗的風險似乎都大于礦工濫用投票權的風險。因此,我們不妨干脆讓礦工對gaslimit進行投票,并接受限額過高或過低的風險,以換取靈活性的好處,以及礦工協同工作以非常快速地調整的能力根據需要向上或向下限制。

在Gavin,Jeff和我本人之間進行了小型黑人馬拉松之后,POC9于3月推出,并打算成為概念發布的最終證明。使用打算在Livenet中使用的方案,并建立了以太坊的長期計劃,使用了四個月的測試網跑了四個月。VinayGupta撰寫了一篇博客文章“以太坊啟動過程”,其中描述了以太坊Livenet開發的四個預期階段,并給了他們當前名稱:Frontier,Homestead,Mesropolis和Serenity。

黑客馬拉松跑了四個月。在最初的兩個月中,在各種實現中發現了許多錯誤,發生了共識失敗,除其他問題外,但是在6月左右,該網絡明顯穩定。7月,決定制作代碼凍結,然后發布發布,并于7月30日發布。

Tags:以太坊ETHVINAVI以太坊價格今日行情幣幣情ETHS價格MovingOn FinanceTAVITT

幣安app官網下載
ELE:王峰在 Element2.0 線上發布演講實錄:我要讓整個團隊都聽見我激動的心跳_NFTSHIBA價格

來源:Element 本文由整理自王峰在Element2.0線上發布演講實錄,以下為全部內容:我認為,NFT是加密市場之光。有了NFT,GameFi和元宇宙才有了基礎組件.

1900/1/1 0:00:00
NFT:X2Y2 Space:熊市還有哪些 NFT 機會?_NFTX

作者:X2Y2 主持人(X2Y2):@alex_pengfei 嘉賓:? coffee-元宇宙探索者?-@coffeer13Seven-RNG電子競技俱樂部web3顧問-@S7venslowLΞ.

1900/1/1 0:00:00
FLOW:Flow:從爆款應用到公鏈的進化之路_flow幣最新消息

作者:echo_z,?鏈茶館DapperLabs在加密世界中有著令人驕傲的成績:開發了CryptoKitties這一OG爆款應用后,轉而開發公鏈Flow.

1900/1/1 0:00:00
比特幣:Uniswap Labs 前參謀長提議創建 Uniswap 基金會,并要求 7400 萬美元資助_閃電比特幣價格

鏈捕手消息,UniswapLabs前參謀長DevinWalsh在Uniswap治理論壇發帖提議創建Uniswap基金會.

1900/1/1 0:00:00
POS:為什么選擇權益證明?_POSS幣

作者:VitalikButerin原標題:《WhyProofofStake(Nov2020)》發表時間:2020年11月6日與PoW相比,PoS是一種優越的區塊鏈安全機制的三個關鍵原因.

1900/1/1 0:00:00
STAR:StarkNet 生態的 14 個潛在空投項目_STARK

Layer2??賽道的四大天王是?Arbitrum??、Optimism?、zkSync??以及StarkNet.

1900/1/1 0:00:00
ads