比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads

以Starcoin為例 解析區塊鏈項目如何利用PoW做組合創新?_OIN

Author:

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

縱觀區塊鏈項目的進化史,改良和創新已經成為必然。

前有以太坊提出智能合約帶來區塊鏈2.0與“世界計算機”,后有Polkadot以中繼鏈共享安全建立異構分片架構。

區塊鏈從業者正以分層、算法改進等創新不斷組合出了一個個面向業務的解決方案。為去中心化世界帶來去中心化商業的基礎設施,帶來傳統業務在去中心化世界標準化復制的機會。

不過無論項目設計如何變化,項目實現的目標是一致的,都是要在保證去中心化的信仰之下塑造出應用生態的輝煌。

如今,在大部分區塊鏈項目選擇使用PoS共識后,仍舊有一些項目在改進PoW以利用PoW共識的去中心化特征打造生態繁榮。

本文中,我們就將以公鏈Starcoin為例,解析其白皮書中的設計思路,展現一個以PoW共識為基礎的成熟方案,為行業提供一個組合創新的范例。

以太坊是公鏈的典型代表,其提出了世界計算機的概念實現,想要將互聯網業務都運行于區塊鏈網絡之上。目前所有的公鏈,無論是為金融服務,還是拓展到為數據、用戶服務,也都在向這個目標努力。

但一條鏈的網絡并不足以實現這些需求,例如比特幣雖在金融系統上可以稱之為創新,但比特幣網絡是一個不能運行智能合約的非圖靈完備加密貨幣網絡,只有利用加密方式控制的賬戶地址、資產的功能。

隨后以太坊應聲而起,以智能合約定義了區塊鏈的優勢和特點。同樣的,以太坊1.0鏈也遇到了PoW網絡的性能問題。所以以太坊正轉向PoS、塑造分片、并且開辟layer2。

從這個路徑上看,以太坊已經在塑造分層結構,在以太坊2.0的計劃中,信標鏈通過PoS共識運行完成總賬本的驗證,而狀態執行都將在信標鏈下的分片中進行,更多獨特的擴展功能也可能將設計在layer2層中。

這似乎已經是行業內技術上的共識,波卡、Cosmos等公鏈都不約而同的向相似結構發展。表現了對“部分信息上鏈驗證”、“分層處理”方案的默許。

Aave社區發起將V3部署至Base網絡的溫度檢查提案:5月24日消息,據 Aave 治理網站信息,Aave 社區發起將 V3 部署至 Base 網絡的溫度檢查提案。目前該提案正向社區征集反饋意見。此前,Aave 社區已投票決定在 Arbiturm、Metis 和 Optimism 等其他 L2 網絡上部署 Aave V3 協議。[2023/5/24 15:24:16]

Starcoin的分層框架和每層功能定義

為什么呢?因為分層后,可以針對每層出現的問題各個擊破。正如Starcoin,通過區塊鏈分層技術,可以在區塊鏈layer1可以達到去中心化和安全,通過layer2又可以達到足夠的可擴展性,供商業使用。為此,Starcoin對每層都進行了明確的定義和單獨滿足需求的技術改良。

當我們拆分區塊鏈項目的時候可以發現,layer0是資源層,是由計算設備組成的點對點通信網絡層,Layer0可以看到路由、節點(礦機或服務器),在這層資源之上,公鏈建立了核心的layer1:共識層。

Layer1表現著區塊鏈的特點,保護著一些設計者的信仰。正如比特幣的PoW共識對很多信仰者來說,是重要的,因為工作量證明在原則上顯示了公平,而PoS共識,與既有權益過于相關。

也因PoW網絡是由礦機搭建而成,其成本和挖礦周期代表了礦工更長久的參與。因此很多區塊鏈項目選擇將礦機參與組成的共識層作為layer1,這是對PoW共識的信仰和對礦機挖礦經濟模型的信任。

Starcoin即是如此,其通過礦機來搭建一個以共享經濟為保護的layer1網絡。堅持PoW的公平性,也用來防止行業極端變化下的不穩定性沖擊。

那Starcoin又如何避免PoW網絡帶來的既有問題呢?

