五分彩网站欢迎您的到來!

<font id="nttpt"><video id="nttpt"><listing id="nttpt"></listing></video></font>

<delect id="nttpt"></delect><p id="nttpt"><output id="nttpt"><font id="nttpt"></font></output></p>

<p id="nttpt"></p>
<p id="nttpt"></p>

<video id="nttpt"></video>

<p id="nttpt"><delect id="nttpt"></delect></p>
<output id="nttpt"><output id="nttpt"><font id="nttpt"></font></output></output>
<p id="nttpt"></p>

<video id="nttpt"></video>

<p id="nttpt"></p>

<p id="nttpt"></p>
<p id="nttpt"><output id="nttpt"><font id="nttpt"></font></output></p>
<video id="nttpt"><output id="nttpt"></output></video>
<video id="nttpt"></video>
<p id="nttpt"><p id="nttpt"></p></p><video id="nttpt"><p id="nttpt"></p></video>
<video id="nttpt"></video>

<output id="nttpt"></output>

<video id="nttpt"><output id="nttpt"><delect id="nttpt"></delect></output></video><p id="nttpt"></p>

<video id="nttpt"></video>
<p id="nttpt"></p>

<video id="nttpt"></video><p id="nttpt"></p>
手機版

科普 帶寬和區塊鏈

2019-08-02 06:37:07 來源: ethfans 百度搜索更多類似文章,點擊進入>>>

  區塊鏈將全世界都記錄在了同一個賬本上。每挖出一個新的區塊,這個賬本就會生成一個新的狀態來代替之前的狀態。共識機制旨在確保這個狀態得到了社區中大多數人的認可。在巧妙設計的系統中,激勵機制可以確保不可變性。只要等待足夠長的時間,已成歷史的狀態就無法被篡改。區塊鏈為我們帶來了可編程貨幣,并且俘獲了許多人的想象力。

  比特幣和以太坊是區塊鏈世界的兩大領頭羊。事實證明,這兩種賬本技術流行程度高,而且發展勢頭強勁,但是人們普遍不看好它們的可擴展性。為什么會出現這種情況呢?又如果改善這種狀況呢?

  背景

  區塊鏈本身也叫作 Layer 1 。區塊鏈充當的是網絡中所有數字資產歸屬權的全局信任來源。網絡中的全節點會追蹤賬本的當前狀態。要想保持這種去中心化或無權力中心的狀態,就必須讓小礦工也能夠參與驗證并為區塊鏈做貢獻。小礦工手中的系統資源和帶寬遠比不上大礦工。

  為實現免信任性和抗審查性,區塊鏈不能由某個實體或小團體控制。開發人員認為要讓掌握不同資源的人都能夠參與進來,從而避免權力集中和單點控制的問題。因此,比特幣的區塊大小上限得不到提高。這一上限會抑制整個系統在資源要求上的膨脹,讓更多人能夠參與進來。

  要注意的是,參與方之間也可以通過局部協議進行轉賬,無需進行全局更新。這就是我們通常所說的 二層方案或鏈下交易,對于擴大交易的規模具有深遠影響(雖然不一定能擴大用戶基礎)。其思路是,各方之間的交易在上鏈之前可以聚合起來。在某些設計中,這種局部協議從開啟到將狀態上鏈可以歷時幾個月或者更久。

  工程師都很看好二層解決方案,認為它能夠大幅提升區塊鏈的可擴展性,對于密碼學貨幣能否滿足大用戶群的需求具有決定性作用。然而,盡管二層解決方案具有很大的影響力,但它能做的只是提升底層區塊鏈的吞吐量,而非帶來無限的可擴展性。因此,重點還是要對網絡進行優化,最小化每個交易所需使用的資源。

  問題

  去中心化的比特幣區塊鏈是全球共享的廣播媒介——很有可能是人類設計過最低效的通信方式。

  —— Greg Maxwell

  一層區塊鏈的基本問題是全網的副本必須與總賬同步更新。每一個全節點都會存儲一個區塊鏈的副本,每個副本都是完全相同的,并經過了每一個全節點的獨立驗證。

  新挖出的每一個區塊必須廣播給其他節點。延遲對挖礦節點來說尤為關鍵,因為它們需要緊接著最新挖出的區塊繼續挖,否則就會白費力氣。為了驗證最新挖出的區塊,礦工需要知道區塊中包含哪些交易,并且掌握所有交易的副本。

  目前來說,比特幣軟件采用的是一種幼稚的方法來廣播交易和區塊。節點接收到交易之后會將它們廣播給其他節點。創建的區塊會被廣泛傳播出去,不管接收者是否已經掌握其中的部分數據段。對于需要實時跟進出塊情況的礦工來說,這么低效的流程簡直不能忍。

  補救措施

  比特幣的低效問題是眾所周知的。多年來,提高網絡效率的努力都在減少帶寬成本和加快傳播速度上。前比特幣維護者 Gavin Andresen 在 2014 年發布了一個 O(1) 區塊傳播路線圖。后來,這個路線圖經過了大幅修改,不過基本思路沒怎么變。

  -FIBRE 網絡示意圖(來源:bitcoinfibre.org)- 中繼網絡

  礦工已經在積極實現 FIBRE 和 Falcon 之類的區塊中繼網絡了。這些中繼網絡采用的是低延遲 + 高帶寬的連接方式,不過存在一些缺陷,例如中心化程度高,為實現延遲最小化消耗了大量帶寬等等。這些網絡不會減少運行非挖礦節點所需的帶寬總量,這在工程師擴大系統規模之前是必需實現的。

  壓縮區塊

  如果在傳輸區塊的時候,區塊中包含的交易是接收者已有的,就不是最優方案。密碼學家 Greg Maxwell 曾指出,新挖出的區塊中有大部分交易都是接收者已知的。說明白點,新挖出的區塊中有很多交易很可能是接收者的內存池(已接收到但未經確認的交易集合)中已有的。Greg Maxwell 研究了這一問題,并在 2015 年 12 月草擬了一個提議。

  核心開發者 Matt Corallo 在 Greg 研究的基礎上改進了這個提議,并于 2016 年初正式提出了 BIP152 ,闡明了壓縮區塊的概念。壓縮區塊協議指的是發送者向接收者發送的不再是完整的區塊數據,而是接收者肯定沒有的區塊頭、交易 ID 縮寫和交易集。這一改動旨在節省帶寬,不過也有降低延遲的效果。

  Erlay

  比特幣采用的是 “大水漫灌” 型的區塊廣播方式,顯然不是在網絡中傳播交易的最佳方式。一個節點可能會接收到同一個交易的多個副本,而且必須將這些副本廣播給所有與之相連的節點。由此一來,消耗了大量帶寬,造成了不必要的開支。此外,這會打擊節點與更多節點建立連接的積極性,因為多連接一個節點,每傳播一個交易所需的帶寬就會相應遞增。

  連接的節點越少,消耗的帶寬就越低。 然而,這可能會帶來一定的危險,使用戶更容易遭受日蝕攻擊(eclipse attack)。 TumbleBit 的創建者 Ethan Heilman 在 2015 年發布了一篇關于日蝕攻擊的研究論文。這篇論文的基本思路與女巫攻擊有關。攻擊者偽裝成多個不同的實體來迷惑受害者。攻擊者會壟斷被攻擊節點的所有外部連接。作為被攻擊節點僅有的信息來源,攻擊者會通過創建特殊的區塊來偽造當前狀態。這種攻擊的成本很高,但是如果攻擊者可以讓被攻擊者相信自己收到了一大筆比特幣,實際上卻將這筆資金轉移到了其他地方,被攻擊者可能就會被騙過,以為自己已經收到了錢并且愿意出貨。

  Erlay 可以實現一個連接更好且更強大的網絡。如果是在每個節點都連接到其它 32 個節點的網絡種,Erlay 的研究人員發現,優化過后,節點使用的帶寬會比當前軟件下使用的帶寬減少 75% 。

  下一步怎么走?

  一方面讓挖礦節點使用中繼網絡,另一方面讓普通節點用戶使用壓縮區塊協議,區塊廣播就能得到極大的優化。研究人員仍在努力減少系統的開支,并盡可能精簡流程。只有當開發人員認為當前吞吐量下帶寬消耗量足夠低之時,談論提高吞吐量的問題才會提上日程。

  拓展資料 Greg Maxwell 在 2017 關于改進區塊廣播方式的演講

  原文鏈接: https://medium.com/scalar-capital/bandwidth-and-the-blockchain-2ad35c57dbdf

  作者: Jordan Clifford

  翻譯&校對: 閔敏 & 阿劍

  本文由作者授權 EthFans 翻譯及再出版。

