批量获取文件的摘要(md5、sha1、sha256)

  • 0x01 功能
  • 0x02源码
  • 0x03运行

0x01 功能

刚刚写了一个小工具:用于批量获取文件的摘要:md5、sha1、sha256

具体用法:
>>>> python3 getFileFeatures.py  [参数:当前目录下的文件夹或者文件]
批量计算,只需要把所有文件放入当前目录下的文件夹中,参数为文件夹名
计算后的结果:在当前目录下生成“filefeatures.txt”文件,存在该文件中

0x02源码

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2019/12/25/025 22:53
# @Author  : H
# @File    : getFileFeatures.py"""批量获取文件夹中各个文件的MD5、SHA1、SHA256"""import hashlib
import os
import sysdef getFileFeatures(dirpath):path = os.getcwd() + "\\" + dirpathsubpaths = []datas = {} # 结果存为json,以便后需if os.path.exists(path):# 路径存在if os.path.isdir(path):# 获得的路径为文件夹for root, dirs, files in os.walk(path):for file in files:subpaths.append([file, os.path.join(root, file)])else:# 获得的路径为文件file = path.split("\\")[-1]subpaths.append([file, path])for i in subpaths:f = open(i[1], "rb")rb = f.read()data = {'MD5': hashlib.md5(rb).hexdigest(),'SHA1': hashlib.sha1(rb).hexdigest(),'SHA256': hashlib.sha256(rb).hexdigest()}datas[i[0]] = dataf.close()with open("filefeatures.txt", "a")as f:for k, v in datas.items():f.writelines("filename:\t" + k + "\n")print("[+]succeed get the teatures of " + k)for key, value in v.items():f.writelines(key + ":\t" + value + "\n")f.writelines("\n")else:print("Folder does not exist")if sys.argv:print("""_     _      _     _      _     _      _     _      _     _      _     _   (c).-.(c)    (c).-.(c)    (c).-.(c)    (c).-.(c)    (c).-.(c)    (c).-.(c)  / ._. \      / ._. \      / ._. \      / ._. \      / ._. \      / ._. \
__\( Y )/__  __\( Y )/__  __\( Y )/__  __\( Y )/__  __\( Y )/__  __\( Y )/__
(_.-/'-'\-._)(_.-/'-'\-._)(_.-/'-'\-._)(_.-/'-'\-._)(_.-/'-'\-._)(_.-/'-'\-._)|| K ||      || I ||      || L ||      || L ||      || E ||      || R ||
_.' `-' '._  _.' `-' '._  _.' `-' '._  _.' `-' '._  _.' `-' '._  _.' `-' '._
(.-./`-'\.-.)(.-./`-'\.-.)(.-./`-'\.-.)(.-./`-'\.-.)(.-./`-'\.-.)(.-./`-`\.-.)
`-'     `-'  `-'     `-'  `-'     `-'  `-'     `-'  `-'     `-'  `-'     `-' ======  function:  Get the characteristics of file or files in folder =========>=>=>=>=>usage :  python getFileFeatures.py file/dir     <=<=<=<=<=<=<=<=<=<=""")if len(sys.argv) == 2:getFileFeatures(sys.argv[1])else:print("[-]Usage errors")

0x03运行

1、使用

2、结果

!!!成长的道路没有一帆风顺!!!

批量获取文件的摘要(md5、sha1、sha256)相关推荐

  1. Python获取文件哈希md5、sha256、sha512等方法

    Python3计算获取文件.字符MD5.sha256.sha512.sha384.sha224.sha1,不多说,直接上代码. 方便调用 import os import hashlib# 使用pyt ...

  2. Java 文件完整性校验 MD5 sha1 sha256 sha224 sha384 sha512

    由于项目中需要使用文件做备份,并且要提供备份文件的下载功能.备份文件体积较大,为确保下载后的文件与原文件一致,需要提供文件完整性校验. 网上有这么多此类文章,其中不少使用到了 org.apache.c ...

  3. Linux和Mac下获取文件CRC/MD5/SHA1/SHA256

    简介: Linux和Mac下获取文件CRC.MD5.hash.SHA1.SHA256值. 注: Linux和Mac下获取方式一致. 语法如下: cksum 文件名 # CRC md5sum 文件名 # ...

  4. android sha1校验工具,【原创实用】文件校验工具V1.2.1:支持MD5 SHA1 SHA256

    前言:这个程序其实我很早以前(大概上上周?)就已经完成了 但是没有发布,因为我还想不断打磨打磨. 先别走,结尾还有彩蛋 现如今相较第一个版本,已经进行如下改动: 解决clear之后后台线程依然未停止的 ...

  5. 快速计算文件的MD5/SHA1/SHA256等校验值(Windows/Linux)

    从网络上下载文件,尤其是非常大的文件怎么确保文件准确无误呢? 通常网站提供文件时会同时提供该文件的校验值,如MD5,SHA1,SHA256等, 当文件下载完成后,计算它的校验值,如果和网站提供的一致, ...

  6. Windows系统中通过命令查看文件的MD5,SHA1,SHA256校验值

    Windows系统中通过命令查看文件的MD5,SHA1,SHA256校验值 命令格式如下: certutil -hashfile yourfilename MD5 certutil -hashfile ...

  7. Windows cmd 查看文件MD5 SHA1 SHA256

    Windows cmd 查看文件MD5 SHA1 SHA256 certutil -hashfile yourfilename.ext MD5certutil -hashfile yourfilena ...

  8. 使用Windows自带的工具计算文件的 MD5 SHA1 SHA256

    使用Windows自带的工具计算文件的 MD5 SHA1 SHA256 很多网站会提供下载文件的校验码信息,在下载文件之后,如何方便地计算MD5 SHA1 SHA256等校验和呢?之前我常用的工具是H ...

  9. 使用Windows 10自带工具 校验MD5 SHA1 SHA256类型文件

    使用Windows 10自带工具 校验MD5 SHA1 SHA256类型文件 适用场景:下载文件的完整性校验等. cmd调出命令行,输入如下命令 certutil -hashfile <文件名& ...

最新文章

  1. 图论刷水题记录(二)(最短路-----SPFA算法)
  2. 为什么选择格鲁圣教之Go程序版
  3. Kprobe在Linux kernel debug中的应用
  4. php发送短信验证码
  5. 去除VisualStudio中拼写错误检测的红色波浪线
  6. Alexnet结构及代码
  7. vs五子棋c语言代码,五子棋代码C语言版.doc
  8. vue 绑定图片相对路径
  9. mac抹掉磁盘重装系统未能与服务器取得联系_Mac重装系统不再难:苹果电脑重装系统教程...
  10. NG RouteReuseStrategy(路由复用策略)
  11. 4999元起!iQOO 9 Pro今日首销:骁龙8旗舰处理器+独立显示芯片Pro
  12. Math类的三个方法比较: floor() ceil() round()
  13. 如何使用Movavi Video Editor制作幻灯片?
  14. SpringBoot的C2C水果商城系统
  15. c语言谭浩强第八章函数PPT,清华大学C语言谭浩强第八章.ppt
  16. 获取建模美赛O奖的方法和经验!文末资料放送
  17. 统计分析 -- t分布
  18. stokes方程matlab,Navier-Stokes matlab 238万源代码下载- www.pudn.com
  19. Linux运维职业困惑?给你史上最全互联网Linux工作规划!
  20. (数据结构)图的邻接表(Adjacency List)表示方法

热门文章

  1. 【NXP DN 系列】浅谈 DPAA1 Software Architecture 工作原理
  2. jmeter组件总结
  3. js parseint java,javascript当中parseInt用法
  4. javascript:parseInt用法,特殊用法,进制转换
  5. i.MX Yocto项目用户指南 -- 下
  6. 软件定义汽车——OTA(第四部分)
  7. opencv滤镜-单色滤镜
  8. VMware ESXi 8.0c - 领先的裸机 Hypervisor (sysin Custom Image)
  9. MySQL 主键与事务
  10. 椭圆曲线介绍(三):椭圆曲线密码学,ECDH和ECDSA