Skip to main content

Hashlib-like wrapper for several fuzzy hash algorithms.

Project description

fuzzyhashlib
============

.. contents:: Table of Contents


Introduction
============

What if fuzzy hashing algorithms were usable through a common API,
the same way that Python's hashlib exposes secure hash and message digest
algorithms? This is the question fuzzyhashlib attempts to answer by providing
a hashlib-like interface to:

- ssdeep (via a Python ctypes wrapper)
- sdbf (via sdhash's Python swig interface)

Currently supported for Python 2.7 on 32- and 64-bit linux (Ubuntu 14.04).


Usage
=====

Example usage in iPython is provided below.

::

In [1]: import fuzzyhashlib

In [2]: fuzzyhashlib.ssdeep("a" * 1024).hexdigest()
Out[2]: '3:tj1:n'

In [3]: fuzzyhashlib.sdhash("a" * 1024).hexdigest()
Out[3]: 'sdbf:03:0::1024:sha1:256:5:7ff:160:1:0:AAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAA==\n'


Change Log
==========

Version 0.0.4 - Imporoved packaging:

- libraries installed for x86-32 linux too

Version 0.0.2 - 32-bit libraries for linux:

- libraries installed for x86-32 linux too

Version 0.0.1 - Initial version:

- ssdeep and sdhash wrapped with hashlib-like interfaces
- libraries installed for x86-64 linux only


License and Source Availability
===============================

The fuzzyhashlib library and package is licensed under APLv2.

The information in this section is also provided under fuzzyhashlib's source
tree under 'NOTICES'.


ssdeep
------
ssdeep was written by Jesse Kornblum of the ManTech International
Corporation, with acknowledged contributions by Jason Sherman and
testing by the Computer Science Department at the University of
Iowa. Compiled libraries built from unmodified ssdeep source,
version 2.13, are installed as part of this package. The original
source code for this version of ssdeep available from:
http://downloads.sourceforge.net/project/ssdeep/ssdeep-2.13/ssdeep-2.13.tar.gz

ssdeep is open source software and is licensed under GPLv2.


sdhash
------
sdhash was written by Vassil Roussev and Candice Quates. Compiled
libraries built from unmodified sdhash source, version 3.4, are
installed are installed as part of this package. The original
source code for this version of sdhash is available from:
http://github.com/sdhash/sdhash

sdhash is open source software and is licensed under APLv2.


Other Thanks
============
Thanks to Michael Dorman whose excellent 'yara-ctypes' provided logical layout
for a Python ctypes-based project. Several concepts and functions here have
been borrowed accordingly :-)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fuzzyhashlib-0.0.4.tar.gz (476.1 kB view details)

Uploaded Source

File details

Details for the file fuzzyhashlib-0.0.4.tar.gz.

File metadata

  • Download URL: fuzzyhashlib-0.0.4.tar.gz
  • Upload date:
  • Size: 476.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for fuzzyhashlib-0.0.4.tar.gz
Algorithm Hash digest
SHA256 6cdb6c165adaca702c089d07848b79e18cc9912e429ed3c53dce6ea6e81eff7b
MD5 bffb7aa9cfd57db361cba04f8eae014f
BLAKE2b-256 a74137618464fed0d6dbc2d4b2f07862aeed41485dc3c0158ac957e4b0833d2b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page