HOME   Rubik's cube | Atom collisions | DelTree | ExtractResources | Hash | IntegrityCheck | SelectiveStartup | Jigoku Sudoku | Rays About

Hash



This command-line application can calculate multiple hash types of files and (sub-)directories.

The currently supported hash algorithms are :
BLAKE2 CRC KECCAK MD4 MD5 MD6 SHA1 SHA2 SHA3 SHAKE SKEIN TIGER1 TIGER2 Whirlpool


Downloads


It is HIGHLY recommended you use the 64-bit version because that one is faster than the 32-bit version.
The ARM versions only work on Windows On ARM editions of Windows.

Recommended version:
Hash v2.20 (64-bit)
File = Hash v2.20 x64.7z
Size = 137673 bytes
CRC-32 = 9f29bbd8
MD5 = 178be6570e8974af01b83cc912781bf4
SHA2-256 = 867edc68c66267fbf342dc320064afc408ca3f11db0a5de9f01c0c17f29614d1

Download only if you have a very old computer:
Hash v2.20 (32-bit)
File = Hash v2.20 x86.7z
Size = 141492 bytes
CRC-32 = a8ddc1b3
MD5 = cef93652cdb8a4fdc14a54eed61a0934
SHA2-256 = af7a5ea2d28f6efee8209342852c1c89e9796d3437836b695e47f750f83807f0

Download only if you know you have a tablet or computer running on ARM:
Hash v2.20 (ARM 64-bit)
File = Hash v2.20 ARM64.7z
Size = 117822 bytes
CRC-32 = 5234d503
MD5 = 03105aeaf2f83391a350d13a741cc695
SHA2-256 = 9ab8600d5e0a2f6dd07342a81d748e9e93a716d1564e4ef427353b3f317b4df3

Download only if the 64-bit ARM version above didn't work on your ARM tablet or computer:
Hash v2.20 (ARM 32-bit)
File = Hash v2.20 ARM32.7z
Size = 123213 bytes
CRC-32 = 3b029b15
MD5 = bc51a941338ea24d551a7c10095392ed
SHA2-256 = dcb6406495e134c79c6b7fa0eded18bf936b2a5da752cb3250c10e1505fa6d04


Usage


Hash <-hash> [-salt] [-salttype] [-subdirs] [-verbosity] [-rename] <[FILE]> <[DIR]>


Parameters


-hash
The hash function. This parameter can be used multiple times.
Must be one of the following:

Algorithm Bit length Description
ALL  All    Do all the hash functions
BLAKE2-128   128-bit    Blake 2
BLAKE2-160   160-bit    Blake 2
BLAKE2-224   224-bit    Blake 2
BLAKE2-256   256-bit    Blake 2
BLAKE2-384   384-bit    Blake 2
BLAKE2-512   512-bit    Blake 2
CRC-16   16-bit    Cyclic Redundancy Check
CRC-32   32-bit    Cyclic Redundancy Check
CRC-64   64-bit    Cyclic Redundancy Check
KECCAK-224   224-bit    Keccak (SHA3 with alternate padding)
KECCAK-256   256-bit    Keccak (SHA3 with alternate padding)
KECCAK-384   384-bit    Keccak (SHA3 with alternate padding)
KECCAK-512   512-bit    Keccak (SHA3 with alternate padding)
MD4   128-bit    Message Digest v4
MD5   128-bit    Message Digest v5
MD6-128   128-bit    Message Digest v6
MD6-160   160-bit    Message Digest v6
MD6-192   192-bit    Message Digest v6
MD6-224   224-bit    Message Digest v6
MD6-256   256-bit    Message Digest v6
MD6-384   384-bit    Message Digest v6
MD6-512   512-bit    Message Digest v6
SHA1   160-bit    Secure Hash Algorithm v1
SHA2-256   256-bit    Secure Hash Algorithm v2
SHA2-384   384-bit    Secure Hash Algorithm v2
SHA2-512   512-bit    Secure Hash Algorithm v2
SHA3-224   224-bit    Secure Hash Algorithm v3
SHA3-256   256-bit    Secure Hash Algorithm v3
SHA3-384   384-bit    Secure Hash Algorithm v3
SHA3-512   512-bit    Secure Hash Algorithm v3
SHAKE-128   128-bit    Shake
SHAKE-256   256-bit    Shake
SHAKE-512   512-bit    Shake
SKEIN-256   256-bit    Skein v1.3
SKEIN-512   512-bit    Skein v1.3
SKEIN-1024  1024-bit    Skein v1.3
TIGER1-128   128-bit    Tiger 1
TIGER1-160   160-bit    Tiger 1
TIGER1-192   192-bit    Tiger 1
TIGER2-128   128-bit    Tiger 2
TIGER2-160   160-bit    Tiger 2
TIGER2-192   192-bit    Tiger 2
Whirlpool   512-bit    Whirlpool Algorithm

