Encodes the message string using bitwise XOR encoding.
The key is combined with a random hash, and then it
too gets converted using XOR. The whole thing is then run
through mcrypt using the randomized key. The end result
is a double-encrypted message string that is randomized
with each call to this function, even if the supplied
message and key are the same.