nano-vanity 0.3.2

Generate NANO cryptocurrency addresses with a given prefix
nano-vanity-0.3.2 is not a library.

nano-vanity

Generate a NANO address with a prefix of your choice. The longer the prefix, the longer it'll take to compute.

Installation

First, setup Rust. The best way to do this is with rustup.

You'll also need OpenCL. The process for this varies widely by platform, so your best resource there is probably Google.

To install nano-vanity from crates.io:

cargo install nano-vanity

To install nano-vanity from source:

cargo install

For a list of options, use nano-vanity --help.

Wildcards

You can leave a character up to chance by using . or *.

You can specify that a character must be a number with #.

Using your GPU

This project supports using your GPU to compute the address. This utilizes OpenCL, so you'll need OpenCL installed and working. To enable GPU use, use the --gpu (or -g) option. To disable use of your CPU, use --threads 0 (or -t 0).

Testing randomness

To test the randomness of seeds from this program, you can use dieharder (here's an article on it).

Dieharder should not be taken as proof that this program is secure, however, it should be used as evidence, in combination with an examination of the program's source code.

Here's an example of how to run this with dieharder:

nano-vanity --threads 1 --no-progress . --limit 0 --simple-output | cut -d' ' -f1 | xxd -r -p | dieharder -a -g stdin_input_raw

If you get a weak or failed test, run that test again by passing dieharder -d [test]. While it's statistically unlikely that a test would fail despite nothing being wrong, it can happen, especially given the number of tests dieharder runs.

To be even more careful, you can modify nano-vanity's parameters. The important ones are --simple-output, which makes the output format easily parseable, and -l 0, which generates infinite keys instead of just one.