主页 > 华为手机安装不了imtoken > ERC20无限授权:便捷与安全的较量
ERC20无限授权:便捷与安全的较量
随着 DeFi 的普及,区块链用户现在需要对 DeFi 项目进行多次授权。 每当用户想要使用新的 DApp 时,你需要授权 DApp 使用你的代币。
除了流程繁琐之外,每次授权还需要支付大量费用。 为了节省金钱和时间,许多用户在需要时选择无限许可。
所以,他们不知道什么时候突然发现自己的代币被转移了。 原因不是私钥被盗,而是因为私钥赋予了 DeFi 合约无限的权限。 为什么有无限许可? 有什么解决办法吗?
为什么会有ERC20授权?
使用以太坊上的原生代币,您可以将 ETH 发送到智能合约并同时调用它。 这是通过所谓的授权功能实现的。
但是,由于ERC20代币本身就是一个智能合约,以太坊不能通过发送智能合约代币给智能合约来直接调用它。 原因是交易发生在 ERC20 代币合约上,而不是 DeFi 合约上。
那么如果合约需要调用ERC20呢? 在ERC20标准中,为智能合约提供了一种解决方案,即使用transferFrom()函数代用户转账。 为了激活此功能,用户需要授权智能合约执行此操作。
一旦获得授权,用户可以将代币“存入”智能合约以使用 DeFi 应用程序。
例如erc20是以太坊链吗,如果用户将 USDT 存入 Aave 以赚取利息,他们首先需要授权 Aave 合约从用户的钱包中提取 USDT。
然后调用Aave合约函数指定用户要存入的USDT数量。 然后,Aave 合约使用 transferFrom() 函数从您的钱包中提取相应数量的 USDT 以完成交易。
无限ERC20授权的问题
在授权使用 DeFi 时,你可以选择授权一次,即只同意本次交易,也可以选择无限次,让合约以后无限次地操作你钱包中的这个 token。
目前,DeFi 所依赖的以太坊基础设施并不完善。 因此,无限授权DeFi合约是提升DeFi体验的有效途径。
避免了每次使用前授权的麻烦,以及每次交易前授权所带来的GAS费用的消耗。 设置无限授权后,用户只需同意一次,避免后续入金重复流程。
然而,这种设置有明显的缺点。 因为用户授予的不仅仅是对转入合约的代币的操作权,还有对钱包中代币的控制权。
也就是说,一旦合约被黑,不仅DeFi项目中存入的代币,我们自己钱包中的代币也会受到威胁。
因为这个授权是通过自己的私钥签名授权的,一旦被攻击,即使使用冷钱包也无法防止被盗。
如何预防?
1、取消未交易资产授权
现在DeFi项目如雨后春笋般涌现,很多项目可能在不知情的情况下被授权,增加了被盗的风险。 我们可以通过查询自己的钱包地址来查询DeBank上的授权合约,然后取消对高风险物品的授权。
2. 多账户使用,交易后及时划转资产
即使是最可靠的项目也可能受到攻击。 因此,更重要的是不要把所有的鸡蛋都放在一个篮子里。
3.考虑其他平台
由于以太坊基础设施无法改变,其他基础设施灵活的公链将成为未来的选择。
例如,具有多原生代币功能的 QuarkChain 将是一个替代方案。 多个原生代币在QuarkChain系统中的地位与QKC相同。
他们可以在一定条件下调用合约、跨链和支付交易费用。
多种原生代币除了可以参与QKC网络治理外,还可以实现QKC的所有功能,包括跨链转账。
大部分 Defi 面临的非原生资产不便问题都可以得到解决。 在未来的合约中,多原生代币的功能将与QKC完全一致,扫除多原生代币应用的最后一道障碍。 也就是说不需要授权,避免了无限授权的问题。
综上所述
令牌授权存在很大的安全隐患。 如果要提高加密货币应用的用户体验和安全性,显然有必要改进令牌授权功能。
目前erc20是以太坊链吗,多原生代币功能最有潜力从根源上解决安全问题。 但目前基于QuarkChain的DeFi项目还很少,相信未来会有大爆发。