ERC20 无限授权 方便自己也方便黑客 有没有解决方案?

随着 DeFi 的火爆,一般的区块链老手用户肯定不止一次对 DeFi 项目进行授权了,每当使用一个新的 DApp,都需要授权这个 DApp 花费你的代币。除了流程繁琐之外,每次授权都还要支付不菲的手续费。很多用户为了省钱省事,每次授权都是提供无限期授权,结果不知道哪天,突然发现自己的钱被人转走了,而原因并不是因为私钥被盗,而是因为图方便给 DeFi 合约进行了无限授权,为什么会有无限授权?有没有解决方案?

为什么要有 ERC20 授权?

有了以太坊上的原生代币 ETH,你就可以将 ETH 发送至该智能合约,同时调用智能合约功能。这是通过所谓的可支付函数(payable funtion)实现的。但是,由于 ERC20 代币本身就是智能合约,以太坊无法通过直接将智能合约代币发送到智能合约来调用其函数。原因是这个转账是在 ERC20 代币合约上发生的,不在 DeFi 合约。

2022年1月加密交易所网络流量环比下跌8.3%:金色财经报道,根据 The Block Research 收集的数据,截至 1 月份,加密货币交易所的网络流量连续第三个月下降。2022 年 1 月份加密货币交易所的网络流量达到 4.276 亿次,比 2021 年 12 月份的网络流量低 8.3%,12月网络流量又比 2021 年 11 月低 14.7%。The Block Research 的数据进一步显示,Binance 占到 1 月份交易所网络流量的大部分,为 33.2%。 Coinbase 和 Bybit 分别以 18.1% 和 6.6% 紧随其后。[2022/2/9 9:39:27]

那么如果想要合约来调用 ERC20 应该怎么办?ERC20 标准中,提供了一个让智能合约使用 transferFrom() 函数代表用户转移代币的方案。为了激活这个功能,需要用户授权智能合约转移代币的权限。

国家区块链漏洞库《区块链漏洞定级细则》发布:9月27日消息,国家互联网应急中心联合长亭科技、链安科技、安比实验室和慢雾科技四家安全厂商,在CVSS2.0漏洞评分系统基础上,结合大量真实区块链漏洞案例,共同起草国家区块链漏洞库《区块链漏洞定级细则》,现向社会发布。《细则》整体分为《公链系统漏洞定级细则》、《联盟链系统漏洞定级细则》、《智能合约漏洞定级细则》、《外围系统漏洞定级细则》,主要依据“危害程度”和“利用难度”等方面分析,将漏洞分为高、中、低三个威胁等级,且每种危害和难度的描述中都罗列了非常详细的参考条目,基本涵盖了区块链领域可能遇到的大部分漏洞情况,可以帮助使用者快速定位和分析漏洞。同时依托 CVSS2.0,力争实现与传统基础领域漏洞规则的互通,从大网络安全的角度打通区块链新兴领域与传统领域对于漏洞的认知和定义。(国家区块链漏洞库官网)[2020/9/27]

授权后,用户就可以将代币“存入”智能合约,进行 DeFi 应用的使用了。

比如,用户将 USDT “存入” Aave 来赚取利息,首先需要授权 Aave 合约可以从用户的钱包中取出 USDT。然后再调用 Aave 合约函数,指定想要存入 USDT 的数量。然后,Aave 合约使用 transferFrom() 函数从你的钱包中取出相应数量的 USDT 完成转账。

无限 ERC20 授权的问题

授权使用 DeFi 时,你就可以选择将这个币种单次授权,即仅同意本次转账,或者进行无限授权,让合约能够在未来不限次的有权操作你钱包内的这种代币。

在目前 DeFi 依托的以太坊网络底层不完善的前提下,对 DeFi 合约进行无限授权,是能有有效提高 DeFi 使用体验的一种方式。避免了每次使用前都要进行授权的麻烦,以及每次交易前授权造成的 GAS 消耗。设置无限授权后,用户只需要同意一次,之后存款时就不会再重复这一过程。

但是,该设置存在很大的弊端。因为用户授予的,不仅仅是操作转入合约部分代币的权利,而是这个钱包中这个代币的支配权。

也就是说一旦合约留有后门,或者遭到黑客攻击,那么不仅是存入 DeFi 项目中的代币,我们自身钱包里的相应代币也将受到威胁。而由于这个授权是由自身私钥签名授权的,因此一旦遭到攻击,即便使用冷钱包,也不能防止自身财产被盗。

怎样防范风险?

1. 对于不交易的持仓资产可以选择取消授权

现在 DeFi 项目如同雨后春笋,不知不觉可能就会授权很多项目,这就加大了被盗风险,我们可以在 DeBank 上通过查询自身钱包地址的方式,查询授权的合约,然后及时取消高风险项目的授权。

2. 分号使用,交易完及时转出资产

即便是再靠谱的项目,也都存在被攻击的可能,因此,不要把鸡蛋放到同一个篮子里更加重要。

3. 考虑其他项目

既然以太坊底层无法改变,那么其他拥有灵活底层的公链,就成为了后续可以关注的对象。

比如推出了多原生代币功能的 QuarkChain。在 QuarkChain 主网中,多原生代币 (Multinative token) 在 QuarkChain 系统中和 QKC 基本是一样的地位,可以调用合约、跨链、在满足某些情况的条件下可以支付交易手续费,除了不能参与 QKC 网络治理,原生代币可以实现 QKC 所有的功能,包括跨链转账。大部分 Defi 面临的非原生资产不便利性问题都可以解决。而未来合约中,原生代币的功能,将做到和 QKC 完全一致,消除多原生代币应用的最后一层障碍。也就是说不需要授权,也就避免了无限授权的问题。

结语

代币授权存在很大的安全隐患。如果我们想要改善密码学货币应用的用户体验和安全性,我们显然需要改进代币授权功能。目前,最有潜力的就是多原生代币功能从底层解决授权问题带来的安全风险,不过目前 QuarkChain 公链上 DeFi 项目仍然较少,相信后续会有更大的爆发。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

链链资讯

USDT金色观察 | 如何参加DeFi融资?

对于散户投资者而言,DeFi融资中充满了各种早期投资机会。 今年围绕DeFi的融资活动很多。 最近a16z和Polychain领投了dYdX的C轮融资,一共筹集了6500万美元。 Balancer Labs通过Blockchain Capital牵头的2450万美元融资实现了资金多元化,后者刚刚也筹得了3亿美元融资。

Luna金色观察 | 比特币“四面楚歌” 多位亿万富翁仍押注比特币

普遍观点认为,本轮加密资产牛市根本推送原因是全球量化宽松,但由于目前各国货币政策预期收紧,短期利空消息不断,加密市场接连下挫,比特币“四面楚歌”。尽管如此,近一个月以来,多名亿万富翁的目光仍关注在比特币市场上,相关资产配置中也不乏押注比特币者。

以太坊金色早报 | 成都将发放1200万元数字人民币出行礼包

▌成都将向市民发放价值1200万元的数字人民币公共交通出行礼包 7月2日消息,记者从成都市地方金融监督管理局获悉,成都将举行“绿色出行 低碳一夏”数字人民币公共交通试点测试活动,将面向市民发放价值1200万元的数字人民币公共交通出行礼包,共计10万份。 此次活动由成都市人民政府、中国人民银行成都分行联合主办,活动报名通道将于7月3日正式开启。

[0:15ms0-4:152ms