偉大的可組合性...嗎?
神圣的可組合性!可組合性為我們帶來了金錢樂高(ERC-20和OpenZepplin等標準),為我們帶來了金融樂高(DeFi協議的各種組合),為我們帶來了媒體樂高(NFT).
可組合性就是創新開發者可以像搭樂高一樣,把別人的樂高(合約源碼)拿過來,修修補補,創建出一個新的產品.
可組合性就是復利!用戶還可以通過在創作出的不同新產品之間互相交互,來釋放資產的無限可能性.
?Web3的可組合性類似一個并非拷貝樂高,而是引用樂高的微服務架構,更強大但也更危險(木板效應明顯且致命).?
Crypto=可組合性(開源數據與代碼互操作性流動性整合)激勵,但是作為Crypto的重要組成部分,一個可以無限次方的重要變量,可組合性的樂高其實是一個隨時搖搖欲墜的危房.
數據:Otherdeed for Otherside在OpenSea的交易額達到35萬枚ETH:金色財經報道,Yuga Labs元宇宙Otherside虛擬地塊Otherdeed在OpenSea的交易額已達到35萬枚ETH,當前地板價為1.75 ETH,24小時跌幅1.13%,市值達到7.949億美元。[2022/10/11 10:30:55]
一個例子就是,每個代碼庫(無一例外)都是屎山(Web2時代的成熟項目,光是代碼行數的數字就已經很復雜).
越多組合就意味著越高的復雜性,也就是意味著在開發或使用時更多出錯的可能,更多的Bug.
比如讓你閱讀這篇文章并點贊轉發,你可以輕松完成;但如果讓你關注比特幣的幣價的同時切蘋果皮還要騎自行車,你就很難同時完成這些任務了.你確實同時做了很多事,效率很高,但是你非常容易出錯.
dForce新提案提議部署3000萬枚Frax來擴大Frax Finance多鏈流動性:12月16日消息,dForce新提案提議通過合作擴大算法穩定幣項目Frax Finance的多鏈流動性和社區。提案內容如下:
- 在dForce Lending上部署3000萬枚Frax(Arbitrum上1500萬,以太坊上1500萬),引導初始借貸流動性,進一步增強Frax以有意義的方式與其他DeFi應用程序和資產交互的能力(例如,提供BTC或UNI或借入Frax);
- 將AMO部署到dForce Lending。[2021/12/16 7:43:22]
上圖是以太坊Sharding方案的變化.EVM的設計目標就包括[簡單性和更少的外部依賴.即使是非常復雜的想法,也往往具有“合理簡單”的版本.有時候真的未必需要那么多的組合和工程化,讓事情過于復雜.
Force DAO 代幣增發漏洞簡析:據慢霧區消息,DeFi 量化對沖基金 Force DAO 項目的 FORCE 代幣被大量增發。經慢霧安全團隊分析發現: 在用戶進行 deposit 操縱時,Force DAO 會為用戶鑄造 xFORCE 代幣,并通過 FORCE 代幣合約的 transferFrom 函數將 FORCE 代幣轉入 ForceProfitSharing 合約中。但 FORCE 代幣合約的 transferFrom 函數使用了 if-else 邏輯來檢查用戶的授權額度,當用戶的授權額度不足時 transferFrom 函數返回 false,而 ForceProfitSharing 合約并未對其返回值進行檢查。導致了 deposit 的邏輯正常執行,xFORCE 代幣被順利鑄造給用戶,但由于 transferFrom 函數執行失敗 FORCE 代幣并未被真正充值進 ForceProfitSharing 合約中。最終造成 FORCE 代幣被非預期的大量鑄造的問題。 此漏洞發生的主要原因在于 FORCE 代幣的 transferFrom 函數使用了`假充值`寫法,但外部合約在對其進行調用時并未嚴格的判斷其返回值,最終導致這一慘劇的發生。慢霧安全團隊建議在對接此類寫法的代幣時使用 require 對其返回值進行檢查,以避免此問題的發生。[2021/4/4 19:45:30]
可組合性===軟件依賴的風險
美國蒙大拿州證券監管機構向Forsage發出停止令:金色財經報道,美國蒙大拿州的證券監管機構命令Forsage的運營商停止在該州運營。該計劃是建立在以太坊之上的,被廣泛認為是金字塔騙局。據悉蒙大拿州州審計長證券和保險辦公室的Downing專員于3月22日下對其發布了停止令。這標志著美國針對Forsage的第一個此類行動。[2021/3/30 19:27:56]
可組合性很多時候就預示著某些項目必需與其他項目組合,才可以運行,這就是軟件依賴的風險.
試想一下,你要做個DEX聚合器,那么你就不得不去等待被聚合的DEX上線到網絡,你必須組合他們,才能發揮美好的可組合性.但這也意味著你得等Uniswap提出提案,通過提案,部署之后才能上線你的聚合器(話說較多情況下直接用Uniswap是比聚合器更好的).
更明顯的可組合性造成依賴的例子,就是,網絡沒有EVM,應用就上不了線了.EVM成為可組合性不可缺少的一環了,正是因此,對很多生態,EVM才如此重要.
有時候,開發者和用戶太過于依賴可組合性.可組合性給開發者帶來了快速的接入,但是或許更長的等待時間;也帶來了現有的代碼,但是可能會坍塌的多米諾.
可組合性===開源項目的多米諾
書接前文的可組合性依賴問題,這一長串的依賴其實讓可組合性的樂高變成了多米諾.
開源供應鏈投的例子在最近也屢見不鮮,比如主動投(盡管本意可能是好的)的Faker.js和node-ipc,還有不小心危害了整個互聯網安全的Log4j(最近Java好像又出事了).
?這些問題的根本原因還是:
1.?開發者不會看所有的源碼,只會復制粘貼(Candevsdosomething?)
2.?普通開源社區的激勵不足以支持持久開發.(一個貢獻者得喂飽八萬個使用者)
為了解決這兩個源頭,我們需要第三方審計服務,去中心化的開發社區,合理激勵的DAO,更多的Gitcoin捐獻,更多分配到基礎設施上的資金.
同時,從問題中,我們也看出全權交給社區開發也是不可取的(JavaScript社區),同時不能太過于依賴社區貢獻,可能會導致缺乏標準庫,而且通常激勵下社區開發很可能無法保證長久支持.我們還是需要一些中立和有效的組織來決定納入一些標準,以及引導對開發社區的資金激勵.
(順便一提,Ethers是EVM生態被使用最多的第三方庫,周下載量在68萬左右,但是只是“Web2”前端框架react的5%左右;根據ElectricCapital的數據,Web3開發者的數量大概占所有開發者的0.07%.Web3開發還有很長的路要走.)
再回到Web3,如果OpenZepplin出點風險,那受害的就不只是我們的軟件了,而是我們最寶貴的資金,這是很可怕的.
但是作為一個分散組織,?DAO的缺點就是更慢更難的決策,無法衡量工作的貢獻,以及有時候權力的濫用.
充滿可組合性的DAO讓DAO過于去中心化和復雜了,以上的三個缺點被幾何級數地放大.
可組合性讓DAO的缺點更加缺點了.
產業越來越復雜,套利攻擊等攻擊機會也就越多.而這些金融產品套上加套,這些產品被保險公司認可(就想到了審計機構),風險被從買得起BAYC的富人轉嫁給大眾消費者.最后當泡沫破裂的時候,受傷最大的就是普通用戶.
還記得比特幣創世區塊誕生的那一年發生了啥嗎?
總結
對于可組合性,我們需要知其優點,也要知其缺點.對于我文中提到的每個缺點,我都可以用可組合性的優點來對其一一反駁,但是我們仍然需要知道這些缺點,而不是讓可組合性變成一個任人打扮的玩偶.
可組合性仍然有很多的提高空間,盡管它已經幫我們創造了無限龐大和美好的各種杰作(Web1Web2Web3).我們需要更多更好更受關注的胖協議(我知道胖協議理論有些不合理了...),?可信中立性,和認受性.
可組合性是99%的組合和1%的破碎.
嗨,大家好啊,我們回來啦!希望在我們悄悄建設的這段時間里,您在DeFi方面取得了比較好的收益。我們努力研究智能合約代碼和審計,以及新的數學模型和策略.
1900/1/1 0:00:00親愛的ZT用戶: ZT創新板即將上線shibking,並開啟shibking/USDT交易對。具體上線時間如下: 充值:已開啟; 交易:2022年4月2日16:00; shibking Azte.
1900/1/1 0:00:00原文作者:?EricZhang原文標題:?zk-SNARKTrustSetupinSpaceOrbit在ETHDenver的一周里,我們看到了兩個與零知識證明相關的趨勢.
1900/1/1 0:00:00親愛的用戶: MEXC將支持Acala及EthereumClassic網絡升級及硬分叉,具體安排如下:Acala將於Acala區塊高度391,300進行網絡升級及硬分叉.
1900/1/1 0:00:00We’repleasedtoannouncetheadditionofTurkishLira(TRY)andRussianRuble(RUB)tothefiatoptionsavailablef.
1900/1/1 0:00:00March2022,LesleyDataSource:FootprintAnalyticsGameFi是游戲與去中心化金融的合體,通過Playtoearn的模式.
1900/1/1 0:00:00