Hi, I have a password in plain text and I want to check if it matches with the crypted password in auth_user.password field.
I have tried comparing auth_user.password with str(db.auth_user.password.validate(plain_password)[0]) with no success even when I know that the passwords match exactly. The problem seems to boil down to the fact that encryption of the same string results different encrypted strings. For example, >>> from gluon.validators import CRYPT, LazyCrypt >>> crypt = CRYPT() >>> str(LazyCrypt(crypt, 'mysecret')) 'pbkdf2(1000,20,sha512)$a2a2ca127df6bc19$77bb5a3d129e2ce710daaefeefef8356c4c827ff' >>> str(LazyCrypt(crypt, 'mysecret')) 'pbkdf2(1000,20,sha512)$a555a267249876fb$bc18f82b72a3a5ebce617f32d6abaa5c48734ab9' What would be the correct way to check if passwords match when they are given in encrypted form? Any hints are appreciated, Pearu --