Provided by: rhash_1.3.9-1_amd64 bug

NAME

       rhash - calculate/check CRC32, MD5, SHA1, GOST, TTH, BTIH or other hash sums.

SYNOPSIS

       rhash [ option ]... [ file ]...

DESCRIPTION

       RHash  (Recursive  Hasher)  computes  and  verifies various message digests (hash sums) of
       files or strings. Supported message digests include CRC32, CRC32C, MD4, MD5, SHA1, SHA256,
       SHA512,  SHA3,  Tiger,  DC++  TTH,  BTIH, AICH, ED2K, GOST R 34.11-*, RIPEMD-160, HAS-160,
       EDON-R 256/512, Whirlpool, Snefru-128/256.

       The program can create and verify Magnet links and eDonkey ed2k:// links, see --magnet and
       --ed2k-link options.

       A dash string parameter `-' is interpreted as stdin file.

       By  default  rhash  prints sums in SFV format with CRC32 hash sum only.  The format can be
       changed by options --bsd, --magnet, --simple, --printf, --template.  To  output  all  sums
       use the `-a' option.

       The  default  output  format  can  be  changed  by  renaming  the  program  or  placing  a
       hardlink/symlink to it with a filename containing strings `crc32', `crc32c', `md4', `md5',
       `sha1',   `sha256'   `sha512',   `tiger',  `tth',  `btih',  `aich',  `ed2k',  `ed2k-link',
       `gost12-256',   `gost12-512',   `gost94',   `gost94-cryptopro',   `ripemd160',   `has160',
       `whirlpool', `edonr256', `edonr512', `snefru128', `snefru256', `sfv' or `magnet'.

PROGRAM MODE OPTIONS

       The  default  mode  is  to  print hash sums for all files and directory trees specified by
       command line. The mode can be set by the following options.

       -c, --check
              Check hash files specified by command line. RHash can verify hash files in SFV  and
              BSD  formats, standard MD5 and SHA1 files, and text files containing magnet or ed2k
              links (one link per line).  Empty lines and lines starting  with  `;'  or  `#'  are
              skipped.   In  fact  RHash  can  verify most hash files generated by itself without
              formatting options --printf and --template.

       -u, --update=<hash-file>
              Update the hash file specified by the option.  Hash sums will be calculated for all
              files  specified  by command and not present in this hash file. The calculated hash
              sums will be appended  to  the  updated  hash  file  in  the  format  specified  by
              formatting options.  This option can be combined with --recursive, to update a hash
              file for whole directory trees.

       -k, --check-embedded
              Verify files by crc32 sum embedded in their names.

       --torrent
              Create a torrent file for each processed file.

       -h, --help
              Help: print help screen and exit.

       -V, --version
              Version: print version and exit.

       -B, --benchmark
              Run benchmark for selected algorithm(s).

HASH SUMS OPTIONS

       -C, --crc32
              CRC32: calculate and print CRC32 hash sum.

       --crc32c
              CRC32C: calculate and print CRC32C hash sum.

       --md4  MD4: calculate and print MD4 hash sum.

       -M, --md5
              MD5: calculate and print MD5 hash sum.

       -H, --sha1
              SHA1: calculate and print SHA1 hash sum.

       --sha224, --sha256, --sha384, --sha512
              Calculate specified SHA2 hash sum.

       --sha3-224, --sha3-256, --sha3-384, --sha3-512
              Calculate specified SHA3 hash sum.

       --tiger
              Tiger: calculate and print Tiger hash sum.

       -T, --tth
              TTH: calculate and print DC++ TTH sum.

       --btih BTIH: calculate and print BitTorrent Info Hash.

       -A, --aich
              AICH: calculate and print AICH hash.

       -E, --ed2k
              ED2K: calculate and print eDonkey 2000 hash sum.

       -L, --ed2k-link
              eDonkey link: calculate and print eDonkey link.

       -W, --whirlpool
              Whirlpool: calculate and print Whirlpool hash sum.

       -G, --gost12-256
              GOST-2012: calculate and print 256-bit GOST R 34.11-2012  hash,  the  Russian  GOST
              standard hash function.

       --gost12-512
              GOST-2012:  calculate  and  print  512-bit GOST R 34.11-2012 hash, the Russian GOST
              standard hash function.

       --gost94
              GOST-94: calculate and print GOST R 34.11-94 hash, the deprecated Russian  standard
              hash function.

       --gost94-cryptopro
              GOST-94-CRYPTOPRO:  calculate and print CryptoPro version of the deprecated Russian
              GOST R 34.11-94 hash function.

       --ripemd160
              RIPEMD-160: calculate and print RIPEMD-160 hash sum.

       --has160
              HAS-160: calculate and print HAS-160 hash sum.

       --snefru128, --snefru256
              SNEFRU: calculate and print SNEFRU-128/256 hash sums.

       --edonr256, --edonr512
              EDON-R: calculate and print EDON-R 256/512 hash sums.

       -a, --all
              Calculate all supported hash sums.

       --list-hashes
              List names of all supported hashes, one per line.

