Skip to content

v3.5.0

Compare
Choose a tag to compare
@jonelo jonelo released this 07 Jan 21:21
· 114 commits to main since this release
  • new algorithms:

    • replaced own CRC engine by the BSD 3-clause licenced CRC engine java-crc 1.0.3 from S&K Software Development Ltd.,
      New Zealand (https://github.com/snksoft/java-crc) in order to benefit from the extra [1..7] CRC bit widths.
    • added CRC-82/DARC with aliases crc82, crc82_darc, crc-82, crc-82_darc
      (translated to Java from C-code that was written by Mark Adler)
    • added PHP's variants on Tiger called "tiger192,4", "tiger160,4", and "tiger128,4"
      by adjusting Bouncy Castle's TigerDigest slightly.
    • added legacy sum64
  • new features:

    • make option --file-list recognizing GNU filename escaping
    • added "files-only" style with GNU filename escaping feature enabled in order to generate file lists
      that can be fed to Jacksum again
    • added "hexhashes-only" style to read and write files that contain hash values only (for -w)
    • added option alias called --match-filter for option --wanted-list-filter
    • added option alias called --expect for option --expect-hash
    • improved --info for CRCs:
      • added the polynomial representations: normal, reversed, and Koopman
      • added the reciprocal polynomial for CRCs
      • added binary and hex for each poly representation
      • added polynomial representations and CRC parameters also for optimized CRC implementations
  • updates:

    • improved documentation:
      • added ISO-3309 notes on CRC-64
      • added Wolfram's Hash function to the compatibility lists
    • updated Jacksum's crc-catalogue by Greg Cook's catalogue of parametrised CRC algorithms
      with CRC-8/HITAG, CRC-16/M17, and CRC-32/MEF. Also added CRC-64/JONES, and CRC-64/REDIS.
    • updated bundled bouncycastle version to 1.71 (digests only), but baked out the regression that was
      introduced by issue # 1036 in the Kangaroo class (the constructor parameter is now ignored completely
      in bouncy castle :-/)
  • bug fixes:

    • github issue #22: Statistics are all zero if --check-line has been set
    • github issue #24: Regression: Jacksum 3.0.0 to 3.4.0 hangs while trying to read NTUSER.DAT on Microsoft Windows
      if more than one algo has been selected
    • correctness of check file shows "NaN %" in the statistics if there is no entry at all in the check file
    • updated serialversionUID in the Parameters class, because members have changed in Jacksum 3.4.0
    • jacksum -h exit does not print the entire exit status section
    • option --match-filter match,nomatch doesn't work like --match-filter all
    • be not equal-tolerant for any BASE64* encoding

reliable hash values of jacksum-3.5.0.jar (also included in jacksum-3.5.0.zip):

File info:
    name:                      jacksum-3.5.0.jar
    size:                      1244417 bytes

legacy message digests (avoid if possible):
    MD5 (128 bit):             6afaab1daba2e1a501d8f94420ff7ee0
    SHA1 (160 bit):            36481f4140a8b7a7f354d0864bff9617dd02ac76
    RIPEMD-160 (160 bit):      d1e7020f73728ea4e661a4a397198c1e7d1f6aa4
    TIGER (192 bit):           7a9cce4f746f54fb14c6b507cbb277039b0ce5517cb09e77

256 bit message digests (hex):
    SHA-256 (USA):             e0e6c316f1464ba8211e96e71c458e085afe6e4d131d5afda810d25cf379d7fc
    SHA-512/256 (USA):         7c82c09f1edb1e90df799d7f3afd62a6f9d4dd49924b774257c468fc203e4883
    SHA3-256 (USA):            d3ff1aa483f149fdd880a437654f645bb5aca51ef10ea4494ee360dfdb563129
    SHAKE128 (USA):            4310634a9c9ac95e8f148da495ddfb1769dc8a3fb05bdca3ad603e1fbdc722cd
    SM3 (China):               20643c1f7a28d07c16d0ba7174231c88107a10b7056922a06cd804079a457faa
    STREEBOG 256 (Russia):     0817ffa951d74466cc87ffe254d50cf097474b93bb28ac0685217cb0b788b818
    Kupyna256 (Ukraine):       3004ea819a47273a12ecc6624c336fda2aa54c3197f179a3f03f17c68d06c1c5
    LSH-256-256 (South Korea): f7a6118cdb0f19a847fefbc3591c3fc5627669033b6f057dce2f8385f85bc437
    BLAKE3:                    1bb99ce30956b16b177fc20971cdbd863acf0379ba45efcbcd78e716aee56f85
    KangarooTwelve:            6ed20c58b4314fa81f9999d0cad8945d9ae12216c2d5b797dea6649b6b114939
    KECCAK256:                 6e3487e02999cd5ad87999ac21ee848321537f144a2a220b8be5d36c3d241242

