链资讯 链资讯
Ctrl+D收藏链资讯
首页 > ADA > 正文

以太坊:对 EIP-3074 的批评以及一种简单的替代_CON

作者:

时间:

对于开发者来说,AUTH/AUTHCALL?机制非常具有吸引力。它可以让人们创建调用者来实现不同的批量处理策略、gas抽象模型和复杂的账户抽象方法等。

这种灵活性源于这一机制赋予了开发者极大的自由。AUTH/AUTHCALL?机制不要求开发者遵循特定的模式,而是要求用户签署一个?commit?哈希值,让开发者基于?commit?自行设置限制。

然而,这种灵活性是以牺牲安全性为代价的。在本文中,我想要介绍一种更简单的替代方案。这个方案具备?AUTH/AUTHCALL?机制的绝大多数优点,但是风险远低于后者。

为什么签署一个AUTH?commit?所带来的风险高于签署一个与存在漏洞/恶意合约相关的事务?

用户在签署与合约相关的事务时,所承担的风险是已知的,即,可能会损失在该合约控制范围内的资产。比方说,用户给一个ERC20合约签署了批准事务,授权恶意的DEX合约。这个恶意DEX合约就可以提走用户在ERC20合约中的全部余额。但是,它无法从该用户的其它ERC20合约中提走代币,除非得到该用户的批准。它也不能代表用户进行其它操作,因为这也需要专门获得用户的批准。

OpenZeppelin 针对 Solidity 0.8 正式发布 OpenZeppelin Contracts 4.0 版:以太坊技术服务商 OpenZeppelin 针对智能合约编程语言 Solidity 0.8 版本 正式发布 OpenZeppelin Contracts 4.0 版本,更新内容包括重组存储库、存储优化、删除了存储变量和内部函数并涵盖decimals函数可实现设置保留小数的位数、在基本合约中删除了对 ERC721 代币的可枚举性并将其作为可选扩展、取消与 GSNv1 集成,并开始增加对 GSNv2 (元交易,模块化的系统)的支持。在未来几日内,OpenZeppelin 将提供一个可使用 OpenZeppelin Contracts 快速启动项目的工具。[2021/3/25 19:16:33]

相较之下,EIP3074不仅要求用户签署“空白支票”,而且假设调用者是诚实且没有漏洞的。一个恶意/存在漏洞的调用者可以代表用户执行任何操作?——访问用户持有的资产,代表用户进行投票,控制用户所有的合约等。

动态 | 慢雾发布针对 EOS 交易 hard_fail 状态的新型攻击说明:据 IMEOS 报道,慢雾发文解析了 hard_fail 状态攻击,根据其的情报捕获与分析,慢雾意识到针对 EOS hard_faild 状态的新型攻击手法可能会造成更大范围的影响,本次手法成因为项目方未对交易状态进行严格且完备的检验导致攻击发生,属于“假充值”攻击类型的一种。在此,慢雾安全团队建议交易所和钱包要对发送给自己的转账交易在不可逆的区块前提下检测以下几点:1. 判断 status 是否为 executed2. 判断 action 是否为 transfer3. 判断合约账号是否为 eosio.token 或其它 token 的官方合约4. 判断代币名称及精度5. 判断金额6. 判断 to 是否是自己平台的充币账号补充说明:本次攻击可绕过节点 read-only 模式,开启 read-only 模式仍然会受到攻击。因为交易的状态为:未执行->已经执行但执行失败,并不是回滚所以即使开启了 read-only 模式,依然会受到攻击。[2019/3/12]

更糟糕的是,调用者随时都可以作恶,因为nonce实现是由调用者控制的。存在漏洞/恶意的nonce逻辑实现可以重放用户过去的事务。如果?commit?验证的其它部分的逻辑也存在漏洞,调用者就可以利用这个nonce逻辑实现来代表用户执行任何操作。即使漏洞被发现,用户也无法撤回空白支票。这个外部账户已经被永久入侵了。