MISCELLANEOUS OPTIONS

       -r, --recursive
              Recursively process directories, specified by command line.

       --file-list=<file>
              Process given file as a file-list. Lines of this file are interpreted as  paths  to
              files to be processed. Multiple file lists can be specified at command line.

       -m, --message=<text>
              Calculate hash sums of the text message.

       --follow
              Follow symbolic links when processing directories recursively.

       -v, --verbose
              Be verbose.

       -P, --percents
              Show percents, while calculating or checking sums

       --skip-ok
              Don't print OK messages for successfully verified files.

       -i, --ignore-case
              Ignore case of filenames when updating crc files.

       --speed
              Print per-file and the total processing speed.

       -e, --embed-crc
              Rename files by inserting crc32 sum into name.

       --embed-crc-delimiter=<delimiter>
              Insert  specified  <delimiter> before a crc sum in the --embed-crc mode, default is
              white space. The <delimiter> can be a character or empty string.

       --path-separator=<separator>
              Use specified path separator to display paths.

       -q, --accept=<list>
              Set a comma‐delimited list of extensions of the files to process.

       --exclude=<list>
              Set a comma‐delimited list of extensions of the files to exclude from processing.

       -t, --crc-accept=<list>
              Set a comma‐delimited list of extensions of the hash files to verify.

       --maxdepth=<levels>
              Descend at most <levels> (a non‐negative integer) levels of directories  below  the
              command  line  arguments.  `--maxdepth 0' means only apply the tests and actions to
              the command line arguments.

       -o, --output=<file-path>
              Set the file to output calculated hashes and verification results to.

       -l, --log=<file-path>
              Set the file to log errors and verbose information to.

       --openssl=<list>
              Specify which hash functions should be calculated using the OpenSSL  library.   The
              <list> is a comma delimited list of hash names, but only those supported by openssl
              are allowed, e.g. md4, md5, sha1, sha256, ripemd160.  See openssl documentation for
              the full list.

       --gost-reverse
              Reverse  bytes  in  hexadecimal  output of the GOST hash sum.  The most significant
              bytes of the hash will be printed first.  Default order is  the  least  significant
              bytes first.

       --bt-batch=<file-path>
              Turn on torrent batch mode (implies torrent mode). Calculates batch-torrent for the
              files specified at command line and saves the torrent file to  the  file-path.  The
              option -r <directory> can be useful in this mode.

       --bt-private
              Generate BTIH for a private BitTorrent tracker.

       --bt-piece-length
              Set the piece length value for torrent file.

       --bt-announce=<announce-url>
              Add  a  tracker  announce  URL to the created torrent file(s).  Several URLs can be
              passed by specifying the option mutltiple times.  This option  doesn't  change  the
              BTIH hash.

       --benchmark-raw
              Switch  benchmark  output  format  to be a machine‐readable tab‐delimited text with
              hash function name, speed, cpu clocks per byte.  This  option  works  only  if  the
              --benchmark option was specified.

       -- (double dash)
              Mark  the end of command line options. All parameters following the double dash are
              interpreted as files or directories. It is  typically  used  to  process  filenames
              starting  with  a dash `-'.  Alternatively you can specify './' or full path before
              such files, so they will not look like options anymore.

