買比特幣 買比特幣
Ctrl+D 買比特幣
ads

BLO:Vitalik:分片 + 數據可用性采樣_blockchain官方網站提現

Author:

Time:1900/1/1 0:00:00

除了 Proof of Stake 之外,eth2 設計中的另外一個顯著改變就是分片 (sharding)。本提案介紹了一種分片的有限形式,即“數據分片” (data sharding),根據"以 rollup 為中心的路線圖"所述:分片會存儲數據,并且證明約 250 kB 數據的可用性。數據可用性驗證為 rollups 之類的二層協議提供了安全和高吞吐量的數據層。

為了免去節點親自下載全部數據的負擔,可以將這兩種技術互相疊加起來對大量數據的可用性進行驗證:1) 由隨機抽樣的委員會提出證明;2) 數據可用性抽樣 (data availability sampling, DAS)。

白話“隨機抽樣委員會”

假設你有大量數據 ,例如 16 MB,這是 eth2 鏈 (至少在初期) 每個 slot 能處理的數據量。我們將這些數據表現為 64 個 blobs,每個大小為 256 kB。假設我們還有一個 PoS 系統,驗證者數量約為 6400。我們如何在 1) 不需要任何人下載所有數據,2) ?不給運行少量驗證者的攻擊者可乘之機的前提下驗證這些數據?

第一個問題,我們可以通過分工來解決:驗證者 1-100 需要下載并驗證第一個 blob,驗證者 101-200 下載并驗證第二個 blob,以此類推。每個子集合 (委員會) 里的驗證者只需簽名證明他們已經驗證了相應的 blob,然后整個網絡接收到相應委員會中大多數驗證者的簽名之后,即可接受該 blob。

但這會導致一個問題:萬一攻擊者控制了連續的驗證者集合怎么辦 (例如 1971-2070)?如果是這樣的話,即使攻擊者僅控制了整個驗證者集合的約 1.5%,他們也能夠控制單個委員會 (在上述情況下,他們可以掌控委員會 20 中 70% 的驗證者 2001-2100),因此攻擊者能夠將無效/不可用的 blob 添加到鏈上。

隨機采樣 (Random sampling) 通過隨機洗牌算法組成委員會來解決這個問題。我們使用某個哈希值作為隨機數生成器的種子,然后我們使用該生成器來隨機混洗驗證者列表 1-6400。混洗列表中的前 100 個值是第一個委員會,下 100 個值即為第二個委員會,依此類推。

Vitalik Buterin(V神)突然現身基輔科技峰會:金色財經報道,以太坊聯合創始人Vitalik Buterin(V神)突然現身基輔科技峰會,Buterin 在基輔現身特別值得注意,因為目前距離以太坊備受期待的合并只有幾天的時間。作為峰會閉幕發言人之一,Buterin表示區塊鏈、以太坊、加密世界中的很多人在關心和支持烏克蘭,其他峰會發言人包括Binance烏克蘭總經理 Kiril Khomiakov、NEAR Protocol 聯合創始人Illia Polosukhin和烏克蘭創業基金董事 Pavlo Kartashov。(coindesk)[2022/9/11 13:22:08]

RNG (隨機數生成器) 的種子在驗證者存款之后選定,每個驗證者的索引都是固定的,因此攻擊者無法嘗試使其所有驗證者進入同一個委員會。攻擊者可能會走運,但前提是他們控制所有驗證者的 1/3 以上。

白話“數據可用性抽樣”

在某些方面,數據可用性采樣是隨機抽樣委員會的鏡像。仍然會進行采樣,這是因為每個節點最終只會下載所有數據的一小部分,但采樣發生在客戶端中,并且在每個 blob 中進行,而不是在 blob 之間進行。

每個節點 (包括沒有參與質押的客戶端節點) 對每個 blob 進行檢查,他們不需要下載整個 blob,而是私密地從中選擇 N 個隨機索引,然后嘗試在這些位置下載數據。

這么做的目的在于驗證每個 blob 中至少一半以上的數據是可用的。如果低于一半的數據可用,那么幾乎可以認定任何給定客戶端進行采樣的索引中至少有一個不可用,那么客戶端會拒絕接受該 blob。

這個機制是高效的,因為一個客戶端只需要下載每個 blob 中的小部分數據以驗證其可用性。這個機制同時也是高度安全的,原因在于即使是 51% 攻擊者都無法欺騙客戶端接受不可用的 blob。

糾刪編碼

