Skip to main content

Wrapper for SpookyHash V2

Project description

SpookyHash V2 is a fast x64 targeted hash developed by Bob Jenkins. This python library is a wrapper around Bob Jenkin’s public domain c++ implementation (current as of August 2012).

In python2 results are all long type for consistency despite the fact that 32bit ints do not need to be.

The bit width features are a convenience to save a masking operation if you need shorter hashes. There isn’t a significant performance difference between the hash size options as they are all computed internally as 128bit hashes.

Usage

>>> from spooky import hash128, hash64, hash32
>>> s = 'this is only a test...'
>>> hash128(s) #128bit python int from 2 unsigned long long ints in c
94655121727368234505791352840874203973
>>> hash64(s) #64bit int
13961228348271205189
>>> hash32(s) #32bit int
2261883717
>>> hash32(s) == hash64(s) & 0xffffffff == hash128(s) & 0xffffffff
True
>>> from binascii import hexlify #if you prefer hex strings to ints
>>> hexlify(hash128(s).to_bytes(16, 'little'))
b'459bd186363fc0c1f1da8d27d0e93547'

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-2.0.0.tar.gz (8.2 kB view details)

Uploaded Source

File details

Details for the file spooky-2.0.0.tar.gz.

File metadata

  • Download URL: spooky-2.0.0.tar.gz
  • Upload date:
  • Size: 8.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for spooky-2.0.0.tar.gz
Algorithm Hash digest
SHA256 9d9ce6f52d57d63d136d87d834cc81e8f4cd65d1f2ca1f5b2e35eee5c5f048f7
MD5 aa692d2dc2ff1e27c9b301d442717d38
BLAKE2b-256 c51c56e3589d67e25b76bdc8937585fd4112c9d4a04eff120723111631c5ca36

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