Provided by: bruteforce-salted-openssl_1.4.0-1build1_amd64 bug

NAME

       bruteforce-salted-openssl - try to find the passphrase for files encrypted with OpenSSL

SYNOPSIS

       bruteforce-salted-openssl [options] <filename>

DESCRIPTION

       bruteforce-salted-openssl  tries  to  find  the  passphrase or password of a file that was
       encrypted with the openssl command. It can be used in two ways:

              •  Try all the possible passwords given a charset.

              •  Try all the passwords in a file (dictionary).

       bruteforce-salted-openssl has the following features:

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

              •  The program should be  able  to  use  all  the  digests  and  symmetric  ciphers
                 available with the OpenSSL libraries installed on your system.

              •  Sending  a  USR1  signal to a running bruteforce-salted-openssl 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  the  file  by  trying  all  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 the
       file  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 the  file  by  trying  all  the  passwords
       contained in a file. The file must have one password per line.

OPTIONS

       -1     Stop the program after finding the first password candidate.

       -a     List the available cipher and digest algorithms.

       -B <file>
              Search  using  binary passwords (instead of character passwords).  Write candidates
              to <file>.

       -b <string>
              Beginning of the password. The default value is "".

       -c <cipher>
              Cipher for decryption. The default value is aes-256-cbc.

       -d <digest>
              Digest for key and initialization vector generation. Default: md5.

       -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 <n> Limit the maximum number of tested passwords to <n>.

       -l <length>
              Minimum password length (beginning and end included). Default: 1.

       -M <string>
              Consider the decryption as successful when the data starts with <string>.   Without
              this  option,  the  decryption  is  considered as successful when the data contains
              mostly printable ASCII characters (at least 90%).

       -m <length>
              Maximum password length (beginning and end included). Default: 8.

       -N     Ignore decryption errors (similar to openssl -nopad).

       -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-salted-openssl process makes it  print
       progress info to standard error and continue.

LIMITATIONS

       The  program  considers  decrypted  data  as correct if it is mainly composed of printable
       ASCII characters (at least 90%). If the file you want to  decrypt  doesn't  contain  plain
       text,  you  will  have to either use the -M option, or modify the 'valid_data' function in
       the source code to match your needs.

       If the file you want to decrypt is big, you should  use  the  -N  option  on  a  truncated
       version of the file (to avoid decrypting the whole file with each password).

EXAMPLES

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

           $ bruteforce-salted-openssl -t 4 -l 5 -m 5 -c aes256 encrypted.file

       Try to find the password of a des3 encrypted file using 8 threads, trying  only  passwords
       with  9  to  11  characters,  beginning with "AbCD", ending with "Ef", and containing only
       letters:

           $ bruteforce-salted-openssl -t 8 -l 9 -m 11 -c des3 -b "AbCD" -e "Ef" -s "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz" encrypted.file

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

           $ bruteforce-salted-openssl -t 6 -f dictionary.txt -c aes256 encrypted-file

       Print progress info every 30 seconds:

           $ bruteforce-salted-openssl -t 6 -f dictionary.txt -c aes256 -v 30 encrypted-file

       Save/restore state between sessions:

           $ bruteforce-salted-openssl -t 6 -f dictionary.txt -c aes256 -w state.txt encrypted-file
             (Let the program run for a few minutes and stop it)
           $ bruteforce-salted-openssl -t 6 -c aes256 -w state.txt encrypted-file

       Show the list of available algorithms:

           $ bruteforce-salted-openssl -a

       If  the  program  finds  a  candidate  password  'pwd', you can decrypt the data using the
       'openssl' command:

           $ openssl enc -d -aes256 -salt -in encrypted.file -out decrypted.file -k pwd

DONATIONS

       If you find this program useful and want to make a donation, you can send coins to one  of
       the following addresses:

       •  Peercoin: PWFNV1Cvq7nQBRyRueuYzwmDNXUGpgNkBC

       •  Bitcoin: 1F1ZfM7XtggHsShK4vwuy9zv98a9wt7nXx

AUTHOR

       bruteforce-salted-openssl was written by Guillaume LE VAILLANT. For contact, use the email
       <guillaume.le.vaillant@openmailbox.org>  or  go   to   https://github.com/glv2/bruteforce-
       salted-openssl.

       This  manual  page  was  written by Joao Eriberto Mota Filho <eriberto@debian.org> for the
       Debian project (but may be used by others).