月亮链 月亮链
Ctrl+D收藏月亮链
首页 > DOT > 正文

APP:浅析Move语言背后的设计思想:“不授权”到底安不安全?_Dappatoz

作者:

时间:1900/1/1 0:00:00

作者:@jolestar

来源:《「不授权」到底安全吗:Move背后的设计思想》

最近关于用户和Move智能合约交互,不需要授权(Approve)是更安全还是更不安全的争论很多,这里尝试用通俗的方式来解释一下二者背后的区别以及Move这样设计背后的思想。

我们先理解一下用户和智能合约交互的方式。当我们签了一个交易,去调用一个链上的智能合约,就好比从物理世界进入了一个智能合约的数字世界,我们在这个数字世界有一个分身,而这个分身做什么,是智能合约定义的。

在EVM中,每个合约都相当于一个独立的小世界,分身进入这个世界后,只能操作用户在当前合约世界中的状态。

安全团队:WEEB遭受闪电贷攻击,黑客获利约16ETH:金色财经报道,据区块链安全审计公司Beosin旗下Beosin EagleEye安全风险监控、预警与阻断平台监测显示,WEEB项目遭受价格操控攻击(0xcb58fb952914896b35d909136b9f719b71fc8bc60b59853459fc2476d4369c3a),黑客利用WEEB代币中的performUpkeep函数,将pair中大量WEEB代币的余额烧毁,从而提高WEEB价格,获利16ETH。目前资金仍在黑客地址中(0xe9ba23db4cab47621d72b7a51ef166992a025b16),Beosin Trace将持续对资金流向进行监控。[2023/5/10 14:53:59]

比如进入swap世界,想用自己的usdt交换其他资产,而usdt存在定义usdt的那个合约世界,没办法直接在swap中以自己的身份从usdt合约里提取资产。于是用户只能先去usdt的合约世界执行approve,告诉usdt的合约,swap可以代自己提取自己的资产,然后再进入swap世界进行操作。

以太坊Layer2上总锁仓量为62.14亿美元:金色财经报道,L2BEAT数据显示,截至目前,以太坊Layer2上总锁仓量为62.14亿美元,近7日跌0.87%。其中锁仓量最高的为扩容方案Arbitrum One,约33.37亿美元,占比53.70%,其次是Optimism,锁仓量18.95亿美元,占比30.50%。[2023/2/27 12:30:47]

操作完成之后,再去usdt那边取消授权。但这里的approve和revoke操作都需要独立的交易,用户往往为了节省gas费用,不进行revoke,结果如果swap合约出安全问题,用户的资产就可能在不知情的情况下被盗取。

游戏化应用程序解决方案MetaFab宣布加入Arbitrum生态:1月10日消息,游戏化应用程序解决方案MetaFab发文,宣布加入Arbitrum生态。通过MetaFab,游戏开发者可以简化在Arbitrum One上启动游戏基础设施的流程,并以零加密摩擦吸引主流游戏玩家。[2023/1/10 11:04:39]

而在Move中,所有的合约都在一个大的数字世界运行。用户的数字分身可以自由的在合约间移动,执行任何操作,同时用户的状态存在用户自己的存储空间。

用户从swap入口进入,从自己的余额提取usdt,交换,存储可以在同一个交易里原子化完成。这种模式给合约带来更自由的组合模式,可以玩出很多EVM上很难实现的组合玩法,这也是EVM上的账户抽象方案想实现的模式。当然,这也带来了新的安全挑战。

DappRadar:Decentraland日活用户经修订后仅为650人:10月18日消息,据DappRadar修订后的数据显示,Decentraland每日的唯一活跃钱包数量(UAW),即与dApp交互的“活跃用户”数量仅为650。过去的30天里,Decentraland平台上共有7,490名独立用户,总交易量约为11万美元。链上数据显示,dApp的智能合约资产余额为2880万美元。DappRadar表示:DappRadar工具提示将UAW或用户数据描述为“与dApp的智能合约交互的唯一钱包地址数”。因此,要被DappRadar统计,用户需要进行区块链交易。此前Decentraland团队表示计划重新统计Decentraland用户数据,将追踪的智能合约数量从13个扩充至3000个以上。[2022/10/18 17:30:53]

那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》系列的安全篇里详述,想了解的朋友可以关注一下。

标签:APPMOVMOVEDAPWrapped FCTMOVEY价格movez币值得投资吗Dappatoz

DOT热门资讯
区块链:高盛如何布局区块链_BLOCK

作者:ChenglinPua随着区块链技术的不断发展,区块链对金融领域造成了很大的影响和冲击。在早期,传统银行例如高盛、摩根大通等都不看好区块链的前景.

1900/1/1 0:00:00
CAD:各自精彩:Aptos、Sui、Caduceus三大公链新势力横评_DUC

原文标题:《三大公链新贵对比:Aptos、Sui、Caduceus如何蓄力下一个市场热点?》原文作者:WebX实验室本文来自微信公众号:WebX实验室在越来越快的行业周期循环中.

1900/1/1 0:00:00
ENT:获3000万美元融资 Scroll Pre-Alpha 白名单及交互教程_Vent Finance

注意:为避免风险!所有链接用没有资产的测试钱包链接!用没有资产的钱包领链接!用没有资产的钱包领链接!项目简介Scroll是一个基于zk-rollup技术的以太坊扩容网络.

1900/1/1 0:00:00
比特币:BTC现货ETF频频遭拒 复盘BTC期货ETF为何总能通过_SBTC价格

2022年10月12日,SEC再次否决了WisdomTree的比特币现货ETF发行申请,而不久前Teucrium的比特币期货ETF却顺利上市.

1900/1/1 0:00:00
比特币:代币发行的三个最新趋势_BTC

代币设计的创新落后于更大的生态系统;研究人员将重点一直放在扩展、智能合约优化和其他更多技术主题上,而代币设计似乎是事后才想到的.

1900/1/1 0:00:00
EVE:Vitalik:探索公共物品资金分配优先次序-Revenue-Evil 曲线_GREV2

公共物品在任何大规模生态系统中都是一个非常重要的话题,但通常也是一个难以定义的话题。这里有三种不同的定义:经济学家:非排他性和非竞争性物品,这两个技术术语合在一起意味着很难通过私有财产和基于市场.

1900/1/1 0:00:00