$npx skillfedfor your agent

nassl

Experimental OpenSSL wrapper for Python 3.10+ and SSLyze.

With conditionsPyPI MonitoringReleased Dec 2025176.2K downloads / moPlatform wheel

Decision gist · record as of 2026-08-14

platform wheels — nassl-5.4.0-cp310-cp310-macosx_11_0_arm64.whl · nassl-5.4.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl · nassl-5.4.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
v5.4.0 · released 2025-12-29 · Python >=3.10

Yes, if you are building SSL security testing tools and need low-level OpenSSL access that standard Python ssl or pyOpenSSL do not provide. No, if you need production-ready code—the package explicitly disclaims production readiness. Be aware of AGPL v3 licensing obligations if incorporating into a larger project.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Python 3.10 or later.
  • C extension compilation may require OpenSSL development headers on your system.
  • Medium install friction due to C extension compilation requirements.

License · maintenance · safety

(agpl) — Licensed under AGPL v3, which requires derivative works and modifications to be released under the same license. This is a copyleft license with stronger obligations than permissive alternatives; review your project's licensing compatibility before use.

last release 2025-12-29 (228 days) · last repo commit 2026-07-29 · 42 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 176,248 downloads/mo, #10,249 on PyPI

Verify before relying

pip install nassl

import nassl
# Access low-level SSL functions via nassl._nassl namespace or higher-level interfaces via nassl namespace
  • Specific example code or API documentation showing how to perform common SSL testing tasks
  • Performance characteristics or limitations when scanning large numbers of servers
  • Current state of production readiness given the 'experimental' and 'not production ready' disclaimer in the description
Same gist for agents: .md · .json

What it is and what it does

nassl is an experimental OpenSSL wrapper designed to provide access to low-level SSL/TLS functions that are not exposed by Python's standard ssl module or other common wrappers. It consists of two layers: a C extension (_nassl namespace) that closely mirrors OpenSSL's C API, and higher-level Python classes (nassl namespace) that provide a simpler interface for SSL connections. The package was created to support SSLyze, an SSL scanner that requires capabilities like testing for insecure renegotiation and session resumption.

The package explicitly warns that it is experimental and not production-ready, having not been thoroughly tested or reviewed. It supports Python 3.10 through 3.14 and is actively maintained, with prebuilt wheels available for major platforms. Installation requires a C compiler and OpenSSL development headers due to the compiled extension component.

Use it for

  • Building SSL/TLS security scanners that need access to low-level OpenSSL functions unavailable in standard libraries
  • Testing SSL servers for specific vulnerabilities or misconfigurations like insecure renegotiation
  • Implementing custom SSL session resumption tests or protocol-level diagnostics
  • Extending SSLyze or similar security tools that require fine-grained control over SSL connections

Worth the install?

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

With conditions

Yes, if you are building SSL security testing tools and need low-level OpenSSL access that standard Python ssl or pyOpenSSL do not provide.

No, if you need production-ready code—the package explicitly disclaims production readiness. Be aware of AGPL v3 licensing obligations if incorporating into a larger project.

Install

nassl on PyPI

Before you install

Medium install friction due to C extension compilation requirements. The package is actively maintained with recent commits and supports Python 3.10 through 3.14, with prebuilt wheels available for common platforms (macOS, Linux, Windows across multiple architectures).

Requires Python 3.10 or later. C extension compilation may require OpenSSL development headers on your system.

License in practice

Licensed under AGPL v3, which requires derivative works and modifications to be released under the same license. This is a copyleft license with stronger obligations than permissive alternatives; review your project's licensing compatibility before use.

Quickstart

pip install nassl

import nassl
# Access low-level SSL functions via nassl._nassl namespace or higher-level interfaces via nassl namespace

Verify before relying

  • Specific example code or API documentation showing how to perform common SSL testing tasks
  • Performance characteristics or limitations when scanning large numbers of servers
  • Current state of production readiness given the 'experimental' and 'not production ready' disclaimer in the description

Package facts

LicenseNot declared agpl
Python supportSupports the current Python release >=3.10
Install frictionMedium. Platform-specific wheel
Runtime dependenciesNone
MaintenanceActively maintained 228 days since the last release
Last repo commit
First released
Downloads176,248 / month, #10,249 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 4 - BetaIntended Audience :: DevelopersIntended Audience :: System AdministratorsLicense :: OSI Approved :: GNU Affero General Public License v3Natural Language :: FrenchProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Topic :: SecurityTopic :: System :: MonitoringTopic :: System :: NetworkingTopic :: System :: Networking :: Monitoring

