使用python加密自己的密码

yipeiwu_com6年前Python基础

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

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

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之Socket网络编程详解

python之Socket网络编程详解

什么是网络? 网络是由节点和连线构成,表示诸多对象及其相互联系。在数学上,网络是一种图,一般认为专指加权图。网络除了数学定义外,还有具体的物理含义,即网络是从某种相同类型的实际问题中抽象...

python3中的md5加密实例

在python3的标准库中,已经移除了md5,而关于hash加密算法都放在hashlib这个标准库中,如SHA1、SHA224、SHA256、SHA384、SHA512和MD5算法等。...

python 捕获 shell/bash 脚本的输出结果实例

#!/usr/bin/python ## get subprocess module import subprocess   ## call date command ##...

python获取命令行输入参数列表的实例代码

(一)单一独立的参数 如果命令行输入的参数都是各自单一独立的,直接用个循环把所有参数逐一读出来就行了。sys模块里面直接用args = sys.argv就可以获取到所有参数了(返回值ar...

Python、 Pycharm、Django安装详细教程(图文)

Python、 Pycharm、Django安装详细教程(图文)

最近做项目要用到python,那么不用说就得先配置好python环境 以及选择好python工具。接下来分享自己的安装过程。 (一)、Python的安装 1.先进入官网下载python版...