在區塊鏈行業裏,有兩派人一直在爭論:一個是以比特幣和以太坊爲首的社羣,另外一個是以EOS爲首的社羣。這兩羣人一直在爭論誰纔是真正的將來,雙方都認爲本身這邊更有將來。其中EOS抗爭的重點就是100萬TPS。
這裏先給TPS的科普一下,在區塊鏈裏面有個性能指標,叫作TPS,是每秒能確認的交易數量。早期比特幣的TPS只有7筆/秒;以太坊只有幾十筆/秒;而EOS號稱能夠作到100萬筆/秒,可是通過實測,目前能夠作到4000是沒問題的。
那爲何會有如此巨大的差別呢?以太坊社羣的粉絲認爲以太坊和比特幣是徹底去中心化的,區塊產生主要依靠全網全部礦工節點。而EOS只是一個「超級聯盟鏈+Token」,這個聯盟鏈由21個超級節點所組成的,因此EOS只有這21個超級節點參與生成區塊。
能夠看出來,由於EOS放棄了徹底去中心化,引入了部分的中心,從而實現了很好的性能。固然,這也啓發了後續比特幣和以太坊的改良,它們也是適當地引入了中心,從而實現了更好的性能,如比特幣的閃電網絡,以太坊的分片技術。
但若是從另外一個視角來看,特別是公鏈下DApp的用戶數,EOS明顯呈上升趨勢,反觀以太坊則呈降低趨勢。主要緣由是EOS能解決性能問題,而好的性能對遊戲開發來講很是重要,目前的DApp用戶數主要靠的就是遊戲來吸引,因此才使EOS的用戶數明顯大於以太坊。下面張圖,是EOS和以太坊DApp用戶數的對比。
從圖片中能夠發現,EOS的24小時DApp用戶數已經超越ETH一個數量級。從數據上來講,EOS更加符合區塊鏈應用的場景落地,不得不說,EOS確實也是公鏈的偉大進步。
對於比特幣、以太坊的狂熱愛好者來講,徹底去中心化纔是區塊鏈發展的將來,他們會認爲EOS不夠去中心化。這裏我想要糾正一點:以太坊和比特幣就是徹底的去中心化嗎?
從表面上看,以太坊和比特幣是徹底去中心化的。然而真相卻並不是如此,讓我抽絲剝繭,一步步講給你聽,先從它們的原理入手。
區塊鏈公鏈都要解決的一個問題:就是誰說了算的問題。其中「誰說了算」就是區塊由誰產生,在區塊鏈公鏈網絡,不論節點再多,一段時間內都只有一個節點出塊。在以太坊和比特幣的設計中,他們每隔一段時間會產生一個區塊,產生區塊的過程叫作出塊。而區塊鏈自己就是由一個個區塊串聯起來行成,每一個區塊都要記錄上一個區塊的哈希。(只有第一個區塊沒有上一個區塊的哈希,也被稱爲創世區塊)。每一個節點都有權利對全部的區塊作永久的追溯,檢查他們的合法性。只要其中有一個區塊不匹配,那麼從不匹配的區塊開始,後面數據都是有問題的,就都要丟棄。
在比特幣和以太坊的設計中,誰產生區塊,誰就得到出塊獎勵。比特幣的邏輯是每十分鐘出一道猜數的數學題。誰能按照規則首先猜出符合要求的數字,誰就得到出塊權;誰擁有出塊權,誰就能得到出塊獎勵,也就是說這個區塊產生的比特幣就歸這個出塊節點全部。而這個挖礦的過程徹底是由密碼學來保證,沒有任何規律可依,只能一個一個去嘗試,也能夠簡單理解爲暴力破解。礦工靠運氣找到符合規則的數後,得到出塊權,而後打包數據寫入區塊,從而得到比特幣的獎勵。
也許看到這裏你已經發現問題了,對比特幣來講,平均每十分鐘出塊一次,也就是每十分鐘只有一個節點可以得到這個出塊獎勵。試想一下,一天只有24個小時,那麼比特幣一天最多隻能出24x6=144個區塊。這也意味着一天下來最多隻有144個節點能夠得到獎勵。對比特幣來講,成千上萬人蔘與的一個區塊鏈網絡,可是最多隻有144我的得到獎勵,這自己就是不公平的。以太坊經過引入叔塊的機制,將出塊的時間大大縮短。可是沒有從本質上解決這個問題,只是緩解了這個問題。
那怎麼辦呢?爲了讓大部分比特幣礦工都可以積極參與進來,那就必須讓你們都有幣可分。因而比特幣誕生了一箇中心化的商業機構,叫作礦池,那麼礦池是幹什麼的?
不知道你們有沒有聽過這樣一個故事,好久好久之前,有一個酷愛數學的年輕國王向鄰國一位美麗聰明的公主求婚。公主出了這樣一道題:求出一個很大很大的17位數的真因子。若國王能在一天以內求出答案,公主便接受他的求婚,那麼國王最後有沒有跟公主結婚呢?
國王當即回國,向時任宰相的大數學家求教,大數學家在仔細思考後認爲這個數有17位,則最小的一個真因子不會超過9位,因而他給國王出了一個主意:按天然數的順序給全國的老百姓每人編一個號碼發下去,讓每一個老百姓用本身的編號去除這個數,除盡了當即上報並得到賞金。最後,國王用這種方法求婚成功,抱得美人歸。
礦池也是採用一樣的原理,每個小曠工就至關於一個農民,每一個人都提供計算資源。注意,小礦工並非真正意義上比特幣網絡中的礦工,它只是一個計算單元而已。礦池本質就是讓每一個小礦工有序的去進行計算,注意,是有序地進行。
礦池會將一個計算區間分配給每一個小礦工。好比礦工A計算1-10,那麼礦工B就計算11-20,以此類推,其中礦機能力強的多算一點,礦機弱的就少算一點。
這樣不論最終是哪個小礦工猜到了正確的數,礦池都將得到收益。礦池先得到區塊獎勵收益以後,再按照實際參與計算的次數,平均分配給礦池中的全部礦工,計算次數越多的小礦工得到收益相對越高,反之,則越少。
從這個角度來看,參與計算的節點並非真正意義的礦工,礦池纔是比特幣網絡中真正的礦工。其中礦池的任務就是計算的分派,讓你們有序的去計算,但最終得到區塊獎勵的是礦池。固然礦池也不是白作,它會事先約定一個抽成比例,會抽取收益的百分比。因而可知,礦池首先是個中心化機構,其次是個商業機構。
除了經過礦池這種並行計算的方法提升挖礦成功的概率之外,你們也在想辦法提升單機的計算能力。因此計算節點從最開始的CPU挖礦升級爲GPU挖礦,而後再升級爲ASIC專業礦機挖礦(比特大陸就是ASIC專業礦機的最大製造商)。可是專業礦機升級換代很是快,每一次更新性能都會有很是大的提高,新的機器性能每每是老機器的十倍。在這樣的資源升級戰中,,CPU、GPU、以及老式的礦機到後來基本上很難得到收益,由於算力比例過小。
因而,挖礦逐漸演變爲誰先擁有最早進的機器,誰就能得到收益,而先進的機器每每掌握在專業礦機的製造商中,如比特大陸,後來他們建起了礦池和礦場。礦場是什麼?
礦場就是把礦機直接託管在他們那裏,參與的小礦工直接得到雲挖礦的收益,他們只須要付錢,不用拿到礦機就能得到收益。
前面我說了,從比特幣網絡的技術視角看,礦池纔是真正的礦工,而小礦工,他們只是計算資源而已。後續機器的高速迭代致使專業礦機廠家進入礦池,礦池的計算能力也逐步拉開差距,因而就分出了大礦池和小礦池,並且差距還在不斷拉大。前面提過比特幣一天產生的區塊數目是有限的,也就意味着小礦池得到的收益將愈來愈少。小礦工很快發如今小礦池上分到的錢不如大礦池多,因而小礦工就會遷移至大礦池挖礦,漸漸地,就造成惡性循環,小礦池最終將沒法生存而關閉。因此最終的結果就是:小礦池會愈來愈少,最後只剩下大礦池,大礦池造成寡頭割據的局面。
礦池纔是真正的礦工,更可怕的是,若是比特幣和以太坊的礦池愈來愈少,愈來愈寡頭化,甚至最後產生壟斷,那就可能發生可怕的51%攻擊。若是有那麼一天,當其中一個礦池佔據50%以上算力的時候,或者幾個大礦池聯合超過50%的算力,他就能夠篡改新的區塊,就能夠他說了算。
最終只有極少數的大礦池割據整個礦工市場,或許最終存活的礦池數量還不如EOS的21個超級節點,但至少EOS的21個超級節點在「政治」上是平等的。
因此,簡單理解。EOS至關於直接在治理上造成了21個肯定的寡頭節點,造成了相對的中心。而比特幣和以太坊是在經濟層面上天然造成了不肯定性的寡頭甚至壟斷,造成了變相的中心。這麼看來,至少EOS的21個超級節點的「政治權利」是平等的,他們輪流依次出塊。而比特幣由於經濟上的競爭,就很差說了,現實世界中不少行業都從羣雄逐鹿慢慢造成寡頭,而最終由寡頭造成壟斷。從結果上看,比特幣和以太坊追求的徹底去中心化並無真正作到,也許最後比特幣和以太坊尚未EOS去中心化。
我在設計PPIO項目的時候也考慮了這個問題。PPIO(https://pp.io)是個旨在給開發者提供一個可編程的去中心化存儲分發網絡,使得雲存儲更便宜,速度更快,更加隱私。
可能有人會有疑問,PPIO是徹底去中心化呢,仍是相對去中心化?若是治理上能作到徹底去中心化,那經濟上會不會重蹈比特幣的覆轍?
我仔細分析了比特幣,以太坊以及EOS 的原理,借鑑了EOS的一些設計理念,在保證性能和存儲服務穩定性的同時,依然不損失區塊鏈的公證性。因此設計了PPIO項目的3個階段,從「弱中心」到「去中心」。具體可見個人另外兩篇文章:
若是有關於PPIO的交流,能夠經過下面的方式聯繫我:
wechat:omnigeeker(加我微信,注意備註PPIO)