本文標題:科普 帶寬和區塊鏈
本文地址:http://www.admun.site/coin/baike/113743.html
風險提示 >>本站所提供資訊信息不代表任何投資暗示!

其他人都在看

你可能感興趣
五分彩网站 幸运飞艇全天开奖计划 北京PK10全天计划 欢乐生肖开奖计划 腾讯分分彩
<font id="nttpt"><video id="nttpt"><listing id="nttpt"></listing></video></font>

<delect id="nttpt"></delect><p id="nttpt"><output id="nttpt"><font id="nttpt"></font></output></p>

<p id="nttpt"></p>
<p id="nttpt"></p>

<video id="nttpt"></video>

<p id="nttpt"><delect id="nttpt"></delect></p>
<output id="nttpt"><output id="nttpt"><font id="nttpt"></font></output></output>
<p id="nttpt"></p>

<video id="nttpt"></video>

<p id="nttpt"></p>

<p id="nttpt"></p>
<p id="nttpt"><output id="nttpt"><font id="nttpt"></font></output></p>
<video id="nttpt"><output id="nttpt"></output></video>
<video id="nttpt"></video>
<p id="nttpt"><p id="nttpt"></p></p><video id="nttpt"><p id="nttpt"></p></video>
<video id="nttpt"></video>

<output id="nttpt"></output>

<video id="nttpt"><output id="nttpt"><delect id="nttpt"></delect></output></video><p id="nttpt"></p>

<video id="nttpt"></video>
<p id="nttpt"></p>

<video id="nttpt"></video><p id="nttpt"></p>