sabren.net   rants   archive   bio   portfolio

a pure-python crypt()

crypt
Python comes with a wrapper for the unix crypt() routine. Unfortunately, it is not installed by default, and many users don't have the skills or access privileges to rebuild python. Therefore, I've made an attempt to port crypt() to python.

There are actually two versions of crypt() out there. The older one uses DES encryption, and the newer one uses an MD5 hash. I don't really understand either of them.

I do understand perl, more or less, so I made an attempt to port Crypt::PasswdMD5 and Crypt::UnixCrypt.

Results
I had some trouble writing md5crypt.py, but thanks to patches from Carey Evans and Dennis Marti, it works just fine.

I never got my port of UnixCrypt to work right, but Carey Evans hunted down the original C code on which UnixCrypt was based, and ported that to python. You can get it from his software page.

License
I'm putting my verions of this code in the public domain. If anyone does anything interesting with it, I'd love to hear about it: sabren@manifestation.com