区块链与Web3开发工程技能 software-crypto-web3

此技能专注于区块链和Web3技术的设计与实现,涵盖智能合约开发、安全审计、测试策略、后端集成等,用于构建去中心化应用和DeFi协议。关键词:区块链、Web3、智能合约、安全开发、测试、审计、DeFi、NFT、加密工程。

Web3 0 次安装 0 次浏览 更新于 3/7/2026

name: software-crypto-web3 description: 在构建区块链应用程序或智能合约时使用,涵盖EVM(Solidity)、Solana(Anchor/Rust)、Cosmos(CosmWasm)和TON,包括安全/审计工作流、模糊/不变测试、升级、托管/签名和后端集成(RPC、索引器、webhooks)。

软件加密/Web3 工程

使用此技能来设计、实现和审查安全的区块链系统:智能合约、链上/链下集成、托管和签名、测试、审计和生产操作。

默认:安全优先开发、显式威胁模型、全面测试(单元 + 集成 + 分叉 + 模糊/不变)、高价值时的形式方法、升级安全性(时间锁、治理、回滚计划)以及密钥托管和签名的深度防御。


快速参考

任务 工具/框架 命令 使用时机
Solidity 开发 Hardhat/Foundry npx hardhat initforge init 以太坊/EVM 智能合约
Solana 程序 Anchor anchor init Solana 区块链开发
Cosmos 合约 CosmWasm cargo generate --git cosmwasm-template Cosmos 生态系统合约
TON 合约 Tact/FunC + Blueprint npm create ton@latest TON 区块链开发
测试(Solidity) Foundry/Hardhat forge testnpx hardhat test 单元、分叉、不变测试
安全审计 Slither/Aderyn/Echidna slither .aderyn . 静态分析、模糊测试
AI辅助审查 AI 扫描器(可选) N/A 审计前准备(手动验证发现)
模糊测试 Echidna/Medusa echidna .medusa fuzz 基于属性的模糊测试
Gas 优化 Foundry Gas 快照 forge snapshot 基准测试和优化 Gas
部署 Hardhat Deploy/Forge 脚本 npx hardhat deploy 主网/测试网部署
验证 Etherscan API npx hardhat verify 源代码验证
可升级合约 OpenZeppelin Upgrades @openzeppelin/hardhat-upgrades 基于代理的升级
智能钱包 ERC-4337, EIP-7702 账户抽象 SDK 智能账户和赞助 Gas(验证网络支持)

范围

