找到约 12 条结果

文章 Uniswap V2 — 理解DeFi协议的完整指南

...组成。 每个Uniswap智能合约,或称pair,管理一个由两种ERC-20代币储备组成的流动性池。 每个流动性池都会重新平衡,以维持50/50比例的加密货币资产,这反过来又决定了资产的价格。 流动性提供者可以是任何能够向Uniswap交易...

文章 每周以太坊 2024/03/09

... - [状态增长可视化](https://learnblockchain.cn/article/13207):ERC20 占状态的 27.2%,ERC721 占 21.6%;按当前增长速度,预计长达十年内,消费者硬件都能够维持。 - Geth [放弃支持合并前网络](https://twitter.com/peter_szilagyi/status/17650166751313019...

文章 DeFi中的临时存储:加密数据处理

...与 dApp 交换这些信息。许多设计模式,例如费用锁定的 ERC20 代币、KYC、白名单,都因 KYC 数据在首次验证后在瞬态存储中保留且在交易结束时自动清除而变得简单化。采用这种策略,借贷 dApp 不需要了解 KYC 执行情况,也不需要...

文章 使用 OpenZeppelin 开发安全的智能合约

...。切勿手动编写库已提供的内容: - 当存在 `Pausable` 或 `ERC20Pausable` 时,切勿编写自定义的 `paused` 修改器 - 当存在 `Ownable` 时,切勿编写 `require(msg.sender == owner)` - 当库的基础合约已处理 ERC165 逻辑时,切勿实现 ERC165 逻辑 ####...

文章 使用 Foundry 开发环境

...装到了`lib`目录。现在让我们在`src/MyToken.sol`中创建一个ERC20合约。 我们可以导入并使用`solmate`的ERC20实现,如下: ```solidity // SPDX-License-Identifier: AGPLv3 pragma solidity ^0.8.13; import {ERC20} from "solmate/tokens/ERC20.sol"; error NotMinter...

问题 关于视频课程ERC2616引入的abi

在初始化合约的时候传入了erc2612Abi ``` import erc2612Addr from '../../../deployments/dev/ERC2612.json' import erc2612Abi from '../../../deployments/abi/ERC2612.json' ``` ``` async initContract() { this.erc20Token = new ethers.Contract(erc2612Addr.address, erc2612Abi, t...

视频 Uniswap V4 - #2 概述

...的闪电贷,且可借贷的金额不再局限于单个池子。最后,ERC-6909 标准允许在一个合约中管理多个 ERC-20 代币,进一步优化 gas 消耗。 关键信息: * **Hooks:** 允许在关键操作前后调用外部合约,实现如限价单和自动化流动性管...

问题 使用Vyper调用PancakeSwap合约时报错,无法部署

...请教大佬们 `````` # @version ^0.2 from vyper.interfaces import ERC20 interface PancakeRouter: def swapExactTokensForTokens( amountIn: uint256, amountOutMin: uint256, path: address[3], to: address, deadline: uint256 ) -> uint256[3]...

文章 以太坊代币标准第二部分(ERC721)

...看** [**这里**](https://learnblockchain.cn/article/17286/) **。** ERC-721 标准是为 NFT(Non-Fungible Tokens,非同质化代币)提出的。NFT 指的是独一无二的代币,这意味着智能合约中的每个代币都与其他代币不同。它可以用来识别独特的事物,...

问题 在学习UniSwap V2源码的时候遇到一个bug:Pair合约继承了ERC20合约,但是在调用mint的时候,无法mint LP Token。

下面是简要的代码摘要: Factory.sol ``` contract SwapFactory is ISwapFactory { address[] public allPairs; mapping(address tokenA => mapping(address tokenB => address pair)) public override getPair; constructor(){ } function allPairsLength() externa...

文章 CTF挑战 - Tenderly与ChainSecurity 战时游戏

...处理和代理模式问题的理解。 ``` contract MultiCallProxy is ERC1967Proxy, Solvable { address proposedAdmin; address admin; modifier onlyAdmin() { require(msg.sender == admin, "Not the admin"); _; } constructor(address initialImpl) ERC1967...

文章 从零开始动手构建账户抽象 DApp - 不使用第三方库

...抽象的历史](https://learnblockchain.cn/article/17671) 并 [连接了 ERC-4337 核心组件之间的联系](https://learnblockchain.cn/article/17669)。现在,是时候从理论转向实践了。欢迎来到最后的实践章节,我们将从头开始构建一个功能齐全的账户抽象 dA...