cfv is a utility to test and create a wide range of checksum verification files. It currently supports testing and creating sfv, sfvmd5, csv, csv2, csv4, md5, bsdmd5, sha1, sha224, sha256, sha384, sha512, torrent and crc files. Test-only support is available for par, par2.
cfv was originally written by Matthew Mueller (original project home). This is a friendly fork of cfv maintained by David Lisa Gnedt.
Python ≥ 3.7 – older versions might work, but are unsupported. For Python 2 support, see the python2 branch.
- Python Imaging Library (PIL) or Pillow – only needed if you want to create the dimensions column of .crc files.
You can get the latest releases via the Python Package Index (PyPI) or from the Github releases page. Other distribution ways are work-in-progress, see issue #4.
If you have a working Python installation with pip, you can install via PyPI:
pip install cfvDownload a snapshot from the Github releases page or checkout the development version via Git.
python setup.py install
# optional: run tests to verify correct operation
cd test; ./test.pyTo install the development version from AUR (maintained by @vestingz):
yay -S cfv-gitA FreeBSD port is available (maintained by @Terry-Kennedy).
To install the pre-built package (updated quarterly, so may be out-of-date):
pkg install cfvTo build from source (make sure your source tree is up-to-date via any of the usual methods):
cd /usr/ports/security/cfv
make; make install; make cleanTo update the pre-built package:
pkg upgrade cfvTo update from source (again, make sure your source tree is up-to-date):
portupgrade cfvTo use the latest version included in nixpkgs (maintained by @jjtt):
nix-shell -p cfvPlease read the man page man cfv or the usage cfv -h and have fun
Contributions are welcome, just open a pull request
Here is a community-compiled list of alternative tools that cover some of cfv's functionality (without warranty):
- GNU coreutils *sum: md5sum, sha1sum, sha224sum, sha256sum, sha384sum, sha512sum, ...
- cksfv
- rhash (with
-rcdoes more or less the same thing as cfv, performance is good and it supports most hash formats including bittorrent. It lacks cfv's-mthough.) - aria2c (to verify torrent checksums)
- bsdsfv (limited to 1024 files for some reason)
- pure-sfv (doesn't seem to display progress information, even with
-v) - bcfv (a Bash frontend to checksum programs (SHA, Blake3, MD5))
This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
Foundation; either version 2 of the License, or (at your option) any later
version.
See the file COPYING for more information.