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

作者:Gg_ning 时间:2021-05-31 15:02:34 

本文主要介绍了详解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()#生成前端窗口

来源:https://blog.csdn.net/Gg_ning/article/details/108537289

标签:python,MD5,sha256,哈希加密
0
投稿

猜你喜欢

  • ASP无组件上载,带进度条,多文件上载

    2008-10-29 10:03:00
  • jQuery 1.4官方中文手册[译]

    2010-01-20 10:46:00
  • ASP 三层架构 Error处理类

    2011-03-16 11:06:00
  • 使用Keras构造简单的CNN网络实例

    2023-08-23 04:38:21
  • python 包之 threading 多线程

    2021-06-03 19:54:41
  • Mysql两表联合查询的四种情况总结

    2024-01-26 20:58:49
  • python SMTP实现发送带附件电子邮件

    2023-09-29 11:31:54
  • 使用Python实现画一个中国地图

    2023-10-01 00:39:36
  • mysql之innodb的锁分类介绍

    2024-01-27 00:50:10
  • Python生成可执行文件之PyInstaller库的使用方式

    2021-11-29 00:41:49
  • python实现全盘扫描搜索功能的方法

    2022-10-29 14:43:57
  • JS实现点击下拉菜单把选择的内容同步到input输入框内的实例

    2023-09-08 19:50:10
  • SQL Server表空间碎片化回收的实现

    2024-01-21 14:08:43
  • OpenCV哈里斯(Harris)角点检测的实现

    2022-10-07 01:41:26
  • Python3简单爬虫抓取网页图片代码实例

    2021-08-28 21:56:49
  • 利用python在大量数据文件下删除某一行的例子

    2023-08-24 09:15:22
  • Asp函数介紹(37个常用函数)

    2011-04-11 11:06:00
  • JavaScript中常见的几种获取元素的方式

    2023-07-13 07:46:12
  • php简单获取复选框值的方法

    2023-11-15 20:57:28
  • python中logging模块的一些简单用法的使用

    2023-08-12 09:28:17
  • asp之家 网络编程 m.aspxhome.com