為了避免攻擊者提供了 50-99% 可用數據的情況 (這可能使得某些客戶端拒絕某 blob 之后又被其他客戶端接受),我們使用了一種叫作糾刪編碼 (erasure coding) 的技術。糾刪編碼使得我們可以使用如下方式對 blobs 進行編碼:如果某 blob 中超過一半的數據已經發布,網絡中的任何人都可以對剩余數據進行重建和發布。

Vitalik:從多個來源確認烏克蘭加密貨幣捐贈地址是合法的:2月27日消息,針對此前烏克蘭官方推特宣布接受加密貨幣捐贈,以太坊創始人Vitalik表示從幾個來源得到一些確認它是合法的,并暫時刪除我的警告。[2022/2/27 10:18:31]

一旦重新發布的數據廣播完畢,起初拒絕該 blob 的客戶端會收斂為接受 (注意,接受 blob 沒有時間限制,每當客戶端收到對其所有抽樣索引的響應時,它就會接受可用的 blob)。

理解糾刪編碼最簡單的數學概念類比是“兩個點總是足以恢復一條線”:如果我以四個點的形式((1, 4), (2, 7), (3, 10), (4, 13))建立“文件”,每個點都在一條線上,那么只要有其中兩個點的坐標,你就能重構這條線,并且將 ? ?剩下的兩個點計算出來 (我們假設 x 坐標1, 2, 3, 4是系統的固定參數,而非文件創建者的選擇)。

使用高階多項式,我們可以擴展此思想,創建 6 個文件中的 3 個文件,8 個文件中的 4 個文件,或者通常來說 2n 個文件中的n個文件,如果你有文件中的 n個點,則可以計算出 2n 中剩余的點。

默認情況下,一個攻擊者也有可能使得沒有區塊是可用的,并且有選擇性地針對其收到的請求發布信息,但這種行為只能欺騙很小一部分客戶端,因為攻擊者會需要發布一半區塊以上來回應所有的請求 (我們假設客戶端重新公開廣播他們收到的回應)。

我們使用多項式承諾 (polynomial commitments),具體來說是 Kate 承諾而非默克爾根作為數據 blobs 的 printers,因為多項式承諾能夠使我們輕易證明一個給定的值實際上是對特定次 n 多項式在所需坐標處的正確估值。不然的話,我們將不得不 (例如使用SNARKs) 證明默克爾根編碼一個低次多項式,或者依賴于欺詐證明在編碼不正確的情況下進行廣播 (這增加了高復雜度以及更多的同步假設)。

有了委員會機制還需要數據可用性抽樣嗎?

如果只借助委員會的,可能有以下幾個劣勢:

發生 51% 攻擊的時候防御力度較弱。在當前 (不可擴容) 的區塊鏈上,51% 攻擊只能回滾交易或是進行審查,并不能向鏈上添加無效區塊。基于委員會的系統會丟失這個保障。

更甚者,要對 51% 攻擊者進行有效的懲罰難度會很大,因為他們只有極少量的存款 (參與該特定委員會的存款) 會被證明與惡意行為有關,并在此基礎上進行懲罰。

Vitalik持有的ETH已經價值4.749億美元:ETH的價格于今日創下新高,最高達到1439美元,市值達到1600億美元。根據Forbes Crypto的信息,以太坊聯合創始人Vitalik持有33.3萬枚ETH,價值已經達到4.749億美元。[2021/1/19 16:32:46]

需要一定門檻 (委員會中證明該 blob 的人數達到什么比例才足以將其添加到鏈上?) 如果這個門檻很高,那么在只有非常少數驗證者在線的時候分片的功能會停滯。如果這個門檻過低 (或是某種動態機制,例如按照最近在線驗證者數量的比例),那么攻擊者可以嘗試迫使節點下線來提高他們自己所占的在線驗證者比例,從而進行攻擊行為。

在抗量子攻擊方面,DAS 比委員會機制稍容易些 (可能需要后量子聚合簽名)。

有了數據可用性抽樣還需要委員會機制嗎?

如果只借助 DAS 可能又會產生以下幾個問題:

DAS 是一個尚未經過測試的新技術,其核心部分 (參見此處) 其實去年才開發完成。因此在 DAS 崩壞或是開發時間意外延長,使用委員會提供保障是可取的。

DAS 的延遲比委員會高。

DAS 的極端情況更多,委員會可以協助解決。一個例子就是在僅使用 DAS 機制的系統中,很難避免信標區塊提議者最早發起 DAS 請求以驗證 blob 的可用性。

