HashCheck
HashCheck copied to clipboard
[-->] Here are some alternative forks in active development.
I'm not very Github smart. Does anyone know how I can determine which (if any) of the 119 project forks are in active development?
Jump to Checkpoint.
Don't think it's a fork, but https://github.com/namazso/OpenHashTab is a similar project and actively maintained.
I'm currently using old HashCheck in preference to new OpenHashTab (despite the latter's nicer UI), as it currently has a better SFV export function and a "double-click to check hashes from sumfile in a nice GUI" function. OpenHashTab's sumfile checking GUI is less pretty and a bit less intuitive (sumfile >> properties >> Hashes >> it will now check the files).
EDIT: A good way to tell by eye if a fork on GitHub is active is:
- Is it renamed? New maintainers often rename their versions
- Are there forks of that fork? That could indicate activity among a bunch of programmer buddies or people treating it as the "new master branch" and an active fork.
If the answer is yes to either question, then it's worth a click to find out if its commits are ahead
of the master branch. If they are ahead, then it's more up-to-date. If they are even
or behind
the master branch, then don't bother and just use the master branch.
@Darthagnon thanks, I wasn't aware that project forks would display in a tree format to reveal forks-of-forks and forks-of-forks-of-forks. This project just displays a long list of forks with no telling information, graphs, etc that I know about.
I am going to use OpenHashTab for a month and then start submitting Issues over there with suggestions to migrate some features from this project as it seems to have sunset.
@Darthagnon hey, just found your comment while lurking this repo. I'm the developer of OpenHashTab
a "double-click to check hashes from sumfile in a nice GUI" function
This has been a secret feature for over a month actually, available via a registry tweak (which I just posted): https://github.com/namazso/OpenHashTab/issues/35
@namazso That is awesome! You're a legend! Thank you! Guess I'll be replacing HashCheck soon :D
@namazso moved to OpenHashTab as well since this branch is not in development anymore :)
@idrassi (main VeraCrypt developer) recently created a fork idrassi/HashCheck that added Blake3 support. Go show him some love and hopefully he will continue to maintain it.
What I don't understand is why @gurnec doesn't just say that he is not going to develop/support this software anymore, he is active in other projects so he is alive and has access to this account, after so many years there is no response from him.
@idrassi (main VeraCrypt developer) recently created a fork idrassi/HashCheck that added Blake3 support. Go show him some love and hopefully he will continue to maintain it.
Do you know if there is a forum or some place where issues and request can be posted?
Do you know if there is a forum or some place where issues and request can be posted?
It looks like Issues aren't enabled on the fork repository. You could always email @idrassi and ask him to enable it.
@1024mb I have enable issues on my fork repository. I don't promise to be always reactive as I have other projects to maintain but I will do my best to keep enhancing this useful tool.
@idrassi, thank you for taking HashCheck over and playing the leading role now as other context hashers to date are ugly.
HashTab is going to be open sourced, see implbits.com.
Checkpoint. 2021-07-26 (only fairly accurate)
2004-2009 --- HashTab Shell Extension by Cody Batt of Beeblebrox.org (defunct)
The original software. "Source is available upon request." Versions 1.0 (2004) to 3.0 (2009)
2011-2021 --- HashTab by Implbits.com
Sold(?) / Evolved(?) to Implbits Software. Became a commercial product. Versions 4.0 (2011) to 6.0.0.34 (2021).
In 2021, Implbits announced HashTab has reached its End of Life and source code will be released to github. (eol statement)
2008-2009 --- HashCheck by Kai Liu of code.kliu.org
A new champion enters the ring. When HashTab Shell Extension became closed-source non-free software (at the time), Kliu came out with his own free offering, HashCheck. Versions 1.0 (2008) to 2.1.11 (2009). (changelog) (download)
Around this time, HashTab supported a very huge array of hash algorithms that HashCheck did not have. I forget the source of the commercial library that HashTab was using.
2014-2016 --- HashCheck forked by Christopher Gurnee @gurnec to github.com
This fork. Versions 2.2.2 (2014) through 2.4.0 (2016). (project) (releases)
Credit is also given to David B. Trout (2014) and Tim Schlueter (2016) but I lost what their contributions were.
Mike Tzou @Chocobo1 of Hash C++14 Header-only Hash Library
2021-present(2021) --- HashCheck forked by Mounir Idrassi @idrassi of VeraCrypt on github.com
This fork switches algorithms SHA-256, SHA-512 and SHA3 to use the OpenSSL engine for great speed improvements, and adds Blake3 algorithm. A nice surprise after 5 years of stalled development. Version 2.5.0 (2021). (project) (releases)
2019-present(2021) --- OpenHashTab by @namazso on github.com
Inspired by HashTab, this is another wholly new development with similar design, but lacks the hash verify UI of Kai Liu's HachCheck. It focuses more on the shell extension UI and adds coloring for matching sums between multiple files, and also supports a very huge array of hash algorithms, like HashTab, that HashCheck does not yet support (but that very few people would actually use). Versions 1.1 (2019) to 3.0.1 (2021). (project) (releases)
There is also rhash, it's been around since 2005. http://rhash.sourceforge.net/
@a-raccoon - Thanks for the compilation.
One more for the 2.4 builds, is this one, an update of an Alpha build that Chris Gurnee started in Sep 2016 but apparently never did anything with after (it was on Appveyor, and apparently they remove old stuff so no longer directly downloadable).
https://github.com/seiya-dev/HashCheck/releases/tag/v2.4.1.58-alpha
I've been a longtime user of HashTab and HashCheck (the latter because you can associate the program with hash files, then double click them for a8utomaitc verification, as well as having a shell extension in any given file's property dialog). I had no idea it had been forked again and was under development again.
I've also migrated from HashTab to OpenHashTab, as well, I do love having an export feature.
Thanks for the compilation.
I've also migrated from HashTab to OpenHashTab, as well, I do love having an export feature. Thanks for the compilation.
I would love to see someone, maybe OpenHashTab, migrate the HashCheck digest verify UI and functionality, and also go through the rest of the HashCheck code, and the newly released (soon) HashTab code, to find gems of superior code worth incorporating. Or someone, whoever is willing to unify these projects and historic talent into one.
Agreed. I had a discussion a long long time ago with someone over at implbits about how the hashing algorithm in HashTab was slower than Kiu's last version of HashCheck, and there was some work done to make it better, I think, so that hashing speed was never clearly in favor of one or the other.
If some enterprising dev could combine the best of all 3 (including OHT) that would be very nice.
Revisiting this issue to see if anyone has found a new favorite. I still use HashCkeck 2.5.0.1 by idrassi, but also have OHT by namazso installed.
Agreed. I had a discussion a long long time ago with someone over at implbits about how the hashing algorithm in HashTab was slower than Kiu's last version of HashCheck, and there was some work done to make it better, I think, so that hashing speed was never clearly in favor of one or the other.
Still using HashCheck. ~~Didn't find a good replacement that also can verify sfv releases. I hope OpenHashTab will implement all the needed features once!~~
Nevermind, OpenHashTab added a sfv feature in 3.x releases. Maybe time to have another look.
Big issue : the verification time is way faster in HashCheck though. Especially when the data are splitted in multiple files. HackCheck seems better multithreaded.
If it's of useful information to anyone, I have another system of hash verification in my repertoire. Every so often I copy off all data from one hard drive to another to keep it fresh, wiping and testing the old hard drive for fitness. I use FastCopy to accomplish this copy, which has the option to generate a hash digest (SHA-512) of each file into the target file's Alt-Data-Streams (ADS). I then use VoidTool's Everything to read every file's old *.sha512 digest file, and their new SHA-512 ADS into two data columns, and have Everything filter for any files with mismatched hashes.
Anyway, this saves me from verifying several terabytes of data against their *.sha512 digest files directly, wasting hours on a useless task, letting me verify them while accomplishing meaningful work (disk copy).
Still using HashCheck. ~Didn't find a good replacement that also can verify sfv releases. I hope OpenHashTab will implement all the needed features once!~
Nevermind, OpenHashTab added a sfv feature in 3.x releases. Maybe time to have another look.
Big issue : the verification time is way faster in HashCheck though. Especially when the data are splitted in multiple files. HackCheck seems better multithreaded.
Interesting. I've not actually tested them SxS in a while. Will have to revisit.
If it's of useful information to anyone, I have another system of hash verification in my repertoire. Every so often I copy off all data from one hard drive to another to keep it fresh, wiping and testing the old hard drive for fitness. I use FastCopy to accomplish this copy, which has the option to generate a hash digest (SHA-512) of each file into the target file's Alt-Data-Streams (ADS). I then use VoidTool's Everything to read every file's old *.sha512 digest file, and their new SHA-512 ADS into two data columns, and have Everything filter for any files with mismatched hashes.
Anyway, this saves me from verifying several terabytes of data against their *.sha512 digest files directly, wasting hours on a useless task, letting me verify them while accomplishing meaningful work (disk copy).
That's actually a really good idea! I never once considered placing hashes in ADS, that would go a long way in being able to have handy file verification hashes available on a per-file basis without cluttering up directories with individual hash files.
Thank you!
I'm also going to contact the developers of both Xplorer² as well as OneCommander to see if they have an easy way to parse hashes from ADS, or else if it can be added. I've been an X² user for a long, long time but recently discovered OC, and I find myself using it more and more every day as my daily FM in Windows.
I think that's not a good way of handling hashes. Having the hash stored in the ADS doesn't mean that hash is still the current one for that file, multiple things can occur for that hash to change like bit rot, soft errors, etc. For me hash calculation, at least when is done for integrity check, should always be done at run time. There are several applications that can compare directories like BeyondCompare, ExamDiff and WinMerge. Or use a copy application with integrity check like rclone, and iirc FastCopy does it too.
Good point.
However, my use case is for long term file storage, where files won't be changing as often.
For clarity, I keep *.sha512 sidecar digest files that should always match the data/media file or collection in question. I also allow my copy program (FastCopy) to store a sha512 digest in each file's ADS for a verification of that Copy Operation. I consider the ADS to be ephemeral (destructive) and only pertains to that physical copy on that piece of physical media (hard disk drive volume). I never copy ADS data when copying or moving media.
The point here is that the ADS is a perfectly valid place to store data about a particular file's fitness on a particular piece of media. And I agree, it should never be used as a replacement for actual hash digest sidecar files. But it is handy to have these two digests for quick and easy comparison to detect errors after every copy or move.
Following up on https://github.com/gurnec/HashCheck/issues/75#issuecomment-886823066
Hmmm. Revisiting this for a couple of reason.
-
OpenHashTab has started dying on me whenever I try to use it to compare a file's hash with an input hash, and it takes Windows Explorer down with it. Windows 11 22H2 (OS Build 22621.1265).
-
I've found a good one from the Microsoft Store for Windows that actually is a bit enhanced over OpenHastTab, called Hash Pad - https://www.microsoft.com/store/productId/9NRDJ8214GBT
Pros of Hash Pad:
-
It uses multi-line text boxes to display the full has, instead of having it scroll off screen.
-
Has dedicated button to read a hash that is stored in the system clipboard for comparison.
-
When you have multiple hash types dispalyed, comparison with a hash string has the match indicator pops up next to the hash type that matched.
-
It has the ability to be added to the Windows Send-To menu, for file context-menu hashing.
-
Setting to enable / disable automatic hash calculation when file path is manually filled.
-
Setting to enable / disable automatically reading clipboard before calculating hash value.
Cons:
-
Limited to SHA1, SHA256, SHA384, SHA512 and MD5.
-
Can only check single files.
-
Cannot export / save hash files.
HashCheck 2.5.x still works, and has the ability to save files, as well as verify with just a double-click on the hash file itself, but until I can get OHT working again, Hash Pad is now installed on my system.