详解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 相关文章推荐
详解python的数字类型变量与其方法
Nov 20 Python
python3.5实现socket通讯示例(TCP)
Feb 07 Python
利用python微信库itchat实现微信自动回复功能
May 18 Python
python爬虫入门教程--HTML文本的解析库BeautifulSoup(四)
May 25 Python
Python实现桶排序与快速排序算法结合应用示例
Nov 22 Python
Python基于xlrd模块操作Excel的方法示例
Jun 21 Python
Python实现按逗号分隔列表的方法
Oct 23 Python
使用Python OpenCV为CNN增加图像样本的实现
Jun 10 Python
python 字典 setdefault()和get()方法比较详解
Aug 07 Python
Numpy 中的矩阵求逆实例
Aug 26 Python
Python HTMLTestRunner库安装过程解析
May 25 Python
Python如何实现感知器的逻辑电路
Dec 25 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
用文本文件制作留言板提示(下)
2006/10/09 PHP
php设计模式 Factory(工厂模式)
2011/06/26 PHP
PHP常见过waf webshell以及最简单的检测方法
2019/05/21 PHP
使用JS进行目录上传(相当于批量上传)
2010/12/05 Javascript
Extjs单独定义各组件的实例代码
2013/06/25 Javascript
原生js做的手风琴效果的导航菜单
2013/11/08 Javascript
基于JQuery实现的Select级联
2014/01/27 Javascript
jQuery实现文本框邮箱输入自动补全效果
2015/11/17 Javascript
js实现当鼠标移到表格上时显示这一格全部内容的代码
2016/06/12 Javascript
最棒的Angular2表格控件
2016/08/10 Javascript
JavaScript对象封装的简单实现方法(3种方法)
2017/01/03 Javascript
BootStrap入门学习第一篇
2017/08/28 Javascript
JS基于贪心算法解决背包问题示例
2017/11/27 Javascript
微信小程序swiper组件用法实例分析【附源码下载】
2017/12/07 Javascript
JavaScript实现删除数组重复元素的5种常用高效算法总结
2018/01/18 Javascript
详解ES6 系列之异步处理实战
2018/10/26 Javascript
浅谈JavaScript面向对象--继承
2019/03/20 Javascript
jQuery 判断元素是否存在然后按需加载内容的实现代码
2020/01/16 jQuery
python使用多线程不断刷新网页的方法
2015/03/31 Python
python实现上传下载文件功能
2020/11/19 Python
Python实现pdf文档转txt的方法示例
2018/01/19 Python
numpy添加新的维度:newaxis的方法
2018/08/02 Python
对python 命令的-u参数详解
2018/12/03 Python
python requests 库请求带有文件参数的接口实例
2019/01/03 Python
python单向链表的基本实现与使用方法【定义、遍历、添加、删除、查找等】
2019/10/24 Python
python使用turtle库绘制奥运五环
2020/02/24 Python
基于K.image_data_format() == 'channels_first' 的理解
2020/06/29 Python
Python迭代器协议及for循环工作机制详解
2020/07/14 Python
教你使用Canvas处理图片的方法
2017/11/28 HTML / CSS
购买限量版收藏品、珠宝和礼品:Bradford Exchange
2016/09/23 全球购物
瑞士灯具购物网站:Lampenwelt.ch
2018/07/08 全球购物
C语言编程题
2015/03/09 面试题
监察建议书范文
2014/03/12 职场文书
银行纠风工作实施方案
2014/06/08 职场文书
优秀的商业计划书,让融资一步到位
2019/05/07 职场文书
Python selenium绕过webdriver监测执行javascript
2022/04/12 Python