Kurz gesagt:
http://de.wikipedia.org/wiki/MD5
Ganz kurz gesagt: Der MD5-Hash liefert dir, zB auf einen String angewandt, bei nahezu jedem unterschiedlichen String einen anderen Hash. Aus dem Hash kann man allerdings nicht ohne weiteres wieder den String gnerieren.