--- id: pure-sasl version: "0.6.2" license: MIT license_treatment: permissive maintenance: abandoned --- # pure-sasl — Pure Python client SASL implementation License: permissive · Maintenance: abandoned · Downloads: 7.8M/mo ## What it is and what it does pure-sasl is a pure Python implementation of the SASL (Simple Authentication and Security Layer) protocol for client-side authentication. It handles the negotiation and challenge-response exchange required to authenticate a client to a server using one of several supported mechanisms. The library manages the state machine of SASL authentication, allowing you to feed server challenges into the client and receive responses to send back, and provides optional message wrapping and unwrapping for integrity and confidentiality after authentication succeeds. The package has no external runtime dependencies and installs as a wheel, making it straightforward to add to any Python project. However, it has been abandoned since 2019-10-14 with no active maintenance, so it is best suited for legacy systems or environments where you control the authentication mechanisms and can accept the risk of unpatched issues. Use it for: - Authenticate to SASL-enabled servers (e.g., XMPP, SMTP, LDAP) from a Python client application. - Implement custom authentication flows in messaging or protocol libraries that require SASL support. - Build a pure-Python alternative to system SASL libraries for environments where external dependencies are constrained. - Wrap or unwrap messages for integrity protection after SASL authentication completes. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. pure-sasl is a pure Python client-side SASL implementation supporting ANONYMOUS, PLAIN, EXTERNAL, CRAM-MD5, DIGEST-MD5, and GSSAPI mechanisms for authentication negotiation. No. The package is abandoned (last release 2019-10-14, last commit 2023-06-25) with no active maintenance. While it has no known vulnerabilities and low install friction, the lack of updates means it will not receive security patches or compatibility fixes for modern Python versions. Use only if you are maintaining legacy code that already depends on it; for new projects, choose an actively maintained alternative. ## Install pip install pure-sasl uv add pure-sasl poetry add pure-sasl ## Installing pure-sasl Before you install: Installation is low-friction with no runtime dependencies. However, the package is abandoned as of 2019-10-14 with no commits since 2023-06-25, meaning security updates and compatibility fixes are unlikely. License in practice: MIT license is permissive and imposes minimal restrictions; you can use, modify, and distribute the package freely provided you retain the license notice. Quickstart: from pure-sasl import SASLClient sasl = SASLClient('somehost', 'protocol') available_mechs = ['PLAIN', 'ANONYMOUS'] sasl.choose_mechanism(available_mechs) response = sasl.process(challenge_bytes) The package declares support for Python 2.6–3.6 in its classifiers; compatibility with modern Python versions is unverified. Verify before relying: - Whether the package works reliably with Python versions after 3.6. - Current security posture of the SASL mechanisms implemented, particularly DIGEST-MD5 and CRAM-MD5. - Whether GSSAPI support requires additional system libraries or configuration. ## Package facts - License: MIT (permissive) - Python support: unspecified - Install friction: low - Maintenance: abandoned - Downloads: 7.8M/month (top 5,000 on PyPI) - Known vulnerabilities: none known ## Tags sasl authentication client, pure python sasl, sasl mechanism implementation, client authentication protocol, sasl negotiation library, authentication, sasl, abandoned [View on SkillFed](https://skillfed.io/packages/pure-sasl) · [View on PyPI](https://pypi.org/project/pure-sasl/)