$npx skillfedfor your agent

siphash24

Streaming-capable SipHash-1-3 and SipHash-2-4 Implementation

With conditionsPyPI LibrariesReleased Sep 2025510.7K downloads / moApache-2.0 OR LGPL-2.1-or-laterPlatform wheel

Decision gist · record as of 2026-08-14

platform wheels — siphash24-1.8-cp310-cp310-macosx_10_9_x86_64.whl · siphash24-1.8-cp310-cp310-macosx_11_0_arm64.whl · siphash24-1.8-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
v1.8 · released 2025-09-02 · Python >=3.7

Yes, if you specifically need SipHash and want a hashlib-compatible interface with streaming support. The package is stable, well-maintained enough for production use, has no known vulnerabilities, and provides convenient precompiled wheels. However, the aging maintenance status (346 days since last release) and unclear license metadata warrant a quick review of your licensing requirements before committing. If you only need a general-purpose hash function, Python's built-in hashlib is a simpler choice.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Python 3.7 or later.
  • Precompiled wheels are provided for common platforms; source builds require a C compiler and Cython.
  • Medium install friction due to compiled wheels; however, prebuilt binaries are available for Python 3.7–3.14 across macOS (x86_64 and arm64), Linux (x86_64 and aarch64), and Windows (32-bit and 64-bit), reducing build complexity.

License · maintenance · safety

Apache-2.0 OR LGPL-2.1-or-later (unclear) — Licensed under Apache-2.0 OR LGPL-2.1-or-later with unclear treatment in the package metadata. The dual licensing permits use in both permissive and copyleft contexts, but you should verify which license applies to your use case and confirm compliance with your project's license policy.

last release 2025-09-02 (346 days) · last repo commit 2025-12-31 · 8 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 510,712 downloads/mo, #6,265 on PyPI

Verify before relying

import siphash24

# Create a SipHash-2-4 hasher
hasher = siphash24.SipHash_2_4()
hasher.update(b'hello world')

# Get digest as bytes
digest = hasher.digest()
print(digest)

# Or get as 64-bit signed integer
int_digest = hasher.intdigest()
print(int_digest)
  • Whether the dual Apache-2.0 OR LGPL-2.1-or-later license is correctly declared in package metadata (license_treatment is marked 'unclear').
  • Performance characteristics compared to hashlib's built-in hash functions or other SipHash implementations.
  • Whether streaming mode is suitable for your use case or if a single-pass hash is sufficient.
Same gist for agents: .md · .json

What it is and what it does

siphash24 is a Python wrapper around a C implementation of the SipHash cryptographic hash function, offering both SipHash-1-3 and SipHash-2-4 variants. It exposes an interface compatible with Python's standard hashlib module, so you can use it like any other hash function—calling update() to feed data and digest() to retrieve the result. The package extends hashlib's interface with an intdigest() method that returns the hash as a 64-bit signed integer instead of bytes, which is the conventional representation for SipHash values.

The implementation is streaming-capable, meaning you can hash large amounts of data incrementally rather than loading it all into memory at once. It ships as precompiled binary wheels for Python 3.7–3.14 on macOS, Linux, and Windows, eliminating the need to compile C code on most systems. The underlying C code is based on the c-siphash library and ultimately derives from the SipHash reference implementation, so it is well-established and widely reviewed.

Use it for

  • Hash table implementations or data structures that require a fast, non-cryptographic hash function resistant to hash collision attacks.
  • Incremental hashing of large files or network streams where you cannot load the entire input into memory at once.
  • Cryptographic applications that specifically require SipHash-2-4 or SipHash-1-3 variants for compatibility or security requirements.
  • Scenarios where you need both byte and integer representations of hash values without manual conversion.
  • Projects that want a hashlib-compatible API but need the specific properties of SipHash rather than MD5 or SHA.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

With conditions

Yes, if you specifically need SipHash and want a hashlib-compatible interface with streaming support.

The package is stable, well-maintained enough for production use, has no known vulnerabilities, and provides convenient precompiled wheels. However, the aging maintenance status (346 days since last release) and unclear license metadata warrant a quick review of your licensing requirements before committing. If you only need a general-purpose hash function, Python's built-in hashlib is a simpler choice.

Install

siphash24 on PyPI

Before you install

Medium install friction due to compiled wheels; however, prebuilt binaries are available for Python 3.7–3.14 across macOS (x86_64 and arm64), Linux (x86_64 and aarch64), and Windows (32-bit and 64-bit), reducing build complexity. Maintenance status is aging—last release was 346 days ago—but the repository remains active and the package is marked Production/Stable.

Requires Python 3.7 or later. Precompiled wheels are provided for common platforms; source builds require a C compiler and Cython.

License in practice

Licensed under Apache-2.0 OR LGPL-2.1-or-later with unclear treatment in the package metadata. The dual licensing permits use in both permissive and copyleft contexts, but you should verify which license applies to your use case and confirm compliance with your project's license policy.

