0

I had problems installing some software packages on a Windows XP computer. I started troubleshooting the problem and at the end I decided to do a cryptographic test, and bingo! I had found the reason why the installation was failing. Parts of the installer files were corrupted.

The installer files were transferred from another computer on my network to the Windows XP computer. The cryptographic test I refer to was a simple SHA-256 hash function. I compared the message digests on source computer and target computer and they were not matching up! To be sure I was doing it right I repeated the test several times, and this time I also added MD5 hash to the mix. I started noticing very strange computer voodoo! Sometimes the digests were matching up, and sometimes not, or the MD5 would match up but not SHA-256. I also tried sending the installer files over again, and also in the other direction, all to no avail.

I have since done a clean install of Windows XP because I suspected that this is the computer that has the problem. I was right to suspect this one, because after reinstalling Windows XP I did the same tests again and now I'm getting the same message digests.

However! To be absolutely certain, beyond any doubt, that the problem has been resolved... I would like to do some type of data corruption test. Perhaps some kind of rolling hash function test from command line? Maybe I'm just dreaming now, but is there any such tool? I would love to be able to make one, but that's beyond my current knowledge.

This may or may not be related, but I should add that I have also conducted several RAM tests. I used both Memtest86+ and the good old Windows Memory Diagnostic (WMD). I got varying results. It passes all the tests in the standard test suite in Memtest86+ except test 7 and 8. Similarly, it passes all tests in WMD except the LRAND and ERAND test. I have reconfigured the memory now and it seems to be passing them all now.

I want to start the test and leave it running for 48 hours, unattended. This is why I don't view file copy tools with verification, such as TeraCopy, as an actual test tool. So fiddling with files back and forth is not what I'm after here.

  • As long as you have file r/w capability between the 2 sources, using Fastcopy or terracopy might be useful, they do a compare after file transfer. I spotted very tiny rare corruptions due to ram (overclock) issues using these programs locally only. Also such comparing file copying could have seen the original problem Windows normal copy/move has only minor checking, useless for a few changed bit. – Psycogeek Sep 21 '13 at 10:31
  • @Psycogeek Thanks! I do have TeraCopy on one of the computers actually. I'm aware of the file verification feature in TeraCopy. But I don't view this as an actual test tool for data corruption. Also, as far as I'm aware of it only does a simple CRC check. No SHA-256. – Samir Sep 21 '13 at 10:35
  • I dont know anything about SHA stuff, i will take any byte by byte compare method, if 50gigs has a single error , then something is horribly wrong :-) Finding any one error, is enough for me. I think they were saying Fastcopy uses MD5 – Psycogeek Sep 21 '13 at 10:49
  • @Psycogeek I find it very strange that no one has ever even thought about making a software tool that performs a data corruption test across a network connection. A command line tool like that would do wonders. Surely, data corruption is not THAT uncommon that there's no interest in making such a tool. If you do a Google search you'll find many people asking for help with data corruption across a network, be it private home or corporate network. A simple SHA-256 function would suffice. Many experts claim that MD5 is not reliable, CRC even less so. – Samir Sep 21 '13 at 10:50
  • It seems I need some sort of file or device level read/write tool with compare. But it needs to support network devices. The best thing I could find is Bart's Stuff Test v5 which closely resembles what I'm asking for. It can run endlessly. But this tool doesn't seem to report comparison results. It rather runs endlessly to stress test the targeting device. – Samir Sep 21 '13 at 11:59

Your Answer

By clicking "Post Your Answer", you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.