# WTF-Solidity **Repository Path**: xzs603/wtf-solidity ## Basic Information - **Project Name**: WTF-Solidity - **Description**: https://github.com/AmazingAng/WTF-Solidity/ - **Primary Language**: HTML - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 1 - **Created**: 2024-10-16 - **Last Updated**: 2025-07-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README  :globe_with_meridians: **[English](/Languages/en/README.md) / [Español](/Languages/es/README.md) / [Português Brasileiro](./Languages/pt-br/README.md)** :globe_with_meridians: # WTF Solidity 我最近在重新学solidity,巩固一下细节,也写一个“WTF Solidity极简入门”,供小白们使用(编程大佬可以另找教程),每周更新1-3讲。 路线图根据本仓库star数量来定: - [x] 64 :star: 建立社群:[discord](https://discord.gg/5akcruXrsk) | [微信群](https://docs.google.com/forms/d/e/1FAIpQLSe4KGT8Sh6sJ7hedQRuIYirOoZK_85miz3dw7vA1-YjodgJ-A/viewform) - [ ] 128 :star: 录教学视频 - [x] 256 :star: 出进阶内容 - [x] 512 :star: 发布官网: [wtf.academy](https://wtf.academy) - [x] 1024 :star: 发课程认证`SBT`: [Learning Center](https://wtf.academy/courses) - [ ] 2048 :star: 发社群NFT ## 入门 **第1讲:三行代码HelloWeb3**:[代码](/01_HelloWeb3) | [文章](/01_HelloWeb3/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/WfM30QbSWB2_-9t98g05unTmb_2ZXucOAZMPDa7MX48) **第2讲:值类型**:[代码](/02_ValueTypes) | [文章](/02_ValueTypes/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/XHZVpWe8_sHBHgg6kkrNH2nAWYmQgoB7fKW8hoXnoyI) **第3讲:函数 (external/internal/public/private, pure/view, payable)**:[代码](/03_Function) | [文章](/03_Function/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/FWI887JBea4VpNiMlJ2ICyJ5aWUREReGo9Bz0X8iEVc) **第4讲:函数输出(returns/return)**:[代码](/04_Return) | [文章](/04_Return/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/FIGf9tF7wiBlLnQGXfEjVkJ0efzKBNltJS1fRxPKYTk) **第5讲:变量作用域和数据存储 (storage/memory/calldata)**:[代码](/05_DataStorage) | [文章](/05_DataStorage/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/w5zJWGwElN2ei4tgtuJbTTpKwrGhb-igPY7wTVKRCgY) **第6讲:数组(array)和结构体(struct)**:[代码](/06_ArrayAndStruct) | [文章](/06_ArrayAndStruct/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/zNxhHPjK8kjx_bSaauDUcEr9rX3hroalEzvYDatshvw) **第7讲:映射(mapping)**:[代码](/07_Mapping) | [文章](/07_Mapping/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/iHYV1C-KUBn8JoJRirhgMmcSNgmpaL4cv4trdOoZJB0) **第8讲:变量初始值**:[代码](/08_InitialValue) | [文章](/08_InitialValue/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/WoWQ8s66meku9zPFsHGsXs4m7T6PauZPmfSak76qDkI) **第9讲:常量(constant/immutable)**:[代码](/09_Constant) | [文章](/09_Constant/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/p9xMZTxCBLSKBqqP2dlyxHceev1V7Blmo5Wf-OY3R48) **第10讲:控制流和插入排序**:[代码](/10_InsertionSort) | [文章](/10_InsertionSort/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/8Q0vr-dyHfiIXS9KnivaQDxpM9cIQTNWoC68TNvCZ9c) **第11讲:构造函数(constructor)和修饰器(modifier)**:[代码](/11_Modifier) | [文章](/11_Modifier/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/X8HHTaD8hqkfshhugHHp7ho3EaLjuviya_g1l3MsF_U) **第12讲:事件(events)**:[代码](/12_Event) | [文章](/12_Event/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/nGSCuFbPHMo8mL1ErZMUwOZG_OUECzIWEsGhX0a5eOw) **第13讲:继承**:[代码](/13_Inheritance) | [文章](/13_Inheritance/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/HTCOqhsxTXs42NNv3wfzNRQMN6qGHGYY9iaTJhhKBb4) **第14讲:抽象合约(abstract)和接口(interface)**:[代码](/14_Interface) | [文章](/14_Interface/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/KKnoJJfHG69Pg3GQda_B454z_nJ1tesyBd4uOvh1WNM) **第15讲:异常(errors)**:[代码](/15_Errors) | [文章](/15_Errors/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/XhhLu7PV1cAhOp9_m-dk9OoTj7offC7DkYYgsV3e31I) ## 进阶 **第16讲:函数重载**:[代码](/16_Overloading) | [文章](/16_Overloading/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/ADt6g13gwqt42-9_nBxMunSkVHeft6-yb1mp0XH-4f8) **第17讲:库合约(library)**:[代码](/17_Library) | [文章](/17_Library/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/5nhKjOI40nCT0nCk6iO2TXry3xi09F1Ts4e5lMBlZ1w) **第18讲:Import**:[代码](/18_Import) | [文章](/18_Import/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/f43II54h19ucfkNDarEdDFGts0lBkJCyrZ57U5Njk3A) **第19讲:接收ETH(fallback/receive)**:[代码](/19_Fallback) | [文章](/19_Fallback/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/EroVZqHW1lfJFai3umiu4tb9r1ZbDVPOYC-puaZklAw) **第20讲:发送ETH(transfer/send/call)**:[代码](/20_SendETH) | [文章](/20_SendETH/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/NTNHraVAn2OWUKXpr0byphlxl8ytj7fRUAaOaLYfEtA) **第21讲:调用其他合约**:[代码](/21_CallContract) | [文章](/21_CallContract/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/fI48BkuT7wWzRaVKkn1VWxnfLpkUEvIZIJcO5iOIzbk) **第22讲:Call**:[代码](/22_Call) | [文章](/22_Call/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/vMJ0AHl3b_A5Lyey5lLdFhzkGT9wJ-D6vJpZpH0vlls) **第23讲:Delegatecall**:[代码](/23_Delegatecall) | [文章](/23_Delegatecall/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/hW9iLCOUUqsRCCZbzGS3x5m0wXfJBhlYQWLq93rplcU) **第24讲:在合约中创建新合约**:[代码](/24_Create) | [文章](/24_Create/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/kojopp2CgDK3ehHxXc_2fkZe87uM0O5OmsEU6y83eJs) **第25讲:Create2**:[代码](/25_Create2) | [文章](/25_Create2/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/Dz7kd6-RrcNvdHnptWKzsW9AcIOSA8PoVsMsQh8nlEM) **第26讲:删除合约**:[代码](/26_DeleteContract) | [文章](/26_DeleteContract/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/080JeNq8X_HfciftWa-ed0S6Wb5YFuIb5GPVISu1gIc) **第27讲:ABI编码解码**:[代码](/27_ABIEncode) | [文章](/27_ABIEncode/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/jXJnvwkoQzvJaqVIxagxneSZim6Qxm-StuNNxLuKuw8) **第28讲:Hash**:[代码](/28_Hash) | [文章](/28_Hash/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/csiRSVEpEwj7f0OOtSpm1KdGHRqD4fNogmiahHx60nE) **第29讲:函数选择器(selector)**:[代码](/29_Selector) | [文章](/29_Selector/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/_Q-N_VGUV8F4QZbggR8Swv16LStBdfkeQb8qwSfoNTw) **第30讲:Try-Catch**:[代码](/30_TryCatch) | [文章](/30_TryCatch/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/asj1-eKf6YdIoI9oMSLI3VECwqCzRHwaqIS01ALQ7qo) ## 应用 **第31讲:ERC20**:[代码](/31_ERC20) | [文章](/31_ERC20/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/-LNwtaA4Eb0e1GZEsaZEXs09Nm9l57HVvoeRUfxVZNg) **第32讲:代币水龙头**:[代码](/32_Faucet) | [文章](/32_Faucet/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/tr1pm32UYMO96gOsgQsU5beAAcD3rkHtaBYg9MBzCz0) **第33讲:空投合约**:[代码](/33_Airdrop) | [文章](/33_Airdrop/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/pRoRGe7V4djkWX-_ZkkrdzKE8RSO5ivoDktCacE-4R8) **第34讲:ERC721**:[代码](/34_ERC721) | [文章](/34_ERC721/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/7BbjaN4Zz1ycAlfvKARlijMusL0RV3SOAltSx0nJed4) **第35讲:荷兰拍卖**:[代码](/35_DutchAuction) | [文章](/35_DutchAuction/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/6v7-GIVSQIG5mNUIMP8VhXt6AS1Iq24kMt2DOh196Fc) **第36讲:Merkle Tree**:[代码](/36_MerkleTree) | [文章](/36_MerkleTree/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/kPBE6QzZeplo72UvGeJOcCEpZZMu9qVMmEu4KDZHzsM) **第37讲:数字签名**:[代码](/37_Signature) | [文章](/37_Signature/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/pVjNv3xzVoOB1AtsXNsZ01b6FZy-iVbdNZsv0qVQ7Qo) **第38讲:NFT交易所**:[代码](/38_NFTSwap) | [文章](/38_NFTSwap/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/lHIwfCzjKYUN_1V7PQCo1FPY-t_WzbV6i7cQjge1ANc) **第39讲:随机数**:[代码](/39_Random) | [文章](/39_Random/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/JYXCXDLhHp8wxXPfClQKqW_5g1QhgVp44HFk9WtC6tk) **第40讲:ERC1155**:[代码](/40_ERC1155) | [文章](/40_ERC1155/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/dGmLVDYjGXCKR5kPvQspMj6f0qYnJbCUshy9hlzld0c) **第41讲:WETH**:[代码](/41_WETH) | [文章](/41_WETH/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/2Ma5ZRoAy54_aJXZw52xkItKykmQPpqsdFjVqEqB89k) **第42讲:分账**:[代码](/42_PaymentSplit) | [文章](/42_PaymentSplit/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/j373uOA3btcD9xRWT_qaww4CSR-iaoqU6EClv1nXWsM) **第43讲:线性释放**:[代码](/43_TokenVesting) | [文章](/43_TokenVesting/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/j-so8JO_lcYye4N9S03v_VIljQ9rg8nGbmZrSbzak8A) **第44讲:代币锁**:[代码](/44_TokenLocker) | [文章](/44_TokenLocker/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/WJCju6bbg-r1Cf97f1abYdNUiO4ArthIAGqs1zZZHi0) **第45讲:时间锁**:[代码](/45_Timelock) | [文章](/45_Timelock/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/o8nvAnljLf7l4AGNRSdec17Knp3PsKTWyTXVSx1olM4) ## Degen **第46讲:代理合约**:[代码](/46_ProxyContract) | [文章](/46_ProxyContract/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/v4ov2J0xjtMnVflsLpbbh7S55fiyPljttbDh3Xhiqis) **第47讲:可升级合约**:[代码](/47_Upgrade) | [文章](/47_Upgrade/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/p1WBSV9yQ5Zfcui8kaWEoVq71rirv7-I4VqLFAhz4J0) **第48讲:透明代理**:[代码](/48_TransparentProxy) | [文章](/48_TransparentProxy/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/DmqC4Nyfyo2-pF5x5w9SFYqBr2DHo43AH6IfnePXcH8) **第49讲:通用可升级代理UUPS**:[代码](/49_UUPS) | [文章](/49_UUPS/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/KPwXlRDdL2XfBWi7Z9uk8eccbWKG3hffC-RjTgiTLi8) **第50讲:多签钱包**:[代码](/50_MultisigWallet) | [文章](/50_MultisigWallet/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/DeediQG7FbXhCK68f2iPUoQkpN-gLdiuKhDV99gHpgg) **第51讲:ERC4626 代币化金库**:[代码](/51_ERC4626) | [文章](/51_ERC4626/readme.md) **第52讲:EIP712 类型化数据签名**:[代码](/52_EIP712) | [文章](/52_EIP712/readme.md) **第53讲:ERC2612 ERC20Permit**:[代码](/53_ERC20Permit) | [文章](/53_ERC20Permit/readme.md) **第54讲:跨链桥**:[代码](/54_CrossChainBridge) | [文章](/54_CrossChainBridge/readme.md) **第55讲:多重调用**:[代码](/55_MultiCall) | [文章](/55_MultiCall/readme.md) **第56讲:去中心化交易所**:[代码](/56_DEX) | [文章](/56_DEX/readme.md) **第57讲:闪电贷**:[代码](/57_Flashloan) | [文章](/57_Flashloan/readme.md) ## 合约安全 **S01:重入攻击**:[代码](/S01_ReentrancyAttack) | [文章](/S01_ReentrancyAttack/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/SrNu6LLzwH7qlTVKbJY6lkTpmadGqUXw0L8iUMzfMxo) **S02:选择器碰撞**:[代码](/S02_SelectorClash) | [文章](/S02_SelectorClash/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/5rwcsBZzphdlKZj4MoIpn8aqwQ1MzQ8qy50ZEGNU_HU) **S03:中心化**:[代码](/S03_Centralization) | [文章](/S03_Centralization/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/0MlTKdaSGD9-A9WIbgbtrDlAazg-8DLpTJv7l8vsq3c) **S04:权限管理**:[代码](/S04_AccessControlExploit) | [文章](/S04_AccessControlExploit/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/lWnJZJYygZtqe0GFwH6bJg80t2NaSCfdRXCh0EDHxqs) **S05:整型溢出**:[代码](/S05_Overflow) | [文章](/S05_Overflow/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/FCRPHFa5JkCuRVSIrQQubuDPwrAfZctZnjWTaqZpcRU) **S06:签名重放**:[代码](/S06_SignatureReplay) | [文章](/S06_SignatureReplay/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/hHQO1EGe0vapiejyIrP8bcuPm50Djlse2MareeHLDwE) **S07:坏随机数**:[代码](/S07_BadRandomness) | [文章](/S07_BadRandomness/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/5NQbE-url7o8OV5UtpTPEkMEVwTZqdDIRYDMiG1bECw) **S08:绕过合约检查**:[代码](/S08_ContractCheck) | [文章](/S08_ContractCheck/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/EbA6ZmPleFPtMgdVqRf65Ib8Hab_gIgt5Q3c0INy9mg) **S09:拒绝服务漏洞**:[代码](/S09_DoS) | [文章](/S09_DoS/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/tiae-8Z9YQurL4RzCbcGgBonIGqIDp_KR0uKVy5101U) **S10:貔貅 Honeypot**:[代码](/S10_Honeypot) | [文章](/S10_Honeypot/readme.md) | [Mirror](https://mirror.xyz/wtfacademy.eth/tJmYTJbHlYX0Ah0k6m9gd4NpbKpBxsoU8fstLz3PqJY) **S11:抢先交易**:[代码](/S11_Frontrun) | [文章](/S11_Frontrun/readme.md) **S12:tx.origin钓鱼**:[代码](/S12_TxOrigin) | [文章](/S12_TxOrigin/readme.md) **S13:未检查的低级调用**:[代码](/S13_UncheckedCall) | [文章](/S13_UncheckedCall/readme.md) **S14:操纵区块时间**:[代码](/S14_TimeManipulation) | [文章](/S14_TimeManipulation/readme.md) **S15:操纵预言机**:[代码](/S15_OracleManipulation) | [文章](/S15_OracleManipulation/readme.md) **S16:NFT重入攻击**:[代码](/S16_NFTReentrancy) | [文章](/S16_NFTReentrancy/readme.md) **S17:“跨服”重入攻击**:[文章](/S17_CrossReentrancy/readme.md) ## EVM 操作码 **OP01:Hello Opcodes**:[代码](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/01_HelloOpcodes) | [文章](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/01_HelloOpcodes/readme.md) **OP02:Opcodes分类**:[代码](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/02_Categories) | [文章](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/02_Categories/readme.md) **OP03:堆栈指令**:[代码](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/03_StackOp) | [文章](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/03_StackOp/readme.md) **OP04:算数指令**:[代码](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/04_ArithmeticOp) | [文章](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/04_ArithmeticOp/readme.md) **OP05:比较指令**:[代码](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/05_ComparisonOp) | [文章](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/05_ComparisonOp/readme.md) **OP06:位级指令**:[代码](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/06_BitwiseOp) | [文章](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/06_BitwiseOp/readme.md) **OP07:内存指令**:[代码](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/07_MemoryOp) | [文章](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/07_MemoryOp/readme.md) **OP08:存储指令**:[代码](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/08_StorageOp) | [文章](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/08_StorageOp/readme.md) **OP09:控制流指令**:[代码](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/09_FlowOp) | [文章](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/09_FlowOp/readme.md) **OP10:区块信息指令**:[代码](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/10_BlockOp) | [文章](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/10_BlockOp/readme.md) **OP11:堆栈指令2**:[代码](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/11_StackOp2) | [文章](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/11_StackOp2/readme.md) **OP12:SHA3指令**:[代码](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/12_SHA3) | [文章](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/12_SHA3/readme.md) **OP13:账户指令**:[代码](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/13_AccountOp) | [文章](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/13_AccountOp/readme.md) **OP14:交易指令**:[代码](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/14_TxOp) | [文章](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/14_TxOp/readme.md) **OP15:Log指令**:[代码](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/15_LogOp) | [文章](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/15_LogOp/readme.md) **OP16:Return指令**:[代码](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/16_ReturnOp) | [文章](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/16_ReturnOp/readme.md) **OP17:Revert指令**:[代码](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/17_RevertOp) | [文章](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/17_RevertOp/readme.md) **OP18:Call指令**:[代码](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/18_CallOp) | [文章](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/18_CallOp/readme.md) **OP19:Delegatecall指令**:[代码](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/19_DelegatecallOp) | [文章](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/19_DelegatecallOp/readme.md) **OP20:Staticcall指令**:[代码](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/20_StaticcallOp) | [文章](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/20_StaticcallOp/readme.md) **OP21:Create指令**:[代码](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/21_Create) | [文章](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/21_Create/readme.md) **OP22:Create2指令**:[代码](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/22_Create2) | [文章](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/22_Create2/readme.md) **OP23:Selfdestruct指令**:[代码](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/23_SelfdestructOp) | [文章](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/23_SelfdestructOp/readme.md) **OP24:Gas指令**:[代码](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/24_GasOp) | [文章](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/24_GasOp/readme.md) **OP25:优化最小代理合约 EIP-7511**:[代码](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/25_MinimalProxy) | [文章](https://github.com/WTFAcademy/WTF-Opcodes/blob/main/25_MinimalProxy/readme.md) ## Solidity 内部规则 **SI01:基础存储布局**:[Code](https://github.com/WTFAcademy/WTF-Solidity-Internals/blob/master/src/01_ValueStorage.sol) | [文章](https://github.com/WTFAcademy/WTF-Solidity-Internals/blob/master/tutorials/01_ValueStorage/readme.md) **SI02:映射和动态数组的存储布局**:[Code](https://github.com/WTFAcademy/WTF-Solidity-Internals/blob/master/src/02_MappingStorage.sol) | [文章](https://github.com/WTFAcademy/WTF-Solidity-Internals/blob/master/tutorials/02_MappingStorage/readme.md) **SI03:字节数组和字符串的存储布局**:[Code](https://github.com/WTFAcademy/WTF-Solidity-Internals/blob/master/src/03_BytesStorage.sol) | [文章](https://github.com/WTFAcademy/WTF-Solidity-Internals/blob/master/tutorials/03_BytesStorage/readme.md) **SI04:内存布局**:[Code](https://github.com/WTFAcademy/WTF-Solidity-Internals/blob/master/src/04_MemoryLayout.sol) | [文章](https://github.com/WTFAcademy/WTF-Solidity-Internals/blob/master/tutorials/04_MemoryLayout/readme.md) **SI05:ABI编码基础**:[Code](https://github.com/WTFAcademy/WTF-Solidity-Internals/blob/master/src/05_AbiEncode.sol) | [文章](https://github.com/WTFAcademy/WTF-Solidity-Internals/blob/master/tutorials/05_AbiEncode/readme.md) **SI06:动态类型的ABI编码**:[Code](https://github.com/WTFAcademy/WTF-Solidity-Internals/blob/master/src/06_AbiDynamic.sol) | [文章](https://github.com/WTFAcademy/WTF-Solidity-Internals/blob/master/tutorials/06_AbiDynamic/readme.md) **SI07:ABI编码公式**:[Code](https://github.com/WTFAcademy/WTF-Solidity-Internals/blob/master/src/07_AbiFormula.sol) | [文章](https://github.com/WTFAcademy/WTF-Solidity-Internals/blob/master/tutorials/07_AbiFormula/readme.md) **SI08:calldata/returndata的ABI编码**:[Code](https://github.com/WTFAcademy/WTF-Solidity-Internals/blob/master/src/08_AbiCalldata.sol) | [文章](https://github.com/WTFAcademy/WTF-Solidity-Internals/blob/master/tutorials/08_AbiCalldata/readme.md) **SI09:事件的ABI编码**:[Code](https://github.com/WTFAcademy/WTF-Solidity-Internals/blob/master/src/09_AbiEvent.sol) | [文章](https://github.com/WTFAcademy/WTF-Solidity-Internals/blob/master/tutorials/09_AbiEvent/readme.md) **SI10:Error的ABI编码**:[Code](https://github.com/WTFAcademy/WTF-Solidity-Internals/blob/master/src/10_AbiError.sol) | [文章](https://github.com/WTFAcademy/WTF-Solidity-Internals/blob/master/tutorials/10_AbiError/readme.md) ## 主题 ### 开发工具 **第1讲:Remix, 最易用的Solidity IDE** 【[代码](/Topics/Tools/TOOL01_Remix)】 【[文章](https://mirror.xyz/wtfacademy.eth/dSYXG9zF_Vclw58Bgcvsv6HSA0SU6pmBoYLFwLAgVbU)】 **第2讲:Infura, 连接链下与链上的桥梁** 【[文章](/Topics/Tools/TOOL02_Infura/readme.md)】 **第3讲:Ganache,搭建本地测试网络** 【[文章](/Topics/Tools/TOOL03_Ganache/readme.md)】 **第4讲:Alchemy, 区块链API和节点基础设施** 【[文章](/Topics/Tools/TOOL04_Alchemy/readme.md)】 **第5讲:Dune,使用Dune可视化区块链数据** 【[文章](/Topics/Tools/TOOL05_Dune/readme.md)】 **第6讲:Hardhat,以太坊开发环境** 【[文章](/Topics/Tools/TOOL06_Hardhat/readme.md)】 **第7讲:Foundry,以Solidity为中心的开发工具包** 【[代码](/Topics/Tools/TOOL07_Foundry)】【[文章](/Topics/Tools/TOOL07_Foundry/readme.md)】 ### 链上威胁分析 **第1讲:工具篇** 【[文章](/Topics/Onchain_debug//01_tools/)】 | 【[English](/Topics/Onchain_debug/01_tools/en/)】 **第2讲:热身篇** 【[文章](/Topics/Onchain_debug/02_warmup/)】 | 【[English](/Topics/Onchain_debug/02_warmup/en/)】 **第3讲:漏洞概念验证-上篇** 【[文章](/Topics/Onchain_debug/03_write_your_own_poc/)】| 【[English](/Topics/Onchain_debug/03_write_your_own_poc/en/)】 **第4讲:漏洞概念验证-中篇** 【[文章](/Topics/Onchain_debug/04_write_your_own_poc/)】| 【[English](/Topics/Onchain_debug/04_write_your_own_poc/en/)】 **第5讲:漏洞概念验证-下篇** 【[文章](/Topics/Onchain_debug/05_write_your_own_poc/)】| 【[English](/Topics/Onchain_debug/05_write_your_own_poc/en/)】 **第6讲:Rugpull 分析** 【[文章](/Topics/Onchain_debug/06_Rugpull/)】| 【[English](/Topics/Onchain_debug/06_Rugpull/en/)】 **第7讲:Nomad 跨链桥事件分析** 【[文章](/Topics/Onchain_debug/07_analysis_bridge/)】| 【[English](/Topics/Onchain_debug/07_analysis_bridge/en/)】 ### NFT **第1讲:ERC721库:Address, Strings, Context** 【[代码](/Topics/ERC721)】 【[文章](https://mirror.xyz/wtfacademy.eth/PAsIFLAmEoMufZsXlX0NWsVF8DHpHz3OrYlooosy9Ho)】 **第2讲:ERC721相关接口** 【[代码](/Topics/ERC721)】 【[文章](https://mirror.xyz/wtfacademy.eth/4mPkMgHViRjx8OM7TAI-M-2oMfRle36ULzqlpC6S7IQ)】 **第3讲:ERC721主合约** 【[代码](/Topics/ERC721/ERC721.sol)】 【[文章](https://mirror.xyz/wtfacademy.eth/-evZa3S--yw9vVcXfhn9I3UiNRaqWOTLG0eZFFgbcT0)】 **第4讲:BAYC主合约和严重漏洞**【[代码](/Topics/ERC721/BAYC.sol)】 【[文章](https://mirror.xyz/wtfacademy.eth/_buBOQflWtHDpLbg18Fp8zLe8AmLiPka2y-UhppK_u0)】 **第5讲:Loot**【[代码](/Topics/ERC721/5_Loot/Loot.sol)】 【[文章](https://mirror.xyz/wtfacademy.eth/-Bc_vjP9EX-wg6chtUFAz0zm5v-jaIekMlOlqHJ_IhE)】 ### 翻译 **第1讲:Metamask项目方给Solidity程序员的16个安全建议**【[文章](/Topics/Translation/Consensys2020)】 【[Mirror](https://mirror.xyz/wtfacademy.eth/ygaDE0QQwn3lfI-AVaw0ZMqHQtWCdzo-XV450j2camc)】 **第2讲:深入EVM**【[文章](/Topics/Translation/DiveEVM2017)】 ## WTF贡献者
## 捐赠 - [Gitcoin](https://gitcoin.co/grants/6090/wtf-solidity) - [Mirror](https://mirror.xyz/wtfacademy.eth/WfM30QbSWB2_-9t98g05unTmb_2ZXucOAZMPDa7MX48) ## 参考 - [Solidity 官方文档](https://docs.soliditylang.org/en/v0.8.17/) - [Solidity By Example](https://solidity-by-example.org/) - [中文版](https://github.com/Web3-Club/solidity-by-example_Chinese) - [OpenZeppelin Contract](https://github.com/OpenZeppelin/openzeppelin-contracts) - [solmate](https://github.com/transmissions11/solmate) - [Chainlink Docs](https://docs.chain.link/) - [Safe Contracts](https://github.com/safe-global/safe-contracts) - [DeFi Hack Labs](https://github.com/SunWeb3Sec/DeFiHackLabs) - [rekt news](https://rekt.news/zh/)