Die einzige Möglichkeit, welche ich sehe, ist den MD5 des Passworts mit einem Salt nochmals zu Hashen. Ob das wirklich besser ist, das wage ich zu bezweifeln.
Ansonsten kannst Du es nur über diesen "ewigen Updatecode" machen. Den zu nutzen ist imo aber auch nicht schlimm. Das kann transparent im Hintergrund geschehen, so dass die Nutzer nichts mitbekommen. Zusätzlich zum Salt-String, welcher in der
DB steht, würde ich einen weiteren Salt nutzen, der fest im Code steht. Das macht es für den Nichts-Ahnenden Angreifer nochmals schwieriger das Passwort via Brute-Force zu finden.
...
...