python3.x实现base64加密和解密

yipeiwu_com6年前Python基础

用python3.x实现base64加密和解密,供大家参考,具体内容如下

加密

base64_encrypt.py

#!/usr/bin/python3
#encoding:utf-8
import base64
var = 1
while var==1:
  str_encrypt=input("输入要加密的字符串:\n"); 
  base64_encrypt = base64.b64encode(str_encrypt.encode('utf-8'))
  print("BASE64加密串:\n"+str(base64_encrypt,'utf-8'))
  print("按ctrl+c退出程序")

打开windows命令窗口>把加密代码文件拖入黑窗口>回车>输入要加密的字符串>回车完成加密

解密

base64_decrypt.py

#!/usr/bin/python3
#encoding:utf-8
import base64
import logging
import sys
'''
方式一:简单的logger配置
log_file = "E:\pythonwork/basic_logger.log"
logging.basicConfig(filename = log_file, level = logging.INFO)
'''

#方式二
#用base64_decrypt创建日志记录器
logger = logging.getLogger('base64_decrypt')
logger.setLevel(logging.DEBUG)
#创建甚至记录调试消息的文件处理程序
fh = logging.FileHandler("E:\pythonwork/basic_logger.log")
fh.setLevel(logging.DEBUG)
#创建具有较高日志级别的控制台处理程序
ch = logging.StreamHandler()
ch.setLevel(logging.ERROR)
#创建格式化程序并将其添加到处理程序中
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
fh.setFormatter(formatter)
ch.setFormatter(formatter)
#将处理程序添加到记录器
logger.addHandler(fh)
logger.addHandler(ch)


while True :
  global base64_decrypt
  try:
    str_decrypt=input("输入BASE64加密串:\n")
    base64_decrypt = base64.b64decode(str_decrypt.encode('utf-8'))
    print("BASE64解密串(UTF-8):\n",str(base64_decrypt,'utf-8'))
    logger.info("BASE64解密串:\n"+str(base64_decrypt,'utf-8'))
  except Exception as e:
    print ("BASE64解密串(UTF-8)异常:", e)
    print("BASE64解密串(默认字符集):\n",str(base64_decrypt))
    base64_decrypt=""
    logger.info("e:"+ str(e))
  finally: 
    print("按ctrl+c退出程序")

打开windows命令窗口>把解密代码文件拖入黑窗口>回车>输入要解密的字符串>回车完成解密

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

使用 Python 合并多个格式一致的 Excel 文件(推荐)

使用 Python 合并多个格式一致的 Excel 文件(推荐)

一 问题描述 最近朋友在工作中遇到这样一个问题,她每天都要处理如下一批 Excel 表格:每个表格的都只有一个 sheet,表格的前两行为表格标题及表头,表格的最后一行是相关人员签字。最...

在NumPy中创建空数组/矩阵的方法

如何在NumPy中创建空数组/矩阵? 在添加行的情况下,你最好的选择是创建一个与数据集最终一样大的数组,然后向它添加数据 row-by-row: >>> impo...

django开发post接口简单案例,获取参数值的方法

django开发post接口简单案例,获取参数值的方法

项目环境:python3.6,django2.1 接口功能: 将传入参数a和b字符串相加,返回结果 1.新建一个django项目 # 新建一个名为Post的项目 django-adm...

python实现日志按天分割

本文实例为大家分享了python实现日志按天分割的具体代码,供大家参考,具体内容如下 日志格式: 1.1.1.1 - - [30/Apr/2015:00:34:55 +0800] “P...

如何在python中实现随机选择

这篇文章主要介绍了如何在python中实现随机选择,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 想从一个序列中随机抽取若干元素,或者...