如上次報導所說,以太坊 2.0 的 Phase Zero(零階段)的代碼已接近完成。目前負責的開發人員已經開發出哈比人協議的測試代碼,目的是為了幫助客戶在升級到以太坊 2.0 之前,加強測試工作。
以太坊是目前市值第二大的區塊鏈網路,大約是 170 億美元。以太坊 2.0 將會是從 2015 年 7 月問世以來最大的升級,為區塊鏈網路帶來可擴展性。而根據用戶開發首席技術長佛迪克(Fredik Harryson)說法,這個代碼是幫助節點之間互相傳遞訊息的協議,在 4 月 23 日的時候就已經完成,目前正在審核。
如果審核通過實施的話,哈比人協議將會在以太坊 2.0 節點之間的通訊協議升級成 libp2p 之前,作為過渡的節點間的通訊協議。
哈比人協議名稱(Hobbits),取自魔戒的哈比人。哈比人是托爾金的奇幻小說《魔戒》中出現的一種虛構民族,是人類的變種,體型嬌小為其特色,但並非矮人或侏儒。在魔戒中裡扮演著重要的角色。
而這個名為哈比人的通訊協議是由區塊鏈性能測試公司 Whiteblock,以太坊技術公司 Consensys,還有以太坊測試團隊 Chainsafe 和 Yeeth 合作開發。
哈比人協議
Trenton Van Epps 在介紹哈比人協議的文章寫道:
隨著以太坊 2.0 越來越接近實測,會需要在節點之間傳遞訊息的方法。這種方法叫做「有線協議(Wire Protocol)」。
有線協議是分散式網路的核心協議,因為區塊鏈本身就是透過節點之間傳遞交易訊息、歷史。而在 Vitalik Buterin 先前的訪談中解釋說,有線協議是決定「節點傳遞消息的規則」,包括怎麼傳遞、傳遞什麼訊息等等。
哈比人協議是一種最小的傳輸規範,支持基本的消息傳遞類型,並允許節點相互通信。而這個哈比人協議會是以太坊 2.0 的 libp2p 的過渡協議。
根據 Trenton Van Epps 的說法,目前 Ethereum 的客戶端只用 GO 跟 Rust 這兩個程式語言。因此目前以哈比人協議將作為支持節點溝通、傳遞訊息的最小傳輸規範,而在 Java、Javascript、wift 等程式語言中完成之後,就會轉換到採用 libp2p 通訊協議。
在未來,以太坊 2.0 將會借助「libp2p」的有線協議 ,該協議由區塊鏈新創公司 Protocol Labs (IPFS 和 Filecoin 開發的協議)所開發。在所有的節點都能轉換到 libp2p 協議之前,哈比人協議將會作為過渡的節點間的通訊協議。Consensys 的架構師 Jonny Rhea 解釋道:
「我們還沒辦法使用 libp2p,所以我們需要一個最小可行的有線協議,有點像測試版的有線協議。」
什麼是 libp2p
目前以太坊 1.0 使用的通訊協議叫做 DEVp2p ,這是 2015 以太坊上線時所開發的。這個協議就是俗稱的八卦協議(Gossip Protocol),所有的訊息最終都會傳播給所有節點。但是對於以太坊 2.0 來說,這個協議是不夠的,因為對於節點而言,以太坊 2.0 的權益證明 PoS 的訊息太過龐大。
而以太坊 2.0 要使用的協議 libp2p 會有兩個好處。首先,libp2p 匯集了各種傳輸和點對點的協議,使開發人員可以建構強大的 P2P 網路。
而且 libp2p 改善了原本了的八卦協議,防止每次節點要發送訊息時所會引起的網路泛濫和壅塞。
「如果我(節點)有一個新的區塊要發布,我需要跟 6 個節點串連,我會隨機將訊息發送給 2 個、3 個節點。我發布新區塊的消息給其它節點,其它節點在隨機選擇兩個節點發送,但是它不會將訊息回傳給我。」Consensys 的架構師 Jonny Rhea 解釋道。
另外,Rhea 也提到,在外來採用 libp2p 的另一優勢在於,該協議將「節點之間通訊的形式」模塊化,若是開發者不喜歡節點彼此溝通的模式,可以針對其自行設計。
「在 libp2p 協議中,如果你不喜歡一個節點透過網路連結另一個節點的方式,可以選擇將預設的模式給替換。」Rhea 補充道。
?相關報導?
以太坊權益證明(PoS)的區塊鏈代碼有望在下個月完成,迎向以太坊 2.0
特斯拉創辦人 Elon Musk 想知道「以太坊能開發些什麼」? Vitalik Buterin 提 13 項應用
《BlockTempo動區動趨》LINE官方號開通囉~立即加入獲得第一手區塊鏈、加密貨幣新聞報導!