大家都知道,區塊鏈技術的一個特點就是:存放在鏈上的數據是安全可靠的,不可篡改的。那數據可用性是指的什么呢?難道區塊鏈的共識不能保證數據的安全了嗎?顯然不是,區塊鏈數據的安全性,是大家都認可的,也是區塊鏈一直持續發展的一個動力之一。那么 DA(數據可用性)層是什么,我們先來看看下面幾種情況。
一個節點如果想驗證某一筆交易或者某一個區塊,這個節點需要下載所有的區塊和交易數據。由于區塊鏈的持續運行,區塊和交易數據會持續增長,這個節點的成本也會越來越高。以至于越來越多的節點(特別是個人用戶)只能選擇運行輕節點。這些輕節點,沒有下載所有的交易數據,它們不能對交易和區塊進行驗證,只能相信它們選擇的共識節點(全節點)。因此,實際上這些輕節點是不知道獲得的數據是否可用。
同時區塊鏈網絡為了提高效率,一直在嘗試進行擴容。以太坊的 L2 就是以太坊的一種擴容方案,從而提高以太坊的吞吐量。但 L1 和 L2 在本質上還是兩個網絡,L1 是不會參與 L2 的共識,也不會驗證和執行 L2 的交易,同理 L2 也不會參與 L1 的共識,亦不會驗證和執行 L1 的交易。但是在此時,L1 與 L2 之間其實是有信任問題的,例如:Rollup 要求將所有交易數據都記錄到以太坊的交易中,那么 Rollup 的用戶為了驗證自己的交易是否存入以太坊,他還需要運行一個以太坊的全節點嗎?
Numen發布微軟漏洞解析,黑客可通過該漏洞獲取Windows完全控制權:6月9日消息,安全機構 Numen Cyber Labs 發布微軟 win32k 提權漏洞解析。Numen 表示,該漏洞系 win32k 提權漏洞,是微軟 Windows 系統層面的漏洞。通過該漏洞,黑客可獲取 Windows 的完全控制權。
Numen 指出,win32k 漏洞歷史眾所周知。但在最新的 windows11 預覽版中,微軟已經在嘗試使用 Rust 重構該部分內核代碼。未來該類型的漏洞在新系統可能被杜絕。
此前報道,5 月,微軟發布的補丁更新解決了 38 個安全漏洞,其中包括一個零日漏洞。[2023/6/9 21:25:55]
從目前區塊鏈的工作機制當中我們可以知道,當一個節點不參與共識的時候,特別是沒有存儲所有交易數據的時候,對于它自己獲得的數據是否有效它是無法驗證的,這些節點目前都只能相信自己連接的共識節點不會欺騙自己,或者多連接幾個共識節點,做一個小小的容錯。
因此DA層解決的問題是,在不參與共識、以及不用存儲所有交易數據的情況下,依然能夠對交易進行驗證,從而證明這個交易是否可用。
在上面先介紹了什么是 DA,接下來,我們再來看看 Celestia 項目是打算如何來解決這個問題的。
ENS將推出區塊鏈原生的、可通過域名解析系統路由的頂級域名.box:6月7日消息,ENS開發者nick.eth發推稱,ENS將推出區塊鏈原生的、可通過域名解析系統路由的頂級域名.box。該域名系統中所有注冊和轉移都將在鏈上進行,NFT的所有者將同時擁有DNS和ENS域名。
據悉,.box域名可用于DID配置文件和錢包、去中心化的網站和消息傳遞、Web2網站和電子郵件、收藏與交易等。[2023/6/7 21:21:43]
Celestia 項目圍繞二維 Reed-Solomon 糾刪碼,設計了一套隨機抽樣來驗證數據、以及恢復數據的方案從而確保數據可用。
當一個全節點發現輕節點收到有問題的數據時,會構建一個欺詐證明并發送給這個輕節點,輕節點收到欺詐證明之后,從網絡中通過隨機抽樣的方式,獲得需要的數據,來驗證這個欺詐證明是否有效,從而能夠明確的知道自己之前獲得的數據是否可用。輕節點不需要信任給自己發送數據的節點,也不需要信任給自己發送欺詐證明的節點,這是因為輕節點是通過隨機抽樣的方式,來獲取進行此次驗證所需要的數據,因此安全性能是由整個網絡來提供的。這樣也使得DA 層的安全等級,能夠接近共識層的安全等級。
接下來,我們來了解一下 Celestia 具體是如何工作的。由于 Celestia 項目還處于開發測試階段,因此這里采用的都是現階段的白皮書的介紹方案,可能會與實際的解決方案有出入。
WalletConnect 發布錢包開源解決方案 Web3Modal v2.0 版本,新增 ENS 域名解析等功能:9月17日消息,Web3 基礎設施 WalletConnect 發布錢包開源解決方案Web3Modal v2.0版本,新功能包括可自定義的UI、支持上百個錢包、最終用戶登陸、可定制的條款和條件、ENS域名解析,未來幾周內也計劃添加和增強更多功能,包括支持React和Vanilla等多種框架、為賬戶地址和實時余額等功能預建組件、支持非EVM鏈等。[2022/9/17 7:02:59]
欺詐證明的驗證,必須是高效的,并且不需要全部的交易數據,也不需要執行具體的交易,因此 Celestia 對于自己區塊的數據,進行了一些擴展。
狀態的稀疏默克爾樹的根,這種默克爾樹的葉節點,是一個 key-value 對。
定義了一種變量,狀態見證(w):是一些 key-value 對,以及他們在默克爾樹中的證明,組成的集合:
定義了一個函數,rootTransition :可以通過狀態根、交易、以及這些交易的狀態見證,轉換得到交易執行后的狀態的根。也就是每個交易執行后的狀態的默克爾根 stateRoot`可以通過rootTransition(stateRoot, t, w) 得到
動態 | EOS疑似將推出基于EOS的HandShake DNS解析服務:EOS疑似將推出基于EOS 的 HandShake DNS解析服務,一位開發者的Github顯示正在開發EOS-handshake服務。Cosmos社區總監Chjango Unchained4月30日發推表示發現EOS開發者正在復用 Handshake 的開源代碼。EOS或許會加入域名解析服務,生態會進一步擴大。(IMEOS)[2019/4/30]
將交易,以及這些交易執行的中間狀態根,組合成一個固定大小與固定格式的shares 。這些所有的交易的shares ,按照二維RS糾刪碼,進行擴展,最后得到一個默克爾樹的根,即dataRoot。
具體步驟
將初始的交易數據,按照 shares 的大小與格式進行封裝。
將 shares 放入一個 k×k 的矩陣,如果數量不夠,則填充補齊。
然后應用 RS 糾刪碼,按照行和列進行 3 次補齊,最終得到一個 2k?2k 的矩陣。
對這個矩陣的每一行和每一列,都構建一個默克爾樹,得到 2?k 個行根和 2?k 個列根。
摩根士丹利分析師深度報告全解析:比特幣“見底”規律及六大必讀趨勢:摩根士丹利分析師Sheena Shah 19日發表最新研報。主要觀點包括:今天正在經歷的比特幣熊市早就在2000年的納斯達克市場上演過,只不過是以15倍速度在“快進”;熊市看到唯一交易量增加的數字貨幣可能就是USDT,盡管USDT的可靠性遭遇廣泛質疑,因為交易員們面對各種幣的大跌只能暫時先買回USDT;日元升值可能促使日本散戶增加對比特幣的投資;千幣齊跌,但區塊鏈行業依舊火熱,對于傳統VC來說,參與ICO也有三大好處;比特幣與其它幣之間的相關性隨價格下跌而上升,市場上漲時,它們的相關性反而下降;比特幣在不同交易所的價差顯示,價格觸底反彈的日子,價差會有規律的突然拉大。[2018/3/20]
最后將這 4?k 個根,組成一個默克爾樹,得到根 dataRoot。
shares
shares 是 Celestia 項目定義的一個固定大小和格式的數據結構。主要內容是交易,以及執行這些交易的中間狀態根。
由于沒有具體規定多少交易,需要生成對應的中間狀態根,項目方設定了一個 Period變量,作為最大限制周期,這個限制可以是最大多少交易之內必須生成中間狀態根,也可以是多少字節,或者多少 GAS。
還定義了兩個函數來幫助驗證:
parseShares 函數:輸入 shares,得到消息 m,可以是中間狀態根,也可能是交易。
parsePeriod 函數:輸入消息,得到前狀態根,執行后狀態根,以及交易列表。
固定 256 字節
0-80:開始的交易
81-170:包含的交易
171-190:中間狀態根
191-256:下一批開始的交易
設定的格式舉例
白皮書中,介紹了兩種欺詐證明,下面將分別對此進行介紹:
這是一個針對 stateRoot 的一個欺詐證明。全節點利用 dataRoot 中的 shares,來幫助輕節點驗證收到的區塊頭中的 stateRoot 是否有效。
狀態轉換無效的欺詐證明的組成:
對應塊的 blockhash
相關的 shares
這些 shares 在 dataRoot 對應的默克爾樹中的默克爾證明
這些 shares 包含的交易的 狀態見證。
證明的驗證:
驗證 blockhash,確定是對于哪個區塊的欺詐證明。
驗證證明中的每個 shares 的默克爾證明是否有效。
通過 shares 的兩個解析函數,可以正確得到對應的交易列表,以及這批交易的執行前狀態根和執行后狀態根。并且如果執行前狀態根為空,則第一個交易一定是塊的第一筆交易;同時如果執行后狀態根為空,則最后一筆交易一定也是塊的最后一筆交易。
根據 rootTransition 函數,來驗證得到的兩個狀態根。
這是一個針對 shares 在網絡傳播時,當一個全節點從網絡中收到 shares 恢復的數據,與自己的數據不匹配時,會向網絡回應欺詐證明。
錯誤生成擴展數據的欺詐證明的組成:
錯誤的 shares 所在行或列的默克爾根。
這個行或列的默克爾根,在 dataRoot 對應的默克爾樹中的默克爾證明。
這足夠恢復這一行或列的 shares。(大于等于 k 個)
每個shares 在 dataRoot對應的默克爾樹中的默克爾證明。
驗證blockhash,確定是對于哪個區塊的欺詐證明。
驗證證明中行或列的默克爾根的默克爾證明是否有效。注:VerifyMerkleProof(行或列的默克爾根,行或列的默克爾根的默克爾證明,dataRoot,長度,位置索引) 其中前面2個數據是證明攜帶的數據,后面3個是本地(之前接收的)數據。
驗證證明中每個 shares 的默克爾證明是否有效。注:VerifyShareMerkleProof(shares,shares 的默克爾證明,dataRoot,長度,位置索引) 其中 dataRoot是本地數據,另外數據都是從證明中獲得。
通過收到的 shares,恢復這一行或列的所有數據,并驗證其默克爾根是否等于自己之前收到的對應行或列的默克爾根。
通過 2 維 RS 糾刪碼,Celestia 的輕節點通過隨機抽樣的方式,來獲取區塊數據,以及驗證欺詐證明的相關數據。同時隨機抽樣的數據,并在網絡中傳播,當達到一定的數量時,也可以幫助網絡恢復區塊數據。下面介紹一下具體的工作流程:
輕節點從任意一個連接的全節點中獲取一個新區塊的塊頭,以及 2k 個行和 2k 個列的默克爾根。先用這些默克爾根與區塊頭中的 dataRoot 進行初步校驗。如果錯誤則拒絕這個區塊頭。
在這個 2k × 2k 的矩陣中,輕節點隨機挑選一組不重復的坐標,將這些坐標發送給與自己相連的全節點們。
如果一個全節點擁有這些坐標所對應的所有數據,就會將這個坐標對應的 shares,以及 shares 的行或列的默克爾證明,回應給輕節點。
輕節點對于每一個收到的 shares,都會驗證其默克爾證明是否有效。注:VerifyMerkleProof( shares,shares 所在行或列的默克爾證明,對應行或列的默克爾根,長度,坐標位置索引)其中前面 2 個數據是證明攜帶的數據,后面 3 個是本地(之前接收的)數據。
如果一個全節點沒有回應某一個坐標的 shares,輕節點則會將自己收到的對應的shares、以及它的默克爾證明發送給這個全節點,這個全節點也會將收到的數據轉發給相連的其他全節點。
如果步驟 4 中的驗證都沒有問題,并且步驟 2 中抽樣的坐標都有收到回應,同時在一個設定的時間段內沒有收到關于這個區塊的欺詐證明,則輕節點認為這個區塊是數據可用的。
中國動漫集團10日聯合李可染畫院舉行“元宇宙數字資產(NFT)研究發展中心”成立儀式。該中心旨在推動文化資源在元宇宙產品中的數字化應用,助力國家實施文化產業數字化發展戰略.
1900/1/1 0:00:00【金色數藏】于2020年5月20日-5月27日舉辦「520最××眼神挑戰」,由金色數藏運營團隊篩選+全體用戶投票產生的獲獎者,可獲得【金色數藏】的520限定版數字藏品。參與方式見文末.
1900/1/1 0:00:00全球貨幣體系正面臨歷史性的挑戰。多年來全球主要國家的央行采取激進的貨幣政策,導致嚴重通脹的威脅;加之民眾對政府機構普遍的不信任,全球性經濟危機爆發在即.
1900/1/1 0:00:00金色財經挖礦數據播報 | BSV今日全網算力下降3.70%:金色財經報道,據蜘蛛礦池數據顯示: ETH全網算力182.096TH/s,挖礦難度2347.31T,目前區塊高度9659970.
1900/1/1 0:00:00牛市時我是個愚蠢的樂觀主義者,熊市時我會繼續是個愚蠢的樂觀主義者。我對于大約三周前的那場技術和文化變革的激動心情還沒有消失,事實上,熊市可能會給建造者更多的喘息空間,讓他們變得更加不可思議.
1900/1/1 0:00:001.美聯儲稱近一半美國加密投資者是高收入人群美聯儲發布的關于2021年“美國家庭的經濟福祉”的年度報告稱,美國人的加密貨幣擁有水平在高收入群體中明顯更高.
1900/1/1 0:00:00