在以下情况下使用此技能:

  • 智能合约开发(Solidity、Rust、CosmWasm)
  • DeFi 协议实现(AMM、借贷、质押、收益耕种)
  • NFT 和代币标准(ERC20、ERC721、ERC1155、SPL 代币)
  • DAO 治理系统
  • 跨链桥和互操作性
  • Gas 优化和存储模式
  • 智能合约安全审计
  • 测试策略(Foundry、Hardhat、Anchor)
  • 预言机集成(Chainlink、Pyth)
  • 可升级合约模式(代理、钻石)
  • Web3 前端集成(ethers.js、web3.js、@solana/web3.js)
  • 区块链索引(The Graph、子图)
  • MEV 保护和 Flashbots
  • 第 2 层扩展解决方案(Base、Arbitrum、Optimism、zkSync)
  • 账户抽象(ERC-4337、EIP-7702、智能钱包)
  • 后端加密集成(.NET/C#、多提供者架构、CQRS)
  • Webhook 处理和签名验证(Fireblocks、托管提供者)
  • 使用 Kafka 的事件驱动架构用于加密支付
  • 交易生命周期管理和监控
  • 钱包管理(托管 vs 非托管)

决策树:区块链平台选择

项目需求:[用例]
  - EVM 兼容的智能合约?
    - 复杂测试需求 -> Foundry(模糊测试、不变、Gas 快照)
    - TypeScript 生态系统 -> Hardhat(插件、TS、Ethers.js/Viem)
    - 企业功能 -> NestJS + Hardhat

  - 高吞吐量 / 低费用?
    - Rust 基础 -> Solana(Anchor)
    - EVM L2 -> Arbitrum/Optimism/Base(以太坊安全性、更低 Gas)
    - Telegram 分发 -> TON(Tact/FunC)

  - 跨链互操作性?
    - Cosmos 生态系统 -> CosmWasm(IBC)
    - 多链应用 -> LayerZero 或 Wormhole(验证信任假设)
    - 桥开发 -> 自定义(高风险;需要威胁模型)

  - 代币标准实现?
    - 可互换代币 -> ERC20(OpenZeppelin)、SPL Token(Solana)
    - NFT -> ERC721/ERC1155(OpenZeppelin)、Metaplex(Solana)
    - 半可互换 -> ERC1155(游戏、碎片化 NFT)

  - DeFi 协议开发?
    - AMM/DEX -> Uniswap V3 分叉或自定义(集中流动性)
    - 借贷 -> Compound/Aave 分叉(抵押借贷)
    - 质押/收益 -> 自定义奖励分发合约

  - 需要可升级合约?
    - 透明代理 -> OpenZeppelin(管理员/用户分离)
    - UUPS -> 实现中的升级逻辑
    - 钻石 -> 模块化功能(EIP-2535)

  - 后端集成?
    - .NET/C# -> 多提供者架构(见后端集成参考)
    - Node.js -> Ethers.js/Viem + 持久队列
    - Python -> Web3.py + FastAPI

特定链注意事项:

  • 以太坊/EVM:安全优先、更高 Gas 成本、最大生态系统
  • Solana:性能优先、需要 Rust、更低费用
  • Cosmos:互操作性优先、原生 IBC、成长中生态系统
  • TON:Telegram 优先、异步合约、独特架构

references/ 获取链特定最佳实践。


安全优先模式(2026年1月)

安全基线:假设敌对环境。将合约和签名基础设施视为公开、可攻击的 API。

托管、密钥和签名(核心)

密钥管理是生产加密系统的主要风险驱动因素。使用真实密钥管理标准作为基线(例如,NIST SP 800-57)。

模型 谁持有密钥 典型用途 主要风险 默认控制
非托管 最终用户钱包 消费者应用、自托管 网络钓鱼、批准、用户体验错误 硬件钱包支持、清晰签名 UX、白名单
托管 您的服务(HSM/MPC) 交易所、支付、B2B 密钥盗窃、内部威胁、操作失误 HSM/MPC、职责分离、限制/批准、审计日志
混合 责任分割 企业 复杂故障模式 明确恢复/覆盖路径、运行手册

最佳:

  • 分离热/温/冷签名路径,带有限制和批准 [推断]
  • 要求双控用于高价值转账(策略引擎 + 人工批准) [推断]
  • 保持签名请求的不可变审计跟踪(谁/什么/何时/为何) [推断]

避免:

  • 在数据库或应用配置中存储私钥
  • 跨环境重用签名密钥(开发/测试/生产)
  • 热钱包自动化不带速率限制和断路器 [推断]

检查-效果-交互(CEI)模式

强制用于所有状态变更函数。

// 正确:CEI 模式
function withdraw(uint256 amount) external {
    // 1. 检查:验证条件
    require(balances[msg.sender] >= amount, "余额不足");

    // 2. 效果:在外部调用之前更新状态
    balances[msg.sender] -= amount;

    // 3. 交互:外部调用最后
    (bool success, ) = msg.sender.call{value: amount}("");
    require(success, "转账失败");
}

// 错误:外部调用在状态更新之前(重入风险)
function withdrawUnsafe(uint256 amount) external {
    require(balances[msg.sender] >= amount);
    (bool success, ) = msg.sender.call{value: amount}("");
    require(success);
    balances[msg.sender] -= amount; // 太迟!
}

安全工具(2026年1月)

类别 工具 目的 使用时机
静态分析 Slither 漏洞检测,92+ 检测器 每个合约
静态分析 Aderyn Rust 基础,对大代码库更快 大型项目
模糊测试 Echidna 基于属性的模糊测试 复杂状态
模糊测试 Medusa 并行化 Go 模糊测试器 CI/CD 管道
形式验证 SMTChecker 内置 Solidity 检查器 每个合约
形式验证 Certora 基于属性的证明(CVL) DeFi、高价值
形式验证 Halmos 符号测试 复杂不变
AI辅助 Sherlock AI ML 漏洞检测 审计前准备
AI辅助 Olympix DevSecOps 集成 CI/CD 安全
AI辅助 AuditBase 423+ 检测器,LLM 驱动 业务逻辑
突变测试 SuMo 测试套件质量评估 测试验证
// Certora CVL 规则示例
rule balanceNeverNegative(address user) {
    env e;
    require balances[user] >= 0;
    deposit(e);
    assert balances[user] >= 0;
}

AI辅助审查:使用 AI 工具进行审计前准备和覆盖,而非最终安全决策。将输出视为不可信,并使用确定性工具、测试和手动审查重现发现。

MEV 保护

策略 实现
私有内存池 Flashbots Protect, MEV Blocker
提交-揭示 哈希承诺,截止后揭示
批量拍卖 CoW Protocol, Gnosis Protocol
加密内存池 Shutter Network
// 提交-揭示模式
mapping(address => bytes32) public commitments;

function commit(bytes32 hash) external {
    commitments[msg.sender] = hash;
}

function reveal(uint256 value, bytes32 salt) external {
    require(
        keccak256(abi.encodePacked(value, salt)) == commitments[msg.sender],
        "无效揭示"
    );
    // 处理揭示值
}

账户抽象(2026年1月)

注意:采用数字和升级时间线变化快。在提出建议前,使用 WebSearch 验证当前 ERC-4337 生态系统状态和任何 EIP-7702 激活细节。

ERC-4337 vs EIP-7702

标准 类型 关键特性 用例
ERC-4337 智能合约钱包 完整 AA 无需协议更改 新钱包、DeFi、游戏
EIP-7702 EOA 增强 EOA 执行智能合约代码 现有钱包、批量交易
ERC-6900 模块化账户 AA 钱包的插件管理 可扩展钱包功能

ERC-4337 架构:

用户 -> 用户操作 -> 捆绑器 -> 入口点 -> 智能账户 -> 目标合约
                          |
                          v
                      支付主(Gas 赞助)

EIP-7702(Pectra 升级):

  • EOA 可以临时委托给智能合约
  • 使批量交易、现有地址的赞助 Gas 成为可能
  • 与 ERC-4337 互补(使用相同捆绑器/支付主基础设施)
  • 由 Ambire、Trust Wallet 等支持

关键能力:

  • 无 Gas 交易:支付主在 ERC-20 或法币中赞助 Gas
  • 批量操作:单笔交易中的多个动作
  • 社交恢复:基于多签或监护人的密钥恢复
  • 会话密钥:有限权限用于 dApp,无需完整钱包访问

智能钱包开发

// 最小 ERC-4337 账户(简化)
import "@account-abstraction/contracts/core/BaseAccount.sol";

contract SimpleAccount is BaseAccount {
    address public owner;

    function validateUserOp(
        UserOperation calldata userOp,
        bytes32 userOpHash,
        uint256 missingAccountFunds
    ) external override returns (uint256 validationData) {
        // 验证签名
        require(_validateSignature(userOp, userOpHash), "无效签名");
        // 如果需要,支付预资金
        if (missingAccountFunds > 0) {
            (bool success,) = payable(msg.sender).call{value: missingAccountFunds}("");
            require(success);
        }
        return 0; // 有效
    }
}

第 2 层开发(2026年1月)

注意:L2 市场份额和风险阶段变化快。在说明排名、TVL 或阶段分类前,使用当前数据(例如,L2Beat 和生态系统仪表板)。

L2 选择指南

L2 类型 最适合 关键特性
Base 乐观 消费者应用、主流采用 Coinbase 集成、低费用
Arbitrum 乐观 DeFi、成熟生态系统 最大 TVL、DAO 补助
Optimism 乐观 公共产品、Superchain OP 堆栈、补助计划
zkSync Era ZK-Rollup 快速最终性、原生 AA zkEVM、无提款延迟
StarkNet ZK-Rollup Cairo 开发、ZK 原生 STARK 证明、自定义 VM

企业 Rollups(2025-2026 趋势)

主要机构在 OP 堆栈上推出 L2:

  • Kraken INK - 交易所原生 L2
  • Uniswap UniChain - DeFi 优化
  • Sony Soneium - 游戏和媒体
  • Robinhood - Arbitrum 集成

EIP-4844 Blob 优化

自 2024 年 3 月起,rollups 使用基于 blob 的数据发布:

之前:calldata 发布 -> 昂贵
之后:blob 发布 -> 更低数据可用性成本

Optimism、zkSync 在 2025 年优化了 blob 批处理。


常见错误(2025-2026)

现实检查:攻击经常导致大损失。访问控制、签名/托管和集成漏洞仍然是主要事件驱动因素。

错误 影响 预防
缺少访问控制 未经授权的管理员操作 使用 OpenZeppelin Ownable2StepAccessControl
重入 通过回调抽干资金 CEI 模式、ReentrancyGuard、Slither 检查
未检查的外部调用 静默失败 始终检查返回值,使用 SafeERC20
整数溢出(0.8 之前) 任意值操作 使用 Solidity 0.8.x+(内置检查)
抢先交易 MEV 提取、三明治攻击 提交-揭示、Flashbots Protect、私有内存池
预言机操纵 价格馈送攻击 TWAP、多个预言机、合理边界
不当初始化 代理接管 使用 initializer 修饰符、_disableInitializers()
存储冲突(代理) 数据损坏 遵循 EIP-1967 槽,使用 OpenZeppelin 升级

要避免的反模式

避免:

  • 使用 tx.origin 进行授权(网络钓鱼风险)
  • 在链上存储秘密(所有数据是公开的)
  • 使用 block.timestamp 进行随机性(矿工/验证者影响)
  • 忽略 transfer/send 的返回值
  • 使用已弃用工具(Truffle/Ganache/Brownie)

最佳:

  • 在每次变更上运行静态分析(例如,Slither 和 Aderyn)
  • 在任何审计前添加模糊/不变测试
  • 为高价值 DeFi 使用形式方法(例如,Certora 和符号测试)

LLM 在智能合约中的局限性

不要依赖 LLM 用于:

  • 安全关键逻辑验证
  • Gas 优化计算
  • 复杂数学证明

使用 LLM 用于:

  • 模板生成(测试、文档)
  • 代码解释和审查准备
  • 初始漏洞假设(手动验证)

何时不使用此技能


导航

资源

模板

相关技能


趋势意识协议

重要:当用户询问有关 Web3/加密开发的建议问题时,您必须使用 WebSearch 在回答前检查当前趋势。

触发条件

  • “对于 [用例] 最好的区块链是什么?”
  • “我应该用什么来 [智能合约/DeFi/NFT]?”
  • “Web3 开发的最新进展是什么?”
  • “当前最佳实践为 [Solidity/审计/Gas 优化]?”
  • “[链/协议] 在 2026 年仍然相关吗?”
  • “[以太坊] vs [Solana] vs [其他 L1/L2]?”
  • “用于 [智能合约开发] 的最佳框架是什么?”

必搜内容

  1. 搜索:"Web3 开发最佳实践 2026"
  2. 搜索:"[以太坊/Solana/Base] 开发更新 2026"
  3. 搜索:"智能合约安全 2026"
  4. 搜索:"[Hardhat/Foundry] 比较 2026"

报告内容

搜索后,提供:

  • 当前格局:现在流行的链/工具是什么
  • 新兴趋势:获得关注的新协议或模式
  • 已弃用/衰退:失去相关性的链或方法
  • 建议:基于新数据和生态系统活动

示例主题(用新搜索验证)

  • L2 生态系统增长(Base、Arbitrum、Optimism)
  • 用于智能合约的 Solidity vs Rust
  • Foundry vs Hardhat 工具
  • 账户抽象(ERC-4337)采用
  • 跨链桥和互操作性
  • DeFi 安全模式和审计实践

操作手册