這會增加攻擊者發布不可用 blob 并僅對提議者的請求進行合響應的風險。這不會導致網絡的其他節點接受不可用的 blob,但可能會使得其他攻擊更為容易,使誠實提議者構建的信標區塊被拒絕并從主鏈上被分叉出去。委員會可以對這一點進行補救。

委員會機制的向前兼容性更強,使得在將來能在分片中加入執行功能。

數據可用性的重要性?挑戰又何在?

這已經在別處討論過了,篇幅有限我就不貼到此處,但我建議閱讀:

A note on data availability and erasure coding (對數據可用性最初的介紹)

Alberto Sonnino、Mustafa Al-Bassam 和 Vitalik Buterin 聯合發表的論文對相關概念進行了擴展

The Dawn of Hybrid Layer 2 Protocols 對數據可用性中的博弈論進行了論述

TokenBetter平臺GTX(Gravitation-X)日內漲幅為289%:據TokenBetter行情顯示,截至今日18:50(UTC+8),TokenBetter平臺內創新區幣種GTX(Gravitation-X)日內漲幅為289%,24H最高報價0.1499USDT,現報價0.08517USDT。

Gravitation-X(GTX)隨著區塊鏈技術的發展和區塊鏈產業數量的增長,區塊鏈項目的財務應用出現了競爭。因此,我們必須通過創建可用的游戲模型來解決競爭問題,這是毀滅證明,縮寫為 POD。

Gravitation-X 的 POD 不僅基于智能合約,還基于 DAPP 系統設置。 從開始每天都會銷毀大量的代幣。隨著更多令牌被釋放,更多將被銷毀,目標是通過結合 CryptoNote 協議和智能合約等一些經過驗證的最佳技術,創建一種先進區塊鏈技術,增強可靠性,隱私性,安全性,可用性和可移植性,從而實現創建私人智能合約。[2020/8/2]

Base Layers and Functionality Escape Velocity,基于上述概念對數據擴容性部分進行了描述

The Data Availability Problem (Ethereum Silicon Valley Meetup),以視頻形式對數據可用性問題進行了討論

有一點需要明確,BitTorrent 和 IPFS 以及類似的系統并沒有解決數據可用性問題。盡管 BitTorrent 是很好的可擴容的數據發布技術,但它不能就是否有可用的數據達成共識,這為一種“極端案例”攻擊提供了可能性,在某條數據發布時,節點之間可能發生分歧,使得混合型二層協議無法發揮效用。為了就數據可用性達成共識,需要使用本文檔中描述的更強大的技術。

分片如何在 P2P 層上運作?

為了達到分片的擴容性目的,我們需要一個 P2P 系統,這樣就無需每個節點都下載所有數據。所幸我們在階段 0 已經有了一種 P2P 層分片形式。具體來說,有 64 個子集已經用于證明聚合。每個驗證者只需要存在于主要的“整體子網” (global subnet) 和他們自己的證明聚合子網,而無需從其他 63 個聚合證明子集獲取任何數據。

在委員會 + DAS 型分片中,我們將其擴展為“網格”架構,有 2048 個水平子集子網 (horizontal subnets),即每 epoch 的每個分片-slot對中存在一個子集,以及 2048 個垂直子網 (vertical subnets),即每個 blob 中的每個索引存在一個子集。

Vitalik Buterin:BTC本身是有問題的,BCH值得去爭取:Vitalik在推特上發文稱,“BCH是比特幣名稱的合理競爭者,雖然社區支持隔離見證(SegWit)已經一年有余,但目前并未得出合理的擴容方案。”[2017/11/16]

在每個 slot 中,我們每個分片都會選出一個提議者。每個提議者都有權提議一個 blob:一個最大為 512 kB 的任意數據塊 (我們可以將其理解為約 512 字節的“樣本”集合),以及糾刪編碼擴展和額外的證明,以便對 blob 中的每個部分進行獨立驗證。

Structure of a blob blob 的結構

一個 blob 的“主體”結構包括原始數據、擴展數據以及證明 (如果需要的話,為了提高數據效率,可以省略擴展數據,因為接收 blob 的每個節點重建它的速度都相對較快)。

Blob 的“頭部”包含其相應的 Kate 承諾,以及其他一些數據 (slot、分片和長度證明) 以及提議者的簽名。

Blob 的廣播過程

當一個 blob 被廣播時,其頭部會被廣播到整體子網 (global subnet),主體部分則會被廣播到相應 slot 和分片 ID 的水平子網。

