Yeah, I (of course
) actually thought about that, but decided not to, for a few reasons:
- this would require naming all those non-standard algorithms, introducing a new kind of semi-standard, which requires more thought that you’d expect. For instance, I would be naming the
md5(md5(pass) + salt)methodvbulletinand two months I’d find out that forum X uses the same algorithm, and we would end up with something very counter-intuitive. - ease of parsing. Your gist had a nasty bug in
salt, password_hash = self.custom_fields['import_pass'].split(':')becausesaltcan contain a colon. I turned them around and used the limit parameter in this case but this made me decide to treat all crypted password strings as an opaque string.