##########################################################don' do anything by defaultthe urllib parse quote or cgi escape calls in commonhtml py will escape the password as needed to embed in url or htmlthe cgi module undoes escapes automatically for us##########################################################def stringify(old)return old def unstringify(old)return old else##########################################################convert encoded string to/from string of digit charsto avoid problems with some special/nonprintable charsbut still leave the result semi-readable (but encrypted)some browsers had problems with escaped ampersandsetc ##########################################################separator '-def stringify(old)new 'for char in oldascii str(ord(char)new new separator ascii return new '-ascii-ascii-asciidef unstringify(old)new 'for ascii in old split(separator)[ :]new new chr(int(ascii)return new ##############################################################################encryption schemestry pycryptothen rotorthen simple/custom scheme ##############################################################################usecrypto userotor true tryimport crypto exceptusecrypto false tryimport rotor exceptuserotor false if usecrypto######################################################use third-party pycrypto package' aes algorithm assumes pswd has no '\ on the rightused to pad change the private key here if you install this ######################################################utility modules