收藏本站 网站导航 开放平台 Tuesday, May 14, 2024 星期二
  • 微信

PayPal稳定币具有钱包冻结和擦除功能

来源 中金网 08-09 12:27
摘要: 对刚刚推出的 PayPal 稳定币 PYUSD 智能合约的分析揭示了所谓的“中心化攻击向量”的存在。 聪明的

  对刚刚推出的 PayPal 稳定币 PYUSD 智能合约的分析揭示了所谓的“中心化攻击向量”的存在。

  智能合约安全审计师 Pashov 在最近的 Twitter 中指出 绪 PYUSD 的合约具有“资产保护”作用。 它可以在两次交易中擦除您的余额:首先是“冻结”,然后是“擦除FrozenAddress”。

  这被视为攻击媒介的原因是,这种功能会增加潜在攻击者在设法访问它时可能造成的损害。

  Pashov 指出,PYUSD 有六位小数,并使用 Solidity 编译器版本 0.4.24。 更有趣的是,这个智能合约并没有“按照标准期望的那样实现 EIP-712”。

  什么是 EIP-712

  以太坊改进提案 712 或 EIP-712 是 2017 年的一项标准,允许 MetaMask 等以太坊钱包在签名提示中显示结构化且可读的数据,而不仅仅是十六进制字符串。 这使用户可以更轻松地验证他们正在签名的实际数据,从而提高安全性和可用性。

  为了实现 EIP-712,开发人员需要定义数据结构并创建域分隔符以防止 dapp 之间的签名冲突。 他们还需要为其 dapp 编写签名代码以与用户的钱包交互,编写合约代码来散列数据结构,并使用 ecrecover 验证链上签名。 总体而言,EIP-712 可以让用户更好地了解他们正在签名的内容并防止网络钓鱼攻击。

  Ecrecover 是 Solidity 中的 EVM 预编译,允许合约验证链下数据的签名。 它采用哈希值和由 v、r 和 s 组成的椭圆曲线签名,并返回用于签署数据的以太坊地址,验证签名是否有效。 这允许构建元交易和许可令牌等用例。

  签名数据有不同的标准,例如 eth_sign、personal_sign 和 EIP-712。 EIP-712 是合约接受签名数据的推荐方式,因为它可以防止误用和重放攻击。 它涉及对特定合约数据(例如链 ID)以及消息数据本身进行哈希处理。 OpenZeppelin 合约提供 ecrecover 和 EIP-712 签名的安全实现。 总体而言,ecrecover 使合约能够以加密方式验证来自链下来源的签名数据。

  对于那些希望资产完全由所有者控制的加密货币领域的人来说,冻结和清除余额功能可能会感到惊讶。

  尽管如此,基于智能合约的代币已经允许此类功能有一段时间了,这些功能是中心化稳定币的典型功能。

  “新闻快讯:USDT 和 USDC 也有类似的攻击向量。 我以为这可能会有所不同,但事实并非如此,”帕绍夫 评论.

  新闻快讯:USDT 和 USDC 也有类似的攻击向量。 我以为这可能会有所不同,但事实并非如此。

  — 帕绍夫 (@pashovkrum) 7年2023月XNUMX日

免责声明:中金网发布此信息目的在于传播更多信息,与本网站立场无关。中金网不保证该信息的准确性、真实性、完整性、有效性等。相关信息并未经过本网站证实,不构成任何投资建议,据此操作,风险自担。