使用python加密自己的密码


Posted in Python onAugust 04, 2015

有些时候我们不得不在自己的代码里写上密码,为了安全起见,我们可以为自己的密码加密

先上段代码,这个代码是转自网上

root@ProFtp:/usr/lib/python2.7# more jastmencrypt.py
"""
jastme encrypt password
"""
def encrypt(key, s): 
  b = bytearray(str(s).encode("gbk")) 
  n = len(b) # 求出 b 的字节数 
  c = bytearray(n*2) 
  j = 0 
  for i in range(0, n): 
    b1 = b[i] 
    b2 = b1 ^ key # b1 = b2^ key 
    c1 = b2 % 16 
    c2 = b2 // 16 # b2 = c2*16 + c1 
    c1 = c1 + 65 
    c2 = c2 + 65 # c1,c2都是0~15之间的数,加上65就变成了A-P 的字符的编码 
    c[j] = c1 
    c[j+1] = c2 
    j = j+2 
  return c.decode("gbk") 
 
def decrypt(key, s): 
  c = bytearray(str(s).encode("gbk")) 
  n = len(c) # 计算 b 的字节数 
  if n % 2 != 0 : 
    return "" 
  n = n // 2 
  b = bytearray(n) 
  j = 0 
  for i in range(0, n): 
    c1 = c[j] 
    c2 = c[j+1] 
    j = j+2 
    c1 = c1 - 65 
    c2 = c2 - 65 
    b2 = c2*16 + c1 
    b1 = b2^ key 
    b[i]= b1 
  try: 
    return b.decode("gbk") 
  except: 
    return "failed"

以UTF8的编码保存这个代码到/usr/lib/python2.7

In [1]: import jastmencrypt
 
In [3]: jastmencrypt.encrypt(119,'mypassword')        加密
Out[3]: u'KBOAHAGBEAEAAAIBFADB'
 
In [4]: jastmencrypt.decrypt(119,'KBOAHAGBEAEAAAIBFADB')   解密
Out[4]: u'mypassword'

我们在ipython中先加密好密码,然后拿到代码里,要使用的时候解密一下即可,这样可以很大程度上保证我们的密码安全。

以上就是本文给大家分享的全部内容了,希望对大家学习Python代码能够有所帮助。

Python 相关文章推荐
Python中的两个内置模块介绍
Apr 05 Python
Python入门教程之if语句的用法
May 14 Python
python基于右递归解决八皇后问题的方法
May 25 Python
Python进度条实时显示处理进度的示例代码
Jan 30 Python
python 用lambda函数替换for循环的方法
Jun 09 Python
Python之列表实现栈的工作功能
Jan 28 Python
详解Python静态网页爬取获取高清壁纸
Apr 23 Python
python集合是否可变总结
Jun 20 Python
python通过txt文件批量安装依赖包的实现步骤
Aug 13 Python
OpenCV+Python--RGB转HSI的实现
Nov 27 Python
Pythonic版二分查找实现过程原理解析
Aug 11 Python
Python编写冷笑话生成器
Apr 20 Python
Python实现字典的key和values的交换
Aug 04 #Python
python利用装饰器进行运算的实例分析
Aug 04 #Python
浅谈python多线程和队列管理shell程序
Aug 04 #Python
python中使用序列的方法
Aug 03 #Python
python实现备份目录的方法
Aug 03 #Python
python使用MySQLdb访问mysql数据库的方法
Aug 03 #Python
浅谈Python中列表生成式和生成器的区别
Aug 03 #Python
You might like
PHP集成FCK的函数代码
2008/09/27 PHP
php中inlcude()性能对比详解
2012/09/16 PHP
深入PHP nl2br()格式化输出的详解
2013/06/05 PHP
YII Framework框架教程之使用YIIC快速创建YII应用详解
2016/03/15 PHP
php pdo操作数据库示例
2017/03/10 PHP
php+laravel依赖注入知识点总结
2019/11/04 PHP
Javascript的匿名函数小结
2009/12/31 Javascript
让元素在网页中可拖动示例代码
2013/08/13 Javascript
jQuery列表拖动排列具体实现
2013/11/04 Javascript
jQuery中事件对象e的事件冒泡用法示例介绍
2014/04/25 Javascript
js判断手机和pc端选择不同执行事件的方法
2015/01/30 Javascript
jQuery实现伸展与合拢panel的方法
2015/04/30 Javascript
JQuery中层次选择器用法实例详解
2015/05/18 Javascript
探讨JavaScript中的Rest参数和参数默认值
2015/07/29 Javascript
跟我学习javascript的prototype,getPrototypeOf和__proto__
2015/11/17 Javascript
jQuery的$.extend 浅拷贝与深拷贝
2017/03/08 Javascript
在小程序中使用Echart图表的示例代码
2018/08/02 Javascript
详解微信小程序-获取用户session_key,openid,unionid - 后端为nodejs
2019/04/29 NodeJs
vue路由插件之vue-route
2019/06/13 Javascript
JavaScript中this的学习笔记及用法整理
2020/02/17 Javascript
JS Thunk 函数的含义和用法实例总结
2020/04/08 Javascript
Vue使用自定义指令实现拖拽行为实例分析
2020/06/06 Javascript
Python读取图片属性信息的实现方法
2016/09/11 Python
对python的unittest架构公共参数token提取方法详解
2018/12/17 Python
python版DDOS攻击脚本
2019/06/12 Python
利用python计算时间差(返回天数)
2019/09/07 Python
pyqt5、qtdesigner安装和环境设置教程
2019/09/25 Python
基于Python获取照片的GPS位置信息
2020/01/20 Python
澳大利亚足球鞋和服装购物网站:Ultra Football
2018/10/11 全球购物
医学护理系毕业生求职信
2013/10/01 职场文书
2014村务公开实施方案
2014/02/25 职场文书
工商干部先进事迹
2014/05/14 职场文书
2019年大学生职业生涯规划书
2019/03/25 职场文书
创业计划书之香辣虾火锅
2019/09/23 职场文书
Feign调用传输文件异常的解决
2021/06/24 Java/Android
Java+swing实现抖音上的表白程序详解
2022/06/25 Java/Android