+1 to this. If you're going to send a replayable MD5 hash over the wire, you might as well just drop the pretense and just call it "password" instead - intercepting the "hash" compromises the account just as surely as if you'd leaked the password.
This is especially nasty since the document mentions that not all users will use SSL. If supporting access via a non-secure channel is an absolute requirement, you may want to figure out something more effective...
This is especially nasty since the document mentions that not all users will use SSL. If supporting access via a non-secure channel is an absolute requirement, you may want to figure out something more effective...