详解python实现可视化的MD5、sha256哈希加密小工具


Posted in Python onSeptember 14, 2020

本文主要介绍了详解python实现可视化的MD5、sha256哈希加密小工具,分享给大家,具体如下:

效果图:

刚启动的状态

详解python实现可视化的MD5、sha256哈希加密小工具

输入文本、触发加密按钮后支持复制

详解python实现可视化的MD5、sha256哈希加密小工具

超过十条不全量显示

详解python实现可视化的MD5、sha256哈希加密小工具

代码

import hashlib
import tkinter as tk

#窗口控制
windowss=tk.Tk()
windowss.title('Python_md5')#窗口title,并非第一行
windowss.geometry('820x550')
windowss.resizable(width=True, height=True)#宽度可变,高度可变
#label组件-文本标签
label1=tk.Label(windowss,text="请输入文本").grid(row=0, column=0)#生成label
label2=tk.Label(windowss,text="MD5:").grid(row=3, column=0)#生成结果固定label
label3=tk.Label(windowss,text="SHA256:").grid(row=4, column=0)#生成结果固定label
#entry组件-文本输入框
E12=tk.Text(windowss,width=80,bd=2.5,height=10,relief="sunken")
E12.grid(row=0,column=1)#输入正则表达式入口

#进入解析模式
judge_text1 = tk.StringVar()
judge_text1.set("暂未输入")
judge_text2 = tk.StringVar()
judge_text2.set("")
def copy(text2):
  windowss.clipboard_clear() # 清除剪贴板内容
  windowss.clipboard_append(text2)
def judge():
  text1 = E12.get('0.0','end')#'0.0','end'全量读取
  to_one_line = ' '.join(text1.split())#转化为列表1
  test_list = to_one_line.split(' ')#转化为列表2
  m1=""
  m2=""
  for texts in test_list:
    matcher_md5_new= hashlib.md5(texts.encode('utf8'))#md5转化
    matcher_md5 = str(matcher_md5_new.hexdigest())#获取md5
    m1=m1+"\n"+matcher_md5#分行
    matcher_sha256_new = hashlib.sha3_256(texts.encode('utf8'))#转化为sha256
    matcher_sha256 = str(matcher_sha256_new.hexdigest())
    m2 = m2 + "\n" + matcher_sha256
  if len(test_list)>10:#大于十条数据时,不完全显示
    T3 = tk.Label(windowss,text="").grid(row=5, column=1)
    T4 = tk.Label(windowss,text="tips:最大显示10条解析文本,可全量复制!").grid(row=6, column=1)
  judge_text1.set(m1)
  judge_text2.set(m2)
  #生成复制按钮,用了lambda可以排除按钮之间干扰
  B2 = tk.Button(windowss, text="复制md5", width=10, height=2, command=lambda:copy(str(m1))).grid(row=1, column=0)
  B3 = tk.Button(windowss, text="复制sha256", width=10, height=2, command=lambda:copy(str(m2))).grid(row=1, column=2)

#设置加密按钮,command表示触发条件
B1=tk.Button(windowss,text="哈希加密",width=10,height=2,command=judge).grid(row=1,column=1)


#输出结果
T1 = tk.Label(windowss, width=70, height=10,bd=0,textvariable=judge_text1).grid(row=3, column=1) # 生成结果 md5
T2 = tk.Label(windowss, width=70,height=10, bd=0,textvariable=judge_text2).grid(row=4, column=1) # 生成结果 sha256

windowss.mainloop()#生成前端窗口

到此这篇关于详解python实现可视化的MD5、sha256哈希加密小工具的文章就介绍到这了,更多相关python MD5、sha256哈希加密内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
web.py在模板中输出美元符号的方法
Aug 26 Python
Python原始字符串(raw strings)用法实例
Oct 13 Python
python编写暴力破解FTP密码小工具
Nov 19 Python
在Python的Django框架中生成CSV文件的方法
Jul 22 Python
Python 使用SMTP发送邮件的代码小结
Sep 21 Python
python将文本中的空格替换为换行的方法
Mar 19 Python
Python使用pyautogui模块实现自动化鼠标和键盘操作示例
Sep 04 Python
python实现简单多人聊天室
Dec 11 Python
python selenium 执行完毕关闭chromedriver进程示例
Nov 15 Python
python多项式拟合之np.polyfit 和 np.polyld详解
Feb 18 Python
python + selenium 刷B站播放量的实例代码
Jun 12 Python
python和go语言的区别是什么
Jul 20 Python
Python利用pip安装tar.gz格式的离线资源包
Sep 14 #Python
Python tkinter制作单机五子棋游戏
Sep 14 #Python
python安装cx_Oracle和wxPython的方法
Sep 14 #Python
python输入中文的实例方法
Sep 14 #Python
python与js主要区别点总结
Sep 13 #Python
python与c语言的语法有哪些不一样的
Sep 13 #Python
python的链表基础知识点
Sep 13 #Python
You might like
用PHP进行MySQL删除记录操作代码
2008/06/07 PHP
ionCube 一款类似zend的PHP加密/解密工具
2010/07/25 PHP
PHP的autoload自动加载机制使用说明
2010/12/28 PHP
mapper--图片热点区域高亮组件官方站点
2007/12/22 Javascript
jQuery筛选器children()案例详解(图文)
2013/02/17 Javascript
js判断手机端(Android手机还是iPhone手机)
2015/07/22 Javascript
理解javascript闭包
2015/12/15 Javascript
JQuery 传送中文乱码问题的简单解决办法
2016/05/24 Javascript
Vue.js组件使用开发实例教程
2016/11/01 Javascript
JS实现向iframe中表单传值的方法
2017/03/24 Javascript
以BootStrap Tab为例写一个前端组件
2017/07/25 Javascript
JQ图片文件上传之前预览功能的简单实例(分享)
2017/11/12 Javascript
基于vue 动态加载图片src的解决方法
2018/02/05 Javascript
JavaScript创建对象的常用方式总结
2018/08/10 Javascript
vue+element+Java实现批量删除功能
2019/04/08 Javascript
Vue如何获取数据列表展示
2019/12/11 Javascript
vue项目中微信登录的实现操作
2020/09/08 Javascript
js实现购物车商品数量加减
2020/09/21 Javascript
用Python的Django框架完成视频处理任务的教程
2015/04/02 Python
pygame学习笔记(5):游戏精灵
2015/04/15 Python
Python实现螺旋矩阵的填充算法示例
2017/12/28 Python
django中的HTML控件及参数传递方法
2018/03/20 Python
Django基础知识 URL路由系统详解
2019/07/18 Python
Django logging配置及使用详解
2019/07/23 Python
Django中使用CORS实现跨域请求过程解析
2019/08/05 Python
Django对接支付宝实现支付宝充值金币功能示例
2019/12/17 Python
什么是Python中的顺序表
2020/06/02 Python
openCV提取图像中的矩形区域
2020/07/21 Python
薇诺娜官方网上商城:专注敏感肌肤
2017/05/25 全球购物
亚洲颇具影响力的男性在线购物零售商:His
2019/11/24 全球购物
物业管理个人自我评价
2013/11/08 职场文书
2014信息技术专业毕业生自我评价
2014/01/17 职场文书
1亿有多大教学反思
2014/05/01 职场文书
刚学完怎么用Python实现定时任务,转头就跑去撩妹!
2021/06/05 Python
Win11怎么启动任务管理器?Win11启动任务管理器的几种方法
2021/11/23 数码科技
详细聊聊Oracle表碎片对性能有多大的影响
2022/03/19 Oracle