diff options
Diffstat (limited to 'Demo/md5test')
-rwxr-xr-x | Demo/md5test/md5driver.py | 154 |
1 files changed, 77 insertions, 77 deletions
diff --git a/Demo/md5test/md5driver.py b/Demo/md5test/md5driver.py index 326c0cf..1b753cf 100755 --- a/Demo/md5test/md5driver.py +++ b/Demo/md5test/md5driver.py @@ -1,125 +1,125 @@ import string def MDPrint(str): - outstr = '' - for i in str: - o = ord(i) - outstr = outstr \ - + string.hexdigits[(o >> 4) & 0xF] \ - + string.hexdigits[o & 0xF] - print outstr, - + outstr = '' + for i in str: + o = ord(i) + outstr = outstr \ + + string.hexdigits[(o >> 4) & 0xF] \ + + string.hexdigits[o & 0xF] + print outstr, + from time import time def makestr(start, end): - result = '' - for i in range(start, end + 1): - result = result + chr(i) + result = '' + for i in range(start, end + 1): + result = result + chr(i) + + return result - return result - from md5 import md5 def MDTimeTrial(): - TEST_BLOCK_SIZE = 1000 - TEST_BLOCKS = 10000 + TEST_BLOCK_SIZE = 1000 + TEST_BLOCKS = 10000 + + TEST_BYTES = TEST_BLOCK_SIZE * TEST_BLOCKS - TEST_BYTES = TEST_BLOCK_SIZE * TEST_BLOCKS + # initialize test data, need temporary string filler - # initialize test data, need temporary string filler - - filsiz = 1 << 8 - filler = makestr(0, filsiz-1) - data = filler * (TEST_BLOCK_SIZE / filsiz); - data = data + filler[:(TEST_BLOCK_SIZE % filsiz)] + filsiz = 1 << 8 + filler = makestr(0, filsiz-1) + data = filler * (TEST_BLOCK_SIZE / filsiz); + data = data + filler[:(TEST_BLOCK_SIZE % filsiz)] - del filsiz, filler + del filsiz, filler - # start timer - print 'MD5 time trial. Processing', TEST_BYTES, 'characters...' - t1 = time() + # start timer + print 'MD5 time trial. Processing', TEST_BYTES, 'characters...' + t1 = time() - mdContext = md5() + mdContext = md5() - for i in range(TEST_BLOCKS): - mdContext.update(data) + for i in range(TEST_BLOCKS): + mdContext.update(data) - str = mdContext.digest() - t2 = time() + str = mdContext.digest() + t2 = time() - MDPrint(str) - print 'is digest of test input.' - print 'Seconds to process test input:', t2 - t1 - print 'Characters processed per second:', TEST_BYTES / (t2 - t1) + MDPrint(str) + print 'is digest of test input.' + print 'Seconds to process test input:', t2 - t1 + print 'Characters processed per second:', TEST_BYTES / (t2 - t1) def MDString(str): - MDPrint(md5(str).digest()) - print '"' + str + '"' + MDPrint(md5(str).digest()) + print '"' + str + '"' def MDFile(filename): - f = open(filename, 'rb'); - mdContext = md5() + f = open(filename, 'rb'); + mdContext = md5() - while 1: - data = f.read(1024) - if not data: - break - mdContext.update(data) + while 1: + data = f.read(1024) + if not data: + break + mdContext.update(data) - MDPrint(mdContext.digest()) - print filename + MDPrint(mdContext.digest()) + print filename import sys def MDFilter(): - mdContext = md5() + mdContext = md5() - while 1: - data = sys.stdin.read(16) - if not data: - break - mdContext.update(data) + while 1: + data = sys.stdin.read(16) + if not data: + break + mdContext.update(data) - MDPrint(mdContext.digest()) - print + MDPrint(mdContext.digest()) + print def MDTestSuite(): - print 'MD5 test suite results:' - MDString('') - MDString('a') - MDString('abc') - MDString('message digest') - MDString(makestr(ord('a'), ord('z'))) - MDString(makestr(ord('A'), ord('Z')) \ - + makestr(ord('a'), ord('z')) \ - + makestr(ord('0'), ord('9'))) - MDString((makestr(ord('1'), ord('9')) + '0') * 8) + print 'MD5 test suite results:' + MDString('') + MDString('a') + MDString('abc') + MDString('message digest') + MDString(makestr(ord('a'), ord('z'))) + MDString(makestr(ord('A'), ord('Z')) \ + + makestr(ord('a'), ord('z')) \ + + makestr(ord('0'), ord('9'))) + MDString((makestr(ord('1'), ord('9')) + '0') * 8) - # Contents of file foo are "abc" - MDFile('foo') + # Contents of file foo are "abc" + MDFile('foo') from sys import argv # I don't wanna use getopt(), since I want to use the same i/f... def main(): - if len(argv) == 1: - MDFilter() - for arg in argv[1:]: - if arg[:2] == '-s': - MDString(arg[2:]) - elif arg == '-t': - MDTimeTrial() - elif arg == '-x': - MDTestSuite() - else: - MDFile(arg) + if len(argv) == 1: + MDFilter() + for arg in argv[1:]: + if arg[:2] == '-s': + MDString(arg[2:]) + elif arg == '-t': + MDTimeTrial() + elif arg == '-x': + MDTestSuite() + else: + MDFile(arg) main() |