python3.x实现base64加密和解密


Posted in Python onMarch 28, 2019

用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代码的打包与发布详解
Jul 30 Python
Python远程桌面协议RDPY安装使用介绍
Apr 15 Python
Python调用SQLPlus来操作和解析Oracle数据库的方法
Apr 09 Python
书单|人生苦短,你还不用python!
Dec 29 Python
python使用xlrd模块读取xlsx文件中的ip方法
Jan 11 Python
Python3 实现串口两进程同时读写
Jun 12 Python
python 使用装饰器并记录log的示例代码
Jul 12 Python
PyTorch中的Variable变量详解
Jan 07 Python
Python configparser模块常用方法解析
May 22 Python
python使用nibabel和sitk读取保存nii.gz文件实例
Jul 01 Python
基于Django集成CAS实现流程详解
Nov 28 Python
如何用python 操作zookeeper
Dec 28 Python
python实现AES加密解密
Mar 28 #Python
详解python tkinter教程-事件绑定
Mar 28 #Python
Python中捕获键盘的方式详解
Mar 28 #Python
python sort、sort_index方法代码实例
Mar 28 #Python
详解python selenium 爬取网易云音乐歌单名
Mar 28 #Python
pyqt5利用pyqtDesigner实现登录界面
Mar 28 #Python
Django实现单用户登录的方法示例
Mar 28 #Python
You might like
php强制下载类型的实现代码
2011/04/21 PHP
php防止恶意刷新与刷票的方法
2014/11/21 PHP
PHP使用DirectoryIterator显示下拉文件列表的方法
2015/03/13 PHP
PHP实现网页内容html标签补全和过滤的方法小结【2种方法】
2017/04/27 PHP
PHP实现APP微信支付的实例讲解
2018/02/10 PHP
php弹出提示框的是实例写法
2019/09/26 PHP
为指定元素增加样式的js代码
2009/12/09 Javascript
javascript中数组的多种定义方法和常用函数简介
2014/05/09 Javascript
jQuery窗口、文档、网页各种高度的精确理解
2014/07/02 Javascript
js实现匹配时换色的输入提示特效代码
2015/08/17 Javascript
浅谈JS中的bind方法与函数柯里化
2016/08/10 Javascript
Bootstrap CSS组件之分页(pagination)和翻页(pager)
2016/12/17 Javascript
jQuery实现ajax无刷新分页页码控件
2017/02/28 Javascript
canvas基础绘制-绚丽倒计时的实例
2017/09/17 Javascript
vue router嵌套路由在history模式下刷新无法渲染页面问题的解决方法
2018/01/25 Javascript
详解webpack运行Babel教程
2018/06/13 Javascript
小程序实现多列选择器
2019/02/15 Javascript
微信小程序获取用户信息并保存登录状态详解
2019/05/10 Javascript
Vue使用JSEncrypt实现rsa加密及挂载方法
2020/02/07 Javascript
Vue清除定时器setInterval优化方案分享
2020/07/21 Javascript
[01:08:09]DOTA2上海特级锦标赛主赛事日 - 1 胜者组第一轮#1Liquid VS Alliance第二局
2016/03/02 DOTA
Python的Django框架中的数据库配置指南
2015/07/17 Python
Python实现全角半角字符互转的方法
2016/11/28 Python
python的re正则表达式实例代码
2018/01/24 Python
对python添加模块路径的三种方法总结
2018/10/16 Python
Python比较配置文件的方法实例详解
2019/06/06 Python
Python解析json代码实例解析
2019/11/25 Python
Python爬虫requests库多种用法实例
2020/05/28 Python
Python爬虫实现百度翻译功能过程详解
2020/05/29 Python
宝塔面板成功部署Django项目流程(图文)
2020/06/22 Python
python使用Word2Vec进行情感分析解析
2020/07/31 Python
基于tensorflow __init__、build 和call的使用小结
2021/02/26 Python
纯CSS实现聊天框小尖角、气泡效果
2014/04/04 HTML / CSS
社区包粽子活动方案
2014/01/21 职场文书
合作协议书模板2014
2014/09/26 职场文书
Vue中foreach数组与js中遍历数组的写法说明
2021/06/05 Vue.js