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