Starcoin進行了重要創新。以以太坊的設計對比來看,Starcoin的重要創新是在沒有改變PoW共識出塊和廣播流程上,讓出塊變得動態可控。

首先我們需要了解比特幣、以太坊的出塊和交易打包方式。

當節點開始確認出塊,開始廣播后,一段時間內,只有納入最長鏈的區塊才是被認可的塊,最長鏈的競爭過程會讓網絡持續分叉,出現孤塊、叔塊。其原因在于礦工在打包交易前,很可能需要同步新的交易。

Yuga Labs首席創意館:四月TwelveFold會有新內容發布:金色財經報道,Yuga Labs首席創意官schmigge figge在社交媒體發文分享了比特幣NFT系列TwelveFold的一些細節和未來計劃,他表示Yuga Labs團隊使用XMP元數據來處理比特幣鏈上數字藏品,TwelveFold系列分為冬季、春季、夏季和秋季四個季節,所有文件大小都在229kb到114kb之間,Yuga Labs將會把部分銷售收益進行在投資并將在四月份發布TwelveFold新內容信息。

此外,schmigge figge還稱該系列并非他一人創作,許多創作者希望保持匿名,包括Figge顧問:Greg Solano、Wylie Aronow Eng:Neil Simpson、Randy Chung,產品:PPMan、Chris Fortier,通訊:NGBxBen、Delaney Simmons、Ian de Borja,法律:Ciabatta,運營:Kswitch,技術貢獻者:Luxor Technologies。[2023/3/18 13:12:09]

NC中本聰共識中的塊傳播方式

例如,當節點 A 向節點 B 傳播一個塊并且其中沒有新的交易時,節點 B 可以立即將這些緊湊塊傳輸給它的所有相鄰節點。但是,如果區塊中有新交易,節點 B 必須首先從節點 A 同步這些交易,然后驗證這些交易的簽名,這個過程需要時間。最終只有當整個區塊的有效性得到驗證時,節點 B 才能繼續傳播這個區塊。

此時,如果不進行新交易打包,出塊時間較短,但如果等待打包新交易,就需要更長的出塊時間。

因此,如何確定一個有效的同步時間,并保證新交易不是無序的一直延續的在同步,是極為重要的。

與之相關的,如果孤塊增加,也會而影響網絡資源使用率和安全性。

Starcoin在這個部分的設計,是令人驚訝的,其操作很簡單,像以太坊一樣引入了叔塊概念,并且對叔塊進行統計。

USDC Treasury鑄造1億枚USDC轉入Coinbase:金色財經報道,Whale Alert數據顯示,北京時間今日12:05,USDCTreasury鑄造100,000,000枚USDC,然后轉移到Coinbase。[2023/3/10 12:54:02]

Starcoin中的叔塊打包監測

叔塊是指孤塊中被編入最長鏈的塊,其可以代表網絡狀態分叉較多,孤塊會增加,在網絡延遲并且網絡擁堵時,叔塊也會隨之增加,因此,最終叔塊的數據可以用來輔助調整出塊時間和難度。

Starcoin網絡運行時,為了將叔塊維持在一個合適的閾值內,在每個小周期(時隙Epoch)末,都會重新調整下一個周期的出塊時間,同時調整的還有挖礦難度。

其邏輯在于,如果叔塊率較高,表示當前的出塊時間間隔下,網絡中存在較多的分叉和孤塊,需要調大出塊的時間,緩解此問題。反之,則說明全網出塊情況良好,還可能進一步縮短出塊時間,提高全網吞吐。

Starcoin引入叔塊的方式對于網絡本書來說,是自然的。不過還有一些公鏈可能會選擇設計特殊的切入點。

例如當打包前出現新交易時,可以將區塊空間中引入一個“叔塊頭”概念,其不占據交易驗證的體積。但可以把新交易引入叔塊頭,然后重新設計一個提交區用來驗證交易。

這是一種把影響區塊打包速度的“新交易”剝離正常區塊驗證步驟,轉換成其他方式驗證提交的方法。與Starcoin的方式不同,它改變了驗證方式。

