T wrote: > We all know that there are many softwares that require some license key > or registration key to enable them. How does one implement something > like this in python? >
Here's a thought: AES encrypt the bytecode dynamically for each user, using as a key an sha hash of their personal and corporate information, ethernet hardware address, and some hardware specific information, such as the serial number of the diskdrive on which the software will be installed. Along with this dynamically encrypted version of the software, require them to save the personal and corporate information in the system registry or equivalent on their computer. Then write a C or Fortran extension that assembles this information on the client side, produces the hashed key and uses it to decrypt the bytecode real-time, when the program launches. This bytecode can be fed to a running python process via a pipe and executed through skilled use of the marshal module. Once you have implemented this system, license it to software vendors such as Microsoft (or better yet, scientific software companies). Please remember to pay me royalties in the sum of 20% gross profits for devising this system for you. James -- James Stroud UCLA-DOE Institute for Genomics and Proteomics Box 951570 Los Angeles, CA 90095 http://www.jamesstroud.com/ -- http://mail.python.org/mailman/listinfo/python-list