A vanity address is a wallet address containing a few characters you like at the beginning or the end of the wallet address. Of course we can't just generate the address: the address is a derivative from a secret key. So: this tool generates several secret keys per second. The script will test the derived wallet address against one or more keywords you can supply.
This tool now generates the new X-address formatted accounts. If you are looking for the previous r...
addresses, check this branch.
This tool now supports multiple threads. To use this feature, don't call node xrpwallet.js
but node index.js
and prepend the amount of threads. The default amount of threads is 2
. If you have more cores available, you can run with more threads, allowing you to find your vanity address faster.
node xrpwallet.js wietse pepper
node index.js 4 arwen dino
- Make sure you have nodejs installed on your computer: https://www.npmjs.com/get-npm. (nodejs allowes you to run Javascript code on your computer from the commandline).
- Download the source of this repository (using
git clone
or by downloading the zip) - Start your commandline and go to the folder containing the source of this repository
- Install the dependency (ripple-lib) by running
npm install
- Fire up the tool and append the keywords you are looking for:
node xrpwallet.js hello pepper johndoe
The example command above will search for wallet addresses containing either hello, pepper or johndoe.
If you use Windows and you don't have NodeJS running: here's a screencap of the steps above (1-5).
- This script will look for your keywords at the beginning or at the end of wallet addresses.
- This script will look for matches case insensitive.
- The longer the keyword you are looking for, the longer it takes to find a match.
- If you want to be make sure the generated wallets + keys are safe, generate offline.
Serious question. How do we know these addresses are random and not some sort of sequence? @ Reddit
Good question indeed. The only way to be sure is to check the code;
My code is over here and as you can see is invoke the method "keypairs.generateSeed()".
... I use ripple-keypairs to do this. ripple-keypairs is from Ripple (the company) - this code is open source as well.
The function is on line 17 over here and at line 19 you can see they use the brorand lib. to generate the randomness. This lib. uses the crypto object, a native NodeJS object, by invoking:
crypto.randomBytes()
More info about this method over here.
Tips are highly appreciated at XRP address XVjKs2ae5EgCyKL4oPoNo7RoeBKFCbndk8gq6W6n93WeYZG
/ rPdvC6ccq8hCdPKSPJkPmyZ4Mi1oG2FFkT
or using
the XRP TipBot at Twitter: @WietseWind 😇