Skip to main content

官方 hashdd Python SDK

项目描述

哈希

pyhashdd 是一个用于构建和使用哈希数据库的库。

安装

安装完所有先决条件后,您可以使用 pyhashdd 安装pip[all]extras 指令将安装扩展哈希所需的所有内容,例如ssdeepand pysha3

pip install hashdd[all]

替代安装

默认安装

默认情况下,我们不想假设您已经安装了所有必需的先决条件,因此我们只安装绝对最低限度,以便您将库用作导入。

pip install hashdd

扩展哈希安装

我们的许多“扩展”哈希本质上是流行的操作系统库的包装器。这些库是我们不想强迫您使用的操作系统级别的依赖项。因此,但默认情况下,我们不安装它们,但如果您愿意,您可以选择安装它们。

pip install hashdd[all]

码头工人

从 git root 构建容器:

docker build -t hashdd .

创建一个要扫描的目录,并将我们的复制sample.exe到其中。

mkdir files_to_scan/
cp tests/data/sample.exe files_to_scan/

安装files_to_scan/并扫描!

docker run --rm -v "$PWD"/files_to_scan:/files_to_scan hashdd hashdd compute -d /files_to_scan

先决条件

Ubuntu

sudo apt-get install libfuzzy-dev libmhash-dev libffi-dev libssl-dev

OSX/达尔文先决条件

brew install ssdeep

hashddcli例子

要递归地(-d goodfiles/)计算goodfiles/目录中文件的 SHA256 哈希,并将这些哈希添加到新的布隆过滤器(布隆过滤器存储在 中hashdd.bloom):

hashdd bloom -d goodfiles/

创建布隆过滤器后,该bloom选项现在将计算的哈希值与布隆进行比较。要计算sample.exe( -f sample.exe) 的 SHA256 哈希并检查它是否在布隆过滤器 ( bloom) 内:

hashdd bloom -f sample.exe

要计算 ( compute) 所有哈希 ( --all) 并将它们输出到屏幕:

hashdd compute -f sample.exe --all

要计算特定的哈希类型:

hashdd compute -f sample.exe -a md5w

库示例

使用所有算法和特性对文件进行哈希处理,然后将结果存储在 Mongo 中:

>>> from hashdd import hashdd
>>> h = hashdd(filename='sample.exe')
>>> from pymongo import MongoClient
>>> db = MongoClient().hashdd
>>> db.hashes.insert_one(h.result)

测试

python -m unittest discover -s tests/

py-mhashmhashlib

早在 2017 年,我们就修复了 py-mhash中的一个问题,该问题已合并到 git 存储库中,但是此修复并未作为 PyPi 发行版的一部分构建。py-mhash我们已经与 hashdd捆绑在一起,而不是进一步依赖包维护者。请参阅py-mash 许可证以获取版权信息。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

hashdd-0.0.26.tar.gz (667.0 kB 查看哈希

已上传 source