Projects / FEHASHMAC


FEHASHMAC is a collection of publicly known hash algorithms integrated into a command-line utility. Currently 42 hash algorithms belonging to 12 algorithm families are supported, including the five SHA-3 finalist contributions, plus HMAC for each algorithm. FEHASHMAC contains a set of over 540 known test vectors and results for each algorithm such that the correct implementation for each hardware platform and compiler version can be directly verified. FEHASHMAC supports bitwise hash calculation for algorithms with available bitwise test vectors. Currently this applies to the SHA algorithms: sha1, sha224, sha256, sha384, sha512, and to the five SHA-3 finalists. The so-called Gillogly bitwise input has only been tested for sha1, but is also implemented in the SHA-2 hashes. Bitwise hash calculation is also supported in sha512-224, sha512-256, and whirl, but there are no bitwise test vectors available. FEHASHMAC can also calculate hashed message authentication codes (HMAC).

Operating Systems

RSS Recent releases

  •  30 Jan 2012 23:04

    Release Notes: Multiple algorithms (including HMACs) can be specified simultaneously. The data files are read only once, and all hashes are calculated in parallel. As an option, the algorithm "all" expands to the list of all known algorithms, which are thus calculated in parallel for each data file or string. Likewise, the algorithm "hmac-all" expands to all known HMAC algorithms. The results of the --check option and the test cases are nicely summarized.

    •  01 Sep 2011 21:29

      Release Notes: This release corrects an error in SKEIN_Final.

      •  03 May 2011 12:58

      Release Notes: Support was added for all SHA-3 finalists: BLAKE, GROESTL, JH, KECCAK, SKEIN for 224, 256, 384, and 512 bit hash lengths, and SKEIN also for 1024 bits. They all support bitwise operation, and bitwise test vectors are included (taken from the SHA-3 submissions). HMAC support was upgraded to FIPS PUB 198-1 (2008). HMAC test vectors were added for SHA{224, 256, 384, 512}, MD5, SHA1, RMD128, and RMD160. The list of algorithms is now sorted alphabetically.


      Project Spotlight


      A diskless or systemless environment for client machines.


      Project Spotlight


      A flexible one time password authentication system with pluggable OTP algorithms and userstorages.