The libmerkletree library implements Merkle tree calculation, and also includes some higher-level functions to verify a file against a previously-generated Merkle tree. A Merkle tree is a hash tree calculated across blocks in data. Any block size can be specified in this implementation. A digest is calculated across each block in the data, and then a digest is calculated across blocks of the checksums, and this continues until only one block of digest exists. The hierarchical nature of this allows individual blocks of a file to be verified, even if other parts of the file have been modified. A degenerate case, in which the data is less than the blocksize, will mean that a single digest value for the block is calculated. This will be the same as the digest algorithm applied to the whole file. The digest calculations themselves are done by the libmultigest(3) library, and allow concatenation of multiple digests to produce a single large digest value.
Binary packages can be installed with the high-level tool pkgin (which can be installed with pkg_add) or pkg_add(1) (installed by default). The NetBSD packages collection is also designed to permit easy installation from source.
The pkg_admin audit command locates any installed package which has been mentioned in security advisories as having vulnerabilities.
Please note the vulnerabilities database might not be fully accurate, and not every bug is exploitable with every configuration.
Problem reports, updates or suggestions for this package should be reported with send-pr.