512 bit message digests (base64, no padding):
    SHA-512 (USA):             eqe7LZOFqRn0gHtB/95pJ0FQn+mEDCsZ3VGJPrKtCRi8Z15dotmoAoWyGST7ncbNta9cyfbbMnbVCQ01qVsvsQ
    SHA3-512 (USA):            Ns/H+wPrds+2X2c8z75HP8QsTqMcc9BnHwxPccDDl7Zm7axQzFvv7oB5PPzwxavl0HED8tBTDhSOqlD0liWnEg
    SHAKE256 (USA):            K71vFjdwHYH3PVv3d0eVjvO81RZEgVzEdexdAz46uVSPByPDWX7v63UKRRhyXie59C3aKr/THXJWpeL3gZZiOQ
    STREEBOG 512 (Russia):     ZBMGpiXTa1IkYs+TpSmmv4Oqxus5JfFl+FP211p3A54ZAq2r19BD5pPW4s4iquMN4xcZt9ev4AphDsJ0j/s01A
    KUPYNA-512 (Ukraine):      ojBhKzbT02IhLQZwQX5/prINfJ5J7EWPVk1tp876tWplsx05NYA+EaCv3R2sMPIfdGn/LqiibbkUzzAiIwRHTg
    LSH-512-512 (South Korea): v8sSmPQoQ7Pi+EHVwY3YM+h6v/YzU7b9qc+pkXPxK4bfAQZDw+XE0HRrYbr0RlaYPWKuc1UinS51BR+5p8WyDA
    BLAKE2b-512:               MbASG/EmPZHwl1SAfub95g1QWRq5TB6VBvcwDkfFvLZ2CK+cyMdaClDOhlpRvohGVrbVRijwjWCpdXY3Q7VFRQ
    KECCAK512:                 3l6zIL+4XS77c/rOqb8KXtn/2EdVm/xx4QrZGJv4bSRZSPxdOHK1w4YddZOshB4wn0vMZX26ADp5k7j5BsUivQ
    MarsupilamiFourteen:       bH6yr0YzF70JgbNqtROJnQuodVzFJHy4nupKtrnsiNqd7GxTLsYp6AsofWx9Q57lIquPYMHmfWcsHxF4sfEdPg
    SKEIN-512-512:             mv8YA3AaK6v7vZfALg/j4wGOkQje9zxgJ022+sraaWQJiil7J/N7XN+3tfxZC/3ROV9j3aYIgh6EuGok6Lw06A
    WHIRLPOOL:                 dUcqeKaehET8HLb+5P3+Yei9jmsKQxezszHJNh0yfwE+Hna24iyY/Zqaeex/PO/CZP3rfFVI34+z3rspRcJorw

reliable hash values of jacksum-3.5.0.zip:

File info:
    name:                      jacksum-3.5.0.zip
    size:                      1163559 bytes

legacy message digests (avoid if possible):
    MD5 (128 bit):             4868c6a3f52ddc242ed9990062428a0e
    SHA1 (160 bit):            1d692142a64600e4927b631b8fcbc7a351f0d36e
    RIPEMD-160 (160 bit):      790687de080140704d67944dbe886e5ac7560d4a
    TIGER (192 bit):           58a0f4527cc5d01e73ea66c71344dfd1f5d060c336c811e7

