Skip to main content

Python wrapper for the ssdeep library

Project description

ssdeep Python Wrapper

This is a straightforward Python wrapper for ssdeep by Jesse Kornblum, which is a library for computing context triggered piecewise hashes (CTPH). Also called fuzzy hashes, CTPH can match inputs that have homologies. Such inputs have sequences of identical bytes in the same order, although bytes in between these sequences may be different in both content and length.

Latest Version License Python Versions Latest Docs CodeQL tests CI test status on Linux CI test status on Debian CI test status on Debian

How to use it

To compute a fuzzy hash, use hash function:

>>> import ssdeep
>>> hash1 = ssdeep.hash('Also called fuzzy hashes, Ctph can match inputs that have homologies.')
>>> hash1
'3:AXGBicFlgVNhBGcL6wCrFQEv:AXGHsNhxLsr2C'
>>> hash2 = ssdeep.hash('Also called fuzzy hashes, CTPH can match inputs that have homologies.')
>>> hash2
'3:AXGBicFlIHBGcL6wCrFQEv:AXGH6xLsr2C'

The compare function returns the match between 2 hashes, an integer value from 0 (no match) to 100.

>>> ssdeep.compare(hash1, hash2)
22

More examples are available in the python-ssdeep documentation.

Install

If all requirements are met it is possible to install the wrapper by using pip or easy_install.

$ pip install ssdeep

The build will fail if the ssdeep library isn’t installed. To use the included version of the ssdeep library use the following command.

$ BUILD_LIB=1 pip install ssdeep

For more information have a look at the python-ssdeep documentation.

Tested on …

  • CentOS 7

  • Debian 8, 9

  • Ubuntu 14.04, 16.04, 18.04

Documentation

Feel free to use the prebuild python-ssdeep documentation or use the steps below to build the documentation.

$ cd docs
$ pip install -r requirements.txt
$ make html

Licensing

The code is licensed under the terms of the LGPLv3+.

This wrapper includes the unchanged source distribution of ssdeep version 2.14.1. It is licensed under the GPLv2.

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

thoth_ssdeep-3.4.1-cp311-cp311-manylinux_2_28_x86_64.whl (33.7 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.28+ x86-64

File details

Details for the file thoth_ssdeep-3.4.1-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for thoth_ssdeep-3.4.1-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8df0b32c5b6aaa6423a0b053d2bd6949e26a7db8e398a89a0a509de9575f9ddf
MD5 ff888c3b8ef3c0e04c8d22f140ff0e87
BLAKE2b-256 39d73ba1597a293c13db0cc735f3991a00a0432d43fb1fd9603187aa8e604761

See more details on using hashes here.

Supported by

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