| # Testing md5 module |
| |
| import string |
| from md5 import md5 |
| |
| def hexstr(s): |
| h = string.hexdigits |
| r = '' |
| for c in s: |
| i = ord(c) |
| r = r + h[(i >> 4) & 0xF] + h[i & 0xF] |
| return r |
| |
| def md5test(s): |
| return 'MD5 ("' + s + '") = ' + hexstr(md5(s).digest()) |
| |
| print 'MD5 test suite:' |
| print md5test('') |
| print md5test('a') |
| print md5test('abc') |
| print md5test('message digest') |
| print md5test('abcdefghijklmnopqrstuvwxyz') |
| print md5test('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789') |
| print md5test('12345678901234567890123456789012345678901234567890123456789012345678901234567890') |
| |
| # hexdigest is new with Python 2.0 |
| m = md5('testing the hexdigest method') |
| h = m.hexdigest() |
| if hexstr(m.digest()) <> h: |
| print 'hexdigest() failed' |