-salt
The file that contains the salt.

-salttype
Where to apply the salt:
none don't use salt (default)
before add the salt before the data
after add the salt after the data
both add the salt both before and after the data

-subdirs
Go into sub-directories and do all the files and (sub-)directories

-verbosity
The output verbosity:
1 Compact Show the hash
2 Normal Show the hash and the file name (default)
3 Verbose show the hash and the full qualified path

-rename
Rename the file(s) from "filename.ext" to "<HASH>.ext"
If the file already exists, it will be renamed to "<HASH>_<COUNT>.ext"
<COUNT> is a number in the range [00,99]

FILE
One (or multiple) file name(s) for which to calculate the hash

DIR
One (or multiple) directories for which to calculate the hash


Examples


hash -hash=ALL -subdirs "C:\Temp" "D:\My Files\File 1.txt"

hash -verbosity=3 -hash=CRC-32 -hash=Whirlpool "C:\Temp\*.jpg" "C:\My Files\File 1.txt"

hash -hash=SHA1 -hash=SHA2-512 -hash=SHA3-256 -salt="C:\Salt.hex" -salttype=before *.exe


Test vectors


vector of length 0 = ""


Algorithm Hash
BLAKE2-128   cae66941d9efbd404e4d88758ea67670
BLAKE2-160   3345524abf6bbe1809449224b5972c41790b6cf2
BLAKE2-224   836cc68931c2e4e3e838602eca1902591d216837bafddfe6f0c8cb07
BLAKE2-256   0e5751c026e543b2e8ab2eb06099daa1d1e5df47778f7787faab45cdf12fe3a8
BLAKE2-384   b32811423377f52d7862286ee1a72ee540524380fda1724a6f25d7978c6fd324
4a6caf0498812673c5e05ef583825100
BLAKE2-512   786a02f742015903c6c6fd852552d272912f4740e15847618a86e217f71f5419
d25e1031afee585313896444934eb04b903a685b1448b755d56f701afe9be2ce
CRC-16   0000
CRC-32   00000000
CRC-64   0000000000000000
KECCAK-224   f71837502ba8e10837bdd8d365adb85591895602fc552b48b7390abd
KECCAK-256   c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470
KECCAK-384   2c23146a63a29acf99e73b88f8c24eaa7dc60aa771780ccc006afbfa8fe2479b
2dd2b21362337441ac12b515911957ff
KECCAK-512   0eab42de4c3ceb9235fc91acffe746b29c29a8c366b7c60e4e67c466f36a4304
c00fa9caf9d87976ba469bcbe06713b435f091ef2769fb160cdab33d3670680e
MD4   31d6cfe0d16ae931b73c59d7e0c089c0
MD5   d41d8cd98f00b204e9800998ecf8427e
MD6-128   032f75b3ca02a393196a818328bd32e8
MD6-160   f325ee93c54cfaacd7b9007e1cf8904680993b18
MD6-192   f740ab2a82fa963a551729e949e1e5ff77f6bd0683ddc13f
MD6-224   d2091aa2ad17f38c51ade2697f24cafc3894c617c77ffe10fdc7abcb
MD6-256   bca38b24a804aa37d821d31af00f5598230122c5bbfc4c4ad5ed40e4258f04ca
MD6-384   b0bafffceebe856c1eff7e1ba2f539693f828b532ebf60ae9c16cbc349902040
1b942ac25b310b2227b2954ccacc2f1f
MD6-512   6b7f33821a2c060ecdd81aefddea2fd3c4720270e18654f4cb08ece49ccb469f
8beeee7c831206bd577f9f2630d9177979203a9489e47e04df4e6deaa0f8e0c0
SHA1   da39a3ee5e6b4b0d3255bfef95601890afd80709
SHA2-256   e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
SHA2-384   38b060a751ac96384cd9327eb1b1e36a21fdb71114be07434c0cc7bf63f6e1da
274edebfe76f65fbd51ad2f14898b95b
SHA2-512   cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce
47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e
SHA3-224   6b4e03423667dbb73b6e15454f0eb1abd4597f9a1b078e3f5b5a6bc7
SHA3-256   a7ffc6f8bf1ed76651c14756a061d662f580ff4de43b49fa82d80a4b80f8434a
SHA3-384   0c63a75b845e4f7d01107d852e4c2485c51a50aaaa94fc61995e71bbee983a2ac
3713831264adb47fb6bd1e058d5f004
SHA3-512   a69f73cca23a9ac5c8b567dc185a756e97c982164fe25859e0d1dcc1475c80a6
15b2123af1f5f94c11e3e9402c3ac558f500199d95b6d3e301758586281dcd26
SHAKE-128   7f9c2ba4e88f827d616045507605853e
SHAKE-256   46b9dd2b0ba88d13233b3feb743eeb243fcd52ea62b81b82b50c27646ed5762f
SHAKE-512   ae1b4eea1eaf5ea633e66045f03ff11b8b7d3193119075442117bd786dfd939f
25a53a30fae503488d42683c1917b3964f6b1cf5d27c2b40cbaf53c5b749666a
SKEIN-256   c8877087da56e072870daa843f176e9453115929094c3a40c463a196c29bf7ba
SKEIN-512   bc5b4c50925519c290cc634277ae3d6257212395cba733bbad37a4af0fa06af4
1fca7903d06564fea7a2d3730dbdb80c1f85562dfcc070334ea4d1d9e72cba7a
SKEIN-1024   0fff9563bb3279289227ac77d319b6fff8d7e9f09da1247b72a0a265cd6d2a62
645ad547ed8193db48cff847c06494a03f55666d3b47eb4c20456c9373c86297
d630d5578ebd34cb40991578f9f52b18003efa35d3da6553ff35db91b81ab890
bec1b189b7f52cb2a783ebb7d823d725b0b4a71f6824e88f68f982eefc6d19c6
TIGER1-128   3293ac630c13f0245f92bbb1766e1616
TIGER1-160   3293ac630c13f0245f92bbb1766e16167a4e5849
TIGER1-192   3293ac630c13f0245f92bbb1766e16167a4e58492dde73f3
TIGER2-128   4441be75f6018773c206c22745374b92
TIGER2-160   4441be75f6018773c206c22745374b924aa8313f
TIGER2-192   4441be75f6018773c206c22745374b924aa8313fef919f41
WHIRLPOOL   19fa61d75522a4669b44e39c1d2e1726c530232130d407f89afee0964997f7a7
3e83be698b288febcf88e3e03c4f0757ea8964e59b63d93708b138cc42a66eb3


