本文介绍了Solidity中的继承概念,包括如何使用is关键字实现合约继承。文章详细讲解了virtual和override关键字在函数重写中的作用,以及internal关键字在控制函数可见性方面的应用。最后,通过OpenZeppelin的Ownable合约示例,展示了继承在实际开发中的应用,例如权限控制。
is
virtual
override
internal
本文详细介绍了Vyper编程语言,在智能合约开发中的安全性和简洁性,强调了其设计原则与核心特性。通过比较Vyper和Solidity,指出Vyper在安全优先和易审计性方面的优势,同时提供了安装Vyper的步骤和最佳实践,适合需要高安全性的区块链项目开发者。
前言ERC20Permit是对扩展了ERC20标准的扩展,添加了一个permit函数,允许用户通过EIP-712签名修改授权,而不是通过msg.sender;ERC20Permit定义:ERC20Permit是对扩展了ERC20标准的扩展,添加了一个permit函数,
前言本文主要实现EIP721类型化数据签名的智能合约的开发、测试、部署、交互,测试过程:涉及到前端通过ethers库和合约以及钱包的交互;EIP712类型化数据签名定义:一种以太坊改进提案,旨在提供一种更高级、更安全的类型化数据签名方法;背景与重要性链下签名,链上验证:EIP712
前言本文主要实现EIP712类型化数据签名的智能合约的开发、测试、部署、交互,测试过程:涉及到前端通过ethers库和合约以及钱包的交互;EIP712类型化数据签名定义:一种以太坊改进提案,旨在提供一种更高级、更安全的类型化数据签名方法;背景与重要性链下签名,链上验证:EIP712
前言借用维塔利克·布特林的观点:大家对硬件钱包高估了,相对于硬件钱包,多签钱包更加安全.本文快速实现一个简洁版的多签钱包合约。多签钱包定义:一种需要多个私钥签名才能完成交易的加密钱包,需要多个授权方共同签名才能执行交易。这种设计大大提高了钱包的安全性,降低了单点故障和私钥被盗的风险;工作
本文探讨了在Solidity智能合约中缺失或不当输入验证所可能导致的安全漏洞,强调了适当输入验证的重要性,以及如何通过编写安全代码来降低风险。文章详细介绍了编译时和运行时的输入验证,影响与案例分析,提供最佳实践指导,帮助开发者提高智能合约的安全性。
前言本文实现一个线性释放合约,主要用来解决以下问题:防止市场抛售压力、激励团队和投资者、稳定市场和建立信任线性释放定义:一种常见的代币或股权分配机制,通常用于激励团队成员、早期投资者或顾问在一定时间内持续为项目做出贡献。线性释放机制确保代币或股权在预定的时间内逐步解锁,而不是一次性发放。
前言本文主要利用哈希时间锁合约(HashTimeLockedContract,HTLC)是一种去中心化的合约机制,通过结合时间锁和哈希锁,实现了条件支付的功能,包含了开发、测试、部署全部流程;区块链上的时间锁定义:一种去中心化的合约机制,通过时间锁和哈希锁的结合从而实现。工作流程创
前言本文主要实现代币锁合约的开发、测试、部署全流程,以及对该合约使用场景分析介绍;代币锁定义:将一定数量的代币在一段时间内限制其交易和转移的行为,主要目标是激励长期承诺,阻止早期投资者或团队成员迅速出售代币获利,然后退出项目。功能时间锁定:代币在特定的时间段内无法转移或使用。这是最常
前言本文编写的分账合约,主要为了解决现实生活中的分配不均等相关的信任问题。分账合约定义:一种智能合约,用于将收到的款项自动分配给多个预设的地址。这种合约在多种场景下非常有用,例如在多个投资者、团队成员或合作伙伴之间公平分配收益。分账合约可以确保资金的透明分配,减少信任问题,并自动化资金管理
前言ERC4626标准是对ERC20标准的扩展,旨在提供统一的API标准,本文通过对ERC4626标准的实现一个保险金库的智能合约;ERC4626标准定义:ERC4626是ERC20的扩展,提供了一个标准API,用于表示单个底层ERC-20代币的收益保险库份额;举例说明:用
前言本文通过借助openzeppelin和solidity编写一个荷兰拍卖的合约,合约主要实现了设置拍买开始时间,拍卖并铸造,提现,实时获取拍卖价格等相关功能荷兰拍买以及说明荷兰拍买概念:一种特殊的拍卖形式,也称“减价拍卖”。其特点是拍卖标的的竞价由高到低依次递减,直到第一个竞买人应价(
前言本文分别采用默克默克尔树和数字签名两种方式给nft合约添加白名单,对比两者的优缺点,本文包含了合约的开发,测试,部署全流程。基础概念默克尔树:也称为哈希树,是一种树形数据结构,主要用于数据验证和同步,默克尔树的特点是每个非叶子节点是其子节点的哈希值,而叶子节点存储的是数据或数据的哈希
前言实现一个带包装的原生代币,对该合约进行开发、测试、部署以及对使用场景介绍的包装原始代币使用场景ETH原始币本身是不符合ERC20代币标准,为了提高区块链之间的互操作性,并使ETH可用于去中心化应用程序(dApps),所有给ETH包一层智能合约。合约开发合约说明:继承ERC20代币
前言本文借鉴uniswapv2实现一个简化版的去中心化交易所的智能合约,交易所的核心恒定乘积自动做市商(CPAMM)去中心化交易概念以及特征去中心化交易:在没有中心化中介机构的情况下进行的交易活动;特征:去中心化控制:所有交易都是通过区块链上的智能合约自动执行,避免了中央机构的操控
前言本文主要依托于openzeppelin库实现一个ERC1155标准的代币,包含了合约的开发,测试,部署以及和ERC20标准,ERC721标准的区别和使用场景分析。ERC20、ERC721、ERC1155标准特点ERC20标准:同质化、可分割性、标准化、兼容性、流通性;ERC721
前言本文实现一个简单版的NFT交易所,主要包含上架、下架、更新价格、购买NFT等相关功能NFT合约说明关于NFT合约的开发、测试、部署具体实现,可以查看另一篇:快速实现一个标准的NFT合约(实操篇)NFT交易所合约合约说明具备上架、下架、更新价格、购买NFT//SPDX-Licen
前言本文借助openzeppelin库编写一个标准的NFT合约,从开发,测试,到部署上链全部流程。注意:ERC20标准的同质化代币和ERC721标准的非同质化代币的区别需要metadata,要把信息上传到ipfs上,文中会有详细操作的步骤;同质化代币和非同质化代币程序层面的区别ERC2
前言本文主要实现标准代币的空投合约和代币水龙头相关业务场景的实现,包含合约的编写,测试,部署全流程。概念以及相关场景说明空头合约:币圈中一种营销策略,项目方将代币免费发放给特定用户群体;代币水龙头:一种为用户提供小额加密货币的机制;标准代币说明:本合约基于openzeppelin库实
扫一扫 - 使用登链小程序
114 篇文章,705 学分
388 篇文章,475 学分
67 篇文章,425 学分
118 篇文章,352 学分
163 篇文章,339 学分