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的身份证号码自动生成程序

基于Python的身份证号码自动生成程序

需求细化: 1.身份证必须能够通过身份证校验程序。 2.通过查询,发现身份证号码是有国家标准的,标准号为 GB 11643-1999 可以从百度下载到这个文档 下载:GB11643-19...

Django渲染Markdown文章目录的方法示例

Django渲染Markdown文章目录的方法示例

对会读书的人来说,读一本书要做的第一件事,就是仔细阅读这本书的目录。阅读目录可以对整体内容有所了解,并清楚地知道感兴趣的部分在哪里,提高阅读质量。 博文也是同样的,好的目录对博主和读者都...

python将秒数转化为时间格式的实例

1、转化成时间格式 seconds =35400 m, s = divmod(seconds, 60) h, m = divmod(m, 60) print("%d:%02d:%02...

python使用正则筛选信用卡

python使用正则筛选信用卡

本文实例为大家分享了python使用正则筛选信用卡的具体代码,供大家参考,具体内容如下 本文来源于两个简单的题目: 1.判断一对单词是否是" Anagrams " 2.判断信用卡是否合理...

Python笔记之观察者模式

观察者模式中的主题对象一般存在着一个其他服务依赖的核心服务,并且维护着其他依赖此核心服务的对象列表(即观察者或监视者列表),当主题对象发生变化时,观察者应该改变自己的状态或者进行某些操作...