vector of length 26 = "abcdefghijklmnopqrstuvwxyz"


Algorithm Hash
BLAKE2-128   82a82a043c4946fa81b9a598a3e8d35b
BLAKE2-160   fc6b0c4258618654d35aacfc5f863f58140e799b
BLAKE2-224   7a04e26d7180b9c5e494558dab986f7e8243891a4bb50c45201a16c9
BLAKE2-256   117ad6b940f5e8292c007d9c7e7350cd33cf85b5887e8da71c7957830f536e7c
BLAKE2-384   5cad60ce23b9dc62eabdd149a16307ef916e0637506fa10cf8c688430da6c978
a0cb7857fd138977bd281e8cfd5bfd1f
BLAKE2-512   c68ede143e416eb7b4aaae0d8e48e55dd529eafed10b1df1a61416953a2b0a56
66c761e7d412e6709e31ffe221b7a7a73908cb95a4d120b8b090a87d1fbedb4c
CRC-16   8580
CRC-32   4c2750bd
CRC-64   429b9880b74a49f0
KECCAK-224   162bab64dc3ba594bd3b43fd8abec4aa03b36c2784cac53a58f9b076
KECCAK-256   9230175b13981da14d2f3334f321eb78fa0473133f6da3de896feb22fb258936
KECCAK-384   c5a708ec2178d8c398461547435e482cee0d85de3d75ddbff54e6606a7e9f994
f023a6033b2bf4c516a5f71fc7470d1a
KECCAK-512   e55bdca64dfe33f36ae3153c727833f9947d92958073f4dd02e38a82d8acb282
b1ee1330a68252a54c6d3d27306508ca765acd45606caeaf51d6bdc459f551f1
MD4   d79e1c308aa5bbcdeea8ed63df412da9
MD5   c3fcd3d76192e4007dfb496cca67e13b
MD6-128   4b0f5b70222fcb8e732dfa77f6e9dd59
MD6-160   140b399a12ff92870627b2f69bb086e74eb1542b
MD6-192   4b50e321c1d2bccdd84ef53d1fee5ba29703c7053f48e70d
MD6-224   15566420252c9c71647018f24dc24298568e0f49ea2e3c2d3d8e5660
MD6-256   1650a8bcf2c9900da8677430c24c42a9d50b8ef001446cee704f05c89f6a840f
MD6-384   67855e8dfabf29882767505a45176684cf983e70dfc852eb34c5d00529cd4699
5067a1b3ac7afb2795279779f65a8c51
MD6-512   65e3f5f92067c92df921c948a32cafadd4e8d06a6da766f45c2f1e5505715248
f31fd65e38774bac8ca0477dbaccd44f7751df4222a4ce0b5a928e7da1dc4155
SHA1   32d10c7b8cf96570ca04ce37f2a19d84240d3a89
SHA2-256   71c480df93d6ae2f1efad1447c66c9525e316218cf51fc8d9ed832f2daf18b73
SHA2-384   feb67349df3db6f5924815d6c3dc133f091809213731fe5c7b5f4999e463479f
f2877f5f2936fa63bb43784b12f3ebb4
SHA2-512   4dbff86cc2ca1bae1e16468a05cb9881c97f1753bce3619034898faa1aabe429
955a1bf8ec483d7421fe3c1646613a59ed5441fb0f321389f77f48a879c7b1f1
SHA3-224   5cdeca81e123f87cad96b9cba999f16f6d41549608d4e0f4681b8239
SHA3-256   7cab2dc765e21b241dbc1c255ce620b29f527c6d5e7f5f843e56288f0d707521
SHA3-384   fed399d2217aaf4c717ad0c5102c15589e1c990cc2b9a5029056a7f7485888d6
ab65db2370077a5cadb53fc9280d278f
SHA3-512   af328d17fa28753a3c9f5cb72e376b90440b96f0289e5703b729324a975ab384
eda565fc92aaded143669900d761861687acdc0a5ffa358bd0571aaad80aca68
SHAKE-128   961c919c0854576e561320e81514bf37
SHAKE-256   b7b78b04a3dd30a265c8886c33fda94799853de5d3d10541fd4e9f4613701c61
SHAKE-512   83530e340dbe20694a82d0f5a703aa463054ca700d26670249e7a271a24bc9f2
07f543357cd259cc0e59d5463849ea8ffb545f460ad1c8310c9e7f9400c35301
SKEIN-256   46d8440685461b00e3ddb891b2ecc6855287d2bd8834a95fb1c1708b00ea5e82
SKEIN-512   23793ad900ef12f9165c8080da6fdfd2c8354a2929b8aadf83aa82a3c6470342
f57cf8c035ec0d97429b626c4d94f28632c8f5134fd367dca5cf293d2ec13f8c
SKEIN-1024   f23d95c2a25fbcd0e797cd058fec39d3c52d2b5afd7a9af1df934e63257d1d3d
cf3246e7329c0f1104c1e51e3d22e300507b0c3b9f985bb1f645ef4983508053
6becf83788e17fed09c9982ba65c3cb7ffe6a5f745b911c506962adf226e435c
42f6f6bc08d288f9c810e807e3216ef444f3db22744441deefa4900982a1371f
TIGER1-128   1714a472eee57d30040412bfcc55032a
TIGER1-160   1714a472eee57d30040412bfcc55032a0b11602f
TIGER1-192   1714a472eee57d30040412bfcc55032a0b11602ff37beee9
TIGER2-128   f5b6b6a78c405c8547e91cd8624cb8be
TIGER2-160   f5b6b6a78c405c8547e91cd8624cb8be83fc804a
TIGER2-192   f5b6b6a78c405c8547e91cd8624cb8be83fc804a474488fd
WHIRLPOOL   f1d754662636ffe92c82ebb9212a484a8d38631ead4238f5442ee13b8054e41b
08bf2a9251c30b6a0b8aae86177ab4a6f68f673e7207865d5d9819a3dba4eb3b


