Name | SFV Ninja (Simple File Verification application) |
Short Description | SFV (Simple File Verification) (http://en.wikipedia.org/wiki/Simple_file_verification) application. It also supports MD5, SHA-1, SHA-256, SHA-384, and SHA-512 checksum files. I wrote this several years ago for my own use but cleaned up the code for a public release. |
Features |
|
Supported OSes | Windows 7. Probably works, but not tested, on Windows XP/Vista/8/10 |
Website | http://skwire.dcmembers.com/fp/?page=sfv-ninja (http://skwire.dcmembers.com/fp/?page=sfv-ninja) |
Download Link | Download (http://skwire.dcmembers.com/apps/sfv_ninja/SFVNinja.zip) |
Author | Jody Holmes - Skwire Empire (http://skwire.dcmembers.com) |
does it have decent progress bars?
Does speed rock?
Does it handle >2GB files?
Does it support the MD5 SFV extensions?-f0dder (March 28, 2011, 11:08 AM)
So I've to ask is it planned to add support for md5 anytime in the future?-Marc.D (April 03, 2011, 08:13 PM)
BTW, Marc.D, welcome to the site. :)-skwire (April 03, 2011, 09:18 PM)
I'm out of luck?-Marc.D (April 03, 2011, 10:03 PM)
One thing I still need to add is a way to cancel a scan (either with a button or, say, the Escape key).Well yes, I thought of using the exit button in those cases :-[ ...-skwire (April 09, 2011, 10:49 PM)
+ Checksum mode is now saved.Thanks again :)-skwire (April 11, 2011, 01:14 AM)
Awesome tool, Sir Skwire :)-ewemoa (October 30, 2011, 09:54 PM)
Any chance of SHA-256 support?-ewemoa (October 30, 2011, 09:54 PM)
Oh...and is there some hidden feature in the Help -> Contents dialog?-ewemoa (October 30, 2011, 09:54 PM)
P.S. No official checksums for SFVNinja itself?-ewemoa (October 30, 2011, 09:54 PM)
Find me a free, stand-alone commandline executable that will spit out an SHA-256 checksum and, sure, I'll add it.-skwire (October 30, 2011, 11:06 PM)
I have compiled native (no Cygwin, no other dlls) Windows versions of md5sum.exe, sha1sum.exe, sha224sum.exe, sha256sum.exe, sha384sum.exe and sha512sum.exe. Download binaries here (http://www.nfllab.com/sums/sums.zip), and source (as required by GPL) here (http://www.nfllab.com/sums/coreutils-6.9.tar.bz2).-http://blog.nfllab.com/archives/152-Win32-native-md5sum,-sha1sum,-sha256sum-etc..html
Find me a free, stand-alone commandline executable that will spit out an SHA-256 checksum and, sure, I'll add it.-skwire (October 30, 2011, 11:06 PM)
OpenSSL is "dual licensed" under the OpenSSL License and the SSLeay License. OpenSSL License is Apache License 1.0 and SSLeay License is 4-clause BSD License. The common usage of the term dual-license is that the user may pick which license they wish to use. However, OpenSSL documentation uses the term dual-license to mean that both licenses apply.
As the OpenSSL License is Apache License 1.0, but not Apache License 2.0, it requires the phrase This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit. (http://www.openssl.org/) to appear in advertising material and any redistributions (Sections 3 and 6 of the OpenSSL License).
Hi! I created 5 files (Calaméo.zip, Calaméo.rar, Calaméo.xls, Calaméo.doc, Calaméo.txt) then I wanted to check crc32. And I saw the 0000000. I used SFVNinja ANSI. I think a problem is in symbol "é"? MD5 is OK! Sorry for my Eng.(http://s018.radikal.ru/i512/1201/9f/787d70113d65t.jpg) (http://radikal.ru/F/s018.radikal.ru/i512/1201/9f/787d70113d65.png.html)-Cornucopiae (January 26, 2012, 08:40 PM)
Yes, I know in Unicode version is OK. MD5 is OK in ANSI. Why crc32 is not? I don't use Unicode version because it incompatible with QuickSFV and many other programs. Sorry for my Eng.-Cornucopiae (January 26, 2012, 10:30 PM)
Thanks for creating this really helpful tool, I have been looking for something like this for a long time!-daws0n (February 12, 2012, 03:26 PM)
I am with Deozaan on this, any chance of incorporating "trim duplicates" option?-daws0n (February 12, 2012, 03:26 PM)
Wow that was quick, great work skwire! Tried and tested - no problems here, works 100% as expected :)-daws0n (February 13, 2012, 03:24 PM)
skwire, first i must say i love the program. i spent hours searching google for recursive sfv checkers and after installing, testing, deleting quite a few i came across your one. :Thmbsup:-sfv4me (May 08, 2012, 07:13 AM)
first: at the bottom of the screen alongside "total", "ok", "bad"... can you put one for "sfv"? this would show the total number of sfvs there are.-sfv4me (May 08, 2012, 07:13 AM)
what do you think of having just a sfv file line showing then having a "+" or arrow (like in the registry) next to it which will expand to show the actual files which are being checked.-sfv4me (May 08, 2012, 07:13 AM)
third: if there is a bad or missing file, to highlight the line in yellow, red or some other color. this makes it visually stand out more. so if the second recommendation is implemented, the sfv main row would be red, then when you expand the missing/bad files row is also red.-sfv4me (May 08, 2012, 07:13 AM)
you forgot to add the sfv total at the bottom of the screen along side the other counters.-sfv4me (May 11, 2012, 07:30 PM)
another thing i have noticed is, when i use "scan folder for checksum files and load" it loads the sfv but it won't check the row which has missing files. so if i verify all files, the counter at the bottom still shows 0 missing at the end of the check (the row is highlighted as missing though which is fine). so at the moment i have to remember to "check all rows" option before running the verify. could you make it default to "check" all the rows when adding the sfv?-sfv4me (May 11, 2012, 07:30 PM)
regarding the sfv counter... it shouldn't really matter how many you add or delete because it depends on the verified check at the end. the counter should show how many sfvs were checked in total.-sfv4me (May 11, 2012, 09:45 PM)
if it can't be done, then it's ok. ;)-sfv4me (May 12, 2012, 05:32 AM)
i have noticed the slowdown when trying to scroll down or up.-sfv4me (May 15, 2012, 01:37 AM)
so the total is just confirming the rows?-sfv4me (May 15, 2012, 01:37 AM)
one other minor thing which might be a little hard to explain. i use the scroll wheel on the mouse quite a lot and when i open the program, the cursor default is on the mode menu. so if i add the files then start scrolling, the mode changes because i haven't clicked elsewhere in the program. :-[-sfv4me (May 15, 2012, 01:37 AM)
also, maybe have the counters reset after clearing the list. at the moment, they are reset only once a new verify begins.-sfv4me (May 15, 2012, 01:37 AM)
could you change it to color the row as a problem is found?-sfv4me (May 16, 2012, 07:21 AM)
could you change it to color the row as a problem is found?-sfv4me (May 16, 2012, 07:21 AM)
This is the way I had initially tried to make it work but, for some reason, it wouldn't. I tried various tweaks to get the listview to repaint while it was scanning files but nothing worked so colouring it at the end of a scan was the next best thing.-skwire (May 16, 2012, 07:37 AM)
SFV Ninja v1.1.2 always crashed, when was checking files on PC. For example, when I check c:\window\-Cornucopiae (August 28, 2012, 02:37 PM)
Hi, thanks for this program :)-stefanobrunesci (September 07, 2012, 08:38 AM)
2. Open TWO instances of SFVNinja by double-clicking the .Md5 file.
3. Start verifying all files in both instances.
Both instances should report a random selection of "bad" checksums.-stefanobrunesci (September 07, 2012, 08:38 AM)
Hmmm...I did some thinking about this and made a small change in the code. Please redownload the zip and let me know if v1.1.3.2 makes any difference in your tests. Thank you.Any hints as to what the issue is (or what you thought it is)? Sounds interesting :)-skwire (September 07, 2012, 03:03 PM)
Why so slow?-Cornucopiae (September 08, 2012, 04:37 AM)
Any hints as to what the issue is (or what you thought it is)?-f0dder (September 08, 2012, 07:44 AM)
Hmmm...I did some thinking about this and made a small change in the code. Please redownload the zip and let me know if v1.1.3.2 makes any difference in your tests. Thank you.Hi skwire, thanks for the speedy update! :)-skwire (September 07, 2012, 03:03 PM)
SFV Ninja is single-threaded so I'm not certain how much benefit you're getting from running multiple instances.I guess the benefit (for me) is that I can fire up a bunch of instances in one go and set them to creating/verify checksums on a load of folders, then just leave them to get on with it - eg. overnight - rather than having to do each one sequentially.-skwire (September 09, 2012, 01:58 PM)
I guess the benefit (for me) is that I can fire up a bunch of instances in one go and set them to creating/verify checksums on a load of folders, then just leave them to get on with it - eg. overnight - rather than having to do each one sequentially.-stefanobrunesci (September 09, 2012, 02:27 PM)
Were you aware that one SFV Ninja instance can load multiple checksum files into its list?Yes, thanks :)-skwire (September 09, 2012, 02:37 PM)
My archiving "strategy" requires separate checksum files for each top level folder though, so when creating the files in the first place it's easier to just run up a separate instance per folder :)Hm, seems like a bad idea to run multiple instances at one time, at least for long-running jobs. You'll see much decreased throughput (way worse than linear degradation), and all the back-and-forth action is going to be stressful on your harddrive heads.-stefanobrunesci (September 10, 2012, 05:00 AM)
Hm, seems like a bad idea to run multiple instances at one time, at least for long-running jobs. You'll see much decreased throughput (way worse than linear degradation), and all the back-and-forth action is going to be stressful on your harddrive heads.If I run 3 instances against folders on 3 separate physical drives it's definitely quicker than running them one after another, and I can go to bed and forget about it ;)-f0dder (September 10, 2012, 07:51 AM)
3 separate physical drives-stefanobrunesci (September 11, 2012, 06:39 AM)
Indeed :)3 separate physical drivesAh, that's the key. I (and f0dder, I bet) thought you were working with one physical drive. =]-stefanobrunesci (September 11, 2012, 06:39 AM)-skwire (September 11, 2012, 08:58 AM)
@Cornucopiae: This version should allow you to use the Unicode version and still generate checksum files that are compatible with non-Unicode apps like QuickSFV.
In AutoHotkey, there are no native hash/checksum commands. So, you have three options: 1) Use a command line executable, 2) a DLL, or 3) use a function library that somebody has developed. SFV Ninja uses number one and three. However, I've found that the function library, while very fast and accurate, has a tendency to crash randomly and I don't know why. So, I changed SFV Ninja to only use that function when absolutely necessary where before it was using it for smaller files because of its speed.
Minor feature requests:
- ability to delete from the file list
- check/uncheck selected items from the right-click context menu. Alternatively press spacebar
-omeletted (January 21, 2013, 07:20 AM)
Would deleting to the recycle bin be acceptable?-skwire (January 22, 2013, 01:54 AM)
I dont mean physical deletion of the actual files, I mean from the file listing in SFV Ninja.-omeletted (January 22, 2013, 04:22 AM)
Hi skwire, is there any news on the expense of speed?-Cornucopiae (August 10, 2013, 05:12 AM)
Speed improvements (hopefully):Thmbsup:
skwire, this version is perfect!!!-Cornucopiae (March 09, 2014, 12:54 PM)
Have only 1 problem:-Cornucopiae (March 09, 2014, 12:54 PM)
it would be nice to implement the ability to select multiple rows together.
It is very difficult to select hundreds of lines separately-Fgkl99 (July 01, 2014, 01:14 PM)
Thanks For That Nice Tool :)
...I'll Ask If It's Possible To Add .ZIP File CRC Check :)-enone (December 08, 2014, 05:21 PM)
1. Do not remember "full screen" as the last used resolution. It's a bit annoying when the program starts up un-maximized but still takes up the entire screen.
2. Faster skips for files with saved checksums. It takes over 10 mins to go through 10k or so files that already have saved checksums when using "verify new files only" (Win 7 x64, Core i5, 8GB RAM, 7200RPM Seagate drive). I'm not sure why that is---if this is all in memory, it should very fast. If GUI is the issue, update it less frequently?-xviruz (December 26, 2014, 08:51 PM)
3. Allow the comment to display "This file has been modified" when a file's modified timestamp is later than the SFV's creation timestamp. If the timestamp metadata is pulled together with file size when scanning files, there should be no performance penalty. Though, I'd understand if you think this bloats the program in a negative way.-xviruz (December 26, 2014, 08:51 PM)
Thanks for all your hard work.-xviruz (December 26, 2014, 08:51 PM)
Both these items should be addressed in the latest version I just uploaded. Please test and let me know. Links at bottom.-skwire (December 26, 2014, 10:59 PM)
The timestamp data is not currently pulled for each file so I'm not certain how much cumulative time this would add. So, how important is this feature to you?-skwire (December 26, 2014, 10:59 PM)
I just noticed that the "Total" bar is broken. It either doesn't update at all or, when verifying newly added files, gets stuck in a partial state (bar never goes to the end). It was working fine in 1.2.6.-xviruz (December 27, 2014, 09:56 PM)
Hi, I have 20 files from different directories ready for the checksum, it is possible to output 20 .sfv files in their respective directories instead just one with the 20 checksums? thanks in advance for any help and best regards.-Bluedraft (May 08, 2015, 04:43 PM)
Really nice util. :Thmbsup: And to let ya know I have it running on Windows 10 with all updates, NO PROBLEM! :) So ya need to update that in desc. I'd suggest. ;) BTW, reallu DOES need a operations readme at least, your loafin'(https://www.donationcoder.com/forum/esmileys/gen3/3Smileys/eusa_naughty.gif)-BONZ (September 27, 2015, 10:01 AM)
What relay would be nice is adding the drag&drop-function from sPlayListMaker.-Sempfmaus (March 17, 2016, 10:27 AM)
Something with Cyrillic locale again?-rm (May 12, 2016, 02:28 PM)
Did the file format change? I just tried to load an .md5 file and it seems to have swapped the file path and the checksums.
The file lists them as:
[path] [checksum]
[path] [checksum]
Et cetera. But the client shows the checksum as the filename/path and the path as the saved checksum.-Deozaan (July 07, 2016, 06:36 PM)
Are you certain this was an MD5 file generated by SFV Ninja?-skwire (July 08, 2016, 08:32 AM)
1.3.5 works great, thanks a lot! :D-xviruz (August 15, 2016, 09:57 PM)
Can you add right click on SFV and MD5 files to scan/check ? need to drag the files every time. :(-jammmie900 (September 06, 2016, 08:38 PM)
Hi, jammmie900, and welcome to the DonationCoder site.Can you add right click on SFV and MD5 files to scan/check ? need to drag the files every time. :(-jammmie900 (September 06, 2016, 08:38 PM)
If you want SFV Ninja to open with SFV and MD5 files, do the following:
- Shift+right-click an SFV file and choose Open with > Choose default program from the menu.
- Click the Browse... button and navigate to the SFVNinja.exe file.
- Ensure the Always use the selected program to open this kind of file checkbox is ticked.
- Click the OK button.
Repeat the same procedure for MD5 files. At this point, you should be able to double-click either an SFV or an MD5 file and it should automatically load into SFV Ninja.-skwire (September 06, 2016, 10:31 PM)
I have two folders, say named Folder A and Folder B.
They're stored under different paths and have different names. Inside are other nested folders and files, which have the same general directory structure, but may or may not all match. What I'm trying to find out is exactly what's there and what's not, and for the ones that have same filename and patch, whether they're indeed the exact same files.-Cocoa (March 16, 2017, 04:04 AM)
I have two folders, say named Folder A and Folder B.
They're stored under different paths and have different names. Inside are other nested folders and files, which have the same general directory structure, but may or may not all match. What I'm trying to find out is exactly what's there and what's not, and for the ones that have same filename and patch, whether they're indeed the exact same files.-Cocoa (March 16, 2017, 04:04 AM)
That's what I thought would be the steps, except when I created the checksum file and moved it to the other folder, then selected "Load checksum file" -> "Verify All", all I got was the program re-verifying all the files in the initial folder that the checksum was created from. I also tried "Scan folder for checksum file and load" and got the same result.I have two folders, say named Folder A and Folder B.
They're stored under different paths and have different names. Inside are other nested folders and files, which have the same general directory structure, but may or may not all match. What I'm trying to find out is exactly what's there and what's not, and for the ones that have same filename and patch, whether they're indeed the exact same files.-Cocoa (March 16, 2017, 04:04 AM)
The fact that SFV Ninja stores relative paths instead of absolute paths lets you accomplish what you want:
- Use SFV Ninja to create a checksum file for Folder A.
- Save the resulting checksum file in Folder A.
- Move the checksum file (or copy it) to Folder B.
- Open the checksum file with SFV Ninja and have it verify the checksums.
-Deozaan (March 16, 2017, 09:40 AM)
That's what I thought would be the steps, except when I created the checksum file and moved it to the other folder, then selected "Load checksum file" -> "Verify All", all I got was the program re-verifying all the files in the initial folder that the checksum was created from. I also tried "Scan folder for checksum file and load" and got the same result.-Cocoa (March 17, 2017, 05:18 AM)
Also would like to make a suggestion to Jody/skwire (not sure which you prefer), can you add a "clear selected" option?-Cocoa (March 17, 2017, 05:18 AM)
That's what I thought would be the steps, except when I created the checksum file and moved it to the other folder, then selected "Load checksum file" -> "Verify All", all I got was the program re-verifying all the files in the initial folder that the checksum was created from. I also tried "Scan folder for checksum file and load" and got the same result.I have two folders, say named Folder A and Folder B.
They're stored under different paths and have different names. Inside are other nested folders and files, which have the same general directory structure, but may or may not all match. What I'm trying to find out is exactly what's there and what's not, and for the ones that have same filename and patch, whether they're indeed the exact same files.-Cocoa (March 16, 2017, 04:04 AM)
The fact that SFV Ninja stores relative paths instead of absolute paths lets you accomplish what you want:
- Use SFV Ninja to create a checksum file for Folder A.
- Save the resulting checksum file in Folder A.
- Move the checksum file (or copy it) to Folder B.
- Open the checksum file with SFV Ninja and have it verify the checksums.
-Deozaan (March 16, 2017, 09:40 AM)-Cocoa (March 17, 2017, 05:18 AM)
This might be a bit confusing but where you save the SFV file is important in relation to which files are in the list:
- Files that are on the same drive as the saved SFV file path are saved with paths relative to the save folder.
- Files that are on a different drive than the saved SFV file path are saved with full paths.
-skwire (March 17, 2017, 11:02 AM)
BtW, by "same drive" do you mean an entire physical hard drive itself or just a logical partition?-Cocoa (March 22, 2017, 09:30 AM)
Also, it would be helpful to be able to export the results of the checksum comparison report as a txt or html formatted file.-Cocoa (March 22, 2017, 09:30 AM)
Can't open or check file if the file name is too long-Frog Manus (March 27, 2019, 02:49 PM)