Python Cryptography Toolkit v1.0.0
I've just uploaded version 1.0.0 of the Python Cryptography Toolkit, a collection of cryptographic routines for the Python programming language. It's at ftp://ftp.cwi.nl/pub/pct/pycrypt100.tgz. All my code is public domain; some of the algorithm implementations are GPLed. The Toolkit now contains various cryptographic algorithms such as DES, IDEA, MD5, etc. I will fix bugs in the software, and may add or remove the odd module if some startling new research result comes out, but things should be pretty stable from now on. The algorithms available are: Hash functions: Haval, MD2, MD4, MD5, SHA. Private-key encryption: Blowfish, DES, DES3 (Triple DES), Diamond, IDEA, Alleged RC4, 32-bit RC5, REDOC III. Public-key: Digital Signature Standard, ElGamal, RSA. (There's a non-functional ESIGN module included, too; I'll finish it for a subsequent release.) Python is an interpreted scripting language; see http://www.python.org for more information, the source code, and binaries. It includes arbitrary-sized integers, so the public-key algorithms are implemented in pure Python; this entails a speed penalty, but makes the code more valuable for educational purposes. A sample usage of a hash algorithm (MD5) is:
import md5 hash=md5.new() hash.update(message) hash.digest() '\235\361\034\357\217MX\2246\226\367\366Ebx\326'
A sample use of an encryption algorithm (IDEA, in this case) is:
import idea obj=idea.new('This is a key456', idea.ECB) message="The answer is no" ciphertext=obj.encrypt(message) ciphertext '\2325$\343=)d\341^\025<\344\013\204 T' obj.decrypt(ciphertext) 'The answer is no'
Questions, comments, or suggestions are welcomed at the address below. Andrew Kuchling andrewk@cst.ca
Andrew Kuchling <andrewk@cst.ca> writes:
I've just uploaded version 1.0.0 of the Python Cryptography Toolkit, a collection of cryptographic routines for the Python programming language. It's at ftp://ftp.cwi.nl/pub/pct/pycrypt100.tgz. [...] The Toolkit now contains various cryptographic algorithms such as DES, IDEA, MD5, etc. [...] Questions, comments, or suggestions are welcomed at the address below.
Sounds good. Here's some nitpicking: (1) If you don't mind announcing that you've exported the software from Canada to the Netherlands, why not just put it up for ftp at a Canadian site ? (2) Acronym overload: try to avoid calling your toolkit "PCT", since M$ already has some security protocol called PCT.... -Futplex <futplex@pseudonym.com>
Futplex <futplex@pseudonym.com> wrote:
(1) If you don't mind announcing that you've exported the software from Canada to the Netherlands, why not just put it up for ftp at a Canadian site ?
Simply because I don't have anywhere to put it. This e-mail account is at my workplace, and my employer doesn't run an anonymous FTP site. I also don't have an account with a local ISP, just because I haven't bothered to get one yet. Once I do, I'll certainly make the code available there.
(2) Acronym overload: try to avoid calling your toolkit "PCT", since M$ already has some security protocol called PCT....
Yeah, I know; my code has been around for about 6 months, and I only found out about MS's protocol a few weeks ago. Hmmm... Python Cryptography _Package_? Kit? Collection? Stuff? Andrew Kuchling andrewk@cst.ca
participants (2)
-
Andrew Kuchling -
futplexï¼ pseudonym.com