0.2.0 |
|
---|---|
0.2.0-beta |
|
0.1.3 |
|
#160 in #evm
39KB
800 lines
๐ฆ Brute-force vanity addresses generator for EVM-based blockchains.
Vanity addresses are crypto public keys, personalized and created respecting a series of parameters given by the users of said addresses. This with the aim of making them more personal and easily identifiable, but without giving up the security they provide.
Vanify is a complete implementation of the brute-force vanity address generator for EVM-based blockchains, such as Ethereum, Binance Smart Chain, Polygon, etc, written in Rust.
It supports prefix, suffix, and multiple infixes and disfixes validation, JSON, CSV, XML, and TSV export, optional benchmarking, hex strings formatting, and more.
Table of contents
Installation
From source
You can install Vanify from source by cloning the repository and running the following commands:
$ git clone
$ cd vanify
$ cargo install --path .
From crates.io
You can install Vanify from crates.io by running the following command:
$ cargo install vanify
Usage
Vanify can be used in two ways:
- As a standalone application, which will generate a random address and check if it matches the given parameters.
- As a library, which can be used to generate addresses in a loop.
As a standalone application
To use Vanify as a standalone application, you can run the following command:
$ vanify -p 1234 -s 5678 -n 10
This will generate 10 addresses starting with 0x1234
and ending with 5678
.
Options
It supports the following parameters:
USAGE:
vanify [OPTIONS]
OPTIONS:
-b, --benchmark Benchmark mode
-c, --csv Export to CSV file
-e, --excludes-all <EXCLUDES-ALL>... Excludes all substring(s)
-E, --excludes-any <EXCLUDES-ANY>... Excludes any substring(s)
-f, --filename <FILENAME> Filename for exports
-h, --help Print help information
-i, --includes-all <INCLUDES-ALL>... Includes all substring(s)
-I, --includes-any <INCLUDES-ANY>... Includes any substring(s)
-j, --json Export to JSON file
-n, --number <NUMBER> Number of addresses to search for
-p, --prefix <PREFIX> Prefix to search for
-r, --random Randomize private key generation
-R, --random-unique Randomize private key generation and ensure uniqueness
-s, --suffix <SUFFIX> Suffix to search for
-t, --tsv Export to TSV file
-T, --trim-hex Trim 0x from output keys
-v, --verbose Verbose output
-V, --version Print version information
-x, --xml Export to XML file
-X, --xlsx Export to XLSX file
If a file export option is provided, the results will be exported to relative path /results.
As a library
To use Vanify as a library, you can add it to your Cargo.toml
file:
[dependencies]
vanify = "0.2.0"
And then use it in your code:
use vanify::vanity;
New features
0.2.0 comes with the following new features:
- โ Added input validation
- ๐ Added support for upper case affix inputting
- ๐งช Added more comprehensive tests
- โ Better error handling
- ๐๏ธ Better module structure
- ๐ Better documentation
- ๐ Prettier output
- ๐ฒ Choose between random or sequential private key generation
- ๐ช Added includes and excludes ALL or OR logic
- โ Added export to .xlsx
And solves the following issues:
- ๐ Fixed export to .tsv formatting bug
License
Vanify is licensed under the MIT License.
Contributing
If you want to contribute to Vanify, you can do so by opening a pull request or an issue.
Dependencies
~6MB
~90K SLoC