Evidence: nassl-5.4.0-cp310-cp310-macosx_11_0_arm64.whl; nassl-5.4.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl; nassl-5.4.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl; nassl-5.4.0-cp310-cp310-musllinux_1_2_aarch64.whl; nassl-5.4.0-cp310-cp310-musllinux_1_2_x86_64.whl; nassl-5.4.0-cp310-cp310-win_amd64.whl; nassl-5.4.0-cp311-cp311-macosx_11_0_arm64.whl; nassl-5.4.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl; nassl-5.4.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl; nassl-5.4.0-cp311-cp311-musllinux_1_2_aarch64.whl; nassl-5.4.0-cp311-cp311-musllinux_1_2_x86_64.whl; nassl-5.4.0-cp311-cp311-win_amd64.whl; nassl-5.4.0-cp312-cp312-macosx_11_0_arm64.whl; nassl-5.4.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl; nassl-5.4.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl; nassl-5.4.0-cp312-cp312-musllinux_1_2_aarch64.whl; nassl-5.4.0-cp312-cp312-musllinux_1_2_x86_64.whl; nassl-5.4.0-cp312-cp312-win_amd64.whl; nassl-5.4.0-cp313-cp313-macosx_11_0_arm64.whl; nassl-5.4.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl

Tags

Capabilities
openssl wrapper pythonssl tls testing librarylow-level ssl functionsssl server scanningopenssl python bindings
Topics
ssl-tls-testingopenssl-bindingssecurity-scanning
PyPI keywords
ssltlsscansecuritylibrary

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 › “ssl tls testing library”

  • nasslnassl is an OpenSSL wrapper for Python that exposes low-level SSL/TLS…
  • sslyzeSSLyze is a fast SSL/TLS scanning tool and Python library that…
  • tlslite-ngPure Python implementation of SSL/TLS protocols (SSLv3.0, TLS…

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

More Monitoring packages

tqdm Worth it
PyPI · Libraries · released Jul 2026

Wraps any iterable to display a real-time progress bar in the terminal or Jupyter notebook, showing iteration count, elapsed time, and estimated time remaining.

copyleftpure Python · 3.8+
648.6Mdownloads / mo
opentelemetry-semantic-conventions Worth it
PyPI · Monitoring · released Jul 2026

Provides generated Python code for OpenTelemetry semantic conventions, enabling standardized attribute naming and constant definitions for instrumentation and telemetry collection.

Install it if you are using OpenTelemetry and want to follow semantic conventions correctly.

Apache-2.0pure Python · 3.10+
542.9Mdownloads / mo
opentelemetry-sdk Worth it
PyPI · Monitoring · released Jul 2026

Provides the reference implementation of the OpenTelemetry API for collecting and exporting traces, metrics, and logs from Python applications.

Apache-2.0pure Python · 3.10+
521.8Mdownloads / mo
opentelemetry-api With conditions
PyPI · Monitoring · released Jul 2026

Provides the abstract API and interfaces for OpenTelemetry instrumentation in Python, defining how to emit traces, metrics, and logs without tying code to a specific SDK implementation.

Apache-2.0pure Python · 3.10+
463.8Mdownloads / mo
opentelemetry-exporter-otlp-proto-http Worth it
PyPI · Monitoring · released Jul 2026

Exports OpenTelemetry observability data to an OpenTelemetry Collector using Protobuf-encoded messages over HTTP.

Install it if you are using OpenTelemetry in Python and need to send data to a Collector over HTTP.

Apache-2.0pure Python · 3.10+
409.9Mdownloads / mo
opentelemetry-instrumentation Worth it
PyPI · Monitoring · released Jul 2026

Provides automatic instrumentation commands and programmatic APIs to inject distributed tracing into Python applications without code changes, detecting and instrumenting packages used by your program.

Install it if you need distributed tracing without code changes and have compatible instrumented packages in your environment.

Apache-2.0pure Python · 3.10+
393.5Mdownloads / mo

See also sslyze · tls-parser · pyOpenSSL · M2Crypto · oscrypto · backports.ssl · ndg-httpsclient · openssl-ocsp-responder · tlslite-ng · awscrt