Linux下计算md5sum,sha1sum,crc:

命令          输出

$md5sum hello    f19dd746bc6ab0f0155808c388be8ff0  hello

$sha1sum hello    79e560a607e3e6e9be2c09a06b7d5062cb5ed566  hello

$crc32 hello      327213a2

Python也能做这个工作,其中md5和sha1需import hashlib, crc32可以import zlib

#test.py
#!/usr/bin/env python

from hashlib import md5, sha1
from zlib import crc32
import sys def getMd5(filename): #计算md5
mdfive = md5()
with open(filename, 'rb') as f:
mdfive.update(f.read())
return mdfive.hexdigest() def getSha1(filename): #计算sha1
sha1Obj = sha1()
with open(filename, 'rb') as f:
sha1Obj.update(f.read())
return sha1Obj.hexdigest() def getCrc32(filename): #计算crc32
with open(filename, 'rb') as f:
return crc32(f.read()) if len(sys.argv) < 2:
print('You must enter the file')
exit(1)
elif len(sys.argv) > 2:
print('Only one file is permitted')
exit(1) filename = sys.argv[1] print('{:8} {}'.format('md5:', getMd5(filename)))
print('{:8} {}'.format('sha1:', getSha1(filename)))
print('{:8} {:x}'.format('crc32:', getCrc32(filename)))

$python test.py hello

结果:

md5: f19dd746bc6ab0f0155808c388be8ff0
sha1: 79e560a607e3e6e9be2c09a06b7d5062cb5ed566
crc32: 327213a2

用python计算md5,sha1,crc32的更多相关文章

  1. MD5 SHA1 CRC32

    md5: import hashlib md5 = hashlib.md5() md5.update(bytes('http://www.baidu.com',encoding="utf-8 ...

  2. python计算MD5

    python有自带的MD5模块hashlib,用起来简单很多.Python Hashlib模块的使用说明 http://docs.python.org/2/library/hashlib.htmlfd ...

  3. python计算md5值

    from hashlib import md5 m = md5(') print m.hexdigest()

  4. python 计算md5

    import hashlib src = "afnjanflkas" m2 = hashlib.md5() m2.update(src) print m2.hexdigest() ...

  5. MD5 SHA1 HMAC HMAC_SHA1区别

    MD5.SHA1.HMAC.HMAC_SHA1区别 引言     什么是MD5,什么是SHA1,如何校验这些Hash.还有拿单个apk文件的MD5,SHA1讯问是不是原版的问题,在这里,让我们先来了解 ...

  6. hashlib —— Python 的 md5 和 sha1 加密

    python的md5和sha1加密 0. md5 与 sha1 MD5 的全称是 Message-Digest Algorithm 5(信息-摘要算法).128 位长度.目前 MD5 是一种不可逆算法 ...

  7. 添砖加瓦:几种常见的数据摘要算法(MD5、CRC32、SHA1和SHA256)

    1.算法概述 数据摘要算法是密码学算法中非常重要的一个分支,它通过对所有数据提取指纹信息以实现数据签名.数据完整性校验等功能,由于其不可逆性,有时候会被用做敏感信息的加密.数据摘要算法也被称为哈希(H ...

  8. python计算文件的md5值

    前言 最近要开发一个基于python的合并文件夹/目录的程序,本来的想法是基于修改时间的比较,即判断文件有没有改变,比较两个文件的修改时间即可.这个想法在windows的pc端下测试没有问题. 但是当 ...

  9. php crc32,md5,sha1,mhash测试结果

    总结:php  自带hash mhash 用于散列只能加密   扩展mcrypt 用于加解密 对文件加密有的文件会隐藏换行,或者读取方式等影响导致结果不一致. 1.crc32 php: a.系统crc ...

随机推荐

  1. kettle在linux启动spoon.sh报错

    org.eclipse.swt.SWTError: No more handles [gtk_init_check() failed]     at org.eclipse.swt.SWT.error ...

  2. Python 学习笔记8

    在最想放弃的时候 想想美好的事情 想想明天. 今天继续看错误与异常. http://www.pythondoc.com/pythontutorial3/errors.html

  3. mysql教程

    mysql教程 2016年5月14日 0:09 1.查看mysql帮助信息 C:\Users\zhangcunli>mysql --help mysql  Ver 14.14 Distrib 5 ...

  4. sql存储过程——名称 ****不是有效的标识符

    转载自http://blog.csdn.net/xb12369/article/details/8202703 假设存储过程:proc_test create proc proc_test @Prod ...

  5. Neutron网络性能测试与分析(一) CVR

    测试环境:网络节点运行在Intel(R) Xeon(R) CPU E5-2630 v3服务器上,网卡使用intel的万兆卡82599ES 测试仪使用本人基于dpdk编写的程序,基本上可以打满万兆卡,小 ...

  6. php 分页类(2)

    <?phpinclude("connection.php");$perNumber=10; //每页显示的记录数$page=$_GET['page']; //获得当前的页面值 ...

  7. java代理的深入浅出(一)-Proxy

    java代理的深入浅出(一)-Proxy 1.什么是代理 代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息.过滤消息.把消息转发给委托类,以及事 ...

  8. android 属性动画

    一直再追郭霖的博客和imooc上的一些新的视频,最近有讲到属性动画. 以下内容为博客学习以及imooc上视频资料的学习笔记: 在3.0之前比较常见的动画为tween动画和frame动画: tween动 ...

  9. Entity Framework技巧系列之二 - Tip 6 - 8

    提示6. 如何及何时使用贪婪加载 什么时候你需要使用贪婪加载? 通常在你的程序中你知道对查询到的实体将要进行怎样的操作. 例如,如果你查询一个订单以便为一个客户重新打印,你知道没有组成订单的项目即产品 ...

  10. 通过配置的方式Autofac(1)

    一.基本配置 1.通过配置的方式使用Autofac <?xml version="1.0"?> <configuration> <configSect ...