Provided by: rhash_1.3.9-1_amd64 

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
Linux APR 2010 RHASH(1)