Projects STRLCPY btcrecover Commits 610cdb88
🤬
Revision indexing in progress... (symbol navigation in revisions will be accurate after indexed)
  • ■ ■ ■ ■ ■ ■
    CREDITS.md
     1 +A number of third-party libraries are distributed with the btcrecover
     2 +package. All credits for any third-party libraries go to their respective
     3 +authors, and the libraries themselves may only be distributed under the
     4 +terms of their respective licenses. In alphabetical order, this includes
     5 +but is not limited to:
     6 + 
     7 + * aespython, please see [aespython/README.txt](aespython/README.txt) for
     8 + more information
     9 + 
     10 + * decorator, please see [decorator.py](decorator.py) for more information
     11 + 
     12 + * progressbar, please see [progressbar/README.txt](progressbar/README.txt)
     13 + for more information
     14 + 
     15 + * sha512-ng_kernel.cl, please see [sha512-ng-bc_kernel.cl](sha512-ng-bc_kernel.cl)
     16 + for more information
     17 + 
  • ■ ■ ■ ■ ■
    README.md
    skipped 14 lines
    15 15   * Supported on Windows, Linux, and OS X
    16 16   * Options to help minimize the search space - the more you remember about your password, the less time it will take to find
    17 17   * Multithreaded searches, with user-selectable thread count
     18 + * Experimental GPU acceleration for Bitcoin Core and Litecoin-Qt wallets
    18 19   * Wildcard expansion
    19 20   * Typo simulation
    20 21   * Progress bar and ETA display (at the command line)
    skipped 4 lines
    25 26   
    26 27  ----------
    27 28   
    28  -Please see [TUTORIAL.md](TUTORIAL.md) for more information, including installation instructions and requirements.
     29 +**Please see [TUTORIAL.md](TUTORIAL.md) for more information, including installation instructions and requirements.**
    29 30   
    30 31  If you find *btcrecover* helpful, please consider a small donation:
    31 32  **[17LGpN2z62zp7RS825jXwYtE7zZ19Mxxu8](bitcoin:17LGpN2z62zp7RS825jXwYtE7zZ19Mxxu8?label=btcrecover)**
    skipped 3 lines
  • ■ ■ ■ ■ ■ ■
    TUTORIAL.md
    skipped 304 lines
    305 305   
    306 306  With this combination, you will also need to download and install:
    307 307   
    308  - * The latest version of Python 2.7, either the 32-bit version or the 64-bit version. Currently this is the “Python 2.7.6 Windows Installer” for the 32-bit version, or “Python 2.7.6 Windows X86-64 Installer” for the 64-bit version (which is preferable if you have a 64-bit version of Windows), both available here: <https://www.python.org/download/>
     308 + * The latest version of Python 2.7, either the 32-bit version or the 64-bit version. Currently this is the “Python 2.7.6 Windows Installer” for the 32-bit version, or “Python 2.7.6 Windows X86-64 Installer” for the 64-bit version (which is preferable if you have a 64-bit version of Windows and don't plan on using GPU acceleration), both available here: <https://www.python.org/download/>
    309 309   
    310 310   * Optional, but highly recommended for MultiBit or Electrum (for a 30x speed improvement): The latest binary version of PyCrypto for Python 2.7, either the 32-bit version or the 64-bit version to match your version of Python. Currently this is “PyCrypto 2.6 for Python 2.7 32bit” or “PyCrypto 2.6 for Python 2.7 64bit” available here: <http://www.voidspace.org.uk/python/modules.shtml#pycrypto>
    311 311   
    312  - * Optional, allows *btcrecover* to run as a low-priority process so it doesn’t hog your CPU and slightly improves autosave safety: The latest version of pywin32 for Python 2.7, either the 32-bit version or the 64-bit version to match your version of Python. Currently this is “pywin32-218.win32-py2.7.exe” for the 32-bit version or “pywin32-218.win-amd64-py2.7.exe” for the 64-bit version available in the “Build 218” folder here: <http://sourceforge.net/projects/pywin32/files/pywin32/>
     312 + * Optional, allows *btcrecover* to run as a low-priority process so it doesn’t hog your CPU and slightly improves autosave safety: The latest version of pywin32 for Python 2.7, either the 32-bit version or the 64-bit version to match your version of Python. Currently this is “pywin32-219.win32-py2.7.exe” for the 32-bit version or “pywin32-219.win-amd64-py2.7.exe” for the 64-bit version available in the “Build 219” folder here: <http://sourceforge.net/projects/pywin32/files/pywin32/>
     313 + 
     314 +#### Windows GPU acceleration for Bitcoin Core or Litecoin-Qt ####
     315 + 
     316 +To enable the experimental GPU acceleration features in Windows, you will need to download and install the 32-bit version of Python 2.7 plus the optional components you'd like as detailed above (and *only* this version, no other version of Python can be installed except the 32-bit version of Python 2.7 plus any optional libraries), and you will also need to download and install:
     317 + 
     318 + * The latest binary version of PyOpenCL for Python 2 & Python(x,y) available here: <https://code.google.com/p/pythonxy/wiki/AdditionalPlugins>. (The download link on that page is a button to the right of “pyopencl” which has an arrow pointing downwards.)
     319 + 
     320 + * The latest binary version of NumPy for Python 2.7. Currently this is “numpy-1.8.1-win32-superpack-python2.7.exe”, available next to “Looking for the latest version?” here: <http://sourceforge.net/projects/numpy/files/NumPy/>
     321 + 
     322 +If you encounter the error `ImportError: DLL load failed` when running *btcrecover*, you will also need to copy the file named `boost_python-vc90-mt-1_54.dll` from the `C:\Python27\DLLs\` directory into the `C:\Python27\Lib\site-packages\pyopencl\` directory (this is apparently a bug in the PyOpenCL installer).
    313 323   
    314 324  ### Linux or OS X – Bitcoin Core, MultiBit Classic, Electrum, or Litecoin-Qt ###
    315 325   
    skipped 45 lines
    361 371  The key files have names which look like `walletname-20140407200743.key`. If you've created additional wallets, their `key-backup` directories will be located elsewhere and it's up to you to locate them. Once you have, choose the most recent `.key` file and copy it into the directory containing `btcrecover.py` for it to use.
    362 372   
    363 373  For more details on locating your MultiBit private key backup files, see: <https://www.multibit.org/en/help/v0.5/help_fileDescriptions.html>
     374 + 
     375 +### GPU acceleration for Bitcoin Core and Litecoin-Qt wallets###
     376 + 
     377 +*btcrecover* includes experimental support for using one or more graphics cards or dedicated accelerator cards to increase search performance with Bitcoin Core and Litecoin-Qt wallets. This can offer on the order of *100x* better performance when enabled.
     378 + 
     379 +In order to use this feature, you must have a card and drivers which support OpenCL (most AMD and NVIDIA cards and drivers already support OpenCL on Windows), and you must install the required Python libraries as described in the [Windows GPU acceleration](#windows-gpu-acceleration-for-bitcoin-core-or-litecoin-qt) section. GPU acceleration should also work on Linux and OS X, however instruction for installing the required Python libraries are not currently included in this tutorial.
     380 + 
     381 +To enable GPU support, add the `--enable-gpu` option to the command line. There are two other options, `--global-ws` and `--local-ws`, which should also be provided along with specific values to improve the search speed. Unfortunately, the specific values for these options can only be determined by trial and error. A good starting point is:
     382 + 
     383 + C:\python27\python btcrecover.py --wallet wallet.dat --performance --enable-gpu --global-ws 4096 --local-ws 512
     384 + 
     385 +The `--performance` option tells *btcrecover* to simply measure the performance until Ctrl-C is pressed, and not to try testing any particular passwords. You will still need a wallet file (or an `--mkey` if you'd prefer) for performance testing. After you you have a baseline from this initial test, you can try different values for `--global-ws` and `--local-ws` to see if they improve or worsen performance.
     386 + 
     387 +Finding the right values for `--global-ws` and `--local-ws` can make a 10x improvement, so it's usually worth the effort.
     388 + 
     389 +Generally when testing, you should increase or decrease these two values by powers of 2, for example you should increase or decrease them by 128 or 256 at a time. It's important to note that `--global-ws` must always be evenly divisible by `--local-ws`, otherwise *btcrecover* will exit with an error message.
     390 + 
     391 +Although this procedure can be tedious, with larger tokenlists or passwordlists they can make a significant difference.
    364 392   
    365 393  ### command-line options inside the tokens file ###
    366 394   
    skipped 119 lines
  • ■ ■ ■ ■ ■ ■
    sha512-ng-bc_kernel.cl
    skipped 8 lines
    9 9   * http://www.gnu.org/licenses/gpl-2.0.html
    10 10   */
    11 11   
     12 +/*
     13 + * This software is originally attributed to the authors of the JohnTheRipper
     14 + * software package, and in particular to Claudio André who developed all of
     15 + * the core SHA512 functionality. It was pieced together from files downloaded
     16 + * from the JohnTheRipper source repository at the link below, and then
     17 + * lightly modified to suit the purposes of this software package, btcrecover.
     18 + *
     19 + * https://github.com/magnumripper/JohnTheRipper/tree/bleeding-jumbo/src/opencl
     20 + */
     21 + 
    12 22  #define _OPENCL_COMPILER
    13 23   
    14 24   
    skipped 296 lines
Please wait...
Page is in error, reload to recover