$npx skillfedfor your agent

diffiehellmanlib

Diffie-Hellman key exchange library

With conditionsPyPI CryptographyReleased Feb 202573.8K downloads / moMITPlatform wheel

Decision gist · record as of 2026-08-14

platform wheels — diffiehellmanlib-5.0.1-cp312-cp312-manylinux_2_34_x86_64.whl · diffiehellmanlib-5.0.1-cp312-cp312-win_amd64.whl
v5.0.1 · released 2025-02-27 · Python >=3.7

Yes, if you need a straightforward Diffie-Hellman implementation with Rust-backed performance and no external crypto dependencies. The MIT license and zero runtime dependencies make it low-friction to integrate. However, note that the project shows aging maintenance (last release 533 days ago) and prebuilt wheels are limited to Linux x64 and Windows x64; other platforms require a source build with Rust tooling. For production use, verify that 2048-bit or larger primes are enforced and that parameter transmission is authenticated.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Python 3.7 or higher; prebuilt wheels available only for Linux x64 and Windows x64—other platforms need Rust and maturin installed to build from source.
  • Medium install friction due to compiled wheels; prebuilt binaries available for Linux x64 and Windows, but source builds require Rust and maturin.
  • Last release 533 days ago; maintenance status is aging.

License · maintenance · safety

MIT (permissive) — MIT license permits commercial and private use with minimal restrictions; attribution appreciated but not legally required.

last release 2025-02-27 (533 days)

0 known vulnerabilities (OSV.dev, 2026-08-14) · 73,822 downloads/mo, #14,925 on PyPI

Verify before relying

import diffiehellmanlib as dh

# Generate parameters
p, g = dh.generate_p_g(2048)

# Generate Alice's keys
a = dh.generate_a_or_b(p)
A = dh.generate_A_or_B(p, g, a)

# Generate Bob's keys
b = dh.generate_a_or_b(p)
B = dh.generate_A_or_B(p, g, b)

# Compute shared secret
shared_key = dh.generate_shared_key(B, p, a)
  • Whether prebuilt wheels cover all target platforms beyond Linux x64 and Windows x64
  • Current state of the repository and whether it remains actively maintained
  • Performance characteristics on systems other than the documented Intel Core i3-7gen baseline
Same gist for agents: .md · .json

What it is and what it does

DiffieHellmanLib is a Python cryptography library that implements the Diffie-Hellman key exchange protocol, with core functions written in Rust for performance. It generates cryptographically secure parameters (a large prime p and primitive root g), creates private and public key pairs for two parties, and computes a shared secret that both parties can derive independently. The library supports prime sizes from 512 to 8192 bits, with 2048 bits recommended for production use; it includes caching of generated primes with a 1-hour TTL and applies SHA-256 hashing plus HKDF to the final shared secret for additional security.

The package has no runtime dependencies and is designed for scenarios where two parties need to establish a shared encryption key over an untrusted channel. It requires Python 3.7 or higher and depends on precompiled wheels for most users, though source builds require Rust and the maturin build tool.

Use it for

  • Establishing encrypted communication channels between two peers in a distributed system
  • Generating shared encryption keys for secure message exchange protocols
  • Testing cryptographic implementations that require Diffie-Hellman parameter generation
  • Building key agreement mechanisms for IoT or embedded systems requiring lightweight crypto
  • Implementing forward-secret session key derivation in custom authentication schemes

Worth the install?

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

With conditions

Yes, if you need a straightforward Diffie-Hellman implementation with Rust-backed performance and no external crypto dependencies.

The MIT license and zero runtime dependencies make it low-friction to integrate. However, note that the project shows aging maintenance (last release 533 days ago) and prebuilt wheels are limited to Linux x64 and Windows x64; other platforms require a source build with Rust tooling. For production use, verify that 2048-bit or larger primes are enforced and that parameter transmission is authenticated.

Install

diffiehellmanlib on PyPI

Before you install

Medium install friction due to compiled wheels; prebuilt binaries available for Linux x64 and Windows, but source builds require Rust and maturin. Last release 533 days ago; maintenance status is aging.