声音 | CNBC主持人Ran NeuNer:股票市场的修正或让基金经理对 BTC感兴趣:CNBC主持人 Ran NeuNer发推称,股票市场的修正对BTC来说应该是个好兆头。在某个阶段,基金经理寻找创造性的地方,以获得股票、债券和黄金之外的回报。考虑到股票市场正在经历大规模修正,它可能会让 BTC看起来很便宜,对他们来说很有吸引力。[2018/12/25]

编写一个正确的调用者程序很难,而且我们几乎可以肯定,调用者会不定期出现错误,从?EIP3074最后列出的调用者应该警惕的检查/漏洞/情况非详尽清单中可见一斑。这份清单势必会变得越来越长,很可能伴随着痛苦的发现过程。

此外,恶意参与者可以编写一个看似无害的调用者程序,但是故意留下一个细微的漏洞,等到大量外部账户授权该调用者之后才会被攻击者利用。

如果攻击者没有直接或立即利用这个漏洞从用户那里窃取资金,这个漏洞可能很长时间都不会被发现。

动态 | Huobi Wallet上增加对 TRON (TRX):据Sludgefeed消息,Huobi Global已经在 Huobi Wallet上增加了对TRON(TRX)的支持,这是一个以安全为中心的移动钱包,允许用户管理自己的私钥。TRX现在加入BTC、BCH、USDT、ETH、EOS、ETC、LTC和所有ERC-20令牌,包括稳定币USDT、PAX、TUSD、USDC和GUSD。Huobi还透露,它将推出一项TRX赏金计划,以激励用户存储他们的硬币。[2018/11/21]

治理劫持示例

恶意去中心化交易所EveSwap为其用户编写了一个调用者程序。这个调用者程序通过空投EVE代币来为用户提供gas资助,并批量处理用户的批准和转账事务。

EveSwap的调用者程序看似无害,而且永远不会窃取用户的代币,因为这样马上就会露馅。

LCEX今日10:00开放ABT/USDT交易对 开盘涨幅1.39%:据LCEX行情显示,ABT已于今日10:00开放交易,ABT开盘价1.06美元,最高涨幅1.39%;现价为1.04美元,跌幅1.88%。此外,LCEX平台币LT当前价格为3.62美元,昨日每个LT的分红额度约为0.3元。[2018/5/16]

用户很开心。交易都成功了,交易费也很便宜。几个月来平安无事。

然而,每当有人使用EveSwap交易AliceSwap的治理代币ALI时,会自动将用户的AliceSwap投票权委托给EveSwap。

一旦授权人数达到某个阈值,EveSwap就会通过治理提案劫持AliceSwap。

EveSwap用户不太可能注意到这个过程,因为交易总是成功的,但是最终会给AliceSwap带来毁灭性的打击。

跨链重放示例

EIP3074合理地建议?commit?应该包含?chainid。但是,这是由调用者,而非协议执行的。在另一条链上有着相同地址的调用者可能会跳过该检查。

EveSwap在兼容EVM的BobSpongeChain上运行,后者支持EIP3074。EveSwap在BobSpongeChain上部署了一个诚实的调用者。

用户使用该调用者在BobSpongeChain上交易,然后使用桥将资产转移到以太坊上。

EveSwap使用同一个部署密钥在以太坊上部署了另一个地址相同的调用者。这个在以太坊上的调用者不会检查?commit,只会检查?ownerOnly,并充当其所有者的通用AUTH/AUTHCALL代理。

这样一来,EveSwap就可以劫持用户在以太坊上的外部账户并卷走他们的资产了。

用户从未在以太坊上交易过,运行在BobSpongeChain上的调用者程序又经过了严格的安全审查。尽管如此,用户还是丢失了全部资产。

以太坊通过EIP155的重放保护来防范这种情况。AUTHCALL没有重放保护。由于所有?commit?检查都交给调用者完成,我们失去了以太坊提供的一切交易保护。攻击是在所难免的,因为保护措施很随意。如果要接受EIP3074,AUTH消息必须明确包含?chainid,而非将其作为?commit?的一部分。

