We use MD5 error checking to make sure the files you download don't get corrupted somewhere along the way. The way MD5 works (and this is an over simplication, I'll grant you, but it works for our purposes), is similar to taking a sentence, assigning number values to each letter (a=1, b=2, etc), and adding up the corresponding numbers to get a sum. That's your "MD5" (though the real MD5 creates a much more unique signature than that). Then tell someone that sentence, and have them write it down. If they misspell something, then when they add up the digits from their setnence, it will have a different sum.
There are several reasons they could have misspelled it. Maybe they can't hear very well (bad network cable or card). Maybe there is someone between you and the person that has to examine the sentence to make sure there isn't a curse word before they relay it to you, and they might mispronounce something when they relay it to you (firewalls, security software). Maybe the person has dyslexia (bad RAM).
Right now, we're trying to pass the entire sentence to you, so it's easier for something along the way to get something wrong. We've been working on a new system that essentially passes one word at a time, so there's less chance of confusion, and if something does go wrong, you'll know about it sooner.
For now, the most common fixes would be to try adding exceptions to (or temporarily disabling) your security software for Impulse to see if the issues persist. If that doesn't help, I'd recommend downloading memtest86+ and scanning your computer for bad RAM.