在實際情況中,會存在 2048 個水平子網,以使每個 epoch 中的每個分片-slot對存在對應的一個水平子網。這樣做是為了確保每個驗證者都可以加入一個水平子網,他們將僅接收到到其所處委員會的相應的 blob (不包括他們參與抽樣的少量垂直子網)。

每個驗證者都需要加入以下子網:

整體子網 (Global subnet)

水平子網 (horizontal subnet),對應其所處的分片-slot對 (即委員會)

垂直子網 (vertical subnet),對應其分配到的索引 (每個驗證者使用私密種子進行計算)

廣播區塊

Blob 提議者可以將樣本分發到所有子網,但不必成為子網的一部分。此過程如下:

發布:提議者在正確的水平子網中發布 blob,每個樣本附帶一個證明

直接樣本分發:水平子網中的其他參與者將區塊發布到他們所在的每個垂直子網中

間接樣本分發:提議者向對等節點公布幾個其所在的垂直子網。因此,水平子網中的每個參與者還可以查看其對等節點所在的垂直子網,并向這些對等節點廣播相應的區塊

假設數據塊大小為 512 字節,且數據 blob 最大為 512 kB (除去糾刪編碼),在包含糾刪編碼時約為 1 MB,因此存在 2048 個垂直子網。如果每個節點存在于 15 個私密的垂直子網,5 個公共垂直子網并且有 50 個對等節點,假設在最壞情況下每個水平子網 (僅委員會) 中有128個成員,則單單是子網成員將直接分發到 128 * 20 = 2560 個子網(除去冗余發布后約為 1461),如果加上對等節點,將增加到 128 * 4 * 50 = 25600 個子網。

請注意,從理論上講,惡意區塊提議者有可能在不發布完整區塊的情況下將樣本發布到垂直子網。為了解決這種情況,我們補充了一個過程,其中未完整發布的區塊 (意味著 50% 及以上可用,但不是 100% 可用) 能夠進行“自我修復”。該過程包括三個基本步驟:

1. 反向分發:與上述分發過程相同,只是在這種情況下,垂直子網上的對等節點將樣本從該垂直子網上傳播到與該樣本所屬 blob 相對應的水平子網。

2. 重構:如果水平子網中有 1024 及以上個樣本 (或者通常來說樣本總量的一半),任何人都可以重構整個 blob,然后向水平子網發布其重構后的 blob。

3. 分發:重復上述的分發步驟

信標鏈如何工作?

在每個 slot 中,我們為 64 個分片中的每個分片隨機選擇一個提議者。提議者有權創建一個分片 blob,并通過上述過程對其進行廣播,并且將該 blob 的 ShardHeader 廣播到全局子網。ShardHeader 能夠被打包到信標鏈上的同個 slot 中,也可以包含在同個/下個 epoch 中的任何后續 slot 中。

信標鏈會跟蹤 PendingShardHeader 的對象列表。PendingShardHeader 會存儲:1) ShardHeader 中的關鍵信息 (分片和 slot,該 blob 的承諾及其長度);2) 追蹤隨機選擇的委員會中哪些驗證者在 blob 中簽名的位域 (實際上就是階段 0 已經引進的委員會)。AttestationData 結構擴展為包含一個 shard_header_root,即選定驗證者進行投票的 ShardHeader 的根哈希。如果證明者看不到已分配給他們的分片-slot對的有效且可用的分片 blob,則他們也可以對空的根哈希進行投票。

如果 ShardHeader 得到了委員會中 2/3 驗證者的證明,就會立即得到確認。如果在下一個 epoch 結束時,ShardHeader 得到委員會的支持比其他任何 ShardHeader 更多的支持,則在該 epoch 結束時進行確認。

分叉選擇規則

分叉選擇規則發生了改變,以便僅在該區塊中確認所有 blob 或其祖先都通過了可用性檢查的情況下,該區塊才有效。這稱為緊密耦合 (tight coupling):如果一條鏈指向 (已確認) 某個無效 blob,則整條鏈都被視為無效。這是與“側鏈”結構的主要區別:在側鏈中,側鏈可能會失效,而主鏈仍然有效。

這里有對緊密耦合的進一步探索,以及為什么它是有價值。

驗證者數量較低的情況

如果驗證者少于 262144 個(32 slots* 64 shards* 128 最小委員會規模),那么我們不再為所有分片選擇一個提議者,而是為一個有限的子集選擇一個提議者,循環遍歷這些分片。比如說,如果有 32 * 128 * 50 個驗證者,在 slot N 的起始分片為 0,則 slot N 將為分片 0-49 分配一個提議者,slot N + 1 將為分片 50-63 和 0-35 分配一個提議者,slot N + 2 將為分片 36-63 和 0-21 分配提議者,依此類推。這樣做是為了確保即使在參與度較低的情況下,委員會的規模仍然足夠。

