区块链
本板块介绍区块链
下面是目录:
目标导向分类
| 目标类型 | 推荐路线 |
|---|---|
| 想了解区块链原理和结构 | 理论为主,适度编码 |
| 想开发区块链 DApp 应用 | 重前后端与合约开发 |
| 想参与底层开发如共识机制 | 重操作系统、密码学与分布式系统 |
| 想做区块链安全或研究 | 注重协议分析、攻击模型、 论文复现 |
学习路径(建议顺序)
① 基础概念理解
- 区块链是什么?为了解决什么问题?
- 核心概念:区块、链、哈希、工作量证明、共识机制、P2P 网络
- 常见公链:Bitcoin、Ethereum、Solana、Polkadot
📚推荐资源:
- 《Mastering Bitcoin》(Andreas Antonopoulos)
- 《区块链原理、设计与应用》(邹均)更偏理论
- YouTube 或 Bilibili:BitCoin & Ethereum 工作原理动画讲解
② 理解以太坊和智能合约
- Ethereum 架构:账户模型、EVM、Gas
- 智能合约编程语言:Solidity
- 部署与交互:Remix IDE、MetaMask、Ganache、Hardhat
📚推荐资源:
- 《Mastering Ethereum》
- CryptoZombies(Solidity 编程互动教程)https://cryptozombies.io/
- Solidity 官方文档
③ 区块链开发实战
- 使用 Hardhat/Foundry 搭建开发框架
- DApp 构建:前端(React.js)+ 合约 + 钱包交互
- 编写和部署 Token(如 ERC20)、NFT(ERC721)
- 测试网络部署(如 Goerli、Sepolia)
📚推荐项目:
- 编写一个投票合约、DEX、NFT 市场
- 学会使用 Web3.js 或 Ethers.js 与合约交互
④ 进阶知识 & 底层实现
- 共识机制:PoW, PoS, PBFT, DAG
- 加密技术:椭圆曲线加密、Merkle Tree、零知识证明
- 区块链分层架构:Layer 1, Layer 2(如 Rollups、State Channel)
- 学习区块链项目源码(如 Bitcoin Core、Geth)
📚推荐课程:
- MIT 6.892: Blockchain and Money(Gary Gensler)
- Stanford CS251: Cryptocurrencies and Blockchain
⑤ 区块链安全与研究方向
- 攻击模型:重放攻击、闪电贷、重入攻击、51% 攻击
- 合约审计工具:Mythril、Slither、Oyente
- 研究前沿:去中心化身份(DID)、DAO、ZK-rollups、MEV
工具与环境
| 类型 | 工具 |
|---|---|
| 钱包 | MetaMask、WalletConnect |
| IDE | Remix、VSCode |
| 合约部署测试 | Hardhat、Truffle、Foundry |
| 节点模拟 | Ganache、Anvil |
| 区块浏览器 | Etherscan、Blockscout |
| 脚本库 | Web3.js、Ethers.js |
实践建议
- 每周做一个小项目,如投票系统、代币、NFT Marketplace
- 多在 testnet 上部署测试,提高合约调试能力
- 加入开发者社区,如 Discord 的 Web3 开发者群、GitHub 开源项目
- 可阅读论文 & 提交区块链方向的 CTF 比赛(如 Paradigm CTF)