Skip to main content

Python wrapper for SpookyHash V2

Project description

SpookyHash is a public domain noncryptographic hash function producing well-distributed 128-bit hash values for byte arrays of any length.1

This python library is a Cython wrapper for the original C++ implementation. There are both (fast) one-shot hash functions and (slower) hashlib-like hash objects.

Usage

>>> import spooky_hash
>>> print spooky_hash.hash32('hello world')
2617184861
>>> print long(spooky_hash.Hash32('hello ').update('world'))
2617184861

>>> print spooky_hash.hash64('hello world')
14865987102431973981
>>> print long(spooky_hash.Hash64('hello ').update('world'))
14865987102431973981
>>> print spooky_hash.Hash64('hello ').update('world').hexdigest()
5d12ff9b81984ece

>>> print spooky_hash.hash128_long('hello world')
123716849286372619103118623513034416523
>>> print long(spooky_hash.Hash128('hello ').update('world'))
123716849286372619103118623513034416523
>>> print spooky_hash.Hash128('hello ').update('world').hexdigest()
5d12ff9b81984ece25103f0dee88e18b
>>> import binascii
>>> print binascii.hexlify(spooky_hash.hash128('hello world'))
5d12ff9b81984ece25103f0dee88e18b

>>> print spooky_hash.hash32('hello world', seed=4)
4130951021
>>> print spooky_hash.Hash64('hello ', seed=8).update('world').hexdigest()
e54162c401e00c21
>>> print spooky_hash.Hash128('hello ', seed1=15, seed2=16).update('world').hexdigest()
1d46e376a416468b6c5c3a8f3798042b

See also:

http://burtleburtle.net/bob/hash/spooky.html

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

spooky_hash-1.0.1.tar.gz (39.2 kB view details)

Uploaded Source

Built Distribution

spooky_hash-1.0.1.macosx-10.9-x86_64.tar.gz (21.2 kB view details)

Uploaded Source

File details

Details for the file spooky_hash-1.0.1.tar.gz.

File metadata

  • Download URL: spooky_hash-1.0.1.tar.gz
  • Upload date:
  • Size: 39.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for spooky_hash-1.0.1.tar.gz
Algorithm Hash digest
SHA256 06a193a180c93557a5ce0ac3c0388ae7edb00ff7e2dccb51d270cc5e017da486
MD5 0bd58af48a59f57560aee8bcc5bff262
BLAKE2b-256 291b487d4c1abddd2b07536c234e244aac5544e01ee3a1e2f4fe92d09683404c

See more details on using hashes here.

File details

Details for the file spooky_hash-1.0.1.macosx-10.9-x86_64.tar.gz.

File metadata

File hashes

Hashes for spooky_hash-1.0.1.macosx-10.9-x86_64.tar.gz
Algorithm Hash digest
SHA256 0ff51d2cf1af427caa8788323d3c38ab389617736777240ac73e63cef68f0955
MD5 09bee68364b7a3ac8a54c4ce2a244257
BLAKE2b-256 daa068ba85b86ff79ba93b3a4cfcedb540deb74e7b8330dae8e962284b644131

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