你好,欢迎来到电脑编程技巧与维护杂志社! 杂志社简介广告服务读者反馈编程社区  
合订本订阅
 
 
您的位置:技术专栏 / Linux开发
Python加密解密简单脚本
 

有一个简单的解决方案,也是比较常用的解决方案,那就是我们可以把这些明文的密码或字串通过一定形式的转换,将它变成只有自己知道转换过程的加密字串,这个在现实中应用比较多,我们可以把加密字串写在配置文件中,在其他人看来就是一堆没有固定格式的加密串,而自己确可以按照自己特定的思路在脚本或者应用程序中解码。

加密明文字串(encrypt.py):

 

  1. #!/usr/bin/env python  
  2. import os,sys,socket  
  3. if len(sys.argv[:])!=1:  
  4.     print "\033[0;32mUsage: python " + sys.argv[0] + "\033[0m" 
  5.     sys.exit(0)  
  6. mypass = list(raw_input('Please input your passwd:'))  
  7. passlist = map((lambda x: ord(x)),mypass)  
  8. passlist2= []  
  9. for m in passlist:  
  10.     if int(m) < 100:  
  11.         m = int(m) + 888 
  12.     passlist2.append(m)  
  13. password = '' 
  14. for i in passlist2:  
  15.     password = password+str(i)  
  16. try:  
  17.     hostname = socket.gethostname()  
  18. except AttributeError, e:  
  19.     print "\033[0;31mWanning: ",e  
  20.     sys.exit(1)  
  21. print 'Securet passwd: ',hex(long(password))[2:-1] + "@@" + hostname  
  22.    
 解码密文字串(decrypt.py):
 
  1. #!/usr/bin/env python  
  2. import sys  
  3. if len(sys.argv[:])!=1:  
  4.     print "\033[0;32mUsage: python " + sys.argv[0] + "\033[0m" 
  5.     sys.exit(0)  
  6. try:  
  7.     mypass = int('%s' % str(raw_input('Please input your passwd:').split('@@')[0]),16)  
  8. except ValueError, e:  
  9.     print "\033[0;31mWanning: You are input a wrong secret passwd!\033[0m" 
  10.     sys.exit(1)  
  11.       
  12. passlist=[]  
  13. for i in range(0,len(str(mypass)),3):  
  14.     x=0;y=3 
  15.     x=x+i;y=y+i  
  16.     word = str(mypass)[x:y]  
  17.     if int(word) >= 800:  
  18.         word = int(word)-888 
  19.     passlist.append(int(word))  
  20. hh = map((lambda x: chr(x)),passlist)  
  21. password = '' 
  22. for i in hh:  
  23.     password = password + str(i)  
  24. 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月目录

  联系方式
TEL:010-82561037
Fax: 010-82561614
QQ: 100164630
Mail:gaojian@comprg.com.cn

  友情链接
 
Copyright 2001-2010, www.comprg.com.cn, All Rights Reserved
京ICP备14022230号-1,电话/传真:010-82561037 82561614 ,Mail:gaojian@comprg.com.cn
地址:北京市海淀区远大路20号宝蓝大厦E座704,邮编:100089