Chase authority information access from a host certificate to complete the chain of trust.
Project description
AIA Chaser
This package helps automatically retrieve missing certificates to complete a secure SSL chain of trust. It ensures that even if a server doesn’t provide the full certificate chain, your connection remains secure.
What is AIA Chasing?
AIA (Authority Information Access) is a feature in SSL certificates, defined in RFC 5280, that points to:
- CA Issuers – To fetch missing issuer certificates.
- OCSP – To check if a certificate has been revoked.
By following these links, this package helps fill in the gaps, ensuring your SSL connections don’t fail due to missing certificates.
Why Does This Matter?
Sometimes, a website works fine in your browser but fails when using curl or
Python’s requests library. That is because browsers often handle AIA chasing
automatically, while other tools don’t. If you’ve run into SSL errors like
this, this package can help! :guide_dog:.
Examples
The following examples showcase how to use this library with some typical Python HTTP libraries.
- Standard library's urlopen:
from urllib.request import urlopen
from aia_chaser import AiaChaser
url = "https://..."
chaser = AiaChaser()
context = chaser.make_ssl_context_for_url(url)
response = urlopen(url, context=context)
- Using Requests: HTTP for Humans:
import requests
from aia_chaser import AiaChaser
chaser = AiaChaser()
url = "https://..."
context = chaser.make_ssl_context_for_url(url)
ca_data = chaser.fetch_ca_chain_for_url(url)
with tempfile.NamedTemporaryFile("wt") as pem_file:
pem_file.write(ca_data.to_pem())
pem_file.flush()
response = requests.get(url, verify=pem_file.name)
- Using urllib3:
import urllib3
from aia_chaser import AiaChaser
url = "https://..."
chaser = AiaChaser()
context = chaser.make_ssl_context_for_url(url)
with urllib3.PoolManager(ssl_context=context) as pool:
respone = pool.request("GET", url)
Acknowledgments
- This project is based on aia.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file aia_chaser-3.3.0.tar.gz.
File metadata
- Download URL: aia_chaser-3.3.0.tar.gz
- Upload date:
- Size: 19.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9b5bfee8b03d3cd08d5af654c9de994ad14d306698b6d621a871b533dac165f2
|
|
| MD5 |
cdef3ec03287c39781b210d985508ff8
|
|
| BLAKE2b-256 |
191d0b73a2a12b468e6a02eb1e6b7625a1c309a70d182889662e89d8e914d229
|
File details
Details for the file aia_chaser-3.3.0-py3-none-any.whl.
File metadata
- Download URL: aia_chaser-3.3.0-py3-none-any.whl
- Upload date:
- Size: 20.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2f468157791f0152356891fb5608a2117cc60523ff1d4db30256a1907793f219
|
|
| MD5 |
22c109c7ed2a4e03c7b23aa4cd5068af
|
|
| BLAKE2b-256 |
63e4afcaaacd2130304ab82fe807dee702db13cc4918e86f4c4776db834e1c77
|