因此,綜合來看,在layer1網絡(即比特幣PoW網絡)上做改進,首先是先增加小周期(時隙Epoch)用來快速調整出塊難度。

其次就是解決區塊打包等待新交易的問題,Starcoin的設計和選擇是明確的,在不用重新把新交易單獨處理的情況下,只通過叔塊監測數據而調整出塊時間和挖礦難度,這樣是將PoW網絡演變成了一個動態吞吐網絡,其規則像是在高速公路中添加了指揮員,隨時指揮車輛的速度,這樣的改變雖小,卻可以改善PoW鏈在擁堵時的表現。并且,筆者認為,出塊時間隨網絡狀態可調整已經成為新公鏈系統的重要特性之一。

BUSD市值較一個月前已減少約60億美元:金色財經報道,據Coingecko數據顯示,當前幣安美元穩定幣BUSD市值已下降至174.7億美元,且被XRP反超,跌至加密市值排名第七位。歷史數據顯示,BUSD市值于11月中旬超過235億美元,這意味著當前市值較一個月前已減少約60億美元,跌幅超過25.5%。[2022/12/25 22:06:10]

Starcoin已經改進了比特幣、以太坊的PoW模型。而在layer2上,Starcoin設計為專注于解決資產轉移交換等過程中的擴展性和性能問題。只是目前,layer2解決方案正處于“百花齊放,暫時無王”的階段,同時面對多個的layer2的解決方案,需要Starcoin設計團隊明確需求后做出選擇。

目前,在Starcoin白皮書中并未展示其部分,其官方表示會在白皮書2.0版本中公布layer2方案。我們可以通過Starcoin對分層網絡功能的定義去推測其layer2的設計。

layer2和layer1的普通狀態關系

從邏輯上看,layer2是layer1狀態的遷移交互,因此首先來看Starcoin Layer1職能,詳情如下:

1. 通過增強的中本聰共識機制來盡可能的在保證安全的基礎上在Layer1擴容,最大化Layer1網絡的利用率。

2. 提供資產的定義,發行,以及流轉,以及layer1、layer2之間的流轉能力。

3. 給layer2提供仲裁能力,layer2可以利用Layer1的安全機制來保證自己的安全。

而這時layer2職能是:

1. 將Layer1的交易分流到layer2,Layer1不再關心layer2交易的細節以狀態的變更。

2. 提供監督機制,layer2的不同角色之間可以互相監督。

3. 提供證據保全能力,用戶如果對layer2的交易有爭議,可以到Layer1仲裁。

Kava 11升級預計于今日23:00進行,對此幣安發布支持公告:10月26日消息,幣安發布關于支持 Kava(KAVA)網絡升級和硬分叉的公告,Kava網絡升級和硬分叉將在Kava區塊高度2,098,400或約在北京時間10月26日23:00進行,KAVA的充提將于22:00左右暫停。網絡升級和硬分叉期間,KAVA的交易不會受到影響。

此前消息,Kava 11流動性質押主網發布時間更新為10月26日。[2022/10/26 16:39:11]

由此來看,首先Layer1、layer2間的互相交互必須保證實現,因為這相關于Layer1、layer2資產流轉的需求以及有相互證明狀態有效的方式。其次,Starcoin還強調了layer2不同角色可以互相監督。

Layer1、layer2間的狀態鎖定和證明間的交互

這樣的需求使用單個layer2技術是無法實現的。例如以太坊上的rollup,其兩層鏈間的雙向交互并不完善。例如零知識證明,雖可以保證兩層鏈間交互數據的安全性,卻無法在layer2的角色設計和數據可用性上發力。

所以可以推測的是,未來Starcoin一定會在layer2使用多技術組合方案,這在其公示出的layer2思路上得到一些證實,其抽象出一種通用的layer2方案模型如下:

1. 應用的狀態(包括資產)在Layer1和layer2之間安全的轉移。

2. 保證layer2的數據可用性。

3. 提供證明和提供仲裁機制。

