{ "info": { "author": "Martin Simon", "author_email": "me@martinsimon.me", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.6", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "

\"certifier\" certifier

\n\n[![PyPi Version](http://img.shields.io/pypi/v/certifier.svg)](https://pypi.python.org/pypi/certifier/) [![Downloads](http://img.shields.io/pypi/dm/certifier.svg)](https://pypi.python.org/pypi/certifier/)\n\n**certifier** is an APACHE licensed Python library allowing you to get all the information you'll ever want about your SSL certificates. This library has been tested with Python 2.7.x and Python 3.6+.\n\n## Installation:\n\nFrom source use\n\n```bash\n\t$ python setup.py install\n```\n\nor install from PyPi\n\n```bash\n\t$ pip install certifier\n```\n\n## Documentation:\n\n```python\n>>> from certifier import CertInfo\n>>> cert = CertInfo('example.com', 443)\n>>> cert.info([ binary_form ])\n{'subject': ((('countryName', 'US'),), (('stateOrProvinceName', 'California'),), (('localityName', 'Los Angeles'),), (('organizationName', 'Internet Corporation for Assigned Names and Numbers'),), (('organizationalUnitName', 'Technology'),), (('commonName', 'www.example.org'),)), 'issuer': ((('countryName', 'US'),), (('organizationName', 'DigiCert Inc'),), (('commonName', 'DigiCert SHA2 Secure Server CA'),)), 'version': 3, 'serialNumber': '0FD078DD48F1A2BD4D0F2BA96B6038FE', 'notBefore': 'Nov 28 00:00:00 2018 GMT', 'notAfter': 'Dec 2 12:00:00 2020 GMT', 'subjectAltName': (('DNS', 'www.example.org'), ('DNS', 'example.com'), ('DNS', 'example.edu'), ('DNS', 'example.net'), ('DNS', 'example.org'), ('DNS', 'www.example.com'), ('DNS', 'www.example.edu'), ('DNS', 'www.example.net')), 'OCSP': ('http://ocsp.digicert.com',), 'caIssuers': ('http://cacerts.digicert.com/DigiCertSHA2SecureServerCA.crt',), 'crlDistributionPoints': ('http://crl3.digicert.com/ssca-sha2-g6.crl', 'http://crl4.digicert.com/ssca-sha2-g6.crl')}\n```\n\n```python\n>>> cert.expire([ format ])\n'Nov 13 12:00:00 2020 GMT'\n```\n\n```python\n>>> cert.protocol()\nu'TLSv1.2'\n```\n\n```python\n>>> cert.cipher()\n('ECDHE-RSA-AES128-GCM-SHA256', 'TLSv1/SSLv3', 128)\n```\n\n```python\n>>> cert.default_paths()\nDefaultVerifyPaths(cafile='/usr/local/etc/openssl/cert.pem', capath='/usr/local/etc/openssl/certs', openssl_cafile_env='SSL_CERT_FILE', openssl_cafile='/usr/local/etc/openssl/cert.pem', openssl_capath_env='SSL_CERT_DIR', openssl_capath='/usr/local/etc/openssl/certs')\n```\n\n```python\n>>> cert.cert_stats()\n{'x509': 179, 'crl': 0, 'x509_ca': 179}\n```\n\n```python\n>>> cert.ca_certs([ binary_form ])\n[{'notBefore': u'Apr 16 07:09:14 2007 GMT', 'serialNumber': u'49330001', 'notAfter': 'Apr 16 07:09:14 2027 GMT', 'version': 3L, 'subject': ((('countryName', u'CN'),), (('organizationName', u'CNNIC'),), (('commonName', u'CNNIC ROOT'),)), 'issuer': ((('countryName', u'CN'),), (('organizationName', u'CNNIC'),), (('commonName', u'CNNIC ROOT'),))}, {[...]}]\n```\n\n```python\n>>> cert.openssl_version()\nOpenSSL 1.0.2s 28 May 2019\n```\n\n```python\n>>> cert.session_stats()\n{'connect_renegotiate': 0L, 'hits': 0L, 'accept_good': 0L, 'cache_full': 0L, 'accept_renegotiate': 0L, 'timeouts': 0L, 'number': 0L, 'accept': 0L, 'connect_good': 2L, 'connect': 2L, 'misses': 0L}\n```\n\n## License:\n\n```\nCopyright 2015-2019 Martin Simon\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n```\n\n## Buy me a coffee?\n\nIf you feel like buying me a coffee (or a beer?), donations are welcome:\n\n```\nBTC : 1BNFXHPNRtg7LrLUmQWwPUwzoicUi3uP8Q\nETH : 0xd061B7dD794F6EB357bf132172ce06D1B0E5b97B\nBCH : qpcmv8vstulfhgdf29fd8sf2g769sszscvaktty2rv\n```", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/barnumbirr/certifier", "keywords": "TLS,certificate,SSL", "license": "Apache v2.0 License", "maintainer": "", "maintainer_email": "", "name": "certifier", "package_url": "https://pypi.org/project/certifier/", "platform": "", "project_url": "https://pypi.org/project/certifier/", "project_urls": { "Bug Reports": "https://github.com/barnumbirr/certifier/issues", "Buy me a coffee": "https://github.com/barnumbirr/certifier#buy-me-a-coffee", "Homepage": "https://github.com/barnumbirr/certifier" }, "release_url": "https://pypi.org/project/certifier/0.2.1/", "requires_dist": null, "requires_python": "", "summary": "Get all the information you need about your SSL certificates.", "version": "0.2.1" }, "last_serial": 5460867, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "a1fb27be7117b5c6ca51ab9849a34904", "sha256": "8c27206f63cda92170c8bcb01540b4eef4b9b04211918e8b1a84f9cd69fad1d4" }, "downloads": -1, "filename": "certifier-0.1.tar.gz", "has_sig": false, "md5_digest": "a1fb27be7117b5c6ca51ab9849a34904", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2526, "upload_time": "2015-09-04T08:45:56", "url": "https://files.pythonhosted.org/packages/ef/bd/2b4ff05835e00bb2a9d1677bef01205df36252f71ed21fb61a0d9b2b4a7d/certifier-0.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "53076095ae89be92274cb50f67b8fd9c", "sha256": "0cd08c381d0ca0f1e7d6b970f7189b5fb7e6e85852205ebaebe3f86266c05cf0" }, "downloads": -1, "filename": "certifier-0.2.tar.gz", "has_sig": false, "md5_digest": "53076095ae89be92274cb50f67b8fd9c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3645, "upload_time": "2016-02-08T10:10:58", "url": "https://files.pythonhosted.org/packages/21/dd/1bd4fe7cc7c7cd08f055c809372fa4d3ac8870f9bd0bcd9d104c697e8270/certifier-0.2.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "15eabe6a1a72c4e7fb5f13dfe1a913d9", "sha256": "3f4d5ddbcf8db6715a3abadc781e3abe2553ef9829327aebfb18fd65204ed4d1" }, "downloads": -1, "filename": "certifier-0.2.1.tar.gz", "has_sig": false, "md5_digest": "15eabe6a1a72c4e7fb5f13dfe1a913d9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4075, "upload_time": "2019-06-28T09:46:22", "url": "https://files.pythonhosted.org/packages/e9/be/269829a32291e706a49a3bd1cacbe92e4aa633ebeaebafdf908cebd01b42/certifier-0.2.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "15eabe6a1a72c4e7fb5f13dfe1a913d9", "sha256": "3f4d5ddbcf8db6715a3abadc781e3abe2553ef9829327aebfb18fd65204ed4d1" }, "downloads": -1, "filename": "certifier-0.2.1.tar.gz", "has_sig": false, "md5_digest": "15eabe6a1a72c4e7fb5f13dfe1a913d9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4075, "upload_time": "2019-06-28T09:46:22", "url": "https://files.pythonhosted.org/packages/e9/be/269829a32291e706a49a3bd1cacbe92e4aa633ebeaebafdf908cebd01b42/certifier-0.2.1.tar.gz" } ] }