Skip to main content

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 certificate authority (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) certificate 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.

Metadata

Release files for certifi 2016.9.26

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for certifi 2016.9.26
File Size Uploaded
certifi-2016.9.26.tar.gz 374.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for certifi 2016.9.26
File Interpreter ABI Platform
certifi-2016.9.26-py2.py3-none-any.whl Python 3, Python 2 none any Details

Total release size: 751.7 kB

Release files / certifi-2016.9.26.tar.gz

Download URL certifi-2016.9.26.tar.gz
Size 374.6 kB
Tags Source
SHA-256 checksum
How to use checksums
8275aef1bbeaf05c53715bfc5d8569bd1e04ca1e8e69608cc52bcaac2604eb19
BLAKE2b-256 checksum
How to use checksums
4f75e1bc6e363a2c76f8d7e754c27c437dbe4086414e1d6d2f6b2a3e7846f22b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / certifi-2016.9.26-py2.py3-none-any.whl

Download URL certifi-2016.9.26-py2.py3-none-any.whl
Size 377.1 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
a60073d7bb5cb01671877efda875e8dab755b98baedfbb9b8b3d9be2d52ad022
BLAKE2b-256 checksum
How to use checksums
a235b7b457c95fdd661d4c179201e9e58a2181934695943b08ccfcba09284b4e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

2016.9.26 This release

2 release files

1.0.1

2 release files

1.0.0

1 release file

0.0.8

1 release file

0.0.7

1 release file

0.0.6

1 release file

0.0.5

1 release file

0.0.4

1 release file

0.0.3

1 release file

0.0.2

1 release file

0.0.1

1 release file

0

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page