上文說到,從邏輯上看,任何layer2方案都是Layer1的狀態遷移,詳細過程可能包含將狀態鎖定并在layer2重建等。因此,我們來看公示的模型,如果layer1和layer2都有統一的資源模型,那狀態遷移就不是難事,如果兩層鏈都用統一的框架搭建,數據可用性也不是問題,可能唯一遇到的問題會是合約遷移。而Starcoin很亮眼的是,其合約也是無狀態設計,因為合約并入了賬戶模型里,狀態已經被確定了所有權。交互中直接訪問狀態即可執行。

綜上,我們可以對Starcoin抱有足夠的期待,筆者認為在layer2技術上,Starcoin的重點并不在改良技術,而是對行業內多類技術的組合與實現,在Starcoin的基礎優勢(例如賬戶、存儲模型、編程語言)上占據優勢即可。

分層結構以及對layer1、layer2的單獨設計,塑造了Starcoin的基本能力,而千變萬化的業務需要要求在一些標準化的設計上仍要具備優勢。

這就要提及Starcoin一些有利于長遠發展的巧妙設計。這些設計雖然討論不多,但卻是公鏈系統不可或缺的特性。

足以稱之為巧妙設計的,有3點,分別是更改賬戶模型和狀態存儲,支持多種驗證合法性的方式、雙累加模型,以及基于Move開發語言的適配。

1.更改賬戶模型和相應的狀態存儲之后,Starcoin得以實現以太坊無法順利進行的狀態計費計算。

對比以太坊來看,以太坊將賬號分為合約賬號和用戶賬號。合約賬號用于部署合約的代碼以及存儲合約的狀態,用戶在某個合約中的狀態都保存到該合約賬號下,讀寫權限也由合約自己控制。這樣的設計自由度很高,但導致合約狀態的所有權不明確,從而容易帶來安全上的問題以及很難解決"狀態爆炸"問題。

Starcoin更改后的賬戶模型

這樣的設計帶來了以太坊擁堵情況下,Gas費的暴增以及復雜合約調用成本的居高不下。

因此,Starcoin 以太坊賬戶模型基礎上做了以下改進:

1. 廢棄了合約賬號,任意賬號都可以部署智能合約,部署的智能合約在當前賬號下。

2. 通過對合約編程語言中狀態存儲機制的改變,讓智能合約的開發者很容易的把合約的狀態分散保存到該狀態所屬的用戶地址下,從而明確狀態的所有權。

通過這樣的改造,一方面增強了鏈對用戶狀態的安全保護能力,另外一方面也為狀態計費提供了可能。未來Starcoin會支持token支付gas,便于用戶和開發者使用。

2.從上文的討論中,我們還能看到多次提到區塊鏈驗證,足以證明驗證數據是區塊鏈運行剛需,在 Starcoin 的整體設計中,還提供了四個層面的數據校驗機制,這些機制,可以提供全場景下的數據驗證邏輯。

1. 交易可校驗:BlockHeader 包含一個全局交易累加器的根哈希,任何上鏈的交易都有對應的全局證明。

2. 狀態可校驗:BlockHeader 包含一個全局狀態狀態樹的根哈希,保障了狀態可驗證。

3. 區塊可校驗:BlockHeader 包含一個 BlockBody 的哈希,用于校驗 BlockBody 中的數據。

4. 鏈可校驗:BlockHeader 包含一個全局區塊累加器的根哈希。任何一個區塊可以提供一個和當前區塊的關系證明,不需要遍歷區塊即可驗證某個區塊是否是當前區塊的祖先區塊。 

Starcoin區塊頭中的的全局區塊累加和根哈希示意

在四個維度的數據校驗的基礎上,再配合Starcoin的合約和賬戶模型,「交易累加器」和「區塊累積器」組成了Starcoin獨特的「雙累加器」模型,這將成為Starcoin系統數據安全的基礎。也可以通過數據合法性的優勢為很多業務服務,例如跨鏈數據交互驗證。

3.為了更好地擴展區塊鏈的能力,Starcoin 還將 Move 語言作為智能合約,以保證針對數字資產的編程更加安全、簡單。

Move 語言是Facebook穩定幣項目Libra(已更名為Diem)的開發語言,該語言尤其重視安全性,主要由以下幾個方面保證:

