{ "info": { "author": "cniemira", "author_email": "siege@siege.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Programming Language :: Python", "Programming Language :: Python :: 3 :: Only", "Topic :: Security :: Cryptography", "Topic :: Software Development :: Libraries" ], "description": "pyx509: X.509 Certificate and PKCS7 Parser / Verifier for Python\n################################################################\n\nThis is a fork of a fork of a fork of the original project:\n\n py3x509 - Python library for parsing X.509\n Copyright (C) 2009-2012 CZ.NIC, z.s.p.o. (http://www.nic.cz)\n\n\n* Forked from https://github.com/ph4r05/px509\n* Forked from https://github.com/erny/pyx509\n* Forked from https://github.com/hiviah/pyx509\n\nUpdates by me rename the module to 'x509' and update to Python3 only.\n\n Copyright (C) 2017 (https://github.com/cniemira/py3x509)\n\nWork in progress!\n\nDescription\n===========\n\nThis is probably the most complete parser of X.509 certificates in python.\n\nCode is in alpha stage! Don't use for anything sensitive. I wrote it (based on\nprevious work of colleagues) since there is no comprehensive python parser for\nX.509 certificates. Often python programmers had to parse openssl output.\n\nAdvantages\n----------\n\n* I find it less painful to use than parsing output of 'openssl x509'\n somewhat stricter in extension parsing compared to openssl\n\nDisadvantages\n-------------\n\n* It's slow compared to openssl (about 2.3x compared to RHEL's openssl-1.0-fips)\n\n* Currently not very strict in what string types in RDNs it accepts\n\n* API is still rather ugly and has no documentation yet; code is nasty at some\n places (and there's some old dangling code like pkcs7/verifier.py)\n\n\nDependencies\n============\n\n* pyasn1 >= 0.1.7\n\n\nInstallation\n============\n\nInstall with pip::\n\n pip install py3x509\n\n\nLicense\n=======\n\nLGPL v2 or later.\n\nSee LICENSE.txt.\n\n\nKnown bugs and quirks\n=====================\n\n* Subject alternative name doesn't show all subtypes,\n but 'DNS', 'dirName' and 'email' are supported.\n\n* Name constraints don't distinguish among various GeneralName subtypes\n\n* Some extensions are not shown very nicely when put in string format\n\n* Not all extensions are supported\n\n* String types accepted for various RDN subelements are rather too permissive\n\n* RDN string conversion does not conform to RFC 4514\n\n* Badly formed extensions are ignored if not marked critical\n\n * easy to switch to more strict behavior\n\n * other clients do this as well; RFC 5280 specifies behavior for unknown\n elements in extensions in appendix B.1, but does not cover all cases (e.g.\n element exists, but with string type different from spec)\n\nTODO\n====\n\n* Cleanup: This module has it's own pyasn1 models. Look if we can\n reuse the pyasn1_modules.rfc2459 X509 cert model.\n\n* Cleanup: Currently, the signature verifier does not work.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/cniemira/py3x509", "keywords": null, "license": "This library is free software; you can redistribute it and/or\n modify it under the terms of the GNU Library General Public\n License as published by the Free Software Foundation; either\n version 2 of the License, or (at your option) any later version.\n\n This library is distributed in the hope that it will be useful,\n but WITHOUT ANY WARRANTY; without even the implied warranty of\n MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU\n Library General Public License for more details.\n\n You should have received a copy of the GNU Library General Public\n License along with this library; if not, write to the Free\n Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA\n or get them via Internet at:\n\n * v2.0: http://www.gnu.org/licenses/lgpl-2.0.txt\n * v2.1: http://www.gnu.org/licenses/lgpl-2.1.txt\n * v3.0: http://www.gnu.org/licenses/lgpl-3.0.txt", "maintainer": null, "maintainer_email": null, "name": "x509", "package_url": "https://pypi.org/project/x509/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/x509/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/cniemira/py3x509" }, "release_url": "https://pypi.org/project/x509/0.1/", "requires_dist": null, "requires_python": null, "summary": "Parse x509v3 certificates and PKCS7 signatures", "version": "0.1" }, "last_serial": 2642619, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "4dd14beef16baf30567c8e3c4c9b03d2", "sha256": "14588a6a33e268a9cd6a08fd05b7f6069d6d1ed86a37c152f6aedf9d31304cdc" }, "downloads": -1, "filename": "x509-0.1.tar.gz", "has_sig": false, "md5_digest": "4dd14beef16baf30567c8e3c4c9b03d2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28825, "upload_time": "2017-02-15T01:02:58", "url": "https://files.pythonhosted.org/packages/cb/76/5b25f32283ff5bb7dcc1ab2b1c909e2b899804c89db0444ebe85ca8d6f49/x509-0.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "4dd14beef16baf30567c8e3c4c9b03d2", "sha256": "14588a6a33e268a9cd6a08fd05b7f6069d6d1ed86a37c152f6aedf9d31304cdc" }, "downloads": -1, "filename": "x509-0.1.tar.gz", "has_sig": false, "md5_digest": "4dd14beef16baf30567c8e3c4c9b03d2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28825, "upload_time": "2017-02-15T01:02:58", "url": "https://files.pythonhosted.org/packages/cb/76/5b25f32283ff5bb7dcc1ab2b1c909e2b899804c89db0444ebe85ca8d6f49/x509-0.1.tar.gz" } ] }