1. FDigit 首页
  2. 区块链技术认证

《以太坊智能合约最佳安全实践》

第一章、安全哲学

1. BUG做好准备
2. 在正式发布完整版本之前,最好先发现错误
3. 保持合约的简洁性,复杂增加了出错的可能性
4. 保持最新,实时跟踪安全漏洞
5. 注意区块链属性陷阱
6. 基本的平衡:简单性与复杂性平衡

第二章、安全开发建议

1. 协议特定建议
2. Solidity 特性建议
3. 过时历史建议

第三章、已知攻击

1. 可重入性
2. 前端运行(又名交易顺序依赖)
3. 事件戳依赖性
4. 整数溢出和下溢
5. 可恢复和意外的Dos
6. 带有限制手续费的DoS
7. 手续费不足
8. 强制将以太传送到合约
9. 过时/历史性攻击
10. Call深度攻击

第四章、软件工程技术

1. 升级有bug的合约
2. 断路由(暂停合约功能)
3. 减速带(延迟合同操作)
4. 限速
5. 合约推出

第五章、令牌实施最佳实践

1. 符合最新标准
2. 注意EIP-20的前段运行攻击
3. 防止将令牌转移到0x0地址
4. 防止将令牌转移到合约地址

第六章、安全工具

1. 可视化
	- Solidity Visual Auditor 
	- Sūrya
	- Solgraph
	- EVM Lab
	- ethereum-graph-debugger
	- Piet
2. 静态和动态分析
	- MythX
	- Mythril 
	- Slither 
	- Contract-Library 
	- Echidna 
	- Manticore 
	- Oyente
	- Securify
	- SmartCheck
	- Octopus
	- sFuzz
3. OSS分类和测试用例
	- SWC-registry
	- SWC Pages
4. 测试覆盖率
	- solidity-coverage
5. Linters
	- Solcheck 
	- Solint
	- Solium 
	- Solhint

发布者:黎跃春,转转请注明出处:https://www.fdigit.com/ethereum-smart-contract-best-p/

发表评论

登录后才能评论