代币授权:密码学货币行业用户体验的最大障碍_APP:中币交易所app官网下载最新版本

如果你是DeFi深度用户,你肯定被这个繁琐的流程折磨过无数次了。每当你使用一个新的dApp,你都需要授权这个dApp花费你的代币。

Metamask?上的授权界面

跟传统金融行业类比一下,这个流程有点类似于办理直接借记,授权你的供电商每月从你的银行账户上扣除电费。

但是,与密码学货币行业不同的是,传统金融行业的直接借记业务只面向少数可信公司。这类公司不太会消费者,即使偶尔发生消费者的行为,消费者也可以提出异议,由银行充当调停者。密码学货币行业没有这类工具。一些dApp是由匿名开发者构建的,没有为受用户设立的争议机制。一旦在区块链上完成付款,就无法撤销。

代币授权是什么?它是如何运作的?

以太坊区块链上的大多数代币,如USDC和DAI,都采用ERC20标准。ERC20代币实际上是智能合约,包含不同的方法,如transferFrom和burn。用户调用这些方法,应用就会对代币做相应的操作。

Blur公布代币经济模型:51%分配给社区,核心贡献者、投资者和顾问分别获得29%、19%和1%:金色财经报道,Blur公布代币经济模型:BLUR代币用于社区治理,有权控制协议的价值累计和分配,治理权力还包括设置半年后的协议费用(最高2.5%),发放社区补助金。BLUR总供应量30亿枚,51%分配给社区,29%给过去和未来的核心贡献者(为期4年分配,在前4个月有转移额度释放),19%给投资者(为期4年分配,在前4个月有转移额度释放),1%给顾问(在4-5年分配,并有4-16个月的线性释放)。其中,分配给社区的51%中,3.6亿枚(12%)用于本次空投,剩余11.7亿枚(39%)可通过贡献者补助、社区倡议和激励计划分配给社区。这39%中的10%(1.17亿)已被确认用于下一次激励的发放。根据计划,这11.7亿枚将在第一年分配40%,第二年分配30%,第三年分配20%,第四年分配10%。[2023/2/15 12:07:37]

其中一种方法是approve。任何你想要使用的dApp都需要访问你的ERC20代币才能对其进行操作。例如,如果你想要在Aave中存入USDC,你首先需要授予AavedApp的智能合约访问USDC的权限,然后才能通过第二笔交易将USDC存入Aave。你可以在你的以太坊钱包用户界面上看到该授权。虽然授权可用量从理论上来说是灵活的,但是大多数dApp会默认要求无限量授权,以此简化用户体验,并尽可能减少用户使用该应用所需进行的交易次数。

跨链稳定币TSD遭恶意攻击,攻击者铸造118亿枚TSD代币并已全部出售:官方消息,ETH和BSC上的跨链稳定币True Seigniorage Dollar(TSD)表示,恶意攻击者利用TSD DAO在其账户中铸造118亿枚TSD代币,并全部在Pancakeswap出售。具体过程为,True Seigniorage Dollar表示,开发者帐户仅拥有9%的DAO,恶意攻击者低价积累逐渐逐步控制了33%的DAO,然后提出了一项实施方案并投了赞成票。在实施中,攻击者向mint添加代码,为自己铸造了118亿枚TSD。[2021/3/15 18:45:38]

这里存在的一个安全问题是,大多数用户认为他们的授权是针对某个交易,而且是限量的,但是在大多数情况下,用户实际上授予了dApp永久访问他们持有的某种代币的权限,而且是不限量的。因此,如果dApp出现安全问题或从一开始就是恶意的,攻击者就可以将滥用这种授权来盗取dApp用户持有的全部已授权代币,而无需经过用户同意。这种攻击可以在将来的任意时刻发起,即使是在用户使用过dApp的若干年后。

库币已于10月27日开放TOKO, BCD, DACC, DGB代币充提服务:据库币KuCoin交易所消息,库币已于10月27日完成TOKO, BCD, DACC, DGB 4种代币的钱包安全升级,并已开放充提服务。以上币种充值地址皆已更新为新地址,请勿向旧地址充值。[2020/10/28]

如何保护自己?好消息是,你可以保护自己免受这类威胁。在下一节中,我们将探讨的是,当你使用Metamask等标准以太坊钱包时,如何保障你的代币的安全性,并介绍了一些可以通过定制方法与dApp交互的钱包。

如何手动撤销代币授权

如果你想手动撤销授权,你需要使用TokenAllowanceChecker之类的工具。这类工具可以连接到你的钱包,并扫描整个区块链来寻找所有与你的以太坊地址有关的dApp授权。然后,你就可以编辑授权:将授权可用量设定为0从而取消授权,或者设定为你能接受的量。授权修改是通过与各个ERC20代币合约交互来实现的。

