[go: up one dir, main page]

Menu

dk-fic

Dirk Krause
← Previous ↑ Home → Next

dk-fic — File integrity checker

Description

The program can either build a file checksum list or check (verify) a checksum list.

A checksum list contains message digests (MD5, SHA-1, RIPEMD-160 and SHA-512), file size and file name.
If support for the SHA-512 message digest algorithm was not found during build process (only a very old version of OpenSSL available), the SHA-512 message digest is skipped.

Message digests are converted to text using ASCII-85 encoding, not ASCII-Hex.
ASCII-85 encoded output is shorter than ASCII-Hex encoded output. Output from dk-fic checksum builder process is intended to be checked by a dk-fic checksum verifier process, not for reading by humans.

When building a file checksum list, the files specified as command line arguments contain lists of file names to produce checksums for. If no file is specified as argument, the list of file names is read from standard input.

When verifying checksum lists, the files specified as command line arguments contain checksum lists previously produced. If no file is specified as argument, the checksum list is read from standard input.

Four different message digest algorithms are used, additionally the file size is written to the checksum list. Constructing a file of same size as the original file producing a checksum collision for four different message digest algorithms should be significantly harder than constructing a file producing a checksum collision for just one algorithm.


Examples

Create checksum list

To create a checksum list:

dk-ls -r -tf -pn . | dk-fic > ../checksumlist.txt
Program Option Purpose
dk-ls List files.
-r Recursive listing including all subdirectories.
-tf Restrict output to files (non-directory items).
-pn Set print order to:
  • n File name
dk-fic Create or verify checksums.
Without a -c option and a file name the program reads standard input, each line contains one file name we have to create a checksum for.

On Linux/Unix we can use

find . -type f | dk-fic > ../checksumlist.txt

instead. Here the find program — i.e. found in the [GNU find utilities (findutils)[(http://www.gnu.org/software/findutils "🌐 Visit"GNU find utilities (findutils)" homepage") — to construct the list of files to check.

When creating a checksum list, the checksum list file is still under construction. Make sure not to include the intended output file into the list of files to build checksums for.

Verify checksum list

To verify a checksum list (i.e. after unpacking an archive):

dk-fic -c < ../checksumlist.txt
Program Option Purpose
dk-fic -c Verify checksums. Each input line on standard input contains file name and checksums for one file.
-i ascii Use this option when verifying on Linux/Unix a checksum list created on Windows.
-i utf-8 Use this option when verifying on Windows a checksum list created on Linux/Unix.

Manual

See the [dk-fic manual] for the full documentation of the program.


This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit (http://www.openssl.org/).
This product includes cryptographic software written by Eric Young (eay@cryptsoft.com).
This product includes software written by Tim Hudson (tjh@cryptsoft.com).

← Previous ↑ Home → Next

Related

Wiki: Home
Wiki: dk-fic manual