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.6 – 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 cfv
Download 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.py
To install the development version from AUR (maintained by @vestingz):
yay -S cfv-git
A FreeBSD port is available (maintained by @Terry-Kennedy).
To install the pre-built package (updated quarterly, so may be out-of-date):
pkg install cfv
To 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 clean
To update the pre-built package:
pkg upgrade cfv
To update from source (again, make sure your source tree is up-to-date):
portupgrade cfv
Please 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
-rc
does more or less the same thing as cfv, performance is good and it supports most hash formats including bittorrent. It lacks cfv's-m
though.) - 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.