Requires Python 3.7 or higher; prebuilt wheels available only for Linux x64 and Windows x64—other platforms need Rust and maturin installed to build from source.

License in practice

MIT license permits commercial and private use with minimal restrictions; attribution appreciated but not legally required.

Quickstart

import diffiehellmanlib as dh

# Generate parameters
p, g = dh.generate_p_g(2048)

# Generate Alice's keys
a = dh.generate_a_or_b(p)
A = dh.generate_A_or_B(p, g, a)

# Generate Bob's keys
b = dh.generate_a_or_b(p)
B = dh.generate_A_or_B(p, g, b)

# Compute shared secret
shared_key = dh.generate_shared_key(B, p, a)

Verify before relying

  • Whether prebuilt wheels cover all target platforms beyond Linux x64 and Windows x64
  • Current state of the repository and whether it remains actively maintained
  • Performance characteristics on systems other than the documented Intel Core i3-7gen baseline

Package facts

LicenseMIT permissive
Python supportSupports the current Python release >=3.7
Install frictionMedium. Platform-specific wheel
Runtime dependenciesNone
MaintenanceAging 533 days since the last release
First released
Downloads73,822 / month, #14,925 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
License :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: Python :: 3Programming Language :: Rust

Evidence: diffiehellmanlib-5.0.1-cp312-cp312-manylinux_2_34_x86_64.whl; diffiehellmanlib-5.0.1-cp312-cp312-win_amd64.whl

Tags

Capabilities
diffie-hellman key exchangeshared secret generationcryptographic key agreementDH protocol implementationkey exchange librarypublic key cryptographysecure parameter generation
Topics
key-exchangecryptographyrust-backed

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 › “diffie-hellman key exchange”

  • diffiehellmanlibGenerates Diffie-Hellman key exchange parameters and performs shared…
  • pure25519Pure-Python implementation of Curve25519 and Ed25519 cryptographic…
  • x25519Provides pure Python implementations of curve25519 scalar…

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

More Cryptography packages

certifi Worth it
PyPI · Cryptography · released Jul 2026

Certifi provides Mozilla's curated collection of root SSL certificates for Python applications to validate TLS hosts and verify certificate trustworthiness.

MPL-2.0pure Python · 3.7+
1.9Bdownloads / mo
cryptography Worth it
PyPI · Cryptography · released Jul 2026

cryptography provides cryptographic recipes and low-level primitives for symmetric encryption, message digests, key derivation, and other common cryptographic algorithms in Python.

Apache-2.0 OR BSD-3-Clausecompiled wheel
1.5Bdownloads / mo
rsa Skip
PyPI · Cryptography · released Apr 2025

Pure-Python RSA encryption, decryption, signing, and key generation following PKCS#1 v1.5, with command-line and library interfaces.

Apache-2.0pure Pythonabandoned
299.6Mdownloads / mo
pyOpenSSL With conditions
PyPI · Python Modules · released Aug 2026

pyOpenSSL wraps OpenSSL's SSL/TLS functionality for Python, providing high-level connection objects and certificate handling through a Python-friendly interface around OpenSSL's cryptographic operations.

Apache-2.0pure Python · 3.9+
294.2Mdownloads / mo
azure-identity Worth it
PyPI · Cryptography · released Mar 2026

Provides Microsoft Entra ID token-based authentication for Azure SDK clients through a set of TokenCredential implementations that handle OAuth flows and managed identity support.

license unclearpure Python · 3.9+
247.2Mdownloads / mo
PyNaCl Worth it
PyPI · Cryptography · released Jan 2026

PyNaCl provides Python bindings to libsodium for digital signatures, secret-key and public-key encryption, hashing, message authentication, and password-based key derivation.

Apache-2.0compiled wheel · 3.8+
246.6Mdownloads / mo

See also pure25519 · x25519 · python-pkcs11 · hkdf · py_arkworks_bls12381 · eclipse-zenoh · py-sr25519-bindings · py-bip39-bindings · pqcrypto · bitwarden-sdk