有一个简单的解决方案,也是比较常用的解决方案,那就是我们可以把这些明文的密码或字串通过一定形式的转换,将它变成只有自己知道转换过程的加密字串,这个在现实中应用比较多,我们可以把加密字串写在配置文件中,在其他人看来就是一堆没有固定格式的加密串,而自己确可以按照自己特定的思路在脚本或者应用程序中解码。
加密明文字串(encrypt.py):
#!/usr/bin/env python import os,sys,socket if len(sys.argv[:])!=1: print "\033[0;32mUsage: python " + sys.argv[0] + "\033[0m" sys.exit(0) mypass = list(raw_input('Please input your passwd:')) passlist = map((lambda x: ord(x)),mypass) passlist2= [] for m in passlist: if int(m) < 100: m = int(m) + 888 passlist2.append(m) password = '' for i in passlist2: password = password+str(i) try: hostname = socket.gethostname() except AttributeError, e: print "\033[0;31mWanning: ",e sys.exit(1) print 'Securet passwd: ',hex(long(password))[2:-1] + "@@" + hostname
#!/usr/bin/env python import sys if len(sys.argv[:])!=1: print "\033[0;32mUsage: python " + sys.argv[0] + "\033[0m" sys.exit(0) try: mypass = int('%s' % str(raw_input('Please input your passwd:').split('@@')[0]),16) except ValueError, e: print "\033[0;31mWanning: You are input a wrong secret passwd!\033[0m" sys.exit(1) passlist=[] for i in range(0,len(str(mypass)),3): x=0;y=3 x=x+i;y=y+i word = str(mypass)[x:y] if int(word) >= 800: word = int(word)-888 passlist.append(int(word)) hh = map((lambda x: chr(x)),passlist) password = '' for i in hh: password = password + str(i) print 'Password: ' + password
·2024年12月目录 ·2024年11月目录 ·2024年10月目录 ·2024年9月目录 ·2024年8月目录 ·2024年7月目录 ·2024年6月目录 ·2024年5月目录 ·2024年4月目录 ·2024年3月目录 ·2024年2月目录 ·2024年1月目录 ·2023年12月目录 ·2023年11月目录