I'm not going to get into the arguments about security of the various hashing methods, other than to observe that there have been some fairly misleading statements here.
As far as the proposal goes, I think this is a perfectly reasonable feature request (and you should open a ticket about it if one does not already exist). I'd favor a solution where your setting mapped the algo name to the actual function used: PASSWORD_HASH_FUNCTIONS = { 'bcrypt': myproject.myapp.bcrypt_hexdigest, 'sha1': django.utils.hashcompat.sha_constructor, etc.} Then we could put the existing hash functions (sha1, md5, etc.) in that setting as the default, and get rid of the algo-checking code that currently lives in auth.models. When we do a password comparison, we simply pull the hash name, lookup the function, and away we go. I don't think this will make it into 1.3, but it's a reasonable thing to do and I think it would help improve all the special-case code that currently lives in auth.models. The patch itself wouldn't be too hard, and I'd be willing to write it myself if nobody else will. -Paul -- You received this message because you are subscribed to the Google Groups "Django developers" group. To post to this group, send email to django-develop...@googlegroups.com. To unsubscribe from this group, send email to django-developers+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-developers?hl=en.