;ò Á7Cc@s¥dZdZddfddfddfgZdkZdkZdZy dkZWn dZnXd „Zd „Zd „Z d „Z d „Z d„Z d„Z dS(s Password encryption. s $Rev: 70 $is Clear textis UNIX cryptis MD5 DigestNcCsY|djo|SnA|djot|ƒSn&|djot|ƒSn d|‚dS(NiiisUnknown password type: %s(stypespasswords pwe_crypts pwe_md5_crypt(spasswordstype((sM/mnt/gmirror/ports/www/zope-mysqluserfolder/work/mysqlUserFolder/passwords.pysencodes   cCse|djo||jSnG|djot||ƒSn)|djot||ƒSn d|‚dS(NiiisUnknown password type: %s(stypespasswords enc_passwordspwe_crypt_checks pwe_md5_check(spasswords enc_passwordstype((sM/mnt/gmirror/ports/www/zope-mysqluserfolder/work/mysqlUserFolder/passwords.pyscheck's   cCs0titdƒtdƒdƒ}t|ƒSdS(Nsaszi(srandoms randrangesordscschr(sc((sM/mnt/gmirror/ports/www/zope-mysqluserfolder/work/mysqlUserFolder/passwords.pysget_random_char8s"cCs6t o d‚ntƒtƒ}ti||ƒSdS(NsCrypt module is not avaiable.(s has_cryptsget_random_charssaltscryptspassword(spasswordssalt((sM/mnt/gmirror/ports/www/zope-mysqluserfolder/work/mysqlUserFolder/passwords.pys pwe_crypt@s cCs<t o d‚n|d }ti||ƒ}||jSdS(NsCrypt module is not avaiable.i(s has_crypts enc_passwordssaltscryptspasswordss(spasswords enc_passwordssaltss((sM/mnt/gmirror/ports/www/zope-mysqluserfolder/work/mysqlUserFolder/passwords.pyspwe_crypt_checkGs   cCsti|ƒiƒ}|SdS(N(smd5snewspasswords hexdigestsdigest(spasswordsdigest((sM/mnt/gmirror/ports/www/zope-mysqluserfolder/work/mysqlUserFolder/passwords.pys pwe_md5_cryptPscCst|ƒ}||jSdS(N(s pwe_md5_cryptspasswordsdigests enc_password(spasswords enc_passwordsdigest((sM/mnt/gmirror/ports/www/zope-mysqluserfolder/work/mysqlUserFolder/passwords.pys pwe_md5_checkXs (s__doc__s __version__sPASSWD_ENC_LISTsrandomsmd5s has_cryptscryptsencodeschecksget_random_chars pwe_cryptspwe_crypt_checks pwe_md5_crypts pwe_md5_check( s pwe_md5_checkscryptsrandoms has_cryptsget_random_chars pwe_md5_cryptspwe_crypt_checks pwe_cryptsPASSWD_ENC_LISTsencodes __version__schecksmd5((sM/mnt/gmirror/ports/www/zope-mysqluserfolder/work/mysqlUserFolder/passwords.pys?s!