找到约 15 条结果

文章 UniswapV2 深入解析系列 01:架构概述与开发环境搭建

... 依赖库选择 我们使用 **OpenZeppelin** 而不是 solmate 作为 ERC20 的基础实现: ```solidity // 使用 OpenZeppelin 的成熟实现 import "@openzeppelin/contracts/token/ERC20/ERC20.sol"; ``` 选择理由: - OpenZeppelin 提供了业界标准的安全实现 - 完善...

作品 NFT 圣经

...社区的一员。 本文的作用是深入概述非同质化代币:ERC721 的技术剖析,NFT 的历史,关于 NFT 的常见误解,以及 NFT 市场的现状。我们希望它能给予刚进入其领域的新手或者那些已经了解 NFT 但是想要去更好了解其内部运作的细...

文章 现代稳定币 - M^0 是如何构建的

...理仅限于链外参与者验证链外操作。 [ \_imposePenaltyIfUndercollateralized()](https://github.com/m0-foundation/protocol/blob/b1c6e624ed09a9e28f4ae45cd87fda610fafe446/src/MinterGateway.sol#L792) 函数实施第二种惩罚类型 - “不足抵押的惩罚”。在这个步骤中,函...

文章 如何编写 NFT 智能合约

...发环境。现在安装OpenZeppelin合约包。这将使我们能够访问ERC721合约(NFT的标准),以及一些我们以后会遇到的辅助库: ``` npm install @openzeppelin/contracts ``` 如果我们要公开分享项目的代码(在GitHub这样的网站上),我们不...

文章 Ethereum.org 翻译马拉松回顾

...a:image/svg+xml,%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20version=%271.1%27%20width=%271064%27%20height=%27456%27/%3e)![Ethereum.org 翻译马拉松回顾](https://blog.ethereum.org/_next/image?url=%2Fimages%2Fposts%2Ftranslatathon-hero.png&w=3840&q=75) Ethereum.org 是一个教育网站和...

问题 使用create2得到目标合约地址,并加盐后,无法执行目标合约里的claim函数(nft mint),是不能写入,只能读吗?

...elin/contracts/utils/Base64.sol"; import "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol"; import "../interface/investFlowInterface.sol"; import "../interface/forumFlowNft.sol"; import "@openzeppelin/contracts/access/Ownable.sol"; contract forumFlowNftCopy is ERC72...

文章 每周以太坊进展2022/4/23

...录标准 * [EIP5006](https://github.com/ethereum/EIPs/pull/5006/files): ERC1155 使用权限扩展 * [EIP4931](https://github.com/ethereum/EIPs/pull/4931/files): 通用代币升级标准 ## Layer2 * [KuCoin](https://www.kucoin.com/news/en-optimism-is-now-supported-on-kucoin-20220416)为Opti...

文章 ETC白皮书学习

... 白皮书列出了数个以太坊潜在用例: * **Token 系统**(ERC-20) * **金融合约**(DeFi 的雏形) * **身份认证系统** * **DAO(去中心化组织)** * **去中心化市场** * **文件存储、声誉系统、去中心化治理** > 白皮书的预言在今天...

文章 以太坊签名解析

...来实现对合约的调用,即消息签名是data的一部分。 以ERC20-Permit举个例子 ``` function permit( address owner, address spender, uint256 value, uint256 deadline, uint8 v, bytes32 r, bytes32 s ) public vi...

文章 写一个 0 转账攻击合约

...license pragma solidity ^0.8.25; import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; contract ZeroTransferAttack { function bacthTransferFrom( address[] memory tokenList, address[] memory fromList, address[] memory toList ) external { for (ui...

文章 故技重施 —— Hundred Finance 被黑分析

...账是在代币转账之后,但市场中 USDC、wBTC、wETH 使用的是 ERC677 类型 token 合约,它是 ERC20 合约的一个扩展,兼容 ERC20 协议标准。ERC677 在 token 进行转账之后,会回调到目标合约的 onTokenTransfer 方法,这就使攻击者构造的恶意合约...

文章 在Astar中发现关键漏洞

...Astar的案例中,这条EVM链被称为Astar EVM。 ### Astar `assets-erc20` 预编译 Frontier实现了标准的以太坊预编译(如`ecrecover`和`modexp`),但也允许开发者实现自定义预编译。这些自定义预编译允许在Frontier EVM链上的用户和智能合约与相...

文章 从UniSwapX和AA出发冷静看待意图为中心的落地挑战

...ent。本文将从自身实现Solver的历程以及两大落地中的应用ERC4337和UniSwapX出发聊聊 Intent-centric 。 探究"intent"是什么?可以如此美好吗?有怎样的应用?落地的挑战是什么? ### 1、回顾Intent-centric 是什么? 正如账号抽象的概...

文章 如何创建DeFi 的抵押债务头寸或借贷协议

... reserveB ); // 获取池的总供应量 IERC20 lpToken = IERC20(_lpToken); uint256 totalSupplyOfLP = lpToken.totalSupply(); //代码省略.. uint256 totalValue = value0 + value1; uint16 shiftAmount = supplyDecimals; uin...

文章 Uniswap V2 源码学习 (四). 签名和路由

..., 今天讲讲它和 Pair 的permit方法 UnitSwapPair 合约是一种ERC20, 实现了一个 permit方法, permit功能与 approve类似 但是 permit 允许第三方代为执行, 例如 用户 A需要向 B授权, 但是 A 没有ETH做gas, 它可以用自己的私钥签名, 让 C 来执行permit...