{"categories":[{"label":"WWW/HTTP","url":"https://skillfed.io/packages/category/internet-www-http/5"},{"label":"Security","url":"https://skillfed.io/packages/category/security/2"},{"label":"Networking","url":"https://skillfed.io/packages/category/system-networking"},{"label":"Cryptography","url":"https://skillfed.io/packages/category/security-cryptography/2"}],"enrichment":{"capability":"Builds and validates TLS certificate chains by fetching missing intermediate certificates via the AIA (Authority Information Access) extension, working around CPython issue 18617 where servers don't provide the full chain.","skillfed_tags":["tls-certificates","ssl-validation","workaround"],"use_cases":["Validate HTTPS connections to servers with incomplete certificate chains when you cannot modify the server configuration.","Build a validated certificate chain for use with third-party HTTP libraries like requests or httpx that need explicit certificate verification.","Cache and reuse validated certificate chains in memory across multiple requests to the same server within a session.","Work around CPython's lack of automatic AIA chasing in environments where upgrading the server or using a proxy is not an option."],"what_it_does":"AIA is a Python library that solves a specific TLS problem: when a web server doesn't send the complete certificate chain (excluding only the root), standard validation fails. This library fetches the missing intermediate certificates by reading the AIA extension in each certificate and validating the chain through OpenSSL, then caches results in memory to avoid re-validating the same certificates.\n\nIt provides multiple integration points: a simple `AIASession` wrapper around `urllib.request.urlopen`, methods to extract validated certificate chains as PEM data, and SSL context objects compatible with `requests`, `httpx`, and other HTTP libraries. The library is intentionally narrow\u2014it handles only the certificate-chain problem, not general HTTP functionality\u2014and works synchronously, though the description shows patterns for wrapping it in async code.","worth_installing":"Yes, but only if you have a specific server-certificate-chain problem and cannot fix it upstream. The package is narrow, low-friction to install, and has no dependencies beyond OpenSSL. However, its pre-alpha status and dormant maintenance (last release 2021-11-27) mean no active support or updates; use it as a workaround, not a long-term solution. No known vulnerabilities."},"id":"aia","links":{"html":"https://skillfed.io/packages/aia","md":"https://skillfed.io/packages/aia.md","pypi":"https://pypi.org/project/aia/"},"maintenance":{"status":"dormant"},"meta":{"latest_release":"2021-11-27","license_spdx":null,"license_treatment":"permissive","name":"aia","python_support":"supports_current","summary":"AIA chasing through OpenSSL for TLS certificate chain building and verifying"},"popularity":{"monthly_downloads":218845,"position":9333,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.2.0"}