Quickstart

import siphash24

# Create a SipHash-2-4 hasher
hasher = siphash24.SipHash_2_4()
hasher.update(b'hello world')

# Get digest as bytes
digest = hasher.digest()
print(digest)

# Or get as 64-bit signed integer
int_digest = hasher.intdigest()
print(int_digest)

Verify before relying

  • Whether the dual Apache-2.0 OR LGPL-2.1-or-later license is correctly declared in package metadata (license_treatment is marked 'unclear').
  • Performance characteristics compared to hashlib's built-in hash functions or other SipHash implementations.
  • Whether streaming mode is suitable for your use case or if a single-pass hash is sufficient.

Package facts

LicenseApache-2.0 OR LGPL-2.1-or-later unclear
Python supportSupports the current Python release >=3.7
Install frictionMedium. Platform-specific wheel
Runtime dependenciesNone
MaintenanceAging 346 days since the last release
Last repo commit
First released
Downloads510,712 / month, #6,265 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 5 - Production/StableProgramming Language :: CProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Software Development :: Libraries

Evidence: siphash24-1.8-cp310-cp310-macosx_10_9_x86_64.whl; siphash24-1.8-cp310-cp310-macosx_11_0_arm64.whl; siphash24-1.8-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; siphash24-1.8-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl; siphash24-1.8-cp310-cp310-win32.whl; siphash24-1.8-cp310-cp310-win_amd64.whl; siphash24-1.8-cp311-cp311-macosx_10_9_x86_64.whl; siphash24-1.8-cp311-cp311-macosx_11_0_arm64.whl; siphash24-1.8-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; siphash24-1.8-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl; siphash24-1.8-cp311-cp311-win32.whl; siphash24-1.8-cp311-cp311-win_amd64.whl; siphash24-1.8-cp312-cp312-macosx_10_13_x86_64.whl; siphash24-1.8-cp312-cp312-macosx_11_0_arm64.whl; siphash24-1.8-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; siphash24-1.8-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl; siphash24-1.8-cp312-cp312-win32.whl; siphash24-1.8-cp312-cp312-win_amd64.whl; siphash24-1.8-cp313-cp313-macosx_10_13_x86_64.whl; siphash24-1.8-cp313-cp313-macosx_11_0_arm64.whl

Tags

Capabilities
siphash hash functionstreaming hash implementationhashlib compatible hashingsiphash-2-4 algorithmfast hash function pythoncryptographic hash librarysiphash-1-3 variant
Topics
hashingcryptographystreaming

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “streaming hash implementation”

  • siphash24Provides a C-based SipHash-1-3 and SipHash-2-4 implementation with a…
  • py-multihashEncodes and decodes multihash digests, supporting 125+ hash functions…
  • preshedPreshed provides high-performance Cython hash tables for mapping…

Give your agent the search over MCP, or paste the wish link into any chat.

More Libraries packages

urllib3 Worth it
PyPI · Libraries · released May 2026

urllib3 is an HTTP client library that provides thread-safe connection pooling, SSL/TLS verification, multipart file uploads, request retries, compression support, and proxy handling for Python applications.

MITpure Python · 3.10+
1.8Bdownloads / mo
requests Worth it
PyPI · Libraries · released May 2026

Requests is a Python HTTP library that simplifies sending HTTP/1.1 requests with automatic handling of headers, authentication, cookies, and response parsing.

Apache-2.0pure Python · 3.10+
1.8Bdownloads / mo
pluggy Worth it
PyPI · Libraries · released May 2025

Pluggy provides a plugin system that lets you define hook specifications and register implementations to be called in sequence, enabling extensible Python applications without tight coupling.

Install it if you're building an extensible application or framework.

MITpure Python · 3.9+aging
1.3Bdownloads / mo
python-dateutil Worth it
PyPI · Libraries · released Mar 2024

Provides parsing, arithmetic, and recurrence rule computation for dates and times, with timezone support and iCalendar RFC compliance.

Install it if you need to parse flexible date strings, compute relative dates, handle timezones, or work with recurrence rules—it's the de facto choice for these tasks.

Apache-2.0pure Python
1.2Bdownloads / mo
six With conditions
PyPI · Libraries · released Dec 2024

Six provides utility functions to write Python code that runs on both Python 2.7 and Python 3.3+, smoothing over language differences between the two versions.

MITpure Python
1.2Bdownloads / mo
pytest Worth it
PyPI · Libraries · released Jun 2026

pytest is a testing framework that lets you write test functions using plain assert statements and automatically discovers and runs them, with detailed failure reporting.

MITpure Python · 3.10+
1.1Bdownloads / mo

See also siphash · siphashc · xxhash · poseidon-py · mmhash3 · py-multihash · bbhash · pysha3 · safe-pysha3 · murmurhash