{"adoption": {"forks": 1812, "observed_at": "2026-08-28T04:10:02.628911+00:00", "stars": 7725}, "canonical_url": "https://ross.abutalabs.com/products/cryptography", "card": {"archived": false, "artifact_type": "library", "description": "cryptography is a package designed to expose cryptographic primitives and recipes to Python developers.", "domain": ["security", "developer-tools"], "enriched": true, "function": ["cryptography", "security", "serialization"], "health_score": 80, "homepage": "https://cryptography.io", "language": "Python", "license": "NOASSERTION", "license_family": "other", "maturity": "stable", "member_repos": ["pyca/cryptography"], "name": "pyca/cryptography", "platform": ["python", "cross-platform"], "pushed_at": "2026-08-26T11:08:03+00:00", "repo": "pyca/cryptography", "stars": 7725, "tags": ["encryption", "fernet", "x509", "tls", "hashing", "key-derivation", "pypi"], "topics": ["python", "cryptography"], "urls": [], "use_cases": ["encrypt and decrypt data in python", "generate and verify digital signatures", "hash passwords and derive keys", "work with x509 certificates", "implement tls or ssh protocol primitives", "generate secure random keys and tokens"], "what_it_is": "pyca/cryptography is a Python package providing cryptographic recipes and primitives, aiming to be Python's 'cryptographic standard library'. It offers both high-level recipes (like Fernet symmetric encryption) and low-level interfaces to algorithms such as symmetric ciphers, message digests, and key derivation functions.", "when_to_avoid": ["you need a pure-Python implementation without native dependencies", "you want a higher-level API hiding all cryptographic details", "you are doing post-quantum or highly specialized cryptography outside its scope"], "when_to_choose": ["you need well-audited, maintained cryptographic primitives in Python", "you want both high-level recipes and low-level algorithm access", "you need support for Python 3.9+ and PyPy"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/cryptography", "repo": "pyca/cryptography", "role": "main", "score": 77}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:10:02.628911+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:35:15.026536+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "20d84538828a10f0d908bd6c2e6fbd005c7313ed198c7ee82e70e75200db503b", "fetched_at": "2026-08-28T04:10:02.628911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pyca/cryptography"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:10:02.628911+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:35:15.026536+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "20d84538828a10f0d908bd6c2e6fbd005c7313ed198c7ee82e70e75200db503b", "fetched_at": "2026-08-28T04:10:02.628911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pyca/cryptography"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:35:15.026536+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "20d84538828a10f0d908bd6c2e6fbd005c7313ed198c7ee82e70e75200db503b", "fetched_at": "2026-08-28T04:10:02.628911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pyca/cryptography"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:10:02.628911+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:10:02.628911+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:10:02.628911+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:35:15.026536+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "20d84538828a10f0d908bd6c2e6fbd005c7313ed198c7ee82e70e75200db503b", "fetched_at": "2026-08-28T04:10:02.628911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pyca/cryptography"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:10:02.628911+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:10:02.628911+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:35:15.026536+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "20d84538828a10f0d908bd6c2e6fbd005c7313ed198c7ee82e70e75200db503b", "fetched_at": "2026-08-28T04:10:02.628911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pyca/cryptography"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:10:02.628911+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:10:02.628911+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:10:02.628911+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:35:15.026536+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "20d84538828a10f0d908bd6c2e6fbd005c7313ed198c7ee82e70e75200db503b", "fetched_at": "2026-08-28T04:10:02.628911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pyca/cryptography"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:10:02.628911+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:10:02.628911+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:35:15.026536+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "20d84538828a10f0d908bd6c2e6fbd005c7313ed198c7ee82e70e75200db503b", "fetched_at": "2026-08-28T04:10:02.628911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pyca/cryptography"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:35:15.026536+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "20d84538828a10f0d908bd6c2e6fbd005c7313ed198c7ee82e70e75200db503b", "fetched_at": "2026-08-28T04:10:02.628911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pyca/cryptography"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:35:15.026536+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "20d84538828a10f0d908bd6c2e6fbd005c7313ed198c7ee82e70e75200db503b", "fetched_at": "2026-08-28T04:10:02.628911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pyca/cryptography"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:35:15.026536+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "20d84538828a10f0d908bd6c2e6fbd005c7313ed198c7ee82e70e75200db503b", "fetched_at": "2026-08-28T04:10:02.628911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pyca/cryptography"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:39:23.370411+00:00", "flags": ["no_releases", "no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4775, "days_push": 7, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 77, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}