Opyn重启ERC20代币期权 推出YFI和WETH期权合约:链上期权平台Opyn宣布重启ERC20代币期权,同时推出了YFI和WETH两个全新的期权合约。Opyn称在过去两周已对协议进行压力测试,实施了强大的监控,并对内部测试流程进行了审查。[2020/8/22]

最好能够定期执行这一流程,取消你不打算再使用的dApp的授权。虽然这会花费你一点成本,因为每笔交易都需要在链上结算,但是从长期来看,你的钱包会给你应有的回报。

建议:如果你想要节省gas成本,可以下载GasStationNetwork扩展程序插件来在你的浏览器上追踪gas价格。你可以等到gas成本较低时再编辑你的授权可用量。

下一代以太坊钱包如何保护用户资金

一些已经推出的智能合约钱包也具备防护功能。智能合约钱包具有很强的灵活性,可以为用户提供定制化的智能合约交互方式。因此,许多智能合约钱包已实现定制化的授权方式,提高了用户体验和安全性。

动态 | Bi.cc上线币种CWV将进行代币销毁:据Bicc币交所消息称,其已获悉目前在Bicc上线的CWV代币,即将销毁40亿枚代币,占代币总量的40%,去年CWV曾进行过一次20亿枚的代币销毁,若此次代币销毁完成,销毁总量将达到发行总量的60%,根据统计,销毁总数与CWV基金会持有代币总数相同。目前CWV自昨日开始涨幅已达到400%。[2020/2/15]

原生整合:以Argent为例

例如,Argent是移动端以太坊钱包,已经将一些核心DeFi应用原生整合到应用中,以便用户进行借贷、赚取收益和交易。

这类钱包从智能合约层面整合了这些dApp,并确保用户在与这些dApp进行交互时,这些dApp只能得到实际请求量的授权。这一切都是在后台自动进行的,因此Argent用户甚至不知道授权交易的存在。

ArgentxWalletConnect

原生整合的一个缺点是不具备可扩展性,就像Argent一样。应用程序不可能原生整合每一个DeFi协议。对于大多数用户来说,Argent目前已经集成的应用可能足够了,但是重度DeFi用户使用每天都要使用十几个不同的dApp,不想局限于少数几个dApp。

一个名为WalletConnect的标准可以解决这个问题。WalletConnect可以让用户将他们的移动钱包连接到web端应用,并通过移动钱包安全地签署交易。Argent实现了WalletConnect整合定制化,让用户能够轻松设置授权可用量。此外,如果Argent用户改变了想法,可以在Argent应用中一键取消对某个dApp应用的授权。由于大多数dApp都支持WalletConnect,该功能可以让Argent用户在尽情探索整个DeFi领域时享受极高的安全性。

批量交易和dApp密钥:以Authereum为例

另一个能够优雅处理授权的智能合约钱包是Authereum。Authereum基于web端,而且大多数以太坊dApp应用都支持。另外,Authereum采用传统的电子邮件和密码登录,因此可以在几秒内将你的钱包连接到dApp,用户体验类似传统应用,而且不需要牺牲安全性。

当用户需要与dApp交互时,Authereum会生成一个新的临时dApp密钥,用来签署特定dApp的交易。该dApp密钥只能执行有限的功能,另外Authereum会执行一些完整性检查。如果发起请求的域不是创建dApp密钥的域,Authereum可以拦截该交易或通知用户。最后,这些dApp密钥可以随时从Authereum钱包中删除。

将多个交易打包到一个交易内还有很多其它优点。其中一个优点是高效——批处理交易可以节约成本和时间。以太坊上的每个普通转账交易都需要消耗21,000gas。如果用户一次性打包10个交易,总共可以节省189,000gas。另外,用户可以尝试通过发送连续交易来节省时间。

批处理交易的唯一问题是,dApp需要增加一些定制化的逻辑和UI流程来适当地处理交易。目前为止,只有1inch和Erasure等少数dApp支持这种交易模式,但是我们预期后续将有更多dApp支持该交易模式。

结论

代币授权存在很大的安全隐患。如果我们想要改善密码学货币应用的用户体验和安全性,我们显然需要改进代币授权功能。Authereum和Argent之类的钱包可以通过创新的方式让dApp交互更加安全。遗憾的是,在很多情况下,这类交易模式需要dApp开发者进行额外的工作,因此用户需要耐心等待一段时间。

无法采用上述解决方案的标准以太坊钱包至少应该让用户可以查看并编辑其dApp代币授权可用额。代币授权检查程序等工具很方便,但不是每个用户都知道它们。

原文链接:

https://cryptotesters.com/blog/token-allowances

作者:?EmanuelCoen

翻译&校对:闵敏?&阿剑

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

金宝趣谈

[0:0ms0-4:821ms