Package diffpy :: Package pdfgui :: Package gui :: Module simplecipher
[hide private]
[frames] | no frames]

Source Code for Module diffpy.pdfgui.gui.simplecipher

 1  #!/usr/bin/env python 
 2  # -*- coding: UTF-8 -*- 
 3  ############################################################################## 
 4  # 
 5  # PDFgui            by DANSE Diffraction group 
 6  #                   Simon J. L. Billinge 
 7  #                   (c) 2006 trustees of the Michigan State University. 
 8  #                   All rights reserved. 
 9  # 
10  # File coded by:    Chris Farrow 
11  # 
12  # See AUTHORS.txt for a list of people who contributed. 
13  # See LICENSE.txt for license information. 
14  # 
15  ############################################################################## 
16   
17  """This module defines the cipher and decipher methods that encode and decode a 
18  string. This module and these methods are not secure. Ciphered passwords should 
19  be stored with the tightest (paranoid) permissions. 
20  """ 
21   
22 -def cipher(string):
23 """Apply a simple replacement cipher to a string. 24 25 This adds a small amount of security when storing passwords. 26 """ 27 wordCipher = '\x00\x01\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f 2/ItZ\\^xKgsa&m"z0rf-W$4vd3pPE8\'y]7~_@w[`#bTk<UjYDC,!:?e5Vo1>XuM.iB9)*;GRl%hN{QAq}+|SF(cJOL=H6n\x7f\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7\xa8\xa9\xaa\xab\xac\xad\xae\xaf\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xeb\xec\xed\xee\xef\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff' 28 return string.translate(wordCipher)
29
30 -def decipher(string):
31 """Apply a simple replacement cipher to a ciphered string to get the 32 original back. 33 """ 34 wordDecipher = '\x00\x01\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f T/I6j-?vderS4`"1[!:7X}B>cUfM{\\VEobRQ=ug|#x)z_ly<nhtKNY5]P%G&A\'DH,Jw9W3*kaOLi.~Z;p2+$^8F(@0msqC\x7f\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7\xa8\xa9\xaa\xab\xac\xad\xae\xaf\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xeb\xec\xed\xee\xef\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff' 35 return string.translate(wordDecipher)
36 37 __id__ = "$Id: simplecipher.py 2980 2009-04-02 00:14:33Z juhas $" 38