Skip to main content

Command-line File Verify - versatile file checksum creator and verifier

Project description

cfv – Command-line File Verify

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.

Build Status Linux Build Status FreeBSD Supported Python versions License Latest PyPI version Number of PyPI downloads


Python ≥ 3.6 – older versions might work, but are unsupported. For Python 2 support, see the python2 branch.



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.

From PyPI

If you have a working Python installation with pip, you can install via PyPI:

pip install cfv

From Source

Download a snapshot from the Github releases page or checkout the development version via Git.

python install
# optional: run tests to verify correct operation
cd test; ./

From OS-specific Repositories

Arch Linux

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 ☺️

Alternative Tools

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.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cfv-3.1.0.tar.gz (52.7 kB view hashes)

Uploaded Source

Built Distribution

cfv-3.1.0-py3-none-any.whl (49.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page