以太坊是一個全新開放的區(qū)塊鏈平臺,它允許任何人在平臺中建立和使用通過區(qū)塊鏈技術(shù)運行的去中心化應(yīng)用。就像比特幣一樣,以太坊不受任何人控制,也不歸任何人所有——它是一個開放源代碼項目,由全球范圍內(nèi)的很多人共同創(chuàng)建。
和比特幣協(xié)議有所不同的是,以太坊的設(shè)計十分靈活,極具適應(yīng)性。在以太坊平臺上創(chuàng)立新的應(yīng)用十分簡便,任何人都可以安全地使用該平臺上的應(yīng)用。
下一代區(qū)塊鏈
區(qū)塊鏈技術(shù)是比特幣的底層技術(shù),這一技術(shù)第一次被描述是在中本聰2008年發(fā)表的白皮書“比特幣:點對點電子現(xiàn)金系統(tǒng)”中。區(qū)塊鏈技術(shù)更多的一般性用途在原書中已經(jīng)有所討論,但直到幾年后,區(qū)塊鏈技術(shù)才作為通用術(shù)語出現(xiàn)。
一個區(qū)塊鏈?zhǔn)且粋€分布式計算架構(gòu),里面的每個網(wǎng)絡(luò)節(jié)點執(zhí)行并記錄相同的交易,交易被分組為區(qū)塊。一次只能增加一個區(qū)塊,每個區(qū)塊有一個數(shù)學(xué)證明來保證新的區(qū)塊與之前的區(qū)塊保持先后順序。
這樣一來,區(qū)塊鏈的“分布式數(shù)據(jù)庫”就能和整個網(wǎng)絡(luò)保持一致。個體用戶與總賬的互動(交易)受到安全的密碼保護。由數(shù)學(xué)執(zhí)行并編碼到協(xié)議中的經(jīng)濟激勵因素刺激著維持和驗證網(wǎng)絡(luò)的節(jié)點。
在比特幣中,分布式數(shù)據(jù)庫被設(shè)想為一個賬戶余額表,一個總賬,交易就是通過比特幣的轉(zhuǎn)移以實現(xiàn)個體之間無需信任基礎(chǔ)的金融活動。但是隨著比特幣吸引了越來越多開發(fā)者和技術(shù)專家的注意,新的項目開始將比特幣網(wǎng)絡(luò)用于有價代幣轉(zhuǎn)移之外的其他用途。
其中很多都采用了“代幣”的形式——以原始比特幣協(xié)議為基礎(chǔ),增加了新的特征或功能,采用各自加密貨幣的獨立區(qū)塊鏈。在2013年末,以太坊的發(fā)明者Vitalik Buterin建議能夠通過程序重組來運行任意復(fù)雜運算的單個區(qū)塊鏈應(yīng)該包含其他的程序。
2014年,以太坊的創(chuàng)始人Vitalik Buterin, Gavin Wood和Jeffrey Wilcke開始研究新一代區(qū)塊鏈,試圖實現(xiàn)一個總體上完全無需信任基礎(chǔ)的智能合約平臺。
以太坊虛擬機
以太坊是可編程的區(qū)塊鏈。它并不是給用戶一系列預(yù)先設(shè)定好的操作(例如比特幣交易),而是允許用戶按照自己的意愿創(chuàng)建復(fù)雜的操作。這樣一來,它就可以作為多種類型去中心化區(qū)塊鏈應(yīng)用的平臺,包括加密貨幣在內(nèi)但并不僅限于此。
以太坊狹義上是指一系列定義去中心化應(yīng)用平臺的協(xié)議,它的核心是以太坊虛擬機(“EVM”),可以執(zhí)行任意復(fù)雜算法的編碼。在計算機科學(xué)術(shù)語中,以太坊是“圖靈完備的”。開發(fā)者能夠使用現(xiàn)有的JavaScript和Python等語言為模型的其他友好的編程語言,創(chuàng)建出在以太坊模擬機上運行的應(yīng)用。
和其他區(qū)塊鏈一樣,以太坊也有一個點對點網(wǎng)絡(luò)協(xié)議。以太坊區(qū)塊鏈數(shù)據(jù)庫由眾多連接到網(wǎng)絡(luò)的節(jié)點來維護和更新。每個網(wǎng)絡(luò)節(jié)點都運行著以太坊模擬機并執(zhí)行相同的指令。因此,人們有時形象地稱以太坊為“世界電腦”。
這個貫穿整個以太坊網(wǎng)絡(luò)的大規(guī)模并行運算并不是為了使運算更高效。實際上,這個過程使得在以太坊上的運算比在傳統(tǒng)“電腦”上更慢更昂貴。然而,每個以太坊節(jié)點都運行著以太坊虛擬機是為了保持整個區(qū)塊鏈的一致性。去中心化的一致使以太坊有極高的故障容錯性,保證零停機,而且可以使存儲在區(qū)塊鏈上的數(shù)據(jù)保持永遠不變且抗審查。
以太坊平臺本身沒有特點,沒有價值性。和編程語言相似,它由企業(yè)家和開發(fā)者決定其用途。不過很明顯,某些應(yīng)用類型較之其他更能從以太坊的功能中獲益。以太坊尤其適合那些在點與點之間自動進行直接交互或者跨網(wǎng)絡(luò)促進小組協(xié)調(diào)活動的應(yīng)用。
例如,協(xié)調(diào)點對點市場的應(yīng)用,或是復(fù)雜財務(wù)合同的自動化。比特幣使個體能夠不借助金融機構(gòu)、銀行或政府等其他中介來進行貨幣交換。以太坊的影響可能更為深遠。
理論上,任何復(fù)雜的金融活動或交易都能在以太坊上用編碼自動且可靠地進行。除金融類應(yīng)用外,任何對信任、安全和持久性要求較高的應(yīng)用場景——比如資產(chǎn)注冊、投票、管理和物聯(lián)網(wǎng)——都會大規(guī)模地受到以太坊平臺影響。
以太坊如何工作
以太坊合并了很多對比特幣用戶來說十分熟悉的特征和技術(shù),同時自己也進行了很多修正和創(chuàng)新。比特幣區(qū)塊鏈純粹是一個關(guān)于交易的列表,而以太坊的基礎(chǔ)單元是賬戶。以太坊區(qū)塊鏈跟蹤每個賬戶的狀態(tài),所有以太坊區(qū)塊鏈上的狀態(tài)轉(zhuǎn)換都是賬戶之間價值和信息的轉(zhuǎn)移。
賬戶分為兩類:
1、外有賬戶(EOA),由私人密碼控制
2、合同賬戶,由它們的合同編碼控制,只能由外有賬戶“激活”
對于大部分用戶來說,兩者基本的區(qū)別在于外有賬戶是由人類用戶掌控——因為他們能夠控制私鑰,進而控制外有賬戶。而合同賬戶則是由內(nèi)部編碼管控。如果他們是被人類用戶“控制”的,那也是因為程序設(shè)定它們被具有特定地址的外有賬戶控制,進而被持有私鑰控制外有賬戶的人控制著。
“智能合約”這個流行的術(shù)語指的是在合同賬戶中編碼——交易被發(fā)送給該賬戶時所運行的程序。用戶可以通過在區(qū)塊鏈中部署編碼來創(chuàng)建新的合約。
只有當(dāng)外有賬戶發(fā)出指令時,合同賬戶才會執(zhí)行相應(yīng)的操作。所以合約賬戶不可能自發(fā)地執(zhí)行諸如任意數(shù)碼生成或應(yīng)用程序界面調(diào)用等操作–只有受外有賬戶提示時,它才會做這些事。這是因為以太坊要求節(jié)點能夠與運算結(jié)果保持一致,這就要求保證嚴格確定執(zhí)行。
和比特幣一樣,以太坊用戶必須向網(wǎng)絡(luò)支付少量交易費用。這可以使以太坊區(qū)塊鏈免受無關(guān)緊要或惡意的運算任務(wù)干擾,比如分布式拒絕服務(wù)(DDoS)攻擊或無限循環(huán) 。交易的發(fā)送者必須在激活的“程序”每一步付款,包括運算和記憶儲存。費用通過以太坊自有的有價代幣,以太幣的形式支付。
交易費用由節(jié)點收集,節(jié)點使網(wǎng)絡(luò)生效。這些“礦工”就是以太坊網(wǎng)絡(luò)中收集、傳播、確認和執(zhí)行交易的節(jié)點。礦工們將交易分組——包括許多以太坊區(qū)塊鏈中賬戶“狀態(tài)”的更新——分成的組被稱為“區(qū)塊”,礦工們會互相競爭,以使他們的區(qū)塊可以添加到下一個區(qū)塊鏈上。礦工們每挖到一個成功的區(qū)塊就會得到以太幣獎勵。這就為人們帶來了經(jīng)濟激勵,促使人們?yōu)橐蕴痪W(wǎng)絡(luò)貢獻硬件和電力。
和比特幣網(wǎng)絡(luò)一樣,礦工們有解決復(fù)雜數(shù)學(xué)問題的任務(wù)以便成功地“挖”到區(qū)塊。這被稱為“工作量證明”。一個運算問題,如果在算法上解決,比驗證解決方法需要更多數(shù)量級的資源,那么它就是工作證明的極佳選擇。
為防止比特幣網(wǎng)絡(luò)中已經(jīng)發(fā)生的,專門硬件(例如特定用途集成電路)造成的中心化現(xiàn)象,以太坊選擇了難以存儲的運算問題。如果問題需要存儲器和CPU,事實上理想的硬件是普通的電腦。這就使以太坊的工作量證明具有抗特定用途集成電路性,和比特幣這種由專門硬件控制挖礦的區(qū)塊鏈相比,能夠帶來更加去中心化的安全分布。
Web 3:去中心化應(yīng)用平臺
很多人相信像以太坊這樣一個公開、無需信任的區(qū)塊鏈平臺十分適合作為Web 3.0的共享“后端”,像Web3.0這樣去中心化、安全的互聯(lián)網(wǎng),它的核心服務(wù),比如DNS和數(shù)字身份是去中心化的,個體可以參與到經(jīng)濟互動中。
正如以太坊開發(fā)者希望的那樣,以太坊是一張空白的帆布,你可以在上面創(chuàng)建任何你想要的東西。以太坊協(xié)議的目的是普遍化,以使其核心特征能夠以任意方式結(jié)合。理想狀態(tài)下,以太坊上的數(shù)據(jù)采集和處理程序會利用以太坊區(qū)塊鏈來建立解決方案,這些解決方案依靠去中心化的一致性提供以往無法實現(xiàn)的新產(chǎn)品和服務(wù)。
稱以太坊為一個生態(tài)系統(tǒng)再合適不過了:核心協(xié)議由不同的基礎(chǔ)設(shè)施、編碼和社群支持,他們共同構(gòu)成了以太坊項目。你也可以通過觀察使用以太坊的項目來理解以太坊?,F(xiàn)在已經(jīng)有很多基于以太坊的項目已經(jīng)非常引人注目了,比如Augur,Digix,Maker和其他很多項目(參見數(shù)據(jù)采集和處理程序)。
此外,還有開發(fā)團隊建立了人人皆可使用的開源組件。盡管這些組織都獨立于以太坊基金之外,有各自的組織目標(biāo),但他們無疑對整個以太坊生態(tài)系統(tǒng)是有益的。
智能合約
你愿意和從未謀面的人簽合約嗎?你會同意把錢借給埃塞俄比亞的農(nóng)民嗎?你愿意投資一個戰(zhàn)亂地區(qū)由少數(shù)人管理的報紙嗎?你會不嫌麻煩為了網(wǎng)上一次5美元的購買簽一個有法律效力的合約嗎?
大多數(shù)的答案都是否定的,原因是合約需要的基礎(chǔ)太多了:有時需要雙方之間互相信任的工作關(guān)系,有時要依靠合法的工作體系、警察和律師費用。
在以太坊這些都不需要:如果合約所必需的要求都能放在區(qū)塊鏈中,那么就會放在區(qū)塊鏈中,這是一個無需信任基礎(chǔ)也幾乎不用任何成本的環(huán)境。
不要想將你現(xiàn)有的合約轉(zhuǎn)移到區(qū)塊鏈中會麻煩,想一想那些因為經(jīng)濟上不可行或是沒有足夠法律保護而被你拒絕的成千上萬的小合約吧。
DAO
這里簡單地舉個例子:想象一下你和朋友有個小生意。律師和會計很貴,完全信任讓一個單獨的合伙人來看管賬簿可能讓你精神很緊張(這甚至可能是個詐騙的機會)。你可以嘗試一下多個合伙人共同看管賬簿,但只要協(xié)議沒有被嚴格遵守,就可能導(dǎo)致詐騙發(fā)生。
使用智能合約,公司的所有權(quán)和基金分配的條款可以在一開始就詳細規(guī)定。智能合約簽署的方式是,只有大部分擁有者批準(zhǔn),合約才可以變更。 這樣的智能合約可以像開源軟件一樣獲取,你甚至都不必雇傭自己的程序員來代替會計和律師。
這樣的智能合約可以立即按比例決定分配。幾個年輕人分配檸檬水站收入,可以像主權(quán)基金給擁有基金的億萬公民分配收益一樣透明。在這兩個案例中,這種透明性帶來的花費可能每美元連一美分都不到。
評論
查看更多