Skip to main content

Certificate Transparency search

Project description

Certificate Search

Build Status codecov.io

An unofficial wrapper to query crt.sh.

Installation

The package can be installed from PyPI

pip install certificate-search

Usage

import json

from cryptography.x509.oid import NameOID, ExtensionOID
from cryptography.x509.general_name import DNSName

from crt.search import CertificateSearch, SUPPORTED_SITES

# Print the list of all supported sites
print(json.dumps(SUPPORTED_SITES))

engines = CertificateSearch()

domains = [
    'github.com',
    'facebook.com',
]

for domain in domains:
    for cert in engine.search(domain=domain):
        not_before = cert.not_before
        not_after = cert.not_after

        pem = cert.pem
        # An x509 certificate
        common_name = pem.subject.get_attributes_for_oid(NameOID.COMMON_NAME)[0].value
        country_name = pem.subject.get_attributes_for_oid(NameOID.COUNTRY_NAME)[0].value
        organization_name = pem.subject.get_attributes_for_oid(NameOID.ORGANIZATION_NAME)[0].value

        # All SAN records
        san = pem.extensions.get_extension_for_oid(ExtensionOID.SUBJECT_ALTERNATIVE_NAME)
        san_names = san.value.get_values_for_type(DNSName)

Project details


Download files

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

Source Distribution

certificate-search-0.2.tar.gz (4.2 kB view hashes)

Uploaded source

Built Distribution

certificate_search-0.2-py2.py3-none-any.whl (4.8 kB view hashes)

Uploaded py2 py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page