Saturday, January 30, 2016

How to Verify Computer File Integrity

Is this really navigation?  I would have to say no, unless we are talking about really modern times where the navigator gets more and more involved with computer programs and computer files.

We have been working on converting weather maps to echarts, which has led us to using several open source utilities. Often free programs we download online can get corrupted or polluted by accident or some malware.  Or maybe we want to send someone a file of data or a gpx file of a long list of way points or a detailed GPS track, and we worry that loading or unloading of it from an echart program might change the content of the file in some way. Or maybe you just want to send a long text document to someone and be sure it has not changed when it gets there or when it goes somewhere else.

It turns out that the tech world has a solution for this, which I suspect is well known to those who know it well.  It is called the MD5 sum. It is a unique number created by an encryption program that is a fingerprint of that file.

To use it, you need a program that reads the MD5 value of a file (any file: executable, image, text, etc) and then you just use that program to read the MD5 sum of that file and post it, or tell the recipient what it is.  Then when they get the file, they run it through the same program to check the values.  If anything at all has changed in that file, just one dot or one space, then the MD5 sum will have changed and you will know it has changed.

This test does not tell you what has changed, but I believe there are numerous programs that will also compare files to detect the change. But for images or encrypted executables, you still might not know what has changed.

This very easy to use test is just to confirm that it has not changed. That is all.

One convenient version I have found is called WinMD5.exe.  An example of the use of this is in this video below confirming the authenticity of the open source graphics program called Gimp... which we are suggesting could be useful for making BSB files from images.

No comments: