以太坊數據打包
① 在以太坊中什麼是Optimistic Rollup(樂觀匯總)
Rollups(匯總)是指將發生在Layer 2的大批交易壓縮,並將快照打包返回主鏈進行記錄和更新的技術路徑;數據在主鏈上儲存,將賬戶間的交互過程轉移到鏈下,避開擁堵的同時具備主鏈的安全性。
Rollups(匯總)方案的關鍵在於,如何確保提交給主鏈的是正確的結果,這也是Optimistic Rollup(樂觀匯總)和下述ZK-Rollup(零知識匯總)最大的區別。
Optimistic Rollup(樂觀匯總)採用的是欺詐性證明(Fraud Proof),它趨於相信操作者提交的數據都是真實的(樂觀假設,大家都是好人)。
但保險起見,需要操作者質押一定資產作為保證金,且在上鏈前留出兩周的挑戰期,任何人都可以在此期間挑戰其真實性並發布欺詐證明,一旦挑戰成功,質押金將會被沒收,挑戰者會獲得獎勵,且回滾交易細節。以此,從概率角度防止作惡行為。
一些擴展解決方案是針對特定應用的,例如,支付通道。其他的方案比如Optimistic Rollup(樂觀匯總),可以用於任何任意合約的執行。
優點:
l兼容性強,開發遷移難度小,更容易落地
l安全性:犧牲了等待時間來換取較好的安全性
l上鏈效率高:將多筆交易打包操作,節約時間和gas fee
缺點:
l驗證效率低:較長的等待期,任何交易在等待期不會被確認,也無法從主鏈提取資金
l擴容程度不及ZK-Rollup(零知識匯總):交易壓縮率相對較低
代表項目:
lFuel:Optimistic Rollup(樂觀匯總)概念提出者所在團隊研發
lSynthetix(合成器):DeFi巨頭的Layer2擴容選擇
鏈喬教育在線旗下學碩創新區塊鏈技術工作站是中國教育部學校規劃建設發展中心開展的「智慧學習工場2020-學碩創新工作站 」唯一獲準的「區塊鏈技術專業」試點工作站。專業站立足為學生提供多樣化成長路徑,推進專業學位研究生產學研結合培養模式改革,構建應用型、復合型人才培養體系。
② 什麼是rollup
當前,Layer2的整體鎖倉量穩定在88億美元以上,這一數據表明Layer2已成為以太坊外溢資金和用戶的主要接收平台。
Rollup是Layer2擴容的核心途徑。Rollup指的是在Layer2上將多筆交易打包,作為一個整體提交到主網驗證結算,而非逐一處理,以此提升交易效率。目前,代表性的Rollup項目包括Polygon、Arbitrum、StarkEx、Optimism、zkSync、Aztec、StarkNet等。
根據驗證方式與數據可用性(DA)的不同,Rollup大致可分為四類:驗證方式有有效性證明(Validity Proof)和欺詐證明(Fraud Proof),DA則分為鏈上和鏈下。
有效性證明基於正向推理交易有效,欺詐證明默認交易有效,僅在固定時間窗口內剔除無效證明。類比數學題,有效性證明是正向解題,而欺詐證明是驗證某個值非解。
ZK Rollup項目,如zkSync和Starkware,採用的是有效性證明策略,相比之下較為復雜。而Optimistic Rollup項目,如Arbitrum和Optimism,則採用欺詐證明策略,流程更簡單,節省計算資源,保障交易准確度。
數據可用性(DA)主要指交易數據存於鏈上還是鏈下,鏈上安全性更高但可能影響擴容效果。
匯總當前主要Layer2項目(數據截至2023年3月27日),ZK Rollup與Optimistic Rollup表現出色。二者執行原理相似,關鍵區別在於驗證方式不同。
Optimistic Rollup項目以Arbitrum和Optimism為代表,基於欺詐證明策略,系統默認執行交易數據可靠性,無需驗證即可進入等待期,若提出異議則取消交易。該方案節省驗證資源,確保交易准確性。
ZK Rollup項目包括ZKSync、StarkWare等,採用零知識有效性證明策略。它分批處理鏈下交易,生成加密有效性證明驗證交易真實性,將批量交易添加至L1區塊鏈,L1合約快速驗證,無效交易則直接拒絕。
不論採用欺詐證明或有效性證明,二者都各有優勢與特點,如資金利用、EVM兼容性等。
在資金利用上,Optimistic Rollup網路在交易最終確認前需等待一定時間提交欺詐證明,因此資金提取可能較慢,通常需等待7天。而ZK Rollup無需爭議解決,提取速度更快,交易驗證後即上鏈。
在EVM兼容性上,Optimistic Rollup可能需要自建EVM,但大多數合約可直接從L1發送至Optimistic Rollups,無需改動代碼。ZK Rollup的復雜性和密碼學特性導致大多數Zk Rollup不兼容EVM。然而,zkEVM能夠兼容EVM,允許開發者將主鏈上的Solidity合約直接移植至Rollup,無需底層代碼變更。近期,zkSync Era主網(zkSync 2.0)的上線,標志著以太坊區塊鏈上首個zkEVM的推出。
簡而言之,ZK Rollup適用於需要快速交易的業務,但演算法復雜。而Optimistic Rollup部署簡易,適合Dapp開發與DeFi業務,但資金提取時間較長。
總之,無論是ZK Rollup還是Optimistic Rollup,它們的本質都是以太坊的擴容策略,主要目標是完善以太坊Layer1主網。
③ 以太坊(ETH)是什麼
以太坊(ETH)是一個開源的有智能合約功能的公共區塊鏈平台。
一、定義
以太坊通過其專用加密貨幣以太幣(Ether,又稱「以太幣」)提供去中心化的虛擬機(稱為「以太虛擬機」Ethereum Virtual Machine)來處理點對點合約。它是一個支持復雜去中心化應用(DApps)和智能合約的開源區塊鏈平台。
二、特點
- 智能合約:智能合約是存儲在區塊鏈上的程序,由各節點運行,需要運行程序的人支付手續費給節點的礦工或權益人。以太坊的智能合約功能允許開發者在區塊鏈上創建和執行具有自定義邏輯和規則的合約,這些合約可以在無需第三方信任機構的情況下自動執行。
- 分布式應用程序:以太坊上的分布式應用程序(DApps)不會停機,也不能被關掉。這些應用程序運行在以太坊區塊鏈上,利用智能合約實現去中心化和自動化。
- 代幣:智能合約可以創造代幣供分布式應用程序使用。這些代幣可以用於表示數字資產、服務、權益等,並可以在以太坊區塊鏈上進行交易。
- 叔塊:以太坊引入了叔塊(uncle block)機制,將因為速度較慢而未及時被收入母鏈的較短區塊鏈並入,以提升交易量。這一機制使用的是有向無環圖的相關技術。
- 權益證明(PoS):以太坊正在從工作量證明(PoW)向權益證明(PoS)過渡。權益證明機制相較於工作量證明更有效率,可節省大量在挖礦時浪費的電腦資源,並避免特殊應用集成電路造成網路中心化。
三、第二層功能
為了支持智能合約所需的高運算量以及資料容量,以太坊也積極開發第二層功能來減輕主鏈的負擔,擴展其實用規模。目前的主要方案包括:
- 支鏈:用較小的分支區塊鏈運算,只將最後結果寫入主鏈,可提升單位時間的工作量。
- Plasma支鏈:一種用於擴展以太坊區塊鏈的分層解決方案,旨在提高交易速度和可擴展性。
- Rollup支鏈:另一種用於擴展以太坊區塊鏈的解決方案,通過聚合交易來減少主鏈上的數據負載。
- 狀態通道:原理類似比特幣的閃雷網路,可提升交易速度、降低區塊鏈的負擔,並提高可擴展性。
- 分片:減少每個節點所需紀錄的資料量,並透過平行運算提升效率。
四、以太幣
以太坊區塊鏈上的代幣稱為以太幣(Ether),代碼為ETH。以太幣可在許多加密貨幣的外匯市場上交易,它也是以太坊上用來支付交易手續費和運算服務的介質。以太幣的總發行量不明,因為權益證明的具體運作方式仍在研究中。以太幣對其他實體貨幣的匯率可能在短時間內大幅變化。
五、智能合約的重要性
以太坊最重要的技術貢獻就是智能合約。智能合約可以協助和驗證合約的談判和運行,讓眾多組織的資料庫得以用低廉的成本交互,並且讓用戶寫下精密的合約。智能合約的公開性意味著如果合約中有漏洞,任何人都可以立刻看到,但修正程序可能會需要一些時間。
六、以太坊組件
- p2p網路:以太坊運行在Ethereum Main Network上,這是一個通過TCP 30303埠定址的網路。
- 共識規則:以太坊的共識規則由以太坊黃皮書中的參考標准進行精確定義。
- 交易:以太坊交易是一個網路消息,主要包含交易的發送方、接收方、價值和數據載荷。
- 狀態機:以太坊的狀態轉換由以太坊虛擬機(EVM)處理,這是一個基於棧的虛擬機,執行bytecode(位元組碼指令)。
- 數據結構:以太坊的區塊鏈以資料庫(通常採用Google的LevelDB)的方式保存在每一個節點之上,區塊鏈內包含了交易和系統的狀態,經過哈希處理的數據保存在Merkle Patricia Tree數據結構之內。
綜上所述,以太坊是一個功能強大且靈活的區塊鏈平台,通過智能合約和分布式應用程序為開發者提供了廣泛的創新空間。
④ 浠ュお鍧婃嫢鍫墊庝箞鏍瘋В
浠ュお鍧婃嫢鍫墊庝箞瑙e喅
浠ュお鍧婄綉緇滄嫢鍫墊槸鎸囧湪鍖哄潡閾劇綉緇滀笂浜ゆ槗閲忚繃澶э紝瀵艱嚧浜ゆ槗璐圭敤鎬ュ墽涓婃定銆佷氦鏄撻熷害鍙樻參銆佷氦鏄撹鍗′綇絳夌幇璞°傝В鍐充互澶鍧婄綉緇滄嫢鍫電殑鏂規硶鏈変互涓嬪嚑縐嶏細
澧炲姞鐭垮伐璐圭敤
鍦ㄤ互澶鍧婄綉緇滄嫢鍫墊椂錛岀敱浜庡尯鍧楅摼鐨勮繍琛屾満鍒訛紝鐭垮伐闇瑕佷負姣忎釜浜ゆ槗璁$畻鍜岄獙璇侊紝鐒跺悗鎵撳寘鍒板尯鍧椾腑銆傚洜姝わ紝涓轟簡鍚稿紩鏇村氱熆宸ュ勭悊浜ゆ槗錛岀敤鎴峰彲浠ュ炲姞鐭垮伐璐圭敤錛岃繖鏍蜂氦鏄撳氨鑳芥洿蹇鍦板緱鍒板勭悊銆備絾鏄錛岄殢鐫浜ゆ槗璐圭敤鐨勪笉鏂澧炲姞錛岀敤鎴峰彲鑳介渶瑕佹敮浠樻洿楂樼殑璐圭敤鎵嶈兘浣誇氦鏄撳緱鍒伴獙璇佸拰澶勭悊銆
浣跨敤Layer2鏂規
Layer2鏂規堟槸浠ュお鍧婄綉緇滀笂鐨勮В鍐蟲柟妗堜箣涓錛岄氳繃灝嗕竴浜涗氦鏄撲粠浠ュお鍧婁富緗戠Щ鑷沖彟涓涓騫寵岀殑緗戠粶錛屾潵鍑忚交浠ュお鍧婁富緗戠殑璐熻澆銆傝繖浜涘鉤琛岀綉緇滐紝渚嬪俁ollup鍜孭lasma錛屽厑璁稿湪鏈鍦板勭悊澶ч噺浜ゆ槗錛岀劧鍚庡湪闇瑕佹椂灝嗗畠浠鐨勬眹鎬繪暟鎹鎻愪氦鍒頒富緗戙傝繖縐嶆柟妗堝彲浠ユ樉钁楁彁楂樹互澶鍧婄綉緇滅殑鍚炲悙閲忓拰浜ゆ槗閫熷害錛屼粠鑰屽噺灝戞嫢鍫甸棶棰樸
絳夊緟闈為珮宄版椂孌
鐢變簬浠ュお鍧婄綉緇滅殑浜ゆ槗閲忔嘗鍔ㄨ緝澶э紝鐢ㄦ埛鍙浠ラ夋嫨鍦ㄩ潪楂樺嘲鏃舵佃繘琛屼氦鏄擄紝渚嬪傚湪娣卞滄垨鍛ㄦ湯銆傝繖鏍峰彲浠ラ伩鍏嶄笌鍏朵粬鐢ㄦ埛絝炰簤錛屼粠鑰屼嬌浜ゆ槗璐圭敤鍜岄熷害閮藉緱鍒版敼鍠勩
浼樺寲浜ゆ槗絳栫暐
鐢ㄦ埛鍙浠ヤ紭鍖栦氦鏄撶瓥鐣ワ紝渚嬪傞檷浣庣噧姘斾環鏍箋佷嬌鐢ㄤ笉鍚岀殑浜ゆ槗鏂瑰紡鎴栫瓑寰呭悎閫傜殑鏃舵満鎻愪氦浜ゆ槗絳夈傝繖浜涗紭鍖栫瓥鐣ュ彲浠ュ湪鎷ュ牭鏈熼棿闄嶄綆浜ゆ槗鎴愭湰錛屽苟灝藉彲鑳藉湴鍔犲揩浜ゆ槗閫熷害銆
緇間笂鎵榪幫紝浠ュお鍧婃嫢鍫電殑瑙e喅鏂規硶鍖呮嫭澧炲姞鐭垮伐璐圭敤銆佷嬌鐢↙ayer2鏂規堛侀夋嫨闈為珮宄版椂孌佃繘琛屼氦鏄撳拰浼樺寲浜ゆ槗絳栫暐銆備絾鏄錛岃繖浜涙柟娉曞苟涓嶈兘瀹屽叏瑙e喅鎷ュ牭闂棰橈紝鍙鑳藉湪涓瀹氱▼搴︿笂緙撹В緗戠粶璐熻澆銆