Skip to main content

Python package for providing Mozilla's CA Bundle.

Project description

Certifi is a carefully curated collection of Root Certificates for validating the trustworthiness of SSL certificates while verifying the identity of TLS hosts. It has been extracted from the Requests project.

Installation

certifi is available on PyPI. Simply install it with pip:

$ pip install certifi

Usage

To reference the installed CA Bundle, you can use the built-in function:

>>> import certifi

>>> certifi.where()
'/usr/local/lib/python2.7/site-packages/certifi/cacert.pem'

Enjoy!

1024-bit Root Certificates

Browsers and certificate authorities have concluded that 1024-bit keys are unacceptably weak for certificates, particularly root certificates. For this reason, Mozilla has removed any weak (i.e. 1024-bit key) certificate from its bundle, replacing it with an equivalent strong (i.e. 2048-bit or greater key) certifiate from the same CA. Because Mozilla removed these certificates from its bundle, certifi removed them as well.

Unfortunately, old versions of OpenSSL (less than 1.0.2) sometimes fail to validate certificate chains that use the strong roots. For this reason, if you fail to validate a certificate using the certifi.where() mechanism, you can intentionally re-add the 1024-bit roots back into your bundle by calling certifi.old_where() instead. This is not recommended in production: if at all possible you should upgrade to a newer OpenSSL. However, if you have no other option, this may work for you.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

certifi-2015.11.20.tar.gz (364.5 kB view details)

Uploaded Source

Built Distribution

certifi-2015.11.20-py2.py3-none-any.whl (367.4 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file certifi-2015.11.20.tar.gz.

File metadata

File hashes

Hashes for certifi-2015.11.20.tar.gz
Algorithm Hash digest
SHA256 7168668372f07219439e82878b484d6216ff63224fd4e7ff4f39c56ad0b487de
MD5 25134646672c695c1ff1593c2dd75d08
BLAKE2b-256 c58ad007319d95bd2424adb3f2a41ffb29de76f2c07b3dd5fd98f3651f9a14f5

See more details on using hashes here.

File details

Details for the file certifi-2015.11.20-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for certifi-2015.11.20-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 12e141bb3e0f1b3ea4d5a8af804fc59ff94d5ece040cf8d22232ddf87eec096b
MD5 6206cd9ca559c1d7390da307fe96f661
BLAKE2b-256 a52b83904abc08c3d95808d098163b049e923cbf9fa04f6fa5c0f3750959da8e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page