vector of length 43 = "The quick brown fox jumps over the lazy dog"


Algorithm Hash
BLAKE2-128   249df9a49f517ddcd37f5c897620ec73
BLAKE2-160   3c523ed102ab45a37d54f5610d5a983162fde84f
BLAKE2-224   477c3985751dd4d1b8c93827ea5310b33bb02a26463a050dffd3e857
BLAKE2-256   01718cec35cd3d796dd00020e0bfecb473ad23457d063b75eff29c0ffa2e58a9
BLAKE2-384   b7c81b228b6bd912930e8f0b5387989691c1cee1e65aade4da3b86a3c9f678fc
8018f6ed9e2906720c8d2a3aeda9c03d
BLAKE2-512   a8add4bdddfd93e4877d2746e62817b116364a1fa7bc148d95090bc7333b3673
f82401cf7aa2e4cb1ecd90296e3f14cb5413f8ed77be73045b13914cdcd6a918
CRC-16   5763
CRC-32   414fa339
CRC-64   4ef14e19f4c6e28e
KECCAK-224   310aee6b30c47350576ac2873fa89fd190cdc488442f3ef654cf23fe
KECCAK-256   4d741b6f1eb29cb2a9b9911c82f56fa8d73b04959d3d9d222895df6c0b28aa15
KECCAK-384   283990fa9d5fb731d786c5bbee94ea4db4910f18c62c03d173fc0a5e494422e8
a0b3da7574dae7fa0baf005e504063b3
KECCAK-512   d135bb84d0439dbac432247ee573a23ea7d3c9deb2a968eb31d47c4fb45f1ef4
422d6c531b5b9bd6f449ebcc449ea94d0a8f05f62130fda612da53c79659f609
MD4   1bee69a46ba811185c194762abaeae90
MD5   9e107d9d372bb6826bd81d3542a419d6
MD6-128   7b428f5ec47e0174faf31dc7c89590c6
MD6-160   89c6f1da416b8a09a3fd670f091aeddb7c7c8af6
MD6-192   8640ea1ca5b25ed3fb8172da7dbb3783b9208ba8a07614a0
MD6-224   188528b2add27528c514474ce6150a44df9498f8845a620fdf177295
MD6-256   977592608c45c9923340338450fdcccc21a68888e1e6350e133c5186cd9736ee
MD6-384   d850fdde986e16df19d65c50788afd0a8953914a4bc65831f5283c3016b79ddf
a4a0bc00694e472f4a0bed7da601bb90
MD6-512   dcba0c6593fbd83a0f5f148588baa79530579c1f5e7f19d500fe282d137bff46
5106f25c9f0619b4082a730683d5f58311c0c1913068e91b0ebdf9ace3ff5b9e
SHA1   2fd4e1c67a2d28fced849ee1bb76e7391b93eb12
SHA2-256   d7a8fbb307d7809469ca9abcb0082e4f8d5651e46d3cdb762d02d0bf37c9e592
SHA2-384   ca737f1014a48f4c0b6dd43cb177b0afd9e5169367544c494011e3317dbf9a50
9cb1e5dc1e85a941bbee3d7f2afbc9b1
SHA2-512   07e547d9586f6a73f73fbac0435ed76951218fb7d0c8d788a309d785436bbb64
2e93a252a954f23912547d1e8a3b5ed6e1bfd7097821233fa0538f3db854fee6
SHA3-224   d15dadceaa4d5d7bb3b48f446421d542e08ad8887305e28d58335795
SHA3-256   69070dda01975c8c120c3aada1b282394e7f032fa9cf32f4cb2259a0897dfc04
SHA3-384   7063465e08a93bce31cd89d2e3ca8f602498696e253592ed26f07bf7e703cf32
8581e1471a7ba7ab119b1a9ebdf8be41
SHA3-512   01dedd5de4ef14642445ba5f5b97c15e47b9ad931326e4b0727cd94cefc44fff
23f07bf543139939b49128caf436dc1bdee54fcb24023a08d9403f9b4bf0d450
SHAKE-128   f4202e3c5852f9182a0430fd8144f0a7
SHAKE-256   2f671343d9b2e1604dc9dcf0753e5fe15c7c64a0d283cbbf722d411a0e36f6ca
SHAKE-512   b2a90444faf149bea5dd2476dedf508e0c3028fe2bede08a6e2ff53ce9f77875
8f254134110e9402ebd1503c6eca69825011b3a6e2630437dcf5879f9bb83114
SKEIN-256   c0fbd7d779b20f0a4614a66697f9e41859eaf382f14bf857e8cdb210adb9b3fe
SKEIN-512   94c2ae036dba8783d0b3f7d6cc111ff810702f5c77707999be7e1c9486ff238a
7044de734293147359b4ac7e1d09cd247c351d69826b78dcddd951f0ef912713
SKEIN-1024   4cf6152f1a7e598098d28f04e13d7742ba39b7fadbbcf2167bda4e1615d551f3
f6b4edbbb391ffa09e6cc0a4af1eb366b30b5f107b437e2ea5cb586afb0341bd
97dabe7cc46e7be3a054aa605395e43b243654c01ffc14c8b5443488f35d80b5
04a612f3d29d767106d0d9249aaa4fd99b67a94fb8661a3520004501192d84fa
TIGER1-128   6d12a41e72e644f017b6f0e2f7b44c62
TIGER1-160   6d12a41e72e644f017b6f0e2f7b44c6285f06dd5
TIGER1-192   6d12a41e72e644f017b6f0e2f7b44c6285f06dd5d2c5b075
TIGER2-128   976abff8062a2e9dcea3a1ace966ed9c
TIGER2-160   976abff8062a2e9dcea3a1ace966ed9c19cb8555
TIGER2-192   976abff8062a2e9dcea3a1ace966ed9c19cb85558b4976d8
WHIRLPOOL   b97de512e91e3828b40d2b0fdce9ceb3c4a71f9bea8d88e75c4fa854df36725f
d2b52eb6544edcacd6f8beddfea403cb55ae31f03ad62a5ef54e42ee82c3fb35


