https://github.com/Ackee-Blockchain/trident
Rust-based framework to Fuzz Solana programs, designed to help you ship secure code.
https://github.com/Ackee-Blockchain/trident
anchor fuzz fuzz-testing fuzzer fuzzing rust solana
Last synced: 4 months ago
JSON representation
Rust-based framework to Fuzz Solana programs, designed to help you ship secure code.
- Host: GitHub
- URL: https://github.com/Ackee-Blockchain/trident
- Owner: Ackee-Blockchain
- License: mit
- Created: 2021-11-08T15:41:16.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2024-10-28T08:56:59.000Z (8 months ago)
- Last Synced: 2024-10-29T17:12:58.260Z (8 months ago)
- Topics: anchor, fuzz, fuzz-testing, fuzzer, fuzzing, rust, solana
- Language: Rust
- Homepage: https://ackee.xyz/trident/docs/latest/
- Size: 11.5 MB
- Stars: 208
- Watchers: 9
- Forks: 19
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
README
![]()
# Trident
Rust-based framework to Fuzz Solana programs, designed to help you ship secure code.
## Documentation
For documentation and guides, visit [ackee.xyz/trident/docs](https://ackee.xyz/trident/docs/).
## Prerequisites
Check [Supported versions](https://ackee.xyz/trident/docs/latest/installation/installation/#supported-versions) section for further details.
- Install [Rust](https://www.rust-lang.org/tools/install)
- Install [Solana tool suite](https://docs.solana.com/cli/install-solana-cli-tools)
- Install [Anchor](https://www.anchor-lang.com/docs/installation)
- Install [Honggfuzz-rs](https://github.com/rust-fuzz/honggfuzz-rs#how-to-use-this-crate) for fuzz testing## Installation
```shell
cargo install trident-cli
```
## Features
### Automated Test Generation
Simplifies the testing process by automatically creating templates for fuzz and integration tests for programs written using the [Anchor Framework](https://www.anchor-lang.com/).### Dynamic Data Generation
Increases test coverage with random instruction data and pseudo-random accounts for unpredictable fuzz test scenarios.### Custom Instruction Sequences
Provides the flexibility to design specific sequences of instructions to meet particular testing needs or to focus on particular aspects of program behavior during fuzz testing.### Invariant Checks
Allows for custom invariants checks to spot vulnerabilities and unwanted behaviors.
## Community
Check out the following places for more Trident-related content:
- Follow on [Twitter/X](https://twitter.com/TridentSolana) & [Warpcast](https://warpcast.com/~/channel/trident) for project updates
- Join the discussions on our Trident [warpcast channel](https://warpcast.com/~/channel/trident) or our [discord channel](https://discord.gg/wyBW9Q23aJ)## Grants
Solana Foundation | Marinade
:-------------------------:|:-------------------------:
[](https://ackee.xyz/blog/introducing-trident-the-first-open-source-fuzzer-for-solana-programs/) | [](https://solana.com/news/riptide-hackathon-winners-solana)## Contribution
Thank you for your interest in contributing to Trident! Please see the [CONTRIBUTING.md](./CONTRIBUTING.md) to learn how.
## License
This project is licensed under the [MIT license](https://github.com/Ackee-Blockchain/trident/blob/master/LICENSE).