When comparing Samhain vs Jacksum, the Slant community recommends Jacksum for most people. In the question“What are the best file integrity checkers?” Jacksum is ranked 18th while Samhain is ranked 23rd. The most important reason people chose Jacksum is:
Jacksum 3.6.0 supports 489 algorithms, including checksums, CRCs, XOFs, cryptographic, and non-cryptographic hash functions. Jacksum also supports the "Rocksoft (tm) Model CRC Algorithm" to customize CRCs. See also [here](https://github.com/jonelo/jacksum/wiki/Manpage#algorithms).
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Provides ability to cryptographically sign configuration and database
Samhain provides a method to cryptographically sign both the configuration file(s) and the database.
Pro Provides centralized logging via secure channels
A centralized log server (titled yule
) provides centralized log consolidation and a secure transport between the samhain client and the yule
server.
Pro OS agnostic
Supports POSIX file systems, including Windows support through Cygwin.
Pro Tons of algorithms
Jacksum 3.6.0 supports 489 algorithms, including checksums, CRCs, XOFs, cryptographic, and non-cryptographic hash functions. Jacksum also supports the "Rocksoft (tm) Model CRC Algorithm" to customize CRCs.
See also here.
Pro File Browser Integrations for Linux, Windows, and macOS
The integration of Jacksum (and Jacksum's cross platform GUI called HashGarten) are available for many file browsers on Linux, Windows, and macOS.
Pro Find files by their hashes
It finds all files that match (or don't match) the hash values in a precalculated hash set.
Example: jacksum -w log4j.hashes /
Pro Hashes partitions and disks
Hashes partitions and disks on Linux, Unix (e.g. macOS), and Microsoft Windows
Pro Find the algorithms to a checksum/CRC
It finds all algorithms to a checksum/CRC by using a brute force algorithm.
Pro File integrity checks
Can perform a file integrity check on a single file, on standard input channel or by passing data on the command line. Can performs a file integrity check against a pre-calculated hash set, and detect ok, failed, missing, and new files. Can even hash and verify NTFS Alternate Data Streams (ADS).
Pro Multi-core/multi-CPU support
Supports multi-threading on multi-processor and multi-core computer systems, it calculates multiple hashes simultaneously, files are read only once, and the calculation load is distributed on the available cores. It also processes multiple files simultaneously, i.e. files are read in parallel.
Pro Many hash value representation formats
Encodings for representing hash values are available: Hex (lower- and uppercase, optional: grouping bytes by a separator), Base16, Base32 (with and without padding), Base32hex (with and without padding), Base64 (with and without padding), Base64url (with and without padding), BubbleBabble, and z-base-32.
Pro User defined formats
Comprehensive format options are available to get the output the user needs, e.g. create ed2k-links, magnet-links or create a compatible Solaris' pkgmap.
Pro Predefined standard formats
Both input and output can occur in 9 predefined standard formats (BSD-, BSD-reversed, GNU/Linux-, openssl-, openssl-reversed, and Solaris' digest style both tagged and untagged, SFV or FCIV) which works with any supported algorithm. GNU file name escaping is supported.
Pro Character set support for I/O
Allows the user to specify the character set for both input and output files, examples: UTF-8, UTF-16, UTF-16BE, UTF-16LE, UTF-32, UTF-32BE, UTF-32LE, GB18030 (Chinese standard), etc.
Pro Large file aware
It can process file sizes up to 8 Exbibytes (= 8,000,000,000 Gibibytes), presupposed the operating system respectively the file system is large file aware, too.
Pro Hashes NTFS Alternate Data Streams (ADS)
It calculates hashes from NTFS Alternate Data Streams (ADS) on Microsoft Windows.
Pro Cross-platform
Windows, Linux, macOS, and any platform with an OpenJDK compatible Java Runtime Environment (JRE) or Java Development Kit (JDK) can run Jacksum, no recompilation required.
Pro Recursive operations
Recursive operations can be controlled by specifying a walking depth. Also the following of symbolic links on files and/or directories can be controlled, and it also detects file system cycles to avoids endless loops.
Pro Supports SHA-3 algorithms
The entire SHA-2 famliy and SHA-3 algorithms are supported: SHA-[224,256,384,512], and SHA-512/[224,256] as in NIST FIPS 180-4, and SHA3-[224,256,384,512], SHAKE[128,256] as in NIST FIPS 202.
Pro Calculates multiple checksums simultaneously
It gives you an added security against attacks on the hash function. Multiple cores are used if available.