Version history


v2.20 (20-Aug-2025)
- Shake-128 has been added as a hashing function.
- Shake-256 has been added as a hashing function.
- Shake-512 has been added as a hashing function.

v2.12 (07-Aug-2025)
- Renaming had a unicode conversion bug which made the filenames have random looking characters.

v2.11 (02-Aug-2025)
- Always show verbose help when starting Hash.exe without parameters.

v2.10 (02-Aug-2025)
- Added internal unit tests for all algorithms (previously external tests were performed).

v2.00 (01-Aug-2025)
- Very large refactor (split project to prepare for internal unit testing).
- Switched to new compiler and new Windows SDK for x86, x64 and ARM64 builds.
- For ARM 32-bit an older Windows SDK (v10.0.22621.2428) is used because Microsoft deprecated ARM 32-bit.

v1.90 (26-Jul-2025)
- SHA2-384 has been added as a hashing function.

v1.81 (20-Jul-2025)
- MD6 could fail depending on the length of the input.

v1.80 (19-Jul-2025)
- MD6-192 has been added as a hashing function.
- MD6 added support for salt.

v1.70 (01-Jan-2020)
- Added support for ARM-32 processors on Windows On ARM.
- Added support for ARM-64 processors on Windows On ARM.

v1.60 (25-Dec-2019)
- Tiger1-128 has been added as a hashing function.
- Tiger1-160 has been added as a hashing function.
- Tiger1-192 has been added as a hashing function.
- Tiger2-128 has been added as a hashing function.
- Tiger2-160 has been added as a hashing function.
- Tiger2-192 has been added as a hashing function.

