數(shù)據(jù)可得性是什么意思 數(shù)據(jù)可得性問(wèn)題的重要性及解決方案
數(shù)據(jù)可得性是什么意思
“數(shù)據(jù)可得性(data availability)”和“數(shù)據(jù)可得性問(wèn)題”指的是一些區(qū)塊鏈擴(kuò)容方案所面臨一個(gè)問(wèn)題。具體來(lái)說(shuō),就是當(dāng)新的區(qū)塊創(chuàng)建時(shí),節(jié)點(diǎn)如何確保該區(qū)塊中的所有數(shù)據(jù)都已發(fā)布到網(wǎng)絡(luò)上?困難之處在于,如果區(qū)塊生產(chǎn)者沒(méi)有公布區(qū)塊中的所有數(shù)據(jù),就沒(méi)人能發(fā)現(xiàn)該區(qū)塊中是否隱藏了惡意交易。
在本文中,我將深入探討數(shù)據(jù)可得性問(wèn)題的重要性,以及相關(guān)解決方案。
區(qū)塊鏈節(jié)點(diǎn)是如何運(yùn)行的?
區(qū)塊鏈上的每個(gè)區(qū)塊都由兩部分組成:
- 區(qū)塊頭,即,區(qū)塊的元數(shù)據(jù),由一些關(guān)于區(qū)塊內(nèi)容的基本信息組成,包括交易的默克爾根。
- 交易數(shù)據(jù),即,區(qū)塊的主要組成部分,由實(shí)際的交易數(shù)據(jù)組成。
區(qū)塊鏈網(wǎng)絡(luò)中主要有兩類節(jié)點(diǎn):
- 全節(jié)點(diǎn)(又稱完全驗(yàn)證節(jié)點(diǎn))。這類節(jié)點(diǎn)會(huì)下載區(qū)塊鏈中的每筆交易并驗(yàn)證其有效性。這需要消耗大量資源和數(shù)百 GB 的磁盤空間,但是這些節(jié)點(diǎn)的安全性最高,因?yàn)樗鼈儾粫?huì)接受包含無(wú)效交易的區(qū)塊。
- 輕客戶端。如果你的計(jì)算機(jī)沒(méi)有足夠的資源來(lái)運(yùn)行全節(jié)點(diǎn),你可以運(yùn)行輕客戶端。輕客戶端不需要下載或驗(yàn)證任何交易。它們只下載區(qū)塊頭,并認(rèn)定區(qū)塊中包含的交易都是有效的。因此,輕客戶端的安全性低于全節(jié)點(diǎn)。
幸運(yùn)的是,有一種方法可以讓輕客戶端間接檢查區(qū)塊中的所有交易是否有效。輕客戶端可以依賴全節(jié)點(diǎn)向其發(fā)送關(guān)于無(wú)效交易的 欺詐證明,無(wú)需自己檢查交易的有效性。欺詐證明是一個(gè)很小的證明,可以證明區(qū)塊中的某個(gè)交易是無(wú)效的。關(guān)于欺詐證明的運(yùn)作原理,本文不做具體介紹,請(qǐng)閱讀這篇文章。
這里只有一個(gè)問(wèn)題:全節(jié)點(diǎn)如果要為某個(gè)區(qū)塊生成欺詐證明,需要知道該區(qū)塊的交易數(shù)據(jù)。如果區(qū)塊生產(chǎn)者只公布區(qū)塊頭,沒(méi)有公布交易數(shù)據(jù)的話,全節(jié)點(diǎn)就無(wú)法驗(yàn)證交易的有效性,并針對(duì)無(wú)效交易生成欺詐證明了。這就要求區(qū)塊生產(chǎn)者公布區(qū)塊的所有數(shù)據(jù),但是我們需要找到一種方法來(lái)強(qiáng)制實(shí)行。
為了解決這個(gè)問(wèn)題,輕客戶端需要找到某種方法來(lái)檢查區(qū)塊的交易數(shù)據(jù)是否真的發(fā)布到了網(wǎng)絡(luò)上,以便全節(jié)點(diǎn)進(jìn)行驗(yàn)證。然而,我們又要避免讓輕客戶端下載整個(gè)區(qū)塊,因?yàn)檫@會(huì)使得輕客戶端喪失存在的意義。
我們?cè)撊绾谓鉀Q這一問(wèn)題?首先,我們先來(lái)討論數(shù)據(jù)可得性問(wèn)題的相關(guān)性,以及如何采取解決措施。
數(shù)據(jù)可得性問(wèn)題與哪些方案有關(guān)
在上一節(jié)中,我們介紹了數(shù)據(jù)可得性問(wèn)題。讓我們來(lái)討論一下它對(duì)可擴(kuò)展性解決方案的重要性。
增加區(qū)塊大小
在比特幣等區(qū)塊鏈中,絕大部分一般的手提電腦都能運(yùn)行全節(jié)點(diǎn)并驗(yàn)證整條鏈,因?yàn)榇嬖谌藶橐?guī)定的區(qū)塊大小上限,來(lái)防止區(qū)塊鏈變得過(guò)大。
但是,如果我們想要增加區(qū)塊大小上限該怎么辦?那就只有更人才能負(fù)擔(dān)得起運(yùn)行全節(jié)點(diǎn)并獨(dú)立驗(yàn)證區(qū)塊鏈的成本,大多數(shù)人都會(huì)運(yùn)行安全性更低的輕客戶端。這并不利于去中心化,因?yàn)檫@會(huì)讓區(qū)塊生產(chǎn)者更容易更改協(xié)議規(guī)則,插入無(wú)效交易來(lái)欺騙輕客戶端。因此,為輕客戶端提供欺詐證明支持很重要,但是正如我們已經(jīng)討論過(guò)的,輕客戶端需要一種方法來(lái)驗(yàn)證區(qū)塊中的所有數(shù)據(jù)是否都已發(fā)布至網(wǎng)絡(luò)。
分片
提高區(qū)塊鏈吞吐量的一種方法是,將區(qū)塊鏈分成多條鏈,即,分片。這些分片都有自己的區(qū)塊生產(chǎn)者,而且可以相互通信,以便在分片之間轉(zhuǎn)移代幣。分片的意義在于,將網(wǎng)絡(luò)中的區(qū)塊生產(chǎn)者分組,這樣就不需要每個(gè)區(qū)塊生產(chǎn)者處理每個(gè)交易,只需將他們分散到不同的分片上即可。每個(gè)分片只需處理部分交易。
通常來(lái)說(shuō),在分片式區(qū)塊鏈上,驗(yàn)證者只需要為一個(gè)或少數(shù)幾個(gè)分片運(yùn)行全節(jié)點(diǎn),并為其它分片運(yùn)行輕客戶端。畢竟,如果每個(gè)驗(yàn)證者都要為每個(gè)分片運(yùn)行一個(gè)全節(jié)點(diǎn),就無(wú)法實(shí)現(xiàn)分片的目的 —— 將網(wǎng)絡(luò)的開銷分割給不同節(jié)點(diǎn)。
然而,這種方法本身存在缺陷。如果分片上的區(qū)塊生產(chǎn)者作惡,開始接受無(wú)效交易怎么辦?相比非分片式系統(tǒng),分片式系統(tǒng)更有可能發(fā)生這種情況,因?yàn)楹笳叩拿總€(gè)分片上只有少量區(qū)塊生產(chǎn)者,攻擊起來(lái)更容易。請(qǐng)記住,區(qū)塊生產(chǎn)者會(huì)被不斷分配到不同的分片上。
為便于察覺(jué)是否存在分片接受無(wú)效交易的情況,我們必須確保分片中的所有數(shù)據(jù)都是公開可得的,以便使用欺詐證明來(lái)證明所有無(wú)效交易。
Rollup
Optimistic rollup 是一種基于 rollup 側(cè)鏈(類似分片)的新型可擴(kuò)展性策略。這些側(cè)鏈有自己專屬的區(qū)塊生產(chǎn)者,可與其它側(cè)鏈互相轉(zhuǎn)移資產(chǎn)。
但是,如果有惡意的區(qū)塊生產(chǎn)者將無(wú)效交易打包進(jìn)區(qū)塊,將側(cè)鏈上所有用戶的資金盜走怎么辦?為解決這一問(wèn)題,我們可以使用欺詐證明來(lái)發(fā)現(xiàn)這種情況。但是,還是那個(gè)老問(wèn)題,側(cè)鏈用戶需要找到某種方法來(lái)確保側(cè)鏈上所有區(qū)塊的數(shù)據(jù)都公開可見(jiàn),以便發(fā)現(xiàn)無(wú)效交易。為了解決這一問(wèn)題,以太坊上的 Rollup 將所有 rollup 區(qū)塊都發(fā)布到以太坊區(qū)塊鏈上,依賴以太坊來(lái)實(shí)現(xiàn)數(shù)據(jù)可得性。也就是說(shuō),將以太坊作為數(shù)據(jù)可得性層。
ZK-rollup 與 optimistic rollup 類似。區(qū)別在于,前者并非使用欺詐證明來(lái)發(fā)現(xiàn)無(wú)效區(qū)塊,而是使用有效性證明來(lái)證明區(qū)塊的有效性。有效性證明本身不需要數(shù)據(jù)可得性。然而,總的來(lái)說(shuō),ZK-rollup 需要數(shù)據(jù)可得性,因?yàn)槿绻麉^(qū)塊生產(chǎn)者創(chuàng)建了一個(gè)有效區(qū)塊,并為其生成有效性證明,卻沒(méi)有公布區(qū)塊數(shù)據(jù),用戶就無(wú)法知道區(qū)塊鏈的狀態(tài)以及他們的余額,也就無(wú)法與區(qū)塊鏈進(jìn)行交互。
進(jìn)一步探索
rollup 的設(shè)計(jì)旨在將區(qū)塊鏈作為數(shù)據(jù)可得性層來(lái)存儲(chǔ)交易,但是實(shí)際的交易處理和計(jì)算都發(fā)生在 rollup 上。這是一種很有趣的思路:區(qū)塊鏈實(shí)際上不需要進(jìn)行任何計(jì)算,但是至少需要將交易分裝到區(qū)塊中,并確保交易的數(shù)據(jù)可得性。
這也是 LazyLedger 的設(shè)計(jì)思路,即,一種“懶惰的”區(qū)塊鏈,只需要完成區(qū)塊鏈的兩個(gè)核心任務(wù) —— 通過(guò)可擴(kuò)展方式對(duì)交易進(jìn)行排序,并實(shí)現(xiàn)交易的數(shù)據(jù)可得性。這使得 LazyLedger 成為 rollup 等系統(tǒng)中的最小“可拔插”組件。
數(shù)據(jù)可得性問(wèn)題的解決方案
下載所有數(shù)據(jù)
正如上文所討論的那樣,解決數(shù)據(jù)可得性問(wèn)題的最直接方法就是,要求所有人(包括輕客戶端)下載所有數(shù)據(jù)。顯然,這種方法不具備良好的可擴(kuò)展性。比特幣和以太坊等大多數(shù)區(qū)塊鏈均采用這種方法。
數(shù)據(jù)可得性證明
數(shù)據(jù)可得性證明是一種新技術(shù):客戶端只需下載區(qū)塊中的一小部分?jǐn)?shù)據(jù),即可檢查該區(qū)塊中所有數(shù)據(jù)是否均已發(fā)布。
數(shù)據(jù)可得性證明采用了一種被稱為糾刪碼的數(shù)學(xué)元件。糾刪碼被廣泛應(yīng)用到了從 CD-ROM 到衛(wèi)星通信再到二維碼等信息技術(shù)中。糾刪碼可以將原本 1 MB 的區(qū)塊數(shù)據(jù)擴(kuò)充成 2MB,其中多出的 1 MB 就是叫做糾刪碼的特殊數(shù)據(jù)。如果區(qū)塊中的任何字節(jié)丟失,糾刪碼都可以幫你找回它們。即使整個(gè)區(qū)塊的數(shù)據(jù)丟失, 糾刪碼也可以幫你找回所有數(shù)據(jù)。同樣地,有了糾刪碼,即使 CD-ROM 中的數(shù)據(jù)都被擦除,你的計(jì)算機(jī)也可以讀取到(譯者注:糾刪碼并不能幫你節(jié)約帶寬,假設(shè) 1MB 的數(shù)據(jù)被擴(kuò)充成了 2 MB,你仍然需要獲得至少 1MB 的數(shù)據(jù)才能恢復(fù)出原始數(shù)據(jù),雖然并不要求這 1 MB 的數(shù)據(jù)是連續(xù)的)。
這就意味著,要實(shí)現(xiàn) 100% 的數(shù)據(jù)可得性,區(qū)塊生產(chǎn)者只需將區(qū)塊中 50% 的數(shù)據(jù)發(fā)布到網(wǎng)絡(luò)上。 如果惡意區(qū)塊生產(chǎn)者想要成功隱瞞 1% 的數(shù)據(jù),就必須隱瞞超過(guò) 50% 的數(shù)據(jù),否則這 1% 的數(shù)據(jù)可以通過(guò)剩下 50% 的數(shù)據(jù)找回(譯者注:此段第一句存疑)。
有了這個(gè)知識(shí),客戶端就能采取措施來(lái)確保區(qū)塊中的數(shù)據(jù)不會(huì)被隱藏??蛻舳丝梢試L試隨機(jī)下載區(qū)塊切分而成的數(shù)據(jù)塊,如果他們未能成功下載數(shù)據(jù)塊(即表明,該數(shù)據(jù)塊屬于惡意區(qū)塊生產(chǎn)者未公開的那 50% 的數(shù)據(jù)),它們就會(huì)拒絕承認(rèn)該區(qū)塊的數(shù)據(jù)可得性。如果下載一個(gè)隨機(jī)數(shù)據(jù)塊,客戶端就有 50% 的概率發(fā)現(xiàn)無(wú)效區(qū)塊。如果下載兩個(gè)數(shù)據(jù)塊,就有 75% 的概率。如果下載三個(gè)數(shù)據(jù)塊,就有 87.5% 的概率。以此類推,直到下載七個(gè)數(shù)據(jù)塊之后,就有 99% 的概率。通過(guò)這種方式,客戶端只需下載區(qū)塊中的一小部分?jǐn)?shù)據(jù),即可有效檢查整個(gè)區(qū)塊的數(shù)據(jù)可得性。
數(shù)據(jù)可得性證明的全部細(xì)節(jié)會(huì)更復(fù)雜一些,而且依賴于其它假設(shè),例如,網(wǎng)絡(luò)中的輕客戶端數(shù)量不能低于某個(gè)下限,這樣就有足夠多的輕客戶端請(qǐng)求數(shù)據(jù)塊,以便恢復(fù)整個(gè)區(qū)塊的數(shù)據(jù)。如果你想了解更多信息,可以查看關(guān)于數(shù)據(jù)可用性證明的論文。
結(jié)論
在本文中,我們介紹了數(shù)據(jù)可用性問(wèn)題,討論了數(shù)據(jù)可用性對(duì)區(qū)塊鏈可擴(kuò)展性的重要性,并提出了解決方案。
以上就是數(shù)據(jù)可得性是什么意思 什么是 “數(shù)據(jù)可得性” 的詳細(xì)內(nèi)容,更多關(guān)于數(shù)據(jù)可得性的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
你可能感興趣的文章
-
以太坊還能漲嗎?從技術(shù)和基本面幫你看懂真相
上一周以太坊實(shí)現(xiàn)26.4%的周漲幅, 一舉突破2800的壓力位, 沖刺至4000大關(guān)腳下,以太坊還能漲嗎?下文將從以太坊的基本面以及技術(shù)面價(jià)格走勢(shì)來(lái)分析過(guò)去一周以及今年以來(lái)的以太…
2025-07-28 -
區(qū)塊鏈究竟是什么?原理、應(yīng)用、投資風(fēng)險(xiǎn)以及未來(lái)趨勢(shì)解析
區(qū)塊鏈究竟是什么?區(qū)塊鏈簡(jiǎn)單說(shuō),就是一種建立在線上的去中心化的數(shù)位帳本技術(shù),能確保交易數(shù)據(jù)安全透明,且不可篡改,這種技術(shù)不僅應(yīng)用于比特幣,還被廣泛應(yīng)用于供應(yīng)鏈管…
2025-07-28 -
加密貨幣中鏈上與鏈下交易主要區(qū)別是什么?
加密領(lǐng)域的鏈上交易是指直接在區(qū)塊鏈上執(zhí)行的轉(zhuǎn)賬,鏈下交易最初繞過(guò)區(qū)塊鏈驗(yàn)證,最終確認(rèn)后再記錄在鏈上,從而提高速度并降低成本,鏈下流程的用戶允許受信任的第三方處理交…
2025-07-28 -
ChatGPT怎么用?ChatGPT AI 在加密交易中的5 個(gè)實(shí)際應(yīng)用案例
加密貨幣交易面臨獨(dú)特的挑戰(zhàn):海量的數(shù)據(jù)流、迅速的市場(chǎng)變動(dòng)和情緒決策陷阱,雖然技術(shù)分析和基本面研究依然至關(guān)重要,但現(xiàn)在許多交易者已經(jīng)開始利用像ChatGPT 這樣的AI 工具…
2025-07-28 -
什么是Linea?如何運(yùn)作?ConsenSys 推出的以太坊Layer-2 網(wǎng)絡(luò)?
什么是Linea?如何運(yùn)作?作為第二大公有區(qū)塊鏈,以太坊's 網(wǎng)絡(luò)仍然面臨著高昂的Gas 費(fèi)用、慢速交易速度和有限的吞吐量,尤其是在需求高峰時(shí),進(jìn)入Linea,一個(gè)由以太坊Layer-…
2025-07-28 -
什么是云算力?如何運(yùn)作?挖礦加密貨幣的簡(jiǎn)單指南
在不斷發(fā)展的加密貨幣世界中,挖礦長(zhǎng)期以來(lái)被視為推動(dòng)區(qū)塊鏈網(wǎng)絡(luò)的最基本過(guò)程之一,然而,隨著挖礦變得越來(lái)越具競(jìng)爭(zhēng)性和資源密集型,許多人開始轉(zhuǎn)向一種更為便捷的替代方案…
2025-07-28 -
TRON是什么?最快、最便宜的USDT網(wǎng)絡(luò)的構(gòu)建介紹
2025年7月,波場(chǎng)TRON掀起波瀾,其原生代幣TRX一度超越卡爾達(dá)諾的ADA,成為市值第九大的加密貨幣,這一里程碑不僅體現(xiàn)在波場(chǎng)TRON市值飆升至298億美元,還體現(xiàn)在該公司在納斯…
2025-07-28 -
什么是去中心化應(yīng)用 (dApp)?dApp的優(yōu)勢(shì)、缺點(diǎn)、用途是什么介紹
去中心化應(yīng)用程序dApps是在點(diǎn)對(duì)點(diǎn)P2P或區(qū)塊鏈網(wǎng)絡(luò)上運(yùn)行的軟件,而不是在單個(gè)服務(wù)器或集中式計(jì)算機(jī)上運(yùn)行,在區(qū)塊鏈技術(shù)和智能合約的支持下,dApp提供了增強(qiáng)的安全性、透明…
2025-07-28 -
Monad是什么?Monad主網(wǎng)發(fā)布日期和空投是什么時(shí)候?
Monad是一個(gè)高性能 Layer1區(qū)塊鏈,旨在徹底革新以太坊兼容性,Monad的主網(wǎng)發(fā)布日期為2025年9月30日,代幣指標(biāo)如下:MON的總發(fā)行量和最大發(fā)行量均為1000億,盡管 Monad Labs尚…
2025-07-27 -
正向合約和反向合約是什么??jī)烧哂惺裁磪^(qū)別?各有什么優(yōu)勢(shì)?
在永續(xù)合約市場(chǎng)中,合約一般分為正向合約和反向合約,正向合約在加密市場(chǎng)中也稱為USDT本位合約、穩(wěn)定幣合約,它以USDT為定價(jià)單位,而反向合約也稱為幣本位合約,反向合約則是…
2025-07-26