---
name: "bruteforce-wallet"
section: "1"
platform: "linux"
package: "bruteforce-wallet"
version: "1.5.4-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/bruteforce-wallet"
---

# bruteforce-wallet(1)

try to find the password of an encrypted wallet file

## NAME

**bruteforce-wallet** - try to find the password of an encrypted wallet file

## SYNOPSIS

```
bruteforce-wallet [options] <filename>
```

## DESCRIPTION

**bruteforce-wallet try to find the password of an encrypted Peercoin** **(or Bitcoin, Litecoin, etc...) wallet file.** **It can be used in two ways:**

- •

  **Try all possible passwords given a charset.**

- •

  **Try all passwords in a file (dictionary).**

**bruteforce-wallet have the following features:**

- •

  **You can specify the number of threads to use when cracking a file.**

- •

  **Sending a USR1 signal to a running bruteforce-wallet process** **makes it print progress and continue.**

- •

  **There are an exhaustive mode and a dictionary mode.**

**In the exhaustive mode the program tries to decrypt one of the encrypted** **addresses in the wallet by trying all the possible passwords.** **It is especially useful if you know something about the password** **(i.e. you forgot a part of your password but still remember most of it).** **Finding the password of a wallet without knowing anything about it would** **take way too much time (unless the password is really short and/or weak).** **There are some command line** *options* **to specify:**

- •

  **The minimum password length to try.**

- •

  **The maximum password length to try.**

- •

  **The beginning of the password.**

- •

  **The end of the password.**

- •

  **The character set to use (among the characters of the current locale).**

**In dictionary mode the program tries to decrypt one of the encrypted** **addresses in the wallet by trying all the passwords contained in a file.** **The file must have one password per line.**

## OPTIONS

- **-b \<string\>**

  **Beginning of the password. The default value is "".**

- **-e \<string\>**

  **End of the password. Default: "".**

- **-f \<file\>**

  **Read the passwords from a file instead of generating them.**

- **-h**

  **Show help and quit.**

- **-l \<length\>**

  **Minimum password length (beginning and end included). Default: 1.**

- **-m \<length\>**

  **Maximum password length (beginning and end included). Default: 8.**

- **-s \<string\>**

  **Password character set. Default value is "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"**

- **-t \<n\>**

  **Number of threads to use. Default: 1.**

- **-v \<n\>**

  **Print progress info every n seconds.**

- **-w \<file\>**

  **Restore the state of a previous session if the file exists,** **then write the state to the file regularly (~ every minute).**

**Note: Sending a USR1 signal to a running bruteforce-wallet process makes it print**  **progress info to standard error and continue.**

## LIMITATIONS

**The program currently only works on unix-like POSIX systems (e.g. GNU/Linux).** **Different versions of BerkeleyDB are usually not compatible with each other.** **Therefore, for the program to work, you will have to check that the BerkeleyDB** **version you are using can read the databases created by the BerkeleyDB version** **your wallet was created with.**

## EXAMPLES

**Try to find the password of an encrypted wallet file using 4 threads, trying only** **passwords with 5 characters:**

```
    $ bruteforce-wallet -t 4 -l 5 -m 5 wallet.dat
```

**Try to find the password of an encrypted wallet file using 8 threads, trying only** **passwords with 5 to 10 characters beginning with "W4l" and ending with "z":**

```
    $ bruteforce-wallet -t 8 -l 5 -m 10 -b "W4l" -e "z" wallet.dat
```

**Try to find the password of an encrypted wallet file using 8 threads, trying only** **passwords with 10 characters using the character set "P情8ŭ":**

```
    $ bruteforce-wallet -t 8 -l 10 -m 10 -s "P情8ŭ" wallet.dat
```

**Try to find the password of an encrypted wallet file using 6 threads, trying the passwords contained in a dictionary file:**

```
    $ bruteforce-wallet -t 6 -f dictionary.txt wallet.dat
```

**Print progress info:**

```
    $ pkill -USR1 -f bruteforce-wallet
```

**Print progress info every 30 seconds:**

```
    $ bruteforce-wallet -t 6 -f dictionary.txt -v 30 wallet.dat
```

**Save/restore state between sessions:**

```
    $ bruteforce-wallet -t 6 -f dictionary.txt -w state.txt wallet.dat
    (Let the program run for a few minutes and stop it)
    $ bruteforce-wallet -t 6 -w state.txt wallet.dat
```

## AUTHORS

**bruteforce-wallet was written by Guillaume LE VAILLANT.**

**This manpage was written by Francisco Vilmar Cardoso Ruviaro.**