我们还能采取什么别的手段?

我的提议是实现一个更明确的机制,在协议层面强制规定?commit?的含义。commit结构将是类型化的,钱包会以用户可读的形式将commit呈现出来。用户可以确切地知道事务是什么样子的,并确信这个事务不会在任何链上重放,无需依赖于调用者程序开发者的品行和能力。

一个可能的实现:

AUTH?将使用包含授权调用列表的类型化结构代替?commit?哈希值。每个调用都将指定{nonce,to,gas,calldata,value,chainid}。签名将被验证,整个授权调用列表将保存为?authorized_transactions?而非?authorized?地址变量。

AUTHCALL?将得到一个新的参数?index,该参数指向最后一个?AUTH?创建的列表中的地址。

用户地址的nonce将随?AUTHCALL?递增。nonce并非由调用者存储,而是实际的账户nonce。

利:

用户可以清楚地了解情况。

安全性由协议保障。

依然支持批处理和账户抽象。

弊:

nonce实现,不支持并行。

复杂调用者程序的事务处理起来很繁琐,因为用户必须查看并接受整个调用列表。

不同的实现可能支持不同的nonce方案。但是,无论我们使用什么机制,该机制必须由协议而非调用者执行。

无论如何都应该避免让复杂调用者执行大量用户调用。复杂操作应该作为普通的智能合约实现,而非尝试实现使用多个外部账户调用的算法。

替代方案:完全避免硬分叉

还有一个选择是完全避免AUTH机制,并通过?vbuterin?建议的另一种交易池来解决账户抽象和批量处理问题。

利:

无需硬分叉,可由智能合约和可以感知这些智能合约的节点支持。

可用于一切支持EIP3074的实现,而不会引入额外的风险。

弊:

不向后兼容已有的外部账户。用户需要部署一个合约钱包并将资产转移到该钱包内。

除非要求在不迁移的情况下支持已有的外部账户,否则这个选择看起来更安全。

标签:以太坊AUTHCONESWAP以太坊币最新价格走势图AUTH价格Continuum Worldtreeswap币前景

ADA热门资讯
BTC:金色趋势丨放大周期 比特币罕见买入机会到来?_FCBTC

目前BTC是否已经见牛市终极大顶?我们可以看看BTC长期走势,下方为对应的RSI曲线走势,研究可以看出,在BTC历史上前三轮牛市中,2011年、2013年和2017年牛市,每一轮牛市.

以太坊:ETH迎来伦敦硬分叉 矿工惨遭背刺 长期利好区块链行业_DGE

谈到ETH的伦敦硬分叉,就不得不提EIP-1559提案,然后我们再来详解伦敦硬分叉和其带来的影响.

BTC:layer2的新晋者们_Tornado Finance

比特币奠定了一个去中心化和点对点数字资产的基础,旨在用一种独特的经济安全模型来修复破损的国际货币体系,这种经济安全模型无国界、无需信任、不受审查.

SWAP:美国参议员警告加密货币风险并向SEC施压以加强监管_ETH

美国国会参议员伊丽莎白·沃伦(ElizabethWarren)周四警告称,“高度不透明和动荡”的加密货币市场给消费者和金融市场带来的风险越来越大,并抨击其缺乏监管是不可持续的.

RIO:晚间必读5篇 | DeFi正在吞噬传统金融_加密货币为什么有价值

1.金色深核|一些对蚂蚁链和BTN的“刨根问底”6月23日,也就是正好一周前,笔者参加了蚂蚁链的开发者大会,经过了演讲者的讲解和群访环节的对话沟通,笔者获得了较多信息.

区块链:2021Poriot高峰论坛(深圳站)圆满成功_NFT

2021年7月8日,由中矿实业集团主办,中云矿信息科技深圳集团有限公司承办,金色财经与币世界跟踪报道.