在去中心化应用(DApp)的世界中,「DApp权限过度授予」是一个重要且引人关注的问题。它指的是用户在使用DApp时,可能不经意或不完全理解的情况下给予了应用超出其实际需要的广泛访问权限。这种过度授权不仅可能威胁到用户的资产安全,也对隐私保护构成了潜在风险。作为领先的数字钱包服务商,imToken对此现象有着深刻的认识并采取了一系列积极措施来应对,致力于保障用户的权益和资产安全。接下来我们将详细了解imToken如何通过技术创新和严谨的权限管理机制来防止DApp过度授权的发生。
什么是「DApp 过度授权」?imToken目前是如何应对的?用户与 DApp 进行涉及数字资产的交互时,首先需要授权(approve),为什么要授权操作呢?我们举一个典型的案例 :
Alice 希望在 Compound 上存款 100 Dai,获得不错的收益。
那么 Alice 需要将 Dai 授权给 Compound 借贷合约,让借贷合约拥有转移 Alice Dai 资产的能力,以便后续可以完成 Dai 与 cDai(Compound 借贷凭证)的原子兑换。
DApp 开发者为了避免用户反复授权,一般会默认设置授权最大数量的代币给智能合约。但这样的处理也明显暴露风险,如果智能合约出现漏洞或合约管理员作恶,那么用户的代币将存在丢失的风险,这就是「DApp 过度授权」带来的问题。
「DApp 过度授权」是技术社区存在已久的公开问题,而当前 DeFi 的兴起改变了安全和易用间的平衡,对此我们需要重新考虑这个问题。而想要解决它,需要钱包, DApp 开发者与用户多方参与,共同改进。
首先,我们会从源头掐断恶意转移用户资产行为发生的可能。
DApp 浏览器是一个开放的浏览器,用户可以直接访问上架应用,也可以输入 URL 访问任意 DApp。我们会针对存在潜在问题的应用给予风险提示,以免用户上当受骗。
其次,当 DApp 请求用户钱包地址时需要经过用户授权确认 ,以免用户地址隐私泄漏,让有问题的 DApp 有机可乘。
最后,当 DApp 要求用户代币授权时,imToken 也会给予明确的授权信息,以便用户清晰了解授权上下文,甚至进一步编辑授权数量,降低授权风险。
注:授权功能将于近期上线
此外,imToken 还在 DApp 浏览器中提供了代币授权管理的相关 DApp,打开 DApp 浏览器,在「工具」类目下找到「Approved Zone」,点击进入即可轻松管理已授权的第三方 DApp 权限,随时关闭不再使用的应用权限,保护自己的资产安全。
近期 imToken 除了以上的处理方案,也会针对授权管理问题进行更深入地优化。将通过支持批量签名功能,来鼓励 DApp 通过按需授权的方法调用合约。
关于批量签名,我们即将上线的 ETH 加油站就可以帮助用户通过一次「交易确认」完成授权和代币兑换,避免过度授权的问题。
imToken 非常乐意与大家一起探讨,寻求更好的解决方案。如果你有任何想法,欢迎跟我们沟通。