以太坊slockit
1. 以太坊帶來了那些爭議和質疑呢
以太坊和比特幣是有著本質區別的,區別在哪裡呢?比特幣定義的是一套貨幣體系,而以太坊側重的是打造一條主鏈(可以理解為一條公路),可以讓大量的區塊鏈應用跑在這條公路上。
從這一點來看,以太坊的應用場景更廣泛,這也是為什麼我們說以太坊標志著區塊鏈
1.0時代一個單純的貨幣體系,向區塊鏈2.0時代實現其他行業以及應用場景的轉變。
但是,世界上沒有十全十美的事物,以太坊雖然拓展了區塊鏈在各行各業的應用范圍,還提升了處理交易的速度,但是它也存在著一定的爭議與質疑。
一、以太坊的擴展性不足的解決之道:分片技術和雷電網路
以太坊的底層設計,最大的問題是以太坊只有一條鏈,沒有側鏈,這就意味著,所有程序都要對等地跑在這條鏈上,消耗資源的同時,還會引發系統擁堵。正如去年非常火爆的以太坊游戲「加密貓」,這個游戲火爆的時候,一度引發以太坊網路癱瘓。
對於提升處理能力這個問題,以太坊提出兩種方式:一個是分片技術(shard),一個是雷電網路,下面我們分別介紹一下這兩種技術。
(一)分片技術
以太坊創始人 V 神(Vitalik Buterin)認為,諸如比特幣這種主流的區塊鏈網路,之所以處理交易的速度很慢,是因為每一個礦工要處理全網的每一筆交易,這樣的效率其實是非常低下的。分片技術的構想是:一筆交易不必發動全網所有節點都去處理,只要讓網路中的一部分節點(礦工)處理就好了。於是,以太坊網路被劃分成很多片,同一時間,每一分片都可以處理不同的交易,這樣一來,會大大提升網路性能。
但是,分片技術也是有一定爭議的。我們知道,區塊鏈技術的重要思想是去中心化,全網都去見證(處理)同一交易,這才具有最高的權威性。而以太坊分片技術,並不是所有節點共同見證,而是類似於分小組見證,這樣一來,它便失去了絕對的「去中心化」屬性,只能通過犧牲掉一定的去中心化特性來達到高性能的目的。
(二)雷電網路
雷電網路使用的是鏈下交易的方式。這是什麼意思呢?它的意思是:使用雷電網路的參與者在互相轉賬時,不需要通過以太坊主鏈交易確認,而是通過參與者之間創建支付通道,在鏈下完成。
不過,雷電網路並不是脫離主鏈的,在建立支付通道之前,需要先用主鏈上的資產做抵押,生成余額證明(Balance Proof),擁有餘額證明才能表明你能做出相應余額的轉賬。在交易雙方都持有餘額證明的情況下,雙方可通過支付通道在鏈下進行無限制次數的轉賬。
只有在完成鏈下交易,需要將資產轉回鏈上時,才會在以太坊主鏈上登記主鏈賬戶的余額變化信息,而這期間不管發生多少次交易在主鏈上是不會有記錄的。
雷電網路還有一個實實在在的好處,就是可以為你省下礦工費用。目前我們在以太坊主鏈上進行交易,需要消耗 Gas,需要支付礦工費用,那麼一旦將交易搬到鏈下,就可以節省這一部分的成本。
當然,雷電網路並不是十全十美的。在使用雷電網路時需要用主鏈上的資產作抵押;而這部分資產作為抵押物,在使用者完成鏈下交易之前是不能使用的。這也就決定了,雷電交易只適合小額交易。
上面就是以太坊擴展性不足的問題,以及目前提出的兩個主要解決方案:分片技術和雷電網路。
二、以太坊的智能合約存在漏洞與臭名昭著的 The Dao 事件
以太坊的智能合約很強大,但是,凡是代碼都會存在漏洞的,以太坊智能合約最大的爭議就在於所謂的漏洞,也就是安全性問題。據相關研究表明,在基於以太坊的近100萬個智能合約上,發現有34200(約3%)個含有安全漏洞,將允許黑客竊取ETH、凍結資產或刪除合約,比如說,臭名昭著的The Dao 事件。
(一)Dao是什麼意思?
介紹 The Dao 事件之前, 我們先見到介紹一下 DAO 是什麼。DAO 是 Decentralized
Autonomous Organization 的簡稱,可以理解為:去中心化自治組織。從以太坊的角度來理解,DAO 是區塊鏈上的某一類合約,或者一個合約組合,用來代替政府的審查以及復雜等中間程序,從而實現高效的、去中心化的信任的系統。所以,DAO 不是特定的某個組織,也就說呢,可以有很多的DAO,各種各樣的DAO。
(二)臭名昭著的The Dao事件
但是,我們現在提到DAO,基本上所指的都是The DAO事件,也就是我們剛剛說的那個臭名昭著的黑客攻擊事件。我們知道,英文中的 The是特指的意思,The DAO事件呢就
是特指的那個DAO事件,因為我們剛剛說了DAO不是特定的某個組織,可以有很多的DAO,各種各樣的DAO。
2016 年的時候,德國一家專注「智能鎖」的公司 Slock.it,為了實現去中心化的實物交換(比如說:公寓啊,船隻啊),在以太坊上發布了 DAO項目。並且於2016年4月
30日開始,融資窗口開放了28天。
沒想到,這個DAO項目的人氣非常高,短短半個月就籌得了超過一億美元,而到整個融資期結束,一共籌集到1.5億美元,由此呢,它成為歷史上最大的眾籌項目。然而好景不長,到了6月份,黑客利用智能合約裡面的漏洞,成功轉移了超過360萬個以太幣,並投入到一個DAO子組織中,這個組織和The DAO有著同樣的結構。以至於當時以太幣價格從20多美元直接跌破13美元。
這個事件說明智能合約的確是有漏洞的,而且一旦漏洞被黑客利用,那麼後果是非常嚴重的。這就是現在很多人批評以太坊,說它的智能合約不智能。
對於這個問題,目前國外有很多公司為了解決智能合約的漏洞問題 ,開始提供代碼審計服務。而從技術的角度來說,目前一些團隊正在對智能合約進行檢驗,這些團隊多數由哈佛、斯坦福和耶魯的教授帶隊,部分團隊已經獲得了頭部機構的投資。
除了目前以太坊存在的擴展性不足、智能合約漏洞問題,對於以太坊的爭議還在於它所追求的POS共識機制,也就是權益證明機制,在權益證明機制下,如果說誰持幣的數量越大、持幣時間越久,獲得的「權益」(利息)就越多,還有機會得到記賬權力,記賬又可以獲得獎勵,那麼這樣一來,容易造成「強者越強」的寡頭優勢。
還有一個問題就是ICO亂象的問題。ICO是區塊鏈項目籌措資金的常用方式,咱們可以理解為預售。以太坊上ICO項目的爆發,滋生了打著ICO旗號進行資金盤、詐騙圈錢等不法行為,對社會和金融穩定造成安全隱患。
2. 比特幣硬分叉和軟分叉是什麼意思
Q:什麼是比特幣分叉,產生分叉的原因是什麼?
A:比特幣之所以會產生分叉這個行為,是因為比特幣的底層技術是區塊鏈,一些人開始覺得比特幣的區塊容量太小,總出現擁堵,於是這些人要求比特幣升級擴容,一些人又覺得比特幣的功能太單一,今後的發展不容樂觀,於是這些人又要求比特幣能夠有搭建DApp(去中心化應用)的功能,有人支持就有人反對,這種對比特幣發展的分歧便可以理解為比特幣的分叉
Q:比特幣分叉的分類?
A:比特幣分叉的分類分為兩種,一種方案是軟分叉, 一種方案是硬分叉,那麼什麼是軟分叉?
Q:軟分叉的形成原理?
A:軟分叉是指在原有的比特幣網路裡面進行優化修改bug提升區塊的容量,比如改成2M、4M或者8M、16M,其中以SegWit閃電網路為主流解決方案,通俗的說,就相當於一條主路上堵車,開發團隊就再建造一條輔路,幫助主路分流擁堵。
這是一種溫和的解決方式,能讓原有的比特幣網路和軟分叉之後的網路進行兼容,比特幣的主要交易還在主鏈上。
Q:軟分叉的缺點
A:當然,軟分叉存在缺點,那就是治標不治本,只能解決暫時的擁堵問題,執行軟分叉後,也僅能保持數年內網路的通暢,未來還需要不斷擴容,對系統穩定性有影響。
Q:硬分叉是什麼及形成原理?
A:另一種方案是硬分叉,硬分叉是指:
重新升級比特幣系統,通過代碼形式將區塊的高度徹底改變,以bitcoin unlimited為主流解決方案。通俗的說,就相當於一條主路上堵車,我們直接棄用這條路,找個地方,做一個地上地下立體交通樞紐,新車都走這套交通系統,這套系統改變了比特幣網路的區塊大小,優化了網路的處理速度。
Q:硬分叉的缺點是什麼?
A:但是硬分叉同樣存在缺點,那就是不兼容原有的比特幣系統,這就要求現在比特幣網路所有的人都要支持硬分叉,若有部分人不支持硬分叉,比特幣網路將會出現兩個版本,也就產生了兩個比特幣,這兩個比特幣所存在的區塊鏈形成競爭關系,這種內耗會導致價格波動較大,會導致比特幣未來的局勢不明朗。
Q:比特幣分叉的經典案例?
A:以太坊(ETH)和以太經典(ETC)是硬分叉的典型案例。The DAO項目是區塊鏈物聯網公司Slock.it發起的一個眾籌項目,於2016年5月正式發布,截止到當年6月,The DAO項目募集資金超過1.6億美元。沒過多久,The DAO項目就被黑客盯上了,因為智能合約上的巨大漏洞,導致The DAO項目被轉移了市值五千萬美元的以太幣。
為了挽回眾多投資者的資產並停止恐慌,以太坊創始人V神(Vitalik Buterin)最後提出硬分叉的設想,並最終通過社區的多數投票表決在以太坊第1920000區塊完成了硬分叉,回滾了包括被黑客佔有的所有以太幣。
即使以太坊硬分叉成了兩條鏈,依然有部分信仰著區塊鏈不可篡改特性的人留在以太經典這條原鏈上,如今,以太坊(ETH)和以太經典(ETC)都排在全球加密貨幣市值排名的前20名,這也是二者在硬分叉領域被當作經典案例的原因之一。
Q:軟分叉和硬分叉的區別及影響?
A:對用戶而言:軟分叉不會產生新的比特幣幣種,只需要了解比特幣該幣種的交易方式和k線特點,只需要一種比特幣主流錢包即可。
硬分叉會產生新的幣種,而且可能不止一種新的幣種。一旦修改比特幣核心代碼,重構比特幣核心代碼的事情發生了,有第一次就可能有第二次,BTC1、BTC23456789就都有可能發生,用戶會懵,到底我去交易那種幣會比較好?到底我使用哪種比特幣去支付流通范圍比較大?總之,選擇困難症的用戶會崩潰。而且,用戶要下載不同硬分叉系統的錢包,給保存和支付比特幣帶來了復雜操作。
但是,相應的,用戶的選擇權也變大了。可以選擇自己喜歡、信任的開發團隊開發的比特幣代碼。當比特幣分叉情況不明朗的時候,當軟分叉開始激活,算力開始投票的時候,用戶最好的處理方法是:靜觀其變。不要在分叉過程中去充值和提取比特幣。
此外,軟分叉會改變比特幣全節點的結算方式,一部分小額結算會使用第三方節點即結算通道進行確認。結算通道可能會手續部分手續費。類似銀聯的作用和商業模式。
什麼是比特幣分叉?軟分叉和硬分叉的區別及影響
3. 什麼是梅克爾樹
梅克爾樹(Merkle trees)是區塊鏈的基本組成部分。雖說從理論上來講,沒有梅克爾樹的區塊鏈當然也是可能的,你只需創建直接包含每一筆交易的巨大區塊頭(block header)就可以實現,但這樣做無疑會帶來可擴展性方面的挑戰,從長遠發展來看,可能最後將只有那些最強大的計算機,才可以運行這些無需受信的區塊鏈。 正是因為有了梅克爾樹,以太坊節點才可以建立運行在所有的計算機、筆記本、智能手機,甚至是那些由Slock.it生產的物聯網設備之上。那麼,究竟梅克爾樹是如何工作的呢,它們又能夠提供些什麼價值呢,現在以及未來的?
首先,咱們先來講點基礎知識。梅克爾樹,一般意義上來講,它是哈希大量聚集數據「塊」(chunk)的一種方式,它依賴於將這些數據「塊」分裂成較小單位(bucket)的數據塊,每一個bucket塊僅包含幾個數據「塊」,然後取每個bucket單位數據塊再次進行哈希,重復同樣的過程,直至剩餘的哈希總數僅變為1:即根哈希(root hash)。