Average Ratings 0 Ratings
Average Ratings 0 Ratings
Description
Go-fuzz serves as a coverage-guided fuzzing tool designed specifically for testing Go packages, making it particularly effective for those that handle intricate inputs, whether they are textual or binary in nature. This method of testing is crucial for strengthening systems that need to process data from potentially harmful sources, such as network interactions. Recently, go-fuzz has introduced initial support for fuzzing Go Modules, inviting users to report any issues they encounter with detailed descriptions. It generates random input data, which is often invalid, and the function must return a value of 1 to indicate that the fuzzer should elevate the priority of that input in future fuzzing attempts, provided that it should not be stored in the corpus, even if it uncovers new coverage; a return value of 0 signifies the opposite, while other values are reserved for future enhancements. The fuzz function is required to reside in a package that go-fuzz can recognize, meaning the code under test cannot be located within the main package, although fuzzing of internal packages is permitted. This structured approach ensures that the testing process remains efficient and focused on identifying vulnerabilities in the code.
Description
The hevm project serves as a tailored implementation of the Ethereum Virtual Machine (EVM) designed for tasks like symbolic execution, unit testing, and debugging of smart contracts. Created by DappHub, it seamlessly integrates with the suite of tools offered by the same developer. The hevm command line interface enables users to symbolically execute smart contracts, conduct unit tests, debug contracts interactively while displaying the Solidity source code, or execute any arbitrary EVM code. It allows computations to be carried out using a local state established within a testing framework or retrieved from live networks through RPC calls. Users can initiate symbolic execution with specified parameters to detect assertion violations and can also customize certain function signature arguments while keeping others abstract. Notably, hevm adopts an eager approach to symbolic execution, meaning that it initially strives to investigate all branches of the program. This comprehensive method enhances the reliability and robustness of smart contract development and testing.
API Access
Has API
API Access
Has API
Integrations
Ethereum
Solidity
Pricing Details
Free
Free Trial
Free Version
Pricing Details
Free
Free Trial
Free Version
Deployment
Web-Based
On-Premises
iPhone App
iPad App
Android App
Windows
Mac
Linux
Chromebook
Deployment
Web-Based
On-Premises
iPhone App
iPad App
Android App
Windows
Mac
Linux
Chromebook
Customer Support
Business Hours
Live Rep (24/7)
Online Support
Customer Support
Business Hours
Live Rep (24/7)
Online Support
Types of Training
Training Docs
Webinars
Live Training (Online)
In Person
Types of Training
Training Docs
Webinars
Live Training (Online)
In Person
Vendor Details
Company Name
dvyukov
Website
github.com/dvyukov/go-fuzz
Vendor Details
Company Name
DappHub
Website
github.com/dapphub/dapptools/blob/master/src/hevm/README.md