sslpsk-pmd3
sslpsk fork for pymobiledevice3
What it is and what it does
sslpsk-pmd3 is a fork of sslpsk that adds support for Python 3.8, 3.9, 3.10, 3.11, and 3.12. It enables TLS/SSL connections authenticated by pre-shared keys (PSK) rather than traditional certificate-based authentication, useful in scenarios where certificate infrastructure is unavailable or impractical. The package wraps low-level SSL/TLS operations to negotiate PSK-based cipher suites.
The library is distributed as pre-compiled wheels for multiple platforms and architectures, reducing installation friction. It has no runtime dependencies beyond Python itself. The fork was created to support pymobiledevice3, suggesting use in mobile device communication or testing contexts where PSK authentication is preferred.
Use it for:
- Establish TLS connections to embedded devices or test servers that use PSK authentication.
- Implement secure communication in environments where certificate management is unavailable.
- Test or develop mobile device communication protocols that rely on pre-shared key authentication.
- Replace certificate-based authentication in legacy systems that support only PSK cipher suites.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides TLS/SSL connections using pre-shared key (PSK) authentication instead of certificates, with support for Python 3.8 through 3.12.
Yes, if you need TLS/PSK authentication and are working with Python 3.8–3.12. The package is stable, permissively licensed under Apache License 2.0, has no external dependencies, and offers pre-built wheels for common platforms. However, the repository is dormant (last commit February 2024); verify that security updates will be available if your use case requires active maintenance.
Install
sslpsk-pmd3 on PyPI
pip
pip install sslpsk-pmd3uv
uv add sslpsk-pmd3poetry
poetry add sslpsk-pmd3Installing sslpsk-pmd3
Before you install
Medium install friction due to compiled wheels; pre-built binaries are available for macOS, Linux, Windows across Python 3.8–3.12, reducing build complexity. Last release February 2024; repository is dormant but not archived.
License in practice
Apache License 2.0 is permissive: you may use, modify, and distribute freely in commercial and private projects, provided you include a copy of the license and document any changes.
Quickstart
import sslpsk
ctx = sslpsk.PSKContext()
ctx.set_psk('identity', b'preshared_key')
Requires Python 3.8 or later; compiled extension modules are pre-built for macOS (Intel and ARM), Linux (i686 and x86_64), Windows (x86_64), and musl-based systems.
Verify before relying
- Whether the package will receive security updates beyond the February 2024 release given dormant status.
- Specific use cases or integrations with pymobiledevice3 that motivated the fork.
- Performance characteristics or limitations of PSK-based authentication versus standard TLS.
Package facts
| License | Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for… (full text in the JSON record) (permissive) |
| Python support | supports the current Python release (>=3.8) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | none |
| Maintenance | dormant — 917 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 268,186/month — #8,282 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: sslpsk_pmd3-1.0.3-cp310-cp310-macosx_10_9_x86_64.whl; sslpsk_pmd3-1.0.3-cp310-cp310-macosx_11_0_arm64.whl; sslpsk_pmd3-1.0.3-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl; sslpsk_pmd3-1.0.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; sslpsk_pmd3-1.0.3-cp310-cp310-musllinux_1_1_i686.whl; sslpsk_pmd3-1.0.3-cp310-cp310-musllinux_1_1_x86_64.whl; sslpsk_pmd3-1.0.3-cp310-cp310-win_amd64.whl; sslpsk_pmd3-1.0.3-cp311-cp311-macosx_10_9_x86_64.whl; sslpsk_pmd3-1.0.3-cp311-cp311-macosx_11_0_arm64.whl; sslpsk_pmd3-1.0.3-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl; sslpsk_pmd3-1.0.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; sslpsk_pmd3-1.0.3-cp311-cp311-musllinux_1_1_i686.whl; sslpsk_pmd3-1.0.3-cp311-cp311-musllinux_1_1_x86_64.whl; sslpsk_pmd3-1.0.3-cp311-cp311-win_amd64.whl; sslpsk_pmd3-1.0.3-cp312-cp312-macosx_10_9_x86_64.whl; sslpsk_pmd3-1.0.3-cp312-cp312-macosx_11_0_arm64.whl; sslpsk_pmd3-1.0.3-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl; sslpsk_pmd3-1.0.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; sslpsk_pmd3-1.0.3-cp312-cp312-musllinux_1_1_i686.whl; sslpsk_pmd3-1.0.3-cp312-cp312-musllinux_1_1_x86_64.whl
Keywords: ssl, tls, psk, tls-psk, preshared key
Tags
More Cryptography packages
Certifi provides Mozilla's curated collection…
copyleft · top 100 on PyPI
cryptographycryptography provides cryptographic recipes and…
permissive · top 100 on PyPI
rsaPure-Python RSA encryption, decryption,…
permissive · top 1,000 on PyPI
pyOpenSSLpyOpenSSL wraps OpenSSL's SSL/TLS functionality…
permissive · top 1,000 on PyPI
azure-identityProvides Microsoft Entra ID token-based…
unclear · top 1,000 on PyPI
PyNaClPyNaCl provides Python bindings to libsodium…
permissive · top 1,000 on PyPI
pip-system-certsAutomatically configures Python to use the…
permissive · top 5,000 on PyPI
tlslite-ngPure Python implementation of SSL/TLS protocols…
copyleft · top 15,000 on PyPI
python-certifi-win32Patches certifi at runtime to include…
permissive · top 15,000 on PyPI
certifi-linuxRedirects certifi's certificate lookup to use…
permissive · top 15,000 on PyPI
secure-smtplibProvides secure SMTP subclasses with TLS/SSL…
unclear · top 15,000 on PyPI
ndg-httpsclientProvides enhanced HTTPS support for Python's…
permissive · top 5,000 on PyPI
wassimaWassima provides access to your operating…
permissive · top 5,000 on PyPI
wincertstoreAccesses Windows system certificate stores (CA…
permissive · top 15,000 on PyPI