###Disclaimer
I am not responsible for any consequences from the use/misuse of this software by ANY party, and provide it for reference only. Please backup any wallets you plan to attempt a recovery on, and note that this program will store your private keys in a plaintext image on your computer. See the LICENSE for full disclaimer.
- Backup Wallet.dat and Private Keys. If the funds are stored on multiple addresses, follow these steps to generate a single file that contains a list of all the Private Keys for all the addresses in your wallet: 1) Unlock the wallet then open the Console window (follow the previously mentioned steps). Part 3: Private Key Restore From a.
- Open up a terminal and run the bitcoind daemon: bitcoind -daemon. Retrieve a list of all the addresses in the wallet: bitcoind listaddressgroupings. For every address you want the private key from, dump it: bitcoind dumpprivkey. Stop the daemon before changing the wallet.dat.
Generate address. This page uses javascript to generate your addresses within your browser, this means we never receive your private keys. You can save this page, turn off internet and generate private keys as lot as you wish. Each key unique. For high randomization we added mouse moving entropy. I spent a couple days beating the hell out of this implementation and Matt has quickly fixed all the bugs I've encountered. In particular I've now sent thousands of transactions and thousands of getaddresses in an abusive testing rig which is constantly unlocking/locking/password changing/account moving, etc. And not lost any coin.
###Introduction
Entropy happens, and bitcoin wallets can get corrupted to the point where they cannot be recovered by the bitcoin-core software or pyWallet. This software checks the entire file for private keys, and makes no assumptions about the presence/correctness of formatting or metadata. As long as the bitcoin private key(s) within the file is not corrupted or encrypted, this software will find and recover the bitcoin stored within, and exports it to an easy-to-scan WIF QR code for import into a mobile wallet.
####Design
This software establishes a 256-bit sliding window at the start of the wallet file. It then moves one byte ahead and exports the next 32 bytes, until it reaches the end of the file. Each set of 32 bytes is a potential EC keypair private key.
It then checks the balance at each private key using a web API, 150 key candidates at a time. The vast majority of the candidates will just have been generated from metadata and will have a balance of 0 bitcoin. When the program does find a positive balance, it saves the keypair.
Finally, any private keys with positive bitcoin balances are exported to WIF, and image files with QR codes are generated. Simply scan these with any of the major mobile wallet programs, and the bitcoin will be immediately spend-able.
###How to use
Private Key Bitcoin
Run the Main.java file in a maven-compatible Java 8 environment. The software will prompt you to specify the location of the wallet file, or you can send it is as the first arg.
This wallet recovery software will output the private keys in Wallet Import Format (WIF) QR codes in the same directory as the wallet file being recovered.
###Limitations
This recovery tool cannot be used on encrypted wallets. This wallet assumes private keys are directly available in the wallet, and cannot reconstruct addresses from master seeds in HD wallets, etc.
####Reliance on 3rd-party web APIs Samsung smart tv 6400 user manual.
This wallet recovery tool leverages the Blockchain.info API to quicky check tens of thousands of bitcoin balances. The wallet client is rate-limited when it consumes this API; please don't abuse this web resource and ruin it for all.
###License
This software is licensed under the GPL license, available in the LICENSE file.
##Copyright (C) 2017 Alex Meijer
This tool generates Waves addresses with 15 word seeds compatible with Waves Lite Client and Waves Full Node. The output is exported to a 'wallet.dat' for the Full Node and to a CSV file, 'addresses.csv', which contains the list of all generated addresses with seeds, private keys and public keys.
Usage
Examples
Generate 3 testnet addresses. Output to screen, wallet.dat and addresses.csv
Generate 100 mainnet addresses. Output to screen, wallet.dat (encrypted with 'mypassword') and addresses.csv
Private Key Definition
Generate 100 addresses. Output to screen, append to existing wallet.dat (encrypted with 'mypassword') and addresses.csv
Advantages Of Private Key Encryption
Generate 100000 mainnet addresses, filter addresses containing the word 'WAVE' (case insensitive)
Same as above but case sensitive