Jon-Becker/heimdall-rs
GitHub: Jon-Becker/heimdall-rs
Heimdall 是一个基于 Rust 的高性能 EVM 智能合约分析工具包,专注于字节码反编译、控制流图生成及从未验证合约中提取信息。
Stars: 1515 | Forks: 160
# heimdall-rs



## 概述
Heimdall 是一个高级 EVM 智能合约工具包,专门用于字节码分析和从未经验证的合约中提取信息。Heimdall 使用 Rust 编写,旨在比其他现有工具更快、模块化程度更高且更准确。
目前,Heimdall 支持以下操作:
* EVM 字节码反汇编
* EVM 智能合约控制流图生成
* EVM 智能合约反编译
* 智能合约存储转储
* 原始交易 Calldata 解码
* 原始交易 Trace 解码
## 安装与使用
确保已安装 Rust 和 Cargo:
```
curl https://sh.rustup.rs -sSf | sh
```
Heimdall 的更新和安装管理器 `bifrost` 可以使用以下命令进行安装:
```
curl -L http://get.heimdall.rs | bash
```
如果你想手动安装 bifrost,可以从[这里](./bifrost/bifrost)下载最新版本。
安装 `bifrost` 后,你可以在新的终端中使用以下命令来安装 Heimdall:
```
bifrost
```
编译完成后,即可在新的终端中使用 `heimdall` 命令。有关高级选项,请参阅 [bifrost 文档](https://jbecker.dev/r/heimdall-rs/wiki/installation)。
_遇到问题?请查看 wiki 中的[故障排除](https://jbecker.dev/r/heimdall-rs/wiki/troubleshooting)部分。_
## 文档
关于 heimdall-rs 的所有文档均可在 [wiki](https://jbecker.dev/r/heimdall-rs/wiki) 中找到。
## 贡献
如果你想为 Heimdall 做出贡献或添加模块,请提交 pull-request 并附上你的更改,以及有关更改、添加或改进内容的详细信息。
有关更详细的信息,请参阅[贡献指南](https://jbecker.dev/r/heimdall-rs/wiki/contributing)。
## 问题反馈
如果你发现了问题或有疑问,请在[这里](https://jbecker.dev/r/heimdall-rs/issues)提交 issue。所有 issue 必须遵循各自的模板。
## 学术引用
Heimdall 已被以下学术论文和学位论文引用:
- Aimar, D. (2023). *Extraction, indexing, and analysis of Ethereum smart contracts data* [Master’s thesis, Politecnico di Torino]. Webthesis. http://webthesis.biblio.polito.it/id/eprint/28450
- Chen, Z., Beillahi, S. M., Barahimi, P., Minwalla, C., Du, H., Veneris, A., & Long, F. (2025). *Secure smart contract with control flow integrity*. arXiv. https://doi.org/10.48550/arXiv.2504.05509
- Darwish, M. (2024). *From bytecode to safety: Decompiling smart contracts for vulnerability analysis* [Bachelor’s thesis, Linnaeus University]. DiVA Portal. https://urn.kb.se/resolve?urn=urn:nbn:se:lnu:diva-129903
- Forissier, T. (2024). *EVeilM: EVM bytecode obfuscation* [Master’s thesis, KTH Royal Institute of Technology]. DiVA Portal. https://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-359674
- Gkioka, M. (2025). *Domain transfer via decompilation: Enhancing code LLMs’ performance for blockchain applications* [Master’s thesis, National and Kapodistrian University of Athens]. Pergamos. https://pergamos.lib.uoa.gr/uoa/dl/object/5296079
- Lagouvardos, S., Bollanos, Y., Debono, M., Grech, N. & Smaragdakis, Y. (2025). *Precise static identification of Ethereum storage variables*. arXiv. https://doi.org/10.48550/arXiv.2503.20690
- Lagouvardos, S., Bollanos, Y., Grech, N., & Smaragdakis, Y. (2025). *The incredible shrinking context…in a decompiler near you*. arXiv. https://doi.org/10.48550/arXiv.2409.11157
- Liu, Y., Li, X., & Li, Y. (2025). *DeepTx: Real-time transaction risk analysis via multi-modal features and LLM reasoning*. arXiv. https://doi.org/10.48550/arXiv.2510.18438
- Solmaz, O., Heimbach, L., Vonlanthen, Y., & Wattenhofer, R. (2025). *Optimistic MEV in Ethereum layer 2s: Why blockspace is always in demand*. arXiv. https://doi.org/10.48550/arXiv.2506.14768
- Ye, M., Lin, X., Nan, Y., Wu, J., & Zheng, Z. (2024). Midas: Mining profitable exploits in on-chain smart contracts via feedback-driven fuzzing and differential analysis. In M. Christakis & M. Pradel (Eds.), *ISSTA 2024: Proceedings of the 33rd ACM SIGSOFT International Symposium on Software Testing and Analysis* (pp. 794–805). Association for Computing Machinery. https://doi.org/10.1145/3650212.3680321
如果你已经在研究中使用或计划使用 Heimdall,请通过 [电子邮件](mailto:jonathan@jbecker.dev) 或 [Twitter](https://x.com/BeckerrJon) 与我联系!我很乐意了解你正在使用 heimdall 做什么 :)
标签:Calldata, EVM, Rust, SOC Prime, URL提取, Web3, 云安全监控, 云资产清单, 交易解码, 以太坊, 区块链, 去中心化应用, 反编译, 可视化界面, 合约审计, 开发工具, 控制流图, 文档结构分析, 智能合约, 未验证合约, 网络流量审计, 逆向工程, 通知系统, 静态分析