详解python实现可视化的MD5、sha256哈希加密小工具
作者:Gg_ning 发布时间:2021-05-31 15:02:34
标签: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
0
投稿
猜你喜欢
- python字符串-删除末位字符(rstrip)rstrip函数用于删除字符串末位指定字符,默认为空白符。语法str.rstrip([cha
- 众所周知,Mac自带python2,但无奈我们想使用新版本,因此我们需要安装python3安装python3我使用了homebrew,网上也
- 如下所示:import torchfrom torch.autograd import Variableimport matplotlib.
- 看代码吧~import torchprint(torch.__version__)补充:pytorch不同版本安装以及版本查看一:基于con
- 最近一两年短视频业务风生水起,各个视频网站都有各自特色的短视频内容。如果有这样一个程序,可以把各大视频网站的热门用户最新发布的视频都下载下来
- 相信大家对阶乘都不陌生。不知道阶乘的可以看这里:一个数的阶乘:比如5的阶乘在python中大部分教程一般推荐用递归函数完成:#!/usr/b
- 摘要: 每到情人节、七夕节,不少小伙伴大伙伴们都会遇到这样一个世纪问题——怎么给女朋友/老婆一个与众不同的节日惊喜。今天给大家分享一个独特的
- 一、合并多个numpy矩阵 1、首先创建两个多维矩阵 矩阵a的大小为(2,3,2)矩阵b的大小为(3,2,3)采用concatentate这
- MS SQL Server 2000通过企业管理器设置数据库的定期自动备份计划。1、打开企业管理器,双击打开你的服务器2、然后点上面菜单中的
- 模块 定义计算机在开发过程中,代码越写越多,也就越难以维护,所以为了编写可维护的代码,我们会把函数进行分组,放在不同的文件里。在python
- 本文实例讲述了Python筛选及提取序列中元素的方法。分享给大家供大家参考,具体如下:问题:提取出序列中的值或者根据某些标准对序列做删减解决
- 实例如下所示:tcode={}transcode={}def GetTcode():#从文本中获取英文对应的故障码,并保存在tcode字典(
- 前言:最近碰到业务需要根据PSD文件实现PSD文件解析图层功能,搜到了Python的一个解析PSD的库。这个库就是psd-tools,psd
- MySQL安装文件已被广泛应用但是也在不断的更新,这里介绍MySQL安装文件设置使用,帮助大家安装更新MySQL安装文件系统。Fedora5
- 如果你已经理解了block formatting contexts那么请继续,否则请先看看这篇文章。Overflow能够做一些很牛掰的事情,
- 水球图水球图首先是动态的效果,像水流一样波动,所以看起来比较的舒服,一般用于业务里面的完成率,其实和之前的仪表盘有点类似,但是我个人绝对水球
- 为了得到更好的网络,学习率通常是要调整的,即刚开始用较大的学习率来加快网络的训练,之后为了提高精确度,需要将学习率调低一点。如图所示,步长(
- 什么是GhostNet模型GhostNet是华为诺亚方舟实验室提出来的一个非常有趣的网络,我们一起来学习一下。2020年,华为新出了一个轻量
- Python3 线程中常用的两个模块为:_threadthreading(推荐使用)使用Thread类创建import threadingf
- Torch.stack()1. 概念在一个新的维度上连接一个张量序列2. 参数tensors (sequence)需要连接的张量序列dim