Metadata-Version: 1.1
Name: pem
Version: 17.1.0
Summary: Easy PEM file parsing in Python.
Home-page: https://pem.readthedocs.io/
Author: Hynek Schlawack
Author-email: hs@ox.cx
License: MIT
Description: pem: Easy PEM file parsing
        ==========================
        
        .. image:: https://readthedocs.org/projects/pem/badge/?version=stable
          :target: https://pem.readthedocs.io/en/stable/?badge=stable
          :alt: Documentation Status
        
        .. image:: https://travis-ci.org/hynek/pem.svg?branch=master
           :target: https://travis-ci.org/hynek/pem
           :alt: CI status
        
        .. image:: https://codecov.io/gh/hynek/pem/branch/master/graph/badge.svg
           :target: https://codecov.io/github/hynek/pem
           :alt: Coverage
        
        .. image:: https://www.irccloud.com/invite-svg?channel=%23cryptography-dev&amp;hostname=irc.freenode.net&amp;port=6697&amp;ssl=1
           :target: https://www.irccloud.com/invite?channel=%23cryptography-dev&amp;hostname=irc.freenode.net&amp;port=6697&amp;ssl=1
        
        .. teaser-begin
        
        ``pem`` is an MIT_-licensed Python module for parsing and splitting of `PEM files`_, i.e. Base64 encoded DER keys and certificates.
        
        It runs on Python 2.7, 3.4+, and PyPy, has no dependencies, and does not attempt to interpret the certificate data in any way.
        ``pem``\ ’s original intent was to ease the handling of PEM files in combination with pyOpenSSL_ and – by extension – Twisted_.
        
        It’s born from the need to load keys, certificates, trust chains, and DH parameters from various certificate deployments: some servers (like Apache_) expect them to be a separate file, others (like nginx_) expect them concatenated to the server certificate and finally some (like HAProxy_) expect key, certificate, and chain to be in one file.
        With ``pem``, your Python application can cope with all of those scenarios:
        
        .. code-block:: pycon
        
           >>> import pem
           >>> certs = pem.parse_file("chain.pem")
           >>> certs
           [<Certificate(PEM string with SHA-1 digest '...')>, <Certificate(PEM string with SHA-1 digest '...')>]
           >>> str(certs[0])
           '-----BEGIN CERTIFICATE-----\n...'
        
        Additionally to the vanilla parsing code, ``pem`` also contains helpers for Twisted that save a lot of boilerplate code.
        
        ``pem``\ ’s documentation lives at `Read the Docs <https://pem.readthedocs.io/>`_, the code on `GitHub <https://github.com/hynek/pem>`_.
        
        
        .. _MIT: https://choosealicense.com/licenses/mit/
        .. _`PEM files`: https://en.wikipedia.org/wiki/X.509#Certificate_filename_extensions
        .. _Apache: https://httpd.apache.org/
        .. _nginx: https://nginx.org/
        .. _HAProxy: http://www.haproxy.org/
        .. _pyOpenSSL: http://www.pyopenssl.org/
        .. _Twisted: https://twistedmatrix.com/documents/current/api/twisted.internet.ssl.Certificate.html#loadPEM
        
        
        Release Information
        ===================
        
        17.1.0 (2017-08-10)
        -------------------
        
        
        Changes:
        ^^^^^^^^
        
        - Added ``pem.CertificateRequest`` for `certificate signing requests <https://en.wikipedia.org/wiki/Certificate_signing_request>`_.
          `#29 <https://github.com/hynek/pem/pull/29>`_
        
        `Full changelog <https://pem.readthedocs.io/en/stable/changelog.html>`_.
        
        Credits
        =======
        
        ``pem`` is written and maintained by Hynek Schlawack.
        
        The development is kindly supported by `Variomedia AG <https://www.variomedia.de/>`_.
        
        A full list of contributors can be found on GitHub’s `overview <https://github.com/hynek/pem/graphs/contributors>`_.
        
Keywords: pyopenssl,ssl,tls,pem,cryptography,twisted
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Natural Language :: English
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Topic :: Software Development :: Libraries :: Python Modules
