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

If you're not sure about the file name format, learn more about wheel file names.

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 Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page