From a comment on bug 29925: If my password was 123Jim+1, and I just change to 123Jim+2, or change 3Jim@abc to 4Jim@abc, could we refuse such changes? Look for some 'large enough' string that they have in common or so? Or compare the number of positions where they are different? Note that it might be possible to move such code into a check_password plugin, but we would need the old and new password when calling ->set_password.
I hope this change can be made optional.