Average Ratings 0 Ratings
Average Ratings 0 Ratings
Description
LevelDB is a high-performance key-value storage library developed by Google, designed to maintain an ordered mapping between string keys and string values. The keys and values are treated as arbitrary byte arrays, and the stored data is organized in a sorted manner based on the keys. Users have the option to supply a custom comparison function to modify the default sorting behavior. The library allows for multiple changes to be grouped into a single atomic batch, ensuring data integrity during updates. Additionally, users can create a temporary snapshot for a consistent view of the data at any given moment. The library supports both forward and backward iteration through the stored data, enhancing flexibility during data access. Data is automatically compressed using the Snappy compression algorithm to optimize storage efficiency. Moreover, interactions with the external environment, such as file system operations, are managed through a virtual interface, giving users the ability to customize how the library interacts with the operating system. In practical applications, we utilize a database containing one million entries, where each entry consists of a 16-byte key and a 100-byte value. Notably, the values used in benchmarking compress to approximately half of their original size, allowing for significant space savings. We provide detailed performance metrics for sequential reads in both forward and reverse directions, as well as the effectiveness of random lookups, to showcase the library's capabilities. This comprehensive performance analysis aids developers in understanding how to optimize their use of LevelDB in various applications.
Description
LibFuzzer serves as an in-process, coverage-guided engine for evolutionary fuzzing. By being linked directly with the library under examination, it injects fuzzed inputs through a designated entry point, or target function, allowing it to monitor the code paths that are executed while creating variations of the input data to enhance code coverage. The coverage data is obtained through LLVM’s SanitizerCoverage instrumentation, ensuring that users have detailed insights into the testing process. Notably, LibFuzzer continues to receive support, with critical bugs addressed as they arise. To begin utilizing LibFuzzer with a library, one must first create a fuzz target—this function receives a byte array and interacts with the API being tested in a meaningful way. Importantly, this fuzz target operates independently of LibFuzzer, which facilitates its use alongside other fuzzing tools such as AFL or Radamsa, thereby providing versatility in testing strategies. Furthermore, the ability to leverage multiple fuzzing engines can lead to more robust testing outcomes and clearer insights into the library's vulnerabilities.
API Access
Has API
API Access
Has API
Integrations
Atheris
C
C++
ClusterFuzz
Fuzzbuzz
Google Cloud Platform
Google ClusterFuzz
Jazzer
LedisDB
OrbitDB
Integrations
Atheris
C
C++
ClusterFuzz
Fuzzbuzz
Google Cloud Platform
Google ClusterFuzz
Jazzer
LedisDB
OrbitDB
Pricing Details
No price information available.
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
Founded
2011
Country
United States
Website
github.com/google/leveldb
Vendor Details
Company Name
LLVM Project
Founded
2003
Website
llvm.org/docs/LibFuzzer.html