Der MD5-Algorithmus ist fest eingebaut als C-Extension. Unter Windows hab ich keine Ahnung wo die liegen, unter Unix im Normalfall in:
/usr/lib/python2.4/lib-dynload
als .so, also shared object. Der MD5-Algorithmus gibt das GIL soweit ich weiß nicht ab; bringt also keinen Vorteil wenn man mehrere Threads aufmacht um in Python MD5-Summen parallel zu berechnen (ganz egal wie groß man die blocksize macht, es wird immer nur eine MD5-Summe gleichzeitig berechnet).
Wen der Quellcode interessiert:
http://svn.python.org/view/python/trunk ... iew=markup
--- Heiko.