256 bit message digests (hex):
    SHA-256 (USA):             039357a4e79c23ac11900f839bb2b48c8b8f30aaa139371425e4e6e884a453ab
    SHA-512/256 (USA):         fd1831471b22ef00461d41de43fa505a09d264381b8da3731ed597ee053c1bb8
    SHA3-256 (USA):            0a10dd2f755a0f5b87b31431047641cc0ff41a605e2c5b14775ce8ed4345bbdd
    SHAKE128 (USA):            0b9b3833a059cc119e85a316b1b9d9e8d5ad712353a38218dc0e4d98c7a71b85
    SM3 (China):               b2716e83ae773084284ac74dbcdcd3bba2ef303452e36f3aaf3ba8e50587648d
    STREEBOG 256 (Russia):     88faa83abfc397535ecb0b58edadcf7ae6498f65e0618b55af61fb37ced1357a
    Kupyna256 (Ukraine):       aec3900c2bcd399cef029c3f1994c281d5c584167a104484cdddf686cbbbeb1d
    LSH-256-256 (South Korea): 37633ffb3712259727b00f4373da9b5092a9c6e55182010c8eb84ca3ab66ad84
    BLAKE3:                    6a22ca1dabb4b9468090c34ff04ddc758fcdbc62663a557e2353754b05d3b279
    KangarooTwelve:            84644115346ee8aa0c39955999a443ca904e59a1442c4174015e7dea101229f4
    KECCAK256:                 fe5d6a1532d288deb0f7635c28752e5b43fca6e553a764463c756b5942f7df1c

512 bit message digests (base64, no padding):
    SHA-512 (USA):             04VWvFMmnlcVAIW8FCv3/j+SjobtdrWn7y4+iQ3nG2CCDwe6aoZiOXpFDg08msQw3pscmDCTzzNpAB2eUTpjJg
    SHA3-512 (USA):            PuG6Zwmdym11T0p9OmqmJCS5/va36bMKSCAwjoCnH5v/jtRJawUijJFtEmQidvLZ4Wfx3A0dEXdz+evHvHIGRA
    SHAKE256 (USA):            f8HYESgEvDOpFJeuz5zOEJ8LE+RPaFa5U7aGA7j8P2Rs9ty7Du1+ntA+7jt5mtiRx+5msSLj5eRjEvy3OJP4+w
    STREEBOG 512 (Russia):     xrnAUMFKQ2z9tFaAi3vsHpmt0fhkJs4Gu8jj0Wr8nmP740mRyita51UAWaYXNKME/bt7EEIPaqCBjqdwBm0D4w
    KUPYNA-512 (Ukraine):      fgtjHg9HSMVmSNhYUSO2v335IJGXlkLN/9XSs1pX4Pu9KKX22TtdMRCWF66NeHZqAMtLcG8qw0zW45qgEZOuuQ
    LSH-512-512 (South Korea): b5p8VthFgn+9CPdOPtxqdiJjuxW7tf6cyCsAD4B3Pwg1u6elsoBGi0CAuUgwaqGmkccRZ1XnNpkiWkPESfOzxA
    BLAKE2b-512:               BDrAF0gbi6DfSkc6Lqncsb+/84yJHDDilWb6h0o8yFUb27omW/elNM7sbOH0fDY17v2HqioYSjRVygNnTRXbVQ
    KECCAK512:                 oga4YRlDN2Ix78XaBHjONpJ3bX2MoEKXog1panxwNGqFuB5TyaeRr3iAkr4kcDpK/OX/QruZFReLI5BSqdaXpQ
    MarsupilamiFourteen:       zz57pNDobHix33hMv9V9uTIdQb/lh8tP5HVbXt2rHMPphNfOmqzSk0Y159uNUYIygtVTLEhdyt5H2JqAyu5jZg
    SKEIN-512-512:             9VG3T5SfDLQHwitO5zoK0v5CXWovquAAFoVDIw305VqSZvIMOZIL13uYPK0qnn8MJYOsK5DRkz7fTvyGJfUSVg
    WHIRLPOOL:                 vP32L+rAvAuL1j/NqfM6Q4aFDRrMBTgq3B2RW6HsSn0p+DfS5oOeRb3cwH1tQPI3WadlrC/B/usWKrxp+wzm2Q