-
Notifications
You must be signed in to change notification settings - Fork 12
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Feature Request] Add support for extended file format #6
Comments
@idrassi would you be inclined to add file sizes to hash digest files? |
Thank you for this proposal. it is an interesting feature and I agree that it can be helpful in some situations. I will look how to implement this. |
I cannot attest what current tools are including filesize, except for RHash (command-line tool) which has you specify the file format of your choice, using %variable tags as in I like the added droplist. However, could you make the default |
With respect to the Verify functionality of reading digest files. I assume we agree that a filesize mismatch (if filesize is present) is considered a failure. Might I suggest then while rewriting the verifyer that multiple pass loops are performed on the list? What I mean is, perform 2 passes on all items instead of just the 1 pass, so that we can enjoy early detection of simple filename and filesize mismatch failures before getting starting on any hash verification that takes time? Pass 1 verifies the filenames and filesizes, Pass 2 verifies the hash digests of any that didn't fail Pass 1. This will allow us to abort verification if we're unsatisfied with the name/size failures. Feature creep: With a filesize, the Verify tool could easily detect filename changes and make repairs for us, if a correctly sized file exists in the anticipated location. But not if there are 2 files of the same exact size. |
The program Everything by VoidTools now supports these extended formats in the current Alpha version, for reading and comparing hash digests. Everything will also generate hash values, but does not yet perform verify or save-to-digest-file features just yet. It will read existing digest files and populate column data for column sorting and duplicate detection.
|
@a-raccoon and @idrassi, I have literally used HashCheck daily since early 2009. I use it A LOT and create and verify checksums ALL THE TIME. Anywhere from a few files to thousands of files. I think the idea of adding file size to the created digest file is a great idea so that files that have a size mismatch are automatically skipped and marked as a "mismatch" as far as the checksum verification. I am assuming that reading and/or checking file size is drastically faster (trivial, time & resource-wise) than generating or verifying any hash, especially SHA-1, SHA-256, etc. In regards to the droplist, I agree with @a-raccoon that the "Hash file format" should probably be the last-used option, same as is done with "Save as type", so that I don't have to select it each and every time. That said, maybe the default format could be an option one sets. Granted, that option probably isn't necessary if HashCheck remembers what format was last used and I always want the same (Extended with file size value) format. Personally, I would always use that "Extended" format if the digest size as well as creation and verification time only marginally increased because I know it would benefit in the long run. As far as @a-raccoon's suggestion about possibly detecting filename changes and making repairs for us, I would probably vote against that idea. I would want to be very careful about having HashCheck take that type of action. Perhaps that could be an option that is turned OFF by default, but could be enabled. As a side note, I've used VoidTools's Everything for years, though I usually run only the stable release or a beta. So, compatibility with upcoming Everything features might be nice, though that isn't priority for me. @a-raccoon, I appreciate you mentioning some of those details in your previous post. |
Thanks for the glowing words. :)
And for clarity, I don't think I necessarily meant that the Verify tool should automatically rename the files for us, but rather, to compensate by detecting those files that have been renamed and tell us so. Maybe with a "Renamed" warning bubble instead of a "Missing" warning bubble. If you have free time, and really enjoy Voidtool's Everything, I think you're going to love the Alpha beta. |
It'd be nice if the hash files output from the CertUtil command (built into Windows) were supported:
An example command: The contents of the output file:
|
There is no standard hash file format, but there are a few adopted defacto standards. Fortunately, all of the likely standards are pretty cross/backwards compatible and apparent. These are the formats I use, would prefer to use, and hope that HashCheck might support.
HashCheck already supports the following:
I'd also like it to support:
Enable the user to choose whether or not they want file sizes to be included in hash files.
When HashCheck encounters any of these formats, it can automatically detect how to handle them given alphanumeric context.
The text was updated successfully, but these errors were encountered: