skillfed

pyOpenSSL

Python wrapper module around the OpenSSL library

pyopenssl Permissive license Apache License, Version 2.0 Active 944 v26.4.0 released

Install

pyopenssl on PyPI

pip

pip install pyopenssl

uv

uv add pyopenssl

poetry

poetry add pyopenssl

Package facts

License Apache License, Version 2.0 (permissive)
Python support supports the current Python release (>=3.9)
Install friction low — pure-Python wheel
Runtime dependencies 2 — cryptography, typing-extensions
Maintenance actively maintained — 12 days since the last release
Last repo commit
First released
Popularity one of the top 1,000 most-downloaded packages on PyPI (30-day window, as of 2026-08-13)
Known vulnerabilities none known (OSV.dev, checked 2026-08-13)

Evidence: pyopenssl-26.4.0-py3-none-any.whl

Development Status :: 6 - MatureIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseOperating System :: MacOS :: MacOS XOperating System :: Microsoft :: WindowsOperating System :: POSIXProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPyTopic :: Security :: CryptographyTopic :: Software Development :: Libraries :: Python ModulesTopic :: System :: Networking

About pyOpenSSL

from the package's own PyPI description — quoted content, verbatim

======================================================== pyOpenSSL -- A Python wrapper around the OpenSSL library ========================================================

.. image:: https://readthedocs.org/projects/pyopenssl/badge/?version=stable :target: https://pyopenssl.org/en/stable/ :alt: Stable Docs

.. image:: https://github.com/pyca/pyopenssl/workflows/CI/badge.svg?branch=main :target: https://github.com/pyca/pyopenssl/actions?query=workflow%3ACI+branch%3Amain

Note: The Python Cryptographic Authority strongly suggests the use of pyca/cryptography_ where possible. If you are using pyOpenSSL for anything other than making a TLS connection you should move to cryptography and drop your pyOpenSSL dependency.

High-level wrapper around a subset of the OpenSSL library. Includes

  • SSL.Connection objects, wrapping the methods of Python's portable sockets
  • Callbacks written in Python
  • Extensive error-handling mechanism, mirroring OpenSSL's error codes

... and much more.

You can find more information in the documentation_. Development takes place on GitHub_.

Discussion

If you run into bugs, you can file them in our `issue...

Read as markdown · JSON record · Source repository · Homepage

AI interpretation — verify before relying

AI-generated interpretation of the package facts above; every digit, version, license, or vulnerability id it cites is grounded in the facts already shown on this page

pyOpenSSL wraps OpenSSL's SSL/TLS functionality for Python, providing high-level connection objects and certificate handling. The maintainers recommend using cryptography directly for non-TLS use cases.

Low friction: pure Python wheel with just two runtime dependencies (cryptography and typing-extensions). Actively maintained with release 12 days ago and 944 GitHub stars.

Apache License 2.0 (permissive) allows commercial and private use with minimal restrictions, making it suitable for most projects.

Usage

pip install pyopenssl

import pyopenssl
# Provides SSL.Connection objects wrapping socket methods and certificate handling

Requires Python 3.9+; cryptography dependency must be version 49.0.0 to 50.x per version 26.4.0.

Verdict: Mature, actively maintained SSL/TLS wrapper with low install friction and no known vulnerabilities. However, the maintainers explicitly recommend migrating to cryptography for non-TLS use cases, so evaluate whether this package is the right fit for your specific needs before adopting it.

Needs verification

  • Whether the cryptography version constraint (49.0.0–50.x) aligns with your other dependencies.
  • Whether you need TLS-specific functionality or if cryptography alone would suffice for your use case.
  • Performance characteristics and overhead compared to direct cryptography usage.
ssl tls connection wrapperopenssl python bindingcertificate handling sslpython tls client serversecure socket layer pythonx509 certificate managementopenssl wrapper library

Similar packages