以太坊將成爲新互聯網的支柱,我爲何這麼說?Loom Network正在以太坊上構建咱們的第2層,而不是其餘區塊鏈平臺——這就是緣由。php
每月都有其餘的公司發佈白皮書,聲稱已經解決了以太坊所面臨的可擴展性問題。這些新的區塊鏈聲稱比以太坊更好,更快,更智能——他們說他們能夠處理數千甚至數百萬的每秒交易(TPS),沒有交易費用,而且有近乎實時的確認時間。java
然而在Loom Network,當咱們打算創建一個平臺,將大規模的去中心化移動遊戲和社交網絡帶入主流時,以太坊是迄今爲止最明顯的選擇。node
在本文中,我將解釋爲何咱們認爲以太坊已經贏得了成爲Web 3.0基礎的競賽的緣由,並將成爲全部主要DApp平臺將在將來選擇構建的基礎層。讓咱們從最明顯的開始。python
自從咱們去年11月推出以來,咱們的以太坊代碼學校CryptoZombies.io
已擁有超過207,623名用戶——這個數字一直在增加,每個月超過30,000+用戶,沒有放緩的跡象。android
Truffle(Etheruem的開發框架)已經有近550,000次下載,自1月以來每個月增長超過45,000+用戶。程序員
簡而言之,創建在以太坊之上的開發人員數量不只在增加——並且還在加速。web
每個月使用以太坊松露套件的開發人員數量不只在增加——並且還在加速增加。算法
這意味着若是另外一個區塊鏈平臺想要在開發商採用方面擊敗以太坊,那麼它還不足以遇上以太坊如今的位置——它必須超越以太坊的增加速度。mongodb
爲何開發人員採用重要?編程
在一天結束時,若是沒有人實際使用它,區塊鏈每秒能夠處理多少次交易並不重要。
爲了使應用程序值得使用,須要吸引足夠的開發人員來構建它們。
若是你沒有開發人員在區塊鏈上構建應用程序,那麼你就能夠有效地構建一個鬼城。
我不肯定是什麼緣由致使史蒂夫鮑爾默在會議上瘋狂登臺並在meme歷史中創造了這個經典時刻,但我在此將他包括在內以強調個人觀點:開發人員的採用就是一切。
大多數開發人員在其上構建實際應用程序的區塊鏈平臺將成爲得到最普遍主流採用的平臺。以太坊不只在這個領域有着巨大的先機,並且天天都有差距在擴大。
爲何以太坊吸引了大多數開發者?
Truffle
,Infura
,Web3.js
,OpenZeppelin
,Geth
,Ganache
,MetaMask
,CryptoZombies
,MyCrypto
,Etherscan
,ERC20
和ERC721
。
這些是不一樣的開發團隊不知疲倦地投入數十萬小時的工具(以及許多其餘工具)——而且他們能夠自由地用於任何想要在以太坊上構建DApp的以太坊開發人員。
此開發者生態系統只會隨着時間的推移而增加。咱們的團隊和至少十幾我的正在圍繞以太坊DApp開發構建更多工具和基礎架構,這將使以太坊開發人員的生活在將來更加輕鬆。
這是Metcalfe的法律適用於開發人員基礎設施。越多的開發人員構建有用的東西,新開發人員構建起來就越容易(也越有趣),而且影響就越大。
若是你是開發人員而且想要構建一個替代以太坊的區塊鏈平臺,那麼你須要在本身的平臺上構建全部這些工具的等效版本,以便與開發人員的以太網易用性競爭。
或者你能夠,你知道......只是創建在以太坊之上,並利用開箱即用的全部這些東西。可是讓咱們更深刻一級。
讓咱們來談談爲何開發人員但願花時間構建這些工具。
而這裏是咱們深刻探究的地方,看看以太坊真正發光的地方。
在區塊鏈方面,有一項稱爲可擴展性三難的基本法則。它有點像物理定律,它表示區塊鏈只能擁有這3個屬性中的2個:去中心化,可擴展性和安全性。
這意味着,在相同安全級別的狀況下,若是你想提升區塊鏈的可擴展性,則必須犧牲其去中心化。
爲何是這樣的?
因爲區塊鏈的性質,每一個驗證器都須要運行網絡上發生的每一次計算,以確保其準確性。
所以,若是你但願經過讓數千名用戶運行驗證器來使網絡充分去中心化,則每秒的最大事務數量須要受到普通用戶的PC和網絡速度能夠處理的限制。
另外一方面,若是你想擁有最快,最具擴展性的區塊鏈EVER,你應該執行如下操做:
你能明白爲何這對區塊鏈來講是個壞主意嗎?
然而,我所看到的每秒擁有大量交易的項目正在悄悄地進行權力下沉——其中大部分都是對用戶/投資者不透明。
爲何權力下沉很重要?
來自Chris Dixon和Spencer Bogart的一篇精彩的博客帖子標題爲「爲何權力下層很重要」——二者都是強烈推薦的讀物。
在他的文章中,Chris Dixon提出了一個簡單的論點:開發人員被激勵創建一個平臺,他們知道這個平臺不會在之後改變他們的規則,從而剝奪他們的用戶和利潤。
若是你在Facebook或Apple的App Store上構建應用程序,你必須相信這些平臺未來不會禁止你,阻止某些用戶使用你的應用程序或查看你的更新,或者開始向你收取更高的費用以保持相同的用戶的訪問。
另外一方面,以太坊是咱們所說的無權利。
任何人均可以將以太坊用於任何目的,無需任何人的許可。
沒有人能夠阻止你將一段代碼上傳到以太坊區塊鏈中,沒有人能夠阻止你的用戶執行它。
讓它沉澱一分鐘,由於它很是強大。
有史以來第一次,咱們有一個平臺,沒有人能夠關閉,沒有人能夠審查——不是政府,不是有大量資金的超級公司,不是羅斯柴爾德家族等等,哪怕是你想一想的任何陰謀理論也不行。
若是你在以太坊上構建DApp,則沒有人能夠阻止你的用戶匿名訪問它。
若是你購買存儲在網絡上的一些token或數字商品,你將被保證永遠留在那裏,沒有人可以將它們從你身邊帶走。
正是這些去中心化的區塊鏈的無權和審查特性使咱們可以在互聯網歷史上第一次擁有數字物品的真正全部權。
更集中的平臺沒有這種保證
幾乎全部被稱爲「以太坊殺手」的平臺都只是決定權衡去中心化以支持更高的可擴展性,並將其宣傳爲好像它是一個功能。
這種權衡很容易,由於這彷佛是市場的需求。
不瞭解的用戶抱怨收費高,交易時間慢——因此咱們不能責怪開發商試圖給市場提供它想要的東西。
在Spencer Bogart的「爲何權力下沉很重要」中,他說:「新用戶和開發人員傾向於這些新網絡並不奇怪:改進的吞吐量和功能是用戶和開發人員能夠當即欣賞的東西,而去中心化做爲一種功能的好處彷佛是無定形的。」
在短時間內,用戶可能會受到更具可擴展性的區塊鏈所提供的性能的誘惑,而不會意識到去中心化的重要性,直到喚醒呼叫使一切崩潰。
他繼續說:
其餘達到1,000 TPS或更高的區塊鏈經過一個小的,固定數量的節點驗證全部交易來實現這一點——在EOS的下爲21,在Lisk的下爲101。
可是由21個節點運行的網絡要求你信任這21個可公開識別的節點,以便不對協議進行更改,或限制某些人在未來將其用於某些目的。
惡意實體影響數以千計的匿名以太坊節點審查某些交易要比它們對21個公知的塊生產者中的15個產生影響要困可貴多。或者讓這15個區塊生產者組建一個壟斷機構並以有利於他們的方式改變規則,就像集中平臺上發生的那樣。或者政府或公司對這些實體施加壓力以審查某些交易或用戶。
正如斯賓塞所說:這些半去中心化的平臺受到相同的社會和經濟壓力,這些壓力促使集中平臺審查某些用戶和活動,所以趨向於他們應該糾正的相同結果。
若是開發人員不能徹底信任基礎層將始終保持無權限和審查,那麼他們不多有動力開始在平臺上構建而不是簡單地使用傳統的Web服務器。
經過在經過提升吞吐量來吸引用戶的近視目標中犧牲基層去中心化,這些平臺具備諷刺意味地破壞了首先使用區塊鏈的整個動機。
最重要的是,增長第1層的吞吐量甚至不是一種可擴展的方法。
它將爲您帶來一些初步收益,但它基本上受到區塊鏈性質的限制,而不是實現真正可擴展性的方式。
這讓我想到了下一點......
試圖在一臺巨型超級計算機上運行互聯網上最受歡迎的100款遊戲和社交應用程序是荒謬的。
一樣,假設在可預見的將來世界上全部分散的應用程序都將運行在一個區塊鏈上,這是荒謬的。
咱們來看一些數字。
Facebook每秒有超過30,000次的評論/評論,納斯達克每秒看到20,000屢次交易,而像PlayerUnknown的Battlegrounds這樣的MMO遊戲能夠處理超過1M的併發用戶更新遊戲狀態。
在總計超過100萬TPS以前,它只須要幾十個這樣大小的應用和遊戲。
那麼當用戶數增長一倍時你會怎麼作?
顯然,嘗試在同一個鏈上運行每一個DApp並非一種實用的方法。
區塊鏈每秒能夠進行一千次交易或每秒進行一百萬次交易可有可無——沒有一個區塊鏈足夠快,能夠處理同一鏈上全部世界上去中心化的應用程序。
縮放必須在第2層上進行
解決方案很明顯——這些應用程序須要跨多個區塊鏈分開。
咱們在Loom的早期實現了這一點,當時咱們提出了特定於應用程序的側鏈的想法。咱們預見到最終一些去中心化的應用程序將變得足夠流行,甚至達到Facebook規模的十分之一,而且運行它們的惟一可能方式是在他們本身的專用鏈上。
固然,若是你把這些須要每秒數千次交易的DApp放在他們本身的獨立區塊鏈上,他們就會容易受到咱們在「爲何權力下沉很重要」中討論的相同問題的影響。
可是若是你把它們放在一個足夠去中心化的區塊鏈(如以太坊)的側鏈上——你就能夠得到一箭雙鵰的效果。
Sidechains在不犧牲安全性的狀況下提供更高的可擴展性
側鏈可使用針對須要很是高TPS或低延遲的DApp優化的不一樣一致性算法(如DPoS),同時存儲須要主鏈上的高安全性的任何token或數據。
這樣,即便側鏈不像主鏈那樣去中心化,用戶所需的信任量也被最小化,由於他們能夠選擇將任何真正有價值的東西移動到主鏈以便安全保存。(若是使用Plasma Cash保護第2層資產,則更是如此)。
經過將DApp置於側鏈到去中心化的主網絡,你能夠得到更快的區塊鏈提供的更高可擴展性的全部好處,同時保持去中心化式基礎層提供的相同信任和安全保證。
斯賓塞在他的文章中得出了咱們得出的相同結論:
前進的道路:高度去中心化的基礎層,在更高層上增長集中化(和效率)。
事實上,這彷佛與Vitalik Buterin本身設想的模型相同:你能夠在區塊鏈上運行星際爭霸。這些事情是可能的。高水平的安全性和可擴展性容許在頂部構建全部這些各類其餘東西。以太坊是一個安全的基礎層,沒有太多的功能。
以太坊爲第2層解決方案提供了一個安全的基礎層
如今咱們明白了:
因此真正的問題是,若是不是以太坊,你會在什麼基礎層上構建你的第2層?
咱們已經看到不多有區塊鏈像以太坊那樣進行去中心化。
根據ConsenSys最近的一份報告,「在六大洲有不到17,000個節點運行以太坊區塊鏈,使其成爲現存最完全去中心化的區塊鏈平臺。」
而其餘區塊鏈可能提供的任何其餘功能,例如更高的吞吐量,無gas交易,低延遲交易等,能夠簡單地實現爲以太坊上的第2層服務。
事實上,這些功能正是咱們在Loom Network上使用ZombieChain構建的——一個第2層,無氣體,低延遲的DPoS側鏈到以太坊。
這只是正在開發的衆多第2層擴展解決方案中的一個。
很難理解爲何有開發人員想要取代以太坊而不是簡單地創建在它之上。
無視明顯的動機,這樣作可讓他們在ICO籌集數億美圓......
這有點像從新發明輪子。
固然,您可能可以構建一個稍好的基礎層,仍然提供足夠的去中心化並拋出一些額外的功能。
可是,你不得不說服全部的開發人員跳槽使用未經測試的平臺——與此同時,以太坊開發人員能夠採起你所擁有的任何好的想法,並在以太坊上的第2層鏈上實現它們。
這也是很是危險的。
若是第2層平臺被黑客入侵或被利用,用戶的損失將被最小化,由於大多數token和有價值數據仍然安全地存儲在第1層(以太坊)上。
可是,若是你構建一個新的第1層區塊鏈來存儲用戶爲之付錢的token,那麼你的代碼將被利用的可能性很小——並且在利用漏洞的狀況下,你的用戶可能有數十億美圓千鈞一髮。
在編程圈子裏,有一條規則規定「Don’t roll your own crypto」。
我將繼續進行預測,在咱們看到第一個主要的區塊鏈利用,數百萬或數十億美圓的代幣價值蒸發到空氣中以後,咱們將開始聽到區塊鏈工程師的相似反應:不要滾動本身的第1層。
這讓我想到了最後一點......
在撰寫本文時,流通的ETH有610億美圓。
這對於某人試圖破解/利用網絡有不少經濟激勵。在過去的3年中,成千上萬的有抱負的人試圖在以太坊找到漏洞。
直到今天,在以太坊的主網發佈近3年後,沒有人可以在平臺的安全性中找到漏洞。
注意:開發人員已經部署到以太坊的我的智能合約中發現了漏洞,但我在談論核心平臺自己。
沒有發現漏洞的時間越長(儘管不少人都在嘗試),平臺安全的可能性越高,未來也不會被利用。
這相似於Nassim Taleb所說的The Lindy Effect:林迪效應是一種概念,即某些不易腐爛的東西(如技術或想法)的將來預期壽命與其當前年齡成正比,所以每增長一段生存期就意味着更長的剩餘壽命。
基本上,當一個新的區塊鏈平臺出現時,開發人員將不肯意使用它,由於它沒有經得起時間的考驗。
若是它能夠被利用怎麼辦?若是它不是真正去中心化的呢?當我不肯定它是否會在兩年後出現時,我爲何要把全部時間都花在個人DApp之上?
區塊鏈在沒有遭受重大利用的狀況下存活的時間越長,它在開發人員眼中就越可靠和合法。
再一次,以太坊在這裏有一個巨大的先機。
對於今天推出的新區塊鏈平臺,它須要幾年才能存活足夠長的時間,以便開發人員將其視爲值得信賴的。
但與此同時,以太坊將繼續在開發人員採用和支持基礎設施方面取得領先。(更不用說真實的DApps和最終用戶)。
因爲以太坊在全部其餘智能合約平臺上有着如此長的領先優點,從安全的角度來看,與年輕的區塊鏈相比,它彷佛老是更好的選擇。
特別是正如咱們以前提到的那樣,新的智能合約平臺增長的任何新功能可能會誘使開發人員簡單地創建在第2層——而且仍然保持以太坊的安全承諾。
JavaScript不是一種完美的編程語言,而且在最長的時間內它遇到了一些很是嚴重的問題。但這並無阻止它成爲Web 2.0事實上的編程語言。
我預測咱們已經達到了臨界點,咱們將看到用於Web 3.0的以太坊一樣的事情。
儘管存在缺陷和缺點,但它也有一些業內最聰明的人在努力解決這些問題 - 並創建工具和基礎設施,以減小他們的障礙。
所以,咱們徹底圍繞個人開發人員論證。 (來吧,你能夠看看史蒂夫鮑爾默再次剪輯。我不會告訴任何人。)
有可能在將來,另外一個項目將會出現,它提供了一些優於以太坊的重要優點,而且設法讓全部以太坊開發商都跳槽......
但我不打賭個人ERC20s。
======================================================================
分享一些以太坊、EOS、比特幣等區塊鏈相關的交互式在線編程實戰教程:
- C#以太坊,主要講解如何使用C#開發基於.Net的以太坊應用,包括帳戶管理、狀態與交易、智能合約開發與交互、過濾器和交易等。
- java以太坊開發教程,主要是針對java和android程序員進行區塊鏈以太坊開發的web3j詳解。
- php以太坊,主要是介紹使用php進行智能合約開發交互,進行帳號建立、交易、轉帳、代幣開發以及過濾器和交易等內容。
- 以太坊入門教程,主要介紹智能合約與dapp應用開發,適合入門。
- 以太坊開發進階教程,主要是介紹使用node.js、mongodb、區塊鏈、ipfs實現去中心化電商DApp實戰,適合進階。
- python以太坊,主要是針對python工程師使用web3.py進行區塊鏈以太坊開發的詳解。
- EOS教程,本課程幫助你快速入門EOS區塊鏈去中心化應用的開發,內容涵蓋EOS工具鏈、帳戶與錢包、發行代幣、智能合約開發與部署、使用代碼與智能合約交互等核心知識點,最後綜合運用各知識點完成一個便籤DApp的開發。
- java比特幣開發教程,本課程面向初學者,內容即涵蓋比特幣的核心概念,例如區塊鏈存儲、去中心化共識機制、密鑰與腳本、交易與UTXO等,同時也詳細講解如何在Java代碼中集成比特幣支持功能,例如建立地址、管理錢包、構造裸交易等,是Java工程師不可多得的比特幣開發學習課程。
- php比特幣開發教程,本課程面向初學者,內容即涵蓋比特幣的核心概念,例如區塊鏈存儲、去中心化共識機制、密鑰與腳本、交易與UTXO等,同時也詳細講解如何在Php代碼中集成比特幣支持功能,例如建立地址、管理錢包、構造裸交易等,是Php工程師不可多得的比特幣開發學習課程。
匯智網原創翻譯,轉載請標明出處。這裏是原文