v1.50 (28-Sep-2019)
- Skein-256 has been added as a hashing function.
- Skein-512 has been added as a hashing function.
- Skein-1024 has been added as a hashing function.

v1.40 (07-May-2017)
- Blake2-128 has been added as a hashing function.
- Blake2-160 has been added as a hashing function.
- Blake2-224 has been added as a hashing function.
- Blake2-256 has been added as a hashing function.
- Blake2-384 has been added as a hashing function.
- Blake2-512 has been added as a hashing function.

v1.31 (26-Feb-2017)
- MD6-160 has been added as a hashing function.
- MD6-224 has been added as a hashing function.
- MD6-384 has been added as a hashing function.

v1.30 (22-Feb-2017)
- MD6-128 has been added as a hashing function.
- MD6-256 has been added as a hashing function.
- MD6-512 has been added as a hashing function.

v1.21 (21-Jul-2015)
- The KECCAK hash functions didn't work if you specified them uniquely (using -hash=ALL did work).

v1.20 (05-Jun-2015)
- NIST made a change to the padding of SHA3. The hash calculations have been updated.
- What SHA3 was before the NIST change is still available under the name KECCAK.

v1.14 (06-Jun-2013)
- MD4 has been added as a hashing function.
- Added test vectors on the web page to allow verifying the Hash application works correctly.

v1.13 (21-Feb-2013)
- SHA3-224 has been added as a hashing function.
- SHA3-384 has been added as a hashing function.

v1.12 (12-Feb-2013)
- SHA3-512 has been added as a hashing function.

v1.11 (10-Feb-2013)
- SHA3-256 fully implemented (including salt).

v1.10 (9-Feb-2013)
- The SHA hash names changed a little bit (e.g., SHA-256 is now SHA2-256).
- Preliminary support for SHA3-256 added. Note: salt doesn't work yet for SHA3-256.

v1.09 (20-Nov-2012)
- No longer dependant on Microsoft's Visual C++ run-time libraries (they are now statically linked).

v1.08 (12-Apr-2012)
- Reworked the command-line parameters.
- Added the option to salt the hashes.

v1.07 (28-Jul-2011)
- Whirlpool has been added as a hashing function.

v1.06 (21-Jul-2011)
- Initial public version.