Hallo Frank,
Genau da hakte es, denn wenn ich einfach md5(Zufallszahl + Secret) sende, sehe ich ganz deutlich, wie ein Teil des md5 Hashes immer gleich bleibt, solange ich das secret nicht ändere. Das erleichtert eine brute force Attacke doch ungemein: Man beschaffe sich mehrere Kombinationen von Zufallszahl/md5Hash, stelle anhand des gleichbleibenden Anteils des Hashs fest, wie rum die Addition sein muss und probiere dann alle möglichen secrets zu Hause durch.
MD5 verhält sich "chaotisch", d.h. Du kannst keinen "einfachen" Zusammenhang zwischen y1 = MD5(x1 + a) und y2 = MD5(x2 + a) herstellen. (das ist ja auch der Sinn von MD5) Daher reicht MD5 für Deine Zwecke durchaus aus.
Viele Grüße,
Christian