原文作者:@jolestar
最近關于用戶和Move智能合約交互,不需要授權(Approve)是更安全還是更不安全的爭論很多,這里嘗試用通俗的方式來解釋一下二者背后的區別以及Move這樣設計背后的思想。??
我們先理解一下用戶和智能合約交互的方式。當我們簽了一個交易,去調用一個鏈上的智能合約,就好比從物理世界進入了一個智能合約的數字世界,我們在這個數字世界有一個分身,而這個分身做什么,是智能合約定義的。??
在EVM中,每個合約都相當于一個獨立的小世界,分身進入這個世界后,只能操作用戶在當前合約世界中的狀態。??
adidas Originals 將為“ Into the Metaverse”持有者發放實物產品,4月28日開放認領:金色財經消息,adidas Originals宣布將為“Into the Metaverse”的 NFT持有者發放實物產品,認領窗口將于4月28日開放,認領不收取費用但需支付Gas費。
Adidas Originals于去年12月與BAYC、NFT收藏家gmoney、PUNKS Comic合作推出其首個NFT項目“Into the Metaverse”,NFT的所有者可以免費訪問四個合作伙伴的實物物品。[2022/4/23 14:43:39]
比如進入swap世界,想用自己的usdt交換其他資產,而usdt存在定義usdt的那個合約世界,沒辦法直接在swap中以自己的身份從usdt合約里提取資產。于是用戶只能先去usdt的合約世界執行approve,告訴usdt的合約,swap可以代自己提取自己的資產,然后再進入swap世界進行操作。??
哥倫比亞廣播公司旗下“ 60minutes”欄目發表比特幣相關新聞報道:金色財經報道,哥倫比亞廣播公司旗下視頻欄目CBS 60minutes4月10日發表題為“薩爾瓦多的一個小鎮如何成為比特幣的試驗場”相關新聞報道。(cbsnews.com)[2022/4/11 14:17:36]
操作完成之后,再去usdt那邊取消授權。但這里的approve和revoke操作都需要獨立的交易,用戶往往為了節省gas費用,不進行revoke,結果如果swap合約出安全問題,用戶的資產就可能在不知情的情況下被盜取。??
而在Move中,所有的合約都在一個大的數字世界運行。用戶的數字分身可以自由的在合約間移動,執行任何操作,同時用戶的狀態存在用戶自己的存儲空間。??
SBI將與Money Tap合作進行數字貨幣“ S代幣”實驗:SBI控股公司27日宣布,已經開始對使用面向企業的區塊鏈解決方案“Corda”的數字貨幣“S代幣”(S coin)進行實驗。在這次實驗中,S-coin平臺和SBI子公司,將與智能手機匯款、結算應用Money Tap合作。(jp.cointelegraph)[2020/7/27]
用戶從swap入口進入,從自己的余額提取usdt,交換,存儲可以在同一個交易里原子化完成。這種模式給合約帶來更自由的組合模式,可以玩出很多EVM上很難實現的組合玩法,這也是EVM上的賬戶抽象方案想實現的模式。當然,這也帶來了新的安全挑戰。??
動態 | 百事可樂新推出的“ PEPCOIN”不是加密貨幣:據Bitcoinist消息,快消品巨頭百事可樂公司最近與PayPal和Venmo一起宣布了一項新的獎勵計劃,名為Pepcoin。Pepcoin的名字誤導了很多人,尤其是在區塊鏈領域。但事實上,該公司似乎只是通過在名稱中添加“ coin”一詞來帶動流行的加密貨幣現象,以期吸引那些精通技術的年輕人口。[2019/10/18]
那EVM中能否直接增加一個特性,讓合約間的調用可以把用戶身份直接帶過去?這個技術上是可以實現的,但EVM中支持動態調用,可以調用任意地址的合約,讓這種操作的風險變的很難度量,同時EVM的狀態變更對用戶和錢包都不友好,錢包很難通過狀態變化對用戶進行提示。??
而Move中解決這個安全挑戰有兩個方法:?
1.在預執行合約的時候把合約執行后的狀態變更提示給用戶,讓用戶可以知道這個交易操作了自己的哪些重要資產,以及執行后的結果。這個方法StarMask中已經實現,參看鏈接以及附圖https://starcoin.medium.com/starmask-v4-6-
2.可能有部分合約可以通過設置條件,讓一部分用戶預執行的時候無法發現狀態變更。@0xmetazen的分析https://twitter.com/0xmetazen/status/1582581013972414465,但Move中沒有動態調用,合約在部署時,它的執行邏輯就是確定的。可以通過靜態分析字節碼,得到合約所有可能路徑上操作的狀態,在區塊瀏覽器或錢包里提示給用戶。??
EVM和Move的兩種方案,帶來的安全風險是不一樣的。Approve方案的安全風險是把一個即時的授權變為長期授權,它的風險不是立刻發生的,比如合約漏洞未被發現或者惡意合約放長線釣大魚。而一旦發生,用戶往往很被動,很多用戶可能都忘記授權過哪些合約了。?
而Move的方案給了合約更大的自由權,遇到惡意合約會有較大風險,但這種風險是即刻發生的,是可以通過技術手段來檢測的。最壞的情況,至少前面沖的快到人趟坑了,可以給后面的人警示,惡意合約會快速暴露出來。
最后,世上沒有銀彈,不可能靠用了某種技術就解決了所有安全問題,需要鏈,工具,用戶一起努力。?
對Move用戶的安全建議:?
1.選用狀態變更提示更完備的錢包,并嘗試理解錢包的提示。?
2.不要隨意和來源未知或未開源的DApp交互。?
3.如果做不到上面兩點,可以等別人先趟一下坑。
Move在安全方面的挑戰以及改進方案不僅僅是這些,我會在《為什么是Move》系列的安全篇里詳述,想了解的朋友可以關注一下。??
Tags:MOVMOVEOINCOINmovez幣幣圈網MoveCashPulseApeCoinK Bitcoin Bond
整理:餅干,ChainCatcher“過去24小時都發生了哪些重要事件”?1、Solend創始人:AlamedaResearch曾在SolendIDO中操控代幣價格Solana借貸項目Solen.
1900/1/1 0:00:00整理:餅干,鏈捕手 “過去24小時都發生了哪些重要事件”?1、pGALA合約遭到攻擊致GALA短時下跌超20%.
1900/1/1 0:00:00作者:Dr.Hsu GameFi一直是Web3生態備受關注的賽道。生態的成熟度和游戲的可玩性,對GameFi的成敗起到關鍵性的作用.
1900/1/1 0:00:00整理:flowie,ChainCatcher?“過去24小時都發生了哪些重要事件”?1、幣安正成立一個行業復蘇基金.
1900/1/1 0:00:00作者:隔夜的粥,DeFi之道近期人工智能生成內容爆火的背景下,Crypto市場顯得頗有些涼意,于是便有了如下的一張meme圖:暫且不論這種趨勢是否會持續,關于目前的AIGC.
1900/1/1 0:00:00作者:區塊律動BlockBeats11月24日,以太坊基礎設施開發公司ConsenSys于11月23日在官網上更新了其隱私政策.
1900/1/1 0:00:00