找到约 15 条结果

文章 30秒搞懂ERC-2981:NFT版税的终极解决方案!

# 前言 > 本文围绕 ERC-2981 版税标准展开,先系统梳理其核心定义、功能、解决的行业痛点及典型使用场景,再基于 OpenZeppelin 库整合 ERC-721 与 ERC-2981 标准实现版税 NFT 智能合约,最后通过 Hardhat V3 完成合约的开发、测试、部署全...

文章 BoredApeYachtClub 无聊猿-NFT 源码解析第一节

# BoredApeYachtClub 无聊猿 ## BoredApeYachtClub无聊猿NFT智能合约包含多个contract: ![屏幕截图 2022-07-31 163246.png](https://img.learnblockchain.cn/attachments/2022/07/j5j3iDd662e63e4084bdb.png) *首先来看 contract BoredApeYachtClub:该合约继承[ERC721](https://lear...

文章 模仿ERC20写的代币合约

标准接口 -- ``` //总发行量 function totalSupply() public view returns (uint256) // 指定账户的余额 function balanceOf(address _owner) public view returns (uint256 balance) //币的持有人直接调用,进行转账 function transfer(address _to, uint256 _value) publi...

文章 以太坊Solidity如何实现海量空投代币?

## 1\. 摘要 通证token项目启动时,短期内繁荣生态,要舍得给粉丝们打币,把利益分出去。本文聚焦在技术层面,实现如何快速完成TOKEN海量空投,既要节约时间,又要节省TOKEN费用。 ## 2.代码分析 话不多说,直接上代码。...

文章 以太坊合约交互中的“授权”究竟是什么?

作者:NEST爱好者_CryptoV12 有关「授权」操作,很多以太坊新用户在第一次操作智能合约遇到时都是一头雾水。不明白什么是授权,更不明白为什么授权还要发起一笔交易,而且交易本身没有携带任何资产,同时还要去支付一笔...

文章 如何获取某个地址拥有的所有ERC20代币

原作者:[Fatima Ali Hassan](https://chainbase.com/blog/article/how-to-get-all-erc-20-tokens-owned-by-an-address) 如果您涉足加密货币世界,您可能会发现获取特定地址所拥有的ERC20令牌余额非常有用。通过使用Chainbase的`getAccountTokens` API,您可以...

文章 Solidity中的多重继承

写合约的过程中,经常遇到继承多个合约,需要override的情况。比如[openzeppelin](https://learnblockchain.cn/article/727)的 ERC1155,AccessControl都实现了``supportsInterface``函数,如果你的合约同时继承这两个合约,需要重写此函数。 ## 定义...

文章 Solidity 非权威开发指南(3):OpenZepplin

OpenZepplin 已经成为如今合约开发的事实标准,很难找到一个完全不使用它而完全从零自行打造合约系统的例子。除非要开发一个竞品,摆脱它既无必要,也不经济,同时还浪费时间。 在一般语境下,OpenZepplin 指代的其实是:Op...

文章 DeFi 项目的基石 - ERC4626 代币金库协议的实现

## 什么是代币金库 `ERC4626` 代币金库(`Vault`)是 `ERC20` 的拓展。本质上可以理解为一个智能合约,支持把资产托管进去这个合约中,合约代表你去赚钱,赚到的钱按份额分配。 `ERC4626` 继承于 `ERC20`,基本接口和 `ERC20` 一致,但...

文章 ERC20 Snapshot解决双重投票问题

如果投票是根据某人持有的代币数量来衡量的,那么恶意行为者就可以使用他们的代币进行投票,然后将代币转移到另一个地址,用该地址进行投票,依此类推。如果每个地址都是一个智能合约,那么黑客可以在一笔交易中完成...

文章 验证 Foundry 中的 Solidity 签名

以下是一个在 [Foundry](https://learnblockchain.cn/article/9780) 环境中使用 OpenZeppelin 安全创建和验证 ECDSA 签名的最小示例(可以直接复制粘贴)。 ## 合约:Verifier.sol ```solidity // SPDX-License-Identifier: MIT pragma solidity ^0.8.0; import "@openzeppelin/...

文章 向后兼容性 - OpenZeppelin 文档

## 向后兼容性 OpenZeppelin Contracts 使用语义化版本控制来传递其 API 和存储布局的向后兼容性。Patch 和 minor 更新通常是向后兼容的,但极少数情况下会有例外,如下文详述。应该假定 major 更新与以前的版本不兼容。在本页中,我...

文章 Solidity中的继承

## 基本概念 Solidity是一种面向对象的编程语言,它支持合约之间的继承。继承允许一个合约获取另一个合约的所有非私有属性和函数,这样就可以重复使用代码,降低重复工作量。 ## 继承关键字 在Solidity中,继承是通过`is`...

文章 技术资讯 2020/01/03

## Vyper bug 以太坊基金会在对Vyper编译器进行安全审计的时候,发现基于Python编写的Vyper代码实现尚存在bug且修复难度大,因此决定暂时把该项目独立出去,让Vyperlang团队自主解决问题。 ## 以太坊基金会迎来新成员 学术咖Bar...

文章 NFT Market Plus——使用 ERC20Permit 和 EIP-712 构建高效的 NFT 市场

NFT 市场虽然很火,但高昂的 gas 费用和繁琐的操作步骤一直让用户头疼。每次交易都得授权,gas 费蹭蹭往上涨,体验不太好。为了解决这些问题,我写了一个 NFT 市场应用:“NFT Market Plus”,使用了 `ERC20Permit` 和 `EIP-712` 来优化 ...