本文探讨了在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库实
本文介绍了如何在Solidity中调用另一个智能合约的函数,通过部署两个合约(Counter.sol和Interface.sol)并演示它们之间的交互,展示了智能合约的复用性和交互方式。
本文详细介绍了在Solidity中使用Q格式表示定点数的方法,包括Q数的定义、表示方式、转换方法以及在Solidity中的实际应用示例。文章还对比了Q数与以太坊中的十进制表示,指出了Q数在乘除运算中的高效性。
Cyfrin的Aderyn VS Code扩展为Solidity智能合约开发提供实时的安全分析,能够检测超过100种漏洞。该扩展集成了内联诊断、树状视图、自动监控等功能,使开发者能够在编码过程中保持对安全的关注,保护其代码隐私。
在过去的三年里,Foundry已发展成为智能合约开发者的首选工具,今天,我们自豪地宣布 Foundry v1.0
本文解析了 Creation Code,包括 Init Code、Runtime Code 和 Constructor Parameters,并通过空合约示例展示了 Solidity 编译器生成字节码的过程,重点对比了 payable 和 non-payable 构造函数的区别及元数据的处理。
本文收集了10个常见的Solidity面试问题,旨在帮助求职者准备Solidity技术面试。这些问题不仅适合潜在的Solidity开发者自我测试,也可供招聘经理用以评估应聘者的技能水平。每个问题都提供了示例答案和简要解释,以帮助读者理解其重要性。
扫一扫 - 使用登链小程序
489 篇文章,618 学分
196 篇文章,578 学分
412 篇文章,436 学分
128 篇文章,424 学分
66 篇文章,318 学分