1. 自底向上的靜態類型系統;

2. 資源不可復制或者隱式丟棄;

3. 資源按用戶存儲,重新定義鏈,合約,用戶三方的數據操作權限;

4. 引入形式化驗證技術,通過數學原理來證明合約的安全性;

更重要的是,Starcoin團隊已經通過 Move 語言建立了Move開發社區,通過開源社區,可以獲得開發技術、開發資源以及人才儲備和未來的生態項目孵化能力。

從Starcoin白皮書中詳實的設計,再到Starcoin已經完成的技術進展,綜合來看。Starcoin除了未確認的layer2外,其網絡從0到1的過程已經完成了80%,其中最關鍵的要數layer1中對PoW共識的改進。小小的改進,讓Starcoin可以堅持使用PoW,可以建立一個挖礦生態。

如果說挖礦生態是建立layer1的支柱,當layer1和layer2組合使用后, Starcoin也會因layer2層對應用的擴展為DeFi、NFT的應用土壤。

其原因有四:

其一,Starcoin有穩固的礦工經濟做支撐,網絡生命力遠勝其他PoS網絡。

其二,layer1層的賬戶模型和存儲的設計讓 Starcoin Gas費更低。

其三,使用Move語言與PoW配合,足夠安全,又具備比特幣金融系統的基因。

其四,layer2的執行讓Starcoin雖使用PoW但性能完全可以承載DeFi等應用。

為了讓以太坊的性能達標,以太坊團隊用了7年時間,才做好了PoW向PoS轉換的準備,但切換共識還沒有真正進行,信標鏈的穩定性還沒有經歷合并后的考驗。如今,我們信任以太坊的DeFi、NFT,是運行在PoW鏈上的,用戶對PoW信任一定高于還未得到全面證實的PoS。

如此來看,筆者認為,Starcoin將成為一個保持比特幣金融系統基因,又具備圖靈完備能力的安全智能合約運行平臺。這是一個可以承擔以太坊DeFi需求的平臺,也是比特幣信仰者曾經暢想也可以在未來使用的平臺。

撰文|Arthur

Tags:LAYEROINCOINCOILayer 1 Quality IndexApeCoinFREE CoinTCOIN

中幣交易所
一文讀懂加密量化交易平臺Zignaly_ALY

年初啟動的一輪大牛市,為加密資產行業帶來了大量迫切逐利的新用戶,其中甚至不乏沒接觸過股票、基金等傳統投資渠道的小白.

1900/1/1 0:00:00
多鏈部署的MNC:全球首個NFT 元宇宙大變局_INE

新技術凝聚到一起,力量之大,影響之深。 ——張放 這是一個新時代,新的技術,不只是帶來了新的體驗,而是開啟了一種新的文明.

1900/1/1 0:00:00
Olympus DAO:實驗性的自由浮動算法穩定幣_DAI

又出現新型算法穩定幣,APY達到90,000%?這是怎么做到的! 來源:https://olympusdao.finance/#/stake數據截至2021年5月31日本文將介紹OlympusD.

1900/1/1 0:00:00
NFT賽道迎重磅玩家 歐易OKEx上線NFT平臺OKExNFT_KEX

最近幾個月,NFT賽道持續火爆。一方面,海外巨頭爭相入局,購買或推出相應的NFT作品;另一方面,阿里、騰訊、網頁等國內大廠也在NFT領域有所動作。眾多機構加持之下,NFT市場迎來大爆發.

1900/1/1 0:00:00
Messari報告:從流媒體到web3.0 Theta還有哪些機會?_THETA

“Web 1.0 是互聯網的早期階段(代表性企業如AOL 和 Netscape),Web 2.0則是從 2007 年左右開始.

1900/1/1 0:00:00
Ronin 介紹:Axie Infinity 的以太坊側鏈_ONI

當去中心化應用尋求擴容方案時,不同類型的應用有不同的需求。當前的擴容方案主要是設計通用的 Layer1 高速公鏈,或者是為 DeFi 應用設計的 Layer2 Rollup,而更適用的方案是:為.

1900/1/1 0:00:00
ads