MD5文件加密python实现
- MD5文件加密
- python实现
- EXE生成软件
MD5文件加密
MD5,全名Message Digest Algorithm 5 ,中文名为消息摘要算法,为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护。主要是通过特定的hash散列方法将文本信息转换成简短的信息摘要,压缩+加密+hash算法的结合体,是不可逆的。
主要应用
1、一致性验证
MD5的典型应用是不同消息(文件)的MD5码不一样,所以经常用来检验文件是否被修改过。
2、数字证书
数字签名应用。
3、安全访问认证
在Unix系统中用户的密码是以MD5(或其它类似的算法)经Hash运算后存储在文件系统中。当用户登录的时候,系统把用户输入的密码进行MD5 Hash运算,然后再去和保存在文件系统中的MD5值进行比较,进而确定输入的密码是否正确。通过这样的步骤,系统在并不知道用户密码的明码的情况下就可以确定用户登录系统的合法性。
MD5以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。
python实现
#!/usr/bin/python
import io
import hashlib
def main(name):
m = hashlib.md5()
file = io.FileIO(name,'r')
bytes = file.read(10240)
while(bytes != b''):
m.update(bytes)
bytes = file.read(10240)
file.close()
md5value = m.hexdigest()
print(md5value)
if __name__ == '__main__':
main('F:\System\WIN GHO\win7.GHO')
EXE生成软件