分片數據的 gas 費

添加了一種類似于 EIP-1559 的機制,按字節計費分片數據,并對價格進行了調整:如果區塊的平均容量超過了 50%,則提升費用,反之則降低。因此,指標是 50% 的平均區塊大小。

安全假設

僅支持數據 blob 的分片之所以強大,是因為與其他分片方案相比,它對安全性假設的依賴性很低。尤其是它避免了誠實的大多數假設 (因為 DAS 可以檢測到由大多數發布的不可用 blob) 和時間假設 (與早期的 DAS 機制不同,其使用的是 Kate 承諾而非欺詐證明,因此不依賴于欺詐證明需要極快被廣播的假設)。

惡意的 51% 聯盟可以對 blob 進行審查,但是在非分片鏈中也可以進行 51% 審查。

主要的新假設是“誠實的少數 DAS 假設”:存在足夠多的節點樣本,攻擊者必須要發布區塊中一半以上的內容。如果一個 blob 中有 2048 個樣本,則需要恢復 1024 個樣本 (考慮到某些客戶端將對相同的點進行抽樣,因此 2048 * ln(2)~= 1419),并且每個客戶端都進行 20 個采樣,則如果每個分片有約超過 70 個客戶端在進行抽樣的話就可以認定系統是安全的。

向前兼容性

僅支持數據 blob 的分片設計與以后在分片中添加執行的許多方案具有向前兼容性。特別是我們可以對該方案進行修改以使 blob 包含前狀態和后狀態根,我們還可以使用欺詐證明或 ZK-SNARK 來驗證 blob 中的狀態轉換是否正確。注意,無論選擇哪種方法,確保分片執行的正確性都不依賴于任何誠實大多數假設。

Github PR 鏈接

https://github.com/ethereum/eth2.0-specs/pull/2146

Tags:BLOLOTSLOTSHARDblockchain官方網站提現DELOT幣SLOT幣Hesman Shard

火幣APP下載
BEC:金色前哨 | BTC核心開發者推出BTC地址格式Bech32改進版本_worldgenechain

1月18日,比特幣核心開發者Pieter Wuille發推宣布,推出比特幣地址格式Bech32的改進版本Bech32m。Bech32是一種比特幣地址格式,專為與SegWit技術一起使用而創建.

1900/1/1 0:00:00
ECO:Heco生態聯盟公布首批交易所成員名單 Bibox、MXC、BiKi等11家交易所入局_coincheck交易所無法提現

1月20日,據官方消息,Heco生態聯盟正式公布首批交易所名單,BiBox、BiKi、BigONE、BitZ、霍比特HBTC、Hoo、LBank、MXC、ChainUP、幣核科技Blueheli.

1900/1/1 0:00:00
EFI:金色DeFi日報 | 2020年DeFi攻擊事件造成損失逾2.5億美元_DeFiChain

DeFi數據 1.DeFi總市值:297.04億美元 市值前十幣種漲跌幅,金色財經制圖,數據來源Coingecko2.過去24小時去中心化交易所的交易量:14.5億美元 金色晨訊 | 新加坡稅務.

1900/1/1 0:00:00
PLE:XRP暴漲46%:瑞波創始人回應要與美國新政府尋求和解_PPL

猶記得半個月前的2020年圣誕節,買大餅(BTC)的歡欣鼓舞,拿XRP的圣誕驚魂。自從瑞波幣傳出被SEC起訴的消息,這個曾經市值名列前茅的幣就一落千丈,甚至到了人人喊打的地步.

1900/1/1 0:00:00
BCH:中幣(ZB)市場研究員:ETH網絡手續費再次上升_比特幣

由于全球不確定性影響了主要金融工具,投資者傾向于規避風險,加密貨幣市場市值從1.014萬億美元上漲到1.162萬億美元。比特幣的主導地位從66.85%下降到65.64%,市值為6800億美元.

1900/1/1 0:00:00
SCH:n-n多簽與m-n多簽誰才是正在的Schnorr_香港穩定幣HKDT

Schnorr 最大的特性是可以進行公鑰和簽名聚合(aggregate)。可以把多個簽名聚合成一個簽名,因此大大節省了多重簽名的字節空間.

1900/1/1 0:00:00
ads