Changeset 5837
- Timestamp:
- May 22, 2009, 9:40:05 AM (15 years ago)
- Location:
- accountmanagerplugin/trunk/acct_mgr
- Files:
-
- 1 added
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
accountmanagerplugin/trunk/acct_mgr/md5crypt.py
r1068 r5837 12 12 # This port adds no further stipulations. I forfeit any copyright interest. 13 13 14 import md514 from hashlib_compat import md5 15 15 16 16 def md5crypt(password, salt, magic='$1$'): 17 17 # /* The password first, since that is what is most unknown */ /* Then our magic string */ /* Then the raw salt */ 18 m = md5 .new()18 m = md5() 19 19 m.update(password + magic + salt) 20 20 21 21 # /* Then just as many characters of the MD5(pw,salt,pw) */ 22 mixin = md5 .md5(password + salt + password).digest()22 mixin = md5(password + salt + password).digest() 23 23 for i in range(0, len(password)): 24 24 m.update(mixin[i % 16]) … … 38 38 # /* and now, just to make sure things don't run too fast */ 39 39 for i in range(1000): 40 m2 = md5 .md5()40 m2 = md5() 41 41 if i & 1: 42 42 m2.update(password) -
accountmanagerplugin/trunk/acct_mgr/pwhash.py
r5273 r5837 11 11 12 12 from binascii import hexlify 13 import md5, sha 13 from hashlib_compat import md5, sha1 14 14 15 15 from trac.core import * … … 81 81 return md5crypt(password, salt_[6:].split('$')[0], '$apr1$') 82 82 elif salt_.startswith('{SHA}'): 83 return '{SHA}' + sha .new(password).digest().encode('base64')[:-1]83 return '{SHA}' + sha1(password).digest().encode('base64')[:-1] 84 84 elif crypt is None: 85 85 # crypt passwords are only supported on Unix-like systems … … 91 91 def htdigest(user, realm, password): 92 92 p = ':'.join([user, realm, password]) 93 return md5 .new(p).hexdigest()93 return md5(p).hexdigest()
Note: See TracChangeset
for help on using the changeset viewer.