I've been working on an MD5 updater from scratch lately.
What is MD5?
In cryptography, MD5 (Message-Digest algorithm 5) is a widely used cryptographic hash function with a 128-bit hash value. Specified in RFC 1321, MD5 has been employed in a wide variety of security applications, and is
also commonly used to check the integrity of files. However, it has been shown that MD5 is not collision resistant;[2] as such, MD5 is not suitable for applications like SSL certificates or digital signatures that rely on this property. An MD5 hash is typically expressed as a 32-digit hexadecimal number.
LolWut?
Every file has another MD5 Hash. If you have a textdocument with 555589489498 chars and you change 1 char; the md5 will be different.
How does a MD5 Hash looks like?
ef5513ab6c5f813c4846de160b3a4579
It is buildt by numbers and letters, no special chars.
How does your updater work?
You have a config with different stuff set. The config looks like this:
Code:
Config for MD5 Updater (c) Hawk
<< SETTINGS >>
<update>https://hfs-cod4.arturasserver.com/update</update>
<filelist>https://hfs-cod4.arturasserver.com/filelist.txt</filelist>
<notice>https://hfs-cod4.arturasserver.com/notice.txt</notice>
<window>MD5</window>
<website>www.google.de</website>
<picture>https://nunetherlands.files.*********.com/2008/10/gears-of-war.jpg</picture> '350x170
<processpath>\engine.exe</processpath> 'startuppath + processpath
<arguments>/settings</arguments>'leave it default if you don't want arguments
You will have to fill in your data.
On program startups it reads threw the config to get the information.
Afterwards it compares the md5 hashes listed in your filelist to the ones in your current startup folder. If the file does not exist or the md5 is different it adds the file to a list. Every file in that list will be updated.
How to use the MD5 Comparer, what can it do?
- Comparing two folders(MD5-Hashes)
- Creating a filelist
- Copy all non-matching files into a Patch folder which is located in the startuppath
First textbox: Select your patched folder.
Second textbox: Select your unpatched folder:
If you want to create a fast filelist, simply select the folder with the files in the first textbox and leave the second textbox empty.
-> Create Filelist
What do I need to use this updater?
- A FTP-Server(free webhost is fine)
- .Net Framework 3.5 or higher
- The .dll have to be in the same place as the updater
- A brain
Why is it so special, why should I use such updater instead of another one?
- Epic DotNetBar GUI
- Customizeable Image/Style/Stylecolor
- MD5 Hash comparing
- Current progress(progressbar)
- Current file updating(name of it)
- Notice
- Set your .exe to start and arguments
- Website
- Cuz I did it <_>
- Automatically adding non-existing folders
- MD5 Comparer to fastly create filelists(MD5 Comparer.exe, included in the download)
How does your updater look like?


MD5 Comparer is boring, no screenie needed.
Zomfg! I was into copy & pasting your program, but I couldn't dissassemble it. 
- Anti ILDASM
- NecroBit
- String Encryption
- Obfuscation
It looks too nice to be true!!! I needz virusscanz!?
.RAR Scan
MD5 Comparer
MD5 Updater
Where can I download it?
See below.
Meh! RAGE! I cannot download it!
Wait until the attachment gets approved.
MD5 Comparer (c) Blubb1337
MD5 Updater (c) Blubb1337
Any further suggestions or bugs you had to face? Tell me 
If you only want to take a look at it, you can use my current config to download some sample files. 2 textfiles and 1 image or so.