NAME
hashdig-make.pl - Create or update a HashDig database
SYNOPSIS
hashdig-make.pl [-Fiqr] [-a hash-type] -d db file [file ...]
DESCRIPTION
This utility reads one or more HashDig files (see hashdig-harvest(1)) and creates or updates the specified HashDig database. A HashDig database is an ordered list of MD5 hashes -- each of which is tagged as known (K) or unknown (U). HashDig databases are implemented as BTrees and constructed using Perl's DB_File module. Enumerating these databases yields the following format:
hash|category
HashDig stores and manipulates MD5 hashes as lowercase, hexadecimal strings. The primary rule of engagement is that imported hash/category pairs trump existing pairs in the database. This is true unless the pairs are identical. In that case the existing pairs are not modified. If the -i option is specified, imported pairs always trump existing pairs. HashDig files are processed in command-line order. Typically, HashDig files that are sorted in hash order yield much faster load times.
OPTIONS
- -a hash-type
-
Specifies the type of hashes that are to be processed. Currently, the following hash types (or algorithms) are supported: 'MD5', 'SHA1', and 'SHA256'. The default hash type is that specified by the HASH_TYPE environment variable or 'MD5' if HASH_TYPE is not set. The value for this option is not case sensitive.
- -d db
-
Specifies the name of the database to create or update.
- -F
-
Force the specified database to be truncated on open.
- -i
-
Always insert. If a hash already exists, its value is overwritten. This option improves performance when the database is new or the -F option has been specified. Enabling this option, however, disables update tracking.
- -q
-
Don't report errors (i.e., be quiet) while processing files.
- -r
-
Accept records in the reverse HashDig format (i.e., category|hash).
CAVEATS
Databases created from the same input may yield different, but equivalent, DB files. Further, these DB files may not be portable across different platforms or operating systems. Therefore, the recommended method for exchanging or verifying a HashDig database is to dump it to a HashDig file (see hashdig-dump(1)) and operate on that instead.
Take care to avoid mixing DB files that are based on different hash types. This can be easy to do if you're not careful.
AUTHOR
Klayton Monroe
SEE ALSO
hashdig-bash(1), hashdig-dump(1), hashdig-harvest(1), hashdig-harvest-sunsolve(1), hashdig-weed(1)
LICENSE
All documentation and code are distributed under same terms and conditions as FTimes.
|