shasum - Print or Check SHA Checksums


Usage: shasum [OPTION] [FILE]... or: shasum [OPTION] --check [FILE] Print or check SHA checksums. With no FILE, or when FILE is -, read standard input. -a, --algorithm 1 (default), 224, 256, 384, 512 -b, --binary read files in binary mode (default on DOS/Windows) -c, --check check SHA sums against given list -p, --portable read files in portable mode produces same digest on Windows/Unix/Mac -t, --text read files in text mode (default) The following two options are useful only when verifying checksums: -s, --status don\*(Aqt output anything, status code shows success -w, --warn warn about improperly formatted SHA checksum lines -h, --help display this help and exit -v, --version output version information and exit The sums are computed as described in FIPS PUB 180-2. When checking, the input should be a former output of this program. The default mode is to print a line with checksum, a character indicating type (\`*\*(Aq for binary, \`?\*(Aq for portable, \` \*(Aq for text), and name for each FILE.


The shasum script provides the easiest and most convenient way to compute SHA message digests. Rather than writing a program, the user simply feeds data to the script via the command line, and waits for the results to be printed on standard output. Data can be fed to shasum through files, standard input, or both.

The following command shows how easy it is to compute digests for typical inputs such as the NIST test vector \*(L"abc\*(R":

perl -e "print qw(abc)" | shasum

Or, if you want to use SHA-256 instead of the default SHA-1, simply say:

perl -e "print qw(abc)" | shasum -a 256

Since shasum uses the same interface employed by the familiar sha1sum program (and its somewhat outmoded anscestor md5sum), you can install this script as a convenient drop-in replacement.


Copyright (c) 2003-2008 Mark Shelor <>.


shasum is implemented using the Perl module Digest::SHA or Digest::SHA::PurePerl.