OUTPUT FORMAT OPTIONS

       --sfv  Print hash sums in the SFV (Simple File Verification) output format (default).  But
              unlike  common SFV file, not only CRC32, but any hash sums specified by options can
              be printed.

       -g, --magnet
              Print hash sums formatted as magnet links.

       --bsd  Use BSD output format. Each hash sum is printed on separate line  after  hash  name
              and file's path, enclosed in parentheses.

       --simple
              Use  simple  output  format.  Each  line  will  consist  of  filename and hash sums
              specified by options.

       --hex  Print hash sums in hexadecimal format.

       --base32
              Print hash sums in Base32 format.

       --base64
              Print hash sums in Base64 format.

       --uppercase
              Print hash sums in upper case.

       --lowercase
              Print hash sums in lower case.

       --template=<file>
              Read printf‐like template from given <file>. See the --printf option.

       -p, --printf=<format>
              Format: print format string the standard output, interpreting `\' escapes  and  `%'
              directives. The escapes and directives are:

              \n     Newline.

              \r     Carriage return.

              \t     Horizontal tab.

              \\     A literal backslash (`\').

              \0     ASCII NUL.

              \NNN   The character which octal ASCII code is NNN.

              \xNN   The character which hexadecimal ASCII code is NN.

              A  `\'  character  followed  by  any  other  character  is  treated  as an ordinary
              character, so they both are printed.

              %%     A literal percent sign.

              %p     File's path.

              %f     File's name.

              %u or %U
                     Prefix used to print a filename, file path or base64/raw hash  value  as  an
                     URL‐encoded  string.   For  example: `%uf', `%up', `%uBm', `%u@h' Use %u for
                     lowercase and %U for uppercase characters.

              %s     File's size in bytes.

              %{mtime}
                     File's last modification time.

              %a or %A
                     AICH hash sum.

              %c or %C
                     CRC32 hash sum.  Use %c for lowercase and %C for uppercase characters.

              %g or %G
                     GOST R 34.11-2012 hash.

              %h or %H
                     SHA1 hash.

              %e or %E
                     ED2K hash sum.

              %l or %L
                     EDonkey ed2k://... link.

              %m or %M
                     MD5 hash.

              %r or %R
                     RIPEMD-160 hash.

              %t or %T
                     TTH sum.

              %w or %W
                     Whirlpool hash.

              %{crc32}, %{crc32c}, %{md4}, %{md5}, %{sha1}, %{tiger}, %{tth},  %{btih},  %{ed2k},
              %{aich},  %{whirlpool},  %{ripemd160},  %{has160},  %{gost94}, %{gost94-cryptopro},
              %{gost12-256},  %{gost12-512},  %{sha-224},  %{sha-256},  %{sha-384},   %{sha-512},
              %{sha3-224},  %{sha3-256},  %{sha3-384},  %{sha3-512},  %{edon-r256}, %{edon-r512},
              %{snefru128}, %{snefru256}
                     Print the specified hash sum. The hash is printed in uppercase, if the  name
                     of the hash sum starts with a capital letter, e.g. %{TTH}, %{Sha-512}.

              %x<hash>, %b<hash>, %B<hash>, %@<hash>
                     Use  one  of  these  prefixes  to  output a hash sum in hexadecimal, base32,
                     base64 or raw (binary) format respectively, e.g. %b{md4}, %BH or %xT.

CONFIG FILE

       RHash looks for  a  config  file  at  $XDG_CONFIG_HOME/rhash/rhashrc,  $HOME/.rhashrc  and
       /etc/rhashrc.

       The config file consists of lines formatted as
              variable = value

       where  the  variable  can  be  a  name  of  any  command line option, like magnet, printf,
       percents, etc.  A boolean variable can be set to true by a value `on',  `yes'  or  `true',
       any other value sets the variable to false.

       Empty lines and lines starting with `#' or `;' are ignored.

       Example config file:
       # This is a comment line
       percents = on
       crc-accept = .sfv,.md5,.sha1,.sha256,.sha512,.tth,.magnet

AUTHOR

       Aleksey Kravchenko <rhash.admin@gmail.com>

SEE ALSO

       md5sum(1) cksfv(1) ed2k_hash(1)

BUGS

       Bug    reports    are    welcome!     Post    them    to    the    GitHub    issues   page
       https://github.com/rhash/RHash/issues