Diese Functionen/Prozeduren sind ja in einer MD5-Lib enthalten und diese mußt du natürlich mit in dein Programm einbinden (also die entsprechenden Units).
Und da dem MD5 ein fest definiertes Verfahren hinterliegt, welches immer gleich ist, kann man also mit jeder x-beliebigen Lib, welche MD5 kann, einen entsprechenden Key erstellen.
Einzig MD5Print und .MD5String können je nach Lib anders ausfallen, aber das ist egal, da man ja am Ergebnis sieht, was die machen