While MD5 may not be the most effective way to secure data, it is used by some database applications and other systems. For more info on MD5, you can check: http://en.wikipedia.org/wiki/MD5
Once in a while, when configuring password sync/reset support for applications and systems for a given project, we stumble on MD5 hashed values.
DirXML Script example:
<do-reformat-op-attr name="LMSPassword"> <arg-value type="string"> <token-xpath expression="es:calcMD5(string($MD5Pwd))"/> </arg-value> </do-reformat-op-attr>
I am storing the value to be hashed in a local variable called MD5Pwd in the action before the action that actually hashes the value, using $MD5Pwd as the argument for my calcMD5 function.
MD5 hash is not reversible(in theory) so we can use this example to provide support for password reset, and password check, but not to obtain the original value(before hash) on the Publisher channel for password sync.
You can download my ECMAScript object below.
Disclaimer: As with everything else at NetIQ Cool Solutions, this content is definitely not supported by NetIQ, so Customer Support will not be able to help you if it has any adverse effect on your environment. It just worked for at least one person, and perhaps it will be useful for you too. Be sure to test in a non-production environment.