作者|SecondState
Libra火了,火得一塌糊涂。
一個原因是其被爭相討論的「建立一套簡單的、無國界的貨幣和為數十億人服務的金融基礎設施」光榮使命。朋友圈刷屏、社群刷屏,線上線下專家PK、xx論劍,支持、質疑、反對,「Libra太牛了」、「Libra被吹得太牛了」。
另一個原因,伴隨其出生的Move語言也是一大亮點。不管Libra的「光榮使命」是否可以實現,但在另一陣地,在GitHubTrending榜單上,基于Rust語言搭建卻又發布Move語言的Libra確實是實實在在地火了,不知不覺就沖上了GitHub日活第2名......
圖片來源:https://github.com/trending?since=daily
那么問題來了,你認為Libra最大的亮點是什么?
可以說,Libra也許是目前為止本年度區塊鏈領域最受期待、最多討論的新聞了。
根據Libra白皮書描述的「建立去中心化的全球貨幣」的目標,該項目有著非常野心勃勃的加密經濟學設計管理規則,同時其聯盟中的合作伙伴也非常重磅。
包括VISA、ebay和Coinbase在內的29個首批合作伙伴
Starknet:技術與治理將是無需許可和去中心化的:7月3日消息,Starknet發推稱,“我們不是在請求許可,也并非在等待守門人。技術和治理將是無需許可和去中心化的。我們正在奪回權力,而不再需要中間商。”[2023/7/3 22:15:18]
Libra區塊鏈是一個去中心化的可編程的數據庫,其被設計成用于支持一個波動性低的加密貨幣,它能作為有效的交換媒介服務世界上幾十億人。
——Libra白皮書
但作為技術人員,我們對于其運用區塊鏈技術的方式最感興趣。
為什么Libra項目要求有自己的一條區塊鏈呢?對于應用程序開發者來說機會在哪里?對于企業以及傳統的IT公司而言,從中可以得到哪些推斷?我們將分三篇文章來討論這幾個問題。
1、Libra應用程序開發方法;
2、深度解析Libra項目的核心應用;
3、如何基于Libra開發一款應用程序?
本文為系列文章第一部分,一起來看吧。
智能合約先行
Libra項目中最引人矚目的設計功能之一,就是其智能合約先行的策略。就算是像以太坊這樣的智能合約平臺,智能合約的執行僅僅是一種交易的類型。以太坊原生操作仍然是幣的交易。而Libra不同。智能合約是Libra上的一等公民。
Ledger與Deadfellaz達成合作:金色財經報道,Ledger與Deadfellaz達成合作,Ledger是安全可靠的加密硬件錢包的領導者,宣布了他們與Deadfellaz持續合作的新篇章,這個品牌創造了帶有黑暗元素的獨特街頭服飾。他們的目標是發布限量版Deadfellaz Ledger Nano X。[2023/4/23 14:22:19]
通過LibraCore內部組件寫智能合約的流程
Libra區塊鏈本身是用Rust編寫的,但是Libra上的應用程序是使用新的編程語言Move來編寫。所有來自外部的區塊鏈互動都由Move程序來處理,在Libra上,即便是一個幣的轉賬,也是由Move程序來處理的。每一個Libra節點都會運行一個虛擬機。虛擬機執行程序,并且記錄共識達成后的結果。筆者認為智能合約先行的方式能夠讓Libra項目建立起一個功能多樣的基礎設施,這也能適用于未來的需要。
為什么使用Move編程語言
那么,為什么我們需要一種新的編程語言?是因為安全和性能的要求。Libra要建造一條新的鏈,因為目前市場上的區塊鏈解決方案沒有辦法滿足其對性能和安全的要求。
Facebook和Libra想要建立專注于支付和資產數字化的區塊鏈,因此他們創造了Move編程語言,內置了對不可更改且不可復制的資產的支持。Move編程語言是一個用于數字資產管理的DSL。
安全公司Dedaub建議利用Verkle樹降低gas費用遭Curve Finance反對:金色財經報道,安全公司Dedaub在社交媒體發文建議以太坊應該使用更具優勢的Verkle樹來降低gas費用,與Merkle-Patricia不同,Verkle樹可以啟用加密安全輕客戶端,并且能夠支持“狀態見證”最小化數據傳輸,如果狀態訪問成本被充分計量且對應于“狀態見證”的大小,無狀態客戶端網絡就不會受到DoS攻擊。對此,DeFi協議Curve Finance認為該建議“絕對有害”且會“殺死主網上的DeFi”,并表示希望進一步溝通以探索其他解決方案。[2023/2/26 12:30:16]
比特幣在加密方面成就非凡,能夠在數字世界創建無法復制的東西,有著非常巨大的價值。
——艾里克斯米特,谷歌主席
Move編程語言的名字來自于Move本身支持的基礎操作器。Move操作器負責移動資產。Move消除了原本常見的兩步操作:減掉前面一個賬戶的余額,然后加到另外一個賬戶。Move語言將資產與資源放在一等公民的地位。當然,Move語言也有其他重要的特性,使其在資產管理方面更加安全,更加健壯。
1publicdeposit(payee:address,to_deposit:Coin){2letto_deposit_value:u64=Unpack(move(to_deposit));3letcoin_ref:&mutCoin=BorrowGlobal(move(payee));4letcoin_value_ref:&mutu64=&mutmove(coin_ref).value;5letcoin_value:u64=*move(coin_value_ref);6*move(coin_value_ref)=move(coin_value)move(to_deposit_value);7}
美聯儲主席鮑威爾:最快在12月或2月的會議上就會放緩加息步伐:11月3日消息,美聯儲主席鮑威爾表示,在某個時候放慢加息速度將是合適的。最終利率水平高于先前預期;通脹下降不是放緩加息步伐的條件。放慢升息步伐的時機最早可能出現在下次會議上;可能會在12月份討論縮小加息幅度的問題。比加息的步幅更重要的是利率需要上升到多高,不認為已經過度緊縮了,在這次會議上討論了放緩加息的問題,最快在12月或2月的會議上就會放緩加息步伐。[2022/11/3 12:11:11]
Move操作器,存款代碼
1publicwithdraw_from_sender(amount:u64):Coin{2lettransaction_sender_address:address=GetTxnSenderAddress();3letcoin_ref:&mutCoin=BorrowGlobal(move(transaction_sender_address));4letcoin_value_ref:&mutu64=&mutmove(coin_ref).value;5letcoin_value:u64=*move(coin_value_ref);6RejectUnless(copy(coin_value)>=copy(amount));7*move(coin_value_ref)=move(coin_value)-copy(amount);8letnew_coin:Coin=Pack(move(amount));9returnmove(new_coin);10}
STAT和Bloomingbit合作推出“頂級交易者 NFT”:金色財經報道,基于Kakao的NFT平臺Klaytn宣布與Bloomingbit合作推出“Top Trader NFT Drops”。Top Trader NFT Drops 是一項服務,允許其用戶訂閱頂級交易者的實時投資組合和交易歷史。該服務支持為Bloomingbit和STAT選擇的表現優異的交易者發行和拍賣訂閱Top Trader Cards(NFT)。如果您從 Top Trader Drops 中獲得 NFT,您可以訂閱發布相應 NFT 的交易者的實時投資組合、交易歷史以及各種信息內容。[2022/7/30 2:47:12]
Move操作器,取款代碼
Move編程語言是靜態的,并且由編譯器工具來發現錯誤和潛在的問題。
Move源代碼被編譯為由虛擬機執行的靜態的IR(intermediaterepresentation)代碼。IR代碼由工具進行檢查并驗證是否正確。
1publicmain(payee:address,amount:u64){2letcoin:0x0.Currency.Coin=0x0.Currency.withdraw_from_sender(copy(amount));30x0.Currency.deposit(copy(payee),move(coin));4}
實際上,目前的Libra資料僅僅有MoveIR代碼的案例。Move源代碼的細節,在撰寫本文時還未公布。
Move編程語言和虛擬機是Libra項目的關鍵創新之處,但是Move編程語言與傳統的Solidity和Vyper智能合約語言,以及EVM和WebAssembly區塊鏈虛擬機相比,所做出的妥協有哪些呢?
犧牲圖靈完備性
大多數DSL特定語言系統都會就具體的任務進行優化,因此并不適用于廣泛意義上的計算。Libra并未直接表示Move編程語言是不是一個圖靈完備的體系,但是,Move專門針對金融交易進行優化,Move系統可能并不適合用在開發加密貨幣游戲或。
也就是說,Libra軟件對于大多數企業智能合約用例來說并不合適。但還有其他的方面,Move編程語言在很大程度上不是智能合約。
Move程序不是智能合約
Move程序必須進行編譯,并且集成到一個Libra節點軟件當中,對普通用戶來說才是可用的。Libra區塊鏈如果要支持新的Move程序,必須要暫停整條鏈,并且所有三分之二的驗證人節點進行軟件升級,才能夠支持同樣的Move程序,這在本質上意味著,每次要添加新的Move程序到區塊鏈,都要進行硬分叉,期間伴隨著區塊鏈服務暫停。這不是智能合約,而是chaincode。
智能合約的一個決定性的特點就是它有能力按照要求在區塊鏈在并不需要暫停服務的情況下,通過共識,部署并且執行新代碼,這對于企業區塊鏈或者是公鏈來說非常重要。
公鏈必須允許任何人在不需要得到授權也不需要暫停服務的情況下部署并執行智能合約代碼;
企業級的區塊鏈特別需要使用智能合約來創造自動化的商務決策。比如在不同幾方之間,進行擔保交易。雇員與合伙人必須能夠按照實際需要來修改和部署智能合約,同時不需要暫停整條鏈。
Libra項目作為一個專注于金融交易的準入式區塊鏈,它的最初的方案,是使用不可更改的chaincode。這樣能夠讓整個系統更加安全,而且更加穩定,因為所有的Move程序都會至少要得到100個驗證人節點中的67位的檢查和允許。但是Libra項目所聲稱的目標是在接下來五年當中,進化成一條公鏈。我們相信Move架構會與區塊鏈共同進化。
寫在最后
在本篇文章中,我們聚焦討論了Move編程語言以及由其驅動的智能合約。當然,Libra還有其它很有意思的技術創新。比如以下值得關注的點:
以太坊每個節點都維護了一個全球性的數據庫,在每個區塊更新之后,數據庫也會跟著更新;而Libra與以太坊不同,Libra的數據庫是基于不同版本的,Libra的狀態數據庫在每個交易完成后得到更新。對Libra來說,相較交易的概念而言,區塊的概念沒有那么重要。
Libra區塊鏈最初的性能目標是每秒1000筆交易。很顯然,這對于一個全球性的支付企業或者全球性的電商場景而言,已經足夠了,因為VISA平均TPS也僅僅在1700左右。Libra沒有不切實際、不負責任地吹噓百萬TPS。
在接下來的兩篇文章中,我們將提供對Move程序的深度解讀,并向讀者展示Move語言具體是如何工作的。敬請期待。
Tags:MOVMOVELIBRALIBMovey Tokenmovez幣是哪個國家發行的libra幣官網Equilibrium
據TokenInsight數據顯示,反映區塊鏈行業整體表現的TI指數北京時間06月21日8時報801.82點,較昨日同期上漲12.45點,漲幅為1.58%.
1900/1/1 0:00:00行情播報 截至6月26日早8點,火星財經APP監測的市值排名前100的加密資產有65只上漲,百只加密資產平均漲幅3.97%.
1900/1/1 0:00:00親愛的用戶:?? IDAX將上線XCT。開通XCT/BTC交易,立即前往。充值開放時間:2019/7/117:00:00(UTC8)提幣開放時間:2019/7/317:00:00(UTC8)Di.
1900/1/1 0:00:00Facebook發布Libra穩定幣,比特幣一路狂飆破萬美元,數字貨幣重回大眾視野。這次Facebook這位濃眉大眼的“正統”玩家參與,背后還帶著Visa、PayPal、Uber、Andrees.
1900/1/1 0:00:00本期講師:范曉俊 SalesGMAPAC比特大陸 挖礦彩蛋: 如何挖礦? 購買礦機、電源、電源線、網線、路由器、交換機、散熱設備、軟件.
1900/1/1 0:00:00迄今為止所有對Facebook穩定幣項目的分析,都低估了「Libra協會」在這個項目中的作用和價值。我認為這個協會是這個項目中的最大的亮點.
1900/1/1 0:00:00